:root{--blue:#a94729;--tint:#fff0e8;--page:#f8f5ef;--line:#e4ded4}
html[data-theme=dark]{--blue:#f4ac7a;--tint:#392b25;--page:#171c23;--line:#39414e}
.primary-button{background:#a94729}.primary-button:hover{background:#84351e}.site-header{border-bottom:1px solid var(--line)}
.category-nav [aria-current=page]{border-color:#d9ab91}.forecast-nav [aria-current=page]{background:var(--tint);border-color:var(--blue);color:var(--blue)}
.page-intro h1{letter-spacing:-1.5px}.page-forecast .page-intro{margin-bottom:22px}.current-panel{background:linear-gradient(125deg,var(--surface) 65%,var(--tint))}
.current-condition{font-weight:600}.tomorrow-condition{display:flex;align-items:center;gap:16px;padding:18px 0;color:var(--muted);font-size:14px}
.home-layout{grid-template-columns:minmax(0,2.15fr) minmax(290px,1fr)}.help-panel p{font-size:14px;color:var(--muted);line-height:1.8}
.location-directory .weather-table{max-width:100%}.page-directory .directory-links{grid-template-columns:repeat(3,minmax(0,1fr))}
.location-facts dd{overflow-wrap:anywhere}.nearby-list a small{font-size:11px;line-height:1.5}.forecast-day .day-date b{text-transform:capitalize}.analytics-preferences{font-size:13px}
@media(max-width:950px){.home-layout{grid-template-columns:1fr}.side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.page-directory .directory-links{grid-template-columns:repeat(2,minmax(0,1fr))}.help-panel{grid-column:1/-1}}
@media(max-width:600px){.side-stack{grid-template-columns:1fr}.page-intro h1{letter-spacing:-1px}.logo{font-size:22px}.current-panel .big-temperature>span{font-size:76px}.weather-table thead th:first-child{width:43%}.location-directory .weather-table{table-layout:fixed}.tomorrow-condition{padding-top:10px}.page-directory .directory-links{grid-template-columns:1fr}.category-nav{gap:6px}.category-nav a{font-size:12px}}

/* Readable type throughout the homepage and every location forecast. */
.page-forecast{font-size:18px;line-height:1.65}
.page-forecast h1{font-size:42px;line-height:1.2}
.page-forecast h2{font-size:25px;line-height:1.35}
.page-forecast .page-intro{margin-bottom:26px}
.page-forecast .page-intro p{font-size:18px;line-height:1.75}
.page-forecast .eyebrow{font-size:13px;letter-spacing:1.2px}
.page-forecast .nav-inner nav,.page-forecast .category-nav a,.page-forecast .forecast-nav a{font-size:16px}
.page-forecast .city-search label,.page-forecast .primary-button,.page-forecast .location-button,.page-forecast .city-search-disclosure>summary{font-size:16px}
.page-forecast .search-line input,.page-forecast #search-results a{font-size:17px}
.page-forecast .suggestions-heading,.page-forecast #search-results small,.page-forecast .search-message,.page-forecast .suggestions-footer,.page-forecast .suggestions-footer a{font-size:14px}
.page-forecast .breadcrumb{font-size:14px}
.page-forecast .heading-line{flex-wrap:wrap}
.page-forecast .heading-line h2{min-width:0;flex:1 1 210px}
.page-forecast .badge{font-size:12px}
.page-forecast .current-condition{font-size:22px}
.page-forecast .current-label,.page-forecast .current-metrics,.page-forecast .outlook-metrics>div>span{font-size:15px}
.page-forecast .current-metrics b{font-size:19px}
.page-forecast .today-outlook h3{font-size:18px}
.page-forecast .outlook-metrics b{font-size:28px}
.page-forecast .outlook-metrics b small{font-size:18px}
.page-forecast .outlook-metrics small{font-size:14px}
.page-forecast .outlook-summary,.page-forecast .section-intro,.page-forecast .help-panel p,.page-forecast .status-message{font-size:16px;line-height:1.8}
.page-forecast .data-note{font-size:14px;line-height:1.75}
.page-forecast .text-link,.page-forecast .heading-line .text-link,.page-forecast .tomorrow-hours>summary,.page-forecast .tomorrow-condition{font-size:16px}
.page-forecast .hour{flex-basis:108px;gap:9px;padding-inline:8px}
.page-forecast .hour time{font-size:16px}
.page-forecast .hour b{font-size:22px}
.page-forecast .hour small{font-size:14px;white-space:normal;line-height:1.45}
.page-forecast .rain-value{font-size:15px}
.page-forecast .daily-labels,.page-forecast .forecast-day>summary{grid-template-columns:90px minmax(44px,1fr) 94px 92px 12px;gap:12px}
.page-forecast .daily-labels{font-size:13px}
.page-forecast .forecast-day>summary{font-size:16px;min-height:88px}
.page-forecast .day-date b{font-size:16px}
.page-forecast .day-date small,.page-forecast .day-condition>span,.page-forecast .day-rain small{font-size:13px}
.page-forecast .day-temps{font-size:20px}
.page-forecast .day-rain{font-size:15px;white-space:normal;line-height:1.45}
.page-forecast .nearby-list a,.page-forecast .location-facts dd{font-size:17px}
.page-forecast .nearby-list a small,.page-forecast .nearby-list>div>small{font-size:13px}
.page-forecast .location-facts{font-size:15px}
.page-forecast .directory-switch button{font-size:16px}
.page-forecast .directory-switch button span{font-size:14px}
.page-forecast .weather-table th{font-size:15px}
.page-forecast .weather-table tbody th{font-size:18px}
.page-forecast .weather-table small,.page-forecast .weather-table .condition,.page-forecast .weather-table td small{font-size:13px;line-height:1.55}
.page-forecast .weather-table td{font-size:21px}
.page-forecast .weather-cell-content{grid-template-rows:34px auto;gap:6px}
.page-forecast .state-grid>a{font-size:17px}
.page-forecast .state-grid small{font-size:14px}
.page-forecast .guide p{font-size:17px;line-height:1.85}

/* Nearby forecasts stay directly accessible from every page. */
.footer-top h2,.footer-states-heading h2,.page-forecast .footer-top h2,.page-forecast .footer-states-heading h2{font-size:18px}
.footer-top p,.footer-top>div>a:not(.logo),.analytics-preferences{font-size:15px}
.footer-top>div>a:not(.logo){padding-block:7px}
.footer-state-links a{font-size:15px;line-height:1.55;min-height:44px;overflow-wrap:anywhere}
.footer-states-heading .text-link{font-size:14px;white-space:normal}
.footer-locations .footer-state-links a{font-size:16px}
.provider-footer{font-size:13px}

@media(max-width:1100px){
 .page-forecast .daily-labels,.page-forecast .forecast-day>summary{grid-template-columns:minmax(78px,1fr) 34px 82px 82px 12px;gap:8px}
}
@media(max-width:600px){
 .page-forecast h1{font-size:34px}.page-forecast h2{font-size:23px}.page-forecast .page-intro p{font-size:17px}
 .page-forecast .category-nav a,.page-forecast .forecast-nav a{font-size:14px}
 .page-forecast .search-line input{font-size:16px}.page-forecast .primary-button,.page-forecast .location-button{font-size:14px}
 .page-forecast .eyebrow{font-size:12px}.page-forecast .breadcrumb{font-size:13px}
 .page-forecast .current-metrics{gap:16px 22px}.page-forecast .outlook-metrics{gap:16px}
 .page-forecast .daily-labels,.page-forecast .forecast-day>summary{grid-template-columns:minmax(72px,1fr) 30px 72px 74px 10px;gap:6px}
 .page-forecast .day-date b{font-size:15px}.page-forecast .day-temps{font-size:18px;gap:7px}.page-forecast .day-rain{font-size:14px}
 .page-forecast .weather-table thead th:first-child{width:40%}
 .page-forecast .weather-table tbody th{font-size:17px;overflow-wrap:anywhere}.page-forecast .weather-table td{font-size:19px}
 .page-forecast .weather-table .minimum{font-size:17px}.page-forecast .weather-table th{font-size:14px}
 .page-forecast .weather-cell-content{grid-template-rows:64px auto;gap:5px}
 .page-forecast .weather-table .weather-value{display:grid;grid-template-columns:repeat(2,max-content);grid-template-rows:30px 29px;justify-content:center;gap:5px 4px}
 .page-forecast .weather-table .weather-icon{grid-column:1/-1;justify-self:center;width:28px;height:28px}
 .page-forecast .now-cell .weather-value>b{grid-column:1/-1}
 .page-forecast .state-grid>a{font-size:16px}.page-forecast .guide p{font-size:16px}
 .footer-states-heading{flex-wrap:wrap;gap:8px}.footer-state-links{gap:0 16px}
}
@media(max-width:360px){
 .page-forecast .daily-labels,.page-forecast .forecast-day>summary{grid-template-columns:minmax(70px,1fr) 28px 60px 63px 10px;gap:4px}
 .page-forecast .day-date b{font-size:14px}.page-forecast .day-temps{gap:4px}.page-forecast .panel{padding-inline:12px}
 .page-forecast .weather-table .weather-value{column-gap:2px}
 .footer-locations .footer-state-links{grid-template-columns:1fr}
}
