
:root{--bg:#07111f;--bg2:#0b1730;--card:#111f36;--soft:#172844;--text:#f7fbff;--muted:#b8c7da;--brand:#00bfff;--brand2:#ff9f1a;--line:rgba(255,255,255,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.7;overflow-x:hidden}body.light{--bg:#f6f8fb;--bg2:#fff;--card:#fff;--soft:#edf2f7;--text:#0b1220;--muted:#4b5563;--line:rgba(0,0,0,.1)}.loader{position:fixed;inset:0;background:radial-gradient(circle at center,#0d2542,#020617 68%);display:flex;align-items:center;justify-content:center;z-index:99999;transition:.75s}.loader.hide{opacity:0;pointer-events:none}.loader-card{text-align:center;display:grid;place-items:center;gap:18px}.loader-card img{width:95px;height:95px;border-radius:50%;object-fit:contain;background:#fff;padding:3px}.ring{width:110px;height:110px;border:10px solid rgba(255,255,255,.08);border-top-color:var(--brand);border-right-color:#7dd3fc;border-radius:50%;animation:spin 1s linear infinite;box-shadow:0 0 40px rgba(0,191,255,.35)}@keyframes spin{to{transform:rotate(360deg)}}.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:16px 5%;background:rgba(4,10,20,.78);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}body.light .site-header{background:rgba(255,255,255,.82)}.brand{display:flex;align-items:center;gap:12px;color:white;text-decoration:none;font-size:26px;font-weight:900}body.light .brand,body.light nav a,body.light .pill{color:#08111f}.brand img{width:58px;height:58px;border-radius:50%;object-fit:contain;background:#fff;padding:2px}nav{display:flex;gap:18px}nav a{color:white;text-decoration:none;font-weight:800;opacity:.9}nav a.active,nav a:hover{color:var(--brand)}.header-actions{display:flex;gap:10px;align-items:center}.pill{border:1px solid var(--line);background:rgba(255,255,255,.08);color:white;padding:10px 15px;border-radius:999px;text-decoration:none;font-weight:900;cursor:pointer}.whatsapp,.quick-whatsapp,.contact-btn.whatsapp-action{background:#25D366!important;color:#06120b!important}.menu-toggle{display:none;background:var(--brand);border:0;border-radius:14px;padding:12px 15px;font-weight:900}.hero{min-height:100vh;padding:150px 5% 80px;display:grid;grid-template-columns:1.04fr .96fr;gap:48px;align-items:center;background:radial-gradient(circle at 20% 10%,rgba(0,191,255,.2),transparent 30%),linear-gradient(120deg,var(--bg),var(--bg2))}.hero h1{font-size:clamp(44px,7vw,84px);line-height:1.02;margin:0 0 22px}.hero p{font-size:20px;color:var(--muted);max-width:760px}.hero-media{display:grid;grid-template-columns:1fr 1fr;gap:16px;transform:rotate(-2deg)}.hero-media img{width:100%;height:260px;object-fit:cover;border-radius:28px;box-shadow:0 24px 70px rgba(0,0,0,.42)}.hero-media img:nth-child(2){margin-top:60px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:999px;background:var(--brand);color:#00111c;text-decoration:none;font-weight:900;border:0;cursor:pointer;box-shadow:0 14px 35px rgba(0,191,255,.22);transition:.3s}.btn:hover{transform:translateY(-4px) scale(1.02)}.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line);box-shadow:none}.section{padding:95px 5%}.section.alt{background:linear-gradient(180deg,transparent,rgba(255,255,255,.03),transparent)}.kicker{color:var(--brand2);font-weight:900;text-transform:uppercase;letter-spacing:.12em}h2{font-size:clamp(34px,5vw,56px);line-height:1.05;margin:10px 0 18px}.lead{color:var(--muted);font-size:18px;max-width:920px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;margin-top:40px}.promo-grid,.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;margin-top:35px}.product-card,.info-card,.service-card,.quote-card,.promo-card,.video-card{background:var(--card);border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.24);transition:.35s}.product-card:hover,.info-card:hover,.service-card:hover,.promo-card:hover,.video-card:hover{transform:translateY(-8px)}.product-card img,.promo-card img{width:100%;height:250px;object-fit:cover;transition:.5s}.promo-card img{height:360px}.product-card:hover img,.promo-card:hover img{transform:scale(1.04)}.product-body,.info-card,.service-card,.quote-card,.promo-card>div,.video-card{padding:24px}.tag{display:inline-block;background:rgba(0,191,255,.1);border:1px solid rgba(0,191,255,.3);color:var(--brand);padding:7px 12px;border-radius:999px;font-size:13px;font-weight:900}.card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.mini-list{font-size:14px;color:var(--muted);padding-left:18px}.split{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.split img,.banner-img{width:100%;border-radius:32px;box-shadow:0 25px 70px rgba(0,0,0,.35);object-fit:cover}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:20px;margin-top:35px}.stat{background:var(--soft);padding:28px;border-radius:24px;border:1px solid var(--line)}.stat strong{font-size:38px;color:var(--brand2)}.gallery{columns:3 280px;column-gap:22px}.gallery img{width:100%;margin:0 0 22px;border-radius:24px;break-inside:avoid;box-shadow:0 18px 44px rgba(0,0,0,.28)}video{width:100%;border-radius:22px;background:#000}.form{display:grid;gap:14px}input,textarea,select{width:100%;padding:15px 16px;border-radius:16px;border:1px solid var(--line);background:var(--soft);color:var(--text);font:inherit}iframe{width:100%;height:420px;border:0;border-radius:28px;filter:saturate(.9)}.logo-showcase{display:flex;gap:22px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:30px;padding:28px}.logo-showcase img{width:125px!important;height:125px!important;border-radius:50%;object-fit:contain;background:#fff;padding:3px;box-shadow:0 18px 44px rgba(0,0,0,.25)}.footer{background:#020617;color:white;padding:65px 5%;display:grid;grid-template-columns:1.3fr 1fr;gap:30px}.footer img{width:86px;height:86px;border-radius:50%;object-fit:contain;background:#fff;padding:3px}.footer-grid{display:grid;gap:12px}.top-btn{position:fixed;right:24px;bottom:24px;width:52px;height:52px;border-radius:50%;background:var(--brand);color:#00111c;display:grid;place-items:center;text-decoration:none;font-weight:900;z-index:999}.quick-contact{position:fixed;left:22px;bottom:92px;z-index:9998;display:flex;flex-direction:column;gap:12px}.quick-contact a{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:24px;border:1px solid var(--line);animation:contactPulse 2.4s infinite}.quick-email,.contact-btn.email-action{background:#00bfff!important;color:#00111c!important}@keyframes contactPulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(37,211,102,.35)}70%{transform:scale(1.04);box-shadow:0 0 0 14px rgba(37,211,102,0)}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(37,211,102,0)}}.contact-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;border-radius:999px;text-decoration:none;font-weight:900;border:1px solid var(--line);transition:.28s}.contact-btn:hover{transform:translateY(-5px) scale(1.03)}.form-buttons,.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.contact-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,120%);background:var(--card);color:var(--text);padding:14px 20px;border-radius:18px;border:1px solid var(--line);box-shadow:0 18px 50px rgba(0,0,0,.35);z-index:99999;opacity:0;transition:.35s}.contact-toast.show{transform:translate(-50%,0);opacity:1}.reveal{opacity:0;transform:translateY(35px);transition:1s}.reveal.show{opacity:1;transform:none}.detail-hero{padding-top:140px}.detail-image{width:100%;max-height:560px;object-fit:cover;border-radius:34px;box-shadow:0 26px 80px rgba(0,0,0,.36)}.feature-list{display:grid;gap:12px;margin-top:22px}.feature-list li{background:var(--soft);padding:14px 18px;border-radius:16px;border:1px solid var(--line)}@media(max-width:900px){.site-header{flex-wrap:wrap;padding:12px 16px}.menu-toggle{display:block}nav{display:none;width:100%;flex-direction:column;padding:10px 0}nav.open{display:flex}.header-actions{margin-left:auto;gap:6px}.pill{padding:8px 10px;font-size:13px}.brand img{width:44px;height:44px}.brand span{font-size:28px}.hero,.split{grid-template-columns:1fr}.hero{min-height:auto;padding:118px 18px 50px}.hero h1{font-size:42px}.hero p{font-size:16px}.hero-media{transform:none;gap:10px}.hero-media img{height:155px;border-radius:18px}.hero-media img:nth-child(2){margin-top:25px}.section{padding:60px 18px}h2{font-size:34px}.lead{font-size:16px}.product-grid,.grid,.stats,.promo-grid,.video-grid{grid-template-columns:1fr}.product-card img{height:230px}.promo-card img{height:420px}.product-body,.info-card,.service-card,.quote-card,.promo-card>div,.video-card{padding:20px}.gallery{columns:1}.footer{grid-template-columns:1fr;padding:42px 18px}.top-btn{right:16px;bottom:18px;width:48px;height:48px}.quick-contact{left:14px;bottom:78px}.quick-contact a{width:48px;height:48px}.form-buttons,.contact-actions{flex-direction:column}.contact-btn,.form-buttons .btn{width:100%}.logo-showcase{flex-direction:column;text-align:center}.contact-toast{width:calc(100% - 32px);text-align:center}}


/* FINAL FULL-SITE SWAHILI + LIGHT MODE + MOBILE IMAGE FIT UPGRADE */
html[lang="sw"] .lang-sensitive { letter-spacing: normal; }

body.light{
  background:#f7fbff !important;
  color:#08111f !important;
}

body.light .hero{
  background:
    radial-gradient(circle at 20% 10%, rgba(0,191,255,.18), transparent 32%),
    linear-gradient(120deg, #ffffff, #eaf5ff) !important;
}

body.light .section.alt{
  background:linear-gradient(180deg,#ffffff,#eef6ff,#ffffff) !important;
}

body.light .product-card,
body.light .info-card,
body.light .service-card,
body.light .quote-card,
body.light .promo-card,
body.light .video-card,
body.light .stat,
body.light .step,
body.light .logo-showcase{
  background:#ffffff !important;
  color:#08111f !important;
  border-color:rgba(8,17,31,.12) !important;
  box-shadow:0 20px 55px rgba(15,23,42,.10) !important;
}

body.light .lead,
body.light p,
body.light .mini-list{
  color:#334155;
}

body.light .site-header{
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 10px 35px rgba(15,23,42,.08);
}

body.light .brand,
body.light nav a,
body.light .pill{
  color:#08111f !important;
}

body.light .footer{
  background:linear-gradient(180deg,#eaf3ff,#ffffff) !important;
  color:#08111f !important;
}

body.light input,
body.light textarea,
body.light select{
  background:#ffffff !important;
  color:#08111f !important;
  border-color:rgba(8,17,31,.16) !important;
}

.brand img,
.loader-card img,
.footer img,
.logo-showcase img{
  object-fit:contain !important;
  background:#ffffff !important;
  padding:3px !important;
  border-radius:50% !important;
}

.hero-media img,
.product-card img,
.promo-card img,
.gallery img,
.detail-image,
.split img{
  object-fit:cover;
  width:100%;
  max-width:100%;
}

.product-card img{
  aspect-ratio: 4 / 3;
  height:auto !important;
}

.promo-card img{
  aspect-ratio: 4 / 5;
  height:auto !important;
  object-fit:contain !important;
  background:#f8fafc;
}

.gallery img{
  height:auto !important;
  object-fit:contain !important;
  background:#f8fafc;
}

.detail-image{
  aspect-ratio: 16 / 9;
  height:auto !important;
  object-fit:cover !important;
}

.footer{
  display:block !important;
  padding:70px 5% 28px !important;
}

.footer-brand{
  display:grid;
  grid-template-columns:90px 1fr;
  gap:18px;
  align-items:center;
  max-width:1100px;
  margin:auto;
}

.footer-brand img{
  width:86px !important;
  height:86px !important;
}

.footer-brand h2{
  margin:0;
}

.footer-contact-buttons{
  grid-column:2;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:8px;
}

.footer-columns{
  max-width:1100px;
  margin:38px auto 0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.footer-columns > div{
  background:rgba(255,255,255,.05);
  border:1px solid var(--line);
  border-radius:22px;
  padding:22px;
}

body.light .footer-columns > div{
  background:#ffffff;
  border-color:rgba(8,17,31,.1);
}

.footer-bottom{
  max-width:1100px;
  margin:28px auto 0;
  padding-top:22px;
  border-top:1px solid var(--line);
  text-align:center;
}

.contact-btn{
  text-decoration:none;
}

@media(max-width:900px){
  .hero{
    padding-top:120px !important;
  }

  .hero h1{
    font-size:clamp(34px, 11vw, 48px) !important;
    line-height:1.06 !important;
  }

  .hero p{
    font-size:16px !important;
  }

  .hero-media{
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }

  .hero-media img{
    aspect-ratio:1/1 !important;
    height:auto !important;
    border-radius:18px !important;
  }

  .product-grid,
  .promo-grid,
  .video-grid,
  .grid,
  .stats{
    grid-template-columns:1fr !important;
  }

  .product-card img{
    aspect-ratio: 4 / 3 !important;
    object-fit:cover !important;
  }

  .promo-card img{
    aspect-ratio: 4 / 5 !important;
    object-fit:contain !important;
  }

  .gallery{
    columns:1 !important;
  }

  .split{
    grid-template-columns:1fr !important;
  }

  .split img{
    aspect-ratio: 4 / 3 !important;
    height:auto !important;
    object-fit:cover !important;
  }

  .detail-image{
    aspect-ratio:4/3 !important;
  }

  .footer{
    padding:52px 18px 24px !important;
  }

  .footer-brand{
    grid-template-columns:1fr;
    text-align:center;
    justify-items:center;
  }

  .footer-contact-buttons{
    grid-column:1;
    justify-content:center;
    flex-direction:column;
    width:100%;
  }

  .footer-contact-buttons .contact-btn{
    width:100%;
  }

  .footer-columns{
    grid-template-columns:1fr;
    margin-top:28px;
  }

  nav a{
    font-size:17px;
    padding:8px 0;
  }

  .header-actions{
    flex-wrap:wrap;
  }
}


/* TRUE FULL LIGHT MODE FIX */
body.light,
body.light *{
  color-scheme: light;
}

body.light{
  background:#f8fbff !important;
  color:#07111f !important;
}

body.light .loader{
  background:radial-gradient(circle at center,#ffffff,#dbeafe 72%) !important;
}

body.light .site-header,
body.light header{
  background:rgba(255,255,255,.94) !important;
  border-bottom:1px solid rgba(7,17,31,.12) !important;
  box-shadow:0 12px 40px rgba(7,17,31,.10) !important;
}

body.light .hero,
body.light section.hero{
  background:
    radial-gradient(circle at 20% 8%,rgba(0,191,255,.20),transparent 35%),
    linear-gradient(135deg,#ffffff 0%,#eef7ff 55%,#dff0ff 100%) !important;
}

body.light .section,
body.light main,
body.light section{
  background-color:#f8fbff;
}

body.light .section.alt{
  background:linear-gradient(180deg,#ffffff 0%,#edf6ff 55%,#ffffff 100%) !important;
}

body.light .product-card,
body.light .info-card,
body.light .service-card,
body.light .quote-card,
body.light .promo-card,
body.light .video-card,
body.light .stat,
body.light .step,
body.light .logo-showcase,
body.light .footer-columns > div,
body.light .product-body{
  background:#ffffff !important;
  color:#07111f !important;
  border-color:rgba(7,17,31,.12) !important;
  box-shadow:0 18px 50px rgba(15,23,42,.10) !important;
}

body.light .soft,
body.light .tag,
body.light input,
body.light textarea,
body.light select{
  background:#ffffff !important;
  color:#07111f !important;
  border-color:rgba(7,17,31,.16) !important;
}

body.light .brand,
body.light .brand span,
body.light nav a,
body.light .pill,
body.light h1,
body.light h2,
body.light h3,
body.light h4,
body.light p,
body.light li,
body.light .lead,
body.light .mini-list,
body.light .feature-list li,
body.light .footer,
body.light .footer *{
  color:#07111f !important;
}

body.light .lead,
body.light p,
body.light li,
body.light .mini-list{
  color:#334155 !important;
}

body.light .btn.ghost{
  color:#07111f !important;
  border-color:rgba(7,17,31,.18) !important;
  background:#ffffff !important;
}

body.light .footer{
  background:linear-gradient(180deg,#eaf4ff,#ffffff) !important;
  border-top:1px solid rgba(7,17,31,.12) !important;
}

body.light .top-btn,
body.light .btn:not(.ghost){
  color:#00111c !important;
}

body.light .kicker,
body.light nav a.active,
body.light nav a:hover{
  color:#ff8a00 !important;
}

/* Mobile image fit polish */
@media(max-width:720px){
  .hero-media img{
    object-fit:cover !important;
    object-position:center !important;
  }
  .product-card img{
    object-fit:cover !important;
    object-position:center !important;
  }
  .promo-card img{
    object-fit:contain !important;
    object-position:center !important;
    background:#f8fafc !important;
  }
  .gallery img{
    object-fit:contain !important;
    background:#f8fafc !important;
  }
}

/* === OHGS READY FINAL FIX === */
:root{--bg:#07111f;--bg2:#0b1730;--card:#111f36;--soft:#172844;--text:#f7fbff;--muted:#b8c7da;--brand:#00bfff;--brand2:#ff9f1a;--line:rgba(255,255,255,.12)}
body{background:var(--bg)!important;color:var(--text)!important}
body.light{--bg:#f7fbff;--bg2:#eaf5ff;--card:#fff;--soft:#edf6ff;--text:#08111f;--muted:#334155;--line:rgba(8,17,31,.13);background:#f7fbff!important;color:#08111f!important}
body.light .site-header,body.light header{background:rgba(255,255,255,.96)!important;box-shadow:0 10px 35px rgba(15,23,42,.10)!important;border-bottom:1px solid rgba(8,17,31,.12)!important}
body.light .hero{background:radial-gradient(circle at 20% 10%,rgba(0,191,255,.18),transparent 35%),linear-gradient(135deg,#fff 0%,#f0f8ff 60%,#e1f1ff 100%)!important}
body.light section,body.light .section{background-color:#f7fbff!important}
body.light .section.alt{background:linear-gradient(180deg,#fff 0%,#edf7ff 55%,#fff 100%)!important}
body.light .product-card,body.light .info-card,body.light .service-card,body.light .quote-card,body.light .promo-card,body.light .video-card,body.light .stat,body.light .step,body.light .logo-showcase,body.light .product-body,body.light .footer-columns>div,body.light .feature-list li{background:#fff!important;color:#08111f!important;border-color:rgba(8,17,31,.12)!important;box-shadow:0 16px 45px rgba(15,23,42,.10)!important}
body.light h1,body.light h2,body.light h3,body.light h4,body.light p,body.light li,body.light span,body.light .brand,body.light .brand span,body.light nav a,body.light .pill,body.light .footer,body.light .footer *{color:#08111f!important}
body.light .lead,body.light p,body.light li,body.light .mini-list{color:#334155!important}
body.light .kicker,body.light nav a.active,body.light nav a:hover{color:#ff8a00!important}
body.light .btn.ghost{background:#fff!important;color:#08111f!important;border-color:rgba(8,17,31,.18)!important}
body.light input,body.light textarea,body.light select{background:#fff!important;color:#08111f!important;border-color:rgba(8,17,31,.18)!important}
body.light .footer{background:linear-gradient(180deg,#edf7ff,#fff)!important;border-top:1px solid rgba(8,17,31,.12)!important}
.loader-card{position:relative!important;min-width:170px!important;min-height:190px!important;text-align:center!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:16px!important}
.loader-card img{position:relative!important;width:94px!important;height:94px!important;z-index:2!important;object-fit:contain!important;border-radius:50%!important;background:#fff!important;padding:4px!important}
.loader-card .ring{position:absolute!important;top:20px!important;width:130px!important;height:130px!important;border-radius:50%!important;border:7px solid rgba(255,255,255,.09)!important;border-top-color:#00bfff!important;border-right-color:#38bdf8!important;animation:spin 1s linear infinite!important;box-shadow:0 0 40px rgba(0,191,255,.35)!important}
.hero-media img,.product-card img,.gallery img,.split img,.detail-image,.promo-card img{display:block!important;width:100%!important;max-width:100%!important}
.hero-media img{aspect-ratio:1/1!important;height:auto!important;object-fit:cover!important;object-position:center!important}
.product-card{display:flex!important;flex-direction:column!important}
.product-card img{aspect-ratio:4/3!important;height:auto!important;object-fit:cover!important;object-position:center!important}
.product-body{flex:1!important;display:flex!important;flex-direction:column!important}
.product-body .card-actions{margin-top:auto!important;padding-top:18px!important}
.promo-card img{aspect-ratio:4/5!important;height:auto!important;object-fit:contain!important;object-position:center!important;background:#f8fafc!important}
.gallery img{height:auto!important;object-fit:contain!important;object-position:center!important;background:#f8fafc!important}
.detail-image{aspect-ratio:16/9!important;height:auto!important;object-fit:cover!important;object-position:center!important}
.detail-hero,.hero{padding-top:155px!important}
.quick-contact{left:18px!important;bottom:95px!important;z-index:900!important}
.top-btn{right:20px!important;bottom:24px!important;z-index:901!important}
.footer{display:block!important;padding:75px 5% 30px!important}
.footer-brand{max-width:1120px!important;margin:auto!important;display:grid!important;grid-template-columns:96px 1fr!important;gap:22px!important;align-items:center!important}
.footer-brand img{width:88px!important;height:88px!important;object-fit:contain!important;border-radius:50%!important;background:#fff!important;padding:4px!important}
.footer-contact-buttons{grid-column:2!important;display:flex!important;gap:12px!important;flex-wrap:wrap!important;margin-top:10px!important}
.footer-columns{max-width:1120px!important;margin:38px auto 0!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:24px!important}
.footer-columns>div{background:rgba(255,255,255,.04)!important;border:1px solid var(--line)!important;border-radius:24px!important;padding:24px!important}
.footer-bottom{max-width:1120px!important;margin:30px auto 0!important;padding-top:22px!important;border-top:1px solid var(--line)!important;text-align:center!important}
@media(max-width:900px){
.site-header{padding:14px 18px!important;gap:10px!important}.brand img{width:54px!important;height:54px!important}.brand span{font-size:40px!important;line-height:1!important}.menu-toggle{margin-left:auto!important}.header-actions{width:100%!important;justify-content:center!important;margin-left:0!important;gap:10px!important}.pill{padding:11px 17px!important;font-size:15px!important}.hero,.detail-hero{padding-top:225px!important}.hero h1,.detail-hero h2{font-size:clamp(38px,11vw,54px)!important;line-height:1.08!important}.hero-media{grid-template-columns:1fr 1fr!important;gap:14px!important}.hero-media img{border-radius:22px!important;aspect-ratio:1/1!important}.product-card{border-radius:28px!important;overflow:hidden!important}.product-card img{aspect-ratio:16/10!important;object-fit:cover!important}.product-body{padding:26px 22px!important}.product-body h3{font-size:28px!important;line-height:1.22!important}.product-body p{font-size:19px!important;line-height:1.65!important}.card-actions{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}.card-actions .btn{width:100%!important}.split img{aspect-ratio:4/3!important;object-fit:cover!important}.promo-card img{aspect-ratio:4/5!important;object-fit:contain!important}.gallery{columns:1!important}.footer{padding:62px 22px 28px!important}.footer-brand{grid-template-columns:1fr!important;text-align:left!important;justify-items:start!important}.footer-contact-buttons{grid-column:1!important;width:100%!important;flex-direction:column!important}.footer-contact-buttons .contact-btn{width:100%!important}.footer-columns{grid-template-columns:1fr!important}.quick-contact{left:14px!important;bottom:82px!important}.quick-contact a{width:48px!important;height:48px!important;font-size:21px!important}
}

/* ========= FINAL GITHUB/VERCEL READY PATCH ========= */
.loader{position:fixed!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:99999!important;transition:opacity .7s ease,visibility .7s ease!important}
.loader.hide{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.loader-card{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:20px!important;text-align:center!important;min-height:220px!important}
.loader-logo-ring{width:138px!important;height:138px!important;position:relative!important;display:grid!important;place-items:center!important}
.loader-logo-ring img{width:82px!important;height:82px!important;object-fit:contain!important;background:#fff!important;border-radius:50%!important;padding:4px!important;z-index:3!important;box-shadow:0 10px 35px rgba(0,0,0,.22)!important}
.loader-ring{position:absolute!important;inset:0!important;border-radius:50%!important;border:9px solid rgba(0,191,255,.15)!important;border-top-color:#00bfff!important;border-right-color:#7dd3fc!important;animation:ohgsLoaderSpin 1s linear infinite!important;box-shadow:0 0 42px rgba(0,191,255,.35)!important}
@keyframes ohgsLoaderSpin{to{transform:rotate(360deg)}}
.product-body,.promo-card,.video-card,.info-card,.service-card,.quote-card{text-align:left!important}
.card-actions,.footer-actions{display:flex!important;gap:14px!important;align-items:center!important;flex-wrap:wrap!important}
.btn,.pill,button,.contact-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:8px!important;line-height:1.1!important;white-space:nowrap!important}
.product-card{overflow:hidden!important;display:flex!important;flex-direction:column!important}
.product-body{display:flex!important;flex-direction:column!important;flex:1!important}
.product-body .card-actions{margin-top:auto!important;padding-top:18px!important}
.hero-media img,.product-card img,.gallery img,.promo-card img,.video-card video,.detail-image,.split img{display:block!important;width:100%!important;max-width:100%!important}
.hero-media img{aspect-ratio:1/1!important;object-fit:cover!important;object-position:center!important}
.product-card img{aspect-ratio:4/3!important;height:auto!important;object-fit:cover!important;object-position:center!important}
.promo-card img,.gallery img{object-fit:contain!important;object-position:center!important;background:#f8fafc!important}
.promo-card img{aspect-ratio:4/5!important}.video-card video{aspect-ratio:16/9!important;object-fit:cover!important;object-position:center!important;border-radius:20px!important}
.detail-image{aspect-ratio:16/9!important;height:auto!important;object-fit:cover!important;object-position:center!important}
body.light{background:#f7fbff!important;color:#08111f!important}
body.light .loader{background:radial-gradient(circle at center,#fff,#e8f4ff 70%)!important}
body.light .site-header,body.light header{background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(8,17,31,.12)!important;box-shadow:0 10px 35px rgba(15,23,42,.10)!important}
body.light .hero{background:radial-gradient(circle at 20% 8%,rgba(0,191,255,.18),transparent 34%),linear-gradient(135deg,#fff 0%,#f1f8ff 60%,#e2f1ff 100%)!important}
body.light section,body.light .section{background-color:#f7fbff!important}
body.light .section.alt{background:linear-gradient(180deg,#fff,#eef7ff,#fff)!important}
body.light .product-card,body.light .info-card,body.light .service-card,body.light .quote-card,body.light .promo-card,body.light .video-card,body.light .stat,body.light .step,body.light .logo-showcase,body.light .product-body,body.light .footer-columns>div{background:#fff!important;color:#08111f!important;border-color:rgba(8,17,31,.12)!important;box-shadow:0 18px 48px rgba(15,23,42,.10)!important}
body.light h1,body.light h2,body.light h3,body.light h4,body.light p,body.light li,body.light span,body.light .brand,body.light .brand span,body.light nav a,body.light .pill,body.light .footer,body.light .footer *{color:#08111f!important}
body.light p,body.light li,body.light .lead,body.light .mini-list{color:#334155!important}
body.light .kicker,body.light nav a.active,body.light nav a:hover{color:#ff8a00!important}
body.light input,body.light textarea,body.light select{background:#fff!important;color:#08111f!important;border-color:rgba(8,17,31,.18)!important}
body.light .btn.ghost{background:#fff!important;color:#08111f!important;border-color:rgba(8,17,31,.18)!important}
body.light .footer{background:linear-gradient(180deg,#eef7ff,#fff)!important;border-top:1px solid rgba(8,17,31,.12)!important}
.footer{padding:72px 5% 28px!important}.footer-inner{max-width:1120px!important;margin:auto!important}
.footer-brand{display:grid!important;grid-template-columns:96px 1fr!important;gap:24px!important;align-items:start!important}
.footer-brand img{width:90px!important;height:90px!important;object-fit:contain!important;background:#fff!important;border-radius:50%!important;padding:4px!important}
.footer-brand h2{margin-top:0!important}.footer-columns{margin-top:34px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important}
.footer-columns>div{border:1px solid var(--line,rgba(255,255,255,.12))!important;border-radius:22px!important;padding:22px!important}
.footer-bottom{margin-top:28px!important;padding-top:18px!important;border-top:1px solid var(--line,rgba(255,255,255,.12))!important;text-align:center!important}
@media(max-width:900px){.site-header{padding:14px 18px!important;gap:10px!important}.brand img{width:54px!important;height:54px!important}.brand span{font-size:38px!important;line-height:1!important}.header-actions{width:100%!important;justify-content:center!important;gap:10px!important}.pill{padding:11px 16px!important;font-size:15px!important}.hero,.detail-hero{padding-top:225px!important}.hero h1,.detail-hero h2{font-size:clamp(38px,11vw,54px)!important;line-height:1.08!important}.hero-media{grid-template-columns:1fr 1fr!important;gap:14px!important}.hero-media img{border-radius:22px!important}.product-card img{aspect-ratio:16/10!important}.product-body{padding:26px 22px!important}.product-body h3{font-size:28px!important;line-height:1.22!important}.product-body p{font-size:18px!important;line-height:1.62!important}.card-actions{display:grid!important;grid-template-columns:1fr!important}.card-actions .btn{width:100%!important}.gallery{columns:1!important}.footer{padding:58px 22px 26px!important}.footer-brand{grid-template-columns:1fr!important}.footer-actions{display:grid!important;grid-template-columns:1fr!important}.footer-columns{grid-template-columns:1fr!important}.quick-contact{left:12px!important;bottom:82px!important}.quick-contact a{width:48px!important;height:48px!important;font-size:21px!important}}




/* Small creator credit footer */
.developer-footer{
  margin-top:14px !important;
  padding-top:10px !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
  text-align:center !important;
  opacity:.78 !important;
}
.developer-footer p{
  margin:0 !important;
  font-size:12px !important;
  line-height:1.5 !important;
  letter-spacing:.2px !important;
}
.developer-footer strong{
  font-weight:700 !important;
}
.developer-footer span{
  opacity:.55 !important;
  margin:0 5px !important;
}
.developer-footer a{
  color:#22c55e !important;
  font-weight:700 !important;
  text-decoration:none !important;
}
.developer-footer a:hover{
  text-decoration:underline !important;
}
body.light .developer-footer{
  border-top:1px solid rgba(0,0,0,.10) !important;
  opacity:.72 !important;
}
@media(max-width:700px){
  .developer-footer{
    margin-top:10px !important;
    padding-top:8px !important;
  }
  .developer-footer p{
    font-size:11px !important;
  }
}

/* === OHGS loader ring around logo + scroll shrinking header === */
.loader{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:radial-gradient(circle at center, rgba(0,191,255,.16), transparent 32%),
             linear-gradient(135deg,#06101d,#0b2038) !important;
  transition:opacity .65s ease, visibility .65s ease !important;
}
.loader.hide{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.loader-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
  text-align:center !important;
}
.loader-logo-wrap{
  width:118px !important;
  height:118px !important;
  position:relative !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
}
.loader-logo-wrap img{
  width:82px !important;
  height:82px !important;
  object-fit:contain !important;
  border-radius:50% !important;
  background:#fff !important;
  padding:4px !important;
  position:relative !important;
  z-index:3 !important;
  box-shadow:0 16px 45px rgba(0,0,0,.34) !important;
}
.loader-logo-wrap .loader-ring{
  position:absolute !important;
  inset:0 !important;
  border-radius:50% !important;
  background:conic-gradient(from 0deg,#00c8ff 0deg,#7dd3fc 70deg,rgba(125,211,252,.18) 112deg,rgba(125,211,252,.08) 235deg,#00c8ff 360deg) !important;
  animation:ohgsLoaderSpin 1s linear infinite !important;
  box-shadow:0 0 34px rgba(0,191,255,.55) !important;
}
.loader-logo-wrap .loader-ring::after{
  content:"" !important;
  position:absolute !important;
  inset:9px !important;
  border-radius:50% !important;
  background:#0b2038 !important;
}
.loader p{
  font-size:16px !important;
  color:#f8fbff !important;
  letter-spacing:.2px !important;
  margin:0 !important;
}
body.light .loader{
  background:radial-gradient(circle at center, rgba(0,191,255,.20), transparent 34%),
             linear-gradient(135deg,#f8fbff,#e7f4ff) !important;
}
body.light .loader-logo-wrap .loader-ring::after{
  background:#e7f4ff !important;
}
body.light .loader p{
  color:#06101d !important;
}
@keyframes ohgsLoaderSpin{to{transform:rotate(360deg)}}

.site-header .brand, header .brand{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  text-decoration:none !important;
  transition:all .32s ease !important;
}
.site-header .brand img, header .brand img{
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  object-fit:contain !important;
  border-radius:50% !important;
  background:#fff !important;
  padding:3px !important;
  transition:all .32s ease !important;
}
.site-header .brand span, header .brand span{
  font-size:30px !important;
  font-weight:900 !important;
  letter-spacing:.5px !important;
  line-height:1 !important;
  transition:all .32s ease !important;
}

.site-header, header{
  transition:padding .32s ease, background .32s ease, box-shadow .32s ease, backdrop-filter .32s ease !important;
}
.site-header.scrolled, header.scrolled{
  padding-top:8px !important;
  padding-bottom:8px !important;
  background:rgba(5,13,25,.86) !important;
  backdrop-filter:blur(18px) !important;
  box-shadow:0 14px 45px rgba(0,0,0,.28) !important;
}
body.light .site-header.scrolled, body.light header.scrolled{
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 14px 45px rgba(15,23,42,.12) !important;
}
.site-header.scrolled .brand img, header.scrolled .brand img{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
}
.site-header.scrolled .brand span, header.scrolled .brand span{
  font-size:24px !important;
}
.site-header.scrolled nav a, header.scrolled nav a{
  font-size:14px !important;
  padding-top:6px !important;
  padding-bottom:6px !important;
}
.site-header.scrolled .pill, header.scrolled .pill,
.site-header.scrolled .btn, header.scrolled .btn{
  transform:scale(.92) !important;
}
.site-header.scrolled .menu-toggle, header.scrolled .menu-toggle{
  transform:scale(.88) !important;
}

@media(max-width:900px){
  .site-header .brand img, header .brand img{
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
  }
  .site-header .brand span, header .brand span{
    font-size:38px !important;
  }
  .site-header.scrolled .brand img, header.scrolled .brand img{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
  }
  .site-header.scrolled .brand span, header.scrolled .brand span{
    font-size:28px !important;
  }
  .site-header.scrolled .header-actions, header.scrolled .header-actions{
    transform:scale(.94) !important;
    transform-origin:center !important;
  }
}

/* === FINAL FIX: remove hamburger on all pages + small tight loader === */
.menu-toggle,button.menu-toggle,.header-menu,.hamburger,.mobile-toggle,.nav-toggle{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;
}
.site-header nav,header nav,#navMenu{display:flex!important;align-items:center!important;gap:22px!important}
#navMenu.open{display:flex!important}
.loader{
  position:fixed!important;inset:0!important;z-index:99999!important;display:flex!important;align-items:center!important;justify-content:center!important;
  background:radial-gradient(circle at center,rgba(0,191,255,.11),transparent 30%),linear-gradient(135deg,#06101d,#0b2038)!important;
  transition:opacity .6s ease,visibility .6s ease!important;
}
.loader.hide{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.loader-card{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:18px!important;text-align:center!important}
.loader-logo-wrap{width:92px!important;height:92px!important;position:relative!important;display:grid!important;place-items:center!important;border-radius:50%!important}
.loader-logo-wrap img{width:64px!important;height:64px!important;object-fit:contain!important;border-radius:50%!important;background:#fff!important;padding:3px!important;position:relative!important;z-index:3!important;box-shadow:0 12px 32px rgba(0,0,0,.32)!important}
.loader-logo-wrap .loader-ring{position:absolute!important;inset:0!important;border-radius:50%!important;background:conic-gradient(from 0deg,#00c8ff 0deg,#7dd3fc 75deg,rgba(125,211,252,.22) 120deg,rgba(125,211,252,.06) 230deg,#00c8ff 360deg)!important;animation:ohgsLoaderSpin .95s linear infinite!important;box-shadow:0 0 24px rgba(0,191,255,.45)!important}
.loader-logo-wrap .loader-ring::after{content:""!important;position:absolute!important;inset:7px!important;border-radius:50%!important;background:#0b2038!important}
.loader-text,.loader p{font-size:15px!important;color:#f8fbff!important;letter-spacing:.2px!important;margin:0!important}
body.light .loader{background:radial-gradient(circle at center,rgba(0,191,255,.16),transparent 32%),linear-gradient(135deg,#f8fbff,#e7f4ff)!important}
body.light .loader-logo-wrap .loader-ring::after{background:#e7f4ff!important}
body.light .loader-text,body.light .loader p{color:#06101d!important}
@keyframes ohgsLoaderSpin{to{transform:rotate(360deg)}}
@media(max-width:900px){
  .site-header nav,header nav,#navMenu{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:14px!important;width:100%!important;padding-bottom:6px!important;scrollbar-width:none!important}
  .site-header nav::-webkit-scrollbar,header nav::-webkit-scrollbar,#navMenu::-webkit-scrollbar{display:none!important}
  .site-header nav a,header nav a{white-space:nowrap!important}
  .loader-logo-wrap{width:88px!important;height:88px!important}
  .loader-logo-wrap img{width:62px!important;height:62px!important}
}

/* More clickable picture cards on every page */
.project-picture-section{
  padding-top:70px !important;
}
.project-image-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:24px !important;
}
.project-image-card{
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  border-radius:28px !important;
  text-decoration:none !important;
  background:rgba(15,35,64,.82) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 20px 55px rgba(0,0,0,.22) !important;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease !important;
}
.project-image-card:hover{
  transform:translateY(-6px) !important;
  border-color:rgba(0,191,255,.45) !important;
  box-shadow:0 26px 70px rgba(0,191,255,.18) !important;
}
.project-image-card img{
  width:100% !important;
  aspect-ratio:16/10 !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
.project-image-card div{
  padding:22px !important;
}
.project-image-card span{
  display:inline-flex !important;
  padding:8px 13px !important;
  border-radius:999px !important;
  color:#00c8ff !important;
  border:1px solid rgba(0,200,255,.28) !important;
  font-size:13px !important;
  font-weight:800 !important;
  margin-bottom:14px !important;
}
.project-image-card h3{
  margin:0 0 10px !important;
  font-size:24px !important;
  color:#fff !important;
}
.project-image-card p{
  margin:0 !important;
  color:#cbd5e1 !important;
  line-height:1.65 !important;
}
body.light .project-image-card{
  background:#ffffff !important;
  border-color:rgba(8,17,31,.12) !important;
  box-shadow:0 18px 48px rgba(15,23,42,.10) !important;
}
body.light .project-image-card h3{
  color:#08111f !important;
}
body.light .project-image-card p{
  color:#334155 !important;
}
@media(max-width:900px){
  .project-image-grid{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  .project-image-card{
    border-radius:24px !important;
  }
  .project-image-card div{
    padding:20px !important;
  }
  .project-image-card h3{
    font-size:26px !important;
  }
}

/* === FINAL LAUNCH POLISH: button alignment + image grids === */

/* Make buttons line up neatly inside cards and hero sections */
.card-actions,
.hero-actions,
.footer-actions,
.product-body .card-actions,
.info-card .card-actions,
.service-card .card-actions,
.quote-card .card-actions,
.promo-card .card-actions,
.project-card .card-actions,
.detail-hero .card-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:14px !important;
  flex-wrap:nowrap !important;
}

.btn,
button,
.pill,
.contact-btn,
.card-actions a,
.hero-actions a{
  min-height:46px !important;
  padding:0 24px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
}

/* Cards: keep buttons at same vertical position */
.info-card,
.service-card,
.quote-card,
.product-card,
.project-card,
.promo-card,
.video-card,
.project-image-card{
  height:100% !important;
}

.info-card,
.service-card,
.quote-card{
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
}

.info-card .btn,
.service-card .btn,
.quote-card .btn{
  margin-top:18px !important;
  align-self:flex-start !important;
}

/* Product cards: clean image and body alignment */
.product-grid,
.info-grid,
.service-grid,
.project-grid,
.promo-grid,
.video-grid,
.project-image-grid{
  align-items:stretch !important;
}

.product-card img,
.project-image-card img,
.promo-card img,
.gallery img,
.hero-media img,
.detail-image{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
  object-position:center !important;
}

/* Hero image collage: balanced when zoomed out */
.hero-media{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(180px, 1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}
.hero-media img{
  height:100% !important;
  aspect-ratio:4 / 3 !important;
  object-fit:cover !important;
  border-radius:24px !important;
}

/* Product and project image cards */
.product-card img,
.project-image-card img{
  aspect-ratio:16 / 10 !important;
  object-fit:cover !important;
  border-radius:0 !important;
}

.product-body,
.project-image-card div,
.promo-card div,
.video-card div{
  min-height:0 !important;
}

/* Better desktop widths when zoomed out */
.section,
.hero,
.detail-hero,
main > section{
  max-width:1280px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.hero{
  display:grid !important;
  grid-template-columns:minmax(360px, 1fr) minmax(360px, .95fr) !important;
  gap:54px !important;
  align-items:center !important;
}

.detail-hero{
  display:grid !important;
  grid-template-columns:minmax(360px, 1fr) minmax(360px, .9fr) !important;
  gap:42px !important;
  align-items:center !important;
}

.detail-hero img{
  border-radius:28px !important;
}

/* Nav and header stay neat */
.site-header,
header{
  display:flex !important;
  align-items:center !important;
  gap:26px !important;
}

.site-header nav,
header nav,
#navMenu{
  flex:1 1 auto !important;
  justify-content:center !important;
}

.header-actions{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  flex:0 0 auto !important;
}

/* Floating buttons should not cover content too much */
.quick-contact{
  z-index:50 !important;
}
.back-to-top,
.to-top{
  z-index:55 !important;
}

/* Light mode image card backgrounds */
body.light .promo-card img,
body.light .gallery img{
  background:#f8fafc !important;
}

/* Tablet layout */
@media(max-width:1100px){
  .hero,
  .detail-hero{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }
  .hero-media{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Mobile layout: buttons still same line where space allows */
@media(max-width:700px){
  .card-actions,
  .hero-actions,
  .detail-hero .card-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
    width:100% !important;
  }

  .card-actions .btn,
  .hero-actions .btn,
  .detail-hero .btn,
  .card-actions a,
  .hero-actions a{
    width:100% !important;
    min-width:0 !important;
    padding:0 12px !important;
    font-size:15px !important;
  }

  .info-card .card-actions,
  .service-card .card-actions,
  .quote-card .card-actions{
    grid-template-columns:1fr !important;
  }

  .hero-media{
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }

  .hero-media img{
    aspect-ratio:1 / 1 !important;
    border-radius:18px !important;
  }

  .product-card img,
  .project-image-card img,
  .promo-card img{
    aspect-ratio:16 / 11 !important;
  }

  .section,
  .hero,
  .detail-hero,
  main > section{
    max-width:100% !important;
  }
}

/* Very small phones: prevent button text breaking the design */
@media(max-width:420px){
  .card-actions,
  .hero-actions,
  .detail-hero .card-actions{
    grid-template-columns:1fr !important;
  }

  .btn,
  button,
  .pill{
    min-height:44px !important;
    font-size:14px !important;
  }
}

/* === FINAL FULL ALIGNMENT POLISH: all cards, buttons, images, WhatsApp, loader === */

/* Smaller, cleaner loader. Ring hugs the logo without looking oversized. */
.loader-logo-wrap{
  width:76px !important;
  height:76px !important;
}
.loader-logo-wrap img{
  width:54px !important;
  height:54px !important;
  padding:3px !important;
}
.loader-logo-wrap .loader-ring{
  box-shadow:0 0 18px rgba(0,191,255,.42) !important;
}
.loader-logo-wrap .loader-ring::after{
  inset:5px !important;
}
.loader-card{
  gap:14px !important;
}
.loader-text,
.loader p{
  font-size:14px !important;
}

/* Header grid: prevents nav/buttons from jumping when zoomed */
.site-header,
header{
  min-height:72px !important;
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:22px !important;
  padding-left:5% !important;
  padding-right:5% !important;
}
.site-header nav,
header nav,
#navMenu{
  justify-content:center !important;
  min-width:0 !important;
}
.header-actions{
  justify-content:flex-end !important;
}

/* Align all sections to the same visual rhythm */
section,
.section,
.hero,
.detail-hero{
  box-sizing:border-box !important;
}
.section,
main > section{
  width:min(100%, 1280px) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.section-head{
  display:grid !important;
  gap:12px !important;
  align-items:start !important;
}
.section-head h2,
.section-head p,
.section-head .kicker{
  max-width:780px !important;
}

/* Image grid alignment across homepage, products, projects, gallery, promotions */
.hero-media,
.product-grid,
.project-grid,
.info-grid,
.service-grid,
.promo-grid,
.video-grid,
.project-image-grid{
  width:100% !important;
  align-items:stretch !important;
}

.hero{
  grid-template-columns:minmax(420px, 1fr) minmax(420px, 1fr) !important;
  gap:52px !important;
  align-items:center !important;
}
.hero-media{
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows:1fr !important;
}
.hero-media img{
  width:100% !important;
  height:100% !important;
  min-height:210px !important;
  aspect-ratio:4 / 3 !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:24px !important;
}

/* Cards all same height and clean inside */
.product-card,
.project-card,
.info-card,
.service-card,
.quote-card,
.promo-card,
.video-card,
.project-image-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  min-height:100% !important;
  overflow:hidden !important;
}

.product-card img,
.project-card img,
.project-image-card img,
.promo-card img,
.video-card video,
.gallery img,
.detail-image{
  width:100% !important;
  display:block !important;
  object-position:center !important;
}

/* Product/equipment photos: fill nicely */
.product-card img,
.project-card img,
.project-image-card img{
  height:auto !important;
  aspect-ratio:16 / 10 !important;
  object-fit:cover !important;
}

/* Promotional poster images: do not look like cut Instagram screenshots */
.promo-card img{
  aspect-ratio:4 / 5 !important;
  object-fit:cover !important;
  object-position:center !important;
  background:#0b1728 !important;
}

/* If promo cards contain text below, keep equal body size */
.promo-card > div,
.video-card > div,
.product-body,
.project-image-card > div{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
}

/* Button alignment: same row and same baseline */
.card-actions,
.hero-actions,
.footer-actions,
.product-body .card-actions,
.project-image-card .card-actions,
.detail-hero .card-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:14px !important;
  flex-wrap:nowrap !important;
  margin-top:auto !important;
  padding-top:18px !important;
}

.btn,
.card-actions a,
.hero-actions a,
button.btn,
.aligned-whatsapp,
.aligned-email{
  min-height:48px !important;
  height:48px !important;
  padding:0 24px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1 !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
}

/* WhatsApp buttons/icons: align neatly throughout the site */
.whatsapp-action,
.aligned-whatsapp,
a[href*="wa.me"],
a[href*="whatsapp"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
}
.quick-contact{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  align-items:center !important;
  left:18px !important;
}
.quick-contact a{
  width:54px !important;
  height:54px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  line-height:1 !important;
  font-size:23px !important;
  text-decoration:none !important;
}
.quick-contact a:first-child{
  background:#16c75d !important;
}

/* Detail pages and large image sections */
.detail-hero{
  grid-template-columns:minmax(420px, 1fr) minmax(420px, 1fr) !important;
  gap:42px !important;
  align-items:center !important;
}
.detail-image{
  aspect-ratio:16 / 10 !important;
  object-fit:cover !important;
  border-radius:28px !important;
}

/* Make product-detail cards sit in a clean grid */
.project-image-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:24px !important;
}
.project-image-card h3,
.product-body h3,
.promo-card h3{
  min-height:1.2em !important;
}
.project-image-card p,
.product-body p,
.promo-card p{
  flex:1 1 auto !important;
}

/* The added shop picture should look like a proper card */
.featured-shop-card img{
  object-fit:cover !important;
  object-position:center !important;
}

/* Avoid cards becoming too narrow when zooming out/in */
@media(min-width:1101px){
  .product-grid,
  .project-grid,
  .promo-grid,
  .video-grid,
  .project-image-grid{
    grid-template-columns:repeat(3, minmax(260px, 1fr)) !important;
  }
  .info-grid,
  .service-grid{
    grid-template-columns:repeat(3, minmax(260px, 1fr)) !important;
  }
}

/* Tablet */
@media(max-width:1100px){
  .site-header,
  header{
    grid-template-columns:auto 1fr !important;
  }
  .header-actions{
    grid-column:1 / -1 !important;
    justify-content:center !important;
  }
  .hero,
  .detail-hero{
    grid-template-columns:1fr !important;
    gap:32px !important;
  }
  .product-grid,
  .project-grid,
  .promo-grid,
  .video-grid,
  .project-image-grid,
  .info-grid,
  .service-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Mobile */
@media(max-width:700px){
  .site-header,
  header{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:12px !important;
  }
  .site-header nav,
  header nav,
  #navMenu{
    order:3 !important;
    width:100% !important;
    justify-content:flex-start !important;
    overflow-x:auto !important;
    padding-bottom:6px !important;
  }
  .header-actions{
    order:2 !important;
    width:auto !important;
    margin-left:auto !important;
  }
  .product-grid,
  .project-grid,
  .promo-grid,
  .video-grid,
  .project-image-grid,
  .info-grid,
  .service-grid{
    grid-template-columns:1fr !important;
  }
  .hero-media{
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
  }
  .hero-media img{
    min-height:150px !important;
    aspect-ratio:1 / 1 !important;
    border-radius:18px !important;
  }
  .product-card img,
  .project-card img,
  .project-image-card img,
  .detail-image{
    aspect-ratio:16 / 11 !important;
  }
  .promo-card img{
    aspect-ratio:4 / 4.7 !important;
  }
  .card-actions,
  .hero-actions,
  .detail-hero .card-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
    width:100% !important;
  }
  .card-actions .btn,
  .hero-actions .btn,
  .detail-hero .btn,
  .card-actions a,
  .hero-actions a{
    width:100% !important;
    min-width:0 !important;
    padding-left:10px !important;
    padding-right:10px !important;
    font-size:14px !important;
  }
  .loader-logo-wrap{
    width:72px !important;
    height:72px !important;
  }
  .loader-logo-wrap img{
    width:52px !important;
    height:52px !important;
  }
}

/* Small phone */
@media(max-width:420px){
  .card-actions,
  .hero-actions,
  .detail-hero .card-actions{
    grid-template-columns:1fr !important;
  }
  .quick-contact a{
    width:48px !important;
    height:48px !important;
  }
}

/* Prevent the browser warning box from covering content area when screenshots are taken */
nextjs-portal{
  display:none !important;
}

/* === MOBILE MENU FINAL UPDATE === */

/* Desktop: hide menu icon */
.menu-toggle{
  display:none !important;
}

@media(min-width:901px){
  #navMenu,
  header nav,
  .site-header nav{
    display:flex !important;
    position:static !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    max-height:none !important;
    overflow:visible !important;
  }
}

/* Mobile: show small menu icon, tap to open larger menu */
@media(max-width:900px){
  .site-header,
  header{
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    align-items:center !important;
    gap:12px !important;
    padding:18px 18px !important;
    position:sticky !important;
    top:0 !important;
    z-index:1000 !important;
  }

  .site-header .brand,
  header .brand{
    grid-column:1 / 2 !important;
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
  }

  .site-header .brand img,
  header .brand img{
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
  }

  .site-header .brand span,
  header .brand span{
    font-size:38px !important;
    line-height:1 !important;
  }

  .menu-toggle{
    grid-column:3 / 4 !important;
    display:inline-flex !important;
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    border:0 !important;
    border-radius:16px !important;
    background:#00bdf2 !important;
    align-items:center !important;
    justify-content:center !important;
    flex-direction:column !important;
    gap:5px !important;
    cursor:pointer !important;
    box-shadow:0 14px 32px rgba(0,189,242,.25) !important;
    transition:transform .25s ease, border-radius .25s ease, background .25s ease !important;
  }

  .menu-toggle span{
    display:block !important;
    width:18px !important;
    height:2px !important;
    border-radius:999px !important;
    background:#ffffff !important;
    transition:transform .25s ease, opacity .25s ease, width .25s ease !important;
  }

  .menu-toggle.open{
    transform:scale(1.08) !important;
    border-radius:20px !important;
    background:#0798d1 !important;
  }

  .menu-toggle.open span:nth-child(1){
    transform:translateY(7px) rotate(45deg) !important;
    width:22px !important;
  }

  .menu-toggle.open span:nth-child(2){
    opacity:0 !important;
  }

  .menu-toggle.open span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg) !important;
    width:22px !important;
  }

  .header-actions{
    grid-column:1 / -1 !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:12px !important;
    width:100% !important;
  }

  #navMenu,
  header nav,
  .site-header nav{
    grid-column:1 / -1 !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:0 !important;
    max-height:0 !important;
    overflow:hidden !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(-10px) !important;
    padding:0 !important;
    border:0 !important;
    transition:max-height .35s ease, opacity .25s ease, transform .25s ease, padding .25s ease, border-color .25s ease !important;
    background:rgba(7,18,34,.96) !important;
    border-radius:26px !important;
    box-shadow:0 22px 55px rgba(0,0,0,.28) !important;
  }

  #navMenu.open,
  header nav.open,
  .site-header nav.open{
    max-height:620px !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:translateY(0) !important;
    padding:18px 0 !important;
    border:1px solid rgba(255,255,255,.10) !important;
    margin-top:6px !important;
  }

  #navMenu a,
  header nav a,
  .site-header nav a{
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:16px 18px !important;
    font-size:22px !important;
    font-weight:900 !important;
    text-align:center !important;
    text-decoration:none !important;
    border-radius:18px !important;
    white-space:normal !important;
  }

  #navMenu a:hover,
  header nav a:hover,
  .site-header nav a:hover{
    background:rgba(0,189,242,.12) !important;
  }

  body.light #navMenu,
  body.light header nav,
  body.light .site-header nav{
    background:rgba(255,255,255,.96) !important;
    box-shadow:0 22px 55px rgba(15,23,42,.14) !important;
  }
}

@media(max-width:430px){
  .site-header .brand span,
  header .brand span{
    font-size:34px !important;
  }

  .menu-toggle{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    border-radius:14px !important;
  }

  #navMenu a,
  header nav a,
  .site-header nav a{
    font-size:20px !important;
    padding:15px 14px !important;
  }
}
