/* ============ tokens ============ */
:root{
  --font-primary:"Poppins",sans-serif;
  --font-logo:"Cormorant Garamond",serif;
  --color-navy:#1B3A6E;
  --color-navy-dark:#15305C;
  --color-gold:#C2963C;
  --color-cream:#EFEBE1;
  --color-ink:#3A3A3A;
  --color-muted:#6B6B6B;
  --color-maroon:#7B2B23;
  --color-heading:var(--color-navy);
  --radius:16px;
  --header-h:96px;
}
:root[data-theme="dark"]{
  --color-cream:#12151B;
  --color-ink:#D8D5CC;
  --color-muted:#9B9994;
  --color-maroon:#E28F82;
  --color-heading:#F1ECDF;
}
*{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{position:relative;margin:0;font-family:var(--font-primary);font-size:14px;line-height:1.5;color:var(--color-ink);
  background-color:var(--color-cream);transition:background-color .3s,color .3s}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:url("../img/pattern.png");background-repeat:repeat;background-size:300px}
:root[data-theme="dark"] body::before{filter:invert(1);opacity:.8}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none;transition:color .2s}
ul,li{margin:0;padding:0;list-style:none}
p{margin:0}
h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.3;color:var(--color-heading)}
button{margin:0;padding:0;border:0;background:transparent;font-family:inherit;cursor:pointer}

.container{width:100%;max-width:1230px;margin:0 auto;padding:0 15px}
.section{padding:56px 0}
.text-center{text-align:center}
.justify{text-align:justify}

/* ============ shared type ============ */
.eyebrow{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--color-gold);margin-bottom:8px}
.headline{font-size:17px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-heading)}
.lede{font-size:13px;line-height:1.85;color:var(--color-muted);margin-top:14px;max-width:1000px}

.pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:40px;padding:0 26px;border-radius:999px;
  background:var(--color-navy);color:#fff;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  transition:background .25s,transform .2s,box-shadow .25s}
