.weather-main{max-width:1240px;padding-top:34px;padding-bottom:50px;color:#153e46}.weather-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr);gap:34px;padding:36px;border-radius:18px;background:linear-gradient(115deg,#f2e4cf,#f6ead8 60%,#e9ddc7)}.weather-kicker{font-size:.78rem;font-weight:750;letter-spacing:.09em;text-transform:uppercase;margin:0;color:#87553b}.weather-hero h1{font:700 clamp(2rem,4vw,3.6rem)/1.05 var(--serif);max-width:15ch;margin:10px 0 20px}.weather-hero p{max-width:58ch;line-height:1.6}.weather-place-form{display:grid;gap:8px;margin-top:25px}.weather-place-form label{font-size:.85rem;font-weight:700}.weather-place-form>div{display:flex;gap:8px;flex-wrap:wrap}.weather-place-form select{min-width:0;max-width:100%;padding:10px 14px;border:1px solid #bcae97;border-radius:8px;background:#fffefa;color:#153e46;font:inherit;min-height:44px}.weather-place-form button{padding:10px 18px;background:#153e46;color:#fff;border:1px solid #153e46;border-radius:24px;font:700 .9rem var(--sans);cursor:pointer;min-height:44px}.weather-now{padding:25px;border-radius:14px;border:1px solid #ddcfb9;background:#fffefa;align-self:center}.weather-now-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;font-weight:700}.weather-temperature{display:block;font-size:clamp(3rem,6vw,4.7rem);line-height:1.2;letter-spacing:-.04em}.weather-temperature small{font-size:1.6rem;letter-spacing:normal}.weather-now>p{margin:6px 0 18px}.weather-now-facts{display:grid;gap:8px;border-top:1px solid #e0e5dc;padding-top:16px;margin-bottom:18px;font-size:.85rem}.weather-now-facts span{display:flex;justify-content:space-between;gap:10px}.weather-now>small{display:block;font-size:.75rem;color:#60716b}.weather-icon{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:#a06736;flex-shrink:0}.weather-region{margin:28px 0}.weather-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.weather-section-heading h2{font:700 clamp(1.5rem,3vw,2rem)/1.2 var(--serif);margin:5px 0}.weather-section-heading>span{font-size:.85rem;color:#60716b}.weather-region-grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px}.weather-region-grid a{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:10px;background:#fffefa;border:1px solid #dce2da;border-radius:12px;padding:15px 10px;text-align:center;text-decoration:none}.weather-region-grid a[aria-current],.weather-region-grid a:hover{background:#eaf0e3;border-color:#9eb691}.weather-region-grid a>span{font-size:.85rem;font-weight:700}.weather-region-grid a>div{display:flex;align-items:center;justify-content:center;gap:4px}.weather-region-grid .weather-icon{width:25px;height:30px}.weather-region-grid strong{font-size:1.25rem}.weather-region-grid small{font-size:.72rem;color:#60716b}.weather-panel{padding:28px;margin:24px 0;background:#fffefa;border:1px solid #dce2da;border-radius:16px}.weather-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.weather-day{min-width:0;text-align:center;padding:18px 10px;background:#f5f5ed;border-radius:12px;border:1px solid #e3e7dc}.weather-day h3{margin:0 0 16px;font-size:1rem}.weather-day h3 small{display:block;font-weight:500;font-size:.8rem;color:#60716b;margin-top:3px}.weather-day>.weather-icon{margin:0 auto 10px}.weather-day-description{font-size:.8rem;min-height:2.8em;margin:8px 0}.weather-day-temperature{font-size:1.45rem}.weather-day dl{margin:16px 0 0;font-size:.76rem}.weather-day dl>div{margin:8px 0}.weather-day dt{color:#60716b}.weather-day dd{margin:2px 0 0;font-weight:650}.weather-day-partial{font-size:.7rem;color:#60716b}.weather-explanation{margin:20px 0 0;font-size:.8rem;line-height:1.6;color:#60716b}.weather-table-scroll{overflow:auto;max-height:540px}.weather-table-scroll table{width:100%;border-collapse:collapse;font-size:.9rem;white-space:nowrap}.weather-table-scroll caption{text-align:left;white-space:normal;font-size:.82rem;line-height:1.5;color:#60716b;padding:0 0 18px}.weather-table-scroll td,.weather-table-scroll th{padding:11px 12px;text-align:left;border-bottom:1px solid #e4e9e2}.weather-table-scroll th{background:#edf2e8;position:sticky;top:0}.weather-table-symbol{display:flex;align-items:center;gap:12px}.weather-table-symbol .weather-icon{width:24px;height:28px}.weather-source{font-size:.85rem;line-height:1.65;color:#536762;padding:8px 4px}.weather-notice{padding:16px;background:#fff0cf;border-radius:10px;color:#604c2d}.weather-page a:focus-visible,.weather-page button:focus-visible,.weather-page select:focus-visible{outline:3px solid #b95d3f;outline-offset:3px}
@media(max-width:1100px){.weather-region-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.weather-days{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.weather-main{padding-top:18px}.weather-hero{grid-template-columns:1fr;gap:22px;padding:24px 20px}.weather-hero h1{max-width:100%}.weather-now{padding:20px}.weather-region-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.weather-panel{padding:20px 14px}.weather-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.weather-day{padding:16px 10px}.weather-day-description{min-height:0}.weather-table-scroll table{font-size:.82rem}}
