:root{--forest:#123c34;--forest-2:#092a25;--cream:#f5f1e8;--paper:#fffdf8;--ink:#15322d;--gold:#d9a84e;--amber:#ef8d45;--sky:#87c3c6;--line:rgba(20,61,53,.16);--serif:'Cormorant Garamond',serif;--sans:'Manrope',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);overflow-x:hidden}body.menu-open{overflow:hidden}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.hidden{display:none!important}.cursor-glow{position:fixed;z-index:0;width:28rem;height:28rem;border-radius:50%;background:radial-gradient(circle,rgba(234,181,84,.12),transparent 68%);transform:translate(-50%,-50%);pointer-events:none;opacity:0;transition:opacity .3s}
.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:20px 4.5vw;color:white;transition:.35s}.site-header.scrolled{padding-block:12px;background:rgba(9,42,37,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.1)}.brand{display:flex;align-items:center;gap:10px;font-size:.82rem;font-weight:700;letter-spacing:.18em}.brand img{width:34px;height:34px;object-fit:contain}.nav{display:flex;gap:32px;font-size:.8rem}.nav a{opacity:.78;transition:.2s}.nav a:hover{opacity:1}.header-cta{font-size:.78rem;border-bottom:1px solid;padding:6px 0}.menu-toggle{display:none;background:none;border:0}.menu-toggle span{display:block;width:26px;height:1px;background:#fff;margin:7px}
.hero{position:relative;min-height:100svh;color:white;display:flex;align-items:center;padding:130px 7vw 90px;overflow:hidden}.hero-media{position:absolute;inset:-8%;background:url('../photos/hero-lounger.png') center 55%/cover;will-change:transform}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,27,24,.8) 0%,rgba(6,30,27,.32) 55%,rgba(4,20,18,.2)),linear-gradient(0deg,rgba(3,21,18,.7),transparent 45%)}.hero-content{position:relative;z-index:2;max-width:850px}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;font-weight:700;display:flex;align-items:center;gap:12px}.eyebrow span{width:36px;height:1px;background:var(--gold)}h1,.display{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:.86;margin:26px 0}h1{font-size:clamp(4.4rem,9.8vw,9rem)}h1 em,.display em{font-weight:500;color:#f0bf6b}.hero-lead{max-width:620px;font-size:clamp(1rem,1.4vw,1.22rem);line-height:1.75;color:rgba(255,255,255,.82)}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:36px}.btn{border:0;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:17px 25px;font-weight:700;font-size:.8rem;cursor:pointer;transition:transform .25s,box-shadow .25s,background .25s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:linear-gradient(135deg,#f1bd63,#e88942);color:#17372f;box-shadow:0 12px 35px rgba(226,145,60,.25)}.btn-dark{background:var(--forest);color:white;width:100%}.text-link{display:flex;align-items:center;gap:10px;font-size:.82rem}.play{display:grid;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.45);border-radius:50%}.glass{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(18px);box-shadow:0 25px 70px rgba(0,0,0,.16)}.hero-card{position:absolute;z-index:2;right:4vw;bottom:7vh;padding:25px 28px;display:flex;gap:20px;align-items:center;border-radius:4px}.hero-card .card-number{font-family:var(--serif);font-size:3rem;color:#f0bf6b}.hero-card strong{display:block;font-size:.83rem}.hero-card p{font-size:.68rem;opacity:.65;margin:5px 0 0}.scroll-note{position:absolute;z-index:2;left:2.1vw;bottom:7vh;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.15em;font-size:.54rem;opacity:.55;display:flex;align-items:center;gap:10px}.scroll-note span{height:42px;width:1px;background:white}.orb{position:absolute;border-radius:50%;filter:blur(18px);opacity:.3;mix-blend-mode:screen;animation:float 9s ease-in-out infinite}.orb-one{width:280px;height:280px;background:#f59b47;right:5%;top:8%}.orb-two{width:190px;height:190px;background:#7ad0d0;left:42%;bottom:4%;animation-delay:-4s}@keyframes float{50%{transform:translate(30px,25px) scale(1.12)}}
.section{padding:130px 7vw}.section-kicker{color:#9c7540}.display{font-size:clamp(3.4rem,6.3vw,6.7rem)}.manifest-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:8vw;align-items:end}.manifest-copy{font-size:1rem;line-height:1.85}.manifest-copy p:first-child{font-size:1.2rem}.experience-grid{margin-top:80px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.experience-card{padding:40px 40px 42px 0}.experience-card+article{padding-left:40px;border-left:1px solid var(--line)}.experience-card span{font-size:.65rem;color:#ad8145}.experience-card h3{font-family:var(--serif);font-size:2.1rem;margin:18px 0 12px}.experience-card p{font-size:.84rem;line-height:1.7;opacity:.7}
.section-dark{background:var(--forest-2);color:white}.place{display:grid;grid-template-columns:1.05fr .95fr;min-height:760px}.place-image{overflow:hidden}.place-image img{height:100%;object-fit:cover;transition:transform 1.2s}.place-image:hover img{transform:scale(1.035)}.place-copy{padding:110px 7vw 80px;align-self:center}.section-kicker.light{color:#e3b560}.place-copy .display{font-size:clamp(3.4rem,5.4vw,5.8rem)}.place-copy>p{max-width:580px;line-height:1.9;color:rgba(255,255,255,.67)}.place-facts{display:flex;gap:40px;margin-top:60px;border-top:1px solid rgba(255,255,255,.14);padding-top:30px}.place-facts div{display:flex;flex-direction:column}.place-facts strong{font-family:var(--serif);font-size:2.7rem;color:#e3b560}.place-facts span{font-size:.62rem;opacity:.6}
.program-head,.pricing-head{display:grid;grid-template-columns:1fr .45fr;align-items:end;gap:10vw}.program-head>p,.pricing-head>p{line-height:1.8;opacity:.7;margin-bottom:35px}.day-tabs{display:flex;border-bottom:1px solid var(--line);margin:40px 0 55px}.day-tab{display:flex;align-items:center;gap:15px;background:none;border:0;padding:20px 45px 20px 0;margin-right:50px;color:var(--ink);opacity:.35;cursor:pointer;border-bottom:2px solid transparent}.day-tab span{font-family:var(--serif);font-size:3.4rem}.day-tab small{text-align:left;max-width:70px}.day-tab.active{opacity:1;border-color:var(--gold)}.timeline{max-width:980px;margin-left:auto}.timeline-item{position:relative;display:grid;grid-template-columns:20px 1fr;gap:28px;padding:22px 0;border-bottom:1px solid var(--line)}.timeline-item i{width:9px;height:9px;margin-top:9px;border-radius:50%;border:2px solid var(--gold)}.timeline-item span{font-size:.62rem;text-transform:uppercase;letter-spacing:.13em;color:#9e7b49}.timeline-item h3{font-family:var(--serif);font-size:1.65rem;font-weight:600;margin:7px 0}.timeline-item ul{columns:2;padding-left:18px;font-size:.78rem;line-height:2;opacity:.72}.timeline-item.featured{background:rgba(218,169,78,.1);padding:30px 32px;margin-inline:-32px;border-radius:8px}.program-note{text-align:right;font-size:.66rem;opacity:.5;margin-top:20px}
.photo-story{display:grid;grid-template-columns:.8fr 1.2fr;grid-template-rows:420px 420px;background:var(--forest-2);gap:3px}.photo-tile{position:relative;overflow:hidden}.photo-tile.tall{grid-row:span 2}.photo-tile img{height:100%;object-fit:cover;filter:saturate(.85);transition:transform 1s,filter .7s}.photo-tile:hover img{transform:scale(1.04);filter:saturate(1)}.photo-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,30,27,.65),transparent 55%)}.photo-tile span{position:absolute;z-index:2;left:32px;bottom:25px;color:white;font-family:var(--serif);font-size:2.8rem;font-style:italic}
.for-whom{text-align:center}.for-whom .section-kicker{justify-content:center}.audience-list{max-width:1050px;margin:70px auto 0;text-align:left}.audience-row{display:grid;grid-template-columns:80px .5fr 1fr;align-items:center;gap:30px;padding:30px 0;border-top:1px solid var(--line)}.audience-row:last-child{border-bottom:1px solid var(--line)}.audience-row>span{font-size:.62rem;color:#9d7744}.audience-row h3{font-family:var(--serif);font-size:2rem;margin:0}.audience-row p{line-height:1.7;font-size:.85rem;opacity:.68}
.pricing{background:#ebe5d8}.price-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:65px;align-items:stretch}.price-card{grid-column:span 2;position:relative;background:var(--paper);padding:30px;border:1px solid rgba(19,60,52,.08);display:flex;flex-direction:column;transition:transform .35s,box-shadow .35s}.price-card:nth-child(4){grid-column:2/span 2}.price-card:hover{transform:translateY(-8px);box-shadow:0 24px 60px rgba(22,60,53,.1)}.featured-price{background:var(--forest);color:white;transform:translateY(-12px)}.featured-price:hover{transform:translateY(-18px)}.popular{position:absolute;top:-28px;left:0;right:0;background:var(--gold);color:var(--forest);padding:8px;text-align:center;text-transform:uppercase;letter-spacing:.16em;font-size:.55rem}.price-top{display:flex;justify-content:space-between;gap:10px;text-transform:uppercase;letter-spacing:.12em;font-size:.57rem}.availability{color:#a16d38;background:#f4e6cd;padding:5px 8px;border-radius:100px;white-space:nowrap}.availability.unlimited{color:#4a7a67;background:#e6eee9}.price-card h3{font-family:var(--serif);font-size:2.1rem;margin:30px 0 12px}.price{font-family:var(--serif);font-size:3.5rem;white-space:nowrap}.price small{font-size:1.5rem}.price-card ul{padding:20px 0 15px;list-style:none;border-top:1px solid var(--line);margin-top:20px;min-height:165px}.price-card li{position:relative;padding:7px 0 7px 20px;font-size:.73rem;line-height:1.4;opacity:.75}.price-card li:before{content:'•';position:absolute;left:2px;color:var(--gold)}.room-link{font-size:.69rem;text-decoration:underline;margin:0 0 20px}.featured-price .availability{background:rgba(255,255,255,.12);color:#f1c475}.featured-price ul{border-color:rgba(255,255,255,.15)}.sharing-note{max-width:1050px;margin:70px auto 0;display:grid;grid-template-columns:80px 1fr;gap:28px;align-items:center;padding:32px;border:1px solid var(--line);background:rgba(255,255,255,.32)}.sharing-note>span{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--forest);color:white;font-size:1.5rem}.sharing-note h3{font-family:var(--serif);font-size:1.8rem;margin:0 0 8px}.sharing-note p{font-size:.8rem;line-height:1.7;opacity:.68;margin:0}
.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw}.faq .display{font-size:clamp(3rem,5vw,5.4rem)}.accordion details{border-top:1px solid var(--line)}.accordion details:last-child{border-bottom:1px solid var(--line)}.accordion summary{list-style:none;padding:25px 0;display:flex;justify-content:space-between;align-items:center;font-family:var(--serif);font-size:1.45rem;cursor:pointer}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-family:var(--sans);font-size:1.2rem;transition:transform .25s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion p{max-width:650px;margin:-5px 0 25px;font-size:.84rem;line-height:1.75;opacity:.65}
.booking{padding:120px 7vw;display:grid;grid-template-columns:1fr .8fr;gap:10vw;align-items:center;position:relative;overflow:hidden}.booking:before{content:"";position:absolute;width:650px;height:650px;border-radius:50%;background:radial-gradient(circle,rgba(238,161,70,.2),transparent 65%);left:-150px;bottom:-300px}.booking-copy{position:relative}.booking-copy .display{font-size:clamp(3.2rem,5.3vw,5.7rem)}.booking-copy>p{max-width:580px;line-height:1.8;color:rgba(255,255,255,.65)}.booking-form{padding:36px;border-radius:8px}.booking-form>label{display:block;margin-bottom:22px}.booking-form label>span,.booking-form legend{display:block;font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.62);margin-bottom:9px}.booking-form input,.booking-form select{width:100%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:white;padding:14px 15px;outline:none;border-radius:3px}.booking-form select option{color:#17372f}.booking-form input:focus,.booking-form select:focus{border-color:#e8b45b}.booking-form fieldset{border:0;padding:0;margin:0 0 22px}.booking-form .radio{display:inline-block;margin:0 6px 7px 0}.booking-form .radio input{position:absolute;opacity:0}.booking-form .radio span{display:block;text-transform:none;letter-spacing:0;border:1px solid rgba(255,255,255,.17);padding:9px 11px;border-radius:100px;cursor:pointer}.booking-form .radio input:checked+span{background:#e8b45b;color:#17372f;border-color:#e8b45b}.booking-form .consent{display:flex;gap:10px;align-items:flex-start}.booking-form .consent input{width:auto;margin-top:2px}.booking-form .consent span{text-transform:none;letter-spacing:0;line-height:1.45}.booking-form .consent a{text-decoration:underline}.booking-form .btn{width:100%}footer{background:#071e1b;color:white;padding:30px 5vw;display:flex;align-items:center;justify-content:space-between;font-size:.68rem}footer p{opacity:.5}footer>div{display:flex;gap:20px;opacity:.6}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){.nav{display:none}.menu-toggle{display:block}.nav.open{position:fixed;inset:0;background:rgba(5,32,28,.97);display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--serif);font-size:2.5rem}.header-cta{display:none}.manifest-grid,.program-head,.pricing-head,.faq,.booking{grid-template-columns:1fr}.manifest-copy{max-width:700px}.place{grid-template-columns:1fr}.place-image{height:600px}.price-grid{grid-template-columns:repeat(2,1fr)}.price-card,.price-card:nth-child(4){grid-column:auto}.featured-price{transform:none}.booking{gap:60px}.booking-form{max-width:700px}.hero-card{display:none}}
@media(max-width:700px){.site-header{padding:14px 20px}.hero{padding:115px 22px 70px}.hero-media{background-position:58% center}.hero-content{margin-top:auto}.hero-actions{align-items:flex-start;flex-direction:column}.scroll-note{display:none}.section{padding:90px 22px}.display{line-height:.92}.manifest-grid{gap:20px}.experience-grid{grid-template-columns:1fr}.experience-card,.experience-card+article{padding:28px 0;border-left:0;border-bottom:1px solid var(--line)}.place-image{height:500px}.place-copy{padding:85px 22px}.place-facts{gap:22px;flex-wrap:wrap}.day-tab{margin-right:18px;padding-right:18px}.timeline-item.featured{margin-inline:-10px;padding:25px 10px}.timeline-item ul{columns:1}.photo-story{display:flex;overflow-x:auto}.photo-tile,.photo-tile.tall{min-width:86vw;height:570px}.audience-row{grid-template-columns:40px 1fr;gap:12px}.audience-row p{grid-column:2}.price-grid{grid-template-columns:1fr;gap:34px}.price-card,.price-card:nth-child(4){grid-column:1}.featured-price{margin-top:25px}.sharing-note{grid-template-columns:1fr}.booking{padding:90px 22px}.booking-form{padding:24px 18px}.booking-form .radio{display:block}.booking-form .radio span{width:100%}footer{flex-direction:column;gap:20px;text-align:center}.cursor-glow{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orb{animation:none}.reveal{opacity:1;transform:none;transition:none}.hero-media{transform:none!important}*{transition-duration:.01ms!important}}

/* UI UX Pro Max — vibrant editorial redesign */
:root{--forest:#18181b;--forest-2:#0b0b0d;--cream:#fafafa;--paper:#fff;--ink:#09090b;--gold:#f6c453;--amber:#ff7a59;--pink:#ec4899;--lime:#d9ff68;--sky:#6ed7dc;--line:rgba(9,9,11,.13);--serif:'Lora',serif;--sans:'Raleway',sans-serif}
body{background:var(--cream);color:var(--ink)}
.site-header{top:14px;left:3vw;width:94vw;padding:10px 14px 10px 20px;color:var(--ink);background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.72);border-radius:18px;box-shadow:0 10px 40px rgba(0,0,0,.09);backdrop-filter:blur(20px)}
.site-header.scrolled{top:8px;padding-block:8px;background:rgba(255,255,255,.95);border:1px solid rgba(9,9,11,.08);border-radius:18px}
.brand-full img{width:138px;height:50px;object-fit:contain;mix-blend-mode:multiply}.nav a{opacity:.62}.nav a:hover{opacity:1;color:var(--pink)}
.header-cta{border:0;background:var(--ink);color:#fff;border-radius:12px;padding:13px 18px;transition:.25s}.header-cta:hover{background:var(--pink)}
.hero{padding-top:150px}.hero-shade{background:linear-gradient(90deg,rgba(7,7,9,.84) 0%,rgba(10,10,12,.34) 56%,rgba(4,4,5,.12)),linear-gradient(0deg,rgba(7,7,9,.72),transparent 48%)}
.event-badge{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;padding:10px 14px;border-radius:100px;background:var(--lime);color:var(--ink);font-size:.69rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;box-shadow:0 12px 30px rgba(217,255,104,.2)}.event-badge span{color:var(--pink)}
.eyebrow,.section-kicker{font-size:.72rem;font-weight:800}.eyebrow span{background:var(--pink)}
h1,.display{font-family:var(--serif);font-weight:600;letter-spacing:-.05em;line-height:.91}h1{font-family:var(--sans);font-size:clamp(4.2rem,9.2vw,8.6rem);font-weight:800;text-transform:uppercase;letter-spacing:-.075em}h1 em{display:inline-block;font-family:var(--serif);font-weight:500;text-transform:none;letter-spacing:-.05em;color:var(--lime);padding-right:.06em}.display em{color:var(--pink)}
.btn{min-height:48px;border-radius:12px;transition:transform .2s ease-out,box-shadow .2s ease-out,background .2s ease-out}.btn:active{transform:scale(.97)}.btn-primary{background:var(--pink);color:#fff;box-shadow:0 12px 35px rgba(236,72,153,.28)}.btn-primary:hover{background:#d93687}.btn-dark{background:var(--ink)}
.hero-card{border-radius:18px;background:rgba(255,255,255,.14)}.hero-card .card-number{color:var(--lime)}.orb-one{background:var(--pink)}.orb-two{background:var(--sky)}
.section-kicker{color:#b32c72}.experience-grid{border:0;gap:16px}.experience-card,.experience-card+article{padding:30px;border:1px solid var(--line);border-radius:24px;background:white}.experience-card span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--lime);color:var(--ink);font-weight:800}.experience-card:nth-child(2) span{background:#ffd6ea}.experience-card:nth-child(3) span{background:#c9f3f5}
.place{margin:0 2vw;border-radius:32px;overflow:hidden;background:var(--forest-2)}.section-kicker.light{color:var(--lime)}.place-copy .display em{color:#ff91c7}.place-facts strong{color:var(--lime)}
.day-tabs{gap:12px;border:0}.day-tab{min-height:74px;margin:0;padding:14px 22px;border:1px solid var(--line);border-radius:18px;opacity:.55}.day-tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}.day-tab.active span{color:var(--lime)}.timeline-item.featured{background:#f1ffd0;border:1px solid #d4ee8d;border-radius:20px}.timeline-item i{border-color:var(--pink)}
.photo-story{margin:0 2vw;border-radius:32px;overflow:hidden;gap:8px;background:var(--cream)}.photo-tile:after{background:linear-gradient(0deg,rgba(8,8,10,.72),transparent 55%)}.photo-tile span{font-family:var(--sans);font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:-.04em}
.audience-row{border:1px solid var(--line);border-bottom:1px solid var(--line)!important;border-radius:20px;padding:24px 28px;margin:12px 0;background:#fff;transition:.25s}.audience-row:hover{transform:translateX(8px);border-color:var(--pink)}
.pricing{background:#f1f1f2}.price-card{border-radius:24px;border:1px solid var(--line);overflow:hidden}.featured-price{background:var(--ink)}.popular{top:0;position:relative;margin:-30px -30px 25px;background:var(--lime);font-weight:800}.availability{background:#fff0d7}.availability.unlimited{background:#e7f8bd}.sharing-note{border-radius:24px;background:white}.sharing-note>span{background:var(--pink)}
.accordion details{border:1px solid var(--line);border-radius:16px;padding:0 20px;margin:10px 0;background:white}.accordion details:last-child{border-bottom:1px solid var(--line)}
.booking{margin:0 2vw 2vw;border-radius:32px;background:var(--forest-2)}.booking-form{border-radius:24px}.booking-form input,.booking-form select{min-height:48px}.booking-form .radio span{min-height:44px;display:flex;align-items:center}.booking-form .radio input:checked+span{background:var(--lime);color:var(--ink);border-color:var(--lime)}
:focus-visible{outline:3px solid var(--pink);outline-offset:3px}footer .brand-full img{background:#fff;border-radius:10px;padding:4px;width:120px}
@media(max-width:700px){.site-header{top:8px;left:12px;width:calc(100% - 24px);padding:7px 10px 7px 14px}.brand-full img{width:112px;height:44px}.menu-toggle span{background:var(--ink)}.hero{padding-top:110px}.event-badge{font-size:.58rem}h1{font-size:clamp(3.6rem,17vw,5.4rem)}.place,.photo-story,.booking{margin-inline:0;border-radius:0}.experience-grid{gap:12px}.day-tabs{flex-direction:column}.day-tab{width:100%;margin:0}.audience-row:hover{transform:none}}

/* Immersive liquid-glass layer */
:root{--pink:#ec4899;--violet:#8b5cf6;--blush:#f9a8d4;--lime:#e9ffb0;--cream:#fdf7fb;--forest:#17121b;--forest-2:#0d0911;--ink:#1c111d;--serif:'Bodoni Moda',serif;--sans:'Jost',sans-serif}
body{background:radial-gradient(circle at 85% 12%,#f7dafa 0,transparent 23%),radial-gradient(circle at 4% 36%,#dff6f6 0,transparent 25%),var(--cream)}
.cursor-dot{position:fixed;z-index:1001;width:9px;height:9px;border-radius:50%;background:var(--pink);pointer-events:none;transform:translate(-50%,-50%);mix-blend-mode:multiply;transition:width .2s,height .2s,background .2s}.cursor-dot.active{width:42px;height:42px;background:rgba(233,255,176,.72);backdrop-filter:blur(4px)}
.cursor-glow{z-index:1;width:34rem;height:34rem;background:radial-gradient(circle,rgba(174,111,255,.13),rgba(236,72,153,.05) 38%,transparent 70%);filter:blur(10px)}
.hero-media{background-image:url('../photos/hero-lounger.png');filter:saturate(.92) contrast(1.02)}.hero-content{max-width:980px}.hero-shade{background:linear-gradient(90deg,rgba(10,7,13,.84),rgba(20,8,24,.28) 62%,rgba(9,7,12,.14)),radial-gradient(circle at 70% 10%,rgba(139,92,246,.2),transparent 34%),linear-gradient(0deg,rgba(11,7,14,.76),transparent 55%)}
.event-badge{background:rgba(255,255,255,.13);color:white;border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(20px);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 18px 60px rgba(139,92,246,.18)}.event-badge span{color:#ff82c1}
h1{font-family:var(--sans);font-weight:500;letter-spacing:-.07em;line-height:.82}h1 em{font-family:var(--serif);font-style:italic;color:#f5bedc;text-transform:none;font-weight:500;text-shadow:0 8px 50px rgba(236,72,153,.25)}
.hero-lead{font-size:clamp(1.04rem,1.35vw,1.28rem);max-width:660px}.hero-card{background:linear-gradient(135deg,rgba(255,255,255,.2),rgba(255,255,255,.07));box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 30px 80px rgba(0,0,0,.22)}
.scene-3d{position:absolute;z-index:2;inset:0;pointer-events:none;perspective:900px}.glass-sphere,.glass-pearl,.glass-ring{position:absolute;will-change:transform;transform-style:preserve-3d}.glass-sphere{right:8vw;top:20vh;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.9),rgba(248,173,218,.5) 18%,rgba(124,82,211,.26) 48%,rgba(255,255,255,.04) 70%);box-shadow:inset -25px -35px 65px rgba(76,30,114,.38),inset 18px 12px 38px rgba(255,255,255,.5),0 45px 90px rgba(43,14,59,.38);backdrop-filter:blur(5px);animation:levitate 8s ease-in-out infinite}.glass-ring{right:28vw;bottom:13vh;width:120px;height:120px;border-radius:50%;border:26px solid rgba(255,255,255,.2);box-shadow:inset 8px 8px 18px rgba(255,255,255,.46),inset -8px -12px 22px rgba(205,97,178,.32),0 24px 50px rgba(0,0,0,.22);backdrop-filter:blur(6px);animation:spin-float 12s linear infinite}.glass-pearl{right:4vw;bottom:8vh;width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff,#f9a8d4 42%,#8b5cf6);box-shadow:0 20px 45px rgba(139,92,246,.45);animation:levitate 6s ease-in-out infinite reverse}@keyframes levitate{0%,100%{transform:translate3d(0,0,0) rotate(-5deg)}50%{transform:translate3d(0,-28px,30px) rotate(8deg)}}@keyframes spin-float{0%{transform:rotateX(65deg) rotateZ(0deg) translateY(0)}50%{transform:rotateX(48deg) rotateZ(180deg) translateY(-18px)}100%{transform:rotateX(65deg) rotateZ(360deg) translateY(0)}}
.marquee{position:relative;z-index:4;overflow:hidden;background:var(--pink);color:white;padding:18px 0;transform:rotate(-1.2deg) scale(1.02);box-shadow:0 18px 55px rgba(236,72,153,.18)}.marquee-track{width:max-content;display:flex;align-items:center;gap:28px;animation:marquee 24s linear infinite}.marquee span{font-size:clamp(1.1rem,2.1vw,2rem);font-weight:500;letter-spacing:.08em}.marquee i{font-family:var(--serif);font-size:1.6rem;color:#e9ffb0}@keyframes marquee{to{transform:translateX(-50%)}}
.manifest{position:relative;padding-top:160px}.manifest:before{content:'';position:absolute;right:-5vw;top:8%;width:380px;height:380px;border-radius:44% 56% 68% 32%/45% 38% 62% 55%;background:linear-gradient(135deg,rgba(249,168,212,.26),rgba(139,92,246,.12));filter:blur(2px);animation:morph 9s ease-in-out infinite}@keyframes morph{50%{border-radius:63% 37% 36% 64%/35% 58% 42% 65%;transform:rotate(12deg) scale(1.05)}}
.karaoke span{color:rgba(28,17,29,.16);background:linear-gradient(90deg,var(--ink) 50%,rgba(28,17,29,.16) 50%) 100%/200% 100%;background-clip:text;-webkit-background-clip:text;transition:background-position .65s cubic-bezier(.2,.7,.2,1)}.karaoke span.lit{background-position:0}.karaoke em span{background-image:linear-gradient(90deg,var(--pink) 50%,rgba(236,72,153,.18) 50%)}
.experience-card{position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.54));backdrop-filter:blur(18px);box-shadow:0 25px 70px rgba(92,48,94,.08);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s}.experience-card:hover{transform:translateY(-12px) rotateX(2deg);box-shadow:0 38px 90px rgba(92,48,94,.15)}.experience-card:after{content:'';position:absolute;width:130px;height:130px;border-radius:50%;right:-55px;top:-58px;background:radial-gradient(circle,#f9a8d4,transparent 70%);opacity:.42}
.place{background:radial-gradient(circle at 80% 25%,rgba(139,92,246,.24),transparent 32%),var(--forest-2);box-shadow:0 45px 120px rgba(41,19,46,.2)}.place-image{margin:22px;border-radius:42% 58% 38% 62%/52% 32% 68% 48%;height:calc(100% - 44px);transform:rotate(-1.5deg);box-shadow:0 35px 90px rgba(0,0,0,.35)}
.timeline-item.featured{background:linear-gradient(135deg,rgba(249,168,212,.22),rgba(139,92,246,.1));border-color:rgba(236,72,153,.3);backdrop-filter:blur(12px)}
.photo-story{grid-template-columns:.9fr 1.1fr;gap:28px;padding:28px;background:transparent}.photo-tile{border-radius:34px;box-shadow:0 35px 90px rgba(44,20,48,.16)}.photo-tile.tall{border-radius:46% 54% 35% 65%/28% 38% 62% 72%;transform:rotate(-1.4deg)}.photo-tile:not(.tall):nth-child(2){border-radius:64px 180px 64px 64px;transform:rotate(1deg)}.photo-tile:not(.tall):nth-child(3){border-radius:180px 64px 64px 64px;transform:rotate(-.7deg)}.photo-tile img{transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .5s}.photo-tile:hover img{transform:scale(1.07)}
.price-card{background:linear-gradient(150deg,rgba(255,255,255,.94),rgba(255,255,255,.58));backdrop-filter:blur(20px);box-shadow:0 24px 70px rgba(50,24,57,.08)}.featured-price{background:radial-gradient(circle at 90% 0,rgba(236,72,153,.45),transparent 35%),var(--forest-2)}
.booking{background:radial-gradient(circle at 4% 80%,rgba(236,72,153,.35),transparent 25%),radial-gradient(circle at 96% 0,rgba(139,92,246,.3),transparent 26%),var(--forest-2)}.booking-form{background:linear-gradient(145deg,rgba(255,255,255,.15),rgba(255,255,255,.06));box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 30px 100px rgba(0,0,0,.28)}
@media(max-width:1000px){.glass-sphere{right:-40px;top:24vh;width:140px;height:140px}.glass-ring{right:8vw}.scene-3d{opacity:.75}}
@media(max-width:700px){.cursor-dot{display:none}.scene-3d{opacity:.48}.glass-sphere{width:100px;height:100px;right:-30px;top:22vh}.glass-ring{width:70px;height:70px;border-width:16px;right:10px;bottom:20vh}.glass-pearl{display:none}.marquee{padding:13px 0}.manifest:before{width:220px;height:220px}.place-image{margin:16px;height:468px;border-radius:80px 28px 90px 24px}.photo-story{padding:18px;gap:16px}.photo-tile,.photo-tile.tall{border-radius:90px 28px 90px 28px;transform:none!important}.photo-tile:not(.tall):nth-child(2),.photo-tile:not(.tall):nth-child(3){border-radius:28px 90px 28px 90px;transform:none}}
@media(prefers-reduced-motion:reduce){.scene-3d *,.marquee-track,.manifest:before{animation:none!important}.cursor-dot{display:none}}

/* Emerald brand header + host */
.site-header,.site-header.scrolled{background:rgba(3,91,73,.93);border-color:rgba(255,255,255,.17);box-shadow:0 18px 55px rgba(0,55,45,.22)}.site-header .brand-full{background:rgba(255,255,255,.94);border-radius:12px;padding:2px 10px}.site-header .brand-full img{width:142px;height:46px}.site-header .nav a{color:#fff;opacity:.72}.site-header .nav a:hover{color:#e9ffb0;opacity:1}.site-header .header-cta{background:#e9ffb0;color:#073f35}.site-header .header-cta:hover{background:#fff}.site-header .menu-toggle span{background:#fff}
.host{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw;align-items:center;overflow:hidden}.host-visual{position:relative;min-height:720px}.host-visual:before{content:'';position:absolute;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle at 35% 25%,#f9a8d4,#8b5cf6 55%,transparent 72%);filter:blur(10px);left:-60px;top:80px;opacity:.42}.host-blob{position:absolute;inset:20px 30px 20px 0;border-radius:44% 56% 48% 52%/34% 40% 60% 66%;overflow:hidden;transform:rotate(-2deg);box-shadow:0 42px 110px rgba(56,25,66,.23)}.host-blob img{height:100%;object-fit:cover;object-position:center 32%;transform:scale(1.03)}.host-float{position:absolute;z-index:2;padding:18px 22px;border-radius:18px;color:#fff;background:rgba(20,11,24,.4);display:flex;flex-direction:column}.host-float strong{font-family:var(--serif);font-size:2.1rem;color:#e9ffb0}.host-float span{font-size:.66rem;text-transform:uppercase;letter-spacing:.11em}.host-float-one{right:-30px;top:110px;animation:levitate 7s ease-in-out infinite}.host-float-two{left:-20px;bottom:100px;animation:levitate 8s ease-in-out infinite reverse}.host-lead{font-size:1.18rem;line-height:1.75;max-width:670px}.host-facts{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:38px 0;padding:0;list-style:none;border-top:1px solid var(--line)}.host-facts li{position:relative;padding:18px 20px 18px 28px;border-bottom:1px solid var(--line);font-size:.82rem;line-height:1.5}.host-facts li:before{content:'✦';position:absolute;left:0;color:var(--pink)}.text-arrow{display:inline-flex;align-items:center;gap:18px;font-weight:600;border-bottom:1px solid;padding-bottom:8px}.text-arrow span{color:var(--pink);font-size:1.3rem}
@media(max-width:1000px){.host{grid-template-columns:1fr}.host-visual{min-height:680px;max-width:650px;width:100%}.host-copy{max-width:760px}.host-float-one{right:0}}
@media(max-width:700px){.site-header .brand-full img{width:104px;height:38px}.site-header .brand-full{padding-inline:7px}.host-visual{min-height:520px}.host-blob{inset:10px 0;border-radius:100px 30px 120px 30px}.host-float{padding:12px 15px}.host-float strong{font-size:1.55rem}.host-float-one{top:55px;right:-8px}.host-float-two{left:-5px;bottom:48px}.host-facts{grid-template-columns:1fr}}
.hero-media{background-image:url('../photos/hero-lounger.png');background-position:center 48%}
.site-header .brand-full{background:transparent!important;border-radius:0!important;padding:0!important}.site-header .brand-full img{width:154px;height:50px;mix-blend-mode:multiply;filter:brightness(1.28) saturate(1.35)}

/* 3D flip cards */
.flip-card{height:330px;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;perspective:1100px;cursor:pointer}.flip-card:after{display:none}.flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .72s cubic-bezier(.2,.75,.2,1)}.flip-card:hover .flip-inner,.flip-card:focus .flip-inner,.flip-card.is-flipped .flip-inner{transform:rotateY(180deg)}.flip-face{position:absolute;inset:0;display:flex;flex-direction:column;padding:34px;border-radius:28px;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid rgba(9,9,11,.12);background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(255,255,255,.7));box-shadow:0 28px 80px rgba(54,21,62,.1);overflow:hidden}.flip-face:before{content:'';position:absolute;width:170px;height:170px;border-radius:50%;right:-80px;top:-90px;background:#d9ff68;filter:blur(28px);opacity:.38}.flip-front b{font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;margin-top:auto;color:#8a3b6a}.flip-back{transform:rotateY(180deg);background:radial-gradient(circle at 82% 12%,rgba(255,255,255,.58),transparent 30%),linear-gradient(135deg,#dcff76,#bdf53b);border-color:#aada26;box-shadow:0 0 0 1px rgba(203,255,70,.55),0 25px 90px rgba(189,245,59,.52)}.flip-back:before{background:#fff;opacity:.46}.flip-back h3{font-size:2rem}.flip-back p{font-size:.88rem;line-height:1.8;color:#26310a;opacity:.88}.flip-card:hover,.flip-card:focus{transform:none;box-shadow:none}.promise-line{margin:55px 0 0;display:grid;grid-template-columns:.42fr 1fr;align-items:center;gap:32px;padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.promise-line span{text-transform:uppercase;letter-spacing:.16em;font-size:.65rem;color:var(--pink)}.promise-line strong{font-family:var(--serif);font-size:clamp(1.7rem,3vw,3rem);font-weight:500;line-height:1.2}
@media(max-width:700px){.flip-card{height:340px}.flip-face{padding:28px}.flip-card:hover .flip-inner{transform:none}.flip-card.is-flipped .flip-inner,.flip-card:focus .flip-inner{transform:rotateY(180deg)}.promise-line{grid-template-columns:1fr;gap:14px}}
.site-header .brand-full img{mix-blend-mode:normal!important;filter:none!important}

/* Program interaction cue */
.date-hint{display:flex;align-items:center;gap:14px;margin:-35px 0 38px;justify-content:flex-start;color:#6d5b70;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.date-hint-track{position:relative;width:92px;height:4px;border-radius:10px;background:linear-gradient(90deg,rgba(236,72,153,.2),rgba(139,92,246,.28));overflow:visible}.date-hint-track:before,.date-hint-track:after{content:'';position:absolute;top:50%;width:8px;height:8px;border:1px solid var(--pink);border-radius:50%;transform:translateY(-50%)}.date-hint-track:before{left:0}.date-hint-track:after{right:0}.date-hint-track i{position:absolute;top:50%;left:0;width:15px;height:15px;border-radius:50%;background:#d9ff68;box-shadow:0 0 0 5px rgba(217,255,104,.22),0 0 24px #bdf53b;transform:translateY(-50%);animation:date-slide 1.8s cubic-bezier(.65,0,.35,1) infinite alternate}@keyframes date-slide{to{left:calc(100% - 15px)}}

/* Expanded organic gallery */
.photo-story{grid-template-columns:repeat(12,1fr);grid-template-rows:360px 360px 390px}.photo-tile.tall{grid-column:span 5;grid-row:span 2}.photo-tile:nth-child(2),.photo-tile:nth-child(3){grid-column:span 7}.photo-tile:nth-child(n+4){grid-column:span 4}.photo-tile:nth-child(4){border-radius:120px 34px 120px 34px}.photo-tile:nth-child(5){border-radius:34px 120px 34px 120px}.photo-tile:nth-child(6){border-radius:120px 120px 34px 34px}

/* Water-like accommodation callout */
.sharing-note{position:relative;overflow:hidden;transform:scale(.96);transform-origin:center;transition:transform .35s ease-out,box-shadow .4s;background:linear-gradient(115deg,rgba(255,255,255,.92),rgba(203,246,247,.84),rgba(225,207,255,.78),rgba(217,255,104,.62),rgba(255,255,255,.92));background-size:300% 300%;animation:water-shift 7s ease-in-out infinite;box-shadow:0 25px 80px rgba(90,131,170,.14)}.sharing-note:after{content:'';position:absolute;inset:-80%;background:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 14px,rgba(255,255,255,.22) 15px 17px,transparent 18px 34px);transform:rotate(18deg);animation:water-ripple 11s linear infinite;pointer-events:none}.sharing-note>*{position:relative;z-index:2}.sharing-note.is-focused{box-shadow:0 38px 110px rgba(139,92,246,.24),0 0 50px rgba(217,255,104,.2)}@keyframes water-shift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@keyframes water-ripple{to{transform:rotate(18deg) translate(80px,50px)}}

footer{padding:30px 5vw;gap:28px}.footer-mark{flex:0 0 auto;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:transparent}.footer-mark img{width:72px;height:72px;object-fit:contain}.footer-mark:hover{transform:rotate(8deg) scale(1.06)}footer p{line-height:1.65}footer p strong{color:#fff;font-weight:500}footer p a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.date-hint{margin:-20px 0 30px;font-size:.58rem}.date-hint-track{width:68px}.photo-story{display:flex;grid-template:none;padding:18px}.photo-tile:nth-child(n){min-width:86vw;height:570px;border-radius:90px 28px 90px 28px}.sharing-note{transform:scale(1)}footer{gap:16px}.footer-mark,.footer-mark img{width:64px;height:64px}}
@media(prefers-reduced-motion:reduce){.date-hint-track i,.sharing-note,.sharing-note:after{animation:none!important}}
.skip-link{position:absolute;left:-9999px;top:0;z-index:9999;padding:10px 20px;background:var(--forest);color:#fff;border-radius:0 0 8px 8px;font-size:.8rem;font-weight:600;text-decoration:none;transition:left 0s}.skip-link:focus{left:0;outline:3px solid var(--pink);outline-offset:2px}