.pill:hover{background:var(--color-navy-dark);transform:translateY(-2px) scale(1.03);box-shadow:0 10px 22px rgba(27,58,110,.25)}
.pill:active{transform:translateY(0) scale(.97);transition-duration:.1s}
.pill__icon{display:none}
.pill.-ghost{background:transparent;border:1px solid var(--color-navy);color:var(--color-navy)}
.pill.-ghost:hover{background:var(--color-navy);color:#fff}

.ratio{position:relative;display:block;overflow:hidden;border-radius:var(--radius)}
.ratio::before{display:block;width:100%;content:""}
.ratio-4-3::before{padding-bottom:75%}
.ratio-3-2::before{padding-bottom:66.667%}
.ratio-92-75::before{padding-bottom:81.5%}
.ratio-7-5::before{padding-bottom:71.4%}
.ratio-16-9::before{padding-bottom:56.25%}
.img-ratio{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.-hover-scale .img-ratio{transition:transform .8s cubic-bezier(.165,.84,.44,1)}
.-hover-scale:hover .img-ratio{transform:scale(1.05)}

/* ============ simple content pages ============ */
.pageSpacer{height:var(--header-h)}
.legal{padding:50px 0 20px}
.legal h2{font-size:15px;margin-top:34px;margin-bottom:10px}
.legal h2:first-child{margin-top:0}
.legal p,.legal li{font-size:12.5px;line-height:1.9;color:var(--color-muted)}
.legal ul{margin-top:8px;padding-left:18px}
.legal li{list-style:disc;margin-top:6px}
.legal a{color:var(--color-gold);text-decoration:underline}

/* ============ header ============ */
.header{position:fixed;top:0;left:0;right:0;height:var(--header-h);background:#fff;z-index:1000;
  display:flex;align-items:center;box-shadow:0 2px 18px rgba(27,58,110,.07);transition:background .3s,box-shadow .3s}
.header.is-sticky{box-shadow:0 4px 24px rgba(27,58,110,.14)}
:root[data-theme="dark"] .header{background:#161A21;box-shadow:0 2px 18px rgba(0,0,0,.35)}
:root[data-theme="dark"] .header.is-sticky{box-shadow:0 4px 24px rgba(0,0,0,.5)}
.header__inner{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 26px}
.header__logo{position:absolute;left:50%;transform:translateX(-50%);text-align:center}
.brandLogo{display:block;height:78px;width:auto;margin:0 auto}
:root[data-theme="dark"] .brandLogo{filter:invert(1)}
.burger{display:flex;flex-direction:column;gap:5px;padding:6px}
.burger span{display:block;width:22px;height:2px;background:var(--color-heading);border-radius:2px}
.burger span:nth-child(2){width:16px}

.header__actions{display:flex;align-items:center;gap:22px}
.headerLink{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-heading);transition:color .2s}
.headerLink:hover{color:var(--color-gold)}
.themeToggle{position:relative;width:36px;height:36px;flex-shrink:0;border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:var(--color-heading);transition:background .2s,color .2s}
.themeToggle:hover{background:rgba(27,58,110,.08)}
.themeToggle__icon{position:absolute}
.themeToggle .-moon{display:none}
:root[data-theme="dark"] .themeToggle:hover{background:rgba(255,255,255,.1)}
:root[data-theme="dark"] .themeToggle .-sun{display:none}
:root[data-theme="dark"] .themeToggle .-moon{display:block}

/* ============ hero ============ */
.hero{position:fixed;left:0;right:0;top:var(--header-h);display:flex;align-items:center;
  height:100vh;overflow:hidden;z-index:1;
  transition:transform .6s cubic-bezier(.65,0,.35,1)}
.hero.-hidden{transform:translateY(-100%)}
.hero__spacer{height:100vh}
.hero__bg{position:absolute;inset:-20px;z-index:-1;
  transform:translate(calc(var(--heroX,0)*1px),calc(var(--heroY,0)*1px));transition:transform .4s cubic-bezier(.165,.84,.44,1)}
.hero__bg img{width:100%;height:100%;object-fit:cover;
  transform:scale(1);transition:transform 1.1s cubic-bezier(.165,.84,.44,1)}
.hero:hover .hero__bg img{transform:scale(1.08)}
.hero__bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(10,20,35,.62) 0%,rgba(10,20,35,.3) 45%,rgba(10,20,35,.05) 100%)}
.hero .container{transition:transform .5s cubic-bezier(.165,.84,.44,1);
  transform:translate(calc(var(--heroX,0)*-.4px),calc(var(--heroY,0)*-.4px))}
