:root{--green:#0b5d3b;--green-light:#60a879;--cream:#f3ebdc;--ink:#07110d;--gold:#c6a66a;--line:rgba(255,255,255,.28);--ease:cubic-bezier(.22,.8,.22,1)}
*{box-sizing:border-box}html,body{height:100%;margin:0}html{background:var(--ink)}body{overflow:hidden;color:#fff;font-family:"DM Sans",sans-serif;font-weight:300;cursor:none}button,a{font:inherit;color:inherit}button{cursor:none}.skip-link{position:fixed;left:1rem;top:-4rem;z-index:100;background:#fff;color:#000;padding:.7rem 1rem}.skip-link:focus{top:1rem}.site-header{position:fixed;z-index:30;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2.6rem;pointer-events:none}.brand{display:flex;align-items:center;gap:.85rem;color:#fff;text-decoration:none;text-transform:uppercase;font-size:.72rem;letter-spacing:.19em;line-height:1.25;pointer-events:auto}.brand small{display:block;font-size:.47rem;opacity:.6;letter-spacing:.24em;margin-top:.25rem}.brand-mark{position:relative;width:2.65rem;height:2.65rem;border:1px solid rgba(255,255,255,.55);border-radius:50%;display:grid;place-items:center;font-family:Italiana,serif;font-size:.8rem;letter-spacing:.08em}.brand-mark i{position:absolute;inset:.22rem;border:1px solid rgba(255,255,255,.15);border-radius:50%}.brand-mark--large{width:4.5rem;height:4.5rem;margin:0 auto 1.6rem;font-size:1rem}.scene-count{display:flex;align-items:center;gap:.6rem;font-size:.61rem;letter-spacing:.18em}.scene-count i{width:2.8rem;height:1px;background:rgba(255,255,255,.4)}.scene-count span:last-child{opacity:.45}
.experience,.scene{position:absolute;inset:0}.scene{overflow:hidden;display:flex;align-items:center;padding:7rem 8vw 8rem;opacity:0;visibility:hidden;transform:scale(1.055);transition:opacity 1.1s var(--ease),transform 1.45s var(--ease),visibility 1.1s;background-color:#13261e;background-image:linear-gradient(115deg,rgba(3,13,9,.65),rgba(4,22,16,.08)),var(--asset);background-position:center;background-size:cover}.scene::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 70% 38%,transparent 0 18%,rgba(1,8,5,.22) 75%),linear-gradient(to bottom,rgba(1,9,6,.25),transparent 35%,rgba(1,7,4,.55));z-index:1}.scene::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;opacity:.17;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E")}.scene.is-active{opacity:1;visibility:visible;transform:scale(1);z-index:5}.scene--welcome,.scene--final{justify-content:center;text-align:center;background:#184c42}.scene--welcome{--asset:url("welcome-panorama.webp")}.scene--arrival{--asset:url("priority-arrival.webp");background-color:#ad8a63;background-image:linear-gradient(100deg,rgba(6,17,13,.7),rgba(101,82,59,.22)),var(--asset)}.scene--lounge{--asset:url("lounge-access.webp");background-color:#65452f;background-image:linear-gradient(90deg,rgba(21,9,4,.2),rgba(20,9,4,.72)),var(--asset)}.scene--host{--asset:url("experience-host-bmw.webp");background-color:#727c6e}.scene--bites{--asset:url("welcome-light-bites.webp");background-color:#16878a;background-image:linear-gradient(90deg,rgba(4,40,37,.12),rgba(2,30,28,.73)),var(--asset)}.scene--novelty{--asset:url("novelty-stop-gls.webp");background-color:#7b3e25}.scene--transfer{--asset:url("accommodation-transfer.webp");background-color:#1e827e;background-image:linear-gradient(90deg,rgba(4,39,29,.12),rgba(3,23,17,.68)),var(--asset)}.scene--excursion{--asset:url("excursion-river-massage.webp");background-color:#1f5745}.scene--departure{--asset:url("departure-day.webp");background-color:#4e5360}.scene--final{--asset:url("final-cta.webp")}
.eyebrow{text-transform:uppercase;font-size:.62rem;font-weight:500;letter-spacing:.34em;color:#d7d8c5;margin:0 0 1.25rem}.welcome-copy,.final-copy{position:relative;z-index:5;width:min(760px,84vw);transform:translateY(1.5rem);opacity:0;transition:1s .35s var(--ease)}.is-active .welcome-copy,.is-active .final-copy{transform:none;opacity:1}.welcome-copy h1,.final-copy h2{font-family:Italiana,serif;font-weight:400;font-size:clamp(3.3rem,7vw,7.5rem);line-height:.87;letter-spacing:-.035em;margin:0;text-wrap:balance}.welcome-copy h1 em{font-weight:400;color:#e2c88f}.lead{font-family:Italiana,serif;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.55}.welcome-copy .lead{max-width:660px;margin:2rem auto .7rem}.support{max-width:560px;margin:0 auto 1.8rem;font-size:.84rem;line-height:1.7;color:rgba(255,255,255,.68)}.button{display:inline-flex;align-items:center;justify-content:center;gap:2rem;border:1px solid rgba(255,255,255,.15);background:var(--green);padding:1rem 1.5rem;min-width:13.5rem;text-decoration:none;text-transform:uppercase;font-size:.65rem;letter-spacing:.16em;box-shadow:0 14px 40px rgba(0,0,0,.2);transition:.4s var(--ease)}.button:hover,.button:focus-visible{background:#11714a;transform:translateY(-3px);box-shadow:0 18px 50px rgba(0,0,0,.35);outline:1px solid #fff;outline-offset:4px}.button span{font-size:1rem}.scene-whisper{position:absolute;z-index:5;right:2.8rem;top:47%;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.28em;font-size:.52rem;opacity:.56}
.story-card{position:relative;z-index:10;width:min(480px,43vw);padding:2.25rem 2.4rem 2rem;background:linear-gradient(145deg,rgba(8,18,13,.82),rgba(12,27,20,.58));border:1px solid rgba(255,255,255,.25);box-shadow:0 30px 80px rgba(0,0,0,.28);backdrop-filter:blur(13px);transform:translateX(-2.2rem);opacity:0;transition:1s .28s var(--ease)}.is-active .story-card{transform:none;opacity:1}.story-card--right{margin-left:auto;transform:translateX(2.2rem)}.story-card h2{font-family:Italiana,serif;font-weight:400;font-size:clamp(2.25rem,4vw,4.3rem);line-height:.96;margin:0 0 1.3rem;text-wrap:balance}.story-card>p:not(.eyebrow):not(.more){font-size:.91rem;line-height:1.75;color:rgba(255,255,255,.83);margin:0}.read-more{border:0;background:none;padding:.9rem 0 0;text-transform:uppercase;letter-spacing:.18em;font-size:.58rem;border-bottom:1px solid rgba(255,255,255,.3)}.read-more span{display:inline-block;margin-left:.55rem;transition:.3s}.read-more[aria-expanded=true] span{transform:rotate(180deg)}.read-more:focus-visible{outline:1px solid #fff;outline-offset:4px}.more{max-height:0;overflow:hidden;opacity:0;margin:0!important;font-size:.78rem;line-height:1.65;color:rgba(255,255,255,.67);transition:.5s var(--ease)}.story-card.is-expanded .more{max-height:9rem;opacity:1;margin-top:1rem!important}
.atmosphere,.architecture,.lounge-set,.coast,.excursion-visual{position:absolute;inset:0;z-index:0}.sun{position:absolute;width:28vw;height:28vw;border-radius:50%;right:12%;top:7%;background:radial-gradient(circle,#fff8ca 0,#efbf6d 22%,rgba(236,164,81,.15) 62%,transparent 70%);filter:blur(2px)}.ocean{position:absolute;left:0;right:0;bottom:0;height:41%;background:linear-gradient(#309895,#0b4d56 55%,#073840)}.ocean::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(175deg,transparent 0 22px,rgba(255,255,255,.09) 23px,transparent 26px);animation:water 9s linear infinite}.shore{position:absolute;bottom:-12%;left:-5%;width:80%;height:35%;background:#ccb27d;border-radius:50% 55% 0 0;transform:rotate(5deg);box-shadow:0 -10px 30px rgba(255,255,255,.2)}.mountains{position:absolute;left:-5%;right:0;bottom:38%;height:27%;background:linear-gradient(135deg,transparent 25%,#31554d 25% 48%,transparent 48%),linear-gradient(45deg,transparent 43%,#46665a 43% 67%,transparent 67%);opacity:.82}.cloud{position:absolute;width:31vw;height:3.8rem;border-radius:50%;background:rgba(255,255,255,.16);filter:blur(18px);animation:cloud 20s ease-in-out infinite alternate}.cloud--one{top:17%;left:8%}.cloud--two{top:30%;right:9%;animation-delay:-8s}.palm-shadow{position:absolute;left:-6%;bottom:-5%;width:38%;height:67%;background:radial-gradient(ellipse at 40% 20%,rgba(2,20,13,.7) 0 6%,transparent 7%),linear-gradient(73deg,transparent 46%,rgba(2,20,13,.65) 47% 50%,transparent 51%);filter:blur(2px);transform:rotate(-12deg)}
.architecture{background:linear-gradient(90deg,transparent 49%,rgba(255,255,255,.14) 50% 50.4%,transparent 51%),linear-gradient(#c7aa80 0 28%,transparent 28%),linear-gradient(100deg,#8d765b,#d0b995 55%,#315246)}.architecture i{position:absolute;top:28%;bottom:0;width:1px;background:rgba(255,255,255,.42)}.architecture i:nth-child(1){left:56%}.architecture i:nth-child(2){left:72%}.architecture i:nth-child(3){left:88%}.host{position:absolute;z-index:4;right:20%;bottom:13%;width:90px;height:290px;filter:drop-shadow(0 20px 20px rgba(0,0,0,.35));transform:translateY(20px);transition:1.2s .5s var(--ease)}.is-active .host{transform:none}.host .head{position:absolute;left:30px;top:0;width:38px;height:46px;border-radius:50%;background:#7b4c38}.host .body{position:absolute;left:18px;top:43px;width:65px;height:120px;background:#090c0b;clip-path:polygon(17% 0,82% 0,100% 100%,0 100%)}.host .legs{position:absolute;left:24px;top:158px;width:55px;height:130px;background:linear-gradient(90deg,#080a09 0 42%,transparent 43% 56%,#080a09 57%)}.host--female b{position:absolute;top:78px;left:-34px;width:160px;padding:1rem .4rem;background:#f0e8d9;color:#122119;text-align:center;font-size:.7rem;letter-spacing:.12em;box-shadow:0 8px 20px rgba(0,0,0,.2)}.host--female b::after{content:"";position:absolute;top:-11px;left:10%;width:80%;height:3px;background:#e7c42f}.host--male{right:15%;height:300px}.host--male .body::after{content:"";position:absolute;left:31px;top:0;width:4px;height:90px;background:#eee}.host--male .head::after{content:"";position:absolute;left:2px;top:15px;width:35px;height:8px;background:#0a0a0a;border-radius:4px}
.lounge-set{background:linear-gradient(180deg,#593d2b 0 62%,#2b1e18 62%)}.sofa{position:absolute;left:10%;bottom:18%;width:38%;height:19%;background:#a57854;border-radius:4rem 4rem 1rem 1rem;box-shadow:0 30px 50px rgba(0,0,0,.35)}.table{position:absolute;left:35%;bottom:10%;width:12%;height:12%;background:#412a1f;border-radius:50%}.lamp{position:absolute;left:15%;top:15%;width:13rem;height:13rem;background:radial-gradient(circle,#f4d791,rgba(218,163,92,.16) 55%,transparent 60%)}.bar{position:absolute;right:0;top:15%;width:33%;height:48%;background:linear-gradient(90deg,#25170f,#78523a);border-left:2px solid #c6a66a}.pier{position:absolute;inset:0;background:linear-gradient(#6ec5cb 0 55%,#15939a 55% 72%,#7a5332 72%)}.bar-top{position:absolute;right:8%;top:30%;width:30%;height:34%;background:linear-gradient(100deg,#715038,#2e211a);border-top:9px solid #cfb888}.glass-one,.glass-two{position:absolute;top:43%;width:2.2rem;height:3.5rem;border:2px solid rgba(255,255,255,.7);border-radius:0 0 .7rem .7rem;background:linear-gradient(transparent 45%,#e4b55a 46%)}.glass-one{right:26%}.glass-two{right:20%}
.vehicle{position:absolute;z-index:3;right:7%;bottom:16%;width:45vw;height:15vw;max-height:230px;background:linear-gradient(165deg,#171b1a 0 35%,#020303 36% 70%,#171918 71%);border-radius:45% 22% 12% 10%/45% 34% 22% 20%;box-shadow:0 24px 40px rgba(0,0,0,.55),inset 0 -5px 0 #222}.vehicle .glass{position:absolute;left:24%;top:8%;width:51%;height:38%;background:linear-gradient(135deg,#294046,#0e1719);clip-path:polygon(17% 0,79% 0,100% 100%,0 100%);border-bottom:2px solid #777}.vehicle i{position:absolute;width:19%;aspect-ratio:1;bottom:-19%;border:7px solid #111;border-radius:50%;background:radial-gradient(circle,#777 0 14%,#1c1d1d 15% 48%,#050505 49%)}.vehicle i:nth-of-type(1){left:14%}.vehicle i:nth-of-type(2){right:11%}.luggage{position:absolute;z-index:4;right:4%;bottom:12%;width:65px;height:80px;background:#1b1b18;border:1px solid #777;border-radius:4px}.eatery{position:absolute;inset:0;background:linear-gradient(180deg,#c06d3c 0 55%,#332017 55%)}.eatery span{position:absolute;right:14%;top:22%;padding:1rem 2rem;border:1px solid #f1d39f;letter-spacing:.3em;font-size:.8rem}.vehicle--gls{right:6%;bottom:10%;width:48vw}.coast{background:linear-gradient(120deg,#28654e 0 45%,#ba9d6e 46% 50%,#1d8d98 51%)}.road{position:absolute;inset:-10%;border:5vw solid #414b44;border-radius:47%;transform:rotate(14deg)}.moving-car{position:absolute;width:75px;height:32px;border-radius:45% 45% 22% 22%;background:#050706;box-shadow:0 7px 12px rgba(0,0,0,.4);left:35%;bottom:26%;animation:drive 10s linear infinite}.terminal{position:absolute;inset:0;background:linear-gradient(110deg,#2e3844,#806d5e);clip-path:polygon(0 0,100% 0,100% 74%,0 63%)}.terminal span{position:absolute;right:11%;top:22%;padding:1.1rem 2rem;border:1px solid rgba(255,255,255,.65);letter-spacing:.3em}.vehicle--departure{right:8%;bottom:9%}.luggage--departure{right:5%;bottom:8%}
.scene--excursion{padding-left:5vw}.story-card--excursion{align-self:flex-start;margin-top:3vh;width:min(450px,36vw)}.selector{position:absolute;z-index:10;right:3vw;top:15%;bottom:17%;width:min(240px,20vw);padding:1.2rem 1rem;background:rgba(4,18,12,.46);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(12px);overflow:auto}.selector>p{text-transform:uppercase;letter-spacing:.25em;font-size:.55rem;color:#d9c79c;margin:.2rem .6rem 1rem}.selector button{display:flex;width:100%;align-items:center;justify-content:space-between;border:0;border-top:1px solid rgba(255,255,255,.12);background:none;padding:.72rem .6rem;text-align:left;font-size:.7rem;letter-spacing:.08em;color:rgba(255,255,255,.65);transition:.25s}.selector button::after{content:"";width:4px;height:4px;border-radius:50%;background:currentColor}.selector button:hover,.selector button:focus-visible,.selector button.is-active{color:#fff;background:rgba(255,255,255,.08);outline:none}.selector button.is-active{color:#e7cc91}.excursion-visual{transition:.8s var(--ease);background:radial-gradient(circle at 62% 58%,rgba(154,218,159,.35),transparent 24%),linear-gradient(125deg,#14372e,#3b765c 56%,#122d26)}.excursion-visual::after{content:"";position:absolute;left:38%;right:21%;bottom:0;height:43%;background:linear-gradient(170deg,rgba(255,255,255,.45),#3d9285 45%,#163c34);clip-path:polygon(0 42%,100% 0,100% 100%,0 100%)}.visual-orb{position:absolute;right:28%;top:26%;width:18vw;height:18vw;border-radius:50%;background:radial-gradient(circle,#f1d99d 0,rgba(218,188,121,.15) 56%,transparent 60%)}.attraction-caption{position:absolute;z-index:10;left:49%;bottom:18%;width:min(350px,27vw);padding:1.1rem 1.3rem;border-left:1px solid #d6bb7e;background:rgba(3,16,11,.52);backdrop-filter:blur(8px);display:flex;gap:1rem}.attraction-caption span{color:#d6bb7e;font-family:Italiana;font-size:1.6rem}.attraction-caption p{margin:0;font-size:.73rem;line-height:1.6}.excursion-visual[data-option=waterfalls]{filter:hue-rotate(15deg) brightness(1.18)}.excursion-visual[data-option=atv]{filter:sepia(.4) brightness(.85)}.excursion-visual[data-option=river-rafting]{filter:hue-rotate(-18deg)}.excursion-visual[data-option=jet-skiing]{filter:hue-rotate(45deg) brightness(1.35)}.excursion-visual[data-option=snorkeling]{filter:hue-rotate(65deg) saturate(1.4)}.excursion-visual[data-option=cultural-visit]{filter:sepia(.65) brightness(.82)}.excursion-visual[data-option=private-dining]{filter:sepia(.9) brightness(.65)}
.final-copy h2{font-size:clamp(3.2rem,6vw,6rem)}.final-copy .lead{color:#e4cd9a;margin:1.5rem 0 .5rem}.final-copy>p:last-of-type{max-width:550px;margin:0 auto 1.8rem;color:rgba(255,255,255,.72);font-size:.85rem;line-height:1.7}.journey-controls{position:fixed;z-index:40;left:2.6rem;right:2.6rem;bottom:1.5rem;height:3.4rem;display:grid;grid-template-columns:3.4rem 1fr 3.4rem;gap:1rem;align-items:center}.arrow{width:3.4rem;height:3.4rem;border:1px solid rgba(255,255,255,.32);background:rgba(5,17,12,.25);backdrop-filter:blur(8px);border-radius:50%;font-size:1.1rem;transition:.3s}.arrow:hover,.arrow:focus-visible{background:var(--green);border-color:#fff;outline:none}.arrow:disabled{opacity:.22}.timeline{height:3.4rem;display:flex;align-items:center;justify-content:center;overflow-x:auto;scrollbar-width:none}.timeline::-webkit-scrollbar{display:none}.timeline button{position:relative;flex:1;border:0;border-top:1px solid rgba(255,255,255,.24);background:none;padding:.7rem .2rem 0;text-transform:uppercase;white-space:nowrap;letter-spacing:.11em;font-size:.48rem;color:rgba(255,255,255,.48)}.timeline button::before{content:"";position:absolute;left:50%;top:-3px;width:5px;height:5px;border-radius:50%;background:#888;transform:translateX(-50%);transition:.4s}.timeline button.is-active{color:#fff}.timeline button.is-active::before{width:9px;height:9px;top:-5px;background:#d9bd7f;box-shadow:0 0 0 5px rgba(217,189,127,.12)}.cursor{position:fixed;z-index:100;left:0;top:0;width:34px;height:34px;border:1px solid rgba(255,255,255,.55);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);transition:width .25s,height .25s,border-color .25s}.cursor span{position:absolute;left:50%;top:50%;width:3px;height:3px;background:#fff;border-radius:50%;transform:translate(-50%,-50%)}.cursor.is-hovering{width:52px;height:52px;border-color:#d9bd7f}
@keyframes cloud{to{transform:translateX(8vw) scale(1.1)}}@keyframes water{to{transform:translateX(4%)}}@keyframes drive{0%{transform:translate(-250px,80px) rotate(-20deg);opacity:0}10%,85%{opacity:1}55%{transform:translate(28vw,-7vw) rotate(-12deg)}100%{transform:translate(65vw,-11vw) rotate(-4deg);opacity:0}}
@media(max-width:800px){body,button{cursor:auto}.cursor{display:none}.site-header{padding:1rem 1.2rem}.brand>span:last-child{display:none}.scene-count{display:none}.scene{padding:6rem 1.2rem 7.4rem;align-items:flex-end}.welcome-copy,.final-copy{width:100%}.welcome-copy h1{font-size:clamp(3rem,15vw,5rem)}.welcome-copy .lead{font-size:1rem}.support{font-size:.72rem}.scene-whisper{display:none}.story-card,.story-card--right,.story-card--excursion{width:100%;padding:1.4rem;margin:0;max-height:57vh;overflow:auto}.story-card h2{font-size:2.45rem}.story-card>p:not(.eyebrow):not(.more){font-size:.78rem}.vehicle{width:78vw;height:27vw;right:-8%;bottom:51%}.host{right:14%;bottom:48%;transform:scale(.7);transform-origin:bottom}.journey-controls{left:1rem;right:1rem;bottom:.75rem;grid-template-columns:2.8rem 1fr 2.8rem;gap:.5rem}.arrow{width:2.8rem;height:2.8rem}.timeline{justify-content:flex-start}.timeline button{min-width:34px;font-size:0}.timeline button::before{top:-3px}.selector{right:1.2rem;left:1.2rem;top:12%;bottom:auto;width:auto;display:block;white-space:nowrap;overflow-x:auto;padding:.6rem}.selector>p{display:none}.selector div{display:flex}.selector button{width:auto;border-top:0;border-left:1px solid rgba(255,255,255,.12);padding:.65rem .8rem}.selector button::after{display:none}.scene--excursion{padding-left:1.2rem}.story-card--excursion{align-self:flex-end;margin-bottom:6.2rem;max-height:34vh}.attraction-caption{left:1.2rem;bottom:5.5rem;width:calc(100% - 2.4rem);padding:.7rem 1rem}.attraction-caption p{font-size:.65rem}.final-copy h2{font-size:3.4rem}.luggage{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.cursor{display:none}body,button{cursor:auto}.scene{transform:none}}

/* Cinematic asset layer: generated full-screen photography replaces the original
   CSS study objects. The hidden markup remains only to preserve the approved DOM. */
.scene{
  background-image:linear-gradient(105deg,rgba(2,12,8,.58) 0%,rgba(3,13,9,.12) 56%,rgba(2,10,7,.3) 100%),var(--asset);
  background-position:calc(50% + var(--parallax-x,0px)) calc(50% + var(--parallax-y,0px));
  background-repeat:no-repeat;background-size:cover;
}
.scene--lounge,.scene--bites,.scene--transfer{background-image:linear-gradient(255deg,rgba(2,10,7,.62),rgba(2,10,7,.04) 65%),var(--asset)}
.scene--excursion{background-image:none;background-color:#10281f}
.scene--final{background-image:linear-gradient(rgba(2,15,10,.38),rgba(2,12,8,.5)),var(--asset)}
.atmosphere,.architecture,.host,.lounge-set,.vehicle,.luggage,.pier,.eatery,.coast,.terminal{display:none!important}
.excursion-visual{display:block;inset:-2%;background-size:cover;background-position:center;filter:none!important;transform:scale(1.02);transition:opacity .48s ease,transform 1.1s var(--ease),background-image .2s linear}
.scene--excursion.is-active .excursion-visual{transform:scale(1)}
.excursion-visual::after,.visual-orb,.visual-line{display:none!important}
.scene::before{background:radial-gradient(circle at 58% 44%,transparent 0 20%,rgba(1,7,4,.18) 76%),linear-gradient(to bottom,rgba(1,8,5,.18),transparent 31%,rgba(1,7,4,.52))}
.scene.is-switching .excursion-visual{opacity:.15;transform:scale(1.025)}
@media(max-width:800px){.scene{background-position:center;background-image:linear-gradient(to top,rgba(2,10,7,.72),rgba(2,10,7,.08) 68%),var(--asset)}.scene--excursion{background-image:none}.excursion-visual{inset:0;background-position:center}}
@media(prefers-reduced-motion:reduce){.scene{background-position:center!important}.excursion-visual{transform:none!important}}

/* Refinement pass */
.brand-logo{width:2.8rem;height:2.8rem;object-fit:contain;flex:0 0 auto;filter:brightness(1.55) saturate(.8);background:transparent}
.final-logo{display:block;width:5.6rem;height:5.6rem;object-fit:contain;margin:0 auto 1.25rem;filter:brightness(2.2) saturate(.35);background:transparent}
.scene-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.55rem}.scene-meta .scene-count{display:flex}.scene-meta p{margin:0;text-transform:uppercase;font-size:.48rem;letter-spacing:.25em;color:rgba(255,255,255,.54)}
.welcome-copy h1,.welcome-copy h1 em,.final-copy h2{color:#e2c88f;font-style:normal}.welcome-copy h1,.final-copy h2{font-family:"Cormorant Garamond",Garamond,serif;font-weight:500;letter-spacing:-.035em}.welcome-copy .lead{max-width:700px;font-family:"EB Garamond",Garamond,serif;font-size:clamp(1.1rem,1.72vw,1.45rem);line-height:1.48;letter-spacing:.005em}.final-copy .lead{font-family:"EB Garamond",Garamond,serif;font-size:clamp(1.18rem,1.85vw,1.55rem);line-height:1.45;letter-spacing:.004em}.final-copy>p:last-of-type{font-family:"EB Garamond",Garamond,serif;font-size:clamp(.98rem,1.3vw,1.14rem);line-height:1.58}.is-active .final-copy{transform:translateY(-.35rem)}.scene-whisper{display:none}
.story-card--transfer h2{font-size:clamp(2.05rem,3.35vw,3.65rem)}
.timeline{overflow:visible;gap:.15rem}.timeline button{font-size:.54rem;letter-spacing:.085em;padding-left:.08rem;padding-right:.08rem;cursor:default}.timeline button:disabled{opacity:1}.timeline.is-unlocked button{cursor:none}.timeline.is-unlocked button:hover,.timeline.is-unlocked button:focus-visible{color:#e7cc91;outline:none}.timeline.is-unlocked button:hover::before,.timeline.is-unlocked button:focus-visible::before{background:#e7cc91;transform:translateX(-50%) scale(1.45)}
.selector{bottom:auto;height:auto;max-height:calc(100vh - 11rem);overflow-y:auto;padding-bottom:.8rem}.selector-note{margin:.65rem .6rem 0!important;padding-top:.8rem;border-top:1px solid rgba(226,200,143,.24);font-size:.74rem!important;line-height:1.52;letter-spacing:.012em!important;text-transform:none!important;color:rgba(240,226,197,.76)!important;white-space:normal}
.ambient{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}.ambient::before,.ambient::after{content:"";position:absolute;will-change:transform,opacity}
.ambient--coast::before{left:-20%;right:-20%;bottom:-14%;height:38%;background:radial-gradient(ellipse at 50% 70%,rgba(218,244,239,.07),transparent 66%);filter:blur(18px);mix-blend-mode:screen;animation:ambient-wave 120s ease-in-out infinite}
.ambient--coast::after{left:-20%;top:8%;width:58%;height:22%;border-radius:50%;background:rgba(255,255,255,.035);filter:blur(28px);animation:ambient-cloud 120s linear infinite}
.ambient--foliage::before{right:-5%;top:-8%;width:31%;height:54%;transform-origin:100% 0;background:radial-gradient(ellipse at 70% 8%,rgba(167,203,151,.08),transparent 62%);animation:ambient-sway 120s ease-in-out infinite}
.ambient--lamp::before{left:7%;top:10%;width:37%;height:58%;background:radial-gradient(circle,rgba(231,174,91,.11),transparent 64%);mix-blend-mode:screen;animation:ambient-glow 120s ease-in-out infinite}.ambient--novelty::before{left:auto;right:28%;top:13%;width:35%;height:45%}
.ambient--clouds::before{left:-30%;top:2%;width:55%;height:24%;border-radius:50%;background:rgba(255,255,255,.04);filter:blur(35px);animation:ambient-cloud 120s linear infinite}
@keyframes ambient-wave{0%{transform:translate3d(-2%,0,0)}50%{transform:translate3d(2%,-1.5%,0)}100%{transform:translate3d(-2%,0,0)}}
@keyframes ambient-cloud{0%{transform:translate3d(-8%,0,0);opacity:.2}50%{opacity:.65}100%{transform:translate3d(170%,1%,0);opacity:.2}}
@keyframes ambient-sway{0%,100%{transform:rotate(-.35deg)}50%{transform:rotate(.45deg)}}
@keyframes ambient-glow{0%,100%{opacity:.52}50%{opacity:.9}}
@media(max-width:1100px){.timeline button{font-size:.48rem;letter-spacing:.045em}.journey-controls{left:1.5rem;right:1.5rem}}
@media(max-width:800px){.scene-meta{display:none}.brand-logo{width:2.55rem;height:2.55rem}.timeline{overflow-x:auto;gap:0}.timeline button{min-width:34px;font-size:0}.selector{top:12%;max-height:none;overflow-x:auto;overflow-y:hidden;padding-bottom:.5rem}.selector-note{display:block;min-width:100%;margin-top:.35rem!important;padding-top:.5rem;font-size:.62rem!important;line-height:1.45}.timeline.is-unlocked button{cursor:auto}.final-logo{width:4.6rem;height:4.6rem}.welcome-copy .lead{font-size:1.02rem}.final-copy .lead{font-size:1.12rem}.final-copy>p:last-of-type{font-size:.91rem}}
@media(prefers-reduced-motion:reduce){.ambient{display:none!important}}

/* Welcome and final CTA editorial typography system. */
.luxe-hero-title{
  font-family:"Prata",Didot,"Times New Roman",serif!important;
  font-weight:400!important;
  letter-spacing:-.025em!important;
  color:#e8d6ac!important;
  text-rendering:optimizeLegibility;
}
.luxe-hero-title em{color:inherit!important;font:inherit!important}
.luxe-hero-lead,.luxe-hero-support{
  font-family:"Cormorant Garamond",Garamond,serif!important;
  font-weight:400;
  letter-spacing:.012em;
  color:rgba(245,232,203,.9)!important;
  line-height:1.55!important;
  text-rendering:optimizeLegibility;
}
.welcome-copy .luxe-hero-lead{font-size:clamp(1.12rem,1.72vw,1.46rem);max-width:710px;margin-top:2.1rem}
.final-copy .luxe-hero-lead{font-size:clamp(1.2rem,1.85vw,1.58rem);margin-top:1.55rem}
.final-copy .luxe-hero-support{font-size:clamp(1rem,1.32vw,1.16rem);max-width:570px;margin:0 auto 1.9rem;color:rgba(245,232,203,.78)!important}
@media(max-width:800px){.welcome-copy .luxe-hero-lead{font-size:1.08rem;line-height:1.5!important}.final-copy .luxe-hero-lead{font-size:1.16rem}.final-copy .luxe-hero-support{font-size:.94rem;line-height:1.5!important}}

/* Expanded pre-arrival journey and calm sliding guide rail. */
.scene--onboarding{--asset:url("seamless-onboarding.png")}
.scene--consultation{--asset:url("consultation.png")}
.scene--jamaica-arrival{--asset:url("arrival-in-jamaica.png")}
.scene--welcome{
  filter:saturate(1.09) contrast(1.045);
  background-image:linear-gradient(105deg,rgba(2,12,8,.5) 0%,rgba(3,13,9,.08) 56%,rgba(2,10,7,.25) 100%),var(--asset);
}
.scene--welcome .welcome-copy{filter:none}
.timeline{overflow-x:hidden!important;justify-content:flex-start!important;scroll-behavior:smooth;gap:0!important}
.timeline button{flex:0 0 12.5%;min-width:8.2rem;font-size:.55rem;letter-spacing:.075em}
@media(max-width:1100px){.timeline button{flex-basis:16.666%;min-width:7.2rem;font-size:.5rem}}
@media(max-width:800px){.timeline{overflow-x:hidden!important}.timeline button{flex:0 0 29%;min-width:5.4rem;font-size:.45rem;letter-spacing:.04em}.scene--onboarding,.scene--consultation,.scene--jamaica-arrival{background-position:center}.scene--consultation{background-position:38% center}}
@media(prefers-reduced-motion:reduce){.timeline{scroll-behavior:auto}}

/* Phone-only viewing guidance. */
.phone-prompt[hidden]{display:none}
.phone-prompt{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:1.25rem;background:rgba(2,10,7,.72);backdrop-filter:blur(9px)}
.phone-prompt__panel{width:min(390px,100%);padding:2rem 1.6rem 1.55rem;text-align:center;border:1px solid rgba(198,166,106,.58);background:linear-gradient(145deg,rgba(7,27,19,.98),rgba(3,14,10,.98));box-shadow:0 28px 80px rgba(0,0,0,.5)}
.phone-prompt__panel .eyebrow{margin-bottom:.8rem;color:rgba(226,200,143,.82)}
.phone-prompt__panel>p:not(.eyebrow){margin:0 auto 1.45rem;font-family:"Cormorant Garamond",Garamond,serif;font-size:1.28rem;line-height:1.45;color:#f3ebdc}
.phone-prompt__panel .button{min-width:7rem;padding:.8rem 1.25rem}
