/* CLUBB Heritage 2.0 Visual Recovery R17
Scope: Global Shell + Home + Product Stage only. */

:root{--h2-bg:#f3eee7;--h2-surface:#fbf8f3;--h2-surface-strong:#fffdf9;--h2-ink:#211a16;--h2-muted:rgba(33,26,22,.62);--h2-line:rgba(48,35,27,.11);--h2-accent:#9f7048;--h2-dark:#191512;--h2-max:1320px}
body.clubb-theme-heritage{background:var(--h2-bg);color:var(--h2-ink)}
.navbar{background:rgba(248,244,238,.88)!important;border-bottom:1px solid var(--h2-line)!important;box-shadow:0 10px 38px rgba(48,35,27,.05)!important}
.navbar>.container-fluid{width:min(calc(100% - 36px),var(--h2-max))}
.navbar .nav-link{color:rgba(33,26,22,.68)!important}
.navbar .nav-link:hover,.navbar .nav-link:focus-visible{color:var(--h2-ink)!important;background:rgba(60,43,32,.055)!important}
.clubb-home-shell-content{background:radial-gradient(circle at 84% 7%,rgba(159,112,72,.13),transparent 28%),linear-gradient(180deg,#faf7f2 0%,#f2ebe3 55%,#f7f3ed 100%)!important}
.clubb-hero-new{width:min(calc(100% - 48px),var(--h2-max))!important;min-height:calc(100svh - 72px);padding:72px 0 58px!important;display:grid!important;grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr)!important;gap:54px!important;align-items:center!important}
.clubb-hero-new__right{order:1!important;max-width:560px!important;gap:18px!important}.clubb-hero-new__left{order:2!important;width:100%!important;min-width:0}
.clubb-hero-new__eyebrow{color:var(--h2-accent)!important;font-size:11px!important;letter-spacing:.17em!important}.clubb-hero-new__title{max-width:540px!important;color:var(--h2-ink)!important;font-size:clamp(52px,5.2vw,78px)!important;line-height:.91!important;letter-spacing:-.055em!important;font-weight:560!important}.clubb-hero-new__title span{color:var(--h2-accent)!important}.clubb-hero-new__lead{max-width:470px!important;color:var(--h2-muted)!important;font-size:16px!important;line-height:1.62!important}
.clubb-hero-cinematic{position:relative;width:100%;aspect-ratio:4/5;max-height:760px;min-height:560px;overflow:hidden;border-radius:8px;background:linear-gradient(145deg,rgba(159,112,72,.16),rgba(25,21,18,.08)),#d9cfc4;box-shadow:0 32px 86px rgba(45,32,23,.17);isolation:isolate}.clubb-hero-cinematic::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 58%,rgba(17,13,10,.42) 100%);z-index:1}.clubb-hero-cinematic__video{display:block;width:100%;height:100%;object-fit:cover;object-position:center;background:#d8cec2}.clubb-hero-cinematic .clubb-hero-phone__sound{z-index:3;right:18px!important;bottom:18px!important;background:rgba(20,16,13,.68)!important;border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(10px)}
.clubb-hero-feature{width:min(100%,520px)!important;margin-top:4px;border-radius:12px!important;border:1px solid var(--h2-line)!important;background:rgba(255,253,249,.7)!important;box-shadow:none!important}.clubb-hero-feature:hover{transform:translateY(-1px)!important;box-shadow:0 16px 42px rgba(48,35,27,.08)!important}.clubb-hero-feature__media{border-radius:8px!important}.clubb-hero-feature__cta{border-radius:6px!important;background:var(--h2-dark)!important}
.clubb-route-layer.is-product-stage{--journey-bg:var(--h2-bg)!important;--journey-surface:var(--h2-surface)!important;--journey-surface-raised:var(--h2-surface-strong)!important;--journey-text:var(--h2-ink)!important;--journey-muted:var(--h2-muted)!important;--journey-line:var(--h2-line)!important;--journey-accent:var(--h2-accent)!important;--journey-accent-strong:var(--h2-dark)!important}
.clubb-route-layer.is-product-stage .clubb-product-page>.container{width:min(calc(100% - 48px),1280px)!important}.clubb-route-layer.is-product-stage .clubb-pdp-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-bottom:12px!important}.clubb-route-layer.is-product-stage .clubb-product-top__title{max-width:820px!important;font-size:clamp(48px,4.6vw,66px)!important;line-height:.93!important;letter-spacing:-.05em!important;font-weight:560!important}.clubb-route-layer.is-product-stage .clubb-pdp-heading__summary{max-width:680px!important;font-size:15px!important}.clubb-route-layer.is-product-stage .clubb-product-meta-row{gap:14px!important;margin:14px 0 26px!important}.clubb-route-layer.is-product-stage .clubb-product-meta-item{min-height:auto!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;font-size:12px!important;color:var(--h2-muted)!important}.clubb-route-layer.is-product-stage .clubb-product-meta-item+.clubb-product-meta-item{padding-left:14px!important;border-left:1px solid var(--h2-line)!important}.clubb-route-layer.is-product-stage .clubb-pdp-main-grid{grid-template-columns:minmax(0,1fr) minmax(330px,370px)!important;gap:44px!important;margin-top:0!important}.clubb-route-layer.is-product-stage .clubb-carousel{border-radius:8px!important;background:#201a16!important;box-shadow:0 28px 74px rgba(45,32,23,.14)!important}.clubb-route-layer.is-product-stage .clubb-carousel__track{aspect-ratio:16/10!important}.clubb-route-layer.is-product-stage .clubb-carousel__thumb{border-radius:4px!important}.clubb-route-layer.is-product-stage .clubb-pdp-gallery__all{border-radius:6px!important}.clubb-route-layer.is-product-stage .clubb-product-sidebar{top:22px!important;border-radius:10px!important;background:rgba(255,253,249,.95)!important;border:1px solid var(--h2-line)!important;box-shadow:0 22px 54px rgba(45,32,23,.10)!important}.clubb-route-layer.is-product-stage .clubb-product-sidebar__submit{border-radius:7px!important;background:var(--h2-dark)!important}.clubb-route-layer.is-product-stage .clubb-product-card{border-top:1px solid var(--h2-line)!important}.clubb-route-layer.is-product-stage .clubb-pdp-option-card,.clubb-route-layer.is-product-stage .clubb-pdp-addon{border-radius:8px!important;box-shadow:none!important}.clubb-route-layer.is-product-stage .clubb-experience-proof{border-radius:8px!important;background:rgba(255,253,249,.54)!important}.clubb-route-layer.is-product-stage .clubb-experience-proof__item,.clubb-route-layer.is-product-stage .clubb-experience-proof__inline-shell{border-radius:6px!important;overflow:hidden}.clubb-cookie{border-radius:10px!important;width:min(460px,calc(100vw - 32px))!important}
@media(max-width:980px){.clubb-hero-new{grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr)!important;gap:32px!important}.clubb-hero-cinematic{min-height:480px}.clubb-route-layer.is-product-stage .clubb-pdp-main-grid{grid-template-columns:1fr!important;gap:30px!important}}
@media(max-width:767px){.navbar>.container-fluid{width:calc(100% - 20px)!important}.clubb-hero-new{width:100%!important;min-height:auto!important;padding:54px 16px 32px!important;grid-template-columns:1fr!important;gap:22px!important}.clubb-hero-new__right{order:1!important;max-width:none!important;gap:13px!important}.clubb-hero-new__left{order:2!important}.clubb-hero-new__title{max-width:355px!important;font-size:clamp(39px,12.2vw,49px)!important;line-height:.92!important}.clubb-hero-new__lead{max-width:330px!important;font-size:14px!important}.clubb-hero-cinematic{aspect-ratio:4/5;min-height:0;max-height:none;border-radius:6px;box-shadow:0 20px 46px rgba(45,32,23,.14)}.clubb-hero-feature{grid-template-columns:92px minmax(0,1fr)!important;border-radius:8px!important;padding:8px!important}.clubb-hero-feature__media{width:92px!important;height:92px!important}.clubb-hero-feature__description,.clubb-hero-feature__cta{display:none!important}.clubb-route-layer.is-product-stage .clubb-product-page>.container{width:calc(100% - 24px)!important}.clubb-route-layer.is-product-stage .clubb-pdp-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px}.clubb-route-layer.is-product-stage .clubb-product-top__title{font-size:clamp(36px,10.8vw,46px)!important;line-height:.94!important}.clubb-route-layer.is-product-stage .clubb-pdp-heading__summary{font-size:13px!important}.clubb-route-layer.is-product-stage .clubb-product-meta-row{gap:8px 12px!important;margin:10px 0 18px!important;flex-wrap:wrap}.clubb-route-layer.is-product-stage .clubb-product-meta-item+.clubb-product-meta-item{padding-left:0!important;border-left:0!important}.clubb-route-layer.is-product-stage .clubb-carousel{border-radius:6px!important}.clubb-route-layer.is-product-stage .clubb-carousel__track{aspect-ratio:4/3!important}.clubb-route-layer.is-product-stage .clubb-product-sidebar{border-radius:8px!important;box-shadow:0 14px 32px rgba(45,32,23,.08)!important}.clubb-route-layer.is-product-stage .clubb-experience-proof{padding:14px!important;border-radius:6px!important}.clubb-cookie{left:8px!important;right:8px!important;bottom:8px!important;width:auto!important;max-height:min(44vh,360px);overflow:auto}}
@media(prefers-reduced-motion:reduce){.clubb-hero-feature{transition:none!important}}


/* CLUBB R20 MOBILE BOOKING COMPOSER
   Pattern synthesis: onefinestay mobile actions + Dawn/Vercel drawer lifecycle.
   The existing booking form remains the single mutable commercial surface. */
.clubb-mobile-booking-bar,.clubb-mobile-booking-close,.clubb-mobile-booking-backdrop{display:none}

@media(max-width:767px){
  .clubb-route-layer.is-product-stage .clubb-mobile-booking-bar{
    position:sticky;top:calc(var(--clubb-route-top,64px) + 8px);z-index:24;
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    margin:12px 0 18px;padding:9px 9px 9px 13px;
    border:1px solid var(--h2-line);border-radius:8px;
    background:rgba(255,253,249,.94);box-shadow:0 12px 30px rgba(45,32,23,.10);
    backdrop-filter:blur(14px);
  }
  .clubb-mobile-booking-bar__copy{display:flex;min-width:0;flex-direction:column;gap:1px}
  .clubb-mobile-booking-bar__copy span{font-size:10px;line-height:1.2;text-transform:uppercase;letter-spacing:.09em;color:var(--h2-muted)}
  .clubb-mobile-booking-bar__copy strong{font-size:17px;line-height:1.2;color:var(--h2-ink);white-space:nowrap}
  .clubb-mobile-booking-bar__trigger{min-height:46px;padding:0 16px;border:0;border-radius:6px;background:var(--h2-dark);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:9px;font:600 13px/1 var(--font-text)}
  .clubb-route-layer.is-product-stage .clubb-product-sidebar{
    display:none!important;position:fixed!important;left:8px!important;right:8px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;top:auto!important;
    width:auto!important;max-height:min(84dvh,720px);overflow:auto;overscroll-behavior:contain;
    z-index:91!important;margin:0!important;
    transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:none!important;

    box-shadow:0 28px 80px rgba(20,15,12,.28)!important;
  }
  .clubb-product-page.is-mobile-booking-open .clubb-product-sidebar{display:block!important;transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .clubb-mobile-booking-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:90;background:rgba(18,14,11,.42);backdrop-filter:blur(2px)}
  .clubb-mobile-booking-close{position:sticky;top:8px;z-index:3;margin:8px 8px -44px auto;width:38px;height:38px;border-radius:50%;border:1px solid var(--h2-line);background:rgba(255,253,249,.94);color:var(--h2-ink);align-items:center;justify-content:center}
  .clubb-product-page.is-mobile-booking-open .clubb-mobile-booking-close{display:flex}
}


/* CLUBB R23 VISUAL ACCEPTANCE FIXES */
.clubb-hero-cinematic__fallback{display:none;width:100%;height:100%;object-fit:cover;object-position:center}
.clubb-route-layer.is-product-stage .clubb-product-sidebar__price{color:var(--h2-ink)!important;background:linear-gradient(145deg,rgba(159,112,72,.08),rgba(255,253,249,.94))!important;border-color:rgba(159,112,72,.22)!important}
.clubb-route-layer.is-product-stage .clubb-product-sidebar__price-value{color:var(--h2-ink)!important}
.clubb-route-layer.is-product-stage .clubb-product-sidebar__price-label,.clubb-route-layer.is-product-stage .clubb-product-sidebar__price-note{color:var(--h2-muted)!important}
@media(max-width:767px){
  .clubb-hero-cinematic__fallback{display:block!important}
  .clubb-hero-cinematic__video,.clubb-hero-cinematic .clubb-hero-phone__sound{display:none!important}
  .clubb-cookie{padding:10px 12px!important;max-height:min(34vh,270px)!important}
  .clubb-cookie__inner{gap:10px!important}
  .clubb-cookie__content{gap:4px!important}
  .clubb-cookie__text{font-size:11px!important;line-height:1.35!important}
  .clubb-cookie__actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;min-width:0!important}
  .clubb-cookie__btn{min-height:36px!important;padding:0 10px!important;font-size:10px!important}
  .clubb-cookie__btn--secondary{grid-column:1/-1}
  .clubb-cookie__preferences summary{min-height:26px!important;font-size:11px!important}
}


