/* Cairn landing (v10). Sits on site.css tokens. Flat colour only — no gradients. */
.home{background:var(--background)}
.home main{display:block}

/* ---------- hero: full-bleed photo, white type, the live app overlapping its lower edge ---------- */
.hx{position:relative;isolation:isolate;padding:0 0 8px}
.hx-bg{position:absolute;z-index:-1;top:10px;left:10px;right:10px;height:var(--bgh,940px);border-radius:30px;overflow:hidden;background:#9aa69b url(photos/hero-cairn.webp) center 58%/cover no-repeat}
.hx-bg::after{content:"";position:absolute;inset:0;background:oklch(.17 .02 150 / .5)}
.hx-copy{max-width:900px;margin:0 auto;padding:168px 24px 0;text-align:center;color:#fff;display:flex;flex-direction:column;align-items:center}
.chip{height:32px;padding:0 14px 0 4px;border-radius:999px;display:inline-flex;align-items:center;gap:9px;font-size:13.5px;font-weight:500;color:#fff;background:oklch(1 0 0 / .14);border:1px solid oklch(1 0 0 / .26);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background-color .15s ease-out}
.chip:hover{background:oklch(1 0 0 / .22)}
.chip i{font-style:normal;height:24px;padding:0 10px;border-radius:999px;display:grid;place-items:center;background:var(--stone-on-dark);color:oklch(.18 .03 150);font-size:12px;font-weight:700}
.hx-h{margin-top:26px;font-size:clamp(40px,7vw,80px);line-height:.98;font-weight:800;letter-spacing:-.055em;text-wrap:balance}
.hx-h .w{display:inline-block}
.hx-sub{margin-top:22px;max-width:600px;font-size:18px;line-height:28px;color:oklch(1 0 0 / .84);text-wrap:pretty}
.hx-ctas{display:flex;gap:12px;margin-top:34px;flex-wrap:wrap;justify-content:center}
.hx-fine{margin-top:20px;font-size:13px;color:oklch(1 0 0 / .66)}
.hx-stage{max-width:1160px;margin:72px auto 0;padding:0 32px}
.hx-stage .frame{border-radius:20px;border:1px solid oklch(1 0 0 / .14);box-shadow:0 40px 80px -30px oklch(0 0 0 / .55),0 0 0 8px oklch(1 0 0 / .1)}
.steps{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin-top:26px}
.steps button{position:relative;overflow:hidden;height:38px;padding:0 16px;border-radius:999px;font-size:14px;font-weight:500;color:var(--muted-foreground);background:var(--muted);transition:color .15s ease-out,background-color .15s ease-out,scale .15s ease-out}
.steps button:hover{color:var(--foreground)}
.steps button:active{scale:.96}
.steps button.on{color:var(--background);background:var(--foreground)}
.steps button u{position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--stone-on-dark)}
.steps button.on u{animation:stepfill var(--dur,5s) linear forwards}
.steps.paused button u{animation-play-state:paused}
@keyframes stepfill{to{width:100%}}
.stepcap{text-align:center;margin-top:16px;font-size:15px;color:var(--muted-foreground);min-height:24px}

/* ---------- sections ---------- */
.sec{max-width:1180px;margin:0 auto;padding:140px 24px 0}
.head{max-width:700px;margin:0 auto 56px;text-align:center;display:block}
.head.left{text-align:left;margin:0;max-width:540px}
.eye{display:inline-flex;align-items:center;gap:8px;font:600 12.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--stone)}
.eye::before{content:"";width:9px;height:6px;border-radius:50%;background:currentColor;transform:rotate(-14deg)}
.head h2{margin-top:14px;font-size:clamp(32px,4.6vw,52px);line-height:1.02;font-weight:800;letter-spacing:-.05em;text-wrap:balance}
.head p{margin-top:18px;font-size:17px;line-height:27px;color:var(--muted-foreground);text-wrap:pretty}
.head p+p{margin-top:12px}
.head .btn{margin-top:28px}
.split{display:grid;grid-template-columns:1fr 1.12fr;gap:72px;align-items:center}
.split.rev > .head{order:2}
kbd{font:600 11.5px var(--mono);padding:2px 6px;border-radius:6px;background:var(--muted);border:1px solid var(--border);border-bottom-width:2px;color:var(--foreground)}

/* ---------- every kind: a wall of real-looking cards ---------- */
.kinds{columns:4 240px;column-gap:14px}
.k{break-inside:avoid;margin-bottom:14px;border-radius:16px;border:1px solid var(--border);background:var(--card);overflow:hidden;position:relative;transition:transform .25s cubic-bezier(.2,0,0,1),box-shadow .25s ease-out}
.k:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.k .lbl{position:absolute;top:10px;left:10px;z-index:1;height:22px;padding:0 8px;border-radius:999px;display:inline-flex;align-items:center;gap:5px;font:600 10.5px var(--mono);letter-spacing:.03em;text-transform:uppercase;background:color-mix(in oklch,var(--background) 88%,transparent);border:1px solid var(--border);color:var(--foreground);backdrop-filter:blur(8px)}
.k .ph{display:block;overflow:hidden;background:var(--muted)}
.k .ph img{width:100%;height:100%;object-fit:cover}
.k .pad{padding:14px 16px 16px}
.k .pad.top{padding-top:44px}
.k h4{font-size:15px;line-height:20px;font-weight:600;letter-spacing:-.015em}
.k .m{margin-top:6px;font-size:12.5px;color:var(--muted-foreground);display:flex;align-items:center;gap:6px}
.k .m .fav{width:14px;height:14px;border-radius:4px;flex:none}
.k .tx{margin-top:8px;font-size:13.5px;line-height:21px;color:var(--muted-foreground)}
.k.quote .pad{padding:46px 20px 20px}
.k.quote blockquote{font:italic 400 21px/1.32 var(--serif);letter-spacing:-.01em}
.k.quote cite{display:block;margin-top:12px;font:normal 500 12.5px var(--sans);color:var(--muted-foreground)}
.k.note{background:oklch(.975 .025 95)}
@media (prefers-color-scheme:dark){.k.note{background:oklch(.24 .02 95)}}
.k.voice{background:oklch(.95 .03 150)}
@media (prefers-color-scheme:dark){.k.voice{background:oklch(.25 .035 150)}}
.kv{display:flex;align-items:center;gap:10px;padding:46px 14px 4px}
.kv button{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--foreground);color:var(--background);transition:scale .15s ease-out}
.kv button:active{scale:.94}
.kv .wv{flex:1;height:40px;display:flex;align-items:center;gap:2px}
.wv i{flex:1;min-width:2px;border-radius:2px;background:color-mix(in oklch,var(--foreground) 30%,transparent);transition:background-color .12s ease-out}
.wv i.on{background:var(--stone)}
.k.pdf .doc{margin:48px auto 0;width:62%;aspect-ratio:3/3.6;border-radius:6px 6px 0 0;background:var(--background);border:1px solid var(--border);border-bottom:0;padding:14px 12px;display:grid;gap:6px;align-content:start}
.k.pdf .doc b{display:block;height:7px;border-radius:3px;background:var(--muted)}
.k.pdf .doc b:first-child{height:11px;width:70%;background:color-mix(in oklch,var(--foreground) 20%,transparent)}
.k.pdf{background:var(--muted)}
.k.pdf .pad{background:var(--card);border-top:1px solid var(--border)}
.k.pal .sw{display:flex;height:96px;margin-top:0}
.k.pal .sw span{flex:1}
.k.pal .hexes{display:flex;justify-content:space-between;margin-top:8px;font:500 10.5px var(--mono);color:var(--muted-foreground)}
.k.code pre{margin:44px 12px 0;padding:12px;border-radius:10px;background:var(--ink-band);color:oklch(.92 .01 150);font:500 11.5px/1.65 var(--mono);overflow:hidden;white-space:pre}
.k.code pre .c{color:var(--stone-on-dark)}
.k.video .ph{position:relative}
.k.video .ph::after{content:"";position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:oklch(1 0 0 / .9) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M6 4.5v7l5.5-3.5z' fill='%23161616'/%3E%3C/svg%3E") center/20px no-repeat}
.k.video .dur{position:absolute;right:10px;bottom:10px;font:600 11px var(--mono);color:#fff;background:oklch(0 0 0 / .6);padding:2px 6px;border-radius:5px}

/* ---------- capture ---------- */
.cap4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cap4 > *,.who > *,.split > *,.band-in > *{min-width:0}
.cc{border-radius:20px;border:1px solid var(--border);background:var(--surface);padding:10px 10px 24px}
.cc h3{margin:20px 12px 0;font-size:17px;font-weight:650;letter-spacing:-.02em}
.cc p{margin:6px 12px 0;font-size:14px;line-height:22px;color:var(--muted-foreground)}
.cc p a{color:var(--foreground);font-weight:500}
.cv{position:relative;height:190px;border-radius:14px;background:var(--background);border:1px solid var(--border);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px}
.fake-in{width:100%;height:42px;border-radius:10px;border:1px solid var(--input);background:var(--background);display:flex;align-items:center;padding:0 12px;font:500 12.5px var(--mono);white-space:nowrap;overflow:hidden;box-shadow:0 0 0 3px color-mix(in oklch,var(--stone) 18%,transparent)}
.caret{display:inline-block;width:2px;height:16px;margin-left:1px;background:var(--foreground);animation:blink 1s steps(1) infinite;flex:none}
@keyframes blink{50%{opacity:0}}
.det{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;color:var(--muted-foreground);opacity:0;transform:translateY(4px);transition:opacity .3s ease-out,transform .3s cubic-bezier(.2,0,0,1)}
.det.on{opacity:1;transform:none}
.det i{width:7px;height:7px;border-radius:50%;background:var(--stone)}
.mini-pop{width:84%;border-radius:12px;border:1px solid var(--border);background:var(--popover);box-shadow:var(--shadow-lg);font-size:11.5px;padding-bottom:9px}
.mp-hd{display:flex;align-items:center;gap:7px;padding:8px 10px;border-bottom:1px solid var(--border);margin-bottom:8px}
.mp-hd img{border-radius:4px}
.mp-row{margin:0 10px 8px;height:26px;border-radius:7px;border:1px solid var(--input);display:flex;align-items:center;padding:0 8px;white-space:nowrap;overflow:hidden}
.mp-save{margin:0 10px;height:28px;border-radius:8px;background:var(--primary);color:var(--primary-foreground);display:flex;align-items:center;justify-content:center;gap:6px;font-weight:600}
.mp-save kbd{background:transparent;border-color:color-mix(in oklch,var(--primary-foreground) 30%,transparent);color:inherit;padding:0 4px;font-size:9.5px}
.keys{display:flex;gap:4px}
.cv-voice{flex-direction:row;gap:12px}
.mic{flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:oklch(.6 .2 25);color:#fff;box-shadow:0 0 0 0 oklch(.6 .2 25 / .4);animation:ring 1.6s ease-out infinite}
@keyframes ring{70%{box-shadow:0 0 0 12px oklch(.6 .2 25 / 0)}100%{box-shadow:0 0 0 0 oklch(.6 .2 25 / 0)}}
.lvl{flex:1;height:48px;display:flex;align-items:center;gap:2px}
.lvl i{flex:1;border-radius:2px;background:oklch(.6 .2 25 / .8);height:20%;animation:lv .9s ease-in-out infinite alternate}
@keyframes lv{to{height:var(--h,70%)}}
.rt{font:600 13px var(--mono);font-variant-numeric:tabular-nums}
.dz{width:100%;height:100%;border-radius:10px;border:1.5px dashed color-mix(in oklch,var(--foreground) 25%,transparent);display:grid;place-items:end center;padding-bottom:16px;font-size:12.5px;color:var(--muted-foreground)}
.fly{position:absolute;left:50%;top:50%;width:96px;height:66px;margin:-46px 0 0 -48px;border-radius:8px;overflow:hidden;box-shadow:var(--shadow-lg);border:3px solid var(--background);animation:fly 3.6s cubic-bezier(.2,0,0,1) infinite}
.fly img{width:100%;height:100%;object-fit:cover}
@keyframes fly{0%{transform:translate(70px,-90px) rotate(10deg);opacity:0}15%{opacity:1}45%,85%{transform:translate(0,0) rotate(-3deg);opacity:1}100%{transform:translate(0,0) rotate(-3deg);opacity:0}}

/* ---------- search demo ---------- */
.tokens{margin-top:22px;list-style:none;display:grid;gap:10px;font-size:14.5px;color:var(--muted-foreground)}
.tokens code{font:500 12.5px var(--mono);padding:3px 7px;border-radius:6px;background:var(--muted);border:1px solid var(--border);color:var(--foreground);margin-right:6px}
.sdemo{border-radius:22px;border:1px solid var(--border);background:var(--surface);padding:14px;box-shadow:var(--shadow-xl)}
.sbox{height:50px;border-radius:13px;border:1px solid var(--input);background:var(--background);display:flex;align-items:center;gap:8px;padding:0 14px;color:var(--muted-foreground);box-shadow:0 0 0 3px color-mix(in oklch,var(--stone) 16%,transparent)}
.spills{display:flex;gap:5px}
.qp{height:26px;padding:0 9px;border-radius:7px;display:inline-flex;align-items:center;gap:4px;font:500 12.5px var(--sans);background:color-mix(in oklch,var(--stone) 15%,transparent);color:var(--foreground);border:1px solid color-mix(in oklch,var(--stone) 35%,transparent);white-space:nowrap;animation:pop .3s cubic-bezier(.2,0,0,1)}
.qp b{font-weight:500;color:var(--muted-foreground)}
@keyframes pop{from{transform:scale(.85);opacity:0}}
.stext{font-size:15px;color:var(--foreground);white-space:nowrap}
.scount{margin-left:auto;font:500 12px var(--mono);white-space:nowrap}
.sgrid{margin-top:14px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.st{border-radius:11px;overflow:hidden;background:var(--card);border:1px solid var(--border);transition:opacity .35s ease-out,transform .35s cubic-bezier(.2,0,0,1),filter .35s ease-out}
.st.dim{opacity:.18;transform:scale(.95);filter:grayscale(1)}
.st .ph{height:86px;background:var(--muted)}
.st .ph img{width:100%;height:100%;object-fit:cover}
.st .tt{padding:7px 9px 9px;font-size:11.5px;line-height:15px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st.txt .ph{display:flex;flex-direction:column;gap:5px;padding:12px 10px;background:var(--background)}
.st.txt .ph i{display:block;height:5px;border-radius:3px;background:var(--muted)}

/* ---------- resurface ---------- */
.try{font-size:14px!important;color:var(--stone)!important;font-weight:500}
.rs{display:flex;flex-direction:column;align-items:center}
.rs-deck{position:relative;width:min(380px,100%);height:420px}
.rcard{position:absolute;inset:0;border-radius:22px;background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-xl);overflow:hidden;transform-origin:50% 100%;transition:transform .5s cubic-bezier(.2,0,0,1),opacity .4s ease-out}
.rcard .ph{height:300px;background:var(--muted)}
.rcard .ph img{width:100%;height:100%;object-fit:cover}
.rcard .pad{padding:16px 18px}
.rcard h4{font-size:17px;font-weight:650;letter-spacing:-.02em}
.rcard .m{margin-top:4px;font-size:13px;color:var(--muted-foreground)}
.rcard .stamp{position:absolute;top:18px;right:18px;height:30px;padding:0 12px;border-radius:999px;font-size:13px;font-weight:700;display:grid;place-items:center;opacity:0;transition:opacity .2s ease-out}
.rcard.keep .stamp{opacity:1;background:var(--stone);color:#fff}
.rcard.go .stamp{opacity:1;background:var(--foreground);color:var(--background)}
.rs-done{position:absolute;inset:0;border-radius:22px;border:1.5px dashed var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:24px;color:var(--muted-foreground);font-size:15px}
.rs-done b{color:var(--foreground);font-size:19px;letter-spacing:-.02em}
.rs-act{display:flex;gap:10px;margin-top:60px}
.rs-act .btn{min-width:120px;border-radius:999px}

/* ---------- voice band (flat dark) ---------- */
.band{margin:140px 10px 0;border-radius:30px;background:var(--ink-band);color:#fff}
.band-in{max-width:1180px;margin:0 auto;padding:110px 24px;display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:center}
.on-dark .eye{color:var(--stone-on-dark)}
.on-dark p{color:oklch(1 0 0 / .72)}
.ticks{margin-top:22px;list-style:none;display:grid;gap:11px;font-size:15px;color:var(--muted-foreground)}
.on-dark .ticks{color:oklch(1 0 0 / .8)}
.ticks li{display:flex;gap:10px;align-items:baseline}
.ticks li::before{content:"";flex:none;width:9px;height:6px;border-radius:50%;background:var(--stone);transform:rotate(-14deg) translateY(-2px)}
.on-dark .ticks li::before{background:var(--stone-on-dark)}
.on-dark kbd{background:oklch(1 0 0 / .1);border-color:oklch(1 0 0 / .2);color:#fff}
.vp{border-radius:24px;background:oklch(1 0 0 / .06);border:1px solid oklch(1 0 0 / .12);padding:24px}
.vp-top{display:flex;align-items:center;gap:12px}
.vp-top b{display:block;font-size:16px;font-weight:600;letter-spacing:-.01em}
.vp-top small{font-size:12.5px;color:oklch(1 0 0 / .6)}
.vp-ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:oklch(1 0 0 / .1);color:var(--stone-on-dark);flex:none}
.vp-row{margin-top:22px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px}
.vp-play{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--stone-on-dark);color:oklch(.18 .03 150);transition:scale .15s ease-out}
.vp-play:hover{scale:1.04}.vp-play:active{scale:.94}
.vp-wave{height:64px;min-width:0;display:flex;align-items:center;gap:2px;cursor:pointer}
.vp-wave i{flex:1;min-width:1px;border-radius:2px;background:oklch(1 0 0 / .26);transition:background-color .12s ease-out}
.vp-wave i.on{background:var(--stone-on-dark)}
.vp-time{font:500 12.5px var(--mono);color:oklch(1 0 0 / .66);font-variant-numeric:tabular-nums;white-space:nowrap}
.vp-speed{height:30px;min-width:46px;border-radius:8px;border:1px solid oklch(1 0 0 / .22);font:600 12px var(--mono);color:#fff;transition:background-color .15s ease-out}
.vp-speed:hover{background:oklch(1 0 0 / .1)}
.vp-tx{margin-top:22px;padding-top:18px;border-top:1px solid oklch(1 0 0 / .1);font-size:16px;line-height:27px;color:oklch(1 0 0 / .45)}
.vp-tx span{transition:color .15s ease-out}
.vp-tx span.said{color:oklch(1 0 0 / .92)}
.vp-tx span.cur{color:#fff;background:oklch(.78 .14 150 / .28);border-radius:4px;box-shadow:0 0 0 2px oklch(.78 .14 150 / .28)}
.vp-fine{display:block;margin-top:14px;font-size:12px;color:oklch(1 0 0 / .45)}
.band .btn{margin-top:30px}

/* ---------- files ---------- */
.tree{border-radius:20px;border:1px solid var(--border);background:var(--surface);overflow:hidden;box-shadow:var(--shadow-xl);font:500 13.5px/1 var(--mono)}
.tr-hd,.tm-hd{height:42px;display:flex;align-items:center;gap:7px;padding:0 16px;border-bottom:1px solid var(--border)}
.tr-hd i,.tm-hd i{width:10px;height:10px;border-radius:50%;background:color-mix(in oklch,var(--foreground) 16%,transparent)}
.tr-hd span,.tm-hd span{margin-left:10px;font-size:12px;color:var(--muted-foreground)}
.tree ul{list-style:none}
.tree > ul{padding:14px 10px 18px}
.tree li{padding:9px 10px;border-radius:9px;display:block}
.tree li > .x,.tree li li .x{display:inline-grid;place-items:center;min-width:34px;height:22px;margin-right:10px;padding:0 5px;border-radius:6px;font-size:10.5px;background:var(--muted);color:var(--muted-foreground)}
.tree li li{padding:7px 10px;transition:background-color .15s ease-out}
.tree li li:hover{background:var(--muted)}
.tree li ul{margin:8px 0 0 22px;padding-left:12px;border-left:1px dashed var(--border)}
.tree em{font-style:normal;color:var(--muted-foreground);font-size:12px;margin-left:8px}
.tree li .x.md{background:oklch(.93 .04 260);color:oklch(.4 .1 260)}
.tree li .x.js{background:oklch(.94 .06 90);color:oklch(.45 .1 80)}
.tree li .x.au{background:color-mix(in oklch,var(--stone) 20%,transparent);color:var(--stone)}
.tree li .x.im{background:oklch(.93 .05 30);color:oklch(.5 .14 30)}
@media (prefers-color-scheme:dark){.tree li .x.md{background:oklch(.3 .05 260);color:oklch(.82 .08 260)}.tree li .x.js{background:oklch(.32 .05 90);color:oklch(.86 .1 90)}.tree li .x.im{background:oklch(.32 .06 30);color:oklch(.84 .1 30)}}
.tree .more{color:var(--muted-foreground);font-size:12.5px}

/* ---------- agents terminal (always dark) ---------- */
.term{border-radius:20px;background:var(--ink-band);color:oklch(.92 .01 150);overflow:hidden;box-shadow:var(--shadow-xl);border:1px solid oklch(1 0 0 / .08)}
.term .tm-hd{border-bottom-color:oklch(1 0 0 / .1)}
.term .tm-hd i{background:oklch(1 0 0 / .2)}
.term .tm-hd span{color:oklch(1 0 0 / .55)}
.term pre{padding:22px 22px 26px;font:500 13.5px/1.75 var(--mono);white-space:pre;overflow-x:auto}
.term .pr{color:var(--stone-on-dark)}
.term .mu{color:oklch(1 0 0 / .45)}
.term .ok{color:var(--stone-on-dark)}

/* ---------- cairn for ---------- */
.who{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.wc{border-radius:20px;overflow:hidden;border:1px solid var(--border);background:var(--card);transition:transform .25s cubic-bezier(.2,0,0,1),box-shadow .25s ease-out}
.wc:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.wc .ph{aspect-ratio:4/3;background:var(--muted);overflow:hidden}
.wc .ph img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,0,0,1)}
.wc:hover .ph img{transform:scale(1.04)}
.wc .pad{padding:18px 18px 20px}
.wc h3{font-size:18px;font-weight:700;letter-spacing:-.025em}
.wc p{margin-top:6px;font-size:14px;line-height:22px;color:var(--muted-foreground)}
.wc{text-align:left}
.wc .tags{margin-top:14px;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:5px;max-width:none}
.wc .tags span{height:24px;padding:0 9px;border-radius:999px;display:inline-flex;align-items:center;font-size:12px;font-weight:500;background:var(--muted);color:var(--foreground)}

/* ---------- promises ---------- */
.prom{max-width:900px;margin:0 auto;list-style:none;counter-reset:p}
.prom li{counter-increment:p;display:grid;grid-template-columns:80px 1fr 1.3fr;gap:24px;align-items:baseline;padding:26px 4px;border-top:1px solid var(--border)}
.prom li:last-child{border-bottom:1px solid var(--border)}
.prom li::before{content:"0" counter(p);font:600 14px var(--mono);color:var(--stone)}
.prom b{font-size:21px;font-weight:700;letter-spacing:-.03em}
.prom span{font-size:15.5px;line-height:25px;color:var(--muted-foreground)}

/* ---------- closing band ---------- */
.cta2{margin:140px 10px 0;border-radius:30px;background:var(--stone);color:#fff}
@media (prefers-color-scheme:dark){.cta2{background:oklch(.42 .09 150)}}
.cta2-in{max-width:760px;margin:0 auto;padding:100px 24px;text-align:center;display:flex;flex-direction:column;align-items:center}
.cta2 img{border-radius:18px;box-shadow:0 0 0 6px oklch(1 0 0 / .16)}
.cta2 h2{margin-top:30px;font-size:clamp(36px,5.5vw,62px);line-height:1;font-weight:800;letter-spacing:-.055em}
.cta2 p{margin-top:18px;font-size:17px;color:oklch(1 0 0 / .82)}
.home .foot2{margin-top:40px;border-top:0}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .cap4,.who{grid-template-columns:1fr 1fr}
  .split,.band-in{grid-template-columns:1fr;gap:48px}
  .split.rev > .head{order:0}
}
@media (max-width:640px){
  .hx-copy{padding:128px 16px 0}
  .hx-sub{font-size:16px;line-height:25px}
  .hx-ctas{flex-direction:column;align-self:stretch}
  .hx-ctas .btn{width:100%}
  .hx-stage{padding:0 14px;margin-top:48px}
  .hx-bg{left:6px;right:6px;border-radius:22px}
  .steps{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;scrollbar-width:none;margin:20px -14px 0;padding:0 14px}
  .steps::-webkit-scrollbar{display:none}
  .steps button{flex:none}
  .sec{padding:96px 16px 0}
  .head{margin-bottom:36px}
  .kinds{columns:2 150px;column-gap:10px}
  .k{margin-bottom:10px}
  .k.quote blockquote{font-size:17px}
  .cap4,.who{grid-template-columns:1fr}
  .sgrid{grid-template-columns:repeat(3,1fr)}
  .sgrid .st:nth-child(n+7){display:none}
  .band,.cta2{margin:96px 6px 0;border-radius:22px}
  .band-in{padding:72px 18px}
  .vp{padding:18px}
  .vp-row{grid-template-columns:auto 1fr;gap:12px}
  .vp-time,.vp-speed{grid-row:2}
  .vp-speed{justify-self:end}
  .prom li{grid-template-columns:1fr;gap:6px}
  .cta2-in{padding:72px 18px}
  .term pre{font-size:12px;padding:16px}
  .rs-deck{height:380px}.rcard .ph{height:260px}
}
@media (prefers-reduced-motion:reduce){.fly,.lvl i,.mic,.caret{animation:none}}
