/* BNB Portfolio design system. Bone + ink + one accent (racing green). See README design notes. */

:root{
  --bg:#F3EFE6; --surface:#FBF9F4; --inset:#ECE6DA;
  --ink:#14171A; --ink-2:#43484D; --ink-3:#5F6367;
  --rule:#D9D1C1; --rule-2:#BFB5A2;
  --accent:#1F4434; --accent-2:#163326; --accent-tint:#E2E9E2;
  --night:#0F1B16; --night-2:#16251E; --night-ink:#EEE9DE; --night-ink-2:#B3BBB4; --night-rule:#2A3A32;
  --ok:#2C6A45; --ok-bg:#E1ECE3; --warn:#85570A; --warn-bg:#F3E7CF; --bad:#982B2B; --bad-bg:#F4DEDB;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Instrument Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --w:1180px; --pad:20px; --r:3px;
}
@media (min-width:760px){:root{--pad:40px}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.55 var(--sans);font-feature-settings:"kern";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg,video{display:block;max-width:100%}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--bg);padding:10px 14px;z-index:99}
.skip:focus{left:8px;top:8px}
.num,.tnum,table{font-variant-numeric:tabular-nums lining-nums}
.wrap{max-width:var(--w);margin:0 auto;padding:0 var(--pad)}
.narrow{max-width:760px}

/* Type */
h1,h2,h3,.display{font-family:var(--serif);font-weight:400;letter-spacing:-.015em;margin:0;color:var(--ink);font-optical-sizing:auto}
h1,.h1{font-size:clamp(2.35rem,8.4vw,4.75rem);line-height:1.02;letter-spacing:-.025em;font-weight:360}
h2,.h2{font-size:clamp(1.85rem,5vw,2.9rem);line-height:1.06;letter-spacing:-.02em}
h3,.h3{font-size:1.4rem;line-height:1.2}
h1 em,h2 em{font-style:italic;font-weight:360}
p{margin:0 0 1em}
.lede{font-size:1.15rem;line-height:1.5;color:var(--ink-2);max-width:40ch}
@media (min-width:760px){.lede{font-size:1.3rem}}
.eyebrow{font:600 .74rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 18px;display:flex;gap:10px;align-items:center}
.eyebrow::before{content:"";width:22px;height:1px;background:currentColor}
.eyebrow.plain::before{display:none}
.muted{color:var(--ink-2)}
.small{font-size:.875rem;line-height:1.5}
.xs{font-size:.78rem;line-height:1.45;color:var(--ink-3)}
.label{font:600 .7rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.serif-num{font-family:var(--serif);font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.02em}

/* Header */
.top{position:sticky;top:0;z-index:20;background:rgba(243,239,230,.94);backdrop-filter:saturate(1.2) blur(8px);-webkit-backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--rule)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:20px}
.brand{display:flex;align-items:baseline;gap:10px;text-decoration:none;color:var(--ink)}
.brand .mark{font-family:var(--serif);font-size:1.32rem;letter-spacing:-.01em;font-weight:450}
.brand .mark b{font-weight:600;letter-spacing:.02em}
.brand .sub{font:600 .64rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);padding-left:10px;border-left:1px solid var(--rule-2)}
.nav{display:none;gap:4px;align-items:center}
.nav a{font-size:.92rem;text-decoration:none;padding:10px 12px;color:var(--ink-2)}
.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}
.nav a[aria-current=page]{box-shadow:inset 0 -1px 0 var(--ink)}
@media (min-width:1000px){.nav{display:flex}.menu{display:none}}
.menu summary{list-style:none;cursor:pointer;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:flex-end;font:600 .78rem var(--sans);letter-spacing:.12em;text-transform:uppercase}
.menu summary::-webkit-details-marker{display:none}
.menu[open] .sheet{display:block}
.sheet{display:none;position:absolute;left:0;right:0;top:64px;background:var(--bg);border-bottom:1px solid var(--rule);padding:8px var(--pad) 24px;box-shadow:0 20px 40px -20px rgba(20,23,26,.25)}
.sheet a{display:flex;justify-content:space-between;align-items:center;min-height:52px;border-bottom:1px solid var(--rule);text-decoration:none;font-family:var(--serif);font-size:1.3rem}
.sheet a span{font:400 .8rem var(--sans);color:var(--ink-3)}
.sheet .btn{margin-top:18px;width:100%}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:var(--r);font:600 .98rem/1 var(--sans);letter-spacing:.005em;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn-primary{background:var(--accent);color:#F6F2EA}
.btn-primary:hover{background:var(--accent-2);color:#fff}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-ghost:hover{background:var(--ink);color:var(--bg)}
.btn-light{background:var(--night-ink);color:var(--night)}
.btn-light:hover{background:#fff;color:var(--night)}
.btn-sm{min-height:44px;padding:0 16px;font-size:.88rem}
.btn .arr{font-family:var(--serif);font-size:1.15em;line-height:0;transform:translateY(-1px)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.btn-row .btn{flex:1 1 220px}
@media (min-width:760px){.btn-row .btn{flex:0 0 auto}}
.link{font-weight:600;text-decoration:underline;text-decoration-color:var(--rule-2)}
.link:hover{text-decoration-color:currentColor}

/* Sections */
.sec{padding:72px 0;border-top:1px solid var(--rule)}
.sec:first-child{border-top:0}
@media (min-width:760px){.sec{padding:112px 0}}
.sec.tight{padding:56px 0}
.split{display:grid;gap:28px}
@media (min-width:900px){.split{grid-template-columns:260px 1fr;gap:64px}.split.even{grid-template-columns:1fr 1fr}}
.idx{font:600 .72rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);display:flex;gap:12px;align-items:baseline}
.idx b{font-family:var(--serif);font-weight:400;font-size:1rem;letter-spacing:0;color:var(--accent)}
.night{background:var(--night);color:var(--night-ink)}
.night h1,.night h2,.night h3{color:var(--night-ink)}
.night .muted,.night .lede{color:var(--night-ink-2)}
.night .eyebrow{color:#9FC2AE}
.night .idx{color:var(--night-ink-2)}.night .idx b{color:#9FC2AE}
.night .rule,.night .rows>*{border-color:var(--night-rule)}
.night a:hover{color:#fff}

/* Hero */
.hero{padding:44px 0 56px}
@media (min-width:760px){.hero{padding:88px 0 96px}}
.hero h1{max-width:15ch}
.hero .lede{margin-top:22px}
.hero-grid{display:grid;gap:36px}
@media (min-width:1000px){.hero-grid{grid-template-columns:1.02fr 1fr;gap:64px;align-items:end}}

/* VSL */
.vsl{position:relative;aspect-ratio:16/9;background:var(--night);color:var(--night-ink);border-radius:var(--r);overflow:hidden;isolation:isolate}
.vsl video,.vsl iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vsl .poster{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(16px,3.4vw,30px);background:
  radial-gradient(120% 90% at 85% 10%,rgba(46,90,70,.55),transparent 60%),linear-gradient(180deg,#132219,#0B1511)}
.vsl .poster::after{content:"";position:absolute;inset:clamp(10px,2vw,16px);border:1px solid rgba(238,233,222,.14);pointer-events:none}
.vsl .ptop{display:flex;justify-content:space-between;align-items:flex-start;font:600 .66rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--night-ink-2);position:relative;z-index:1}
.vsl .pmid{display:flex;align-items:center;gap:clamp(14px,3vw,24px);position:relative;z-index:1}
.vsl .play{flex:none;width:clamp(56px,11vw,84px);height:clamp(56px,11vw,84px);border-radius:50%;border:1px solid rgba(238,233,222,.6);display:grid;place-items:center;background:rgba(238,233,222,.06);cursor:pointer;color:var(--night-ink);transition:background .2s,transform .2s}
.vsl .play:hover{background:rgba(238,233,222,.16);transform:scale(1.03)}
.vsl .play svg{width:30%;height:30%;margin-left:6%}
.vsl .ptitle{font-family:var(--serif);font-size:clamp(1.3rem,4.4vw,2.2rem);line-height:1.05;letter-spacing:-.01em}
.vsl .ptitle i{color:#B7D3C3}
.vsl .pbot{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;position:relative;z-index:1;font-size:.8rem;color:var(--night-ink-2)}
.vsl .bar{height:2px;background:rgba(238,233,222,.18);flex:1;align-self:center;margin:0 14px;max-width:240px}
.vsl-note{display:flex;justify-content:space-between;gap:12px;margin-top:12px}

/* Stats */
.stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--rule);margin-top:36px}
.stats>div{padding:18px 0 0}
.stats>div+div{padding-left:20px;border-left:1px solid var(--rule)}
.stat-v{font-family:var(--serif);font-size:clamp(2.2rem,8vw,3.3rem);line-height:1;letter-spacing:-.03em;font-variant-numeric:lining-nums}
.stat-l{font-size:.86rem;color:var(--ink-2);margin-top:8px}

/* Rows: label left, value right (price lists, specs) */
.rows{border-top:1px solid var(--ink)}
.rows>*{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--rule)}
.rows .k{font-weight:500}
.rows .k small{display:block;font-weight:400;font-size:.86rem;color:var(--ink-2);margin-top:3px;line-height:1.45}
.rows .v{font-family:var(--serif);font-size:1.35rem;letter-spacing:-.01em;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums lining-nums}
.rows .v small{display:block;font:400 .75rem var(--sans);color:var(--ink-3);letter-spacing:0}
.rows .total{border-bottom:1px solid var(--ink)}
.rows .total .k{font-weight:600}
.rows .total .v{font-size:1.8rem}
.night .rows{border-top-color:var(--night-ink)}
.night .rows .k small,.night .rows .v small{color:var(--night-ink-2)}

/* Why now figures */
.figs{display:grid;gap:0;border-top:1px solid var(--rule)}
.figs>div{padding:22px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:baseline}
@media (min-width:760px){.figs{grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--rule)}.figs>div{display:block;padding:28px 28px 28px 0;border-bottom:0}.figs>div+div{padding-left:28px;border-left:1px solid var(--rule)}}
.fig-v{font-family:var(--serif);font-size:2.6rem;line-height:1;letter-spacing:-.03em}
@media (min-width:760px){.fig-v{font-size:3.4rem;margin-bottom:14px}}
.fig-t{color:var(--ink-2);font-size:.98rem}

/* Steps */
.steps{list-style:none;margin:0;padding:0;counter-reset:s;border-top:1px solid var(--ink)}
.steps li{counter-increment:s;display:grid;grid-template-columns:44px 1fr auto;gap:14px;padding:20px 0;border-bottom:1px solid var(--rule);align-items:baseline}
.steps li::before{content:counter(s,decimal-leading-zero);font-family:var(--serif);color:var(--accent);font-size:1.05rem}
.steps h3{font-size:1.25rem}
.steps p{margin:6px 0 0;color:var(--ink-2);font-size:.95rem}
.steps .t{font:600 .72rem/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;text-align:right}
.night .steps{border-top-color:var(--night-ink)}.night .steps li{border-color:var(--night-rule)}.night .steps p{color:var(--night-ink-2)}.night .steps li::before{color:#9FC2AE}.night .steps .t{color:var(--night-ink-2)}

/* For / not for */
.fornot{display:grid;gap:36px}
@media (min-width:760px){.fornot{grid-template-columns:1fr 1fr;gap:56px}}
.ticks{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}
.ticks li{padding:14px 0 14px 30px;border-bottom:1px solid var(--rule);position:relative}
.ticks li::before{content:"";position:absolute;left:2px;top:22px;width:12px;height:6px;border-left:1.5px solid var(--ok);border-bottom:1.5px solid var(--ok);transform:rotate(-45deg)}
.ticks.no li::before{width:12px;height:0;border-left:0;border-bottom:1.5px solid var(--bad);transform:none;top:26px}

/* Commitments list (numbered, two columns on desktop) */
.commit{list-style:none;padding:0;margin:0;display:grid;gap:0;counter-reset:c}
@media (min-width:760px){.commit{grid-template-columns:1fr 1fr;column-gap:56px}}
.commit li{counter-increment:c;padding:16px 0;border-top:1px solid var(--rule);display:grid;grid-template-columns:36px 1fr;gap:10px}
.commit li::before{content:counter(c,decimal-leading-zero);font-family:var(--serif);color:var(--accent)}
.commit b{font-weight:600}
.commit span{display:block;color:var(--ink-2);font-size:.92rem;margin-top:2px}
.night .commit li{border-color:var(--night-rule)}.night .commit span{color:var(--night-ink-2)}.night .commit li::before{color:#9FC2AE}

/* Quote / founder */
.founder{display:grid;gap:28px}
@media (min-width:900px){.founder{grid-template-columns:300px 1fr;gap:64px;align-items:start}}
.portrait{aspect-ratio:4/5;background:var(--inset);border:1px solid var(--rule);display:flex;align-items:flex-end;padding:16px;border-radius:var(--r);position:relative;overflow:hidden}
.portrait::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(20,23,26,.035) 14px 15px)}
.portrait span{position:relative;font-size:.78rem;color:var(--ink-3)}
blockquote{margin:0;font-family:var(--serif);font-size:clamp(1.5rem,4vw,2.2rem);line-height:1.2;letter-spacing:-.015em}

/* FAQ */
.faq details{border-bottom:1px solid var(--rule)}
.faq{border-top:1px solid var(--ink)}
.faq summary{list-style:none;cursor:pointer;padding:20px 40px 20px 0;font-family:var(--serif);font-size:1.25rem;line-height:1.3;position:relative;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:28px;width:12px;height:12px;border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg);top:34px}
.faq .a{padding:0 0 22px;color:var(--ink-2);max-width:62ch}

/* Callout band */
.band{border:1px solid var(--ink);padding:28px;border-radius:var(--r);display:grid;gap:18px;background:var(--surface)}
@media (min-width:760px){.band{grid-template-columns:1fr auto;align-items:center;padding:36px 40px}}
.band h3{font-size:1.6rem}
.band.green{background:var(--accent);border-color:var(--accent);color:#F2EEE5}
.band.green h3{color:#F6F2EA}.band.green .muted{color:#C9D8CE}

/* Strip (live release) */
.strip{background:var(--night);color:var(--night-ink);font-size:.86rem}
.strip .wrap{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;min-height:44px;padding-top:8px;padding-bottom:8px}
.strip a{color:var(--night-ink);text-decoration:none}
.strip .dot{width:7px;height:7px;border-radius:50%;background:#7FBF97;box-shadow:0 0 0 3px rgba(127,191,151,.18)}
.strip .meter{width:90px}

/* Badges */
.tag{display:inline-flex;align-items:center;gap:6px;font:600 .66rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;padding:6px 8px;border-radius:2px;border:1px solid var(--rule-2);color:var(--ink-2);white-space:nowrap}
.tag.ex{background:var(--accent);border-color:var(--accent);color:#F2EEE5}
.tag.std{border-color:var(--ink-2);color:var(--ink)}
.tag.fur{border-color:#7A5C2E;color:#6B4F24}
.tag.demo{border-style:dashed;color:var(--ink-3)}
.tag.ok{background:var(--ok-bg);border-color:transparent;color:var(--ok)}
.tag.warn{background:var(--warn-bg);border-color:transparent;color:var(--warn)}
.tag.bad{background:var(--bad-bg);border-color:transparent;color:var(--bad)}
.reg{display:inline-flex;align-items:center;gap:7px;font-size:.84rem;color:var(--ink-2)}
.reg i{width:8px;height:8px;border-radius:50%;background:var(--ok);flex:none}
.reg.amber i{background:#C08A1E}

/* Meter */
.meter{height:3px;background:var(--rule);position:relative;border-radius:2px;overflow:hidden}
.meter>span{position:absolute;inset:0 auto 0 0;background:var(--ink)}
.night .meter{background:var(--night-rule)}.night .meter>span{background:var(--night-ink)}

/* Board */
.board-head{padding:40px 0 24px}
@media (min-width:760px){.board-head{padding:72px 0 32px}}
.filters{display:flex;gap:8px;overflow-x:auto;padding:4px 0 16px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.filters::-webkit-scrollbar{display:none}
.chip{flex:none;display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--rule-2);border-radius:999px;font-size:.88rem;text-decoration:none;color:var(--ink-2);background:transparent;white-space:nowrap}
.chip:hover{border-color:var(--ink);color:var(--ink)}
.chip[aria-current=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.fgroup{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:12px 0;margin-bottom:28px}
.fgroup label{display:flex;flex-direction:column;gap:4px;font:600 .66rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.fgroup select{min-height:44px;font:500 .95rem var(--sans);color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--rule-2);padding:0 26px 0 0;border-radius:0;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 9px) 55%,calc(100% - 4px) 55%;background-size:5px 5px;background-repeat:no-repeat}
.fgroup .count{margin-left:auto;font-size:.86rem;color:var(--ink-2)}
.grid{display:grid;gap:16px}
@media (min-width:700px){.grid{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.grid{grid-template-columns:1fr 1fr 1fr}}
.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);display:flex;flex-direction:column;text-decoration:none;color:var(--ink);transition:border-color .15s,transform .15s}
a.card:hover{border-color:var(--ink);color:var(--ink)}
.card-h{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:16px 18px 0}
.card-b{padding:14px 18px 18px;flex:1;display:flex;flex-direction:column}
.card-t{font-family:var(--serif);font-size:1.42rem;line-height:1.15;letter-spacing:-.01em}
.card-s{font-size:.88rem;color:var(--ink-2);margin-top:4px}
.kv{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:16px;border-top:1px solid var(--rule)}
.kv>div{padding:10px 0;border-bottom:1px solid var(--rule)}
.kv>div:nth-child(odd){padding-right:12px}
.kv>div:nth-child(even){padding-left:12px;border-left:1px solid var(--rule)}
.kv .label{display:block;margin-bottom:4px;font-size:.62rem}
.kv .val{font-size:1.02rem;font-weight:500;font-variant-numeric:tabular-nums lining-nums}
.kv .val.big{font-family:var(--serif);font-size:1.3rem;font-weight:400}
.card-f{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-top:1px solid var(--rule);font-size:.9rem}
.card-f .price{font-family:var(--serif);font-size:1.25rem}
.card.dim{opacity:.72}
.card .meterline{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:.8rem;color:var(--ink-2)}
.card .meterline .meter{flex:1}

/* Unit sheet */
.sheet-head{padding:32px 0 28px;border-bottom:1px solid var(--rule)}
@media (min-width:760px){.sheet-head{padding:56px 0 40px}}
.crumbs{font-size:.84rem;color:var(--ink-3);margin-bottom:22px;display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{text-decoration:none;color:var(--ink-2)}
.sheet-grid{display:grid;gap:40px;padding:36px 0 80px}
@media (min-width:1000px){.sheet-grid{grid-template-columns:1fr 360px;gap:56px}}
.aside{display:flex;flex-direction:column;gap:16px}
@media (min-width:1000px){.aside{position:sticky;top:88px;align-self:start}}
.panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:22px}
.panel h3{font-size:1.2rem;margin-bottom:12px}
.panel.ink{background:var(--night);border-color:var(--night);color:var(--night-ink)}
.panel.ink h3{color:var(--night-ink)}.panel.ink .muted,.panel.ink .xs{color:var(--night-ink-2)}
.figrow{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink)}
@media (min-width:760px){.figrow{grid-template-columns:repeat(4,1fr)}}
.figrow>div{padding:16px 14px 16px 0;border-bottom:1px solid var(--rule)}
.figrow>div:nth-child(n+2){padding-left:14px;border-left:1px solid var(--rule)}
@media (max-width:759px){.figrow>div:nth-child(3){padding-left:0;border-left:0}}
.figrow .v{font-family:var(--serif);font-size:1.7rem;line-height:1.1;letter-spacing:-.02em;margin-top:6px}
.figrow .v small{font-size:.9rem;color:var(--ink-3)}
.block{margin-top:44px}
.block>h2{font-size:1.6rem;margin-bottom:6px}
.block>.sub{color:var(--ink-2);font-size:.92rem;margin-bottom:18px}
table.t{width:100%;border-collapse:collapse;font-size:.92rem}
table.t th,table.t td{padding:11px 8px;border-bottom:1px solid var(--rule);text-align:right;white-space:nowrap}
table.t th:first-child,table.t td:first-child{text-align:left;padding-left:0;white-space:normal}
table.t thead th{font:600 .66rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--ink)}
table.t tr.tot td{font-weight:600;border-bottom:1px solid var(--ink);border-top:1px solid var(--ink)}
table.t tr.net td{font-family:var(--serif);font-size:1.15rem;font-weight:400}
table.t td.base,table.t th.base{background:rgba(31,68,52,.05)}
.tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.note{font-size:.8rem;color:var(--ink-3);margin-top:12px;line-height:1.5}
.proj{display:inline-flex;gap:6px;align-items:center;font:600 .64rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--warn);background:var(--warn-bg);padding:5px 7px;border-radius:2px}

/* Lock */
.locked{position:relative;border:1px solid var(--rule);border-radius:var(--r);background:var(--surface);overflow:hidden}
.locked .ghost{padding:20px;filter:blur(0);color:transparent;user-select:none}
.ghost-line{height:12px;background:var(--inset);border-radius:2px;margin:12px 0}
.locked .over{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:24px;background:linear-gradient(180deg,rgba(251,249,244,.55),rgba(251,249,244,.96) 40%)}
.lock-ic{width:34px;height:34px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;margin-bottom:14px}
.lock-ic svg{width:14px;height:14px}
.idlist{display:grid;gap:0;border-top:1px solid var(--ink)}
.idlist>div{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:13px 0;border-bottom:1px solid var(--rule);font-size:.95rem}
.idlist .label{padding-top:3px}
.unlocked-flag{display:flex;align-items:center;gap:10px;font-size:.86rem;color:var(--ok);margin-bottom:14px}
.unlocked-flag i{width:8px;height:8px;border-radius:50%;background:var(--ok)}

/* Forms */
.formwrap{max-width:720px}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}
.field>label,.field>.lbl{font:600 .78rem/1.2 var(--sans);letter-spacing:.04em;color:var(--ink)}
.field .hint{font-size:.82rem;color:var(--ink-3);margin-top:-2px}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],select,textarea{width:100%;min-height:52px;padding:12px 14px;font:400 1rem var(--sans);color:var(--ink);background:var(--surface);border:1px solid var(--rule-2);border-radius:var(--r);transition:border-color .15s,box-shadow .15s}
textarea{min-height:120px;resize:vertical;line-height:1.5}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(31,68,52,.14)}
select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 20px) 52%,calc(100% - 15px) 52%;background-size:5px 5px;background-repeat:no-repeat;padding-right:40px}
.row2{display:grid;gap:0 16px}
@media (min-width:640px){.row2{grid-template-columns:1fr 1fr}}
.opts{display:grid;gap:8px}
@media (min-width:640px){.opts.c2{grid-template-columns:1fr 1fr}.opts.c3{grid-template-columns:1fr 1fr 1fr}}
.opt{position:relative}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt span{display:flex;align-items:center;min-height:50px;padding:10px 14px 10px 44px;border:1px solid var(--rule-2);border-radius:var(--r);background:var(--surface);cursor:pointer;font-size:.95rem;position:relative;line-height:1.3}
.opt span::before{content:"";position:absolute;left:14px;top:50%;width:18px;height:18px;margin-top:-9px;border:1.5px solid var(--ink-3);border-radius:50%;background:var(--surface)}
.opt input[type=checkbox]+span::before{border-radius:3px}
.opt input:checked+span{border-color:var(--accent);background:var(--accent-tint)}
.opt input:checked+span::before{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 3px var(--accent-tint)}
.opt input[type=checkbox]:checked+span::before{box-shadow:none;background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.2l3 3 6-6.4' fill='none' stroke='%23F6F2EA' stroke-width='2'/%3E%3C/svg%3E") center/14px no-repeat}
.opt input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.consent{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;padding:16px;border:1px solid var(--rule-2);border-radius:var(--r);background:var(--surface);cursor:pointer;font-size:.92rem;line-height:1.5}
.consent input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent)}
.err{background:var(--bad-bg);color:var(--bad);padding:12px 14px;border-radius:var(--r);font-size:.92rem;margin-bottom:20px}
.ok-msg{background:var(--ok-bg);color:var(--ok);padding:12px 14px;border-radius:var(--r);font-size:.92rem;margin-bottom:20px}
fieldset{border:0;padding:0;margin:0 0 28px}
legend{font-family:var(--serif);font-size:1.35rem;margin-bottom:14px;padding:0}
.formsec{border-top:1px solid var(--ink);padding-top:22px;margin-top:8px}

