/* Shared responsive roles. Approved typefaces and palette are unchanged. */
:root {
 --ca-type-display:clamp(2.75rem,1.3rem + 4.5vw,6rem);
 --ca-type-masthead:clamp(3rem,1.5rem + 4.5vw,6rem);
 --ca-type-title:clamp(2.625rem,1rem + 3.5vw,5rem);
 --ca-type-section:clamp(2.25rem,1.35rem + 2.8vw,4.25rem);
 --ca-type-compact-heading:clamp(1.75rem,1.25rem + 1.5vw,2.5rem);
 --ca-type-subsection:clamp(1.375rem,1.1rem + .7vw,1.75rem);
 --ca-type-statement:clamp(1.625rem,1.2rem + 1.5vw,2.5rem);
 --ca-type-lead:clamp(1.125rem,1rem + .45vw,1.375rem);
 --ca-type-body:1.125rem; --ca-type-small:1rem; --ca-type-caption:.875rem;
}
.ca-brand {font-size:var(--ca-type-body);line-height:1.65;}
.ca-brand :is(h1,h2,h3,h4) {text-wrap:balance;overflow-wrap:normal;}
.ca-brand p {max-width:58ch;text-wrap:pretty;}
.ca-brand :is(h1,h2) {font-weight:400;letter-spacing:-.025em;}
.editorial-home .opening-spread h1 {font-size:var(--ca-type-display);line-height:1.08;max-width:12ch;}
.editorial-home .opening-spread .hero-foot p {font-size:var(--ca-type-body);line-height:1.55;max-width:32ch;}
.editorial-home .intro h2,.editorial-home .intent-layout h2,
.personal-interlude h2,.editorial-home .process-section .section-heading h2,
.editorial-home .readiness-heading h3,.feature-reading h2,.journal-opening h2 {
 font:400 var(--ca-type-section)/1.16 var(--ca-heading-font);letter-spacing:-.025em;
}
.editorial-home .intro h2 {max-width:12ch;}
.editorial-home .intro-reading p:first-child {font:400 var(--ca-type-lead)/1.6 var(--ca-body-font);max-width:42ch;}
.editorial-home .intro-reading .signature {font-size:var(--ca-type-statement);line-height:1.35;}
.editorial-home .intent-disclosures h3,.step h3,.feature-columns h3,.editorial-home .readiness h4 {
 font:400 var(--ca-type-subsection)/1.3 var(--ca-heading-font);letter-spacing:-.01em;
}
.step h3,.feature-columns h3 {margin:16px 0 12px;}
.editorial-home .readiness h4 {margin:0 0 12px;}
.editorial-home .intent-disclosures p,.editorial-home .readiness p,.preparation-note p {font-size:var(--ca-type-small);line-height:1.65;}
.step p,.feature-columns p {font-size:var(--ca-type-body);line-height:1.65;max-width:46ch;}
.editorial-home .intent-layout .section-heading>p,.editorial-home .process-subtitle {font:400 var(--ca-type-lead)/1.55 var(--ca-body-font);}
.editorial-home .intro-offer h2 {font:400 var(--ca-type-compact-heading)/1.25 var(--ca-heading-font);max-width:24ch;margin-bottom:16px;}
.editorial-home .intro-offer .offer-price {font-size:var(--ca-type-section);}
.editorial-home .invitation-spread h2 {font:400 var(--ca-type-display)/1.08 var(--ca-heading-font);letter-spacing:-.03em;max-width:16ch;}
.editorial-home .invitation-spread {padding-block:clamp(40px,7vw,96px);}
.editorial-home .invitation-foot p {font-size:var(--ca-type-body);line-height:1.55;max-width:38ch;}
.editorial-home .invitation-foot .small {font-size:var(--ca-type-caption);line-height:1.5;}
.feature-opening h1,.archive-title h1,.journal-masthead h1,.intake-main h1 {font:400 var(--ca-type-title)/1.12 var(--ca-heading-font);letter-spacing:-.025em;}
.feature-opening>p {font:400 var(--ca-type-lead)/1.6 var(--ca-body-font);max-width:32ch;}
.feature-reading h2 {max-width:22ch;}
.archive-deck {font:italic 400 var(--ca-type-statement)/1.3 var(--ca-heading-font);max-width:22ch;}
.archive-deck em {font-style:normal;}
.archive-title h1,.journal-masthead h1 {font-size:var(--ca-type-masthead);}
.journal-opening h2 {font-size:var(--ca-type-section);}
.intake-main h1 {font-size:var(--ca-type-section);max-width:18ch;}
.intake-main h2 {font:400 var(--ca-type-section)/1.2 var(--ca-heading-font);letter-spacing:-.02em;}
.intake-main p {max-width:58ch;}
.eyebrow,.section-nav-label,.number {font:600 var(--ca-type-caption)/1.35 var(--ca-body-font);letter-spacing:.08em;}
.ca-brand :is(figcaption,.quiet,.hint,footer p,footer a.social) {font-size:var(--ca-type-caption);line-height:1.5;}
.ca-brand :is(.button,.text-link,.ca-menu-toggle),.ca-site-header nav {font-size:var(--ca-type-small);}
.ca-brand .button {transform:none;transition:background-color 180ms ease-out,color 180ms ease-out;}
.ca-brand .button:hover,.ca-brand .button:active {transform:none;}
.ca-brand .button:disabled {opacity:.65;}
.ca-brand details>summary {list-style:none;}
.ca-brand details>summary::-webkit-details-marker {display:none;}
.preparation-note summary {display:flex;align-items:center;justify-content:space-between;gap:24px;}
.preparation-note summary::after {content:"";width:8px;height:8px;flex:none;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);}
.preparation-note[open] summary::after {transform:rotate(225deg);}
@media(max-width:760px) {
 .editorial-home .opening-spread h1 {max-width:14ch;margin-block:32px;}
 .editorial-home .inquiry.invitation-spread {padding:40px var(--ca-gutter);margin-inline:calc(-1 * var(--ca-gutter));}
 .editorial-home .inquiry.invitation-spread h2 {max-width:16ch;}
 .feature-opening h1 {font-size:var(--ca-type-title);}
 .feature-columns {gap:32px;}
 .feature-columns h3 {margin-top:0;}
}
@media(prefers-reduced-motion:reduce) {
 html {scroll-behavior:auto!important;}
 .ca-brand *,.ca-brand *::before,.ca-brand *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
}

/* Before menu enhancement runs, reserve the compact header without a nav flash. */
@media(max-width:1099px){.ca-nav-pending .ca-site-header nav{display:none;}}