.hero__title{font-size:44px;font-weight:600;color:#fff;line-height:1.25;letter-spacing:.01em}
.hero__title .-indent{padding-left:56px}
.hero__stars{display:flex;align-items:center;gap:10px;margin-top:22px;color:#fff;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.hero__stars .diamonds{letter-spacing:.28em;color:var(--color-gold);font-size:9px}

/* ============ intro ============ */
.intro__grid{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:center}
.intro__image{margin-top:-90px}
.intro .headline{margin-bottom:14px}
.intro__text{font-size:13px;line-height:1.9;color:var(--color-muted)}

/* ============ rooms / experience ============ */
.twoUp{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px}
.threeUp{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}
.expCard__title{font-size:14px;font-weight:600;color:var(--color-heading);margin-top:18px}
.expCard__text{font-size:12.5px;line-height:1.8;color:var(--color-muted);margin-top:8px;max-width:460px}

/* ============ property details ============ */
.detailsGrid{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:center}
.photoSlider__track{position:absolute;inset:0;display:flex;width:200%;height:100%;
  transition:transform .5s cubic-bezier(.65,0,.35,1)}
.photoSlider__track img{width:50%;height:100%;object-fit:cover;flex-shrink:0}
.photoSlider.-active-1 .photoSlider__track{transform:translateX(-50%)}
.photoSlider__next{position:absolute;top:50%;right:14px;transform:translateY(-50%);z-index:2;
  width:38px;height:38px;border-radius:50%;background:rgba(12,18,30,.55);color:#fff;
  display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);
  transition:background .2s,transform .2s}
.photoSlider__next:hover{background:rgba(12,18,30,.78)}
.photoSlider__next:active{transform:translateY(-50%) scale(.92)}
.photoSlider__next svg{width:18px;height:18px}
.detailsGrid .headline{margin-bottom:14px}
.details__text{font-size:13px;line-height:1.9;color:var(--color-muted)}
.detailNotes{margin-top:24px;display:flex;flex-direction:column;gap:16px}
.detailNote{display:flex;gap:12px;align-items:flex-start;font-size:12.5px;line-height:1.8;color:var(--color-muted)}
.detailNote svg{flex-shrink:0;width:17px;height:17px;margin-top:2px;stroke:var(--color-gold);fill:none;stroke-width:1.6}
.detailNote strong{color:var(--color-heading);font-weight:600}

/* ============ video showcase (vertical reels) ============ */
.reelsRow{display:flex;gap:16px;margin-top:30px;overflow-x:auto;scroll-snap-type:x proximity;
  padding-bottom:10px;-webkit-overflow-scrolling:touch}
.reelsRow::-webkit-scrollbar{height:6px}
.reelsRow::-webkit-scrollbar-track{background:transparent}
.reelsRow::-webkit-scrollbar-thumb{background:rgba(27,58,110,.22);border-radius:999px}
.reelCard{position:relative;flex:0 0 210px;aspect-ratio:9/16;border-radius:var(--radius);overflow:hidden;
  scroll-snap-align:start;display:flex;align-items:flex-end;cursor:pointer;
  background:linear-gradient(160deg,#1E293D,#0D1219);box-shadow:0 10px 26px rgba(10,16,26,.28)}
.reelCard__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.reelCard__play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(6px);z-index:1;
  display:flex;align-items:center;justify-content:center;color:#fff;transition:transform .25s,background .25s,opacity .2s}
.reelCard:hover .reelCard__play{transform:translate(-50%,-50%) scale(1.08);background:rgba(255,255,255,.22)}
.reelCard__play svg{width:16px;height:16px;margin-left:2px}
.reelCard.-playing .reelCard__play{opacity:0;pointer-events:none}
.reelCard__label{position:relative;z-index:1;width:100%;padding:16px 14px;font-size:11.5px;font-weight:600;
  letter-spacing:.04em;color:#fff;background:linear-gradient(180deg,rgba(12,18,30,0),rgba(12,18,30,.6))}

/* ============ booking ============ */
#booking{
  background:
    linear-gradient(180deg, rgba(10,10,10,.5), rgba(10,10,10,.7)),
    url("../img/booking_background.jpeg") center/cover no-repeat;
}
.bookingLayout{display:grid;grid-template-columns:1fr 420px;gap:60px;align-items:start}
.bookingLayout__copy{padding-top:6px}
.bookingLayout__copy .headline{color:#fff}
.bookingLayout__copy .lede{color:rgba(255,255,255,.82)}
.bookingForm{background:#fff;border-radius:var(--radius);padding:30px;justify-self:end;width:100%;
  box-shadow:0 8px 30px rgba(27,58,110,.1);display:flex;flex-direction:column;gap:16px}
:root[data-theme="dark"] .bookingForm{background:#1B2029;box-shadow:0 8px 30px rgba(0,0,0,.4)}
.bookingForm__field{display:flex;flex-direction:column;gap:6px}
.bookingForm__field span{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-heading)}
.bookingForm__field input{height:42px;padding:0 14px;border:1px solid rgba(27,58,110,.18);border-radius:8px;
  font-family:inherit;font-size:13px;color:var(--color-ink);background:var(--color-cream)}
.bookingForm__field input:focus{outline:2px solid var(--color-gold);outline-offset:1px}
:root[data-theme="dark"] .bookingForm__field input{border-color:rgba(255,255,255,.14)}

.bookingStep{display:flex;flex-direction:column;gap:8px;max-height:200px;opacity:1;overflow:hidden;
  transition:max-height .4s ease,opacity .3s ease,margin .4s ease}
.bookingStep.-collapsed{max-height:0;opacity:0;pointer-events:none}
.bookingStep__label{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-heading)}
.bookingStep__selected{font-size:11.5px;color:var(--color-gold);font-weight:600;min-height:14px}
.chipRow{display:flex;align-items:center;gap:10px}
.chip{position:relative;display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 18px;
  border-radius:999px;border:1px solid rgba(27,58,110,.22);background:var(--color-cream);color:var(--color-heading);
  font-size:11px;font-weight:600;letter-spacing:.04em;transition:background .2s,color .2s,transform .2s,border-color .2s}
.chip.-circle{padding:0 16px}
.chip:hover{transform:translateY(-1px);border-color:var(--color-gold)}
.chip.is-selected{background:var(--color-navy);border-color:var(--color-navy);color:#fff}
:root[data-theme="dark"] .chip{border-color:rgba(255,255,255,.16)}
.chip.-calendar{width:40px;padding:0;flex-shrink:0}
.chip.-calendar svg{width:16px;height:16px}
.chip__hiddenDate{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.pill.-whatsapp[disabled]{opacity:.45;pointer-events:none}

/* ============ testimonials ============ */
.testimonials{
  background:
    linear-gradient(180deg, rgba(10,10,10,.5), rgba(10,10,10,.7)),
    url("../img/resort.jpg") center/cover no-repeat;
  padding:70px 0 60px;color:#fff
}
.testimonials .headline{color:#fff}
.testimonialsSlider{overflow:hidden;margin-top:34px}
.testimonialsSlider__track{display:flex;gap:22px;transition:transform .6s cubic-bezier(.165,.84,.44,1)}
.tCard{flex:0 0 calc((100% - 44px)/3);background:#fff;border-radius:var(--radius);padding:28px 26px;text-align:center;
  box-shadow:0 8px 30px rgba(0,0,0,.08)}
:root[data-theme="dark"] .tCard{background:#1B2029;box-shadow:0 8px 30px rgba(0,0,0,.35)}
.tCard__avatar{width:62px;height:62px;border-radius:50%;object-fit:cover;margin:0 auto 14px}
.tCard__name{font-size:13px;font-weight:600;color:var(--color-heading)}
.tCard__text{font-size:11.5px;line-height:1.9;color:var(--color-muted);margin-top:14px;text-align:justify}
.dots{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:30px}
.dots button{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.35);transition:.2s}
.dots button.is-active{background:var(--color-gold);width:20px;border-radius:999px}

.reviewsBox{display:inline-flex;align-items:center;gap:9px;height:42px;padding:0 24px;border-radius:999px;
  border:1px solid rgba(255,255,255,.35);color:#fff;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  transition:background .25s,transform .2s,border-color .25s}
.reviewsBox svg{flex-shrink:0}
.reviewsBox:hover{background:var(--color-gold);border-color:var(--color-gold);color:#fff;transform:translateY(-2px)}
.reviewsBox:active{transform:translateY(0) scale(.97)}

/* ============ gallery ============ */
.galleryGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gTile{position:relative;border-radius:12px;overflow:hidden;cursor:pointer;background:#111}
.gTile img{transition:transform .7s cubic-bezier(.165,.84,.44,1),opacity .3s}
.gTile::after{content:"";position:absolute;inset:0;background:rgba(12,18,30,.18);transition:background .3s}
.gTile:hover img{transform:scale(1.05)}
.gTile:hover::after{background:rgba(12,18,30,.34)}
.gTile__caption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:16px 18px;color:#fff;font-size:12px;
  background:linear-gradient(180deg,rgba(12,18,30,0),rgba(12,18,30,.72))}

/* lightbox */
.lightbox{position:fixed;inset:0;z-index:1500;display:flex;align-items:center;justify-content:center;padding:40px;
  background:rgba(10,16,26,.9);opacity:0;pointer-events:none;transition:opacity .25s}
.lightbox.is-open{opacity:1;pointer-events:auto}
.lightbox img{max-width:min(1000px,90vw);max-height:82vh;width:auto;border-radius:12px}
.lightbox__caption{position:absolute;bottom:34px;left:0;right:0;text-align:center;color:rgba(255,255,255,.8);font-size:12px}
.lightbox__close{position:absolute;top:26px;right:30px;width:36px;height:36px;display:flex;align-items:center;justify-content:center}
.lightbox__close span{position:absolute;width:22px;height:1.5px;background:#fff}
.lightbox__close span:nth-child(1){transform:rotate(45deg)}
.lightbox__close span:nth-child(2){transform:rotate(-45deg)}

/* ============ footer ============ */
.footer{padding-top:60px}
.mapWidget{width:100%;max-width:220px;aspect-ratio:1/1;margin-left:auto;border-radius:var(--radius);
  overflow:hidden;box-shadow:0 8px 30px rgba(27,58,110,.1)}
.mapWidget iframe{display:block;width:100%;height:100%}
.footer__grid{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:40px;align-items:start}
.footer__nav a{display:block;font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--color-heading);padding:9px 0}
.footer__nav a:hover{color:var(--color-gold)}
.footer__center{text-align:center}
.footer__contact{display:inline-block;text-align:left;margin-top:22px}
.footer__contact li{display:flex;gap:10px;font-size:12px;line-height:1.7;color:var(--color-ink)}
.footer__contact li+li{margin-top:14px}
.footer__contact svg{flex-shrink:0;width:14px;height:14px;margin-top:3px;stroke:var(--color-heading);fill:none;stroke-width:1.4}
.footer__partner{text-align:center;margin-top:46px;font-size:10px;letter-spacing:.04em;color:var(--color-muted)}
.partnerLogo{margin-top:8px;font-family:var(--font-logo);font-size:22px;font-weight:600;color:#2E6B33;line-height:1}
.partnerLogo span{display:block;font-family:var(--font-primary);font-size:9px;font-weight:500;letter-spacing:.34em;
  text-transform:uppercase;color:#C08A2E;margin-top:2px}
.footer__bottom{margin-top:26px;padding:16px 0;border-top:1px solid rgba(27,58,110,.12);
  display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;
  font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-muted)}
:root[data-theme="dark"] .footer__bottom{border-top-color:rgba(255,255,255,.12)}
.footer__bottom a{color:var(--color-muted);transition:color .2s}
.footer__bottom a:hover{color:var(--color-gold)}

/* ============ floating whatsapp ============ */
.waFloat{position:fixed;right:0;bottom:150px;z-index:900;display:flex;align-items:center;gap:9px;
  background:#25D366;color:#fff;padding:10px 18px 10px 15px;border-radius:999px 0 0 999px;
  box-shadow:0 6px 18px rgba(0,0,0,.22);font-size:12px;font-weight:500;transition:padding .25s,transform .25s}
.waFloat:hover{padding-right:26px;color:#fff;transform:scale(1.06)}
.waFloat:active{transform:scale(.96)}
.waFloat svg{width:20px;height:20px;fill:currentColor;position:relative;z-index:1}
.waFloat::before{content:"";position:absolute;inset:0;border-radius:999px 0 0 999px;background:#25D366;
  animation:waPulse 2.4s ease-out infinite}
@keyframes waPulse{
  0%{transform:scale(1);opacity:.55}
  100%{transform:scale(1.7);opacity:0}
}

/* ============ floating instagram ============ */
.igFloat{position:fixed;right:0;bottom:96px;z-index:900;display:flex;align-items:center;gap:9px;
  background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);color:#fff;padding:10px 18px 10px 15px;
  border-radius:999px 0 0 999px;box-shadow:0 6px 18px rgba(0,0,0,.22);font-size:12px;font-weight:500;
  transition:padding .25s,transform .25s}
.igFloat:hover{padding-right:26px;color:#fff;transform:scale(1.06)}
.igFloat:active{transform:scale(.96)}
.igFloat svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;position:relative;z-index:1}
.igFloat::before{content:"";position:absolute;inset:0;border-radius:999px 0 0 999px;
  background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);
  animation:waPulse 2.4s ease-out infinite}

/* ============ mobile menu ============ */
.mobileMenu{position:fixed;inset:0;z-index:1200;background:var(--color-navy);display:flex;flex-direction:column;
  justify-content:center;padding:0 40px;gap:6px;opacity:0;pointer-events:none;transition:opacity .3s}
.mobileMenu.is-open{opacity:1;pointer-events:auto}
.mobileMenu a{font-size:20px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.8);padding:12px 0}
.mobileMenu a:hover{color:#fff}
.mobileMenu__close{position:absolute;top:24px;right:30px;width:34px;height:34px;display:flex;align-items:center;justify-content:center}
.mobileMenu__close span{position:absolute;width:22px;height:1.5px;background:#fff}
.mobileMenu__close span:nth-child(1){transform:rotate(45deg)}
.mobileMenu__close span:nth-child(2){transform:rotate(-45deg)}

/* ============ responsive ============ */
@media (max-width:1199px){
  .hero__title{font-size:36px}
  .intro__grid{gap:40px}
}
@media (max-width:991px){
  .section{padding:44px 0}
  .intro__grid{grid-template-columns:1fr;gap:26px}
  .intro__image{margin-top:0;order:-1}
  .detailsGrid{grid-template-columns:1fr;gap:26px}
  .tCard{flex:0 0 calc((100% - 22px)/2)}
  .galleryGrid{grid-template-columns:repeat(2,1fr)}
  .threeUp{grid-template-columns:1fr 1fr}
  .bookingLayout{grid-template-columns:1fr;gap:26px}
  .bookingForm{padding:26px;justify-self:stretch}
  .footer__grid{grid-template-columns:1fr;gap:30px;text-align:center}
  .footer__nav a{padding:7px 0}
  .footer__center{order:-1}
  .mapWidget{margin-left:auto;margin-right:auto}
}
@media (max-width:767px){
  .hero__title{font-size:28px}
  .hero__title .-indent{padding-left:26px}
  .headline{font-size:15px}
  .twoUp{grid-template-columns:1fr}
  .threeUp{grid-template-columns:1fr}
  .tCard{flex:0 0 100%}
  .galleryGrid{grid-template-columns:1fr}
  .bookingForm{padding:20px}
  .chipRow{flex-wrap:wrap}
  .brandLogo{height:54px}
  .headerLink{display:none}
  .pill.-header{width:38px;height:38px;padding:0;border-radius:50%}
  .pill.-header span{display:none}
  .pill.-header .pill__icon{display:block}
  .header__inner{padding:0 16px}
  .burger span{width:20px}
  .waFloat span{display:none}
  .waFloat{padding:12px 14px;border-radius:999px 0 0 999px}
  .igFloat span{display:none}
  .igFloat{padding:12px 14px;border-radius:999px 0 0 999px;bottom:86px}
  .reelCard{flex:0 0 160px}
}

/* full-page capture mode */
[data-shot] .hero{position:relative;top:0;height:600px;transform:none!important}
[data-shot] .hero__spacer{height:0}
[data-shot] .waFloat{display:none}
[data-shot] .igFloat{display:none}
