/* Layout: a dark studio in liquid platinum. Near-black base, two brushed-platinum bands (statement, why-deck) for contrast, one metal gradient as the only accent. Hero = live liquid-platinum surface; portal = platinum light streaks; stacking pillar cards; dealt deck. Single fixed look. */
:root{
  --bg:#0B0B0C;--bg-2:#101113;--card:#141518;--graphite:#1C1C1F;
  --text:#F2F4F7;--mute:#9AA6B5;--steel:#6E809A;--plat:#C8D4E2;--white:#FFFFFF;
  --ink:#0B0B0C;--mute-l:#535F70;
  --line:rgba(200,212,226,.12);--line-2:rgba(200,212,226,.24);--line-l:rgba(11,11,12,.14);
  --metal:linear-gradient(180deg,#ffffff 0%,#dfe8f2 25%,#8fa1b8 50%,#f2f7fc 60%,#6e809a 85%,#c8d4e2 100%);
  --metal-x:linear-gradient(105deg,#c8d4e2 0%,#ffffff 16%,#9fb0c4 34%,#f2f7fc 50%,#7d8fa8 68%,#e6edf5 84%,#c8d4e2 100%);
  --brushed:linear-gradient(180deg,#F3F5F8 0%,#E5EAF0 55%,#D7DEE7 100%);
  --sans:"Poppins","Helvetica Neue",Arial,system-ui,sans-serif;
  --h1:clamp(52px,8.4vw,148px);--h2:clamp(38px,5vw,80px);--h3:clamp(28px,2.9vw,46px);--h4:clamp(22px,2vw,30px);
  --sheen:linear-gradient(100deg,rgba(255,255,255,0) 42%,rgba(255,255,255,.95) 50%,rgba(255,255,255,0) 58%);
  --metal-d:linear-gradient(180deg,#6e809a 0%,#2a313b 32%,#8fa1b8 52%,#1c2129 74%,#55647a 100%);
  --gutter:clamp(16px,4vw,56px);
  --ease:cubic-bezier(.16,1,.3,1);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{background:var(--bg)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--bg);color:var(--text);font:300 17px/1.6 var(--sans);overflow-x:clip;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
img{max-width:100%;display:block}
::selection{background:var(--plat);color:var(--ink)}
:focus-visible{outline:2px solid var(--plat);outline-offset:3px;border-radius:8px}
.wrap{padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px));max-width:1640px;margin-inline:auto}
.label{font:500 11px/1.3 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--steel)}
h1,h2,h3,h4{font-family:var(--sans);font-weight:600;letter-spacing:-.045em;line-height:.96;margin:0;text-wrap:balance}
h2{font-size:var(--h2)}
p{margin:0}
.metal-t{padding:0 .09em .12em 0;margin:0 -.09em -.12em 0;background:var(--sheen) 150% 0/300% 100% no-repeat,var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* pills */
.pill{display:inline-flex;align-items:center;justify-content:center;gap:12px;height:52px;padding:0 26px;border-radius:999px;font:500 15px/1 var(--sans);letter-spacing:-.01em;border:0;cursor:pointer;white-space:nowrap;transition:background-position 1.1s var(--ease),background-color .4s,color .4s,transform .5s var(--ease)}
.pill svg{width:16px;height:16px;flex:0 0 auto;transition:transform .5s var(--ease)}
.pill:hover svg{transform:translateX(3px)}
.p-metal{background:var(--metal-x);background-size:240% 100%;background-position:0% 0;color:var(--ink)}
.p-metal:hover{background-position:100% 0}
.p-ghost{background:rgba(242,244,247,.02);color:var(--text);box-shadow:inset 0 0 0 1px var(--line-2)}
.p-ghost:hover{background:rgba(242,244,247,.1)}
.p-ink{background:var(--ink);color:var(--text)}
.p-ink:hover{background:#25272c}

/* split reveal */
.sl .w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .12em .3em;margin:0 -.12em -.3em}
.sl .w>span{display:inline-block;transition:transform 1.25s var(--ease);transition-delay:calc(var(--i)*30ms)}
.js .sl:not(.in) .w>span{transform:translateY(110%)}
.js .fd{opacity:.25;transform:translateY(28px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.js .fd.in{opacity:1;transform:none}

/* nav */
.nav{position:fixed;inset:0 0 auto;z-index:50;padding-top:env(safe-area-inset-top,0px);pointer-events:none;transition:transform .7s var(--ease)}
.nav.hide{transform:translateY(-110%)}
.nav-in{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:20px;height:84px}
.nav-in>.logo{grid-column:1;justify-self:start}
.nav-in>.links{grid-column:2}
.nav-in>.nav-r{grid-column:3;justify-self:end}
.nav a,.nav button{pointer-events:auto}
.logo{display:block;width:118px;flex:0 0 auto}
.logo svg{display:block;width:100%;height:auto;fill:url(#gPlat);transition:fill .4s}
.nav.lt .logo svg{fill:var(--ink)}
.links{display:flex;gap:2px;padding:5px;border-radius:999px;background:rgba(16,17,19,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 0 0 1px var(--line);transition:background .4s,box-shadow .4s}
.links a{padding:10px 18px;border-radius:999px;font:400 14px/1 var(--sans);color:#B9C3CF;transition:background .3s,color .3s}
.links a:hover{background:rgba(242,244,247,.08);color:var(--text)}
.nav.lt .links{background:rgba(236,240,245,.7);box-shadow:inset 0 0 0 1px var(--line-l)}
.nav.lt .links a{color:#3A4452}
.nav.lt .links a:hover{background:rgba(11,11,12,.06);color:var(--ink)}
.nav-r{display:flex;align-items:center;gap:8px}
.nav .pill{height:44px;padding:0 20px;font-size:14px}
.nav .p-metal{box-shadow:0 0 0 1.5px rgba(11,11,12,.6)}
.nav .p-ghost{background:rgba(11,11,12,.82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.nav.lt .p-ghost{color:var(--ink);box-shadow:inset 0 0 0 1px rgba(11,11,12,.25);background:rgba(255,255,255,.35)}
#menuBtn{display:inline-flex;width:44px;padding:0}
.hb span{position:relative;display:block;width:18px;height:12px}
.hb i{position:absolute;left:0;right:0;height:1.5px;border-radius:2px;background:currentColor;transition:top .45s var(--ease),transform .45s var(--ease),opacity .3s}
.hb i:nth-child(1){top:0}.hb i:nth-child(2){top:5.25px}.hb i:nth-child(3){top:10.5px}
.hb.x i:nth-child(1){top:5.25px;transform:rotate(45deg)}.hb.x i:nth-child(2){opacity:0}.hb.x i:nth-child(3){top:5.25px;transform:rotate(-45deg)}
.nav.mopen .links{opacity:0;pointer-events:none}
.links{transition:opacity .3s}
.menu{position:fixed;top:calc(12px + env(safe-area-inset-top,0px));right:max(12px,env(safe-area-inset-right,0px),calc((100% - 1640px)/2 + var(--gutter) - 16px));z-index:49;width:min(380px,calc(100% - 24px));background:#121316;color:var(--text);box-shadow:inset 0 0 0 1px var(--line),0 30px 80px -20px #000;border-radius:26px;padding:96px 28px 28px;display:grid;gap:2px;transform-origin:top right;transform:scale(.6);opacity:0;pointer-events:none;transition:transform .6s var(--ease),opacity .4s}
.menu.open{transform:none;opacity:1;pointer-events:auto}
.menu a{font:500 34px/1.2 var(--sans);letter-spacing:-.04em;transition:padding .4s var(--ease)}
.menu a:hover{padding-left:10px}
.menu .m-cta{display:grid;gap:8px;margin-top:22px}
.menu .m-cta .pill{width:100%}
.menu .m-cta a.pill{font:500 15px/1 var(--sans);letter-spacing:-.01em;height:52px}
.menu .m-cta a.pill:hover{padding-left:26px}

/* intro */
.intro{position:fixed;inset:0;z-index:100;background:var(--bg);display:flex;flex-direction:column;justify-content:center;align-items:center;transition:transform 1.1s var(--ease)}
.intro.out{transform:translateY(-100%)}
.i-mark{position:relative;width:min(62vw,620px)}
.i-mark svg{display:block;width:100%;height:auto;fill:url(#gPlatV);overflow:hidden}
.i-mark .il{transform-box:fill-box;transform:translateY(115%);animation:il 1s var(--ease) forwards;animation-delay:calc(120ms + var(--i)*70ms)}
@keyframes il{to{transform:none}}
.i-sheen{position:absolute;inset:0;background:linear-gradient(100deg,transparent 35%,rgba(255,255,255,.95) 50%,transparent 65%);background-size:300% 100%;background-position:120% 0;-webkit-mask:var(--wm) center/100% 100% no-repeat;mask:var(--wm) center/100% 100% no-repeat;animation:sheen 1.2s .75s var(--ease) forwards;mix-blend-mode:overlay}
@keyframes sheen{to{background-position:-20% 0}}
.i-row{position:absolute;left:0;right:0;bottom:calc(30px + env(safe-area-inset-bottom,0px));display:flex;justify-content:space-between;align-items:flex-end;padding-left:max(var(--gutter),env(safe-area-inset-left,0px));padding-right:max(var(--gutter),env(safe-area-inset-right,0px))}
.i-row b{font:300 clamp(40px,6vw,88px)/.8 var(--sans);letter-spacing:-.04em;color:var(--plat);display:inline-block;min-width:3ch}

/* hero */
.hero{position:relative;min-height:100vh;min-height:100svh;overflow:hidden;background:var(--bg)}
#liquid{position:absolute;inset:0;width:100%;height:100%;display:block}
.hero-fb{position:absolute;inset:0;background:radial-gradient(55% 70% at 80% 42%,rgba(200,212,226,.26),rgba(200,212,226,0) 70%);opacity:0}
.nogl .hero-fb{opacity:.9}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(11,11,12,.9) 0%,rgba(11,11,12,0) 32%),linear-gradient(90deg,rgba(11,11,12,.55) 0%,rgba(11,11,12,0) 50%)}
.hero-in{position:relative;z-index:2;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding-block:130px 116px;pointer-events:none}
.hero-in a{pointer-events:auto}
.hero .label{margin-bottom:26px;color:#AEB9C6}
.hero h1{font:700 var(--h1)/.92 var(--sans);letter-spacing:-.05em}
.hero-in{transform:translate3d(0,var(--py,0px),0)}
.hero h1 .ln{display:block}
.hero-sub{display:flex;justify-content:space-between;align-items:flex-end;gap:28px 40px;flex-wrap:wrap;margin-top:40px}
.hero-sub p{max-width:30ch;font:300 clamp(17px,1.45vw,21px)/1.5 var(--sans);color:#C9D2DD}
.hero-cta{display:flex;gap:10px;flex-wrap:wrap}
.hero-cta .pill{box-shadow:0 0 0 3px var(--bg),0 14px 34px -10px rgba(0,0,0,.8)}
.hero-cta .p-ghost{background:rgba(11,11,12,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 0 0 1px var(--line-2),0 0 0 3px var(--bg)}
.hero-foot{position:absolute;z-index:2;left:0;right:0;bottom:calc(30px + env(safe-area-inset-bottom,0px));display:flex;justify-content:space-between;align-items:center;gap:16px}
.cue{display:flex;align-items:center;gap:12px}
.cue i{width:24px;height:38px;border-radius:99px;box-shadow:inset 0 0 0 1.5px var(--mute);position:relative}
.cue i::after{content:"";position:absolute;left:50%;top:8px;width:3px;height:7px;margin-left:-1.5px;border-radius:3px;background:var(--plat);animation:cue 1.8s var(--ease) infinite}
@keyframes cue{60%{transform:translateY(11px);opacity:0}100%{transform:none;opacity:0}}

/* marquee */
.mq{position:relative;z-index:2;background:var(--bg);padding-block:40px 72px;overflow:hidden}
.mq-track{position:relative}
.mq-line{position:relative;height:2px;border-radius:2px;background:var(--line)}
.mq-line i{position:absolute;inset:0;border-radius:2px;background:linear-gradient(90deg,rgba(110,128,154,.35) 0%,#8fa1b8 40%,#dfe8f2 82%,#fff 100%);box-shadow:0 0 16px rgba(200,212,226,.35);transform-origin:0 50%;transform:scaleX(0)}
.mq-items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr))}
.mq-items li{position:relative;height:14px;border-left:1px solid var(--line);transition:border-color .7s}
.mq-items li:last-child{border-right:1px solid var(--line)}
.mq-items li::before{content:"";position:absolute;left:-4px;top:-4.5px;width:7px;height:7px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line-2);transition:background .5s,box-shadow .5s}
.mq-items li.on{border-left-color:var(--line-2)}
.mq-items li.on::before{background:var(--plat);box-shadow:0 0 12px rgba(200,212,226,.6)}

/* light bands */
.lt-band{background:var(--brushed);color:var(--ink)}
.lt-band .label{color:var(--mute-l)}
.lt-band .metal-t{background:var(--sheen) 150% 0/300% 100% no-repeat,var(--metal-d);-webkit-background-clip:text;background-clip:text}

/* statement */
.statement{position:relative;z-index:3;border-radius:40px 40px 0 0;margin-top:-40px;padding-block:clamp(70px,7vw,110px) clamp(84px,8vw,120px)}
.rw{font:500 clamp(22px,2.5vw,38px)/1.32 var(--sans);letter-spacing:-.025em;max-width:32ch;margin-top:34px}
.w2{opacity:.16;transition:opacity .5s,background-color .5s,color .5s;border-radius:.16em}
.w2.on{opacity:1}
.w2.b.on{background:var(--ink);color:#DDE6F0;padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:48px;padding-top:30px;border-top:1px solid var(--line-l)}
.facts b{display:block;font:600 var(--h3)/1.05 var(--sans);letter-spacing:-.04em;margin-bottom:12px}
.facts span{color:var(--mute-l);font-size:15px;line-height:1.5;display:block;max-width:28ch;margin-inline:auto}
.facts>div{text-align:center}

/* before / after */
.ba{position:relative;z-index:4;background:var(--bg);border-radius:40px 40px 0 0;margin-top:-40px;padding-block:clamp(90px,10vw,150px) clamp(40px,5vw,70px)}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 40px;flex-wrap:wrap;margin-bottom:52px}
.sec-head p{max-width:36ch;color:var(--mute)}
.sec-head .label{margin-bottom:22px}
.ba-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.ba-tabs button{height:42px;padding:0 18px;border-radius:99px;border:0;background:transparent;box-shadow:inset 0 0 0 1px var(--line-2);color:#B9C3CF;font:400 14px/1 var(--sans);cursor:pointer;transition:background .3s,color .3s}
.ba-tabs button[aria-selected="true"]{background:var(--plat);color:var(--ink);box-shadow:none}
.ba-frame{--x:50%;position:relative;aspect-ratio:16/8;max-height:min(74vh,740px);width:100%;max-width:100%;border-radius:28px;overflow:hidden;background:#000;touch-action:pan-y;cursor:ew-resize;user-select:none;-webkit-user-select:none;box-shadow:inset 0 0 0 1px var(--line)}
.ba-frame .ph{position:absolute;inset:0;border-radius:0;box-shadow:none}
.ba-frame .ph::before{inset:16px}
.ba-frame .ph-in{max-width:42%;width:auto}
.ba-b{clip-path:inset(0 calc(100% - var(--x)) 0 0)}
.ba-line{position:absolute;top:0;bottom:0;left:var(--x);width:2px;margin-left:-1px;background:linear-gradient(180deg,rgba(200,212,226,0),#E9EEF4 20%,#E9EEF4 80%,rgba(200,212,226,0))}
.ba-knob{position:absolute;top:50%;left:var(--x);width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;border:0;background:var(--metal-x);background-size:200% 100%;display:grid;place-items:center;color:var(--ink);cursor:ew-resize;box-shadow:0 0 0 3px rgba(11,11,12,.6),0 12px 30px -8px rgba(0,0,0,.8)}
.ba-knob svg{width:26px;height:26px}
.ba-lab{position:absolute;top:18px;padding:9px 14px;border-radius:99px;font:500 11px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;background:rgba(11,11,12,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#E3E9F0;pointer-events:none}
.ba-lab.l{left:18px}.ba-lab.r{right:18px}
.ba-cap{display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin-top:18px;color:var(--mute);font-size:15px}
.ba-cap .label{color:var(--steel)}

/* pillars: stacking cards */
.pillars{position:relative;z-index:4;background:var(--bg);padding-top:clamp(50px,7vw,110px)}
.stack-wrap{position:relative;height:250vh}
.stack-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.stack{position:relative;height:100%}
.card{position:absolute;left:0;right:0;top:0;height:clamp(400px,calc(100svh - 348px),600px);background:linear-gradient(180deg,#16171B,#111215);border-radius:30px;display:flex;flex-direction:column;overflow:hidden;transform-origin:50% 0;will-change:transform;box-shadow:inset 0 0 0 1px var(--line),0 -20px 50px -30px rgba(0,0,0,.9)}
.card::after{content:"";position:absolute;inset:0;border-radius:inherit;background:#000;opacity:var(--dim,0);pointer-events:none}
.c-head{display:flex;align-items:center;gap:18px;height:58px;padding:0 28px;border-bottom:1px solid var(--line);flex:0 0 auto}
.c-num{font:500 12px/1 var(--sans);letter-spacing:.24em;color:var(--steel)}
.c-name{font:600 19px/1 var(--sans);letter-spacing:-.02em}
.c-count{margin-left:auto;font:500 11px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--mute)}
.c-body{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);min-height:0}
.c-text{padding:clamp(24px,3vw,46px);display:flex;flex-direction:column;justify-content:space-between;gap:22px;min-width:0}
.c-text h3{font-size:var(--h3);letter-spacing:-.04em;line-height:1.05}
.c-quote{margin-top:18px;font:300 17px/1.5 var(--sans);color:var(--mute);max-width:34ch}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips span{padding:9px 14px;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line-2);font:400 13px/1 var(--sans);color:#D5DCE5;white-space:nowrap}
.c-vis{position:relative;margin:14px;border-radius:22px;overflow:hidden;background:#0C0D0F;min-width:0;min-height:0;box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:10px;padding:12px}
.v-ads{grid-template-columns:1.15fr 1fr;grid-template-rows:1fr 1fr}.v-ads>.ph:first-child{grid-row:span 2}
.v-web,.v-brand{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1.7fr 1fr}.v-web>.ph:first-child,.v-brand>.ph:first-child{grid-column:span 3}
.v-soc{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}
.v-opt{grid-template-columns:1fr}
.v-prop{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1.7fr 1fr}.v-prop>.ph:first-child{grid-column:span 2}

/* placeholders */
.ph{position:relative;overflow:hidden;border-radius:14px;background:radial-gradient(120% 90% at 75% 12%,rgba(200,212,226,.09),rgba(200,212,226,0) 62%),repeating-linear-gradient(135deg,rgba(200,212,226,.04) 0 1px,transparent 1px 12px),#111215;box-shadow:inset 0 0 0 1px var(--line);container-type:size;min-width:0;min-height:0}
.ph::before{content:"";position:absolute;inset:10px;opacity:.5;pointer-events:none;background:linear-gradient(var(--plat),var(--plat)) left top/12px 1px no-repeat,linear-gradient(var(--plat),var(--plat)) left top/1px 12px no-repeat,linear-gradient(var(--plat),var(--plat)) right top/12px 1px no-repeat,linear-gradient(var(--plat),var(--plat)) right top/1px 12px no-repeat,linear-gradient(var(--plat),var(--plat)) left bottom/12px 1px no-repeat,linear-gradient(var(--plat),var(--plat)) left bottom/1px 12px no-repeat,linear-gradient(var(--plat),var(--plat)) right bottom/12px 1px no-repeat,linear-gradient(var(--plat),var(--plat)) right bottom/1px 12px no-repeat}
.ph::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 38%,rgba(220,230,242,.07) 50%,transparent 62%);background-size:260% 100%;animation:phs 6s linear infinite}
@keyframes sp{to{clip-path:inset(0 25% 0 0)}}
@keyframes spl{to{left:75%}}
@keyframes phs{from{background-position:140% 0}to{background-position:-40% 0}}
.ph-in{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:8px;text-align:center;width:max-content;max-width:88%;z-index:1}
.ph-ic{width:42px;height:42px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line-2);display:grid;place-items:center;background:rgba(11,11,12,.45)}
.ph-ic svg{width:18px;height:18px;fill:none;stroke:var(--plat);stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}
.ph b{font:500 14px/1.25 var(--sans);color:#E3E9F0;letter-spacing:-.01em}
.ph small{font:500 10px/1.3 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--steel)}
@container (max-width:150px){.ph b,.ph small{display:none}.ph-ic{width:32px;height:32px}}
@container (max-height:120px){.ph small{display:none}}
@container (max-height:84px){.ph b{display:none}.ph-ic{width:30px;height:30px}}
.ph.flat{background:repeating-linear-gradient(135deg,rgba(200,212,226,.03) 0 1px,transparent 1px 12px),#1A1B1E}
.ph.flat::after{display:none}
.ph.glow{background:radial-gradient(70% 80% at 72% 40%,rgba(200,212,226,.2),rgba(200,212,226,0) 70%),repeating-linear-gradient(135deg,rgba(200,212,226,.045) 0 1px,transparent 1px 12px),#0E0F11}
.split .bf{position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(200,212,226,.03) 0 1px,transparent 1px 12px),#1C1D20;clip-path:inset(0 70% 0 0);animation:sp 6s var(--ease) infinite alternate}
.split>i{position:absolute;top:0;bottom:0;left:30%;width:2px;margin-left:-1px;background:#E9EEF4;z-index:2;animation:spl 6s var(--ease) infinite alternate}
.split .tag{position:absolute;top:14px;z-index:2;font:500 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:#C3CCD7;padding:7px 10px;border-radius:99px;background:rgba(11,11,12,.55)}
.split .tag.l{left:14px}.split .tag.r{right:14px}

/* deck */
.deck{position:relative;z-index:5;height:220vh;border-radius:40px 40px 0 0;margin-top:70px;--cw:clamp(200px,18.5vw,290px)}
.d-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;perspective:1700px;border-radius:40px 40px 0 0}
.d-head{position:absolute;left:0;right:0;top:clamp(92px,12vh,136px);text-align:center;pointer-events:none}
.d-head h2{font-size:var(--h2);margin-top:16px}
.d-table{position:absolute;left:50%;top:61%;width:0;height:0}
.pc{position:absolute;width:var(--cw);aspect-ratio:5/7;left:calc(var(--cw)/-2);top:calc(var(--cw)*-.7);transform-style:preserve-3d;will-change:transform}
.pc .f,.pc .b{position:absolute;inset:0;border-radius:calc(var(--cw)*.07);backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 34px 60px -26px rgba(11,11,12,.6),0 0 0 1px rgba(11,11,12,.1)}
.pc .b{transform:rotateY(180deg);overflow:hidden;background:#C8D4E2}
.pc .b svg{display:block;width:100%;height:100%}
/* S monogram entrance: disc settles, ring draws, S rises, one light sweep */
.js .deck .bk-disc,.js .deck .bk-s{transform-box:fill-box;transform-origin:center}
.js .deck .bk-disc{opacity:0;transform:scale(.55);transition:opacity .6s ease,transform 1.1s var(--ease)}
.js .deck .bk-ring{stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.4s var(--ease) .3s}
.js .deck .bk-s{opacity:0;transform:translateY(10px) scale(.86);transition:opacity .7s ease .75s,transform 1.1s var(--ease) .75s}
.js .deck .bk-shine{opacity:0;transform:translateX(-70px) skewX(-20deg)}
.deck.s-in .bk-disc{opacity:1;transform:none}
.deck.s-in .bk-ring{stroke-dashoffset:0}
.deck.s-in .bk-s{opacity:1;transform:none}
.deck.s-in .bk-shine{animation:bkShine 1.3s var(--ease) 1.5s both}
@keyframes bkShine{0%{opacity:0;transform:translateX(-70px) skewX(-20deg)}15%{opacity:1}85%{opacity:1}100%{opacity:0;transform:translateX(190px) skewX(-20deg)}}
.pc .f{background:linear-gradient(180deg,#141518,#0D0E10);color:var(--text);container-type:inline-size;display:flex;flex-direction:column;overflow:hidden}
.pc .top{margin:9cqw 9cqw 0}.pc .bot{margin:0 9cqw 8cqw;transform:rotate(180deg)}
.pc .top,.pc .bot{display:flex;justify-content:space-between;align-items:center;gap:4cqw}
.pc .t{padding-right:.08em;font:600 8.6cqw/1.1 var(--sans);letter-spacing:-.02em;text-transform:uppercase;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.pc .g{flex:0 0 auto;width:14cqw;height:14cqw;border-radius:3cqw;box-shadow:inset 0 0 0 1px var(--line-2);display:grid;place-items:center}
.pc .g svg{width:8cqw;height:8cqw;fill:none;stroke:#C8D4E2;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.pc .f p{margin:8cqw 9cqw auto;font:300 6cqw/1.5 var(--sans);color:#C3CCD7}
.pc .n{font:500 5cqw/1 var(--sans);letter-spacing:.24em;color:var(--steel)}
.d-hud{position:absolute;left:0;right:0;bottom:calc(28px + env(safe-area-inset-bottom,0px));display:flex;justify-content:space-between;gap:16px;font:500 11px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--mute-l)}
.d-hud b{color:var(--ink);font-weight:600}

/* portal */
.portal{position:relative;z-index:6;height:170vh;background:#050506;margin-top:-40px;border-radius:40px 40px 0 0}
.p-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;border-radius:40px 40px 0 0}
#warp{position:absolute;inset:0;width:100%;height:100%;display:block}
.p-stage::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 46% 40% at 50% 50%,rgba(5,5,6,.78) 0%,rgba(5,5,6,.45) 45%,rgba(5,5,6,0) 100%)}
.p-txt,.p-hud{z-index:1}
.p-txt{position:absolute;inset:0;display:grid;place-items:center;text-align:center;pointer-events:none}
.p-txt>div{will-change:transform,opacity}
.p-txt h2{font-size:var(--h2);line-height:1.02}
.p-txt p{font-size:clamp(16px,1.4vw,20px);color:#C3CCD7;margin:22px auto 0;max-width:min(34ch,100%)}
.p-txt p{text-shadow:0 0 6px #000,0 0 16px #000,0 0 30px rgba(0,0,0,.8)}
.p-hud{position:absolute;left:0;right:0;bottom:calc(28px + env(safe-area-inset-bottom,0px));display:flex;justify-content:space-between;gap:16px;font:500 11px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--steel)}
.p-hud b{color:var(--plat);font-weight:500;font-variant-numeric:tabular-nums}

/* work */
.work{position:relative;z-index:7;background:var(--bg);border-radius:40px 40px 0 0;margin-top:-40px;padding-block:clamp(110px,12vw,180px) clamp(70px,8vw,120px)}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 20px}
.proj{display:block}
.proj .im{position:relative;aspect-ratio:4/3;max-width:100%;border-radius:22px}
.proj .im .ph-in{transition:transform 1.2s var(--ease)}
.proj:hover .im .ph-in{transform:translate(-50%,-50%) scale(1.06)}
.proj .smp{position:absolute;z-index:2;left:16px;top:16px;padding:8px 12px;border-radius:99px;background:rgba(11,11,12,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font:500 10px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:#E3E9F0}
.proj .go{position:absolute;z-index:2;right:16px;bottom:16px;width:54px;height:54px;border-radius:50%;background:var(--metal-x);background-size:200% 100%;color:var(--ink);display:grid;place-items:center;transform:scale(0) rotate(-45deg);transition:transform .55s var(--ease)}
.proj .go svg{width:20px;height:20px}
.proj:hover .go,.proj:focus-visible .go{transform:none}
.proj .meta{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:18px;flex-wrap:wrap}
.proj h4{font:500 clamp(18px,1.5vw,22px)/1.25 var(--sans);letter-spacing:-.03em}
.proj .meta small{display:block;margin-top:6px;font:400 14px/1.4 var(--sans);color:var(--mute)}
.proj .meta span{font:400 13px/1.5 var(--sans);color:var(--steel);text-align:right;white-space:nowrap}
.w-more{display:flex;justify-content:center;margin-top:64px}

/* process */
.process{background:var(--bg);padding-block:clamp(80px,9vw,140px);border-top:1px solid var(--line)}
.steps{position:relative;margin-top:60px}
.rail{position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--line);border-radius:2px}
.rail i{position:absolute;inset:0;background:var(--metal);box-shadow:0 0 16px rgba(200,212,226,.35);transform-origin:50% 0;transform:scaleY(0);border-radius:2px}
.step{display:grid;grid-template-columns:150px minmax(0,1fr) minmax(0,1fr);gap:24px;padding:42px 0 42px 46px;border-bottom:1px solid var(--line);align-items:baseline}
.step .k{font:500 11px/1.4 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--plat)}
.step h3{font-size:var(--h3)}
.step p{color:var(--mute);max-width:44ch}

/* ways to work */
.ways{background:var(--bg);padding-block:clamp(80px,9vw,140px)}
.plans{display:grid;gap:14px;margin-top:60px}
.plan{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.7fr) minmax(0,1.5fr) auto;grid-template-areas:"name bill list cta" "desc bill list cta";column-gap:clamp(24px,3vw,56px);row-gap:8px;align-items:center;padding:36px 40px;border-radius:30px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);transition:transform .6s var(--ease)}
.plan:hover{transform:translateX(8px)}
.plan h3{grid-area:name;align-self:end;font-size:var(--h4);display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.plan .desc{grid-area:desc;align-self:start;color:var(--mute);max-width:34ch}
.plan .bill{grid-area:bill;font:500 clamp(18px,1.5vw,22px)/1.25 var(--sans);letter-spacing:-.02em}
.plan .bill small{display:block;margin-top:6px;font:500 10px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--steel)}
.plan ul{grid-area:list;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;font-size:15px}
.plan li{display:flex;gap:12px;align-items:baseline}
.plan li::before{content:"";flex:0 0 6px;height:6px;border-radius:50%;background:var(--plat);transform:translateY(-2px)}
.plan .pill{grid-area:cta}
.plan.hot{background:var(--metal-x);background-size:160% 100%;color:var(--ink);box-shadow:none}
.plan.hot .desc{color:#3A4452}
.plan.hot .bill small{color:#4A5668}
.plan.hot li::before{background:var(--ink)}
.badge{font:500 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;padding:8px 12px;border-radius:99px;background:var(--ink);color:#DDE6F0}
.foot-note{margin-top:22px;color:var(--mute);font-size:15px}

/* faq */
.faq{background:var(--bg);padding-block:clamp(80px,9vw,140px);border-top:1px solid var(--line)}
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(30px,6vw,110px);align-items:start}
.faq-grid .sticky{position:static}
.faq-grid h2{font-size:var(--h2);margin-top:22px}
.qa{border-bottom:1px solid var(--line)}
.qa:first-child{border-top:1px solid var(--line)}
.qa summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:28px 0;cursor:pointer;font:500 clamp(19px,1.6vw,24px)/1.3 var(--sans);letter-spacing:-.025em}
.qa summary::-webkit-details-marker{display:none}
.qa summary i{flex:0 0 36px;height:36px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line-2);position:relative;transition:transform .5s var(--ease),background .3s}
.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(--plat)}
.qa summary i::after{transform:rotate(90deg);transition:transform .5s var(--ease)}
.qa[open] summary i{transform:rotate(180deg);background:rgba(200,212,226,.08)}
.qa[open] summary i::after{transform:rotate(0)}
.qa p{padding:0 56px 30px 0;color:var(--mute);max-width:62ch}

/* contact */
.contact{position:relative;background:var(--bg);padding-block:clamp(80px,10vw,160px) clamp(60px,7vw,100px);border-top:1px solid var(--line);overflow:hidden}
.contact::before{content:"";position:absolute;right:-14%;top:-18%;width:62%;aspect-ratio:1;background:radial-gradient(closest-side,rgba(200,212,226,.13),rgba(200,212,226,0));pointer-events:none}
.contact h2{position:relative;font-size:var(--h2)}
.c-grid{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,96px);margin-top:72px}
.c-info{display:grid;gap:14px;align-content:start}
.c-info>p{color:#C3CCD7;max-width:38ch;margin-bottom:14px}
.mail{display:flex;align-items:baseline;gap:8px 16px;flex-wrap:wrap;margin-top:18px;font:500 clamp(20px,2.2vw,30px)/1.2 var(--sans);letter-spacing:-.03em}
/* email that copies itself on click */
.mail-c{border:0;background:none;padding:0;margin:0;font:inherit;letter-spacing:inherit;color:inherit;text-align:left;text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:1px;text-underline-offset:6px;transition:text-decoration-color .3s,color .3s}
.mail-c:hover{text-decoration-color:var(--line-2)}
.mail-ok{font:500 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--steel);opacity:0;transition:opacity .3s}
.mail:hover .mail-ok,.mail-ok.on{opacity:1}
.mail-ok.on{color:var(--plat)}
.f-top .mail-c{display:block;color:#B9C3CF;font-size:15px;line-height:2;letter-spacing:0;text-underline-offset:4px}
.f-top .mail-c:hover{color:var(--text)}
/* contact: one way in, the call */
.callcard{position:relative;display:grid;gap:18px;align-content:start;padding:clamp(26px,3vw,40px);border-radius:28px;background:linear-gradient(180deg,#16171B,#101114);box-shadow:inset 0 0 0 1px var(--line-2),0 40px 80px -40px rgba(0,0,0,.8);transition:box-shadow .4s,transform .6s var(--ease)}
.callcard:hover{box-shadow:inset 0 0 0 1.5px var(--plat),0 40px 80px -40px rgba(0,0,0,.8);transform:translateY(-3px)}
.cc-t{font:600 var(--h3)/1.05 var(--sans);letter-spacing:-.04em;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-right:.06em;width:max-content;max-width:100%}
.callcard ul,.bk-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;color:#C9D2DD;font-size:15px}
.callcard li,.bk-list li{display:flex;gap:10px;align-items:baseline}
.callcard li::before,.bk-list li::before{content:"";flex:0 0 5px;height:5px;border-radius:50%;background:var(--plat);transform:translateY(-2px)}
.callcard .pill{justify-self:start;margin-top:6px}
.callcard>p{color:#C3CCD7;font-size:16px;max-width:40ch}
/* platinum edge and a slow light pass on hover */
.callcard{isolation:isolate;overflow:hidden;background:radial-gradient(120% 90% at 100% 0%,rgba(200,212,226,.10),rgba(200,212,226,0) 55%),linear-gradient(180deg,#17181C,#0F1013);box-shadow:0 40px 80px -40px rgba(0,0,0,.85)}
.callcard::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(255,255,255,.6),rgba(143,161,184,.14) 34%,rgba(220,230,240,.45) 62%,rgba(110,128,154,.12));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.callcard::after{content:"";position:absolute;inset:-30% -70%;z-index:-1;background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.08) 50%,transparent 58%);transform:translateX(-45%);transition:transform 1.4s var(--ease);pointer-events:none}
.callcard:hover{box-shadow:0 50px 90px -40px rgba(0,0,0,.9);transform:translateY(-4px)}
.callcard:hover::after{transform:translateX(45%)}
.c-lead{font-size:clamp(18px,1.5vw,22px)!important;line-height:1.5;color:#D5DCE5!important;max-width:34ch!important}
.c-proof{list-style:none;margin:8px 0 6px;padding:22px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.c-proof b{display:block;font:600 clamp(18px,1.6vw,24px)/1.1 var(--sans);letter-spacing:-.03em;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;width:max-content;max-width:100%}
.c-proof span{display:block;margin-top:6px;font-size:13px;line-height:1.45;color:var(--mute)}
/* small Book a call strip at the end of every other page */
.cta-strip{background:var(--bg);border-top:1px solid var(--line);padding-block:clamp(40px,5vw,64px)}
.cta-in{display:flex;align-items:center;justify-content:space-between;gap:20px 40px;flex-wrap:wrap}
.cta-in p{font:600 clamp(22px,2.4vw,36px)/1.15 var(--sans);letter-spacing:-.035em;max-width:30ch;text-wrap:balance}
@media (max-width:900px){.c-proof{grid-template-columns:1fr;gap:14px}.cta-in .pill{width:100%}}
form{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-content:start}
form .full{grid-column:1/-1}
.f label,.f .lab{display:block;font:500 11px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--mute);margin-bottom:10px}
.f input,.f textarea{width:100%;background:#131417;border:1px solid var(--line-2);border-radius:16px;color:var(--text);font:400 16px/1.5 var(--sans);padding:14px 16px;transition:border-color .3s}
.f textarea{resize:vertical;min-height:110px}
.f input::placeholder,.f textarea::placeholder{color:#5F6A78}
.f input:focus,.f textarea:focus{outline:none;border-color:var(--plat)}
.need{position:relative;display:flex;flex-wrap:wrap;gap:8px}
.need label{margin:0;text-transform:none;letter-spacing:-.01em;font:400 14px/1 var(--sans);color:#C3CCD7;padding:11px 15px;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line-2);cursor:pointer;transition:background .3s,color .3s}
.need input{position:absolute;opacity:0;width:1px;height:1px}
.need input:checked+label{background:var(--plat);color:var(--ink);box-shadow:none}
.need input:focus-visible+label{outline:2px solid var(--plat);outline-offset:3px}
.ok{grid-column:1/-1;padding:16px 18px;border-radius:16px;background:#17181C;box-shadow:inset 0 0 0 1px var(--plat);color:var(--text)}

/* footer */
footer{background:var(--bg);padding-block:10px calc(34px + env(safe-area-inset-bottom,0px));overflow:hidden;border-top:1px solid var(--line)}
.f-row{display:flex;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin-top:0;padding-top:24px;border-top:1px solid var(--line);font:500 11px/1.6 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--steel)}

/* mobile cta */
.mcta{position:fixed;left:0;right:0;bottom:0;z-index:45;display:none;gap:8px;padding:10px max(12px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:rgba(11,11,12,.82);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .6s var(--ease)}
.mcta.show{transform:none}
.mcta .pill{flex:1;height:48px;padding:0 14px}

/* cursor: normal shapes in platinum */
html{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 32 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23FFFFFF'/%3E%3Cstop offset='.45' stop-color='%23DFE8F2'/%3E%3Cstop offset='.78' stop-color='%238FA1B8'/%3E%3Cstop offset='1' stop-color='%23C8D4E2'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M4 3L4 24.6L9.3 19.5L13 28L16.9 26.3L13.3 17.9L20.6 17.9Z' fill='url%28%23g%29' stroke='%230B0B0C' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E") 3 2,auto}
a,button,summary,label,.ba-tabs button,select,[role=button],[role=tab],[role=slider],.pill,.ba-frame,.ba-knob,.opt,.need label,.qa summary,.copy,.c-cover{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 2 32 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23FFFFFF'/%3E%3Cstop offset='.45' stop-color='%23DFE8F2'/%3E%3Cstop offset='.78' stop-color='%238FA1B8'/%3E%3Cstop offset='1' stop-color='%23C8D4E2'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M10.5 8.8C10.5 7.5 11.5 6.5 12.75 6.5S15 7.5 15 8.8V12.7C15.4 12.3 16 12.1 16.6 12.1C17.6 12.1 18.4 12.7 18.6 13.6C19 13.3 19.5 13.1 20.1 13.1C21.2 13.1 22 13.9 22.1 14.9C22.5 14.6 23 14.5 23.5 14.5C24.6 14.5 25.5 15.4 25.5 16.5V22.2C25.5 26.6 22.4 29.6 18 29.6H16.6C13.7 29.6 11.7 28.4 10.1 26.1L6.3 20.5C5.7 19.6 5.9 18.4 6.8 17.8C7.7 17.2 8.9 17.4 9.5 18.3L10.5 19.8Z' fill='url%28%23g%29' stroke='%230B0B0C' stroke-width='1.6' stroke-linejoin='round'/%3E%3Cpath d='M15 12.7V18.4M18.6 13.6V18.4M22.1 14.9V18.7' fill='none' stroke='%230B0B0C' stroke-width='1.2' stroke-linecap='round' opacity='.55'/%3E%3C/svg%3E") 10 3,pointer}
input,textarea{cursor:text}


/* nav active */
.links a[aria-current="page"]{color:var(--text);background:rgba(242,244,247,.09)}
.nav.lt .links a[aria-current="page"]{color:var(--ink);background:rgba(11,11,12,.07)}
.menu a[aria-current="page"]{background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent}
.menu .m-sub{font:500 11px/1.3 var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--steel);margin:14px 0 6px}
.menu a{font-size:28px}

/* footer */
.f-top{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(0,1fr));gap:28px;padding-block:56px 52px}
.f-brand svg{display:block;width:150px;height:auto;fill:url(#gPlat)}
.f-brand p{margin-top:18px;color:var(--mute);font-size:15px;max-width:24ch}
.f-top .label{margin-bottom:16px}
.f-top a,.f-top span{display:block;color:#B9C3CF;font-size:15px;line-height:2}
.f-top a:hover{color:var(--text)}
.f-top .soon{color:#5F6A78}

/* hero format frame */
.fmt{position:absolute;z-index:2;right:calc(max(var(--gutter),env(safe-area-inset-right,0px),calc((100% - 1640px)/2 + var(--gutter))) + 3vw);top:42%;transform:translateY(calc(-50% + var(--py,0px)));width:min(46vw,860px);height:min(68vh,720px,calc(100vh - 330px));display:grid;place-items:center;pointer-events:none}
.fmt-box{position:relative;width:var(--fw,300px);height:var(--fh,530px);border-radius:18px;background:rgba(11,11,12,.24);-webkit-backdrop-filter:blur(5px) saturate(115%);backdrop-filter:blur(5px) saturate(115%);box-shadow:inset 0 0 0 1px rgba(200,212,226,.4),0 50px 90px -40px rgba(0,0,0,.85);transition:width 1.05s var(--ease),height 1.05s var(--ease)}
.fmt-box::before{content:"";position:absolute;inset:10px;opacity:.7;background:linear-gradient(var(--plat),var(--plat)) left top/14px 1px no-repeat,linear-gradient(var(--plat),var(--plat)) left top/1px 14px no-repeat,linear-gradient(var(--plat),var(--plat)) right top/14px 1px no-repeat,linear-gradient(var(--plat),var(--plat)) right top/1px 14px no-repeat,linear-gradient(var(--plat),var(--plat)) left bottom/14px 1px no-repeat,linear-gradient(var(--plat),var(--plat)) left bottom/1px 14px no-repeat,linear-gradient(var(--plat),var(--plat)) right bottom/14px 1px no-repeat,linear-gradient(var(--plat),var(--plat)) right bottom/1px 14px no-repeat}
.fmt-in{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:8px;text-align:center;width:max-content;max-width:90%;transition:opacity .42s,transform .42s var(--ease)}
.fmt-in.sw{opacity:0;transform:translate(-50%,-40%)}
.fmt-in b{font:500 15px/1.2 var(--sans);color:#EEF2F6}
.fmt-in small{font:500 10px/1.3 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:#AEB9C6}
.fmt-tag{position:absolute;left:14px;top:14px;font:500 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;padding:7px 10px;border-radius:99px;background:rgba(11,11,12,.55);color:#C3CCD7}
/* format frame controls: arrows, dots, swipe */
.fmt-box,.fmt-ctl{pointer-events:auto}
.fmt-box{touch-action:pan-y}
.fmt-ctl{position:absolute;left:50%;bottom:-6px;transform:translate(-50%,100%);display:flex;align-items:center;gap:14px;padding-top:14px}
.fmt-cnt{display:flex;align-items:center;gap:6px}
.fmt-cnt button{width:16px;height:18px;padding:8px 0;border:0;border-radius:3px;background:rgba(200,212,226,.25) content-box;transition:background-color .4s,width .4s var(--ease)}
.fmt-cnt button.on{background-color:var(--plat);width:30px}
.fmt-a{width:36px;height:36px;flex:0 0 36px;padding:0;border:0;border-radius:50%;display:grid;place-items:center;color:var(--plat);background:rgba(11,11,12,.45);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px var(--line-2);transition:background .3s,box-shadow .3s}
.fmt-a:hover{background:rgba(242,244,247,.1);box-shadow:inset 0 0 0 1px var(--plat)}
.fmt-a svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* pillar card link */
.c-foot{display:grid;gap:16px}
.c-go{align-self:start;justify-self:start;height:44px;padding:0 20px;font-size:14px}

/* subpage hero */
.hero.sub h1{font-size:clamp(42px,5.4vw,96px);max-width:14ch}
.hero.sub .hero-in{padding-block:130px 116px}

/* need band */
.needb{position:relative;z-index:3;border-radius:40px 40px 0 0;margin-top:-40px;padding-block:clamp(70px,7vw,110px) clamp(84px,8vw,120px)}
.needb h2{max-width:20ch;margin-top:26px}
.needb .rw{margin-top:28px}

/* services */
.sec{background:var(--bg);padding-block:clamp(80px,9vw,140px);position:relative}
.sec+.sec{border-top:1px solid var(--line)}
.svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.svc-grp{display:flex;align-items:baseline;gap:16px;margin:64px 0 22px}
.svc-grp:first-of-type{margin-top:0}
.svc-grp b{font:600 var(--h4)/1.1 var(--sans);letter-spacing:-.03em}
.sv{display:flex;flex-direction:column;border-radius:24px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden;transition:transform .6s var(--ease),box-shadow .4s}
.sv:hover{transform:translateY(-6px);box-shadow:inset 0 0 0 1px var(--line-2)}
.sv>.ph{aspect-ratio:16/10;border-radius:0;box-shadow:none;border-bottom:1px solid var(--line)}
.sv-b{padding:24px 24px 26px;display:grid;gap:10px;align-content:start;flex:1}
.sv-n{font:500 11px/1 var(--sans);letter-spacing:.24em;color:var(--steel)}
.sv h3{font:600 var(--h4)/1.15 var(--sans);letter-spacing:-.03em}
.sv p{color:var(--mute);font-size:15px;line-height:1.55}
.sv .spec{font:500 10px/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--plat)}
.sv ul{list-style:none;margin:6px 0 0;padding:14px 0 0;border-top:1px solid var(--line);display:grid;gap:8px;font-size:14px;color:#C9D2DD}
.sv li,.pk li{display:flex;gap:10px;align-items:baseline}
.sv li::before,.pk li::before{content:"";flex:0 0 5px;height:5px;border-radius:50%;background:var(--plat);transform:translateY(-2px)}


.svc-grid.n1>.sv:last-child,.svc-grid.n2>.sv:first-child{flex-direction:row}
.svc-grid.n1>.sv:last-child{grid-column:1/-1}
.svc-grid.n2>.sv:first-child{grid-column:span 2}
.svc-grid.n1>.sv:last-child>.ph,.svc-grid.n2>.sv:first-child>.ph{aspect-ratio:auto;flex:1 1 50%;min-height:260px;border-bottom:0;border-right:1px solid var(--line)}
.svc-grid.n1>.sv:last-child>.sv-b,.svc-grid.n2>.sv:first-child>.sv-b{flex:1 1 50%;align-content:center;padding:32px}
@media (max-width:1100px){.svc-grid.n1>.sv:last-child,.svc-grid.n2>.sv:first-child{grid-column:auto;flex-direction:column}.svc-grid.n1>.sv:last-child>.ph,.svc-grid.n2>.sv:first-child>.ph{aspect-ratio:16/10;min-height:0;flex:none;border-right:0;border-bottom:1px solid var(--line)}}

/* three steps */
.trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.trio>div{padding:32px;border-radius:24px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.trio .k{font:500 11px/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--plat)}
.trio h3{font:600 var(--h4)/1.15 var(--sans);letter-spacing:-.03em;margin:22px 0 10px}
.trio p{color:var(--mute);font-size:15px}

/* packages */
.pk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pk{padding:32px;border-radius:28px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);display:flex;flex-direction:column;gap:18px;transition:transform .6s var(--ease)}
.pk:hover{transform:translateY(-6px)}
.pk h3{font:600 var(--h4)/1.1 var(--sans);letter-spacing:-.03em;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pk .per{font:500 10px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--steel)}
.pk ul{list-style:none;margin:0;padding:18px 0 0;border-top:1px solid var(--line);display:grid;gap:10px;font-size:15px;flex:1}
.pk .pill{align-self:flex-start}
.pk.hot{background:var(--metal-x);background-size:160% 100%;color:var(--ink);box-shadow:none}
.pk.hot .per{color:#4A5668}
.pk.hot ul{border-top-color:rgba(11,11,12,.18)}
.pk.hot li::before{background:var(--ink)}
.kit{margin-top:16px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) auto;gap:16px 32px;align-items:center;padding:28px 32px;border-radius:28px;box-shadow:inset 0 0 0 1px var(--line-2)}
.kit h3{font:600 var(--h4)/1.15 var(--sans);letter-spacing:-.03em}
.kit h3 small{display:block;margin-top:8px;font:500 10px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--steel)}
.kit p{color:#C9D2DD}

/* industries + other pillars */
.ind{display:flex;flex-wrap:wrap;gap:10px}
.ind span{padding:14px 20px;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line-2);font:400 clamp(15px,1.3vw,19px)/1 var(--sans);color:#D5DCE5}
.op-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.op{display:flex;flex-direction:column;justify-content:space-between;gap:36px;min-height:220px;padding:26px;border-radius:24px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);transition:transform .6s var(--ease),box-shadow .4s}
.op:hover{transform:translateY(-6px);box-shadow:inset 0 0 0 1px var(--line-2)}
.op h3{font:600 var(--h4)/1.1 var(--sans);letter-spacing:-.03em;margin-top:14px}
.op p{color:var(--mute);font-size:15px;margin-top:10px}
.op .arrow{width:46px;height:46px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line-2);display:grid;place-items:center;transition:background .4s,color .4s}
.op .arrow svg{width:18px;height:18px}
.op:hover .arrow{background:var(--plat);color:var(--ink)}

/* about */
.qgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.qgrid>div{padding:28px;border-radius:22px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:14px;align-content:start}
.qgrid .ph-ic{width:42px;height:42px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line-2);display:grid;place-items:center}
.qgrid .ph-ic svg{width:18px;height:18px;fill:none;stroke:var(--plat);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.qgrid b{font:600 20px/1.25 var(--sans);letter-spacing:-.02em}
.qgrid p{color:var(--mute);font-size:15px}
.sec-head.tight{margin-bottom:48px}

@media (max-width:1440px){.links a{padding:10px 14px}}
@media (max-width:1240px){.links{display:none}}
@media (max-width:1100px){
  .svc-grid,.pk-grid,.qgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .op-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .f-top{grid-template-columns:repeat(3,minmax(0,1fr))}
  .f-brand{grid-column:1/-1}
}
@media (max-width:900px){
  .fmt{right:auto;left:50%;top:calc(84px + env(safe-area-inset-top,0px));transform:translate(-50%,var(--py,0px));width:calc(100vw - 32px);height:min(31vh,262px);place-items:start center}
  .fmt-ctl{gap:10px;padding-top:10px}
  .fmt-cnt{display:none}
  .fmt-a{width:32px;height:32px;flex-basis:32px}
  .fmt-in b{font-size:13px}
  .hero.sub .hero-in{padding-block:110px 112px}
  .hero.sub h1{font-size:clamp(40px,11.5vw,64px)}
  .svc-grid,.pk-grid,.trio,.qgrid,.op-grid{grid-template-columns:1fr}
  .kit{grid-template-columns:1fr;padding:24px}
  .op{min-height:0}
  .f-top{grid-template-columns:repeat(2,minmax(0,1fr))}
  .c-go{height:40px}
}


/* platin in every title */
.sv h3,.pk:not(.hot) h3,.kit h3,.op h3,.trio h3,.plan:not(.hot) h3,.c-name,.qgrid b,.svc-grp b{background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-right:.06em}
.qgrid b{display:block}
.kit h3 small{-webkit-text-fill-color:var(--steel)}
/* whole pillar card is a link */
.card .c-cover{position:absolute;inset:0;z-index:1;border-radius:inherit}
.card .c-go{position:relative;z-index:2}
.card:hover .c-go{background:rgba(242,244,247,.1)}

/* responsive */
@media (max-width:1100px){
  .links{display:none}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .nav-in{height:72px}
  .logo{width:100px}
  .nav-r .pill{display:none}
  #menuBtn{display:inline-flex}
  .mcta{display:flex}
  .hero-in{padding-block:110px 112px}
  :root{--h1:clamp(48px,13.6vw,84px);--h2:clamp(34px,9.4vw,52px);--h3:clamp(26px,7vw,36px)}
  .hero-sub{margin-top:26px}
  .hero-cta{width:100%}
  .hero-cta .pill{flex:1;padding:0 16px}
  .hero-foot .label:last-child{display:none}
  .facts{grid-template-columns:1fr;margin-top:64px;gap:22px}
  .ba-frame{aspect-ratio:4/5;border-radius:22px}
  .stack-wrap{height:245vh}
  .card{border-radius:24px;height:clamp(400px,calc(100svh - 278px),540px)}
  .c-head{height:52px;padding:0 18px;gap:12px}
  .c-name{font-size:17px}
  .c-body{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}
  .c-text{padding:18px 18px 4px;gap:14px}
  .c-quote{display:none}
  .chips span:nth-child(n+4){display:none}
  .chips span{padding:8px 12px;font-size:12px}
  .c-vis{margin:12px;min-height:0;padding:8px;gap:6px}
  .grid{grid-template-columns:1fr}
  .deck{height:210vh;--cw:min(38vw,19svh);margin-top:50px}
  .d-head{top:calc(80px + env(safe-area-inset-top,0px))}
  .d-table{top:61%}
  .pc .bot{display:none}
  .pc .f,.pc .b{border-radius:12px}
  .pc .f p{font-size:max(10.5px,7.4cqw);line-height:1.45;margin-top:6cqw}
  .pc .t{font-size:9.4cqw}
  .grid{grid-template-columns:1fr;gap:40px}
  .step{grid-template-columns:1fr;gap:10px;padding-left:28px}
  .plan{grid-template-columns:1fr;grid-template-areas:"name" "desc" "bill" "list" "cta";padding:28px 24px;row-gap:16px}
  .plan:hover{transform:none}
  .plan ul{grid-template-columns:1fr}
  .plan .pill{justify-self:start}
  .faq-grid{grid-template-columns:1fr}
  .faq-grid .sticky{position:static}
  .qa p{padding-right:0}
  .c-grid{grid-template-columns:1fr}
  form{grid-template-columns:1fr}
  footer{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .sl .w>span,.js .fd{transform:none!important;opacity:1!important}
  .w2{opacity:1}
}

/* ---------- shop: prices, cart, checkout ---------- */
.pill.sm{height:42px;padding:0 18px;font-size:14px}
.sv-b{display:flex;flex-direction:column}
.buy{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);display:grid;gap:14px}
.sv ul+.buy{margin-top:auto}
.sv ul{margin-bottom:18px}
.seg{display:inline-flex;gap:3px;padding:3px;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line-2);width:max-content;max-width:100%}
.seg button{height:32px;padding:0 14px;border-radius:99px;border:0;background:none;color:#B9C3CF;font:500 13px/1 var(--sans);transition:background .3s,color .3s}
.seg button[aria-pressed="true"]{background:var(--metal-x);background-size:200% 100%;color:var(--ink)}
.qty{display:flex;align-items:center;gap:8px}
.qty button{width:34px;height:34px;flex:0 0 34px;border-radius:50%;border:0;box-shadow:inset 0 0 0 1px var(--line-2);background:none;color:var(--text);font:400 18px/1 var(--sans)}
.qty input{width:58px;height:34px;border-radius:10px;border:0;box-shadow:inset 0 0 0 1px var(--line-2);background:rgba(255,255,255,.03);color:var(--text);text-align:center;font:500 15px/1 var(--sans);-moz-appearance:textfield;appearance:textfield}
.qty input::-webkit-inner-spin-button,.qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.qty>span{font-size:13px;color:var(--mute)}
.buy-p{display:flex;align-items:baseline;gap:6px 12px;flex-wrap:wrap}
.pr{font:600 clamp(24px,1.9vw,30px)/1.1 var(--sans);letter-spacing:-.03em;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-right:.04em}
.pr-sub{font-size:13px;color:var(--mute)}
.buy-c{display:flex;gap:8px;flex-wrap:wrap}
.buy-c .pill{flex:1 1 auto}
.pbar{display:flex;align-items:center;justify-content:space-between;gap:14px 32px;flex-wrap:wrap;margin:-12px 0 32px;padding:14px 16px 14px 22px;border-radius:22px;box-shadow:inset 0 0 0 1px var(--line)}
.pbar-l{display:flex;align-items:center;gap:14px}
.pbar p{color:var(--mute);font-size:14px;line-height:1.5;max-width:64ch;margin:0}
.pbar .money,.kit .money,.plan .money{color:var(--text);font-weight:500}
.cur-sw{display:inline-flex;gap:2px;padding:3px;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line-2)}
.cur-sw button{height:30px;padding:0 12px;border-radius:99px;border:0;background:none;color:#B9C3CF;font:500 12px/1 var(--sans);letter-spacing:.06em;transition:background .3s,color .3s}
.cur-sw button[aria-pressed="true"]{background:rgba(242,244,247,.13);color:var(--text)}
.pk-pr{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.pk-pr .pr{font-size:clamp(32px,2.8vw,44px)}
.pk-pr span{color:var(--mute);font-size:14px}
.pk-save{font-size:13px;color:var(--mute);margin-top:-8px}
.pk .buy-c{margin-top:4px}
.pk .buy-c .pill{align-self:auto}
.pk.hot .pr{background:none;color:var(--ink);-webkit-text-fill-color:var(--ink)}
.pk.hot .pk-pr span,.pk.hot .pk-save{color:#3A4452}
.pk.hot .p-ghost{color:var(--ink);background:transparent;box-shadow:inset 0 0 0 1px rgba(11,11,12,.35)}
.pk.hot .money{color:var(--ink)}
.kit-r{display:grid;justify-items:end;gap:12px}
.kit-r .pr{font-size:clamp(26px,2.2vw,34px)}
.foot-note a{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.c-count .money{color:inherit}
.cart-btn{position:relative;width:44px;padding:0}
.cart-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.cart-n{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:var(--metal-x);background-size:200% 100%;color:var(--ink);font:600 10px/19px var(--sans);text-align:center}
#cartBtn{display:inline-flex}
.cart{position:fixed;top:0;right:0;bottom:0;z-index:62;width:min(460px,100%);background:#111215;box-shadow:inset 1px 0 0 var(--line),-30px 0 80px -20px #000;display:flex;flex-direction:column;transform:translateX(104%);visibility:hidden;transition:transform .6s var(--ease),visibility 0s .6s;padding-top:env(safe-area-inset-top,0px)}
.cart.open{transform:none;visibility:visible;transition:transform .6s var(--ease)}
.scrim{position:fixed;inset:0;z-index:61;background:rgba(5,5,6,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
html.cart-on{overflow:hidden}
.cart-h{display:flex;align-items:center;gap:12px;padding:18px 20px 18px 24px;border-bottom:1px solid var(--line)}
.cart-h b{font:600 20px/1 var(--sans);letter-spacing:-.02em;margin-right:auto}
.cart-x{width:40px;height:40px;flex:0 0 40px;border-radius:50%;border:0;background:none;box-shadow:inset 0 0 0 1px var(--line-2);color:var(--text);display:grid;place-items:center}
.cart-x svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round}
.cart-l{flex:1;overflow:auto;padding:4px 24px;overscroll-behavior:contain}
.cl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;padding:18px 0;border-bottom:1px solid var(--line)}
.cl-t b{display:block;font:500 15px/1.35 var(--sans)}
.cl-t small{color:var(--mute);font-size:12px}
.cl-p{text-align:right;font:600 15px/1.35 var(--sans);white-space:nowrap}
.cl-p small{color:var(--mute);font-weight:400}
.cl-p s{display:block;color:var(--steel);font-weight:400;font-size:12px}
.cl-r{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}
.qty.sm button{width:30px;height:30px;flex-basis:30px;font-size:16px}
.qty.sm>span{min-width:70px;text-align:center;color:var(--text);font-size:13px}
.cl-x{border:0;background:none;padding:6px 0;color:var(--mute);font:500 12px/1 var(--sans);text-decoration:underline;text-underline-offset:3px}
.ao{grid-column:1/-1}
.ao summary{font:500 12px/1 var(--sans);color:var(--plat);list-style:none;width:max-content}
.ao summary::-webkit-details-marker{display:none}
.ao summary::after{content:" +";color:var(--mute)}
.ao[open] summary::after{content:" \2212"}
.ao label{display:flex;gap:10px;align-items:center;font-size:13px;color:#C9D2DD;margin-top:10px}
.ao input{accent-color:#C8D4E2;width:16px;height:16px;margin:0}
.ao em{color:var(--mute);font-style:normal;margin-left:auto}
.cart-s{padding:18px 24px calc(20px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);display:grid;gap:12px;background:#0E0F11}
.cart-s:empty{display:none}
.sum{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;margin:0;font-size:14px}
.sum dt{color:var(--mute)}
.sum dd{margin:0;text-align:right;font-weight:500}
.sum dd small{color:var(--mute);font-weight:400}
.sum .disc{color:var(--plat)}
.term{display:grid;gap:8px}
.term>span{font:500 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--steel)}
.term .seg{width:100%;display:flex}
.term .seg button{flex:1;padding:0 8px;font-size:12px}
.term em{font-style:normal;opacity:.65}
.hint{font-size:13px;color:var(--mute);margin:0}
.due{display:flex;justify-content:space-between;align-items:baseline;padding-top:12px;border-top:1px solid var(--line)}
.due span{color:var(--mute);font-size:14px}
.due b{font:600 26px/1 var(--sans);letter-spacing:-.03em}
.then{font-size:13px;color:var(--mute);margin:-4px 0 0}
.cart-s .pill{width:100%}
.cart-call{justify-self:center;font-size:13px;color:var(--mute);text-decoration:underline;text-underline-offset:3px}
.cart-empty{padding:36px 0;color:var(--mute)}
.cart-empty p{margin:0 0 6px}
.cart-empty b{display:block;color:var(--text);font:600 20px/1.2 var(--sans);margin-bottom:8px}
.ce-links{display:grid;gap:8px;margin-top:22px}
.ce-links a{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-radius:14px;box-shadow:inset 0 0 0 1px var(--line);color:var(--text);font-size:15px}
.ce-links a svg{width:16px;height:16px}
.co{padding-block:clamp(130px,12vw,170px) clamp(80px,8vw,120px);background:var(--bg)}
.co-head h1{font:600 var(--h2)/1.04 var(--sans);letter-spacing:-.045em;margin:18px 0 0}
.co-head p{color:var(--mute);margin:16px 0 0;max-width:52ch}
.co-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);margin-top:48px;align-items:start}
.co-form{display:grid;grid-template-columns:minmax(0,1fr);gap:34px}
.co-form fieldset{border:0;margin:0;padding:0;display:grid;gap:14px;min-width:0}
.co-form legend{font:600 var(--h4)/1.15 var(--sans);letter-spacing:-.03em;margin-bottom:16px;padding:0;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.co-form label{display:grid;gap:8px;align-content:start;font:500 13px/1.3 var(--sans);color:#C3CCD7}
.co-form label small{color:var(--mute);font-weight:400}
.co-form input:not([type=radio]):not([type=checkbox]),.co-form textarea{width:100%;padding:14px 16px;border-radius:14px;border:0;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px var(--line-2);color:var(--text);font:400 15px/1.4 var(--sans);resize:vertical}
.co-form input:focus,.co-form textarea:focus{outline:0;box-shadow:inset 0 0 0 1.5px var(--plat)}
.co-form ::placeholder{color:#6B7684}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pay{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.co-form .pay-o{display:flex;gap:12px;align-items:flex-start;padding:18px;border-radius:18px;box-shadow:inset 0 0 0 1px var(--line-2);transition:box-shadow .3s,background .3s}
.pay-o input{margin:3px 0 0;accent-color:#C8D4E2;width:16px;height:16px}
.pay-o b{display:block;font:600 15px/1.2 var(--sans);color:var(--text)}
.pay-o small{display:block;margin-top:6px;font-size:13px;line-height:1.45}
.co-form .pay-o:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--plat);background:rgba(242,244,247,.04)}
.co-form .agree{display:flex;gap:12px;align-items:center;font-weight:400;font-size:14px}
.agree input{accent-color:#C8D4E2;width:18px;height:18px;margin:0;flex:0 0 18px}
.co-form>.pill{justify-self:start}
.co-msg{padding:20px 22px;border-radius:18px;box-shadow:inset 0 0 0 1px var(--line-2);color:#C9D2DD;font-size:15px;display:grid;gap:14px}
.co-msg b{color:var(--text);font-weight:600}
.co-msg .acts{display:flex;gap:8px;flex-wrap:wrap}
.co-sum{position:sticky;top:110px;padding:26px;border-radius:26px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:16px}
.co-sum h2{font:600 var(--h4)/1.1 var(--sans);letter-spacing:-.03em;margin:0}
.co-l{display:grid;gap:12px;font-size:14px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.co-l>div{display:flex;justify-content:space-between;gap:16px}
.co-l span{color:#D5DCE5}
.co-l small{display:block;color:var(--mute);font-size:12px}
.co-l b{font-weight:500;white-space:nowrap}
.co-sum .lnk{background:none;border:0;padding:0;color:var(--plat);font:500 13px/1 var(--sans);text-decoration:underline;text-underline-offset:3px;justify-self:start}
.co-sum .cur-sw{justify-self:start}
@media (max-width:900px){
  .co-grid{grid-template-columns:1fr}
  .co-sum{position:static;order:-1}
  .row2,.pay{grid-template-columns:1fr}
  .kit-r{justify-items:start}
  .pbar{padding:14px 16px}
  .cl-r{flex-wrap:wrap}
}
.money{white-space:nowrap}
.plan.hot .money{color:var(--ink)}
@media (max-width:600px){
  .cart{overflow:auto;overscroll-behavior:contain}
  .cart-l{flex:none;overflow:visible}
  .cart-s{border-top:0;background:none}
}

/* ---------- services as a collapsible list ---------- */
:root{interpolate-size:allow-keywords}
.svc-list{display:grid;gap:10px}
.svc{border-radius:22px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s}
.svc[open]{box-shadow:inset 0 0 0 1px var(--line-2)}
.svc::details-content{block-size:0;overflow:hidden;transition:block-size .55s var(--ease),content-visibility .55s allow-discrete}
.svc[open]::details-content{block-size:auto}
.svc summary{list-style:none;display:grid;grid-template-columns:40px minmax(0,1fr) minmax(150px,auto) 38px;align-items:center;gap:20px;padding:20px 22px 20px 26px;border-radius:22px;transition:background .3s}
.svc summary::-webkit-details-marker{display:none}
.svc summary:hover{background:rgba(242,244,247,.025)}
.svc-n{font:500 11px/1 var(--sans);letter-spacing:.24em;color:var(--steel)}
.svc-t b{display:block;font:600 clamp(18px,1.5vw,22px)/1.2 var(--sans);letter-spacing:-.025em;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-right:.06em;width:max-content;max-width:100%}
.svc-t small{display:block;margin-top:5px;color:var(--mute);font-size:14px;line-height:1.45}
.svc-spec{font:500 10px/1.5 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--plat)}
.svc-pr{justify-self:end;text-align:right;font-size:13px;color:var(--mute);white-space:nowrap}
.svc-pr .money{font:600 17px/1 var(--sans);letter-spacing:-.01em;color:var(--text)}
.svc-i{position:relative;width:38px;height:38px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line-2);transition:background .3s}
.svc-i::before,.svc-i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;margin:-.75px 0 0 -6px;border-radius:2px;background:var(--text);transition:transform .45s var(--ease)}
.svc-i::after{transform:rotate(90deg)}
.svc[open] .svc-i{background:rgba(242,244,247,.08)}
.svc[open] .svc-i::after{transform:rotate(0)}
.svc-in{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:28px;padding:6px 26px 26px 86px}
.svc-in>.ph{aspect-ratio:16/10;border-radius:16px;align-self:start}
.svc-d{display:flex;flex-direction:column;gap:14px}
.svc-d ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:15px;color:#C9D2DD}
.svc-d li{display:flex;gap:10px;align-items:baseline}
.svc-d li::before{content:"";flex:0 0 5px;height:5px;border-radius:50%;background:var(--plat);transform:translateY(-2px)}
.svc-d .buy{margin-top:6px}
.svc-list+.svc-grp{margin-top:56px}
@media (max-width:1100px){
  .svc summary{grid-template-columns:34px minmax(0,1fr) auto 36px}
  .svc-spec{display:none}
}
@media (max-width:700px){
  .svc summary{grid-template-columns:minmax(0,1fr) auto 34px;gap:14px;padding:18px 16px 18px 20px}
  .svc-n{display:none}
  .svc-t small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px}
  .svc-pr{font-size:12px;white-space:normal;max-width:124px}
  .svc-pr .money{font-size:15px;display:block}
  .svc-i{width:34px;height:34px}
  .svc-in{grid-template-columns:1fr;gap:18px;padding:0 18px 20px}
  .svc-in>.ph{aspect-ratio:16/9}
}

/* ---------- gold spark in the tunnel ---------- */
.gold{position:absolute;left:0;top:0;z-index:3;width:64px;height:64px;margin:-32px 0 0 -32px;padding:0;border:0;border-radius:50%;background:none;opacity:0;will-change:transform,opacity}
.gold i{position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px;border-radius:50%;background:radial-gradient(circle,#FFFBEA 0 24%,#F7D375 48%,rgba(232,178,64,0) 72%);box-shadow:0 0 18px 6px rgba(245,200,90,.6),0 0 46px 16px rgba(232,170,50,.26);transform:scale(var(--s,1))}
.gold::before{content:"";position:absolute;right:50%;top:50%;width:calc(96px*var(--s,1));height:2.5px;margin-top:-1.25px;border-radius:2px;background:linear-gradient(90deg,rgba(245,200,90,0),rgba(247,214,120,.95));pointer-events:none}
.gold:focus-visible{outline:2px solid #F5CF6B;outline-offset:2px}
.gold.got::before{opacity:0;transition:opacity .2s}
.gold.got i{animation:goldPop .75s var(--ease) forwards}
.gold.got::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-6px;border-radius:50%;box-shadow:0 0 0 2px rgba(245,207,107,.9);animation:goldRing .75s var(--ease) forwards}
@keyframes goldPop{0%{transform:scale(var(--s,1))}35%{transform:scale(calc(var(--s,1) * 2.6))}100%{transform:scale(0);opacity:0}}
@keyframes goldRing{from{transform:scale(1);opacity:1}to{transform:scale(10);opacity:0}}
.gold-toast{position:absolute;left:50%;bottom:calc(28px + env(safe-area-inset-bottom,0px));z-index:3;width:max-content;max-width:calc(100% - 32px);display:grid;gap:4px;text-align:center;padding:16px 22px;border-radius:18px;background:rgba(11,11,12,.74);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px rgba(245,207,107,.55),0 20px 50px -20px rgba(0,0,0,.9);opacity:0;transform:translate(-50%,16px);transition:opacity .5s,transform .6s var(--ease)}
.gold-toast.on{opacity:1;transform:translate(-50%,0)}
.gold-toast b{font:600 16px/1.3 var(--sans);color:#F5D88A}
.gold-toast span{font-size:14px;color:#C9D2DD}
.sum .gold-l,.hint.gold-l,.gold-note{color:#E9CC7E}
.gold-note{margin:10px 0 0;font-size:14px}

/* ---------- booking page ---------- */
.bk-steps{margin-top:48px}
.bk-steps>div{transition:box-shadow .4s,background .4s}
.bk-steps>div.on{box-shadow:inset 0 0 0 1.5px var(--plat);background:#17181C}
.bk-grid{margin-top:64px}
.bk-lab{display:block;font:500 13px/1.3 var(--sans);color:#C3CCD7;margin-bottom:10px}
.co-form .need label{display:inline-flex;align-items:center;gap:0;font:400 14px/1 var(--sans);color:#C3CCD7;padding:11px 15px;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line-2);cursor:pointer;transition:background .3s,color .3s}
.co-form .need input:checked+label{background:var(--plat);color:var(--ink);box-shadow:none}
.bk-side .bk-list{font-size:14px}
.bk-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.bk-facts b{display:block;font:600 var(--h4)/1.1 var(--sans);letter-spacing:-.03em;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;width:max-content}
.bk-facts span{font-size:13px;color:var(--mute)}
.bk-side .mail-c{color:var(--text);text-decoration-color:var(--line-2)}
.bk-cal{margin-top:20px;padding:clamp(24px,3vw,40px);border-radius:28px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:22px}
.bk-cal-h .k{font:500 11px/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--plat)}
.bk-cal-h h2{font:600 var(--h3)/1.05 var(--sans);letter-spacing:-.04em;margin:18px 0 10px}
.bk-cal-h p{color:var(--mute);max-width:56ch}
.bk-cal>iframe{width:100%;height:min(720px,80vh);border:0;border-radius:18px;background:#fff}
.bk-cal-embed{position:relative;width:100%;min-height:560px;border-radius:18px;overflow:hidden}
.bk-cal-embed #bkCalEmbed{position:relative;z-index:1}
.bk-load{position:absolute;inset:0;z-index:2;display:flex;gap:14px;align-items:center;justify-content:center;padding:24px;text-align:center;border-radius:18px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);color:var(--mute);font-size:14px;transition:opacity .4s}
.bk-load.gone{opacity:0;pointer-events:none}
.bk-load a{color:var(--plat);text-decoration:underline;text-underline-offset:3px}
.bk-spin{flex:none;width:18px;height:18px;border-radius:50%;border:1.5px solid var(--line-2);border-top-color:var(--plat);animation:bkspin .9s linear infinite}
@keyframes bkspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.bk-spin{animation:none}}
.bk-cal-h p b{color:var(--text);font-weight:600}
.bk-cal-alt{color:var(--mute);font-size:13px;margin:0}
.bk-cal-alt a{color:var(--plat);text-decoration:underline;text-underline-offset:3px}
.bk-cal .acts{display:flex;gap:8px;flex-wrap:wrap}
.bk-cal .lnk{justify-self:start;background:none;border:0;padding:0;color:var(--plat);font:500 13px/1 var(--sans);text-decoration:underline;text-underline-offset:3px}

/* ---------- recommended service per pillar ---------- */
.svc.rec{background:radial-gradient(90% 140% at 0% 0%,rgba(200,212,226,.09),rgba(200,212,226,0) 60%),linear-gradient(180deg,#191A1F,#121317);box-shadow:inset 0 0 0 1.5px rgba(200,212,226,.55),0 30px 70px -40px rgba(0,0,0,.9)}
.svc.rec[open]{box-shadow:inset 0 0 0 1.5px var(--plat),0 30px 70px -40px rgba(0,0,0,.9)}
.svc-rec{display:inline-block;margin:6px 0 2px;padding:6px 10px;border-radius:99px;font:600 10px/1 var(--sans);font-style:normal;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);background:var(--metal-x);background-size:200% 100%}

/* ---------- monthly packages: who it is for, how the program runs ---------- */
.pk-for{margin:-6px 0 0;font-size:14px;line-height:1.5;color:var(--mute)}
.pk.hot .pk-for{color:#3A4452}
.prog{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:20px}
.prog-col{padding:30px 32px;border-radius:24px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:20px;align-content:start}
.prog-steps{list-style:none;margin:0;padding:0;display:grid;gap:0;position:relative}
.prog-steps li{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;padding:16px 0 16px 22px;border-top:1px solid var(--line)}
.prog-steps li:first-child{border-top:0;padding-top:4px}
.prog-steps li::before{content:"";position:absolute;left:0;top:23px;width:8px;height:8px;border-radius:50%;background:var(--metal);box-shadow:0 0 12px rgba(200,212,226,.4)}
.prog-steps li:first-child::before{top:11px}
.prog-steps b{font:600 16px/1.3 var(--sans);letter-spacing:-.01em;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;width:max-content}
.prog-steps span{color:#C3CCD7;font-size:15px;line-height:1.5}
.prog-inc{list-style:none;margin:0;padding:0;display:grid;gap:12px;color:#C9D2DD;font-size:15px}
.prog-inc li{display:flex;gap:12px;align-items:baseline}
.prog-inc li::before{content:"";flex:0 0 14px;height:8px;border-left:1.6px solid var(--plat);border-bottom:1.6px solid var(--plat);transform:rotate(-45deg) translateY(-3px)}
.prog+.kit,.pk-grid+.prog{margin-top:20px}
@media (max-width:900px){.prog{grid-template-columns:1fr}.prog-col{padding:24px}.prog-steps li{grid-template-columns:1fr;gap:4px}}

/* ---------- FAQ opens and closes smoothly ---------- */
.qa::details-content{block-size:0;overflow:hidden;transition:block-size .5s var(--ease),content-visibility .5s allow-discrete}
.qa[open]::details-content{block-size:auto}
.qa p{opacity:0;transform:translateY(-6px);transition:opacity .4s ease,transform .5s var(--ease)}
.qa[open] p{opacity:1;transform:none}

/* ---------- About: platinum dot globe ---------- */
.globe{position:relative;z-index:4;height:280vh;background:#050506;border-radius:40px 40px 0 0;margin-top:-40px}
.g-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;border-radius:40px 40px 0 0;background:radial-gradient(80% 70% at 68% 50%,rgba(200,212,226,.06),rgba(5,5,6,0) 70%),#050506}
#globe{position:absolute;inset:0;width:100%;height:100%;display:block}
.g-txt{position:absolute;inset:0;display:grid;align-items:center;pointer-events:none}
.g-a,.g-b{grid-area:1/1;max-width:min(560px,46%);will-change:opacity,transform}
.g-txt h2{font-size:var(--h2);line-height:1.02}
.g-a .label{margin-bottom:22px}
.g-b p{margin-top:22px;color:#C3CCD7;font-size:clamp(16px,1.3vw,19px);max-width:36ch}
@media (max-width:900px){.globe{height:240vh}.g-txt{align-items:end;padding-block-end:calc(110px + env(safe-area-inset-bottom,0px))}.g-a,.g-b{max-width:none}}

.pk ul{align-content:start}

/* ---------- round 4: program fold, team ---------- */
.prog-d{margin-top:20px;border-radius:24px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.prog-d summary{list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;padding:24px 28px;cursor:pointer}
.prog-d summary::-webkit-details-marker{display:none}
.prog-d summary span{font:500 clamp(17px,1.4vw,20px)/1.3 var(--sans);letter-spacing:-.02em}
.prog-d summary em{font-style:normal;color:var(--mute);font-size:14px;margin-left:auto}
.prog-d summary i{flex:0 0 36px;height:36px;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line-2);position:relative;transition:transform .5s var(--ease),background .3s}
.prog-d summary i::before,.prog-d summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.5px;margin:-.75px 0 0 -6px;background:var(--plat)}
.prog-d summary i::after{transform:rotate(90deg);transition:transform .5s var(--ease)}
.prog-d[open] summary i{transform:rotate(180deg);background:rgba(200,212,226,.08)}
.prog-d[open] summary i::after{transform:rotate(0)}
.prog-d::details-content{block-size:0;overflow:hidden;transition:block-size .5s var(--ease),content-visibility .5s allow-discrete}
.prog-d[open]::details-content{block-size:auto}
.prog-d .prog{margin:0;padding:0 16px}
.prog-d .prog-col{background:rgba(11,11,12,.42)}
.prog-terms{margin:0;padding:18px 28px 26px;color:var(--mute);font-size:15px}
.prog-terms a{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.prog-d+.kit{margin-top:20px}
.team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.tm{display:grid;gap:22px;align-content:start}
.tm-ph{position:relative;aspect-ratio:4/5;border-radius:26px;overflow:hidden;background:radial-gradient(120% 85% at 50% 0%,#1f232a 0%,#131418 58%,#0d0e10 100%);box-shadow:inset 0 0 0 1px var(--line)}
.tm-sil{position:absolute;left:50%;bottom:0;width:76%;transform:translateX(-50%);fill:url(#gPlatV);opacity:.13;transition:opacity .6s,transform .9s var(--ease)}
.tm-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.1) 50%,transparent 68%);transform:translateX(-120%);transition:transform 1.3s var(--ease)}
.tm:hover .tm-ph::after{transform:translateX(120%)}
.tm:hover .tm-sil{opacity:.2;transform:translateX(-50%) scale(1.03)}
.tm-b{display:grid;gap:10px}
.tm-b .label{color:var(--steel)}
.tm-b h3{font:600 var(--h4)/1.1 var(--sans);letter-spacing:-.03em;background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;width:max-content;max-width:100%}
.tm-b p{color:var(--mute);font-size:15px;line-height:1.55;max-width:34ch}
@media (max-width:1100px){.team{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.team{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:76%;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gutter)*-1);padding-inline:var(--gutter);scroll-padding-inline:var(--gutter);scrollbar-width:none}.team::-webkit-scrollbar{display:none}.tm{scroll-snap-align:start}.prog-d summary{padding:20px}.prog-d summary em{margin-left:0;order:3;flex-basis:100%}.prog-d .prog{padding:0 10px}.prog-terms{padding:16px 20px 22px}}

/* ---------- round 6 ---------- */
@keyframes mts1{from{background-position:150% 0,0 0}to{background-position:-50% 0,0 0}}
@keyframes mts2{from{background-position:150% 0,0 0}to{background-position:-50% 0,0 0}}
.sl.sw1 .metal-t{animation:mts1 1.5s cubic-bezier(.45,0,.2,1) calc(var(--d,0s) + var(--i,0) * 80ms) both}
.sl.sw2 .metal-t{animation:mts2 1.5s cubic-bezier(.45,0,.2,1) calc(var(--d,0s) + var(--i,0) * 80ms) both}
.svc{position:relative;isolation:isolate}
.svc::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--metal-x);background-size:160% 100%;opacity:0;transition:opacity .5s var(--ease);pointer-events:none}
.svc[open]::before{opacity:1}
.svc[open],.svc.rec[open]{box-shadow:0 30px 70px -40px rgba(0,0,0,.9)}
.svc[open] summary:hover{background:rgba(11,11,12,.03)}
.svc[open] .svc-n,.svc[open] .svc-d .label{color:#4A5668}
.svc[open] .svc-t b{background:none;color:var(--ink);-webkit-text-fill-color:var(--ink)}
.svc[open] .svc-t small,.svc[open] .svc-pr,.svc[open] .pr-sub{color:#3A4452}
.svc[open] .svc-spec{color:#2A313B}
.svc[open] .money{color:var(--ink)}
.svc[open] .svc-i{box-shadow:inset 0 0 0 1px rgba(11,11,12,.35);background:rgba(11,11,12,.06)}
.svc[open] .svc-i::before,.svc[open] .svc-i::after{background:var(--ink)}
.svc[open] .svc-rec{background:var(--ink);color:#DDE6F0}
.svc[open] .svc-d ul{color:#1C2129}
.svc[open] .svc-d li::before{background:var(--ink)}
.svc[open] .buy{border-top-color:rgba(11,11,12,.18)}
.svc[open] .pr{background:none;color:var(--ink);-webkit-text-fill-color:var(--ink)}
.svc[open] .seg{box-shadow:inset 0 0 0 1px rgba(11,11,12,.3)}
.svc[open] .seg button{color:#2A313B}
.svc[open] .seg button[aria-pressed="true"]{background:var(--ink);color:#E6EDF5}
.svc[open] .p-metal{background:var(--ink);color:#F2F4F7}
.svc[open] .p-ghost{color:var(--ink);background:transparent;box-shadow:inset 0 0 0 1px rgba(11,11,12,.35)}
.qgrid>div{transition:box-shadow .6s,opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.qgrid>div.tk{box-shadow:inset 0 0 0 1px var(--line-2)}
.qgrid .ph-ic{position:relative;overflow:hidden;transition:box-shadow .6s}
.qgrid .ph-ic::before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--metal-x);background-size:200% 100%;transform:scale(.3);opacity:0;transition:transform .6s var(--ease),opacity .35s}
.qgrid .ph-ic svg{position:relative;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .5s var(--ease) .18s,stroke .3s}
.qgrid .tk .ph-ic{box-shadow:0 0 20px rgba(200,212,226,.35)}
.qgrid .tk .ph-ic::before{transform:none;opacity:1}
.qgrid .tk .ph-ic svg{stroke:var(--ink);stroke-width:2;stroke-dashoffset:0}
.svc[open] .qty button{box-shadow:inset 0 0 0 1px rgba(11,11,12,.35);color:var(--ink)}
.svc[open] .qty input{box-shadow:inset 0 0 0 1px rgba(11,11,12,.35);background:rgba(255,255,255,.35);color:var(--ink)}
.svc[open] .qty>span{color:#3A4452}
.svc-pr .svc-spec{display:block;margin-top:7px;font-size:10px;line-height:1.4;white-space:nowrap}
.svc[open] .svc-pr .svc-spec{color:#2A313B}
@media (max-width:900px){.svc-pr .svc-spec{display:none}}

/* ---------- media in placeholders (temporary stock) ---------- */
.m{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0;border-radius:inherit;background:#0B0B0C;animation:mIn .7s ease both}
@keyframes mIn{from{opacity:0}}
.m.kb{animation:mIn .7s ease both,kb 18s ease-in-out infinite alternate}
@keyframes kb{to{transform:scale(1.09)}}
.m-b{filter:brightness(.68) saturate(.45) sepia(.3) contrast(.86) blur(.6px)}
.m-d{filter:brightness(1.45) saturate(.35) contrast(.78) hue-rotate(-12deg)}
.ph.has-m{background:#0B0B0C}
.ph.has-m .ph-in{display:none}
.ph.has-m::after{display:none}
.ph.has-m::before{z-index:1;opacity:.6}
.split .bf.has-m{background:#0B0B0C;z-index:1}
.split .tag{z-index:3}
.fmt-box.has-m{background:#0B0B0C}
.fmt-box.has-m .fmt-in{opacity:0;pointer-events:none}
.fmt-box::before{z-index:1}
.fmt-tag{z-index:2}
.tm-ph.has-m .tm-sil{display:none}
.tm-ph.has-m::after{z-index:1}
.tm:hover .tm-ph .m{transform:scale(1.03)}
.tm-ph .m{transition:transform 1.2s var(--ease)}
.svc-in>.ph.has-m{aspect-ratio:16/10}
.m.m-c{object-fit:contain}
/* no corner marks on media frames */
.ph::before,.fmt-box::before{content:none}
/* frames in the shape of their piece (no letterbox, no blurred bars) */
.svc-in>.ph.has-m.fit{aspect-ratio:var(--ar);width:min(100%,calc(var(--mh,460px)*var(--ar)));justify-self:center;align-self:start}
@media (max-width:900px){.svc-in>.ph.has-m.fit{--mh:360px}}
@media (max-width:600px){.svc-in>.ph.has-m.fit{--mh:min(300px,40vh)}}
.ba-frame.fit{aspect-ratio:var(--ar);width:min(100%,calc(min(74vh,740px)*var(--ar)));margin-inline:auto}
@media (max-width:900px){.ba-frame.fit{width:min(100%,calc(min(56vh,460px)*var(--ar)))}}
@media (max-width:600px){.ba-frame.fit{width:min(100%,calc(min(46vh,380px)*var(--ar)))}}
.c-vis.jv>.ph.vh{display:none}
.c-vis.jv{display:block;position:relative;background:none;box-shadow:none}
.c-vis.jv>.ph{position:absolute}

/* mobile card heads: one line, price only */
@media (max-width:600px){.c-n{display:none}.c-name{white-space:nowrap}.c-count{letter-spacing:.12em;font-size:10.5px;white-space:nowrap}}

/* format tag: name and spec stack on narrow boxes */
.fmt-box{container:fbox/inline-size}
.fmt-tag i{font-style:normal}.fmt-tag u{text-decoration:none}
@container fbox (max-width:260px){.fmt-tag{left:10px;top:10px;padding:6px 9px;border-radius:10px;line-height:1.45;letter-spacing:.16em;font-size:9px}.fmt-tag i{display:block;color:#AEB9C6}.fmt-tag u{display:none}}
/* mobile hero: text always starts below the format box and its arrows */
@media (max-width:900px){.hero.hf .hero-in{padding-top:calc(84px + env(safe-area-inset-top,0px) + min(31vh,262px) + 78px)}}

/* invoice-only checkout, spam trap, order received */
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.pay.one{grid-template-columns:1fr}
.co-form .pay-o.on{box-shadow:inset 0 0 0 1.5px var(--plat);background:rgba(242,244,247,.04);align-items:center}
.pay-i{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;box-shadow:inset 0 0 0 1px var(--line-2)}
.pay-i svg{width:20px;height:20px;fill:none;stroke:var(--plat);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.co-done{grid-column:1/-1;padding:clamp(28px,4vw,56px);border-radius:28px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line);display:grid;gap:18px;justify-items:start}
.co-done .k{font:500 11px/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--plat)}
.co-done h2{font:600 var(--h3)/1.05 var(--sans);letter-spacing:-.04em;margin:0}
.co-done p{color:var(--mute);max-width:58ch;margin:0}
.co-done p b{color:var(--text);font-weight:600}
.co-done .acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}

/* field errors */
.co-form input[aria-invalid=true],.co-form textarea[aria-invalid=true]{box-shadow:inset 0 0 0 1.5px #E3A5A5!important}
.co-form .agree.bad span{color:#E8B4B4}
.co-form .agree.bad input{outline:1.5px solid #E3A5A5;outline-offset:2px}
/* order received: what happens next */
.co-next{list-style:none;margin:6px 0 4px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;counter-reset:nx}
.co-next li{position:relative;padding:18px 18px 18px 18px;border-radius:18px;box-shadow:inset 0 0 0 1px var(--line-2);display:grid;gap:6px;counter-increment:nx}
.co-next li::before{content:counter(nx);font:500 11px/1 var(--sans);letter-spacing:.2em;color:var(--plat)}
.co-next li.on{box-shadow:inset 0 0 0 1.5px var(--plat);background:rgba(242,244,247,.04)}
.co-next b{font:600 15px/1.25 var(--sans);color:var(--text)}
.co-next span{font-size:13px;line-height:1.45;color:var(--mute)}
@media (max-width:900px){.co-next{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.co-next{grid-template-columns:1fr}.co-done .acts .pill{width:100%;justify-content:center}}
