body[data-page-mode="weather"] .weather-experience-hero {
    min-height: 0 !important;
    height: auto !important;
    padding: 24px 30px !important;
}
body[data-page-mode="weather"] .weather-hero-copy {
    padding: 0 !important;
    max-width: 760px;
}
body[data-page-mode="weather"] #heroTitle {
    font-size: clamp(1.7rem, 3vw, 2.5rem) !important;
    line-height: 1.1 !important;
    margin: 8px 0 !important;
}
body[data-page-mode="weather"] #heroTitle br { display: none; }
body[data-page-mode="weather"] .weather-hero-copy p {
    font-size: 1rem !important;
    margin: 8px 0 !important;
}
body[data-page-mode="weather"] .experience-orb {
    width: 150px !important;
    height: 150px !important;
}
body[data-page-mode="weather"] .hero-badges { display: none; }
body[data-page-mode="weather"] .ad-reserve {
    min-height: 0 !important;
    padding: 10px !important;
}
body[data-page-mode="weather"] .current-weather {
    padding: 18px !important;
    gap: 16px !important;
}
body[data-page-mode="weather"] #currentWeatherTitle {
    font-size: clamp(1.25rem, 2vw, 1.8rem) !important;
}
body[data-page-mode="weather"] #currentTemperature,
body[data-page-mode="weather"] #currentWeatherIcon {
    font-size: clamp(2.5rem, 4vw, 4rem) !important;
}
.sage-forecast-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0;
}
.sage-forecast-tabs button {
    flex: 1;
    padding: 12px 16px;
    border: 1px solid #8d7130;
    border-radius: 12px;
    background: #0b0e12;
    color: #edd28c;
    font: inherit;
    cursor: pointer;
}
.sage-forecast-tabs button[aria-selected="true"] {
    background: #e5bd58;
    color: #151009;
}
.sage-forecast-tabs button:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 3px;
}
body[data-page-mode="weather"] .hourly-forecast {
    display: grid !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 125px), 1fr)) !important;
    overflow: visible !important;
}
body[data-page-mode="weather"] .daily-forecast {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)) !important;
}
body[data-page-mode="weather"] .hour-card,
body[data-page-mode="weather"] .day-card {
    min-height: 0 !important;
    padding: 14px 10px !important;
    gap: 8px !important;
}
body[data-page-mode="weather"] .forecast-section h2 {
    font-size: 1.65rem !important;
}
@media (max-width: 600px) {
    body[data-page-mode="weather"] .weather-experience-hero {
        padding: 18px !important;
    }
    body[data-page-mode="weather"] .experience-orb { opacity: .25; }
}
