:root {
  --ink:#123b45;--ink-soft:#4f6f73;--sea-950:#082e38;--sea-900:#0b3d49;--sea-800:#115865;--sea-700:#1b7180;--sea-500:#4f9d9b;--sea-200:#cce4dc;--foam:#f8faf5;--paper:#f4f4ee;--paper-deep:#e8ede7;--sand:#d5b374;--line:#d9e0d9;--coral:#c77b70;
  --display:ui-serif,"Iowan Old Style","Baskerville",Georgia,serif;--sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{min-width:320px;margin:0;background:radial-gradient(circle at 100% 15%,#e3eee7 0,transparent 26rem),var(--paper);color:var(--ink);font:15px/1.48 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit}button:disabled{cursor:not-allowed;opacity:.52}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #53a4ad;outline-offset:3px}

.site-header{position:sticky;top:0;z-index:30;color:#f5faf7;background:color-mix(in srgb,var(--sea-950) 94%,transparent);box-shadow:0 1px 0 #b0ded51c;backdrop-filter:blur(16px)}.header-inner{width:min(1160px,calc(100% - 56px));height:68px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;gap:9px;color:#fbfcf8;text-decoration:none;font:600 23px/.9 var(--display);letter-spacing:-1.2px}.brand>span span,.footer-brand span{color:#a9d6cc}.brand-mark{width:31px;color:#a7d8cd}.header-actions{display:flex;align-items:center;gap:17px}.region{color:#b7d0cc;font-size:10px;font-weight:700;letter-spacing:.05em}.mode-toggle{display:inline-flex;align-items:center;min-height:38px;gap:8px;padding:8px 12px;border:1px solid #83aaa9;border-radius:999px;background:#0d4652;color:#f5faf7;font-size:11px;font-weight:760;transition:background .22s ease,border-color .22s ease,transform .22s ease}.mode-toggle:hover{border-color:#b4d9d0;transform:translateY(-1px)}.mode-dot{width:6px;height:6px;border-radius:50%;background:#ddb87b;box-shadow:0 0 0 3px #ddb87b22}.mode-toggle.live .mode-dot{background:#86d6b6;box-shadow:0 0 0 3px #86d6b622}
.data-ribbon{position:sticky;top:68px;z-index:29;display:flex;min-height:34px;align-items:center;justify-content:center;padding:7px 24px;border-bottom:1px solid #ccdad3;background:#e5f0ea;color:#356363;text-align:center;font-size:10px;font-weight:750;letter-spacing:.015em}.data-ribbon.demo{border-color:#e4cfaa;background:#f8edd8;color:#755830}

.page{width:min(1160px,calc(100% - 56px));margin:auto}.eyebrow{margin:0 0 8px;color:#56827e;font-size:9px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.eyebrow.light{color:#bde0d8}.planning-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;padding:42px 0 25px}.planning-intro h1{max-width:630px;margin:0;font:500 clamp(38px,4.3vw,59px)/.94 var(--display);letter-spacing:-.058em}.planning-intro h1 em{color:var(--sea-700);font-style:italic}.intro-note{display:grid;grid-template-columns:18px 1fr;column-gap:9px;width:228px;padding:0 0 4px;color:var(--ink-soft)}.intro-note-mark{grid-row:span 2;color:var(--sea-500);font:700 25px/.75 var(--display)}.intro-note p{margin:0;font-size:12px;font-weight:650;line-height:1.35}.intro-note small{margin-top:5px;color:#738887;font-size:10px;font-weight:650}

.activity-section{padding:0 0 26px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:17px}.section-heading.compact{margin-bottom:12px}.section-heading h2,.safety-section h2{margin:0;font:500 clamp(26px,3vw,37px)/1 var(--display);letter-spacing:-.045em}.activity-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:6px;border:1px solid var(--line);border-radius:18px;background:#e5ebe5;box-shadow:inset 0 1px #ffffff9c}.activity-tab{display:flex;min-height:67px;align-items:center;justify-content:center;gap:10px;padding:10px 14px;border:1px solid transparent;border-radius:13px;background:transparent;color:#557477;font-size:13px;font-weight:760;transition:color .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease}.activity-glyph{display:grid;width:32px;height:32px;place-items:center;border:1px solid #bfd0ca;border-radius:50%;background:#f8faf6;color:var(--sea-700);transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease}.activity-glyph svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}.activity-tab:hover:not(.active){color:var(--sea-800);transform:translateY(-1px)}.activity-tab.active{border-color:#9cc8be;background:#fffefa;color:#124e59;box-shadow:0 7px 14px #234d4c12,0 1px 0 #fff}.activity-tab.active .activity-glyph{border-color:#1d7380;background:var(--sea-800);color:#e7f5ee;transform:rotate(-4deg)}

.recommendation{position:relative;isolation:isolate;overflow:hidden;padding:28px 30px 25px;border:1px solid #286974;border-radius:24px;background:radial-gradient(circle at 82% 24%,#29808c 0,transparent 21rem),linear-gradient(130deg,var(--sea-950) 0%,var(--sea-900) 64%,#0c4854 100%);color:#f8faf6;box-shadow:0 23px 46px #113a431d,0 5px 12px #113a4316}.recommendation::before{position:absolute;z-index:-1;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#91d0bd,#d9ca8b 58%,#91d0bd);content:""}.recommendation-orb{position:absolute;z-index:-1;top:-112px;right:14%;width:275px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 34% 35%,#d4dbac75,#8dd2c13b 42%,transparent 68%);filter:blur(2px);opacity:.72}.recommendation-wave{position:absolute;z-index:-1;inset:0;overflow:hidden;opacity:.78;pointer-events:none}.recommendation-wave svg{position:absolute;right:-5%;bottom:-1px;width:85%;height:55%}.recommendation-wave path{fill:#1b6c76}.recommendation-wave path+path{fill:#0d4d5a}.recommendation-top,.recommendation-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:14px}.tier{padding:5px 10px;border:1px solid #a6cbc35a;border-radius:999px;background:#0b344044;font-size:10px;font-weight:840;letter-spacing:.035em}.tier-promising{color:#d8f0d9;border-color:#b3d7b177}.tier-mixed{color:#fae0ae;border-color:#e0bd8180}.tier-unfavorable{color:#f4cbc5;border-color:#d79b9180}.tier-unavailable{color:#d3e0de;border-color:#9db6b880}.recommendation-content{position:relative;z-index:1;max-width:650px;padding:29px 0 21px}.activity-kicker{margin:0 0 5px;color:#bde1d6;font-size:12px;font-weight:760}.recommendation h2{margin:0;font:500 clamp(39px,5.2vw,65px)/.9 var(--display);letter-spacing:-.06em}.recommendation h2 span,.recommendation h2 strong{display:block}.recommendation h2 span{color:#bddbd3;font-size:.58em;font-style:italic;font-weight:400;letter-spacing:-.035em}.recommendation h2 strong{margin-top:7px;font-weight:500}.window-location{margin:13px 0 0;color:#e1f0e9;font-size:15px;font-weight:700}.window-reasons{max-width:470px;margin-top:14px;color:#c6dad6;font-size:12px;line-height:1.45}.window-reasons p{margin:0}.window-reasons ul{display:flex;flex-wrap:wrap;gap:5px 16px;margin:8px 0 0;padding:0;list-style:none}.window-reasons li::before{margin-right:6px;color:#8fcebd;content:"•"}.recommendation-actions{position:relative;z-index:1;display:flex;gap:9px;margin:0 0 17px}.primary-action,.quiet-action{display:inline-flex;min-height:43px;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border-radius:11px;font-size:11px;font-weight:820;transition:transform .2s ease,background .2s ease,box-shadow .2s ease,color .2s ease}.primary-action{border:1px solid #f9f3de;background:#faf7e9;color:#164b54;box-shadow:0 4px 12px #001d2726}.primary-action:hover{background:#daf0e4;transform:translateY(-1px)}.quiet-action{border:1px solid #bad7d055;background:#06313c38;color:#edf8f2}.quiet-action:hover{border-color:#b9e4d9;background:#164f59aa;transform:translateY(-1px)}.recommendation-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid #94b8af4b;border-radius:14px;background:#092f3c62;backdrop-filter:blur(5px)}.hero-metric{min-height:77px;padding:13px 14px;border-right:1px solid #94b8af4b}.hero-metric:last-child{border-right:0}.metric-label{display:block;color:#9fc6c0;font-size:8px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.hero-metric strong{display:block;margin-top:5px;color:#fafcf7;font:500 23px/.94 var(--display);letter-spacing:-.035em}.hero-metric small{display:block;margin-top:5px;color:#a9c5c0;font-size:9px;line-height:1.2}.experimental-score{position:relative;z-index:1;margin:13px 0 0;color:#b3cbc7;font-size:10px;font-weight:620}

.outlook-section{padding:55px 0 61px}.text-action{padding:5px 0;border:0;border-bottom:1px solid #8ea9a3;background:transparent;color:#245f65;font-size:11px;font-weight:800}.load-state:empty{display:none}.load-state{margin:0 0 13px}.data-warning,.error-state{display:block;padding:12px 14px;border-left:3px solid #b99354;border-radius:4px;background:#fbf2e3;color:#725630;font-size:12px}.error-state{border-color:#af625b;background:#f9e7e4;color:#7d3d38}.data-warning button,.error-state button{margin-left:4px;padding:0;border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;font-weight:800}.day-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.day-tab{min-height:83px;padding:10px 7px;border:1px solid var(--line);border-radius:12px;background:#fbfcf8;color:#5b7475;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}.day-tab:hover:not(.active){border-color:#8fb9af;transform:translateY(-2px);box-shadow:0 7px 13px #16464b0b}.day-tab.active{border-color:var(--sea-800);background:linear-gradient(145deg,#1b6f78,#15525f);color:#fff;box-shadow:0 10px 19px #16464b23}.day-tab span{display:block;font-size:8px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.day-tab strong{display:block;margin:4px 0 2px;font:500 28px/.95 var(--display);letter-spacing:-.04em}.day-tab small{font-size:10px;font-weight:650}.forecast-detail{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:15px}.conditions-card,.timeline-card{padding:25px;border:1px solid var(--line);border-radius:18px;background:#fffefa;box-shadow:0 10px 21px #16464b08}.conditions-head,.timeline-head{display:flex;align-items:start;justify-content:space-between;gap:10px}.conditions-card h3,.timeline-card h3{margin:0;font:500 27px/1 var(--display);letter-spacing:-.04em}.day-name,.timeline-head>span{color:#658080;font-size:10px;font-weight:720;white-space:nowrap}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;overflow:hidden;margin-top:21px;border:1px solid #e0e7e1;border-radius:12px;background:#e0e7e1}.metric{min-height:93px;padding:14px;background:#f8faf5}.metric-value{margin:6px 0 3px;font:500 26px/1 var(--display);letter-spacing:-.04em}.metric-sub{color:#6c8383;font-size:10px;line-height:1.3}.conditions-foot,.timeline-card>p{margin:16px 0 0;color:#637a7a;font-size:11px;line-height:1.45}.hourly-chart{display:flex;align-items:end;gap:4px;height:147px;margin-top:20px}.hour-col{display:flex;min-width:0;height:100%;flex:1;flex-direction:column;align-items:center;justify-content:end;gap:6px;color:#708687;font-size:9px}.hour-bar-track{display:flex;width:100%;height:114px;align-items:end;overflow:hidden;border-radius:4px 4px 1px 1px;background:#edf1eb}.hour-bar{width:100%;min-height:3px;background:#9eb8b1;transition:height .4s cubic-bezier(.2,.8,.2,1)}.hour-bar.promising{background:#4d9990}.hour-bar.mixed{background:#c3a96e}.hour-bar.unfavorable{background:#bf8179}.hour-bar.unavailable{background:#d8ded8}

.places-section{padding:2px 0 65px}.spot-count{color:#668483;font-size:10px;font-weight:780}.spot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.spot-card{display:flex;min-height:214px;flex-direction:column;justify-content:space-between;padding:19px;border:1px solid var(--line);border-radius:16px;background:#fffefa;color:var(--ink);text-align:left;box-shadow:0 8px 17px #16464b08;transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}.spot-card:hover{border-color:#70a49b;transform:translateY(-3px);box-shadow:0 14px 24px #16464b12}.spot-card.selected{border-color:#318088;background:linear-gradient(145deg,#f0f7f1,#fbfcf7);box-shadow:inset 0 3px var(--sea-700),0 12px 22px #16464b0e}.spot-card-top{display:flex;justify-content:space-between;gap:10px;color:#5f7d7c;font-size:9px;font-weight:820;letter-spacing:.09em}.spot-card h3{margin:14px 0 3px;font:500 26px/.96 var(--display);letter-spacing:-.045em}.spot-card-type{color:#617b7b;font-size:10px;font-weight:560}.spot-card-bottom{display:grid;gap:4px;margin-top:19px;padding-top:11px;border-top:1px solid #dce5dd}.spot-card-bottom>span:first-child{color:#728786;font-size:8px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.spot-card-bottom strong{font:500 18px/1.05 var(--display)}.spot-tier{font-size:10px;font-weight:780}.spot-tier.promising{color:#32776d}.spot-tier.mixed{color:#9b7132}.spot-tier.unfavorable{color:#a3534b}.spot-tier.unavailable{color:#748786}

.safety-section{display:flex;gap:16px;margin-bottom:64px;padding:27px;border:1px solid #e3d4ae;border-top:3px solid var(--sand);border-radius:18px;background:linear-gradient(130deg,#f1efe3,#faf8ed)}.safety-section>svg{width:25px;height:25px;flex:0 0 25px;fill:none;stroke:#98703f;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.safety-section h2{font-size:28px}.safety-section>div>p:not(.eyebrow){max-width:870px;margin:10px 0 0;color:#556e6c;font-size:13px}.safety-links{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:16px}.safety-links a,.dialog-links a{color:#17636a;border-bottom:1px solid #82aaa4;font-size:11px;font-weight:800;text-decoration:none}.site-footer{background:var(--sea-950);color:#b6ceca}.footer-inner{width:min(1160px,calc(100% - 56px));margin:auto;padding:33px 0 35px}.footer-brand{display:block;color:#fff;font:500 26px/1 var(--display);letter-spacing:-.04em}.footer-inner p{margin:8px 0 0;font-size:10px}.footer-inner p:last-child{color:#8facaa}

dialog{position:fixed;width:min(580px,calc(100% - 32px));max-height:min(80vh,700px);padding:34px;border:0;border-radius:23px;background:#fffefa;color:var(--ink);box-shadow:0 25px 80px #061f2a91;overflow:auto}dialog::backdrop{background:#072d38a8;backdrop-filter:blur(5px)}.sheet-handle{display:none}.dialog-close{position:absolute;top:14px;right:14px;display:grid;width:38px;height:38px;place-items:center;border:1px solid #d7e1da;border-radius:50%;background:#f5f7f2;color:#456769;font-size:25px;line-height:1;transition:background .2s ease,transform .2s ease}.dialog-close:hover{background:#e6f0e9;transform:rotate(4deg)}.spot-dialog h2,.method-dialog h2{max-width:420px;margin:0 0 12px;font:500 37px/.98 var(--display);letter-spacing:-.05em}.spot-dialog>p:not(.eyebrow),.method-dialog>p{color:#587172;font-size:13px;line-height:1.6}.detail-list{margin:22px 0 18px;border-top:1px solid var(--line)}.detail-list>div{display:grid;grid-template-columns:107px 1fr;gap:13px;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}.detail-list span{color:#6c8584;font-size:9px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.detail-list strong{font-weight:650;line-height:1.42}.dialog-links{display:flex;flex-wrap:wrap;gap:12px 18px}.dialog-caution{margin-top:22px!important;padding-top:17px;border-top:1px solid var(--line);font-size:11px!important}.method-list{margin:21px 0;padding:7px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.method-list p{margin:12px 0}.method-list strong{color:#1b555c}

@media (prefers-reduced-motion:no-preference){.recommendation{animation:rise-in .54s cubic-bezier(.2,.8,.2,1) both}.recommendation-orb{animation:tide-drift 12s ease-in-out infinite alternate}.hero-metric{animation:expose .38s ease both}.hero-metric:nth-child(2){animation-delay:.04s}.hero-metric:nth-child(3){animation-delay:.08s}.hero-metric:nth-child(4){animation-delay:.12s}@keyframes rise-in{from{opacity:0;transform:translateY(11px)}to{opacity:1;transform:translateY(0)}}@keyframes tide-drift{from{transform:translate3d(-9px,8px,0) scale(.98)}to{transform:translate3d(14px,-10px,0) scale(1.05)}}@keyframes expose{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}

@media(max-width:720px){body{background:radial-gradient(circle at 100% 10%,#e3eee7 0,transparent 18rem),var(--paper)}.header-inner{width:calc(100% - 32px);height:60px}.brand{font-size:21px}.brand-mark{width:28px}.region{display:none}.mode-toggle{min-height:35px;padding:7px 10px;font-size:10px}.data-ribbon{top:60px;min-height:31px;padding:6px 16px;font-size:9px;line-height:1.25}.page{width:calc(100% - 32px)}.planning-intro{display:block;padding:23px 0 18px}.planning-intro h1{font-size:38px;letter-spacing:-.06em}.intro-note{width:auto;grid-template-columns:14px 1fr;margin-top:11px}.intro-note-mark{font-size:20px}.intro-note p{font-size:11px}.intro-note small{font-size:9px}.section-heading h2{font-size:27px}.activity-section{padding-bottom:19px}.activity-tabs{gap:4px;padding:4px;border-radius:15px}.activity-tab{min-height:65px;flex-direction:column;gap:3px;padding:7px 5px;border-radius:11px;font-size:10px}.activity-glyph{width:29px;height:29px}.activity-glyph svg{width:20px;height:20px}.recommendation{padding:21px 17px 17px;border-radius:20px}.recommendation-orb{top:-88px;right:-58px;width:225px}.recommendation-wave svg{right:-23%;width:123%;height:42%}.recommendation-content{padding:23px 0 17px}.recommendation h2{font-size:44px}.recommendation h2 strong{margin-top:6px}.activity-kicker{font-size:11px}.window-location{margin-top:12px;font-size:13px}.window-reasons{margin-top:11px;font-size:11px}.window-reasons ul{gap:4px 11px;margin-top:6px}.recommendation-actions{margin-bottom:12px}.recommendation-actions button{min-height:42px;flex:1;padding:9px 8px}.recommendation-metrics{grid-template-columns:repeat(2,1fr)}.hero-metric{min-height:67px;padding:11px 12px;border-bottom:1px solid #94b8af4b}.hero-metric:nth-child(2){border-right:0}.hero-metric:nth-child(3),.hero-metric:nth-child(4){border-bottom:0}.hero-metric strong{font-size:21px}.experimental-score{margin-top:11px}.outlook-section{padding:43px 0 49px}.text-action{font-size:10px}.day-tabs{display:flex;overflow:auto;margin-right:-16px;padding-right:16px;scrollbar-width:none}.day-tabs::-webkit-scrollbar{display:none}.day-tab{min-width:66px;flex:1}.forecast-detail{grid-template-columns:1fr;gap:10px;margin-top:12px}.conditions-card,.timeline-card{padding:20px;border-radius:15px}.conditions-card h3,.timeline-card h3{font-size:25px}.metric{min-height:86px;padding:12px}.metric-value{font-size:24px}.hourly-chart{height:131px;margin-top:17px}.hour-bar-track{height:100px}.places-section{padding-bottom:50px}.spot-grid{grid-template-columns:1fr 1fr;gap:9px}.spot-card{min-height:195px;padding:14px;border-radius:13px}.spot-card h3{margin-top:12px;font-size:22px}.spot-card-top{font-size:8px}.spot-card-type{font-size:9px}.spot-card-bottom{margin-top:14px}.spot-card-bottom strong{font-size:16px}.safety-section{gap:13px;margin:0 0 49px;padding:21px 18px;border-radius:15px}.safety-section h2{font-size:25px}.safety-section>div>p:not(.eyebrow){font-size:12px}.safety-links{gap:11px 15px}.footer-inner{width:calc(100% - 32px);padding:27px 0 29px}dialog{bottom:0;width:100%;max-width:none;max-height:86vh;margin:0;padding:30px 20px calc(26px + env(safe-area-inset-bottom));border-radius:23px 23px 0 0;border-top:2px solid #99c4ba}.sheet-handle{display:block;width:34px;height:4px;margin:-17px auto 20px;border-radius:99px;background:#b8c9c2}.dialog-close{top:13px;right:15px}.spot-dialog h2,.method-dialog h2{font-size:32px}.detail-list>div{grid-template-columns:84px 1fr;gap:11px;font-size:11px}}
@media(max-width:350px){.mode-toggle{padding:7px 8px;font-size:9px}.planning-intro h1{font-size:35px}.recommendation h2{font-size:40px}.activity-tab{font-size:9px}.day-tab{min-width:61px}.spot-card h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
