/* AI Foundation sales page v2. EVOLV deck v2 house style. Own token set: cobalt is the one accent. Light only. */
:root{
  color-scheme: light;
  --paper:#FBFAF7; --surface:#FFFFFF; --ink:#14160F; --sub:#6E7066; --faint:#A3A49B;
  --line:#E4E2D8; --line2:#EEEDE6; --cobalt:#2247E6; --cobalt-dk:#1A39C4; --cobalt-50:#EEF1FD;
  --ghost:rgba(20,22,15,.05);
  --soft:0 30px 60px -30px rgba(20,22,15,.25);
  --head:'Schibsted Grotesk',sans-serif; --body:'Geist',-apple-system,BlinkMacSystemFont,sans-serif; --mono:'IBM Plex Mono',ui-monospace,monospace;
  --ease:cubic-bezier(.22,1,.36,1); --gutter:clamp(16px,5vw,88px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure,ol,ul{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit}
.wrap{width:100%;max-width:1320px;margin:0 auto;padding:0 var(--gutter)}
.center{text-align:center}

/* header */
.top{position:sticky;top:0;z-index:20;background:rgba(251,250,247,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line2)}
.top-row{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--head);font-weight:800;font-size:17px;letter-spacing:-.02em}

/* type */
.eyebrow{font-family:var(--mono);font-size:13px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--cobalt);margin-bottom:22px}
h1,h2{font-family:var(--head);font-weight:900;letter-spacing:-.045em;line-height:.96;text-wrap:balance}
h1{font-size:clamp(42px,6vw,84px)}
h2{font-size:clamp(36px,4.8vw,68px)}
h3{font-family:var(--head);font-weight:900;letter-spacing:-.035em;line-height:1.05}
.hl{color:var(--cobalt)}
.sub{font-family:var(--head);font-weight:700;font-size:clamp(20px,1.9vw,25px);line-height:1.3;letter-spacing:-.015em;color:var(--cobalt);margin-top:26px;max-width:30ch;text-wrap:pretty}
.lead{font-size:clamp(18px,1.4vw,20px);line-height:1.5;color:var(--ink);margin-top:16px;max-width:42ch;text-wrap:pretty}

/* button */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 30px;border-radius:999px;background:var(--cobalt);color:#fff;font-family:var(--head);font-weight:700;font-size:18px;letter-spacing:-.01em;text-decoration:none;box-shadow:var(--soft);transition:background .24s var(--ease),transform .24s var(--ease)}
.btn:hover{background:var(--cobalt-dk);transform:translateY(-1px)}
.btn:focus-visible,summary:focus-visible{outline:2px solid var(--cobalt);outline-offset:4px}
.btn-sm{min-height:44px;padding:0 20px;font-size:15px;box-shadow:none}

/* hero */
.hero{padding:56px 0 40px}
.hero-grid{display:grid;grid-template-columns:1fr;gap:24px;align-items:center}
.cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:34px}
.note{font-family:var(--mono);font-size:13px;letter-spacing:.04em;color:var(--sub);max-width:24ch;line-height:1.45}
.hero-art{margin:0 calc(var(--gutter) * -1)}
.hero-art img{width:100%}
.facts{display:flex;flex-wrap:wrap;gap:10px 0;margin-top:40px;padding-top:22px;border-top:1px solid var(--line)}
.facts li{font-family:var(--mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--sub);white-space:nowrap}
.facts li+li::before{content:"\00B7";margin:0 14px;color:var(--faint)}
@media (min-width:980px){
  .hero{padding:64px 0 48px}
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}
  .hero-art{margin:0 calc(var(--gutter) * -.6) 0 -24px}
}

/* sections */
.sec{padding:96px 0;border-top:1px solid var(--line)}
.head{max-width:980px;margin-bottom:56px}
.head.center{margin-left:auto;margin-right:auto}
.bridge{font-family:var(--head);font-weight:900;font-size:clamp(26px,2.8vw,40px);letter-spacing:-.035em;line-height:1.08;margin-top:64px;text-wrap:balance}
.bridge.center{margin-left:auto;margin-right:auto;max-width:24ch}

/* 01 problem */
.split{display:grid;grid-template-columns:1fr;gap:56px;align-items:center}
.stack{margin-top:32px;display:grid;gap:12px;font-size:19px;color:var(--sub);max-width:46ch}
.stack .ink{color:var(--ink);font-weight:500}
@media (min-width:980px){.split{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:64px}}

/* window surface */
.win{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--soft);overflow:hidden;text-align:left}
.win-bar{display:flex;align-items:center;gap:12px;height:38px;padding:0 14px;border-bottom:1px solid var(--line2);background:#FDFDFB}
.dots{display:flex;gap:6px}.dots i{width:9px;height:9px;border-radius:50%;background:#E2E0D7}
.win-title{white-space:nowrap;font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--sub)}
.win-ex{margin-left:auto;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--sub);border:1px solid var(--line);border-radius:999px;padding:2px 9px;white-space:nowrap}
.win-body{padding:18px}

