
/* Layout: one long editorial page in rhythm dense / sparse / dense, plus two app views (sign in, account) routed by hash. Single deliberate light look with one lime and one black band. */
:root{
  --ink:#0D0D0F; --paper:#FFFFFF; --bg:#F7F7F8; --g1:#3C3C43; --g2:#6E6E78; --chip:#EDEDF0;
  --line:rgba(0,0,0,.14); --hair:rgba(0,0,0,.08); --mark:#B9FF00;
  --err:#B91C1C; --errbg:#FDECEC; --warn:#92400E; --warnbg:#FEF3E2; --ok:#15803D; --okbg:#E7F5EC;
  --night:#0D0D0F; --night2:#17171A; --nightfg:#F5F5F7; --nightmut:#9A9AA2; --nightline:rgba(255,255,255,.14);
  --display:"Geologica","Inter",system-ui,sans-serif; --body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --r-mk:0.08em 0.3em 0.12em 0.26em / 0.28em 0.1em 0.32em 0.08em;
  color-scheme:light;
}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--paper)}
a{color:var(--ink)} a:hover{color:var(--g1)}
:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:4px}
.night :focus-visible{outline-color:var(--nightfg)}
h1,h2,h3{text-wrap:balance}
.wrap{max-width:1360px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));box-sizing:border-box}
@media (min-width:900px){.wrap{padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}}
.mk{background:var(--mark);color:var(--ink);padding:0 .12em;border-radius:var(--r-mk);-webkit-box-decoration-break:clone;box-decoration-break:clone}
.mkd{color:var(--ink);background-image:linear-gradient(var(--mark),var(--mark));background-repeat:no-repeat;background-size:calc(var(--d,1) * 100%) 100%;padding:1px 3px;border-radius:2px 8px 3px 7px / 7px 3px 8px 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.tag{display:inline-flex;align-items:center;gap:4px;background:var(--mark);color:var(--ink);font-size:11px;font-weight:700;padding:2px 7px 2px 5px;border-radius:3px 8px 4px 7px;line-height:1.5;white-space:nowrap}
.tag svg{width:11px;height:11px}
.ex{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--ink);border-radius:8px;padding:5px 11px;font-size:13px;font-weight:700}
.ex span{font-weight:400;color:var(--g1)}
.btn{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:44px;padding:0 20px;border-radius:10px;border:0;font:600 15px var(--body);text-decoration:none;cursor:pointer;white-space:nowrap}
.btn-pri{background:var(--ink);color:var(--paper)} .btn-pri:hover{background:#2A2A30;color:var(--paper)}
.btn-sec{background:var(--paper);color:var(--ink);border:1px solid var(--line)} .btn-sec:hover{border-color:var(--ink);color:var(--ink)}
.btn-ghost{background:transparent;color:var(--g1)} .btn-ghost:hover{color:var(--ink)}
.btn[disabled]{background:var(--chip);color:var(--g2);cursor:not-allowed;border:0}
.btn-sm{height:38px;padding:0 14px;font-size:14px}
.btn-lg{height:48px;padding:0 24px}
.label{font-size:13px;font-weight:600;color:var(--g1)}
.cap{font-size:13px;color:var(--g2)}
.av{flex:none;width:32px;height:32px;border-radius:50%;background:var(--chip);color:var(--g1);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}
input,textarea,select{font:inherit;color:var(--ink)}

/* header */
.site-h{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--paper);border-bottom:1px solid var(--hair)}
.site-h > .wrap{height:68px;display:flex;align-items:center;gap:28px}
.mnav[hidden]{display:none!important}
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);min-height:44px}
.logo b{font-family:var(--display);font-weight:700;font-size:20px;letter-spacing:-.02em}
.logo b span{background:var(--mark);padding:0 3px;border-radius:2px 7px 3px 6px / 6px 2px 7px 3px}
.nav{display:flex;gap:26px}
.nav a{font-size:14px;font-weight:500;color:var(--g1);text-decoration:none;padding:12px 0}
.nav a:hover{color:var(--ink)}
.h-right{margin-left:auto;display:flex;align-items:center;gap:8px}
.h-right .signin{font-size:14px;font-weight:500;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;padding:0 12px}
.menu-btn{display:none;width:44px;height:44px;border-radius:10px;border:1px solid var(--line);background:var(--paper);align-items:center;justify-content:center;cursor:pointer}
.mnav{display:none}
@media (max-width:860px){
  .nav,.h-install{display:none}
  .menu-btn{display:inline-flex}
  .mnav:not([hidden]){display:flex;flex-direction:column;border-top:1px solid var(--hair);background:var(--paper);padding-block:6px 14px}
  .mnav a{min-height:48px;display:flex;align-items:center;font-weight:500;text-decoration:none;border-bottom:1px solid var(--hair)}
  .mnav .btn{margin-top:12px;width:100%}
}

