:root{
  color-scheme:light;
  --night:#0a1222; --ink:#0f1b30; --ink-2:#172642;
  --brass:#b08d57; --brass-l:#dcc293; --brass-d:#8a6c3f;
  --ivory:#f4efe2; --paper:#faf7ef; --text:#191b21; --muted:#5d5a52; --mute-d:#b9c1d0;
  --azure:#8fb3ff; --azure-d:#4f72c8; --ok:#7fd1a8;
  --line:rgba(176,141,87,.3); --line-d:rgba(220,194,147,.14);
  --display:'Bricolage Grotesque',system-ui,sans-serif; --serif:'Fraunces',Georgia,serif; --mono:'IBM Plex Mono',ui-monospace,monospace;
  --max:1320px; --gut:clamp(20px,4vw,56px); --ease:cubic-bezier(.16,1,.3,1);
  --grad:linear-gradient(100deg,#ecd9ae 0%,#dcc293 30%,#a9c1ff 100%);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{overflow-x:clip}
body{font-family:var(--display);font-size:16px;line-height:1.6;color:var(--text);background:var(--paper);-webkit-font-smoothing:antialiased}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:400;opacity:.045;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;text-align:inherit}
ul,ol{list-style:none}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:4px}
::selection{background:var(--brass-l);color:var(--night)}
.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gut)}
.skip{position:absolute;left:-999px;top:8px;z-index:500;background:var(--brass-l);color:var(--night);padding:8px 14px}
.skip:focus{left:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.dark{background:var(--night);color:var(--paper)}

/* ---------- type ---------- */
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-d);display:inline-flex;align-items:center;gap:12px;margin-bottom:24px}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 18%,transparent)}
.dark .eyebrow{color:var(--brass-l)}
h1,h2,h3,h4,h5,h6{font-weight:inherit;line-height:1.04;text-wrap:balance}
.h2{font-size:clamp(40px,6vw,92px);font-weight:600;letter-spacing:-.045em;line-height:.98}
.h2 em,.h3 em{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.02em;color:var(--brass-d)}
.dark .h2 em,.dark .h3 em{color:var(--brass-l)}
.h3{font-size:clamp(30px,3.8vw,56px);font-weight:600;letter-spacing:-.04em;line-height:1.02}
.lead{font-size:clamp(17px,1.35vw,20px);line-height:1.55;color:var(--muted);max-width:50ch}
.dark .lead{color:var(--mute-d)}
.g-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;gap:14px;height:56px;padding:0 28px;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;border-radius:999px;overflow:hidden;isolation:isolate;transition:transform .5s var(--ease),color .45s var(--ease),border-color .45s;white-space:nowrap}
.btn::before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;transform:translateY(102%);transition:transform .6s var(--ease)}
.btn:hover::before{transform:none}
.btn-brass{background:var(--brass-l);color:var(--night)}
.btn-brass::before{background:var(--paper)}
.btn-ghost{border:1px solid rgba(250,247,239,.25);color:var(--paper)}
.btn-ghost::before{background:var(--paper)}
.btn-ghost:hover{color:var(--night);border-color:var(--paper)}
.btn-ink{background:var(--night);color:var(--paper)}
.btn-ink::before{background:var(--brass)}
.btn-sm{height:44px;padding:0 20px;font-size:11px}
.arr{position:relative;display:inline-block;width:1.1em;height:1.1em;overflow:hidden}
.arr::before,.arr::after{content:"→";position:absolute;inset:0;display:grid;place-items:center;transition:transform .55s var(--ease)}
.arr::after{transform:translateX(-130%)}
a:hover>.arr::before,button:hover>.arr::before,.hov:hover .arr::before{transform:translateX(130%)}
a:hover>.arr::after,button:hover>.arr::after,.hov:hover .arr::after{transform:none}
.link-u{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .5s var(--ease);padding-bottom:2px}
.link-u:hover{background-size:100% 1px}

/* ---------- reveal ---------- */
.js .rv{opacity:0;transform:translateY(44px);transition:opacity 1.1s var(--ease),transform 1.3s var(--ease);transition-delay:var(--d,0s)}
.js .rv.in{opacity:1;transform:none}
.wd{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .07em .1em 0;margin:0 -.07em -.1em 0}
.wd>i{display:inline-block;font-style:inherit;transform:translateY(108%);transition:transform 1.2s var(--ease);transition-delay:calc(var(--d,0s) + var(--i) * 40ms)}
.in .wd>i{transform:none}

