/* Phase2 reading layer: retains the approved Rank Expand palette and layout. */
.phase2-copy { max-width: 860px; }
.phase2-copy p, .phase2-copy li { line-height: 1.8; }
.phase2-copy ul, .phase2-copy ol { padding-left: 1.4rem; margin-bottom: 1.4rem; }
.phase2-copy li { margin-bottom: .65rem; }
.phase2-copy a, .media-disclosure a { text-decoration: underline; text-underline-offset: .18em; }
.phase2-callout { max-width: 820px; border-left: 4px solid var(--brand); padding: 24px 28px; margin: 24px 0; background: var(--bg-alt); }
.phase2-callout h2 { font-size: 1.45rem; }
.phase2-callout p:last-child { margin-bottom: 0; }
.byline,.media-disclosure,figcaption { font-size: .9rem; color: var(--ink-soft); max-width: 80ch; }
figcaption { padding-top: 12px; }
.hero__cta .btn--ghost { color: #fff; border-color: #fff; }
.skip-link { position: fixed; top: -80px; left: 12px; z-index: 100; padding: 12px; background: #fff; color: var(--ink); }
.skip-link:focus { top: 12px; }
:focus-visible { outline: 3px solid var(--brand); outline-offset: 4px; }
.hero :focus-visible { outline-color: #fff; }
.faq details[open] { padding-bottom: 24px; }
.faq details p { margin-top: 12px; }
@media (max-width: 600px) { .section { padding: 40px 0; } .phase2-callout { padding: 20px; } .hero__inner { padding: 54px 20px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *,*::before,*::after { transition: none !important; } }

/* Visual review corrections: readable footer, aligned callouts, shorter bands. */
.site-footer p { color: #d6dfe8; }
main > .section { padding-top: 40px; padding-bottom: 40px; }
@media (max-width: 600px) { .hero__cta .btn { width: 100%; text-align: center; } }