/* hero */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);gap:56px;padding-block:28px 64px}
.hero-l{display:flex;flex-direction:column;justify-content:center;gap:26px;min-width:0}
.eyebrow{font-size:13px;font-weight:500;color:var(--g1)}
.h1{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(42px,5.4vw,80px);line-height:1;letter-spacing:-.04em}
.h1 .draw{position:relative;z-index:0;white-space:nowrap}
.h1 .draw::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;top:.1em;bottom:.02em;background:var(--mark);border-radius:var(--r-mk);transform-origin:left center;animation:draw 380ms cubic-bezier(.2,.7,.2,1) 300ms both}
@keyframes draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.lead{margin:0;font-size:clamp(17px,1.45vw,20px);line-height:1.5;color:var(--g1);max-width:540px}
.cta-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.cta-row .more{font-size:15px;font-weight:500;min-height:44px;display:inline-flex;align-items:center}
.stage{position:relative;height:720px;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.track{display:flex;flex-direction:column;animation:feed 56s linear infinite}
@keyframes feed{from{transform:translateY(0)}to{transform:translateY(-50%)}}
.fpost{position:relative;padding:18px 22px 18px 26px;border-bottom:1px solid var(--hair);display:flex;gap:12px;background:var(--paper)}
.fpost.sel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--mark)}
.fpost .who{display:flex;align-items:center;gap:8px;font-size:14px;flex-wrap:wrap}
.fpost .who .t{color:var(--g2);font-size:13px}
.fpost .who .tag{margin-left:auto}
.fpost p{margin:6px 0 0;font-size:15px;line-height:1.5;color:var(--g1)}
.fpost .m{display:flex;gap:16px;font-size:12px;color:var(--g2);margin-top:6px}
.funnel-bar{position:absolute;left:14px;right:14px;bottom:14px;background:var(--night);color:var(--nightfg);border-radius:12px;padding:6px;display:flex;gap:4px}
.funnel-bar div{flex:1 1 0;min-width:0;padding:8px 10px;display:flex;flex-direction:column}
.funnel-bar div+div{border-left:1px solid var(--nightline)}
.funnel-bar span{font-size:12px;color:#B4B4BC}
.funnel-bar b{font-family:var(--display);font-size:26px;line-height:1.15;font-variant-numeric:tabular-nums}
.funnel-bar .fit{background:var(--mark);color:var(--ink);border-radius:4px 10px 5px 9px;border-left:0!important}
.funnel-bar .fit span{color:var(--ink);font-weight:600}
@media (max-width:860px){
  .hero{grid-template-columns:minmax(0,1fr);gap:32px;padding-block:20px 40px}
  .stage{height:520px}
  .hero .btn{width:100%;height:48px}
  .cta-row{flex-direction:column;align-items:stretch}
  .h1 .draw{white-space:normal}
  .funnel-bar{left:10px;right:10px;bottom:10px;padding:5px;gap:3px}
  .funnel-bar div{padding:7px 7px}
  .funnel-bar span{font-size:11px}
  .funnel-bar b{font-size:22px}
  .fpost{padding:16px 16px 16px 20px}
}

/* sections */
.sec{padding-block:clamp(48px,6vw,88px);border-top:1px solid var(--hair)}
.sec-white{background:var(--paper)}
.h2big{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(40px,6.4vw,104px);line-height:.98;letter-spacing:-.045em}
.h2{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(34px,4.4vw,64px);line-height:1;letter-spacing:-.04em}
.stack{display:flex;flex-direction:column;gap:clamp(28px,4vw,56px)}

/* s1 */
.s1-top{display:flex;flex-wrap:wrap;gap:28px 64px;align-items:flex-end;justify-content:space-between}
.s1-top h2{flex:1 1 620px;min-width:0}
.legend{flex:0 1 300px;display:flex;flex-direction:column;gap:12px;font-size:14px;color:var(--g1)}
.legend div{display:flex;align-items:center;gap:10px}
.legend .grey{flex:none;width:44px;height:10px;border-radius:3px;background:#D9D9DE}
.wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:12px}
.wpost{position:relative;overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:16px 18px 16px 22px;display:flex;flex-direction:column;gap:8px}
.wpost:not(.sel){opacity:calc(1 - .82 * clamp(0, (var(--p,1) - .2) / .4, 1))}
.wpost.sel{--d:clamp(0, (var(--p,1) - .45) / .4, 1);border-color:rgba(0,0,0,.32)}
.wpost.sel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:calc(6px * var(--d));background:var(--mark)}
.wpost .who{display:flex;align-items:center;gap:10px;font-size:14px;min-width:0}
.wpost .who b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wpost .who .t{color:var(--g2);font-size:12px;white-space:nowrap}
.wpost .who .tag{margin-left:auto;opacity:var(--d)}
.wpost p{margin:0;font-size:15px;color:var(--g1)}
@media (max-width:760px){.wall .wpost:nth-child(2),.wall .wpost:nth-child(4),.wall .wpost:nth-child(7),.wall .wpost:nth-child(9),.wall .wpost:nth-child(10),.wall .wpost:nth-child(11){display:none}}

