/* Absolute Occupational Health v2: modern, simple. Geist only, one accent. */
:root{
  --ink:#0A1124; --ink-2:#3A4356; --mute:#6B7385; --dim:#9AA1B0;
  --line:#E7E9EE; --line-2:#D5D9E1; --paper:#FFFFFF; --soft:#F6F7F9; --soft-2:#EEF0F4;
  --blue:#2F55D4; --blue-d:#2445B5; --blue-t:#EEF2FD; --cyan:#0AA9DF;
  --ok:#0B7A52; --ok-bg:#E6F4EE; --wait:#9A5A06; --wait-bg:#FBF1E1; --info:#2F55D4; --info-bg:#EEF2FD;
  --sans:"Geist",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"Geist Mono",ui-monospace,Menlo,monospace;
  --r:16px; --r-lg:24px;
  --sh-1:0 1px 2px rgba(10,17,36,.04),0 4px 14px rgba(10,17,36,.04);
  --sh-2:0 24px 60px -24px rgba(10,17,36,.22);
  --ease:cubic-bezier(.2,.7,.2,1);
  --gut:24px;
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink-2);font:400 17px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--blue-d)}
button{font:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:8px}
.wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:8px}
.skip:focus{left:8px}
.i{width:20px;height:20px;flex:none}
.mono{font-family:var(--mono);font-size:.8em}
p{margin:0 0 1em}

/* type */
.h1,.h2,.h3,.h4{color:var(--ink);margin:0;font-weight:600;letter-spacing:-.035em}
.h1{font-size:clamp(2.7rem,5.8vw,4.9rem);line-height:1.02;letter-spacing:-.045em}
.h1.sm{font-size:clamp(2.3rem,4.6vw,3.8rem)}
.h2{font-size:clamp(1.9rem,3.6vw,3rem);line-height:1.08}
.h3{font-size:clamp(1.4rem,2.2vw,1.8rem);line-height:1.2;letter-spacing:-.025em}
.h4{font-size:1.1rem;line-height:1.3;letter-spacing:-.015em}
em{font-style:normal}
.dim{color:var(--dim)}
.light,.h2.light{color:#fff}
.lede{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.6;color:var(--mute);max-width:34em;margin:24px 0 0}
.lede.wide{max-width:44em}
.kicker{font:500 .9rem/1.2 var(--sans);color:var(--blue);margin:0 0 16px;letter-spacing:-.005em}
.kicker.light{color:#9FB4FF}
.fine{font-size:.84rem;color:var(--mute);line-height:1.5;margin:14px 0 0}
.fine.light{color:#A3ABBD}
.dia{display:none}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid var(--ink);background:var(--ink);color:#fff;font:500 .97rem/1 var(--sans);transition:background .2s,border-color .2s,color .2s,transform .15s;white-space:nowrap}
.btn:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.btn:active{transform:scale(.98)}
.btn .i{width:17px;height:17px;transition:transform .2s var(--ease)}
.btn:hover .i:last-child{transform:translateX(2px)}
.btn.sm{min-height:40px;padding:0 16px;font-size:.92rem}
.btn.lg{min-height:54px;padding:0 26px;font-size:1rem}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line-2)}
.btn.ghost:hover{border-color:var(--ink);background:transparent;color:var(--ink)}
.btn.white{background:#fff;border-color:#fff;color:var(--ink)}
.btn.white:hover{background:var(--blue-t);border-color:var(--blue-t);color:var(--ink)}
.btn.line-w{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.btn.line-w:hover{border-color:#fff;background:transparent}
.btn.full{width:100%}
.lnk{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:var(--blue);font-size:.95rem}
.lnk .i{width:16px;height:16px;transition:transform .2s var(--ease)}
.row-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font:500 .75rem/1 var(--sans);background:var(--soft-2);color:var(--ink-2);white-space:nowrap}
.pill .i{width:13px;height:13px}
.pill.ok{background:var(--ok-bg);color:var(--ok)}.pill.wait{background:var(--wait-bg);color:var(--wait)}.pill.info{background:var(--info-bg);color:var(--info)}

/* header */
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
.hdr.scrolled{border-color:var(--line)}
.hdr-in{display:flex;align-items:center;gap:24px;min-height:74px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);flex:none}
.brand img{width:50px;height:42px;object-fit:contain}
.brand-t{display:flex;flex-direction:column;line-height:1}
.brand-t b{font:600 1.18rem/1 var(--sans);letter-spacing:-.03em;color:var(--ink)}
.brand-t small{font:500 .74rem/1 var(--sans);color:var(--mute);margin-top:4px;letter-spacing:-.005em}
.brand.light .brand-t b{color:#fff}.brand.light .brand-t small{color:#A3ABBD}
.brand.light img{background:#fff;border-radius:12px;padding:4px;width:56px;height:48px}
.nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav-a{display:inline-flex;align-items:center;gap:4px;padding:9px 13px;border-radius:999px;color:var(--ink-2);font-weight:500;font-size:.95rem;background:none;border:0;transition:background .2s,color .2s}
.nav-a:hover,.nav-dd.open .nav-a{background:var(--soft);color:var(--ink)}
.nav-a[aria-current]{color:var(--ink);background:var(--soft)}
.chev{width:15px;height:15px;transition:transform .25s var(--ease)}
.nav-dd{position:relative}
.nav-dd.open .chev{transform:rotate(180deg)}
.mega{position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,6px);width:min(880px,92vw);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-2);padding:20px;display:grid;grid-template-columns:1.3fr 1fr;gap:24px;opacity:0;visibility:hidden;transition:opacity .2s,transform .25s var(--ease),visibility .2s}
.mega.sm{width:320px;grid-template-columns:1fr;padding:10px}
.nav-dd.open .mega{opacity:1;visibility:visible;transform:translate(-50%,0)}
.mega::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px}
.mega-h{margin:0 0 8px;padding:0 10px;font:500 .85rem/1 var(--sans)}
.mega-h a{display:inline-flex;align-items:center;gap:6px;color:var(--mute)}
.mega-h a:hover{color:var(--blue)}
.mega-h .i{width:14px;height:14px}
.mega-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.mega-grid.one{grid-template-columns:1fr}
.mm-item{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:12px;color:var(--ink);transition:background .15s}
.mm-item:hover{background:var(--soft);color:var(--ink)}
.mm-item b{display:block;font-weight:500;font-size:.94rem;line-height:1.25}
.mm-item small{display:none}
.mm-ic,.tile-ic,.scard-ic,.feat-ic,.topic-ic,.c-ic,.hz-ic{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--soft);color:var(--ink);flex:none}
.mm-ic .i{width:18px;height:18px}
.mega-cta{display:block;margin-top:12px;padding:18px;border-radius:16px;background:var(--blue-t);color:var(--ink)}
.mega-cta:hover{color:var(--ink)}
.mega-cta .kicker{margin-bottom:6px;font-size:.8rem}
.mega-cta b{display:block;font-weight:600;font-size:1.1rem;letter-spacing:-.02em;margin-bottom:10px}
.hdr-cta{display:flex;align-items:center;gap:8px}
.burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line-2);background:#fff;color:var(--ink);place-items:center}
.drawer{position:fixed;inset:0;z-index:45;background:#fff;padding:96px var(--gut) 110px;overflow-y:auto}
.drawer-in{display:flex;flex-direction:column;max-width:560px;margin:0 auto}
.drawer a{display:flex;align-items:center;gap:12px;padding:12px 2px;border-bottom:1px solid var(--line);color:var(--ink);font-weight:500}
.drawer a .i{color:var(--mute)}
.dr-h{font:500 .82rem/1 var(--sans);color:var(--mute);margin:24px 0 4px}
body.menu-open{overflow:hidden}

/* hero */
.hero{padding:56px 0 96px}
.hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:64px;align-items:center}
.hero-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.hero-proof{list-style:none;padding:0;margin:52px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:500px}
.hero-proof li{display:flex;flex-direction:column;padding-top:16px;border-top:1px solid var(--line-2)}
.hero-proof b{font-weight:600;font-size:2rem;line-height:1;color:var(--ink);letter-spacing:-.04em}
.hero-proof span{font-size:.88rem;color:var(--mute);margin-top:8px}
.hero-vis{position:relative;padding-bottom:64px}
.hero-photo{border-radius:28px;overflow:hidden;aspect-ratio:1/1.02}
.hero-photo img{width:100%;height:100%;object-fit:cover}

