.weather-intro{padding-block:2.5rem 3.5rem}.weather-intro-grid{grid-template-columns:1.1fr 1fr;align-items:center;gap:3.5rem;margin-top:2rem;display:grid}.weather-intro h1{font-size:clamp(2.7rem,4.6vw,4.7rem)}.weather-intro .house-photo{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;min-height:0}.weather-intro figcaption{color:var(--muted);padding-top:.8rem;font-size:.76rem}.weather-heading{grid-template-columns:1fr 1fr;align-items:end;gap:3rem;margin-bottom:2.3rem;display:grid}.weather-heading h2,.weather-heading>p{margin:0}.weather-forecast{padding-block:4.5rem}.forecast-intro{background:var(--cream);border:1px solid var(--line);align-items:center;gap:1.5rem;padding:1.5rem 2rem;display:flex}.forecast-intro p{overflow-wrap:anywhere;hyphens:auto;min-width:0;margin:0}.forecast-intro span{color:var(--muted);font-size:.88rem}.weather-icon{color:var(--gold);flex:none}.forecast-intro .weather-icon{width:48px;height:48px}.forecast-links{flex-wrap:wrap;gap:0 2rem;margin-top:1rem;display:flex}.weather-method{border-block:1px solid var(--line);margin-top:1.5rem;font-size:.87rem}.weather-method summary{min-height:54px;padding:.85rem .2rem;font-weight:600}.weather-method p{max-width:900px}.forecast-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid}.forecast-grid[hidden],.forecast-intro[hidden]{display:none}.forecast-card{background:var(--paper);text-align:center;min-width:0;padding:1.4rem .8rem}.forecast-card h3{letter-spacing:0;margin-bottom:1.3rem;font:600 .82rem/1.6 system-ui}.forecast-symbol{justify-content:center;display:flex}.forecast-symbol .weather-icon{width:36px;height:36px}.forecast-summary{min-height:2.8em;margin:.8rem 0 1rem;font-size:.82rem}.forecast-temperatures{justify-content:center;gap:.65rem;line-height:1.4;display:flex}.forecast-temperatures span{flex:1;min-width:0}.forecast-temperatures b{color:var(--navy);font-family:Georgia,serif;font-size:1.9rem;font-weight:400;display:block}.forecast-temperatures small{color:var(--muted);font-size:.66rem;display:block}.forecast-rain{margin:0;font-size:.76rem}.weather-season-band{background:var(--navy);color:var(--paper);padding-block:5rem}.weather-season-band h2,.weather-season-band h3{color:var(--paper)}.weather-season-band .weather-heading>p{color:#e9eee6}.weather-seasons{grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem;margin-top:3rem;display:grid}.weather-seasons article{border-top:1px solid #e9d7b550;padding-top:1.7rem}.weather-seasons .weather-icon{color:var(--gold-soft);width:40px;height:40px;margin-bottom:1.2rem}.weather-seasons h3{margin-bottom:.5rem;font-size:2.35rem}.weather-seasons h4{margin:1.8rem 0 .9rem;font:500 1.2rem/1.4 Georgia,serif}.weather-seasons article>p:not(.eyebrow):not(.season-temperature){color:#e9eee6;font-size:.91rem}.weather-seasons .text-link{gap:.5rem;font-size:.82rem}.weather-seasons .eyebrow{margin-bottom:.5rem;font-size:.66rem}.season-temperature{color:var(--gold-soft);font-size:1.1rem}.season-temperature span{font-size:.75rem;display:block}.month-picker{grid-template-columns:repeat(12,1fr);gap:6px;margin:2.5rem 0 1.5rem;display:grid}.month-picker a{border:1px solid var(--line);place-items:center;min-height:46px;padding:.4rem;font-size:.84rem;text-decoration:none;display:grid}.month-picker a:hover{background:var(--cream);border-color:var(--gold)}.climate-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.climate-table caption{text-align:left;color:var(--muted);padding:0 0 1.3rem;font-size:.85rem}.climate-table th,.climate-table td{text-align:right;border-bottom:1px solid var(--line);padding:1.1rem 1.5rem;font-size:.95rem}.climate-table thead th{background:var(--cream);font-size:.75rem;font-weight:600;line-height:1.6}.climate-table tr>:first-child{text-align:left;padding-left:1rem}.climate-table tbody th{font-weight:500}.climate-table tbody tr:target{outline:2px solid var(--gold);outline-offset:-2px;background:#e9d7b559}.climate-table .temperature-visual{text-align:left;width:35%}.climate-table th.temperature-visual span{float:right}.temperature-track{background:var(--cream);border-radius:9px;height:7px;display:block;position:relative}.temperature-track>span{background:var(--gold);border-radius:9px;height:7px;display:block;position:absolute;top:0}.climate-note{margin:1.2rem 0}.weather-context{grid-template-columns:1.2fr 1fr;align-items:center;gap:4rem;padding-bottom:5rem;display:grid}.climate-comparison{background:var(--cream);border:1px solid var(--line);text-align:center;padding:3rem}.climate-comparison>strong{color:var(--navy);margin:1rem 0;font:400 clamp(4rem,7vw,6.5rem)/1.2 Georgia,serif;display:block}.climate-comparison>strong>span{font-size:.5em}.climate-comparison .small-copy{margin-bottom:0;font-size:.8rem}.weather-close{text-align:center;border-block:1px solid var(--line);max-width:800px;padding-block:4rem}.weather-close .button-row{justify-content:center}.weather-page .weather-seasons article,.weather-page .weather-context,.weather-page .essentials-section{content-visibility:auto;contain-intrinsic-block-size:auto 450px}@media (width<=1100px){.weather-intro-grid{gap:2rem}.weather-seasons{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.forecast-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.climate-table .temperature-visual{width:25%}.weather-context{gap:2rem}.climate-comparison{padding:2rem}}@media (width<=700px){.weather-intro-grid,.weather-heading,.weather-context{grid-template-columns:1fr}.weather-intro-grid{gap:2rem}.weather-intro figure{max-width:520px}.weather-heading{gap:1.5rem}.weather-season-band{padding-block:3.5rem}.month-picker{grid-template-columns:repeat(6,1fr)}.climate-table .temperature-visual{display:none}.climate-table th,.climate-table td{padding:1rem .6rem;font-size:.83rem}.climate-table thead th{font-size:.69rem}.climate-table tr>:first-child{padding-left:.5rem}.forecast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.forecast-card:last-child{grid-column:1/-1;max-width:none}.forecast-card:last-child .forecast-temperatures{max-width:200px;margin-inline:auto}.weather-context{padding-bottom:3rem}.weather-forecast{padding-block:3.5rem}}@media (width<=400px){.weather-seasons{grid-template-columns:1fr}.forecast-intro{gap:1rem;padding:1.2rem}.weather-intro h1{font-size:2.7rem}.climate-table th,.climate-table td{padding-inline:.25rem}.climate-table thead th{font-size:.65rem}}@media print{.weather-page .weather-seasons article,.weather-page .weather-context,.weather-page .essentials-section{content-visibility:visible;contain-intrinsic-block-size:none}[data-forecast-load]{display:none}}@media (width>=701px) and (width<=1100px){.forecast-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.forecast-card{grid-column:span 3}.forecast-card:nth-child(n+5){grid-column:span 4}}.weather-intro-grid>*,.weather-heading>*,.weather-context>*,.weather-seasons>*,.month-picker>*{min-width:0}.weather-page .text-link{max-width:100%}.forecast-credit{margin-top:1.2rem}@media (width<=700px){.climate-table{table-layout:fixed}.climate-table tr>:first-child{width:34%}.month-picker{grid-template-columns:repeat(auto-fit,minmax(3.5rem,1fr))}.month-picker a{padding-inline:.2rem}}.weather-page .booking-panel>*{min-width:0;max-width:100%}@media (width<=700px){.weather-page .booking-panel{grid-template-columns:minmax(0,1fr);padding:clamp(1rem,5vw,2rem)}}.weather-seasons article{flex-direction:column;display:flex}.weather-seasons .text-link{align-self:flex-start;margin-top:auto}.season-source{color:#e9eee6;border-top:1px solid #e9d7b550;max-width:880px;margin:2rem 0 0;padding-top:1.3rem;font-size:.8rem}.forecast-temperatures small{font-size:.75rem}.forecast-card h3{font-size:.88rem}.climate-table thead th{font-size:.8rem}@media (width<=700px){.month-picker{grid-template-columns:repeat(6,minmax(0,1fr))}.climate-table th,.climate-table td{font-size:.875rem}.climate-table thead th{font-size:.75rem}}@media (width<=600px){.month-picker{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1100px){.climate-table{table-layout:fixed}.climate-table .temperature-visual{display:none}.climate-table tr>:first-child{width:34%}.climate-table th,.climate-table td{padding-inline:clamp(.25rem,1.4vw,1rem)}}@supports (content-visibility:auto){.weather-page>section:not(.weather-intro){content-visibility:auto;contain-intrinsic-block-size:auto 1000px}}@media print{.weather-page>section:not(.weather-intro){content-visibility:visible;contain-intrinsic-block-size:none}}
