/* v22 unifies the hand-built v20/v21 pages with the original Casino Calculated system. */
.v20-hero{padding:76px 0 52px;background:linear-gradient(135deg,#efe8dc,#f7f4ed 58%,#e4ece6);border-bottom:1px solid var(--line)}
.v20-hero .v20-wrap,.v20-section .v20-wrap{width:min(1180px,calc(100% - 40px))}
.v20-eyebrow{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.14em}
.v20-hero h1{font-family:var(--font-serif);font-size:clamp(48px,7vw,84px);font-weight:600;letter-spacing:-.055em;line-height:.96;max-width:1000px;margin:17px 0}
.v20-lede{color:var(--muted);font-size:17px;line-height:1.65;max-width:750px}
.v20-docmeta{color:var(--muted);font-size:11px;gap:12px 24px;margin-top:24px}
.v20-section{padding:68px 0;background:var(--bg)}.v20-section.alt{background:var(--panel2);border-block:1px solid var(--line)}
.v20-section h2{font-family:var(--font-serif);font-size:clamp(32px,4vw,48px);font-weight:600;letter-spacing:-.04em;line-height:1.05}
.v20-grid{gap:12px}.v20-card{border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:none;padding:20px;transition:border-color .2s,transform .2s}
.v20-card:hover{border-color:#a99982}.v20-card b{font-size:16px}.v20-card p{color:var(--muted);font-size:12px}
.v20-tag{color:var(--gold);background:#eee5d3;border-radius:5px;font-size:10px;letter-spacing:.08em;padding:4px 7px}
.v20-form{border-color:var(--line);border-radius:12px;background:var(--panel)}.v20-form select,.v20-form input{background:#f3efe7;border-color:#cfc5b6}
.v20-result{background:var(--ink);border-radius:12px}.v20-callout{background:#eee5d3;border-left-color:var(--gold)}
.v20-path-links a{background:#eee5d3;color:#62491f;border-radius:7px;font-size:12px}.v20-context-panel{background:var(--panel);border-color:var(--line);border-radius:12px}
.v21-evidence>div{background:var(--panel);border-color:var(--line);border-radius:11px}.v21-evidence span{color:var(--gold);font-size:10px}

/* v23 audit refinements */
.v23-discovery{padding:62px 0;background:var(--panel2);border-block:1px solid var(--line)}
.v23-discovery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.v23-discovery-grid a{display:grid;gap:5px;border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:19px;color:var(--ink)}
.v23-discovery-grid a span{color:var(--gold);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.v23-discovery-grid a b{font-size:16px}.v23-discovery-grid a small{color:var(--muted);line-height:1.5}
.v23-example{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:22px;margin:24px 0}
.v23-example h3{margin:0 0 8px;font-size:21px}.v23-example p:last-child{margin-bottom:0}
@media(max-width:760px){.v23-discovery-grid{grid-template-columns:1fr}}

.editorial-read{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:38px 0;padding:30px 0}
.editorial-read>span{color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.editorial-read h2{margin:7px 0 12px}.editorial-read h3{font-family:var(--font-sans);font-size:14px;letter-spacing:0;margin-top:22px}
.editorial-read ul{columns:3;gap:24px;padding-left:18px}.editorial-aside{color:var(--muted);font-size:12px;border-left:3px solid var(--gold);padding-left:14px}
.editorial-boundary{border-block:1px solid var(--line)}.editorial-boundary .v20-path-links{margin-top:18px}
@media(max-width:700px){.editorial-read ul{columns:1}}

/* v27 editorial and SEO support */
.calculator-notes,.research-detail,.discovery-links{margin-top:clamp(2rem,4vw,3.5rem);padding-top:clamp(1.5rem,3vw,2.25rem);border-top:1px solid var(--line,#ded8cd)}
.calculator-notes h2,.research-detail h2,.discovery-links h2{margin-top:0}.calculator-notes h3,.research-detail h3{margin:1.35rem 0 .35rem;font-size:1rem;letter-spacing:.02em}.calculator-notes p,.research-detail p{max-width:74ch}