/* sample record card */
.rec{position:absolute;left:-48px;bottom:0;width:min(420px,90%);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--sh-2);padding:16px 18px 12px}
.rec-hd{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.rec-id{font-size:.82rem;color:var(--mute)}
.rec-id b{color:var(--ink);font-family:var(--mono);font-weight:500}
.rec-body{display:grid;grid-template-columns:1.2fr 1fr;gap:16px;padding-top:12px}
.rec-l{font-size:.8rem;font-weight:500;color:var(--ink);margin:0 0 4px}
.rec-l .mono{color:var(--mute);font-weight:400}
.audiogram{width:100%;height:auto;overflow:visible}
.audiogram .grid line{stroke:var(--line);stroke-width:1}
.audiogram .zone{fill:var(--soft)}
.audiogram .ln{fill:none;stroke-width:2;stroke-linejoin:round;stroke-dasharray:400;stroke-dashoffset:400;animation:draw 1.8s .5s var(--ease) forwards}
.audiogram .ln.r{stroke:var(--blue)}.audiogram .ln.l{stroke:var(--cyan);animation-delay:.8s}
.audiogram .o{fill:#fff;stroke:var(--blue);stroke-width:1.8;opacity:0;animation:fade .4s 1.6s forwards}
.audiogram .xm path{stroke:var(--cyan);stroke-width:1.8;opacity:0;animation:fade .4s 1.9s forwards}
.audiogram .lab text{font:10px var(--mono);fill:var(--mute);text-anchor:middle}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fade{to{opacity:1}}
.rec-key{display:flex;gap:12px;font-size:.72rem;color:var(--mute);margin:2px 0 0;align-items:center}
.rec-key span{display:inline-flex;align-items:center;gap:5px}
.k{display:inline-block;width:10px;height:10px;border-radius:50%}
.k.o{border:2px solid var(--blue)}.k.x{background:var(--cyan);border-radius:2px;transform:rotate(45deg);width:8px;height:8px}
.rec-list{list-style:none;margin:0;padding:0}
.rec-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:.8rem}
.rec-list li:last-child{border:0}
.rec-list span{display:flex;align-items:center;gap:7px;color:var(--ink-2);white-space:nowrap}
.rec-list .i{width:15px;height:15px;color:var(--mute)}
.rec-list b{color:var(--ink);font-weight:500;white-space:nowrap}
.rec-list b.due{color:var(--blue)}
.rec-ft{margin:8px 0 0;color:var(--dim);font-size:.68rem;text-align:right}

/* logos */
.logos{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.logos-in{display:flex;align-items:center;gap:32px;min-height:84px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px}
.logos-in>p{margin:0;color:var(--mute);font-size:.88rem;flex:none}
.logos-in ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 28px;flex:1;justify-content:space-between}
.logos-in li{font-weight:600;font-size:1.05rem;color:var(--dim);letter-spacing:-.02em}

/* sections */
.sec{padding:112px 0}
.sec.tight{padding:56px 0}
.sec.pt0{padding-top:16px}
.sec.pt-s{padding-top:48px}
.sec.soft,.sec.mist{background:var(--soft)}
.sec.navy{background:var(--ink);color:#C3C9D6}
.sec-hd{margin-bottom:48px;max-width:760px}
.sec-hd.row,.sec-hd.split{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;max-width:none}
.sec-hd.split>div:first-child,.sec-hd.row>div:first-child{max-width:680px}
.sec-hd.center{text-align:center;margin-left:auto;margin-right:auto}
.sec-lede{max-width:440px;color:var(--mute);margin:0;font-size:1.05rem}
.sec-lede.light{color:#A3ABBD}
.h2+p,.h2+.sec-lede,.h3+p{margin-top:20px}

/* service tiles (home) */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.tile{position:relative;display:flex;flex-direction:column;gap:8px;padding:22px;border-radius:var(--r);background:#fff;border:1px solid var(--line);color:var(--ink-2);min-height:220px;transition:border-color .2s,transform .2s var(--ease),box-shadow .2s}
.tile:hover{border-color:var(--line-2);transform:translateY(-3px);box-shadow:var(--sh-1);color:var(--ink-2)}
.tile .tile-ic{margin-bottom:18px;background:var(--blue-t);color:var(--blue)}
.tile b{color:var(--ink);font-weight:600;font-size:1.08rem;letter-spacing:-.02em}
.tile>span:nth-of-type(2){font-size:.9rem;color:var(--mute);line-height:1.5}
.tile-go{position:absolute;top:22px;right:22px;color:var(--dim);transition:color .2s,transform .2s var(--ease)}
.tile:hover .tile-go{color:var(--blue);transform:translateX(2px)}
.tile-go .i{width:18px;height:18px}

/* feature split */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.feature-img{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:5/4}
.feature-img img{width:100%;height:100%;object-fit:cover}
.team{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.team .accs{margin-top:28px;grid-template-columns:1fr 1fr}

/* service cards */
.sgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.scard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;color:var(--ink-2);transition:transform .25s var(--ease),box-shadow .25s}
.scard:hover{transform:translateY(-3px);box-shadow:var(--sh-1);color:var(--ink-2)}
.scard:hover .lnk .i{transform:translateX(3px)}
.scard-img{aspect-ratio:16/10;overflow:hidden;background:var(--soft-2)}
.scard-img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.scard:hover .scard-img img{transform:scale(1.03)}
.scard-b{display:flex;flex-direction:column;gap:8px;padding:24px;flex:1}
.scard-ic{display:none}
.scard-t{font-weight:600;font-size:1.25rem;color:var(--ink);letter-spacing:-.025em}
.scard-d{font-size:.94rem;line-height:1.55;color:var(--mute)}
.scard .lnk{margin-top:auto;padding-top:10px}
.reg{color:var(--mute);font-size:.76rem}
.chips{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.chips li{font-size:.8rem;padding:6px 11px;border-radius:999px;background:var(--soft)}

/* checker */
.checker{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;align-items:start}
.step-n{color:var(--mute);font-size:.86rem;margin:0 0 14px;font-family:var(--sans)}
.hz-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hz{display:flex;align-items:center;gap:12px;text-align:left;padding:14px;border-radius:var(--r);border:1px solid var(--line-2);background:#fff;color:var(--ink);transition:border-color .15s,background .15s,transform .1s;min-height:72px}
.hz:hover{border-color:var(--ink-2)}
.hz:active{transform:scale(.985)}
.hz-t{flex:1;display:flex;flex-direction:column;gap:2px}
.hz-t b{font-weight:500;font-size:.97rem}
.hz-t small{color:var(--mute);font-size:.8rem;line-height:1.35}
.hz-tick{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--line-2);color:transparent;transition:all .15s;flex:none}
.hz-tick .i{width:13px;height:13px}
.hz[aria-pressed="true"]{border-color:var(--blue);background:var(--blue-t)}
.hz[aria-pressed="true"] .hz-tick{background:var(--blue);border-color:var(--blue);color:#fff}
.hz[aria-pressed="true"] .hz-ic{background:#fff;color:var(--blue)}
.chk-r{position:sticky;top:96px;background:var(--soft);border-radius:var(--r-lg);padding:24px;min-height:360px;display:flex;flex-direction:column}
.sec.soft .chk-r{background:#fff;border:1px solid var(--line)}
.chk-r-hd{display:flex;justify-content:space-between;align-items:flex-start}
.chk-count{margin:0;font-size:.86rem;color:var(--mute)}
.chk-count b{font-weight:600;font-size:2rem;color:var(--ink);letter-spacing:-.04em}
.chk-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;color:var(--mute);margin:auto 0;padding:24px 10px}
.chk-empty-ic{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:#fff;color:var(--ink)}
.chk-empty p{max-width:320px;margin:0;font-size:.95rem}
.chk-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.chk-item{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;animation:pop .3s var(--ease)}
@keyframes pop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.chk-item-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.chk-item a{font-weight:600;color:var(--ink);display:inline-flex;align-items:center;gap:6px;letter-spacing:-.01em}
.chk-item a:hover{color:var(--blue)}
.chk-item a .i{width:15px;height:15px;color:var(--blue)}
.chk-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:6px;font-size:.82rem;color:var(--mute)}
.chk-meta .mono{font-size:.76rem;color:var(--ink-2)}
.chk-why{font-size:.8rem;color:var(--dim);margin-top:4px}
.duty{font:500 .72rem/1 var(--sans);padding:5px 9px;border-radius:999px;white-space:nowrap}
.duty.legal{background:var(--info-bg);color:var(--info)}
.duty.guidance{background:var(--wait-bg);color:var(--wait)}
.chk-ft{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.chk-ft .fine{flex-basis:100%;margin-top:4px}

/* calculator */
.calc{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch}
.calc-in{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:32px;display:flex;flex-direction:column;gap:28px}
.rng-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.rng label{font-weight:500;color:var(--ink);font-size:.97rem}
.rng-v{display:inline-flex;align-items:center;gap:2px;font:500 1rem var(--mono);color:var(--ink);background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:0 10px;min-height:40px}
.rng-v input{width:84px;border:0;background:transparent;font:inherit;color:inherit;text-align:right;padding:8px 0;-moz-appearance:textfield}
.rng-v input::-webkit-outer-spin-button,.rng-v input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.rng-v input:focus{outline:none}
.rng-v:focus-within{border-color:var(--blue)}
.rng small{display:block;color:var(--mute);font-size:.8rem;margin-top:8px}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:transparent;--p:50%}
input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(90deg,var(--ink) 0 var(--p),var(--soft-2) var(--p) 100%)}
input[type=range]::-moz-range-track{height:4px;border-radius:4px;background:var(--soft-2)}
input[type=range]::-moz-range-progress{height:4px;border-radius:4px;background:var(--ink)}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:1px solid var(--line-2);margin-top:-9px;box-shadow:0 2px 8px rgba(10,17,36,.18)}
input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:1px solid var(--line-2)}
.calc-out{background:var(--ink);border-radius:var(--r-lg);padding:32px;display:flex;flex-direction:column;color:#A3ABBD}
.calc-out .kicker{color:#A3ABBD}
.calc-big{font-weight:600;font-size:clamp(2.8rem,5.6vw,4.4rem);line-height:1;color:#fff;letter-spacing:-.05em;margin:0 0 28px;font-variant-numeric:tabular-nums}
.calc-bar{display:flex;height:10px;border-radius:6px;overflow:hidden;background:rgba(255,255,255,.08);gap:3px}
.calc-bar span{display:block;height:100%;transition:width .5s var(--ease)}
.b-st{background:#6A86F0}.b-lt{background:#FFFFFF;position:relative}
.b-sv{position:absolute;right:0;top:0;bottom:0;background:#5DD3FF}
.calc-key{list-style:none;padding:0;margin:16px 0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;font-size:.82rem}
.calc-key li{display:flex;flex-direction:column;gap:4px}
.calc-key b{color:#fff;font:500 1.02rem var(--mono);font-variant-numeric:tabular-nums}
.k.st{background:#6A86F0;border-radius:3px}.k.lt{background:#fff;border-radius:3px}.k.sv{background:#5DD3FF;border-radius:3px}
.calc-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:18px 0;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}
.calc-row span{display:block;color:#8890A2;font-size:.8rem;font-family:var(--sans)}
.calc-row b{display:block;color:#fff;font-weight:600;font-size:1.7rem;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.calc-out .fine{margin:16px 0 22px}
.calc-out .btn{align-self:flex-start;margin-top:auto}

/* portal mini */
.pf-vis{position:relative}
.pf-badge{display:none}
.pmini{display:grid;grid-template-columns:150px 1fr;border-radius:20px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--sh-2);background:#fff;font-size:.8rem}
.pm-side{background:var(--ink);padding:16px 10px;display:flex;flex-direction:column;gap:2px;color:#A3ABBD}
.pm-logo{display:flex;align-items:center;gap:8px;color:#fff;font-weight:600;padding:4px 8px 14px}
.pm-nav{display:flex;align-items:center;gap:8px;padding:8px;border-radius:8px}
.pm-nav .i{width:15px;height:15px}
.pm-nav.on{background:rgba(255,255,255,.1);color:#fff}
.pm-main{padding:18px;background:var(--soft)}
.pm-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;color:var(--ink);font-size:.95rem}
.pm-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.pm-kpis div{background:#fff;border-radius:10px;padding:10px;border:1px solid var(--line)}
.pm-kpis small{display:block;color:var(--mute);font-size:.68rem}
.pm-kpis b{font-weight:600;font-size:1.6rem;color:var(--ink);letter-spacing:-.04em}
.pm-rows{background:#fff;border-radius:10px;border:1px solid var(--line)}
.pm-row{display:grid;grid-template-columns:1fr 1.1fr auto;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--ink-2)}
.pm-row:last-child{border:0}
.pm-row span:first-child{font-family:var(--mono);font-size:.72rem;color:var(--ink)}

.ticks{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:12px}
.ticks li{display:flex;gap:12px;align-items:flex-start}
.ticks .i{width:22px;height:22px;padding:4px;border-radius:50%;background:var(--blue-t);color:var(--blue);margin-top:1px}
.ticks b{color:var(--ink);font-weight:600}

/* steps */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px}
.step .step-n{display:block;font-family:var(--mono);color:var(--blue);font-size:.8rem;margin-bottom:28px}
.step p{margin:8px 0 0;font-size:.94rem;color:var(--mute)}
.sec-img-pair{display:flex;gap:10px}
.sec-img-pair img{width:160px;height:112px;object-fit:cover;border-radius:14px}

/* leaders + accreditation */
.leaders{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.leader{margin:0}
.leader-img{aspect-ratio:4/4.6;overflow:hidden;border-radius:var(--r-lg);background:var(--soft-2)}
.leader-img img{width:100%;height:100%;object-fit:cover}
.leader figcaption{padding:16px 2px 0;display:flex;flex-direction:column;gap:3px}
.leader b{font-weight:600;font-size:1.1rem;color:var(--ink);letter-spacing:-.02em}
.leader .mono{color:var(--mute);font-size:.76rem}
.leader small{color:var(--mute);font-size:.84rem;line-height:1.45}
.leaders.wide{grid-template-columns:repeat(2,minmax(0,340px))}
.about-band{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.acc-band{display:grid;grid-template-columns:240px 1fr;gap:40px;align-items:center}
.accs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.acc{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px 16px}
.acc img{width:84px;height:48px;object-fit:contain;flex:none}
.acc p{margin:0;display:flex;flex-direction:column;gap:2px}
.acc b{color:var(--ink);font-weight:600;font-size:.92rem}.acc span{font-size:.8rem;color:var(--mute);line-height:1.4}
.team .acc span{display:none}

/* faq */
.faq-band{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
.faq-band .btn{margin-top:24px}
.faqs{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.faq{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;cursor:pointer;font-weight:500;color:var(--ink);font-size:1.06rem;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq-pm{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--soft);flex:none;transition:transform .3s var(--ease),background .2s}
.faq-pm .i{width:16px;height:16px}
.faq[open] .faq-pm{transform:rotate(45deg);background:var(--ink);color:#fff}
.faq-a{padding:0 50px 22px 0;color:var(--mute)}
.faq-a p{margin:0}

/* cta + footer */
.cta-band{background:var(--paper);padding:0 0 24px}
.cta-in{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:72px 64px;border-radius:32px;background:var(--blue);color:#fff;max-width:1152px}
.cta-band .wrap.cta-in{margin:0 auto;width:calc(100% - 2*var(--gut))}
.cta-in .h2{max-width:620px;color:#fff}
.cta-band .kicker{color:rgba(255,255,255,.75)}
.cta-acts{display:flex;flex-wrap:wrap;gap:10px}
.cta-band .btn.white{color:var(--ink)}
.ftr{background:var(--paper);color:var(--mute);padding:72px 0 0;font-size:.93rem;border-top:1px solid var(--line);margin-top:72px}
.ftr-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px}
.ftr .brand.light .brand-t b{color:var(--ink)}.ftr .brand.light .brand-t small{color:var(--mute)}
.ftr .brand.light img{background:none;padding:0;width:50px;height:42px}
.ftr-brand p{margin:20px 0;max-width:330px}
.ftr ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.ftr a{color:var(--ink-2)}.ftr a:hover{color:var(--blue)}
.ftr-contact li{display:flex;gap:10px;align-items:flex-start}
.ftr-contact a{display:inline-flex;gap:10px;align-items:center}
.ftr-contact .i{width:17px;height:17px;color:var(--mute);flex:none;margin-top:2px}
.ftr-h{font:500 .88rem/1 var(--sans);color:var(--ink);margin:0 0 18px}
.ftr-h.mt{margin-top:30px}
.ftr-acc{display:flex;gap:10px;margin-top:24px}
.ftr-acc img{height:44px;width:auto;border:1px solid var(--line);border-radius:10px;padding:5px 8px}
.ftr-base{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:24px;padding-bottom:30px;margin-top:56px;border-top:1px solid var(--line);font-size:.82rem;color:var(--dim)}
.mbar{display:none}

/* page hero */
.phero{padding:40px 0 80px}
.phero.slim{padding-bottom:56px}
.phero-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.phero-img{border-radius:28px;overflow:hidden;aspect-ratio:5/4.3}
.phero-img img{width:100%;height:100%;object-fit:cover}
.crumbs ol{list-style:none;padding:0;margin:0 0 28px;display:flex;flex-wrap:wrap;gap:6px;font-size:.86rem;color:var(--mute)}
.crumbs li+li::before{content:"/";margin-right:6px;color:var(--line-2)}
.crumbs a{color:var(--mute)}.crumbs a:hover{color:var(--blue)}
.crumbs [aria-current]{color:var(--ink)}

/* service body */
.svc-grid{display:grid;grid-template-columns:340px 1fr;gap:80px;align-items:start}
.glance{position:sticky;top:96px;background:var(--soft);border-radius:var(--r-lg);padding:24px}
.glance-h{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:600;font-size:1.1rem;margin:0 0 12px;letter-spacing:-.02em}
.glance-h .i{color:var(--blue)}
.glance dl{margin:0}
.glance dl div{padding:12px 0;border-top:1px solid var(--line-2)}
.glance dt{color:var(--mute);font-size:.8rem;margin-bottom:3px;font-family:var(--sans)}
.glance dd{margin:0;color:var(--ink);font-size:.95rem;line-height:1.45}
.glance-reg{padding:14px;border-radius:12px;background:#fff;margin:10px 0 16px}
.glance-reg span{display:block;color:var(--mute);font-size:.8rem;font-family:var(--sans)}
.glance-reg b{color:var(--ink);font-weight:500;font-size:.92rem}
.prose{max-width:700px}
.prose-sec+.prose-sec{margin-top:48px}
.prose .h3{margin-bottom:14px}
.prose p{font-size:1.05rem;line-height:1.75}
.prose strong{color:var(--ink);font-weight:600}
.topics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:40px}
.topic{padding:20px;border-radius:var(--r);background:var(--soft)}
.topic .topic-ic{background:#fff}
.topic b{display:block;color:var(--ink);margin:14px 0 4px;font-weight:600}
.topic p{margin:0;font-size:.92rem;color:var(--mute)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0}
.stats div{padding:28px;border-radius:var(--r-lg);background:var(--soft);display:flex;flex-direction:column-reverse;gap:10px}
.stats dd{margin:0;font-weight:600;font-size:clamp(2.4rem,4.4vw,3.4rem);line-height:1;letter-spacing:-.05em;color:var(--ink)}
.stats dt{color:var(--mute);font-size:.95rem}

/* table */
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff}
.tbl{width:100%;border-collapse:collapse;font-size:.93rem;min-width:760px}
.tbl th,.tbl td{text-align:left;padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:middle}
.tbl thead th{font:500 .82rem/1 var(--sans);color:var(--mute);background:var(--soft)}
.tbl tbody tr:last-child>*{border-bottom:0}
.tbl tbody th a{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:500}
.tbl tbody th .i{color:var(--blue)}
.tbl td small{display:block;color:var(--mute)}

/* sectors */
.sect-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sect-card{position:relative;display:flex;flex-direction:column;border-radius:var(--r-lg);overflow:hidden;min-height:400px;color:#fff;isolation:isolate}
.sect-img{position:absolute;inset:0;z-index:-1}
.sect-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.sect-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(10,17,36,.85) 100%)}
.sect-card:hover img{transform:scale(1.04)}
.sect-card:hover{color:#fff}
.sect-b{margin-top:auto;padding:24px;display:flex;flex-direction:column;gap:8px}
.sect-b b{font-weight:600;font-size:1.5rem;letter-spacing:-.03em}
.sect-b small{color:#D3D8E2;font-size:.9rem;line-height:1.5}
.sect-b .lnk{color:#fff}
.sect-b .scard-ic{display:none}
.hz-list{list-style:none;padding:0;margin:28px 0 0}
.hz-list li{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}
.hz-list .i{color:var(--blue);margin-top:3px}
.hz-list b{display:block;color:var(--ink);font-weight:500}
.hz-list small{color:var(--mute)}
.duo-text{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}
.duo-text .prose .btn{margin-top:12px}

/* about */
.mission{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.mission-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:40px}
.mission-card .mono{color:var(--mute);font-family:var(--sans);font-size:.9rem}
.mission-card.dark{background:var(--ink);color:#A3ABBD;border-color:var(--ink)}
.big-num{font-weight:600;font-size:5.4rem;line-height:1;letter-spacing:-.06em;color:var(--ink);margin:12px 0 18px}
.quote{font-weight:600;font-size:clamp(1.6rem,2.6vw,2.1rem);line-height:1.2;letter-spacing:-.03em;color:#fff;margin:14px 0 22px}
.sector-list{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.sector-list li{padding:7px 13px;border-radius:999px;background:var(--soft);font-size:.86rem;color:var(--ink)}
.office{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.office-img{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3}
.office-img img{width:100%;height:100%;object-fit:cover}
.office p{font-size:1.1rem;color:var(--ink-2);margin-top:18px}

/* portal demo */
.portal{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;box-shadow:var(--sh-2);position:relative}
.pt-bar{display:flex;align-items:center;gap:14px;padding:12px 16px;background:var(--soft);border-bottom:1px solid var(--line)}
.pt-dots{display:flex;gap:6px}.pt-dots i{width:11px;height:11px;border-radius:50%;background:var(--line-2)}
.pt-url{flex:1;display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:6px 12px;color:var(--mute);max-width:420px}
.pt-url .i{width:13px;height:13px;color:var(--ok)}
.pt-body{display:grid;grid-template-columns:230px 1fr;min-height:470px}
.pt-side{background:var(--ink);padding:16px 12px;display:flex;flex-direction:column;gap:2px}
.pt-org{display:flex;align-items:center;gap:10px;color:#fff;padding:6px 10px 16px;margin-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}
.pt-org b{display:block;font-size:.92rem;font-weight:600}.pt-org small{color:#8890A2;font-size:.76rem}
.pt-tab{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:0;background:none;color:#A3ABBD;text-align:left;font-weight:500;font-size:.92rem;transition:background .2s,color .2s}
.pt-tab .i{width:18px;height:18px}
.pt-tab:hover{background:rgba(255,255,255,.06);color:#fff}
.pt-tab[aria-selected="true"]{background:rgba(255,255,255,.12);color:#fff}
.pt-main{background:var(--soft);padding:28px;min-width:0}
.pt-panel{animation:pop .3s var(--ease)}
.pt-hd{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}
.pt-hd p{margin:4px 0 0;color:var(--mute);font-size:.92rem}
.pt-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px}
.pt-kpis div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
.pt-kpis small{display:block;color:var(--mute);font-size:.78rem}
.pt-kpis b{display:block;font-weight:600;font-size:2rem;line-height:1.2;color:var(--ink);letter-spacing:-.04em}
.pt-kpis span{font-size:.76rem;color:var(--mute)}
.pt-kpis .up{color:var(--ok)}
.pt-cols{display:grid;grid-template-columns:1.2fr 1fr;gap:10px}
.pt-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}
.pt-card-h{font-weight:600;color:var(--ink);font-size:.92rem;margin:0 0 14px}
.bars{display:flex;align-items:flex-end;gap:14px;height:150px;padding-top:6px}
.bars span{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}
.bars i{display:block;width:100%;height:var(--h);background:var(--blue);border-radius:6px 6px 2px 2px;transform-origin:bottom;animation:grow .8s var(--ease) both}
.bars small{color:var(--mute);font-size:.72rem}
@keyframes grow{from{transform:scaleY(0)}}
.feed{list-style:none;margin:0;padding:0}
.feed li{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.86rem}
.feed li:last-child{border:0}
.feed i{width:8px;height:8px;border-radius:50%;flex:none}
.feed i.ok{background:var(--ok)}.feed i.info{background:var(--info)}.feed i.wait{background:#E0952A}
.feed small{margin-left:auto;color:var(--mute);font-size:.76rem}
.pt-tbl{min-width:620px}
.pt-tbl td b{color:var(--ink);font-weight:500}
.pipe{display:inline-flex;gap:4px}
.pipe i{width:26px;height:6px;border-radius:4px;background:var(--line)}
.pipe i.on{background:var(--blue)}
.docs,.qs{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--line);border-radius:14px}
.docs li,.qs li{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid var(--line)}
.docs li:last-child,.qs li:last-child{border:0}
.docs li>span:nth-child(2),.qs li>span:first-child{flex:1}
.docs b,.qs b{display:block;color:var(--ink);font-weight:500;font-size:.94rem}
.docs small,.qs small{color:var(--mute);font-size:.8rem}
.doc-ic{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--blue-t);color:var(--blue)}
.icon-btn{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.icon-btn:hover{border-color:var(--blue);color:var(--blue)}
.meter{width:160px;height:6px;border-radius:6px;background:var(--soft-2);overflow:hidden}
.meter i{display:block;height:100%;background:var(--blue);border-radius:6px}
.seg{display:inline-flex;padding:4px;border-radius:999px;background:#fff;border:1px solid var(--line);margin-bottom:18px}
.seg button{border:0;background:none;padding:9px 16px;border-radius:999px;font-weight:500;font-size:.88rem;color:var(--mute)}
.seg button[aria-checked="true"]{background:var(--ink);color:#fff}
.pt-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}
.fld{display:flex;flex-direction:column;gap:6px;font-size:.88rem;font-weight:500;color:var(--ink)}
.fld.full{grid-column:1/-1}
.fld input,.fld select,.fld textarea{font:400 1rem var(--sans);color:var(--ink);background:#fff;border:1px solid var(--line-2);border-radius:12px;padding:12px 14px;min-height:48px;transition:border-color .2s,box-shadow .2s;width:100%}
.fld textarea{resize:vertical;min-height:96px}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,85,212,.12)}
.fld input[aria-invalid="true"]{border-color:#C8352B}
.cbs{display:flex;flex-wrap:wrap;gap:8px}
.cb{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:999px;background:#fff;border:1px solid var(--line-2);font-weight:500;font-size:.88rem;cursor:pointer}
.cb input{accent-color:var(--blue);width:16px;height:16px}
.cb:has(input:checked){border-color:var(--blue);background:var(--blue-t)}
.toast{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:12px 18px;border-radius:12px;font-size:.9rem;box-shadow:var(--sh-2);animation:pop .3s var(--ease);max-width:90%;text-align:center}
.feats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.feat{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px}
.feat .feat-ic{background:var(--blue-t);color:var(--blue)}
.feat .h4{margin:18px 0 8px}
.feat p{margin:0;font-size:.92rem;color:var(--mute)}
.login-band{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}
.login-card{background:var(--soft);border-radius:var(--r-lg);padding:32px;text-align:center}
.login-ic{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--ink);color:#fff;margin-bottom:14px}
.login-card .btn{margin-top:18px}

/* faq page */
.faq-page{display:grid;grid-template-columns:1fr 320px;gap:64px;align-items:start}
.faq-side{position:sticky;top:96px;background:var(--soft);border-radius:var(--r-lg);padding:26px;display:flex;flex-direction:column;gap:10px}
.faq-side p{margin:0 0 6px}

/* contact */
.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start}
.qform{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:34px}
.q-steps{list-style:none;padding:0;margin:0 0 30px;display:flex;gap:8px}
.q-steps li{flex:1;display:flex;align-items:center;gap:10px;font-size:.86rem;font-weight:500;color:var(--mute);padding-bottom:12px;border-bottom:2px solid var(--line)}
.q-steps li span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--soft-2);font-size:.76rem}
.q-steps li.on{color:var(--ink);border-color:var(--ink)}
.q-steps li.on span{background:var(--ink);color:#fff}
.q-steps li.done{color:var(--ink);border-color:var(--blue)}
.q-steps li.done span{background:var(--blue);color:#fff}
.q-step{border:0;padding:0;margin:0;min-width:0}
.q-step legend{padding:0;margin-bottom:4px}
.needs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}
.need{position:relative;cursor:pointer}
.need input{position:absolute;opacity:0;inset:0}
.need-b{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:var(--r);border:1px solid var(--line-2);height:100%;transition:all .15s;position:relative}
.need-b>.i:first-child{color:var(--ink);width:22px;height:22px}
.need-b b{color:var(--ink);font-size:.93rem;font-weight:500}
.need-tick{position:absolute;top:12px;right:12px;width:20px;height:20px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;color:transparent}
.need-tick .i{width:12px;height:12px}
.need input:checked+.need-b{border-color:var(--blue);background:var(--blue-t)}
.need input:checked+.need-b .need-tick{background:var(--blue);border-color:var(--blue);color:#fff}
.need input:focus-visible+.need-b{outline:2px solid var(--blue);outline-offset:2px}
.q-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px}
.q-err{color:#B42318;background:#FEF0EE;border-radius:10px;padding:10px 14px;font-size:.9rem}
.q-done{text-align:center;padding:40px 10px}
.done-ic{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--ok-bg);color:var(--ok);margin-bottom:18px}
.done-ic .i{width:30px;height:30px}
.contact-side{display:flex;flex-direction:column;gap:12px}
.c-card{display:flex;gap:16px;align-items:flex-start;padding:22px;border-radius:var(--r-lg);background:var(--soft)}
.c-card>div{display:flex;flex-direction:column;min-width:0}
.c-card .c-ic{background:#fff}
.c-card small{display:block;color:var(--mute);font-size:.82rem;margin-bottom:4px;font-family:var(--sans)}
.c-card a:not(.lnk){font-weight:600;font-size:1.2rem;color:var(--ink);letter-spacing:-.02em;word-break:break-word}
.c-card span{color:var(--ink-2)}
.c-card .lnk{margin-top:8px}
.nf{min-height:60vh;display:flex;align-items:center}

/* reveal */
.rv{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.rv.in{opacity:1;transform:none}

/* responsive */
@media (max-width:1180px){
  .nav{display:none}.burger{display:grid}.hide-m{display:none}
  .hdr-cta{margin-left:auto}
  .tiles{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:1024px){
  .hero-grid,.phero-grid,.feature,.team,.about-band,.faq-band,.duo-text,.office,.login-band,.contact-grid,.faq-page{grid-template-columns:1fr;gap:44px}
  .hero-vis{max-width:640px}
  .rec{left:-12px}
  .checker,.calc{grid-template-columns:1fr}
  .chk-r{position:static;min-height:0}
  .svc-grid{grid-template-columns:1fr;gap:40px}
  .glance{position:static}
  .sgrid,.sect-grid,.tiles{grid-template-columns:1fr 1fr}
  .steps,.feats{grid-template-columns:1fr 1fr}
  .ftr-grid{grid-template-columns:1fr 1fr}
  .acc-band{grid-template-columns:1fr;gap:20px}
  .sec-hd.split,.sec-hd.row{flex-direction:column;align-items:flex-start;gap:20px}
  .pt-kpis{grid-template-columns:1fr 1fr}
  .faq-side{position:static}
  .cta-in{padding:56px 40px}
}
@media (max-width:720px){
  :root{--gut:16px}
  body{font-size:16px}
  .hdr-in{min-height:64px;gap:12px}
  .brand img{width:42px;height:36px}
  .brand-t b{font-size:1.08rem}.brand-t small{font-size:.7rem}
  .hdr-cta .btn.sm{display:none}
  .hero{padding:28px 0 64px}
  .hero-acts .btn{width:100%}
  .hero-proof{margin-top:40px;gap:12px}
  .hero-proof b{font-size:1.6rem}
  .hero-vis{padding-bottom:0}
  .hero-photo{aspect-ratio:4/3.4;border-radius:22px}
  .rec{position:relative;left:auto;bottom:auto;width:auto;margin:-56px 12px 0}
  .rec-body{grid-template-columns:1fr}
  .sec{padding:72px 0}
  .sec-hd{margin-bottom:32px}
  .sgrid,.sect-grid,.steps,.feats,.mission,.topics,.ftr-grid,.tiles,.stats{grid-template-columns:1fr}
  .tile{min-height:0}
  .tile .tile-ic{margin-bottom:8px}
  .accs,.team .accs{grid-template-columns:1fr}
  .leaders,.leaders.wide{grid-template-columns:1fr 1fr;gap:12px}
  .leader small{display:none}
  .hz-grid{grid-template-columns:1fr}
  .calc-in,.calc-out{padding:22px}
  .calc-key{grid-template-columns:1fr 1fr}
  .pmini{grid-template-columns:1fr}
  .pm-side{display:none}
  .pt-body{grid-template-columns:1fr}
  .pt-side{flex-direction:row;overflow-x:auto;padding:10px;gap:4px;scrollbar-width:none}
  .pt-org{display:none}
  .pt-tab{white-space:nowrap;flex:none}
  .pt-main{padding:18px}
  .pt-cols,.pt-form{grid-template-columns:1fr}
  .pt-hd{flex-direction:column}
  .meter{width:80px}
  .needs{grid-template-columns:1fr 1fr}
  .qform{padding:22px}
  .q-steps li{font-size:0;gap:0;justify-content:center}
  .q-steps li span{font-size:.76rem}
  .sec-img-pair{display:none}
  .cta-in{flex-direction:column;align-items:flex-start;padding:44px 24px;border-radius:24px}
  .cta-acts{width:100%}.cta-acts .btn{width:100%}
  .ftr{padding-bottom:84px;margin-top:40px}
  .logos-in{gap:10px}.logos-in ul{gap:6px 18px;justify-content:flex-start}.logos-in li{font-size:.95rem}
  .mbar{display:grid;grid-template-columns:1fr 1fr 1.3fr;position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:40;background:rgba(10,17,36,.95);backdrop-filter:blur(10px);border-radius:18px;padding:6px;gap:6px;box-shadow:var(--sh-2)}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:48px;border-radius:13px;color:#fff;font-weight:500;font-size:.9rem}
  .mbar a .i{width:18px;height:18px}
  .mbar a.hot{background:var(--blue)}
  .faq-a{padding-right:0}
  .mega-cta{display:none}
  .phero{padding:24px 0 56px}
  .big-num{font-size:4.2rem}
  .mission-card{padding:28px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .rv{opacity:1;transform:none}
  .audiogram .ln{stroke-dashoffset:0}
  .audiogram .o,.audiogram .xm path{opacity:1}
}
.tiles{grid-template-columns:repeat(5,1fr)}
.cta-acts{flex-wrap:nowrap}
@media (max-width:1180px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media (max-width:720px){.tiles{grid-template-columns:1fr}.cta-acts{flex-wrap:wrap}}
.rec-id b{white-space:nowrap}
@media (max-width:720px){.rec-id{font-size:.76rem}}
