.seasonal-guide { max-width: 900px; }
.seasonal-crumb { margin: 0 0 22px; color: var(--muted); font-size: .84rem; }
.seasonal-crumb a { text-decoration-thickness: 1px; text-underline-offset: 3px; }
.seasonal-guide .lede { max-width: 76ch; color: var(--ink); font-size: 1.08rem; line-height: 1.62; }
.seasonal-fast-answer { margin: 20px 0 24px; padding: 18px 20px; border-left: 4px solid var(--green); background: var(--green-soft); }
.seasonal-fast-answer h2 { margin: 0 0 10px; font-size: 1.15rem; }
.seasonal-fast-answer ul { margin: 0; padding-left: 20px; color: var(--ink); line-height: 1.6; }
.seasonal-fast-answer li + li { margin-top: 7px; }
.seasonal-figure { width: min(100%, 420px); margin: 24px auto 28px; border-block: 1px solid var(--line); padding: 14px 0; }
.seasonal-figure img { display: block; width: 100%; height: auto; }
.seasonal-figure figcaption { max-width: 68ch; margin: 10px auto 0; color: var(--muted); font-size: .86rem; line-height: 1.5; }
.seasonal-table-wrap { max-width: 100%; overflow-x: auto; margin: 16px 0 24px; }
.seasonal-table { width: 100%; border-collapse: collapse; font-size: .94rem; line-height: 1.52; }
.seasonal-table th, .seasonal-table td { padding: 12px 13px; border: 1px solid var(--line); text-align: left; vertical-align: top; }
.seasonal-table thead th { background: var(--soft); color: var(--ink); }
.seasonal-table tbody th { min-width: 145px; background: rgba(255,255,255,.52); }
.seasonal-table td { color: var(--muted); }
.seasonal-checks { padding-left: 22px; color: var(--muted); line-height: 1.65; }
.seasonal-checks li + li { margin-top: 9px; }
.seasonal-action { margin: 20px 0 26px; padding: 17px 18px; border-left: 4px solid var(--green); background: var(--green-soft); color: var(--ink); }
.seasonal-sources { margin-top: 28px; padding-top: 17px; border-top: 1px solid var(--line); }
.seasonal-sources h2 { margin-top: 0; }
.seasonal-sources ul { padding-left: 20px; color: var(--muted); line-height: 1.58; }
.seasonal-sources li + li { margin-top: 8px; }
.seasonal-source-date { color: var(--muted); font-size: .84rem; }
@media (max-width: 620px) {
  .seasonal-guide .lede { font-size: 1rem; }
  .seasonal-fast-answer { padding: 15px 16px; }
  .prose .seasonal-table, .prose .seasonal-table tbody { display: block; width: 100%; min-width: 0; }
  .seasonal-table thead { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
  .seasonal-table tbody tr { display: block; margin: 0 0 12px; border: 1px solid var(--line); background: #fffdf7; }
  .seasonal-table tbody th { display: block; min-width: 0; padding: 12px 14px; border: 0; border-bottom: 1px solid var(--line); font-size: 1rem; }
  .seasonal-table tbody td { display: grid; grid-template-columns: minmax(76px, .34fr) minmax(0, 1fr); gap: 10px; padding: 10px 14px; border: 0; overflow-wrap: anywhere; }
  .seasonal-table tbody td::before { content: attr(data-label); color: var(--ink); font-weight: 650; }
}
