/* CANOPY CURRENT 2026 — floating navigation, open hero, organic editorial flow */
:root{
  --canopy-glass:rgba(7,17,13,.84);
  --canopy-edge:rgba(255,255,255,.18);
  --canopy-soft:#d9cfc0;
  --canopy-milk:#eee7dc;
  --canopy-round:24px;
}

body{overflow-x:hidden}
main,.site-foot{margin-right:0!important;margin-left:0!important}
.button,.reserve-link,.filters button,.text-button{border-radius:999px!important}
.button{padding-inline:1.55rem}

/* The navigation now floats horizontally, with all primary actions on the right. */
@media(min-width:1181px){
  .site-head{
    position:fixed;
    inset:18px 24px auto;
    z-index:60;
    display:block;
    width:auto;
    height:84px;
    color:#fff;
    border:0;
    background:transparent;
    box-shadow:none;
  }
  .site-head .top-note{display:none}
  .site-head .nav-wrap{
    display:flex;
    flex-direction:row;
    align-items:center;
    width:100%;
    max-width:none;
    height:84px;
    margin:0;
    padding:9px 10px 9px 20px;
    border:1px solid var(--canopy-edge);
    border-radius:999px;
    background:var(--canopy-glass);
    box-shadow:0 18px 55px rgba(0,0,0,.24);
    backdrop-filter:blur(22px) saturate(1.25);
  }
  .site-head .wordmark{
    display:grid;
    grid-template-columns:50px 1fr;
    align-items:center;
    gap:.85rem;
    min-width:218px;
    padding:0;
    border:0;
    font-size:1.05rem;
  }
  .site-head .wordmark img{
    width:50px;
    height:50px;
    padding:7px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:50%;
    background:rgba(255,255,255,.06);
  }
  .site-head .wordmark .brand-copy small{margin-top:.28rem;font-size:.48rem}
  .site-head .desktop-nav{
    display:flex;
    flex:1;
    flex-direction:row;
    align-items:center;
    justify-content:flex-end;
    gap:2px;
    height:100%;
    margin:0 0 0 1rem;
  }
  .site-head .desktop-nav a:not(.reserve-link){
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    margin:0;
    padding:.7rem .68rem;
    color:#d3dad5;
    border:0;
    border-radius:999px;
    font-size:.66rem;
    letter-spacing:.01em;
    white-space:nowrap;
  }
  .site-head .desktop-nav a:not(.reserve-link)::before,
  .site-head .desktop-nav a:not(.reserve-link)::after{display:none}
  .site-head .desktop-nav a:not(.reserve-link):hover,
  .site-head .desktop-nav a:not(.reserve-link).active{
    padding-left:.68rem;
    color:#fff;
    background:rgba(255,255,255,.1);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);
  }
  .site-head .desktop-nav .nav-no{display:none}
  .site-head .reserve-link{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.7rem;
    min-height:58px!important;
    margin:0 0 0 .45rem!important;
    padding:.75rem 1.25rem!important;
    color:#15221b!important;
    border:0!important;
    border-radius:999px!important;
    background:#e3a079;
    box-shadow:0 8px 24px rgba(169,97,62,.28);
    white-space:nowrap;
  }
}