/* s2 */
.s2-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 32px}
.s2-head h2{margin:0;font-size:clamp(18px,1.6vw,22px);font-weight:600;letter-spacing:-.01em;max-width:560px}
.rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:clamp(14px,2vw,28px);--base:clamp(104px,17vw,250px)}
.row{display:flex;flex-direction:column;gap:10px;--k:clamp(0, (var(--p,1) - var(--a)) / .16, 1)}
.row .top{display:flex;flex-wrap:wrap;align-items:flex-end;gap:6px 28px}
.row .n{font-family:var(--display);font-weight:800;font-size:calc(var(--base) * (1 + (var(--t) - 1) * var(--k)));line-height:.86;letter-spacing:-.055em;font-variant-numeric:tabular-nums}
.row.last .n{background:var(--mark);padding:.04em .12em .02em;border-radius:.06em .22em .08em .18em / .2em .06em .22em .08em}
.row .lab{display:flex;flex-direction:column;gap:2px;padding-bottom:.3em}
.row .lab b{display:inline-flex;align-items:center;gap:8px;font-size:clamp(16px,1.5vw,22px)}
.row .lab span{font-size:14px;color:var(--g1)}
.row .bar{height:10px;background:var(--ink);border-radius:2px 6px 3px 5px;width:calc((100% + (var(--w) - 100%) * var(--k)))}
.row.last .bar{background:var(--mark)}
.row:first-child{--k:0}
@media (max-width:760px){.row .bar{height:6px}}
.s2-end{display:flex;flex-wrap:wrap;gap:28px 56px;align-items:flex-start}
.flowto{display:flex;align-items:flex-end;gap:6px;margin-top:calc(-1 * clamp(14px,2vw,28px));margin-bottom:calc(-1 * clamp(8px,1.5vw,24px))}
.flowto-ar{flex:none;opacity:calc(.25 + .75 * clamp(0,(var(--p,1) - .62)/.12,1))}
.flowto-b{display:flex;align-items:center;gap:12px;background:var(--mark);border-radius:6px 14px 8px 12px / 12px 6px 14px 8px;padding:10px 18px 10px 12px;margin-bottom:0;transform:translateY(calc((1 - clamp(0,(var(--p,1) - .66)/.12,1)) * 10px));opacity:calc(.25 + .75 * clamp(0,(var(--p,1) - .66)/.12,1))}
.flowto-n{font-family:var(--display);font-weight:800;font-size:clamp(40px,4vw,56px);line-height:.9;letter-spacing:-.04em}
.flowto-ic{width:40px;height:40px;border-radius:10px;background:var(--paper);display:inline-flex;align-items:center;justify-content:center}
.flowto-b b{display:block;font-size:clamp(17px,1.5vw,21px)}
.flowto-b div span{font-size:14px}
.flowto-dn{display:block;margin:calc(-1 * clamp(20px,3vw,48px)) 0 calc(-1 * clamp(20px,3vw,48px)) 112px;opacity:calc(.25 + .75 * clamp(0,(var(--p,1) - .7)/.12,1))}
.s2-end .qcard{order:-1}
.s2-end{align-items:center}
.qacts{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.qacts .cap{margin-left:4px}
.s2-end>div{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:14px}
.s2-end h3{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(30px,3.6vw,52px);line-height:1.02;letter-spacing:-.035em}
.qcard{flex:1.2 1 420px;min-width:0;background:var(--paper);border:1px solid rgba(0,0,0,.32);border-radius:14px;padding:18px 18px 18px 24px;display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden}
.qcard::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--mark)}
.qcard .draft{background:var(--bg);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:6px}
.qcard .draft span{font-size:12px;font-weight:600;color:var(--g2)}
.qcard .draft p{margin:0;font-size:15px}
.whohead{display:flex;align-items:center;gap:10px}
.whohead div{display:flex;flex-direction:column;line-height:1.3}
.whohead b{font-size:14px}
.whohead span{font-size:12px;color:var(--g2)}

/* s3 demo */
.s3{display:flex;flex-wrap:wrap;gap:40px clamp(32px,4.5vw,72px);align-items:flex-start}
.s3-l{flex:1 1 400px;min-width:0;display:flex;flex-direction:column;gap:22px}
.s3-l form{display:flex;flex-direction:column;gap:8px}
.inrow{display:flex;gap:8px;flex-wrap:wrap}
.inrow input{flex:1 1 200px;min-width:0;height:48px;box-sizing:border-box;padding:0 14px;border-radius:10px;border:1.5px solid var(--ink);background:var(--paper);font-size:16px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{height:44px;padding:0 16px;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:500 14px var(--body);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.note{display:flex;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:14px;color:var(--g1)}
.note svg{flex:none;margin-top:2px}
.s3-foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;padding-top:18px;border-top:1px solid var(--line)}
.panel{flex:1.25 1 480px;min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.panel-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:14px 18px;border-bottom:1px solid var(--hair)}
.panel-h .small{font-size:12px;color:var(--g2);border:1px solid var(--line);border-radius:6px;padding:0 6px}
.panel-h .cnt{margin-left:auto;font-size:13px;color:var(--g1)}
.dpost{position:relative;padding:14px 18px 14px 22px;border-bottom:1px solid var(--hair);display:flex;gap:12px;--d:var(--q,1)}
.dpost:not(.sel){opacity:calc(1 - .2 * var(--q,1))}
.dpost.sel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:calc(6px * var(--q,1));background:var(--mark)}
.dpost>div{min-width:0;flex:1;display:flex;flex-direction:column;gap:6px}
.dpost .who{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px}
.dpost .who .t{font-size:12px;color:var(--g2)}
.dpost .who .tag{margin-left:auto}
.dpost p{margin:0;font-size:15px;color:var(--g1)}
.dpost .why{font-size:13px;color:var(--g1)}
.dpost .why b{color:var(--ink)}

