/* Resource reading layout; the shared Syntra palette and type remain authoritative. */
.resource-page { overflow-x: visible; }
.resource-page a { text-underline-offset: .2em; touch-action: manipulation; }
.resource-page a:focus-visible, .table-scroll:focus-visible { outline: 3px solid var(--cta); outline-offset: 5px; }
.resource-page .skip-link { position: absolute; top: 8px; left: 16px; padding: 10px 16px; background: white; z-index: 10; transform: translateY(-160%); }
.resource-page .skip-link:focus { transform: translateY(0); }
.resource-header, .resource-footer { max-width: 1160px; margin: auto; padding: 24px; display: flex; align-items: center; justify-content: space-between; gap: 18px 28px; flex-wrap: wrap; }
.resource-header { border-bottom: 1px solid var(--line); }
.resource-header .brand { color: var(--ink); }
.resource-header nav, .resource-footer nav { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.resource-header nav a, .resource-footer a { min-height: 44px; display: inline-flex; align-items: center; }
.checklist { max-width: 76ch; margin: auto; padding: 56px 24px 64px; }
.checklist h1 { font-family: var(--font-display); font-size: clamp(34px, 4vw, 52px); line-height: 1.15; font-weight: 600; letter-spacing: -.02em; text-wrap: balance; margin: 0 0 28px; }
.checklist h2 { font-size: clamp(23px, 2.5vw, 28px); line-height: 1.3; text-wrap: balance; margin: 44px 0 16px; scroll-margin-top: 24px; }
.checklist p { font-size: 18px; line-height: 1.75; margin: 0 0 20px; overflow-wrap: break-word; }
.checklist p a { text-decoration: underline; font-weight: 600; }
.checklist p a:hover { color: var(--cta); text-decoration-thickness: 2px; }
.table-scroll { max-width: 100%; overflow-x: auto; margin: 24px 0; border: 1px solid var(--line-2); border-radius: 8px; }
.checklist table { border-collapse: collapse; width: 100%; min-width: 620px; background: var(--surface); font-size: 16px; line-height: 1.5; }
.checklist th, .checklist td { padding: 14px 16px; border-bottom: 1px solid var(--line); vertical-align: top; }
.checklist th { text-align: left; font-weight: 600; }
.checklist thead th { background: var(--surface-2); }
.checklist td { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.checklist tbody tr:last-child > * { border-bottom: 0; }
.resource-footer { border-top: 1px solid var(--line); }
@media (max-width: 560px) {
  .resource-header, .resource-footer { padding: 18px 20px; gap: 12px; }
  .resource-header nav { width: 100%; justify-content: space-between; }
  .checklist { padding: 36px 20px 48px; }
  .checklist p { font-size: 17px; }
  .checklist h2 { margin-top: 36px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
@media print { .resource-header, .resource-footer, .skip-link { display: none; } .checklist { max-width: none; padding: 0; } .table-scroll { overflow: visible; } .checklist table { min-width: 0; font-size: 11px; } }