/* CLUBB R25 MOBILE COOKIE CONSENT COMPACT STATE
   Preserve all consent actions and legal links; reduce first-fold obstruction only. */
@media(max-width:767px){
  .clubb-cookie{
    left:6px!important;
    right:6px!important;
    bottom:6px!important;
    width:auto!important;
    padding:8px 10px!important;
    max-height:min(30vh,210px)!important;
    border-radius:9px!important;
    overflow:auto!important;
  }
  .clubb-cookie__inner{
    display:block!important;
    max-width:none!important;
  }
  .clubb-cookie__content{
    gap:2px!important;
  }
  .clubb-cookie__text{
    margin:0!important;
    font-size:10px!important;
    line-height:1.28!important;
  }
  .clubb-cookie__preferences{
    margin-top:1px!important;
  }
  .clubb-cookie__preferences summary{
    min-height:22px!important;
    padding:2px 0!important;
    font-size:10px!important;
    line-height:1.2!important;
  }
  .clubb-cookie__actions{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:5px!important;
    width:100%!important;
    margin-top:5px!important;
  }
  .clubb-cookie__btn,
  .clubb-cookie__btn--secondary{
    grid-column:auto!important;
    width:100%!important;
    min-width:0!important;
    min-height:34px!important;
    padding:0 4px!important;
    font-size:9px!important;
    line-height:1.05!important;
    white-space:normal!important;
    text-align:center!important;
    overflow-wrap:anywhere!important;
  }
}


