/* Reading and discovery surfaces retain the site's dark / orange identity. */
.skip-link { position: fixed; top: -6rem; left: 1rem; z-index: 100; padding: 1rem; background: var(--accent); color: #120c08; border-radius: 10px; }
.skip-link:focus { top: 1rem; }
.site-nav a[aria-current="page"] { color: var(--text); text-decoration: underline; text-decoration-color: var(--accent); text-underline-offset: 8px; }
.hero-email { margin: 1.1rem 0 0; color: var(--muted); font-size: .95rem; }
.hero-email a, .footer-col a, .contact-list a { overflow-wrap: anywhere; }
.hero-email a { text-decoration: underline; text-underline-offset: 4px; }
.guide-links { display: flex; flex-direction: column; gap: 0; }
.guide-links a { display: block; padding: 1rem 0; border-bottom: 1px solid var(--border-strong); line-height: 1.5; }
.guide-index { display: grid; grid-template-columns: 1fr 1fr; gap: 0 3rem; }
.guide-row { display: flex; flex-direction: column; padding: 2rem 0; border-top: 1px solid var(--border-strong); color: var(--text); }
.guide-row h2 { font-size: clamp(1.2rem, 2vw, 1.65rem); line-height: 1.4; margin: 0 0 1rem; }
.guide-row p { color: var(--muted); max-width: 60ch; margin: 0 0 1.25rem; }
.guide-row span { color: var(--accent); margin-top: auto; }
.guide-row:hover h2 { color: var(--accent-hover); }
.guide-heading { max-width: 920px; padding: 1rem 0 3rem; }
.guide-heading h1 { font-size: clamp(1.8rem, 3.4vw, 3rem); line-height: 1.25; text-wrap: balance; }
.guide-heading .lead { max-width: 65ch; }
.guide-layout { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 4rem; align-items: start; }
.guide-toc { position: sticky; top: calc(var(--header-h) + 2rem); font-size: .95rem; }
.guide-toc strong { color: var(--text); }
.guide-toc ol { padding-left: 1.2rem; margin-top: 1rem; color: var(--muted); }
.guide-toc li { margin: 0; }
.guide-toc a { display: block; color: var(--muted); padding: .5rem 0; line-height: 1.45; }
.guide-toc a:hover { color: var(--accent-hover); }
.guide-body { width: 100%; max-width: 70ch; margin: 0; font-size: 1.125rem; line-height: 1.85; }
.guide-body section, .guide-related { scroll-margin-top: calc(var(--header-h) + 1.5rem); }
.guide-body h2 { font-size: clamp(1.35rem, 2.2vw, 1.85rem); line-height: 1.4; margin: 2.75rem 0 1rem; text-wrap: balance; }
.guide-body section:first-child h2 { margin-top: 0; }
.guide-body p { margin: 0 0 1.25rem; }
.guide-body a { text-decoration: underline; text-underline-offset: 4px; }
.guide-body li { padding-left: .25rem; margin-bottom: .75rem; }
.guide-faq { border-top: 1px solid var(--border-strong); padding: 1rem 0; }
.guide-faq summary { cursor: pointer; min-height: 44px; font-weight: 600; }
.guide-faq p { color: var(--muted); margin-top: 1rem; }
.guide-next, .guide-related { border-top: 1px solid var(--border-strong); margin-top: 2.5rem; }
.contact-brief { color: var(--muted); margin-top: 2rem; max-width: 65ch; }
.contact-panel + .consult-card { margin-top: 3rem; }
.contact-list-lg li { flex-wrap: wrap; gap: .5rem 1rem; }
@media (max-width: 1100px) and (min-width: 761px) { .site-nav { gap: .65rem; } .site-nav a { font-size: .78rem; } .header-cta { padding-inline: .8rem; } }
@media (max-width: 900px) { .guide-layout { grid-template-columns: 1fr; gap: 2rem; } .guide-toc { position: static; border-block: 1px solid var(--border-strong); padding: 1.5rem 0; } .guide-toc ol { columns: 2; column-gap: 2rem; } .guide-toc li { break-inside: avoid; } }
@media (max-width: 600px) { .guide-index { grid-template-columns: 1fr; } .guide-row { padding-block: 1.6rem; } .guide-toc ol { columns: 1; } .guide-heading { padding-bottom: 2rem; } .guide-body { font-size: 1.0625rem; } .guide-intro { padding-block: 2.5rem; } .hero-email { font-size: .9rem; } .site-nav { max-height: calc(100dvh - var(--header-h)); overflow-y: auto; } .menu-toggle { min-width: 44px; min-height: 44px; } }
