/* copy v4 (Oct 26 2026): scannable layouts for public pages. Loaded after styles.css. */
section.tight{padding:56px 0}
@media(min-width:900px){section.tight{padding:88px 0}}
.page-hero.short{padding:44px 0 40px}
@media(min-width:900px){.page-hero.short{padding:88px 0 64px}}
.why-hero h1.long{font-size:clamp(2.05rem,8.6vw,3.7rem);max-width:15em;line-height:1.1}
.why-hero h1.long em{display:block;margin-top:.25em}
.lead.tight{margin-bottom:0}
h2.sm{font-size:clamp(1.6rem,5.6vw,2.3rem)}
/* side-by-side benefit cards */
.bcards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:28px}
@media(min-width:720px){.bcards{gap:24px}}
.bcard{background:var(--paper);border:1px solid var(--line-2);border-top:3px solid var(--navy);padding:18px 12px 16px}
.bcard.k{border-top-color:var(--wine)}
@media(min-width:720px){.bcard{padding:30px 28px}}
.bcard .who{display:block;font:600 .66rem/1.3 var(--serif);letter-spacing:.16em;text-transform:uppercase;color:var(--wine);margin-bottom:8px}
.bcard h3{font-size:1.02rem;line-height:1.25;margin:0 0 10px}
@media(min-width:720px){.bcard .who{font-size:.74rem}.bcard h3{font-size:1.35rem}}
.checks{list-style:none;margin:0;padding:0}
.checks li{position:relative;padding:5px 0 5px 20px;font-size:.9rem;line-height:1.35;color:var(--ink)}
@media(min-width:720px){.checks li{font-size:1rem;padding:7px 0 7px 26px}}
.checks li::before{content:"\2713";position:absolute;left:0;top:4px;color:var(--wine);font-weight:600}
@media(min-width:720px){.checks li::before{top:6px}}
.checks.cols{display:grid;gap:0 32px}
@media(min-width:720px){.checks.cols{grid-template-columns:1fr 1fr}}
/* short prose blocks */
.say{max-width:38em}
.say p{font-size:1.06rem;line-height:1.65;color:var(--muted);margin:0 0 .9em}
.say p strong{color:var(--navy)}
.pull{font:italic 400 clamp(1.25rem,4.6vw,1.6rem)/1.4 var(--serif-d);color:var(--navy);border-left:2px solid var(--wine);padding:2px 0 2px 18px;margin:24px 0;max-width:30em}
/* mini stats */
.mstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:10px;margin-top:24px}
.mstat{background:var(--paper);border:1px solid var(--line);padding:16px 14px}
.mstat b{display:block;font:400 1.6rem/1.1 var(--serif-d);color:var(--wine);margin-bottom:6px}
.mstat span{display:block;font-size:.88rem;line-height:1.45;color:var(--muted)}
.mstat sup{font-size:.7em}
.mstat sup a{color:var(--wine);text-decoration:none}
/* checkmark comparison table */
.cmp{width:100%;border-collapse:collapse;background:var(--paper);border:1px solid var(--line-2);margin-top:24px;font-size:.95rem}
.cmp th,.cmp td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle;line-height:1.35}
.cmp thead th{font:600 .7rem/1.3 var(--serif);letter-spacing:.14em;text-transform:uppercase;color:var(--navy);background:var(--ivory-2);text-align:center}
.cmp thead th small{display:block;font:italic 400 .78rem/1.3 var(--serif);letter-spacing:0;text-transform:none;color:var(--wine);margin-top:2px}
.cmp tbody th{text-align:left;font-weight:400;color:var(--ink)}
.cmp td{text-align:center;color:var(--muted)}
.cmp .y{color:var(--wine);font-weight:600;font-size:1.15rem}
.cmp .n{color:var(--line-2);font-size:1.15rem}
.cmp td small{display:block;font-size:.8rem;color:var(--muted);line-height:1.3;margin-top:2px}
@media(max-width:699px){
 .cmp thead tr,.cmp tbody tr{display:grid;grid-template-columns:repeat(3,1fr)}
 .cmp.two thead tr,.cmp.two tbody tr{grid-template-columns:1fr 1fr}
 .cmp thead th:first-child{display:none}
 .cmp tbody th{grid-column:1/-1;background:var(--ivory);padding:9px 12px 4px;border-bottom:0;font-size:.9rem;color:var(--navy);font-weight:600}
 .cmp td{padding:4px 6px 10px;font-size:.86rem}
 .cmp thead th{padding:10px 4px;font-size:.62rem}
 .cmp td small{font-size:.74rem}
}
/* numbered path */
.path{list-style:none;margin:28px 0 0;padding:0;counter-reset:p;display:grid;gap:0;border-top:1px solid var(--line-2)}
@media(min-width:760px){.path{grid-template-columns:1fr 1fr;column-gap:40px}}
.path li{counter-increment:p;display:grid;grid-template-columns:40px 1fr;padding:14px 0;border-bottom:1px solid var(--line)}
.path li::before{content:counter(p);grid-row:span 2;width:28px;height:28px;border-radius:50%;background:var(--navy);color:var(--ivory);font:600 .85rem/28px var(--serif);text-align:center;margin-top:1px}
.path li.meet::before{background:var(--wine)}
.path h3{font-size:1.04rem;margin:2px 0 .2em}
.path p{margin:0;color:var(--muted);font-size:.93rem;line-height:1.5}
/* accordions */
.acc{margin-top:24px;border-top:1px solid var(--line-2);max-width:900px}
.acc details{border-bottom:1px solid var(--line)}
.acc details:first-of-type{border-top:0}
.acc summary{padding:16px 0;font-size:1.06rem}
.acc summary .s{display:block;font:italic .88rem/1.35 var(--serif);color:var(--muted);margin-top:3px}
.acc summary .n{color:var(--wine);font-style:italic;margin-right:.45em}
.acc summary .tagl{display:inline-block;font:600 .62rem/1.2 var(--serif);letter-spacing:.14em;text-transform:uppercase;color:var(--wine);border:1px solid var(--wine);padding:3px 6px;margin-left:6px;vertical-align:2px}
.acc .body{padding:0 0 18px;font-size:.98rem;line-height:1.6;color:var(--ink);max-width:42em}
.acc .body p{color:var(--muted);margin:0 0 .7em}
.acc .body ul{margin:0 0 .8em;padding-left:1.15em}
.acc .body li{margin:0 0 .4em}
.acc .body li::marker{color:var(--wine)}
.acc .body .checks li{margin:0}
.acc .ledger{margin-top:6px}
.acc .ledger>div{padding:12px 0}
/* tracks (compact) */
.duo{display:grid;gap:12px;margin-top:24px}
@media(min-width:720px){.duo{grid-template-columns:1fr 1fr;gap:24px}}
.duo>div{background:var(--paper);border:1px solid var(--line-2);padding:20px 18px}
.duo h3{font-size:1.15rem;margin:0 0 4px}
.duo p{margin:0 0 8px;color:var(--muted);font-size:.95rem}
.prices .disc{display:inline-block;margin-top:12px;font:600 .66rem/1.3 var(--serif);letter-spacing:.14em;text-transform:uppercase;color:var(--wine);border:1px solid var(--wine);padding:5px 8px}
.prices.v4{margin-top:28px}
.prices.v4>div{padding:26px 22px}
.srcs summary{font-size:1rem;padding:14px 0}
.srcs ol{font-size:.85rem;color:var(--muted);padding-left:1.2em}
.srcs li{margin-bottom:.5em}
.next-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px}
.next-links .more{margin-top:0}
.hh-sum p b{color:var(--navy);font-weight:600}
/* Why page trailer (Oct 26 2026) */
.why-hero.has-trailer{padding-top:28px}
@media(min-width:900px){.why-hero.has-trailer{padding-top:56px}}
.trailer{max-width:960px;margin:0 0 34px}
@media(min-width:900px){.trailer{margin-bottom:52px}}
.trailer-frame{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:var(--navy-d);border:1px solid rgba(31,47,77,.28);box-shadow:0 1px 2px rgba(23,35,58,.08),0 10px 24px -8px rgba(23,35,58,.22),0 34px 70px -28px rgba(23,35,58,.38)}
.trailer-frame::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(250,247,240,.10);pointer-events:none}
.trailer video{display:block;width:100%;height:100%;object-fit:cover;background:var(--navy-d)}
.trailer-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;width:100%;border:0;margin:0;padding:0;cursor:pointer;color:var(--ivory);font:inherit;background:radial-gradient(ellipse at center,rgba(23,35,58,.30) 0,rgba(23,35,58,.08) 55%,rgba(23,35,58,0) 75%);transition:background .25s ease;-webkit-tap-highlight-color:transparent}
.trailer-play[hidden]{display:none}
.tp-ring{display:grid;place-items:center;width:clamp(58px,15vw,84px);height:clamp(58px,15vw,84px);border-radius:50%;background:var(--wine);border:1.5px solid rgba(250,247,240,.85);box-shadow:0 0 0 7px rgba(250,247,240,.16),0 12px 28px -6px rgba(23,35,58,.55);transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.tp-ring svg{width:42%;height:42%;fill:var(--ivory);margin-left:7%}
.tp-label{font-family:var(--serif-d);font-size:clamp(.78rem,2.6vw,.95rem);letter-spacing:.06em;background:rgba(31,47,77,.86);border:1px solid rgba(250,247,240,.22);padding:.42em 1em;border-radius:999px;text-shadow:none}
.tp-time{opacity:.72;margin-left:.45em;font-variant-numeric:tabular-nums}
.trailer-play:hover .tp-ring,.trailer-play:focus-visible .tp-ring{transform:scale(1.06);background:var(--wine-d);box-shadow:0 0 0 9px rgba(250,247,240,.22),0 14px 32px -6px rgba(23,35,58,.6)}
.trailer-play:focus-visible{outline:none}
.trailer-play:focus-visible .tp-ring{outline:2px solid var(--ivory);outline-offset:4px}
@media(max-width:519px){.trailer{margin-left:-8px;margin-right:-8px}.trailer-frame{border-radius:14px}.tp-label{display:none}}
@media(prefers-reduced-motion:reduce){.tp-ring,.trailer-play{transition:none}}
/* hook as a refined caption under the trailer (~65% of the old size) */
.why-hero.has-trailer h1.long{font-size:clamp(1.38rem,5.5vw,2.3rem);max-width:28em;text-wrap:pretty;line-height:1.22;letter-spacing:-.008em}
.why-hero.has-trailer h1.long em{margin-top:.2em}
/* poster is now the opening title card: keep the play control clear of the logo and title */
.trailer-play{flex-direction:row-reverse;align-items:flex-end;justify-content:flex-start;gap:12px;padding:0 clamp(12px,2.6vw,24px) clamp(12px,2.6vw,24px) 0;background:linear-gradient(to top,rgba(23,35,58,.10),rgba(23,35,58,0) 40%)}
.trailer-play .tp-ring{width:clamp(44px,9vw,68px);height:clamp(44px,9vw,68px);box-shadow:0 0 0 5px rgba(31,47,77,.10),0 10px 22px -6px rgba(23,35,58,.45)}
.trailer-play .tp-label{margin-bottom:clamp(6px,1.4vw,14px)}
