*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#F1E9DA;color:#20323F;font-family:Arial,Helvetica,sans-serif;line-height:1.65}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
.skip{position:absolute;left:-9999px}
.skip:focus{left:1rem;top:1rem;background:white;padding:.7rem;z-index:30}
.weather-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 4vw;background:#20323F;color:#F1E9DA;border-bottom:8px solid #E76F51}
.weather-brand{font-weight:900;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;max-width:25ch}
nav ul{display:flex;gap:1rem;list-style:none;padding:0;margin:0;flex-wrap:wrap}
.call{display:inline-flex;flex-direction:column;background:#E76F51;color:#20323F;padding:.65rem 1rem;text-decoration:none;font-weight:800;border-radius:8px 42px}
.call strong{font-size:1.18rem}
main{min-height:70vh}
.weather-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center;padding:clamp(3rem,7vw,7rem) 6vw;background:linear-gradient(124deg,#F1E9DA 58%,#2A9D8F 58%);clip-path:polygon(4% 0,100% 0,100% 100%,0 92%)}
.weather-hero h1{font-size:clamp(2.5rem,6vw,5.8rem);line-height:.98;margin:.2rem 0 1.2rem;letter-spacing:-.04em}
.eyebrow{font-weight:800;text-transform:uppercase;letter-spacing:.13em;color:#2A9D8F}
.weather-hero figure{margin:0;border:12px solid #20323F;box-shadow:20px 18px 0 #E76F51;transform:rotate(0deg)}
figcaption{font-size:.82rem;padding:.5rem;background:#F1E9DA}
.weather-rail{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;padding:2rem 6vw;background:#20323F;color:#F1E9DA}
.weather-rail div,.weather-rail aside,.weather-rail article,.weather-rail section{border-left:5px solid #E76F51;padding:.8rem}
.weather-project-key{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.65rem;padding:1.2rem 6vw;background:#E76F51;color:#20323F}
weather-marker{display:block;padding:.65rem;border:2px solid #20323F;background:color-mix(in srgb,#F1E9DA 82%,transparent)}
weather-caption{display:block;margin:0}
.weather-chapters{max-width:1180px;margin:auto;padding:4rem 6vw}
.weather-chapter{display:grid;grid-template-columns:160px 1fr;gap:1.5rem;padding:2.2rem 0;border-top:4px solid #20323F}
weather-copy,weather-heading{display:block}
.weather-chapter:nth-child(2n){background:color-mix(in srgb,#E76F51 12%,transparent);padding-left:2rem;padding-right:2rem}
.weather-num{font-size:2.8rem;font-weight:900;color:#E76F51}
.weather-chapter h2,.page h1{font-size:clamp(1.8rem,4vw,3.4rem);line-height:1.05;margin:.2rem 0 1rem}
.page{max-width:1080px;margin:3rem auto;padding:0 5vw}
.page-hero{display:grid;grid-template-columns:1fr .72fr;gap:2rem;align-items:center;padding:2rem;border:5px solid #20323F;background:white;box-shadow:14px 12px 0 #E76F51}
.page-hero figure{margin:0}
.content-block{margin:2.4rem 0;padding:1.5rem 2rem;border-left:7px solid #2A9D8F;background:color-mix(in srgb,white 78%,#F1E9DA)}
.content-block:nth-of-type(even){border-left-color:#E76F51;transform:translateX(16px)}
.local-card{background:#20323F;color:#F1E9DA;padding:1rem;margin:1rem 0;border-radius:8px 42px}
.area-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.area-grid a{padding:1rem;background:white;border:2px solid #20323F;text-decoration:none}
footer{padding:2.5rem 5vw;background:#20323F;color:#F1E9DA}
footer .links{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1rem}
.mobile-call{display:none}
@media(max-width:760px){.weather-nav{align-items:flex-start;flex-direction:column}nav ul{font-size:.9rem}.weather-hero,.page-hero{grid-template-columns:1fr}.weather-hero figure{order:2}.weather-rail{grid-template-columns:1fr 1fr}.weather-chapter{grid-template-columns:55px 1fr}.mobile-call{display:flex;position:fixed;bottom:.7rem;left:.7rem;right:.7rem;z-index:20;justify-content:center;background:#E76F51;color:#20323F;padding:.8rem;text-decoration:none;font-weight:900;border:3px solid #20323F}body{padding-bottom:4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}