/* Open arrival: no text box, no hard-edged rail, one cinematic field. */
.hero,.page-index .hero{
  align-items:center;
  min-height:clamp(720px,100svh,980px);
  padding:10.5rem 7vw 8rem;
  background-image:
    linear-gradient(90deg,rgba(3,10,7,.78) 0%,rgba(3,10,7,.42) 44%,rgba(3,10,7,.08) 76%),
    linear-gradient(0deg,rgba(3,9,7,.6),transparent 46%),
    var(--hero);
  background-size:cover,cover,cover;
  background-position:center,center,center;
  background-repeat:no-repeat,no-repeat,no-repeat;
  isolation:isolate;
}
.page-index .hero::before{display:none}
.hero::after{display:none!important}
.hero-copy{
  position:relative;
  z-index:3;
  width:min(790px,70vw);
  max-width:790px;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.hero .kicker{margin-bottom:1.15rem;color:#f1b18a}
.hero h1,.page-index .hero h1{
  max-width:780px;
  font-size:clamp(4.8rem,7.8vw,8.9rem);
  line-height:.83;
  letter-spacing:-.052em;
  text-shadow:0 8px 42px rgba(0,0,0,.24);
}
.hero h1 em{display:inline-block;color:#efb28d;font-style:italic}
.hero-copy>p:not(.kicker){
  max-width:570px;
  margin-top:1.7rem;
  color:#edf0ed;
  font-size:1.08rem;
  line-height:1.65;
}
.hero-actions{display:flex;align-items:center;gap:.7rem;margin-top:1.8rem}
.hero-actions .button,.hero-actions .circle-link{min-height:54px;border-radius:999px}
.hero-actions .circle-link{
  display:flex;
  padding:0 1.25rem;
  border:1px solid rgba(255,255,255,.4);
  background:rgba(255,255,255,.07);
  backdrop-filter:blur(10px);
}
.hero-actions .circle-link span{width:auto;height:auto;border:0;color:#f1b18a}
.hero-coordinate{
  position:absolute;
  z-index:2;
  display:flex;
  right:auto;
  bottom:2.2rem;
  left:7vw;
  gap:1.3rem;
  padding:.72rem 1rem;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  background:rgba(5,13,9,.42);
  backdrop-filter:blur(10px);
  color:#fff;
  font-size:.58rem;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
}

/* A horizontal property ribbon replaces the square ledger. */
.stat-row{
  z-index:8;
  grid-template-columns:repeat(4,1fr);
  width:min(1120px,calc(100% - 10vw));
  max-width:none;
  margin:-42px auto 0;
  padding:.55rem;
  overflow:hidden;
  border:1px solid rgba(20,31,25,.12);
  border-radius:999px;
  background:rgba(238,231,220,.96);
  box-shadow:0 24px 70px rgba(5,15,10,.22);
  backdrop-filter:blur(18px);
}
.stat-row div{padding:1.3rem 1.8rem;border-right:1px solid rgba(20,31,25,.13)}
.stat-row strong{color:#1a281f;font-size:1.85rem}
.stat-row span{color:#536158;font-size:.62rem}

/* Alternating wide editorial sections, not one long vertical stack. */
.section{padding:8rem max(5vw,calc((100vw - 1320px)/2))}
.section::before{border:0!important}
.section-head{grid-template-columns:minmax(170px,.28fr) minmax(0,1fr);align-items:end}
.page-index main>.section:nth-of-type(2){
  padding-top:10rem;
  overflow:hidden;
  color:#1a281f;
  background:var(--canopy-milk);
}
.page-index main>.section:nth-of-type(2) .section-head h2,
.page-index main>.section:nth-of-type(2) .lead{color:#1a281f}
.page-index main>.section:nth-of-type(2)::after{
  content:"";
  position:absolute;
  right:-12vw;
  top:7rem;
  width:31vw;
  height:31vw;
  border:1px solid rgba(25,40,31,.12);
  border-radius:50%;
  box-shadow:0 0 0 4vw rgba(25,40,31,.025);
}
.editorial-split,.editorial-split.reverse{grid-template-columns:minmax(320px,.78fr) minmax(480px,1.22fr);gap:clamp(3rem,7vw,8rem)}
.editorial-split.reverse{grid-template-columns:minmax(480px,1.22fr) minmax(320px,.78fr)}
.editorial-split img{
  height:clamp(520px,61vw,720px);
  border-radius:32px;
  filter:saturate(.88) contrast(1.03);
}
.editorial-split.reverse img{border-radius:32px}
.lead{font-size:clamp(1.7rem,2.6vw,2.85rem)}

/* Home cards use the same disciplined catalogue geometry as the rest of the resort. */
.story-card,.story-card:nth-child(even),.values article,.salon-guide div,.dayline div{
  overflow:hidden;
  border-radius:var(--canopy-round);
}
.page-index .cards.three{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch;
  gap:1.25rem;
  background:transparent;
}
.page-index .cards.three .story-card,
.page-index .cards.three .story-card:nth-child(even){
  display:flex;
  flex-direction:column;
  min-height:0;
  margin:0;
  border:1px solid rgba(255,255,255,.1);
  border-radius:24px;
  background:var(--pine-panel);
}
.page-index .cards.three .story-card:nth-child(2){margin-top:0;border-radius:24px}
.page-index .cards.three .card-image,
.page-index .cards.three .card-image img{height:270px;min-height:270px}
.page-index .cards.three .story-card:nth-child(2) .card-image{order:0}
.page-index .cards.three .card-copy{display:flex;flex:1;flex-direction:column;min-height:260px;padding:1.75rem}
.page-index .cards.three .card-copy h3{font-size:2.05rem}
.page-index .cards.three .card-meta{margin-top:auto}
.page-index .cards.three .card-number{display:none}
.card-image span{border-radius:999px}
.card-image span b{border-radius:50%}

.image-led{
  grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);
  border:0;
  border-radius:32px;
  background:rgba(255,255,255,.055);
}
.image-led img{height:650px}
.offer-band{
  gap:1rem;
  padding:1rem;
  border-radius:28px;
  background:rgba(17,24,19,.1);
}
.offer-band article{min-height:300px;border-radius:20px}
.faq{max-width:1120px}
.faq article{padding:0 1.4rem;border-radius:24px;transition:.25s}
.faq article:hover,.faq article.open{background:rgba(255,255,255,.045)}

/* Forms stay wide and useful on desktop. */
.booking-shell{
  grid-template-columns:minmax(330px,.68fr) minmax(0,1.32fr);
  min-height:650px;
  border-radius:32px;
}
.booking-shell aside{padding:4.5rem 3.4rem;border-radius:0}
.booking-shell form{padding:4.5rem}
.booking-shell [data-step="1"] .field-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem}
.booking-shell [data-step="1"] .field-grid label:nth-child(4){grid-column:span 1}
.booking-shell [data-step="2"] .field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}
.booking-shell [data-step="2"] .field-grid .wide{grid-column:1/-1}
.field-grid input,.field-grid select,.field-grid textarea,
.contact-grid input,.contact-grid select,.contact-grid textarea{
  padding:1rem 1.05rem;
  border:1px solid rgba(24,35,30,.2);
  border-radius:18px;
  background:rgba(255,255,255,.64);
}
.contact-grid{
  grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr);
  border-radius:32px;
}
.contact-grid>div{border-radius:0}
.contact-grid form{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-content:center;
  gap:0 1.25rem;
}
.contact-grid form>.kicker,
.contact-grid form label:nth-of-type(4),
.contact-grid form .form-error,
.contact-grid form .form-success{grid-column:1/-1}
.contact-grid form label{margin-bottom:1.1rem}
.contact-grid form>.button{justify-self:start}
.form-success{border-radius:28px}

/* Site-wide catalogue correction: compact 3x2 collections instead of full-width card stacks. */
body:not(.page-index) .cards.three,
body:not(.page-index) .cards.two,
body:not(.page-index) .cards.three.compact{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch;
  gap:1.1rem;
  background:transparent;
}
body:not(.page-index) .cards.two{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body:not(.page-index) .cards .story-card,
body:not(.page-index) .cards .story-card:nth-child(even){
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:0;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(241,236,226,.13);
  border-radius:28px;
  background:rgba(255,255,255,.035);
}
body:not(.page-index) .cards .story-card:nth-child(even) .card-image,
body:not(.page-index) .cards .story-card:nth-child(even) .card-copy{order:initial}
body:not(.page-index) .cards .card-image,
body:not(.page-index) .cards .card-image img,
body:not(.page-index) .cards .story-card>img{
  width:100%;
  height:260px;
  min-height:260px;
}
body:not(.page-index) .cards .card-copy{
  display:flex;
  flex:1;
  flex-direction:column;
  justify-content:flex-start;
  min-height:250px;
  padding:1.75rem;
}
body:not(.page-index) .cards .card-copy h3{margin:.2rem 0 .75rem;font-size:2.05rem;line-height:1.05}
body:not(.page-index) .cards .card-copy>p:not(.kicker){font-size:.91rem;line-height:1.6}
body:not(.page-index) .cards .card-meta{margin-top:auto;padding-top:1rem}
body:not(.page-index) .cards .card-action{margin-top:1.1rem}
body:not(.page-index) .cards .card-number{display:none}
body:not(.page-index) .cards.compact .card-image,
body:not(.page-index) .cards.compact .card-image img{height:220px;min-height:220px}
body:not(.page-index) .cards.compact .card-copy{min-height:230px;padding:1.55rem}
body:not(.page-index) .cards.compact .card-copy h3{font-size:1.8rem}

/* Contact becomes two horizontal bands: facts first, collaborative form second. */
.contact-panel{
  overflow:hidden;
  border:1px solid rgba(241,236,226,.14);
  border-radius:32px;
  background:var(--paper);
  box-shadow:0 34px 90px rgba(0,0,0,.2);
}
.contact-heading{
  display:grid;
  grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr);
  align-items:end;
  gap:5vw;
  padding:3.8rem 4rem 3rem;
  color:#fff;
  background:var(--needle);
}
.contact-heading h2{margin:0;font-size:clamp(3rem,5vw,5.4rem);line-height:.9}
.contact-heading>p{max-width:550px;margin:0;font-family:var(--font-display);font-size:clamp(1.6rem,2.5vw,2.7rem);line-height:1.2}
.contact-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));color:var(--paper-ink);background:#e9e1d5}
.contact-facts>a,.contact-facts>p{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:150px;
  margin:0;
  padding:1.7rem;
  border-right:1px solid rgba(24,35,30,.14);
}
.contact-facts>:last-child{border-right:0}
.contact-facts span{color:#8c583c;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.contact-facts b{margin-top:auto;font-size:.98rem;overflow-wrap:anywhere}
.contact-facts small{margin-top:.35rem;color:#5a675f;font-size:.75rem;line-height:1.45}
.contact-form{
  display:grid;
  grid-template-columns:minmax(270px,.66fr) minmax(0,1.34fr);
  gap:4rem;
  padding:4rem;
  color:var(--paper-ink);
  border-top:1px solid rgba(24,35,30,.14);
  background:#f3ede3;
}
.contact-form-intro h3{max-width:430px;margin:.25rem 0 1rem;font-size:clamp(2.2rem,3.4vw,3.8rem);line-height:1}
.contact-form-intro>p:last-child{max-width:390px;color:#59675f;line-height:1.65}
.contact-form-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:1.15rem}
.contact-form-fields label{color:#385244;font-size:.7rem;font-weight:700;letter-spacing:.075em;text-transform:uppercase}
.contact-form-fields .message-field,
.contact-form-fields .form-error,
.contact-form-fields .form-success{grid-column:1/-1}
.contact-form-fields input,.contact-form-fields select,.contact-form-fields textarea{
  display:block;
  width:100%;
  margin-top:.55rem;
  padding:1rem 1.05rem;
  color:var(--paper-ink);
  border:1px solid rgba(24,35,30,.2);
  border-radius:16px;
  background:rgba(255,255,255,.72);
  outline:0;
}
.contact-form-fields input:focus,.contact-form-fields select:focus,.contact-form-fields textarea:focus{border-color:var(--copper)}
.contact-form-fields textarea{min-height:125px;resize:vertical}
.contact-form-fields>.button{justify-self:start}

/* Inner pages should introduce content sooner than the home arrival. */
body:not(.page-index) .hero{min-height:clamp(620px,78svh,790px);padding-top:9rem;padding-bottom:5.5rem}
body:not(.page-index) .hero h1{font-size:clamp(4.2rem,6.3vw,7rem);line-height:.87}
body:not(.page-index) .section{padding-top:6.5rem;padding-bottom:6.5rem}
body:not(.page-index) .section-head{margin-bottom:3rem}

/* Softer supporting surfaces. */
.gallery-grid button,.lightbox,.cookie,.cookie-dialog{border-radius:32px}
.legal aside{border-radius:30px}
.footer-invite{border-radius:50% 50% 0 0 / 80px 80px 0 0}
.site-foot{padding-top:1px;background:#060b09}

@media(max-width:1180px){
  .site-head{
    position:fixed;
    inset:12px 12px auto;
    z-index:60;
    width:auto;
    height:70px;
    border:0;
    border-radius:999px;
    background:rgba(7,17,13,.9);
    box-shadow:0 14px 40px rgba(0,0,0,.22);
    backdrop-filter:blur(18px);
  }
  .site-head .top-note,.site-head .desktop-nav{display:none}
  .site-head .nav-wrap{height:70px;padding:0 .65rem 0 1rem}
  .site-head .wordmark{grid-template-columns:40px 1fr;border:0;padding:0}
  .site-head .wordmark img{width:40px;height:40px;border-radius:50%}
  .site-head .menu-button{display:block;border-radius:50%}
  .site-head .mobile-drawer{
    position:fixed;
    inset:0;
    z-index:-1;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-content:center;
    gap:.25rem 2rem;
    padding:7rem 8vw 4rem;
    border-radius:0 0 60px 60px;
    background:#0b1712;
  }
  .site-head .mobile-drawer a{font-size:clamp(1.5rem,4vw,2.5rem)}
  .hero,.page-index .hero{padding-top:9rem}
  .page-index .cards.three{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .page-index .cards.three .story-card:nth-child(2){margin-top:0}
  .page-index .cards.three .story-card:nth-child(3){grid-column:auto;width:auto;margin-left:0}
  .booking-shell [data-step="1"] .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body:not(.page-index) .cards.three,
  body:not(.page-index) .cards.two,
  body:not(.page-index) .cards.three.compact{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .contact-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-facts>:nth-child(2){border-right:0}
  .contact-facts>:nth-child(-n+2){border-bottom:1px solid rgba(24,35,30,.14)}
  .contact-form{grid-template-columns:minmax(240px,.6fr) minmax(0,1.4fr);gap:2.5rem;padding:3rem}
  .contact-form-fields{grid-template-columns:1fr 1fr}
  .contact-form-fields label:nth-child(3){grid-column:1/-1}
}

@media(max-width:760px){
  .page-index main>.hero.hero-index{display:flex!important}
  .page-index main>.hero.hero-index>.hero-coordinate{display:none!important}
  .site-head .wordmark{font-size:.98rem}
  .site-head .wordmark .brand-copy small{display:none}
  .site-head .mobile-drawer{grid-template-columns:1fr;align-content:start;padding-top:6.5rem;overflow:auto}
  .site-head .mobile-drawer a{padding:.4rem 0;font-size:1.65rem}
  .site-head .nav-wrap{width:100%;max-width:none}
  .site-head .menu-button{position:absolute;right:.7rem;top:12px;z-index:3;flex:0 0 46px}
  .hero,.page-index .hero{min-height:760px;padding:8rem 1.25rem 6rem}
  .hero-copy{width:100%}
  .hero h1,.page-index .hero h1{font-size:clamp(3.5rem,15vw,5.2rem);line-height:.86}
  .hero-copy>p:not(.kicker){font-size:.98rem}
  .hero-actions{align-items:stretch;flex-direction:row;flex-wrap:wrap}
  .hero-actions .button,.hero-actions .circle-link{flex:1;justify-content:center;min-width:150px}
  .hero-coordinate{display:none}
  .stat-row{
    grid-template-columns:1fr 1fr;
    width:calc(100% - 1.5rem);
    margin:-32px auto 0;
    border-radius:34px;
  }
  .stat-row div{padding:1.1rem;border-bottom:1px solid rgba(20,31,25,.12)}
  .stat-row div:nth-child(2){border-right:0}
  .section{padding:5.5rem 1.25rem}
  .section-head{grid-template-columns:1fr}
  .editorial-split,.editorial-split.reverse{grid-template-columns:1fr;gap:2.5rem}
  .editorial-split.reverse>div{order:0}
  .editorial-split img,.editorial-split.reverse img{height:430px;border-radius:24px}
  .page-index .cards.three{
    display:flex!important;
    gap:1rem;
    width:100%;
    margin-right:0;
    padding-right:0;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .page-index .cards.three .story-card,
  .page-index .cards.three .story-card:nth-child(2),
  .page-index .cards.three .story-card:nth-child(3){
    flex:0 0 84vw;
    width:auto;
    margin:0;
    scroll-snap-align:start;
  }
  .page-index .cards.three .card-image,
  .page-index .cards.three .card-image img{height:260px;min-height:260px}
  .image-led{grid-template-columns:1fr;border-radius:24px}
  .image-led img{height:410px}
  .offer-band{grid-template-columns:1fr;border-radius:24px}
  .offer-band article{min-height:0;border-radius:18px}
  .booking-shell,.contact-grid{grid-template-columns:1fr;border-radius:24px}
  .booking-shell aside,.contact-grid>div{border-radius:0}
  .booking-shell form{padding:2.4rem 1.25rem}
  .booking-shell [data-step="1"] .field-grid,
  .booking-shell [data-step="2"] .field-grid,
  .contact-grid form{grid-template-columns:1fr 1fr}
  .booking-shell [data-step="2"] .field-grid .wide,
  .contact-grid form label:nth-of-type(4){grid-column:1/-1}
  .contact-grid form{padding:2.7rem 1.25rem}
  body:not(.page-index) .cards.three,
  body:not(.page-index) .cards.two,
  body:not(.page-index) .cards.three.compact{
    display:flex!important;
    gap:1rem;
    width:100%;
    margin-right:0;
    padding-right:0;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  body:not(.page-index) .cards .story-card,
  body:not(.page-index) .cards .story-card:nth-child(even){flex:0 0 82vw;scroll-snap-align:start}
  body:not(.page-index) .cards .card-image,
  body:not(.page-index) .cards .card-image img{height:250px;min-height:250px}
  .contact-panel{border-radius:32px}
  .contact-heading{grid-template-columns:1fr 1fr;gap:1.5rem;padding:2.4rem 1.4rem}
  .contact-heading h2{font-size:2.7rem}
  .contact-heading>p{font-size:1.25rem}
  .contact-facts{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .contact-facts>a,.contact-facts>p{flex:0 0 72vw;min-height:135px;border-right:1px solid rgba(24,35,30,.14);border-bottom:0!important;scroll-snap-align:start}
  .contact-form{grid-template-columns:1fr;gap:1.8rem;padding:2.5rem 1.4rem}
  .contact-form-intro{display:grid;grid-template-columns:.5fr 1fr;gap:1rem;align-items:start}
  .contact-form-intro .kicker{grid-column:1/-1}
  .contact-form-intro h3{font-size:2.3rem}
  .contact-form-intro>p:last-child{margin-top:0}
  .footer-invite{border-radius:50% 50% 0 0 / 44px 44px 0 0}
}

@media(max-width:480px){
  .hero-actions{flex-direction:column}
  .booking-shell [data-step="1"] .field-grid,
  .booking-shell [data-step="2"] .field-grid,
  .contact-grid form{grid-template-columns:1fr}
  .booking-shell [data-step="2"] .field-grid .wide,
  .contact-grid form label:nth-of-type(4){grid-column:auto}
  .contact-heading{grid-template-columns:1fr}
  .contact-form-intro{grid-template-columns:1fr}
  .contact-form-fields{grid-template-columns:1fr}
  .contact-form-fields label:nth-child(3),
  .contact-form-fields .message-field{grid-column:auto}
  .cookie>div:last-child{display:grid;grid-template-columns:1fr 1fr;white-space:normal}
  .cookie .text-button{grid-column:1/-1;justify-self:start}
  .cookie .button{width:100%;padding-inline:.5rem;font-size:.58rem}
}
