:root{--blue:#1479ff;--text:#102033;--muted:#64748b;--line:#cdd6e2;--panel:#fff;--bg:#e8eef3;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{color:var(--text);background:var(--bg);margin:0;line-height:1.5}a{color:var(--blue)}a:hover{text-decoration:none}h1,h2,h3{letter-spacing:-.02em;line-height:1.2}.page{max-width:960px;margin:0 auto;padding:1.25rem 1rem 3rem}.site-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.site-nav a{color:var(--text);font-weight:600;text-decoration:none}.site-nav a:hover{color:var(--blue)}.cta-row{margin:0 0 1.5rem}.cta{background:var(--panel);color:var(--blue);border:1px solid #1479ff4d;border-radius:10px;padding:.7rem 1.1rem;font-weight:600;text-decoration:none;display:inline-block}.cta:hover{border-color:var(--blue)}.brand{color:var(--text);align-items:center;gap:.6rem;font-size:1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.drop{border:3px solid var(--blue);border-radius:60% 60% 60% 0;flex-shrink:0;width:18px;height:18px;transform:rotate(-45deg)}.intro{color:var(--muted);margin:0 0 1.25rem;font-size:1.05rem}.live-answer{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin:0 0 1.5rem;padding:1rem 1.1rem}.live-answer h2{color:var(--muted);margin:0 0 .5rem;font-size:1rem;font-weight:600}.live-answer p{margin:0;font-size:1.1rem}.live-answer .meta{color:#8090a4;margin-top:.6rem;font-size:.85rem}.section{margin:2rem 0}.section h2{margin:0 0 .75rem;font-size:1.15rem}.quick-links ul{margin:0;padding-left:1.2rem}.quick-links li{margin:.35rem 0}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:2.5rem;padding-top:1rem;font-size:.9rem}.site-footer a{margin-right:1rem}.map-section{margin:1.5rem 0 2rem}.map-shell{border:1px solid var(--line);background:#d8e0e8;border-radius:14px;height:min(70vh,560px);min-height:360px;position:relative;overflow:hidden}.map-shell--full{border:none;border-radius:0;height:100dvh;min-height:600px}@media (width<=800px){.map-shell:not(.map-shell--full){height:50dvh;min-height:280px}.map-shell--full{min-height:0}}.faq dt{margin-top:1rem;font-weight:600}.faq dd{color:var(--muted);margin:.25rem 0 0}.city-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.city-grid a{background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:.6rem .75rem;text-decoration:none;display:block}.city-grid a:hover{border-color:var(--blue)}.waitlist-form{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.waitlist-form input{border:1px solid var(--line);font:inherit;border-radius:8px;flex:220px;padding:.65rem .75rem}.waitlist-form button{color:var(--blue);cursor:pointer;background:#fff;border:1px solid #1479ff4d;border-radius:8px;padding:.65rem 1rem;font-weight:600}.prose p{color:var(--muted)}.body-map{overflow:hidden}.map-section--bleed{margin:0}.map-app{width:100%;height:100%;min-height:inherit;--map-bottom-offset:16px;--map-rainchart-height:135px;--map-controls-chart-gap:8px;--map-ui-bottom:calc(var(--map-bottom-offset) + var(--map-rainchart-height) + var(--map-controls-chart-gap));position:relative}.map-app #map{z-index:0;position:absolute;inset:0}.map-app .map-controls-r{z-index:1000;right:12px;bottom:var(--map-ui-bottom);flex-direction:column;align-items:stretch;gap:6px;display:flex;position:absolute}.map-app .map-controls-r .map-zoom-host{margin:0;position:static}.map-app .map-controls-r #loc{border:1px solid var(--line);cursor:pointer;background:#fffffff2;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:flex;box-shadow:0 2px 12px #00000014}.map-app #play{border:1px solid var(--line);cursor:pointer;width:34px;height:34px;color:var(--text);background:#fffffff2;border-radius:10px;justify-content:center;align-items:center;padding:0;display:flex;box-shadow:0 2px 12px #00000014}.map-app #play .play-icon--play,.map-app #play[data-state=paused] .play-icon--pause{display:none}.map-app #play[data-state=paused] .play-icon--play{display:block}.map-app .map-controls-r #loc .drop{border-width:2px;width:14px;height:14px}.map-app .leaflet-control-zoom{overflow:hidden;border:1px solid var(--line)!important;border-radius:10px!important;box-shadow:0 2px 12px #00000014!important}.map-app .leaflet-control-zoom a{width:34px!important;height:34px!important;line-height:34px!important}.map-app .map-bottom{z-index:1000;left:50%;bottom:var(--map-bottom-offset);pointer-events:none;flex-direction:column;gap:4px;width:min(720px,100vw - 32px);display:flex;position:absolute;transform:translate(-50%)}.map-app .map-bottom>*{pointer-events:auto}.map-app .map-attribution-host .leaflet-control-attribution{text-overflow:ellipsis;text-align:left;width:100%;max-width:none;color:var(--muted);text-shadow:0 1px 2px #ffffffe6;overflow:hidden;box-shadow:none!important;white-space:nowrap!important;background:0 0!important;border:none!important;margin:0!important;padding:0!important;font-size:10px!important;line-height:1.4!important;position:static!important}.map-app .map-attribution-host .leaflet-control-attribution a{color:inherit;text-decoration:none}.map-app .map-attribution-host .leaflet-control-attribution a:hover{text-decoration:underline}.map-app .topbar{z-index:1000;border:1px solid var(--line);background:#fffffff2;border-radius:14px;flex-direction:row;align-items:center;gap:12px;padding:12px 14px;display:flex;position:absolute;top:14px;left:16px;right:16px;box-shadow:0 2px 12px #00000014}.map-app .search-wrap{flex:1;min-width:0}.map-app .brand{letter-spacing:-.02em;white-space:nowrap;color:var(--text);flex-shrink:0;align-items:center;gap:10px;font-size:18px;font-weight:700;text-decoration:none;display:inline-flex}.map-app .brand .drop{border:3px solid var(--blue);border-radius:60% 60% 60% 0;flex-shrink:0;width:18px;height:18px;transform:rotate(-45deg)}.map-app #q{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;min-width:0;padding:10px 14px;font-size:15px}.map-app .map-pin{border:3px solid var(--blue);background:#fff;border-radius:60% 60% 60% 0;width:22px;height:22px;margin:0 auto;display:block;transform:rotate(-45deg);box-shadow:0 2px 6px #1020332e}.map-app .forecast-dock,.map-app .timeline{border:1px solid var(--line);background:#fffffff2;box-shadow:0 2px 12px #00000014}.map-app .forecast-dock{border-radius:10px;padding:8px 12px}.map-app .timeline{border-radius:12px;padding:8px 12px 10px}.map-app .forecast-chart{cursor:pointer;touch-action:none;height:117px;padding-top:42px;position:relative}.map-app .forecast-chart .fc-area{width:100%;height:81px;display:block}.map-app .fc-now-label{font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;flex-direction:column;align-items:center;gap:2px;font-size:13px;font-weight:600;line-height:1.15;transition:left 50ms linear,color .15s;display:flex;position:absolute;top:0;transform:translate(-50%)}.map-app char-flow.fc-now-time{--cf-spin-duration:.28s;--cf-slide-duration:.2s;color:inherit}.map-app .fc-now-intensity[hidden],.map-app .fc-now-label[hidden]{display:none}.map-app .fc-now-label--start{transform:translate(0)}.map-app .fc-now-label--end{transform:translate(-100%)}.map-app .fc-area .fc-now{opacity:.95;transition:stroke .15s}.map-app--compact{--map-rainchart-height:133px}@media (width<=800px){.body-map{overflow:hidden}.map-app{--map-bottom-offset:max(8px, env(safe-area-inset-bottom));--map-rainchart-height:133px;--map-controls-chart-gap:8px}.map-app .map-controls-r{right:8px}.map-app .map-bottom{width:auto;left:8px;right:8px;transform:none}.map-app .map-attribution-host .leaflet-control-attribution{font-size:9px!important}.map-app .topbar{top:max(8px, env(safe-area-inset-top));border-radius:12px;gap:8px;padding:10px 12px;left:8px;right:8px}.map-app .brand{font-size:17px}.map-app #q{border-radius:10px;padding:10px 12px;font-size:16px}.map-app .forecast-dock,.map-app .timeline{left:8px;right:8px;bottom:max(8px, env(safe-area-inset-bottom));border-radius:12px;width:auto;padding:8px 10px;transform:none}.map-app--compact{--map-rainchart-height:133px}}
