.guide-hero { min-height: 560px; }
.guide-hero .page-hero-copy { padding-top: 42px; padding-bottom: 56px; }
.guide-back { display: block; color: var(--muted); font-size: 12px; letter-spacing: .04em; margin-bottom: 44px; }
.guide-back:hover { color: var(--burgundy); }
.guide-hero .page-hero-media img { height: 100%; object-fit: cover; }
.guide-layout { display: grid; grid-template-columns: minmax(190px, 250px) minmax(0, 780px); justify-content: space-between; gap: clamp(42px, 7vw, 120px); padding: 88px var(--gutter) 64px; }
.guide-index { position: sticky; top: 120px; align-self: start; }
.guide-index ol { list-style: none; padding: 0; margin: 20px 0 32px; counter-reset: chapters; }
.guide-index li { counter-increment: chapters; border-top: 1px solid var(--line); }
.guide-index li:last-child { border-bottom: 1px solid var(--line); }
.guide-index li a { display: grid; grid-template-columns: 23px minmax(0, 1fr); gap: 12px; padding: 13px 0; font-size: 14px; line-height: 1.45; }
.guide-index li a::before { content: counter(chapters, decimal-leading-zero); color: var(--burgundy); font-size: 11px; padding-top: 2px; }
.guide-index a:hover { color: var(--burgundy); }
.guide-index > p { color: var(--muted); font-size: 13px; }
.guide-chapter { position: relative; padding: 0 0 54px; margin: 0 0 50px; border-bottom: 1px solid var(--line); scroll-margin-top: 116px; }
.guide-anchor { position: absolute; top: 0; scroll-margin-top: 116px; }
.guide-chapter h2 { font-size: clamp(27px, 2.7vw, 40px); line-height: var(--display-leading); margin: 16px 0 28px; }
.guide-prose { color: var(--muted); font-size: 16px; line-height: 1.85; overflow-wrap: anywhere; }
.guide-prose h3 { margin: 32px 0 14px; color: var(--ink); font-size: 23px; line-height: 1.35; }
.guide-prose p { margin-bottom: 20px; }
.guide-prose ul, .guide-prose ol { padding-left: 22px; margin: 18px 0 26px; }
.guide-prose li { margin: 9px 0; scroll-margin-top: 120px; }
.guide-prose a { color: var(--burgundy); text-decoration: underline; text-underline-offset: 4px; }
.guide-prose table { width: 100%; border-collapse: collapse; }
.guide-prose td, .guide-prose th { border-bottom: 1px solid var(--line); padding: 12px; text-align: left; }
.guide-note { color: var(--muted); font-size: 13px; line-height: 1.7; padding-left: 22px; border-left: 2px solid var(--burgundy); }
.guide-team { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px 30px; }
.guide-person img { width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; object-position: center top; background: var(--soft); }
.guide-person h3 { font-size: 23px; margin: 20px 0 8px; }
.guide-person p { color: var(--muted); font-size: 13px; line-height: 1.5; margin-bottom: 10px; }
.guide-person a { display: block; width: fit-content; margin-top: 8px; padding-block: 3px; color: var(--burgundy); font-size: 13px; line-height: 1.7; }
.guide-related { background: var(--soft); padding: 64px var(--gutter); }
.guide-related h2 { font-size: clamp(28px, 3vw, 42px); max-width: 700px; }
.guide-related > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 32px; }
.guide-related a { border-top: 1px solid var(--line); display: flex; justify-content: space-between; gap: 16px; padding: 19px 0; }
.guide-related a:hover { color: var(--burgundy); }
.guide-related a span { color: var(--burgundy); }
@media (max-width: 900px) {
    .guide-layout { grid-template-columns: 1fr; padding-top: 48px; gap: 52px; }
    .guide-index { position: static; }
    .guide-index ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
    .guide-index > p, .guide-index > .text-link { display: none; }
    .guide-related > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .guide-hero { min-height: 0; }
    .guide-hero .page-hero-copy { padding-top: 30px; padding-bottom: 36px; }
    .guide-back { margin-bottom: 28px; }
    .guide-hero .page-hero-media { min-height: 0; height: 260px; }
    .guide-layout { padding-bottom: 44px; }
    .guide-index ol { grid-template-columns: 1fr; }
    .guide-chapter { padding-bottom: 32px; margin-bottom: 34px; }
    .guide-prose { font-size: 15px; line-height: 1.8; }
    .guide-team { gap: 30px 18px; }
    .guide-person h3 { font-size: 19px; }
    .guide-related { padding-top: 44px; padding-bottom: 44px; }
    .guide-related > div { grid-template-columns: 1fr; }
}
@media print {
    .guide-index, .guide-related, .guide-back, .editorial-cta, .site-header, .site-footer { display: none; }
    .guide-layout { display: block; padding: 24px 0; }
    .guide-hero .page-hero-media { display: none; }
    .guide-hero { display: block; min-height: 0; }
    .guide-hero .page-hero-copy { padding: 0; }
    .guide-person { break-inside: avoid; }
}
