/* Scoped additions to the existing editorial design. */
.search-guide .article-hero { min-height: 0; }
.search-guide .article-shell > * { min-width: 0; }
.search-guide .article-hero h1 { max-width: 940px; font-size: clamp(2.8rem, 5.3vw, 5.4rem); line-height: 1.02; overflow-wrap: anywhere; }
.search-guide .calendar-table-wrap { max-width: 100%; margin: 1.6rem 0; }
.search-guide table { width: 100%; border-collapse: collapse; table-layout: fixed; font-family: var(--sans); font-size: .83rem; line-height: 1.65; }
.search-guide caption { text-align: left; padding: 0 0 1rem; font-family: var(--body); font-size: 1rem; color: var(--muted); }
.search-guide th, .search-guide td { text-align: left; vertical-align: top; padding: .85rem .65rem; border-bottom: 1px solid var(--line); overflow-wrap: anywhere; }
.search-guide thead th { color: var(--rust); font-weight: 600; }
.search-guide tbody th { font-weight: 500; }
.search-guide .source-note { font-size: .9rem; }
.search-guide .guide-app-image { max-width: 420px; margin: 0 auto 2.5rem; }
.search-guide .guide-app-image img { width: 100%; height: auto; }
.search-guide .store-links { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 24px; }
.search-guide .store-links img { width: auto; height: 48px; }
@media (max-width: 480px) {
  .search-guide th, .search-guide td { padding: .7rem .4rem; }
  .search-guide table { font-size: .76rem; }
}
@media print {
  .search-guide > header, .search-guide .athon-mobile-menu, .search-guide .article-rail,
  .search-guide footer, .search-guide .related-reading, .search-guide .reading-progress { display: none !important; }
  .search-guide .article-hero { background: white; color: black; padding: 1rem; }
  .search-guide .article-hero h1 { font-size: 2rem; }
  .search-guide .article-shell { display: block; padding: 1rem; }
  .search-guide table { break-inside: avoid; }
}