/* NDA document */
.doc{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:24px;font-size:.95rem;line-height:1.6}
@media (min-width:760px){.doc{padding:44px 52px}}
.doc.scroll{max-height:440px;overflow:auto}
.doc h2{font-size:1.7rem;margin-bottom:6px}
.doc h3{font-family:var(--sans);font-size:.95rem;font-weight:600;margin:22px 0 6px}
.doc p{color:var(--ink-2)}
.sigblock{display:grid;gap:0;border-top:1px solid var(--ink);margin-top:28px}
.sigblock>div{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--rule);font-size:.9rem}
.sigblock .sig{font-family:var(--serif);font-style:italic;font-size:1.5rem}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;word-break:break-all}

/* Checkout */
.addon{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--rule)}
.addon label{display:grid;grid-template-columns:26px 1fr;gap:12px;cursor:pointer;align-items:start;min-height:44px}
.addon input{width:20px;height:20px;margin-top:3px;accent-color:var(--accent)}
.addon .p{font-family:var(--serif);font-size:1.25rem;white-space:nowrap}
.addon small{display:block;color:var(--ink-2);font-size:.86rem;margin-top:2px}
.addon.turnkey{grid-template-columns:1fr;border:1px solid var(--accent);border-radius:3px;padding:16px 16px 14px;margin-top:4px}
.addon.turnkey b{font-size:1.05rem}
.v2{display:flex;gap:10px;align-items:center;font-size:.84rem;color:var(--ink-2);border:1px dashed var(--rule-2);padding:12px 14px;border-radius:var(--r)}

/* Dashboard / admin tables */
.dt{width:100%;border-collapse:collapse;font-size:.9rem}
.dt th,.dt td{text-align:left;padding:12px 10px 12px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.dt thead th{font:600 .66rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--ink)}
.dt td.r,.dt th.r{text-align:right}
@media (max-width:759px){
  .dt.stack thead{display:none}
  .dt.stack tr{display:block;padding:14px 0;border-bottom:1px solid var(--rule)}
  .dt.stack td{display:flex;justify-content:space-between;gap:12px;border:0;padding:4px 0}
  .dt.stack td::before{content:attr(data-l);font:600 .64rem/1.6 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
  .dt.stack td.r{text-align:right}
}
.admin-bar{background:#2B2410;color:#F3E7CF;font-size:.84rem}
.admin-bar .wrap{display:flex;gap:12px;align-items:center;min-height:40px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.atabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--rule);margin:24px 0 28px;scrollbar-width:none}
.atabs a{flex:none;padding:12px 14px;text-decoration:none;color:var(--ink-2);font-size:.92rem;min-height:44px;display:flex;align-items:center;gap:8px}
.atabs a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}
.atabs .n{font-size:.72rem;background:var(--inset);padding:2px 6px;border-radius:9px}
.agroups{margin:24px 0 28px;border-bottom:1px solid var(--rule)}
.agroups .atabs{margin:0;border-bottom:0;align-items:center}
.atabs .ag{flex:none;width:150px;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);opacity:.7}
@media (min-width:980px){.atabs{flex-wrap:wrap;overflow:visible}}
@media (max-width:979px){.atabs .ag{width:auto;padding-right:6px}}
.subtabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 24px}
.subtabs a{padding:7px 12px;border:1px solid var(--rule);border-radius:999px;text-decoration:none;color:var(--ink-2);font-size:.86rem}
.subtabs a[aria-current=page]{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.ptable{display:grid;gap:10px}
.prow{display:grid;grid-template-columns:1fr;gap:10px;padding:14px 16px;border:1px solid var(--rule);border-radius:var(--r);background:var(--surface)}
.prow-name{display:flex;flex-direction:column;gap:3px}
.prow .field{margin:0}
.prow-more{grid-column:1/-1}
.prow-more[open]{padding-top:6px;border-top:1px solid var(--rule)}
@media (min-width:980px){.prow{grid-template-columns:minmax(220px,1.6fr) 130px 130px minmax(140px,1fr) auto auto;align-items:end}.prow .prow-on{grid-template-columns:20px auto;gap:8px;padding:10px 12px;align-items:center;white-space:nowrap;margin:0}.prow .prow-on input{margin:0}.prow-name{align-self:center}.prow-floor,.prow-on{align-self:center}}
.kpis{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink);margin-bottom:36px}
@media (min-width:760px){.kpis{grid-template-columns:repeat(4,1fr)}}
.kpis>div{padding:16px 12px 16px 0;border-bottom:1px solid var(--rule)}
.kpis>div+div{padding-left:12px;border-left:1px solid var(--rule)}
@media (max-width:759px){.kpis>div:nth-child(3){padding-left:0;border-left:0}}
.kpis .v{font-family:var(--serif);font-size:2rem;line-height:1.1;margin-top:6px}

/* Footer */
.foot{background:var(--night);color:var(--night-ink-2);padding:64px 0 40px;font-size:.88rem;margin-top:0}
.foot a{color:var(--night-ink);text-decoration:none}
.foot a:hover{text-decoration:underline}
.foot-grid{display:grid;gap:32px;grid-template-columns:1fr 1fr}
@media (min-width:900px){.foot-grid{grid-template-columns:1.5fr repeat(4,1fr)}}
.foot-grid h4{font:600 .68rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--night-ink-2);margin:0 0 14px}
.foot-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.foot-grid li a{display:inline-flex;min-height:32px;align-items:center}
.foot .brandline{margin-bottom:14px}
/* Nov 2026: the footer brand line is the lockup image (and .brand-lockup is the same image in the header) */
.foot .brandline img,.brand-lockup{display:block;height:42px;width:auto}
.brand-lockup{height:32px}
.foot .disc{border-top:1px solid var(--night-rule);margin-top:44px;padding-top:22px;font-size:.8rem;line-height:1.6;display:grid;gap:8px}
@media (max-width:899px){.foot-grid>div:first-child{grid-column:1/-1}}

/* Sticky mobile CTA */
.mcta{position:fixed;left:0;right:0;bottom:0;z-index:15;background:rgba(243,239,230,.97);border-top:1px solid var(--rule);padding:10px var(--pad) calc(10px + env(safe-area-inset-bottom));display:flex;gap:10px;align-items:center;transform:translateY(110%);transition:transform .25s}
.mcta.on{transform:none}
/* Oct 29 2026 6:50 PM CT: while a testimonial row's progress bar is being dragged or sits in the bottom zone where the
   sticky CTA would cover it, slide the CTA away so the bar stays grabbable (app.js toggles .rr-hold). Placed after .on so
   it wins when both are set; cleared on release / when the bar leaves the zone, then the normal .on logic resumes. */
.mcta.rr-hold{transform:translateY(110%)}
.mcta .btn{flex:1;min-height:48px}
.mcta .xs{flex:0 0 auto;max-width:42%}
@media (min-width:1000px){.mcta{display:none}}