/* s4 */
.s4-grid{display:flex;flex-wrap:wrap;gap:32px clamp(32px,4vw,64px);align-items:flex-start}
.s4-main{flex:1.6 1 560px;min-width:0}
.step-h{display:flex;align-items:baseline;gap:12px;padding-bottom:12px;font-size:14px;color:var(--g1)}
.step-h b{font-family:var(--display);color:var(--ink)}
.step{border-top:2px solid var(--ink);padding:20px 0 28px;display:flex;flex-direction:column;gap:14px}
.quote{margin:0;font-family:var(--display);font-weight:500;font-size:clamp(24px,2.7vw,40px);line-height:1.22;letter-spacing:-.02em;color:var(--g1)}
.typed{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:18px 20px;min-height:150px;font-size:clamp(16px,1.3vw,18px);line-height:1.6}
.caret{display:inline-block;width:2px;height:1.1em;vertical-align:-.18em;margin-left:1px;background:var(--ink)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.s4-aside{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:20px}
.s4-aside h3{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(24px,2.2vw,32px);line-height:1.1;letter-spacing:-.03em}
.s4-aside ol{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:14px;font-size:15px;color:var(--g1)}
.s4-aside li{display:flex;gap:12px}
.s4-aside li b{flex:none;color:var(--ink);font-family:var(--display)}
.dont{border:1px dashed rgba(0,0,0,.32);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.toast{font-size:14px;color:var(--ok);font-weight:600;min-height:22px}

/* s5 */
.s5-title{margin:0;font-family:var(--display);font-weight:800;font-size:clamp(44px,8.4vw,136px);line-height:.92;letter-spacing:-.05em}
.s5-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1fr);grid-template-areas:"l p r";gap:28px clamp(24px,3vw,48px);align-items:start}
.s5-l{grid-area:l;display:flex;flex-direction:column;gap:28px;padding-top:24px}
.s5-r{grid-area:r;display:flex;flex-direction:column;gap:28px;padding-top:160px}
.s5-post{grid-area:p;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:clamp(18px,2vw,28px);display:flex;flex-direction:column;gap:14px}
.s5-post .txt{display:flex;flex-direction:column;gap:12px;font-size:clamp(17px,1.45vw,20px);line-height:1.55;color:var(--g1)}
.s5-post .txt p{margin:0}
.num{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:3px;border-radius:50%;background:var(--ink);color:var(--paper);font-size:11px;font-weight:700;vertical-align:.4em}
.mnote{border-top:2px solid var(--ink);padding-top:12px;display:flex;flex-direction:column;gap:6px;opacity:calc(.35 + .65 * var(--d,1))}
.mnote .h{display:flex;align-items:center;gap:10px}
.mnote .h span{flex:none;width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--paper);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}
.mnote .h b{font-family:var(--display);font-size:20px;letter-spacing:-.02em}
.mnote p{margin:0;font-size:15px;color:var(--g1)}
.apply{display:flex;flex-wrap:wrap;gap:16px 40px;align-items:baseline;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:clamp(18px,2vw,28px)}
.apply b{flex:0 1 280px;font-family:var(--display);font-size:clamp(20px,1.8vw,26px);line-height:1.15;letter-spacing:-.02em}
.apply p{flex:1 1 420px;min-width:0;margin:0;color:var(--g1)}
@media (max-width:980px){
  .s5-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"p" "l" "r"}
  .s5-l,.s5-r{padding-top:0}
}

/* s6 lime */
.lime{background:var(--mark);color:var(--ink);padding-block:clamp(72px,10vw,160px) clamp(56px,7vw,112px)}
.lime h2{margin:0;font-family:var(--display);font-weight:800;font-size:clamp(52px,11.2vw,184px);line-height:.88;letter-spacing:-.055em}
.lime-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:32px 48px}
.stopimg{display:inline-flex;align-items:center;gap:clamp(14px,1.6vw,24px);height:clamp(72px,8vw,120px);padding:0 clamp(26px,3vw,48px) 0 clamp(20px,2.4vw,36px);border-radius:14px;background:var(--ink);color:var(--paper);transform:rotate(-2deg)}
.stopimg i{display:inline-block;width:clamp(22px,2.6vw,36px);aspect-ratio:1;border-radius:6px;background:var(--paper)}
.stopimg b{font-family:var(--display);font-size:clamp(32px,4vw,60px);letter-spacing:-.03em}
.lime-txt{flex:0 1 480px;display:flex;flex-direction:column;gap:10px}
.lime-txt p{margin:0}
.lime-txt .big{font-size:clamp(18px,1.6vw,22px);font-weight:600;line-height:1.35}

/* install */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:0 32px;counter-reset:s}
.steps li{border-top:2px solid var(--ink);padding:18px 0 8px;display:flex;flex-direction:column;gap:8px}
.steps li b.n{font-family:var(--display);font-size:clamp(48px,5vw,72px);line-height:.9;letter-spacing:-.04em}
.steps li h3{margin:0;font-size:20px;font-weight:700}
.steps li p{margin:0;color:var(--g1)}