/* grid of empty chats */
.pile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:620px;width:100%;margin:0 auto}
.pw .win{box-shadow:0 18px 36px -24px rgba(20,22,15,.22)}
.pw .win-body{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;height:128px;padding:14px}
.pw-empty{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.pw-q{font-family:var(--head);font-weight:800;font-size:16px;letter-spacing:-.02em;color:var(--ink);text-align:center;line-height:1.2}
.pw-input{width:86%;height:24px;border:1px solid var(--line);border-radius:999px;margin-top:8px}
@media (min-width:600px){.pile{grid-template-columns:repeat(3,minmax(0,1fr))}.split .pile{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.pw .win-body{height:112px}.pw-q{font-size:14px}.pw .win-bar{height:32px}}

/* the fix */
.fix h2{max-width:20ch;margin:0 auto}
.key{margin:48px calc(var(--gutter) * -1) 0}
.key img{width:100%;max-width:1500px;margin:0 auto}
.key figcaption{display:grid;grid-template-columns:1fr 1fr;max-width:1300px;margin:6px auto 0;padding:0 var(--gutter)}
.key figcaption span{font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub);text-align:center}
.key figcaption .on{color:var(--cobalt)}
.fix .bridge{margin-top:48px}
.key-mob{display:none}
.key-mob span{display:block;text-align:center;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub);margin:0 0 28px}
.key-mob span.on{color:var(--cobalt)}
@media (max-width:599px){.key>img,.key figcaption{display:none}.key-mob{display:block}.key{margin:32px calc(var(--gutter) * -1) 0}}
.hero-art img,.why-art img{-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 72%,transparent 100%);mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 72%,transparent 100%)}
.key>img{-webkit-mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent),linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent),linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);mask-composite:intersect}

/* 02 steps */
.steps{display:grid;gap:20px;counter-reset:s}
.st{display:grid;grid-template-columns:1fr;gap:28px;background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:var(--soft);padding:32px 22px;position:relative;overflow:hidden}
.st-copy{position:relative}
.st-n{display:block;font-family:var(--head);font-weight:900;font-size:84px;line-height:.85;letter-spacing:-.06em;color:#E8E6DE;margin-bottom:18px;pointer-events:none}
.st-when{font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--cobalt);margin-bottom:12px}
.st h3{font-size:clamp(28px,2.8vw,40px);margin-bottom:12px;max-width:16ch}
.st-line{font-size:18px;color:var(--sub);max-width:36ch}
.done{margin-top:22px;padding-top:16px;border-top:1px solid var(--line2);font-size:17px;font-weight:500;max-width:40ch}
.done span{display:block;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--cobalt);margin-bottom:6px}
.st-ui{background:var(--paper);border:1px solid var(--line2);border-radius:18px;padding:22px;display:flex;align-items:center;justify-content:center}
.st-ui .win{width:100%;max-width:420px;box-shadow:0 20px 40px -24px rgba(20,22,15,.22)}
@media (min-width:900px){
  .st{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:48px;padding:44px 48px}
  .st-ui{padding:36px;min-height:300px}
}
.goal{margin-top:56px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px}
.goal p{font-family:var(--head);font-weight:900;font-size:clamp(26px,2.8vw,40px);letter-spacing:-.035em;line-height:1.08;max-width:24ch;text-wrap:balance}

