/* Samvik Power — white corporate theme.
   Layout: light airy sections (white / soft blue-grey), navy brand type, yellow only for energy accents and the primary action. Poppins throughout. */
:root{
  --navy:#010722; --navy-2:#0B1640; --navy-3:#1B2A5E;
  --ink:#0E1736; --muted:#5A6382; --faint:#8A92AD;
  --bg:#FFFFFF; --soft:#F4F6FA; --soft-2:#EAF0F8; --line:#E3E7F0;
  --yellow:#FDBF00; --yellow-2:#FFD34D; --yellow-soft:#FFF5D1; --yellow-ink:#7A5B00;
  --green:#1E9E63; --green-soft:#E3F5EC; --red:#C9352E;
  --f:"Poppins","Segoe UI",Arial,sans-serif;
  --serif:"Playfair Display",Georgia,"Times New Roman",serif;
  --gold:#C08A0A; --gold-2:#A87700;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --r:18px; --r-lg:28px; --maxw:1240px;
  --h1:clamp(2.1rem,4vw,3.3rem); --h2:clamp(1.55rem,2.5vw,2.15rem); --h3:clamp(1.05rem,1.4vw,1.2rem);
  --shadow:0 18px 40px -24px rgba(1,7,34,.28);
  color-scheme:light;
}
*{box-sizing:border-box}
html{background:var(--bg);-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f);font-size:.98rem;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:90;background:#fff}
img{max-width:100%;display:block}
[hidden]{display:none!important}
h1,h2,h3,h4{margin:0;font-family:var(--serif);color:var(--navy);line-height:1.18;text-wrap:balance;letter-spacing:-.005em}
h4{font-family:var(--f)}
h1{font-size:var(--h1);font-weight:600}
h2{font-size:var(--h2);font-weight:600}
h3{font-size:var(--h3);font-weight:600}
h4{font-size:1rem;font-weight:600}
p{margin:0}
a{color:inherit}
b,strong{font-weight:600}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px;border-radius:6px}
::selection{background:var(--yellow);color:var(--navy)}
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.sec{padding-block:clamp(60px,8vw,104px)}
.sec.soft{background:var(--soft)}
.sec.tight{padding-block:clamp(44px,6vw,72px)}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.74rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--navy-3)}
.eyebrow::before{content:"";width:22px;height:3px;border-radius:2px;background:var(--yellow)}
.head{display:grid;gap:14px;max-width:720px;margin-bottom:clamp(30px,4.5vw,52px)}
.head.center{margin-inline:auto;text-align:center;justify-items:center}
.head p{color:var(--muted);font-size:1.02rem}
.hl{box-shadow:inset 0 -.32em 0 var(--yellow-soft);padding:0 .05em}
.hl-y{box-shadow:inset 0 -.36em 0 rgba(253,191,0,.55)}
.muted{color:var(--muted)}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:980px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.split.wide-l{grid-template-columns:1.15fr .85fr}
@media (max-width:900px){.split,.split.wide-l{grid-template-columns:1fr}}
.prose{display:grid;gap:14px;color:var(--muted);max-width:64ch}
.prose strong{color:var(--ink)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:12px;font:500 .9rem/1 var(--f);padding:8px 8px 8px 22px;border-radius:999px;border:1.5px solid transparent;text-decoration:none;cursor:pointer;transition:background .25s,color .25s,border-color .25s,transform .25s;white-space:nowrap}
.btn .ic{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none;transition:transform .3s}
.btn .ic svg{width:16px;height:16px}
.btn:hover{transform:translateY(-2px)}
.btn:hover .ic{transform:rotate(-45deg) scale(1.08)}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy .ic{background:var(--yellow);color:var(--navy)}
.btn-navy:hover{background:var(--navy-3)}
.btn-yellow{background:var(--yellow);color:var(--navy)}
.btn-yellow .ic{background:var(--navy);color:var(--yellow)}
.btn-yellow:hover{background:var(--yellow-2)}
.btn-line{border-color:var(--line);color:var(--navy);background:#fff}
.btn-line .ic{background:var(--soft-2);color:var(--navy)}
.btn-line:hover{border-color:var(--navy)}
.btn.sm{font-size:.82rem;padding:6px 6px 6px 16px;gap:10px}
.btn.sm .ic{width:28px;height:28px}
.btn.plain{padding:12px 20px}
.link{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.88rem;color:var(--navy);text-decoration:none;border-bottom:2px solid var(--yellow);padding-bottom:2px}
.link svg{width:14px;height:14px;transition:transform .25s}
.link:hover svg{transform:translateX(4px)}
.row-btns{display:flex;flex-wrap:wrap;gap:12px}

/* Top bar + header */
.topbar{background:var(--navy);color:#D5DBEC;font-size:.86rem;letter-spacing:.1px}
.topbar .wrap{display:flex;gap:18px;align-items:center;min-height:44px;flex-wrap:wrap}
.topbar a{text-decoration:none;display:inline-flex;align-items:center;gap:9px}
.topbar a:hover{color:#fff}
.topbar svg{width:16px;height:16px;color:var(--yellow)}
.topbar .sp{flex:1}
.topbar .tsep{display:block;width:1px;height:16px;background:rgba(255,255,255,.28)}
@media (max-width:720px){.topbar .hide-s{display:none}.topbar .wrap{justify-content:center;min-height:38px;font-size:.84rem}.topbar .sp{display:none}}
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:80;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.hdr.scrolled{box-shadow:0 10px 30px -22px rgba(1,7,34,.35)}
.hdr .wrap,.topbar .wrap{max-width:1380px}
.hdr .wrap{display:flex;align-items:center;gap:18px;height:84px}
.hdr .logo{flex:none}
.hdr .logo img{height:44px;width:auto}
.nav{display:flex;align-items:center;gap:clamp(0px,.6vw,10px);margin:0 auto;padding:0}
.nav>li{list-style:none;position:relative}
.nav>li>a,.nav>li>button{display:inline-flex;align-items:center;gap:7px;font:500 .95rem var(--f);color:#1A2340;text-decoration:none;background:none;border:0;padding:10px 11px;border-radius:10px;cursor:pointer;transition:color .2s,background .2s;white-space:nowrap}
.nav>li>a:hover,.nav>li>button:hover,.nav>li.open>button{color:var(--navy);background:var(--soft)}
.nav>li>a.on,.nav>li>button.on{color:var(--navy);box-shadow:inset 0 -2.5px 0 var(--yellow);border-radius:0}
.nav button svg{width:12px;height:12px;transition:transform .25s;opacity:.7}
.nav li.open>button svg{transform:rotate(180deg)}
.dd{position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%,8px);min-width:300px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 60px -30px rgba(1,7,34,.35);padding:10px;display:grid;gap:2px;opacity:0;visibility:hidden;transition:opacity .2s,transform .2s,visibility .2s}
.nav li.open .dd{opacity:1;visibility:visible;transform:translate(-50%,0)}
.dd a{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;text-decoration:none}
.dd a:hover{background:var(--soft)}
.dd a .di{width:38px;height:38px;border-radius:10px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center}
.dd a .di svg{width:19px;height:19px}
.dd a b{display:block;font-size:.9rem;font-weight:600;color:var(--navy);line-height:1.3}
.dd a small{display:block;font-size:.77rem;color:var(--muted);line-height:1.4}
.hdr-ctas{display:flex;gap:12px;align-items:center;flex:none}
.hbtn-calc{display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 16px 0 20px;border:1.5px solid #D6DCE8;border-radius:999px;font:500 .92rem var(--f);color:#1A2340;text-decoration:none;background:#fff;transition:border-color .2s,color .2s}
.hbtn-calc svg{width:22px;height:22px;color:var(--navy)}
.hbtn-calc:hover{border-color:var(--navy);color:var(--navy)}
.hbtn-quote{display:inline-flex;align-items:center;gap:14px;height:52px;padding:0 7px 0 26px;border-radius:999px;background:var(--yellow);color:var(--navy);font:600 .95rem var(--f);text-decoration:none;box-shadow:0 10px 24px -14px rgba(192,138,10,.9);transition:background .2s,transform .2s}
.hbtn-quote:hover{background:var(--yellow-2);transform:translateY(-1px)}
.hbtn-quote .ic{width:38px;height:38px;border-radius:50%;background:var(--navy);color:var(--yellow);display:grid;place-items:center;transition:transform .3s}
.hbtn-quote:hover .ic{transform:translateX(2px)}
.hbtn-quote .ic svg{width:17px;height:17px}
.hbtn-quote .t-s{display:none}
.menu-btn{display:none;width:46px;height:46px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer;place-items:center}
.menu-btn svg{width:24px;height:24px}
@media (max-width:1560px){.hbtn-calc{display:none}}
@media (max-width:1100px){
  .nav{display:none}
  .hdr-ctas{margin-left:auto}
  .menu-btn{display:grid}
}
@media (max-width:560px){
  .hdr .wrap{height:72px;gap:12px}
  .hdr .logo img{height:38px}
  .hbtn-quote{height:46px;padding:0 20px;font-size:.92rem}
  .hbtn-quote .ic{display:none}
}
.mnav{position:fixed;inset:0;top:calc(env(safe-area-inset-top,0px));z-index:120;background:#fff;overflow:auto;padding:0 max(20px,env(safe-area-inset-right,0px)) 40px max(20px,env(safe-area-inset-left,0px));transform:translateX(100%);transition:transform .45s cubic-bezier(.7,0,.2,1);visibility:hidden}
.mnav.open{transform:none;visibility:visible}
.mnav .top{display:flex;align-items:center;justify-content:space-between;height:78px;border-bottom:1px solid var(--line)}
.mnav .top img{height:36px;width:auto}
.mnav details{border-bottom:1px solid var(--line)}
.mnav summary,.mnav>a{display:flex;justify-content:space-between;align-items:center;padding:16px 0;font:500 1rem var(--f);color:var(--navy);text-decoration:none;cursor:pointer;list-style:none}
.mnav>a{border-bottom:1px solid var(--line)}
.mnav summary::-webkit-details-marker{display:none}
.mnav summary svg{width:14px;height:14px;transition:transform .25s}
.mnav details[open]>summary svg{transform:rotate(180deg)}
.mnav details a{display:block;padding:9px 0 9px 14px;color:var(--muted);text-decoration:none;font-size:.94rem;border-left:2px solid var(--line)}
.mnav details div{padding-bottom:14px;display:grid}
.mnav .row-btns{margin-top:24px}

/* Home hero: warm sky, gold-and-navy headline, floating globe that tilts with the pointer */
.hero{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(100deg,#FFFDF7 0%,#FBF7EC 38%,#EEF3F8 100%);min-height:min(80vh,660px)}
.hero-clouds{position:absolute;left:-5%;right:-5%;bottom:-40px;height:clamp(140px,20vw,240px);z-index:0;pointer-events:none;background:radial-gradient(60% 70% at 15% 80%,#fff 0%,rgba(255,255,255,0) 70%),radial-gradient(45% 60% at 45% 95%,#fff 0%,rgba(255,255,255,0) 70%),radial-gradient(50% 70% at 80% 85%,#fff 0%,rgba(255,255,255,0) 70%);filter:blur(6px);animation:drift 30s ease-in-out infinite alternate}
@keyframes drift{to{transform:translateX(3%)}}
.hero-grid{position:relative;z-index:2;padding-block:clamp(52px,7vw,96px) clamp(70px,9vw,120px)}
.hero-copy{max-width:600px}
.hero .eyebrow{color:#5B6B3A}
.hero h1{font-size:clamp(2.6rem,5.4vw,4.4rem);font-weight:600;line-height:1.06;letter-spacing:-.03em;color:var(--navy);margin-top:16px}
.hero h1 .gold{background:linear-gradient(90deg,#C48A00,#E9AE00 60%,#C48A00);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .sub{font-size:1.12rem;color:#3E4560;max-width:46ch;margin:18px 0 28px}
.hfeat{display:flex;flex-wrap:wrap;gap:0;margin-top:34px}
.hfeat div{display:flex;align-items:center;gap:12px;padding-right:22px;font-size:.92rem;font-weight:500;color:var(--navy);line-height:1.3}
.hfeat div+div{border-left:1px solid rgba(1,7,34,.15);padding-left:22px}
.hfeat svg{width:34px;height:34px;color:#2F7A3A;flex:none}
@media (max-width:520px){.hfeat{display:grid;gap:14px}.hfeat div+div{border-left:0;padding-left:0}}
.globe-wrap{position:absolute;right:max(-30px,calc((100vw - 1240px)/2 - 60px));top:50%;transform:translateY(-50%);width:min(56vw,760px);aspect-ratio:1;z-index:1}
.globe3d{position:absolute;inset:0;cursor:grab;touch-action:pan-y;z-index:1}
.globe3d.grab{cursor:grabbing}
.globe3d canvas{width:100%!important;height:100%!important;display:block;opacity:0;transition:opacity .6s;-webkit-mask-image:radial-gradient(closest-side,#000 80%,transparent 100%);mask-image:radial-gradient(closest-side,#000 80%,transparent 100%)}
.globe3d.live canvas{opacity:1}
.g-ring{position:absolute;border-radius:50%;border:1.5px solid rgba(47,122,58,.35);inset:-3%;border-left-color:transparent;border-bottom-color:transparent;animation:spin 28s linear infinite}
.g-ring.g2{inset:-10%;border-color:rgba(253,191,0,.5);border-right-color:transparent;border-top-color:transparent;animation-duration:40s;animation-direction:reverse}
@keyframes spin{to{transform:rotate(360deg)}}
.g-sun{position:absolute;width:56%;aspect-ratio:1;left:30%;top:-10%;border-radius:50%;background:radial-gradient(circle,rgba(255,240,180,1) 0%,rgba(253,191,0,.45) 34%,rgba(253,191,0,0) 70%);z-index:0;pointer-events:none;animation:sunrise 2.4s cubic-bezier(.2,.7,.2,1) both,pulse 6s ease-in-out 2.4s infinite}
@keyframes sunrise{from{transform:translateY(55%) scale(.7);opacity:0}to{transform:none;opacity:1}}
@keyframes pulse{50%{transform:scale(1.12);opacity:.8}}
@media (max-width:960px){
 .hero{min-height:0}
 .hero-grid{padding-bottom:0}
 .globe-wrap{position:relative;right:auto;top:auto;transform:none;width:min(86vw,440px);margin:28px auto 0}
}
/* four service cards under the hero */
.svc4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:relative;z-index:3;background:#fff;border-top:1px solid var(--line)}
@media (max-width:1000px){.svc4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.svc4{grid-template-columns:1fr}}
.s4{display:grid;grid-template-rows:1fr auto;text-decoration:none;color:inherit;border-right:1px solid var(--line);background:#FFFCF4;overflow:hidden;min-width:0}
.s4:last-child{border-right:0}
.s4 .tx{display:grid;grid-template-columns:48px 1fr 40px;gap:14px;align-items:start;padding:24px 22px}
.s4 .si{width:48px;height:48px;color:#2F7A3A;display:grid;place-items:center}
.s4 .si svg{width:42px;height:42px}
.s4 h3{font-size:1.08rem;margin-bottom:6px}
.s4 p{font-size:.86rem;color:var(--muted)}
.s4 .go{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--navy);display:grid;place-items:center;align-self:center;transition:background .3s,color .3s,transform .3s}
.s4 .go svg{width:16px;height:16px}
.s4:hover .go{background:var(--yellow);border-color:var(--yellow);transform:translateX(4px)}
.s4 .ph{overflow:hidden;aspect-ratio:2.8/1}
.s4 .ph img{width:100%;height:100%;object-fit:cover;transition:transform .9s}
.s4:hover .ph img{transform:scale(1.07)}

/* Inner page banner */
.banner{background:linear-gradient(135deg,#F7FAFF 0%,#EEF3FB 55%,#FFF8E1 100%);position:relative;overflow:hidden}
.banner .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,56px);align-items:center;padding-block:clamp(36px,5vw,64px)}
@media (max-width:900px){.banner .wrap{grid-template-columns:1fr}}
.crumbs{display:flex;gap:8px;font-size:.8rem;color:var(--muted);margin-bottom:14px;flex-wrap:wrap}
.crumbs a{text-decoration:none;color:var(--navy-3);font-weight:500}
.crumbs span::before{content:"/";margin-right:8px;color:var(--faint)}
.banner h1{font-size:clamp(2rem,3.8vw,3rem);font-weight:400}
.banner p.lead{color:var(--muted);font-size:1.05rem;margin-top:14px;max-width:56ch}
.banner .bimg{border-radius:28px;overflow:hidden;aspect-ratio:16/10;box-shadow:var(--shadow);background:var(--soft-2)}
.banner .bimg img{width:100%;height:100%;object-fit:cover}

/* Cards */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px;display:grid;gap:12px;align-content:start;min-width:0;transition:border-color .3s,box-shadow .3s,transform .3s}
.card:hover{border-color:#cfd6e6;box-shadow:var(--shadow)}
.card .ci{width:50px;height:50px;border-radius:14px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center}
.card .ci svg{width:25px;height:25px}
.card p{color:var(--muted);font-size:.93rem}
.card .tag{font-size:.7rem;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:var(--faint)}
.icard{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:grid;grid-template-rows:auto 1fr;min-width:0;transition:box-shadow .3s,transform .3s}
.icard:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.icard .im{aspect-ratio:16/10;overflow:hidden;background:var(--soft-2)}
.icard .im img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.icard:hover .im img{transform:scale(1.05)}
.icard .bd{padding:22px;display:grid;gap:10px;align-content:start}
.icard .bd p{color:var(--muted);font-size:.92rem}

/* Divisions strip (home) */
.intro-text{font-size:clamp(1.2rem,2vw,1.6rem);font-weight:300;line-height:1.5;color:var(--navy);text-align:center;max-width:960px;margin:0 auto}
.intro-text b{font-weight:500}
.divs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:clamp(36px,5vw,56px)}
@media (max-width:1000px){.divs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.divs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.div{display:grid;justify-items:center;text-align:center;gap:12px;padding:22px 12px;border-radius:18px;text-decoration:none;border:1px solid transparent;transition:background .3s,border-color .3s}
.div:hover{background:var(--soft);border-color:var(--line)}
.div .di{width:64px;height:64px;border-radius:50%;background:var(--soft-2);display:grid;place-items:center;color:var(--navy);transition:background .3s,color .3s}
.div:hover .di{background:var(--yellow);color:var(--navy)}
.div .di svg{width:30px;height:30px}
.div b{font-size:.88rem;font-weight:600;color:var(--navy);line-height:1.35}

/* Tabs */
.tabbar{display:flex;justify-content:center;gap:0;border-bottom:1px solid var(--line);margin-bottom:34px;flex-wrap:wrap}
.tabbar button{font:500 1rem var(--f);color:var(--muted);background:none;border:0;padding:14px 26px;cursor:pointer;position:relative}
.tabbar button[aria-selected="true"]{color:var(--navy)}
.tabbar button[aria-selected="true"]::after{content:"";position:absolute;left:18%;right:18%;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--yellow)}
.tabpane{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
@media (max-width:1000px){.tabpane{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.tabpane{grid-template-columns:1fr}}

/* Timeline */
.tl{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}
.tl::before{content:"";position:absolute;left:0;right:0;top:21px;height:3px;background:var(--line);border-radius:3px}
.tl .fill{position:absolute;left:0;top:21px;height:3px;background:var(--yellow);border-radius:3px;width:100%;transform-origin:left}
.tl .ev{position:relative;display:grid;gap:8px;align-content:start;padding-top:56px}
.tl .ev::before{content:attr(data-n);position:absolute;top:0;left:0;width:44px;height:44px;border-radius:50%;background:#fff;border:3px solid var(--yellow);display:grid;place-items:center;font:600 .9rem var(--f);color:var(--navy)}
.tl .ev small{font-size:.72rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--navy-3)}
.tl .ev h3{font-size:1rem}
.tl .ev p{font-size:.86rem;color:var(--muted)}
@media (max-width:1000px){.tl{grid-template-columns:1fr;gap:0}.tl::before,.tl .fill{left:21px;right:auto;top:0;bottom:0;width:3px;height:auto}.tl .fill{height:100%;transform-origin:top}.tl .ev{padding:0 0 26px 66px}}
.phases{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.phases span{font-size:.76rem;font-weight:600;letter-spacing:.8px;text-transform:uppercase;background:var(--yellow-soft);color:var(--yellow-ink);padding:7px 12px;border-radius:999px}

/* Stats band */
.nband{background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:clamp(28px,4vw,48px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;position:relative;overflow:hidden}
.nband::after{content:"";position:absolute;right:-120px;top:-160px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(253,191,0,.25),transparent 65%)}
.nband div{position:relative;z-index:1;display:grid;gap:6px;min-width:0}
.nband b{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:600;color:var(--yellow);line-height:1.1;font-variant-numeric:tabular-nums}
.nband span{font-size:.86rem;color:#B9C1DA}
@media (max-width:860px){.nband{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Projects */
.pcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:900px){.pcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.pcards{grid-template-columns:1fr}}
.pc{border:1px solid var(--line);border-radius:var(--r);padding:24px;display:grid;gap:10px;align-content:start;background:#fff;position:relative;overflow:hidden;min-width:0}
.pc .mw{font-size:2rem;font-weight:600;color:var(--navy);line-height:1;font-variant-numeric:tabular-nums}
.pc .mw small{font-size:.9rem;color:var(--muted);font-weight:500;margin-left:4px}
.pc h3{font-size:1rem}
.pc p{font-size:.86rem;color:var(--muted)}
.pc::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--yellow);transform:scaleY(0);transform-origin:bottom;transition:transform .4s}
.pc:hover::after{transform:scaleY(1)}
.tbl{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.tbl table{border-collapse:collapse;width:100%;min-width:560px;font-size:.93rem}
.tbl th,.tbl td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{font-size:.72rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);background:var(--soft)}
.tbl tr:last-child td{border-bottom:0}
.tbl td.num{text-align:right;font-weight:600;color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap}
.tbl tbody tr:hover{background:#FFFBEB}
.tbl tfoot td{font-weight:600;color:var(--navy);background:var(--soft)}

/* Clients */
.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee .track{display:flex;gap:14px;width:max-content;animation:mq 42s linear infinite}
.marquee:hover .track{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
.client{display:grid;place-items:center;min-width:200px;height:84px;padding:0 22px;border:1px solid var(--line);border-radius:16px;background:#fff;font-weight:600;font-size:.92rem;color:var(--navy);text-align:center;line-height:1.3}
.client small{display:block;font-weight:400;font-size:.72rem;color:var(--muted)}

/* Awards */
.award{border:1px solid var(--line);border-radius:var(--r);padding:24px;display:grid;gap:10px;background:#fff;align-content:start}
.award .yr{font-size:.74rem;font-weight:600;letter-spacing:1.3px;color:var(--yellow-ink);background:var(--yellow-soft);border-radius:999px;padding:5px 11px;justify-self:start}
.award h3{font-size:1.02rem}
.award p{font-size:.88rem;color:var(--muted)}

/* Promo band (calculator) */
.promo{background:var(--navy);border-radius:var(--r-lg);color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;padding:clamp(28px,4.5vw,56px);position:relative;overflow:hidden}
.promo h2{color:#fff}
.promo p{color:#B9C1DA;margin-top:12px;max-width:52ch}
.promo .vis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;position:relative;z-index:1}
.promo .vis div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px;display:grid;gap:4px}
.promo .vis small{font-size:.66rem;letter-spacing:1.2px;text-transform:uppercase;color:#9AA4C4}
.promo .vis b{font-size:1.15rem;color:var(--yellow);font-weight:600}
.promo::after{content:"";position:absolute;right:-100px;bottom:-140px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(253,191,0,.22),transparent 65%)}
@media (max-width:860px){.promo{grid-template-columns:1fr}}

/* Team */
.team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
@media (max-width:900px){.team{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.team{grid-template-columns:1fr}}
.person{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff;display:grid;grid-template-rows:auto 1fr}
.person .ph{aspect-ratio:4/3;overflow:hidden;background:var(--soft-2)}
.person .ph img{width:100%;height:100%;object-fit:cover;object-position:center 25%;transition:transform .8s}
.person:hover .ph img{transform:scale(1.04)}
.person .bd{padding:22px;display:grid;gap:6px;align-content:start}
.person .role{font-size:.74rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--yellow-ink)}
.person p{font-size:.9rem;color:var(--muted)}
.mini-team{display:flex;gap:-10px}
.faces{display:flex}
.faces img{width:54px;height:54px;border-radius:50%;object-fit:cover;border:3px solid #fff;margin-left:-12px;box-shadow:0 6px 14px -8px rgba(1,7,34,.4)}
.faces img:first-child{margin-left:0}

/* Values / VM */
.vm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:760px){.vm{grid-template-columns:1fr}}
.vm .box{border-radius:var(--r-lg);padding:30px;display:grid;gap:12px}
.vm .box.n{background:var(--navy);color:#fff}
.vm .box.n h3{color:#fff}
.vm .box.n p{color:#C4CBE0}
.vm .box.y{background:var(--yellow)}
.vm .box.y p{color:#2C2300}
.vm small{font-size:.72rem;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;opacity:.8}
.pillar3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff}
.pillar3 div{padding:26px;display:grid;gap:8px;align-content:start;border-right:1px solid var(--line)}
.pillar3 div:last-child{border-right:0}
.pillar3 b{font-size:2.2rem;font-weight:600;color:var(--green);line-height:1}
.pillar3 p{font-size:.9rem;color:var(--muted)}
@media (max-width:760px){.pillar3{grid-template-columns:1fr}.pillar3 div{border-right:0;border-bottom:1px solid var(--line)}}

/* Why list (hex-style icons) */
.why5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
@media (max-width:1000px){.why5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:620px){.why5{grid-template-columns:repeat(2,minmax(0,1fr))}}
.why5 div{display:grid;justify-items:center;text-align:center;gap:12px;padding:22px 12px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.why5 .hx{width:66px;height:74px;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:var(--yellow-soft);display:grid;place-items:center;color:var(--yellow-ink)}
.why5 .hx svg{width:28px;height:28px}
.why5 b{font-size:.9rem;font-weight:600;color:var(--navy);line-height:1.35}

/* Lists */
.ticks{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.ticks li{display:block;position:relative;padding-left:30px;font-size:.94rem;color:var(--muted)}
.ticks li::before{content:"";position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:50%;background:var(--yellow) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23010722' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/11px no-repeat}
.ticks li b{color:var(--ink)}
.numlist{list-style:none;padding:0;margin:0;counter-reset:n;border-top:1px solid var(--line)}
.numlist li{display:grid;grid-template-columns:40px 1fr;gap:10px;padding:13px 0;border-bottom:1px solid var(--line);font-size:.94rem;color:var(--muted)}
.numlist li::before{counter-increment:n;content:counter(n,decimal-leading-zero);font:600 .8rem var(--mono);color:var(--yellow-ink);padding-top:3px}

/* Service sections */
.svc{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4.5vw,60px);align-items:center;padding-block:clamp(44px,6vw,72px);border-bottom:1px solid var(--line);scroll-margin-top:110px}
.svc:last-child{border-bottom:0}
.svc.rev .media{order:2}
.svc .media{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3;background:var(--soft-2)}
.svc .media img{width:100%;height:100%;object-fit:cover}
.svc .media.art{display:grid;place-items:center;background:linear-gradient(135deg,var(--soft) 0%,var(--yellow-soft) 100%)}
.svc .media.art svg{width:42%;height:auto;color:var(--navy)}
.svc .txt{display:grid;gap:14px}
.svc .txt p{color:var(--muted)}
@media (max-width:860px){.svc{grid-template-columns:1fr}.svc.rev .media{order:0}}
.anchor{scroll-margin-top:110px}

/* Flow diagram */
.sys-tabs{display:inline-flex;gap:6px;padding:6px;border-radius:999px;background:var(--soft);border:1px solid var(--line);flex-wrap:wrap}
.sys-tabs button{font:500 .88rem var(--f);color:var(--muted);background:none;border:0;border-radius:999px;padding:10px 18px;cursor:pointer}
.sys-tabs button[aria-selected="true"]{background:var(--navy);color:#fff}
.flow-wrap{background:var(--soft);border:1px solid var(--line);border-radius:22px;padding:12px;overflow-x:auto}
.flow{width:100%;min-width:520px;height:auto;display:block}
.flow .node rect{fill:#fff;stroke:var(--line);stroke-width:1.5}
.flow .node text{fill:var(--navy);font:600 12px var(--f)}
.flow .node .sub{fill:var(--muted);font:500 10px var(--mono)}
.flow .node{transition:opacity .4s}
.flow .node.dim{opacity:.22}
.flow path.pipe{fill:none;stroke:#D7DDEA;stroke-width:3}
.flow path.f{fill:none;stroke:var(--yellow);stroke-width:3;stroke-dasharray:6 10;animation:flow 1.1s linear infinite;transition:opacity .4s}
.flow path.f.green{stroke:var(--green)}
.flow path.f.rev{animation-direction:reverse}
.flow path.f.off{opacity:0}
@keyframes flow{to{stroke-dashoffset:-32}}
.legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:10px;font:400 .76rem var(--mono);color:var(--muted);padding:0 6px 4px}
.legend span{display:inline-flex;align-items:center;gap:7px}
.legend i{width:18px;height:3px;border-radius:2px;background:var(--yellow)}
.legend i.g{background:var(--green)}

/* MMS components */
.mms{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
@media (max-width:1000px){.mms{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.mms{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mms div{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;display:grid;grid-template-rows:auto 1fr}
.mms .im{background:#fff;aspect-ratio:3/4;display:grid;place-items:center;padding:10px}
.mms .im img{max-height:100%;width:auto;object-fit:contain}
.mms .bd{padding:14px;display:grid;gap:4px;border-top:1px solid var(--line);align-content:start}
.mms .n{font:600 .7rem var(--mono);color:var(--yellow-ink)}
.mms b{font-size:.88rem;color:var(--navy);line-height:1.3}
.mms small{font-size:.74rem;color:var(--faint)}
.mms p{font-size:.8rem;color:var(--muted)}
.units{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:760px){.units{grid-template-columns:1fr}}
.unit{border:1px solid var(--line);border-radius:var(--r);padding:22px;background:#fff;display:grid;gap:6px}
.unit b{font-size:1.9rem;font-weight:600;color:var(--navy);line-height:1;font-variant-numeric:tabular-nums}
.unit b small{font-size:.85rem;color:var(--muted);font-weight:500}
.unit span{font-size:.78rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--yellow-ink)}

/* Gallery */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips button{font:500 .84rem var(--f);padding:9px 16px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}
.chips button[aria-pressed="true"]{background:var(--navy);color:#fff;border-color:var(--navy)}
.gal{columns:3 280px;column-gap:16px;margin-top:26px}
.gal figure{margin:0 0 16px;break-inside:avoid;border-radius:16px;overflow:hidden;position:relative;cursor:zoom-in;background:var(--soft-2)}
.gal figure img{width:100%;height:auto;transition:transform .7s}
.gal figure:hover img{transform:scale(1.04)}
.gal figcaption{position:absolute;left:10px;right:10px;bottom:10px;background:rgba(255,255,255,.94);border-radius:10px;padding:8px 12px;font-size:.78rem;font-weight:500;color:var(--navy);opacity:0;transform:translateY(6px);transition:opacity .3s,transform .3s}
.gal figure:hover figcaption,.gal figure:focus-visible figcaption{opacity:1;transform:none}
@media (hover:none){.gal figcaption{opacity:1;transform:none}}
.lb{position:fixed;inset:0;z-index:200;background:rgba(1,7,34,.92);display:grid;place-items:center;padding:calc(20px + env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) calc(20px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px))}
.lb figure{margin:0;display:grid;gap:12px;max-width:min(1100px,100%);max-height:100%}
.lb img{max-height:78vh;width:auto;max-width:100%;border-radius:12px;margin:0 auto}
.lb figcaption{color:#fff;text-align:center;font-size:.92rem}
.lb button{position:absolute;width:46px;height:46px;border-radius:50%;border:0;background:#fff;color:var(--navy);cursor:pointer;display:grid;place-items:center}
.lb button svg{width:18px;height:18px}
.lb .x{top:calc(18px + env(safe-area-inset-top,0px));right:calc(18px + env(safe-area-inset-right,0px))}
.lb .pv{left:calc(18px + env(safe-area-inset-left,0px));top:50%}
.lb .nx{right:calc(18px + env(safe-area-inset-right,0px));top:50%}

/* Forms */
.form{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,3vw,34px);display:grid;gap:16px;box-shadow:var(--shadow)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:560px){.form .row{grid-template-columns:1fr}}
.form label{display:grid;gap:6px;font-size:.8rem;font-weight:600;color:var(--navy)}
.form input,.form select,.form textarea{font:400 .95rem var(--f);color:var(--ink);background:var(--soft);border:1.5px solid var(--line);border-radius:12px;padding:12px 14px;width:100%}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--navy);background:#fff}
.form textarea{min-height:110px;resize:vertical}
.form .err{color:var(--red);font-size:.86rem}
.form .done{background:var(--green-soft);border-radius:14px;padding:16px;display:grid;gap:10px}
.form .done pre{white-space:pre-wrap;font:400 .82rem/1.5 var(--mono);margin:0;background:#fff;padding:12px;border-radius:8px;border:1px solid var(--line);max-height:220px;overflow:auto}
.copy{font:600 .76rem var(--f);border:1.5px solid var(--line);background:#fff;color:var(--navy);border-radius:999px;padding:7px 13px;cursor:pointer;justify-self:start}
.copy.ok{background:var(--green);border-color:var(--green);color:#fff}

/* Address cards */
.addr{display:grid;gap:14px}
.ad{display:grid;grid-template-columns:48px 1fr;gap:16px;padding:20px;border:1px solid var(--line);border-radius:var(--r);background:#fff;align-items:start}
.ad .i{width:48px;height:48px;border-radius:14px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center}
.ad .i svg{width:22px;height:22px}
.ad small{display:block;font-size:.7rem;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:var(--faint);margin-bottom:4px}
.ad p,.ad a{font-size:.95rem;color:var(--ink);text-decoration:none;user-select:all}
.ad .acts{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.ad .acts a{user-select:auto}

/* Calculator */
.calc{display:grid;grid-template-columns:1fr 1.1fr;gap:22px;align-items:stretch}
@media (max-width:960px){.calc{grid-template-columns:1fr}}
.calc-in{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(22px,3vw,34px);display:grid;gap:26px;align-content:start}
.field{display:grid;gap:10px}
.field label{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-weight:600;font-size:.92rem;color:var(--navy)}
.numin{display:inline-flex;align-items:baseline;gap:4px;font:600 1.05rem var(--mono);color:var(--navy);border-bottom:2px solid var(--yellow);padding:0 2px 2px}
.numin input{width:8ch;border:0;background:transparent;font:inherit;color:inherit;text-align:right;padding:0;-moz-appearance:textfield;appearance:textfield}
.numin input:focus{outline:none}
.numin:focus-within{background:var(--yellow-soft);border-radius:4px 4px 0 0}
.numin input::-webkit-outer-spin-button,.numin input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.field input[type=range]{width:100%;accent-color:var(--yellow);height:28px}
.field .scale{display:flex;justify-content:space-between;font:400 .72rem var(--mono);color:var(--faint)}
.field .hint{font-size:.84rem;color:var(--muted)}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg button{font:500 .84rem var(--f);padding:9px 16px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--navy);color:#fff;border-color:var(--navy)}
.calc-out{background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:clamp(22px,3vw,34px);display:grid;gap:22px;position:relative;overflow:hidden}
.calc-out::after{content:"";position:absolute;right:-140px;bottom:-180px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(253,191,0,.24),transparent 65%);pointer-events:none}
.calc-out .lab{font-size:.72rem;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:#9AA4C4}
.big-kw{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:8px}
.big-kw b{font-size:clamp(2.6rem,5vw,3.6rem);font-weight:600;line-height:1;color:var(--yellow);letter-spacing:-.02em}
.big-kw span{color:#B9C1DA}
.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:14px;overflow:hidden;position:relative;z-index:1}
.kpis div{background:var(--navy);padding:16px;display:grid;gap:4px;min-width:0}
.kpis small{font-size:.66rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:#9AA4C4}
.kpis b{font:500 clamp(1.05rem,1.8vw,1.3rem)/1.15 var(--mono);overflow-wrap:anywhere}
.bars{display:flex;align-items:flex-end;gap:5px;height:80px;position:relative;z-index:1}
.bars i{flex:1;background:linear-gradient(180deg,var(--yellow),rgba(253,191,0,.25));border-radius:4px 4px 1px 1px;min-height:3px}
.bars-lab{display:flex;justify-content:space-between;gap:8px;font:400 .68rem var(--mono);color:#9AA4C4;margin-top:6px;position:relative;z-index:1}
.roofnote{font-size:.92rem;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.08);position:relative;z-index:1}
.roofnote.warn{background:rgba(253,191,0,.18)}
.calc-out .fine{font-size:.78rem;color:#9AA4C4;position:relative;z-index:1}
.calc-out .btn{justify-self:start;position:relative;z-index:1}

/* Meter */
.meter{background:var(--navy);border-radius:24px;padding:22px 22px 18px;color:#fff;box-shadow:var(--shadow)}
.meter-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.7rem;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:#9AA4C4}
.live{display:inline-flex;align-items:center;gap:8px;color:var(--yellow)}
.live i{width:8px;height:8px;border-radius:50%;background:var(--yellow);animation:ping 1.8s infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(253,191,0,.7)}70%{box-shadow:0 0 0 9px rgba(253,191,0,0)}100%{box-shadow:0 0 0 0 rgba(253,191,0,0)}}
.meter svg.arc{width:100%;height:auto;display:block;margin-top:6px}
.readout{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px dashed rgba(255,255,255,.15);padding-top:14px;margin-top:4px}
.readout div{display:grid;gap:2px;min-width:0}
.readout small{font-size:.62rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:#9AA4C4}
.readout b{font:500 clamp(1rem,1.6vw,1.25rem)/1.1 var(--mono)}
.readout b em{font-style:normal;font-size:.62em;color:#9AA4C4;margin-left:3px}
.meter .note{font-size:.78rem;color:#9AA4C4;margin-top:12px}
.meter-ctl{display:flex;align-items:center;gap:10px;margin-top:12px}
.meter-ctl input{flex:1;accent-color:var(--yellow)}
.meter-ctl button{background:rgba(255,255,255,.1);border:0;color:#fff;border-radius:8px;width:34px;height:30px;cursor:pointer;display:grid;place-items:center}
.meter-ctl button svg{width:14px;height:14px}

/* FAQ */
.faq-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:22px}
.search{flex:1 1 280px;display:flex;align-items:center;gap:10px;background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:0 18px}
.search:focus-within{border-color:var(--navy)}
.search svg{width:18px;height:18px;color:var(--muted);flex:none}
.search input{flex:1;border:0;background:transparent;color:var(--ink);font:400 .95rem var(--f);padding:14px 0;outline:none;min-width:0}
.faq{display:grid;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:18px 4px;display:flex;gap:18px;align-items:center;justify-content:space-between;font-weight:500;font-size:1rem;color:var(--navy)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .pm{flex:none;width:32px;height:32px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;transition:transform .3s,background .3s,border-color .3s}
.faq details[open] .pm{transform:rotate(45deg);background:var(--yellow);border-color:var(--yellow)}
.faq summary .pm svg{width:13px;height:13px}
.faq .a{padding:0 4px 22px;color:var(--muted);max-width:76ch}
.faq .a a{color:var(--navy);text-decoration-color:var(--yellow);text-decoration-thickness:2px;text-underline-offset:3px}
.empty{padding:22px;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}

/* Myths */
.myths{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.myth{border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#fff;display:grid;grid-template-rows:auto 1fr}
.myth .m{padding:18px 20px;background:var(--soft);display:grid;gap:6px}
.myth small{font-size:.68rem;font-weight:600;letter-spacing:1.3px;text-transform:uppercase}
.myth .m small{color:var(--red)}
.myth .m p{font-weight:600;color:var(--navy);text-decoration:line-through;text-decoration-color:rgba(201,53,46,.6);text-decoration-thickness:2px}
.myth .f{padding:18px 20px;display:grid;gap:6px}
.myth .f small{color:var(--green)}
.myth .f p{font-size:.92rem;color:var(--muted)}

/* CTA */
.cta{background:linear-gradient(120deg,var(--yellow) 0%,#FFD84D 100%);border-radius:var(--r-lg);padding:clamp(28px,4.5vw,52px);display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between;position:relative;overflow:hidden}
.cta h2{max-width:24ch}
.cta p{color:#3B3000;margin-top:8px}

/* Footer */
footer.ft{background:var(--navy);color:#B9C1DA;padding-block:64px 28px;font-size:.9rem;margin-top:clamp(60px,8vw,100px)}
.ft .cols{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr 1.5fr;gap:30px}
@media (max-width:1060px){.ft .cols{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:620px){.ft .cols{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.ft .cols>div:first-child,.ft .cols>.of{grid-column:1/-1}}
.ft img.fl{width:170px;height:auto;margin-bottom:16px}
.ft h4{font-size:.74rem;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:#fff;margin-bottom:14px}
.ft ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.ft a{text-decoration:none;transition:color .2s}
.ft a:hover{color:var(--yellow)}
.ft .of{display:grid;gap:14px}
.ft .of b{display:block;color:#fff;font-weight:500;font-size:.82rem;margin-bottom:2px}
.ft .base{border-top:1px solid rgba(255,255,255,.12);margin-top:42px;padding-top:20px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:.8rem}
.wa{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:70;background:var(--green);color:#fff;border-radius:999px;padding:12px 18px 12px 14px;display:flex;gap:8px;align-items:center;font:500 .84rem var(--f);text-decoration:none;box-shadow:0 14px 30px -12px rgba(1,7,34,.5)}
.wa svg{width:22px;height:22px}
@media (max-width:560px){.wa span{display:none}.wa{padding:14px}}
.totop{position:fixed;left:calc(18px + env(safe-area-inset-left,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:70;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--navy);display:grid;place-items:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .3s;box-shadow:var(--shadow)}
.totop.show{opacity:1;pointer-events:auto}
.totop svg{width:18px;height:18px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition:none!important}}

/* ---- Mix-of-mockups home styles ---- */
.gold{color:var(--gold)}
.hero h1{font-family:var(--serif);font-weight:700;letter-spacing:-.015em;line-height:1.05}
.hero h1 .gold{background:none;-webkit-background-clip:initial;background-clip:initial;color:var(--gold)}
.hero .eyebrow{color:var(--muted);font-weight:500;letter-spacing:2px}
.hero .eyebrow::before{background:var(--gold)}
.eyebrow .sep{display:inline-block;width:1px;height:12px;background:var(--faint);margin:0 6px}
.btn-gold{background:var(--gold);color:#fff;padding:15px 26px;gap:12px}
.btn-gold svg{width:16px;height:16px;transition:transform .3s}
.btn-gold:hover{background:var(--gold-2)}
.btn-gold:hover svg{transform:translateX(4px)}
.btn-outline{border-color:var(--navy);color:var(--navy);background:transparent;padding:14px 26px}
.btn-outline:hover{background:var(--navy);color:#fff}
.btn-outline.light{border-color:rgba(253,191,0,.8);color:#fff}
.btn-outline.light:hover{background:var(--yellow);color:var(--navy)}
.btn-outline svg{width:16px;height:16px}
.link.gold{color:var(--gold);border-bottom-color:var(--gold)}
.points{background:#fff;border-bottom:1px solid var(--line)}
.points-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-block:30px}
.pt{display:grid;grid-template-columns:56px 1fr;gap:16px;align-items:start;padding:6px 26px}
.pt+.pt{border-left:1px solid var(--line)}
.pt svg{width:48px;height:48px;color:var(--gold)}
.pt h3{font-size:1.2rem;margin-bottom:4px}
.pt p{font-size:.9rem;color:var(--muted)}
@media (max-width:860px){.points-row{grid-template-columns:1fr;gap:18px}.pt+.pt{border-left:0;border-top:1px solid var(--line);padding-top:18px}}
.soft-warm{background:#FBF8F0}
.solc{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
@media (max-width:1000px){.solc{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.solc{grid-template-columns:1fr}}
.sc{position:relative;display:grid;grid-template-rows:auto 1fr;background:#fff;border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 14px 34px -24px rgba(1,7,34,.35);transition:transform .35s,box-shadow .35s}
.sc:hover{transform:translateY(-6px);box-shadow:0 26px 50px -28px rgba(1,7,34,.45)}
.sc .im{aspect-ratio:16/9;overflow:hidden}
.sc .im img{width:100%;height:100%;object-fit:cover;transition:transform .9s}
.sc:hover .im img{transform:scale(1.07)}
.sc .badge{position:absolute;left:18px;top:-30px;width:56px;height:56px;border-radius:50%;background:#FFF8E6;border:4px solid #fff;display:grid;place-items:center;color:var(--gold);box-shadow:0 8px 18px -10px rgba(1,7,34,.4)}
.sc .badge svg{width:26px;height:26px}
.sc .bd{position:relative;padding:34px 64px 22px 20px;display:grid;gap:6px;align-content:start}
.sc h3{font-size:1.15rem}
.sc p{font-size:.86rem;color:var(--muted)}
.sc .go{position:absolute;right:18px;bottom:22px;width:36px;height:36px;border-radius:50%;border:1.5px solid var(--gold);color:var(--gold);display:grid;place-items:center;transition:background .3s,color .3s}
.sc .go svg{width:15px;height:15px}
.sc:hover .go{background:var(--gold);color:#fff}
.sband{position:relative;background:var(--navy);color:#fff;overflow:hidden;isolation:isolate}
.sband-img{position:absolute;inset:0 0 0 38%;z-index:-1}
.sband-img img{width:100%;height:100%;object-fit:cover}
.sband-img::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,rgba(1,7,34,.8) 30%,rgba(1,7,34,.15) 75%)}
.sband-in{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;padding-block:clamp(48px,6vw,80px)}
.sb-copy{display:grid;gap:16px;justify-items:start}
.sb-copy .eyebrow{color:#E9C05A}
.sb-copy h2{color:#fff}
.sb-copy h2 .gold{color:#F2B92F}
.sb-copy p{color:#C4CBE0;max-width:46ch}
.sb-feats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-self:center}
.sb-feats div{display:grid;justify-items:center;text-align:center;gap:10px;padding:8px 14px;font-size:.88rem;color:#fff}
.sb-feats div+div{border-left:1px solid rgba(255,255,255,.25)}
.sb-feats svg{width:40px;height:40px;color:#F2B92F}
@media (max-width:860px){.sband-in{grid-template-columns:1fr}.sband-img{inset:50% 0 0 0}.sb-feats{background:rgba(1,7,34,.55);border-radius:14px;padding:10px 0}}

/* Realistic hero scene with a staged entrance: clouds -> land rises -> top surface and panels -> sun glint -> float */
.scene-wrap{position:absolute;right:0;top:0;bottom:0;width:min(62vw,980px);z-index:1;pointer-events:none}
.scene-land{position:absolute;right:-2%;top:50%;width:100%;transform:translateY(-50%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 24%),linear-gradient(180deg,transparent 0%,#000 18%,#000 84%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0%,#000 24%),linear-gradient(180deg,transparent 0%,#000 18%,#000 84%,transparent 100%);mask-composite:intersect}
.scene-land{aspect-ratio:1188/570}
.scene-land .ly{position:absolute;inset:0;width:100%;height:100%;display:block}
/* 1 sky, distant hills and clouds */
.ly.sky{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);animation:skyIn 1.2s ease-out both}
@keyframes skyIn{from{opacity:0;filter:blur(6px) brightness(1.15)}to{opacity:1;filter:none}}
/* 2 rock cliffs rise */
.ly.rock{clip-path:polygon(3% 58%,12% 66%,25% 69%,35% 71%,50% 69%,65% 69%,80% 66%,92% 58%,97% 50%,95% 64%,89% 80%,81% 93%,65% 97%,50% 98%,35% 95%,24% 89%,12% 81%,4% 72%);animation:rockIn 1.5s cubic-bezier(.2,.8,.2,1) .5s both}
@keyframes rockIn{from{transform:translateY(28%);opacity:0}to{transform:none;opacity:1}}
/* 3 the land surface forms from the centre outward */
.ly.top{clip-path:polygon(3% 60%,8% 52%,20% 45%,30% 39%,35% 25%,45% 21%,55% 19%,68% 17%,76% 24%,86% 31%,93% 39%,97% 50%,92% 60%,80% 67%,65% 70%,50% 70%,35% 72%,25% 70%,12% 68%);animation:topIn 1.4s cubic-bezier(.2,.8,.2,1) 1.4s both}
@keyframes topIn{from{opacity:0;transform:translateY(3%) scale(.97);filter:saturate(.2) brightness(1.3)}60%{opacity:1}to{opacity:1;transform:none;filter:none}}
/* hide the island in the sky layer until it forms */
.ly.sky{-webkit-mask-image:radial-gradient(60% 70% at 55% 58%,transparent 55%,#000 75%);mask-image:radial-gradient(60% 70% at 55% 58%,transparent 55%,#000 75%)}
/* 4 solar fields switch on one after another */
.ly.sol{opacity:0;filter:brightness(1.55) saturate(1.5) contrast(1.05)}
.ly.s1{clip-path:polygon(9% 57%,22% 52%,38% 51%,47% 53%,52% 60%,48% 66%,36% 68%,22% 65%,12% 63%);animation:solOn 1.4s ease-out 2.7s both}
.ly.s2{clip-path:polygon(49% 52%,57% 45%,68% 42%,88% 44%,88% 52%,82% 60%,70% 60%,58% 58%);animation:solOn 1.4s ease-out 3.1s both}
@keyframes solOn{0%{opacity:0}35%{opacity:.85}100%{opacity:0}}
/* 5 water starts falling */
.fall{position:absolute;opacity:0;background:repeating-linear-gradient(180deg,rgba(255,255,255,0) 0 10px,rgba(255,255,255,.75) 10px 16px,rgba(255,255,255,0) 16px 30px);background-size:100% 60px;mix-blend-mode:screen;-webkit-mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent);animation:fallOn .8s ease-out 3.4s forwards,water .7s linear infinite}
.fall.f1{left:23.5%;top:71%;width:5.5%;height:20%}
.fall.f2{left:63%;top:78%;width:5%;height:20%}
.fall.f3{left:81%;top:76%;width:2.6%;height:22%}
.fall.f4{left:7.8%;top:70%;width:1.8%;height:15%}
@keyframes fallOn{to{opacity:.55}}
@keyframes water{to{background-position:0 60px}}
.scene-land{animation:floaty 7s ease-in-out 4.2s infinite}
@keyframes floaty{0%,100%{transform:translateY(-50%)}50%{transform:translateY(calc(-50% - 8px))}}
.glint{position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,244,200,.5) 48%,transparent 60%);mix-blend-mode:screen;transform:translateX(-100%);animation:glint 1.6s ease-in-out 3.6s 1 both;pointer-events:none}
@keyframes glint{to{transform:translateX(100%)}}
.cl{position:absolute;height:auto;opacity:0;filter:drop-shadow(0 10px 20px rgba(1,7,34,.08))}
.cl.c1{width:46%;left:8%;bottom:6%;animation:cloudIn 1.6s ease-out 3.8s forwards,drift 26s ease-in-out 1.7s infinite alternate}
.cl.c2{width:26%;right:2%;bottom:14%;animation:cloudIn 1.6s ease-out 4.1s forwards,drift 32s ease-in-out 1.9s infinite alternate-reverse}
.cl.c3{width:30%;left:44%;bottom:2%;animation:cloudIn 1.6s ease-out 4.4s forwards,drift 22s ease-in-out 2.1s infinite alternate}
@keyframes cloudIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes drift{to{transform:translateX(6%)}}
@media (max-width:960px){.scene-wrap{position:relative;width:100%;height:auto;aspect-ratio:2/1.15;margin-top:10px}.scene-land{right:0}}
@media (prefers-reduced-motion: reduce){.scene-land,.scene-land .ly,.cl,.fall{animation:none!important}.ly.sol,.fall{opacity:0}.cl{opacity:1}.ly.sky{-webkit-mask-image:none;mask-image:none}}

/* ---- Hero from the Samvik mock-up: full-bleed scene with animated overlays ---- */
.hero2{position:relative;overflow:hidden;isolation:isolate;aspect-ratio:1677/938;max-height:960px;min-height:620px;background:#EEF4FA}
.h2-stage{position:absolute;inset:0;z-index:-1}
.h2-bg,.h2-bg img{position:absolute;inset:0;width:100%;height:100%;display:block}
.h2-bg img{object-fit:cover;object-position:70% 50%;animation:bgIn 2s cubic-bezier(.2,.7,.2,1) both,bgDrift 24s ease-in-out 2s infinite alternate}
@keyframes bgIn{from{opacity:0;transform:scale(1.08);filter:blur(10px) brightness(1.15)}to{opacity:1;transform:none;filter:none}}
@keyframes bgDrift{to{transform:scale(1.035) translate(-.6%,-.6%)}}
.h2-stage>span,.h2-stage>.h2-birds{position:absolute;left:var(--x);top:var(--y)}
.h2-in{height:100%;display:grid;grid-template-rows:1fr auto;padding-block:clamp(36px,5vw,64px) clamp(18px,2.5vw,30px)}
.h2-copy{align-self:center;max-width:620px}
.hero2 .eyebrow{color:#203058;font-weight:500;letter-spacing:2px}
.hero2 .eyebrow::before{background:var(--gold)}
.hero2 h1{font-family:var(--serif);font-weight:700;font-size:clamp(2.6rem,5.6vw,5rem);line-height:1.02;letter-spacing:-.015em;color:var(--navy);margin-top:14px}
.hero2 h1 .gold{color:var(--gold)}
.hero2 .sub{font-size:clamp(1rem,1.3vw,1.18rem);color:#3B4565;max-width:46ch;margin:18px 0 26px}
.h2-icons{display:flex;gap:clamp(14px,2.4vw,36px);margin-top:30px;flex-wrap:wrap}
.h2-icons div{display:grid;justify-items:center;text-align:center;gap:8px;font-size:.82rem;font-weight:500;color:var(--navy);line-height:1.25}
.h2-icons span{width:62px;height:62px;border-radius:50%;background:rgba(255,255,255,.9);box-shadow:0 8px 20px -12px rgba(1,7,34,.4);display:grid;place-items:center;color:#2F7A3A;transition:transform .3s,background .3s}
.h2-icons div:hover span{transform:translateY(-4px);background:#fff}
.h2-icons svg{width:30px;height:30px}
.h2-icons div:nth-child(2) svg,.h2-icons div:nth-child(3) svg{color:var(--gold)}
.h2-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:900px;background:rgba(255,255,255,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:16px;padding:14px 8px}
.h2-stats div{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:center;padding:4px 18px;min-width:0}
.h2-stats div+div{border-left:1px solid rgba(1,7,34,.15)}
.h2-stats svg{width:36px;height:36px;color:var(--gold)}
.h2-stats p{margin:0;font-size:.82rem;color:var(--muted);line-height:1.3}
.h2-stats b{display:block;font-family:var(--f);font-size:1.3rem;font-weight:600;color:var(--navy);font-variant-numeric:tabular-nums}
.h2-stats b span{display:inline}
.hb{width:5.9%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:#fff;box-shadow:0 10px 26px -12px rgba(1,7,34,.45),0 0 0 6px rgba(255,255,255,.35);display:grid;place-items:center;color:#2F7A3A;z-index:1;opacity:0;animation:hbIn .7s cubic-bezier(.2,.9,.3,1.4) forwards,hbFloat 5s ease-in-out infinite}
.hb svg{width:46%;height:46%}
.hb:nth-of-type(4n+1) svg,.hb:nth-of-type(4n+3) svg{color:var(--gold)}
@keyframes hbIn{from{opacity:0;transform:translate(-50%,-50%) scale(.3)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes hbFloat{50%{margin-top:-6px}}
.h2-glare{width:16%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,250,225,.95) 0%,rgba(255,226,140,.45) 30%,rgba(255,226,140,0) 70%);mix-blend-mode:screen;animation:glare 5s ease-in-out 2s infinite;pointer-events:none;opacity:.8}
@keyframes glare{50%{transform:translate(-50%,-50%) scale(1.25);opacity:1}}
.h2-fall{width:var(--w);height:var(--h);opacity:0;background:repeating-linear-gradient(180deg,rgba(255,255,255,0) 0 9px,rgba(255,255,255,.8) 9px 14px,rgba(255,255,255,0) 14px 26px);background-size:100% 52px;mix-blend-mode:screen;-webkit-mask-image:linear-gradient(180deg,transparent,#000 15%,#000 80%,transparent),linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(180deg,transparent,#000 15%,#000 80%,transparent),linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent);mask-composite:intersect;animation:fallOn 1s ease-out 2.4s forwards,water .65s linear infinite;pointer-events:none}
.h2-cloud{position:absolute;height:auto;opacity:0;pointer-events:none}
.h2-cloud.c1{width:24%;left:52%;bottom:16%;animation:cloudIn 2s ease-out 1.2s forwards,drift 28s ease-in-out 3.2s infinite alternate}
.h2-cloud.c2{width:20%;right:4%;bottom:22%;animation:cloudIn 2s ease-out 1.5s forwards,drift 34s ease-in-out 3.5s infinite alternate-reverse}
.h2-birds{--x:40%;--y:30%;--mx:16%;--my:22%;width:7%;fill:none;stroke:#3a4256;stroke-width:1.6;stroke-linecap:round;animation:birds 26s linear 1s infinite;opacity:.7}
.h2-birds path{animation:flap .9s ease-in-out infinite;transform-origin:center}
.h2-birds .b2{animation-delay:.3s}.h2-birds .b3{animation-delay:.6s}
@keyframes flap{50%{transform:scaleY(.4)}}
@keyframes birds{from{transform:translate(0,0)}to{transform:translate(900%,-200%)}}

/* tablet & phone: headline + buttons, then the picture, then icons and numbers */
@media (max-width:1100px){
 .hero2{aspect-ratio:auto;min-height:0;max-height:none;display:flex;flex-direction:column;background:linear-gradient(180deg,#F4F8FD 0%,#EDF3FA 100%);padding-bottom:24px}
 .h2-in{display:contents}
 .h2-copy{display:contents}
 .h2-copy>.eyebrow,.h2-copy>h1,.h2-copy>.sub,.h2-copy>.row-btns{order:1;margin-left:max(20px,env(safe-area-inset-left,0px));margin-right:max(20px,env(safe-area-inset-right,0px))}
 .h2-copy>.eyebrow{margin-top:28px}
 .hero2 .sub{margin-bottom:20px}
 .h2-stage{order:2;position:relative;inset:auto;z-index:0;width:100%;aspect-ratio:917/878;margin-top:8px}
 .h2-bg img{object-position:center}
 .h2-stage>span,.h2-stage>.h2-birds{left:var(--mx);top:var(--my)}
 .h2-fall{width:var(--mw);height:var(--mh)}
 .hb{width:10.5%}
 .h2-glare{width:28%}
 .h2-birds{width:12%}
 .h2-cloud.c1{width:44%;left:4%;bottom:4%}.h2-cloud.c2{width:36%;right:0;bottom:10%}
 .h2-icons{order:3;justify-content:space-between;margin:18px max(20px,env(safe-area-inset-right,0px)) 0 max(20px,env(safe-area-inset-left,0px));gap:8px;flex-wrap:nowrap}
 .h2-icons span{width:56px;height:56px}
 .h2-stats{order:4;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:14px;margin:18px max(20px,env(safe-area-inset-right,0px)) 0 max(20px,env(safe-area-inset-left,0px));max-width:none;background:#fff;box-shadow:0 12px 30px -24px rgba(1,7,34,.4)}
 .h2-stats div{padding:4px 12px;grid-template-columns:30px 1fr;gap:10px}
 .h2-stats svg{width:28px;height:28px}
 .h2-stats b{font-size:1.12rem}
 .h2-stats div:nth-child(3){border-left:0}
}
@media (max-width:520px){.hero2 .row-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero2 .row-btns .btn{font-size:.8rem;padding:12px 10px;gap:6px;justify-content:center;white-space:normal;text-align:center;line-height:1.2}.hero2 .row-btns .btn svg{width:13px;height:13px;flex:none}}
@media (max-width:400px){.h2-icons div{font-size:.74rem}.h2-icons span{width:50px;height:50px}.hero2 h1{font-size:2.4rem}}
@media (prefers-reduced-motion: reduce){.h2-bg img,.hb,.h2-fall,.h2-cloud,.h2-birds,.h2-birds path,.h2-glare{animation:none!important}.hb,.h2-cloud{opacity:1}}

/* ---- Hero v3: corporate layout, realistic India map on the right ---- */
.hero3{position:relative;overflow:hidden;isolation:isolate;height:clamp(660px,50vw,860px);background:linear-gradient(180deg,#E9F1FA 0%,#F5F8FC 100%)}
.h3-art{position:absolute;z-index:-2;top:4%;right:-3%;height:92%;aspect-ratio:1672/941}
.h3-art picture,.h3-art img{display:block;width:100%;height:100%}
.h3-art img{object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 18%,#000 40%),linear-gradient(180deg,transparent 0%,#000 12%,#000 90%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 18%,#000 40%),linear-gradient(180deg,transparent 0%,#000 12%,#000 90%,transparent 100%);mask-composite:intersect;animation:h3In 1.8s cubic-bezier(.2,.7,.2,1) both,h3Drift 26s ease-in-out 1.8s infinite alternate}
@keyframes h3In{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:none}}
@keyframes h3Drift{to{transform:scale(1.04) translate(-.8%,-.4%)}}
.hero3::before{content:"";position:absolute;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(900px 600px at 72% 45%,rgba(255,236,190,.45),rgba(255,236,190,0) 70%)}
.hero3::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.85))}
.h3-in{height:100%;display:grid;grid-template-rows:1fr auto;padding-block:clamp(36px,4vw,56px) clamp(26px,3vw,40px)}
.hero3 .wrap{max-width:1440px}
.h3-copy{align-self:center;max-width:760px}
.hero3 h1{white-space:nowrap}
.hero3 .eyebrow{color:#3B4565;font-weight:500;letter-spacing:2.6px;font-size:.78rem}
.hero3 .eyebrow::before{width:30px;background:var(--gold)}
.hero3 h1{text-shadow:0 0 18px rgba(243,247,252,.9);font-family:var(--f);font-weight:700;font-size:clamp(2.6rem,4.3vw,4.35rem);line-height:1.05;letter-spacing:-.03em;color:var(--navy);margin-top:18px}
.hero3 h1 .gold{color:#E3A100}
.hero3 .sub{font-size:clamp(1rem,1.25vw,1.16rem);color:#454F6E;max-width:44ch;margin:22px 0 30px;line-height:1.65}
.h3-btns{display:flex;flex-wrap:wrap;gap:14px}
.hb-gold,.hb-story{display:inline-flex;align-items:center;gap:12px;height:56px;padding:0 28px;border-radius:999px;font:600 .98rem var(--f);text-decoration:none;cursor:pointer;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s;white-space:nowrap}
.hb-gold{background:var(--yellow);color:var(--navy);border:0;box-shadow:0 14px 30px -16px rgba(192,138,10,.95)}
.hb-gold svg{width:18px;height:18px;transition:transform .25s}
.hb-gold:hover{background:var(--yellow-2);transform:translateY(-2px)}.hb-gold:hover svg{transform:translateX(4px)}
.hb-story{background:rgba(255,255,255,.85);color:var(--navy);border:1.5px solid #CDD4E2;padding-left:10px}
.hb-story .pl{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--navy);display:grid;place-items:center}
.hb-story .pl svg{width:13px;height:13px;margin-left:2px}
.hb-story:hover{border-color:var(--navy);transform:translateY(-2px)}
.h3-stats{display:flex;align-items:stretch;flex-wrap:wrap;row-gap:14px;justify-self:start;background:rgba(255,255,255,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:18px;padding:14px 26px;box-shadow:0 16px 40px -28px rgba(1,7,34,.5)}
.h3-stats div{display:flex;align-items:center;gap:14px;padding:4px 28px}
.h3-stats div:first-child{padding-left:0}
.h3-stats div+div{border-left:1px solid rgba(1,7,34,.16)}
.h3-stats svg{width:40px;height:40px;color:#E3A100;flex:none}
.h3-stats p{margin:0;font-size:.85rem;color:var(--muted);line-height:1.3}
.h3-stats b{display:block;font-size:1.6rem;font-weight:600;color:var(--navy);line-height:1.15;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.h3-stats b span{display:inline}
.h3b{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:grid;justify-items:center;gap:8px;text-align:center;opacity:0;animation:h3bIn .8s cubic-bezier(.2,.9,.3,1.3) var(--d) forwards}
.h3b span{width:84px;height:84px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--navy);box-shadow:0 12px 30px -12px rgba(1,7,34,.45),0 0 0 7px rgba(255,255,255,.35);animation:h3bFloat 5s ease-in-out calc(var(--d) + .8s) infinite}
.h3b span svg{width:40px;height:40px}
.h3b b{font-size:.95rem;font-weight:600;color:var(--navy);line-height:1.2;text-shadow:0 0 6px #fff,0 0 12px #fff,0 0 18px rgba(255,255,255,.9)}
@keyframes h3bIn{from{opacity:0;transform:translate(-50%,-40%) scale(.6)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@keyframes h3bFloat{50%{transform:translateY(-7px)}}
.hero3 [data-in]{animation:h3Up .9s cubic-bezier(.2,.7,.2,1) both}
.hero3 .h3-copy>[data-in]:nth-child(2){animation-delay:.12s}.hero3 .h3-copy>[data-in]:nth-child(3){animation-delay:.24s}.hero3 .h3-copy>[data-in]:nth-child(4){animation-delay:.36s}.hero3 .h3-stats{animation-delay:.5s}
@keyframes h3Up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media (max-width:1280px){.h3-stats div{padding:4px 18px}.h3-stats b{font-size:1.4rem}.h3-stats svg{width:34px;height:34px}}
@media (max-width:1100px){
 .hero3{height:auto;display:flex;flex-direction:column;background:linear-gradient(180deg,#F3F7FC 0%,#EAF1F9 100%);padding-bottom:28px}
 .hero3::before,.hero3::after{display:none}
 .h3-in{display:contents}
 .hero3 h1{white-space:normal}
 .h3-copy{order:1;align-self:stretch;max-width:none;padding:34px max(20px,env(safe-area-inset-right,0px)) 0 max(20px,env(safe-area-inset-left,0px))}
 .h3-art{order:2;position:relative;top:auto;right:auto;height:auto;width:100%;aspect-ratio:1220/941;z-index:0;margin-top:14px}
 .h3-art img{-webkit-mask-image:none;mask-image:none}
 .h3b{left:var(--mx)}
 .hero3 .eyebrow{letter-spacing:1.6px;font-size:.72rem}
 .h3b span{width:58px;height:58px}.h3b span svg{width:28px;height:28px}.h3b b{font-size:.78rem}
 .h3-stats{order:3;justify-self:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:16px max(20px,env(safe-area-inset-right,0px)) 0 max(20px,env(safe-area-inset-left,0px));background:#fff;border-radius:16px;padding:16px 6px;box-shadow:0 14px 34px -24px rgba(1,7,34,.45)}
 .h3-stats div{padding:6px 14px;gap:10px}
 .h3-stats div:first-child{padding-left:14px}
 .h3-stats div:nth-child(3){border-left:0}
 .h3-stats svg{width:30px;height:30px}.h3-stats b{font-size:1.2rem}
}
@media (max-width:560px){
 .hero3 h1{font-size:2.35rem}
 .h3-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .hb-gold,.hb-story{height:52px;padding:0 10px;justify-content:center;font-size:.84rem;gap:7px;min-width:0;white-space:normal;line-height:1.15;text-align:center}
 .hb-story{padding-left:8px}
 .hb-story .pl{width:30px;height:30px}
 .h3b span{width:46px;height:46px;box-shadow:0 8px 20px -10px rgba(1,7,34,.5),0 0 0 4px rgba(255,255,255,.35)}.h3b span svg{width:22px;height:22px}.h3b b{font-size:.68rem}
}
@media (prefers-reduced-motion: reduce){.h3-art img,.h3b,.h3b span,.hero3 [data-in]{animation:none!important;opacity:1}}
/* story video modal */
.vmodal{position:fixed;inset:0;z-index:200;background:rgba(1,7,34,.86);display:grid;place-items:center;padding:20px}
.vmodal[hidden]{display:none}
.vbox{position:relative;width:min(1100px,100%);aspect-ratio:16/9;background:#000;border-radius:16px;overflow:hidden;box-shadow:0 40px 90px -30px #000}
.vbox video{width:100%;height:100%;display:block}
.vclose{position:absolute;top:12px;right:12px;z-index:2;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--navy);display:grid;place-items:center;cursor:pointer}
.vclose svg{width:20px;height:20px}

/* top-bar search */
.tsearch{background:none;border:0;color:#D5DBEC;cursor:pointer;display:grid;place-items:center;width:30px;height:30px;border-radius:8px}
.tsearch:hover{color:#fff;background:rgba(255,255,255,.08)}
.srch{position:fixed;inset:0;z-index:210;background:rgba(1,7,34,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;justify-items:center;align-items:start;padding:12vh 20px 20px}
.srch[hidden]{display:none}
.srch-box{width:min(640px,100%);background:#fff;border-radius:20px;box-shadow:0 40px 80px -30px rgba(1,7,34,.6);overflow:hidden}
.srch-in{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}
.srch-in>svg{width:20px;height:20px;color:var(--muted)}
.srch-in input{flex:1;border:0;outline:0;font:500 1.05rem var(--f);color:var(--navy);background:none}
.srch-x{border:0;background:var(--soft);width:34px;height:34px;border-radius:10px;display:grid;place-items:center;cursor:pointer;color:var(--navy)}.srch-x svg{width:16px;height:16px}
.srch-res{max-height:52vh;overflow:auto;padding:8px;display:grid;gap:2px}
.srch-res a{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:center;padding:9px 10px;border-radius:12px;text-decoration:none}
.srch-res a:hover,.srch-res a:focus{background:var(--soft);outline:0}
.srch-res .di{width:36px;height:36px;border-radius:10px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center}.srch-res .di svg{width:18px;height:18px}
.srch-res b{display:block;font-size:.9rem;color:var(--navy);line-height:1.3}.srch-res small{display:block;font-size:.77rem;color:var(--muted)}
.srch-empty{padding:18px 22px;color:var(--muted);font-size:.9rem}

/* ---- Homepage v3 sections ---- */
.gold{color:var(--gold)}
.hs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:clamp(26px,3.5vw,40px)}
.hs-head h2{margin-top:12px;max-width:22ch}
.hb-gold.sm{height:50px;padding:0 24px;font-size:.92rem}
.hb-line{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 20px;border:1.5px solid #D6DCE8;border-radius:999px;font:500 .9rem var(--f);color:var(--navy);text-decoration:none;background:#fff;transition:border-color .2s,transform .2s;white-space:nowrap}
.hb-line svg{width:16px;height:16px;transition:transform .25s}
.hb-line:hover{border-color:var(--navy);transform:translateY(-1px)}.hb-line:hover svg{transform:translateX(3px)}
.sol5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.s5{position:relative;display:block;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;transition:transform .3s,box-shadow .3s}
.s5:hover{transform:translateY(-4px);box-shadow:0 24px 44px -28px rgba(1,7,34,.4)}
.s5 .im{aspect-ratio:4/3;overflow:hidden}.s5 .im img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.s5:hover .im img{transform:scale(1.06)}
.s5 .badge{position:absolute;left:18px;top:calc((100% - 0px) * 0);margin-top:calc(75% - 22px);width:46px;height:46px;border-radius:12px;background:var(--yellow);color:var(--navy);display:grid;place-items:center;box-shadow:0 10px 20px -10px rgba(192,138,10,.9)}
.s5 .badge svg{width:22px;height:22px}
.s5 .bd{padding:32px 18px 20px}
.s5 h3{font-family:var(--f);font-size:1.02rem;font-weight:600;color:var(--navy)}
.s5 p{font-size:.84rem;color:var(--muted);margin-top:4px;line-height:1.45}
@media (max-width:1100px){.sol5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.sol5{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.s5 .bd{padding:28px 14px 16px}.s5 .badge{left:14px;width:40px;height:40px;margin-top:calc(75% - 20px)}}
.hs-split{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(30px,5vw,72px);align-items:center}
.hs-split.rev{grid-template-columns:1.05fr 1fr}
.hs-copy h2{margin:12px 0 16px}
.hs-copy>p{color:var(--muted);font-size:1.02rem;max-width:56ch}
.hs-ticks{list-style:none;padding:0;margin:18px 0 26px;display:grid;gap:10px}
.hs-ticks li{position:relative;padding-left:30px;color:var(--ink);font-size:.95rem}
.hs-ticks li::before{content:"";position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:50%;background:var(--yellow-soft);box-shadow:inset 0 0 0 5px var(--yellow)}
.hs-pic{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 30px 60px -34px rgba(1,7,34,.5);aspect-ratio:4/3}
.hs-pic img{width:100%;height:100%;object-fit:cover}
.hs-pic .tag{position:absolute;left:20px;bottom:20px;background:#fff;border-radius:14px;padding:12px 18px;font-size:.82rem;color:var(--muted);box-shadow:0 14px 30px -18px rgba(1,7,34,.5);display:grid;line-height:1.3}
.hs-pic .tag b{font-size:1.5rem;color:var(--navy)}
.hs-feats{display:flex;gap:26px;flex-wrap:wrap;margin:22px 0 28px}
.hs-feats div{display:flex;align-items:center;gap:12px;font-size:.88rem;font-weight:500;color:var(--navy);line-height:1.3}
.hs-feats span{width:48px;height:48px;border-radius:14px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center;flex:none}
.hs-feats svg{width:24px;height:24px}
@media (max-width:900px){.hs-split,.hs-split.rev{grid-template-columns:1fr}.hs-split.rev .hs-pic{order:2}}
.st4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.st4>div{display:flex;align-items:center;gap:16px;padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 14px 34px -28px rgba(1,7,34,.35)}
.st4 .si{width:56px;height:56px;border-radius:50%;background:var(--yellow-soft);color:var(--gold);display:grid;place-items:center;flex:none}
.st4 .si svg{width:28px;height:28px}
.st4 p{margin:0;font-size:.86rem;color:var(--ink);line-height:1.35;font-weight:500}
.st4 b{display:block;font-size:1.55rem;font-weight:600;color:var(--navy);line-height:1.15;font-variant-numeric:tabular-nums}
.st4 b span{display:inline}
.st4 small{display:block;color:var(--muted);font-size:.78rem;font-weight:400}
@media (max-width:1000px){.st4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.st4{grid-template-columns:1fr}}
.jr5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;position:relative}
.jr5::before{content:"";position:absolute;left:10px;right:10px;top:44px;height:2px;background:linear-gradient(90deg,var(--yellow),#E8D9A8)}
.jr5>div{position:relative}
.jr5 b{display:block;font-size:1.6rem;font-weight:600;color:var(--navy);line-height:1}
.jr5 i{position:relative;display:block;width:20px;height:20px;border-radius:50%;background:#fff;border:5px solid var(--yellow);margin:12px 0 16px;z-index:1}
.jr5 h3{font-family:var(--f);font-size:1rem;font-weight:600}
.jr5 p{font-size:.86rem;color:var(--muted);margin-top:6px;line-height:1.5}
@media (max-width:900px){.jr5{grid-template-columns:1fr;gap:0}.jr5::before{left:9px;right:auto;top:8px;bottom:8px;width:2px;height:auto;background:var(--yellow)}.jr5>div{display:grid;grid-template-columns:20px 1fr;column-gap:18px;padding-bottom:22px}.jr5 i{grid-row:1/4;margin:4px 0 0}.jr5 b{font-size:1.2rem}}
.fp4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.fp{display:block;background:#fff;border-radius:18px;overflow:hidden;text-decoration:none;border:1px solid var(--line);transition:transform .3s,box-shadow .3s}
.fp:hover{transform:translateY(-4px);box-shadow:0 24px 44px -28px rgba(1,7,34,.4)}
.fp .im{aspect-ratio:4/3;overflow:hidden}.fp .im img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.fp:hover .im img{transform:scale(1.06)}
.fp .bd{padding:18px 20px 20px}
.fp .bd b{display:inline-block;font-size:.8rem;font-weight:600;color:var(--yellow-ink);background:var(--yellow-soft);border-radius:999px;padding:3px 10px}
.fp h3{font-family:var(--f);font-size:1.02rem;font-weight:600;margin-top:10px}
.fp p{font-size:.84rem;color:var(--muted);margin-top:2px}
@media (max-width:1000px){.fp4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.fp4{grid-template-columns:1fr}}
.lgnav{display:flex;gap:10px}
.lgnav button{width:46px;height:46px;border-radius:50%;border:1.5px solid #D6DCE8;background:#fff;color:var(--navy);display:grid;place-items:center;cursor:pointer}
.lgnav button:hover{border-color:var(--navy)}.lgnav svg{width:16px;height:16px}
.lgrow{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 5*18px)/6);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 14px}
.lgrow::-webkit-scrollbar{display:none}
.lg{scroll-snap-align:start;height:120px;border:1px solid var(--line);border-radius:16px;background:#fff;display:grid;place-items:center;padding:16px}
.lg img{max-width:100%;max-height:78px;object-fit:contain}
@media (max-width:900px){.lgrow{grid-auto-columns:calc((100% - 2*14px)/3);gap:14px}}
@media (max-width:520px){.lgrow{grid-auto-columns:calc((100% - 14px)/2)}}
.aw4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.aw4>div{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}
.aw4 .yr{font-size:1.4rem;font-weight:600;color:var(--gold)}
.aw4 .aic{position:absolute;right:20px;top:20px;width:42px;height:42px;border-radius:12px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center}.aw4 .aic svg{width:21px;height:21px}
.aw4 h3{font-family:var(--f);font-size:1rem;font-weight:600;margin-top:12px}
.aw4 p{font-size:.84rem;color:var(--muted);margin-top:4px}
@media (max-width:1000px){.aw4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.aw4{grid-template-columns:1fr}}
.ldr{display:grid;grid-template-columns:1.2fr auto auto;gap:32px;align-items:center;border:1px solid var(--line);border-radius:22px;padding:26px 30px;background:linear-gradient(90deg,#fff,var(--soft))}
.ldr h2{margin-top:10px;font-size:clamp(1.3rem,2vw,1.7rem)}
.ldr-faces{display:flex;gap:22px}
.ldr-faces figure{margin:0;display:flex;align-items:center;gap:12px}
.ldr-faces img{width:68px;height:68px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 8px 20px -10px rgba(1,7,34,.5)}
.ldr-faces figcaption{font-size:.8rem;color:var(--muted);line-height:1.3}.ldr-faces b{display:block;color:var(--navy);font-size:.92rem}
@media (max-width:1000px){.ldr{grid-template-columns:1fr;gap:20px}}
.fcta{background:var(--yellow);margin-top:clamp(20px,3vw,40px)}
.fcta-in{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;padding-block:clamp(36px,5vw,56px)}
.fcta-in>div:first-child{max-width:620px}
.fcta h2{color:var(--navy);font-size:clamp(1.6rem,2.8vw,2.3rem)}
.fcta p{color:#3A3110;margin-top:8px;font-size:1.02rem}
.fcta-btns{display:flex;gap:12px;flex-wrap:wrap}
.fb-navy,.fb-white{display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 26px;border-radius:999px;font:600 .95rem var(--f);text-decoration:none;transition:transform .2s}
.fb-navy{background:var(--navy);color:#fff}.fb-white{background:#fff;color:var(--navy)}
.fb-navy svg,.fb-white svg{width:17px;height:17px}
.fb-navy:hover,.fb-white:hover{transform:translateY(-2px)}

/* client logo loop + factory video */
.hs-head.center{justify-content:center;text-align:center}.hs-head.center h2{margin-inline:auto}.hs-head.center .eyebrow{justify-content:center}
.lgloop{overflow:hidden;padding:8px 0 18px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.lgtrack{display:flex;gap:22px;width:max-content;animation:lgScroll 48s linear infinite}
.lgloop:hover .lgtrack{animation-play-state:paused}
.lgtrack .lg{flex:none;width:220px;height:124px;scroll-snap-align:none}
@keyframes lgScroll{to{transform:translateX(calc(-50% - 11px))}}
@media (max-width:560px){.lgtrack .lg{width:160px;height:96px}.lgtrack{animation-duration:36s}}
@media (prefers-reduced-motion: reduce){.lgtrack{animation:none}.lgloop{overflow-x:auto}}
.hs-pic.vid video{width:100%;height:100%;object-fit:cover;display:block}
.hs-pic .vtag{position:absolute;left:18px;bottom:18px;display:inline-flex;align-items:center;gap:9px;background:rgba(1,7,34,.72);color:#fff;font-size:.8rem;font-weight:500;padding:8px 14px;border-radius:999px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hs-pic .vtag i{width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 4px rgba(253,191,0,.25);animation:vdot 1.6s ease-in-out infinite}
@keyframes vdot{50%{box-shadow:0 0 0 7px rgba(253,191,0,0)}}

.aw4 .awl{display:grid;place-items:center;height:96px;margin:-6px -6px 16px;border-radius:12px;background:var(--soft);padding:14px 18px}
.aw4 .awl img{max-height:62px;max-width:80%;object-fit:contain}
.aw4 .aic{top:128px}

/* explore links, directors, awards page */
.xpl{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.xpl a{position:relative;display:grid;gap:4px;padding:22px 22px 22px;border:1px solid var(--line);border-radius:18px;background:#fff;text-decoration:none;transition:transform .25s,box-shadow .25s,border-color .25s}
.xpl a:hover{transform:translateY(-3px);box-shadow:0 20px 40px -28px rgba(1,7,34,.4);border-color:#D6DCE8}
.xpl .ci{width:48px;height:48px;border-radius:14px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center;margin-bottom:10px}.xpl .ci svg{width:24px;height:24px}
.xpl b{font-size:1.02rem;color:var(--navy)}.xpl small{font-size:.84rem;color:var(--muted)}
.xpl i{position:absolute;right:20px;top:24px;width:34px;height:34px;border-radius:50%;background:var(--soft);color:var(--navy);display:grid;place-items:center;transition:transform .25s}
.xpl a:hover i{transform:translateX(3px);background:var(--yellow)}.xpl i svg{width:15px;height:15px}
.dirs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.dir{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 24px 50px -36px rgba(1,7,34,.45)}
.dir .ph{min-height:340px;background:var(--soft-2);border-right:6px solid var(--yellow)}
.dir .ph img{width:100%;height:100%;object-fit:cover}
.dir .bd{padding:30px 28px;display:grid;gap:8px;align-content:center}
.dir .role{font-size:.76rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--yellow-ink)}
.dir h3{font-family:var(--f);font-size:1.6rem;font-weight:600}
.dir .fn{color:var(--navy);font-weight:500;font-size:.95rem}
.dir p{color:var(--muted);font-size:.95rem}
@media (max-width:1000px){.dirs{grid-template-columns:1fr}}
@media (max-width:560px){.dir{grid-template-columns:1fr}.dir .ph{min-height:0;aspect-ratio:4/3;border-right:0;border-bottom:6px solid var(--yellow)}}
.awg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.awc{display:grid;grid-template-columns:220px 1fr;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff;transition:transform .25s,box-shadow .25s}
.awc:hover{transform:translateY(-3px);box-shadow:0 24px 46px -30px rgba(1,7,34,.4)}
.awc[hidden]{display:none}
.awc .awl{display:grid;place-items:center;background:var(--soft);padding:24px;border-right:1px solid var(--line)}
.awc .awl img{max-width:100%;max-height:90px;object-fit:contain}
.awc .bd{padding:24px 26px;display:grid;gap:8px;align-content:center}
.awc .top{display:flex;align-items:center;gap:12px}
.awc .yr{font-size:1.5rem;font-weight:600;color:var(--gold)}
.awc .tp{font-size:.72rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--yellow-ink);background:var(--yellow-soft);padding:4px 10px;border-radius:999px}
.awc h3{font-family:var(--f);font-size:1.15rem;font-weight:600}
.awc p{color:var(--muted);font-size:.92rem}
.awc small{color:var(--navy);font-weight:500;font-size:.82rem}
@media (max-width:1000px){.awg{grid-template-columns:1fr}}
@media (max-width:560px){.awc{grid-template-columns:1fr}.awc .awl{border-right:0;border-bottom:1px solid var(--line);height:130px}}

/* mega dropdown */
.dd.mega{grid-template-columns:1fr 1fr;min-width:640px;gap:4px 10px;padding:14px}
.dd.mega>div{display:grid;gap:2px;align-content:start}
.dd .dh{display:block;font-size:.7rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--faint);padding:4px 12px 6px}
@media (max-width:1240px){.nav>li>a,.nav>li>button{font-size:.9rem;padding:10px 8px}}
/* group value chain */
.vchain{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:v}
.vchain>div{position:relative;display:grid;justify-items:center;text-align:center;gap:6px;padding:26px 18px;background:#fff;border:1px solid var(--line);border-radius:18px}
.vchain>div:not(:last-child)::after{content:"";position:absolute;right:-13px;top:50%;width:10px;height:10px;border-top:2px solid var(--gold);border-right:2px solid var(--gold);transform:translateY(-50%) rotate(45deg)}
.vchain .ci{width:54px;height:54px;border-radius:14px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center;margin-bottom:6px}.vchain .ci svg{width:26px;height:26px}
.vchain b{color:var(--navy)}.vchain small{color:var(--muted);font-size:.84rem}
@media (max-width:800px){.vchain{grid-template-columns:1fr 1fr}.vchain>div::after{display:none}}
/* case studies */
.cases{display:grid;gap:26px}
.case{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff}
.case:nth-child(even){grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.case:nth-child(even) .im{order:2}
.case .im{min-height:320px}.case .im img{width:100%;height:100%;object-fit:cover}
.case .bd{padding:30px 32px;display:grid;gap:12px;align-content:center}
.case h3{font-family:var(--f);font-size:1.4rem;font-weight:600}
.case .meta{display:flex;gap:26px}.case .meta span{font-size:.78rem;color:var(--muted)}.case .meta b{display:block;font-size:1.05rem;color:var(--navy)}
.case dl{margin:6px 0 0;display:grid;gap:8px}.case dt{font-size:.74rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--yellow-ink)}.case dd{margin:0 0 6px;color:var(--muted);font-size:.93rem}
@media (max-width:860px){.case,.case:nth-child(even){grid-template-columns:1fr}.case:nth-child(even) .im{order:0}.case .im{min-height:220px}.case .bd{padding:24px}}
/* media list + downloads */
.mlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.mlist article{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff}
.mlist .lgo{height:90px;border-radius:12px;background:var(--soft);display:grid;place-items:center;padding:12px}.mlist .lgo img{max-height:60px;max-width:100%;object-fit:contain}
.mlist .tp,.bcard .tp,.post-hero .tp{font-size:.72rem;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--yellow-ink)}
.mlist h3{font-family:var(--f);font-size:1.02rem;font-weight:600;margin-top:4px}.mlist p{font-size:.85rem;color:var(--muted)}
@media (max-width:760px){.mlist{grid-template-columns:1fr}.mlist article{grid-template-columns:110px 1fr}}
.dlist{display:grid;gap:12px}
.dlist a,.dlist button{display:grid;grid-template-columns:52px 1fr 20px;gap:14px;align-items:center;padding:14px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;text-align:left;font:inherit;cursor:pointer;transition:border-color .2s,transform .2s}
.dlist a:hover,.dlist button:hover{border-color:var(--navy);transform:translateY(-2px)}
.dlist b{display:block;color:var(--navy);font-size:.95rem}.dlist small{color:var(--muted);font-size:.8rem}.dlist svg{width:18px;height:18px;color:var(--navy)}
.ftype{display:grid;place-items:center;height:44px;border-radius:10px;background:var(--navy);color:var(--yellow);font:600 .72rem var(--mono);letter-spacing:1px}
.dgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.dgrid a,.dgrid button{display:grid;gap:10px;align-content:start;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff;text-decoration:none;text-align:left;font:inherit;cursor:pointer;transition:transform .25s,box-shadow .25s}
.dgrid a:hover,.dgrid button:hover{transform:translateY(-3px);box-shadow:0 22px 44px -30px rgba(1,7,34,.45)}
.dgrid .ftype{width:56px}.dgrid b{color:var(--navy);font-size:1.02rem;line-height:1.3}.dgrid small{color:var(--muted);font-size:.84rem}
.dgrid .go{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.86rem;color:var(--navy);margin-top:6px}.dgrid .go svg{width:15px;height:15px}
@media (max-width:1000px){.dgrid{grid-template-columns:1fr 1fr}}@media (max-width:520px){.dgrid{grid-template-columns:1fr}}
/* blog */
.blist{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:20px}
.bcard{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;text-decoration:none;transition:transform .25s,box-shadow .25s}
.bcard:hover{transform:translateY(-4px);box-shadow:0 24px 44px -30px rgba(1,7,34,.45)}
.bcard .im{aspect-ratio:16/10;overflow:hidden}.bcard .im img{width:100%;height:100%;object-fit:cover}
.bcard .bd{padding:20px 22px 22px;display:grid;gap:8px;align-content:start}
.bcard h3{font-family:var(--f);font-size:1.05rem;font-weight:600;line-height:1.35}.bcard p{font-size:.88rem;color:var(--muted)}
.bcard .rm{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.85rem;color:var(--navy);margin-top:4px}.bcard .rm svg{width:15px;height:15px}
.bcard.sm{grid-template-rows:1fr}
.post-hero{background:linear-gradient(180deg,#F3F7FC,#fff);padding:clamp(40px,6vw,72px) 0 clamp(26px,3vw,36px)}
.post-hero .wrap{max-width:860px}
.post-hero h1{font-family:var(--f);font-weight:700;font-size:clamp(1.9rem,3.6vw,2.9rem);letter-spacing:-.02em;line-height:1.15;margin:12px 0 14px}
.post-hero .lead{color:var(--muted);font-size:1.08rem}
.post-hero .crumbs{margin-bottom:18px}
.post-img{max-width:1000px;margin:0 auto;border-radius:24px;overflow:hidden;aspect-ratio:21/9}.post-img img{width:100%;height:100%;object-fit:cover}
.post{max-width:760px;margin:0 auto;display:grid;gap:16px;color:#3B4565;font-size:1.02rem;line-height:1.8}
.post h2{font-family:var(--f);font-size:1.4rem;font-weight:600;margin-top:18px}
.post a{color:var(--navy);font-weight:500}
.post-cta{display:grid;gap:8px;justify-items:start;margin-top:22px;padding:24px 26px;border-radius:20px;background:var(--yellow-soft);border:1px solid #F3DE94}.post-cta b{color:var(--navy);font-size:1.1rem}.post-cta span{color:#5B4A12;font-size:.95rem}
.legal{font-size:.98rem}

/* ---- Waaree-style navigation (no top bar) ---- */
.topbar{display:none}
.hdr .wrap{height:86px;gap:16px}
.nav{gap:0;margin:0 auto}
.nav>li>button{font:500 .93rem var(--f);color:#3A4256;padding:10px 11px;border-radius:0;background:none!important;gap:5px}
.nav>li>button svg{width:11px;height:11px;opacity:.75}
.nav>li>button:hover,.nav>li.open>button,.nav>li>button.on{color:var(--gold);box-shadow:none}
.wdd{position:absolute;top:calc(100% + 14px);left:0;min-width:236px;margin:0;padding:6px 0;list-style:none;background:#fff;border-radius:6px;box-shadow:0 18px 40px -16px rgba(1,7,34,.28),0 0 0 1px rgba(1,7,34,.05);opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;z-index:5}
.nav li.open>.wdd{opacity:1;visibility:visible;transform:none}
.wdd::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.wdd>li{position:relative}
.wdd>li+li{border-top:1px solid #EDEFF4}
.wdd a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;font:400 .9rem var(--f);color:#3A4256;text-decoration:none;white-space:nowrap;transition:color .15s,background .15s}
.wdd a:hover{color:var(--gold);background:#FBFAF5}
.wdd .has-sub svg{width:11px;height:11px;transform:rotate(-90deg);opacity:.7}
.wdd2{top:-6px;left:100%;margin-left:2px}
.wdd2::before{display:none}
.wdd>li.sub:hover>.wdd2,.wdd>li.sub:focus-within>.wdd2{opacity:1;visibility:visible;transform:none}
.hround{width:46px;height:46px;border-radius:50%;border:1.5px solid #D6DCE8;background:#fff;color:var(--navy);display:grid;place-items:center;cursor:pointer;flex:none;transition:border-color .2s,background .2s}
.hround svg{width:19px;height:19px}
.hround:hover{border-color:var(--navy)}
.hround.dark{background:var(--navy);border-color:var(--navy);color:#fff}
.hround.dark:hover{background:var(--navy-3)}
.hbtn-calc{display:none!important}
.menu-btn{display:none}
.hdr-ctas{gap:10px}
@media (max-width:1320px){.nav>li>button{padding:10px 8px;font-size:.88rem}}
@media (max-width:1279px){.nav{display:none}.hdr-ctas{margin-left:auto}}
@media (max-width:560px){.hround{width:42px;height:42px}.hdr-ctas .hround:first-child{display:none}}
.mnav details.msub{border:0}
.mnav details.msub summary{padding:9px 0 9px 14px;font-size:.94rem;color:var(--muted);border-left:2px solid var(--line)}
.mnav details.msub div{padding:0 0 6px 14px}
.mcontact{display:grid;gap:12px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}
.mcontact a{display:flex;align-items:center;gap:10px;color:var(--navy);text-decoration:none;font-size:.95rem}
.mcontact svg{width:18px;height:18px;color:var(--gold)}
@media (min-width:1280px){.mnav{left:auto;width:420px;box-shadow:-30px 0 60px -30px rgba(1,7,34,.4)}}
/* small-screen fixes */
.search{min-width:0}
@media (max-width:420px){.search{flex-basis:100%}}
@media (max-width:600px){.tbl table{min-width:0;font-size:.86rem}.tbl th,.tbl td{padding:10px 12px}}

/* ---- Journey slider (Waaree-style legacy timeline) ---- */
.jtl{position:relative}
.jt-head{max-width:860px;margin:0 auto 34px;padding-left:clamp(0px,10vw,170px)}
.jt-head h2{margin-top:12px;font-family:var(--f);font-weight:500;font-size:clamp(1.6rem,2.6vw,2.2rem);letter-spacing:-.01em}
.jt-head p{color:var(--muted);margin-top:12px;font-size:.95rem}
.jt-stage{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,56px);align-items:center;max-width:860px;margin:0 auto;padding-left:clamp(0px,10vw,170px)}
.jt-arrows{display:flex;gap:8px}
.jt-arrows button{width:44px;height:44px;border-radius:50%;border:1.5px solid #D6DCE8;background:#fff;color:var(--navy);display:grid;place-items:center;cursor:pointer;transition:border-color .2s,background .2s,color .2s}
.jt-arrows button:hover{border-color:var(--gold);background:var(--yellow);color:var(--navy)}
.jt-arrows svg{width:16px;height:16px}
.jt-slides{display:grid;overflow:hidden;padding:4px}
.jt-slide{grid-area:1/1;display:grid;grid-template-columns:240px 1fr;gap:clamp(20px,3.5vw,44px);align-items:center;opacity:0;transform:translateX(30px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.jt-slide.on{opacity:1;transform:none;pointer-events:auto}
.jt-img{padding:5px;border-radius:10px;background:linear-gradient(135deg,#FFE7A3,#D7E6F7)}
.jt-img img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:6px;transform:scale(1.06);transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.jt-slide.on .jt-img img{transform:none}
.jt-tag{font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.45;font-weight:500;color:var(--navy-3);max-width:30ch;border-left:3px solid var(--yellow);padding-left:18px}
.jt-view{position:relative;overflow:hidden;margin-top:clamp(30px,4vw,46px);padding-top:6px}
.jt-line{position:absolute;left:0;right:0;top:62px;height:1px;background:#C9CFDB}
.jt-row{display:flex;transition:transform .8s cubic-bezier(.65,0,.25,1)}
.jt-item{flex:0 0 20%;display:grid;grid-template-rows:44px 32px auto auto;align-items:end;text-align:left;padding:0 22px 0 0;background:none;border:0;cursor:pointer;font:inherit;color:inherit;transition:opacity .5s}
.jt-yr{font-size:.82rem;font-weight:500;color:#8A92AD;transition:font-size .5s,color .5s;align-self:end}
.jt-dot{position:relative;width:10px;height:10px;border-radius:50%;background:#F5D57A;margin:0 0 0 6px;align-self:center;transition:all .5s cubic-bezier(.2,.7,.2,1)}
.jt-item b{font-size:.9rem;font-weight:500;color:#8A92AD;line-height:1.35;margin-top:4px;transition:color .4s,font-size .4s}
.jt-item small{font-size:.8rem;color:var(--muted);line-height:1.45;margin-top:6px;max-width:30ch;opacity:0;transform:translateY(6px);transition:opacity .5s .15s,transform .5s .15s}
.jt-item:hover b,.jt-item:hover .jt-yr{color:var(--navy)}
.jt-item.on .jt-yr{font-size:1.65rem;color:var(--gold)}
.jt-item.on .jt-dot{width:22px;height:22px;margin-left:0;background:linear-gradient(135deg,var(--yellow),var(--gold));box-shadow:0 0 0 5px rgba(253,191,0,.22)}
.jt-item.on b{font-size:1.08rem;color:var(--navy)}
.jt-item.on small{opacity:1;transform:none}
.jt-item.past{opacity:0;pointer-events:none}
.jt-prog{height:3px;background:var(--soft-2);border-radius:3px;margin-top:26px;overflow:hidden;max-width:240px}
.jt-prog span{display:block;height:100%;width:0;background:var(--yellow);border-radius:3px}
.jtl.run .jt-prog span{animation:jtProg var(--jt,6s) linear forwards}
@keyframes jtProg{to{width:100%}}
@media (max-width:900px){.jt-item{flex-basis:33.333%}.jt-head,.jt-stage{padding-left:0}.jt-slide{grid-template-columns:200px minmax(0,1fr)}.jt-slides{min-width:0}}
@media (max-width:640px){
 .jt-stage{grid-template-columns:1fr;gap:16px}
 .jt-arrows{order:2}
 .jt-slide{grid-template-columns:1fr;gap:14px}
 .jt-item{flex-basis:50%}
 .jt-item.on .jt-yr{font-size:1.35rem}
}
@media (prefers-reduced-motion: reduce){.jt-row,.jt-slide,.jt-img img,.jt-item *{transition:none!important}}

/* ---- About page v2 ---- */
.abh{position:relative;min-height:clamp(380px,40vw,520px);display:grid;align-items:center;overflow:hidden;isolation:isolate}
.abh-bg{position:absolute;inset:0;z-index:-1}
.abh-bg img{width:100%;height:100%;object-fit:cover;object-position:center 60%;animation:h3In 1.6s cubic-bezier(.2,.7,.2,1) both}
.abh::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(245,248,252,.97) 0%,rgba(245,248,252,.88) 38%,rgba(245,248,252,.2) 70%,rgba(245,248,252,0))}
.abh-in{padding-block:clamp(40px,6vw,70px)}
.abh h1{font-family:var(--f);font-weight:700;font-size:clamp(2.5rem,5vw,4.2rem);letter-spacing:-.03em;line-height:1.04;margin:18px 0 16px}
.abh p{font-size:clamp(1rem,1.4vw,1.2rem);color:#3B4565;max-width:34ch}
.abh [data-in]{animation:h3Up .9s cubic-bezier(.2,.7,.2,1) both}.abh p[data-in]{animation-delay:.15s}
@media (max-width:700px){.abh::before{background:linear-gradient(180deg,rgba(245,248,252,.96) 0%,rgba(245,248,252,.85) 55%,rgba(245,248,252,.35))}}
.abst{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--navy);border-radius:22px;padding:30px 10px;position:relative;overflow:hidden}
.abst::after{content:"";position:absolute;right:-100px;top:-140px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(253,191,0,.22),transparent 65%)}
.abst>div{display:grid;justify-items:center;text-align:center;gap:6px;padding:6px 18px;position:relative;z-index:1}
.abst>div+div{border-left:1px solid rgba(255,255,255,.15)}
.abst svg{width:38px;height:38px;color:var(--yellow);margin-bottom:6px}
.abst b{font-size:clamp(1.4rem,2.4vw,2rem);font-weight:600;color:var(--yellow);font-variant-numeric:tabular-nums}.abst b span{display:inline}
.abst>div>span{color:#C9D0E6;font-size:.86rem;line-height:1.4;max-width:22ch}
@media (max-width:900px){.abst{grid-template-columns:1fr 1fr;row-gap:26px}.abst>div:nth-child(3){border-left:0}}
.abvm{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.abvm>div{display:grid;grid-template-columns:72px 1fr;gap:20px;align-items:center;border-radius:22px;padding:28px}
.abvm .n{background:var(--navy);color:#fff}.abvm .y{background:var(--yellow);color:var(--navy)}
.abvm .ic{width:72px;height:72px;border-radius:50%;display:grid;place-items:center}
.abvm .n .ic{background:rgba(253,191,0,.15);color:var(--yellow)}.abvm .y .ic{background:rgba(1,7,34,.08);color:var(--navy)}
.abvm .ic svg{width:34px;height:34px}
.abvm small{font-size:.76rem;font-weight:600;letter-spacing:1.6px;text-transform:uppercase}
.abvm .n small{color:var(--yellow)}.abvm p{margin-top:6px;font-size:.98rem;line-height:1.6}.abvm .n p{color:#DDE2F0}
@media (max-width:800px){.abvm{grid-template-columns:1fr}.abvm>div{grid-template-columns:56px 1fr;padding:22px}.abvm .ic{width:56px;height:56px}}
.abv-h{font-family:var(--f);font-size:1.15rem;margin:30px 0 14px}
.abv{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.abv>div{display:grid;justify-items:center;gap:10px;text-align:center;padding:22px 12px;border:1px solid var(--line);border-radius:16px;background:#fff;transition:transform .25s,border-color .25s}
.abv>div:hover{transform:translateY(-3px);border-color:var(--yellow)}
.abv svg{width:34px;height:34px;color:var(--gold)}.abv b{font-size:.92rem;color:var(--navy);line-height:1.3}
@media (max-width:800px){.abv{grid-template-columns:repeat(2,minmax(0,1fr))}.abv>div:last-child{grid-column:1/-1}}
.abg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.abg a{display:grid;gap:14px;align-content:start;padding:28px;border:1px solid var(--line);border-radius:20px;background:#fff;text-decoration:none;transition:transform .25s,box-shadow .25s}
.abg a:hover{transform:translateY(-4px);box-shadow:0 24px 44px -30px rgba(1,7,34,.45)}
.abg img{height:52px;width:auto;object-fit:contain;justify-self:start}
.abg .mx{height:52px;font:700 1.9rem/1 var(--f);letter-spacing:4px;color:var(--navy)}.abg .mx small{display:block;font-size:.62rem;letter-spacing:6px;color:var(--muted);margin-top:4px}
.abg p{color:var(--muted);font-size:.92rem}
.abg a>span{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.88rem;color:var(--navy);border-bottom:2px solid var(--yellow);justify-self:start;padding-bottom:2px}.abg a>span svg{width:14px;height:14px}
@media (max-width:900px){.abg{grid-template-columns:1fr}}
.abl{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.abl article{display:grid;grid-template-columns:180px 1fr;gap:22px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px;box-shadow:0 18px 40px -30px rgba(1,7,34,.4)}
.abl img{width:180px;height:200px;object-fit:cover;border-radius:14px;border-bottom:5px solid var(--yellow)}
.abl b{display:block;font-size:1.25rem;color:var(--navy)}.abl span{display:block;font-size:.8rem;font-weight:600;letter-spacing:.6px;color:var(--yellow-ink);margin-top:4px}.abl p{font-size:.9rem;color:var(--muted);margin-top:10px}
@media (max-width:900px){.abl{grid-template-columns:1fr}}
@media (max-width:480px){.abl article{grid-template-columns:110px 1fr;gap:14px}.abl img{width:110px;height:140px}}
.abs{display:grid;grid-template-columns:1fr 1.1fr .8fr;gap:clamp(20px,3vw,40px);align-items:center}
.abs-t{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.abs-t>div{display:grid;justify-items:center;text-align:center;gap:6px;padding:22px 10px;border:1px solid var(--line);border-radius:16px;background:#fff}
.abs-t svg{width:30px;height:30px;color:#2F9A5B}.abs-t b{font-size:1.05rem;color:var(--navy)}.abs-t span{font-size:.78rem;color:var(--muted);line-height:1.35}
.abs-p{aspect-ratio:1/1}
@media (max-width:1000px){.abs{grid-template-columns:1fr}.abs-p{aspect-ratio:16/9}}
@media (max-width:480px){.abs-t{grid-template-columns:1fr}}
.abm{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,60px);align-items:center}
.abm-k{list-style:none;padding:0;margin:20px 0;display:flex;flex-wrap:wrap;gap:16px}
.abm-k li{display:flex;align-items:center;gap:8px;font-size:.86rem;color:var(--ink)}
.abm-k i{width:12px;height:12px;border-radius:50%}
.abm-k .hq,.pin.hq circle{background:var(--navy);fill:var(--navy)}.abm-k .p,.pin.p circle{background:#E3A100;fill:#E3A100}.abm-k .m,.pin.m circle{background:#2F9A5B;fill:#2F9A5B}
.abm-map{position:relative;max-width:520px;width:100%;justify-self:center}
.abm-map svg{width:100%;height:auto;display:block;overflow:visible}
.pin .pl{fill:none!important;stroke-width:.004;opacity:.6;animation:pinP 2.4s ease-out infinite;transform-origin:center;transform-box:fill-box}
.pin.hq .pl{stroke:var(--navy)}.pin.p .pl{stroke:#E3A100}.pin.m .pl{stroke:#2F9A5B}
@keyframes pinP{from{transform:scale(.5);opacity:.9}to{transform:scale(2.2);opacity:0}}
.mlab{position:absolute;transform:translate(10px,-50%);font-size:.74rem;font-weight:600;color:var(--navy);background:rgba(255,255,255,.85);padding:2px 7px;border-radius:6px;white-space:nowrap;pointer-events:none}
@media (max-width:900px){.abm{grid-template-columns:1fr}.mlab{font-size:.66rem}}

/* ---- About v3: video hero with pop-in motion ---- */
.abh{min-height:clamp(480px,46vw,640px)}
.abh-bg video{width:100%;height:100%;object-fit:cover;display:block}
.abh::before{background:linear-gradient(90deg,rgba(1,7,34,.86) 0%,rgba(1,7,34,.66) 40%,rgba(1,7,34,.1) 75%,rgba(1,7,34,0))!important}
.abh .crumbs a,.abh .crumbs span{color:#C9D0E6}
.abh .eyebrow{color:var(--yellow);margin-top:16px}
.abh h1{color:#fff;margin:14px 0 16px}
.abh p{color:#E3E7F2}
.abh-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.abh .hb-story{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.45);backdrop-filter:blur(6px)}
.abh .hb-story .pl{border-color:#fff}
.pop{opacity:0;animation:popIn .8s cubic-bezier(.2,1.3,.4,1) var(--d,0s) forwards}
.pw{display:inline-block;opacity:0;animation:popWord .9s cubic-bezier(.2,1.25,.35,1) var(--d,0s) forwards}
@keyframes popIn{from{opacity:0;transform:translateY(22px) scale(.96)}to{opacity:1;transform:none}}
@keyframes popWord{0%{opacity:0;transform:translateY(40px) scale(.7) rotate(-3deg);filter:blur(8px)}100%{opacity:1;transform:none;filter:none}}
.abh-chips{position:absolute;right:max(24px,6vw);top:50%;transform:translateY(-50%);display:grid;gap:14px;z-index:1}
.chip{display:grid;padding:14px 20px;border-radius:16px;background:rgba(255,255,255,.92);box-shadow:0 20px 40px -20px rgba(0,0,0,.6);min-width:190px;opacity:0;animation:chipIn .8s cubic-bezier(.2,1.4,.4,1) forwards,chipFloat 5s ease-in-out infinite}
.chip b{font-size:1.5rem;color:var(--navy);line-height:1.1}.chip span{font-size:.8rem;color:var(--muted)}
.chip::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:4px;border-radius:0 4px 4px 0;background:var(--yellow)}
.chip{position:relative}
.chip.c1{animation-delay:1.4s,2.2s;margin-right:40px}.chip.c2{animation-delay:1.6s,2.6s}.chip.c3{animation-delay:1.8s,3s;margin-right:60px}
@keyframes chipIn{from{opacity:0;transform:translateX(60px) scale(.85)}to{opacity:1;transform:none}}
@keyframes chipFloat{50%{translate:0 -8px}}
.abh-scroll{position:absolute;left:50%;bottom:22px;width:26px;height:42px;border:2px solid rgba(255,255,255,.7);border-radius:14px;transform:translateX(-50%)}
.abh-scroll i{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--yellow);animation:scrl 1.6s ease-in-out infinite}
@keyframes scrl{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
@media (max-width:1000px){.abh-chips{display:none}}
@media (max-width:700px){.abh::before{background:linear-gradient(180deg,rgba(1,7,34,.8),rgba(1,7,34,.6))!important}.abh-scroll{display:none}}
.hs-pic.kb img{animation:kbz 18s ease-in-out infinite alternate}
@keyframes kbz{to{transform:scale(1.1) translate(-2%,-1%)}}
/* values loop */
.abv-loop{overflow:hidden;padding:6px 0 10px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.abv-track{display:flex;gap:16px;width:max-content;animation:lgScroll 30s linear infinite}
.abv-loop:hover .abv-track{animation-play-state:paused}
.abv-track>div{flex:none;width:210px;display:grid;justify-items:center;gap:10px;text-align:center;padding:24px 14px;border:1px solid var(--line);border-radius:18px;background:#fff;transition:transform .3s,border-color .3s,box-shadow .3s}
.abv-track>div:hover{transform:translateY(-4px);border-color:var(--yellow);box-shadow:0 18px 34px -24px rgba(1,7,34,.5)}
.abv-track svg{width:36px;height:36px;color:var(--gold)}.abv-track b{font-size:.92rem;color:var(--navy)}
.abv-track{--gap:16px}
@keyframes lgScroll{to{transform:translateX(calc(-50% - 8px))}}
/* final CTA with sunburst graphic */
.fcta2{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(120deg,#FDBF00 0%,#FFD34D 45%,#FDBF00 100%);background-size:200% 200%;animation:fcShift 12s ease-in-out infinite alternate;margin-top:clamp(20px,3vw,40px)}
@keyframes fcShift{to{background-position:100% 100%}}
.sunburst{position:absolute;right:-90px;top:50%;width:560px;height:560px;transform:translateY(-50%);z-index:-1;opacity:.55}
.sunburst .rays{fill:#fff;opacity:.55;transform-origin:center;animation:spin 60s linear infinite}
.sunburst circle{fill:#fff7d6}
.sunburst .halo{fill:none;stroke:#fff;stroke-width:2;transform-origin:center;transform-box:fill-box;animation:halo 3s ease-out infinite}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes halo{from{transform:scale(1);opacity:.9}to{transform:scale(2.4);opacity:0}}
.fc-grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(1,7,34,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(1,7,34,.05) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:linear-gradient(90deg,#000,transparent 60%);mask-image:linear-gradient(90deg,#000,transparent 60%)}
.fcta2-in{display:grid;grid-template-columns:1.3fr .8fr;gap:40px;align-items:center;padding-block:clamp(48px,6vw,80px)}
.fcta2 .eyebrow{color:var(--navy)}.fcta2 .eyebrow::before{background:var(--navy)}
.fcta2 h2{color:var(--navy);font-family:var(--f);font-weight:700;font-size:clamp(1.8rem,3.4vw,2.8rem);letter-spacing:-.02em;margin:12px 0 12px;max-width:18ch}
.fcta2 h2 span{position:relative;white-space:nowrap}
.fcta2 h2 span::after{content:"";position:absolute;left:0;right:0;bottom:.04em;height:.22em;background:#fff;opacity:.6;z-index:-1;transform-origin:left;animation:ul 1.4s 0.4s cubic-bezier(.2,.7,.2,1) both}
@keyframes ul{from{transform:scaleX(0)}}
.fcta2 p{color:#3A3110;font-size:1.04rem;max-width:46ch}
.fcta2 .fcta-btns{margin-top:24px}
.fc-panel{justify-self:end;width:min(320px,100%);padding:22px;border-radius:20px;background:rgba(1,7,34,.92);box-shadow:0 30px 60px -30px rgba(1,7,34,.8);transform:perspective(800px) rotateY(-10deg) rotateX(4deg);animation:fcFloat 6s ease-in-out infinite}
@keyframes fcFloat{50%{transform:perspective(800px) rotateY(-6deg) rotateX(2deg) translateY(-8px)}}
.pv-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.pv-row i{aspect-ratio:1.6;border-radius:4px;background:linear-gradient(135deg,#1B2E6E,#2F4FB0);position:relative;overflow:hidden}
.pv-row i::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);transform:translateX(-120%);animation:glint 3.6s ease-in-out infinite;animation-delay:calc(var(--i) * .12s)}
@keyframes glint{0%,40%{transform:translateX(-120%)}70%,100%{transform:translateX(120%)}}
.fc-stat{margin-top:16px;display:grid;color:#C9D0E6;font-size:.82rem}.fc-stat b{color:var(--yellow);font-size:1.6rem}
@media (max-width:860px){.fcta2-in{grid-template-columns:1fr}.fc-panel{justify-self:start;transform:none;animation:none}.sunburst{width:380px;height:380px;top:20%}}
@media (prefers-reduced-motion: reduce){.pop,.pw,.chip{animation:none!important;opacity:1}.abv-track,.sunburst .rays,.sunburst .halo,.pv-row i::after,.fc-panel,.fcta2,.hs-pic.kb img{animation:none!important}}
.abh-bg{z-index:-2!important}.abh::before{z-index:-1}

/* ---- Leadership page ---- */
.lh{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(480px,44vw,600px);display:grid;align-items:center}
.lh-bg{position:absolute;inset:0;z-index:-2}.lh-bg video{width:100%;height:100%;object-fit:cover}
.lh::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(1,7,34,.9) 0%,rgba(1,7,34,.7) 45%,rgba(1,7,34,.35) 100%)}
.lh-in{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:center;padding-block:clamp(40px,5vw,64px)}
.lh .crumbs a,.lh .crumbs span{color:#C9D0E6}
.lh .eyebrow{color:var(--yellow);margin-top:14px}
.lh h1{color:#fff;font-family:var(--serif);font-weight:700;font-size:clamp(2.2rem,4.2vw,3.6rem);line-height:1.08;margin:14px 0 18px}
.lh h1 .gold{color:var(--yellow)}
.lh p{color:#DDE2F0;font-size:1.05rem;max-width:44ch}
.lh-faces{position:relative;height:clamp(300px,30vw,400px)}
.lf{position:absolute;margin:0;width:56%;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 30px 60px -25px rgba(0,0,0,.7);opacity:0;animation:lfIn 1s cubic-bezier(.2,1.2,.35,1) forwards,chipFloat 6s ease-in-out infinite}
.lf img{width:100%;aspect-ratio:4/4.4;object-fit:cover;display:block}
.lf figcaption{padding:12px 16px;font-size:.78rem;color:var(--muted);border-top:4px solid var(--yellow)}.lf b{display:block;font-size:1rem;color:var(--navy)}
.lf.f1{left:0;top:0;animation-delay:1s,2s}.lf.f2{right:0;bottom:-10px;animation-delay:1.3s,2.6s}
@keyframes lfIn{from{opacity:0;transform:translateY(60px) rotate(3deg) scale(.9)}to{opacity:1;transform:none}}
@media (max-width:900px){.lh-in{grid-template-columns:1fr}.lh-faces{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:14px}.lf{position:static;width:auto}.lf img{aspect-ratio:1}}
.lh-intro{position:relative;text-align:center;overflow:hidden;padding-bottom:clamp(30px,4vw,50px)}
.lh-intro::before,.lh-intro::after{content:"";position:absolute;left:50%;top:40px;border:1px solid var(--line);border-radius:50%;transform:translateX(-50%);z-index:-1}
.lh-intro::before{width:min(1100px,140vw);height:1100px}.lh-intro::after{width:min(800px,110vw);height:800px;top:90px}
.lh-intro h2{font-size:clamp(1.8rem,3.2vw,2.6rem)}.lh-intro p{max-width:62ch;margin:14px auto 0;color:var(--muted);font-size:1.02rem}
.lmsg{display:grid;grid-template-columns:1.1fr 1fr;border-radius:24px;overflow:hidden;background:linear-gradient(90deg,#FFF6DA 0%,#FFF9EA 55%,#fff 100%);border:1px solid #F3E2AE}
.lmsg-tx{padding:clamp(28px,4vw,48px)}.lmsg-tx h2{margin:12px 0 18px}
.lmsg blockquote{margin:0;position:relative;padding-left:56px}
.lmsg .qm{position:absolute;left:0;top:-14px;font:700 5rem/1 var(--serif);color:var(--yellow)}
.lmsg blockquote p{font-size:1.08rem;color:var(--ink);line-height:1.7}
.lmsg cite{display:block;font-style:normal;font-weight:600;color:var(--navy);margin-top:16px;padding-top:12px;position:relative}
.lmsg cite::before{content:"";position:absolute;left:0;top:0;width:30px;height:3px;background:var(--yellow)}
.lmsg-im{position:relative;min-height:280px}.lmsg-im img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent,#000 35%);mask-image:linear-gradient(90deg,transparent,#000 35%)}
@media (max-width:860px){.lmsg{grid-template-columns:1fr}.lmsg-im{min-height:200px}.lmsg-im img{-webkit-mask-image:linear-gradient(180deg,transparent,#000 35%);mask-image:linear-gradient(180deg,transparent,#000 35%)}}
.ldirs{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.ldirs article{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 22px 46px -34px rgba(1,7,34,.5);transition:transform .3s,box-shadow .3s}
.ldirs article:hover{transform:translateY(-5px);box-shadow:0 30px 56px -34px rgba(1,7,34,.55)}
.ldirs .ph{margin:16px 16px 0;border-radius:14px;overflow:hidden;aspect-ratio:16/10}.ldirs .ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.ldirs article:hover .ph img{transform:scale(1.05)}
.ldirs .bd{padding:22px 26px 28px}.ldirs h3{font-family:var(--serif);font-size:1.6rem}
.ldirs .rl{display:block;color:#3B5BA8;font-weight:500;margin-top:6px}.ldirs .rl i{font-style:normal;color:var(--line);margin:0 6px}
.ldirs em{display:block;width:34px;height:3px;background:var(--yellow);margin:14px 0}
.ldirs p{color:var(--muted)}
@media (max-width:860px){.ldirs{grid-template-columns:1fr}}
.lpr{background:var(--navy);border-radius:22px;padding:clamp(26px,4vw,42px);position:relative;overflow:hidden}
.lpr::after{content:"";position:absolute;right:-120px;bottom:-160px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(253,191,0,.18),transparent 65%)}
.lpr .eyebrow{color:var(--yellow)}
.lpr-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:26px;position:relative;z-index:1}
.lpr-g>div{display:grid;justify-items:center;text-align:center;gap:8px;padding:6px 18px}
.lpr-g>div+div{border-left:1px solid rgba(255,255,255,.15)}
.lpr-g svg{width:44px;height:44px;color:var(--yellow);margin-bottom:6px;transition:transform .4s}
.lpr-g>div:hover svg{transform:translateY(-4px) scale(1.08)}
.lpr-g b{color:#fff;font-size:1.02rem}.lpr-g span{color:#C9D0E6;font-size:.88rem}
@media (max-width:860px){.lpr-g{grid-template-columns:1fr 1fr;row-gap:26px}.lpr-g>div:nth-child(3){border-left:0}}
.lcta{padding-bottom:clamp(40px,5vw,64px)}
.lcta-in{position:relative;border-radius:24px;overflow:hidden;background:var(--yellow);display:grid;grid-template-columns:1.1fr 1fr;min-height:280px;isolation:isolate}
.lcta-tx{padding:clamp(28px,4vw,48px);position:relative;z-index:1}
.lcta-tx h2{font-family:var(--serif);color:var(--navy);font-size:clamp(1.7rem,3vw,2.5rem);max-width:16ch}
.lcta-tx p{color:#3A3110;margin:10px 0 22px;max-width:42ch}
.lcta-im{position:absolute;inset:0 0 0 40%;z-index:-1}.lcta-im img{width:100%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%);mask-image:linear-gradient(90deg,transparent,#000 40%);animation:kbz 20s ease-in-out infinite alternate}
@media (max-width:860px){.lcta-in{grid-template-columns:1fr}.lcta-im{inset:55% 0 0 0;opacity:.5}}
.lh-faces{height:auto!important;display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.lf{position:relative!important;width:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important}
.lf.f2{margin-top:44px}
.lf img{aspect-ratio:1/1.05}
@media (max-width:900px){.lf.f2{margin-top:0}}

/* ===== v4 tracker fixes ===== */
/* header: calculator button + alignment */
.hdr .wrap{max-width:1440px}
.hcalc{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 16px 0 20px;border:1.5px solid #D6DCE8;border-radius:999px;font:500 .9rem var(--f);color:#1A2340;text-decoration:none;background:#fff;white-space:nowrap;transition:border-color .2s}
.hcalc svg{width:20px;height:20px;color:var(--navy)}.hcalc:hover{border-color:var(--navy)}
.nav>li>button{font-size:.92rem;padding:10px 10px}
@media (max-width:1500px){.hcalc span{display:none}.hcalc{width:46px;padding:0;justify-content:center}}
@media (max-width:1360px){.nav>li>button{padding:10px 7px;font-size:.88rem}}
@media (max-width:1279px){.hcalc{display:none}}
.wdd .wdd2{min-width:270px}
/* client logos uniform */
.lgtrack .lg{width:200px;height:112px;padding:18px 22px}
.lgtrack .lg img{max-width:100%;max-height:64px;object-fit:contain}
.lgtrack .lg.sm img{max-height:44px;max-width:76%}
@media (max-width:560px){.lgtrack .lg{width:150px;height:90px;padding:14px}.lgtrack .lg img{max-height:48px}.lgtrack .lg.sm img{max-height:34px}}
/* journey slider alignment: everything starts on the same left edge */
.jt-head,.jt-stage{max-width:none;margin-left:0;margin-right:0;padding-left:0}
.jt-stage{grid-template-columns:auto minmax(0,1fr)}
.jt-slide{grid-template-columns:300px minmax(0,1fr)}
.jt-head{margin-bottom:30px}
@media (max-width:900px){.jt-slide{grid-template-columns:200px minmax(0,1fr)}}
@media (max-width:640px){.jt-slide{grid-template-columns:1fr}}
/* About hero v4 (light, aligned to page grid) */
.abh2{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(420px,40vw,560px);display:flex;align-items:center}
.abh2-bg{position:absolute;inset:0;z-index:-2}.abh2-bg video{width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.abh2::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(246,249,253,.98) 0%,rgba(246,249,253,.93) 34%,rgba(246,249,253,.55) 52%,rgba(246,249,253,0) 72%)}
.abh2-in{width:100%;padding-block:clamp(40px,5vw,70px)}
.abh2 h1{font-family:var(--serif);font-weight:700;font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.04;color:var(--navy);margin:18px 0 16px}
.abh2 h1 .gold{color:#E3A100}
.abh2 p{font-size:clamp(1rem,1.4vw,1.2rem);color:#3B4565;max-width:36ch}
.abh2 .abh-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
@media (max-width:760px){.abh2::before{background:linear-gradient(180deg,rgba(246,249,253,.96),rgba(246,249,253,.82) 70%,rgba(246,249,253,.6))}}
/* Who we are */
.abw-in{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(30px,5vw,70px);align-items:center}
.abw h2{margin:12px 0 16px;font-size:clamp(1.8rem,3vw,2.5rem)}
.abw h2 .gold{color:#C08A0A}
.lead2{font-size:1.06rem;color:#4A5370;line-height:1.75}
.abw-caps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:26px}
.abw-caps>div{display:grid;gap:6px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;transition:transform .25s,border-color .25s,box-shadow .25s}
.abw-caps>div:hover{transform:translateY(-3px);border-color:var(--yellow);box-shadow:0 18px 34px -26px rgba(1,7,34,.45)}
.abw-caps span{width:42px;height:42px;border-radius:12px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center;margin-bottom:4px}
.abw-caps svg{width:21px;height:21px}.abw-caps b{color:var(--navy);font-size:.96rem}.abw-caps small{color:var(--muted);font-size:.8rem;line-height:1.45}
.abw-pic{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/3.4;box-shadow:0 30px 60px -34px rgba(1,7,34,.5)}
.abw-pic img{width:100%;height:100%;object-fit:cover;animation:kbz 18s ease-in-out infinite alternate}
.abw-badge{position:absolute;left:18px;bottom:18px;background:var(--navy);color:#fff;border-radius:14px;padding:12px 18px;display:grid;line-height:1.2}
.abw-badge b{color:var(--yellow);font-size:1.5rem}.abw-badge span{font-size:.8rem;color:#C9D0E6}
@media (max-width:900px){.abw-in{grid-template-columns:1fr}}
@media (max-width:560px){.abw-caps{grid-template-columns:1fr}}
/* About stats row (same style as homepage hero stats) */
.abstat{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px 8px;box-shadow:0 18px 44px -30px rgba(1,7,34,.45)}
.abstat>div{display:flex;align-items:center;gap:14px;padding:6px 24px;min-width:0}
.abstat>div+div{border-left:1px solid rgba(1,7,34,.12)}
.abstat svg{width:40px;height:40px;color:#E3A100;flex:none}
.abstat p{margin:0;font-size:.85rem;color:var(--muted);line-height:1.3}
.abstat b{display:block;font-size:1.6rem;font-weight:600;color:var(--navy);line-height:1.15;font-variant-numeric:tabular-nums}.abstat b span{display:inline}
@media (max-width:1000px){.abstat{grid-template-columns:1fr 1fr;row-gap:16px}.abstat>div:nth-child(3){border-left:0}.abstat b{font-size:1.3rem}.abstat svg{width:32px;height:32px}.abstat>div{padding:6px 14px}}
/* Vision & mission v4 */
.vm2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.vm2 article{position:relative;overflow:hidden;border-radius:24px;padding:clamp(26px,3.5vw,40px);display:grid;gap:10px;align-content:start;min-height:250px}
.vm2 .v{background:var(--navy);color:#fff}.vm2 .m{background:#fff;border:1.5px solid #F2D27A}
.vm2 .v::after,.vm2 .m::after{content:"";position:absolute;right:-60px;bottom:-60px;width:200px;height:200px;border-radius:50%}
.vm2 .v::after{background:radial-gradient(circle,rgba(253,191,0,.22),transparent 65%)}.vm2 .m::after{background:radial-gradient(circle,rgba(253,191,0,.25),transparent 65%)}
.vm2 .ic{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;margin-bottom:6px}
.vm2 .v .ic{background:rgba(253,191,0,.16);color:var(--yellow)}.vm2 .m .ic{background:var(--yellow);color:var(--navy)}
.vm2 .ic svg{width:28px;height:28px}
.vm2 small{font-size:.78rem;font-weight:600;letter-spacing:2px;text-transform:uppercase}.vm2 .v small{color:var(--yellow)}.vm2 .m small{color:var(--yellow-ink)}
.vm2 p{font-size:1.1rem;line-height:1.65;font-weight:400}.vm2 .v p{color:#E6EAF5}.vm2 .m p{color:var(--ink)}
@media (max-width:860px){.vm2{grid-template-columns:1fr}}
/* Group companies v4 */
.grp .head p{margin-inline:auto}
.grp-chain{display:flex;align-items:center;justify-content:center;gap:12px;margin:-10px 0 30px;flex-wrap:wrap}
.grp-chain span{font-size:.78rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--yellow-ink);background:var(--yellow-soft);padding:7px 14px;border-radius:999px}
.grp-chain i{width:34px;height:2px;background:var(--yellow);position:relative}.grp-chain i::after{content:"";position:absolute;right:-1px;top:-4px;border:5px solid transparent;border-left-color:var(--yellow);border-right:0}
.grp3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.gc{display:grid;grid-template-rows:auto auto 1fr;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff;text-decoration:none;transition:transform .3s,box-shadow .3s}
.gc:hover{transform:translateY(-5px);box-shadow:0 28px 50px -32px rgba(1,7,34,.5)}
.gm{aspect-ratio:16/10;overflow:hidden;background:var(--navy);position:relative}
.gm img,.gm video{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s}
.gc:hover .gm img{transform:scale(1.05)}
.gl{height:96px;display:grid;place-items:center;border-bottom:1px solid var(--line);padding:14px 24px}
.gl img{max-height:62px;max-width:78%;object-fit:contain}
.gb{padding:20px 24px 24px;display:grid;gap:10px;align-content:start}
.gb .tag{font-size:.72rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--yellow-ink)}
.gb p{color:var(--muted);font-size:.92rem}
.gb .go{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.88rem;color:var(--navy);border-bottom:2px solid var(--yellow);justify-self:start;padding-bottom:2px}.gb .go svg{width:14px;height:14px}
.cellart{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;padding:16px;background:linear-gradient(135deg,#0B1640,#1B2E6E)}
.cellart i{border-radius:3px;background:linear-gradient(135deg,#1E3A8A,#2F4FB0);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.cellart i::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(255,255,255,.25)}
.cellart i::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.5) 50%,transparent 65%);transform:translateX(-120%);animation:glint 4s ease-in-out infinite}
.cellart i:nth-child(6n+2)::after{animation-delay:.2s}.cellart i:nth-child(6n+3)::after{animation-delay:.4s}.cellart i:nth-child(6n+4)::after{animation-delay:.6s}.cellart i:nth-child(6n+5)::after{animation-delay:.8s}.cellart i:nth-child(6n)::after{animation-delay:1s}
.cellart b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--yellow);color:var(--navy);font-size:.8rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:8px 16px;border-radius:999px;box-shadow:0 10px 24px -10px rgba(0,0,0,.6)}
@media (max-width:960px){.grp3{grid-template-columns:1fr}}
/* Sustainability v4 */
.abs2{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(30px,5vw,64px);align-items:center}
.abs2 .hs-pic{aspect-ratio:4/3.2}
.abs2-t{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.abs2-t>div{display:grid;gap:6px;padding:18px 14px;border:1px solid var(--line);border-radius:16px;background:#fff}
.abs2-t svg{width:28px;height:28px;color:#2F9A5B}.abs2-t b{font-size:1.05rem;color:var(--navy)}.abs2-t span{font-size:.78rem;color:var(--muted);line-height:1.35}
@media (max-width:900px){.abs2{grid-template-columns:1fr}}
@media (max-width:480px){.abs2-t{grid-template-columns:1fr}}
/* Presence map v4 — static markers */
.pin circle{stroke:#fff;stroke-width:.006}
.pin.hq circle{fill:#010722}.pin.eo circle{fill:#FDBF00}.pin.mf circle{fill:#2F9A5B}
.pin .pl{display:none}
.abm-k i{border:2px solid #fff;box-shadow:0 0 0 1px var(--line)}
.abm-k .hq{background:#010722}.abm-k .eo{background:#FDBF00}.abm-k .mf{background:#2F9A5B}
.abm-cols{display:grid;gap:14px;margin-top:6px}
.abm-cols div{display:grid;gap:4px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff}
.abm-cols b{font-size:.86rem;color:var(--navy)}.abm-cols span{font-size:.86rem;color:var(--muted)}
.mlab{transform:translate(9px,-50%);font-size:.72rem}
.mlab.l{transform:translate(calc(-100% - 9px),-50%)}
/* Sustainability page impact */
.imp4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.imp4>div{display:grid;gap:8px;justify-items:start;padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 16px 36px -28px rgba(1,7,34,.4)}
.imp4 .si{width:52px;height:52px;border-radius:14px;background:var(--yellow-soft);color:var(--gold);display:grid;place-items:center;margin-bottom:4px}.imp4 .si svg{width:26px;height:26px}
.imp4 b{font-size:1.6rem;font-weight:600;color:var(--navy);line-height:1.15}.imp4 span{font-size:.88rem;color:var(--muted)}
@media (max-width:1000px){.imp4{grid-template-columns:1fr 1fr}}@media (max-width:480px){.imp4{grid-template-columns:1fr}}
/* Structures showcase + contact */
.stshow-g{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}
.stv{border-radius:22px;overflow:hidden;background:#000;aspect-ratio:16/9;box-shadow:0 30px 60px -34px rgba(1,7,34,.6)}.stv video{width:100%;height:100%;display:block}
.stside{display:grid;gap:16px;grid-template-rows:1fr auto}
.stloop{position:relative;border-radius:22px;overflow:hidden;min-height:200px}.stloop video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.stloop .vtag{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;gap:8px;background:rgba(1,7,34,.72);color:#fff;font-size:.78rem;padding:7px 12px;border-radius:999px}
.stloop .vtag i{width:8px;height:8px;border-radius:50%;background:var(--yellow)}
.stproc{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.stproc div{display:grid;gap:2px;padding:10px;border-radius:12px;background:var(--soft);text-align:center}
.stproc b{font:600 .78rem var(--mono);color:var(--yellow-ink)}.stproc span{font-size:.74rem;color:var(--navy);line-height:1.25}
@media (max-width:900px){.stshow-g{grid-template-columns:1fr}.stproc{grid-template-columns:repeat(3,1fr)}}
.stc{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px;align-items:center}
.stc h2{margin-top:10px;font-size:clamp(1.4rem,2.2vw,1.8rem)}
.stc-i{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:#fff;text-decoration:none;transition:border-color .2s,transform .2s}
.stc-i:hover{border-color:var(--navy);transform:translateY(-2px)}
.stc-i .i{width:46px;height:46px;border-radius:12px;background:var(--yellow);color:var(--navy);display:grid;place-items:center;flex:none}.stc-i .i svg{width:22px;height:22px}
.stc-i small{display:block;font-size:.76rem;color:var(--muted)}.stc-i b{color:var(--navy);font-size:1rem;word-break:break-word}
@media (max-width:860px){.stc{grid-template-columns:1fr}}
/* Maxim coming soon */
.mx-hero{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(1200px 600px at 50% 0%,#14235A,#010722 70%);color:#fff;min-height:clamp(560px,60vw,720px);display:flex;align-items:center;text-align:center}
.mx-cells{position:absolute;inset:auto -5% -10% -5%;height:58%;z-index:-1;display:grid;grid-template-columns:repeat(15,1fr);gap:6px;transform:perspective(900px) rotateX(58deg);transform-origin:bottom;opacity:.75;-webkit-mask-image:linear-gradient(180deg,transparent,#000 40%);mask-image:linear-gradient(180deg,transparent,#000 40%)}
.mx-cells i{border-radius:4px;background:linear-gradient(135deg,#1E3A8A,#2F4FB0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);position:relative;overflow:hidden}
.mx-cells i::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(253,191,0,.55) 50%,transparent 65%);transform:translateX(-120%);animation:glint 5s ease-in-out infinite;animation-delay:calc(var(--k) * .05s)}
.mx-in{width:100%;display:grid;justify-items:center;padding-block:60px}
.mx-in .crumbs a,.mx-in .crumbs span{color:#AEB7D1}
.mx-logo{background:#fff;border-radius:22px;padding:18px 30px;margin-top:22px;box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}.mx-logo img{height:120px;width:auto}
.mx-hero h1{font-family:var(--f);font-weight:700;font-size:clamp(2.3rem,5vw,4.2rem);letter-spacing:-.02em;margin:28px 0 12px;color:#fff}.mx-hero h1 .gold{color:var(--yellow)}
.mx-soon span{display:inline-block;font-size:clamp(1rem,1.8vw,1.35rem);font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:var(--navy);background:var(--yellow);padding:12px 26px;border-radius:999px;box-shadow:0 0 0 0 rgba(253,191,0,.5);animation:soonP 2.4s ease-out 2s infinite}
@keyframes soonP{0%{box-shadow:0 0 0 0 rgba(253,191,0,.5)}100%{box-shadow:0 0 0 22px rgba(253,191,0,0)}}
.mx-sub{color:#C9D0E6;margin:18px auto 26px;max-width:46ch}
.mx-hero .hb-line{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.35)}
@media (max-width:560px){.mx-logo img{height:84px}.mx-cells{grid-template-columns:repeat(9,1fr)}}
/* Calculator v2 */
.cx{position:relative;overflow:hidden;isolation:isolate;padding-block:clamp(40px,5vw,64px) clamp(56px,6vw,90px)}
.cx-rings i{position:absolute;left:50%;top:-120px;border:1px solid #F2DFA4;border-radius:50%;transform:translateX(-50%);z-index:-1}
.cx-rings i:first-child{width:900px;height:900px}.cx-rings i:last-child{width:640px;height:640px;top:-10px}
.cx-in{text-align:center}
.cx .crumbs{justify-content:center;display:flex}
.cx h1{font-family:var(--f);font-weight:500;font-size:clamp(2rem,3.6vw,2.9rem);color:var(--navy);margin-top:10px}
.cx-lead{color:var(--muted);margin-top:8px}
.cx h2{font-family:var(--f);font-weight:500;font-size:clamp(1.3rem,2.2vw,1.7rem);margin:46px 0 22px;color:var(--navy)}
.cx-step{animation:cxIn .6s cubic-bezier(.2,.7,.2,1) both}
@keyframes cxIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.cx-props{display:grid;grid-template-columns:repeat(3,minmax(0,260px));justify-content:center;gap:22px}
.cx-prop{display:grid;gap:4px;padding:16px 16px 0;border:0;border-radius:18px;background:linear-gradient(135deg,#FFF6D8,#EAF1FA);cursor:pointer;font:500 1.05rem var(--f);color:var(--navy);transition:transform .3s,box-shadow .3s;overflow:hidden}
.cx-prop svg{width:100%;height:auto;display:block;transition:transform .5s}
.cx-prop:hover{transform:translateY(-6px);box-shadow:0 24px 44px -26px rgba(1,7,34,.5)}.cx-prop:hover svg{transform:scale(1.05)}
.cx-prop .smk circle{animation:smk 4s ease-in-out infinite}
@keyframes smk{50%{transform:translateY(-6px);opacity:.6}}
.cx-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:0;text-align:left;align-items:stretch;max-width:1080px;margin:0 auto}
.cx-left{display:grid;grid-template-rows:auto 1fr;gap:10px}
.cx-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end;background:#fff;border-radius:16px;padding:20px;box-shadow:0 22px 50px -28px rgba(1,7,34,.45);position:relative;z-index:1;margin-right:-30px}
.cx-card label{display:grid;gap:6px;font-size:.78rem;font-weight:600;color:var(--navy)}
.cx-card select,.cx-in2 input{height:44px;border:1.5px solid var(--line);border-radius:10px;padding:0 12px;font:400 .92rem var(--f);color:var(--ink);background:#fff;width:100%;min-width:0}
.cx-in2{display:flex;border:1.5px solid var(--line);border-radius:10px;overflow:hidden}.cx-in2 input{border:0;border-radius:0}
.cx-in2 em{display:grid;place-items:center;padding:0 12px;font-style:normal;font-size:.8rem;font-weight:600;background:var(--yellow);color:var(--navy)}
.cx-go{grid-column:1/-1;justify-self:center;display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 22px;border:0;border-radius:999px;background:var(--navy);color:#fff;font:600 .9rem var(--f);cursor:pointer;transition:transform .2s,background .2s}
.cx-go svg{width:16px;height:16px;color:var(--yellow)}.cx-go:hover{transform:translateY(-2px);background:var(--navy-3)}
.cx-err{grid-column:1/-1;color:var(--red);font-size:.84rem;text-align:center}
.cx-art svg{width:100%;height:auto;max-height:340px}
.cx-res{background:linear-gradient(160deg,#EAF2FB,#FFF4D2);border-radius:18px;padding:24px 24px 0 46px;display:grid;grid-template-rows:auto auto auto 1fr auto;gap:12px}
.cx-res h3{font-family:var(--f);font-weight:500;color:var(--navy);text-align:center;font-size:1.15rem}
.cx-kpis{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cx-kpis div{display:grid;gap:6px}.cx-kpis small{font-size:.76rem;font-weight:600;color:var(--navy)}
.cx-kpis b{height:44px;display:flex;align-items:center;padding:0 12px;border:1.5px solid #C9D3E6;border-radius:10px;background:rgba(255,255,255,.75);font-weight:600;color:var(--navy);font-variant-numeric:tabular-nums}
.cx-kpis b.pop2{animation:pop2 .6s cubic-bezier(.2,1.4,.4,1)}
@keyframes pop2{0%{transform:scale(.92);border-color:var(--yellow)}100%{transform:none}}
.cx-note{font-size:.82rem;color:#4A5370;text-align:center}
.cx-scene svg{width:100%;height:auto;display:block}
.cx-house{animation:chipFloat 6s ease-in-out infinite}
.cx-quote{justify-self:center;display:inline-flex;align-items:center;gap:8px;margin:-6px 0 18px;height:44px;padding:0 22px;border-radius:999px;background:var(--yellow);color:var(--navy);font-weight:600;font-size:.9rem;text-decoration:none}.cx-quote svg{width:16px;height:16px}
.cx-back{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 20px;border-radius:999px;border:1.5px solid var(--navy);background:#fff;color:var(--navy);font:600 .88rem var(--f);cursor:pointer}.cx-back svg{width:15px;height:15px}
@media (max-width:900px){.cx-grid{grid-template-columns:1fr;gap:16px}.cx-card{margin-right:0;grid-template-columns:1fr}.cx-res{padding:22px}.cx-art{display:none}.cx-props{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
@media (max-width:560px){.cx-props{grid-template-columns:1fr;max-width:300px;margin:0 auto}.cx-kpis{grid-template-columns:1fr}}
.cx-in2 em{white-space:nowrap}

/* ===== People: Life at Samvik + Careers ===== */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lp-hero{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(460px,42vw,580px);display:flex;align-items:center;background:var(--navy)}
.lp-mosaic{position:absolute;inset:-4%;z-index:-2;display:grid;grid-template-columns:repeat(9,1fr);gap:6px;transform:rotate(-4deg) scale(1.08);opacity:.55;animation:lpDrift 40s linear infinite alternate}
.lp-mosaic img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:8px;filter:grayscale(.25)}
@keyframes lpDrift{to{transform:rotate(-4deg) scale(1.08) translateX(-4%)}}
.lp-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(1,7,34,.95) 0%,rgba(1,7,34,.82) 45%,rgba(1,7,34,.55) 100%)}
.lp-hin{width:100%;padding-block:clamp(44px,5vw,70px)}
.lp-hero .crumbs a,.lp-hero .crumbs span{color:#C9D0E6}
.lp-hero .eyebrow{color:var(--yellow);margin-top:14px}
.lp-hero h1{font-family:var(--serif);font-weight:700;color:#fff;font-size:clamp(2.4rem,4.6vw,4rem);line-height:1.08;margin:14px 0 16px}
.lp-hero h1 .gold{color:var(--yellow)}
.lp-hero p{color:#DDE2F0;font-size:1.08rem;max-width:46ch;margin-bottom:26px}
@media (max-width:700px){.lp-mosaic{grid-template-columns:repeat(5,1fr)}}
.lp-grow{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,70px);align-items:center}
.lp-grow h2{margin:12px 0 14px}.lp-grow p{color:var(--muted);font-size:1.04rem;line-height:1.75}
.lp-comp{position:relative;display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;align-items:start}
.lp-comp img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:18px;box-shadow:0 24px 44px -28px rgba(1,7,34,.55)}
.lp-comp img:nth-child(2){margin-top:44px}.lp-comp img:nth-child(3){margin-top:14px}
.lp-dot{position:absolute;right:-18px;bottom:-18px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(253,191,0,.35),transparent 70%);z-index:-1}
@media (max-width:900px){.lp-grow{grid-template-columns:1fr}}
.pcar{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px}
.car-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 3*20px)/4);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 10px;outline-offset:6px}
.car-track::-webkit-scrollbar{display:none}
.car-track figure{margin:0;scroll-snap-align:start;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 16px 36px -28px rgba(1,7,34,.5)}
.car-track figure img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;transition:transform .6s}
.car-track figure:hover img{transform:scale(1.04)}
.car-track figcaption{padding:12px 14px;font-size:.82rem;color:var(--muted);border-top:3px solid var(--yellow)}.car-track figcaption b{display:block;color:var(--navy)}
.car-btn,.tst-btn{width:48px;height:48px;border-radius:50%;border:1.5px solid #D6DCE8;background:#fff;color:var(--navy);display:grid;place-items:center;cursor:pointer;transition:border-color .2s,background .2s}
.car-btn:hover,.tst-btn:hover{background:var(--yellow);border-color:var(--yellow)}
.car-btn svg,.tst-btn svg{width:17px;height:17px}
.car-btn:disabled{opacity:.35;cursor:default;background:#fff;border-color:#D6DCE8}
@media (max-width:1000px){.car-track{grid-auto-columns:calc((100% - 2*16px)/3);gap:16px}}
@media (max-width:640px){.pcar{grid-template-columns:1fr}.car-btn{display:none}.car-track{grid-auto-columns:72%}}
.car-track.hr{grid-auto-columns:calc((100% - 2*20px)/3)}
.hrc{scroll-snap-align:start;border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--line)}.hrc img{width:100%;aspect-ratio:16/10;object-fit:cover}.hrc div{padding:16px 18px}.hrc p{font-size:.88rem;color:var(--muted)}.hrc small{color:var(--yellow-ink)}
.lp-tst{position:relative;overflow:hidden}
.lp-tst::before{content:"";position:absolute;left:-10%;right:-10%;top:52%;height:2px;background:linear-gradient(90deg,transparent,#F2DFA4,transparent);z-index:-1}
.tst{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;max-width:980px;margin:0 auto}
.tst-stage{outline-offset:8px}
.tst-slide{display:grid;grid-template-columns:240px 1fr;gap:clamp(22px,4vw,48px);align-items:center;background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 26px 54px -36px rgba(1,7,34,.5);animation:cxIn .5s cubic-bezier(.2,.7,.2,1) both}
.tst-ph img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:16px}
.tst-tx{position:relative;display:grid;gap:8px}
.tst-tx .qm{font:700 4.6rem/0.6 var(--serif);color:var(--yellow);height:34px}
.tst-q{font-size:1.15rem;color:var(--ink);line-height:1.65;margin-bottom:8px}
.tst-tx b{color:var(--navy);font-size:1.05rem}.tst-tx span{color:var(--muted);font-size:.88rem}
.tst-tx .ph{color:#9AA2BB;font-style:italic}
.phb{justify-self:start;font-style:normal;font-size:.72rem;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:#8A5A00;background:#FFF1C2;border:1px dashed #E3B53B;padding:5px 10px;border-radius:999px;margin-top:8px}
.tst-count{grid-column:1/-1;text-align:center;font:600 .82rem var(--mono);color:var(--muted)}
@media (max-width:760px){.tst{grid-template-columns:1fr 1fr}.tst-stage{grid-column:1/-1;grid-row:1}.tst-prev{justify-self:end}.tst-slide{grid-template-columns:1fr}.tst-ph img{max-width:220px;margin:0 auto}}
.lp-why{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(30px,5vw,64px);align-items:center}
.lp-why-pic{border-radius:24px;overflow:hidden;aspect-ratio:4/4.4;box-shadow:0 30px 60px -34px rgba(1,7,34,.5)}.lp-why-pic img{width:100%;height:100%;object-fit:cover}
.lp-why h2{margin-top:12px}
.lp-wc{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lp-wc div{display:grid;grid-template-columns:42px 1fr;column-gap:12px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}
.lp-wc span{grid-row:1/3;width:42px;height:42px;border-radius:12px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center}.lp-wc svg{width:21px;height:21px}
.lp-wc b{font-size:.92rem;color:var(--navy)}.lp-wc small{font-size:.8rem;color:var(--muted);line-height:1.45}
.lp-wc div:last-child{grid-column:1/-1}
@media (max-width:900px){.lp-why{grid-template-columns:1fr}.lp-why-pic{aspect-ratio:16/10}}
@media (max-width:520px){.lp-wc{grid-template-columns:1fr}}
.ps4{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;position:relative;counter-reset:none}
.ps4::before{content:"";position:absolute;left:6%;right:6%;top:62px;height:2px;background:linear-gradient(90deg,var(--yellow),#F2DFA4)}
.ps4 li{position:relative;text-align:center;display:grid;justify-items:center;gap:8px}
.ps4 .ring{position:relative;width:124px;height:124px;border-radius:50%;display:grid;place-content:center;background:#fff;box-shadow:inset 0 0 0 10px var(--yellow-soft),0 0 0 2px var(--yellow),0 18px 34px -20px rgba(1,7,34,.4);z-index:1;transition:transform .35s}
.ps4 li:hover .ring{transform:translateY(-4px)}
.ps4 .ring b{font-size:1.9rem;color:var(--navy);line-height:1}.ps4 .ring small{font-size:.74rem;color:var(--muted);letter-spacing:1px}
.ps4 h3{font-family:var(--f);font-size:1rem;color:var(--gold-2);margin-top:10px}.ps4 p{font-size:.86rem;color:var(--muted);max-width:28ch}
@media (max-width:860px){.ps4{grid-template-columns:1fr;gap:0}.ps4::before{left:41px;right:auto;top:20px;bottom:20px;width:2px;height:auto;background:var(--yellow)}
 .ps4 li{grid-template-columns:84px 1fr;text-align:left;justify-items:start;column-gap:18px;padding-bottom:22px}.ps4 .ring{grid-row:1/3;width:84px;height:84px;box-shadow:inset 0 0 0 7px var(--yellow-soft),0 0 0 2px var(--yellow)}.ps4 .ring b{font-size:1.4rem}.ps4 h3{margin-top:14px}}
.pcta{position:relative;overflow:hidden;background:var(--navy);color:#fff;text-align:center;padding-top:clamp(56px,7vw,90px)}
.pcta::before{content:"";position:absolute;left:50%;top:-40%;width:900px;height:900px;transform:translateX(-50%);border-radius:50%;border:1px solid rgba(253,191,0,.18);box-shadow:0 0 0 120px rgba(253,191,0,.03)}
.pcta-in{position:relative;display:grid;justify-items:center;gap:14px}
.pcta h2{color:#fff;font-family:var(--serif);font-size:clamp(1.8rem,3.4vw,2.8rem)}
.pcta p{color:#C9D0E6;max-width:52ch;margin-bottom:8px}
.pcta-in{grid-auto-flow:row}.pcta-in .hb-line.light{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.skyline{display:block;width:100%;height:auto;max-height:120px;color:var(--yellow);opacity:.55;margin-top:30px}
.cr-hero{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(420px,38vw,540px);display:flex;align-items:center}
.cr-bg{position:absolute;inset:0;z-index:-2}.cr-bg img{width:100%;height:100%;object-fit:cover;animation:kbz 22s ease-in-out infinite alternate}
.cr-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(1,7,34,.92),rgba(1,7,34,.7) 50%,rgba(1,7,34,.35))}
.cr-in{width:100%;padding-block:clamp(44px,5vw,70px)}
.cr-hero .crumbs a,.cr-hero .crumbs span{color:#C9D0E6}.cr-hero .eyebrow{color:var(--yellow);margin-top:14px}
.cr-hero h1{font-family:var(--serif);font-weight:700;color:#fff;font-size:clamp(2.3rem,4.4vw,3.8rem);line-height:1.08;margin:14px 0 16px}.cr-hero h1 .gold{color:var(--yellow)}
.cr-hero p{color:#DDE2F0;font-size:1.06rem;max-width:48ch;margin-bottom:26px}
.jf{display:grid;grid-template-columns:2fr repeat(4,1fr) auto;gap:10px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 18px 40px -32px rgba(1,7,34,.45);margin-bottom:24px}
.jf select,.jq{height:46px;border:1.5px solid var(--line);border-radius:12px;padding:0 12px;font:400 .9rem var(--f);background:#fff;color:var(--ink);width:100%;min-width:0}
.jq{display:flex;align-items:center;gap:8px}.jq svg{width:17px;height:17px;color:var(--muted);flex:none}.jq input{border:0;outline:0;font:inherit;width:100%;min-width:0;background:none}
.jreset{height:46px;padding:0 18px;border-radius:12px;border:1.5px solid var(--navy);background:#fff;color:var(--navy);font:600 .86rem var(--f);cursor:pointer}
@media (max-width:1000px){.jf{grid-template-columns:1fr 1fr}.jq{grid-column:1/-1}}
@media (max-width:520px){.jf{grid-template-columns:1fr}}
.jg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.jc{display:grid;gap:12px;align-content:start;padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 16px 36px -30px rgba(1,7,34,.5);transition:transform .25s,box-shadow .25s}
.jc:hover{transform:translateY(-3px);box-shadow:0 24px 44px -30px rgba(1,7,34,.55)}
.jc h3{font-family:var(--f);font-size:1.1rem}.jc p{font-size:.88rem;color:var(--muted)}
.jm{list-style:none;padding:12px 0;margin:0;display:flex;flex-wrap:wrap;gap:8px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.jm li{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--ink)}.jm svg{width:15px;height:15px;color:var(--gold)}
.jm.big{border:0;padding:6px 0 0}.jm.big li{font-size:.92rem}
.jb{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.jb .hb-line{height:46px}
@media (max-width:1000px){.jg{grid-template-columns:1fr 1fr}}@media (max-width:620px){.jg{grid-template-columns:1fr}}
.jempty{display:grid;justify-items:center;gap:8px;text-align:center;padding:40px 20px;border:1.5px dashed #E1D3A2;border-radius:22px;background:#FFFCF2}
.jempty b{font-size:1.4rem;color:var(--navy)}.jempty span{color:var(--muted)}
.jempty .ji{width:64px;height:64px;border-radius:18px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center;margin-bottom:6px}.jempty .ji svg{width:30px;height:30px}
.jd{display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:start}
.jd-side{position:sticky;top:110px;display:grid;gap:12px;padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 18px 40px -32px rgba(1,7,34,.5)}
.jd-side b{color:var(--navy);font-size:1.1rem}.jd-side span{color:var(--muted);font-size:.88rem}.jd-side .hb-line,.jd-side .hb-gold{justify-content:center}
@media (max-width:900px){.jd{grid-template-columns:1fr}.jd-side{position:static}}
.amodal{position:fixed;inset:0;z-index:220;background:rgba(1,7,34,.65);backdrop-filter:blur(4px);display:grid;place-items:center;padding:16px;overflow:auto}
.amodal[hidden]{display:none}
.abox{position:relative;width:min(760px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:22px;padding:clamp(22px,3vw,34px);box-shadow:0 40px 90px -30px #000}
.abox h2{font-family:var(--f);font-size:1.4rem;margin:0 50px 18px 0}
.aform{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.aform label{display:grid;gap:6px;font-size:.82rem;font-weight:600;color:var(--navy)}
.aform label small{font-weight:400;color:var(--muted)}
.aform input:not([type=checkbox]),.aform select,.aform textarea{border:1.5px solid var(--line);border-radius:10px;padding:11px 12px;font:400 .92rem var(--f);color:var(--ink);background:#fff;width:100%;min-width:0}
.aform input[readonly]{background:var(--soft);font-weight:600}
.aform .full,.aform .full-btn{grid-column:1/-1}
.aform .chk{display:flex;gap:10px;align-items:flex-start;font-weight:400;color:var(--ink)}.aform .chk input{margin-top:3px;width:18px;height:18px;flex:none}
.aform [aria-invalid=true]{border-color:var(--red)!important}
.aerr{color:var(--red);font-size:.86rem}
.full-btn{justify-self:start;border:0;cursor:pointer}
.astate{display:grid;gap:8px;padding:20px;border-radius:16px;background:var(--soft);text-align:center}.astate b{color:var(--navy);font-size:1.1rem}.astate.ok{background:#E8F6EE}.astate.ok b{color:#1E7A4A}
@media (max-width:600px){.aform{grid-template-columns:1fr}}

/* ===== v5 corrections ===== */
/* About: clean-energy CTA */
.ccta{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#fff 0%,#F7F9FC 100%);text-align:center;padding-top:clamp(70px,9vw,120px)}
.ccta-rings i{position:absolute;left:50%;top:clamp(30px,4vw,60px);border:1px solid #EBDDAF;border-radius:50%;transform:translateX(-50%);z-index:-1}
.ccta-rings i:nth-child(1){width:min(1100px,150vw);height:min(1100px,150vw)}
.ccta-rings i:nth-child(2){width:min(820px,115vw);height:min(820px,115vw);top:clamp(90px,10vw,140px);border-color:#E3E8F2}
.ccta-rings i:nth-child(3){width:min(560px,85vw);height:min(560px,85vw);top:clamp(150px,15vw,220px);border-color:#F2E6C2}
.ccta-in{display:grid;justify-items:center;gap:12px}
.ccta h2{font-family:var(--f);font-weight:500;font-size:clamp(1.9rem,3.6vw,3rem);letter-spacing:-.02em;color:var(--navy);max-width:20ch}
.ccta p{font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:600;color:#3B4565}
.ccta-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:18px}
.ccta-btns a{min-width:180px;justify-content:center}
.ccta-art{display:block;width:100%;height:auto;max-height:130px;color:#C9A43A;margin-top:clamp(40px,5vw,64px)}
@media (max-width:520px){.ccta-btns{display:grid;width:100%;max-width:320px}.ccta-btns a{width:100%}}
/* Life hero (photo, no collage) */
.lp-hero2{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(440px,40vw,560px);display:flex;align-items:center}
.lp-bg{position:absolute;inset:0;z-index:-2}.lp-bg img{width:100%;height:100%;object-fit:cover;animation:kbz 24s ease-in-out infinite alternate}
.lp-hero2::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(1,7,34,.93) 0%,rgba(1,7,34,.75) 48%,rgba(1,7,34,.35) 100%)}
.lp-hero2 .crumbs a,.lp-hero2 .crumbs span{color:#C9D0E6}.lp-hero2 .eyebrow{color:var(--yellow);margin-top:14px}
.lp-hero2 h1{font-family:var(--serif);font-weight:700;color:#fff;font-size:clamp(2.4rem,4.6vw,4rem);line-height:1.08;margin:14px 0 16px}.lp-hero2 h1 .gold{color:var(--yellow)}
.lp-hero2 p{color:#DDE2F0;font-size:1.08rem;max-width:46ch;margin-bottom:26px}
.lp-vis{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 30px 60px -34px rgba(1,7,34,.5)}
.lp-vis img{width:100%;height:100%;object-fit:cover}
.lp-tag{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--navy);font-size:.8rem;font-weight:600;padding:9px 14px;border-radius:999px;box-shadow:0 10px 24px -14px rgba(1,7,34,.6)}
.lp-tag svg{width:16px;height:16px;color:var(--gold)}
/* compact testimonial cards */
.tcar .car-track{grid-auto-columns:calc((100% - 3*20px)/4)}
.tcard{scroll-snap-align:start;display:grid;gap:14px;align-content:start;padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 14px 32px -28px rgba(1,7,34,.45);transition:border-color .25s,box-shadow .25s}
.tcard:hover{border-color:#B9C6EE;box-shadow:0 18px 36px -26px rgba(1,7,34,.5)}
.tc-top{display:flex;align-items:center;gap:12px}
.tc-top img{width:60px;height:60px;border-radius:50%;object-fit:cover;object-position:center 22%;flex:none;border:3px solid #fff;box-shadow:0 0 0 2px var(--yellow)}
.tc-top b{display:block;color:var(--navy);font-size:.96rem;line-height:1.3}.tc-top span{display:block;color:var(--muted);font-size:.78rem}
.tcard p{color:#3B4565;font-size:.92rem;line-height:1.6}.tcard .qm{font:700 1.6rem/0 var(--serif);color:var(--yellow);margin-right:4px;vertical-align:-.35em}
@media (max-width:1000px){.tcar .car-track{grid-auto-columns:calc((100% - 20px)/2)}}
@media (max-width:640px){.tcar .car-track{grid-auto-columns:88%}}
/* careers FAQ */
.cfaq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,4vw,56px);align-items:start}
.cfaq-l{display:grid;gap:10px}
.cfaq details{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;transition:box-shadow .25s,border-color .25s}
.cfaq details[open]{border-color:#F0D785;box-shadow:0 16px 34px -26px rgba(1,7,34,.45)}
.cfaq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;cursor:pointer;list-style:none;font-weight:600;color:var(--navy);font-size:.96rem}
.cfaq summary::-webkit-details-marker{display:none}
.cfaq summary:focus-visible{outline:3px solid var(--yellow);outline-offset:-3px}
.cfaq summary i{position:relative;width:28px;height:28px;border-radius:50%;background:var(--soft);flex:none;transition:background .25s,transform .25s}
.cfaq summary i::before,.cfaq summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;background:var(--navy);transform:translate(-50%,-50%)}
.cfaq summary i::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .25s}
.cfaq details[open] summary i{background:var(--yellow)}.cfaq details[open] summary i::after{transform:translate(-50%,-50%) rotate(0)}
.cfaq details p{padding:0 18px 18px;color:var(--muted);font-size:.92rem}
@media (max-width:860px){.cfaq{grid-template-columns:1fr}}
/* keep WhatsApp clear of content on small screens */
@media (max-width:560px){main{padding-bottom:12px}.ccta-art,.skyline{margin-bottom:56px}}
@media (max-width:640px){.jt-stage{grid-template-columns:minmax(0,1fr)}.jt-slides{min-width:0}}

/* ===== v6 corrections ===== */
/* WhatsApp: icon-only round button */
.wa{width:56px;height:56px;padding:0!important;border-radius:50%;justify-content:center;background:#25D366;color:#fff;transition:transform .2s,box-shadow .2s}
.wa svg{width:30px;height:30px}
.wa:hover{transform:translateY(-2px);box-shadow:0 18px 34px -12px rgba(1,7,34,.55)}
.wa:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.wa::after{content:attr(data-tip);position:absolute;right:calc(100% + 10px);top:50%;transform:translate(6px,-50%);white-space:nowrap;background:var(--navy);color:#fff;font:500 .78rem var(--f);padding:7px 11px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
@media (hover:hover){.wa:hover::after,.wa:focus-visible::after{opacity:1;transform:translate(0,-50%)}}
@media (max-width:560px){.wa{width:52px;height:52px}.wa svg{width:28px;height:28px}}
/* Products: in-page product nav */
.pnav{border-bottom:1px solid var(--line);background:#fff}
.pnav-in{display:flex;gap:8px;overflow-x:auto;padding:14px 0;scrollbar-width:none}.pnav-in::-webkit-scrollbar{display:none}
.pnav a{flex:none;text-decoration:none;font-size:.84rem;font-weight:600;color:var(--navy);padding:9px 16px;border:1px solid var(--line);border-radius:999px;transition:background .2s,border-color .2s}
.pnav a:hover,.pnav a:focus-visible{background:var(--yellow);border-color:var(--yellow)}
/* restrained placeholder where a real product photo is still needed */
.svc .media.ph-none{display:grid;place-content:center;justify-items:center;gap:12px;background:repeating-linear-gradient(135deg,#F5F7FB 0 14px,#EFF2F8 14px 28px);border:1px dashed #CCD5E6}
.svc .media.ph-none svg{width:56px;height:56px;color:#9AA6C2}
.svc .media.ph-none span{font-size:.82rem;font-weight:500;color:#7A86A3}
/* Products: mounting structures */
.mnt{background:var(--soft);padding-block:clamp(56px,7vw,96px);scroll-margin-top:110px}
.mnt .svc{padding-bottom:0}
.mnt-mat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:6px}
.mnt-mat div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:4px}
.mnt-mat b{color:var(--navy);font-size:.9rem}.mnt-mat span{color:var(--muted);font-size:.8rem}
.mnt-h{font-family:var(--serif);font-size:clamp(1.4rem,2.2vw,1.9rem);color:var(--navy);margin-top:10px}
.mnt-apps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.mnt-apps figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.mnt-apps img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.mnt-apps figcaption{padding:16px;display:grid;gap:4px}.mnt-apps b{color:var(--navy)}.mnt-apps span{color:var(--muted);font-size:.86rem}
.mnt-cta{margin-top:clamp(36px,5vw,56px);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;background:var(--navy);color:#fff;border-radius:22px;padding:clamp(24px,3.5vw,40px)}
.mnt-cta h3{font-family:var(--serif);font-size:clamp(1.3rem,2vw,1.7rem)}.mnt-cta p{color:#C9D0E6;margin-top:6px}
.mnt-btns{display:flex;flex-wrap:wrap;gap:10px}.mnt-cta .hb-line{color:#fff;border-color:rgba(255,255,255,.4)}
@media (max-width:900px){.mnt-apps{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.mnt-apps,.mnt-mat{grid-template-columns:1fr}.mnt-btns,.mnt-btns a{width:100%;justify-content:center}}
/* Contact: enquiry interface */
.enq{position:relative;overflow:hidden;isolation:isolate;background:#fff;padding-top:clamp(40px,5vw,64px);scroll-margin-top:90px}
.enq-rings i{position:absolute;left:50%;border:1px solid #EBDDAF;border-radius:50%;transform:translateX(-50%);z-index:-1}
.enq-rings i:first-child{width:min(1200px,170vw);height:min(1200px,170vw);top:-200px}.enq-rings i:last-child{width:min(860px,130vw);height:min(860px,130vw);top:-40px;border-color:#E3E8F2}
.enq-head{text-align:center;display:grid;justify-items:center;gap:10px}
.enq-head .crumbs{margin:0}
.enq-head h2{font-family:var(--f);font-weight:400;font-size:clamp(2rem,4vw,3rem);color:var(--navy);letter-spacing:-.01em}
.enq-head p{color:var(--muted);max-width:60ch}
.etabs-bar{border-bottom:2px solid #F0D785;margin-top:clamp(28px,4vw,48px)}
.etabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:900px;margin:0 auto}
.etabs button{position:relative;background:none;border:0;padding:16px 10px 18px;font:500 clamp(.95rem,1.6vw,1.2rem) var(--f);color:var(--navy);cursor:pointer;transition:color .2s,background .2s}
.etabs button[aria-selected="true"]{color:#B48A12;background:linear-gradient(180deg,transparent,#FFF6D8)}
.etabs button[aria-selected="true"]::after{content:"";position:absolute;left:50%;bottom:-9px;width:16px;height:16px;background:#fff;border-right:2px solid #F0D785;border-bottom:2px solid #F0D785;transform:translateX(-50%) rotate(45deg)}
.etabs button:focus-visible{outline:3px solid var(--navy);outline-offset:-3px}
.epanel-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(24px,4vw,64px);align-items:center;padding-block:clamp(32px,4vw,56px)}
.eart{display:grid;place-items:center}.eill{width:100%;max-width:380px;height:auto}
.ebody h2{font-family:var(--f);font-weight:500;font-size:clamp(1.15rem,1.8vw,1.5rem);color:var(--navy);text-align:center;margin-bottom:22px;line-height:1.35}
.egrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ef{display:grid;gap:6px;font-size:.82rem;font-weight:600;color:var(--navy)}
.ef em{font-style:normal;font-weight:400;color:var(--muted)}
.ef.full,.ecb.full{grid-column:1/-1}
.ef input,.ef select,.ef textarea{font:400 .92rem var(--f);color:var(--ink,#0B1433);border:1px solid #CFD7E6;border-radius:8px;padding:11px 12px;background:#fff;width:100%;min-height:44px}
.ef textarea{min-height:110px;resize:vertical}
.ef input[type=file]{padding:9px}
.ef input:focus,.ef select:focus,.ef textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(253,191,0,.25)}
.ef [aria-invalid=true],.ecb [aria-invalid=true]{border-color:#C0392B;box-shadow:0 0 0 3px rgba(192,57,43,.12)}
.fe{font-style:normal;font-size:.76rem;font-weight:500;color:#B3261E;min-height:0}
.fe:empty{display:none}
.ecb{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;font-size:.84rem;color:var(--muted)}
.ecb input{width:18px;height:18px;margin-top:2px;accent-color:var(--navy)}
.ecb a{color:var(--navy);font-weight:600}.ecb .fe{grid-column:2}
.esub{margin-top:18px;display:inline-flex;align-items:center;gap:10px;background:var(--yellow);color:var(--navy);border:0;border-radius:999px;padding:12px 24px 12px 14px;font:700 .92rem var(--f);cursor:pointer;transition:background .2s,transform .2s}
.esub svg{width:26px;height:26px;padding:6px;border-radius:50%;background:var(--navy);color:#fff}
.esub:hover{transform:translateY(-1px)}.esub:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.esub[disabled]{opacity:.6;cursor:progress}
.estat{margin-top:14px;padding:12px 14px;border-radius:10px;font-size:.88rem}
.estat.ok{background:#E8F6EE;color:#14623A;border:1px solid #BFE3CD}
.estat.bad{background:#FDECEA;color:#8C1D18;border:1px solid #F5C6C2}
.estat.info{background:#FFF8E1;color:#6B5200;border:1px solid #F3DD95}
.enq-art{margin-top:0}
.addr-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width:900px){.epanel-in{grid-template-columns:1fr}.eart{max-width:280px;margin:0 auto}}
@media (max-width:600px){.egrid{grid-template-columns:1fr}.addr-g{grid-template-columns:1fr}.etabs button{font-size:.85rem;padding:14px 4px 16px}.esub{width:100%;justify-content:center}}
.mnt-cta h3{color:#fff}
.mnt-cta .hb-line{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55)}
.mnt-cta .hb-line:hover{background:#fff;color:var(--navy)}
.enq-head .crumbs span a{color:var(--navy-3);text-decoration:none;font-weight:500}
@media (max-width:600px){.esub{width:auto;justify-content:flex-start}.eform{padding-bottom:8px}}
.wa{transition:transform .2s,box-shadow .2s,opacity .2s}
@media (max-width:900px){body.typing .wa{opacity:0;pointer-events:none}}
/* v6b: 4 contact tabs, rating, careers CV */
.etabs{grid-template-columns:repeat(4,minmax(0,1fr));max-width:1040px}
@media (max-width:600px){.etabs{grid-template-columns:repeat(2,minmax(0,1fr))}.etabs button[aria-selected="true"]::after{display:none}.etabs button[aria-selected="true"]{box-shadow:inset 0 -3px 0 var(--yellow)}}
.erate{border:0;padding:0;margin:0;grid-column:1/-1}
.erate legend{font-size:.82rem;font-weight:600;color:var(--navy);margin-bottom:6px;padding:0}
.stars{display:inline-flex;flex-direction:row-reverse;gap:6px}
.stars input{position:absolute;opacity:0;width:1px;height:1px}
.stars label{cursor:pointer;line-height:0}
.stars svg{width:34px;height:34px;fill:#E1E6F0;transition:fill .15s,transform .15s}
.stars label:hover svg,.stars label:hover~label svg,.stars input:checked~label svg{fill:var(--yellow)}
.stars input:focus-visible+label svg{outline:2px solid var(--navy);outline-offset:2px;border-radius:4px}
.erate[aria-invalid=true] svg{fill:#F5C6C2}
.ecb em{font-style:normal;color:var(--faint,#8A94AD)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.jempty .hb-gold{margin-top:10px}
.capp{margin-top:22px;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:22px 24px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 14px 32px -28px rgba(1,7,34,.45)}
.capp .ji{width:52px;height:52px;border-radius:14px;background:var(--yellow-soft);color:var(--yellow-ink);display:grid;place-items:center}.capp .ji svg{width:24px;height:24px}
.capp b{display:block;color:var(--navy);font-size:1.05rem}.capp span{color:var(--muted);font-size:.92rem}
@media (max-width:700px){.capp{grid-template-columns:1fr;text-align:left}}
.cr-btns{display:flex;flex-wrap:wrap;gap:12px}.cr-btns .hb-line.light{background:transparent;color:#fff;border-color:rgba(255,255,255,.45);cursor:pointer;font:inherit;font-weight:500}
.cr-btns .hb-line.light:hover{background:#fff;color:var(--navy)}
/* reserve space for messages so fields never jump while a visitor clicks */
.eform .fe,.eform .fe:empty{display:block;min-height:1.15em;line-height:1.15}
.eform .egrid{row-gap:8px}
.eform .ef{gap:5px}
.stars{justify-content:flex-end}
.aform .chk span{display:block}
/* v7: looping testimonial cards */
.tsec .head{margin-bottom:clamp(26px,3vw,40px)}
.tdraft{display:inline-block;margin-top:10px;font-size:.78rem;font-weight:600;color:#8A6A00;background:#FFF6D8;border:1px dashed #E8CF7A;border-radius:999px;padding:6px 14px}
.tmq-wrap{display:grid;gap:18px}
.tmq{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.tmq-track{display:flex;gap:18px;width:max-content;animation:tmq 60s linear infinite}
.tmq.rev .tmq-track{animation-direction:reverse;animation-duration:66s}
.tmq-dup{display:flex;gap:18px}
.tmq:hover .tmq-track,.tmq:focus-within .tmq-track{animation-play-state:paused}
@keyframes tmq{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 9px))}}
.tmq .tcard{width:clamp(270px,26vw,340px);flex:none;padding:20px}
.tmq .tc-top img{width:56px;height:56px}
.tmq .tcard p{font-size:.9rem}
@media (prefers-reduced-motion:reduce){.tmq-track{animation:none}.tmq{overflow-x:auto}.tmq-dup{display:none}}
.svc .media.pmix{position:relative;overflow:visible;background:none}
.pmix img:first-child{width:100%;height:100%;object-fit:cover;border-radius:var(--r-lg)}
.pmix .pmix-s{position:absolute;right:-14px;bottom:-22px;width:38%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:18px;border:5px solid #fff;box-shadow:0 20px 40px -20px rgba(1,7,34,.55)}
@media (max-width:600px){.pmix .pmix-s{right:8px;bottom:-16px;width:36%}}
.svc .media.pmix .pmix-s{position:absolute;right:-14px;bottom:-22px;width:38%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:18px;border:5px solid #fff;box-shadow:0 20px 40px -20px rgba(1,7,34,.55)}
@media (max-width:600px){.svc .media.pmix .pmix-s{right:8px;bottom:-16px;width:36%}}
/* v8: download centre logos */
.lggrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.lgcard{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;transition:box-shadow .25s,transform .25s}
.lgcard:hover{box-shadow:0 18px 38px -26px rgba(1,7,34,.5);transform:translateY(-2px)}
.lgprev{aspect-ratio:16/10;display:grid;place-items:center;padding:24px;background:repeating-conic-gradient(#F4F6FA 0 25%,#fff 0 50%) 0 0/18px 18px;border-bottom:1px solid var(--line)}
.lgprev.dark{background:var(--navy)}
.lgprev img{max-width:88%;max-height:100%;object-fit:contain}
.lgbd{padding:16px;display:grid;gap:4px;align-content:start}
.lgbd b{color:var(--navy)}.lgbd small{color:var(--muted);font-size:.8rem}
.lgbtns{display:grid;gap:8px;margin-top:10px}
.lgdl{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:600;color:var(--navy);text-decoration:none;padding:9px 12px;border:1px solid var(--line);border-radius:10px;transition:background .2s,border-color .2s}
.lgdl svg{width:14px;height:14px;transform:rotate(90deg)}
.lgdl:hover,.lgdl:focus-visible{background:var(--yellow);border-color:var(--yellow)}
@media (max-width:1000px){.lggrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.lggrid{grid-template-columns:1fr}}
@media (min-width:1001px){.dgrid{grid-template-columns:repeat(5,minmax(0,1fr))}}
/* v9: video banners + motion on image banners */
.vban h1 .hl{background:none;color:#E3A100}
.vban p{max-width:46ch}
.banner .bimg{overflow:hidden}
.banner .bimg img{animation:kbz 22s ease-in-out infinite alternate}
.banner{position:relative;overflow:hidden}
.banner::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;border:1px solid #F0D785;opacity:.6;animation:spinr 40s linear infinite;pointer-events:none}
@keyframes spinr{to{transform:rotate(360deg) scale(1.04)}}
@media (prefers-reduced-motion:reduce){.banner .bimg img,.banner::after{animation:none}}
/* v9: Everything solar under one roof */
.uor{overflow:hidden}
.uor-g{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.uor-c{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;aspect-ratio:3/4;border-radius:20px;overflow:hidden;padding:18px;text-decoration:none;color:#fff;isolation:isolate;box-shadow:0 20px 40px -30px rgba(1,7,34,.6);opacity:0;transform:translateY(40px) scale(.94);animation:uorIn .9s cubic-bezier(.2,1.2,.4,1) forwards;animation-delay:calc(var(--i)*.09s + .2s)}
@keyframes uorIn{to{opacity:1;transform:none}}
.uor-c img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.uor-c::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(1,7,34,0) 30%,rgba(1,7,34,.88) 100%);transition:background .4s}
.uor-c::after{content:"";position:absolute;left:18px;right:18px;bottom:0;height:4px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .5s}
.uor-ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--yellow);color:var(--navy);margin-bottom:auto;transform:translateY(-6px);transition:transform .4s}
.uor-ic svg{width:22px;height:22px}
.uor-c b{font-size:1.02rem;line-height:1.25}
.uor-go{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:var(--yellow);max-height:0;opacity:0;overflow:hidden;transition:max-height .4s,opacity .4s}
.uor-go svg{width:14px;height:14px}
.uor-c:hover img,.uor-c:focus-visible img{transform:scale(1.12)}
.uor-c:hover::before{background:linear-gradient(180deg,rgba(1,7,34,.15) 0%,rgba(1,7,34,.92) 100%)}
.uor-c:hover::after,.uor-c:focus-visible::after{transform:scaleX(1)}
.uor-c:hover .uor-ic{transform:translateY(-6px) rotate(-8deg) scale(1.08)}
.uor-c:hover .uor-go,.uor-c:focus-visible .uor-go{max-height:24px;opacity:1}
.uor-c:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
.uor-mq{margin-top:clamp(30px,4vw,48px);border-block:1px solid var(--line);background:var(--soft);overflow:hidden}
.uor-tr{display:flex;gap:40px;width:max-content;padding:16px 0;animation:tmq 40s linear infinite}
.uor-tr span{display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--navy);white-space:nowrap}
.uor-tr svg{width:20px;height:20px;color:#E3A100}
@media (max-width:1100px){.uor-g{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.uor-g{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.uor-c{padding:14px}.uor-c b{font-size:.9rem}.uor-go{max-height:24px;opacity:1}}
@media (prefers-reduced-motion:reduce){.uor-c{animation:none;opacity:1;transform:none}.uor-tr{animation:none}}
.vban h1 .hl{box-shadow:none}
@media (min-width:1001px){.lggrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* v10: accurate state map */
.imap-w{display:grid;gap:14px;justify-items:center}
.imap{width:100%;max-width:520px;height:auto;overflow:visible}
.imap .st{fill:#F4F6FA;stroke:#C9D2E3;stroke-width:.6;stroke-linejoin:round;transition:fill .3s}
.imap .st.eo{fill:#FFE9A8;stroke:#D9A21B}
.imap .st.mf{fill:#CDEBD6;stroke:#3E9B5E}
.imap .st.hq{fill:#C9D3EE;stroke:#1B2E6E}
.imap .st:hover{fill:#FFD34D}
.imap .pin circle{stroke:#fff;stroke-width:1.2}
.imap .pin.hq circle{fill:#010722}.imap .pin.eo circle{fill:#E3A100}.imap .pin.mf circle{fill:#2E8B57}
.imap .pin text{font:600 8.5px Poppins,Arial,sans-serif;fill:#010722;paint-order:stroke;stroke:#fff;stroke-width:2.6px;stroke-linejoin:round}
.imap .pin circle{animation:pinpulse 2.4s ease-in-out infinite}
@keyframes pinpulse{50%{stroke-width:3.2}}
.imap-w .abm-k{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
@media (max-width:560px){.imap .pin text{font-size:11px}}
/* v10: mobile video heroes: text first, then the full video, no white wash over it */
@media (max-width:760px){
 .abh2{flex-direction:column;align-items:stretch;min-height:0;background:linear-gradient(180deg,#F6F9FD,#fff)}
 .abh2::before{display:none}
 .abh2-in{order:1;padding-block:28px 22px}
 .abh2-bg{order:2;position:relative;inset:auto;z-index:0;height:auto;aspect-ratio:16/10;margin:0 16px 24px;border-radius:20px;overflow:hidden;box-shadow:0 20px 40px -26px rgba(1,7,34,.55)}
 .abh2-bg video{object-position:50% 50%}
 .abh2 h1{font-size:clamp(2.1rem,9vw,2.8rem)}
}
.cx-kpis > div:last-child:nth-child(odd){grid-column:1/-1}
.jdbox{max-width:720px}.jdc{display:grid;gap:12px}.jdc h2{font-family:var(--serif);color:var(--navy)}.jdc h3{color:var(--navy);font-size:1rem;margin-top:6px}.jdc .hb-gold{justify-self:start;margin-top:10px}
