/* CONTENT-owned styles. Shared layout loads this stylesheet; no inline styles. */
.window-guide, .content-links, .story-context { overflow-wrap: anywhere; }
.window-guide .page-intro { padding-bottom: 2rem; }
.window-guide .page-intro h1 { max-width: 18ch; }
.guide-answer { padding: clamp(1.25rem, 3vw, 2.5rem); background: #edf2ed; border-left: 3px solid #224c3d; }
.guide-answer h2 { font-size: clamp(1.5rem, 3vw, 2.1rem); margin: 0 0 1rem; }
.guide-answer p { max-width: 80ch; margin: 0; }
.guide-toc, .guide-links { display: flex; flex-wrap: wrap; gap: .65rem 1.4rem; }
.guide-toc { margin: 1.5rem 0 2.5rem; }
.guide-toc a, .guide-links a, .content-links a { display: inline-flex; align-items: center; min-height: 44px; padding: .4rem 0; text-underline-offset: .2em; }
.guide-section { margin: 3rem 0; scroll-margin-top: 7rem; }
.guide-section h2 { max-width: 30ch; font-size: clamp(1.5rem, 3vw, 2.5rem); margin-bottom: 1.25rem; }
.guide-reading { max-width: 82ch; }
.guide-reading p, .guide-faq p { line-height: 1.75; margin: 1rem 0; }
.guide-checklist { padding-left: 1.4rem; }
.guide-checklist li { padding-left: .3rem; margin: .75rem 0; line-height: 1.7; }
.guide-table-scroll { max-width: 100%; overflow-x: auto; border: 1px solid #cad5cd; }
.guide-table { width: 100%; min-width: 640px; border-collapse: collapse; font-size: 1rem; line-height: 1.65; }
.guide-table caption { text-align: left; padding: 1rem; font-weight: 600; background: #f4f6f2; }
.guide-table th, .guide-table td { padding: 1.1rem; text-align: left; vertical-align: top; border-bottom: 1px solid #cad5cd; }
.guide-table thead th { background: #edf2ed; }
.guide-table tbody th { width: 24%; font-weight: 600; }
.guide-table td { width: 38%; }
.guide-related { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
.guide-related > div { min-width: 0; border-top: 1px solid #cad5cd; padding-top: 1.25rem; }
.guide-related h3 { font-size: 1.25rem; margin-bottom: 1rem; }
.guide-related h3 a { display: inline-block; min-height: 44px; }
.guide-related p { margin: .75rem 0; }
.guide-faq details { border-top: 1px solid #cad5cd; padding: .5rem 0; }
.guide-faq summary { padding: .8rem .25rem; min-height: 44px; cursor: pointer; font-weight: 600; }
.guide-faq p { max-width: 80ch; padding: 0 .25rem .75rem; }
.guide-contact { background: #edf2ed; padding: clamp(1.25rem, 3vw, 2.5rem); scroll-margin-top: 7rem; }
.guide-contact h2 { font-size: clamp(1.6rem, 3vw, 2.5rem); }
.guide-contact p { max-width: 70ch; margin: 1rem 0 1.5rem; }
.guide-contact .text-link { display: inline-flex; min-height: 44px; align-items: center; margin: .75rem 0 .75rem 1.25rem; }
.content-links { display: flex; flex-wrap: wrap; gap: .5rem 1.75rem; margin-top: 1rem; }
.story-context { max-width: 82ch; margin-bottom: 2rem; }
.story-context h2 { font-size: clamp(1.5rem, 3vw, 2.25rem); margin: 1.5rem 0 1rem; }
.story-context p { margin: .75rem 0; line-height: 1.75; }
.story-context a { display: inline-flex; align-items: center; min-height: 44px; }
.window-guide a:focus-visible, .window-guide summary:focus-visible, .guide-table-scroll:focus-visible, .content-links a:focus-visible, .story-context a:focus-visible { outline: 3px solid #224c3d; outline-offset: 4px; }
@media (max-width: 767px) {
  .guide-related { grid-template-columns: minmax(0, 1fr); }
  .guide-section { margin: 2.25rem 0; }
  .guide-contact .button { display: flex; width: 100%; justify-content: center; text-align: center; }
  .guide-contact .text-link { margin-left: 0; }
  .guide-toc { flex-direction: column; gap: .25rem; }
}