/* ---------- chrome: progress, nav, cursor, indicator ---------- */
.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:210;transform-origin:left;transform:scaleX(0);background:var(--grad)}
.nav-wrap{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));left:0;right:0;z-index:200;padding-inline:var(--gut);transition:transform .7s var(--ease)}
.nav-wrap.hide{transform:translateY(-140%)}
.nav-bar{max-width:var(--max);margin:0 auto;height:64px;display:flex;align-items:center;gap:24px;padding:0 10px 0 12px;border-radius:18px;background:rgba(10,18,34,.62);-webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4);border:1px solid rgba(220,194,147,.14);box-shadow:0 10px 40px -12px rgba(5,10,20,.5);color:var(--paper);transition:background .4s}
.nav-wrap.solid .nav-bar{background:rgba(10,18,34,.86)}
.brand{display:flex;align-items:center;gap:12px;margin-right:auto}
.logo-chip{flex:none;width:40px;height:40px;border-radius:50%;background:var(--paper);display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--brass),inset 0 0 0 3px var(--paper),inset 0 0 0 4px rgba(176,141,87,.5)}
.logo-chip img{width:58%;mix-blend-mode:multiply}
.brand b{display:block;font-weight:600;font-size:17px;letter-spacing:-.02em;line-height:1.1}
.brand small{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-l);margin-top:3px}
.nav{display:flex;gap:4px}
.nav a{position:relative;display:block;padding:0 14px;height:40px;line-height:40px;font-size:14.5px;font-weight:500;border-radius:10px;overflow:hidden;color:rgba(250,247,239,.78);transition:color .3s,background .3s}
.nav a span{display:block;position:relative;transition:transform .5s var(--ease)}
.nav a span::after{content:attr(data-t);position:absolute;left:0;top:100%;color:var(--brass-l)}
.nav a:hover span{transform:translateY(-100%)}
.nav a.act{color:var(--paper);background:rgba(250,247,239,.07)}
.menu-btn{display:none;width:44px;height:44px;border-radius:12px;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:rgba(250,247,239,.07)}
.menu-btn span{width:20px;height:1.5px;background:var(--paper);transition:transform .5s var(--ease)}
.menu-open .menu-btn span:first-child{transform:translateY(3.75px) rotate(45deg)}
.menu-open .menu-btn span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
.mnav{position:fixed;inset:0;z-index:190;background:var(--night);color:var(--paper);padding:110px var(--gut) 40px;display:flex;flex-direction:column;clip-path:circle(0 at calc(100% - 50px) 44px);transition:clip-path .9s var(--ease);visibility:hidden}
.menu-open .mnav{clip-path:circle(150% at calc(100% - 50px) 44px);visibility:visible}
.menu-open{overflow:hidden}
.mnav a.ml{display:flex;align-items:baseline;gap:16px;font-size:clamp(38px,11vw,64px);font-weight:600;letter-spacing:-.045em;line-height:1.15;border-bottom:1px solid var(--line-d);padding:10px 0;opacity:0;transform:translateY(30px);transition:opacity .6s,transform .8s var(--ease)}
.mnav a.ml small{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--brass-l);font-weight:400}
.menu-open .mnav a.ml{opacity:1;transform:none;transition-delay:calc(.25s + var(--i) * 60ms)}
.mnav-foot{margin-top:auto;font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--mute-d);line-height:1.9}
.side-ind{position:fixed;right:22px;top:50%;transform:translateY(-50%);z-index:150;display:flex;flex-direction:column;gap:12px;mix-blend-mode:difference}
.side-ind a{display:flex;align-items:center;justify-content:flex-end;gap:10px;color:#fff;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}
.side-ind a span{opacity:0;transform:translateX(8px);transition:opacity .4s,transform .5s var(--ease)}
.side-ind a i{width:6px;height:6px;border-radius:50%;background:#fff;opacity:.35;transition:all .5s var(--ease)}
.side-ind a.act i{height:22px;border-radius:4px;opacity:1}
.side-ind a.act span,.side-ind:hover a span{opacity:.9;transform:none}
.cur{position:fixed;left:0;top:0;z-index:450;pointer-events:none;mix-blend-mode:difference;display:none}
.cur-dot{width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:#fff}
.cur-ring{width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;border:1px solid rgba(255,255,255,.7);transition:width .4s var(--ease),height .4s var(--ease),margin .4s var(--ease),background .4s}
.cur-ring.big{width:74px;height:74px;margin:-37px 0 0 -37px;background:#fff;border-color:#fff}
.cur-ring.hide,.cur-dot.hide{opacity:0}
@media (pointer:fine){
  .cur-on .cur{display:block}
}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;overflow:hidden;padding:clamp(112px,14vh,150px) 0 36px;display:flex;flex-direction:column;--mx:0;--my:0}
.aurora{position:absolute;inset:0;pointer-events:none}
.aurora i{position:absolute;border-radius:50%;animation:drift 24s ease-in-out infinite alternate}
.aurora i:nth-child(1){width:62vw;height:62vw;left:42%;top:-24%;background:radial-gradient(circle,rgba(176,141,87,.36),transparent 62%)}
.aurora i:nth-child(2){width:54vw;height:54vw;left:62%;top:30%;background:radial-gradient(circle,rgba(79,114,200,.36),transparent 62%);animation-duration:30s;animation-delay:-8s}
.aurora i:nth-child(3){width:44vw;height:44vw;left:-12%;top:46%;background:radial-gradient(circle,rgba(143,179,255,.12),transparent 62%);animation-duration:34s}
@keyframes drift{to{transform:translate(-7%,6%) scale(1.12)}}
.gridlines{position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(220,194,147,.06) 1px,transparent 1px) 0 0/80px 80px,linear-gradient(90deg,rgba(220,194,147,.06) 1px,transparent 1px) 0 0/80px 80px;-webkit-mask:radial-gradient(ellipse 70% 60% at 60% 40%,#000 20%,transparent 75%);mask:radial-gradient(ellipse 70% 60% at 60% 40%,#000 20%,transparent 75%)}
.hero-grid{position:relative;z-index:2;flex:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-template-areas:"t v" "c v";column-gap:clamp(24px,4vw,64px);align-content:center}
.hero-top{grid-area:t;position:relative;z-index:3;align-self:end}
.chip-live{display:inline-flex;align-items:center;gap:10px;height:36px;padding:0 16px 0 12px;border-radius:999px;border:1px solid rgba(220,194,147,.22);background:rgba(250,247,239,.04);font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-l);margin-bottom:28px}
.pulse{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 rgba(127,209,168,.6);animation:pulse 2.2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(127,209,168,0)}100%{box-shadow:0 0 0 0 rgba(127,209,168,0)}}
.hero-h{font-size:clamp(48px,6vw,100px);font-weight:600;letter-spacing:-.055em;line-height:.9}
.hero-h .hl{display:block}
.hero-h .hl+.hl{padding-left:.6em}
.hero-h em.s{font-family:var(--serif);font-style:italic;font-weight:300;letter-spacing:-.03em;color:var(--brass-l)}
.hero-h em.g{font-style:normal;font-weight:700}
.hero-h em.g i{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.caret{display:inline-block;width:.06em;height:.7em;background:var(--azure);margin-left:.06em;vertical-align:-.02em;animation:blink 1.1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.hero-copy{grid-area:c;align-self:start;padding-top:clamp(24px,3vw,40px);position:relative;z-index:3}
.hero-sub{font-size:clamp(17px,1.35vw,20px);line-height:1.55;color:var(--mute-d);max-width:44ch}
.hero-sub b{color:var(--paper);font-weight:500}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.hs{animation:fadeUp 1.2s var(--ease) both;animation-delay:calc(.35s + var(--s) * .12s)}
@keyframes fadeUp{from{opacity:0;transform:translateY(26px)}}
.hero-vis{grid-area:v;align-self:center;position:relative;aspect-ratio:1.32;container-type:inline-size;perspective:1600px;z-index:1}
.hero-vis>*{font-size:1.75cqw}
.s3d{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(calc(9deg - var(--my) * 8deg)) rotateY(calc(-15deg + var(--mx) * 12deg))}
.L{position:absolute;transform:translateZ(var(--z));transform-style:preserve-3d}
.L>.e{animation:layIn 1.6s var(--ease) both;animation-delay:calc(.55s + var(--s) * .14s)}
@keyframes layIn{from{opacity:0;transform:translateY(70px) scale(.94)}}
.fl{animation:float 7s ease-in-out infinite;animation-delay:var(--fd,0s)}
@keyframes float{50%{transform:translateY(-.8em)}}
.hv-ring{left:40%;top:-6%;width:52%;aspect-ratio:1}
.hv-ring .e{position:relative;width:100%;height:100%}
.hv-ring svg{position:absolute;inset:0;width:100%;height:100%;animation:spin 60s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.hv-paper{left:0;top:8%;width:46%}
.paper{background:#fffdf6;color:var(--ink);padding:1.8em 1.7em 1.6em;box-shadow:0 2.4em 5em -1.6em rgba(0,0,0,.55);transform:rotate(-5deg);background-image:repeating-linear-gradient(transparent 0 2.35em,rgba(16,29,51,.06) 2.35em calc(2.35em + 1px))}
.pp-h{display:flex;justify-content:space-between;font-family:var(--mono);font-size:.72em;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-d);border-bottom:1px solid var(--line);padding-bottom:.8em;margin-bottom:.9em}
.paper h5{font-family:var(--serif);font-size:1.7em;font-weight:400;letter-spacing:-.02em;margin-bottom:.7em}
.pp-row{display:grid;grid-template-columns:2em 1fr 6.4em 2em;gap:.6em;align-items:center;font-size:.8em;padding:.5em 0;border-bottom:1px solid rgba(16,29,51,.08)}
.pp-row.hd{font-family:var(--mono);font-size:.62em;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-d)}
.pp-row .nm{height:.5em;background:rgba(16,29,51,.16);border-radius:1px}
.pp-row .dy{font-family:var(--serif);font-style:italic;letter-spacing:.35em;color:var(--ink-2)}
.pp-row span:last-child{font-family:var(--mono);text-align:right}
.hv-app{left:22%;top:24%;width:62%}
.win{background:linear-gradient(180deg,#15233f,#101c33);border-radius:.8em;overflow:hidden;box-shadow:0 3em 6em -1.5em rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.08),inset 0 1px 0 rgba(255,255,255,.08);color:var(--paper)}
.win-bar{display:flex;align-items:center;gap:.45em;padding:.8em 1em;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.06)}
.win-bar i{width:.65em;height:.65em;border-radius:50%;background:rgba(255,255,255,.18)}
.win-bar span{margin-left:1em;font-family:var(--mono);font-size:.78em;color:#7f8aa0;background:rgba(255,255,255,.05);padding:.2em .9em;border-radius:.4em}
.win-body{display:grid;grid-template-columns:3.4em 1fr}
.wb-side{display:flex;flex-direction:column;align-items:center;gap:1em;padding:1.2em 0;border-right:1px solid rgba(255,255,255,.05)}
.wb-side b{font-family:var(--serif);color:var(--brass-l);font-size:1.2em;font-weight:400}
.wb-side i{width:1.4em;height:1.4em;border-radius:.35em;background:rgba(255,255,255,.07)}
.wb-side i.on{background:var(--azure)}
.wb-main{padding:1.3em 1.5em 1.5em;display:flex;flex-direction:column;gap:1.1em}
.wb-top{display:flex;justify-content:space-between;align-items:center;gap:1em}
.mono-s{display:block;font-family:var(--mono);font-size:.74em;letter-spacing:.14em;text-transform:uppercase;color:#7c879c}
.wb-top strong{display:block;font-size:1.5em;font-weight:600;letter-spacing:-.03em}
.pill-ok{font-family:var(--mono);font-size:.72em;padding:.35em .8em;border-radius:1em;background:rgba(127,209,168,.14);color:var(--ok);white-space:nowrap}
.wb-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:.8em}
.wb-kpi div{padding:.8em 1em;border-radius:.5em;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}
.wb-kpi small{display:block;font-size:.78em;color:#8d97ab}
.wb-kpi b{font-size:1.7em;font-weight:600;letter-spacing:-.03em}
.wb-chart{display:flex;align-items:flex-end;gap:.45em;height:6.5em;padding-top:.5em;border-bottom:1px solid rgba(255,255,255,.08)}
.wb-chart i{flex:1;height:var(--h);border-radius:.2em .2em 0 0;background:linear-gradient(to top,rgba(143,179,255,.2),rgba(143,179,255,.7));transform-origin:bottom;animation:grow 1.4s var(--ease) both;animation-delay:calc(1.2s + var(--n,0) * 50ms)}
.wb-chart i:last-child{background:linear-gradient(to top,rgba(220,194,147,.3),var(--brass-l))}
@keyframes grow{from{transform:scaleY(0)}}
.hv-phone{left:74%;top:30%;width:24%}
.phone{aspect-ratio:9/18.5;border-radius:2em;padding:.5em;background:linear-gradient(145deg,#1b2842,#070d1a);box-shadow:0 3em 5em -1.2em rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.14),inset 0 0 0 1px rgba(255,255,255,.05)}
.phone .scr{height:100%;border-radius:1.55em;background:#f7f5ef;color:var(--ink);padding:2em 1.1em 1em;overflow:hidden;display:flex;flex-direction:column;gap:.6em;font-size:.95em}
.phone .scr h6{font-size:1.5em;font-weight:600;letter-spacing:-.03em}
.amt{font-family:var(--mono);font-size:1.3em;padding:.6em .7em;border-radius:.5em;background:var(--night);color:var(--brass-l)}
.kv{display:flex;justify-content:space-between;font-size:.82em;padding:.45em 0;border-bottom:1px solid rgba(16,29,51,.1)}
.kv span:first-child{color:var(--muted)}
.ph-btn{margin-top:auto;text-align:center;font-size:.78em;padding:.8em;border-radius:.6em;background:var(--ink);color:var(--paper)}
.hv-chip .fl{display:flex;align-items:center;gap:.6em;padding:.7em 1.1em;border-radius:.8em;background:rgba(250,247,239,.92);color:var(--ink);font-size:.95em;font-weight:500;white-space:nowrap;box-shadow:0 1.2em 2.4em -1em rgba(0,0,0,.6)}
.hv-chip .fl.d{background:rgba(23,38,66,.85);color:var(--paper);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12)}
.hv-chip small{font-family:var(--mono);font-size:.78em;color:var(--muted)}
.hv-chip .d small{color:#8d97ab}
.dot{width:.7em;height:.7em;border-radius:50%;flex:none}
.c1{left:52%;top:10%}.c2{left:2%;top:74%}.c3{left:68%;top:82%}
.hero-stats{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(28px,4vw,48px);border-top:1px solid var(--line-d)}
.stat{padding:22px 20px 0 0}
.stat+.stat{padding-left:24px;border-left:1px solid var(--line-d)}
.stat b{display:block;font-size:clamp(34px,3.6vw,54px);font-weight:600;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}
.stat b sup{font-size:.5em;color:var(--brass-l);vertical-align:.55em;margin-left:.05em}
.stat>span{display:block;margin-top:8px;font-size:13.5px;color:var(--mute-d);max-width:22ch;line-height:1.4}

/* ---------- manifesto ---------- */
.manifesto{background:var(--paper);padding:clamp(80px,9vw,130px) 0 clamp(96px,11vw,160px);overflow:hidden;position:relative}
.mq{white-space:nowrap;font-size:clamp(56px,9vw,150px);line-height:1.02;will-change:transform}
.mq.a{font-family:var(--serif);font-style:italic;font-weight:300;letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1.2px var(--brass)}
.mq.b{font-weight:700;letter-spacing:-.055em;color:var(--ink)}
.mq .sd{display:inline-block;width:.22em;height:.22em;margin:0 .35em;vertical-align:.28em;border-radius:50%;background:var(--brass)}
.mq.b .sd{background:var(--azure-d)}
.mf{max-width:1160px;margin:clamp(72px,9vw,120px) auto 0;padding-inline:var(--gut);font-size:clamp(28px,3.7vw,56px);line-height:1.14;letter-spacing:-.035em;font-weight:500}
.mf .w{color:rgba(25,27,33,.13);transition:color .5s}
.mf .w.lit{color:var(--ink)}
.mf .w.hs-s{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.02em}
.mf .w.hs-s.lit{color:var(--brass-d)}
.mf .w.hs-g.lit{background:linear-gradient(100deg,var(--brass-d),var(--azure-d));-webkit-background-clip:text;background-clip:text;color:transparent}
.mf-sig{display:flex;align-items:center;gap:16px;max-width:1160px;margin:40px auto 0;padding-inline:var(--gut);font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-d)}
.mf-sig::before{content:"";width:48px;height:1px;background:currentColor}

/* ---------- evolution (pinned) ---------- */
.xf{position:relative;height:270vh;--d:0;--w:0%;--wn:0}
.xf-sticky{position:sticky;top:0;height:100svh;overflow:hidden;display:flex;align-items:center;background:color-mix(in srgb,var(--night) calc(var(--d) * 100%),var(--paper));color:var(--ink);transition:color .6s var(--ease)}
.xf.dk .xf-sticky{color:var(--paper)}
.xf-sticky::before{content:"";position:absolute;inset:0;opacity:var(--d);background:radial-gradient(60% 50% at 80% 30%,rgba(79,114,200,.22),transparent 70%),radial-gradient(50% 50% at 10% 90%,rgba(176,141,87,.18),transparent 70%);pointer-events:none}
.xf-grid{position:relative;width:100%;display:grid;grid-template-columns:minmax(0,4.6fr) minmax(0,7.4fr);gap:clamp(32px,5vw,80px);align-items:center}
.xf .eyebrow{color:var(--brass-d);transition:color .6s}
.xf.dk .eyebrow{color:var(--brass-l)}
.xf .h3 em{color:var(--brass-d);transition:color .6s}
.xf.dk .h3 em{color:var(--brass-l)}
.xf-steps{margin-top:40px;display:grid;gap:4px}
.xf-step{display:grid;grid-template-columns:44px 1fr;gap:4px 12px;padding:16px 0;border-top:1px solid color-mix(in srgb,currentColor 14%,transparent);opacity:.32;transition:opacity .6s}
.xf-step.on{opacity:1}
.xf-step span{font-family:var(--mono);font-size:12px;letter-spacing:.1em;padding-top:5px}
.xf-step b{font-size:20px;font-weight:600;letter-spacing:-.02em}
.xf-step p{grid-column:2;font-size:15px;line-height:1.5;opacity:.75}
.xf-stage{position:relative;aspect-ratio:16/11;container-type:inline-size;border-radius:1.2em;box-shadow:0 3em 7em -2em rgba(5,10,20,.55)}
.xf-stage>.xf-app,.xf-stage>.xf-paper,.xf-stage>.xf-seam{font-size:1.8cqw}
.xf-app,.xf-paper{position:absolute;inset:0;border-radius:1.2em;overflow:hidden}
.xf-paper{clip-path:inset(0 0 0 var(--w));background:#fffdf6;color:var(--ink);padding:2.2em 2.4em;background-image:repeating-linear-gradient(transparent 0 2.6em,rgba(16,29,51,.055) 2.6em calc(2.6em + 1px));box-shadow:inset 0 0 0 1px var(--line)}
.xf-paper::before{content:"";position:absolute;top:0;bottom:0;left:1.2em;width:.3em;border-inline:1px solid rgba(176,141,87,.45)}
.xp-h{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid var(--line);padding-bottom:1em;margin-bottom:1em}
.xp-h small{display:block;font-family:var(--mono);font-size:.75em;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-d);margin-bottom:.4em}
.xp-h h5{font-family:var(--serif);font-size:2.2em;font-weight:400;letter-spacing:-.02em}
.xp-h span{font-family:var(--serif);font-style:italic;color:var(--muted)}
.xp-row{display:grid;grid-template-columns:4.4em 1.4fr repeat(7,1.6em) 3em;gap:.5em;align-items:center;padding:.62em 0;border-bottom:1px solid rgba(16,29,51,.09);font-size:.95em}
.xp-row.hd{font-family:var(--mono);font-size:.7em;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-d)}
.xp-row .c{font-family:var(--mono);font-size:.85em;color:var(--brass-d)}
.xp-row .nm{height:.55em;width:var(--nw,80%);background:rgba(16,29,51,.18)}
.xp-row .m{font-family:var(--serif);font-style:italic;text-align:center;color:var(--ink-2)}
.xp-row .m.a{color:#b0503f}
.xp-row .h{font-family:var(--serif);text-align:right}
.xp-sign{position:absolute;right:2.4em;bottom:1.6em;font-family:var(--serif);font-style:italic;color:var(--muted);font-size:.95em}
.xf-app{background:linear-gradient(180deg,#15233f,#0f1a30);color:var(--paper);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.xa-bar{display:flex;align-items:center;gap:.5em;padding:.9em 1.2em;border-bottom:1px solid rgba(255,255,255,.06)}
.xa-bar i{width:.7em;height:.7em;border-radius:50%;background:rgba(255,255,255,.18)}
.xa-bar b{margin-left:1em;font-weight:500;font-size:.95em}
.xa-bar span{margin-left:auto;font-family:var(--mono);font-size:.75em;color:#7c879c}
.xa-body{display:grid;grid-template-columns:minmax(0,1fr) 12.5em;height:calc(100% - 2.9em)}
.xa-main{padding:1.2em 1.4em;min-width:0}
.xa-tools{display:flex;gap:.6em;margin-bottom:1em}
.xa-tools span{white-space:nowrap;font-size:.8em;padding:.4em .9em;border-radius:2em;border:1px solid rgba(255,255,255,.12);color:#c3c9d6}
.xa-tools span.on{background:var(--azure);color:var(--night);border-color:var(--azure)}
.xa-tools em{margin-left:auto;font-style:normal;font-family:var(--mono);font-size:.75em;color:#7c879c;padding:.45em .9em;border-radius:.4em;background:rgba(255,255,255,.05);flex:0 1 12em;white-space:nowrap;overflow:hidden}
.xa-row{display:grid;grid-template-columns:4.6em minmax(0,1fr) 7.4em 2.4em 5.6em;gap:.7em;align-items:center;padding:.66em .5em;border-bottom:1px solid rgba(255,255,255,.06);font-size:.9em}
.xa-row.hd{font-family:var(--mono);font-size:.68em;letter-spacing:.1em;text-transform:uppercase;color:#7c879c}
.xa-row .c{font-family:var(--mono);color:#c3c9d6;font-size:.85em}
.xa-row .nm{height:.55em;width:var(--nw,80%);background:rgba(255,255,255,.2);border-radius:1px}
.dots7{display:flex;gap:.3em}
.dots7 i{width:.8em;height:.8em;border-radius:.2em;background:rgba(127,209,168,.8)}
.dots7 i.a{background:rgba(240,128,110,.75)}
.dots7 i.o{background:rgba(255,255,255,.12)}
.xa-row .h{font-family:var(--mono);text-align:right}
.st{font-family:var(--mono);font-size:.72em;padding:.25em .7em;border-radius:1em;text-align:center;white-space:nowrap}
.st.ok{background:rgba(127,209,168,.14);color:var(--ok)}
.st.pd{background:rgba(220,194,147,.14);color:var(--brass-l)}
.xa-side{border-left:1px solid rgba(255,255,255,.06);padding:1.2em;min-width:0;display:flex;flex-direction:column;gap:1em}
.xa-side .big{font-size:2.4em;font-weight:600;letter-spacing:-.04em;line-height:1}
.xa-bars{display:flex;align-items:flex-end;gap:.35em;height:6em}
.xa-bars i{flex:1;height:var(--h);border-radius:.15em .15em 0 0;background:rgba(143,179,255,.55)}
.xa-bars i:nth-child(4){background:var(--brass-l)}
.xa-btn{margin-top:auto;text-align:center;font-size:.8em;padding:.8em;border-radius:.5em;background:var(--brass-l);color:var(--night);font-weight:500}
.xf-seam{position:absolute;top:-1.5em;bottom:-1.5em;left:var(--w);width:2px;margin-left:-1px;background:var(--brass);z-index:3;opacity:clamp(0,calc((1 - var(--wn)) * 25),1)}
.xf-seam span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:3.6em;height:3.6em;border-radius:50%;background:var(--brass);color:var(--night);display:grid;place-items:center;box-shadow:0 0 0 .6em rgba(176,141,87,.2),0 1em 2em rgba(0,0,0,.35);font-family:var(--mono);font-size:1em}
.xf-labels{position:absolute;left:0;right:0;bottom:-3.2em;display:flex;justify-content:space-between;font-family:var(--mono);font-size:.9em;letter-spacing:.14em;text-transform:uppercase;opacity:.6}

/* ---------- services explorer ---------- */
.svc{padding:clamp(96px,11vw,160px) 0;background:var(--paper);color:var(--ink);transition:background-color .9s var(--ease),color .9s var(--ease);position:relative;overflow:clip}
.svc[data-world=tech]{background:var(--night);color:var(--paper)}
.svc::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .9s;background:radial-gradient(50% 40% at 85% 10%,rgba(79,114,200,.25),transparent 70%),linear-gradient(rgba(220,194,147,.05) 1px,transparent 1px) 0 0/80px 80px,linear-gradient(90deg,rgba(220,194,147,.05) 1px,transparent 1px) 0 0/80px 80px}
.svc[data-world=tech]::before{opacity:1}
.svc .wrap{position:relative}
.svc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap;margin-bottom:clamp(28px,3vw,40px)}
.svc .eyebrow{transition:color .9s}
.svc[data-world=tech] .eyebrow,.svc[data-world=tech] .h2 em{color:var(--brass-l)}
.switch{position:relative;display:grid;grid-template-columns:1fr 1fr;padding:6px;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 18%,transparent);background:color-mix(in srgb,currentColor 4%,transparent);min-width:min(100%,460px)}
.switch-thumb{position:absolute;top:6px;bottom:6px;left:6px;width:calc(50% - 6px);border-radius:999px;background:var(--ink);transition:transform .8s var(--ease),background .8s;box-shadow:0 8px 24px -8px rgba(10,18,34,.5)}
.svc[data-world=tech] .switch-thumb{transform:translateX(100%);background:var(--brass-l)}
.switch button{position:relative;z-index:1;height:50px;padding:0 20px;border-radius:999px;font-weight:500;font-size:15px;text-align:center;transition:color .6s;white-space:nowrap}
.switch button[aria-selected=true]{color:var(--paper)}
.svc[data-world=tech] .switch button[aria-selected=true]{color:var(--night)}
.svc-intro{font-size:clamp(17px,1.35vw,20px);line-height:1.55;max-width:56ch;opacity:.7;margin-bottom:clamp(40px,5vw,72px)}
.svc[data-world=biz] [data-for=tech],.svc[data-world=tech] [data-for=biz]{display:none}
.svc-body{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.svc-list>li{border-top:1px solid color-mix(in srgb,currentColor 14%,transparent);animation:itemIn .8s var(--ease) both;animation-delay:calc(var(--i) * 70ms)}
.svc-list>li:last-child{border-bottom:1px solid color-mix(in srgb,currentColor 14%,transparent)}
@keyframes itemIn{from{opacity:0;transform:translateY(24px)}}
.si{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:0 12px;width:100%;padding:22px 0}
.si-no{font-family:var(--mono);font-size:12px;letter-spacing:.1em;opacity:.5;transition:opacity .4s,color .4s}
.si-t{font-size:clamp(20px,1.9vw,27px);font-weight:600;letter-spacing:-.03em;line-height:1.15;transition:transform .6s var(--ease),opacity .4s;opacity:.55}
.si-k{grid-column:2;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.5;margin-top:6px}
.si-plus{width:34px;height:34px;border-radius:50%;border:1px solid color-mix(in srgb,currentColor 25%,transparent);display:grid;place-items:center;transition:transform .6s var(--ease),background .4s,border-color .4s}
.si-plus::before{content:"+";font-family:var(--mono);font-size:16px;line-height:1}
.si:hover .si-t{transform:translateX(8px);opacity:1}
.on>.si .si-t{opacity:1}
.on>.si .si-no{opacity:1;color:var(--brass-d)}
.svc[data-world=tech] .on>.si .si-no{color:var(--azure)}
.on>.si .si-plus{transform:rotate(45deg);background:var(--ink);color:var(--paper);border-color:var(--ink)}
.svc[data-world=tech] .on>.si .si-plus{background:var(--brass-l);color:var(--night);border-color:var(--brass-l)}
.si-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .7s var(--ease)}
.on>.si-body{grid-template-rows:1fr}
.si-body>div{overflow:hidden}
.si-body p{padding:0 0 8px 56px;font-size:16px;line-height:1.6;opacity:.78;max-width:56ch}
.tags{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0 26px 56px}
.tags li{font-family:var(--mono);font-size:11px;letter-spacing:.04em;padding:5px 11px;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 18%,transparent);opacity:.8;animation:none}
.svc-stage{position:sticky;top:110px;aspect-ratio:16/11.4;container-type:inline-size;border-radius:1.4em;perspective:1600px}
.svc-stage>.st-world{font-size:1.6cqw}
.stage-bg{position:absolute;inset:0;border-radius:inherit;background:var(--ivory);box-shadow:inset 0 0 0 1px var(--line);transition:background .9s,box-shadow .9s;overflow:hidden}
.stage-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(rgba(176,141,87,.28) 1px,transparent 1.3px) 0 0/22px 22px;opacity:.6}
.svc[data-world=tech] .stage-bg{background:radial-gradient(110% 80% at 75% 0%,rgba(143,179,255,.14),transparent 60%),#0e1a2f;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.svc[data-world=tech] .stage-bg::after{background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px) 0 0/100% 4em,linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px) 0 0/4em 100%;opacity:1}
.st-world{position:absolute;inset:0;transition:opacity .7s var(--ease),transform 1s var(--ease),visibility .7s}
.svc[data-world=tech] .st-biz,.svc[data-world=biz] .st-tech{opacity:0;visibility:hidden;transform:translateY(3em) rotateX(8deg) scale(.96)}
.proto{position:absolute;right:0;bottom:-2.4em;font-family:var(--mono);font-size:.85em;letter-spacing:.14em;text-transform:uppercase;opacity:.5;z-index:9}
/* docs */
.doc{position:absolute;left:50%;top:50%;width:29em;height:38em;margin:-19em 0 0 -14.5em;background:#fffdf7;color:var(--ink);padding:2.5em 2.4em;box-shadow:0 1px 0 rgba(0,0,0,.04),0 2.4em 5em -1.8em rgba(16,29,51,.45);transition:transform 1s var(--ease),filter .6s;overflow:hidden}
.doc[data-pos="0"]{z-index:5;transform:none}
.doc[data-pos="1"]{z-index:4;transform:translate(2.2em,-1.4em) rotate(4deg);filter:brightness(.97)}
.doc[data-pos="2"]{z-index:3;transform:translate(-2.4em,-.4em) rotate(-5deg);filter:brightness(.94)}
.doc[data-pos="3"]{z-index:2;transform:translate(.8em,-2.4em) rotate(1.5deg);filter:brightness(.91)}
.doc[data-pos="4"]{z-index:1;transform:translate(-1em,-2em) rotate(-2.5deg);filter:brightness(.88)}
.doc-h{display:flex;justify-content:space-between;font-family:var(--mono);font-size:.76em;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-d);padding-bottom:1em;border-bottom:1px solid var(--line);margin-bottom:1.7em}
.doc h4{font-family:var(--serif);font-size:2.1em;font-weight:400;line-height:1.1;margin-bottom:.35em;letter-spacing:-.02em}
.doc .sub{font-size:.95em;color:var(--muted);margin-bottom:1.5em}
.bar{height:.55em;background:rgba(16,29,51,.1);margin:.7em 0}
.chk{display:flex;align-items:center;gap:.9em;padding:.75em 0;border-bottom:1px dashed rgba(176,141,87,.4);font-size:1.05em}
.chk i{flex:none;width:1.35em;height:1.35em;border:1px solid var(--brass);display:grid;place-items:center;font-style:normal;font-size:.8em;color:var(--brass-d)}
.chk i::before{content:"✓"}
.chk.todo i::before{content:""}
.stamp{position:absolute;right:2.2em;bottom:2.4em;width:7.6em;height:7.6em;border:2px solid var(--brass);border-radius:50%;display:grid;place-items:center;text-align:center;font-family:var(--mono);font-size:.78em;line-height:1.5;letter-spacing:.14em;color:var(--brass-d);transform:rotate(-14deg)}
.stamp::before{content:"";position:absolute;inset:.4em;border:1px solid var(--brass);border-radius:50%}
.row3{display:grid;grid-template-columns:4.2em 1fr auto;gap:1em;align-items:center;padding:1em 0;border-bottom:1px solid rgba(176,141,87,.3)}
.row3 b{font-family:var(--mono);font-weight:500;color:var(--brass-d)}
.row3 em{font-style:normal;font-family:var(--mono);font-size:.78em;letter-spacing:.06em;padding:.3em .8em;border-radius:1em;background:rgba(16,29,51,.07)}
.doc-foot{position:absolute;left:2.4em;right:2.4em;bottom:2.2em;display:flex;justify-content:space-between;font-family:var(--mono);font-size:.74em;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-d);border-top:1px solid var(--line);padding-top:1em}
.cert{text-align:center;box-shadow:inset 0 0 0 .6em #fffdf7,inset 0 0 0 .7em var(--brass),inset 0 0 0 1em #fffdf7,inset 0 0 0 1.07em var(--brass),0 2.4em 5em -1.8em rgba(16,29,51,.45)}
.cert .doc-h{justify-content:center;border:0;margin-bottom:1em;padding-top:.6em}
.cert h4{font-size:2.3em}
.seal-sm{width:6.4em;height:6.4em;border-radius:50%;margin:1.6em auto;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--brass),inset 0 0 0 .35em #fffdf7,inset 0 0 0 .42em var(--brass)}
.seal-sm img{width:3em;mix-blend-mode:multiply}
.cert .bar{margin-inline:auto}
.steps3{display:flex;justify-content:center;gap:1.4em;margin-top:1.6em;font-family:var(--mono);font-size:.78em;letter-spacing:.08em;text-transform:uppercase;color:var(--brass-d)}
.steps3 span::before{content:"● ";color:var(--brass)}
.steps3 span.p::before{content:"○ "}
.sig{width:9em;height:3em;margin-top:1.2em;color:var(--ink)}
.ltabs{display:flex;gap:.6em;margin-top:1.2em}
.ltabs span{font-family:var(--mono);font-size:.72em;padding:.35em .8em;border-radius:1em;border:1px solid var(--line);color:var(--brass-d)}
.ridx{display:grid;grid-template-columns:2.4em 1fr;gap:.2em .8em;font-size:.9em}
.ridx b{font-family:var(--serif);font-weight:400;font-size:1.3em;color:var(--brass);line-height:1.3}
.ridx span{padding:.25em 0;border-bottom:1px solid rgba(16,29,51,.08);align-self:end}
/* tech panels */
.panel{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateY(2em) scale(.985);transition:opacity .6s,transform 1s var(--ease),visibility .6s}
.panel.on{opacity:1;visibility:visible;transform:none}
.panel .a{opacity:0;transform:translateY(1.6em)}
.panel.on .a{animation:up 1s var(--ease) forwards;animation-delay:var(--d,.05s)}
@keyframes up{to{opacity:1;transform:none}}
.shadow{box-shadow:0 3em 6em -2em rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.06)}
.mk-browser{position:absolute;left:6%;top:9%;width:72%;background:#f7f5ef;color:var(--ink);border-radius:.7em;overflow:hidden}
.mk-bar{display:flex;align-items:center;gap:.5em;padding:.8em 1em;background:#e7e2d6}
.mk-bar i{width:.72em;height:.72em;border-radius:50%;background:#cbc3b1}
.mk-url{margin-left:1.2em;flex:0 1 55%;background:#fff;border-radius:.3em;padding:.3em .8em;font-family:var(--mono);font-size:.85em;color:#7a7568}
.site{padding:1.6em 2.2em 2.2em}
.site-nav{display:flex;align-items:center;gap:1.6em;margin-bottom:2.2em}
.site-nav b{font-family:var(--serif);font-weight:500;font-size:1.25em;margin-right:auto}
.site-nav span{width:3.2em;height:.45em;background:rgba(16,29,51,.18)}
.site-nav em{font-style:normal;background:var(--ink);color:var(--paper);padding:.45em 1em;font-size:.85em;border-radius:2em}
.site-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:2.2em;align-items:center;margin-bottom:2.2em}
.site-hero h5{font-family:var(--serif);font-size:2.7em;font-weight:400;line-height:1.02;letter-spacing:-.025em;margin-bottom:.45em}
.site-hero h5 i{color:var(--brass-d)}
.site-btns{display:flex;gap:.7em;margin-top:1.4em;font-size:.85em}
.site-btns span{padding:.55em 1.1em;border:1px solid var(--ink);border-radius:2em}
.site-btns span:first-child{background:var(--ink);color:var(--paper)}
.site-art{aspect-ratio:1/.9;background:var(--ink);position:relative;overflow:hidden;border-radius:.4em}
.site-art::before{content:"";position:absolute;width:62%;aspect-ratio:1;border-radius:50%;background:var(--brass);right:-12%;top:-10%}
.site-art::after{content:"";position:absolute;left:12%;bottom:12%;width:46%;height:38%;background:repeating-linear-gradient(to bottom,var(--paper) 0 .3em,transparent .3em 1em)}
.site-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4em}
.site-cols div{border-top:1px solid rgba(16,29,51,.15);padding-top:.9em}
.site-cols b{display:block;width:1.6em;height:1.6em;background:var(--brass-l);margin-bottom:.7em;border-radius:.3em}
.site-cols .bar{margin:.5em 0}
.phone-wrap{position:absolute;right:7%;bottom:7%;width:20%}
.mk-phone{aspect-ratio:9/18.5;background:#070d1a;border-radius:1.8em;padding:.5em;border:1px solid rgba(255,255,255,.18)}
.mk-phone .scr{height:100%;background:#f7f5ef;border-radius:1.35em;overflow:hidden;padding:1.8em 1em 1em;color:var(--ink)}
.mk-phone .scr b{font-family:var(--serif);font-weight:500;font-size:.95em}
.mk-phone .scr h6{font-family:var(--serif);font-size:1.5em;font-weight:400;line-height:1.05;margin:1.2em 0 .6em}
.mk-phone .site-art{margin:1em 0}
.mk-phone .pill{display:block;text-align:center;background:var(--ink);color:var(--paper);font-size:.75em;padding:.6em;border-radius:2em}
.mk-app{position:absolute;inset:8% 6% 11%;display:grid;grid-template-columns:4.2em 1fr;background:#111d34;border-radius:.7em;overflow:hidden;color:var(--paper)}
.app-side{background:#0c1629;display:flex;flex-direction:column;align-items:center;gap:1.1em;padding:1.4em 0}
.app-side b{color:var(--brass-l);font-size:1.3em;font-family:var(--serif);font-weight:400}
.app-side i{width:1.6em;height:1.6em;border-radius:.35em;background:rgba(255,255,255,.08)}
.app-side i.on{background:var(--azure)}
.app-main{padding:1.6em 2em;display:flex;flex-direction:column;gap:1.3em;min-width:0}
.app-top{display:flex;justify-content:space-between;align-items:center}
.app-top strong{display:block;font-size:1.6em;font-weight:600;letter-spacing:-.03em}
.chip{font-family:var(--mono);font-size:.8em;padding:.4em .9em;border-radius:2em;border:1px solid rgba(255,255,255,.14);color:#c3c9d6}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:1em}
.kpis div{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);padding:1em 1.2em;border-radius:.5em}
.kpis small{font-size:.85em;color:#8d97ab;display:block}
.kpis b{font-size:1.9em;font-weight:600;letter-spacing:-.04em;display:block;line-height:1.3}
.kpis em{font-style:normal;font-family:var(--mono);font-size:.78em;color:var(--ok)}
.app-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:1em;flex:1;min-height:0}
.app-card{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);border-radius:.5em;padding:1.1em 1.2em;display:flex;flex-direction:column;min-height:0}
.bars{display:flex;align-items:flex-end;gap:.55em;flex:1;border-bottom:1px solid rgba(255,255,255,.1);margin-top:1em;min-height:5em}
.bars i{flex:1;height:var(--h);background:rgba(143,179,255,.35);transform-origin:bottom;transform:scaleY(0);border-radius:.15em .15em 0 0}
.bars i:nth-child(3n){background:var(--azure)}
.bars i:last-child{background:var(--brass-l)}
.panel.on .bars i{animation:grow2 1s var(--ease) forwards;animation-delay:calc(.35s + var(--n) * .05s)}
@keyframes grow2{to{transform:scaleY(1)}}
.lst div{display:flex;justify-content:space-between;align-items:center;padding:.62em 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:.9em}
.lst code{font-family:var(--mono);color:#c3c9d6}
.mk-soft{position:absolute;inset:8% 5% 11%;background:#eef0f4;color:#1c2536;border-radius:.6em;overflow:hidden;display:grid;grid-template-rows:auto auto 1fr}
.soft-title{display:flex;align-items:center;gap:1em;padding:.7em 1.2em;background:#1c2536;color:#c9d2e3;font-size:.9em}
.soft-title b{font-weight:500;color:#fff}
.soft-title span{margin-left:auto;font-family:var(--mono);font-size:.85em;color:#8a93a6}
.soft-tabs{display:flex;background:#fff;border-bottom:1px solid #dde1e8;font-size:.9em}
.soft-tabs span{padding:.8em 1.4em;color:#7a8497}
.soft-tabs span.on{color:#1c2536;box-shadow:inset 0 -2px 0 var(--brass)}
.soft-body{display:grid;grid-template-columns:10em 1fr 12em;min-height:0}
.soft-tree{background:#f6f7f9;border-right:1px solid #dde1e8;padding:1em .8em;font-size:.88em}
.soft-tree li{padding:.45em .7em;color:#56607a;border-radius:.25em}
.soft-tree li.on{background:#e3e8f2;color:#1c2536;font-weight:500}
.soft-form{padding:1.4em 1.8em;background:#fff;min-width:0}
.soft-form h6{font-size:1.35em;font-weight:600;margin-bottom:1em}
.fld{margin-bottom:.9em}
.fld label{display:block;font-family:var(--mono);font-size:.74em;letter-spacing:.08em;text-transform:uppercase;color:#7a8497;margin-bottom:.35em}
.fld div{height:2.4em;border:1px solid #dde1e8;border-radius:.3em;background:#fbfbfc;display:flex;align-items:center;padding:0 .8em;font-size:.9em}
.fld div.tall{height:4.4em;align-items:flex-start;padding-top:.7em}
.fld2{display:grid;grid-template-columns:1fr 1fr;gap:1em}
.soft-btns{display:flex;gap:.7em;justify-content:flex-end}
.soft-btns span{padding:.6em 1.2em;font-size:.85em;border:1px solid #dde1e8;border-radius:.3em}
.soft-btns span.pri{background:#1c2536;color:#fff;border-color:#1c2536}
.soft-side{padding:1.4em 1.2em;border-left:1px solid #dde1e8;background:#fafbfc;font-size:.9em}
.soft-side .mono-s{color:#8a93a6;margin-bottom:1em}
.tl li{position:relative;padding:0 0 1.3em 1.5em}
.tl li::before{content:"";position:absolute;left:0;top:.35em;width:.7em;height:.7em;border-radius:50%;border:1px solid #b8c0cf;background:#fff}
.tl li::after{content:"";position:absolute;left:.33em;top:1.2em;bottom:0;width:1px;background:#dde1e8}
.tl li:last-child::after{display:none}
.tl li.done::before{background:var(--brass);border-color:var(--brass)}
.tl small{display:block;color:#8a93a6;font-family:var(--mono);font-size:.8em}
.mk-flow{position:absolute;inset:5% 5% 8%}
.mk-flow svg{width:100%;height:100%;overflow:visible}
.fp{fill:none;stroke:rgba(220,194,147,.3);stroke-width:1.2}
.fd{fill:none;stroke:var(--azure);stroke-width:1.8;stroke-dasharray:3 11;animation:dash 1.4s linear infinite}
@keyframes dash{to{stroke-dashoffset:-28}}
.node rect{fill:#111d34;stroke:rgba(255,255,255,.16)}
.node .t{fill:#e6e9f0;font-family:var(--display);font-size:15px;font-weight:600}
.node .k{fill:#7c879c;font-family:var(--mono);font-size:9.5px;letter-spacing:1.6px}
.hub rect{fill:#162542;stroke:var(--brass-l)}
.hub .t{fill:var(--brass-l);font-family:var(--serif);font-style:italic;font-size:19px;font-weight:400}
.pulse-dot{fill:var(--azure)}
.ph-wrap{position:absolute;width:25%}
.ph-wrap.p1{left:19%;top:9%}
.ph-wrap.p2{left:47%;top:15%}
.ph{aspect-ratio:9/19;background:linear-gradient(145deg,#1b2842,#070d1a);border-radius:2em;padding:.55em;border:1px solid rgba(255,255,255,.16)}
.p1 .ph{transform:rotate(-6deg)}
.p2 .ph{transform:rotate(4deg)}
.ph .scr{height:100%;border-radius:1.5em;overflow:hidden;background:#f7f5ef;color:var(--ink);padding:2.2em 1.1em 1em;font-size:.95em}
.ph h6{font-size:1.4em;font-weight:600;letter-spacing:-.03em;margin:.3em 0 .9em}
.days{display:grid;grid-template-columns:repeat(5,1fr);gap:.35em;margin-bottom:1em}
.days span{text-align:center;font-family:var(--mono);font-size:.72em;padding:.55em 0;border-radius:.4em;border:1px solid rgba(16,29,51,.12)}
.days span.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.slot{display:flex;justify-content:space-between;padding:.75em .8em;border-radius:.5em;border:1px solid rgba(16,29,51,.12);margin-bottom:.45em;font-size:.85em}
.slot.on{border-color:var(--brass);background:rgba(176,141,87,.1)}
.slot code{font-family:var(--mono)}
.ph .pill{display:block;text-align:center;background:var(--ink);color:var(--paper);font-size:.8em;padding:.8em;margin-top:1em;border-radius:2em}
.done-ic{width:4em;height:4em;border-radius:50%;background:var(--ok);display:grid;place-items:center;margin:2em auto 1em;color:#0b1427;font-size:1.4em}
.ph .ctr{text-align:center}
.toast-wrap{position:absolute;left:62%;top:12%;width:28%}
.toast{background:#fff;color:var(--ink);padding:1em 1.2em;border-radius:.7em;display:flex;gap:.8em;align-items:center;font-size:.95em}
.toast i{flex:none;width:2em;height:2em;border-radius:50%;background:var(--ink);color:var(--brass-l);display:grid;place-items:center;font-style:normal}
.toast small{display:block;color:var(--muted);font-size:.85em}
.tile-wrap{position:absolute;left:6%;bottom:12%;width:22%}
.tile{background:#111d34;border-radius:.7em;padding:1.1em 1.2em;color:var(--paper)}
.tile b{display:block;font-size:1.8em;font-weight:600;letter-spacing:-.04em}
.spark{height:2.4em;width:100%;margin-top:.5em}

/* ---------- registers ---------- */
.reg{background:var(--ivory);padding:clamp(96px,11vw,160px) 0;position:relative;overflow:hidden}
.reg-top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:end;margin-bottom:clamp(48px,6vw,80px)}
.reg-view{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:center;padding:clamp(24px,3vw,40px) 0;border-top:1px solid var(--line)}
.reg-big{font-family:var(--serif);font-weight:300;font-size:clamp(160px,22vw,340px);line-height:.8;color:transparent;-webkit-text-stroke:1.5px var(--brass);width:1.1em;text-align:center}
.reg-big span{display:inline-block}
.reg-info small{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-d);margin-bottom:14px}
.reg-info h3{font-size:clamp(32px,4vw,60px);font-weight:600;letter-spacing:-.045em;line-height:1;color:var(--ink);margin-bottom:18px}
.reg-info p{font-size:clamp(16px,1.3vw,19px);color:var(--muted);max-width:48ch}
.reg-keys{display:grid;grid-template-columns:repeat(10,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rk{position:relative;padding:20px 12px 18px;display:flex;flex-direction:column;gap:6px;min-width:0;transition:background .4s,color .4s}
.rk+.rk{border-left:1px solid var(--line)}
.rk b{font-family:var(--serif);font-weight:400;font-size:clamp(26px,2.6vw,38px);line-height:1;color:var(--brass-d);transition:transform .6s var(--ease),color .4s}
.rk span{font-size:12px;line-height:1.3;color:var(--muted);transition:color .4s}
.rk::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--brass);transform:scaleX(0);transform-origin:left}
.rk:hover b{transform:translateY(-4px)}
.rk.on{background:var(--night)}
.rk.on b{color:var(--brass-l)}
.rk.on span{color:var(--mute-d)}
.reg.auto .rk.on::after{animation:fill 3.6s linear forwards}
@keyframes fill{to{transform:scaleX(1)}}

/* ---------- solutions (horizontal) ---------- */
.sol{position:relative;background:var(--night);color:var(--paper)}
.sol-sticky{position:sticky;top:0;height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.sol-sticky::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 50% at 90% 20%,rgba(79,114,200,.2),transparent 70%),radial-gradient(40% 50% at 0% 100%,rgba(176,141,87,.16),transparent 70%);pointer-events:none}
.sol-track{position:relative;display:flex;gap:clamp(20px,3vw,40px);padding-inline:var(--gut);will-change:transform;align-items:stretch}
.sol-intro{flex:none;width:min(560px,80vw);display:flex;flex-direction:column;justify-content:center;padding-right:clamp(0px,4vw,60px)}
.sol-intro .lead{margin-top:24px}
.sol-hint{margin-top:40px;display:flex;align-items:center;gap:14px;font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-l)}
.sol-hint i{width:60px;height:1px;background:currentColor;position:relative;overflow:hidden}
.sol-hint i::after{content:"";position:absolute;inset:0;background:var(--night);animation:hint 2.2s var(--ease) infinite}
@keyframes hint{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.sp{flex:none;width:min(1060px,80vw);min-height:min(620px,72svh);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:28px;overflow:hidden;border:1px solid rgba(220,194,147,.14);background:linear-gradient(160deg,rgba(23,38,66,.8),rgba(10,18,34,.6));position:relative;transition:border-color .5s}
.sp:hover{border-color:rgba(220,194,147,.35)}
.sp-txt{padding:clamp(28px,3.4vw,52px);display:flex;flex-direction:column}
.sp-no{font-size:clamp(64px,7vw,110px);font-weight:700;letter-spacing:-.06em;line-height:.8;color:transparent;-webkit-text-stroke:1px rgba(220,194,147,.45)}
.sp-txt h3{font-size:clamp(28px,3vw,44px);font-weight:600;letter-spacing:-.045em;line-height:1.02;margin:24px 0 auto}
.sp-txt h3 em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--brass-l);letter-spacing:-.02em}
.sp-rows{margin-top:28px;display:grid}
.sp-rows div{display:grid;grid-template-columns:112px 1fr;gap:16px;padding:16px 0;border-top:1px solid var(--line-d);font-size:15px;line-height:1.5;color:#d2d7e2}
.sp-rows dt{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding-top:3px}
.sp-rows div:first-child dt{color:var(--brass-l)}
.sp-rows div:last-child dt{color:var(--azure)}
.sp-vis{position:relative;container-type:inline-size;background:radial-gradient(80% 60% at 60% 40%,rgba(143,179,255,.12),transparent 70%);overflow:hidden}
.sp-vis>*{font-size:2.2cqw}
.sp-vis>*{transition:transform 1.2s var(--ease)}
.sp:hover .sp-vis>*{transform:scale(1.04) translateY(-.5em)}
.sol-bar{position:relative;margin:36px var(--gut) 0;height:1px;background:rgba(255,255,255,.12)}
.sol-bar i{position:absolute;inset:0;background:var(--grad);transform-origin:left;transform:scaleX(0)}
/* mini visuals */
.mv-br{position:absolute;left:10%;top:16%;width:92%;border-radius:.7em;overflow:hidden;background:#f7f5ef;color:var(--ink);box-shadow:0 2em 4em -1em rgba(0,0,0,.6)}
.mv-br .mk-bar{padding:.7em .9em}
.mv-br .inner{padding:1.6em 1.8em}
.mv-br h5{font-family:var(--serif);font-weight:400;font-size:2.6em;line-height:1;letter-spacing:-.03em;margin-bottom:.4em}
.mv-br h5 i{color:var(--brass-d)}
.mv-br .art{margin-top:1.2em;height:9em;border-radius:.4em;background:linear-gradient(135deg,var(--ink) 55%,var(--brass) 55%)}
.mv-dash{position:absolute;left:10%;top:14%;width:94%;padding:1.6em;border-radius:.8em;background:#111d34;box-shadow:0 2em 4em -1em rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.08)}
.mv-dash .kpis{margin:1em 0}
.mv-dash .kpis b{font-size:1.7em}
.mv-dash .bars i{transform:none}
.mv-flow{position:absolute;inset:10% 6%}
.mv-flow svg{width:100%;height:100%}
.mv-ph{position:absolute;right:14%;top:12%;width:34%}
.mv-paper{position:absolute;left:10%;top:22%;width:46%;transform:rotate(-6deg)}
.mv-paper .paper{transform:none;font-size:.95em}

/* ---------- process ---------- */
.process{background:var(--night);color:var(--paper);padding:clamp(96px,11vw,160px) 0}
.proc-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px;align-items:end;margin-bottom:clamp(56px,7vw,96px)}
.proc{position:relative;display:grid;grid-template-columns:repeat(4,1fr);--pp:0}
.proc::before,.proc::after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(255,255,255,.12)}
.proc::after{background:var(--grad);transform-origin:left;transform:scaleX(var(--pp))}
.pstep{position:relative;padding:40px 28px 0 0;transition:opacity .6s}
.pstep::before{content:"";position:absolute;left:0;top:-6px;width:13px;height:13px;border-radius:50%;background:var(--night);border:1px solid rgba(255,255,255,.3);transition:background .5s,border-color .5s,box-shadow .5s}
.pstep.lit::before{background:var(--brass-l);border-color:var(--brass-l);box-shadow:0 0 0 6px rgba(220,194,147,.15)}
.pn{display:block;font-size:clamp(64px,7vw,110px);font-weight:700;letter-spacing:-.06em;line-height:.85;color:transparent;-webkit-text-stroke:1px rgba(250,247,239,.25);transition:-webkit-text-stroke-color .6s,color .6s}
.pstep.lit .pn{-webkit-text-stroke-color:var(--brass-l)}
.pstep h3{font-size:clamp(26px,2.4vw,36px);font-weight:600;letter-spacing:-.04em;margin:22px 0 12px}
.pstep:last-child h3{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--brass-l);letter-spacing:-.02em}
.pstep p{font-size:15px;line-height:1.55;color:var(--mute-d);max-width:30ch}

/* ---------- story ---------- */
.story{background:var(--paper);padding:clamp(96px,11vw,160px) 0}
.story-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.story-year{position:sticky;top:18vh;height:min(420px,52vh)}
.sy-box{position:relative;height:100%;overflow:hidden}
.sy{position:absolute;left:0;bottom:0;font-size:clamp(110px,15vw,240px);line-height:.85;letter-spacing:-.06em;transition:transform 1.1s var(--ease),opacity .8s}
.sy.a{font-family:var(--serif);font-weight:300;color:var(--ink)}
.sy.b{font-weight:700;transform:translateY(110%);opacity:0}
.sy.b i{background:var(--grad);background:linear-gradient(100deg,var(--brass-d),var(--azure-d));-webkit-background-clip:text;background-clip:text;color:transparent;font-style:normal}
.story.ch2 .sy.a{transform:translateY(-110%);opacity:0}
.story.ch2 .sy.b{transform:none;opacity:1}
.sy-cap{position:absolute;left:0;top:0;font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-d)}
.sy-cap b{font-weight:500;display:inline-block;transition:transform .6s var(--ease)}
.chap{padding:clamp(32px,4vw,56px) 0;border-top:1px solid var(--line)}
.chap-yr{display:none}
.chap h3{font-size:clamp(26px,2.6vw,38px);font-weight:600;letter-spacing:-.04em;margin-bottom:20px;color:var(--ink)}
.chap h3 em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--brass-d);letter-spacing:-.02em}
.chap p{font-size:17px;line-height:1.65;color:#3d3b36;max-width:60ch;margin-bottom:16px}
.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.pills li{font-size:13.5px;padding:8px 14px;border-radius:999px;background:var(--night);color:var(--paper);transition:transform .5s var(--ease),background .4s}
.pills li:hover{transform:translateY(-3px);background:var(--ink-2)}
.commit{margin-top:clamp(32px,4vw,56px);padding:clamp(28px,3vw,44px);border-radius:24px;background:var(--ivory);position:relative;overflow:hidden}
.commit::before{content:"“";position:absolute;right:.1em;top:-.2em;font-family:var(--serif);font-size:240px;line-height:1;color:rgba(176,141,87,.18)}
.commit small{font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-d)}
.commit p{position:relative;font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(22px,2.3vw,32px);line-height:1.3;color:var(--ink);margin-top:14px;max-width:34ch}

/* ---------- values ---------- */
.why{background:var(--paper);padding:0 0 clamp(96px,11vw,160px)}
.why-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;align-items:end;margin-bottom:clamp(56px,7vw,96px);padding-top:clamp(40px,5vw,72px);border-top:1px solid var(--line)}
.vm{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2vw,24px);margin-bottom:clamp(72px,9vw,120px)}
.vm article{position:relative;padding:clamp(28px,3.4vw,48px);border-radius:24px;background:var(--night);color:var(--paper);overflow:hidden;isolation:isolate}
.vm article::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(70% 70% at 100% 0%,rgba(176,141,87,.28),transparent 70%);transition:opacity .6s;opacity:.6}
.vm article:nth-child(2)::before{background:radial-gradient(70% 70% at 100% 0%,rgba(79,114,200,.32),transparent 70%)}
.vm article:hover::before{opacity:1}
.vm small{font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-l)}
.vm h3{font-size:clamp(26px,2.6vw,38px);font-weight:600;letter-spacing:-.04em;margin:18px 0 16px}
.vm p{font-size:17px;line-height:1.6;color:#c9cfdb;max-width:46ch}
.vals-lbl{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px}
.val{position:relative;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,6fr) minmax(0,4.6fr);gap:32px;align-items:center;padding:clamp(28px,3vw,44px) clamp(12px,2vw,28px);border-top:1px solid var(--line);isolation:isolate;overflow:hidden}
.val:last-child{border-bottom:1px solid var(--line)}
.val::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--night);transform:scaleY(0);transform-origin:bottom;transition:transform .7s var(--ease)}
.vn{font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--brass-d);transition:color .5s}
.val h3{font-size:clamp(34px,5vw,78px);font-weight:600;letter-spacing:-.055em;line-height:.95;color:var(--ink);transition:color .5s,transform .8s var(--ease)}
.val h3 em{font-family:var(--serif);font-style:italic;font-weight:300;letter-spacing:-.03em;color:var(--brass-d);transition:color .5s}
.vd p{font-size:16px;line-height:1.55;color:#3d3b36;transition:color .5s}
.vd small{display:block;margin-top:10px;font-family:var(--mono);font-size:11.5px;letter-spacing:.02em;color:var(--brass-d);transition:color .5s}
@media (hover:hover){
  .val:hover::after{transform:scaleY(1)}
  .val:hover h3{color:var(--paper);transform:translateX(.18em)}
  .val:hover h3 em,.val:hover .vn,.val:hover .vd small{color:var(--brass-l)}
  .val:hover .vd p{color:#c9cfdb}
}

/* ---------- contact ---------- */
.contact{position:relative;overflow:hidden;padding:clamp(110px,12vw,170px) 0}
.contact .aurora i:nth-child(1){left:-20%;top:-30%}
.contact .aurora i:nth-child(2){left:60%;top:40%}
.ct-big{position:relative;font-size:clamp(52px,9vw,150px);font-weight:600;letter-spacing:-.06em;line-height:.9;margin-bottom:clamp(48px,6vw,88px)}
.ct-big em{font-family:var(--serif);font-style:italic;font-weight:300;letter-spacing:-.03em;color:var(--brass-l)}
.ct-grid{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.ct-info .lead{margin-bottom:36px}
.ct-row{display:grid;grid-template-columns:92px 1fr;gap:16px;padding:20px 0;border-top:1px solid var(--line-d);align-items:baseline}
.ct-row:last-of-type{border-bottom:1px solid var(--line-d)}
.ct-row dt{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-l)}
.ct-row dd{font-size:19px;font-weight:500;letter-spacing:-.02em;line-height:1.45}
.copy-btn{margin-top:10px;display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-l);padding:7px 12px;border-radius:999px;border:1px solid var(--line-d);transition:background .4s,color .4s}
.copy-btn:hover{background:var(--brass-l);color:var(--night)}
.enq{position:relative;padding:clamp(24px,3.4vw,44px);border-radius:28px;background:rgba(250,247,239,.045);border:1px solid rgba(250,247,239,.1);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 40px 80px -40px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.06)}
.enq fieldset{border:0;margin-bottom:26px}
.enq legend,.f label{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-l);margin-bottom:12px}
.opts{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:6px;border-radius:18px;background:rgba(10,18,34,.5);border:1px solid rgba(250,247,239,.08)}
.opt{position:relative;cursor:pointer}
.opt input,.chip-o input{position:absolute;opacity:0;pointer-events:none}
.opt span{display:flex;align-items:center;justify-content:center;text-align:center;height:100%;min-height:48px;padding:10px;border-radius:13px;font-size:14px;font-weight:500;color:#c3c9d6;transition:background .4s,color .4s}
.opt:hover span{color:var(--paper)}
.opt input:checked+span{background:var(--brass-l);color:var(--night)}
.opt input:focus-visible+span,.chip-o input:focus-visible+span{outline:2px solid var(--brass-l);outline-offset:2px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip-o span{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;font-size:13.5px;border-radius:999px;border:1px solid rgba(255,255,255,.14);color:#c3c9d6;cursor:pointer;transition:all .35s var(--ease)}
.chip-o span::before{content:"+";font-family:var(--mono);color:var(--brass-l);transition:transform .4s var(--ease)}
.chip-o[data-g=t] span::before{color:var(--azure)}
.chip-o:hover span{border-color:rgba(255,255,255,.4);color:var(--paper)}
.chip-o input:checked+span{background:var(--paper);color:var(--night);border-color:var(--paper)}
.chip-o input:checked+span::before{content:"✓";color:var(--brass-d)}
.enq:has(input[data-g=biz]:checked) .chip-o[data-g=t],.enq:has(input[data-g=tech]:checked) .chip-o[data-g=b]{display:none}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
.f{display:flex;flex-direction:column;margin-bottom:22px;position:relative}
.f.full{grid-column:1/-1}
.f label{margin-bottom:4px;color:#8d97ab;transition:color .3s}
.f:focus-within label{color:var(--brass-l)}
.f input,.f textarea{background:transparent;border:0;border-bottom:1px solid rgba(250,247,239,.18);color:var(--paper);font:inherit;font-size:17px;padding:10px 0 12px;border-radius:0}
.f input:focus,.f textarea:focus{outline:0}
.f::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease)}
.f:focus-within::after{transform:scaleX(1)}
.f textarea{resize:vertical;min-height:100px}
.enq-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:8px}
.enq-foot p{font-size:13.5px;color:#8d97ab;max-width:30ch}
.enq-status{margin-top:16px;font-size:14px;color:var(--ok);min-height:1.4em}
.enq-out{margin-top:8px;display:grid;gap:14px}
.enq-out[hidden]{display:none}
.enq-out textarea{width:100%;min-height:150px;background:rgba(10,18,34,.6);color:var(--paper);border:1px solid rgba(250,247,239,.12);border-radius:14px;padding:14px;font:13px/1.5 var(--mono);resize:vertical}
.enq-out .row{display:flex;gap:10px;flex-wrap:wrap}

/* ---------- footer ---------- */
.foot{background:var(--night);color:var(--mute-d);padding:clamp(72px,8vw,110px) 0 28px;overflow:hidden;border-top:1px solid var(--line-d)}
.foot-grid{display:grid;grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2.4fr));gap:40px}
.foot-brand{display:flex;align-items:center;gap:12px;color:var(--paper);margin-bottom:18px}
.foot-brand b{font-weight:600;font-size:20px;letter-spacing:-.02em}
.foot-grid>div>p{font-size:15px;max-width:32ch;line-height:1.55}
.foot h4,.foot-h{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-l);margin-bottom:18px;font-weight:500}
.foot li{margin-bottom:10px;font-size:15px}
.foot a{transition:color .3s}
.foot a:hover{color:var(--paper)}
.top-btn{margin-top:24px}
.foot-mark{display:flex;justify-content:center;white-space:nowrap;margin-top:clamp(56px,7vw,100px);font-size:12.2vw;line-height:.86;letter-spacing:-.06em;user-select:none;overflow:hidden;padding-bottom:.04em}
.foot-mark .ch{display:inline-block;transform:translateY(100%);transition:transform 1.2s var(--ease);transition-delay:calc(var(--i) * 35ms)}
.foot-mark.in .ch{transform:none}
.foot-mark .s{font-family:var(--serif);font-weight:300;font-style:italic;color:var(--brass-l);letter-spacing:-.03em}
.foot-mark .t{font-weight:700;color:var(--paper)}
.foot-mark .gp{width:.25em}
.foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line-d);padding-top:22px;margin-top:28px;font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;color:#6f7a90}

/* ---------- responsive ---------- */
@media (max-width:1180px){
  .nav a{padding:10px 10px;font-size:14px}
  .side-ind{display:none}
  .soft-body{grid-template-columns:9em 1fr 10.5em}
}
@media (max-width:980px){
  .nav,.nav-bar>.btn{display:none}
  .menu-btn{display:flex}
  .hero-grid{grid-template-columns:1fr;grid-template-areas:"t" "c" "v";align-content:start}
  .hero-h{font-size:clamp(48px,9.4vw,96px)}
  .s3d{transform:rotateX(6deg) rotateY(-9deg)}
  .hero-vis{margin-top:clamp(28px,5vw,48px)}
  .hero-vis{max-width:640px;width:100%;justify-self:center}
  .hero-h .hl+.hl{padding-left:0}
  .xf-grid{grid-template-columns:1fr;gap:20px}
  .xf-steps{margin-top:18px}
  .xf-step{padding:10px 0}
  .xf-step p{display:none}
  .svc-body{grid-template-columns:1fr}
  .svc-stage{position:relative;top:auto;order:-1;margin-bottom:48px}
  .reg-top,.proc-head,.why-head,.ct-grid,.story-grid{grid-template-columns:1fr}
  .story-year{display:none}
  .chap-yr{display:block;font-size:clamp(72px,18vw,120px);line-height:.9;letter-spacing:-.06em;margin-bottom:18px}
  .chap-yr.a{font-family:var(--serif);font-weight:300;color:var(--ink)}
  .chap-yr.b{font-weight:700;background:linear-gradient(100deg,var(--brass-d),var(--azure-d));-webkit-background-clip:text;background-clip:text;color:transparent}
  .foot-grid{grid-template-columns:1fr 1fr}
  .foot-grid>div:first-child{grid-column:1/-1}
}
@media (max-width:860px){
  .xf{height:160vh}
  .xf-sticky{align-items:flex-start;padding-top:96px}
  .xf .h3{font-size:clamp(28px,7vw,40px)}
  .xf-labels{bottom:-2.6em}
  .sol-sticky{position:static;height:auto;padding:clamp(96px,14vw,130px) 0 64px}
  .sol-track{flex-direction:column;transform:none!important;gap:20px}
  .sol-intro{width:auto;padding:0 0 20px}
  .sol-hint{display:none}
  .sp{width:100%;min-height:0;grid-template-columns:1fr}
  .sp-vis{aspect-ratio:1.3;order:-1}
  .sp-txt h3{margin-bottom:0}
  .sol-bar{display:none}
  .proc{grid-template-columns:1fr;gap:0;padding-left:28px}
  .proc::before,.proc::after{left:0;right:auto;top:0;bottom:0;width:1px;height:auto}
  .proc::after{transform:scaleY(var(--pp));transform-origin:top}
  .pstep{padding:0 0 44px}
  .pstep::before{left:-34px;top:8px}
  .reg-keys{grid-template-columns:repeat(5,1fr)}
  .rk:nth-child(6){border-left:0}
  .rk:nth-child(n+6){border-top:1px solid var(--line)}
  .rk span{display:none}
  .reg-view{grid-template-columns:1fr;gap:8px}
  .reg-big{width:auto;text-align:left;font-size:clamp(120px,36vw,200px)}
  .vm{grid-template-columns:1fr}
  .val{grid-template-columns:1fr;gap:10px;padding-inline:0}
}
@media (max-width:620px){
  .hero{padding-top:104px}
  .hero-h{font-size:clamp(40px,12.4vw,72px)}
  .hv-ring{display:none}
  .c1{left:46%;top:14%}
  .c2{top:78%}
  .chip-live{font-size:10px;letter-spacing:.08em}
  .brand small{display:none}
  .hero-stats{grid-template-columns:1fr 1fr}
  .stat:nth-child(3){padding-left:0;border-left:0}
  .stat:nth-child(n+3){margin-top:18px;border-top:1px solid var(--line-d)}
  .btn{height:52px;padding:0 22px}
  .switch{min-width:100%}
  .switch button{font-size:13.5px;padding:0 10px}
  .si-body p,.tags{padding-left:0}
  .opts{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .ct-row{grid-template-columns:1fr;gap:6px}
  .sp-rows div{grid-template-columns:1fr;gap:4px}
  .hv-chip.c3{display:none}
}
@media (min-width:621px) and (max-width:860px){
  .sp{grid-template-columns:1fr 1fr}
  .sp-vis{aspect-ratio:auto;order:0;min-height:300px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* =========================================================
   Multi-page additions
   ========================================================= */
.foot-h{font-size:11px;line-height:1.3}
address{font-style:normal}

/* ---------- inner page hero ---------- */
.page-hero{position:relative;overflow:hidden;padding:clamp(120px,15vh,160px) 0 clamp(64px,8vw,110px)}
.ph-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(32px,5vw,72px);align-items:center}
.ph-grid.solo{grid-template-columns:minmax(0,1fr);max-width:980px;margin-left:0}
.crumbs ol{display:flex;flex-wrap:wrap;gap:6px 10px;font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute-d);margin-bottom:26px}
.crumbs li+li::before{content:"/";margin-right:10px;opacity:.5}
.crumbs a{color:var(--brass-l)}
.crumbs a:hover{text-decoration:underline}
.ph-h{font-size:clamp(40px,5.6vw,88px);font-weight:600;letter-spacing:-.05em;line-height:.96;margin-bottom:26px}
.ph-h em{font-family:var(--serif);font-style:italic;font-weight:300;letter-spacing:-.03em;color:var(--brass-l)}
.page-hero .hero-sub{max-width:52ch}
.ph-vis{position:relative}
.sv-stage{position:relative;aspect-ratio:16/11.4;container-type:inline-size;border-radius:1.4em}
.sv-stage.biz{background:var(--ivory);box-shadow:inset 0 0 0 1px var(--line),0 40px 80px -40px rgba(0,0,0,.6)}
.sv-stage.biz::after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(rgba(176,141,87,.28) 1px,transparent 1.3px) 0 0/22px 22px;opacity:.6;pointer-events:none}
.sv-stage.tech{background:radial-gradient(110% 80% at 75% 0%,rgba(143,179,255,.14),transparent 60%),#0e1a2f;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 40px 80px -40px rgba(0,0,0,.6)}
.sv-in{position:absolute;inset:0;font-size:1.6cqw;z-index:1}
.page-top{padding-top:clamp(130px,16vh,170px)}

/* ---------- service index rows ---------- */
.svc-index{padding:clamp(88px,10vw,150px) 0;background:var(--paper)}
.svc-index.dark{background:var(--night)}
.split-h{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:12px 40px;margin-bottom:clamp(40px,5vw,72px)}
.split-h .eyebrow{grid-column:1/-1;margin-bottom:0}
.split-h .lead{align-self:end}
.svc-rows>li{border-top:1px solid color-mix(in srgb,currentColor 14%,transparent)}
.svc-rows>li:last-child{border-bottom:1px solid color-mix(in srgb,currentColor 14%,transparent)}
.svc-row{position:relative;display:grid;grid-template-columns:52px minmax(0,4.6fr) minmax(0,6fr) 48px;gap:20px;align-items:center;padding:clamp(22px,2.6vw,34px) clamp(8px,1.4vw,20px);isolation:isolate;overflow:hidden}
.svc-row::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--night);transform:scaleY(0);transform-origin:bottom;transition:transform .7s var(--ease)}
.dark .svc-row::before{background:var(--paper)}
.sr-no{font-family:var(--mono);font-size:12px;letter-spacing:.1em;opacity:.55}
.sr-t{font-size:clamp(22px,2.3vw,34px);font-weight:600;letter-spacing:-.035em;line-height:1.1;transition:color .45s,transform .7s var(--ease)}
.sr-t small{display:block;margin-top:8px;font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;opacity:.55}
.sr-d{font-size:15px;line-height:1.55;opacity:.75;transition:color .45s}
.sr-go{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;border:1px solid color-mix(in srgb,currentColor 25%,transparent);transition:background .45s,color .45s,border-color .45s}
@media (hover:hover){
  .svc-row:hover::before{transform:scaleY(1)}
  .svc-row:hover{color:var(--paper)}
  .dark .svc-row:hover{color:var(--night)}
  .svc-row:hover .sr-t{transform:translateX(.25em)}
  .svc-row:hover .sr-go{background:var(--brass-l);color:var(--night);border-color:var(--brass-l)}
}
.svc-row:focus-visible{outline-offset:-2px}
.si-more{display:inline-flex;align-items:center;gap:10px;margin:0 0 26px 56px;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-d)}
.svc[data-world=tech] .si-more{color:var(--brass-l)}

/* ---------- quote band ---------- */
.quote-band{background:var(--ivory);padding:clamp(80px,10vw,140px) 0}
.quote-band blockquote{font-size:clamp(34px,5.4vw,84px);font-weight:600;letter-spacing:-.05em;line-height:1;color:var(--ink);max-width:16ch}
.quote-band blockquote em{font-family:var(--serif);font-style:italic;font-weight:300;letter-spacing:-.03em;color:var(--brass-d)}
.quote-band p{margin-top:28px;font-size:clamp(16px,1.3vw,19px);color:var(--muted);max-width:54ch}

/* ---------- compliance calendar ---------- */
.cal{background:var(--paper);padding:clamp(88px,10vw,150px) 0}
.cal-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.cal .lead{margin-top:20px}
.cal-note{margin-top:20px;font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;line-height:1.6;color:var(--brass-d);max-width:46ch;padding:12px 14px;border:1px dashed var(--line);border-radius:12px}
.cal-list{display:grid;gap:12px}
.cal-list li{display:grid;grid-template-columns:minmax(0,11em) minmax(0,1fr);gap:4px 24px;padding:22px 24px;border-radius:18px;background:var(--ivory);transition:transform .6s var(--ease),box-shadow .6s}
.cal-list li:hover{transform:translateY(-3px);box-shadow:0 20px 40px -24px rgba(16,29,51,.35)}
.cal-when{grid-row:span 2;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-d);padding-top:4px}
.cal-list b{font-size:20px;font-weight:600;letter-spacing:-.025em;color:var(--ink)}
.cal-list li>span:last-child{font-size:15px;color:var(--muted)}

/* ---------- who we serve / coverage / why ---------- */
.cal.alt{background:var(--ivory)}
.cal.alt .incl li{background:var(--paper)}
.incl.solo{margin-top:0}
.incl.solo li:last-child:nth-child(odd){grid-column:1/-1}
.gain{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.gain li{display:grid;gap:10px;align-content:start;padding:24px;border-radius:18px;background:var(--ivory)}
.gain b{font-size:20px;font-weight:600;letter-spacing:-.025em;line-height:1.2;color:var(--ink)}
.gain span{font-size:15px;line-height:1.5;color:var(--muted)}
.doc[data-pos="5"],.doc[data-pos="6"],.doc[data-pos="7"]{z-index:0;opacity:0;visibility:hidden}

/* ---------- CTA band ---------- */
.cta-band{position:relative;overflow:hidden;padding:clamp(110px,12vw,170px) 0}
.cta-in{position:relative}
.cta-band .ct-big{margin-bottom:36px}

/* ---------- service detail ---------- */
.svc-detail{background:var(--paper);padding:clamp(88px,10vw,140px) 0}
.sd-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,80px);align-items:start}
.incl{margin-top:36px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.incl li{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;border-radius:14px;background:var(--ivory);font-weight:500;line-height:1.35}
.incl li::before{content:"✓";flex:none;width:22px;height:22px;border-radius:50%;background:var(--night);color:var(--brass-l);display:grid;place-items:center;font-size:11px;margin-top:1px}
.sd-card{position:sticky;top:110px;padding:clamp(24px,3vw,36px);border-radius:24px;background:var(--night);color:var(--paper)}
.sd-card .mono-s{color:var(--brass-l);margin-bottom:12px}
.sd-card ul{display:grid;gap:14px;margin-bottom:26px}
.sd-card li{font-size:15px;color:var(--mute-d);line-height:1.5;padding-bottom:14px;border-bottom:1px solid var(--line-d)}
.sd-card li b{display:block;color:var(--paper);font-size:17px;font-weight:600;letter-spacing:-.02em}

/* ---------- FAQ ---------- */
.faq{background:var(--ivory);padding:clamp(88px,10vw,140px) 0}
.faq-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,80px);align-items:start}
.qa{border-top:1px solid var(--line)}
.qa:last-child{border-bottom:1px solid var(--line)}
.qa summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;cursor:pointer;list-style:none;font-size:clamp(18px,1.6vw,22px);font-weight:600;letter-spacing:-.02em;color:var(--ink)}
.qa summary::-webkit-details-marker{display:none}
.qa summary i{flex:none;position:relative;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);transition:background .4s}
.qa summary i::before,.qa summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;margin:-.75px 0 0 -6px;background:var(--ink)}
.qa summary i::after{transform:rotate(90deg);transition:transform .5s var(--ease)}
.qa[open] summary i{background:var(--night);border-color:var(--night)}
.qa[open] summary i::before,.qa[open] summary i::after{background:var(--brass-l)}
.qa[open] summary i::after{transform:rotate(0)}
.qa-a p{padding:0 56px 26px 0;font-size:16.5px;line-height:1.65;color:#3d3b36;max-width:62ch}

/* ---------- related ---------- */
.related{background:var(--paper);padding:clamp(80px,9vw,130px) 0}
.xlink{margin-top:32px;font-size:15px;color:var(--muted)}
.xlink a{color:var(--ink);font-weight:500}

/* ---------- guided enquiry ---------- */
.steps-dots{display:none}
.stepped .steps-dots{display:flex;gap:8px;margin-bottom:28px;counter-reset:s}
.steps-dots li{flex:1;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#8d97ab;padding-top:12px;border-top:2px solid rgba(250,247,239,.14);transition:color .4s,border-color .4s}
.steps-dots li::before{counter-increment:s;content:"0" counter(s) "\00a0\00a0"}
.steps-dots li.on,.steps-dots li.done{color:var(--brass-l);border-color:var(--brass-l)}
.stepped .step{display:none}
.stepped .step.is-cur{display:block;animation:stepIn .6s var(--ease)}
@keyframes stepIn{from{opacity:0;transform:translateX(18px)}}
.step-hint{margin-top:12px;font-size:13px;color:#8d97ab}
.enq-foot{justify-content:flex-start}
.enq-foot .step-send,.enq-foot .step-next{margin-left:auto}
.enq.sending .step-send{opacity:.6;pointer-events:none}
.enq-status.err{color:#f0a48f}
.enq-status.ok{color:var(--ok);font-size:16px}

/* ---------- mobile action bar ---------- */
.m-bar{display:none}
@media (max-width:760px){
  .m-bar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:180;display:grid;grid-template-columns:1.3fr 1fr;gap:8px;padding:8px;border-radius:999px;background:rgba(10,18,34,.92);border:1px solid rgba(220,194,147,.18);box-shadow:0 16px 40px -12px rgba(0,0,0,.6);transition:transform .6s var(--ease),opacity .4s}
  .m-bar .btn{justify-content:center;height:46px}
  .m-bar.hide{transform:translateY(160%);opacity:0;pointer-events:none}
  .foot{padding-bottom:96px}
  body::after{display:none}
  .enq{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(23,38,66,.7)}
}

/* ---------- 3D knight ---------- */
.knight3d{position:absolute;inset:-8% -6%;width:112%;height:116%;z-index:0;opacity:0;transition:opacity 1.6s var(--ease);pointer-events:none}
.is3d .knight3d{opacity:1}
.is3d .hv-paper,.is3d .hv-app,.is3d .hv-phone,.is3d .hv-ring{opacity:0;visibility:hidden;transition:opacity .8s,visibility .8s}
.is3d .c1{left:60%;top:14%}
.is3d .c2{left:12%;top:66%}
.is3d .c3{left:62%;top:80%}

/* ---------- pause offscreen ---------- */
.off .aurora i,.off .hv-ring svg,.off .pulse,.off .caret,.off .fl{animation-play-state:paused}

/* ---------- responsive for new parts ---------- */
@media (max-width:980px){
  .ph-grid,.cal-grid,.sd-grid,.faq-grid,.split-h{grid-template-columns:1fr}
  .gain{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ph-vis{max-width:640px}
  .sd-card{position:static}
}
@media (max-width:760px){
  .svc-row{grid-template-columns:36px minmax(0,1fr) 40px;gap:6px 12px}
  .sr-d{grid-column:2/3}
  .sr-go{width:40px;height:40px;grid-row:1;grid-column:3}
  .incl,.gain{grid-template-columns:1fr}
  .cal-list li{grid-template-columns:1fr}
  .cal-when{grid-row:auto}
  .qa-a p{padding-right:0}
  .si-more{margin-left:0}
}

.logo-chip img{height:auto}
.cur{opacity:0;transition:opacity .4s}
.cur-live .cur{opacity:1}

.enq-foot [hidden],.enq [hidden]{display:none!important}