/* pricing */
.price{display:flex;flex-wrap:wrap;gap:28px clamp(32px,5vw,80px);align-items:flex-start}
.price-l{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:16px}
.plan{flex:1 1 420px;min-width:0;background:var(--paper);border:1.5px solid var(--ink);border-radius:14px;padding:clamp(20px,2.4vw,32px);display:flex;flex-direction:column;gap:18px}
.plan .pro{font-family:var(--display);font-weight:800;font-size:72px;line-height:.9;letter-spacing:-.05em}
.checks{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font-size:15px;color:var(--g1)}
.checks li{display:flex;gap:10px}
.checks svg{flex:none;margin-top:2px}

/* faq */
.faq{display:flex;flex-direction:column;border-top:1px solid var(--line);max-width:900px}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;font-size:clamp(17px,1.5vw,20px);font-weight:600}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--display);font-size:28px;font-weight:500;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq details p{margin:0 0 20px;color:var(--g1);max-width:680px}

/* s7 night */
.night{background:var(--night);color:var(--nightfg);padding-block:clamp(64px,8vw,128px)}
.night a{color:var(--nightfg)}
.s7{display:flex;flex-wrap:wrap;gap:48px clamp(32px,5vw,80px);align-items:center}
.s7-l{flex:1.2 1 520px;min-width:0;display:flex;flex-direction:column;gap:clamp(28px,3vw,44px)}
.s7 h2{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(42px,6vw,96px);line-height:.98;letter-spacing:-.045em}
.btn-inv{background:var(--nightfg);color:var(--ink)} .btn-inv:hover{background:#FFFFFF;color:var(--ink)}
.s7 figure{flex:1 1 400px;min-width:0;margin:0;display:flex;flex-direction:column;gap:10px}
.nstage{position:relative;height:620px;overflow:hidden;border-radius:14px;border:1px solid var(--nightline)}
.ntrack{display:flex;flex-direction:column;gap:8px;padding:8px;transform:translateY(calc(var(--p,1) * -120px))}
.npost{position:relative;overflow:hidden;background:var(--night2);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:14px 16px 14px 20px;display:flex;flex-direction:column;gap:6px}
.npost:not(.sel){opacity:calc(1 - .45 * var(--d))}
.npost{--d:clamp(0, (var(--p,1) - .55) / .35, 1)}
.npost.sel{border-color:rgba(255,255,255,.36)}
.npost.sel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:calc(6px * var(--d));background:var(--mark)}
.npost .who{display:flex;align-items:center;gap:8px;font-size:14px;flex-wrap:wrap}
.npost .who .t{font-size:12px;color:var(--nightmut)}
.npost .who .tag{margin-left:auto}
.npost p{margin:0;font-size:15px;color:#C7C7CC}
.npost .mkd{color:#C7C7CC;transition:color .2s}.night.lit .npost .mkd{color:var(--ink)}
.night .cap{color:var(--nightmut)}
@media (max-width:760px){.nstage{height:480px}.s7 .btn{width:100%;height:48px}}
footer{background:var(--night);color:var(--nightmut);border-top:1px solid var(--nightline);padding-block:32px 40px;font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;gap:16px 32px;align-items:center}
footer a{color:var(--nightfg)}

/* app views */
.appv{min-height:70vh;padding-block:clamp(24px,4vw,56px)}
.auth{display:flex;flex-wrap:wrap;align-items:center;gap:40px clamp(32px,6vw,96px);max-width:1200px;margin:0 auto}
.auth-l{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:20px}
.auth-l .huge{margin:0;font-family:var(--display);font-weight:800;font-size:clamp(44px,6.4vw,96px);line-height:.94;letter-spacing:-.05em}
.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:clamp(20px,2.4vw,32px);box-sizing:border-box}
.auth-card{flex:0 1 440px;min-width:0;display:flex;flex-direction:column;gap:20px}
.seg{display:flex;gap:4px;background:var(--bg);border:1px solid var(--hair);border-radius:12px;padding:4px}
.seg button{flex:1;min-height:44px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--ink);font:600 14px var(--body);cursor:pointer}
.seg button[aria-pressed="true"]{background:var(--paper);border-color:var(--line)}
.field{display:flex;flex-direction:column;gap:6px}
.field input{height:48px;box-sizing:border-box;padding:0 14px;border-radius:10px;border:1.5px solid var(--ink);background:var(--paper);font-size:16px}
.field input[aria-invalid="true"]{border-color:#DC2626}
.err{font-size:13px;color:var(--err);min-height:0}
.check{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--g1);cursor:pointer;min-height:44px}
.check input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--ink)}
.alert{display:flex;gap:10px;border-radius:10px;padding:12px 14px;font-size:14px}
.alert.e{background:var(--errbg);color:#7F1D1D}
.alert.w{background:var(--warnbg);color:#78350F}
code.k{font:600 13px var(--mono);background:var(--paper);padding:1px 6px;border-radius:4px}
.icon-box{width:48px;height:48px;border-radius:12px;background:var(--ink);color:var(--paper);display:inline-flex;align-items:center;justify-content:center}

.acc-h{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 20px;margin-bottom:clamp(24px,3vw,36px)}
.acc-who{display:flex;flex-direction:column;gap:10px;min-width:0}
.acc-mail{font-size:15px;color:var(--g1);overflow-wrap:anywhere}
.acc-mail b{color:var(--ink);font-weight:600}
#signout{gap:8px}
.acc-side .dl{flex-direction:column;align-items:stretch;gap:16px}
.acc-side .dl>div{flex:none!important}
.acc-side .dl .btn{width:100%}
.acc-h h1{margin:0;font-family:var(--display);font-weight:800;font-size:clamp(36px,4.6vw,64px);line-height:1;letter-spacing:-.045em}
.acc{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start;max-width:1200px}
.acc-main{flex:1.5 1 540px;min-width:0;display:flex;flex-direction:column;gap:20px}
.acc-side{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:20px}
.status{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:8px;font-size:13px;font-weight:600}
.status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.st-n{background:var(--chip);color:var(--g1)} .st-g{background:var(--okbg);color:var(--ok)} .st-a{background:var(--warnbg);color:var(--warn)} .st-r{background:var(--errbg);color:var(--err)}
.subrow{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 32px}
.subrow .pro{font-family:var(--display);font-weight:800;font-size:56px;line-height:.9;letter-spacing:-.05em}
.kv{display:flex;flex-direction:column;gap:2px;padding-bottom:4px}
.kv span{font-size:12px;color:var(--g2)}
.kv b{font-size:16px}
.dev{display:inline-flex;gap:3px}.dev i{width:22px;height:8px;border-radius:2px;background:#E4E4E8}.dev i.on{background:var(--ink)}
.dl{background:var(--night);color:var(--nightfg);border-radius:14px;padding:clamp(20px,2.4vw,28px);display:flex;flex-wrap:wrap;align-items:center;gap:20px 32px}
.dl h2{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(24px,2.4vw,32px);line-height:1.1;letter-spacing:-.03em}
.dl p{margin:0;color:#C7C7CC;font-size:15px}
.dl a.link{color:var(--nightfg);font-size:14px;min-height:44px;display:inline-flex;align-items:center}
.locked{border:1.5px dashed rgba(0,0,0,.32);border-radius:14px;padding:clamp(18px,2vw,24px);display:flex;align-items:flex-start;gap:14px}
.locked .ic{flex:none;width:40px;height:40px;border-radius:10px;background:var(--chip);color:var(--g1);display:inline-flex;align-items:center;justify-content:center}
.keyplate{background:var(--mark);color:var(--ink);border-radius:6px 14px 8px 12px / 12px 6px 14px 8px;padding:16px 18px;display:flex;flex-direction:column;gap:10px}
.keyplate code{flex:1 1 240px;min-width:0;font:600 clamp(17px,1.6vw,21px) var(--mono);letter-spacing:.04em;word-break:break-all}
.linkbtn{background:none;border:0;padding:0 4px;min-height:44px;color:var(--g1);font:500 14px var(--body);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.linkbtn[disabled]{color:var(--g2);cursor:not-allowed}
.demo-strip{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;color:var(--g1);background:var(--chip);border-radius:10px;padding:8px 12px;margin-bottom:20px;max-width:1200px;box-sizing:border-box}
.demo-strip select{height:36px;border-radius:8px;border:1px solid var(--line);background:var(--paper);padding:0 8px;font-size:13px}

@media (prefers-reduced-motion: reduce){
  .track{animation:none}
  .h1 .draw::before{animation:none;transform:none}
}


/* v2 additions: language switch, capability overview, panel tour, programs, modes, audiences, models, limits */
.lang{display:inline-flex;gap:2px;background:var(--bg);border:1px solid var(--hair);border-radius:10px;padding:3px}
.lang{flex:none}
.lang button{min-width:40px;height:36px;border:0;border-radius:7px;background:transparent;color:var(--g1);font:600 13px var(--body);cursor:pointer}
.lang button[aria-pressed="true"]{background:var(--paper);color:var(--ink);box-shadow:0 0 0 1px var(--line)}
@media (max-width:860px){.lang button{min-width:36px;height:32px}.site-h > .wrap{gap:12px}.logo{min-width:0}}
@media (max-width:520px){.h-right .signin{display:none}.logo b{font-size:18px}}
.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 48px}
.sec-head h2{flex:1 1 560px;min-width:0}
.sec-head p{flex:0 1 420px;margin:0;color:var(--g1)}

/* capability overview */
.caps{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:12px}
.capc{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px 22px 20px;display:flex;flex-direction:column;gap:10px;min-height:180px;box-sizing:border-box}
.capc .ic{width:44px;height:44px;border-radius:10px;background:var(--bg);border:1px solid var(--hair);display:inline-flex;align-items:center;justify-content:center}
.capc h3{margin:6px 0 0;font-family:var(--display);font-size:22px;line-height:1.15;letter-spacing:-.02em}
.capc p{margin:0;font-size:15px;color:var(--g1)}
.capc .k{margin-top:auto;padding-top:8px;font-size:13px;color:var(--g2)}
.capc.main{border-color:rgba(0,0,0,.32)}
.capc.main::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:5px;border-radius:0 3px 3px 0;background:var(--mark)}
.capc.main .ic{background:var(--mark);border-color:transparent}

/* panel tour */
.tour{display:flex;flex-wrap:wrap;gap:32px clamp(32px,5vw,80px);align-items:flex-start}
.tour-l{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:8px}
.tour-tab{display:flex;gap:14px;align-items:flex-start;text-align:left;width:100%;padding:16px 18px;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--ink);font:inherit;cursor:pointer}
.tour-tab:hover{background:var(--bg)}
.tour-tab[aria-selected="true"]{background:var(--paper);border-color:var(--ink)}
.tour-tab .ti{flex:none;width:36px;height:36px;border-radius:9px;background:var(--chip);display:inline-flex;align-items:center;justify-content:center}
.tour-tab[aria-selected="true"] .ti{background:var(--mark)}
.tour-tab b{display:block;font-size:17px}
.tour-tab span.d{display:block;font-size:14px;color:var(--g1);margin-top:2px}
.tour-r{flex:0 1 420px;min-width:0;margin:0;display:flex;flex-direction:column;gap:10px}
.sp{width:100%;max-width:400px;height:600px;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;font-size:13px;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.sp-h{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--hair)}
.sp-h .lg{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:-.02em}
.sp-h .lg span{background:var(--mark);padding:0 2px;border-radius:2px 6px 3px 5px}
.sp-h .mdl{margin-left:auto;height:28px;display:inline-flex;align-items:center;gap:4px;padding:0 8px;border:1px solid var(--line);border-radius:8px;font-size:12px;color:var(--g1)}
.sp-h .sq{width:28px;height:28px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;justify-content:center}
.sp-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:6px;border-bottom:1px solid var(--hair)}
.sp-tabs span{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:8px;font-size:10.5px;color:var(--g1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sp-tabs span.on{background:#E6F2C4;color:var(--ink);font-weight:600}
.sp-b{flex:1;min-height:0;overflow:hidden;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--bg)}
.bub{max-width:86%;padding:9px 11px;border-radius:12px;line-height:1.45}
.bub.u{align-self:flex-end;background:var(--ink);color:var(--paper);border-bottom-right-radius:4px}
.bub.a{align-self:flex-start;background:var(--paper);border:1px solid var(--hair);border-bottom-left-radius:4px}
.sp-in{margin-top:auto;display:flex;align-items:center;gap:6px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:8px 8px 8px 12px;color:var(--g2)}
.sp-in i{margin-left:auto;width:28px;height:28px;border-radius:8px;background:var(--ink);display:inline-block}
.sp-card{background:var(--paper);border:1px solid var(--hair);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px}
.sp-row{display:flex;align-items:center;gap:8px}
.sp-chip{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:6px;font-size:11px;font-weight:600;background:var(--okbg);color:var(--ok)}
.sp-chip::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.sp-cnt{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.sp-cnt div{background:var(--bg);border-radius:8px;padding:6px 8px;display:flex;flex-direction:column}
.sp-cnt span{font-size:10.5px;color:var(--g2)} .sp-cnt b{font-family:var(--display);font-size:18px}
.sp-stop{height:34px;border-radius:9px;border:1.5px solid var(--ink);background:var(--paper);display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600}
.sp-stop::before{content:"";width:10px;height:10px;border-radius:2px;background:#DC2626}
.sp-log{display:flex;flex-direction:column;gap:0}
.sp-log div{display:flex;gap:8px;padding:6px 0;border-top:1px solid var(--hair);font-size:12px;color:var(--g1)}
.sp-log div b{flex:none;font-weight:500;color:var(--g2);font-variant-numeric:tabular-nums}
.sp-tbl{background:var(--paper);border:1px solid var(--hair);border-radius:10px;overflow:hidden}
.sp-tbl div{display:grid;grid-template-columns:1fr 44px 44px;gap:6px;padding:7px 10px;border-top:1px solid var(--hair);font-size:12px}
.sp-tbl div:first-child{border-top:0;background:var(--bg);font-weight:600;color:var(--g1);font-size:11px}
.sp-tbl div span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sp-tbl div span+span{text-align:right;font-variant-numeric:tabular-nums}
.sp-post{position:relative;background:var(--paper);border:1px solid var(--hair);border-radius:10px;padding:10px 10px 10px 14px;display:flex;flex-direction:column;gap:6px}
.sp-post.sel::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:4px;border-radius:0 3px 3px 0;background:var(--mark)}
.sp-inline{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px;border:1px dashed rgba(0,0,0,.28);border-radius:9px;background:var(--bg)}
.sp-inline .b{height:26px;padding:0 9px;border-radius:7px;display:inline-flex;align-items:center;font-size:11.5px;font-weight:600;border:1px solid var(--line);background:var(--paper)}
.sp-inline .b.p{background:var(--ink);color:var(--paper);border-color:var(--ink);margin-left:auto}
.sp-hist{display:flex;flex-direction:column;gap:6px}
.sp-hist div{background:var(--paper);border:1px solid var(--hair);border-radius:10px;padding:9px 11px;display:flex;flex-direction:column;gap:2px}
.sp-hist span{font-size:11px;color:var(--g2)}
@media (max-width:860px){.sp{height:540px}}

/* programs */
.progs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:12px}
.pgroup{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:14px}
.pgroup h3{margin:0;font-family:var(--display);font-size:24px;letter-spacing:-.02em}
.pgroup>p{margin:0;font-size:14px;color:var(--g1)}
.plist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.plist li{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--hair)}
.plist li img,.plist li svg{flex:none;width:28px;height:28px;margin-top:1px}
.plist li b{display:block;font-size:15px}
.plist li span{display:block;font-size:13px;color:var(--g1);margin-top:1px}
.pflow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.pflow .st{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 12px;border-radius:9px;background:var(--bg);font-size:14px;font-weight:500}
.pflow .st i{font-style:normal;width:20px;height:20px;border-radius:50%;background:var(--ink);color:var(--paper);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}
.pflow .st.last{background:var(--mark)}
.pflow .ar{color:var(--g2)}

/* modes */
.modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:12px}
.mode{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:clamp(20px,2.4vw,30px);display:flex;flex-direction:column;gap:14px}
.mode.auto{border:1.5px solid var(--ink)}
.mode .mh{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mode .mh b{font-family:var(--display);font-size:clamp(26px,2.6vw,36px);letter-spacing:-.03em;line-height:1}
.mode .pill{height:26px;padding:0 9px;border-radius:7px;display:inline-flex;align-items:center;font-size:12px;font-weight:600;background:var(--chip);color:var(--g1)}
.mode p{margin:0;color:var(--g1)}
.mode ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:9px;font-size:15px}
.mode li{display:flex;gap:10px}
.mode li svg{flex:none;margin-top:3px}
.confirm{background:var(--bg);border:1px solid var(--hair);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;font-size:14px}
.confirm .r{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--hair);padding-top:8px}
.confirm .r:first-of-type{border-top:0;padding-top:0}
.confirm .r span{color:var(--g1)}

