
/* v1.4.13: structured editorial content; no changes to the homepage animation system. */
.editorial-body { max-width: 960px; overflow-wrap: anywhere; }
.editorial-body--hub { max-width: 1180px; }
.editorial-body > h2 { margin-top: 2.1em; margin-bottom: .7em; }
.editorial-body > h3 { margin-top: 1.6em; margin-bottom: .6em; }
.editorial-body p { line-height: 1.8; margin-bottom: 1.05em; }
.editorial-body ul, .editorial-body ol { padding-inline-start: 1.5rem; margin: 1rem 0 1.6rem; }
.editorial-body li { padding-inline-start: .25rem; margin: .5rem 0; }
.editorial-body li p { margin-bottom: .35rem; }
.editorial-body a:not(.text-link) { text-decoration: underline; text-underline-offset: .2em; }
.editorial-body .seo-card-grid { margin: 1.5rem 0 2.5rem; }
.editorial-body .article-card { padding: 1.5rem; border: 1px solid var(--line, #ddd); border-radius: 16px; }
.editorial-table-scroll { max-width: 100%; overflow-x: auto; margin: 1.5rem 0 2rem; border: 1px solid var(--line, #ddd); border-radius: 12px; }
.editorial-table-scroll:focus-visible { outline: 2px solid var(--gold, #ad8a45); outline-offset: 3px; }
.editorial-table-scroll table { width: 100%; border-collapse: collapse; min-width: 440px; text-align: start; font-size: .95rem; }
.editorial-table-scroll th, .editorial-table-scroll td { padding: .9rem 1rem; border-bottom: 1px solid var(--line, #ddd); vertical-align: top; }
.editorial-table-scroll th { color: var(--navy, #07162f); background: var(--cream, #f7f5f0); font-weight: 700; }
.editorial-table-scroll tr:last-child td { border-bottom: 0; }
.editorial-faq { padding: 1rem 0; }
.editorial-faq .faq-list { max-width: 100%; }
.editorial-checklist { list-style: none; padding-inline-start: 0 !important; }
.editorial-checklist li { display: flex; gap: .75rem; align-items: flex-start; }
.editorial-checklist input { width: 1.15rem; height: 1.15rem; margin-top: .45rem; flex: 0 0 auto; }
.editorial-page .article-hero { padding: 3rem 0; }
.editorial-page .article-hero__inner { max-width: 960px; }
.editorial-page .article-hero h1 { font-size: clamp(2rem, 5vw, 3.7rem); line-height: 1.12; margin: 1rem 0; }
.editorial-page .article-intro { max-width: 850px; line-height: 1.8; }
@media (max-width: 600px) { .editorial-table-scroll th, .editorial-table-scroll td { padding: .7rem; } .editorial-body > h2 { font-size: 1.6rem; } }

.footer-hours { display:block; font-size:.85rem; line-height:1.65; opacity:.85; }

.editorial-hero--no-media { grid-template-columns: 1fr; }
.editorial-checklist label { display:block; line-height:1.8; cursor:pointer; }