/* mini UI bits */
.ui-k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sub);margin-bottom:12px}
.rm{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--line2);font-size:15px}
.rm-dot{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--faint);flex:none}
.rm-when{font-family:var(--mono);font-size:12px;color:var(--sub);width:84px;flex:none}
.rm-what{font-weight:600}
.rm.on .rm-dot{background:var(--cobalt);border-color:var(--cobalt)}
.rm.on .rm-what{color:var(--cobalt)}
.cx{display:flex;align-items:center;gap:12px;padding:8px 0;border-top:1px solid var(--line2);font-size:15px}
.cx-ic{width:28px;height:28px;border-radius:8px;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--head);font-weight:800;font-size:13px}
.cx-n{font-weight:600;flex:1}
.cx-s{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--cobalt);background:var(--cobalt-50);border-radius:999px;padding:3px 10px}
.msg{font-size:15px;line-height:1.45;border-radius:14px;padding:11px 14px;max-width:88%}
.msg.q{margin-left:auto;background:var(--paper);border:1px solid var(--line)}
.msg.a{margin-top:12px;background:var(--cobalt);color:#fff}
.msg .who{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.8;margin-bottom:4px}
.sk{display:block;height:9px;border-radius:5px;background:#ECEAE2;margin:7px 0}
.w90{width:90%}.w80{width:80%}.w70{width:70%}.w60{width:60%}.w50{width:50%}
.post{border:1px solid var(--line2);border-radius:12px;padding:12px}
.post-h{font-family:var(--head);font-weight:800;font-size:16px;letter-spacing:-.02em;line-height:1.25}
.post-t{font-size:14px;color:var(--sub);margin-top:6px;line-height:1.45}
.th-t{font-size:14px;line-height:1.45;margin-top:2px}
.th.ai .th-t{color:var(--ink)}
.post-img{height:70px;border-radius:8px;background:linear-gradient(135deg,#F1EFE8,#E7E5DC);margin-top:10px}
.ui-row{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.pill{display:inline-flex;align-items:center;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600}
.pill.solid{background:var(--cobalt);color:#fff}
.pill.ghost-pill{border:1px solid var(--line);color:var(--sub)}
.pill.sm{margin-top:12px;font-size:12px;padding:6px 12px}
.th{display:flex;gap:10px;padding:10px 0}
.th+.th{border-top:1px solid var(--line2)}
.th>div{flex:1}
.th-n{font-size:13px;font-weight:600}
.av{width:30px;height:30px;border-radius:50%;background:var(--paper);border:1px solid var(--line);display:grid;place-items:center;font-size:12px;font-weight:700;flex:none}
.av-ai{background:var(--cobalt);border-color:var(--cobalt);color:#fff;font-size:10px}
.th.ai .sk{background:#DFE5FB}

/* 03 how cards */
.cards{display:grid;grid-template-columns:1fr;gap:20px}
.card{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--soft);padding:28px 28px 36px}
.card .ghost{display:none;position:absolute;top:6px;right:18px;font-family:var(--head);font-weight:900;font-size:120px;line-height:1;letter-spacing:-.06em;color:var(--ghost);pointer-events:none}
.card-ui{position:relative;height:180px;display:flex;align-items:center;justify-content:center;margin-bottom:26px;background:var(--paper);border:1px solid var(--line2);border-radius:16px}
.card h3{font-size:clamp(26px,2.4vw,32px);margin-bottom:10px}
.card p{color:var(--sub);font-size:17px;max-width:32ch}
.layers{display:grid;gap:6px;width:70%}
.ly{display:block;text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sub);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:9px 0}
.ly.base{background:var(--cobalt);border-color:var(--cobalt);color:#fff;padding:14px 0}
.prompt{width:78%;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.prompt .ui-k{margin-bottom:6px}
.week{width:80%}
.days{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.d{display:grid;place-items:center;height:56px;border-radius:10px;background:var(--surface);border:1px solid var(--line);font-family:var(--mono);font-size:13px;color:var(--sub)}
.d.on{background:var(--cobalt);border-color:var(--cobalt);color:#fff}
@media (min-width:900px){.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}


/* 03 how: 2AM-style named parts (v2r) */
.parts{display:grid;grid-template-columns:1fr;gap:20px}
.part{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--soft);overflow:hidden}
.part-ui{height:300px;display:flex;align-items:center;justify-content:center;padding:28px;background:linear-gradient(180deg,#F3F1EA,#ECEAE2);border-bottom:1px solid var(--line2)}
.part-copy{padding:26px 28px 32px}
.part-k{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--cobalt);margin-bottom:12px}
.part h3{font-size:clamp(26px,2.3vw,32px);margin-bottom:10px}
.part-copy p:not(.part-k){color:var(--sub);font-size:17px;max-width:34ch}
.hw-stack{width:100%;max-width:300px;display:grid;gap:10px}
.hw-top{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hw-app{display:grid;place-items:center;height:52px;background:var(--surface);border:1px solid var(--line);border-radius:12px;font-family:var(--head);font-weight:800;font-size:15px;letter-spacing:-.01em;box-shadow:0 12px 24px -18px rgba(20,22,15,.3)}
.hw-base{background:var(--cobalt);border-radius:14px;padding:14px 14px 16px;box-shadow:0 22px 40px -22px rgba(34,71,230,.55)}
.hw-k{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#fff;opacity:.85;margin-bottom:10px}
.hw-files{display:flex;flex-wrap:wrap;gap:6px}
.fl{font-size:12.5px;font-weight:600;color:var(--ink);background:#fff;border-radius:7px;padding:5px 9px}
.hw-win{width:100%;max-width:320px}
.hw-win .win{box-shadow:0 22px 40px -24px rgba(20,22,15,.3)}
.hw-win .win-body{padding:16px}
.hw-step{font-family:var(--head);font-weight:800;font-size:18px;letter-spacing:-.02em;margin:-4px 0 8px}
.hw-code{background:var(--paper);border:1px solid var(--line2);border-radius:10px;padding:6px 12px}
.hw-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px}
.hw-done{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--cobalt)}
.hw-done i{width:14px;height:14px;border-radius:50%;background:var(--cobalt);position:relative;flex:none}
.hw-done i::after{content:"";position:absolute;left:5px;top:2.5px;width:3.5px;height:6.5px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.hw-row .pill{padding:6px 12px;font-size:12px;white-space:nowrap}
.hw-week{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.hw-day{display:flex;flex-direction:column;align-items:center;gap:8px;height:150px;padding:10px 4px;border-radius:10px;background:var(--paper);border:1px solid var(--line2)}
.hw-day span{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--sub)}
.hw-day b{margin-top:18px;width:100%;flex:0 0 58px;display:grid;place-items:center;border-radius:8px;background:var(--cobalt);color:#fff;font-size:12px;font-weight:600}
.hw-day.on span{color:var(--cobalt);font-weight:500}
@media (min-width:900px){.parts{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}
@media (max-width:599px){.part-ui{height:260px;padding:20px}.hw-day{height:128px}}

/* 05 why: system diagram (v2r) */
.sys{display:grid;grid-template-columns:1fr;justify-items:center;gap:0;margin:8px auto 0;max-width:1180px;padding:40px 20px;background:linear-gradient(180deg,#F3F1EA,#ECEAE2);border:1px solid var(--line2);border-radius:24px}
.sy-side{width:100%;max-width:320px}
.sy-k{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub);margin-bottom:12px;text-align:center}
.sy-k b,.sy-tag b{color:var(--cobalt);font-weight:500;margin-right:6px}
.sy-list{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.sy-chip{display:inline-flex;align-items:center;height:44px;padding:0 16px;background:var(--surface);border:1px solid var(--line);border-radius:12px;font-family:var(--head);font-weight:800;font-size:15px;letter-spacing:-.01em;box-shadow:0 12px 24px -18px rgba(20,22,15,.3)}
.sy-chip.next{background:transparent;border-style:dashed;color:var(--sub);box-shadow:none;font-weight:700}
.sy-link{display:block;width:1px;height:36px;background:#C9C7BD}
.sy-core{display:grid;justify-items:center;gap:14px}
.sy-folder{position:relative;width:280px;background:var(--cobalt);border-radius:4px 16px 16px 16px;padding:20px 18px 18px;box-shadow:0 30px 50px -26px rgba(34,71,230,.6)}
.sy-folder::before{content:"";position:absolute;left:0;top:-14px;width:110px;height:16px;background:var(--cobalt);border-radius:10px 12px 0 0}
.sy-fk{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:14px}
.sy-folder ul{display:grid;gap:6px}
.sy-folder li{display:flex;align-items:center;gap:10px;background:#fff;border-radius:9px;padding:8px 12px;font-size:14px;font-weight:600}
.sy-doc{width:12px;height:15px;border:1.5px solid var(--faint);border-radius:2px;flex:none}
.sy-tag{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:7px 14px}
.why .why-list{margin-top:48px}
@media (min-width:900px){
  .sys{grid-template-columns:minmax(0,1fr) 72px auto 72px minmax(0,1fr);align-items:center;padding:56px 48px}
  .sy-link{width:100%;height:1px}
  .sy-side{max-width:none}
  .sy-list{flex-direction:column;align-items:stretch}
  .sy-l .sy-list,.sy-r .sy-list{position:relative}
  .sy-chip{justify-content:flex-start}
  .sy-folder{width:300px}
  .sy-k{text-align:left}
  .sy-r .sy-k{padding-left:2px}
  .sy-chip{position:relative}
  .sy-l .sy-chip::after,.sy-r .sy-chip::after{content:"";position:absolute;top:50%;width:36px;border-top:1px solid #C9C7BD}
  .sy-l .sy-chip::after{left:100%}
  .sy-r .sy-chip::after{right:100%}
  .sy-l .sy-list::after,.sy-r .sy-list::after{content:"";position:absolute;top:22px;bottom:22px;border-left:1px solid #C9C7BD}
  .sy-l .sy-list::after{left:calc(100% + 36px)}
  .sy-r .sy-list::after{right:calc(100% + 36px)}
  .sy-link{position:relative}
  .sy-link::before{content:"";position:absolute;top:-3px;width:7px;height:7px;border-radius:50%;background:var(--ink)}
  .sys>.sy-link:nth-of-type(1)::before{left:33px}
  .sys>.sy-link:nth-of-type(2)::before{right:33px}
}

/* 04 fit */
.fit{display:grid;grid-template-columns:1fr;gap:20px}
.fit-card{border-radius:22px;padding:32px 28px}
.fit-card.yes{background:var(--surface);border:1.5px solid var(--cobalt);box-shadow:var(--soft)}
.fit-card.no{background:transparent;border:1px solid var(--line)}
.fit-k{font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px;color:var(--cobalt)}
.fit-card.no .fit-k{color:var(--sub)}
.fit li{display:flex;gap:14px;align-items:flex-start;padding:13px 0;border-top:1px solid var(--line2);font-size:18px}
.fit-card.no li{color:var(--sub)}
.ck,.xx{flex:none;width:22px;height:22px;border-radius:50%;margin-top:3px;position:relative}
.ck{background:var(--cobalt)}
.ck::after{content:"";position:absolute;left:7px;top:4px;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.xx{border:1px solid var(--faint)}
.xx::before,.xx::after{content:"";position:absolute;left:5px;top:10px;width:10px;height:1.5px;background:var(--faint);transform:rotate(45deg)}
.xx::after{transform:rotate(-45deg)}
@media (min-width:900px){.fit{grid-template-columns:1fr 1fr;gap:24px}.fit-card{padding:40px}}

/* 05 why */
.why-art{margin:0 auto;max-width:1100px}
.why-list{display:grid;grid-template-columns:1fr;gap:0;margin-top:40px}
.why-list li{padding:26px 0;border-top:1px solid var(--line)}
.why-n{font-family:var(--mono);font-size:13px;letter-spacing:.14em;color:var(--cobalt)}
.why-list h3{font-size:clamp(26px,2.4vw,32px);margin:8px 0}
.why-list p{color:var(--sub);font-size:17px;max-width:32ch}
@media (min-width:900px){.why-list{grid-template-columns:repeat(3,1fr);gap:40px}}

/* 06 cooper */
.cooper{display:grid;grid-template-columns:1fr;gap:44px;align-items:center}
.photo{position:relative;max-width:460px}
.photo img{border-radius:24px;box-shadow:var(--soft);aspect-ratio:1/1;object-fit:cover}
.photo figcaption{margin-top:14px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--sub)}
.quote{font-size:clamp(30px,3.4vw,50px);line-height:1.04}
.stats{display:flex;gap:44px;margin-top:36px}
.stats b{display:block;font-family:var(--head);font-weight:900;font-size:56px;letter-spacing:-.05em;line-height:1;color:var(--cobalt)}
.stats span{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--sub)}
.creds{margin-top:30px}
.creds li{padding:12px 0;border-top:1px solid var(--line);font-size:17px}
@media (min-width:900px){.cooper{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px}}

/* 07 faq */
.faq{display:grid;grid-template-columns:1fr;gap:36px}
details{border-top:1px solid var(--line)}
details:last-child{border-bottom:1px solid var(--line)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:64px;padding:18px 0;font-family:var(--head);font-weight:800;font-size:clamp(19px,1.6vw,22px);letter-spacing:-.02em}
summary::-webkit-details-marker{display:none}
summary::after{content:"";flex:0 0 16px;height:16px;background:linear-gradient(var(--ink),var(--ink)) center/16px 1.5px no-repeat,linear-gradient(var(--ink),var(--ink)) center/1.5px 16px no-repeat;transition:transform .24s var(--ease)}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 0 22px;color:var(--sub);font-size:17px;max-width:60ch}
@media (min-width:900px){.faq{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:72px}}

/* 08 close */
.close{padding:24px 0 96px}
.close-card{display:grid;grid-template-columns:1fr;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:28px;box-shadow:var(--soft);overflow:hidden}
.close-copy{padding:48px 28px 8px}
.close h2{font-size:clamp(42px,6vw,88px)}
.close .lead{margin:20px 0 32px}
.close-art{width:100%;-webkit-mask-image:linear-gradient(to right,transparent,#000 18%);mask-image:linear-gradient(to right,transparent,#000 18%)}
@media (min-width:900px){.close-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.close-copy{padding:72px 0 72px 64px}}

/* footer */
.foot{border-top:1px solid var(--line);padding:32px 0}
.foot-row{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:15px;color:var(--sub)}
.foot a{text-decoration:none}

/* phone */
@media (max-width:599px){
  body{font-size:17px}
  .top-row{height:60px}
  .logo span{display:none}
  .btn-sm{font-size:14px;padding:0 16px}
  .hero{padding:36px 0 32px}
  .eyebrow{font-size:11.5px;letter-spacing:.12em;margin-bottom:18px}
  .cta .btn{width:100%}
  .sec{padding:72px 0}
  .head{margin-bottom:40px}
  .bridge{margin-top:48px}
  .facts{gap:8px 18px}
  .facts li{font-size:11.5px}
  .facts li::before,.facts li+li::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--cobalt);margin:0 8px 2px 0}
  .st-n{font-size:64px;margin-bottom:14px}
  .st-ui{padding:14px}
  .goal .btn{width:100%}
  .stats b{font-size:46px}
  .close .btn{width:100%}
}

/* motion: armed only with JS + no reduced-motion. Safety net in js/v2.js reveals everything after 3.5s. */
@media (prefers-reduced-motion:no-preference){
  .js .load{opacity:0;transform:translateY(16px);animation:rise .8s var(--ease) forwards;animation-delay:calc(var(--d) * 80ms + 60ms)}
  .js .rv{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
  .js .rv.in{opacity:1;transform:none}
  .js .pile .pw{opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
  .js .pile.in .pw{opacity:1;transform:none}
  .js .pile.in .pw1{transition-delay:.08s}.js .pile.in .pw2{transition-delay:.16s}.js .pile.in .pw3{transition-delay:.24s}.js .pile.in .pw4{transition-delay:.32s}.js .pile.in .pw5{transition-delay:.4s}
}
@keyframes rise{to{opacity:1;transform:none}}
@media print{.rv,.load{opacity:1!important;transform:none!important}}


/* ================= v3 (COPY-v2, 2026-10-29) ================= */
/* 01 pain wall: crossed-out pain, cobalt fix */
.wall{display:grid;grid-template-columns:1fr;gap:12px 28px;margin-top:64px}
.pf{display:grid;grid-template-columns:minmax(0,1.1fr) 24px minmax(0,1fr);align-items:center;gap:10px}
.pf-pain,.pf-fix{display:flex;align-items:center;gap:10px;min-height:60px;padding:10px 16px;border-radius:14px;font-size:16px;line-height:1.3}
.pf-pain{background:var(--surface);border:1px solid var(--line);color:var(--sub)}
.pf-pain s{text-decoration-color:#C8412F;text-decoration-thickness:2px;transition:text-decoration-color .6s var(--ease)}
.pf-pain::before,.pf-fix::before{flex:0 0 22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800}
.pf-pain::before{content:"\00d7";background:#FBECE9;color:#B23A2A;font-size:16px}
.pf-fix{background:var(--cobalt-50);border:1px solid #D7DEFA;color:var(--cobalt-dk);font-weight:600;transition:transform .5s var(--ease),opacity .5s var(--ease)}
.pf-fix::before{content:"\2713";background:var(--cobalt);color:#fff}
.pf-arrow{display:grid;place-items:center;color:var(--sub)}
.pf-arrow svg{width:22px;height:22px}
@media (min-width:900px){.wall{grid-template-columns:1fr 1fr}}
@media (max-width:599px){.pf{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);gap:6px}.pf-pain,.pf-fix{font-size:14px;padding:8px 10px;gap:7px;min-height:56px;border-radius:12px}.pf-pain::before,.pf-fix::before{flex-basis:18px;height:18px;font-size:11px}.pf-arrow svg{width:16px;height:16px}}

/* 04 fit flowchart */
.flow{display:flex;flex-wrap:wrap;align-items:center;gap:16px 20px;margin:0 0 32px;padding:28px;background:linear-gradient(180deg,#F3F1EA,#ECEAE2);border:1px solid var(--line2);border-radius:22px}
.fq{display:inline-flex;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 16px;font-family:var(--head);font-weight:800;font-size:19px;letter-spacing:-.02em;box-shadow:var(--soft)}
.fbranch{display:grid;gap:12px}
.frow{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}
.farrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink)}
.farrow::after{content:"";width:28px;height:1.5px;background:var(--ink);opacity:.45}
.ffit{display:inline-flex;align-items:center;gap:7px;background:var(--cobalt);color:#fff;border-radius:999px;padding:8px 16px;font-family:var(--head);font-weight:800;font-size:16px}
.ffit::before{content:"\2713";font-size:13px}
@media (max-width:599px){.flow{padding:20px 16px;gap:14px}.fq{font-size:17px;padding:10px 14px}.farrow::after{width:18px}}

/* 02 day-30 review call */
.review{display:flex;align-items:center;gap:20px;margin-top:32px;padding:22px 24px;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--soft);max-width:880px}
.rc-cal{flex:none;width:64px;height:70px;border-radius:12px;border:1px solid var(--line);overflow:hidden;display:grid;grid-template-rows:22px 1fr;text-align:center;background:var(--surface)}
.rc-cal span{background:var(--cobalt);color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;line-height:22px}
.rc-cal b{display:grid;place-items:center;font-family:var(--head);font-weight:900;font-size:28px;letter-spacing:-.04em}
.review p{font-size:18px;color:var(--ink);max-width:620px;text-wrap:pretty}
.review p .hl{font-family:var(--head);font-weight:800;letter-spacing:-.01em}
@media (max-width:599px){.review{align-items:flex-start;gap:14px;padding:18px}.rc-cal{width:54px;height:60px;grid-template-rows:20px 1fr}.rc-cal span{line-height:20px;font-size:10.5px}.rc-cal b{font-size:24px}.review p{font-size:16.5px}}

/* 06 proof strip */
.proof{margin-top:72px;padding-top:32px;border-top:1px solid var(--line)}
.proof-k{font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub);margin-bottom:18px}
.proof-list{display:grid;grid-template-columns:1fr;gap:12px}
.proof-list li{display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--surface);border:1px solid var(--line);border-radius:16px}
.pr-av{flex:none;width:44px;height:44px;border-radius:50%;background:var(--cobalt-50);color:var(--cobalt);display:grid;place-items:center;font-family:var(--head);font-weight:900;font-size:18px}
.pr-t b{display:block;font-family:var(--head);font-weight:800;font-size:18px;letter-spacing:-.02em;line-height:1.2}
.pr-t span{display:block;font-size:15px;color:var(--sub);line-height:1.35;margin-top:2px}
@media (min-width:600px){.proof-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.proof-list{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* the call */
.calls{display:grid;grid-template-columns:1fr;gap:20px}
.calls li{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--soft);padding:28px 28px 32px}
.cl-ic{width:52px;height:52px;border-radius:14px;background:var(--cobalt);color:#fff;display:grid;place-items:center;margin-bottom:24px}
.cl-ic svg{width:26px;height:26px}
.cl-n{position:absolute;top:28px;right:28px;font-family:var(--mono);font-size:13px;letter-spacing:.14em;color:var(--sub)}
.calls p{font-family:var(--head);font-weight:800;font-size:clamp(20px,1.8vw,24px);letter-spacing:-.02em;line-height:1.35;max-width:340px;text-wrap:pretty}
@media (min-width:900px){.calls{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}

/* ---------- heroes.html: tab bar ---------- */
.tabbar{position:sticky;top:0;z-index:30;background:var(--surface);border-bottom:1px solid var(--line)}
.tabbar-row{display:flex;align-items:center;gap:16px;max-width:1320px;margin:0 auto;padding:10px var(--gutter)}
.tabbar-k{flex:none;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub)}
.tabs{position:relative;display:flex;gap:6px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding:3px}
.tabs::-webkit-scrollbar{display:none}
.tabs button{flex:none;scroll-snap-align:start;min-height:42px;padding:0 18px;border-radius:999px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-family:var(--body);font-weight:600;font-size:15px;cursor:pointer;white-space:nowrap;transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease)}
.tabs button:hover{border-color:var(--cobalt);color:var(--cobalt)}
.tabs button[aria-selected="true"]{background:var(--cobalt);border-color:var(--cobalt);color:#fff}
.tabs button:focus-visible{outline:2px solid var(--cobalt);outline-offset:2px}
.heroes .top{position:static}
.hpanel[hidden]{display:none}
.proofline{display:flex;gap:10px;align-items:baseline;margin-top:22px;font-size:15px;line-height:1.45;color:var(--sub);max-width:440px}
.proofline::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--cobalt);transform:translateY(-1px)}
.htest{margin:18px 0 8px;font-family:var(--mono);font-size:13px;letter-spacing:0;color:var(--sub)}
.heroes .facts{margin-top:0}
@media (max-width:599px){
  .tabbar-k{display:none}
  .tabbar-row{padding:8px 0 8px 12px}
  .tabs{-webkit-mask-image:linear-gradient(to right,#000 86%,transparent);mask-image:linear-gradient(to right,#000 86%,transparent);padding-right:40px}
  .tabs button{min-height:40px;padding:0 15px;font-size:14px}
}

/* ---------- heroes.html: hero visuals ---------- */
.hv{position:relative;width:100%;max-width:600px;margin:0 auto;background:linear-gradient(180deg,#F3F1EA,#ECEAE2);border:1px solid var(--line2);border-radius:24px;padding:24px;container-type:inline-size}
.g{position:relative;width:100%;aspect-ratio:520/440}
.g svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.ln{fill:none;stroke:var(--cobalt);stroke-width:2;stroke-linecap:round}
.ln.flow{stroke-dasharray:6 8;animation:dash 1.2s linear infinite}
@keyframes dash{to{stroke-dashoffset:-28}}
.gc{position:absolute;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:7px;height:clamp(32px,8cqw,44px);padding:0 clamp(9px,2.6cqw,16px);background:var(--surface);border:1px solid var(--line);border-radius:12px;font-family:var(--head);font-weight:800;font-size:clamp(12px,2.8cqw,15px);letter-spacing:-.01em;white-space:nowrap;box-shadow:var(--soft)}
.gc::before{content:"";width:7px;height:7px;border-radius:2px;background:var(--ink);opacity:.7}
.you{position:absolute;transform:translate(-50%,-50%);width:17%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;font-family:var(--head);font-weight:900;font-size:clamp(15px,4cqw,22px);transition:background .6s var(--ease),color .6s var(--ease)}
.you.pulse::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #C8412F;animation:ring 1.8s ease-out infinite}
@keyframes ring{from{transform:scale(1);opacity:.6}to{transform:scale(1.6);opacity:0}}
.tag{position:absolute;transform:translate(-50%,-50%);font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#A3321F;background:#FBECE9;border:1px solid #F3D3CD;border-radius:999px;padding:3px 9px;white-space:nowrap;animation:tagp 3.6s ease-in-out infinite}
@keyframes tagp{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.08)}}
/* bottleneck */
.bub{position:absolute;transform:translate(-50%,-50%);width:41%;background:var(--surface);border:1px solid var(--line);border-radius:16px 16px 16px 4px;padding:clamp(8px,2.2cqw,14px) clamp(10px,2.6cqw,16px);font-family:var(--head);font-weight:800;font-size:clamp(12.5px,3cqw,16px);letter-spacing:-.01em;line-height:1.25;box-shadow:var(--soft)}
.bub i{display:block;font-style:normal;font-family:var(--mono);font-weight:500;font-size:clamp(10.5px,2.1cqw,11px);letter-spacing:.12em;text-transform:uppercase;color:var(--sub);margin-bottom:4px}
.fdn{position:absolute;transform:translate(-50%,-50%);width:38%;display:grid;place-items:center;height:clamp(44px,11cqw,60px);border-radius:14px;border:1.5px dashed #B9BCCB;color:var(--sub);background:transparent;font-family:var(--head);font-weight:900;font-size:clamp(14px,3.4cqw,19px);letter-spacing:-.02em;transition:background .6s var(--ease),color .6s var(--ease),border-color .6s var(--ease)}
.hv-bn .r-you{stroke-dasharray:6 8;animation:dash 1.2s linear infinite;transition:opacity .6s var(--ease),stroke .6s var(--ease)}
.hv-bn .r-fd{opacity:0;stroke-dasharray:1;stroke-dashoffset:1;transition:opacity .3s var(--ease),stroke-dashoffset 1s var(--ease) .2s}
.hv-bn .g.routed .r-you{opacity:.22;stroke:#8C8E83;animation:none}
.hv-bn .g.routed .r-fd{opacity:1;stroke-dashoffset:0}
.hv-bn .bn-you{background:var(--ink)}
.hv-bn .g.routed .bn-you{background:#D9D7CE;color:var(--ink)}
.hv-bn .g.routed .fdn{background:var(--cobalt);border-color:var(--cobalt);border-style:solid;color:#fff}
/* clarity: chips snap into a stack */
.g.org{aspect-ratio:520/330}
.org .oc{left:var(--cx);top:var(--cy);rotate:var(--cr);transition-property:left,top,rotate;transition-duration:.9s;transition-timing-function:var(--ease)}
.org.is-org .oc{left:var(--ox);top:var(--oy);rotate:0deg}
.org .chaos{transition:opacity .5s var(--ease)}
.org .chaos .ln{opacity:.55}
.org.is-org .chaos{opacity:0}
.plinth{position:absolute;left:50%;top:66%;width:86%;height:22%;transform:translateX(-50%) translateY(20px);opacity:0;display:grid;place-items:center;background:var(--cobalt);color:#fff;border-radius:14px;font-family:var(--head);font-weight:900;font-size:clamp(15px,3.6cqw,20px);letter-spacing:-.02em;box-shadow:var(--soft);transition:opacity .7s var(--ease) .3s,transform .7s var(--ease) .3s}
.org.is-org .plinth{opacity:1;transform:translateX(-50%)}
/* foundation: layered stack */
.hv-fs{padding:32px 28px}
.fs-k{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--sub)}
.fs-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 14px}
.fs-tool{display:grid;place-items:center;height:clamp(44px,11cqw,56px);background:var(--surface);border:1px solid var(--line);border-radius:12px;font-family:var(--head);font-weight:800;font-size:clamp(13px,3cqw,16px);letter-spacing:-.01em;box-shadow:var(--soft)}
.fs-bar{background:var(--cobalt);border-radius:16px;padding:clamp(16px,4cqw,24px);color:#fff;box-shadow:var(--soft)}
.fs-bar b{display:block;font-family:var(--head);font-weight:900;font-size:clamp(22px,5.4cqw,32px);letter-spacing:-.03em;line-height:1}
.fs-files{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.fs-files span{background:#fff;color:var(--ink);border-radius:7px;padding:5px 10px;font-size:13px;font-weight:600}
@media (prefers-reduced-motion:no-preference){
  .hv-fs.play .fs-tool{animation:drop .6s var(--ease) both;animation-delay:calc(var(--i) * 80ms + 150ms)}
}
@keyframes drop{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}
/* dream: command center */
.hv-cc{padding:28px}
.hv-cc .win-body{padding:0}
.cc{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:340px}
.cc-rail{border-right:1px solid var(--line2);padding:14px 10px;background:#FDFDFB;display:flex;flex-direction:column;gap:4px}
.cc-k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sub);padding:4px 8px 8px}
.cc-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;font-size:14px;font-weight:600;color:var(--sub)}
.cc-item i{width:8px;height:8px;border-radius:2px;background:#C9C7BB;flex:none}
.cc-item.hot{background:var(--cobalt-50);color:var(--cobalt)}
.cc-item.hot i{background:var(--cobalt)}
.cc-main{padding:18px;display:flex;flex-direction:column;justify-content:flex-end;gap:12px}
.cc-main .msg{max-width:92%}
.cc-main .msg.a{margin-top:0;align-self:flex-start}
.typing{display:none;align-self:flex-start;gap:5px;padding:12px 14px;border-radius:14px;background:var(--paper);border:1px solid var(--line)}
.typing i{width:7px;height:7px;border-radius:50%;background:var(--sub);animation:blink 1s 2}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{0%,100%{opacity:.25}50%{opacity:1}}
.cc-main.stage [data-s]{display:none}
.cc-main.stage [data-s].on{display:block;animation:rise .42s var(--ease) both}
.cc-main.stage .typing.on{display:inline-flex}
.cc-in{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:14px;color:var(--sub)}
.cc-send{width:26px;height:26px;border-radius:8px;background:var(--cobalt);flex:none}
@media (max-width:599px){
  .hv{padding:14px;border-radius:20px}
  .hv-fs{padding:22px 16px}
  .hv-cc{padding:14px}
  .cc{grid-template-columns:1fr;min-height:0}
  .cc-rail{flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid var(--line2);padding:10px;gap:4px}
  .cc-k{display:none}
  .cc-item{padding:6px 8px;font-size:13px}
  .cc-main{padding:14px;min-height:230px}
}
@media (prefers-reduced-motion:reduce){
  .ln.flow,.hv-bn .r-you,.tag,.you.pulse::after,.typing i{animation:none}
  .org .oc,.plinth,.org .chaos,.hv-bn .r-fd,.fdn,.you{transition:none}
}
/* body reveals for v3 blocks */
@media (prefers-reduced-motion:no-preference){
  .js .wall:not(.in) .pf-pain s{text-decoration-color:transparent}
  .js .wall:not(.in) .pf-fix{transform:translateX(-8px);opacity:.4}
  .js .wall.in .pf:nth-child(2) *{transition-delay:.12s}.js .wall.in .pf:nth-child(3) *{transition-delay:.24s}
  .js .wall.in .pf:nth-child(4) *{transition-delay:.36s}.js .wall.in .pf:nth-child(5) *{transition-delay:.48s}.js .wall.in .pf:nth-child(6) *{transition-delay:.6s}
}
@media (min-width:980px){.heroes .hero{padding:44px 0 40px}.heroes .hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}}

/* clarity hero: 3 lines max at desktop (10/29) */
h1.h1-tight{font-size:clamp(42px,5vw,72px)}

/* 90-day stepper UIs (2026-10-30) */
.door-pick{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line2)}
.dp-k{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sub);margin-right:4px}
.dp{font-size:13px;font-weight:600;padding:5px 11px;border-radius:999px;border:1px solid var(--line);color:var(--sub)}
.dp.on{background:var(--cobalt);border-color:var(--cobalt);color:#fff}
.both{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.both-col{border:1px solid var(--line);border-radius:12px;padding:12px}
.both-k{font-family:var(--head);font-weight:800;font-size:15px;letter-spacing:-.01em;margin-bottom:8px}
.both-i{display:flex;align-items:center;gap:7px;font-size:13.5px;color:var(--ink);padding:3px 0;line-height:1.3}
.both-i i{flex:none;width:14px;height:14px;border-radius:50%;background:var(--cobalt-50);position:relative}
.both-i i::after{content:"";position:absolute;left:4.5px;top:2.5px;width:3px;height:6px;border:solid var(--cobalt);border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
.both-base{margin-top:10px;text-align:center;padding:10px;border-radius:10px;background:var(--cobalt);color:#fff;font-family:var(--head);font-weight:800;font-size:14px;letter-spacing:-.01em}
