@font-face{font-family:'BD Sans';src:url('assets/fonts/BDSans-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'BD Sans';src:url('assets/fonts/BDSans-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Gotham;src:url('assets/fonts/Gotham-Book.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--night:#000;--night-2:#111;--night-3:#171717;--sand:#fff;--muted:#d4d4d4;--faint:#aaa;--sea:#cfaa87;--brass:#d5a17b;--brass-hi:#ebc09d;--line:#777;--line-2:#333;--pad:5.4vw;--f-b:Gotham,Arial,sans-serif;--f-d:'BD Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:#000;color:#fff;font:400 18px/1.25 var(--f-b);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}[hidden]{display:none!important}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--f-d);font-weight:400}h2{font-size:32px;line-height:1.08}p{line-height:1.25}section{scroll-margin-top:80px}.wide{width:89.3%;max-width:1440px;margin-inline:auto}.content{width:79.6%;max-width:1280px;margin-inline:auto}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 25px;border:1px solid #fff;border-radius:100px;color:#161616;background:#fff;text-decoration:none;font-size:18px;line-height:1.2;font-weight:400;white-space:nowrap;transition:background .2s,color .2s}.btn:hover{background:#e8e8e8}.btn.dark{color:#fff;background:#000;border-color:#000}.btn.outline{color:#fff;border-color:#fff;background:transparent}.btn.outline:hover{background:#fff;color:#000}:focus-visible{outline:2px solid #d5a17b;outline-offset:5px}.label{font-size:17px;line-height:1.3;font-weight:400}.sec-h{text-align:center}.sec-h h2{margin:22px 0 26px}.sec-h>p:not(.label){font-size:20px}.sec-h .btn{margin-top:34px}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{position:fixed;top:10px;left:10px;z-index:100;background:#fff;color:#000;padding:10px}.rv{opacity:1;transform:none}
/* The mockup has a solid masthead, separate symbol, and centered wordmark. */
.nav{height:76px;position:sticky;top:0;z-index:60;background:#000;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 4%;gap:20px}.brand-symbol{justify-self:start}.brand-symbol img{width:34px;height:34px;object-fit:contain}.brand-wordmark img{width:150px;height:auto}.nav-cta{justify-self:end;min-height:36px;padding:8px 18px;font-size:14px}
.hero{position:relative;height:710px;isolation:isolate;border-radius:0 0 30px 30px;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:-2}.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 32%}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:#0004}.hero-in{text-align:center;position:absolute;inset:22.5% 0 auto;padding:0 20px}.hero h1{font-size:44px;line-height:1.04;letter-spacing:-1px}.hero h1 span{display:block}.hero-in p{font-size:18px;line-height:1.12;margin:22px auto 24px;max-width:660px}.strip{position:absolute;left:4%;right:4%;bottom:24px;min-height:94px;background:#000;border-radius:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;padding:12px 0}.strip>div{min-width:0;text-align:center;padding:8px 12px;display:flex;flex-direction:column;justify-content:center;min-height:70px}.strip>div+div{border-left:1px solid #fff}.strip strong{font-size:29px;font-weight:400;line-height:1.05}.strip span{font-size:17px;line-height:1.1}.strip .unlimited span{font-size:29px}
.why{padding:68px 0 0}.why-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}.why-heading h2{margin-bottom:4px}.why-heading p{font-size:19px}.why-heading .btn{font-size:14px;min-height:38px;padding:8px 18px}.vid{position:relative;overflow:hidden;border-radius:25px;background:#111}.vid>img,.vid>video{width:100%;height:100%;object-fit:cover}.tour-frame{aspect-ratio:1.98}.vid .play{position:absolute;inset:0;display:grid;place-items:center;border:0;padding:0;width:100%;height:100%;background:none}.ring{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:#fff;transition:transform .2s}.play:hover .ring{transform:scale(1.07)}.ring svg{width:25px;height:28px;fill:#111;margin-left:4px}.vid.on>img{visibility:hidden}.vid>video{position:absolute;inset:0}.vid .scrim{position:absolute;inset:0;background:linear-gradient(transparent 60%,#0004);pointer-events:none}.vid.on .scrim{display:none}
.direct{padding-top:90px}.comparison-heading h2{margin-bottom:7px}.comparison-heading p{font-size:20px}.vs{display:grid;grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);gap:28px;align-items:stretch;margin-top:48px}.vs-card{min-height:412px;border:1px solid #888;border-radius:32px;padding:78px 40px 64px}.vs-card h3{font-weight:700;font-size:26px;margin-bottom:29px;white-space:nowrap}.vs-card ul{list-style:circle;margin:0;padding-left:17px}.vs-card li{font-size:20px;line-height:1.55;padding-left:0}.vs-arrow{align-self:center;text-align:center;font-family:Arial;font-weight:200;font-size:65px;color:#d29a6b;line-height:1}.vs-card.good{background:linear-gradient(110deg,#bc8c63,#d4a27c);color:#000;border:0;box-shadow:0 20px 85px 15px #be8b6440}
.signature{padding:150px 0 100px}.signature .sec-h h2{font-size:39px}.signature picture{display:block;margin-top:105px}.signature img{width:100%;aspect-ratio:1.65;object-fit:cover;border-radius:26px}
.image-banner{position:relative;isolation:isolate;display:grid;place-items:center;min-height:710px;text-align:center}.image-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.image-banner:after{content:'';position:absolute;inset:0;background:#0005;z-index:-1}.banner-copy{padding:60px 22px;width:100%}.banner-copy h2{font-size:43px;line-height:1.05;margin:22px 0}.banner-copy>p:not(.label){font-size:21px;line-height:1.13;margin:0 auto 26px}.banner-copy .label{font-size:17px}.gallery-section{padding-top:110px}.gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.gallery-card{grid-column:span 2;position:relative;overflow:hidden;border-radius:24px;aspect-ratio:1.08;isolation:isolate}.gallery-card:nth-child(-n+2){grid-column:span 3;aspect-ratio:1.7}.gallery-card img{width:100%;height:100%;object-fit:cover}.gallery-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,#000e)}.gallery-card figcaption{position:absolute;bottom:28px;left:8px;right:8px;z-index:1;font-size:23px;line-height:1.1;text-align:center}.gallery-card:nth-child(-n+2) figcaption{font-size:30px}.gallery-card-3 img{height:140%;max-width:none;object-position:center bottom;transform:translateY(-20%)}
.experiences{padding:72px 0 0}.experiences .sec-h h2{margin:0 0 4px;font-size:32px}.experiences .sec-h p{font-size:19px}.experience-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:110px}.experience-card{position:relative;isolation:isolate;overflow:hidden;border-radius:22px;aspect-ratio:.62}.experience-card img{width:100%;height:100%;object-fit:cover}.experience-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 52%,#000e);z-index:0}.experience-card>div{position:absolute;bottom:60px;left:28px;right:18px;z-index:1}.experience-card h3{font-size:21px;line-height:1.05;margin-bottom:8px}.experience-card p{font-size:18px;line-height:1.1}.experience-card:last-child img{height:140%;transform:translateY(-20%)}
/* Keep the original day interaction; match the centered three-card composition. */
.day{margin-top:78px;background:#000;--day-accent:#d8b08d}.day-sticky::before{opacity:.13}.day-shell{width:80%;max-width:1280px}.day-header{display:block;text-align:center;margin-bottom:56px}.day-header .label{font-size:17px;letter-spacing:0;color:#fff}.day-header h2{font:400 39px/1.1 var(--f-d);margin:20px 0 25px;letter-spacing:0}.day-header .btn{margin-bottom:0}.day-card{height:min(57svh,630px);width:min(100%,660px)}.day-image{clip-path:inset(.6% 3% 3% round 20px)}.day-image.is-previous{transform:translate(-102%,-50%) scale(.81);filter:brightness(.72);opacity:1}.day-image.is-next{transform:translate(2%,-50%) scale(.81);filter:brightness(.72);opacity:1}.day-image.is-active{transform:translate(-50%,-50%);filter:none}.day-image[data-moment='03-wellness']{clip-path:inset(.6% 5.5% 1.2% round 20px)}.day-image[data-moment='05-lunch']{clip-path:inset(.6% 2.5% 4% round 20px)}.day-bottom{margin-top:10px}.day-arrows button{width:40px;height:40px}
.guest-stories{width:79.6%;max-width:1280px;margin:auto;padding:75px 0 90px}.guest-stories .sec-h h2{font-size:32px;margin:0 0 5px}.guest-stories .sec-h p{font-size:19px}.vids{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:50px}.vids .vid{aspect-ratio:.72}.vids .ring{width:48px;height:48px;background:#ffffffbd}.vids .ring svg{width:18px;height:21px}
/* Contact panel with the mockup’s flexible travel fields. */
.book{padding:0 0 70px}.book>.wrap{width:100%}.book .sec-h{margin:0 auto 65px!important}.book .sec-h h2{margin:0 0 5px;font-size:34px}.book .sec-h p{font-size:19px}.bgrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;padding:64px 10%;border-radius:32px;background:#fff;color:#000}.bgrid>div{min-width:0}#book-aside{border-radius:24px;background:#000;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:55px 55px;font-size:16px;line-height:1.3}#book-aside>div{padding:27px 0}#book-aside>div+div{border-top:1px solid #777}#book-aside span,#book-aside a{display:block}#book-aside a{text-decoration:none;overflow-wrap:anywhere}.form-intro{font-size:18px;margin-bottom:24px}form{display:flex;flex-direction:column;gap:14px}.f2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fld{display:flex;flex-direction:column;gap:6px;min-width:0}.fld label,.lbl-as{font-size:13px;text-transform:uppercase;color:#444}.fld input,.fld select,.fld textarea{width:100%;min-width:0;border:1px solid #888;border-radius:8px;padding:12px 16px;min-height:46px;background:#fff;color:#111;font-size:15px;line-height:1.2}.fld input::placeholder{color:#666}.fld input:focus,.fld select:focus,.fld textarea:focus{outline:2px solid #b37d52;outline-offset:1px}.seg{display:grid;grid-template-columns:1fr 1fr;gap:14px}.seg label{position:relative;cursor:pointer}.seg input{position:absolute;opacity:0;width:1px;height:1px}.seg span{display:flex;align-items:center;gap:12px;background:#000;color:#fff;border:1px solid #000;border-radius:8px;min-height:46px;padding:10px 16px;font-size:15px;text-transform:none}.seg span:before{content:'';width:15px;height:15px;flex-shrink:0;border:1px solid #888;border-radius:50%}.seg input:checked+span:before{background:#fff;box-shadow:inset 0 0 0 4px #888}.seg input:focus-visible+span{outline:2px solid #b37d52;outline-offset:3px}.consent{font-size:13px;line-height:1.25;color:#444}.book form>.btn{align-self:start;min-width:130px;font-size:15px;min-height:38px;padding:8px 28px;background:#000;color:#fff;border-color:#000}.ok{display:none}.ok.on{display:block;text-align:center}.ok h3{font-size:28px;margin-bottom:12px}.ok p{max-width:560px;margin:auto}.book.done .bgrid{grid-template-columns:1fr}.book.done #book-aside,.book.done .form-intro{display:none}.cal{margin-top:28px}.cal-h{margin-bottom:18px!important}#calendly{height:1060px}#calendly .calendly-inline-widget,#calendly iframe{width:100%!important;height:100%!important}.closing-cta{border-radius:0 0 30px 30px;overflow:hidden}.closing-cta .banner-copy h2{margin:0 0 34px}.closing-cta .banner-copy>p{margin-bottom:30px}.banner-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}footer{display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;padding:32px 20px 40px}footer a{text-decoration:none}.wa{position:fixed;z-index:65;right:16px;bottom:16px;background:#000;border:1px solid #777;border-radius:50px;display:flex;gap:7px;padding:12px 18px;font-size:14px;opacity:0;visibility:hidden}.wa.show{opacity:1;visibility:visible}.wa a{text-decoration:none}
@media(min-width:1600px){.hero{height:49.3vw;max-height:940px}.hero h1{font-size:3.06vw}.hero-in p{font-size:1.39vw;max-width:46vw}.image-banner{min-height:49.3vw}.nav{height:5.28vw;max-height:100px}}
@media(max-width:1100px) and (min-width:701px){.hero{height:590px}.hero h1{font-size:36px}.hero-in p{font-size:18px}.content{width:84%}.vs{gap:18px;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr)}.vs-card{padding:45px 25px;min-height:330px}.vs-card h3{font-size:23px;white-space:normal}.vs-card li{font-size:18px}.experience-card h3{font-size:17px}.experience-card p{font-size:16px}.bgrid{padding:45px 5%;gap:5%}#book-aside{padding:25px}.strip span{font-size:14px}}
@media(max-width:700px){
 :root{--pad:5vw}html{scroll-padding-top:72px}body{font-size:16px}.wide,.content{width:90%}h2{font-size:28px}.desktop-break{display:none}.btn{font-size:15px;min-height:40px;padding:9px 22px}.nav{height:69px;grid-template-columns:auto 1fr auto;padding:0 5%;gap:14px}.brand-symbol img{width:24px;height:24px}.brand-wordmark{justify-self:start}.brand-wordmark img{width:96px}.nav-cta{font-size:11px;min-height:28px;padding:6px 12px}.hero{height:auto;overflow:visible;border-radius:0;padding-top:136.5%;padding-bottom:0}.hero-bg{height:calc(100vw * 1.43)}.hero-bg img{object-position:center 58%}.hero:after{height:calc(100vw * 1.43);background:#0003}.hero-in{top:calc(100vw * .395);padding:0 5%;width:100%}.hero h1{font-size:clamp(24px,6.25vw,43px);line-height:1.03;letter-spacing:-.5px}.hero-in p{font-size:clamp(14px,3.5vw,22px);line-height:1.14;margin:16px auto 24px;max-width:none}.hero-in .btn{font-size:14px;min-height:34px}.strip{position:relative;left:auto;right:auto;bottom:auto;width:76%;margin:-3vw auto 0;display:block;border-radius:15px;padding:15px 5%;z-index:2}.strip>div{text-align:left;padding:28px 16px;min-height:0;align-items:flex-start}.strip>div+div{border-left:0;border-top:1px solid #aaa}.strip strong{font-size:28px;line-height:1.1}.strip span{font-size:17px;line-height:1.1}.strip .unlimited strong,.strip .unlimited span{font-size:28px}.why{padding-top:40px}.why-heading{display:block;margin-bottom:30px}.why-heading h2{font-size:28px;margin-bottom:8px}.why-heading p{font-size:17px;line-height:1.1}.why-heading .btn{margin-top:20px;font-size:16px;min-height:39px;padding:9px 23px}.tour-frame{aspect-ratio:.83;border-radius:22px}.tour-frame>img{object-position:center}.ring{width:48px;height:48px}.direct{padding-top:40px}.comparison-heading h2{font-size:28px}.comparison-heading p{font-size:17px;line-height:1.15;margin-top:12px}.comparison-heading br{display:none}.vs{display:flex;flex-direction:column;gap:20px;margin-top:35px}.vs-card{width:100%;min-height:270px;padding:48px 33px;border-radius:24px}.vs-card h3{font-size:23px;white-space:normal;margin-bottom:25px}.vs-card li{font-size:17px;line-height:1.5}.vs-arrow{display:none}.signature{padding:40px 0 50px}.signature .sec-h{text-align:left}.signature .label{font-size:15px}.signature .sec-h h2{font-size:28px;margin:20px 0 22px}.signature .sec-h h2 br{display:none}.signature .sec-h>p:not(.label){font-size:17px;line-height:1.3}.signature .sec-h .btn{display:none}.signature picture{margin-top:35px}.signature img{aspect-ratio:.8;border-radius:24px}.image-banner{min-height:570px}.banner-copy{padding:60px 6%}.banner-copy h2{font-size:30px}.banner-copy>p:not(.label){font-size:17px;line-height:1.25}.banner-copy .label{font-size:14px}.gallery-section{padding-top:45px}.gallery{grid-template-columns:1fr 1fr;gap:10px}.gallery-card,.gallery-card:nth-child(-n+2){grid-column:auto;aspect-ratio:.8;border-radius:16px}.gallery-card:last-child{grid-column:span 2;aspect-ratio:1.7}.gallery-card figcaption,.gallery-card:nth-child(-n+2) figcaption{font-size:18px;bottom:20px}.experiences{padding-top:45px}.experiences .sec-h h2{font-size:27px}.experiences .sec-h p{font-size:16px;margin-top:12px}.experience-cards{grid-template-columns:1fr;gap:18px;margin-top:32px}.experience-card{aspect-ratio:.87}.experience-card>div{bottom:30px;left:24px;right:24px}.experience-card h3{font-size:21px}.experience-card p{font-size:17px}.day{margin-top:45px}.day-shell{width:90%}.day-header{margin-bottom:25px}.day-header .label{font-size:13px}.day-header h2{font-size:27px;margin:15px 0 20px}.day-card{height:min(52svh,420px);min-height:270px}.day-image{clip-path:inset(.6% 3% 3% round 12px)}.day-image.is-previous{transform:translate(-95%,-50%) scale(.8);filter:brightness(.6)}.day-image.is-next{transform:translate(-5%,-50%) scale(.8);filter:brightness(.6)}.guest-stories{width:90%;padding:45px 0}.guest-stories .sec-h h2{font-size:27px}.guest-stories .sec-h p{font-size:16px;margin-top:12px}.vids{gap:10px;margin-top:28px}.vids .vid{border-radius:12px;aspect-ratio:.58}.vids .ring{width:32px;height:32px}.vids .ring svg{width:12px;height:14px}.book{padding:0 0 45px}.book .sec-h{margin-bottom:30px!important}.book .sec-h h2{font-size:29px}.book .sec-h p{font-size:16px}.bgrid{display:flex;flex-direction:column;padding:30px 5%;gap:30px;border-radius:25px}#book-aside{padding:12px 26px;border-radius:20px;font-size:14px}#book-aside>div{padding:20px 0}.form-intro{font-size:17px}.f2{gap:10px}.fld label,.lbl-as{font-size:11px}.fld input,.fld select,.fld textarea{font-size:16px;padding:11px 9px}.seg{gap:10px}.seg span{font-size:14px;padding:10px;gap:8px}.consent{font-size:12px}.closing-cta .banner-copy h2{font-size:30px}.banner-actions{gap:10px}.banner-actions .btn{font-size:14px;padding:10px 16px}footer{font-size:11px;gap:6px;padding:25px 10px}.wa{font-size:12px;padding:10px 14px}#calendly{height:1180px}
}
@media(max-width:360px){.nav{gap:8px}.brand-wordmark img{width:78px}.nav-cta{font-size:10px;padding:6px 9px}.vs-card{padding:32px 24px}.seg span{font-size:12px}.strip span{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.strip strong,.strip .unlimited span{font-family:var(--f-d)}
.book .fld>label,.book .lbl-as{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.consent-check{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.consent-check input{accent-color:#000;width:15px;height:15px;flex:none;margin:1px 0 0}.fld textarea{resize:vertical;min-height:110px}

.book .fld>.travel-label{position:static;width:auto;height:auto;overflow:visible;clip-path:none;font-size:12px;margin:0 0 0 14px}.fld select{color:#555;font-size:13px;text-overflow:ellipsis}.fld select:focus{color:#000}.consent-check:has(input:invalid){box-shadow:none}
@media(max-width:700px){.book .f2:has([data-travel-period]){grid-template-columns:1fr}.book .f2:has(input[type=tel]){grid-template-columns:1fr}.fld select{font-size:16px}.vs-card h3{font-size:23px}.vs-card li{font-size:17px}}

/* Jero's September review: preserve the composition and refine its proportions. */
.hero:after{background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.38) 45%,rgba(0,0,0,.2))}
.hero h1,.hero-in p{text-shadow:0 2px 16px #0008}
.hero-in p{max-width:780px;line-height:1.22}
.gallery-card figcaption{font-family:var(--f-d);font-weight:400}
.villa-revealed .banner-copy h2{font-size:clamp(43px,3.7vw,58px)}
.signature picture{margin-top:65px}
.signature img{height:auto;aspect-ratio:2.1;object-position:center 15%}

/* Six original experience panels: native swipe/trackpad scrolling and mouse drag. */
.experience-cards{display:flex;gap:24px;margin-top:65px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;touch-action:pan-x pan-y pinch-zoom;overscroll-behavior-x:contain;isolation:isolate}
.experience-cards::-webkit-scrollbar{display:none;width:0;height:0}
.experience-cards.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
.experience-card{flex:0 0 calc((100% - 48px)/3);min-width:0;aspect-ratio:1021/1647;scroll-snap-align:start;border-radius:20px;user-select:none;container-type:inline-size}
.experience-card img,.experience-card:last-child img{width:100%;height:100%;transform:none;object-fit:cover;-webkit-user-drag:none;pointer-events:none}
.experience-card:after{background:linear-gradient(transparent 40%,#0006 65%,#000e 100%);pointer-events:none}
.experience-card>.experience-copy{bottom:9%;left:7%;right:7%;text-shadow:0 1px 8px #0006}
.experience-copy h3{font-size:clamp(14px,5cqw,23px);line-height:1.1;font-weight:400;margin-bottom:10px}
.experience-copy p{font-size:clamp(14px,4.5cqw,20px);line-height:1.18}

/* Clean Content exports replace the crops extracted from flattened artwork. */
.gallery-card-3 img{height:100%;transform:none;object-position:center}
.villa-revealed:after,.closing-cta:after{background:#0002}

.day-sticky{min-height:0}
.day-shell{height:100%;padding:24px 0;display:flex;flex-direction:column;justify-content:center}
.day-header{flex:none;margin-bottom:24px}
.day-header h2{margin:12px 0 20px}
.day-card{flex:1 1 auto;min-height:0;height:auto;max-height:650px;width:min(100%,740px)}
.day-controls{flex:none}
.day-bottom{margin-top:14px}
.day-arrows button{width:44px;height:44px}
.guest-stories{min-height:calc(100svh - 76px);display:flex;flex-direction:column;justify-content:center;padding:80px 0}
.vids .vid{aspect-ratio:.66}
.book{padding-top:60px}

@media(min-width:701px){
 .hero{height:clamp(720px,55vw,1000px)}
 .hero-in{top:24%}
 .hero-in p{font-size:clamp(16px,1.3vw,21px);max-width:none;width:auto}
 .hero-in p span{display:block;white-space:nowrap}
}
@media(max-width:700px){
 .hero-in p span{display:inline}
 .signature picture{margin-top:30px}
 .signature img{aspect-ratio:1.15}
 .villa-revealed .banner-copy h2{font-size:34px}
 .experience-cards{margin-top:32px;gap:16px}
 .experience-card{flex-basis:88%;border-radius:18px}
 .day-shell{padding:16px 0}
 .day-header{margin-bottom:18px}
 .day-header h2{margin:12px 0 16px}
 .day-card{max-height:510px}
 .day-image{max-width:100%}
 .guest-stories{min-height:0;padding:60px 0}
 .vids .vid{aspect-ratio:.5}
 .book{padding-top:30px}
}
@media(prefers-reduced-motion:reduce),(max-height:620px){
 .day-shell{height:auto;display:block}
 .day-card{height:clamp(300px,65svh,520px);min-height:0}
}
@media(prefers-reduced-motion:reduce){.experience-cards{scroll-behavior:auto}}

/* October mobile review: match the supplied render's type and proportions. */
.mobile-break{display:none}
.experience-navigation,.testimonial-controls{display:none}
.bgrid{grid-template-areas:"contact enquiry"}
#book-aside{grid-area:contact}
.bgrid>.rv{grid-area:enquiry}
.book.done .bgrid{grid-template-areas:"enquiry"}
.footer-brand{display:flex;align-items:center;gap:12px}
.footer-brand img{object-fit:contain}
footer{flex-direction:column;gap:22px}
@media(max-width:700px){
 .mobile-break{display:initial}
 .hero-bg,.hero:after{border-radius:0 0 24px 24px;overflow:hidden}
 .hero-in p{font-size:clamp(8.4px,2.65vw,18px);line-height:1.3;margin:16px auto 20px}
 .hero-in p span{display:block}
 .hero-in .btn.dark{background:#fff;color:#161616;border-color:#fff}
 .hero-in .btn.dark:hover{background:#e8e8e8}
 .strip{width:90%;margin-top:-22vw;padding:15px 10%}
 .strip span{font-size:clamp(12px,3.3vw,20px);line-height:1.25}
 .why-heading h2{font-size:clamp(21px,6.1vw,32px)}
 .why-heading p{font-size:clamp(10px,3.2vw,20px);line-height:1.3}
 .why-heading .btn{margin-top:16px;font-size:13px;min-height:34px;padding:8px 20px}
 .tour-frame{aspect-ratio:.79}
 .comparison-heading h2{font-size:clamp(17px,4.65vw,30px)}
 .comparison-heading p{font-size:clamp(12px,3.5vw,20px);line-height:1.4}
 .vs{gap:22px;margin-top:28px}
 .vs-card{padding:44px 8%;min-height:260px}
 .vs-card h3{font-size:clamp(15px,4.25vw,25px);white-space:normal;margin-bottom:26px}
 .vs-card li{font-size:clamp(12px,3.45vw,20px);line-height:1.65}
 .vs-arrow{display:block;font-size:0;width:18px;height:18px;border-right:1px solid #d29a6b;border-bottom:1px solid #d29a6b;transform:rotate(45deg);margin:0 0 8px}
 .signature .label{font-size:clamp(10px,2.9vw,16px)}
 .signature .sec-h h2{font-size:clamp(18px,4.9vw,30px);line-height:1.12;margin:18px 0 20px}
 .signature .sec-h h2 br{display:initial}
 .signature .sec-h>p:not(.label){font-size:clamp(12px,3.4vw,20px);line-height:1.4}
 .signature img{aspect-ratio:2.4/3;object-position:center}
 .villa-revealed .banner-copy h2{font-size:clamp(23px,6.2vw,36px);line-height:1.12}
 .villa-revealed .banner-copy>p:not(.label){font-size:clamp(13px,3.7vw,20px);line-height:1.4}
 .experiences .sec-h h2{font-size:clamp(18px,4.8vw,30px);line-height:1.15}
 .experiences .sec-h p{font-size:clamp(12px,3.5vw,20px);line-height:1.4}
 .experience-navigation{display:flex;flex-direction:column;align-items:center;margin-top:16px;color:#bbb}
 .experience-navigation>p{font-size:11px;letter-spacing:.04em}
 .experience-navigation>p span{margin-left:8px;color:#d5a17b}
 .experience-dots{display:flex}
 .experience-dots button{width:44px;height:44px;display:grid;place-items:center;border:0;background:none;padding:0}
 .experience-dots button span{width:5px;height:5px;border-radius:50%;background:#666;transition:background .2s,transform .2s}
 .experience-dots button[aria-current=true] span{background:#d5a17b;transform:scale(1.4)}
 .day-shell{width:100%;padding:12px 0}
 .day-header{padding:0 5%;margin-bottom:12px}
 .day-header h2{font-size:clamp(19px,5.2vw,31px);line-height:1.12;margin:12px 0 16px}
 .day-card{width:100%;max-height:580px}
 .day-image{width:calc((100vw - 70px) * 1.12)}
 .day-bottom{margin-top:10px}
 .guest-stories{padding:44px 0 30px}
 .guest-stories .sec-h h2{font-size:clamp(15px,4.8vw,30px);line-height:1.15}
 .guest-stories .sec-h p{font-size:clamp(12px,3.5vw,20px);line-height:1.4}
 .vids{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;scroll-behavior:smooth}
 .vids::-webkit-scrollbar{display:none}
 .vids .vid{flex:0 0 100%;min-width:0;aspect-ratio:3/4;border-radius:20px;scroll-snap-align:start}
 .vids .ring{width:54px;height:54px}
 .vids .ring svg{width:20px;height:24px}
 .testimonial-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:16px;font-size:12px;color:#bbb}
 .testimonial-controls button{width:44px;height:44px;border:1px solid #ffffff50;border-radius:50%;background:none;color:#fff;font-size:20px}
 .testimonial-controls button:disabled{opacity:.3;cursor:default}
 .book{padding-top:16px}
 .book .sec-h{margin-bottom:22px!important}
 .bgrid{padding-top:24px}
 .closing-cta .banner-copy h2{font-size:clamp(17px,5.3vw,32px);line-height:1.12}
 .closing-cta .banner-copy>.closing-description{font-size:clamp(13px,3.7vw,20px);line-height:1.4}
 .closing-description span{display:block}
 .closing-cta .banner-actions{flex-direction:column;align-items:center}
}
@media(prefers-reduced-motion:reduce){.vids{scroll-behavior:auto}}

/* A tap retains the cover until playback starts, with a retry on failure. */
.vid:not(.on)>video{opacity:0;pointer-events:none}
.vid.is-loading .play{cursor:progress}
.vid.is-loading .ring{animation:video-pulse 1s ease-in-out infinite alternate}
.video-status{position:absolute;z-index:2;bottom:16px;left:16px;right:16px;width:max-content;max-width:calc(100% - 32px);margin:auto;padding:8px 12px;background:#000c;border-radius:8px;color:#fff;font-size:13px;text-align:center;pointer-events:none}
@keyframes video-pulse{to{opacity:.55}}
