*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#161713;background:#f5f5ef;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-underline-offset:.18em}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #54701c}button,input,select{font:inherit}main{width:min(1080px,100% - 32px);margin:0 auto;padding:64px 0 96px}.hero{max-width:860px;padding:48px 0 56px}.hero h1{letter-spacing:-.045em;text-wrap:balance;font-size:clamp(2rem,5.8vw,4.5rem);line-height:1.06}.eyebrow,.section-label{letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:.76rem;font-weight:800}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.065em;max-width:900px;margin-bottom:24px;font-size:clamp(3rem,8vw,6.6rem);line-height:.92}h2{letter-spacing:-.035em;margin-bottom:8px;font-size:clamp(1.8rem,4vw,2.8rem)}h3{margin:0;font-size:1.35rem}.lead{color:#55584f;max-width:720px;margin-bottom:0;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.65}.calculator,.chart-card,.method{background:#fff;border:1px solid #d7d8ce;border-radius:24px}.location-guides{border-top:2px solid #161713;border-bottom:1px solid #cfd1c5;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,7vw,80px);margin-top:72px;padding:clamp(24px,5vw,40px) 0;display:grid}.location-guides p:last-child{color:#55584f;max-width:440px;margin-bottom:0;line-height:1.65}.location-guide-links{display:grid}.location-guide-links a{border-bottom:1px solid #d7d8ce;justify-content:space-between;gap:24px;padding:17px 0;font-size:1.12rem;font-weight:800;text-decoration:none;display:flex}.location-guide-links a:first-child{padding-top:0}.location-guide-links a:last-child{border-bottom:0}.location-guide-links span{color:#55584f;font-size:.9rem;font-weight:650}.calculator{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;padding:clamp(24px,5vw,48px);display:grid}form{gap:22px;display:grid}label{gap:8px;font-size:.9rem;font-weight:700;display:grid}input,select{color:#161713;background:#fbfbf8;border:1px solid #cfd1c5;border-radius:12px;outline:none;width:100%;min-height:48px;padding:0 14px}input:focus,select:focus{border-color:#161713;box-shadow:0 0 0 3px #16171314}input[type=range]{accent-color:#161713;min-height:0;padding:0}.input-with-unit{position:relative}.input-with-unit input{padding-right:56px}.input-with-unit span{color:#73766b;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.range-row{grid-template-columns:1fr 54px;align-items:center;gap:16px;display:grid}output{font-variant-numeric:tabular-nums;text-align:right}details{border-top:1px solid #e5e6de;padding:16px 0 0}summary{cursor:pointer;font-weight:700}.details-field{margin-top:18px}button{color:#fff;cursor:pointer;background:#161713;border:0;border-radius:12px;min-height:52px;font-weight:800}button:hover{opacity:.9}button:disabled{cursor:wait;opacity:.55}.error{color:#9e231c;margin:0;font-size:.9rem}.results{padding-top:72px}.result-heading,.card-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.source-note{color:#73766b;margin-bottom:8px;font-size:.82rem}.cards{grid-template-columns:1.4fr 1fr;gap:16px;margin:24px 0 16px;display:grid}.metric-card{background:#fff;border:1px solid #d7d8ce;border-radius:24px;flex-direction:column;justify-content:flex-end;min-height:210px;padding:28px;display:flex}.metric-card.primary{background:#d9f772;border-color:#d9f772}.metric-card span,.metric-card small{color:#55584f;font-weight:700}.metric-card strong{letter-spacing:-.065em;font-variant-numeric:tabular-nums;margin:auto 0 0;font-size:clamp(3.2rem,8vw,6rem);line-height:.9}.chart-card{margin-top:16px;padding:28px}.monthly-chart{grid-template-columns:repeat(12,1fr);align-items:end;gap:8px;height:300px;margin-top:36px;display:grid}.month{grid-template-rows:1fr auto;gap:8px;min-width:0;height:100%;display:grid}.bar-zone{text-align:center;flex-direction:column;justify-content:flex-end;min-height:0;display:flex}.bar-value{margin-bottom:5px;font-size:.72rem;font-weight:700}.bar{background:#161713;border-radius:7px 7px 2px 2px;width:100%;min-height:4px}.month-label{text-align:center;color:#73766b;font-size:.72rem}.orientation-chart{gap:16px;margin-top:32px;display:grid}.orientation-row{grid-template-columns:76px minmax(80px,1fr) 86px 72px;align-items:center;gap:14px;font-size:.86rem;display:grid}.orientation-name{font-weight:700}.orientation-track{background:#eeefe8;border-radius:999px;height:14px;overflow:hidden}.orientation-bar{border-radius:inherit;background:#161713;height:100%}.orientation-row strong{text-align:right;font-variant-numeric:tabular-nums}.orientation-row small{color:#73766b;text-align:right}.method{max-width:800px;margin-top:72px;padding:clamp(24px,5vw,40px)}.method p:last-child{color:#55584f;margin-bottom:0;line-height:1.75}.site-nav{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px 24px;padding:8px 0 40px;font-weight:750;display:flex}.brand{letter-spacing:-.03em;font-size:1.1rem;text-decoration:none}.local-page{max-width:1120px}.local-hero{grid-template-columns:minmax(0,1.55fr) minmax(250px,.65fr);align-items:end;gap:clamp(36px,8vw,96px);padding:clamp(32px,6vw,72px) 0 clamp(56px,8vw,96px);display:grid}.local-hero h1{font-variant-numeric:tabular-nums;font-size:clamp(3.5rem,9vw,7.4rem)}.hero-facts{border-top:2px solid #161713;margin:0}.hero-facts div{border-bottom:1px solid #cfd1c5;justify-content:space-between;gap:20px;padding:14px 0;display:flex}.hero-facts dt{color:#55584f}.hero-facts dd{margin:0;font-weight:800}.local-summary{background:#d9f772;border-radius:24px;grid-template-columns:.7fr 1.3fr;gap:clamp(28px,7vw,88px);padding:clamp(32px,6vw,64px);display:grid}.local-summary p:last-child{margin:0;font-size:clamp(1.15rem,2.5vw,1.55rem);line-height:1.55}.data-section{padding-top:clamp(72px,10vw,112px)}.section-heading{justify-content:space-between;align-items:end;gap:28px;margin-bottom:32px;display:flex}.static-chart{background:#fff;border:1px solid #d7d8ce;border-radius:24px;grid-template-columns:repeat(12,minmax(34px,1fr));align-items:end;gap:clamp(4px,1vw,10px);height:330px;padding:24px 20px 18px;display:grid}.static-month{text-align:center;grid-template-rows:20px 1fr 20px;align-items:end;gap:7px;min-width:0;height:100%;display:grid}.static-month span,.static-month small{color:#55584f;font-size:.72rem}.static-bar{background:#161713;border-radius:8px 8px 2px 2px;width:100%;min-height:4px}.table-wrap{margin-top:18px;overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%}caption{text-align:left;color:#55584f;padding:0 0 12px;font-size:.85rem}th,td{text-align:left;border-bottom:1px solid #e5e6de;padding:13px 16px}td{text-align:right;font-variant-numeric:tabular-nums}tfoot{font-weight:800}.static-orientations{background:#fff;border:1px solid #d7d8ce;border-radius:24px;gap:18px;padding:clamp(24px,5vw,40px);display:grid}.static-orientation{grid-template-columns:90px minmax(100px,1fr) 90px 74px;align-items:center;gap:18px;display:grid}.static-orientation span,.static-orientation small{text-align:right;font-variant-numeric:tabular-nums}.static-orientation small{color:#73766b}.local-cta{color:#f5f5ef;background:#161713;border-radius:24px;grid-template-columns:.8fr 1.1fr auto;align-items:center;gap:clamp(24px,5vw,56px);margin-top:clamp(72px,10vw,112px);padding:clamp(28px,5vw,48px);display:grid}.local-cta p{color:#d7d8ce;margin-bottom:0;line-height:1.65}.button-link{color:#161713;white-space:nowrap;background:#d9f772;border-radius:12px;align-items:center;min-height:52px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.local-method{max-width:none}.local-method p{max-width:800px}.city-links{color:#55584f;flex-wrap:wrap;gap:12px 24px;padding-top:48px;display:flex}.city-links span{color:#161713;font-weight:800}@media (width<=760px){main{padding-top:24px}.calculator{grid-template-columns:1fr;gap:28px}.cards{grid-template-columns:1fr}.metric-card{min-height:170px}.monthly-chart{gap:4px;overflow-x:auto}.bar-value{display:none}.orientation-row{grid-template-columns:62px 1fr 74px}.orientation-row small{display:none}.result-heading{flex-direction:column;align-items:start;gap:0}.site-nav{padding-bottom:20px}.location-guides,.local-hero,.local-summary,.local-cta{grid-template-columns:1fr}.local-hero{align-items:start}.section-heading{flex-direction:column;align-items:start;gap:4px}.static-chart{grid-template-columns:repeat(12,minmax(42px,1fr));overflow-x:auto}.static-month span{visibility:hidden}.static-orientation{grid-template-columns:66px minmax(80px,1fr) 78px;gap:10px}.static-orientation small{display:none}.local-cta{align-items:start}.button-link{white-space:normal;text-align:center;justify-content:center}}.site-footer{color:#161713;background:#ebebe3;border-top:1px solid #cfd1c5;margin-top:96px;font-size:.9rem}.footer-container{grid-template-columns:1fr 1.5fr;gap:48px;width:min(1080px,100% - 32px);margin:0 auto;padding:48px 0 36px;display:grid}.footer-brand{letter-spacing:-.03em;margin-bottom:12px;font-size:1.25rem;font-weight:800;text-decoration:none;display:inline-block}.footer-tagline{color:#55584f;max-width:340px;margin:0;line-height:1.6}.footer-nav-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.footer-group-title{letter-spacing:.12em;text-transform:uppercase;color:#55584f;margin-bottom:16px;font-size:.76rem;font-weight:800;display:block}.footer-nav-group ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.footer-nav-group a{color:#161713;font-weight:600;text-decoration:none}.footer-nav-group a:hover{text-decoration:underline}.footer-meta{border-top:1px solid #d7d8ce;padding:24px 0}.footer-meta-container{color:#73766b;justify-content:space-between;align-items:center;gap:24px;width:min(1080px,100% - 32px);margin:0 auto;font-size:.82rem;display:flex}.footer-attribution a{color:#55584f;text-decoration:underline}.footer-copyright{white-space:nowrap;margin:0}@media (width<=760px){.footer-container{grid-template-columns:1fr;gap:36px;padding:36px 0 24px}.footer-nav-grid{grid-template-columns:1fr 1fr;gap:24px}.footer-meta-container{flex-direction:column;align-items:flex-start;gap:12px}.footer-copyright{white-space:normal}}
