.page{--ink:#183c4b;--muted:#58717b;--sea:#317b92;--line:#dbe6e7;background:#fbfaf6;color:var(--ink);padding:0 0 72px}
.page *{box-sizing:border-box}
.page h1,.page h2,.page h3,.page p,.page figure{margin:0}
.page h1,.page h2,.editorialBreak p{font-family:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif;font-weight:700}
.page p{line-height:1.85}
.wrap{width:min(1160px,calc(100% - 44px));margin-inline:auto}
.crumb{display:flex;align-items:center;flex-wrap:wrap;gap:11px;padding:28px 0 0;font-size:12px;color:#64808a}
.crumb a{text-decoration:none;color:#317b92}
.crumb a:hover,.sourceFooter a:hover{text-decoration:underline}
.masthead{padding-top:42px}
.mastheadCopy{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(280px,.68fr);gap:12px 55px;align-items:end;padding:0 8px 38px}
.mastheadCopy [data-pr-disclosure]{grid-column:1/-1;margin-bottom:24px}
.kicker,.sectionKicker{font-family:Arial,"Yu Gothic",sans-serif;font-size:11px;font-weight:800;letter-spacing:.22em;color:var(--sea)}
.kicker{grid-column:1/-1}
.masthead h1{grid-column:1;grid-row:3/5;font-size:clamp(40px,5vw,70px);line-height:1.27;letter-spacing:-.055em}
.masthead h1 em{font-style:normal;color:var(--sea)}
.lead{grid-column:2;grid-row:3;color:#385967;font-size:16px;line-height:1.95!important}
.mastheadDetails{grid-column:2;grid-row:4;display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}
.mastheadDetails span{display:inline-flex;padding:6px 10px;background:#e9f2f2;font-size:10px;font-weight:700;color:#316778;white-space:nowrap}
.heroVisual{position:relative;aspect-ratio:16/8;min-height:410px;overflow:hidden;background:#cbdfe4}
.photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.heroVisual .photo{object-position:center 42%}
.heroVisual::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#0b303a9c)}
.heroCaption{position:absolute;z-index:1;left:5%;bottom:6%;display:grid;gap:8px;color:#fff;text-shadow:0 2px 12px #0b303a80}
.heroCaption span{font:700 11px Arial,sans-serif;letter-spacing:.22em}
.heroCaption strong{font-family:"Yu Mincho",Georgia,serif;font-size:clamp(21px,2.8vw,37px);line-height:1.4}
.imageNotice{text-align:right;padding:12px 2px 0;color:#68808a;font-size:11px}
.jumpNav{display:flex;gap:0;margin:26px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:auto}
.jumpNav a{flex:1;min-width:116px;padding:17px 10px;text-align:center;text-decoration:none;color:var(--ink);font-size:12px;font-weight:800;white-space:nowrap;border-right:1px solid var(--line)}
.jumpNav a:last-child{border:0}.jumpNav a:hover{background:#eaf3f3;color:var(--sea)}
.introSection{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:70px;align-items:center;padding:98px 6px 74px}
.introSection h2,.dayHead h2,.stayCopy h2,.budgetHeading h2,.forYouSection h2{font-size:clamp(32px,3.6vw,47px);line-height:1.42;letter-spacing:-.045em;margin:18px 0 22px}
.introSection p:not(.sectionKicker),.dayHead p:not(.sectionKicker),.stayCopy>p:not(.sectionKicker){font-size:15px;color:var(--muted)}
.introPoints{border-top:3px solid var(--sea);background:#fff;box-shadow:0 16px 45px #244c5710;padding:14px 29px}
.introPoints div{display:grid;grid-template-columns:45px 1fr;gap:14px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line)}
.introPoints div:last-child{border:0}.introPoints b{font:italic 25px Georgia,serif;color:var(--sea)}.introPoints span{font-size:14px;font-weight:700;line-height:1.6}
.routeStrip{padding:30px 35px;background:#e9f2f1;border-left:5px solid #5b9aae}
.routeStrip>span{display:block;color:var(--sea);font:800 10px Arial,sans-serif;letter-spacing:.2em}
.routeStrip strong{display:block;margin-top:10px;font-size:clamp(16px,2.1vw,24px);letter-spacing:.02em;line-height:1.6}
.routeStrip i{font-style:normal;color:#89a9b1;margin:0 5px}.routeStrip p{margin-top:8px;font-size:12px;color:var(--muted)}
.daySection{padding:110px 0 15px;scroll-margin-top:25px}
.dayHead{display:grid;grid-template-columns:220px minmax(0,1fr);gap:35px;align-items:start;margin-bottom:44px}
.dayNumber{font:italic 62px/1 Georgia,serif;color:#a7c4c6;white-space:nowrap}
.dayHead h2{margin-top:11px}.dayHead>div{max-width:720px}
.stops{display:grid;gap:22px}
.stop{display:grid;grid-template-columns:minmax(0,.97fr) minmax(0,1.03fr);min-height:265px;background:#fff;box-shadow:0 10px 34px #1747580d}
.stop:nth-child(even) .stopVisual{order:2}.stop:nth-child(even) .stopCopy{order:1}
.stopVisual{position:relative;min-height:265px;overflow:hidden;background:#e1ebeb}
.stopVisual .photo{object-position:center 48%}.stopNumber{position:absolute;top:18px;left:20px;color:#fff;font:italic 46px/1 Georgia,serif;text-shadow:0 2px 16px #132f3b91}
.stopCopy{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:28px clamp(24px,3.2vw,48px)}
.stopMeta{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px;color:var(--sea)}
.stopMeta span:first-child{font:italic 22px/1 Georgia,serif}.stopMeta span:last-child{font-size:11px;font-weight:700;letter-spacing:.06em}
.stopCopy h3{margin:13px 0 10px;font-size:clamp(27px,2.7vw,33px);font-weight:800;line-height:1.38;letter-spacing:-.04em;overflow-wrap:anywhere}
.stopCopy p{font-size:13px;color:#4d6872;line-height:1.82}
.stopTip{display:flex;gap:12px;align-items:baseline;margin-top:19px;padding-top:14px;border-top:1px solid var(--line);font-size:11px;color:#5a7580;line-height:1.6}
.stopTip b{flex:none;color:var(--sea);font-size:9px;letter-spacing:.11em}
.editorialBreak{margin:75px auto 0;padding:56px 24px 61px;text-align:center;background:#f0ece2;border-top:1px solid #e4d9c7;border-bottom:1px solid #e4d9c7}
.editorialBreak span{font:800 10px Arial,sans-serif;letter-spacing:.22em;color:#9c7750}
.editorialBreak p{margin:19px 0!important;font-size:clamp(24px,3vw,38px);line-height:1.6;letter-spacing:-.03em}
.editorialBreak small{font-size:12px;color:#7e7164}
.whySection{padding:94px 0 97px}.whySection h2{font-size:clamp(29px,3.4vw,43px);margin:15px 0 33px}
.whyGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.whyGrid>div{padding:25px 26px 29px;background:#edf4f3;border-top:3px solid #84acb5}
.whyGrid b{font:italic 31px Georgia,serif;color:#6a9bab}.whyGrid h3{margin:21px 0 10px;font-size:18px}.whyGrid p{font-size:13px;color:var(--muted)}
.staySection{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);background:#e8f0ee;scroll-margin-top:25px}
.stayVisual{position:relative;min-height:570px;overflow:hidden}.stayVisual .photo{object-position:42% center}.stayVisual span{position:absolute;left:25px;bottom:23px;color:#fff;font:italic 42px Georgia,serif;text-shadow:0 3px 14px #183c4baa}
.stayCopy{padding:55px clamp(30px,5vw,72px)}.stayCopy h2{margin-top:16px}.stayCopy ul{list-style:none;padding:0;margin:25px 0 18px}
.stayCopy li{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #c7d9d9;font-size:13px;line-height:1.7}
.stayCopy li b{color:var(--sea)}.stayCopy small{font-size:11px;line-height:1.7;color:#5e767b}
.budgetSection{padding:99px 0 83px;scroll-margin-top:25px}.budgetHeading{display:flex;align-items:end;justify-content:space-between;gap:30px;flex-wrap:wrap}
.budgetHeading h2{margin-bottom:0}.budgetHeading>p:last-child{max-width:340px;color:var(--muted);font-size:13px}
.budgetGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:35px}
.budgetGrid>div{display:flex;flex-direction:column;gap:12px;min-height:144px;padding:24px 22px;background:#fff;border-top:3px solid #82aeba}
.budgetGrid span{font:800 10px Arial,sans-serif;letter-spacing:.14em;color:var(--sea)}.budgetGrid b{font-size:clamp(18px,2vw,24px);line-height:1.4}.budgetGrid small{margin-top:auto;font-size:11px;color:var(--muted)}
.budgetGrid .budgetTotal{background:#24566b;border-color:#24566b;color:#fff}.budgetTotal span,.budgetTotal small{color:#d8e8e9}
.budgetNote{margin-top:16px!important;color:var(--muted);font-size:12px}
.forYouSection{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:50px;align-items:center;padding:49px 43px;background:#f2ede4}
.forYouSection h2{margin-bottom:0}.forYouSection ul{list-style:none;padding:0;margin:0}.forYouSection li{padding:13px 0 13px 26px;border-bottom:1px solid #dbd2c5;position:relative;font-size:14px;line-height:1.65}.forYouSection li:last-child{border:0}.forYouSection li::before{content:'✓';position:absolute;left:0;color:#528b99;font-weight:900}
.ctaSection{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);margin-top:88px;background:#204f64;color:#fff;scroll-margin-top:25px}
.ctaVisual{position:relative;min-height:430px;overflow:hidden}.ctaCopy{padding:53px clamp(34px,5vw,70px)}.ctaCopy [data-pr-disclosure],.ctaCopy [data-pr-disclosure] strong{color:#e6f3f3}.ctaCopy .sectionKicker{margin-top:18px;color:#abd9df}
.ctaCopy h2{font-size:clamp(29px,3.5vw,44px);line-height:1.45;margin:12px 0 20px}.ctaCopy>p:not(.sectionKicker){color:#e7f2f3;font-size:14px}
.ctaLinks{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 15px}.ctaLinks a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 18px;text-decoration:none;font-size:12px;font-weight:800;line-height:1.5}
.ctaLinks a.primaryButton{background:#fff;color:#205269}.ctaLinks a.secondaryButton{border:1px solid #b6d3d9;color:#fff}.ctaCopy small{font-size:11px;color:#ccdee2}
.sourceFooter{padding:39px 0 0;font-size:12px;color:var(--muted)}.sourceFooter strong{display:block;color:var(--ink);font-size:12px}.sourceFooter div{display:flex;flex-wrap:wrap;gap:9px 18px;margin:13px 0}.sourceFooter a{color:var(--sea);text-underline-offset:3px}.sourceFooter p{font-size:11px}
@media(max-width:800px){.mastheadCopy{grid-template-columns:1fr}.mastheadCopy [data-pr-disclosure],.kicker,.masthead h1,.lead,.mastheadDetails{grid-column:1;grid-row:auto}.masthead h1{font-size:clamp(37px,7vw,57px)}.introSection{gap:30px}.dayHead{grid-template-columns:145px 1fr}.dayNumber{font-size:47px}.stopCopy{padding:23px 26px}.stayCopy{padding:39px 30px}.budgetGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.wrap{width:calc(100% - 32px)}.crumb{padding-top:17px;font-size:11px}.masthead{padding-top:30px}.mastheadCopy{padding:0 0 27px;gap:10px}.mastheadCopy [data-pr-disclosure]{margin-bottom:14px}.masthead h1{font-size:clamp(33px,9vw,44px);line-height:1.36}.lead{font-size:14px}.heroVisual{aspect-ratio:4/3;min-height:0}.heroCaption{left:7%;bottom:8%}.heroCaption strong{font-size:23px}.imageNotice{text-align:left;line-height:1.5}.jumpNav{margin-top:20px}.jumpNav a{font-size:11px;min-width:112px}.introSection{grid-template-columns:1fr;padding:65px 0 48px}.introSection h2,.dayHead h2,.stayCopy h2,.budgetHeading h2,.forYouSection h2{font-size:31px}.introPoints{padding:8px 21px}.routeStrip{padding:24px 22px}.routeStrip strong{font-size:17px}.daySection{padding-top:75px}.dayHead{display:block;margin-bottom:29px}.dayNumber{display:block;margin-bottom:24px}.stop{grid-template-columns:minmax(0,32%) minmax(0,68%);min-height:0}.stop:nth-child(even) .stopVisual,.stop:nth-child(even) .stopCopy{order:initial}.stopVisual{min-height:0;height:100%;aspect-ratio:auto}.stopNumber{top:9px;left:9px;font-size:26px}.stopCopy{padding:14px 15px 17px}.stopMeta{display:block}.stopMeta span:first-child{font-size:20px}.stopMeta span:last-child{display:block;margin-top:5px;font-size:10px;line-height:1.35;letter-spacing:.02em}.stopCopy h3{margin:7px 0 8px;font-size:20px;line-height:1.38}.stopCopy p{font-size:12.5px;line-height:1.6}.stopTip{display:block;margin-top:11px;padding-top:9px;font-size:11px;line-height:1.55}.stopTip b{display:block;margin-bottom:4px}.editorialBreak{margin-top:49px;padding:45px 18px}.editorialBreak p{font-size:25px}.whySection{padding:65px 0}.whyGrid{grid-template-columns:1fr;gap:10px}.staySection{grid-template-columns:1fr}.stayVisual{min-height:0;aspect-ratio:4/3}.stayCopy{padding:34px 25px 38px}.budgetSection{padding:66px 0}.budgetGrid{gap:9px}.budgetGrid>div{min-height:121px;padding:17px}.budgetGrid b{font-size:19px}.forYouSection{grid-template-columns:1fr;gap:12px;padding:32px 24px}.ctaSection{grid-template-columns:1fr;margin-top:62px}.ctaVisual{min-height:0;aspect-ratio:16/10}.ctaCopy{padding:33px 25px 40px}}
@media(max-width:380px){.masthead h1{font-size:32px}.budgetGrid{grid-template-columns:1fr}.budgetGrid>div{min-height:100px}.ctaLinks a{width:100%}.stopCopy{padding:12px 11px 14px}.stopCopy h3{font-size:19px}}
