.forecast-section{margin-top:48px;padding-top:40px;border-top:1px solid var(--line);scroll-margin-top:100px;min-width:0}
.forecast-section>h2{font-family:var(--display);font-size:clamp(1.5rem,5vw,2rem);line-height:1.5;word-break:keep-all;overflow-wrap:anywhere}
.forecast-intro{margin:20px 0 12px;line-height:1.9;font-size:1.0625rem}
.forecast-notice,.forecast-period{font-size:.875rem;line-height:1.8;color:var(--secondary);margin:12px 0}
.forecast-warning{font-size:.9375rem;line-height:1.8;padding:16px;background:var(--peach-wash);margin:16px 0}
.forecast-group{margin-top:32px}.forecast-group>h3{font-size:1.125rem;margin-bottom:16px}
.forecast-card{padding:24px 0;border-top:1px solid var(--line);scroll-margin-top:100px;min-width:0}
.forecast-period-label{font-size:.9375rem;color:var(--rust);font-weight:600}
.forecast-card>details>summary{min-height:48px;padding:12px 0;cursor:pointer}
.forecast-card summary h4{display:inline;font-family:var(--display);font-size:1.3rem;line-height:1.6;font-weight:600}
.forecast-body p,.forecast-focus{font-size:1.0625rem;line-height:1.95;margin:18px 0;word-break:keep-all;overflow-wrap:anywhere}
.forecast-action{border-left:2px solid var(--rust);padding-left:16px}
.forecast-card .forecast-evidence{margin-top:20px}.forecast-evidence p{font-size:.9375rem;line-height:1.85;margin:12px 0}
.forecast-card>a{display:inline-block;min-height:44px;padding:10px 0;line-height:1.7;word-break:keep-all}
.forecast-jump{display:inline-block;margin-top:16px;min-height:44px;padding:10px 0;font-size:1rem;color:var(--rust)}
.forecast-section [hidden],.forecast-jump[hidden]{display:none!important}
@media(min-width:1024px){.forecast-body p,.forecast-focus{font-size:1.125rem}}

.public-preview{margin:36px 0 12px;padding:28px 0;border-top:1px solid var(--line);min-width:0}
.public-preview h2{font-family:var(--display);font-size:clamp(1.4rem,4.8vw,2rem);line-height:1.6;word-break:keep-all;overflow-wrap:anywhere}
.public-preview>p{max-width:42rem;margin:16px 0;line-height:1.9}
.public-preview .public-preview-note{font-size:.875rem;color:var(--secondary)}
.public-preview nav{display:flex;flex-wrap:wrap;gap:8px 24px}.public-preview a{display:inline-block;min-height:44px;padding:12px 0;color:var(--rust)}
