/* Homepage, 2026-09-24 ("Signal + A Day"). Other pages keep styles.css. */
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:400 800;font-display:swap;src:url(assets/fonts/bricolage-grotesque.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Geist';font-style:normal;font-weight:300 600;font-display:swap;src:url(assets/fonts/geist.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Geist Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url(assets/fonts/geist-mono.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --ink:#070D16; --panel:#0D1826; --panel-2:#13233A; --line:#1F3048;
  --text:#EAF0F7; --muted:#9AAAC0; --dim:#6A7B93;
  --orange:#FF6B47; --orange-glow:rgba(255,107,71,.18);
  --green:#A3D139; --blue:#9CC2FF; --blue-glow:rgba(127,178,255,.12);
  --display:'Bricolage Grotesque','Segoe UI',system-ui,sans-serif;
  --body:'Geist','Segoe UI',system-ui,-apple-system,sans-serif;
  --mono:'Geist Mono',ui-monospace,Consolas,monospace;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-padding-top:80px}
body.home{margin:0;background:var(--ink);color:var(--text);font:16px/1.6 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
.home a{color:inherit}
.home :focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:6px}
.home img{max-width:100%}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--orange);color:#1a0701;padding:8px 14px;border-radius:8px}
.skip-link:focus{left:12px}
.wrap{max-width:1180px;margin:0 auto;padding-inline:clamp(16px,4vw,40px)}
.eyebrow{font-family:var(--mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);margin:0}
.home h1,.home h2,.home h3{font-family:var(--display);font-weight:800;letter-spacing:-.03em;line-height:1.02;margin:0;text-wrap:balance}
.home h2{font-size:clamp(2.1rem,5vw,4.1rem)}
.home h2 em,.home h1 em{font-style:normal;color:var(--orange)}
.home h3{font-size:1.2rem;letter-spacing:-.01em;font-weight:600;line-height:1.2}
.home p{margin:0}
.lede{color:var(--muted);font-size:clamp(1.02rem,1.5vw,1.18rem);max-width:58ch}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;padding-top:env(safe-area-inset-top,0px);background:linear-gradient(to bottom,rgba(7,13,22,.94),rgba(7,13,22,0))}
.nav .wrap{display:flex;align-items:center;gap:26px;height:66px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:600;letter-spacing:-.01em;white-space:nowrap}
.brand svg{height:22px;width:auto}
.nav-links{display:flex;gap:22px;margin-left:auto;font-size:.92rem;color:var(--muted)}
.nav-links a{text-decoration:none}.nav-links a:hover{color:var(--text)}
.btn{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:11px 20px;font-weight:600;font-size:.95rem;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .2s,background .2s}
.btn-primary{background:var(--orange);color:#1a0701!important}
.btn-primary:hover{background:#ff8466;transform:translateY(-1px)}
.btn-ghost{border-color:var(--line);color:var(--text)}
.btn-ghost:hover{border-color:var(--muted)}
.nav .btn{padding:8px 16px;font-size:.88rem}
.menu{display:none;margin-left:auto;position:relative}
.menu summary{list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:.88rem}
.menu summary::-webkit-details-marker{display:none}
.menu nav{position:absolute;right:0;top:calc(100% + 8px);display:grid;gap:4px;min-width:220px;padding:10px;border-radius:14px;background:var(--panel);border:1px solid var(--line);box-shadow:0 20px 50px rgba(0,0,0,.5)}
.menu nav a{padding:9px 12px;border-radius:8px;text-decoration:none}
.menu nav a:hover{background:var(--panel-2)}
@media (max-width:860px){.nav-links,.nav .btn{display:none}.menu{display:block}}

/* pinned sections: short runs so the payoff arrives quickly */
.scrub{position:relative}
.stage{position:sticky;top:0;height:100svh;overflow:hidden}

/* hero sort */
#sort{height:150vh}
#sort .stage{perspective:1100px;background:radial-gradient(60% 50% at 50% 38%,rgba(255,107,71,.10),transparent 70%),radial-gradient(40% 40% at 80% 90%,rgba(163,209,57,.07),transparent 70%)}
.hero-copy{position:absolute;left:0;right:0;top:calc(15svh + env(safe-area-inset-top,0px));text-align:center;z-index:5;padding-inline:16px;transform-origin:50% 0;will-change:transform}
.hero-copy .when{display:block;font-family:var(--display);font-weight:400;font-size:clamp(1.1rem,2.2vw,1.7rem);color:var(--muted);letter-spacing:-.01em}
.hero-copy h1{font-size:clamp(2.7rem,7.4vw,6.4rem);max-width:12ch;margin:10px auto 0;text-shadow:0 4px 40px rgba(7,13,22,.8)}
.hero-copy .lede{margin:22px auto 0;text-align:center}
.cta{display:flex;gap:12px;justify-content:center;margin-top:28px;flex-wrap:wrap}
.hero-foot{margin-top:16px!important;color:var(--dim);font-family:var(--mono);font-size:.74rem;letter-spacing:.06em}
.hero-foot a{color:var(--muted)}
.chips{position:absolute;inset:0;transform-style:preserve-3d;z-index:2}
.chip{position:absolute;left:0;top:0;width:var(--cw,230px);padding:9px 11px;border-radius:10px;background:var(--panel);border:1px solid var(--line);font-size:.76rem;line-height:1.35;box-shadow:0 12px 30px rgba(0,0,0,.35);will-change:transform,opacity}
.chip b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chip span{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chip i{font-style:normal;float:right;font-family:var(--mono);font-size:.64rem;color:var(--dim)}
.chip[data-lane="team"]{border-color:rgba(255,107,71,.45)}
.chip[data-lane="team"].landed{background:linear-gradient(180deg,#22151a,var(--panel));box-shadow:0 0 0 1px rgba(255,107,71,.35),0 14px 40px rgba(255,107,71,.18)}
.chip[data-lane="them"].landed{border-color:rgba(127,178,255,.35)}
.chip[data-lane="aside"].landed{opacity:.6!important}
.chip[data-lane="aside"].landed:not(.top) b,.chip[data-lane="aside"].landed:not(.top) span,.chip[data-lane="aside"].landed:not(.top) i{visibility:hidden}
.lanes{position:absolute;left:0;right:0;z-index:4;pointer-events:none}
.lane-h{position:absolute;display:flex;align-items:baseline;gap:10px;font-family:var(--display);font-weight:600;font-size:clamp(.95rem,1.6vw,1.2rem);transform:translateX(-50%);white-space:nowrap;opacity:0}
.lane-h .n{font-family:var(--mono);font-weight:500;font-size:.8em;padding:2px 9px;border-radius:999px;background:var(--panel-2);color:var(--muted)}
.lane-h.team .n{background:var(--orange);color:#1a0701}
.lane-h.them .n{background:#1d3150;color:#bcd5ff}
.scroll-hint{position:absolute;bottom:calc(28px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:.72rem;color:var(--dim);letter-spacing:.12em;text-transform:uppercase;z-index:5}
@media (max-width:700px){.chip{--cw:28vw;font-size:.62rem;padding:6px 7px}.chip span,.chip i{display:none}.lane-h{font-size:.8rem}}

section.block{padding-block:clamp(56px,7vw,96px)}
.head{display:grid;gap:14px;margin-bottom:32px}

/* less time: four swaps, each a tab with its own scene */
.show{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(20px,4vw,52px);align-items:start}
.swaps{display:grid;border-top:1px solid var(--line)}
.swaps .label{display:grid;grid-template-columns:1fr;padding-block:10px;font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}
.swaps .label span:last-child{display:none}
.swap{position:relative;display:grid;gap:4px;padding:16px 14px 16px 16px;border:0;border-bottom:1px solid var(--line);background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:0;transition:background .25s}
.swap:hover{background:rgba(255,255,255,.025)}
.swap[aria-selected=true]{background:var(--panel)}
.swap::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent}
.swap[aria-selected=true]::before{background:var(--orange)}
.swap .was{color:var(--dim);font-size:.9rem;text-decoration:line-through;text-decoration-color:rgba(255,107,71,.6);text-decoration-thickness:2px}
.swap .now{font-weight:500}
.swap .now::before{content:"\2192  ";color:var(--green)}
.swap .bar{position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--orange);opacity:.7}
.swap[aria-selected=true] .bar{width:calc(var(--t,0)*100%)}
.panels{display:grid;min-width:0}
.panel{grid-area:1/1;min-width:0;visibility:hidden;opacity:0;transform:translateY(8px);transition:opacity .35s,transform .35s,visibility 0s .35s}
.panel.on{visibility:visible;opacity:1;transform:none;transition:opacity .35s,transform .35s}
.ptitle{display:grid;gap:10px;margin-bottom:20px}
.home .ptitle h3{font-size:clamp(1.5rem,2.6vw,2.15rem);font-weight:800;letter-spacing:-.03em;line-height:1.05}
.ptitle h3 em{font-style:normal;color:var(--orange)}
.ptitle .lede{font-size:1rem}
.home h4{font-family:var(--display);font-size:1.05rem;font-weight:600;letter-spacing:-.01em;line-height:1.2;margin:0}
@media (max-width:860px){.show{grid-template-columns:minmax(0,1fr)}.swap .was{font-size:.82rem}}

/* the day */
#day{height:185vh;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
#day .stage{display:grid;grid-template-rows:auto 1fr;padding-top:calc(78px + env(safe-area-inset-top,0px))}
.dayhead{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap}
.dayhead h2{font-size:clamp(1.8rem,3.6vw,3rem);margin-top:8px}
.dclock{display:flex;align-items:center;gap:12px}
.dclock .t{font-family:var(--mono);font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:500;font-variant-numeric:tabular-nums}
.dclock svg{width:46px;height:46px}
.timeline{height:3px;background:var(--line);border-radius:2px;position:relative;margin-top:14px}
.timeline i{position:absolute;inset:0 auto 0 0;width:calc(var(--p,0)*100%);background:var(--orange);border-radius:2px;box-shadow:0 0 12px var(--orange)}
.panes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(14px,3vw,34px);padding-block:18px 40px;min-height:0}
.pane{display:grid;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;border-radius:18px;border:1px solid var(--line);background:var(--panel);overflow:hidden}
.pane-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}
.pane-top h3{font-size:.98rem!important}
.pane-top .count{font-family:var(--mono);font-size:.76rem;color:var(--muted);font-variant-numeric:tabular-nums}
.raw{overflow:hidden;position:relative}
.raw::after{content:"";position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(transparent,var(--panel))}
.raw ul{list-style:none;margin:0;padding:0}
.raw li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 12px;padding:9px 16px;border-bottom:1px solid #17263a;font-size:.84rem;animation:drop .45s ease-out}
.raw li b{font-weight:600}
.raw li b::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#5B8DEF;margin-right:8px;vertical-align:1px}
.raw li span{color:var(--muted);grid-column:1/-1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.raw li time{font-family:var(--mono);font-size:.7rem;color:var(--dim)}
@keyframes drop{from{transform:translateY(-10px);background:#1b2a40}to{transform:none;background:transparent}}
.smart{padding:16px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-content:start;overflow:hidden}
.tallies{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.tally{border-radius:12px;padding:10px 12px;display:grid;gap:2px;border:1px solid var(--line)}
.tally .n{font-family:var(--display);font-weight:800;font-size:clamp(1.8rem,3vw,2.5rem);line-height:1;font-variant-numeric:tabular-nums}
.tally .k{font-size:.74rem;color:var(--muted)}
.tally.team{border-color:rgba(255,107,71,.45);background:var(--orange-glow)}
.tally.team .n{color:var(--orange)}
.tally.them{border-color:rgba(127,178,255,.35);background:var(--blue-glow)}
.tally.them .n{color:var(--blue)}
.top{display:grid;gap:6px}
.top .item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:10px;font-size:.82rem;background:var(--ink)}
.top .item > span:nth-child(2){min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top .item .pri{width:7px;height:7px;border-radius:50%;background:var(--orange)}
.top .item .own{font-family:var(--mono);font-size:.66rem;color:var(--muted);white-space:nowrap}
.top .item.snoozed{opacity:.5}
.note{border-left:3px solid var(--orange);padding:9px 12px;background:var(--panel-2);border-radius:0 10px 10px 0;font-size:.88rem;min-height:4em}
.note time{font-family:var(--mono);font-size:.7rem;color:var(--orange);display:block}
@media (max-width:860px){#day{height:auto}#day .stage{position:static;height:auto;padding-block:80px 20px}.panes{grid-template-columns:minmax(0,1fr)}.raw{max-height:320px}}

/* read */
.read-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(16px,2.4vw,28px);align-items:start}
.letter{background:#F4F6F9;color:#172233;border-radius:16px;padding:clamp(16px,2vw,24px);box-shadow:0 30px 70px rgba(0,0,0,.45);font-size:clamp(.82rem,1vw,.9rem);line-height:1.6;transform:rotate(-1deg)}
.letter .meta{display:grid;gap:2px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #D9E0EA;font-size:.8rem;color:#5B687B}
.letter .meta b{color:#172233;font-weight:600;font-size:.95rem}
.letter p + p{margin-top:12px}
.hl{transition:background .45s;border-radius:2px;padding:0 1px}
.hl.on{background:linear-gradient(transparent 55%,rgba(255,107,71,.42) 55%)}
.pulled{display:grid;gap:7px}
.pulled .row{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:9px 13px;border-radius:11px;background:var(--panel);border:1px solid var(--line);font-size:.9rem;opacity:.18;transform:translateX(24px);transition:opacity .4s,transform .4s}
.pulled .row.on{opacity:1;transform:none}
.pulled .k{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.pulled .v{font-weight:600;text-align:right}
.pulled .warn .v{color:#FFC440}
.summary{margin-top:8px;padding:13px 14px;font-size:.9rem;border-radius:14px;background:linear-gradient(135deg,rgba(255,107,71,.16),rgba(255,107,71,.04));border:1px solid rgba(255,107,71,.4);opacity:.18;transition:opacity .5s,transform .5s;transform:translateY(12px)}
.summary.on{opacity:1;transform:none}
.summary .eyebrow{display:block;margin-bottom:6px}
@media (max-width:1000px){.read-grid{grid-template-columns:1fr}}
@media (max-width:860px){.letter{transform:none}.pulled .row,.summary{opacity:1;transform:none}.hl{background:linear-gradient(transparent 55%,rgba(255,107,71,.42) 55%)}}

/* turn */
.rally{position:relative;margin-top:8px;height:230px}
.rally .track{position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line)}
.rally .fill{position:absolute;left:0;top:50%;height:2px;margin-top:-1px;background:linear-gradient(90deg,var(--orange),#ffb199);width:calc(var(--p,0)*100%)}
.msg{position:absolute;width:min(210px,38%);padding:11px 13px;border-radius:12px;background:var(--panel);border:1px solid var(--line);font-size:.8rem;line-height:1.4;transform:translateX(-50%);opacity:.3;transition:opacity .3s,border-color .3s}
.msg.on{opacity:1}
.msg.us{top:calc(50% + 22px)}
.msg.them{bottom:calc(50% + 22px)}
.msg.us.on{border-color:rgba(163,209,57,.5)}
.msg.them.on{border-color:rgba(255,107,71,.5)}
.msg .who{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin-bottom:4px;display:block}
.msg .when{float:right;font-family:var(--mono);font-size:.64rem;color:var(--dim)}
.ball{position:absolute;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 8px var(--orange-glow),0 0 40px var(--orange);left:calc(var(--p,0)*100%)}
.verdict{display:flex;align-items:center;gap:14px;margin-top:28px;flex-wrap:wrap}
.pill{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;font-weight:600;font-size:.95rem;border:1px solid var(--line);transition:all .3s}
.pill .dot{width:8px;height:8px;border-radius:50%;background:currentColor}
.pill.team{color:var(--orange);border-color:rgba(255,107,71,.5);background:var(--orange-glow)}
.pill.them{color:var(--blue);border-color:rgba(127,178,255,.45);background:var(--blue-glow)}
.verdict p{color:var(--muted);max-width:52ch}
@media (max-width:860px){.rally{height:auto;display:grid;gap:10px}.rally .track,.rally .fill,.ball{display:none}.msg{position:static;width:auto;transform:none;opacity:1}}

/* ask */
.console{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 30px 80px rgba(0,0,0,.4)}
.console .q{display:flex;gap:10px;align-items:center;padding:14px 16px;border-radius:12px;background:var(--ink);border:1px solid var(--line);font-size:1rem;min-height:52px}
.console .caret{display:inline-block;width:2px;height:1.1em;background:var(--orange);animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.console .a{margin-top:16px;line-height:1.65}
.console .src{margin-top:14px;display:grid;gap:8px}
.console .src span{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;background:var(--panel-2);font-size:.86rem}
.console .src small{color:var(--muted);font-size:.8rem;white-space:nowrap}
.console .searched{margin-top:14px;color:var(--dim);font-family:var(--mono);font-size:.74rem}

/* clean-up tab */
.tidy{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tidy li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);transition:opacity .3s}
.tidy .who{display:grid;min-width:0}
.tidy .who b{font-weight:600}
.tidy .who small{color:var(--muted);font-size:.8rem}
.tidy .acts{display:flex;gap:6px;flex:none}
.tidy button{font:inherit;font-size:.78rem;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:5px 11px;cursor:pointer}
.tidy button:hover{border-color:var(--orange);color:var(--orange)}
.tidy button.del{color:#ffb199}
.tidy li.done{opacity:.45}
.tidy li .state{font-family:var(--mono);font-size:.72rem;color:var(--green)}
.tidy-note{margin-top:12px!important}
.reply-row{display:flex;gap:6px}
.outlook-btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}
.trust-lede{margin-top:16px!important;color:var(--muted);max-width:44ch}
.release-note{margin-top:10px!important;font-size:.85rem;color:var(--dim);max-width:44ch}
@media (max-width:560px){.tidy li{flex-direction:column;align-items:flex-start}}

/* demo */
.demo-sec .tour-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.demo-sec .tour-tabs button{min-height:40px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--text);font:600 .9rem var(--body);cursor:pointer}
.demo-sec .tour-tabs button[aria-pressed=true]{background:var(--orange);border-color:var(--orange);color:#1a0701}
.demo-sec .tour-cap{min-height:52px;margin:0 0 16px;max-width:860px;color:var(--muted)}
.demo-sec .tour-cap b{color:var(--text)}
.demo-sec .tour-hint{margin-top:12px;color:var(--dim);font-size:.9rem}
.demo-sec [data-app-sim]{box-shadow:0 40px 100px rgba(0,0,0,.55),0 0 0 1px var(--line);border-color:transparent}

/* team */
.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tile{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px;display:grid;gap:10px;align-content:start}
.tile p{color:var(--muted);font-size:.88rem;line-height:1.5}
.mini{border-radius:12px;background:var(--ink);border:1px solid var(--line);padding:14px;font-size:.82rem;display:grid;gap:10px}
.mini select{appearance:none;font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:7px 10px;width:100%}
.chipset{display:flex;flex-wrap:wrap;gap:6px}
.chipset button{font:inherit;font-size:.76rem;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:5px 10px;cursor:pointer}
.chipset button:hover,.chipset button.sel{border-color:var(--orange);color:var(--orange)}
.note2{color:var(--dim);font-family:var(--mono);font-size:.68rem}
.badge{display:inline-flex;padding:3px 9px;border-radius:999px;font-size:.72rem;background:var(--blue-glow);color:#bcd5ff;width:max-content}
.outlook-btn{justify-self:start;display:inline-flex;border-radius:8px;padding:8px 12px;background:#E9EEF5;color:#0b1422;font-weight:600;font-size:.8rem}
@media (max-width:1180px){.tiles{grid-template-columns:minmax(0,1fr)}.tile{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px}.tile .mini{grid-column:2;grid-row:1/3}}
@media (max-width:600px){.tile{grid-template-columns:minmax(0,1fr)}.tile .mini{grid-column:auto;grid-row:auto}}

/* start */
.price-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start}
.start{display:grid;gap:10px}
.home .start h3{font-size:1.45rem;font-weight:800;letter-spacing:-.02em}
.start h3 em{font-style:normal;color:var(--orange)}
.start-lede{color:var(--muted);font-size:.95rem}
.steps{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.step{background:var(--ink);padding:14px 18px;display:grid;gap:4px;align-content:start}
.step .num{font-family:var(--mono);font-size:.74rem;color:var(--orange);letter-spacing:.12em}
.step p{color:var(--muted);font-size:.9rem;line-height:1.5}
@media (max-width:960px){.price-grid{grid-template-columns:1fr}}

/* trust */
.trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(70% 60% at 50% 0%,rgba(163,209,57,.08),transparent 70%)}
.trust-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,56px);align-items:center}
.big-line{font-family:var(--display);font-weight:800;letter-spacing:-.035em;line-height:.98;font-size:clamp(2.4rem,5vw,4.4rem)!important;margin-top:14px!important}
.big-line span{color:var(--dim)}
.ledger{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.ledger > div{padding:clamp(20px,3vw,32px);display:grid;gap:12px;align-content:start}
.ledger > div + div{border-left:1px solid var(--line);background:var(--panel)}
.ledger ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ledger li{display:flex;gap:12px;align-items:baseline;padding-bottom:10px;border-bottom:1px dashed var(--line)}
.ledger li::before{font-family:var(--mono);flex:none}
.ledger .will li::before{content:"✓";color:var(--green)}
.ledger .never li::before{content:"✕";color:var(--orange)}
.trust .more{margin-top:22px;color:var(--muted)}
@media (max-width:900px){.trust-grid{grid-template-columns:1fr}}
@media (max-width:760px){.ledger{grid-template-columns:1fr}.ledger > div + div{border-left:0;border-top:1px solid var(--line)}}

/* price, letter, close */
.plans{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.plan{border:1px solid var(--line);border-radius:20px;padding:24px;display:grid;gap:14px;background:var(--panel)}
.plan.team{background:linear-gradient(160deg,#1c1411 0%,var(--panel) 55%);border-color:rgba(255,107,71,.45)}
.price{font-family:var(--display);font-weight:800;font-size:3.3rem;letter-spacing:-.04em;line-height:1}
.price small{font-family:var(--body);font-weight:400;font-size:1rem;color:var(--muted);letter-spacing:0}
.plan ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;color:var(--muted);font-size:.95rem}
.plan li::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:10px;vertical-align:2px}
.plan .btn{justify-self:start}
.price-note{margin-top:18px!important;color:var(--muted)}
.letter-note{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,44px);align-items:center;max-width:900px;margin:0 auto clamp(48px,6vw,72px);text-align:left}
.letter-note img{width:clamp(100px,13vw,150px);aspect-ratio:1;object-fit:cover;border-radius:50%;box-shadow:0 0 0 1px var(--line),0 0 0 10px rgba(255,107,71,.07)}
.letter-note blockquote{margin:0;font-family:var(--display);font-weight:600;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.32;letter-spacing:-.02em}
.letter-note .sig{margin-top:16px!important;font-size:.95rem;color:var(--muted)}
.letter-note .sig b{display:block;font-family:var(--display);font-weight:400;font-size:1.9rem;color:var(--text);font-style:italic}
@media (max-width:760px){.plans{grid-template-columns:1fr}.letter-note{grid-template-columns:1fr}}
.final{text-align:center;padding-block:clamp(56px,7vw,96px) clamp(64px,8vw,110px);border-top:1px solid var(--line)}
.final h2{font-size:clamp(2.4rem,5.6vw,4.6rem);max-width:14ch;margin:0 auto}

/* footer */
.foot{border-top:1px solid var(--line);padding-block:48px 40px;color:var(--muted);font-size:.9rem}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.foot h2{font-family:var(--mono)!important;font-size:.72rem!important;font-weight:500!important;letter-spacing:.14em!important;text-transform:uppercase;color:var(--dim);margin-bottom:12px!important}
.foot nav{display:grid;gap:8px}
.foot nav a{text-decoration:none}.foot nav a:hover{color:var(--text)}
.foot-bottom{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:36px;padding-top:20px;border-top:1px solid var(--line);color:var(--dim);font-size:.82rem}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr}}

@supports (animation-timeline: view()){
  .rise{animation:rise linear both;animation-timeline:view();animation-range:entry 0% cover 22%}
  @keyframes rise{from{opacity:.001;transform:translateY(36px)}to{opacity:1;transform:none}}
}
@media (prefers-reduced-motion:reduce){.rise{animation:none!important}.console .caret{animation:none}.raw li{animation:none}}

/* Keep the introduction and controls available without the scrolling animation. */
@media (prefers-reduced-motion:reduce){
  #sort .stage{height:auto!important;min-height:100svh}
  #sort .hero-copy{position:relative;top:auto;transform:none!important;padding-block:calc(96px + env(safe-area-inset-top,0px)) 40px}
  #sort .hero-copy .lede,#sort .hero-copy .cta,#sort .hero-copy .hero-foot{opacity:1!important;visibility:visible!important}
  #sort .chips,#sort .scroll-hint{display:none}
  #sort .lanes{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1180px;margin:0 auto;padding:0 clamp(16px,4vw,40px) 48px}
  #sort .lane-h{position:static;transform:none;opacity:1!important;white-space:normal;justify-content:center;align-items:center;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
}
@media (prefers-reduced-motion:reduce) and (max-width:700px){
  #sort .lanes{grid-template-columns:1fr}
}