/* audiences */
.aud{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:0 32px}
.aud>div{border-top:2px solid var(--ink);padding:18px 0 8px;display:flex;flex-direction:column;gap:10px}
.aud h3{margin:0;font-family:var(--display);font-size:clamp(24px,2.4vw,32px);line-height:1.08;letter-spacing:-.03em}
.aud p{margin:0;color:var(--g1)}
.aud .use{margin-top:auto;font-size:14px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.aud .use b{display:block;font-size:12px;color:var(--g2);font-weight:600;margin-bottom:2px}

/* models */
.models{display:flex;flex-wrap:wrap;gap:24px clamp(32px,5vw,80px);align-items:center}
.models>div{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:14px}
.mrows{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:8px}
.mrow{display:flex;align-items:center;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.mrow b{font-size:15px}
.mrow span{font-size:13px;color:var(--g1)}
.mrow .sel{margin-left:auto;flex:none;height:32px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;background:var(--bg)}

.pchips{display:flex;flex-wrap:wrap;gap:8px}
.pchips span{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 10px;border-radius:10px;background:var(--paper);border:1px solid var(--line);font-size:14px;font-weight:500}
.pchips span svg{width:20px;height:20px}
.pchips em{font-style:normal;font-size:13px;color:var(--g2);align-self:center;margin-left:4px}
.caps5{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.caps5 .capc.main{grid-column:span 2}
.caps5 .capc.main h3{font-size:clamp(26px,2.6vw,36px)}
.caps5 .capc.main p{font-size:16px;max-width:560px}
@media (max-width:900px){.caps5{grid-template-columns:minmax(0,1fr)}.caps5 .capc.main{grid-column:auto}}
.night .btn-inv,.night .btn-inv:hover{color:var(--ink)}
/* limits */
.limits{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:12px}
.lim{border:1.5px dashed rgba(0,0,0,.32);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:6px}
.lim b{font-size:17px}
.lim p{margin:0;font-size:14px;color:var(--g1)}
.lim .x{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:1.5px solid var(--ink);font-weight:700;font-size:14px;margin-bottom:4px}

/* pricing tiers */
.tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch;padding-top:12px}
.tier{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:26px 24px 24px;display:flex;flex-direction:column;gap:6px}
.tier.rec{border:1.5px solid var(--ink)}
.tier .rtag{position:absolute;top:-12px;left:22px;background:var(--mark);color:var(--ink);font-size:12px;font-weight:700;padding:3px 9px;border-radius:4px 9px 5px 8px}
.tier .tn{font-size:15px;font-weight:600;color:var(--g1)}
.tier .tp b{font-family:var(--display);font-weight:800;font-size:clamp(48px,4.6vw,64px);line-height:1;letter-spacing:-.045em}
.tier .tm{font-size:14px;color:var(--g1)}
.tier .tsv{align-self:flex-start;margin:6px 0 14px;font-size:12px;font-weight:700;color:var(--ok);background:var(--okbg);border-radius:6px;padding:3px 8px}
.tier .tsv-none{background:transparent}
.tier .btn{margin-top:auto;width:100%}
.incl{display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--hair);padding-top:20px}
.incl .checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:10px 32px}
@media (max-width:860px){.tiers{grid-template-columns:minmax(0,1fr);gap:20px}}
.pick{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pick label{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer;min-height:44px;box-sizing:border-box}
.pick label:has(input:checked){border:1.5px solid var(--ink);background:var(--bg)}
.pick input{flex:none;width:18px;height:18px;margin:0;accent-color:var(--ink)}
.pick span{display:flex;flex-direction:column;line-height:1.3;min-width:0}
.pick span b{font-size:15px} .pick span small{font-size:12px;color:var(--g1)}
.pick em{margin-left:auto;font-style:normal;font-family:var(--display);font-weight:700;font-size:20px}

/* centered main nav on desktop */
@media (min-width:861px){.site-h > .wrap{position:relative}.site-h .nav{position:absolute;left:50%;transform:translateX(-50%)}}

#dl-note:empty{display:none}
