/* Readable text at normal zoom; preserve headings and the established layout. */
:root{--reading-size:17px;--secondary-size:14px}
.home p,.home .article-body,.home .article-body li,.home .history-list h3,.home .about>p,.home .invitation p{font-size:var(--reading-size)!important;line-height:1.95}
.home .section-label,.home .category,.home .topic-heading>span,.home .event-frequency,.home .event-theme>p,.home .event-format,.home .hub-story-copy>span,.home .history-list dt{font-size:var(--secondary-size)!important}
.home .header{flex-wrap:wrap;gap:18px 30px}
.header nav,.editorial-index,.home .editorial-index>span,.home .editorial-index b,.technical-toc{font-size:14px!important;line-height:1.8}
.home .header nav{gap:12px 24px}
.home .article h3,.home .hub-story-copy h3{font-size:24px}
.home .article summary{min-height:245px}
.home .article summary p{max-width:none}
.home .article-body h4,.home .event-notice h3{font-size:17px}
.home .document-link,.home .invitation a,.home .hub-story-copy strong,.home .procurement-feature-body a,.home .cost-callout strong{font-size:17px!important}
.home small,.home figcaption,.home .annotation,.home .hub-footnote,footer,.back-link,.source-ref{font-size:13px!important;line-height:1.8}
.home .hero-text .hero-lead{font-size:19px!important}
.home .hero-text>p:not(.hero-lead):not(.section-label){font-size:17px!important}
.home .hero-text .section-label{font-size:16px!important}
.home .event-overview{grid-template-columns:minmax(220px,.8fr) minmax(0,2fr)}
.technical-section p,.technical-section li,.procurement-keypoints p,.procurement-lead,.reading-deck{font-size:17px!important;line-height:1.95}
.source-list p,.source-list li,.source-list small,.technical-sources,.technical-sources small,.review-date{font-size:14px!important;line-height:1.9}
@media(max-width:800px){
 .home .header nav{gap:10px 18px}
 .editorial-index{grid-template-columns:1fr 1fr;gap:14px 20px}
 .editorial-index>span{grid-column:1/-1}
 .event-signup{grid-template-columns:1fr}
 .home .article summary{min-height:0}
}
@media(max-width:680px){
 :root{--reading-size:16px;--secondary-size:13px}
 .home .header nav{font-size:13px!important;justify-content:flex-start}
 .home .hero-text .hero-lead{font-size:16px!important}
 .home .hero-text>p:not(.hero-lead):not(.section-label){font-size:15px!important}
 .home .hero-text .section-label{font-size:14px!important}
 .home .hero-text h1{font-size:clamp(21px,5.8vw,26px);letter-spacing:.01em}
 .home .article h3,.home .hub-story-copy h3{font-size:22px}
 .home .event-overview{grid-template-columns:1fr}
 .home .history-list>div{grid-template-columns:1fr;gap:7px}
 .home .document-link,.home .invitation a,.home .hub-story-copy strong,.home .procurement-feature-body a{font-size:16px!important}
 .technical-section p,.technical-section li,.procurement-keypoints p,.reading-deck{font-size:16px!important}
 .home .article summary p br,.home .hub-heading>p br{display:none}
}

/* Disaster information: direct official maps first, insurance detail on demand. */
.water-preparedness{margin:42px 0;padding:32px;border-top:3px solid #637a60;background:#eef1e8;scroll-margin-top:24px}
.home .water-preparedness h2{font-size:30px;margin-bottom:18px}
.hazard-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0 18px}
.hazard-links>a{display:block;padding:20px;background:#fffdf7;border:1px solid #a8b69e;text-decoration:none}
.hazard-links>a:hover{background:#f8faf3;border-color:#526847}
.hazard-links>a>span{display:block;font-size:15px;line-height:1.8;color:#526047}
.hazard-links strong{display:block;font-size:21px;line-height:1.6;margin:7px 0}
.home .water-map-note{font-size:14px!important;line-height:1.9}
.water-guide-link{display:inline-block;font-size:16px;padding:8px 0}
.water-insurance{margin-top:22px;border-top:1px solid #b6c2ab;scroll-margin-top:24px}
.water-insurance summary{padding:20px 0;font-size:18px;font-weight:600;cursor:pointer}
.water-insurance-body{max-width:850px;margin:auto;padding-bottom:12px}
.water-insurance-body h3{font-size:21px;line-height:1.7;margin:26px 0 12px}
.water-insurance-body li{font-size:17px;line-height:1.95;margin-bottom:12px}
.water-insurance-body ul{padding-left:24px}
.water-sources{margin-top:28px;padding-top:10px;border-top:1px solid #b6c2ab}
.water-sources li,.home .water-sources p{font-size:14px!important}
@media(max-width:680px){.water-preparedness{padding:24px 18px;margin:32px 0}.home .water-preparedness h2{font-size:25px}.hazard-links{grid-template-columns:1fr;gap:12px}.hazard-links>a{padding:17px}.hazard-links strong{font-size:20px}.hazard-links>a>span{font-size:14px}.water-insurance summary{font-size:17px;line-height:1.8}.water-insurance-body h3{font-size:20px}.water-insurance-body li{font-size:16px}.water-sources a{overflow-wrap:anywhere}}
.stock-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;list-style:none;counter-reset:stock}
.stock-steps li{counter-increment:stock;padding:18px;background:#fffdf7;border-top:2px solid #a8b69e}
.stock-steps li::before{content:counter(stock,decimal-leading-zero);display:block;font-size:14px;color:#617357;margin-bottom:5px}
.stock-steps strong,.stock-steps span{display:block}.stock-steps span{font-size:15px;line-height:1.9;margin-top:8px}
@media(max-width:680px){.stock-steps{grid-template-columns:1fr;gap:8px}}

/* Historical resident materials are readable without taking over the article. */
.case-poster{max-width:360px;margin:26px 0}.case-poster img{display:block;width:100%;height:auto;border:1px solid #d2d8cc}.case-poster figcaption{font-size:13px;margin-top:8px;color:#65705f}.case-source-links{padding-left:22px}.case-source-links li{margin-bottom:24px}.case-source-links a{font-weight:600}.case-source-links p{margin-top:9px}.reading-page .technical-toc{flex-wrap:wrap}
