@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-vietnamese-wght-normal.BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-ext-wght-normal.CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-wght-normal.DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/figtree-latin-ext-wght-normal.DCwSJGxG.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/figtree-latin-wght-normal.D_ZTVpCC.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f6f7f5;--surface:#fff;--tint:#e6f1f3;--ink:#10262f;--ink-2:#2d4651;--muted:#4b6470;--line:#dde6e8;--sea:#0b3b4f;--sea-2:#0e4a61;--sea-3:#135a73;--on-sea:#fff;--on-sea-2:#d9eef3;--on-sea-3:#a9d8e3;--coral:#ff8a5b;--coral-ink:#2b1006;--coral-soft:#ffc9a8;--link:#0b5a73;--blue-1:#2f6f8a;--blue-2:#5fafc2;--blue-3:#9bd3df;--radius:20px;--radius-sm:14px;--shadow:0 1px 2px #0b3b4f14, 0 8px 24px #0b3b4f14;--max:1200px;--display:"Bricolage Grotesque Variable", system-ui, sans-serif;--text:"Figtree Variable", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:16px/1.6 var(--text);margin:0}a{color:var(--link);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--sea);text-decoration-thickness:2px}h1,h2,h3{font-family:var(--display);letter-spacing:-.01em;color:inherit;line-height:1.1}h1{margin:0;font-size:clamp(2rem,1.3rem + 2.6vw,3.25rem);font-weight:800}h2{margin:0 0 .6rem;font-size:1.45rem;font-weight:700}h3{margin:1rem 0 .4rem;font-size:1.1rem;font-weight:700}p{margin:0 0 1rem}.muted{color:var(--muted)}.wrap{max-width:var(--max);margin:0 auto;padding:0 32px}@media (width<=640px){.wrap{padding:0 16px}}.num,.bignum,td.num,.kpi .value{font-variant-numeric:tabular-nums lining-nums}.bignum{font-family:var(--display);letter-spacing:.01em;white-space:nowrap;font-weight:800;line-height:.9}.bignum .unit{letter-spacing:0;vertical-align:top;margin-left:.12em;font-size:.32em;font-weight:700;position:relative;top:.32em}.band{background:var(--sea);color:var(--on-sea);position:relative;overflow:hidden}.band .waves{pointer-events:none;width:100%;height:180px;position:absolute;bottom:0;left:0;right:0}.band a{color:var(--on-sea)}.site-header{position:relative}.site-header .wrap{flex-wrap:wrap;align-items:center;gap:12px 28px;min-height:72px;display:flex}.logo{color:var(--on-sea);font-family:var(--display);letter-spacing:-.01em;align-items:center;gap:10px;font-size:20px;font-weight:800;text-decoration:none;display:inline-flex}.logo:hover{color:var(--on-sea)}.nav{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.nav a{color:var(--on-sea-2);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:500;text-decoration:none}.nav a:hover{color:var(--on-sea);background:#ffffff1a}.nav a[aria-current=page]{background:var(--on-sea);color:var(--sea);font-weight:600}@media (width<=640px){.nav{width:100%;margin-left:0;padding-bottom:10px}}.hero{padding-top:20px;padding-bottom:56px;position:relative}.band.has-hero .hero{padding-bottom:128px}.crumbs{color:var(--on-sea-3);margin:0 0 18px;font-size:14px}.crumbs ol{flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none;display:flex}.crumbs li+li:before{content:"›";margin:0 6px 0 2px}.crumbs a{color:var(--on-sea-3);text-decoration:none}.crumbs a:hover{color:var(--on-sea)}.hero-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-items:end;gap:28px 48px;display:grid}.hero-copy{flex-direction:column;gap:14px;display:flex}.kicker{color:var(--on-sea-3);font-size:14px;font-weight:500}.lead{color:var(--on-sea-2);max-width:36em;margin:0;font-size:17px;line-height:1.55}.lead a{color:var(--on-sea)}.hero-figure{flex-wrap:wrap;align-items:flex-end;gap:22px;display:flex}.hero-figure .bignum{color:var(--on-sea);font-size:clamp(96px,7vw + 40px,156px)}.hero-figure .meta{flex-direction:column;gap:8px;padding-bottom:12px;display:flex}.hero-figure .meta span:not(.pill){color:var(--on-sea-2);font-size:15px}.hero-dates{flex-wrap:wrap;align-items:flex-end;gap:12px 36px;display:flex}.hero-date{flex-direction:column;gap:6px;display:flex}.hero-date .label{color:var(--on-sea-3);text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:600}.hero-date .bignum{font-size:clamp(52px,3vw + 32px,80px)}.pill{background:var(--tint);color:var(--ink);border-radius:999px;align-self:flex-start;padding:6px 12px;font-size:14px;font-weight:700;line-height:1.3;display:inline-block}.pill.warm{background:var(--coral);color:var(--coral-ink)}.pill.mild{background:var(--coral-soft);color:var(--coral-ink)}.pill.cool{background:var(--blue-3);color:var(--ink)}.pill.cold{background:var(--blue-2);color:var(--ink)}.pill.icy{background:var(--blue-1);color:#fff}.pill.sm{padding:3px 10px;font-size:12px}main{flex-direction:column;gap:28px;padding-bottom:64px;display:flex}main.overlap{margin-top:-80px;position:relative}main:not(.overlap){padding-top:32px}section>h2:first-child{margin-top:0}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px}.card.flat{box-shadow:none}.card>:last-child{margin-bottom:0}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-bottom:14px;display:flex}.card-head h2{margin:0}.card-head .muted{font-size:14px}.sub{color:var(--muted);margin:-6px 0 14px;font-size:14px}.kpis{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.kpi{background:var(--surface);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;gap:6px;padding:20px 22px;display:flex}.kpi .label{color:var(--muted);font-size:13px;font-weight:600}.kpi .value{font-family:var(--display);letter-spacing:0;font-size:30px;font-weight:700;line-height:1.1}.kpi .value.sm{font-size:22px}.kpi .sub{color:var(--muted);font-size:13px}.kpi a{text-decoration:none}.grid-2{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:20px;display:grid}@media (width<=520px){.grid-2{grid-template-columns:1fr}}.alert{border:1px solid var(--coral-soft);border-radius:var(--radius-sm);background:#fff1ea;align-items:flex-start;gap:12px;padding:14px 18px;display:flex}.alert svg{flex:none;margin-top:2px}.alert strong{color:#8a2e0c}.alert .muted{font-size:13px}.table-wrap{-webkit-overflow-scrolling:touch;background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:15px}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:12px 18px}th{color:var(--muted);font-size:13px;font-weight:600}tr:last-child td{border-bottom:0}td.num,th.num{text-align:right}td.num{font-weight:600}caption{caption-side:bottom;text-align:left;color:var(--muted);white-space:normal;padding:12px 18px 16px;font-size:13px}tr.current td{background:var(--tint);font-weight:600}.links{columns:4 190px;column-gap:24px;margin:0;padding:0;list-style:none}.links li{break-inside:avoid;padding:4px 0}.chips{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.chips a{background:var(--tint);color:var(--ink);border-radius:16px;flex-direction:column;gap:2px;height:100%;padding:16px;text-decoration:none;display:flex}.chips a:hover{color:var(--ink);background:#d6e9ed}.chips .name{font-size:15px;font-weight:600}.chips .meta{color:#3d5862;font-size:13px}.pill-links{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pill-links a{background:var(--tint);color:var(--ink);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:500;text-decoration:none;display:inline-block}.pill-links a:hover{background:#d6e9ed}.lookup{flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0;display:flex}.lookup label{font-size:14px}.lookup input{font:inherit;background:var(--surface);width:10em;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);border:0;border-radius:999px;padding:12px 16px;font-size:16px}.lookup input:focus{outline:3px solid var(--coral);outline-offset:1px}.lookup button{font:inherit;background:var(--coral);color:var(--coral-ink);cursor:pointer;border:0;border-radius:999px;min-height:44px;padding:12px 20px;font-size:15px;font-weight:700}.lookup button:hover{filter:brightness(1.04)}.band .lookup label{color:var(--on-sea-2)}.locate{font:inherit;min-height:44px;color:var(--link);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:10px 0;font-size:14px;font-weight:600;text-decoration:underline}.locate:disabled{opacity:.7;cursor:progress}.band .locate{color:var(--on-sea)}.locate-msg{min-height:1px;margin:0;font-size:13px}.band .locate-msg{color:var(--on-sea-2)}.tiers{grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:6px;display:grid}.tiers .bar{border-radius:10px}.tiers .bar.now{outline:3px solid var(--sea);outline-offset:3px}.tiers-labels{color:var(--muted);grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:10px;font-size:12px;line-height:1.3;display:grid}.tiers-labels strong{color:var(--ink);font-variant-numeric:tabular-nums;display:block}.chart{width:100%;height:auto;display:block}.chart text{fill:var(--muted);font-size:12px;font-family:var(--text)}.chart .axis{stroke:var(--line)}.chart .line{fill:none;stroke:#0b7a93;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.chart .area{fill:#2aa6bf29}.chart .dot{fill:var(--coral);stroke:#fff;stroke-width:2px}.month-bars{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:6px;height:170px;display:grid}.month-bars .col{flex-direction:column;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.month-bars .v{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.month-bars .b{border-radius:8px;width:100%}.month-bars .m{color:var(--muted);font-size:11px}.faq details{background:var(--surface);border-radius:var(--radius-sm);box-shadow:var(--shadow);margin:10px 0;padding:16px 20px}.faq summary{cursor:pointer;font-size:16px;font-weight:600}.faq details[open] summary{margin-bottom:8px}.faq details p:last-child{margin-bottom:0}.section-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.section-cards a{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink);flex-direction:column;gap:8px;padding:24px;text-decoration:none;display:flex}.section-cards a:hover{color:var(--ink);box-shadow:0 0 0 2px var(--sea-3), var(--shadow)}.section-cards h2{margin:0;font-size:1.25rem}.section-cards p{color:var(--muted);margin:0;font-size:15px}.ad-slot{justify-content:center;align-items:center;min-height:280px;display:flex}.source-note{color:var(--muted);margin:0;font-size:13px}.prose{max-width:46rem}.prose p,.prose li{color:var(--ink-2);font-size:17px;line-height:1.7}.prose li{margin:.3rem 0}.prose h2{margin-top:2rem}.prose .table-wrap{margin:.5rem 0 1.25rem}.site-footer{background:var(--sea);color:var(--on-sea-3);padding:40px 0 44px;font-size:14px}.site-footer .cols{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:20px 28px;margin-bottom:28px;display:grid}.site-footer h3{font-family:var(--text);text-transform:uppercase;letter-spacing:.06em;color:var(--on-sea);margin:0 0 8px;font-size:13px;font-weight:700}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{padding:3px 0}.site-footer a{color:var(--on-sea-2);text-decoration:none}.site-footer a:hover{color:var(--on-sea);text-decoration:underline}.site-footer .brand{font-family:var(--display);color:var(--on-sea);font-size:20px;font-weight:800}.site-footer p{margin:0 0 8px}.site-footer p a{text-decoration:underline}.badge{background:var(--tint);color:var(--ink);white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;line-height:1.4;display:inline-block}.badge.good{color:#145c36;background:#dcefe3}.badge.warn{background:var(--coral-soft);color:var(--coral-ink)}.badge.bad{background:var(--coral);color:var(--coral-ink)}.badge.frost{background:var(--blue-3);color:var(--ink)}.badge.freeze{background:var(--blue-1);color:#fff}.band .badge{vertical-align:middle}.nights{grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:10px;display:grid}.night{background:var(--tint);border-radius:16px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.night .when{color:var(--ink-2);font-size:13px;font-weight:600}.night .low{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:30px;font-weight:700}.night .what{color:var(--muted);font-size:12px}.night.frost{background:#d7eef3}.night.freeze{background:var(--blue-1);color:#fff}.night.freeze .when,.night.freeze .what{color:#d9eef3}main>h2{margin-bottom:-14px}.card .table-wrap{box-shadow:none;border:1px solid var(--line);border-radius:12px;margin-top:16px}@media (width<=640px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi{padding:16px}.kpi .value{font-size:24px}.kpi .value.sm{font-size:18px}.band.has-hero .hero{padding-bottom:112px}}
