.month-hero{position:relative;width:min(1320px,calc(100% - 32px));height:520px;margin:0 auto;overflow:hidden;border-radius:0 0 18px 18px;background:#edf2f6}.month-hero__image,.month-hero__fallback,.month-hero__overlay{position:absolute;inset:0;width:100%;height:100%}.month-hero__image{left:auto;width:84%;object-fit:cover;object-position:left center}.month-hero__fallback{background:linear-gradient(125deg,#fff9f5,#dbe8f3)}.month-hero__overlay{background:linear-gradient(90deg,rgba(255,252,249,.99) 0%,rgba(255,250,247,.97) 35%,rgba(250,249,246,.72) 53%,rgba(238,244,250,.08) 79%)}.month-hero__inner{position:relative;z-index:1;width:min(1200px,calc(100% - 64px));height:100%;margin:auto;padding:28px 0;color:var(--ink)}.month-hero nav{display:flex;gap:9px;align-items:center;font-size:12px;color:#6d7888}.month-hero nav a{color:inherit;text-decoration:none}.month-hero nav strong{color:var(--ink)}.month-hero__copy{position:absolute;top:53%;left:0;width:610px;transform:translateY(-50%)}.month-eyebrow{display:block;color:#1760d2;font-size:10px;font-weight:700;letter-spacing:.14em}.month-hero .month-eyebrow{color:var(--blue)}.month-hero h1{margin:13px 0 17px;font:500 55px/.98 Georgia,serif;letter-spacing:-2.4px}.month-hero__copy>p{max-width:560px;margin:0;color:#3f4c5f;font-size:16px;line-height:1.6}
.month-snapshot{width:525px;min-height:78px;display:flex;align-items:center;margin-top:25px;padding:12px 14px;border:1px solid #fff;border-radius:13px;background:#fffffff2;box-shadow:0 14px 38px #1c2d4618;color:var(--ink);backdrop-filter:blur(12px)}.month-snapshot>div{min-width:190px;display:flex;align-items:center;gap:12px;padding:0 21px 0 4px}.month-snapshot>div+div{border-left:1px solid #dfe6ef;padding-left:24px}.snapshot-icon{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:50%;background:#edf4ff;color:var(--blue)}.snapshot-icon--sun{background:#fff3dc;color:#ee9b14;font-size:23px}.snapshot-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}.month-snapshot p{margin:0}.month-snapshot strong,.month-snapshot small{display:block}.month-snapshot strong{font:500 20px/1.1 Georgia,serif}.month-snapshot small{margin-top:4px;color:#748196;font-size:10px}.month-snapshot>a,.heading-link,.itinerary-feature__copy>a{display:inline-flex;align-items:center;gap:9px;color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.month-snapshot>a{width:38px;height:38px;justify-content:center;margin-left:auto;border:1px solid #dbe5f0;border-radius:50%;background:#fff}.month-snapshot svg,.heading-link svg,.itinerary-feature__copy>a svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.month-tabs{position:sticky;top:0;z-index:10;border-bottom:1px solid #e3e9f0;background:#fffffff5;backdrop-filter:blur(12px)}.month-tabs>div{width:min(1200px,calc(100% - 48px));height:66px;margin:auto;display:flex;align-items:center;justify-content:center;gap:54px}.month-tabs a{height:66px;display:flex;align-items:center;gap:8px;border-bottom:2px solid transparent;color:#69778b;font-size:13px;text-decoration:none}.month-tabs a svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.month-tabs a:first-child{border-color:var(--blue);color:var(--ink);font-weight:700}.month-content{width:min(1200px,calc(100% - 48px));margin:auto}.month-section-heading{margin-bottom:28px}.month-section-heading h2{margin:10px 0 0;font-size:40px;letter-spacing:-.8px}.month-section-heading p{margin:10px 0 0;color:#6b788a}
.visit-overview{padding:78px 0 72px}.visit-overview__grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;border:1px solid #dfe6ee;border-radius:17px;overflow:hidden;background:#fff;box-shadow:0 10px 34px #10233d0f}.visit-overview__grid article{min-height:230px;padding:33px}.visit-overview__grid article+article{border-left:1px solid #e3e9f0}.visit-verdict{background:linear-gradient(135deg,#f2f7ff,#fff)}.verdict-pill{display:inline-flex;padding:7px 11px;border-radius:999px;background:#e4f5ed;color:#16734f;font-size:11px;font-weight:700}.visit-verdict p{margin:24px 0 0;color:#415069;font:500 16px/1.55 Georgia,serif}.decision-list h3{display:flex;align-items:center;gap:10px;margin:2px 0 23px;font-size:19px}.decision-list h3 span{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#e6f6ef;color:#1c8058;font:700 12px 'Source Sans 3',sans-serif}.decision-list--consider h3 span{background:#fff0e8;color:#c56632}.decision-list ul{list-style:none;margin:0;padding:0}.decision-list li{position:relative;margin:13px 0;padding-left:18px;color:#5d6a7d;font-size:16px;line-height:1.5}.decision-list li:before{content:"";position:absolute;left:0;top:.65em;width:5px;height:5px;border-radius:50%;background:#88a4c5}
.climate-section{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:38px 50px;align-items:center;margin:0 calc((1200px - 100vw)/2);padding:68px max(24px,calc((100vw - 1200px)/2)) 62px;background:linear-gradient(130deg,#edf5ff 0%,#f8fbff 58%,#fff8f0 100%)}.climate-intro{min-width:0;padding-right:0}.climate-intro h2{max-width:none;margin:10px 0 18px;font-size:39px;line-height:1.12;letter-spacing:-.9px}.climate-intro p{max-width:none;margin:0;color:#526177;font-size:15px;line-height:1.7}.climate-intro>small{display:block;margin-top:18px;color:#8190a3;font-size:10px}.climate-panel{width:400px;max-width:100%;justify-self:end;padding:24px 22px 19px;border:1px solid #d4e0ec;border-radius:16px;background:#ffffffd9;box-shadow:0 16px 42px #10233d0c}.climate-primary{display:grid;grid-template-columns:52px 1fr;grid-template-rows:auto auto;align-items:center}.climate-primary>span{grid-row:1/3;color:#f0a01c;font-size:41px}.climate-primary strong{font:500 36px/1 Georgia,serif}.climate-primary small{margin-top:6px;color:#738197;font-size:11px}.climate-panel dl{display:grid;grid-template-columns:repeat(3,1fr);margin:21px 0 0;padding:18px 0;border-top:1px solid #dfe6ee;border-bottom:1px solid #dfe6ee}.climate-panel dl div{padding:0 8px}.climate-panel dl div:first-child{padding-left:0}.climate-panel dl div+div{border-left:1px solid #e1e7ef}.climate-panel dt{color:#7a8798;font-size:9px}.climate-panel dd{margin:7px 0 0;font:600 15px Georgia,serif}.climate-source{display:block;margin-top:11px;color:#8491a2;font-size:9px}
.weekly-forecast{grid-column:1/-1;margin-top:0;padding:18px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none}.weekly-forecast__heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:19px}.weekly-forecast__heading h3{margin:6px 0 0;font-size:26px}.weekly-forecast__heading p{display:flex;align-items:center;gap:8px;margin:0;color:#758296;font-size:10px}.forecast-status-dot{width:7px;height:7px;border-radius:50%;background:#d7a846;box-shadow:0 0 0 4px #f8edd5}.weekly-forecast[data-weather-status="ready"] .forecast-status-dot{background:#2a9a70;box-shadow:0 0 0 4px #def2e9}.weekly-forecast[data-weather-status="error"] .forecast-status-dot{background:#c56a45;box-shadow:0 0 0 4px #f9e8df}.weekly-forecast__days{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:7px;overflow:visible;border:0;border-radius:0;background:transparent}.forecast-day{min-width:0;padding:13px 4px 11px;border:1px solid #dfe7ef;border-radius:10px;background:#ffffffc9;text-align:center;box-shadow:0 7px 20px #10233d07;transition:.18s}.forecast-day+ .forecast-day{border-left:1px solid #dfe7ef}.forecast-day:hover{transform:translateY(-2px);border-color:#c9d8e7;box-shadow:0 11px 25px #10233d10}.forecast-day--today{border-color:#bcd5ee;background:linear-gradient(180deg,#eaf4ff,#fff)}.forecast-day>strong,.forecast-day>small,.forecast-day>em{display:block}.forecast-day>strong{font-size:10px}.forecast-day>small{margin-top:3px;color:#8995a5;font-size:8px}.forecast-day__icon{width:34px;height:34px;display:grid;place-items:center;margin:8px auto 6px;color:#6686a8}.forecast-day__icon--sun{color:#eda019}.forecast-day__icon--partly{color:#829ab5}.forecast-day__icon svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.forecast-day__icon--partly svg circle{fill:#fff0c9;stroke:#eda019}.forecast-day p{display:flex;justify-content:center;align-items:baseline;gap:3px;margin:0}.forecast-day p b{font:600 15px Georgia,serif}.forecast-day p span{color:#8b97a7;font-size:9px}.forecast-day>em{height:21px;margin-top:5px;color:#7c899a;font-size:7px;font-style:normal;line-height:1.25}.weekly-forecast__note{display:flex;gap:16px;margin-top:12px;color:#8793a3;font-size:8px}.weekly-forecast__note span+span:before{content:"·";margin-right:16px}.forecast-placeholder{height:127px;border:1px solid #e1e8ef;border-radius:10px;background:linear-gradient(100deg,#f4f7fa 30%,#eef3f7 50%,#f4f7fa 70%);background-size:300% 100%;animation:forecast-loading 1.4s infinite}.forecast-placeholder+ .forecast-placeholder{border-left:1px solid #e1e8ef}.forecast-error{grid-column:1/-1;margin:0;padding:32px;border:1px dashed #cedae6;border-radius:12px;text-align:center;color:#718095;font-size:12px}@keyframes forecast-loading{0%{background-position:100% 0}100%{background-position:0 0}}
.month-events{padding:78px 0 76px}.month-section-heading--row{display:flex;align-items:end;justify-content:space-between}.month-section-heading--row p{font-size:14px}.month-event-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.month-event{display:block;overflow:hidden;border:1px solid #e1e7ef;border-radius:13px;background:#fff;color:inherit;text-decoration:none;transition:.18s}.month-event:hover{transform:translateY(-4px);box-shadow:0 15px 34px #10233d1c}.month-event__image{position:relative;height:190px;display:grid;place-items:center;overflow:hidden;background:#e9eff5;color:#9aacbf;font-size:38px}.month-event__image img{width:100%;height:100%;object-fit:cover;transition:.3s}.month-event:hover img{transform:scale(1.025)}.month-event time{position:absolute;left:12px;top:12px;padding:7px 10px;border-radius:7px;background:#fffffff5;box-shadow:0 5px 16px #10233d24;color:#18304f;font-size:11px;font-weight:700}.month-event__copy{padding:18px 18px 21px}.month-event__copy>span{color:var(--blue);font-size:9px;font-weight:700;letter-spacing:.09em}.month-event h3{min-height:44px;margin:8px 0 13px;font-size:17px;line-height:1.3}.month-event p{display:flex;align-items:center;gap:7px;margin:0;color:#748196;font-size:12px}.month-event p svg{width:15px;height:15px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7}.month-empty{padding:55px;border:1px dashed #d3deea;border-radius:15px;text-align:center}.month-empty>span{color:#8aa8cb;font-size:36px}.month-empty h3{margin:12px 0 7px;font-size:23px}.month-empty p{margin:0;color:#738197}
.itinerary-feature{min-height:350px;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;overflow:hidden;border-radius:20px;background:linear-gradient(120deg,#071a3a,#123762);color:#fff}.itinerary-feature__art{height:100%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,#ffffff1a,transparent 60%);border-right:1px solid #ffffff1f}.itinerary-feature__art span{font:500 126px/.8 Georgia,serif}.itinerary-feature__art small{margin-top:20px;color:#a9ccff;font-size:11px;font-weight:700;letter-spacing:.3em}.itinerary-feature__copy{max-width:620px;padding:50px 62px}.itinerary-feature__copy .month-eyebrow{color:#91bfff}.itinerary-feature h2{margin:11px 0 18px;font-size:40px;line-height:1.12}.itinerary-feature p{margin:0 0 27px;color:#ffffffbf;font-size:15px;line-height:1.7}.itinerary-feature__copy>a{color:#fff}.practical-section{padding:76px 0 10px}.practical-copy{max-width:820px;white-space:pre-line;color:#526177;font-size:16px;line-height:1.85}.site-footer{margin-top:82px}
@media(max-width:900px){.month-hero h1{font-size:58px}.visit-overview__grid{grid-template-columns:1fr 1fr}.visit-verdict{grid-column:1/-1}.visit-overview__grid .decision-list--good{border-left:0}.climate-section{grid-template-columns:1fr;gap:38px}.month-event-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.month-hero{height:680px}.month-hero__inner,.month-tabs>div,.month-content{width:calc(100% - 28px)}.month-hero__copy{top:42%;width:auto}.month-hero h1{font-size:47px;letter-spacing:-1.4px}.month-hero__copy>p{font-size:16px}.month-snapshot{display:grid;grid-template-columns:1fr 1fr;bottom:18px;padding:15px}.month-snapshot>div{min-width:0;padding:4px}.month-snapshot>a{grid-column:1/-1;margin:6px 0 0;padding:12px 5px;border-top:1px solid #e0e7ef}.month-tabs{overflow:auto}.month-tabs>div{gap:28px}.month-tabs a{white-space:nowrap}.visit-overview,.month-events{padding:58px 0}.month-section-heading h2,.climate-intro h2{font-size:33px}.visit-overview__grid{grid-template-columns:1fr}.visit-overview__grid article{min-height:0;padding:27px}.visit-verdict{grid-column:auto}.visit-overview__grid article+article{border-left:0;border-top:1px solid #e3e9f0}.climate-section{margin:0 calc((100vw - 100%)/-2);padding:58px 14px}.climate-panel{padding:26px 20px}.climate-panel dl{grid-template-columns:1fr}.climate-panel dl div{padding:14px 0}.climate-panel dl div+div{border-left:0;border-top:1px solid #e1e7ef}.month-section-heading--row{display:block}.heading-link{margin-top:20px}.month-event-grid{grid-template-columns:1fr}.month-event__image{height:235px}.itinerary-feature{grid-template-columns:1fr}.itinerary-feature__art{min-height:190px;border-right:0;border-bottom:1px solid #ffffff1f}.itinerary-feature__art span{font-size:85px}.itinerary-feature__copy{padding:36px 27px}.itinerary-feature h2{font-size:32px}.practical-section{padding-top:58px}}
@media(max-width:640px){.month-hero{width:calc(100% - 16px);height:auto;min-height:650px}.month-hero__image{width:100%;object-position:center}.month-hero__overlay{background:linear-gradient(90deg,rgba(255,252,249,.98),rgba(255,250,247,.88) 67%,rgba(238,244,250,.32))}.month-hero__inner{width:calc(100% - 40px);min-height:650px;padding:25px 0}.month-hero__copy{position:relative;top:auto;width:auto;margin-top:105px;transform:none}.month-hero h1{font-size:43px}.month-snapshot{width:100%;display:grid;grid-template-columns:1fr 1fr;margin-top:24px;padding:13px}.month-snapshot>div{min-width:0;padding:3px 8px}.month-snapshot>a{grid-column:1/-1;width:100%;height:39px;margin:11px 0 0;padding:0;border-top:1px solid #e0e7ef;border-radius:8px}.month-tabs>div{width:max-content;min-width:100%;justify-content:flex-start;padding:0 20px;gap:28px}}
@media(max-width:900px){.weekly-forecast{margin-top:0}.weekly-forecast__days{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:122px;overflow-x:auto;scroll-snap-type:x proximity}.forecast-day{scroll-snap-align:start}.weekly-forecast__days::-webkit-scrollbar{height:5px}.weekly-forecast__days::-webkit-scrollbar-thumb{border-radius:999px;background:#ccd8e5}}
@media(max-width:640px){.weekly-forecast{padding:23px 18px 17px}.weekly-forecast__heading{display:block}.weekly-forecast__heading p{margin-top:12px}.weekly-forecast__note{flex-wrap:wrap;gap:5px 12px}.weekly-forecast__note span+span:before{margin-right:12px}}
.heading-link svg,.itinerary-feature__copy>a svg{transition:transform .18s ease}.heading-link:hover svg,.itinerary-feature__copy>a:hover svg{transform:translateX(4px)}.month-event__copy>span{font-size:12px;letter-spacing:.04em}
.forecast-day{height:127px;padding:0;perspective:700px;cursor:pointer;outline:none}.forecast-day:focus-visible{box-shadow:0 0 0 3px #1760d233,0 7px 20px #10233d07}.forecast-day__inner{position:relative;width:100%;height:100%;transition:transform .48s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}.forecast-day.is-flipped .forecast-day__inner{transform:rotateY(180deg)}.forecast-day__face{position:absolute;inset:0;display:block;padding:13px 4px 11px;border-radius:9px;text-align:center;backface-visibility:hidden;-webkit-backface-visibility:hidden}.forecast-day__front>strong,.forecast-day__front>small,.forecast-day__front>em,.forecast-day__back>strong,.forecast-day__back>small{display:block}.forecast-day__front>strong,.forecast-day__back>strong{font-size:10px}.forecast-day__front>small,.forecast-day__back>small{margin-top:3px;color:#8995a5;font-size:8px}.forecast-day__front p{display:flex;justify-content:center;align-items:baseline;gap:3px;margin:0}.forecast-day__front p b{font:600 15px Georgia,serif}.forecast-day__front p span{color:#8b97a7;font-size:9px}.forecast-day__front>em{height:21px;margin-top:5px;color:#7c899a;font-size:7px;font-style:normal;line-height:1.25}.forecast-day__back{padding:10px 8px 8px;transform:rotateY(180deg);background:linear-gradient(145deg,#0d2b52,#1760a8);color:#fff}.forecast-day__back>small{color:#bcd2ed}.forecast-day__back dl{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:8px 0 5px}.forecast-day__back dl div{padding:4px 2px;border-radius:5px;background:#ffffff12}.forecast-day__back dt{color:#c7d9ed;font-size:6px;line-height:1.1}.forecast-day__back dd{margin:2px 0 0;font:600 11px Georgia,serif}.forecast-day__back dd small{font:400 5px 'Source Sans 3',sans-serif}.forecast-day__back>span{color:#aac6e5;font-size:6px}@media(hover:hover) and (pointer:fine){.forecast-day:hover .forecast-day__inner{transform:rotateY(180deg)}.forecast-day.is-flipped:hover .forecast-day__inner{transform:rotateY(0)}}@media(max-width:900px){.forecast-day{height:145px}.forecast-day__face{padding:16px 8px 14px}.forecast-day__front>strong,.forecast-day__back>strong{font-size:12px}.forecast-day__front>small,.forecast-day__back>small{font-size:9px}.forecast-day__front p b{font-size:17px}.forecast-day__front p span{font-size:11px}.forecast-day__front>em{font-size:8px}.forecast-day__back{padding:13px 10px 9px}.forecast-day__back dt{font-size:8px}.forecast-day__back dd{font-size:13px}.forecast-day__back dd small{font-size:6px}.forecast-day__back>span{font-size:7px}}
@media(hover:hover) and (pointer:fine){.forecast-day.is-flipped:hover .forecast-day__inner{transform:rotateY(180deg)}}
.smart-itinerary{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;margin-bottom:76px;padding:46px 48px;border:1px solid #dbe4ee;border-radius:20px;background:linear-gradient(125deg,#f8fbff,#fff 58%,#fff8f0);box-shadow:0 16px 44px #10233d0b}.smart-itinerary__intro h2{margin:10px 0 13px;font-size:35px;letter-spacing:-.7px}.smart-itinerary__intro>p{max-width:560px;margin:0;color:#59677a;font-size:15px;line-height:1.65}.itinerary-builder{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.itinerary-builder label>span{display:block;margin:0 0 6px;color:#6e7b8e;font-size:10px;font-weight:600}.itinerary-builder input,.itinerary-builder select{width:100%;height:43px;padding:0 12px;border:1px solid #d7e0ea;border-radius:8px;outline:none;background:#fff;color:#263750;font:500 12px 'Source Sans 3',sans-serif}.itinerary-builder input:focus,.itinerary-builder select:focus{border-color:#7fa8d8;box-shadow:0 0 0 3px #1760d210}.itinerary-builder button{height:45px;display:flex;align-items:center;justify-content:center;gap:9px;grid-column:1/-1;margin-top:2px;border:0;border-radius:8px;background:var(--ink);color:#fff;font-weight:700;cursor:pointer}.itinerary-builder button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s}.itinerary-builder button:hover svg{transform:translateX(4px)}.smart-itinerary__intro>small{display:block;margin-top:11px;color:#8995a5;font-size:9px}.itinerary-preview{align-self:stretch;padding:27px;border-radius:15px;background:linear-gradient(145deg,#071a3a,#123b69);color:#fff;box-shadow:0 18px 42px #0b234729}.itinerary-preview__heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:19px;border-bottom:1px solid #ffffff1c}.itinerary-preview__heading>div{display:flex;align-items:center;gap:11px}.itinerary-preview__heading span{font:500 44px/.8 Georgia,serif}.itinerary-preview__heading small{max-width:75px;color:#9dc4ef;font-size:8px;font-weight:700;letter-spacing:.12em;line-height:1.35}.itinerary-preview__heading em{color:#adc0d8;font-size:8px;font-style:normal}.itinerary-preview ol{list-style:none;margin:15px 0 0;padding:0}.itinerary-preview li{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:10px;padding:10px 0}.itinerary-preview li+li{border-top:1px solid #ffffff12}.itinerary-preview li b{color:#88b9ef;font-size:9px;text-transform:uppercase}.itinerary-preview li span{font:500 13px Georgia,serif}.itinerary-preview li i{padding:4px 7px;border-radius:999px;background:#ffffff10;color:#b5c7dc;font-size:7px;font-style:normal}@media(max-width:900px){.smart-itinerary{grid-template-columns:1fr}.itinerary-preview{min-height:360px}}@media(max-width:640px){.smart-itinerary{margin-bottom:58px;padding:30px 20px}.smart-itinerary__intro h2{font-size:30px}.itinerary-builder{grid-template-columns:1fr}.itinerary-preview{padding:23px 19px}.itinerary-preview li{grid-template-columns:43px 1fr}.itinerary-preview li i{grid-column:2;margin-top:-5px;justify-self:start}}
.month-tabs a{position:relative;border-bottom:0;transition:color .18s ease}.month-tabs a:after{content:"";position:absolute;right:0;bottom:0;left:0;height:2px;border-radius:2px 2px 0 0;background:var(--blue);transform:scaleX(0);transition:transform .22s ease}.month-tabs a:first-child{border-color:transparent;color:#69778b;font-weight:400}.month-tabs a.is-active{color:var(--ink);font-weight:700}.month-tabs a.is-active:after{transform:scaleX(1)}#overview,#itinerary,#weather,#events{scroll-margin-top:84px}
.decision-planner{margin:72px calc((1200px - 100vw)/2) 0;padding:76px max(24px,calc((100vw - 1200px)/2)) 86px;background:linear-gradient(135deg,#f2f7fd 0%,#fbfdff 54%,#fff9f3 100%)}.decision-planner .visit-overview{padding:0 0 54px}.decision-planner .month-section-heading{max-width:820px;margin-bottom:38px}.decision-planner .visit-overview__grid{grid-template-columns:1.28fr .86fr .86fr;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.decision-planner .visit-overview__grid article{min-height:236px;padding:32px 34px}.decision-planner .visit-verdict{border:1px solid #d9e4ef;border-radius:16px;background:#ffffffc7;box-shadow:0 14px 38px #10233d0a}.decision-planner .decision-list{padding-top:18px}.decision-planner .decision-list+article{border-left:1px solid #d8e2ed}.decision-planner .decision-list--good{border-left:0}.decision-planner .smart-itinerary{position:relative;grid-template-columns:1fr .92fr;gap:62px;margin:0;padding:56px 58px;overflow:hidden;border:0;border-radius:22px;background:linear-gradient(120deg,#061936 0%,#0b2b52 55%,#123d6c 100%);box-shadow:0 24px 64px #0923482e;color:#fff}.decision-planner .smart-itinerary:before{content:"";position:absolute;top:-160px;right:-100px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,#5fa0ea24 0%,transparent 67%);pointer-events:none}.decision-planner .smart-itinerary__intro,.decision-planner .itinerary-preview{position:relative;z-index:1}.decision-planner .smart-itinerary__intro .month-eyebrow{color:#82b8f5}.decision-planner .smart-itinerary__intro h2{font-size:42px;color:#fff}.decision-planner .smart-itinerary__intro>p{color:#c0ccda}.decision-planner .itinerary-builder label>span{color:#b7c7da}.decision-planner .itinerary-builder input,.decision-planner .itinerary-builder select{border-color:#ffffff30;background-color:#fff;color:#20334e}.decision-planner .itinerary-builder button{background:#fff;color:#0a2b52}.decision-planner .smart-itinerary__intro>small{color:#93a9c2}.decision-planner .itinerary-preview{align-self:center;border:1px solid #ffffff1c;background:#ffffff0b;box-shadow:none;backdrop-filter:blur(10px)}.itinerary-builder select{padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M3.25 4.75 6 7.5l2.75-2.75' stroke='%23384d68' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:12px 12px;appearance:none;-webkit-appearance:none;cursor:pointer}.itinerary-builder select:hover{border-color:#8aa9ca}
@media(max-width:900px){.decision-planner{margin-left:calc((100vw - 100%)/-2);margin-right:calc((100vw - 100%)/-2);padding-left:24px;padding-right:24px}.decision-planner .visit-overview__grid{grid-template-columns:1fr 1fr}.decision-planner .visit-verdict{grid-column:1/-1}.decision-planner .smart-itinerary{grid-template-columns:1fr;gap:36px;padding:48px}.decision-planner .itinerary-preview{min-height:0}}
@media(max-width:640px){.month-tabs>div{gap:28px}.decision-planner{margin-top:50px;padding:54px 14px 62px}.decision-planner .visit-overview{padding-bottom:38px}.decision-planner .visit-overview__grid{grid-template-columns:1fr}.decision-planner .visit-overview__grid article{min-height:0;padding:27px}.decision-planner .decision-list{padding:27px 12px}.decision-planner .decision-list+article{border-left:0;border-top:1px solid #d8e2ed}.decision-planner .smart-itinerary{padding:35px 22px;border-radius:17px}.decision-planner .smart-itinerary__intro h2{font-size:32px}.itinerary-builder{grid-template-columns:1fr}}
.decision-planner{margin-left:calc((100vw - 100%)/-2);margin-right:calc((100vw - 100%)/-2)}
.decision-planner{margin-top:0;padding-top:48px;padding-bottom:38px}.decision-planner .visit-overview{padding-bottom:38px}.decision-planner .month-section-heading{margin-bottom:30px}.decision-planner .smart-itinerary{padding-top:48px;padding-bottom:48px}.climate-section{padding-top:42px;padding-bottom:34px}.month-events{padding-top:44px;padding-bottom:56px}.site-footer{margin-top:56px}
@media(max-width:900px){.decision-planner{padding-top:44px;padding-bottom:34px}.decision-planner .visit-overview{padding-bottom:34px}.climate-section{padding-top:40px;padding-bottom:30px}.month-events{padding-top:40px;padding-bottom:50px}}
@media(max-width:640px){.decision-planner{margin-top:0;padding-top:38px;padding-bottom:28px}.decision-planner .visit-overview{padding-bottom:28px}.decision-planner .smart-itinerary{padding-top:34px;padding-bottom:34px}.climate-section{padding-top:34px;padding-bottom:26px}.month-events{padding-top:34px;padding-bottom:42px}.site-footer{margin-top:42px}}
.climate-primary>span svg{width:40px;height:40px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.decision-planner{width:min(1200px,calc(100vw - 48px));display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:stretch;margin:48px auto 38px;padding:0;overflow:hidden;border:1px solid #dbe4ee;border-radius:20px;background:#fff;box-shadow:0 16px 44px #10233d0c}.decision-planner .visit-overview{min-width:0;margin:0;padding:48px 42px;background:linear-gradient(145deg,#eef5fd 0%,#f8fbff 60%,#fffaf5 100%)}.decision-planner .month-section-heading{max-width:none;margin:0 0 28px}.decision-planner .month-section-heading h2{margin-top:11px;font-size:38px;line-height:1.08;letter-spacing:-1px}.decision-planner .visit-overview__grid{display:grid;grid-template-columns:1fr 1fr;gap:0 27px}.decision-planner .visit-overview__grid article{min-height:0;padding:0}.decision-planner .visit-verdict{grid-column:1/-1;margin-bottom:30px;border:0;border-radius:0;background:transparent;box-shadow:none}.decision-planner .visit-verdict p{margin-top:19px;font:400 15px/1.7 'Source Sans 3',sans-serif;color:#526177}.decision-planner .decision-list{padding-top:23px;border-top:1px solid #d6e1ec}.decision-planner .decision-list+article{padding-left:27px;border-top:1px solid #d6e1ec;border-left:1px solid #d6e1ec}.decision-planner .decision-list h3{margin:0 0 17px;font-size:17px}.decision-planner .decision-list h3 span{width:24px;height:24px}.decision-planner .decision-list li{margin:10px 0;padding-left:15px;font-size:13px;line-height:1.45}.decision-planner .smart-itinerary{display:block;min-width:0;margin:0;padding:48px 44px;border:0;border-radius:0;background:#fff;box-shadow:none;color:var(--ink)}.decision-planner .smart-itinerary:before{display:none}.decision-planner .smart-itinerary__intro .month-eyebrow{color:var(--blue)}.decision-planner .smart-itinerary__intro h2{margin:11px 0 13px;font-size:36px;line-height:1.1;color:var(--ink)}.decision-planner .smart-itinerary__intro>p{max-width:570px;color:#617086;font-size:14px}.decision-planner .itinerary-builder{margin-top:23px}.decision-planner .itinerary-builder label>span{color:#69778b}.decision-planner .itinerary-builder input,.decision-planner .itinerary-builder select{border-color:#d5dfe9;background-color:#fff;color:#20334e}.decision-planner .itinerary-builder button{background:var(--ink);color:#fff}.decision-planner .smart-itinerary__intro>small{margin-top:9px;color:#8a96a7}.decision-planner .itinerary-preview{margin-top:26px;padding:16px 17px 13px;border:1px solid #e2e8ef;border-radius:11px;background:#f7f9fc;color:var(--ink);box-shadow:none;backdrop-filter:none}.decision-planner .itinerary-preview__heading{padding-bottom:11px;border-color:#dde5ee}.decision-planner .itinerary-preview__heading>div{gap:8px}.decision-planner .itinerary-preview__heading span{font:600 20px/1 Georgia,serif;color:#62738a}.decision-planner .itinerary-preview__heading small{max-width:none;color:#7890aa;font-size:7px}.decision-planner .itinerary-preview__heading em{color:#98a4b3;font-size:7px}.decision-planner .itinerary-preview ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:10px}.decision-planner .itinerary-preview li{display:block;min-width:0;padding:5px 8px}.decision-planner .itinerary-preview li+li{border-top:0;border-left:1px solid #e0e7ef}.decision-planner .itinerary-preview li b{display:block;color:#7890aa;font-size:7px}.decision-planner .itinerary-preview li span{display:block;margin-top:5px;overflow:hidden;color:#4f6075;font:500 9px/1.3 'Source Sans 3',sans-serif;white-space:nowrap;text-overflow:ellipsis}.decision-planner .itinerary-preview li i{display:none}
@media(max-width:900px){.decision-planner{width:calc(100% - 32px);grid-template-columns:1fr;margin-top:40px}.decision-planner .visit-overview,.decision-planner .smart-itinerary{padding:42px}.decision-planner .visit-overview{border-bottom:1px solid #dbe4ee}}
@media(max-width:640px){.decision-planner{width:calc(100% - 20px);margin:32px auto 28px;border-radius:16px}.decision-planner .visit-overview,.decision-planner .smart-itinerary{padding:32px 22px}.decision-planner .month-section-heading h2{font-size:32px}.decision-planner .visit-overview__grid{grid-template-columns:1fr}.decision-planner .decision-list+article{margin-top:22px;padding:22px 0 0;border-left:0}.decision-planner .smart-itinerary__intro h2{font-size:31px}.decision-planner .itinerary-preview{overflow:hidden}.decision-planner .itinerary-preview ol{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:102px;overflow-x:auto}.decision-planner .itinerary-preview li{scroll-snap-align:start}}
.decision-planner{grid-template-columns:repeat(2,minmax(0,1fr))}.decision-planner .decision-list{padding-top:0;border-top:0}.decision-planner .decision-list+article{padding-left:27px;border-top:0;border-left:1px dashed #c8d6e4}.decision-planner .decision-list h3{display:flex;align-items:center;gap:9px;margin:0 0 18px;white-space:nowrap}.decision-planner .decision-list h3:before,.decision-planner .decision-list h3:after{content:"";height:0;flex:1;border-top:1px dashed #bdcddd}.decision-planner .decision-list h3 span{flex:none}.decision-planner .decision-list li{font-size:13px;line-height:1.45}
@media(max-width:900px){.decision-planner{grid-template-columns:1fr}}
@media(max-width:640px){.decision-planner .decision-list+article{padding-left:0;border-left:0}.decision-planner .decision-list h3:before,.decision-planner .decision-list h3:after{border-color:#c6d4e2}}
.forecast-day__back{display:grid;place-items:center;padding:10px 8px}.forecast-day__back dl{width:100%;margin:0}.forecast-day__back>strong,.forecast-day__back>small,.forecast-day__back>span{display:none}
@media(max-width:900px){.forecast-day__back{padding:13px 10px}}
.decision-planner .decision-list h3 span{display:grid;place-items:center}.decision-planner .decision-list h3 span svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.verdict-pill{align-items:center;gap:7px}.verdict-pill svg{width:13px;height:13px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Keep the monthly hero visually consistent with the homepage's flat, full-width hero. */
.month-hero{
  width:100%;
  max-width:none;
  margin:0;
  border-radius:0;
  box-shadow:none;
}
@media(max-width:600px){
  .month-hero{width:100%}
}

/* Match the homepage hero typography and vertical rhythm. */
.month-hero__copy{
  width:650px;
  max-width:100%;
}
.month-hero .month-eyebrow{
  margin-bottom:14px;
  font:600 11px/1.2 'Source Sans 3',Arial,sans-serif;
  letter-spacing:.11em;
}
.month-hero h1{
  margin:0 0 24px;
  font-family:Georgia,'Times New Roman',serif;
  font-size:55px;
  font-weight:500;
  line-height:.98;
  letter-spacing:-2.4px;
}
.month-hero__copy>p{
  max-width:560px;
  margin:0;
  color:#36445a;
  font-size:18px;
  line-height:1.55;
}
@media(max-width:600px){
  .month-hero h1{
    font-size:38px;
    letter-spacing:-1.4px;
  }
  .month-hero__copy>p{font-size:16px}
}

/* Use the same horizontal hero gutter as the homepage. */
.month-hero__inner{
  width:100%;
  padding-right:58px;
  padding-left:58px;
  box-sizing:border-box;
}
.month-hero__copy{left:58px}
@media(max-width:900px){
  .month-hero__inner{
    width:100%;
    padding-right:34px;
    padding-left:34px;
  }
  .month-hero__copy{left:34px}
}
@media(max-width:600px){
  .month-hero__inner{
    width:100%;
    padding-right:20px;
    padding-left:20px;
  }
  .month-hero__copy{left:auto}
}

/* Use the homepage hero's exact image height, crop and overlay treatment. */
.month-hero{height:505px}
.month-hero__image{
  top:0;
  right:0;
  left:auto;
  width:84%;
  height:100%;
  object-fit:cover;
  object-position:left center;
}
.month-hero__overlay{
  background:linear-gradient(90deg,rgba(255,252,249,.99) 0%,rgba(255,250,247,.96) 35%,rgba(250,249,246,.70) 52%,rgba(238,244,250,.08) 78%);
}
@media(max-width:900px){
  .month-hero{height:auto;min-height:650px}
}
@media(max-width:600px){
  .month-hero__image{
    width:100%;
    object-position:center;
  }
}

/* Match the homepage section-heading typography and spacing. */
.month-section-heading,
.weekly-forecast__heading{
  margin-bottom:22px;
}
.month-section-heading .month-eyebrow,
.climate-intro .month-eyebrow,
.weekly-forecast__heading .month-eyebrow,
.smart-itinerary__intro .month-eyebrow{
  margin-bottom:8px;
  font:600 11px/1.2 'Source Sans 3',Arial,sans-serif;
  letter-spacing:.11em;
}
.month-section-heading h2,
.decision-planner .month-section-heading h2,
.climate-intro h2,
.weekly-forecast__heading h3,
.decision-planner .smart-itinerary__intro h2{
  margin:0;
  font-family:Georgia,'Times New Roman',serif;
  font-size:28px;
  line-height:1.2;
  letter-spacing:-.6px;
}
.month-section-heading p,
.climate-intro p,
.decision-planner .smart-itinerary__intro>p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:14px;
  line-height:1.5;
}
.month-content>.event-faq .event-category{
  display:block;
  margin-bottom:8px;
  font:600 11px/1.2 'Source Sans 3',Arial,sans-serif;
  letter-spacing:.11em;
}
.month-content>.event-faq h2{
  margin:0 0 28px;
  font-family:Georgia,'Times New Roman',serif;
  font-size:28px;
  line-height:1.2;
  letter-spacing:-.6px;
}
@media(max-width:600px){
  .month-section-heading h2,
  .decision-planner .month-section-heading h2,
  .climate-intro h2,
  .weekly-forecast__heading h3,
  .decision-planner .smart-itinerary__intro h2,
  .month-content>.event-faq h2{
    font-size:23px;
  }
}

/* Use the homepage event-card design without image zoom. */
.month-event{
  display:block;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.month-event:hover{
  transform:translateY(-3px);
  border-color:#c4d3e5;
  box-shadow:0 12px 28px #10233d12;
}
.month-event:focus-visible{outline:3px solid #8eb7e7;outline-offset:3px}
.month-event__image{
  position:relative;
  height:180px;
  overflow:hidden;
  background:#edf2f7;
}
.month-event__image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:none;
  transition:none;
}
.month-event:hover .month-event__image img{transform:none}
.month-event__date{
  position:absolute;
  top:12px;
  left:12px;
  display:flex;
  align-items:center;
  gap:4px;
  min-width:0;
  padding:9px 12px;
  border-radius:6px;
  background:#fff;
  color:var(--ink);
  font-family:'Source Sans 3',Arial,sans-serif;
  font-size:10px;
  font-weight:600;
  line-height:1;
  white-space:nowrap;
  box-shadow:0 5px 18px #10233d17;
}
.month-event .month-event__date time,
.month-event .month-event__date span{
  position:static;
  min-width:0;
  padding:0;
  border-radius:0;
  background:transparent;
  color:inherit;
  font:inherit;
  line-height:inherit;
  text-align:inherit;
  white-space:inherit;
  box-shadow:none;
}
.month-event__copy{padding:17px}
.month-event__copy>span{
  color:var(--blue);
  font-family:'Source Sans 3',Arial,sans-serif;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
}
.month-event h3{
  min-height:42px;
  margin:8px 0;
  font-family:Georgia,'Times New Roman',serif;
  font-size:16px;
  line-height:1.3;
}
.month-event__copy p{
  display:flex;
  align-items:center;
  gap:7px;
  margin:0;
  color:var(--muted);
  font-size:12px;
}
.month-event__copy p svg{
  width:15px;
  height:15px;
  flex:none;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@media(max-width:640px){.month-event__image{height:180px}}

.month-sources{max-width:860px;margin:64px auto 0;padding:34px 0 0;border-top:1px solid #dce4ee}
.month-sources h2{margin:10px 0 13px;color:var(--ink);font:500 30px/1.15 Georgia,'Times New Roman',serif;letter-spacing:-.5px}
.month-sources>p{max-width:760px;margin:0;color:var(--muted);font-size:14px;line-height:1.7;white-space:pre-line}
.month-sources dl{display:flex;gap:42px;margin:21px 0 0}
.month-sources dl div{display:flex;gap:8px;align-items:baseline}
.month-sources dt{color:var(--muted);font-size:12px}
.month-sources dd{margin:0;color:var(--ink);font-size:13px;font-weight:600}
.month-sources__links{display:flex;gap:22px;margin-top:18px}
.month-sources__links a{color:var(--blue);font-size:13px;font-weight:600;text-decoration:none}
.month-sources__links a:hover{text-decoration:underline}
@media(max-width:640px){.month-sources{margin-top:44px;padding-top:27px}.month-sources h2{font-size:25px}.month-sources dl{display:grid;gap:8px}.month-sources__links{display:grid;gap:8px}}

.month-guide-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:860px;margin:64px auto 0}.month-guide-nav__item{display:flex;min-height:108px;flex-direction:column;justify-content:center;padding:22px 24px;border:1px solid #d7e0ec;border-radius:12px;background:#fff;color:var(--ink);text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease}.month-guide-nav__item:hover{border-color:#b9cae0;box-shadow:0 10px 24px #10233d0d}.month-guide-nav__item span{margin-bottom:7px;color:var(--blue);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.month-guide-nav__item strong{font:500 19px/1.3 Georgia,'Times New Roman',serif}.month-guide-nav__item--next{text-align:right;grid-column:2}@media(max-width:640px){.month-guide-nav{grid-template-columns:1fr;margin-top:44px}.month-guide-nav__item--next{grid-column:auto;text-align:left}}
/* Full-bleed weather uses the page's usable width, excluding scrollbar space. */
main[data-page-type="monthly-guide"] .climate-section{margin-left:0;margin-right:0;padding-left:24px;padding-right:24px}
@supports (width:1cqw){
  main[data-page-type="monthly-guide"]{container-type:inline-size}
  main[data-page-type="monthly-guide"] .climate-section{
    margin-left:calc((100% - 100cqw)/2);
    margin-right:calc((100% - 100cqw)/2);
    padding-left:max(24px,calc((100cqw - 1200px)/2));
    padding-right:max(24px,calc((100cqw - 1200px)/2));
  }
}
@media(max-width:640px){main[data-page-type="monthly-guide"] .climate-section{padding-left:14px;padding-right:14px}}
/* Keep the forecast scroller inside the grid track at narrow widths. */
main[data-page-type="monthly-guide"] .climate-section>*{min-width:0}
main[data-page-type="monthly-guide"] .weekly-forecast{min-width:0;max-width:100%}
main[data-page-type="monthly-guide"] .weekly-forecast__days{min-width:0;max-width:100%}
main[data-page-type="monthly-guide"] .weekly-forecast__heading{flex-wrap:wrap;gap:12px}
main[data-page-type="monthly-guide"] .weekly-forecast__heading>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:900px){
  main[data-page-type="monthly-guide"] .climate-section{grid-template-columns:minmax(0,1fr)}
  main[data-page-type="monthly-guide"] .weekly-forecast__days{overflow-x:auto}
}
/* Stack climate content evenly on tablet and mobile screens. */
@media(max-width:900px){
  main[data-page-type="monthly-guide"] .climate-section{row-gap:24px}
  main[data-page-type="monthly-guide"] .climate-panel{width:100%;max-width:none;justify-self:stretch;padding:22px;border-radius:14px;box-shadow:0 8px 24px #10233d08}
  main[data-page-type="monthly-guide"] .climate-intro>small{margin-top:12px}
  main[data-page-type="monthly-guide"] .climate-panel dl{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px;padding:16px 0}
  main[data-page-type="monthly-guide"] .climate-panel dl div{min-width:0;padding:0 10px}
  main[data-page-type="monthly-guide"] .climate-panel dl div:first-child{padding-left:0}
  main[data-page-type="monthly-guide"] .climate-panel dl div+div{border-top:0;border-left:1px solid #e1e7ef}
  main[data-page-type="monthly-guide"] .climate-panel dt{font-size:11px;line-height:1.4}
  main[data-page-type="monthly-guide"] .climate-panel dd{font-size:16px}
  main[data-page-type="monthly-guide"] .weekly-forecast{padding:8px 0 0}
  main[data-page-type="monthly-guide"] .weekly-forecast__heading{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:18px}
  main[data-page-type="monthly-guide"] .weekly-forecast__heading p{margin:0;flex-wrap:wrap}
}
@media(max-width:480px){
  main[data-page-type="monthly-guide"] .climate-panel{padding:18px}
  main[data-page-type="monthly-guide"] .climate-panel dl div{padding:0 8px}
  main[data-page-type="monthly-guide"] .climate-primary strong{font-size:32px}
  main[data-page-type="monthly-guide"] .climate-intro h2{font-size:28px;line-height:1.2}
  main[data-page-type="monthly-guide"] .weekly-forecast__heading h3{font-size:26px;line-height:1.2}
}
@media(max-width:900px){
  main[data-page-type="monthly-guide"] .weekly-forecast__days{padding-bottom:12px}
}
