.search-report { font-size:20px; overflow-wrap:break-word; }
.search-report .kit-header { display:flex; justify-content:space-between; align-items:center; }
.search-report .brand { min-width:0; flex-shrink:1; }
.search-report .brand-mark { flex-shrink:0; }
.report-back { font-size:20px; text-underline-offset:5px; }
.report-main { max-width:1080px; }
.report-intro { padding:48px 0 24px; }
.report-intro h1 { font-size:clamp(2.4rem,7vw,4.5rem); max-width:16ch; }
.report-intro .intro { margin-top:24px; font-size:1.2em; }
.report-main p { max-width:75ch; }
.report-section { padding:34px 0; border-top:1px solid var(--line); }
.report-section h2 { font-size:clamp(1.8rem,5vw,2.6rem); margin-bottom:24px; }
.number-grid { display:grid; grid-template-columns:1fr; gap:18px; }
.number-card { min-width:0; padding:26px; border:1px solid var(--ink); border-radius:12px; background:var(--peach); }
.number-card:nth-child(even) { background:#e9eee5; }
.number-card strong { font:500 2.8rem var(--font-display); }
.number-card p { margin:16px 0 0; }
.search-table { width:100%; table-layout:fixed; border-collapse:collapse; margin-top:24px; }
.search-table caption { text-align:left; margin-bottom:18px; font-size:19px; }
.search-table th,.search-table td { padding:18px 12px; border-bottom:1px solid var(--line); vertical-align:top; }
.search-table th { text-align:left; font-weight:500; overflow-wrap:anywhere; }
.search-table th:last-child,.search-table td { width:34%; text-align:right; }
.search-table thead { background:#e9eee5; }
.search-table tbody th { font-weight:600; }
.phrase-note { display:block; font-size:19px; font-weight:400; color:var(--muted); margin-top:8px; }
.search-season { margin:24px 0 0; padding:24px; border:1px solid var(--line); border-radius:12px; }
.season-row + .season-row { margin-top:24px; }
.season-label { display:flex; justify-content:space-between; gap:12px; margin-bottom:10px; }
.season-track { height:24px; background:var(--peach); border-radius:4px; overflow:hidden; }
.season-track span { display:block; height:100%; background:var(--ink); }
.search-season figcaption { font-size:19px; margin-top:24px; }
.possibility-list { list-style:none; padding:0; margin:28px 0 0; display:grid; gap:20px; }
.possibility-list li { border:1px solid var(--line); border-radius:12px; padding:26px; background:var(--surface); }
.possibility-list h3 { font-size:1.4rem; margin-bottom:18px; }
.possibility-list p:last-child { margin-bottom:0; }
.next-steps { padding-left:1.4em; }
.next-steps li { padding-left:8px; margin-bottom:20px; }
.report-sources p { font-size:19px; }
.search-report .site-footer { padding:32px 0 42px; background:#e9eee5; }
@media(min-width:650px) { .number-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:380px) {
  .search-report .brand strong { font-size:20px; }
  .search-table th,.search-table td { padding:16px 8px; }
  .number-card,.possibility-list li,.search-season { padding:20px; }
}