/* CLUBB R25 COOKIE COLLISION FENCE
   Consent owns the mobile bottom layer until a choice is made. */
@media(max-width:767px){
  html.clubb-cookie-visible .clubb-mobile-booking-bar,
  html.clubb-cookie-visible .clubb-whatsapp-fab,
  html.clubb-cookie-visible .clubb-product-sticky-cta,
  html.clubb-cookie-visible .clubb-back-to-top{
    display:none!important;
  }
}

/* CLUBB R21 HERITAGE PROPAGATION */
.clubb-h2-shortlist{width:min(calc(100% - 48px),1180px)!important;padding-top:56px!important;padding-bottom:76px!important}
.clubb-h2-shortlist__head{padding-bottom:24px;border-bottom:1px solid var(--h2-line)}
.clubb-h2-shortlist__head h1{font:560 clamp(40px,4.8vw,58px)/.96 var(--font-title);letter-spacing:-.045em;color:var(--h2-ink)}
.clubb-h2-shortlist__head p{max-width:620px;color:var(--h2-muted)!important}
.clubb-h2-shortlist .btn-dark{background:var(--h2-dark);border-color:var(--h2-dark);border-radius:7px}
.clubb-h2-shortlist .btn-outline-dark{border-color:var(--h2-line);color:var(--h2-ink);border-radius:7px;background:rgba(255,253,249,.5)}
.clubb-h2-shortlist-card{overflow:hidden;border:1px solid var(--h2-line)!important;border-radius:10px!important;background:var(--h2-surface-strong)!important;box-shadow:0 14px 36px rgba(48,35,27,.06)!important}
.clubb-h2-shortlist-card__media{aspect-ratio:4/3;object-fit:cover}
.clubb-h2-state-note,.clubb-h2-empty{border:1px solid var(--h2-line)!important;border-radius:10px!important;background:rgba(255,253,249,.62)!important;color:var(--h2-muted)!important}
.clubb-h2-empty{display:grid;gap:5px;padding:18px;grid-column:1/-1}.clubb-h2-empty strong{color:var(--h2-ink);font-size:14px}.clubb-h2-empty span{font-size:12px}.clubb-h2-empty a{color:var(--h2-ink);font-size:12px;font-weight:700}
.clubb-checkout-error-summary{margin-bottom:16px;padding:12px 14px;border:1px solid rgba(166,74,67,.28);border-radius:10px;background:rgba(166,74,67,.06);color:#8f3d37;font-size:13px;line-height:1.45}
.clubb-checkout-capability-note,.clubb-payment-capability-note{display:flex;align-items:flex-start;gap:8px;margin:14px 0;padding:12px 13px;border:1px solid var(--journey-line);border-radius:10px;background:var(--journey-soft);color:var(--journey-muted);font-size:11px;line-height:1.5}
.clubb-h2-status-surface{width:min(calc(100% - 32px),680px);margin:54px auto 80px;padding:34px;border:1px solid var(--h2-line);border-radius:12px;background:var(--h2-surface-strong);box-shadow:0 22px 54px rgba(48,35,27,.08);text-align:left}
.clubb-h2-status-surface__icon{display:grid;width:46px;height:46px;place-items:center;margin-bottom:18px;border-radius:50%;background:var(--h2-surface);color:var(--h2-accent);font-size:22px}.clubb-h2-status-surface[data-tone="positive"] .clubb-h2-status-surface__icon{color:#1f7a52}.clubb-h2-status-surface[data-tone="danger"] .clubb-h2-status-surface__icon{color:#a64a43}
.clubb-h2-status-surface__eyebrow{color:var(--h2-accent);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.clubb-h2-status-surface h1{margin:7px 0 0;font:560 clamp(34px,5vw,48px)/1 var(--font-title);letter-spacing:-.04em;color:var(--h2-ink)}
.clubb-h2-status-surface>p{margin:12px 0 0;color:var(--h2-muted);line-height:1.6}.clubb-h2-status-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding:14px 0;border-block:1px solid var(--h2-line)}
.clubb-h2-status-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;align-items:center}.clubb-h2-secondary-link{color:var(--h2-muted);font-size:12px;font-weight:700}
@media(max-width:767px){.clubb-h2-shortlist{width:calc(100% - 24px)!important;padding-top:30px!important}.clubb-h2-shortlist__head{align-items:flex-start!important}.clubb-h2-status-surface{margin-top:28px;padding:22px}.clubb-checkout-capability-note,.clubb-payment-capability-note{font-size:10px}}

/* CLUBB FINAL B ALIGNMENT */
.clubb-hero-new{
  grid-template-columns:minmax(0,1fr) minmax(340px,.86fr)!important;
  grid-template-areas:"copy media" "feature media";
  column-gap:64px!important;
  row-gap:18px!important;
  align-items:center!important;
}
.clubb-hero-new__right{grid-area:copy!important;order:initial!important;align-self:end!important}
.clubb-hero-new__left{grid-area:media!important;order:initial!important;display:flex!important;justify-content:center!important;align-items:center!important}
.clubb-hero-feature-slot{grid-area:feature;align-self:start;max-width:560px;width:100%}
.clubb-hero-cinematic.clubb-hero-phone{
  width:300px!important;
  height:570px!important;
  aspect-ratio:auto!important;
  min-height:0!important;
  max-height:none!important;
  border-radius:32px!important;
  border:3px solid rgba(42,33,28,.12)!important;
  background:#000!important;
  box-shadow:0 0 0 1px rgba(42,33,28,.04),0 18px 56px rgba(42,33,28,.18)!important;
  overflow:hidden!important;
}
.clubb-hero-phone__notch{display:block;position:absolute;top:0;left:50%;transform:translateX(-50%);width:80px;height:20px;background:#000;border-radius:0 0 14px 14px;z-index:4}
.clubb-hero-phone__notch::after{content:"";position:absolute;top:5px;left:50%;transform:translateX(-50%);width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.12)}
.frontend-market-category__icon .frontend-category-icon--unified{
  width:34px!important;height:34px!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
.clubb-cookie:not([data-mode="manage"]) .clubb-cookie__advanced{display:none!important}
.clubb-cookie__actions{display:grid!important;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)!important;gap:8px!important}
.clubb-cookie__actions .clubb-cookie__btn:first-child{min-height:46px!important;font-weight:700!important}
.clubb-cookie[data-mode="manage"] .clubb-cookie__actions{grid-template-columns:1fr 1fr!important}
.clubb-cookie[data-mode="manage"] .clubb-cookie__btn--secondary{grid-column:1/-1!important}

@media(max-width:767px){
  .clubb-hero-new{
    grid-template-columns:1fr!important;
    grid-template-areas:"copy" "media" "feature";
    gap:18px!important;
  }
  .clubb-hero-new__right{grid-area:copy!important}
  .clubb-hero-new__left{grid-area:media!important}
  .clubb-hero-feature-slot{grid-area:feature!important;max-width:none}
  .clubb-hero-new__title{font-size:clamp(34px,10.8vw,44px)!important}
  .clubb-hero-cinematic.clubb-hero-phone{
    width:100%!important;
    height:auto!important;
    aspect-ratio:9/16!important;
    border:0!important;
    border-radius:6px!important;
    box-shadow:0 20px 46px rgba(45,32,23,.14)!important;
  }
  .clubb-hero-phone__notch{display:none!important}
  .clubb-hero-cinematic__fallback{
    display:block!important;position:absolute!important;inset:0!important;
    width:100%!important;height:100%!important;z-index:0!important;
  }
  .clubb-hero-cinematic__video{
    display:block!important;position:relative!important;z-index:1!important;
    width:100%!important;height:100%!important;object-fit:cover!important;
  }
  .clubb-hero-cinematic .clubb-hero-phone__sound{display:flex!important;z-index:3!important}
  .clubb-hero-feature{grid-template-columns:96px minmax(0,1fr)!important}
  .clubb-hero-feature__description{
    display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
  .clubb-hero-feature__cta{display:inline-flex!important}
  .clubb-cookie__actions{
    grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)!important;
    gap:6px!important;
  }
  .clubb-cookie__btn,.clubb-cookie__btn--secondary{
    grid-column:auto!important;
    min-height:38px!important;
    font-size:10px!important;
  }
  .clubb-cookie__actions .clubb-cookie__btn:first-child{min-height:42px!important}
  .clubb-cookie[data-mode="manage"] .clubb-cookie__btn--secondary{grid-column:1/-1!important}
}