.prose{max-width:68ch}
.prose h2{font-size:1.7rem;margin:44px 0 12px}
.prose h3{margin:28px 0 8px;font-size:1.2rem}
.prose p,.prose li{color:var(--ink-2)}
.prose ul{padding-left:20px}
.center{text-align:center}
.mt0{margin-top:0}.mt1{margin-top:8px}.mt2{margin-top:16px}.mt3{margin-top:28px}.mt4{margin-top:44px}
.mb0{margin-bottom:0}.mb2{margin-bottom:16px}.mb3{margin-bottom:28px}
.hide-m{display:none}@media (min-width:760px){.hide-m{display:initial}.hide-d{display:none}}
.pagehead{padding:48px 0 40px;border-bottom:1px solid var(--rule)}
@media (min-width:760px){.pagehead{padding:96px 0 64px}}
.pagehead .lede{margin-top:20px}
.spaced>*+*{margin-top:16px}
.pill-row{display:flex;flex-wrap:wrap;gap:8px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* review fixes r1 */
.nav a.btn-primary{color:#F6F2EA;padding:0 16px}
.nav a.btn-primary:hover{color:#fff}
.nav a.btn-ghost{color:var(--ink);padding:0 16px}
.nav a.btn-ghost:hover{color:var(--bg)}
.strip .meter{background:var(--night-rule);height:3px;border-radius:2px;position:relative;overflow:hidden}
.strip .meter>span{position:absolute;inset:0 auto 0 0;background:var(--night-ink)}
.strip a{display:inline-flex;gap:10px;align-items:center}
@media (max-width:759px){.strip .nr{display:none}.strip .wrap{flex-wrap:nowrap;justify-content:space-between}.strip a{font-size:.8rem;line-height:1.35}}
@media (min-width:1000px){.hero-grid{align-items:center}}
.offer-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);padding:24px}
@media (min-width:760px){.offer-card{padding:32px}}
.locked{min-height:220px}
.locked .ghost{position:absolute;inset:0;padding:20px;opacity:.7}
.locked .over{position:relative;inset:auto;padding:28px;min-height:220px}
legend{float:left;width:100%}
legend+*{clear:both}
.formsec{border-top:0;padding-top:0;margin-top:0}
.formsec legend{border-top:1px solid var(--ink);padding-top:22px}
.nda-split{display:grid;gap:32px}
.nda-sum{order:-1}
@media (min-width:1000px){.nda-split{grid-template-columns:1fr 300px;gap:56px}.nda-sum{order:2;position:sticky;top:88px;align-self:start}}
@media (max-width:759px){.idlist>div{grid-template-columns:96px 1fr;gap:12px}}
@media (min-width:1000px){.nda-split[style*="none"]{grid-template-columns:minmax(0,520px) 360px!important;justify-content:space-between}}
/* Lister accounts: role picker, desk, editor. Mobile first. */
.ls-head{padding-bottom:28px}.ls-head .h2{font-size:clamp(2.1rem,6vw,3.4rem);max-width:18ch}
.ls-body{padding:32px 0 96px}
.ls-roles{display:grid;gap:14px}
@media (min-width:900px){.ls-roles{grid-template-columns:repeat(3,1fr);gap:18px}}
.ls-role{display:flex;flex-direction:column;gap:10px;padding:24px 22px;background:var(--surface);border:1px solid var(--rule);border-radius:14px;text-decoration:none;color:var(--ink);transition:border-color .15s,box-shadow .15s,transform .15s}
.ls-role:hover{border-color:var(--ink);color:var(--ink);box-shadow:0 10px 30px rgba(20,23,26,.08);transform:translateY(-2px)}
.ls-n{font:400 1rem/1 var(--serif);color:var(--accent)}
.ls-rt{font:400 2rem/1.05 var(--serif);letter-spacing:-.01em}
.ls-rb{color:var(--ink-2);font-size:.95rem}
.ls-need{display:flex;flex-direction:column;gap:6px;margin-top:4px;padding-top:12px;border-top:1px solid var(--rule);font-size:.86rem}
.ls-need b{font:600 .68rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.ls-need span{padding-left:16px;position:relative}.ls-need span::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:50%;background:var(--accent)}
.ls-go{margin-top:auto;padding-top:8px;font-weight:600;color:var(--accent)}
.ls-steps{display:grid;gap:0;margin-top:40px;border-top:1px solid var(--ink)}
@media (min-width:760px){.ls-steps{grid-template-columns:repeat(4,1fr)}}
.ls-steps>div{display:grid;grid-template-columns:34px 1fr;gap:2px 10px;padding:16px 12px 16px 0;border-bottom:1px solid var(--rule)}
.ls-steps b{grid-row:span 2;font:400 1.4rem/1 var(--serif);color:var(--accent)}
.ls-steps span{font-weight:600}.ls-steps small{color:var(--ink-2);font-size:.85rem}
.ls-defs{margin-top:28px;max-width:760px;color:var(--ink-2)}
.ls-split{display:grid;gap:28px}@media (min-width:980px){.ls-split{grid-template-columns:minmax(0,1fr) 320px;gap:48px}}
.ls-aside{background:var(--surface);border:1px solid var(--rule);border-radius:14px;padding:22px;align-self:start}
.ls-next{margin:0;padding-left:20px;display:grid;gap:10px;font-size:.92rem;color:var(--ink-2)}
.ls-terms{margin:0 0 14px;padding-left:20px;display:grid;gap:8px;font-size:.9rem;color:var(--ink-2)}
.ls-kv{font-size:1.15rem!important;margin-top:12px!important}
.ls-bar{display:flex;flex-wrap:wrap;gap:10px;margin:-8px 0 8px}
.ls-list{display:grid;gap:10px}
.ls-item{display:grid;gap:6px;padding:16px 18px;background:var(--surface);border:1px solid var(--rule);border-radius:12px;text-decoration:none;color:var(--ink)}
.ls-item:hover{border-color:var(--ink);color:var(--ink)}
.ls-i1{display:flex;justify-content:space-between;align-items:center;gap:10px}.ls-i1 b{font:400 1.25rem/1.15 var(--serif)}
.ls-i2{font-size:.86rem;color:var(--ink-2)}.ls-i3{font-size:.84rem;color:var(--bad)}
.ls-docs{display:grid;border-top:1px solid var(--rule);margin-bottom:16px}
.ls-doc{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule)}
.ls-doc .k{display:flex;flex-direction:column;font-weight:600;font-size:.94rem}.ls-doc small{font-weight:400;color:var(--ink-3);font-size:.8rem}
.ls-up,.ls-padd,.ls-hist{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:16px}
.ls-up .field,.ls-padd .field{margin-bottom:12px}
.ls-banner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;margin-bottom:24px;background:var(--accent-tint);border-radius:12px}
.ls-banner b{margin-right:8px}
.ls-seg{display:grid;gap:10px}@media (min-width:640px){.ls-seg{grid-template-columns:1fr 1fr}}
.ls-seg label{display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid var(--rule);border-radius:12px;background:var(--surface);cursor:pointer}
.ls-seg label:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.ls-seg span{display:flex;flex-direction:column}.ls-seg small{color:var(--ink-2);font-size:.84rem}
.ls-status>div{display:flex;flex-wrap:wrap;gap:6px}
.ls-track{display:flex;list-style:none;margin:16px 0 0;padding:0;gap:4px;counter-reset:t}
.ls-track li{flex:1;padding-top:10px;border-top:3px solid var(--rule);font-size:.78rem;color:var(--ink-3)}
.ls-track li.on{border-color:var(--accent);color:var(--ink);font-weight:600}
.ls-kvs{display:grid;gap:0;border-top:1px solid var(--rule)}@media (min-width:640px){.ls-kvs{grid-template-columns:1fr 1fr;column-gap:24px}}
.ls-kvs>div{display:flex;flex-direction:column;padding:10px 0;border-bottom:1px solid var(--rule)}.ls-kvs span{font-size:.78rem;color:var(--ink-3)}
.ls-plist{display:grid;gap:8px;margin-bottom:14px}
.ls-perk{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid #EAD9B5;background:#FCF6EA;border-radius:12px}
.ls-pt{display:flex;flex-direction:column}.ls-pt small{color:var(--ink-2);font-size:.84rem}
.ls-ps{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ls-hgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 12px}@media (min-width:760px){.ls-hgrid{grid-template-columns:repeat(4,1fr)}}
.rv-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:flex-start}
.rv-need{display:grid;gap:6px;margin-bottom:14px}.rv-need>div{display:flex;justify-content:space-between;gap:10px;font-size:.9rem}
.rv-doc{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--rule)}
.rv-doc .k{display:flex;flex-direction:column;min-width:220px}.rv-doc small{color:var(--ink-3);font-size:.8rem}
.rv-doc .a{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.rv-dform{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.rv-dform input{min-height:36px;padding:6px 10px;font-size:.85rem;max-width:160px}
.rq-f{margin-top:-8px}

/* Hero refresh (Oct 21 2026): VSL first and full bleed on mobile, one line headline, proof strip above the fold. */
.hero-v{padding:0 0 44px}
.hero-v .hero-grid{gap:0;grid-template-areas:"video" "head" "proof" "cta" "lede"}
.hero-v .h-video{grid-area:video;margin:0 calc(-1 * var(--pad))}
.hero-v .h-head{grid-area:head;padding-top:22px}
.hero-v .h-head .eyebrow{margin-bottom:10px}
.hero-v h1{max-width:none;white-space:nowrap;font-size:clamp(1.6rem,7.6vw,4.1rem);line-height:1.05}
.hero-v .h-proof{grid-area:proof;margin-top:18px}
.hero-v .h-proof>div{padding-top:14px}
.hero-v .h-proof .stat-v{font-size:clamp(1.9rem,8.4vw,3rem)}
.hero-v .h-proof .stat-l{margin-top:4px;font-size:.8rem}
.hero-v .h-cta{grid-area:cta;margin-top:22px}
.hero-v .h-cta .btn-row .btn{flex:1 1 220px}
.hero-v .h-lede{grid-area:lede;margin-top:22px;max-width:46ch}
@media (min-width:1000px){
  .hero-v{padding:72px 0 96px}
  .hero-v .hero-grid{grid-template-columns:1fr 1.05fr;column-gap:64px;align-items:start;grid-template-areas:"head video" "proof video" "cta video" "lede video"}
  .hero-v .h-video{margin:0;align-self:center}
  .hero-v .h-head{padding-top:0}
  .hero-v h1{font-size:clamp(2.6rem,3.7vw,3.6rem)}
  .hero-v .h-cta .btn-row .btn{flex:0 0 auto}
}
.vsl-hero{background:#E9E2D4;color:#fff}
@media (max-width:999px){.vsl-hero{border-radius:0}}
.vsl-hero .poster{padding:0;background:none;display:block}
.vsl-hero .poster::after{display:none}
.vsl-hero .kb,.vsl-hero .kb img{position:absolute;inset:0;width:100%;height:100%}
.vsl-hero .kb img{object-fit:cover;transform-origin:62% 55%;animation:kb 26s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.09) translate(-1.2%,-.8%)}}
.vsl-hero .poster::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(15,27,22,0) 55%,rgba(15,27,22,.42));pointer-events:none}
.vsl-hero .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:clamp(64px,17vw,88px);height:clamp(64px,17vw,88px);border:0;background:rgba(255,255,255,.94);color:var(--ink);box-shadow:0 10px 30px rgba(15,27,22,.28)}
.vsl-hero .play:hover{background:#fff;transform:translate(-50%,-50%) scale(1.05)}
.vsl-hero .play svg{width:32%;height:32%;margin-left:7%}
.vsl-hero .pchip{position:absolute;left:clamp(12px,3vw,20px);bottom:clamp(12px,3vw,20px);z-index:2;display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(15,27,22,.62);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font:600 .76rem/1 var(--sans);color:#fff}
.vsl-hero .pchip b{font-weight:600;opacity:.8}
.vsl-hero .pdot{width:7px;height:7px;border-radius:50%;background:#7BD0A0}
@media (prefers-reduced-motion:reduce){.vsl-hero .kb img{animation:none}}

/* ===== v12 preview: break the template look (teardown fix 9). Sans headlines, no eyebrow labels, no italic accents,
   no numbered section labels, varied widths, real photos lead sections (neutral frames until assets land). ===== */
.v12 h1,.v12 h2,.v12 h3,.v12 .display{font-family:var(--sans);font-weight:650;letter-spacing:-.02em}
.v12 h1 em,.v12 h2 em,.v12 h3 em{font-style:normal;font-weight:inherit}
.v12 .eyebrow,.v12 .idx,.v12 .label.mt1{display:none}
.v12 .split{display:block}
.v12 .x-lab{font:650 1.05rem/1.3 var(--sans);margin:0 0 14px;color:var(--ink)}
.v12 .night .x-lab{color:var(--night-ink)}
.v12 .pagehead h1{font-size:clamp(2rem,6vw,3.2rem);line-height:1.08;max-width:22ch}
.x-hero{padding:28px 0 40px;background:var(--bg)}
.x-hero-grid{display:grid;gap:28px}
@media (min-width:980px){.x-hero{padding:64px 0 72px}.x-hero-grid{grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}}
.x-for{font-size:1rem;line-height:1.45;color:var(--ink-2);margin:0 0 14px;max-width:44ch}
.x-h1{font-size:clamp(2rem,8.2vw,3.25rem);line-height:1.05;letter-spacing:-.03em;margin:0 0 18px;max-width:19ch}
.x-lede{font-size:1.1rem;line-height:1.55;color:var(--ink-2);max-width:48ch;margin:0 0 22px}
.x-cta{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center}
.x-cta .btn{min-height:54px}
.x-cta-note{font-size:.9rem;color:var(--ink-3)}
.x-proof{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:8px 28px;font-size:.95rem;color:var(--ink-2)}
.x-proof b{color:var(--ink);font-size:1.15rem;margin-right:4px}
.x-media{margin:0}
.x-media img,.x-media video{width:100%;height:auto;object-fit:cover;border-radius:6px;background:#ddd}
.x-frame{width:100%;border-radius:6px;background:#E4DED2;border:1px solid #D6CFC0;display:flex;align-items:center;justify-content:center}
.x-play{width:64px;height:64px;border-radius:50%;background:rgba(20,23,26,.12);display:flex;align-items:center;justify-content:center;color:rgba(20,23,26,.4)}
.x-play svg{width:24px;height:24px;margin-left:3px}
.x-media figcaption{font-size:.72rem;line-height:1.35;color:#8A8478;margin-top:6px}
.x-media figcaption b{font-weight:600;color:#6F695E;margin-right:4px}
.x-sec{padding:56px 0}
@media (min-width:980px){.x-sec{padding:88px 0}}
.x-alt{background:var(--surface)}
.x-dark{background:var(--night);color:var(--night-ink)}
.x-dark .x-h2{color:var(--night-ink)}
.x-dark p{color:var(--night-ink-2);font-size:1.08rem;line-height:1.6}
.x-h2{font-size:clamp(1.6rem,5vw,2.3rem);line-height:1.12;margin:0 0 18px;max-width:24ch}
.x-sub{color:var(--ink-3);margin:-8px 0 28px}
.x-small{font-size:.9rem;color:var(--ink-3)}
.x-narrow{max-width:760px}
.x-two{display:grid;gap:44px}
@media (min-width:900px){.x-two{grid-template-columns:1fr 1fr;gap:64px}}
.x-two .x-media{margin-top:22px}
.x-doc{max-width:300px}.x-doc img{border:1px solid var(--rule);box-shadow:0 10px 30px rgba(20,20,20,.10);border-radius:4px;background:#fff}
.x-own{display:grid;gap:26px}
@media (min-width:760px){.x-own{grid-template-columns:1fr 1fr;gap:34px 56px}}
.x-own h3{font-size:1.25rem;line-height:1.25;margin:0 0 6px}
.x-own p{margin:0;color:var(--ink-2)}
.x-photos{padding:0 0 8px}
.x-photo-row{display:grid;gap:14px}
@media (min-width:760px){.x-photo-row{grid-template-columns:1.4fr 1fr 1fr}}
.x-steps{padding-left:1.3em;margin:0 0 22px}
.x-steps li{padding:10px 0;color:var(--ink-2);line-height:1.5}
.x-steps b{color:var(--ink)}
.x-list{list-style:none;padding:0;margin:0}
.x-list li{padding:12px 0 12px 28px;position:relative;border-top:1px solid var(--rule);line-height:1.45}
.x-list li::before{content:"";position:absolute;left:4px;top:20px;width:9px;height:9px;border-radius:50%;background:var(--accent)}
.x-list.x-no li::before{background:transparent;border:2px solid var(--bad);width:7px;height:7px}
.x-objs{display:grid;gap:22px}
@media (min-width:900px){.x-objs{grid-template-columns:1fr 1fr;gap:28px}}
.x-obj{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:22px}
.x-obj blockquote{margin:0 0 12px;font-size:1.2rem;line-height:1.35;font-weight:600;color:var(--ink)}
.x-obj p{margin:0;color:var(--ink-2)}
.x-obj .x-media{margin-top:16px}
.x-note{background:var(--surface);border-radius:8px;padding:26px;border:1px solid var(--rule)}
.x-note p{color:var(--ink-2)}
.x-sign{font-weight:600;color:var(--ink)!important;margin:0}
.x-end{text-align:left}
.x-ident span{display:block}
/* v12 application: one question per screen (progressive: without JS every step shows) */
.x-apply{max-width:640px}
.x-apply .x-progress{height:4px;background:var(--rule);border-radius:2px;margin:0 0 26px;overflow:hidden}
.x-apply .x-progress span{display:block;height:100%;background:var(--accent);width:0;transition:width .25s}
.x-step{border:0;padding:0;margin:0 0 34px}
.x-step legend{font:650 1.45rem/1.25 var(--sans);letter-spacing:-.015em;margin-bottom:6px;padding:0}
.x-step .x-help{color:var(--ink-3);font-size:.95rem;margin:0 0 16px}
.x-js .x-step{display:none}
.x-js .x-step.on{display:block}
.x-nav{display:flex;gap:12px;align-items:center}
.x-nav .btn{flex:1}
.x-nav [data-back]{flex:0 0 auto}
.x-js .x-nav{display:flex}
.x-nav{display:none}
.x-js [data-submit-row]{display:none}
.x-js [data-submit-row].on{display:block}
.x-notfor{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:16px 18px;font-size:.95rem;color:var(--ink-2);margin:0 0 28px}
.x-check{display:flex;gap:12px;align-items:flex-start;font-size:1rem;line-height:1.45}
.x-check input{margin-top:4px;width:20px;height:20px;flex:0 0 auto}
.x-check+.x-check{margin-top:14px}
/* Booking page: calendar first on phones, split on desktop. Calendar is full width, no horizontal scroll at 360/390. */
.x-book-grid{display:grid;gap:28px}
.x-book-cal .calendly-inline-widget{width:100%}
@media (min-width:768px){.x-book-grid{grid-template-columns:1fr 340px;gap:48px;align-items:start}}
.opts.c1{grid-template-columns:1fr}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.v12 blockquote,.x-obj blockquote{font-family:var(--sans);font-style:normal}
.x-obj .x-media{max-width:280px}
.v12 .foot h4{text-transform:none;letter-spacing:0;font-size:.95rem;font-weight:600}
@media (min-width:760px){.x-photo-row{grid-template-columns:2fr 1fr;align-items:start}.x-photo-row>:first-child{grid-row:span 2}}
.x-photos{padding:56px 0 8px}
@media (min-width:760px){.x-photo-row{align-items:stretch}.x-photo-row>:first-child,.x-photo-row>:first-child img{height:100%}}

/* ICP preview (Oct 22 2026): section index, proof stats, VSL caption */
.x-idx{font:500 .8rem/1 var(--sans);letter-spacing:.14em;color:var(--ink-3);margin:0 0 14px;padding-top:12px;border-top:1px solid var(--rule);max-width:56px}
.x-dark .x-idx{color:var(--night-ink-2);border-color:var(--night-rule)}
.x-vet li{padding:12px 0;border-bottom:1px solid var(--rule)}
.x-vet li:last-child{border-bottom:0}
.x-proof-band{margin-top:40px;align-items:start}
.x-cap{font-size:.9rem;color:var(--ink-3);margin:8px 0 0}
.x-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0 0 26px}
.x-stats div{border-top:1px solid var(--rule-2);padding-top:14px}
.x-stats dt{font-size:.92rem;color:var(--ink-2)}
.x-stats dd{margin:0 0 4px;font:400 clamp(2.4rem,7vw,3.4rem)/1 var(--serif);color:var(--ink);font-variant-numeric:lining-nums}
.x-stats div{display:flex;flex-direction:column-reverse}
.x-vsl-cap{font-size:.88rem;color:var(--ink-3);margin-top:8px}
.x-partner .x-two{align-items:start}

/* ===== Oct 24 2026 rework (body.r24, home only). Editorial, photo led, no eyebrows, no numbered sections, no italics. ===== */
.r24{--bg:#F4F1EB;--ink:#111312;--ink-2:#3E4340;--rule:#DDD6C9;--accent:#1D3A2E;--accent-2:#132A20;background:var(--bg)}
.r24 .top{background:rgba(244,241,235,.94)}
.r24 h1,.r24 h2,.r24 h3{font-family:var(--sans);font-style:normal;color:inherit}
.r24 .btn-primary{background:var(--ink);color:#F4F1EB;border-radius:999px}
.r24 .btn-primary:hover{background:#000;color:#fff}
.r24 .r-btn{min-height:54px;padding:0 26px;font-weight:600;font-size:1rem}
.r-hero{padding:24px 0 48px}
.r-hero-grid{display:grid;gap:28px}
.r-hero-photo{order:-1}
.r-h1{font-size:clamp(2.1rem,8.6vw,4.1rem);line-height:1.02;letter-spacing:-.035em;font-weight:650;margin:0 0 20px;max-width:16ch}
.r-lede{font-size:1.12rem;line-height:1.55;color:var(--ink-2);max-width:46ch;margin:0 0 26px}
.r-cta{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-bottom:34px}
.r-note{font-size:.9rem;color:var(--ink-2)}
.r-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0;border-top:1px solid var(--rule);padding-top:18px}
.r-stats div{padding-right:12px}
.r-stats div+div{padding-left:14px;border-left:1px solid var(--rule)}
.r-stats dd{margin:0;font-size:clamp(1.5rem,6vw,2.2rem);font-weight:650;letter-spacing:-.03em;line-height:1}
.r-stats dt{font-size:.8rem;line-height:1.3;color:var(--ink-2);margin-top:6px;order:2}
.r-stats div{display:flex;flex-direction:column-reverse}
.r-portrait img{width:100%;height:auto;object-fit:cover;aspect-ratio:4/5}
.r-hero-photo .x-media{margin:0}
@media (max-width:979px){.r-portrait img{aspect-ratio:16/11 !important;object-position:50% 22%}.r-hero{padding-top:16px}.r-hero-grid{gap:22px}}
@media (min-width:980px){.r-hero{padding:56px 0 88px}.r-hero-grid{grid-template-columns:1.25fr .9fr;gap:72px;align-items:end}.r-hero-photo{order:0}.r-lede{font-size:1.25rem}}
.r-sec{padding:72px 0}
@media (min-width:980px){.r-sec{padding:112px 0}}
.r-h2{font-size:clamp(1.7rem,5.2vw,2.75rem);line-height:1.08;letter-spacing:-.03em;font-weight:650;margin:0 0 18px;max-width:22ch}
.r-sub{font-size:1.06rem;color:var(--ink-2);max-width:52ch;margin:0 0 26px}
.r-narrow{max-width:760px}
.r-cols{display:grid;gap:24px}
@media (min-width:980px){.r-cols{grid-template-columns:1fr 1fr;gap:80px;align-items:start}}
.r-prose p{font-size:1.1rem;line-height:1.6;color:var(--ink-2)}
.r-dark{background:#121413;color:#EDEAE3}
.r-dark .r-sub,.r-dark figcaption,.r-dark dt{color:#A9ADA8}
.r-case-head{display:grid;gap:8px;margin-bottom:34px}
@media (min-width:980px){.r-case-head{grid-template-columns:1.2fr 1fr;gap:80px;align-items:end}}
.r-case{display:grid;gap:14px}
@media (min-width:900px){.r-case{grid-template-columns:1.25fr 1fr;align-items:end}}
.r-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.r-shot{margin:0}
.r-shot .x-media{margin:0}
.r-shot img{width:100%;height:auto}
.r-shot figcaption{font-size:.86rem;line-height:1.4;margin-top:10px}
.r-shot figcaption b{display:block;color:#EDEAE3;font-weight:600;letter-spacing:.01em}
.r-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin:40px 0 0;padding-top:24px;border-top:1px solid #2B2F2C}
@media (min-width:900px){.r-facts{grid-template-columns:repeat(4,1fr)}}
.r-facts dt{font-size:.8rem;margin-bottom:4px}
.r-facts dd{margin:0;font-size:1rem;font-weight:500}
.r-objs{margin-top:28px}
.r-obj{display:grid;gap:10px;padding:30px 0;border-top:1px solid var(--rule)}
.r-obj:last-child{border-bottom:1px solid var(--rule)}
.r-obj h3{font-size:clamp(1.35rem,4.4vw,2rem);line-height:1.15;letter-spacing:-.025em;font-weight:620;max-width:20ch}
.r-ans p{font-size:1.05rem;line-height:1.6;color:var(--ink-2);max-width:56ch;margin:0}
.r-objimg{margin:20px 0 0;max-width:340px}
.r-objimg figcaption{font-size:.82rem;color:var(--ink-2);margin-top:8px}
@media (min-width:980px){.r-obj{grid-template-columns:1fr 1fr;gap:80px}.r-obj h3{padding-top:2px}}
.r-call{background:#E9E4DA}
.r-steps{list-style:none;margin:0;padding:0}
.r-steps li{padding:18px 0;border-top:1px solid #CFC7B8;font-size:1.05rem;line-height:1.55;color:var(--ink-2)}
.r-steps li b{display:block;color:var(--ink);font-size:1.12rem;margin-bottom:2px}
.r-list{margin:0}
.r-list div{padding:16px 0;border-top:1px solid var(--rule)}
.r-list dt{font-weight:620;font-size:1.06rem}
.r-list dd{margin:4px 0 0;color:var(--ink-2)}
.r-tint{background:var(--bg)}
.r-note-sec{background:var(--accent);color:#EEF0EA}
.r-letter{max-width:720px}
.r-letter p{font-size:1.2rem;line-height:1.6;color:#D6DCD3}
.r-sig{font-size:1.6rem !important;font-weight:600;color:#fff !important;margin-top:24px;letter-spacing:-.02em}
.r-end{text-align:left}
.r-fine{font-size:.85rem;color:var(--ink-2);max-width:60ch;margin-top:28px}
.r24 .x-media figcaption{display:none}
.r-founder{display:grid;gap:24px}
.r-founder .x-media{margin:0;max-width:420px}
@media (min-width:900px){.r-founder{grid-template-columns:340px 1fr;gap:48px;align-items:start}}
/* ===== Oct 24 2026 hero VSL (body.r24 .r-hero-vsl) */
.r-hero-vsl .r-hero-grid{grid-template-areas:"h1" "media" "copy";gap:18px}
.r-hero-vsl .r-h1{grid-area:h1;margin:0}
.r-hero-media{grid-area:media}
.r-hero-vsl .r-hero-copy{grid-area:copy}
.r-hero-vsl .r-cta{margin:14px 0 0}
.r-vsl{position:relative;margin:0 auto;background:#0d0d0c;border-radius:10px;overflow:hidden;aspect-ratio:16/9;width:100%;max-width:100%}
.r-vsl-poster,.r-vsl-poster img,.r-vsl video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.r-vsl video{background:transparent}
.r-vsl.is-playing .r-vsl-poster{visibility:hidden}
.r-vsl-sound{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border:0;border-radius:999px;background:rgba(255,255,255,.94);color:#111;font:600 .92rem/1 inherit;font-family:inherit;cursor:pointer;box-shadow:0 2px 14px rgba(0,0,0,.25)}
@media (max-width:600px){.r-vsl-sound{top:8px;right:8px;min-height:44px;padding:8px 12px;font-size:.85rem}}
.r-vsl-sound:focus-visible{outline:2px solid #fff;outline-offset:3px}
.r-hero-vsl .r-lede{margin-top:6px}
@media (max-width:979px){.r-hero-vsl .r-h1{font-size:clamp(1.65rem,7.4vw,2.2rem);line-height:1.08}.r-hero-vsl .r-cta{justify-content:center}.r-hero-vsl .r-cta .r-btn{width:100%;justify-content:center}.r-hero-vsl .r-note{width:100%;text-align:center}}
@media (min-width:980px){
  .r-hero-vsl .r-hero-grid{grid-template-columns:.85fr 1.15fr;grid-template-areas:"h1 media" "copy media";column-gap:56px;row-gap:22px;align-items:start}
  .r-hero-vsl .r-h1{align-self:end;font-size:clamp(2.4rem,3.6vw,3.3rem);max-width:15ch}
  .r-vsl{aspect-ratio:16/9;height:auto;width:100%;min-height:0}
  .r-hero-vsl .r-cta{margin-top:18px}
}
/* ===== Oct 24 2026 offer proof (body.r24 .r-proof) */
.r-proof .r-h2{max-width:24ch}
.r-proof-grid{display:grid;gap:0;margin-top:28px;border-top:1px solid var(--rule)}
.r-proof-grid article{padding:22px 0;border-bottom:1px solid var(--rule)}
.r-proof-grid h3{font-size:1.15rem;margin:0 0 8px;letter-spacing:-.01em}
.r-proof-grid p{margin:0;color:var(--ink-2);max-width:52ch}
@media (min-width:980px){.r-proof-grid{grid-template-columns:repeat(3,1fr);gap:40px;border-top:0}.r-proof-grid article{border-bottom:0;border-top:1px solid var(--ink);padding:22px 0 0}}
.r-vsl-sound{white-space:nowrap}

/* Oct 24 footage loops (Oct 29 2026: six wide 4:5 b-roll pans, 3 up on desktop, 2 up on phones; no full width first tile) */
.r-loops{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.r-loops-label{grid-column:1/-1;margin:0 0 4px;font-size:1rem;color:var(--ink-2)}
.r-loop{margin:0}
.r-loop-frame{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:6px;background:#E7E4DD}
.r-loop-frame video{display:block;width:100%;height:100%;object-fit:cover}
.r-loop figcaption{font-size:.86rem;line-height:1.4;margin-top:10px;color:var(--ink-2)}
/* Oct 29 2026 (label these calls): small premium caption pill, bottom left of the frame, low enough to clear Derek's face.
   Dark translucent fill, white text, at least 12px; wraps instead of truncating so it stays readable on narrow phones. */
.r-loop-pill{position:absolute;left:8px;bottom:8px;max-width:calc(100% - 16px);margin:0;font:600 12px/1.25 var(--sans);color:#fff;background:rgba(15,27,22,.64);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:4px 10px;border-radius:999px;box-shadow:0 1px 4px rgba(0,0,0,.18)}
@media (min-width:980px){.r-loop-pill{left:10px;bottom:10px;font-size:13px;padding:5px 11px}}
@media (max-width:640px){.r-loops{grid-template-columns:1fr 1fr;gap:10px}}

/* Oct 29 2026 media refresh: before/after compare slider (data-shot="unit"). Mobile full width; desktop centered 560px. */
.r-compare{max-width:560px;margin:0 auto}
.r-compare-frame{position:relative;aspect-ratio:4/5;border-radius:8px;overflow:hidden;background:#1b1d1c;touch-action:pan-y;--pos:50%}
.r-cmp-after,.r-cmp-before{position:absolute;inset:0}
.r-cmp-before{clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
.r-cmp-img{width:100%;height:100%;object-fit:cover;display:block;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}
.r-cmp-label{position:absolute;top:12px;z-index:3;font:600 .64rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#EDEAE3;background:rgba(18,18,17,.55);padding:5px 9px;border-radius:999px;pointer-events:none}
.r-cmp-l-before{left:12px}
.r-cmp-l-after{right:12px}
.r-cmp-divider{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;margin-left:-1px;background:rgba(255,255,255,.92);box-shadow:0 0 0 1px rgba(0,0,0,.12);z-index:4;pointer-events:none}
.r-cmp-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:999px;background:rgba(18,18,17,.62);border:2px solid #fff;box-shadow:0 2px 10px rgba(0,0,0,.4)}
.r-cmp-handle::before,.r-cmp-handle::after{content:"";position:absolute;top:50%;transform:translateY(-50%);border-top:5px solid transparent;border-bottom:5px solid transparent}
.r-cmp-handle::before{left:11px;border-right:6px solid #fff}
.r-cmp-handle::after{right:11px;border-left:6px solid #fff}
.r-cmp-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;pointer-events:none}
.r-compare-frame:focus-within .r-cmp-handle{outline:3px solid #fff;outline-offset:3px}
.r-cmp-note{max-width:560px;margin:14px auto 0;font-size:.82rem;line-height:1.4;color:#A9ADA8;text-align:center}
.r-facts-3{grid-template-columns:1fr}
@media (min-width:900px){.r-facts-3{grid-template-columns:repeat(3,1fr)}}
/* Oct 29 2026 (edits round): two before/after sliders. Stacked on phones; two equal columns, same top, at >=980px.
   Each slider fills its column (overrides the single-slider 560px cap), so both frames render the same size. */
.r-compare-pair{display:grid;gap:18px;max-width:560px;margin:0 auto}
.r-compare-pair .r-compare{max-width:none;margin:0}
@media (min-width:980px){.r-compare-pair{grid-template-columns:1fr 1fr;gap:28px;align-items:start;max-width:1080px}}

/* Oct 29 2026 deal calls (9:16) + sound clips (data-snd-clip). Top right "Tap for sound"; captions are burned in low. */
.r-calls-block{margin-top:44px}
/* Oct 29 2026 (overwhelm edit): the "most of my day" calls block is the original three silent Derek clips, rendered as 4:5
   muted loop tiles (.r-loop). Three across at every width (short clips, no horizontal page scroll), no "tap for sound". */
.r-dcalls{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (min-width:980px){.r-dcalls{gap:16px}}
.r-calls{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;padding-bottom:4px}
.r-calls::-webkit-scrollbar{display:none}
.r-call-clip{flex:0 0 auto;width:min(72vw,300px);margin:0;scroll-snap-align:start}
.r-call-cap{margin:10px 0 0;font-size:.9rem;line-height:1.45;color:var(--ink-2)}
.r-call-cap b{display:block;color:var(--ink);font-weight:600;margin-bottom:1px}
@media (min-width:980px){.r-calls{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;overflow:visible}.r-call-clip{width:auto}}
.r-snd-frame{position:relative;overflow:hidden;border-radius:6px;background:#121211}
.r-snd-9x16{aspect-ratio:9/16}
.r-snd-16x9{aspect-ratio:16/9}
.r-snd-3x4{aspect-ratio:3/4}
.r-snd-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#121211}
/* Oct 29 2026 (edits round): the Sebastian "this year" clip is a 16:9 source. It now fills the same 3/4 frame as the
   other testimonial video cards (object-fit:cover), with object-position centered on his face (poster inspected). */
.tm-sound .r-snd-frame video{object-position:44% 50%}
.r-snd-btn{position:absolute;top:8px;right:8px;z-index:3;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:44px;min-height:44px;padding:0 12px;border:0;border-radius:999px;background:rgba(18,18,17,.62);color:#fff;font:600 .82rem/1 var(--sans);cursor:pointer}
.r-snd-btn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.r-snd-ic{width:20px;height:20px;flex:none}
.r-snd-ic-on{display:none}
.r-snd-btn[aria-pressed="true"]{background:rgba(31,68,52,.92)}
.r-snd-btn[aria-pressed="true"] .r-snd-ic-off{display:none}
.r-snd-btn[aria-pressed="true"] .r-snd-ic-on{display:inline-block}
.r-snd-label{white-space:nowrap}
@media (max-width:360px){.r-snd-label{display:none}.r-snd-btn{padding:0}}

/* Oct 29 2026 hero VSL v7b 16:9: horizontal and centered on every screen (full width on mobile, capped and centered on desktop) */
.r-vsl{aspect-ratio:16/9;width:100%;height:auto;min-height:0;max-width:100%;box-shadow:0 18px 48px rgba(15,27,22,.22),0 2px 8px rgba(15,27,22,.12)}
.r-vsl-cap{margin:12px auto 0;max-width:34ch;text-align:center;font-size:.9rem;line-height:1.45;color:var(--ink-2)}
@media (max-width:979px){
  .r-hero-media{display:flex;flex-direction:column;align-items:center}
  .r-hero-media>.r-cta{order:1;align-self:stretch}
  .r-hero-media>.r-vsl-cap{order:2;margin-top:14px;font-size:.86rem}
}
@media (min-width:980px){
  .r-hero-vsl .r-hero-grid{grid-template-columns:1fr;grid-template-areas:"h1" "media" "copy";column-gap:0;row-gap:22px;align-items:center;justify-items:center;text-align:center}
  .r-hero-vsl .r-h1{align-self:auto;margin-bottom:0;max-width:22ch}
  .r-hero-vsl .r-hero-copy{align-self:auto;max-width:640px}
  .r-hero-vsl .r-lede{margin-left:auto;margin-right:auto}
  .r-hero-media{display:flex;flex-direction:column;align-items:center;width:100%}
  .r-vsl{aspect-ratio:16/9;width:100%;max-width:960px;height:auto;min-height:0;margin:0 auto}
  .r-vsl-cap{max-width:42ch}
  .r-hero-media .r-cta{justify-content:center;text-align:center;margin-top:14px}
}
/* Oct 29 2026 hero VSL: no dark flash. The video stays transparent until app.js sees playback past the first frame
   (.is-playing); until the poster image loads, a tiny inline copy of the poster (VSL v7b 16:9 hero frame, 96x54 webp) fills the box.
   Update this data URI on each VSL swap (source: vsl/v7b-16x9/lqip_v7b_16x9.b64). */
.r-vsl{background:#121211 url("data:image/webp;base64,UklGRoQBAABXRUJQVlA4IHgBAAAQCgCdASpgADYAPu1usVKppiSiprZqGTAdiWcNu0WmrCDKk4AaQJncixLclE+DEJQgle0uMovMFpURN/AFYZa63qOBbZ0IJEBBcXNhUMG6PNE6Qb+r003VQAD+8jcWxDtbcq/wSVssyBQbrWIVzzqpi1vFMWTRn/qdOO4M6RWD+up4NQEcS+47T+d2KAS54xUfbyOxzzdC9Qf596fIsFLtt+hMkfIvC3wDKYgh3pCbUiBRGZy4HxVoKhp6Uan96Aq32wt/hI+DFvwz96QVrezqGbcphip+vulsF+Q3ti8aWEzMWFFA44ZDE0Eg5S/REM5holZVNWUz1WlJXiCIzJbLvS3wYao1Y74OdPpPv7ajcB99fNZPjLptUwXUEQctjcjnvQUIcEhI1DvPy/35FFnlqnOjHqAEAMmTsicnXrT/mDnSX5ADQXwOA3j7I6vwEATOR0z38ygf0ethuWx2SSBkLbDAUITd7qTOC0R4QM0u7GsF1D40AAAA") center/cover no-repeat}
.r-vsl video{opacity:0;transition:opacity .18s ease}
.r-vsl.is-playing video,.r-vsl.is-sound video{opacity:1}

/* ===== Students and clients (phase 2). Scoped .tm-. Reuses r-sec / r-h2 / r-sub / wrap. Mobile first.
   Row 1 videos: horizontal scroll with snap on mobile, 4 col grid on desktop. Row 2 images: horizontal scroll.
   Both use object-fit:contain on a dark frame so 9:16 and 16:9 clips and tall / wide screenshots never crop. */
.tm-row{list-style:none;margin:0;padding:0 0 6px;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;overscroll-behavior-x:contain}
.tm-videos{margin-bottom:40px}
.tm-card{flex:0 0 auto;scroll-snap-align:start;margin:0}
.tm-vcard{width:min(76vw,290px)}
.tm-media{position:relative;aspect-ratio:3/4;background:#121211;border-radius:var(--r);overflow:hidden}
.tm-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.tm-video-el{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#121211;z-index:2}
.tm-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;text-decoration:none}
.tm-play-ic{display:flex;align-items:center;justify-content:center;width:62px;height:62px;border-radius:999px;background:rgba(18,18,17,.62);box-shadow:0 2px 14px rgba(0,0,0,.35);transition:background .15s}
.tm-play-ic svg{width:26px;height:26px;margin-left:3px}
.tm-play:hover .tm-play-ic,.tm-play:focus-visible .tm-play-ic{background:rgba(18,18,17,.85)}
.tm-media.is-playing .tm-play,.tm-media.is-playing .tm-poster{opacity:0;pointer-events:none}
.tm-badge{position:absolute;top:10px;left:10px;z-index:3;font:600 .62rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#EDEAE3;background:rgba(18,18,17,.6);padding:5px 8px;border-radius:2px}
.tm-cap{margin:12px 0 0;font-size:.92rem;line-height:1.45;color:var(--ink-2)}
.tm-cap b{color:var(--ink);font-weight:600}
.tm-vcard .tm-quote{display:block;margin-top:3px;font-family:var(--serif);font-size:1.02rem;line-height:1.35;color:var(--ink);letter-spacing:-.01em}
.tm-shot{display:block;height:300px;background:#121211;border-radius:var(--r);overflow:hidden}
.tm-shot img{width:100%;height:100%;object-fit:contain}
.tm-discord .tm-shot{width:min(84vw,340px)}
.tm-ig .tm-shot{width:min(52vw,186px)}
.tm-icard .tm-cap{margin-top:8px;font-size:.86rem}
@media (min-width:980px){
  .tm-videos{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;overflow:visible;margin-bottom:48px}
  .tm-vcard{width:auto}
  .tm-shot{height:360px}
  .tm-discord .tm-shot{width:430px}
  .tm-ig .tm-shot{width:232px}
}
@media (prefers-reduced-motion:reduce){.tm-row{scroll-behavior:auto}.tm-play-ic{transition:none}}

/* Oct 29 2026 home copy edits: center the hero CTA under the video on all widths; count-up stats with no layout shift. */
.r-hero-vsl [data-hero-cta]{display:flex;justify-content:center}
.r-hero-vsl [data-hero-cta] .r-btn{justify-content:center}
@media (max-width:979px){.r-hero-vsl [data-hero-cta] .r-btn{width:100%}}
.r-stats dd{font-variant-numeric:tabular-nums}

/* SPEC2 A (Oct 29 2026 6:58 PM CT): aggregate results strip directly after #results. Reuses the hero .r-stats dl, narrowed
   to exactly two centered stats. Premium and minimal; two stats side by side with a hairline divider, clean at 360 to 430. */
.r-agg .wrap{max-width:720px;text-align:center}
.r-agg-h{font-size:clamp(1.25rem,4.5vw,1.6rem);letter-spacing:-.01em;margin:0 0 20px}
.r-agg-stats{grid-template-columns:repeat(2,1fr);max-width:560px;margin:0 auto}
.r-agg-stats div{align-items:center;text-align:center;padding:0 16px}
.r-agg-stats dt{max-width:20ch;margin-left:auto;margin-right:auto}
.r-agg-note{font-size:.8rem;color:var(--ink-2);margin:16px 0 0}
@media (max-width:430px){.r-agg-stats div{padding:0 10px}}

/* ===== Oct 29 2026 one-page funnel. The former /how-it-works, /guarantee, /international, /faq, /for-your-partner and
   /about pages are folded into the home page as sections. Smooth in-page scrolling, a sticky-header scroll offset, an
   active nav highlight, and the folded content restyled into the r24 look. ===== */
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Every section with an id (and the #partner sub block) lands just below the sticky header. --top-h is measured by
   app.js from .top; the 65px fallback is the static header height for JS off. */
.r24 main section[id],.r24 #partner{scroll-margin-top:calc(var(--top-h,65px) + 12px)}
/* Active section highlight: a subtle accent underline on the matching nav link (both the bar and the mobile sheet). */
.r24 .nav a.is-active{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}
.r24 .sheet a.is-active{color:var(--accent)}
/* Folded sections: alternating warm tint, sub-block spacing, sub-headings, readable measure. */
.r-alt{background:#ECE8DE}
.r-fold .r-case-head{display:block;margin-bottom:28px}
.r-fold-block{margin-top:44px}
.r-sub-h{font-size:clamp(1.3rem,4vw,1.7rem);line-height:1.15;letter-spacing:-.02em;font-weight:620;margin:0 0 12px}
.r-fold-prose{max-width:66ch}
.r-fold-prose h2{font-size:clamp(1.3rem,4vw,1.6rem)}
.r-intl-apply{margin-top:44px}
.r-intl-apply p{margin:0}
.r-intl-sub{margin-top:6px}
.r-partner{margin-top:56px;padding-top:44px;border-top:1px solid var(--rule)}
.r-partner-two{margin-top:8px}
.r-partner-faq{margin-top:40px}
@media (max-width:640px){.r-fold .steps li{grid-template-columns:30px 1fr;row-gap:4px}.r-fold .steps .t{grid-column:2;text-align:left}}

/* ===== Oct 29 2026 (overwhelm edit) #results testimonial rows. Two identical horizontal scrollers ("The numbers",
   "The wins"). The native scrollbar is hidden, scroll-snap kept; a custom progress bar (role=scrollbar), desktop prev/next
   arrows (hidden on phones) and edge fades are wired by app.js (data-rr). Screenshot and video cards share the 3/4 .rr-frame
   so the two rows look exactly the same. Stays smooth with ~104 cards: images lazy, videos preload="none" until tapped. */
.rr-block{margin-top:34px}
.rr-block:first-of-type{margin-top:26px}
.rr-head{margin:0 0 14px}
.rr-label{font-family:var(--serif);font-weight:500;font-size:clamp(1.2rem,3vw,1.5rem);letter-spacing:-.01em;margin:0}
.rr-line{margin:4px 0 0;color:var(--ink-2);font-size:.95rem}
.rr-scroller{position:relative}
.rr-row{list-style:none;margin:0;padding:0 0 4px;display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none}
.rr-row::-webkit-scrollbar{display:none}
.rr-card{flex:0 0 auto;width:min(78vw,300px);scroll-snap-align:start;margin:0}
@media (min-width:980px){.rr-card{width:286px}}
.rr-frame{display:block;position:relative;aspect-ratio:3/4;background:#121211;border-radius:10px;overflow:hidden;box-shadow:0 3px 16px rgba(15,27,22,.16);text-decoration:none}
.rr-shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.rr-cap{margin:10px 0 0;min-height:1.3em;font-size:.9rem;line-height:1.35;color:var(--ink-2);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rr-cap b{color:var(--ink);font-weight:600}
.rr-fig{font:600 .78rem/1 var(--sans);color:var(--accent);background:var(--accent-tint);padding:5px 9px;border-radius:999px;white-space:nowrap;font-variant-numeric:tabular-nums}
/* Edge fades: right by default (more content right), hidden at the end; left appears once scrolled. app.js toggles the classes. */
.rr-scroller::before,.rr-scroller::after{content:"";position:absolute;top:0;bottom:0;width:46px;z-index:2;pointer-events:none;transition:opacity .2s}
.rr-scroller::before{left:0;background:linear-gradient(to right,var(--bg),rgba(244,241,235,0));opacity:0}
.rr-scroller::after{right:0;background:linear-gradient(to left,var(--bg),rgba(244,241,235,0));opacity:1}
.rr-scroller.rr-scrolled::before{opacity:1}
.rr-scroller.rr-at-end::after{opacity:0}
/* Progress bar: thin rounded track, brand-colored thumb sized to the visible fraction; draggable and clickable (app.js). */
.rr-bar{position:relative;height:6px;margin-top:16px;border-radius:999px;background:var(--rule);cursor:pointer;touch-action:none}
.rr-thumb{position:absolute;top:0;bottom:0;left:0;width:30%;min-width:26px;border-radius:999px;background:var(--accent);pointer-events:none}
.rr-bar:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
/* Desktop prev/next arrows (>=980px). Hidden on phones. Scroll by about one viewport of cards; disabled at the ends. */
.rr-arrow{display:none}
@media (min-width:980px){
  .rr-arrow{position:absolute;top:42%;transform:translateY(-50%);z-index:4;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;border:1px solid var(--rule);background:rgba(244,241,235,.96);color:var(--ink);font-size:1.5rem;line-height:1;cursor:pointer;box-shadow:0 2px 12px rgba(15,27,22,.16)}
  .rr-prev{left:-8px}
  .rr-next{right:-8px}
  .rr-arrow:hover{background:#fff}
  .rr-arrow[disabled]{opacity:.3;cursor:default;box-shadow:none}
}
@media (prefers-reduced-motion:reduce){.rr-row{scroll-behavior:auto}}
/* Oct 29 2026 6:50 PM CT mobile pass (phones, below 980px). Chunkier, premium progress bar with a 44px touch target, and
   the two #results rows tuned so the next card peeks ~18% at 360/390/430 and captions stay readable. Desktop unchanged. */
@media (max-width:979px){
  .rr-bar{height:10px;margin-top:18px;background:rgba(15,27,22,.07);box-shadow:inset 0 0 0 1px rgba(15,27,22,.03)}
  .rr-thumb{min-width:40px;background:var(--accent);box-shadow:0 1px 4px rgba(15,27,22,.28)}
  /* Transparent 44px tall hit area centered on the visible bar. The thumb is pointer-events:none, so a pointerdown
     anywhere in this area targets .rr-bar and app.js computes from the thumb rect. Sits in the margins, no visible gap. */
  .rr-bar::before{content:"";position:absolute;left:0;right:0;top:50%;height:44px;transform:translateY(-50%)}
}
@media (max-width:640px){
  /* content width = 100vw - 40px (pad) and a 16px gap: card ~0.85*content leaves the next card peeking ~18%. */
  .rr-card{width:calc(85vw - 48px)}
  .rr-cap{font-size:.95rem}
  .rr-fig{font-size:.8rem}
}
/* Lightbox (reused from the removed #wall): a full-viewport <dialog> centering the full screenshot; dark ::backdrop and any
   click outside the image close it (app.js data-lb). JS off: the card's <a href> opens the image directly. */
.rr-lb{position:fixed;inset:0;width:100%;height:100%;max-width:100%;max-height:100%;margin:0;border:0;padding:0;background:transparent;align-items:center;justify-content:center}
.rr-lb[open]{display:flex}
.rr-lb::backdrop{background:rgba(10,10,9,.85)}
.rr-lb-img{max-width:90vw;max-height:85vh;width:auto;height:auto;border-radius:8px;box-shadow:0 10px 50px rgba(0,0,0,.5)}
.rr-lb-close{position:fixed;top:14px;right:16px;width:44px;height:44px;border-radius:999px;border:0;background:rgba(255,255,255,.94);color:#111;font-size:1.7rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.rr-lb-close:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* Course price field hides when the course is complimentary (Oct 31 2026). */
[data-course-price-wrap][hidden]{display:none}

/* ===== Tax page (/tax and the tax funnel, Nov 2026). Scoped .t-. Reuses r-sec / r-h2 / wrap / x-media from the home page.
   Reconstructed Nov 8 2026 from the live bundle. Hero: photo first on phones, two columns on desktop, floating badge. ===== */
.t-page{--gold:#B8935A}
.t-hero{padding:18px 0 44px}
.t-hero-grid{display:grid;gap:22px}
.t-hero-media{position:relative;order:-1}
.t-hero-media .x-media{margin:0}
.t-photo img{width:100%;height:auto;display:block;border-radius:10px;object-fit:cover}
.t-hero-media .t-photo img{aspect-ratio:16/11!important}
.t-badge{position:absolute;left:12px;bottom:12px;display:flex;flex-direction:column;background:#111312db;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#f4f1eb;padding:10px 14px;border-radius:10px;border:1px solid rgba(184,147,90,.6);box-shadow:0 6px 24px #00000040}
.t-badge b{font-size:1.25rem;letter-spacing:-.02em;line-height:1.1}
.t-badge span{font-size:.78rem;color:#cfc9bd}
.t-kicker{display:inline-flex;align-items:center;gap:8px;font:600 .78rem/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin:0 0 14px}
.t-dot{width:8px;height:8px;border-radius:50%;background:var(--gold)}
.t-h1{font-size:clamp(2.05rem,9.4vw,3.9rem);max-width:15ch;margin-bottom:16px}
.t-cta{margin-bottom:28px}
.t-cta .r-btn{width:100%;justify-content:center}
.t-textlink{font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:4px;margin:2px auto 0}
.t-stats{grid-template-columns:repeat(3,1fr)}
@media (min-width:640px){
  .t-cta .r-btn{width:auto}
  .t-textlink{margin:0}
}
@media (min-width:980px){
  .t-hero{padding:56px 0 96px}
  .t-hero-grid{grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .t-hero-media{order:0}
  .t-hero-media .t-photo img{aspect-ratio:4/5!important}
  .t-badge{left:-24px;bottom:32px;padding:14px 18px}
  .t-badge b{font-size:1.6rem}
}

/* How it works: four numbered steps (2 up on tablets, 4 up on wide desktop) */
.t-how{background:#fbf9f4;border-top:1px solid var(--rule)}
.t-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.t-step{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;padding:16px;background:#fff;border:1px solid var(--rule);border-radius:12px}
.t-step h3{font-size:1.08rem;margin:2px 0 4px;letter-spacing:-.01em}
.t-step p{margin:0;color:var(--ink-2);font-size:.98rem;line-height:1.5}
.t-step-mark{position:relative}
.t-step-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--accent);color:#f4f1eb}
.t-step-n{position:absolute;right:-8px;top:-8px;min-width:24px;height:24px;padding:0 5px;border-radius:999px;background:var(--gold);color:#111;font:700 .7rem/24px var(--sans);text-align:center;box-shadow:0 0 0 3px #fff}
@media (min-width:760px){.t-steps{grid-template-columns:1fr 1fr;gap:16px}}
@media (min-width:1100px){
  .t-steps{grid-template-columns:repeat(4,1fr)}
  .t-step{grid-template-columns:1fr;padding:22px}
  .t-step-mark{margin-bottom:6px}
}

/* Dark example section: gold flag pill, deduction bar, math table with one highlighted total */
.t-flag{display:inline-block;margin:0 0 16px;padding:6px 12px;border:1px solid var(--gold);border-radius:999px;color:#e4cfa8;font:600 .74rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.t-bar{margin:6px 0 26px}
.t-bar-track{display:flex;height:22px;border-radius:999px;overflow:hidden;background:#2a2d2b}
.t-bar-a{width:20%;background:var(--gold)}
.t-bar-b{width:10%;background:repeating-linear-gradient(45deg,var(--gold) 0 6px,#8E7146 6px 12px)}
.t-bar-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:10px;font-size:.85rem;color:#a9ada8}
.t-bar-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}
.t-sw-a{background:var(--gold)}
.t-sw-r{background:#2a2d2b;border:1px solid #444}
.t-math{display:grid;gap:0;margin:0;border-top:1px solid #2B2F2C}
.t-math div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;border-bottom:1px solid #2B2F2C}
.t-math dt{font-size:.95rem;color:#a9ada8}
.t-math dd{margin:0;font-size:1.2rem;font-weight:650;white-space:nowrap}
.t-math .t-math-hl{flex-direction:column;align-items:flex-start;gap:4px;border-bottom:0;padding-top:18px}
.t-math .t-math-hl dd{font-size:clamp(2.2rem,11vw,3.4rem);letter-spacing:-.035em;color:#e4cfa8;line-height:1}
.t-fine-d{font-size:.86rem;color:#a9ada8;max-width:60ch;margin:18px 0 0}
@media (min-width:980px){.t-example .wrap{max-width:900px}}

/* Two column copy + icon cards, the network callout and the photo pair */
.t-two{display:grid;gap:32px}
@media (min-width:980px){.t-two{grid-template-columns:1fr 1fr;gap:72px;align-items:start}}
.t-cards{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--rule)}
.t-cards li,.t-network{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:18px 0;border-bottom:1px solid var(--rule)}
.t-cards h3,.t-network h3{font-size:1.06rem;margin:2px 0 4px}
.t-cards p,.t-network p{margin:0;color:var(--ink-2)}
.t-card-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--rule-2);color:var(--accent);background:#fff}
.t-network{margin-top:18px;padding:18px;border:1px solid var(--gold);border-radius:12px;background:#fbf6ec}
.t-network .t-card-ic{border-color:var(--gold);color:#7a5c2e}
.t-photos{display:grid;gap:12px}
.t-photos .x-media{margin:0}
@media (max-width:979px){
  .t-photos{grid-template-columns:1fr 1fr}
  .t-photos .t-photo img{aspect-ratio:4/5!important}
}

/* Timeline: vertical with a gradient spine on phones, 7 columns horizontal on desktop */
.t-tl{list-style:none;margin:8px 0 0;padding:0;position:relative}
.t-tl:before{content:"";position:absolute;left:9px;top:10px;bottom:10px;width:2px;background:linear-gradient(var(--accent),var(--gold))}
.t-tl li{position:relative;padding:0 0 22px 38px;display:flex;flex-direction:column;gap:2px}
.t-tl li:last-child{padding-bottom:0}
.t-tl-dot{position:absolute;left:2px;top:3px;width:16px;height:16px;border-radius:50%;background:#e9e4da;border:3px solid var(--accent)}
.t-tl b{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.t-tl li>span:last-child{font-size:1.12rem;font-weight:600;color:var(--ink)}
.t-tl .t-tl-now .t-tl-dot{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 4px #b8935a40}
@media (min-width:980px){
  .t-tl{display:grid;grid-template-columns:repeat(7,1fr);gap:14px;margin-top:20px}
  .t-tl:before{inset:9px 8px auto;height:2px;width:auto;background:linear-gradient(90deg,var(--accent),var(--gold))}
  .t-tl li{padding:36px 0 0}
  .t-tl-dot{left:0;top:2px}
}

/* Note strip, proof photo and mini photo grid */
.t-note{display:flex;gap:10px;align-items:center;margin:30px 0 0;padding:14px 16px;border-radius:10px;background:#121413;color:#edeae3;font-weight:600;max-width:640px}
.t-note span{color:var(--gold);display:grid}
.t-proof-photo .t-photo img{aspect-ratio:4/5!important;object-position:50% 20%}
@media (max-width:979px){
  .t-proof-photo{max-width:420px}
  .t-proof-photo .t-photo img{aspect-ratio:1/1!important}
}
.t-mini{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}
.t-mini .x-media{margin:0}
.t-mini .t-photo img{aspect-ratio:1/1!important}

/* Team / founder cards: photo, role, bullets, credential chips (monogram tile when there is no photo) */
.t-team{display:grid;gap:14px;margin-top:22px}
.t-fc{display:grid;grid-template-columns:112px 1fr;gap:6px 16px;align-items:center;background:#fbf9f4;border:1px solid #DDD5C6;border-radius:14px;padding:16px}
.t-fc-ph .x-media{margin:0}
.t-fc-ph .t-photo img,.t-fc-img,.t-mono{width:100%;height:auto;aspect-ratio:1/1!important;border-radius:10px;object-fit:cover;object-position:50% 20%;display:block}
.t-mono{display:grid;place-items:center;background:radial-gradient(120% 120% at 30% 20%,#1b2b24,#0f1b16 70%);box-shadow:inset 0 0 0 1px #e4cfa859}
.t-mono span{font:500 2.1rem/1 var(--serif,"Newsreader",Georgia,serif);letter-spacing:.08em;background:linear-gradient(120deg,#e4cfa8,#b8935a 55%,#8e6b34);-webkit-background-clip:text;background-clip:text;color:transparent}
.t-fc-id h3{margin:0;font-size:1.12rem;line-height:1.25}
.t-fc-role{margin:4px 0 0;font-size:.86rem;line-height:1.35;color:#8e6b34;font-weight:600}
.t-fc-list{grid-column:1/-1;margin:10px 0 0;padding:0;list-style:none;display:grid;gap:7px}
.t-fc-list li{position:relative;padding-left:16px;font-size:.95rem;line-height:1.45;color:var(--ink-2,#43484D)}
.t-fc-list li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:#b8935a}
.t-proof .t-mini{max-width:640px}
.t-fc-body{grid-column:1/-1;margin-top:8px}
.t-fc-body p{margin:0 0 6px;font-size:.95rem;line-height:1.45;color:var(--ink-2,#43484D)}
.t-fc-body .t-fc-cred{color:var(--ink,#14171A);font-weight:600}
.t-fc-chips{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.t-fc-chips li{font-size:.8rem;line-height:1.3;padding:5px 10px;border-radius:999px;background:#b8935a1f;border:1px solid rgba(184,147,90,.3);color:#5f4a26}
@media (min-width:980px){
  .t-team{grid-template-columns:1fr 1fr;gap:20px}
  .t-fc{align-content:start}
  .t-fc{padding:20px}
}

/* Intake form (one column, two columns from 640px), thanks card with the Calendly embed, disclosures band */
.t-intake{background:#e9e4da}
.t-intake-wrap{max-width:720px}
.t-form{background:#fbf9f4;border:1px solid var(--rule);border-radius:14px;padding:20px 16px}
@media (min-width:640px){
  .t-form{padding:32px}
  .t-row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
}
.t-q{border:0;margin:0 0 22px;padding:0}
.t-q legend{font:600 1rem/1.3 var(--sans);color:var(--ink);margin-bottom:6px;padding:0}
.t-help{font-size:.85rem;color:var(--ink-3);margin:0 0 10px}
.t-hp{position:absolute;left:-5000px;width:1px;height:1px;overflow:hidden}
.t-submit{width:100%;justify-content:center;margin-top:6px}
.t-small{font-size:.82rem;color:var(--ink-2);margin:14px 0 0}
.t-thanks{background:#fbf9f4;border:1px solid var(--rule);border-radius:14px;padding:26px 20px;text-align:left}
.t-thanks h3{font-size:1.45rem;letter-spacing:-.02em;margin:14px 0 8px}
.t-thanks p{color:var(--ink-2);margin:0 0 8px}
.t-cal{margin:16px -8px 10px;border:1px solid var(--rule);border-radius:12px;overflow:hidden;background:#fff}
@media (max-width:600px){
  .t-booked{padding:22px 14px}
  .t-cal{margin:14px -6px 10px}
}
.t-thanks-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--accent);color:#fff}
.t-disc{padding:28px 0 36px;background:#f4f1eb;border-top:1px solid var(--rule)}
.t-disc p{font-size:.86rem;line-height:1.55;color:var(--ink-2);max-width:80ch;margin:0}

/* ===== Home page v2 (body.v-page, Nov 2026): dark hero with the canvas visualization (viz.js), strategy cards that
   expand one at a time (.js-cards), hover/active states keyed to --c (card color) and --oc (option color). ===== */
.v-page{--gold:#B8935A;--night:#0E1311}
.v-page .top{background:#f4f1ebf5}
.v-hero{background:radial-gradient(120% 70% at 70% 0%,#18231E 0%,var(--night) 60%);color:#edeae3;padding:34px 0 40px;overflow:hidden}
.v-head{max-width:860px}
.v-h1{font-size:clamp(2.25rem,10.2vw,4.6rem);line-height:1;letter-spacing:-.045em;font-weight:650;margin:0 0 16px;max-width:13ch;color:#f4f1eb}
.v-sub{font-size:1.05rem;line-height:1.6;color:#b5bab3;max-width:58ch;margin:0}
.v-grid{display:grid;gap:8px}
.v-stage{margin-top:6px}
.v-stage{position:relative}
.v-viz{position:relative;height:640px;margin:0 calc(var(--pad) * -1);touch-action:pan-y;-webkit-user-select:none;user-select:none}
.v-svg{position:absolute;inset:0;width:100%;height:100%}
.v-viz.v-live .v-svg{visibility:hidden}
.v-svg-w{display:none}
@media (min-width:520px){
  .v-svg-n{display:none}
  .v-svg-w{display:block}
}
.v-canvas{position:absolute;inset:0;width:100%;height:100%;cursor:grab;touch-action:pan-y}
.v-canvas:active{cursor:grabbing}
.v-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin:-6px 0 0;font-size:.8rem;letter-spacing:.04em;color:#8c928b}
.v-hint-ic{width:22px;height:14px;border:1.4px solid #8C928B;border-radius:8px;position:relative}
.v-hint-ic:after{content:"";position:absolute;top:3px;left:4px;width:5px;height:5px;border-radius:50%;background:var(--gold);animation:v-swipe 2.4s ease-in-out infinite}
@keyframes v-swipe{50%{transform:translate(7px)}}
.v-h2{font-size:clamp(1.5rem,6vw,2.1rem);letter-spacing:-.03em;font-weight:650;color:#f4f1eb;margin:26px 0 14px}
.v-cards{display:grid;gap:12px}
.v-card{position:relative;border-radius:16px;background:linear-gradient(180deg,#ffffff0b,#ffffff05);border:1px solid rgba(237,234,227,.12);overflow:hidden;transition:border-color .3s,box-shadow .3s,transform .3s,background .3s}
.v-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--c);opacity:.55;transition:opacity .3s,width .3s}
.js-cards .v-card{opacity:0;transform:translateY(16px)}
.js-cards .v-card.in{animation:v-in .7s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--i) * .1s)}
@keyframes v-in{to{opacity:1;transform:none}}
.v-card:hover{border-color:color-mix(in srgb,var(--c) 45%,transparent)}
.v-card.on{border-color:color-mix(in srgb,var(--c) 70%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--c) 35%,transparent),0 18px 50px #00000059,0 0 40px color-mix(in srgb,var(--c) 14%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--c) 10%,transparent),#ffffff05)}
.v-card.on:before{opacity:1;width:4px}
.v-chead{display:flex;align-items:center;gap:14px;width:100%;padding:16px 16px 14px 18px;background:none;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer}
.v-chead:focus-visible{outline:2px solid var(--c);outline-offset:-2px;border-radius:16px}
.v-orbit{position:relative;flex:none;width:40px;height:40px;border-radius:50%;border:1.4px solid color-mix(in srgb,var(--c) 70%,transparent)}
.v-orbit:before{content:"";position:absolute;inset:11px;border-radius:50%;background:radial-gradient(circle,#fff 0,var(--c) 30%,transparent 72%)}
.v-orbit i{position:absolute;inset:-1px;border-radius:50%;animation:v-spin 6s linear infinite}
.v-orbit i:after{content:"";position:absolute;top:-3px;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c)}
.v-card.on .v-orbit i{animation-duration:2.6s}
@keyframes v-spin{to{transform:rotate(360deg)}}
.v-ctxt{display:flex;flex-direction:column;gap:3px;min-width:0}
.v-tag{font:600 .7rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--c)}
.v-ctxt b{font-size:1.15rem;line-height:1.2;letter-spacing:-.02em;color:#f4f1eb}
.v-plus{position:relative;flex:none;margin-left:auto;width:28px;height:28px;border-radius:50%;border:1px solid rgba(237,234,227,.25)}
.v-plus:before,.v-plus:after{content:"";position:absolute;left:50%;top:50%;width:10px;height:1.5px;margin:-.75px 0 0 -5px;background:#edeae3;transition:transform .3s}
.v-plus:after{transform:rotate(90deg)}
.v-card.on .v-plus:after{transform:rotate(0)}
.js-cards .v-plus{display:block}
.v-plus{display:none}
.v-body{padding:0 16px 16px 18px}
.js-cards .v-body{display:grid;grid-template-rows:0fr;padding-bottom:0;transition:grid-template-rows .45s cubic-bezier(.2,.7,.2,1),padding .45s}
.js-cards .v-body>*{overflow:hidden;min-height:0}
.js-cards .v-card.on .v-body{grid-template-rows:1fr;padding-bottom:16px}
.v-line{margin:0 0 12px;color:#b5bab3;font-size:.98rem;line-height:1.5}
.v-opts{display:grid;gap:10px}
.v-opt{position:relative;display:flex;gap:12px;padding:14px;border-radius:12px;background:#0e13118c;border:1px solid rgba(237,234,227,.1);color:#edeae3;text-decoration:none;transition:border-color .25s,transform .25s,background .25s}
.v-opt:hover,.v-opt.hl,.v-opt:focus-visible{border-color:color-mix(in srgb,var(--oc) 70%,transparent);background:color-mix(in srgb,var(--oc) 9%,rgba(14,19,17,.6));color:#f4f1eb;transform:translateY(-1px)}
.v-opt:focus-visible{outline:2px solid var(--oc);outline-offset:2px}
.v-odot{flex:none;width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--oc);box-shadow:0 0 10px var(--oc)}
.v-opt b{display:block;font-size:1rem;color:#f4f1eb}
.v-opt span span{display:block;font-size:.88rem;color:#a9ada8;margin-top:2px}
.v-opt em{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-style:normal;font-weight:600;font-size:.9rem;color:var(--oc)}

/* Proof band under the hero */
.v-proof{background:#f4f1eb;padding:44px 0}
.v-proof-grid{display:grid;gap:26px;align-items:center}
.v-stats{grid-template-columns:repeat(3,1fr);max-width:640px}
.v-proof-cta p{margin:0 0 14px;color:var(--ink-2);font-size:1.05rem;max-width:40ch}
@media (min-width:640px){.v-viz{margin:0}}
@media (min-width:980px){
  .v-hero{padding:64px 0 72px}
  .v-sub{font-size:1.18rem}
  .v-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.25fr);grid-template-areas:"head stage" "side stage";column-gap:40px;align-items:start;margin-top:0}
  .v-head{grid-area:head}
  .v-side{grid-area:side}
  .v-stage{grid-area:stage;position:sticky;top:calc(var(--top-h,64px) + 8px);align-self:start}
  .v-viz{height:clamp(600px,calc(100vh - 140px),780px);margin-right:-24px}
  .v-h1{font-size:clamp(3rem,5vw,4.3rem)}
  .v-sub{font-size:1.1rem}
  .v-h2{margin-top:34px}
  .v-proof{padding:64px 0}
  .v-proof-grid{grid-template-columns:1fr 1fr}
}

/* Reduced motion and scroll margins */
@media (prefers-reduced-motion:reduce){
  .v-hint-ic:after,.v-orbit i{animation:none}
  .js-cards .v-card,.js-cards .v-card.in{animation:none;opacity:1;transform:none}
  .js-cards .v-body,.v-card,.v-opt,.v-plus:after{transition:none}
}
.v-card,.v-h2{scroll-margin-top:calc(var(--top-h,65px) + 12px);scroll-margin-bottom:28px}
.v-grid:not(.js-cards) .v-hint{display:none}

/* Brand mark (sigil + gold gradient wordmark + "by" line + tagline) used on the tax pages */
.au-mark{display:flex;align-items:center;gap:12px;margin:0 0 10px}
.au-sigil{width:44px;height:44px;flex:none}
.au-text{display:flex;flex-direction:column;line-height:1}
.au-word{font-family:var(--serif,"Newsreader",Georgia,serif);font-weight:500;font-size:2rem;letter-spacing:.2em;text-transform:uppercase;background:linear-gradient(100deg,#8e6b34,#b8935a 45%,#c9a66b 60%,#8e6b34);-webkit-background-clip:text;background-clip:text;color:transparent;padding-left:.02em}
.au-by{margin-top:6px;font:500 .72rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.au-tagline{display:flex;align-items:center;gap:10px;margin:4px 0 18px;font:600 .74rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#8e6b34}
.au-tagline:before{content:"";width:28px;height:1px;background:#b8935a}
@media (min-width:980px){
  .au-sigil{width:54px;height:54px}
  .au-word{font-size:2.6rem}
  .au-by{font-size:.78rem}
}

/* ===== Tax calculator (.t-calc, [data-taxcalc] in app.js). Inputs card left, dark results card right (sticky on desktop).
   Sliders use --p for the filled fraction; .tc-flash animates a changed chip. ===== */
.t-calc{background:#fbf9f4;border-top:1px solid var(--rule)}
.t-flag-l{color:#8e6b34;border-color:#b8935a}
.tc-grid{display:grid;gap:16px}
.tc-in,.tc-out{background:#fff;border:1px solid var(--rule);border-radius:16px;padding:18px}
.tc-row{padding:14px 0;border-bottom:1px solid var(--rule)}
.tc-row:first-child{padding-top:2px}
.tc-row:last-child{border-bottom:0;padding-bottom:2px}
.tc-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tc-top label{font-weight:600;font-size:.98rem;color:var(--ink);margin-right:auto}
.tc-num{width:9.2em;padding:9px 12px;border:1px solid var(--rule);border-radius:10px;background:#fbf9f4;font:650 1.05rem/1.2 var(--sans);text-align:right;color:var(--ink);font-variant-numeric:tabular-nums}
.tc-num:focus{outline:2px solid #B8935A;outline-offset:1px;background:#fff}
.tc-usd{font:650 .98rem/1.2 var(--sans);color:#8e6b34;font-variant-numeric:tabular-nums}
.tc-y2{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#b8935a1f;border:1px solid rgba(228,207,168,.3)}
.tc-y2 .tc-ded{margin:0;font-size:.88rem}
.tc-y2 .tc-k{text-transform:none;letter-spacing:0;font-size:.92rem}
.tc-hasd .tc-top label{flex-basis:100%}
.tc-mgr{padding:14px 0 0}
.tc-mgr .tc-seg span{padding:9px 12px;font-size:.86rem}
.tc-mid{margin:6px 0 4px;font-size:2rem;font-weight:650;letter-spacing:-.03em;line-height:1;color:#f4f1eb;font-variant-numeric:tabular-nums}
.tc-range{--p:50%;-webkit-appearance:none;appearance:none;width:100%;height:36px;margin:8px 0 0;background:transparent;cursor:pointer;touch-action:pan-y}
.tc-range::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,#B8935A 0 var(--p),#E6E0D4 var(--p) 100%)}
.tc-range::-moz-range-track{height:6px;border-radius:999px;background:#e6e0d4}
.tc-range::-moz-range-progress{height:6px;border-radius:999px;background:#b8935a}
.tc-range::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;margin-top:-11px;border-radius:50%;background:#fff;border:2px solid #B8935A;box-shadow:0 2px 8px #0000002e}
.tc-range::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:2px solid #B8935A;box-shadow:0 2px 8px #0000002e}
.tc-range:focus-visible{outline:2px solid #B8935A;outline-offset:2px;border-radius:8px}
.tc-ends{display:flex;justify-content:space-between;font-size:.74rem;color:var(--ink-3,#8A8F88);margin-top:-2px}
.tc-note{margin:6px 0 0;font-size:.82rem;color:var(--ink-2);line-height:1.4}
.tc-out{background:#121413;color:#edeae3;border-color:#121413;position:relative;overflow:hidden}
.tc-out:before{content:"";position:absolute;inset:-40% -20% auto auto;width:360px;height:360px;background:radial-gradient(circle,rgba(184,147,90,.22),transparent 65%);pointer-events:none}
.tc-k{margin:0;font:600 .74rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#e4cfa8}
.tc-big{margin:10px 0 6px;font-size:clamp(2.6rem,13vw,4.2rem);font-weight:650;letter-spacing:-.04em;line-height:1;color:#f4f1eb;font-variant-numeric:tabular-nums}
.tc-ded{margin:0 0 16px;color:#a9ada8;font-size:.98rem}
.tc-ded b{color:#f4f1eb;font-variant-numeric:tabular-nums}
.tc-eq{display:grid;gap:8px;padding:14px 0;border-top:1px solid #2B2F2C;border-bottom:1px solid #2B2F2C;position:relative}
.tc-line{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:6px}
.tc-op{color:#b8935a;font-weight:600;font-size:1.05rem;text-align:center}
.tc-chip{display:flex;flex-direction:column;gap:3px;padding:8px 9px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(237,234,227,.12);min-width:0;transition:background .5s,border-color .5s}
.tc-chip b{font-size:.92rem;font-weight:650;color:#f4f1eb;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tc-chip i{font-style:normal;font-size:.7rem;color:#a9ada8;line-height:1.2}
.tc-end .tc-chip:last-child{background:#b8935a2e;border-color:#e4cfa880}
.tc-end .tc-chip:last-child b{color:#e4cfa8}
.tc-flash{animation:tc-flash .6s ease-out}
@keyframes tc-flash{0%{background:#e4cfa859;border-color:#e4cfa8}}
.tc-cap{margin:4px 0 0;font-size:.82rem;color:#e4cfa8}
.tc-bars{display:grid;gap:12px;padding-top:16px}
.tc-bar{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:baseline}
.tc-bl{font-size:.86rem;color:#a9ada8}
.tc-bar b{font-variant-numeric:tabular-nums;color:#f4f1eb}
.tc-track{grid-column:1/-1;display:flex;height:14px;border-radius:999px;overflow:hidden;background:#2a2d2b}
.tc-fill{height:100%;transition:width .45s cubic-bezier(.2,.7,.2,1)}
.tc-fill-a,.tc-fill-b{background:#6e736d}
.tc-wiped{background:repeating-linear-gradient(45deg,#b8935a 0 6px,#8e7146 6px 12px)}
.tc-wipe{margin:2px 0 0;color:#cfc9bd;font-size:.95rem}
.tc-wipe b{color:#e4cfa8;font-size:1.15rem}
.tc-cta{margin-top:18px;width:100%;justify-content:center;background:#e4cfa8;color:#121413;border-color:#e4cfa8}
.tc-cta:hover{background:#f4f1eb;color:#121413}
.r24 .tc-book{width:100%;min-height:56px;font-size:1.05rem;background:#e4cfa8;color:#121413;border-color:#e4cfa8;box-shadow:0 8px 22px #00000047}
.r24 .tc-book:hover{background:#f4f1eb;color:#121413}
.tc-fine{margin-top:16px;font-size:.84rem;color:var(--ink-2);line-height:1.5;max-width:70ch}
.tc-fine p{margin:0 0 6px}
@media (min-width:980px){
  .tc-grid{grid-template-columns:1fr 1fr;gap:24px;align-items:start}
  .tc-in,.tc-out{padding:24px}
  .tc-out{position:sticky;top:calc(var(--top-h,64px) + 16px)}
  .tc-cta{width:auto}
}
@media (prefers-reduced-motion:reduce){
  .tc-fill,.tc-chip{transition:none}
  .tc-flash{animation:none}
}

/* Calculator extras: KPI grid, info tip, sticky mini total on phones, presets, segmented controls, split line */
.tc-h3{font-size:clamp(1.4rem,4.6vw,2rem);letter-spacing:-.03em;font-weight:650;margin:40px 0 10px}
.tc-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}
.tc-kpis div{padding:10px 12px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(237,234,227,.1)}
.tc-kpis dt{font-size:.74rem;color:#a9ada8;line-height:1.25}
.tc-kpis dd{margin:4px 0 0;font-size:1.1rem;font-weight:650;color:#f4f1eb;font-variant-numeric:tabular-nums}
.tc-tip{margin-top:8px;font-size:.84rem;color:var(--ink-2)}
.tc-tip summary{cursor:pointer;color:#8e6b34;font-weight:600;list-style:none}
.tc-tip summary::-webkit-details-marker{display:none}
.tc-tip summary:before{content:"i";display:inline-grid;place-items:center;width:16px;height:16px;margin-right:6px;border-radius:50%;border:1px solid #B8935A;font:700 .66rem/1 var(--serif);color:#8e6b34;vertical-align:1px}
.tc-tip ul{list-style:none;margin:8px 0 6px;padding:10px 12px;background:#fbf9f4;border:1px solid var(--rule);border-radius:10px;display:grid;gap:4px}
.tc-tip li{display:flex;justify-content:space-between}
.tc-tip p{margin:0}
.t-calc input.tc-num{width:10em;max-width:52%;flex:none;margin:0;padding:9px 12px;min-height:44px}
.tc-mini{position:sticky;top:calc(var(--top-h,56px) + 6px);z-index:2;display:flex;justify-content:space-between;align-items:center;margin:-4px -6px 8px;padding:10px 14px;border-radius:12px;background:#121413;color:#cfc9bd;font-size:.85rem;box-shadow:0 6px 18px #0000002e}
.tc-mini b{color:#e4cfa8;font-size:1.1rem;font-variant-numeric:tabular-nums}
@media (min-width:980px){.tc-mini{display:none}}
.tc-picks{display:grid;gap:12px;padding:2px 0 14px;border-bottom:1px solid var(--rule)}
.tc-pick{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tc-pl{font-weight:600;font-size:.98rem;color:var(--ink);margin-right:auto}
.tc-seg{display:inline-flex;border:1px solid var(--rule);border-radius:999px;padding:3px;background:#fbf9f4}
.tc-seg label{position:relative;cursor:pointer}
.tc-seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.tc-seg span{display:block;padding:9px 14px;min-height:40px;border-radius:999px;font:600 .9rem/1.4 var(--sans);color:var(--ink-2)}
.tc-seg input:checked+span{background:#121413;color:#f4f1eb}
.tc-seg input:focus-visible+span{outline:2px solid #B8935A;outline-offset:1px}
.tc-sel{min-height:44px;max-width:100%;padding:9px 12px;border:1px solid var(--rule);border-radius:10px;background:#fbf9f4;font:600 .98rem/1.2 var(--sans);color:var(--ink)}
.tc-sel:focus{outline:2px solid #B8935A;outline-offset:1px}
.tc-split{display:flex;gap:18px;flex-wrap:wrap;margin:0 0 8px;color:#a9ada8;font-size:.98rem}
.tc-split b{color:#e4cfa8;font-variant-numeric:tabular-nums}

/* Year end checklist (numbered gold counters) and the owner comparison columns (dark) */
.t-ye{background:#fbf9f4;border-top:1px solid var(--rule)}
.t-ye-wrap{max-width:860px}
.t-ye-list{list-style:none;margin:18px 0 0;padding:0;counter-reset:ye;display:grid;gap:0;border-top:1px solid var(--rule)}
.t-ye-list li{counter-increment:ye;display:grid;grid-template-columns:34px 1fr;column-gap:12px;padding:16px 0;border-bottom:1px solid var(--rule)}
.t-ye-list li:before{content:counter(ye);grid-row:span 2;width:28px;height:28px;border-radius:50%;background:var(--gold);color:#111;font:700 .8rem/28px var(--sans);text-align:center}
.t-ye-list h3{font-size:1.04rem;margin:2px 0 4px}
.t-ye-list p{margin:0;color:var(--ink-2)}
.t-owner-grid{display:grid;gap:18px;margin-top:22px}
@media (min-width:860px){.t-owner-grid{grid-template-columns:1fr 1fr}}
.t-owner-col{border:1px solid #2F3330;border-radius:14px;padding:18px 18px 8px;background:#181b19}
.t-owner-col h3{margin:0 0 8px;font-size:1.06rem;color:#e4cfa8}
.t-owner-col ul{list-style:none;margin:0;padding:0}
.t-owner-col li{display:grid;gap:2px;padding:10px 0;border-top:1px solid #2A2D2B}
.t-owner-col li b{color:#f4f1eb}
.t-owner-col li span{color:#a9ada8;font-size:.94rem}

/* ===== Tax blog (.tb-): narrow measure, serif headings, callout box, anchor cards, example quote, post list ===== */
.tb-wrap{max-width:760px}
.tb-kicker{margin:0 0 10px;color:#8e6b34;font:600 .76rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase}
.tb-h1{font-family:var(--serif);font-weight:500;font-size:clamp(1.9rem,6vw,2.9rem);line-height:1.1;margin:0 0 14px}
.tb-lede{font-size:1.1rem;color:var(--ink-2);margin:0 0 22px}
.tb-body h2{font-family:var(--serif);font-weight:500;font-size:1.5rem;margin:34px 0 10px}
.tb-body h3{font-size:1.06rem;margin:22px 0 6px}
.tb-body p,.tb-body li{line-height:1.6;color:var(--ink)}
.tb-body ul,.tb-body ol{padding-left:1.2em}
.tb-box{border:1px solid var(--gold);background:#fbf6ec;border-radius:12px;padding:16px 18px;margin:18px 0}
.tb-box p{margin:0}
.tb-box p+p{margin-top:8px}
.tb-cards{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px}
@media (min-width:700px){.tb-cards{grid-template-columns:1fr 1fr}}
.tb-card{border:1px solid var(--rule);border-radius:12px;padding:12px 14px;background:#fbf9f4;scroll-margin-top:90px}
.tb-card:target{border-color:var(--gold);box-shadow:0 0 0 3px #b8935a40}
.tb-card b{display:block}
.tb-card span{display:block;font-size:.9rem;color:var(--ink-2);margin-top:2px}
.tb-ex{border-left:3px solid var(--gold);padding:4px 0 4px 14px;margin:14px 0}
.tb-ex p{margin:0}
.tb-ex p+p{margin-top:4px}
.tb-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:14px}
.tb-list a{display:block;border:1px solid var(--rule);border-radius:14px;padding:18px;background:#fbf9f4;text-decoration:none;color:inherit}
.tb-list a:hover{border-color:var(--gold)}
.tb-list b{display:block;font-family:var(--serif);font-weight:500;font-size:1.3rem;line-height:1.2}
.tb-list span{display:block;color:var(--ink-2);margin-top:6px}
.tb-src{font-size:.86rem;color:var(--ink-2)}
.tb-src li{line-height:1.5;word-break:break-word}
.tb-disc{font-size:.88rem;color:var(--ink-2);border-top:1px solid var(--rule);padding-top:14px;margin-top:28px}
.tb-back{display:inline-block;margin:0 0 18px;font-size:.9rem}

/* ===== Tax site header (.auh, [data-auh] in app.js): brand lockup, compact nav, live pill, mobile sheet tweaks ===== */
.auh .wrap{gap:14px}
.auh-brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);min-height:44px;flex:none}
.auh-sigil{width:30px;height:30px;flex:none}
.auh-word{font-family:var(--serif,"Newsreader",Georgia,serif);font-weight:500;font-size:1.12rem;letter-spacing:.18em;text-transform:uppercase;background:linear-gradient(100deg,#8e6b34,#b8935a 45%,#c9a66b 60%,#8e6b34);-webkit-background-clip:text;background-clip:text;color:transparent}
.auh-by{font:600 .6rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);padding-left:8px;border-left:1px solid var(--rule-2,#cfc6b6)}
.auh-nav{gap:0}
.auh-nav a{padding:10px 9px;font-size:.88rem;white-space:nowrap}
.auh-nav a.auh-home{color:var(--ink-3,#6b655c);font-size:.8rem;padding-left:12px;margin-left:4px;border-left:1px solid var(--rule)}
.auh-nav .btn{margin-left:8px}
.auh-live{display:inline-flex;align-items:center;gap:5px;margin-left:5px;padding:3px 7px 3px 6px;border-radius:999px;background:#e4eee6;color:#1d5a3a;font:700 .6rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;vertical-align:1px}
.auh-live i{width:6px;height:6px;border-radius:50%;background:#2fa15f;box-shadow:0 0 #2fa15f80;animation:auhPulse 2.4s ease-out infinite}
@keyframes auhPulse{0%{box-shadow:0 0 #2fa15f80}70%{box-shadow:0 0 0 6px #2fa15f00}to{box-shadow:0 0 #2fa15f00}}
.auh .sheet a.auh-tracker .auh-t{font:inherit;color:inherit;display:inline-flex;align-items:center}
.auh .sheet .btn{margin-top:18px}
.auh .sheet a.auh-home-m{border-bottom:0;margin-top:10px;font:500 .95rem var(--sans);color:var(--ink-2);min-height:48px}
@media (max-width:379px){.auh-by{display:none}}
@media (min-width:1000px) and (max-width:1199px){
  .auh-by{display:none}
  .auh-nav a{padding:10px 7px}
}
@media (prefers-reduced-motion:reduce){.auh-live i{animation:none}}

/* Kicker wraps to two lines on narrow phones */
.t-kicker{align-items:flex-start;line-height:1.35}
.t-kicker .t-dot{margin-top:.32em;flex:none}

/* Hero photo reel ([data-reel] in app.js): cross fading frames with a slow Ken Burns zoom, chip and dots */
.au-reel{position:relative;overflow:hidden;border-radius:10px;aspect-ratio:16/11;background:#2a2723;isolation:isolate}
.au-reel-f{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.4s ease}
.au-reel-f.is-on{opacity:1}
.au-reel-f.is-top{z-index:1}
.au-reel-f img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02);transform-origin:50% 50%;will-change:transform}
.au-reel-f.is-on img{animation:auKb 9s ease-out forwards}
.au-reel-f:nth-child(2n) img{transform-origin:30% 60%}
.au-reel-f:nth-child(3n) img{transform-origin:70% 40%}
@keyframes auKb{0%{transform:scale(1.02)}to{transform:scale(1.11)}}
.au-reel:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,#0000002e,#0000 26% 70%,#00000047)}
.au-reel-chip{position:absolute;z-index:3;right:12px;top:12px;display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#1113129e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#f4f1eb;font:600 .68rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(228,207,168,.35)}
.au-reel-chip i{width:6px;height:6px;border-radius:50%;background:#e4cfa8}
.au-reel-dots{position:absolute;z-index:3;right:14px;bottom:14px;display:flex;gap:5px;margin:0;padding:0;list-style:none}
.au-reel-dots li{width:16px;height:3px;border-radius:2px;background:#fff6;transition:background .4s,width .4s}
.au-reel-dots li.is-on{width:26px;background:#e4cfa8}
.t-hero-media .t-badge{z-index:4}
@media (min-width:980px){
  .au-reel{aspect-ratio:4/5}
  .au-reel-chip{right:16px;top:16px}
}
@media (prefers-reduced-motion:reduce){
  .au-reel-f{transition:none}
  .au-reel-f.is-on img{animation:none}
}

/* Setup photo crop */
.t-setup img{object-position:50% 62%}
@media (min-width:980px){.t-setup img{aspect-ratio:4/3!important}}

/* Tax FAQ: grouped questions, gold rules, reuses .faq from the home page */
.t-faq{background:#fff;border-top:1px solid var(--rule)}
.t-faq-wrap{max-width:860px}
.t-faq-g{margin-top:30px}
.t-faq-gh{font:700 .78rem/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#8e6b34;margin:0 0 10px}
.t-faq .faq{border-top:1px solid var(--gold)}
.t-faq .faq summary{font-size:1.1rem;padding:16px 38px 16px 0}
.t-faq .faq summary:after{top:22px;border-color:#8e6b34}
.t-faq .faq details[open] summary:after{top:27px}
.t-faq .faq summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
.t-faq .faq .a{padding:0 0 18px;font-size:1rem;line-height:1.6}
.t-faq .faq .a p{margin:0 0 10px}
.t-faq .faq .a p:last-child{margin:0}
#faq,.t-faq details{scroll-margin-top:calc(var(--top-h,64px) + 12px)}
@media (min-width:1000px) and (max-width:1199px){.auh-nav a{padding:10px 6px}}

/* Design section photo grid (one wide, then pairs) */
.t-design{background:#fbf9f4;border-top:1px solid var(--rule)}
.t-d-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start}
.t-d-ph{margin:0;border-radius:12px;overflow:hidden;aspect-ratio:4/5;background:#e9e4da}
.t-d-ph img{width:100%;height:100%;object-fit:cover;display:block}
.t-d-ph:first-child{grid-column:span 2;aspect-ratio:3/2}
.t-d-cap{grid-column:span 2;margin:2px 0 0;font-size:.82rem;color:var(--ink-3,#6b655c)}
@media (min-width:1000px) and (max-width:1199px){.auh-nav a{padding:10px 5px;font-size:.84rem}}
@media (min-width:1200px) and (max-width:1359px){.auh-nav a{padding:10px 7px;font-size:.86rem}}

/* Header refinements: the "by" line is a link; tighter nav between 1000 and 1360px */
.auh-brand .auh-mk{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);min-height:44px}
a.auh-by{display:inline-flex;align-items:center;min-height:44px;padding:0 6px 0 10px;margin-left:2px;position:relative;border-left:0;border-radius:6px;text-decoration:none;color:var(--ink-2);transition:color .15s}
a.auh-by:before{content:"";position:absolute;left:0;top:50%;width:1px;height:12px;margin-top:-6px;background:var(--rule-2,#cfc6b6)}
a.auh-by:hover{color:#8e6b34;text-decoration:underline;text-decoration-color:#b8935a99;text-underline-offset:4px}
a.auh-by:focus-visible,.auh-brand .auh-mk:focus-visible{outline:2px solid var(--gold,#B8935A);outline-offset:2px;border-radius:6px}
.auh-nav a{padding:10px}
@media (min-width:1000px) and (max-width:1199px){
  a.auh-by{display:inline-flex;padding-right:2px}
  .auh-nav a{padding:10px 5px;font-size:.82rem}
  .auh-word{font-size:1rem;letter-spacing:.14em}
  .auh-nav .btn{margin-left:6px}
  .auh .wrap{gap:10px}
}
@media (min-width:1200px) and (max-width:1359px){.auh-nav a{padding:10px 9px;font-size:.88rem}}
@media (max-width:379px){
  a.auh-by{display:inline-flex;letter-spacing:.08em;padding-left:8px}
  .auh-word{letter-spacing:.12em}
}

/* Wordmark stack with the small "invest" line under it */
.auh-wd{display:flex;flex-direction:column;justify-content:center;line-height:1}
.auh-inv{font:600 .5rem/1 var(--sans);letter-spacing:.32em;text-transform:uppercase;color:#8e6b34;margin-top:3px;padding-left:1px}

/* Small tax page tweaks: timeline spacing, start-by callout, sub headings, anchors, playbook line */
.t-how-tl{margin-top:34px}
.t-startby{margin:16px 0 0;padding:12px 14px;border-left:3px solid #B8935A;background:#b8935a1a;border-radius:0 10px 10px 0;font-size:.95rem;line-height:1.45;color:var(--ink,#14171A)}
.t-sub-h{font-size:1.3rem;letter-spacing:-.01em;margin:30px 0 6px}
.t-anchor{display:block;position:relative;top:-80px;visibility:hidden}
.t-playbook{margin:18px 0 0;font-size:1.02rem;color:#e4cfa8}
.tc-ex{margin:0 0 18px}
.tc-ex-k{margin:0 0 8px;font:600 .7rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#e4cfa8}
.tb-tl{margin:14px 0 6px}
.t-proof .t-playbook{color:#8e6b34;font-weight:500}

/* Profession cards (.t-pc): 2 up on phones, 4 up on desktop; one card variant for the profession pages */
.t-pcs{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (min-width:980px){.t-pcs{grid-template-columns:repeat(4,1fr);gap:16px}}
.t-pcs-one{grid-template-columns:1fr;max-width:420px}
.t-pc{display:flex;flex-direction:column;border:1px solid var(--rule);border-radius:12px;background:#fbf9f4;padding:12px;min-width:0}
.t-pc-who{margin:0 0 8px;font:600 .9rem/1.25 var(--sans);color:var(--ink)}
.t-pc-dl{margin:0;display:grid;gap:6px}
.t-pc-dl div{display:grid;gap:0}
.t-pc-dl dt{font-size:.72rem;line-height:1.3;color:var(--ink-3);letter-spacing:.02em}
.t-pc-dl dd{margin:0;font:500 1rem/1.25 var(--sans);font-variant-numeric:tabular-nums lining-nums;color:var(--ink)}
.t-pc-big dd{font-family:var(--serif);font-size:1.45rem;line-height:1.1;color:#7a5c2e}
.t-pc-note{margin:8px 0 10px;font-size:.74rem;line-height:1.35;color:var(--ink-2)}
.t-pc-btn{margin-top:auto;width:100%;justify-content:center;white-space:normal;text-align:center;font-size:.8rem;padding-left:8px;padding-right:8px}
.t-who{margin:16px 0 0;font-size:.9rem;color:var(--ink-2)}
@media (min-width:640px){
  .t-pc{padding:16px}
  .t-pc-big dd{font-size:1.7rem}
  .t-pc-who{font-size:1rem}
}

/* Compare cards (.t-cmp): three columns from 860px, the middle one highlighted */
.t-cmp{display:grid;gap:12px;margin-top:20px}
@media (min-width:860px){.t-cmp{grid-template-columns:repeat(3,1fr);gap:16px}}
.t-cmp-c{border:1px solid var(--rule);border-radius:12px;background:#fbf9f4;padding:14px 16px}
.t-cmp-c.is-us{border-color:var(--gold);background:#fbf6ec;box-shadow:0 0 0 1px var(--gold) inset}
.t-cmp-c h3{font-size:1.15rem;margin:0 0 6px}
.t-cmp-c.is-us h3{color:#7a5c2e}
.t-cmp-c dl{margin:0}
.t-cmp-c dl div{display:grid;grid-template-columns:96px 1fr;gap:10px;padding:8px 0;border-top:1px solid var(--rule)}
.t-cmp-c dt{font:600 .74rem/1.4 var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}
.t-cmp-c dd{margin:0;font-size:.92rem;line-height:1.4;color:var(--ink)}

/* Breadcrumbs and the "for your profession" pages (.t-for) */
.tb-crumbs{display:flex;gap:8px;align-items:center;font-size:.86rem;color:var(--ink-3);margin:0 0 16px}
.t-for-cta{margin:0 0 6px}
.t-for-h2{font-family:var(--serif);font-weight:500;font-size:1.5rem;margin:30px 0 10px}
.t-for-why{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--rule)}
.t-for-why li{display:grid;gap:3px;padding:12px 0;border-bottom:1px solid var(--rule)}
.t-for-why b{font-size:1rem}
.t-for-why span{color:var(--ink-2);font-size:.96rem;line-height:1.5}
.t-for-rule{font-size:.92rem;color:var(--ink-2);margin:14px 0 0}
.t-for-btns{display:flex;flex-wrap:wrap;gap:10px}
.t-for .t-flag{margin-bottom:4px}
.t-row2 .field select{width:100%}

/* Compact calculator (.tcs): tighter rows and a dark results card with three KPIs */
.tcs.r-sec{padding-top:28px;padding-bottom:28px}
.tcs .t-flag{margin-bottom:8px}
.tcs-h2{margin:0 0 10px}
.tcs-grid{display:grid;gap:12px}
@media (min-width:900px){.tcs-grid{grid-template-columns:1fr 1fr;gap:28px;align-items:start}}
.tcs-in .tc-row{padding:6px 0 4px}
.tcs-in .tc-range{height:30px;margin-top:2px}
.tcs-in .tc-mgr,.tcs-in .tc-down{padding:8px 0 0}
.tcs-in .tc-seg span{padding:7px 12px;min-height:36px}
.tcs-out{background:#121413;color:#f4f1eb;border-radius:14px;padding:14px 14px 12px}
.tcs-big{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:8px;margin:0}
.tcs-big div{min-width:0}
.tcs-big dt{font-size:.7rem;line-height:1.25;color:#a9ada8;letter-spacing:.02em}
.tcs-ex{margin:2px 0 0;font-size:.66rem;line-height:1.2;color:#a9ada8}
.tcs-big dd{margin:2px 0 0;font:500 1.15rem/1.15 var(--sans);font-variant-numeric:tabular-nums lining-nums;color:#f4f1eb;white-space:nowrap}
.tcs-big .tcs-k1 dd{font-family:var(--serif);font-size:1.5rem;color:#e4cfa8}
@media (min-width:640px){
  .tcs-big dd{font-size:1.5rem}
  .tcs-big .tcs-k1 dd{font-size:2rem}
}
.tcs-line{margin:10px 0 0;font-size:.86rem;line-height:1.4;color:#d9d5cc}
.tcs-line b{color:#f4f1eb}
.tcs-cap{margin:4px 0 0;font-size:.78rem;color:#a9ada8}
.tcs-out .tc-cta{margin-top:10px;min-height:46px}
.tcs-fine{margin:8px 0 0;font-size:.72rem;line-height:1.4;color:#a9ada8}
.tcs-fine a{color:#e4cfa8}

/* ===== Deliverables page (.dv-): three column grid, dark price card, pending badge, proforma links ===== */
.dv-wrap{max-width:920px}
.dv-h1{margin:6px 0 10px}
.dv-grid{display:grid;gap:14px;margin-top:22px}
@media (min-width:900px){.dv-grid{grid-template-columns:repeat(3,1fr)}}
.dv-g{background:#fbf9f4;border:1px solid #DDD5C6;border-radius:14px;padding:16px}
.dv-g h2{margin:0 0 10px;font-size:1.05rem;color:#8e6b34}
.dv-g ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.dv-g li b{display:block;font-size:.98rem}
.dv-g li span{display:block;font-size:.92rem;line-height:1.45;color:var(--ink-2,#43484D)}
.dv-price{margin-top:22px;background:#121413;color:#f4f1eb;border-radius:14px;padding:20px}
.dv-price h2{margin:0 0 8px;font-size:1.05rem;color:#e4cfa8}
.dv-fee{margin:0;font-size:1.1rem}
.dv-fee b{font:500 2rem/1 var(--serif,"Newsreader",Georgia,serif);color:#e4cfa8;margin-right:6px}
.dv-pend{margin:14px 0 0;padding:10px 12px;border:1px dashed #C9A66B;border-radius:10px;color:#c9cfc8;font-size:.92rem;line-height:1.45;background:#c9a66b14}
.dv-badge{display:inline-block;margin-right:8px;padding:2px 8px;border-radius:999px;background:#9a6b12;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.dv-note{margin:12px 0 16px;font-size:.88rem;color:#a9ada8}
.dv-disc{margin:18px 0 0;font-size:.8rem;color:var(--ink-3,#5F6367)}
.dv-h3{margin:18px 0 8px;font:600 .74rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#e4cfa8}
.dv-sep{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.95rem}
.dv-sep b{color:#f4f1eb}
.dv-sep span{color:#c9cfc8}
.dv-two{display:grid;gap:14px;margin-top:14px}
@media (min-width:900px){.dv-two{grid-template-columns:1fr 1fr}}
.dv-p{margin:0 0 8px;font-size:.95rem;line-height:1.5}
.dv-small{margin:10px 0 0;font-size:.85rem;color:var(--ink-3,#5F6367)}
.dv-g .dv-chips{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.dv-chips li{padding:4px 10px;border:1px solid #DDD5C6;border-radius:999px;font-size:.85rem;background:#fff}
.dv-pfw{margin-top:14px}
.dv-pf ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.dv-pf li a,.dv-pf li span{display:inline-block;padding:8px 14px;border:1px solid #DDD5C6;border-radius:10px;background:#fff;font-weight:600;font-size:.92rem}
.dv-pf-off li span{color:#8a8f93;background:#f1eee7;border-style:dashed}
.dv-pf-s{margin:0 0 10px;font-weight:600;color:#9a6b12}
.dv-cta{margin-top:18px}
.cb>.wrap>.dv-g{margin-top:14px}
.cb-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.cb-steps a{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-weight:600;font-size:.92rem}
.cb-steps a svg{display:inline}
.dv-g .cb-rows{gap:6px}
.cb-rows li{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #ebe5d9;padding-bottom:6px}
.dv-g .cb-rows li b,.dv-g .cb-rows li span{display:inline;font-weight:500}
.cb-rows li:last-child{border:0;border-top:2px solid #DDD5C6;padding-top:6px}
.dv-g .cb-rows li:last-child b,.dv-g .cb-rows li:last-child span{font-weight:700;color:inherit}
.dv-pf-n{margin:10px 0 0;font-size:.82rem;font-weight:600;color:#9a6b12}

/* ===== Revenue table (.rv-, [data-taxrev] in app.js): inputs left, dark table right. Cards on phones, a real grid from 860px. ===== */
.rv.r-sec{padding-top:28px;padding-bottom:28px}
.rv .t-flag{margin-bottom:8px}
.rv-h2{margin:0 0 4px}
.rv-lab{margin:0 0 14px;color:var(--ink-2);font-size:.95rem}
.rv-grid{display:grid;gap:12px}
.rv-in{background:#fff;border:1px solid var(--rule);border-radius:16px;padding:6px 16px 14px}
.rv-in .tc-row{padding:12px 0}
.rv-in .tc-num{width:7.6em}
.rv-mgr{padding-top:12px}
.rv-out{background:#121413;color:#edeae3;border-radius:16px;padding:14px;min-width:0}
.rv-t{display:grid;gap:8px}
.rv-r{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px;border-radius:12px;background:#ffffff0a;border:1px solid rgba(237,234,227,.1)}
.rv-p{grid-column:1/-1;font:650 1.05rem/1.2 var(--sans);color:#e4cfa8}
.rv-p:after{content:" home";font-weight:500;color:#a9ada8;font-size:.86rem}
.rv-c{display:flex;flex-direction:column;gap:2px;padding:7px 9px;border-radius:9px;background:#ffffff0a;min-width:0}
.rv-c:before{content:attr(data-l);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:#a9ada8}
.rv-c b{font:650 1.12rem/1.15 var(--sans);color:#f4f1eb;font-variant-numeric:tabular-nums}
.rv-c small{font-size:.74rem;color:#cfc9bd;line-height:1.3}
.rv-u{font-size:.62em;font-weight:500;color:#a9ada8;margin-left:1px}
.rv-mo{font-size:.78rem;color:#cfc9bd;font-variant-numeric:tabular-nums;line-height:1.25}
.rv-c.on .rv-mo{color:#e4cfa8;font-size:.84rem}
.rv-c.on{grid-column:1/-1;order:-1;background:#b8935a33;border:1px solid rgba(228,207,168,.5)}
.rv-c.on b{color:#e4cfa8;font-size:1.5rem}
.rv-hd{display:none}
.rv-fine{margin:12px 0 0;font-size:.8rem;color:#a9ada8;line-height:1.45}
@media (min-width:860px){
  .rv-grid{grid-template-columns:minmax(300px,.9fr) 1.6fr;gap:20px;align-items:start}
  .rv-out{padding:18px}
  .rv-t{gap:0}
  .rv-r{grid-template-columns:.8fr repeat(var(--n,4),1fr);gap:0;padding:0;border:0;border-radius:0;background:none;border-bottom:1px solid #2B2F2C;align-items:stretch}
  .rv-hd{display:grid;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#a9ada8}
  .rv-hd>div{padding:8px 10px}
  .rv-hd i{display:block;font-style:normal;text-transform:none;letter-spacing:0;font-size:.72rem}
  .rv-hd>.on{color:#e4cfa8;background:#b8935a33;border-radius:10px 10px 0 0}
  .rv-p{grid-column:auto;padding:12px 10px;font-size:1rem;align-self:center}
  .rv-p:after{content:""}
  .rv-c{padding:10px;border-radius:0;background:none;justify-content:center}
  .rv-c:before{display:none}
  .rv-c.on{grid-column:auto;order:0;border:0;border-radius:0;background:#b8935a33}
  .rv-c.on b{font-size:1.12rem}
}

/* ===== Calendly applications (Nov 8 2026): /arbitrage/apply, /mentorship/apply, /tax/apply (views/sales/applyCal.js) ===== */
.ap{padding:28px 0 72px}
.ap-grid{display:grid;gap:24px}
.ap-eyebrow{font:600 .72rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#1f4434;margin:0 0 12px;display:flex;align-items:center;gap:10px}
.ap-eyebrow:before{content:"";width:22px;height:1px;background:currentColor}
.ap-h1{font-size:clamp(2rem,6.4vw,3.1rem);line-height:1.04;max-width:15ch}
.ap-lede{font-size:1.08rem;line-height:1.55;color:var(--ink-2);max-width:42ch;margin:14px 0 0}
.ap-card{background:#fbf9f4;border:1px solid #d9d1c2;border-radius:20px;overflow:hidden;box-shadow:0 1px 0 #fff inset,0 24px 60px -32px rgba(20,23,26,.35),0 2px 6px rgba(20,23,26,.05)}
.ap-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid #e4ddcf;background:linear-gradient(#fdfcf8,#f7f3ea)}
.ap-mk{height:24px;width:auto;display:block}
.ap-mk-au{display:flex;align-items:center;gap:8px;height:auto}
.ap-mk-au .auh-sigil{width:26px;height:26px}
.ap-bar-t{font:500 .82rem/1 var(--sans);color:var(--ink-3);white-space:nowrap}
.ap-bar-t b{color:var(--ink);font-weight:600}
.ap-cal{position:relative;background:#fbf9f4}
/* Calendly's own widget.css is not loaded, so the widget box gets a real height (app.js grows it from page_height). */
[data-cal-widget]{position:relative;height:720px}
[data-cal-widget] iframe{display:block;border:0;width:100%;height:100%}
[data-cal-widget] .calendly-spinner{display:none}
.ap-widget{display:block}
@media (max-width:640px){[data-cal-widget]{height:900px}}
.ap-loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:640px;color:var(--ink-3);font-size:.95rem}
.ap-spin{width:18px;height:18px;border-radius:50%;border:2px solid #d9d1c2;border-top-color:#1f4434;animation:ap-spin .9s linear infinite}
@keyframes ap-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.ap-spin{animation:none}}
.ap-empty{padding:48px 24px;min-height:320px;display:flex;align-items:center}
.ap-fine{margin:0;padding:12px 18px 14px;border-top:1px solid #e4ddcf;font-size:.8rem;line-height:1.45;color:var(--ink-3);background:#f7f3ea}
.ap-lab{font:600 .72rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0 0 6px}
.ap-steps{list-style:none;margin:0 0 26px;padding:0}
.ap-steps li{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid #d9d1c2}
.ap-steps li:last-child{border-bottom:1px solid #d9d1c2}
.ap-steps b{display:block;font-family:var(--serif);font-weight:400;font-size:1.2rem;color:var(--ink);margin-bottom:3px}
.ap-steps p{margin:0;font-size:.95rem;line-height:1.5;color:var(--ink-2)}
.ap-steps span{flex:none;font:600 .78rem/1.6 var(--sans);color:var(--ink-3);font-variant-numeric:tabular-nums}
.ap-stats{margin-bottom:22px}
.ap-stats dd{font-size:clamp(1.3rem,4.6vw,1.75rem)}
.ap-note{font-size:.85rem;line-height:1.5;color:var(--ink-3);margin:0 0 16px}
.ap-back{font-size:.9rem;color:var(--ink-2)}
.ap-booked{background:#fbf9f4;border:1px solid #d9d1c2;border-radius:16px;padding:22px}
.ap-done-h{font:400 1.7rem/1.1 var(--serif);letter-spacing:-.01em;text-transform:none;color:#1f4434;margin-bottom:10px}
.ap-done-p{margin:0;color:var(--ink-2)}
@media (min-width:980px){
  .ap{padding:56px 0 104px}
  .ap-grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);grid-template-rows:auto 1fr;column-gap:64px;row-gap:28px;align-items:start}
  .ap-head{grid-column:1;grid-row:1}
  .ap-side{grid-column:1;grid-row:2;position:sticky;top:96px}
  .ap-card{grid-column:2;grid-row:1/span 2}
}
/* Aurelian gold for /tax/apply */
.ap-tax .ap-eyebrow{color:#8e6b34}
.ap-tax .ap-card{border-color:#dccaa6}
.ap-tax .ap-bar{background:linear-gradient(#fdfbf6,#f6efe1);border-bottom-color:#e8dcc3}
.ap-tax .ap-spin{border-top-color:#b8935a}
.ap-tax .ap-done-h{color:#8e6b34}

/* ===== Mentorship funnel (/mentorship, views/sales/mentorship.js) ===== */
.mt-hero .ap-eyebrow{margin-bottom:16px}
.mt-hero .r-cta{margin:26px 0 30px}
.mt-hero-photo .x-media{margin:0;border-radius:18px;overflow:hidden}
@media (max-width:979px){.mt-hero-photo{order:-1}.mt-hero-photo img{aspect-ratio:16/11 !important;object-fit:cover;object-position:50% 22%}}
@media (min-width:980px){.mt-hero .r-hero-grid{align-items:center}}
.mt-covers{display:grid;gap:0;border-top:1px solid #cfc7b8}
.mt-covers article{padding:22px 0;border-bottom:1px solid #cfc7b8}
.mt-covers h3{font-size:1.35rem;margin:6px 0 6px}
.mt-covers p{margin:0;color:var(--ink-2);max-width:42ch}
.mt-n{font:600 .75rem/1 var(--sans);letter-spacing:.12em;color:#1f4434}
@media (min-width:760px){.mt-covers{grid-template-columns:repeat(2,1fr);column-gap:48px}}
@media (min-width:1080px){.mt-covers{grid-template-columns:repeat(3,1fr)}}

/* ===== Offer page lockup (Nov 8 2026): "Arbitrage | by BNB Portfolio", same build as the Aurelian lockup, in BNB green ===== */
.sb-brand{display:flex;align-items:center;gap:0;min-height:44px;flex:none}
.sb-mk{display:inline-flex;align-items:center;min-height:44px;font-family:var(--serif,"Newsreader",Georgia,serif);font-weight:500;font-size:1.12rem;letter-spacing:.18em;text-transform:uppercase;color:#1f4434;text-decoration:none}
a.sb-by{display:inline-flex;align-items:center;min-height:44px;padding:0 6px 0 10px;margin-left:10px;position:relative;border-radius:6px;font:600 .6rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);text-decoration:none;transition:color .15s}
a.sb-by:before{content:"";position:absolute;left:0;top:50%;width:1px;height:12px;margin-top:-6px;background:var(--rule-2,#cfc6b6)}
a.sb-by:hover{color:#1f4434;text-decoration:underline;text-decoration-color:#1f443466;text-underline-offset:4px}
.sb-mk:focus-visible,a.sb-by:focus-visible{outline:2px solid #1f4434;outline-offset:2px;border-radius:6px}
@media (max-width:379px){.sb-mk{font-size:1rem;letter-spacing:.14em}a.sb-by{margin-left:8px;padding-left:8px}}

/* ===== Offer deliverables (Nov 8 2026): /arbitrage, /mentorship, /management deliverables use the Aurelian layout in BNB green ===== */
.dv-bnb .tb-kicker,.dv-bnb .dv-g h2{color:#1f4434}
.dv-bnb .dv-price{background:#132a20}
.dv-bnb .dv-price h2,.dv-bnb .dv-h3,.dv-bnb .dv-fee b{color:#cfe3d4}
.dv-bnb .dv-price .link{color:#cfe3d4}
.dv-bnb .dv-pend{border-color:#8db59c}
.dv-bnb .dv-badge{background:#2d5a45}
.dv-bnb .dv-cta{margin-top:20px}
/* Mentorship funnel, expanded Nov 8 2026 */
.mt-story{margin-top:40px;grid-template-columns:repeat(2,1fr);row-gap:18px}
.mt-story div:nth-child(odd){padding-left:0;border-left:0}
@media (min-width:760px){.mt-story{grid-template-columns:repeat(5,1fr)}.mt-story div:nth-child(odd){padding-left:14px;border-left:1px solid var(--rule)}.mt-story div:first-child{padding-left:0;border-left:0}}
.mt-fit{display:grid;gap:28px}
.mt-fit h3{font-size:1.2rem;margin:0 0 10px;color:#1f4434}
.mt-fit div+div h3{color:#7a3b2e}
.mt-fit ul{margin:0;padding-left:1.1em;display:grid;gap:10px;color:var(--ink-2);line-height:1.5}
@media (min-width:760px){.mt-fit{grid-template-columns:1fr 1fr;gap:48px}}
.mt-promise{font:500 clamp(1.4rem,3.4vw,1.9rem)/1.25 var(--serif,"Newsreader",Georgia,serif);color:#1f4434;margin:0 0 14px}
.mt-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:40px}
.mt-photos .x-media{margin:0;border-radius:12px;overflow:hidden}
.mt-photos .x-media img{width:100%;height:100%;object-fit:cover}
.mt-photos .mt-ph:first-child{grid-column:1/-1}
.mt-photos .mt-ph:first-child img{aspect-ratio:16/9 !important}
@media (min-width:760px){.mt-photos{grid-template-columns:1.4fr 1fr 1fr}.mt-photos .mt-ph:first-child{grid-column:auto}.mt-photos .mt-ph img{aspect-ratio:4/5 !important}}
.mt-ph-cap{font-size:.85rem;color:var(--ink-2);margin:10px 0 0}
.mt-clips-h{font-size:1.1rem;margin:40px 0 14px}
.mt-clips{margin-top:18px}
.mt-doc{margin:26px 0 0;max-width:360px;border-radius:10px;overflow:hidden;box-shadow:0 10px 30px rgba(20,20,20,.12)}
.mt-clips .tm-vcard{width:min(70vw,260px)}
@media (min-width:980px){.mt-clips{display:grid;grid-template-columns:repeat(3,minmax(0,260px));gap:20px;overflow:visible}.mt-clips .tm-vcard{width:auto}#docs .mt-clips{grid-template-columns:repeat(2,minmax(0,220px))}}

/* ===== Private client pages (.cl-), /arbitrage/clients/<slug> (Nov 8 2026) ===== */
.cl-form{display:grid;gap:10px;max-width:360px}
.cl-form label{font-weight:600;font-size:.92rem}
.cl-form input{font:inherit;padding:12px 14px;border:1px solid #DDD5C6;border-radius:10px;background:#fff}
.cl-err{margin:0;color:#9b2c2c;font-size:.9rem}
.cl-goal{margin-top:8px;background:#fbf9f4;border:1px solid #DDD5C6;border-radius:14px;padding:18px}
.cl-goal h2,.cl-next h2{margin:0 0 12px;font-size:1.05rem;color:#1f4434}
.cl-goal ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cl-goal b{display:block;font-size:.98rem}
.cl-goal span{display:block;font-size:.93rem;line-height:1.45;color:var(--ink-2,#43484D)}
.cl-h2{margin:44px 0 14px;font-size:clamp(1.4rem,5vw,1.9rem);letter-spacing:-.02em;line-height:1.15}
.cl-h3{margin:26px 0 10px;font:600 .76rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#1f4434}
.cl-p{margin:0 0 14px;font-size:1rem;line-height:1.55;max-width:62ch}
.cl-note{margin:10px 0 0;font-size:.88rem;line-height:1.5;color:var(--ink-3,#5F6367);max-width:62ch}
.cl-steps{margin:0;padding:0;list-style:none;counter-reset:cl;display:grid;gap:12px}
.cl-steps li{counter-increment:cl;position:relative;padding:16px 16px 16px 54px;background:#fff;border:1px solid #DDD5C6;border-radius:14px}
.cl-steps li::before{content:counter(cl);position:absolute;left:16px;top:15px;width:26px;height:26px;border-radius:50%;background:#132a20;color:#cfe3d4;display:grid;place-items:center;font-weight:700;font-size:.85rem}
.cl-steps b{display:block;margin-bottom:4px}
.cl-steps span{display:block;font-size:.94rem;line-height:1.5;color:var(--ink-2,#43484D)}
.cl-vs{display:grid;gap:12px}
@media (min-width:700px){.cl-vs{grid-template-columns:1fr 1fr}}
.cl-card{border:1px solid #DDD5C6;border-radius:14px;padding:18px;background:#fbf9f4}
.cl-win{background:#132a20;border-color:#132a20;color:#f4f1eb}
.cl-lbl{margin:0;font-size:.85rem;font-weight:600;opacity:.85}
.cl-big{margin:6px 0 2px;font:500 2.4rem/1 var(--serif,"Newsreader",Georgia,serif)}
.cl-win .cl-big{color:#cfe3d4}
.cl-sub{margin:0;font-size:.86rem;opacity:.8}
.cl-rows{list-style:none;margin:0;padding:0;display:grid;gap:0;border:1px solid #DDD5C6;border-radius:12px;overflow:hidden;background:#fff}
.cl-rows li{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;font-size:.93rem;border-top:1px solid #EEE8DC}
.cl-rows li:first-child{border-top:0}
.cl-rows b{white-space:nowrap}
.cl-tot{background:#eef4ef}
.cl-tiers{display:grid;gap:12px;margin-top:6px}
@media (min-width:900px){.cl-tiers{grid-template-columns:repeat(3,1fr)}}
.cl-tier{border:1px solid #DDD5C6;border-radius:14px;padding:18px;background:#fbf9f4;display:flex;flex-direction:column;gap:10px}
.cl-tier h3{margin:0;font-size:1.15rem}
.cl-tier h3 span{font-weight:500;color:var(--ink-3,#5F6367);font-size:.95rem}
.cl-fee{margin:0;font:500 2rem/1 var(--serif,"Newsreader",Georgia,serif);color:#1f4434}
.cl-fee span{font:500 .85rem var(--sans);color:var(--ink-3,#5F6367)}
.cl-tn{margin:0;font-size:.92rem;line-height:1.45;color:var(--ink-2,#43484D)}
.cl-pick{border:2px solid #1f4434;background:#fff}
.cl-flag{margin:0;align-self:flex-start;padding:3px 10px;border-radius:999px;background:#1f4434;color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.cl-faq{display:grid;gap:8px}
.cl-faq details{border:1px solid #DDD5C6;border-radius:12px;background:#fff;padding:0 16px}
.cl-faq summary{cursor:pointer;padding:14px 0;font-weight:600;list-style:none}
.cl-faq summary::-webkit-details-marker{display:none}
.cl-faq summary::after{content:"+";float:right;color:#1f4434;font-weight:700}
.cl-faq details[open] summary::after{content:"−"}
.cl-faq p{margin:0 0 14px;font-size:.94rem;line-height:1.55;color:var(--ink-2,#43484D)}
.cl-next{margin-top:44px;background:#132a20;color:#f4f1eb;border-radius:14px;padding:22px}
.cl-next h2{color:#cfe3d4}
.cl-next p{margin:0 0 16px;line-height:1.55}
.cl-next .cl-sm{margin:12px 0 0;font-size:.86rem;opacity:.8}
.cl-sheet{border:1px solid #DDD5C6;border-radius:14px;padding:4px 16px 16px;background:#fbf9f4}
.cl-f{margin:8px 0 0;font-size:.85rem;line-height:1.5;color:var(--ink-3,#5F6367)}
.cl-pct{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.cl-pct li{border:1px solid #DDD5C6;border-radius:10px;background:#fff;padding:8px 4px;text-align:center}
.cl-pct li span{display:block;font-size:.75rem;color:var(--ink-3,#5F6367)}
.cl-pct li b{font-size:.92rem}
.cl-pct li.on{background:#132a20;border-color:#132a20;color:#cfe3d4}
.cl-pct li.on span{color:#cfe3d4}
.cl-comps{margin-top:10px}
.cl-comps summary{cursor:pointer;font-weight:600;font-size:.9rem;color:#1f4434}
.cl-tw{margin-top:8px;max-height:340px;overflow-y:auto;border:1px solid #DDD5C6;border-radius:10px;background:#fff}
.cl-tw table{width:100%;border-collapse:collapse;font-size:.8rem;font-variant-numeric:tabular-nums}
.cl-tw th,.cl-tw td{padding:6px 6px;text-align:right;border-top:1px solid #EEE8DC}
.cl-tw th:first-child,.cl-tw td:first-child{text-align:left}
.cl-tw thead th{position:sticky;top:0;background:#f3efe6;border-top:0}
.cl-tw td.on{font-weight:700;color:#1f4434}
.cl-tog{position:sticky;top:64px;z-index:2;margin:12px -6px 4px;padding:12px 14px;background:#132a20;color:#f4f1eb;border-radius:12px}
.cl-tog label{display:flex;justify-content:space-between;font-weight:600;font-size:.95rem}
.cl-tog label b{color:#cfe3d4;font:500 1.3rem/1 var(--serif,"Newsreader",Georgia,serif)}
.cl-tog input{width:100%;margin:10px 0 2px;accent-color:#cfe3d4}
.cl-tick{display:flex;justify-content:space-between;font-size:.72rem;opacity:.7}
.cl-chk{display:flex !important;justify-content:flex-start !important;align-items:center;gap:8px;margin-top:10px;font-weight:500 !important;font-size:.88rem !important;cursor:pointer}
.cl-chk input{width:18px;height:18px;margin:0;accent-color:#cfe3d4}
.cl-feerow.off{opacity:.45}
.cl-feerow.off b{text-decoration:line-through}
.cl-chk-l{margin:0 0 12px;color:var(--ink-2,#43484D)}
.cl-chk-l input{accent-color:#1f4434}
.cl-ppu{display:inline-flex;align-items:center;font:inherit}
.cl-ppu input{font:inherit;color:inherit;width:4.2em;border:0;background:transparent;padding:0;margin:0;-moz-appearance:textfield}
.cl-ppu input::-webkit-outer-spin-button,.cl-ppu input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cl-ppu.on input{border-bottom:1.5px dashed #1f4434;background:#eef4ef;border-radius:4px;padding:0 3px;width:4.6em}
.cl-save{background:#fff7e6}
.cl-save b{color:#8e6b12}
.cl-ppu input{height:1.5em;line-height:1.5em;outline:none;box-shadow:none}
.cl-ppu.on input:focus{background:#dfece2}
.cl-credit{margin:16px 0 0;padding:14px 16px;border-radius:14px;background:#eef4ef;border:1px solid #cfe0d4}
.cl-credit p{margin:0 0 8px;font-size:.95rem;line-height:1.5}
.cl-credit p:last-child{margin:0}

.osheet-top{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:flex-end}
.osheet-line{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin:0 0 10px}
.osheet{display:grid;gap:12px;padding:18px;border:1px solid var(--rule);border-radius:var(--r);background:var(--surface)}
.osheet-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-start}
.osheet-body{display:grid;gap:12px}
.osheet-list{margin:4px 0 0;padding-left:18px;font-size:.9rem}
.osheet-list li{margin:2px 0}
.osheet .prow{padding:12px 0 0;border:0;border-top:1px solid var(--rule);border-radius:0;background:none}
@media (min-width:980px){.osheet-body{grid-template-columns:1.4fr 1fr}.osheet .prow{grid-template-columns:130px 130px minmax(140px,1fr) auto auto}}
.dash-todo{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule)}
.dash-todo li{padding:12px 0;border-bottom:1px solid var(--rule)}
