:root{--navy:#102137;--ivory:#faf7ef;--champagne:#e8dcc7;--gold:#c5a263;--muted:#696b69}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--ivory);color:var(--navy);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{position:absolute;inset:0 0 auto;z-index:50;height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;color:white;border-bottom:1px solid #ffffff30;transition:background .3s,height .3s}header.fixed{position:fixed;background:var(--navy);height:76px;box-shadow:0 4px 25px #0001}.wordmark{font-size:17px;font-weight:600;letter-spacing:5px;white-space:nowrap}header nav{display:flex;gap:34px;font-size:13px}header nav a{padding:12px 0;border-bottom:1px solid transparent}header nav a:hover{border-color:var(--gold)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;background:var(--gold);color:var(--navy);font-size:13px;font-weight:bold;padding:19px 24px;border:1px solid var(--gold);transition:background .2s,transform .2s}.button:hover{background:#e1c690;transform:translateY(-2px)}.button span{font-size:19px}.button.small{padding:12px 18px;font-size:12px}.scene{position:relative;isolation:isolate;overflow:hidden;color:white}.scene-image{position:absolute;inset:-4% 0;width:100%;height:108%;object-fit:cover;z-index:-3;will-change:transform}.hero{min-height:850px;height:100svh;max-height:1200px;background:#427ea7}.hero-image{background:url('assets/photo-0.webp') center 42%/cover no-repeat;animation:drift 24s ease-in-out infinite alternate}.shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(6,22,39,.63),rgba(6,22,39,.10) 85%),linear-gradient(0deg,#0b1b3360,transparent 50%)}.hero-copy{position:absolute;top:29%;left:8%;right:5%}.eyebrow{font-size:10px;line-height:1.7;font-weight:600;letter-spacing:2.8px;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-3px;line-height:1.03}h1{font-size:clamp(58px,6.4vw,105px);margin:27px 0}em{font-weight:400}p.intro{font-size:17px;line-height:1.8;margin:0 0 32px}.hero-bottom{position:absolute;bottom:40px;left:8%;right:8%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px}.scroll-cue{position:absolute;bottom:100px;left:8%;display:flex;gap:25px;align-items:center;font-size:9px;letter-spacing:2px}.scroll-cue i{font-style:normal;font-size:25px;animation:bob 2.5s infinite}.motion{position:absolute;right:8%;bottom:96px;background:#10213750;color:white;border:1px solid #ffffff70;padding:9px 12px;display:flex;gap:10px;align-items:center;font-size:11px}.welcome{padding:115px 12% 120px}.welcome h2{font-size:clamp(48px,5.4vw,80px);margin:35px 0 45px}.welcome-bottom{display:flex;align-items:center;gap:55px}.welcome-bottom p{max-width:440px;font-size:15px;line-height:1.9;margin:0}.fine-compass{font-size:65px;color:var(--gold);font-weight:100}.text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid var(--gold);padding:12px 0;font-size:12px;font-weight:600;white-space:nowrap}.welcome-bottom .text-link{margin-left:auto}.destination{height:95svh;min-height:720px;max-height:1100px;background:var(--navy)}.destination-copy{position:absolute;left:10%;top:20%;max-width:600px}.destination h2{font-size:clamp(65px,7vw,105px);margin:25px 0}.destination-copy>p:not(.eyebrow){font-size:16px;line-height:1.8;max-width:350px;margin-bottom:30px}.scene-caption{position:absolute;right:7%;bottom:38px;font-size:9px;letter-spacing:2px}.inbetween{padding:100px 8% 110px;background:var(--champagne)}.inbetween>h2{font-size:clamp(50px,5.4vw,80px);margin:28px 0 65px}.photo-story{display:grid;grid-template-columns:1.1fr .8fr 1fr;align-items:center;gap:45px}.photo-story figure{margin:0}.photo-story img{width:100%;object-fit:cover}.story-tall img{height:480px}.story-small{margin-top:170px!important}.story-small img{height:310px}figcaption{font-family:Georgia,serif;font-size:17px;margin-top:16px}.story-note p{font-family:Georgia,serif;font-size:30px;line-height:1.5;margin:25px 0}.tiny-line{width:45px;height:1px;display:block;background:#a38550}#vines .scene-image{object-position:center 45%}#vines .shade{background:linear-gradient(90deg,#102137b5,#10213715),linear-gradient(0deg,#10213740,transparent)}.flights{padding:115px 9%;background:var(--ivory)}.flight-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:55px}.flight-heading h2{font-size:clamp(48px,5vw,75px);margin:25px 0 0}.flight-heading>p{font-size:14px;line-height:1.9}.flight-tabs{display:flex;border-bottom:1px solid #10213730;margin-bottom:35px}.flight-tabs button{border:0;background:transparent;padding:23px 30px 23px 0;margin-right:40px;color:var(--muted);border-bottom:3px solid transparent;text-align:left;font-size:15px}.flight-tabs button span{font-size:10px;margin-left:25px}.flight-tabs button[aria-selected=true]{border-color:var(--gold);color:var(--navy)}.flight-panel{display:grid;grid-template-columns:1.15fr 1fr;min-height:570px;background:var(--champagne)}[hidden]{display:none!important}.flight-panel>img{width:100%;height:100%;max-height:650px;object-fit:cover}.flight-details{padding:48px}.flight-details h3{font-size:42px;letter-spacing:-1.7px;margin:20px 0}.flight-details>p:not(.eyebrow){font-size:13px;line-height:1.8}.price{display:flex;justify-content:space-between;gap:15px;padding:18px 0;border-top:1px solid #10213725;font-size:12px;align-items:center}.price strong{font-family:Georgia,serif;font-size:22px;font-weight:400}.price small{font-family:Arial;font-size:11px}.flight-details>.button{width:100%;margin:18px 0 0}.booking-note{font-size:10px!important;color:#565c60;margin:15px 0 0}.private-link{margin-top:12px}.moments{padding:95px 0 75px;background:var(--navy);color:var(--ivory);overflow:hidden}.moments-heading{padding:0 9%}.moments-heading h2{font-size:clamp(44px,4.8vw,70px);margin:25px 0 60px}.moment-track{display:flex;gap:25px;overflow:auto;scroll-snap-type:x mandatory;padding:0 9% 28px;scrollbar-color:var(--gold) var(--navy)}.moment-track figure{flex:0 0 39%;margin:0;scroll-snap-align:center}.moment-track figure:nth-child(2){padding-top:55px}.moment-track img{width:100%;height:330px;object-fit:cover}.gallery-note{font-size:10px;letter-spacing:1px;color:#c3c8ce;padding:15px 9% 0}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding:120px 9%}.faq h2{font-size:52px;margin:25px 0}.questions{padding-top:20px}details{border-bottom:1px solid #10213725;padding:23px 0}summary{display:flex;justify-content:space-between;gap:25px;font-size:14px;line-height:1.5;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary span{color:#917039;font-size:22px;font-weight:300}details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;line-height:1.9;color:#5d6268;margin:20px 30px 0 0}.closing{height:640px;display:flex;align-items:center;justify-content:center;text-align:center}.closing .scene-image{object-position:70% center}.closing .shade{background:#10213755}.closing h2{font-size:85px;margin:25px 0 35px}footer{background:var(--navy);color:var(--ivory);padding:65px 7% 30px;display:flex;align-items:center;gap:40px;flex-wrap:wrap}footer>p{font-family:Georgia,serif;font-size:16px;margin:0}footer>div{margin-left:auto;display:flex;gap:24px;font-size:12px}footer small{width:100%;border-top:1px solid #ffffff20;padding-top:25px;margin-top:10px;font-size:9px;letter-spacing:1px;color:#b4bdc6}.reveal{transition:opacity .9s,transform .9s}.js .reveal:not(.visible){opacity:0;transform:translateY(30px)}body.paused .hero-image,body.paused .scroll-cue i{animation-play-state:paused}@keyframes drift{from{transform:scale(1.03) translateY(0)}to{transform:scale(1.10) translateY(-1.5%)}}@keyframes bob{50%{transform:translateY(7px)}}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #c5a263;outline-offset:5px}@media(max-width:1000px){header nav{gap:18px}.wordmark{font-size:14px;letter-spacing:3px}.photo-story{gap:25px}.flight-details{padding:30px}.faq{gap:40px}.welcome-bottom{gap:30px}.welcome-bottom .text-link{display:none}}@media(max-width:700px){html{scroll-padding-top:70px}header{height:80px;padding:0 6%}header.fixed{height:68px}header nav{display:none}.wordmark{font-size:13px;letter-spacing:2px;line-height:1.65}.wordmark span{display:block;font-size:10px;letter-spacing:4.3px}header .small{padding:10px 13px;gap:12px;font-size:10px}.hero{height:95svh;min-height:670px}.hero-copy{left:7%;top:28%;right:5%}.hero-image{background-position:57% center}.hero h1{font-size:59px;letter-spacing:-2.6px;line-height:1.06}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.8px}.intro{font-size:14px!important}.hero-bottom{left:7%;right:7%;bottom:25px}.hero-bottom span:last-child{display:none}.scroll-cue{left:7%;bottom:75px;font-size:8px}.motion{right:7%;bottom:72px}.motion span{display:none}.welcome{padding:75px 7%}.welcome h2{font-size:47px;letter-spacing:-2px;margin:25px 0 30px}.welcome-bottom{gap:22px;align-items:start}.fine-compass{font-size:40px}.welcome-bottom p{font-size:13px}.destination{height:88svh;min-height:650px}.destination-copy{left:7%;right:7%;top:22%}.destination h2{font-size:64px;letter-spacing:-2.3px}.destination-copy>p:not(.eyebrow){font-size:14px;max-width:280px}.scene-caption{font-size:8px;left:7%;right:auto;bottom:28px}.inbetween{padding:70px 7%}.inbetween>h2{font-size:47px;letter-spacing:-2px;margin-bottom:35px}.photo-story{grid-template-columns:1fr 1fr;gap:20px}.story-tall{grid-row:span 2}.story-tall img{height:360px}.story-note p{font-size:21px;line-height:1.5;margin:15px 0}.story-note .text-link{font-size:10px;white-space:normal}.story-small{margin:0!important}.story-small img{height:170px}.photo-story figcaption{font-size:13px}.flights{padding:70px 6%}.flight-heading{margin-bottom:25px}.flight-heading h2{font-size:48px;letter-spacing:-2px}.flight-heading>p{display:none}.flight-tabs button{padding:20px 0;font-size:13px;margin-right:25px;flex:1}.flight-tabs button span{margin-left:8px}.flight-panel{grid-template-columns:1fr}.flight-panel>img{height:300px}.flight-details{padding:30px 24px}.flight-details h3{font-size:39px}.moments{padding:70px 0 50px}.moments-heading{padding:0 7%}.moments-heading h2{font-size:43px;letter-spacing:-2px;margin-bottom:35px}.moment-track{padding-left:7%;padding-right:7%;gap:18px}.moment-track figure{flex-basis:82%}.moment-track img{height:300px}.moment-track figure:nth-child(2){padding-top:30px}.faq{grid-template-columns:1fr;gap:15px;padding:70px 7%}.faq h2{font-size:45px;letter-spacing:-2px}.questions{padding-top:0}.closing{height:530px}.closing h2{font-size:70px}footer{padding:45px 7% 25px;gap:25px}footer>p{font-size:14px}footer>div{margin-left:0;flex-basis:100%;justify-content:space-between}footer small{line-height:1.8}.eyebrow{font-size:9px;letter-spacing:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal:not(.visible){opacity:1;transform:none}.scene-image{will-change:auto}}
/* Champagne backlighting: a diffuse wash, with no visible frame. */
body::after{content:"";position:fixed;inset:0;z-index:60;pointer-events:none;box-shadow:inset 0 0 34px 7px rgba(237,217,172,.16),inset 0 0 100px 15px rgba(239,219,180,.065)}
/* Calls to action inherit the material and palette of their section. */
.button{background:transparent;color:var(--navy);border:1px solid rgba(16,33,55,.4);border-radius:3px;box-shadow:none;transition:background .25s,border-color .25s,color .25s;}
.button:hover{background:rgba(197,162,99,.14);border-color:var(--gold);transform:none}
.scene .button,header .button{color:var(--ivory);background:rgba(16,33,55,.14);border-color:rgba(233,218,188,.65);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.scene .button:hover,header .button:hover{background:rgba(233,218,188,.17);border-color:#ead9b6}
header .button.small{padding:12px 18px}
.flight-details>.button{background:var(--navy);color:var(--ivory);border-color:var(--navy);box-shadow:inset 0 1px 0 rgba(233,218,188,.13)}
.flight-details>.button:hover{background:#1c344e;border-color:#1c344e}
.flight-details>.button span{color:#dec695}
.closing .button{background:rgba(233,218,188,.10)}
@media(max-width:700px){body::after{box-shadow:inset 0 0 24px 4px rgba(237,217,172,.14),inset 0 0 65px 8px rgba(239,219,180,.05)}header .button.small{padding:10px 13px}}
/* Visible champagne side-light, continuous with the scrolling feed. */
body::after{inset:0;box-shadow:none;background:linear-gradient(90deg,rgba(245,224,181,.84) 0,rgba(240,214,163,.42) 3px,rgba(235,207,153,.16) 13px,rgba(235,207,153,0) 38px),linear-gradient(270deg,rgba(245,224,181,.84) 0,rgba(240,214,163,.42) 3px,rgba(235,207,153,.16) 13px,rgba(235,207,153,0) 38px);mix-blend-mode:normal}
@media(max-width:700px){body::after{box-shadow:none;background:linear-gradient(90deg,rgba(245,224,181,.88),rgba(240,214,163,.4) 3px,rgba(235,207,153,.13) 10px,transparent 23px),linear-gradient(270deg,rgba(245,224,181,.88),rgba(240,214,163,.4) 3px,rgba(235,207,153,.13) 10px,transparent 23px)}}
/* A quiet champagne halo ties flight actions to the page backlighting. */
.button,header .button,.scene .button,.flight-details>.button{box-shadow:0 0 14px 1px rgba(236,213,166,.18),inset 0 0 8px rgba(236,213,166,.055);transition:background .25s,border-color .25s,color .25s,box-shadow .25s}
.button:hover,header .button:hover,.scene .button:hover,.flight-details>.button:hover{box-shadow:0 0 20px 2px rgba(236,213,166,.29),inset 0 0 10px rgba(236,213,166,.09)}
.button:focus-visible{box-shadow:0 0 20px 2px rgba(236,213,166,.29)}
/* A light frosted navigation layer follows the feed without a solid navy band. */
header.fixed{height:62px;background:rgba(250,247,239,.88);color:var(--navy);border-bottom:1px solid rgba(197,162,99,.2);box-shadow:0 6px 24px rgba(16,33,55,.035);backdrop-filter:blur(18px) saturate(115%);-webkit-backdrop-filter:blur(18px) saturate(115%)}
header.fixed .wordmark{font-size:14px;letter-spacing:4px}
header.fixed nav{font-size:12px}
header.fixed .button.small{background:rgba(16,33,55,.94);color:var(--ivory);border:1px solid rgba(16,33,55,.85);padding:9px 16px;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
header.fixed .button.small span{color:#e2cfa9;font-size:16px}
header.fixed .button.small:hover{background:#20394f;border-color:#20394f;box-shadow:0 0 12px rgba(197,162,99,.18)}
@media(max-width:700px){header.fixed{height:62px;padding:0 6%;background:rgba(250,247,239,.91)}header.fixed .wordmark{font-size:11px;letter-spacing:2px}header.fixed .wordmark span{font-size:8px;letter-spacing:3.65px}header.fixed .button.small{font-size:10px;min-height:40px;padding:10px 12px;gap:12px}}
/* Flight-finder actions stand out through warmth and contrast, without arrows. */
header .button.small,header.fixed .button.small,.closing .button{background:linear-gradient(135deg,#f0e2c8,#dcc49b);color:var(--navy);border:1px solid rgba(240,226,200,.85);font-weight:700;letter-spacing:.35px;box-shadow:0 0 15px rgba(234,210,165,.22),inset 0 1px 0 rgba(255,255,255,.45);backdrop-filter:none;-webkit-backdrop-filter:none;justify-content:center;gap:0}
header .button.small:hover,header.fixed .button.small:hover,.closing .button:hover{background:linear-gradient(135deg,#f6e9d2,#e5cfaa);color:var(--navy);border-color:#ead6b2;box-shadow:0 0 20px rgba(234,210,165,.31),inset 0 1px 0 rgba(255,255,255,.5)}
/* Clear, arrow-free booking actions with a visible champagne invitation. */
.button,header .button.small,header.fixed .button.small,.scene .button,.closing .button,.flight-details>.button{background:linear-gradient(135deg,#f7e9cb 0%,#dfc18b 100%);color:#102137;border:1px solid #f4dfb4;border-radius:5px;font-weight:700;justify-content:center;gap:0;box-shadow:0 0 12px 2px rgba(245,220,170,.4),0 0 30px 5px rgba(234,199,132,.25),inset 0 1px 0 rgba(255,255,255,.6);text-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.button:hover,header .button.small:hover,header.fixed .button.small:hover,.scene .button:hover,.closing .button:hover,.flight-details>.button:hover{background:linear-gradient(135deg,#fff2d9,#ebcd98);color:#102137;border-color:#fff0ce;box-shadow:0 0 16px 3px rgba(250,226,181,.55),0 0 38px 7px rgba(234,199,132,.34),inset 0 1px 0 rgba(255,255,255,.7)}
.hero .button{min-width:205px;min-height:56px}.hero-bottom{bottom:24px}.scroll-cue{bottom:62px}.motion{bottom:58px}
@media(max-width:700px){.hero{height:auto;min-height:780px;min-height:max(780px,100svh)}.hero-copy{position:relative;top:auto;left:auto;right:auto;padding:170px 7% 160px}.hero h1{font-size:clamp(43px,10.6vw,59px);line-height:1.06;margin:23px 0}.hero .intro{line-height:1.65;margin-bottom:25px}.hero .button{width:min(100%,300px);min-height:58px;padding:17px 22px;font-size:14px}.hero .scroll-cue{bottom:65px}.hero .hero-bottom{bottom:26px}.hero .motion{bottom:58px}header.fixed .button.small{min-height:42px;padding:10px 16px}}
/* The light comes from the perimeter, not a glowing button fill. */
.button,header .button.small,header.fixed .button.small,.scene .button,.closing .button,.flight-details>.button{background:#142a42;color:#faf7ef;border:1px solid rgba(246,224,183,.96);box-shadow:0 0 0 1px rgba(239,210,158,.24),0 0 11px 2px rgba(242,214,166,.5),0 0 27px 5px rgba(223,185,120,.22);text-shadow:none}
.button:hover,header .button.small:hover,header.fixed .button.small:hover,.scene .button:hover,.closing .button:hover,.flight-details>.button:hover{background:#1b354f;color:#fff8eb;border-color:#fff0cf;box-shadow:0 0 0 1px rgba(255,236,196,.4),0 0 15px 3px rgba(246,220,178,.65),0 0 34px 7px rgba(226,190,129,.32)}
