/* ═══════════════════════════════════════════════════════
   Privé Marketing — Shared Stylesheet
   Extracted from inline CSS. Source of truth for all pages.
═══════════════════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════
   RESET & BASE
═══════════════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Jost',sans-serif;
  background:var(--cream);
  color:var(--navy);
  overflow-x:hidden;
}
a{text-decoration:none;color:inherit;}
img{display:block;max-width:100%;}

/* ═══════════════════════════════════════════════════════
   DESIGN TOKENS
═══════════════════════════════════════════════════════ */
:root{
  --navy:  #1B2A4A;
  --cream: #F5F0E8;
  --sand:  #D9CDB8;
  --gold:  #B8976A;
  --dark:  #0E1923;
  --white: #FFFFFF;
  --mid:   #8A7F72;
  --light: #EDE8E0;
  --nav-h: 72px;
}


/* ═══════════════════════════════════════════════════════
   NAV
═══════════════════════════════════════════════════════ */
nav{
  position:fixed;top:0;left:0;right:0;
  height:var(--nav-h);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 48px;
  z-index:1000;
  transition:background .4s,border-color .4s;
}
nav.scrolled{
  background:rgba(245,240,232,0.96);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(184,151,106,0.2);
}
.logo-light { display: block; }
.logo-dark  { display: none; }
nav.scrolled .logo-light { display: none; }
nav.scrolled .logo-dark  { display: block; }
.nav-logo{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;font-size:17px;
  letter-spacing:0.28em;text-transform:uppercase;
  color:var(--white);
  transition:color .4s;
}
nav.scrolled .logo-light { display: block; }
.logo-dark  { display: none; }
nav.scrolled .logo-light { display: none; }
nav.scrolled .logo-dark  { display: block; }
.nav-logo{color:var(--navy);}

.nav-links{
  position:absolute;left:50%;transform:translateX(-50%);
  display:flex;align-items:center;gap:36px;
  list-style:none;
}
.nav-item{position:relative;}
.nav-link{
  position:relative;z-index:1001;
  font-family:'Jost',sans-serif;
  font-size:12px;font-weight:300;
  letter-spacing:0.18em;text-transform:uppercase;
  color:rgba(255,255,255,0.75);
  transition:color .3s;
  display:flex;align-items:center;gap:6px;
}
nav.scrolled .nav-link{color:var(--mid);}
.nav-link:hover,.nav-link.active{color:var(--gold) !important;}
.nav-arrow{font-size:7px;opacity:0.5;transition:transform .25s;pointer-events:none;}
.nav-item.open .nav-arrow{transform:rotate(180deg);}

/* Dropdown */
.nav-dropdown{
  position:absolute;top:calc(100% + 2px);left:-20px;
  background:var(--white);
  border:1px solid rgba(184,151,106,0.15);
  border-radius:2px;
  padding:24px 0 16px;
  min-width:200px;
  opacity:0;pointer-events:none;
  transform:translateY(-4px);
  transition:opacity .25s,transform .25s;
  box-shadow:0 16px 48px rgba(14,25,35,0.12);
}

.nav-item.open .nav-dropdown{opacity:1;pointer-events:all;transform:translateY(0);z-index:999;}
.nav-dropdown a{
  display:block;padding:9px 24px;
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:300;
  letter-spacing:0.16em;text-transform:uppercase;
  color:var(--mid);
  transition:color .2s,padding-left .2s;
}
.nav-dropdown a:hover{color:var(--navy);padding-left:30px;}

.nav-right{display:flex;align-items:center;gap:24px;}
.nav-login{
  font-family:'Jost',sans-serif;
  font-size:9px;font-weight:500;
  letter-spacing:0.22em;text-transform:uppercase;
  color:rgba(255,255,255,0.85);
  text-decoration:underline;text-underline-offset:2px;
  -webkit-font-smoothing:antialiased;
  transition:color .3s;
}
.nav-login:hover{color:var(--white);}
nav.scrolled .nav-login{color:rgba(27,42,74,0.75);}
nav.scrolled .nav-login:hover{color:var(--navy);}
nav.nav-dark .nav-login{color:rgba(27,42,74,0.75);}
.nav-cta{
  font-family:'Jost',sans-serif;
  font-size:9px;font-weight:400;
  letter-spacing:0.22em;text-transform:uppercase;
  color:var(--white);
  border:1px solid rgba(255,255,255,0.35);
  padding:10px 22px;border-radius:1px;
  transition:background .3s,color .3s,border-color .3s;
}
nav.scrolled .nav-cta{color:var(--navy);border-color:rgba(27,42,74,0.3);}
.nav-cta:hover{background:var(--gold);border-color:var(--gold);color:var(--white) !important;}

/* ═══════════════════════════════════════════════════════
   PAGE ROUTING
═══════════════════════════════════════════════════════ */
.page{display:none;}
.page.active{display:block;}

/* ═══════════════════════════════════════════════════════
   SECTION UTILITIES
═══════════════════════════════════════════════════════ */
.section-eyebrow{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:400;
  letter-spacing:0.25em;text-transform:uppercase;
  color:var(--gold);margin-bottom:16px;
  display:flex;align-items:center;gap:16px;
}
.section-eyebrow::before{
  content:'';width:24px;height:1px;background:var(--gold);
  flex-shrink:0;
}
.pillar-content .section-eyebrow,
.page-hero-small-content .section-eyebrow,
.home-cta-content .section-eyebrow{
  text-shadow:0 1px 8px rgba(0,0,0,0.55);
}
.section-title{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;line-height:1.05;
  color:var(--navy);
}
.section-title.light{color:var(--white);}
.section-body{
  font-family:'Jost',sans-serif;
  font-size:15px;font-weight:300;
  line-height:1.9;letter-spacing:0.03em;
  color:var(--mid);
}
.section-body.light{color:rgba(255,255,255,0.6);}
.gold-rule{width:36px;height:1px;background:var(--gold);margin:20px 0;}

/* Fade-in on scroll */
.reveal{
  opacity:0;transform:translateY(28px);
  transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);
}
.reveal.visible{opacity:1;transform:translateY(0);}
.reveal-delay-1{transition-delay:.1s;}
.reveal-delay-2{transition-delay:.2s;}
.reveal-delay-3{transition-delay:.3s;}
.reveal-delay-4{transition-delay:.4s;}

/* ═══════════════════════════════════════════════════════
   HOMEPAGE — HERO
═══════════════════════════════════════════════════════ */
.hero{
  position:relative;height:100vh;
  display:flex;align-items:flex-end;
  overflow:hidden;
}
.hero-bg{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(14,25,35,.3) 0%,rgba(14,25,35,.05) 40%,rgba(14,25,35,.75) 100%),
    url('https://res.cloudinary.com/dfjqa5f05/image/upload/q_auto,f_auto/v1773183130/Priv%C3%A9_Padel_Website_d5gqes.jpg') center/cover no-repeat;
}
/* Simulated video grain */
.hero-grain{
  position:absolute;inset:0;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E");
  pointer-events:none;opacity:.6;
}
.hero-content{
  position:relative;z-index:2;
  padding:0 80px 80px;
  width:100%;
  display:grid;grid-template-columns:1fr auto;
  align-items:flex-end;gap:40px;
}
.hero-left{max-width:700px;}
.hero-pretitle{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:400;
  letter-spacing:0.28em;text-transform:uppercase;
  color:rgba(255,255,255,0.85);
  margin-bottom:20px;
  display:flex;align-items:center;gap:14px;
  text-shadow:0 1px 12px rgba(0,0,0,0.6);
}
.hero-pretitle::before{content:'';width:20px;height:1px;background:var(--gold);}
.hero-hl{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(56px,6.5vw,96px);
  font-weight:300;line-height:1.0;
  color:var(--white);
  margin-bottom:28px;
}
.hero-hl em{font-style:italic;color:rgba(255,255,255,.85);}
.hero-sub{
  font-family:'Jost',sans-serif;
  font-size:14px;font-weight:300;
  letter-spacing:0.06em;line-height:1.8;
  color:rgba(255,255,255,.65);
  max-width:480px;margin-bottom:40px;
}
.hero-actions{display:flex;align-items:center;gap:28px;}
.btn-primary{
  font-family:'Jost',sans-serif;
  font-size:9px;font-weight:400;
  letter-spacing:0.24em;text-transform:uppercase;
  background:var(--gold);color:var(--white);
  padding:14px 32px;border-radius:1px;
  transition:background .3s,transform .3s;
  display:inline-block;
}
.btn-primary:hover{background:#a07d56;transform:translateY(-1px);}
.btn-ghost{
  font-family:'Jost',sans-serif;
  font-size:9px;font-weight:300;
  letter-spacing:0.22em;text-transform:uppercase;
  color:rgba(255,255,255,.7);
  display:flex;align-items:center;gap:10px;
  transition:color .3s;
}
.btn-ghost:hover{color:var(--white);}
.btn-ghost-line{width:20px;height:1px;background:currentColor;}
.hero-right{
  display:flex;flex-direction:column;
  align-items:flex-end;gap:6px;
  padding-bottom:6px;
}
.hero-scroll{
  writing-mode:vertical-rl;
  font-family:'Jost',sans-serif;
  font-size:8.5px;font-weight:300;
  letter-spacing:0.24em;text-transform:uppercase;
  color:rgba(255,255,255,.35);
  display:flex;align-items:center;gap:10px;
}
.hero-scroll::after{content:'';width:1px;height:50px;background:rgba(255,255,255,.2);}
.hero-location{
  font-family:'Cormorant Garamond',serif;
  font-size:11px;font-style:italic;
  color:rgba(255,255,255,.35);
  letter-spacing:0.08em;
}

/* ═══════════════════════════════════════════════════════
   HOMEPAGE — WHAT IS PRIVÉ
═══════════════════════════════════════════════════════ */
.what-is{
  padding:120px 80px;
  display:grid;grid-template-columns:1fr 1fr;
  gap:100px;align-items:center;
  background:var(--cream);
}
.what-is-img{
  position:relative;height:560px;overflow:hidden;
}
.what-is-img img,.what-is-img .img-fill{
  width:100%;height:100%;object-fit:cover;
  border-radius:1px;
}
.what-is-img .img-fill{
  background:url('https://res.cloudinary.com/dfjqa5f05/image/upload/q_auto,f_auto/v1773187507/Where_padel_meets_destination_travel_bpqarf.jpg') center/cover;
}

.what-is-text{}
.what-is-text .section-title{font-size:clamp(36px,3.5vw,52px);margin-bottom:24px;}
.what-is-text .section-body{max-width:440px;margin-bottom:36px;}
.what-is-stats{
  display:grid;grid-template-columns:1fr 1fr;
  gap:1px;background:var(--sand);
  border:1px solid var(--sand);
  margin-top:40px;
}
.what-stat{
  background:var(--cream);
  padding:24px 28px;
}
.what-stat-num{
  font-family:'Cormorant Garamond',serif;
  font-size:42px;font-weight:300;
  color:var(--navy);line-height:1;
  margin-bottom:4px;
}
.what-stat-label{
  font-family:'Jost',sans-serif;
  font-size:8.5px;font-weight:300;
  letter-spacing:0.18em;text-transform:uppercase;
  color:var(--mid);
}

/* ═══════════════════════════════════════════════════════
   THREE PILLARS
═══════════════════════════════════════════════════════ */
.pillars{
  padding:100px 80px;
  background:var(--dark);
}
.pillars-header{
  display:flex;justify-content:space-between;
  align-items:flex-end;margin-bottom:64px;
}
.pillars-title{font-size:clamp(32px,3vw,48px);color:var(--white);}
.pillars-sub{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:300;
  letter-spacing:0.06em;line-height:1.8;
  color:rgba(255,255,255,.4);
  max-width:340px;text-align:right;
}
.pillars-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:2px;
}
.pillar{
  position:relative;height:540px;overflow:hidden;
  cursor:pointer;
}
.pillar-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.pillar:hover .pillar-bg{transform:scale(1.05);}
.pillar-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(14,25,35,.1) 0%,rgba(14,25,35,.85) 100%);
  transition:background .4s;
}
.pillar:hover .pillar-overlay{
  background:linear-gradient(180deg,rgba(14,25,35,.2) 0%,rgba(14,25,35,.9) 100%);
}
.pillar-content{
  position:absolute;bottom:0;left:0;right:0;
  padding:40px 36px;
}
.pillar-num{
  font-family:'Cormorant Garamond',serif;
  font-size:13px;font-weight:300;font-style:italic;
  color:var(--gold);letter-spacing:0.1em;
  margin-bottom:12px;
}
.pillar-title{
  font-family:'Cormorant Garamond',serif;
  font-size:30px;font-weight:300;
  color:var(--white);line-height:1.1;
  margin-bottom:12px;
}
.pillar-body{
  font-family:'Jost',sans-serif;
  font-size:13px;font-weight:300;
  letter-spacing:0.04em;line-height:1.75;
  color:rgba(255,255,255,.55);
  max-width:280px;
  opacity:0;transform:translateY(10px);
  transition:opacity .4s,transform .4s;
}
.pillar:hover .pillar-body{opacity:1;transform:translateY(0);}
.pillar-rule{
  width:24px;height:1px;background:var(--gold);
  margin-bottom:14px;
  transform:scaleX(0);transform-origin:left;
  transition:transform .4s .1s;
}
.pillar:hover .pillar-rule{transform:scaleX(1);}

/* ═══════════════════════════════════════════════════════
   COUNTER STRIP
═══════════════════════════════════════════════════════ */
.counter-strip{
  padding:72px 80px;
  background:var(--navy);
  display:grid;grid-template-columns:repeat(5,1fr);
  gap:1px;
}
.counter-item{
  padding:0 32px;
  border-right:1px solid rgba(255,255,255,.07);
  display:flex;flex-direction:column;gap:6px;
}
.counter-item:last-child{border-right:none;}
.counter-num{
  font-family:'Cormorant Garamond',serif;
  font-size:52px;font-weight:300;
  color:var(--white);line-height:1;
}
.counter-num span{
  font-size:28px;color:var(--gold);vertical-align:super;
}
.counter-label{
  font-family:'Jost',sans-serif;
  font-size:8.5px;font-weight:300;
  letter-spacing:0.22em;text-transform:uppercase;
  color:rgba(255,255,255,.35);
}

/* ═══════════════════════════════════════════════════════
   DESTINATION PREVIEW
═══════════════════════════════════════════════════════ */
.dest-preview{padding:120px 80px;background:var(--cream);}
.dest-preview-header{
  display:flex;justify-content:space-between;align-items:flex-end;
  margin-bottom:56px;
}
.dest-preview-title{font-size:clamp(34px,3.2vw,50px);}
.view-all-link{
  font-family:'Jost',sans-serif;
  font-size:9px;font-weight:300;
  letter-spacing:0.22em;text-transform:uppercase;
  color:var(--mid);
  display:flex;align-items:center;gap:12px;
  transition:color .3s;
}
.view-all-link:hover{color:var(--navy);}
.view-all-link::after{content:'';width:24px;height:1px;background:currentColor;transition:width .3s;}
.view-all-link:hover::after{width:36px;}

.dest-grid{
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr;
  grid-template-rows:auto auto;
  gap:3px;
}
.dest-featured-grid{
  display:grid;
  grid-template-columns:1.6fr 1fr 1fr;
  grid-template-rows:auto auto;
  gap:3px;
}
.dest-featured-mobile-cta{ display:none; }
.dest-card{
  position:relative;overflow:hidden;cursor:pointer;
}
.dest-grid .dest-card:first-child{grid-row:1/3;}
.dest-card-bg{
  width:100%;height:100%;min-height:260px;
  background-size:cover;background-position:center;
  transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.dest-grid .dest-card:first-child .dest-card-bg{min-height:100%;}
.dest-card:hover .dest-card-bg{transform:scale(1.04);}
.dest-card-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 30%,rgba(14,25,35,.6) 65%,rgba(14,25,35,.92) 100%);
}
.dest-card-content{
  position:absolute;bottom:0;left:0;right:0;
  padding:24px 28px;
}
.dest-grid .dest-card:first-child .dest-card-content{padding:36px 40px;}
.dest-card-region{
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:400;
  letter-spacing:0.2em;text-transform:uppercase;
  color:var(--gold);margin-bottom:6px;
}
.dest-card-name{
  font-family:'Cormorant Garamond',serif;
  font-size:24px;font-weight:300;
  color:var(--white);line-height:1.1;
}
.dest-grid .dest-card:first-child .dest-card-name{font-size:38px;}
.dest-card-loc{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:300;
  letter-spacing:0.1em;
  color:rgba(255,255,255,.75);
  margin-top:6px;
}

.dest-cta{
  margin-top:56px;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:16px;
}
.dest-cta-text{
  font-family:'Cormorant Garamond',serif;
  font-size:20px;font-weight:300;font-style:italic;
  color:var(--mid);
}

/* ═══════════════════════════════════════════════════════
   PRIVÉ CLUBS
═══════════════════════════════════════════════════════ */
.clubs-section{
  padding:120px 80px;
  background:var(--light);
}
.clubs-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:3px;margin-top:60px;
}
.club-card{
  position:relative;height:560px;overflow:hidden;cursor:pointer;
}
.club-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.club-card:hover .club-bg{transform:scale(1.04);}
.club-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(14,25,35,.05) 0%,rgba(14,25,35,.6) 60%,rgba(14,25,35,.9) 100%);
}
.club-content{
  position:absolute;bottom:0;left:0;right:0;
  padding:40px 44px;
}
.club-tag{
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:400;
  letter-spacing:0.22em;text-transform:uppercase;
  color:var(--gold);margin-bottom:10px;
}
.club-name{
  font-family:'Cormorant Garamond',serif;
  font-size:38px;font-weight:300;
  color:var(--white);line-height:1.05;
  margin-bottom:6px;
}
.club-loc{
  font-family:'Jost',sans-serif;
  font-size:12px;font-weight:300;
  letter-spacing:0.1em;
  color:rgba(255,255,255,.75);
  margin-bottom:20px;
}
.club-link{
  font-family:'Jost',sans-serif;
  font-size:8.5px;font-weight:300;
  letter-spacing:0.2em;text-transform:uppercase;
  color:rgba(255,255,255,.6);
  display:flex;align-items:center;gap:10px;
  transition:color .3s;
  opacity:0;transform:translateY(8px);
  transition:opacity .4s,transform .4s,color .3s;
}
.club-card:hover .club-link{opacity:1;transform:translateY(0);}
.club-link::after{content:'';width:16px;height:1px;background:currentColor;}
.club-link:hover{color:var(--gold);}

/* ═══════════════════════════════════════════════════════
   MEMBERSHIP BENEFITS
═══════════════════════════════════════════════════════ */
.membership-section{
  padding:120px 80px;
  background:var(--dark);
}
.membership-inner{
  display:grid;grid-template-columns:1fr 1fr;
  gap:100px;align-items:start;
}
.membership-left .section-title{
  font-size:clamp(34px,3.2vw,50px);
  color:var(--white);margin-bottom:24px;
}
.membership-left .section-body{margin-bottom:40px;}
.membership-price{
  font-family:'Cormorant Garamond',serif;
  font-size:64px;font-weight:300;
  color:var(--white);line-height:1;
}
.membership-price sub{
  font-size:20px;vertical-align:middle;
  color:rgba(255,255,255,.4);
  font-family:'Jost',sans-serif;font-weight:300;
  letter-spacing:0.1em;margin-left:6px;
}
.membership-right{
  display:flex;flex-direction:column;gap:0;
}
.benefit-row{
  display:flex;align-items:flex-start;gap:20px;
  padding:24px 0;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.benefit-row:first-child{border-top:1px solid rgba(255,255,255,.06);}
.benefit-icon{
  width:42px;height:42px;flex-shrink:0;
  border:1px solid rgba(184,151,106,.3);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  margin-top:2px;
}
.benefit-icon svg{width:17px;height:17px;stroke:var(--gold);fill:none;stroke-width:1.5;}
.benefit-text{}
.benefit-title{
  font-family:'Cormorant Garamond',serif;
  font-size:22px;font-weight:400;
  color:var(--white);margin-bottom:4px;
}
.benefit-desc{
  font-family:'Jost',sans-serif;
  font-size:13px;font-weight:300;
  line-height:1.75;letter-spacing:0.03em;
  color:rgba(255,255,255,.45);
}

/* ═══════════════════════════════════════════════════════
   EXPERIENCES
═══════════════════════════════════════════════════════ */
.experiences-section{
  padding:120px 0 120px 80px;
  background:var(--cream);
  overflow:hidden;
}
.exp-header{
  margin-bottom:56px;padding-right:80px;
  display:flex;justify-content:space-between;align-items:flex-end;
}
.exp-title{font-size:clamp(34px,3.2vw,50px);}
.exp-scroll-track{
  display:flex;gap:20px;
  overflow-x:auto;padding-right:80px;padding-bottom:4px;
  scrollbar-width:none;
  scroll-snap-type:x mandatory;
}
.exp-scroll-track::-webkit-scrollbar{display:none;}
.exp-card{
  flex-shrink:0;width:380px;
  scroll-snap-align:start;
  cursor:pointer;
}
.exp-img{
  height:280px;overflow:hidden;border-radius:1px;
  margin-bottom:20px;
}
.exp-img-fill{
  width:100%;height:100%;
  background-size:cover;background-position:center;
  transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.exp-card:hover .exp-img-fill{transform:scale(1.04);}
.exp-tag{
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:400;
  letter-spacing:0.18em;text-transform:uppercase;
  color:var(--gold);margin-bottom:8px;
}
.exp-name{
  font-family:'Cormorant Garamond',serif;
  font-size:26px;font-weight:300;
  color:var(--navy);line-height:1.15;
  margin-bottom:6px;
}
.exp-loc{
  font-family:'Jost',sans-serif;
  font-size:12px;font-weight:300;
  letter-spacing:0.1em;color:var(--mid);
  margin-bottom:12px;
}
.exp-desc{
  font-family:'Jost',sans-serif;
  font-size:13px;font-weight:300;
  line-height:1.7;letter-spacing:0.03em;
  color:var(--mid);
}

/* ═══════════════════════════════════════════════════════
   HOMEPAGE CTA
═══════════════════════════════════════════════════════ */
.home-cta{
  position:relative;padding:140px 80px;
  overflow:hidden;
  display:flex;flex-direction:column;align-items:center;
  text-align:center;background:var(--navy);
}
.home-cta-bg{
  position:absolute;inset:0;
  background:url('https://res.cloudinary.com/dfjqa5f05/image/upload/q_auto,f_auto/v1773183458/HomePage_Full-Bleed_CTA_wfvxw7.jpg') center/cover;
  opacity:.12;
}
.home-cta-content{position:relative;z-index:1;}
.home-cta-eyebrow{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:400;
  letter-spacing:0.25em;text-transform:uppercase;
  color:var(--gold);margin-bottom:24px;
}
.home-cta-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(52px,6vw,88px);
  font-weight:300;line-height:1.05;
  color:var(--white);margin-bottom:20px;
}
.home-cta-title em{font-style:italic;}
.home-cta-sub{
  font-family:'Jost',sans-serif;
  font-size:14px;font-weight:300;
  letter-spacing:0.05em;line-height:1.8;
  color:rgba(255,255,255,.5);
  max-width:520px;margin:0 auto 44px;
}
.cta-buttons{display:flex;gap:20px;justify-content:center;}

/* ═══════════════════════════════════════════════════════
   TRAVEL COLLECTION PAGE
═══════════════════════════════════════════════════════ */
.page-hero-small{
  height:50vh;min-height:400px;
  position:relative;
  display:flex;align-items:flex-end;
  padding:0 80px 64px;
}
.page-hero-small-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
}
.page-hero-small-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(14,25,35,.3) 0%,rgba(14,25,35,.75) 100%);
}
.page-hero-small-content{position:relative;z-index:2;}
.page-hero-eyebrow{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:400;
  letter-spacing:0.25em;text-transform:uppercase;
  color:var(--gold);margin-bottom:14px;
  text-shadow:0 1px 8px rgba(0,0,0,0.5);
}
.page-hero-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(42px,5vw,68px);
  font-weight:300;color:var(--white);
  line-height:1.0;
}

/* Horizontal scroll sections */
.h-scroll-section{padding:80px 0 80px 80px;overflow:hidden;}
.h-scroll-header{
  margin-bottom:36px;padding-right:80px;
  display:flex;justify-content:space-between;align-items:flex-end;
}
.h-scroll-title{
  font-family:'Cormorant Garamond',serif;
  font-size:32px;font-weight:300;color:var(--navy);
}
.h-track{
  display:flex;gap:16px;
  overflow-x:auto;padding-right:80px;padding-bottom:4px;
  scrollbar-width:none;scroll-snap-type:x mandatory;
}
.h-track::-webkit-scrollbar{display:none;}

/* Destination card wide */
.h-dest-card{
  flex-shrink:0;width:320px;scroll-snap-align:start;
  cursor:pointer;
}
.h-dest-img{
  height:420px;overflow:hidden;
  margin-bottom:16px;position:relative;
}
.h-dest-img-fill{
  width:100%;height:100%;
  background-size:cover;background-position:center;
  transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.h-dest-card:hover .h-dest-img-fill{transform:scale(1.04);}
.h-dest-num{
  position:absolute;top:16px;right:16px;
  font-family:'Cormorant Garamond',serif;
  font-size:11px;font-style:italic;
  color:rgba(255,255,255,.5);letter-spacing:0.08em;
}
.h-dest-region{
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:400;
  letter-spacing:0.18em;text-transform:uppercase;
  color:var(--gold);margin-bottom:6px;
}
.h-dest-name{
  font-family:'Cormorant Garamond',serif;
  font-size:24px;font-weight:300;color:var(--navy);
  margin-bottom:4px;
}
.h-dest-loc{
  font-family:'Jost',sans-serif;
  font-size:12px;font-weight:300;
  letter-spacing:0.08em;color:var(--mid);
}

/* Club card compact */
.h-club-card{
  flex-shrink:0;width:260px;scroll-snap-align:start;cursor:pointer;
}
.h-club-img{
  height:340px;overflow:hidden;margin-bottom:14px;
}
.h-club-img-fill{
  width:100%;height:100%;
  background-size:cover;background-position:center;
  transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.h-club-card:hover .h-club-img-fill{transform:scale(1.04);}
.h-club-name{
  font-family:'Cormorant Garamond',serif;
  font-size:22px;font-weight:300;color:var(--navy);
  margin-bottom:3px;
}
.h-club-loc{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:300;
  letter-spacing:0.08em;color:var(--mid);
}

/* ═══════════════════════════════════════════════════════
   PADEL DESTINATIONS PAGE
═══════════════════════════════════════════════════════ */
.benefits-bar{
  background:var(--navy);
  padding:56px 80px;
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:1px;
}
.benefits-bar-item{
  padding:0 32px;
  border-right:1px solid rgba(255,255,255,.08);
  display:flex;flex-direction:column;gap:8px;
}
.benefits-bar-item:first-child{padding-left:0;}
.benefits-bar-item:last-child{border-right:none;}
.bbi-icon{
  width:28px;height:28px;
  display:flex;align-items:center;justify-content:center;
}
.bbi-icon svg{width:18px;height:18px;stroke:var(--gold);fill:none;stroke-width:1.5;}
.bbi-title{
  font-family:'Cormorant Garamond',serif;
  font-size:17px;font-weight:400;color:var(--white);
}
.bbi-desc{
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:300;
  letter-spacing:0.04em;line-height:1.7;
  color:rgba(255,255,255,.4);
}

.portfolio-grid-section{
  padding:100px 80px;
  background:var(--cream);
}
.portfolio-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:3px;margin-top:56px;
}
.portfolio-card{
  position:relative;height:340px;overflow:hidden;cursor:pointer;
}
.portfolio-card-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transition:transform .6s cubic-bezier(.22,1,.36,1);
}
.portfolio-card:hover .portfolio-card-bg{transform:scale(1.06);}
.portfolio-card-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 35%,rgba(14,25,35,.82) 100%);
}
.portfolio-card-info{
  position:absolute;bottom:0;left:0;right:0;
  padding:20px 22px;
}
.portfolio-card-region{
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:400;
  letter-spacing:0.18em;text-transform:uppercase;
  color:var(--gold);margin-bottom:5px;
}
.portfolio-card-name{
  font-family:'Cormorant Garamond',serif;
  font-size:22px;font-weight:300;color:var(--white);
  line-height:1.1;
}
.portfolio-card-loc{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:300;
  letter-spacing:0.07em;color:rgba(255,255,255,.6);
  margin-top:4px;
}

/* Map section */
.map-section{
  padding:80px 80px 100px;
  background:var(--dark);
}
.map-container{
  margin-top:48px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:2px;
  overflow:hidden;
  height:480px;
  position:relative;
}
.map-placeholder{
  width:100%;height:100%;
  background:url('https://res.cloudinary.com/dfjqa5f05/image/upload/q_auto,f_auto/v1773543525/Priv%C3%A9_Map_q9edqb.jpg') center/cover;
  display:flex;align-items:center;justify-content:center;
  position:relative;
}
.map-pin{
  position:absolute;
  width:8px;height:8px;
  background:var(--gold);border-radius:50%;
  cursor:pointer;
}
.map-pin::before{
  content:'';
  position:absolute;inset:-4px;
  border:1px solid rgba(184,151,106,.4);
  border-radius:50%;
  animation:ping 2s cubic-bezier(0,0,.2,1) infinite;
}
@keyframes ping{
  75%,100%{transform:scale(1.8);opacity:0;}
}
.map-legend{
  position:absolute;bottom:20px;left:20px;
  background:rgba(14,25,35,.85);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.08);
  padding:14px 18px;border-radius:2px;
}
.map-legend-row{
  display:flex;align-items:center;gap:8px;
  font-family:'Jost',sans-serif;
  font-size:9px;font-weight:300;
  letter-spacing:0.14em;text-transform:uppercase;
  color:rgba(255,255,255,.5);margin-bottom:6px;
}
.map-legend-row:last-child{margin-bottom:0;}
.map-legend-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0;}

/* ═══════════════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════════════ */
footer{
  background:var(--dark);
  border-top:1px solid rgba(255,255,255,.06);
  padding:60px 80px 40px;
}
.footer-top{
  display:grid;grid-template-columns:repeat(5,1fr);
  gap:48px;margin-bottom:56px;
}
.footer-brand-logo{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;font-size:17px;
  letter-spacing:0.28em;text-transform:uppercase;
  color:var(--white);margin-bottom:16px;
}
.footer-brand-sub{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:300;
  letter-spacing:0.04em;line-height:1.8;
  color:rgba(255,255,255,.3);max-width:280px;
}
.footer-col-title{
  font-family:'Jost',sans-serif;
  font-size:8.5px;font-weight:400;
  letter-spacing:0.22em;text-transform:uppercase;
  color:rgba(255,255,255,.25);margin-bottom:20px;
}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-links a{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:300;
  letter-spacing:0.06em;
  color:rgba(255,255,255,.4);
  transition:color .25s;
}
.footer-links a:hover{color:var(--gold);}
.footer-cta-link{color:var(--gold) !important;letter-spacing:0.12em !important;}
.footer-bottom{
  display:flex;justify-content:space-between;align-items:center;
  padding-top:28px;
  border-top:1px solid rgba(255,255,255,.06);
}
.footer-copy{
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:300;
  letter-spacing:0.1em;
  color:rgba(255,255,255,.2);
}
.footer-legal{
  display:flex;gap:24px;
}
.footer-legal a{
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:300;
  letter-spacing:0.1em;
  color:rgba(255,255,255,.2);
  transition:color .25s;
}
.footer-legal a:hover{color:rgba(255,255,255,.5);}

/* ═══════════════════════════════════════════════════════
   MEMBERSHIP PAGE
═══════════════════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════
   PASSPORT PAGE — PRICING BLOCK
═══════════════════════════════════════════════════════ */
.passport-pricing{
  background:#0E1923;
  padding:120px 60px 140px;
}
.passport-pricing-inner{
  max-width:1280px;
  margin:0 auto;
  display:grid;
  grid-template-columns:38fr 62fr;
  gap:80px;
  align-items:start;
}
.pp-price-col{
  position:sticky;
  top:120px;
}
.pp-card-eyebrow{
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:10px;
  letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:20px;
}
.pp-price-from{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-size:18px;
  color:rgba(245,240,232,.55);
  margin-bottom:6px;
}
.pp-price-numeral{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-weight:300;
  font-size:clamp(80px,11vw,140px);
  color:var(--cream);line-height:1;
  letter-spacing:-0.02em;
}
.pp-price-period{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-size:20px;
  color:rgba(245,240,232,.45);
  margin-top:6px;
}
.pp-card-sub{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-size:16px;
  color:rgba(245,240,232,.7);
  line-height:1.5;margin-top:40px;
}
.pp-card-cta{
  display:inline-block;
  margin-top:28px;
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:11px;
  letter-spacing:0.25em;text-transform:uppercase;
  background:var(--gold);color:var(--navy);
  padding:18px 32px;
  text-decoration:none;
  border:1px solid var(--gold);
  transition:background .3s,color .3s;
}
.pp-card-cta:hover{background:transparent;color:var(--gold);}
.pp-benefits-wrap{}
.pp-benefits-eyebrow{
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:11px;
  letter-spacing:0.35em;text-transform:uppercase;
  color:var(--gold);margin-bottom:40px;
}
.pp-benefits-cols{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:48px;
}
.pp-cat-label{
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:9px;
  letter-spacing:0.28em;text-transform:uppercase;
  color:rgba(184,151,106,.7);
  margin-bottom:16px;
}
.pp-benefit-item{margin-bottom:20px;}
.pp-benefit-item:last-child{margin-bottom:0;}
.pp-benefit{
  display:flex;align-items:baseline;gap:12px;
  font-family:'Cormorant Garamond',serif;
  font-size:17px;color:rgba(245,240,232,.95);
  line-height:1.4;
}
.pp-benefit-sub{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-size:13px;
  color:rgba(184,151,106,.75);
  line-height:1.4;padding-left:28px;
}
.pp-benefits-note{margin-top:24px;}
.pp-benefits-rule{width:36px;height:1px;background:var(--gold);margin-bottom:12px;}
.pp-benefits-disclaimer{
  font-family:'Jost',sans-serif;font-size:11px;font-weight:300;
  letter-spacing:0.06em;color:rgba(184,151,106,.6);
}
.pp-diamond{
  color:var(--gold);flex-shrink:0;
  font-size:9px;line-height:1.8;
}
/* ═══════════════════════════════════════════════════════
   PASSPORT PAGE — CLOSING CTA
═══════════════════════════════════════════════════════ */
/* ── Passport cinematic quote ── */
.passport-quote-visual{
  position:relative;
  height:70vh;min-height:560px;
  overflow:hidden;
}
.passport-quote-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
}
.passport-quote-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top, rgba(14,25,35,.72) 0%, rgba(14,25,35,.18) 60%, transparent 100%);
}
.passport-quote-content{
  position:absolute;bottom:0;left:0;
  padding:0 80px 80px;
  max-width:720px;
}
.passport-quote-eyebrow{
  font-family:'Jost',sans-serif;font-weight:500;font-size:11px;
  letter-spacing:0.28em;text-transform:uppercase;
  color:var(--gold);margin-bottom:20px;
}
.passport-quote-text{
  font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;
  font-size:clamp(30px,3vw,38px);line-height:1.25;
  color:var(--cream);margin:0;
}
@media(max-width:600px){
  .passport-quote-content{padding:0 32px 48px;}
  .passport-quote-text{font-size:26px;}
}

.passport-closing{
  background:var(--cream);
  padding:120px 60px 140px;
  text-align:center;
}
.passport-closing-inner{max-width:720px;margin:0 auto;}
.passport-closing-eyebrow{
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:10px;
  letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:24px;
}
.passport-closing-title{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;font-size:56px;
  color:var(--navy);line-height:1;
}
.passport-closing-title em{font-style:italic;}
.passport-closing-sub{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-size:16px;
  color:rgba(27,42,74,.7);margin-top:32px;
}
@media(max-width:900px){
  .passport-pricing{padding:80px 30px 100px;}
  .passport-pricing-inner{grid-template-columns:1fr;gap:60px;}
  .pp-price-col{position:static;}
  .pp-price-numeral{font-size:clamp(80px,18vw,120px);}
  .pp-benefits-cols{grid-template-columns:1fr;gap:40px;}
  .pp-benefits-col + .pp-benefits-col{margin-top:0;}
  .passport-closing{padding:80px 30px 100px;}
  .passport-closing-title{font-size:40px;}
}
/* ═══════════════════════════════════════════════════════
   CLUB OVERVIEW PAGE
═══════════════════════════════════════════════════════ */
.clubs-overview-hero{
  position:relative;height:70vh;min-height:500px;
  display:flex;align-items:flex-end;
  padding:0 80px 80px;overflow:hidden;
}
.clubs-overview-hero-bg{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(14,25,35,.2) 0%,rgba(14,25,35,.75) 100%),
    url('https://res.cloudinary.com/dfjqa5f05/image/upload/q_auto,f_auto/v1773541058/Our_Own_Courts_qhmjk0.jpg') center/cover;
}
.clubs-overview-content{position:relative;z-index:2;max-width:700px;}

.clubs-overview-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:3px;
  align-items:stretch;
}
.club-overview-card{
  position:relative;height:680px;overflow:hidden;
  cursor:pointer;
}
.club-overview-card-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transition:transform .8s cubic-bezier(.22,1,.36,1);
}
.club-overview-card:hover .club-overview-card-bg{transform:scale(1.04);}
.club-overview-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(14,25,35,.05) 0%,rgba(14,25,35,.82) 100%);
}
.club-overview-content{
  position:absolute;bottom:0;left:0;right:0;
  padding:52px 56px;
}
.club-overview-tag{
  font-family:'Jost',sans-serif;font-size:10px;font-weight:400;
  letter-spacing:0.24em;text-transform:uppercase;
  color:var(--gold);margin-bottom:12px;
  text-shadow:0 1px 10px rgba(0,0,0,0.7);
}
.club-overview-name{
  font-family:'Cormorant Garamond',serif;
  font-size:52px;font-weight:300;color:var(--white);
  line-height:1.0;margin-bottom:8px;
}
.club-overview-loc{
  font-family:'Jost',sans-serif;font-size:11px;font-weight:300;
  letter-spacing:0.12em;color:rgba(255,255,255,.5);
  margin-bottom:24px;
}
.club-overview-desc{
  font-family:'Jost',sans-serif;font-size:12px;font-weight:300;
  letter-spacing:0.04em;line-height:1.8;
  color:rgba(255,255,255,.5);max-width:360px;margin-bottom:28px;
  opacity:0;transform:translateY(8px);
  transition:opacity .4s,transform .4s;
}
.club-overview-card:hover .club-overview-desc{opacity:1;transform:translateY(0);}
.club-overview-link{
  display:inline-flex;align-items:center;gap:12px;
  font-family:'Jost',sans-serif;font-size:9px;font-weight:300;
  letter-spacing:0.22em;text-transform:uppercase;
  color:rgba(255,255,255,.7);
  transition:color .3s;
}
.club-overview-link::after{
  content:'';width:20px;height:1px;background:currentColor;
  transition:width .3s;
}
.club-overview-card:hover .club-overview-link{color:var(--gold);}
.club-overview-card:hover .club-overview-link::after{width:32px;}

/* ═══════════════════════════════════════════════════════
   INDIVIDUAL CLUB PAGES
═══════════════════════════════════════════════════════ */
.club-hero{
  position:relative;height:100vh;
  display:flex;align-items:flex-end;overflow:hidden;
}
.club-hero-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transition:transform 8s ease;
}
.club-hero:hover .club-hero-bg{transform:scale(1.03);}
.club-hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(14,25,35,.2) 0%,rgba(14,25,35,.1) 40%,rgba(14,25,35,.8) 100%);
}
.club-hero-content{
  position:relative;z-index:2;
  padding:0 80px 80px;width:100%;
  display:grid;grid-template-columns:1fr auto;
  align-items:flex-end;gap:40px;
}
.club-hero-left{}
.club-hero-eyebrow{
  font-family:'Jost',sans-serif;font-size:9px;font-weight:300;
  letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:16px;
  display:flex;align-items:center;gap:14px;
}
.club-hero-eyebrow::before{content:'';width:20px;height:1px;background:var(--gold);}
.club-hero-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(64px,7vw,108px);font-weight:300;
  color:var(--white);line-height:.95;margin-bottom:24px;
}
.club-hero-title em{font-style:italic;}
.club-hero-sub{
  font-family:'Jost',sans-serif;font-size:15px;font-weight:300;
  letter-spacing:0.06em;line-height:1.8;
  color:rgba(255,255,255,.55);max-width:520px;
}
.club-hero-meta{
  display:flex;flex-direction:column;
  align-items:flex-end;gap:12px;padding-bottom:8px;
}
.club-hero-season{
  font-family:'Cormorant Garamond',serif;
  font-size:12px;font-style:italic;
  color:rgba(255,255,255,.35);letter-spacing:0.08em;
}
.club-hero-status{
  font-family:'Jost',sans-serif;font-size:8.5px;font-weight:300;
  letter-spacing:0.22em;text-transform:uppercase;
  color:rgba(255,255,255,.35);
  border:1px solid rgba(255,255,255,.15);
  padding:8px 16px;
}

/* About section */
.club-about{
  padding:120px 80px;
  display:grid;grid-template-columns:1fr 1fr;
  gap:100px;align-items:center;
  background:var(--cream);
}
.club-about-img{
  position:relative;height:580px;overflow:hidden;
}
.club-about-img-fill{
  width:100%;height:100%;
  background-size:cover;background-position:center;
}
.club-about-img-accent{
  position:absolute;bottom:-20px;right:-20px;
  width:180px;height:140px;
  background-size:cover;background-position:center;
  border:4px solid var(--cream);
}
.club-about-text{}
.club-about-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(34px,3.2vw,50px);font-weight:300;
  color:var(--navy);line-height:1.05;margin-bottom:24px;
}
.club-about-title em{font-style:italic;}
.club-about-body{
  font-family:'Jost',sans-serif;font-size:15px;font-weight:300;
  line-height:1.9;letter-spacing:0.04em;color:var(--mid);
  margin-bottom:20px;
}

/* Courts & Facilities */
.club-courts{
  padding:100px 80px;
  background:var(--dark);
}
.club-courts-grid{
  display:grid;grid-template-columns:1fr 1fr 1fr;
  gap:3px;margin-top:60px;
}
.club-facility-card{
  position:relative;height:380px;overflow:hidden;
}
.club-facility-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.club-facility-card:hover .club-facility-bg{transform:scale(1.05);}
.club-facility-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 30%,rgba(14,25,35,.88) 100%);
}
.club-facility-content{
  position:absolute;bottom:0;left:0;right:0;padding:28px 32px;
}
.club-facility-title{
  font-family:'Cormorant Garamond',serif;
  font-size:22px;font-weight:300;color:var(--white);margin-bottom:6px;
}
.club-facility-desc{
  font-family:'Jost',sans-serif;font-size:13px;font-weight:300;
  letter-spacing:0.04em;line-height:1.7;color:rgba(255,255,255,.45);
}

/* Events */
.club-events{
  padding:100px 80px;background:var(--light);
}
.club-events-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:3px;margin-top:56px;
}
.club-event-card{
  background:var(--white);padding:40px 44px;
  border:1px solid var(--sand);
  transition:border-color .3s,transform .3s;
}
.club-event-card:hover{border-color:var(--gold);transform:translateY(-2px);}
.club-event-date{
  font-family:'Jost',sans-serif;font-size:8.5px;font-weight:300;
  letter-spacing:0.22em;text-transform:uppercase;
  color:var(--gold);margin-bottom:14px;
}
.club-event-title{
  font-family:'Cormorant Garamond',serif;
  font-size:24px;font-weight:300;color:var(--navy);margin-bottom:10px;
}
.club-event-desc{
  font-family:'Jost',sans-serif;font-size:13px;font-weight:300;
  line-height:1.8;letter-spacing:0.04em;color:var(--mid);
}
.club-event-tag{
  display:inline-block;margin-top:16px;
  font-family:'Jost',sans-serif;font-size:8px;font-weight:300;
  letter-spacing:0.18em;text-transform:uppercase;
  color:var(--navy);border:1px solid var(--sand);padding:5px 12px;
}

/* How to Play */
.club-play{
  padding:100px 80px;
  display:grid;grid-template-columns:1fr 1fr;
  gap:100px;align-items:center;
  background:var(--navy);
}
.club-play-options{display:flex;flex-direction:column;gap:0;}
.club-play-option{
  padding:28px 0;border-bottom:1px solid rgba(255,255,255,.07);
  display:grid;grid-template-columns:auto 1fr;
  gap:24px;align-items:start;
}
.club-play-option:first-child{border-top:1px solid rgba(255,255,255,.07);}
.club-play-num{
  font-family:'Cormorant Garamond',serif;
  font-size:36px;font-weight:300;font-style:italic;
  color:var(--gold);line-height:1;width:40px;
}
.club-play-title{
  font-family:'Cormorant Garamond',serif;
  font-size:22px;font-weight:400;color:var(--white);margin-bottom:6px;
}
.club-play-desc{
  font-family:'Jost',sans-serif;font-size:13px;font-weight:300;
  letter-spacing:0.04em;line-height:1.7;color:rgba(255,255,255,.4);
}

/* Gallery */
.club-gallery{
  display:grid;
  grid-template-columns:2fr 1fr 1fr 1fr;
  grid-template-rows:320px 200px;
  grid-auto-rows:200px;
  gap:3px;
}
.gallery-item{
  overflow:hidden;cursor:pointer;
}
.gallery-item:first-child{
  grid-column:1;grid-row:1/3;
}
.gallery-item-fill{
  width:100%;height:100%;
  background-size:cover;background-position:center;
  transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.gallery-item:hover .gallery-item-fill{transform:scale(1.05);}

/* ═══════════════════════════════════════════════════════
   RESPONSIVE — MOBILE
═══════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  :root { --nav-h: 60px; }
  nav { padding: 0 24px; }
  .nav-logo img { height: 56px !important; }
  .nav-links, .nav-right { display: none; }
  .nav-logo { font-size: 14px; letter-spacing: 0.2em; }
  .hero-content { grid-template-columns: 1fr; padding: 0 24px 80px; }
  .hero-right { display: none; }
  .hero-sub { font-size: 13px; }
  .hero-actions { flex-direction: column; gap: 12px; }
  .btn-primary { width: 100%; text-align: center; }
  .what-is { grid-template-columns: 1fr; padding: 60px 24px; gap: 40px; }
  .what-is-img { height: 280px; }
  .pillars { padding: 0; }
  .pillars-header { padding: 60px 24px 40px; flex-direction: column; gap: 16px; }
  .pillars-grid { grid-template-columns: 1fr; }
  .pillar { height: 420px; }
  .hero-hl { font-size: clamp(38px, 10vw, 52px); }
  .desktop-br { display: none; }
  .counter-strip { grid-template-columns: repeat(2,1fr); padding: 40px 24px; gap: 32px; }
  .counter-num { font-size: 40px; }
  .dest-preview { padding: 60px 24px; }
  .dest-preview-header { flex-direction: column; gap: 16px; }
  .dest-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
  .dest-featured-section { padding: 0 0 60px; }
  .dest-featured-grid { grid-template-columns: 1fr; grid-template-rows: auto; }
  .dest-featured-mobile-cta { display:flex; justify-content:center; padding:24px 24px 0; }
  .dest-featured-grid .dest-card { height: 340px; }
  .dest-featured-grid .dest-card-overlay { background: linear-gradient(180deg, transparent 25%, rgba(14,25,35,.72) 58%, rgba(14,25,35,.96) 100%); }
  .dest-featured-grid .dest-card-name { font-size: 32px; }
  .dest-featured-grid .dest-card-content { padding: 32px 24px; }
  .clubs-section { padding: 60px 24px; }
  .clubs-grid { grid-template-columns: 1fr; }
  .club-card { height: 360px; }
  .membership-inner { grid-template-columns: 1fr; padding: 60px 24px; gap: 48px; }
  .experiences-section { padding: 60px 0; }
  .exp-header { padding: 0 24px 32px; flex-direction: column; gap: 16px; }
  .exp-scroll-track { padding-left: 24px; }
  .exp-card { min-width: 280px; }
  .home-cta { padding: 80px 24px; }
  .home-cta-title { font-size: 40px; }
  .cta-buttons { flex-direction: column; align-items: center; gap: 16px; }
  .footer-top { grid-template-columns: repeat(2,1fr); gap: 32px; padding: 48px 24px; }
  .footer-bottom { padding: 20px 24px; flex-direction: column; gap: 12px; text-align: center; }
  .footer-legal { justify-content: center; }
  .page-hero-small { height: 38vh; min-height: 260px; }
  .page-hero-small-content { padding: 0 24px 36px; }
  .page-hero-title { font-size: clamp(34px, 10vw, 50px); }
  .h-scroll-section { padding: 48px 0; }
  .h-scroll-header { padding: 0 24px 24px; flex-direction: column; gap: 12px; }
  .h-track { padding: 0 24px 4px 24px; }
  .portfolio-grid-section { padding: 60px 24px 80px; }
  .portfolio-grid { grid-template-columns: 1fr 1fr !important; }
  .portfolio-card { height: 200px; }
  .benefits-bar { grid-template-columns: 1fr 1fr; }
  .bbi-desc { display: none; }
  .pricing-grid { grid-template-columns: 1fr; gap: 16px; padding: 0 24px 60px; }
  .partners-grid { grid-template-columns: repeat(2,1fr); padding: 60px 24px; }
  .clubs-overview-hero { padding: 0 24px 48px; }
  .clubs-overview-grid { grid-template-columns: 1fr; }
  .club-overview-card { height: 400px; }
  .club-overview-name { font-size: 36px; }
  .club-overview-content { padding: 32px 28px; }
  .club-hero-content { grid-template-columns: 1fr; padding: 0 24px 60px; }
  .club-hero-meta { display: none; }
  .club-hero-title { font-size: clamp(36px, 10vw, 52px); }
  .club-about { grid-template-columns: 1fr; padding: 60px 24px; gap: 40px; }
  .club-about-img { height: 280px; }
  .club-courts { padding: 60px 24px; }
  .club-courts-grid { grid-template-columns: 1fr; }
  .club-facility-card { height: 260px; }
  .club-events { padding: 60px 24px; }
  .club-events-grid { grid-template-columns: 1fr; }
  .club-play { grid-template-columns: 1fr; padding: 60px 24px; gap: 48px; }
  .club-gallery { grid-template-columns: repeat(2,1fr); grid-template-rows: unset; }
  .club-gallery .gallery-item { height: 180px; }
  .club-gallery .gallery-item:first-child { grid-column: 1/3; }
  .club-gallery .gallery-item:nth-child(4) { grid-row: auto; }
}
@media (max-width: 480px) {
  .portfolio-grid { grid-template-columns: 1fr !important; }
  .benefits-bar { grid-template-columns: 1fr; }
  .club-gallery { grid-template-columns: 1fr; }
  .club-gallery .gallery-item:first-child { grid-column: 1; }
  .club-gallery .gallery-item { height: 220px; }
  .counter-strip { grid-template-columns: repeat(2,1fr); }
  .footer-top { grid-template-columns: 1fr; }
}

/* Hamburger */
.nav-hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  z-index: 1001;
}
.nav-hamburger span {
  display: block;
  width: 22px;
  height: 1px;
  background: var(--white);
  transition: background .3s;
}
nav.scrolled .nav-hamburger span { background: var(--navy); }

/* Force dark nav on light-background pages */
nav.nav-dark{
  background:rgba(245,240,232,0.96);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(184,151,106,0.2);
}
nav.nav-dark .logo-light { display: none; }
nav.nav-dark .logo-dark  { display: block; }
nav.nav-dark .nav-link { color: var(--mid); }
nav.nav-dark .nav-link:hover { color: var(--gold) !important; }
nav.nav-dark .nav-login { color: rgba(27,42,74,0.75); }
nav.nav-dark .nav-cta { color: var(--navy); border-color: rgba(27,42,74,0.3); }
nav.nav-dark .nav-hamburger span { background: var(--navy); }
@media (max-width: 768px) {
  .nav-hamburger { display: flex; }
}

/* Mobile Menu */
.mobile-menu {
  position: fixed;
  inset: 0;
  background: var(--navy);
  z-index: 2000;
  display: flex;
  flex-direction: column;
  padding: 80px 40px 60px;
  transform: translateX(100%);
  transition: transform .4s cubic-bezier(.22,1,.36,1);
}
.mobile-menu.open { transform: translateX(0); }
.mobile-menu-close {
  position: absolute;
  top: 24px;
  right: 28px;
  background: none;
  border: none;
  color: rgba(255,255,255,.4);
  font-size: 18px;
  cursor: pointer;
  font-family: 'Jost', sans-serif;
  font-weight: 300;
}
.mobile-nav { display: flex; flex-direction: column; gap: 36px; overflow-y: auto; }
.mobile-nav-group { display: flex; flex-direction: column; gap: 10px; }
.mobile-nav-label {
  font-family: 'Jost', sans-serif;
  font-size: 8px;
  font-weight: 300;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 4px;
}
.mobile-nav a {
  font-family: 'Cormorant Garamond', serif;
  font-size: 28px;
  font-weight: 300;
  color: rgba(255,255,255,.75);
  letter-spacing: 0.02em;
  transition: color .2s;
}
.mobile-nav a:hover { color: var(--white); }
.mobile-nav-membership {
  font-family:'Cormorant Garamond',serif;
  font-size:28px;font-weight:300;
  color:rgba(255,255,255,.75);
  letter-spacing:0.02em;
}
.mobile-nav-login {
  font-family: 'Jost', sans-serif !important;
  font-size: 9px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase;
  color: rgba(255,255,255,0.55) !important;
}
.mobile-nav-cta {
  display: inline-block !important;
  margin-top: 16px;
  font-family: 'Jost', sans-serif !important;
  font-size: 9px !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase;
  color: var(--white) !important;
  border: 1px solid rgba(184,151,106,.4);
  padding: 16px 28px;
  text-align: center;
  width: fit-content;
}

/* ── Additional mobile overrides ─────────────────────────────── */
@media (max-width: 768px) {
  .membership-section { padding: 60px 24px; }
  .membership-price { font-size: clamp(40px, 10vw, 64px); line-height: 1; }
  .map-section { padding: 48px 24px 60px; }
  .map-container { height: 320px; }
  .benefits-showcase { grid-template-columns: 1fr; }
  .benefits-bar { padding: 32px 24px; }
  .exp-scroll-track { padding-right: 24px; }
}

/* ═══════════════════════════════════════════════════════
   HERO CAROUSEL
═══════════════════════════════════════════════════════ */
.hero-carousel{
  position:relative;height:100vh;overflow:hidden;
}
.hc-slides{position:absolute;inset:0;}
.hc-slide{
  position:absolute;inset:0;
  opacity:0;transition:opacity 1.4s ease;
  pointer-events:none;
}
.hc-slide.active{opacity:1;pointer-events:auto;}
.hc-slide-bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
}
.hc-slide-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(14,25,35,.3) 0%,rgba(14,25,35,.05) 40%,rgba(14,25,35,.78) 100%);
}
.hc-slide-content{
  position:absolute;bottom:0;left:0;right:0;
  padding:0 80px 80px;
  display:grid;grid-template-columns:1fr auto;
  align-items:flex-end;gap:40px;
}
.hc-slide-left{max-width:700px;}
.hc-slide-eyebrow{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:400;
  letter-spacing:0.28em;text-transform:uppercase;
  color:rgba(255,255,255,0.85);
  margin-bottom:20px;
  display:flex;align-items:center;gap:14px;
  text-shadow:0 1px 12px rgba(0,0,0,0.6);
}
.hc-slide-eyebrow::before{content:'';width:20px;height:1px;background:var(--gold);flex-shrink:0;}
.hc-slide-hl{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(56px,6.5vw,96px);
  font-weight:300;line-height:1.0;
  color:var(--white);margin-bottom:28px;
}
.hc-slide-hl em{font-style:italic;color:rgba(255,255,255,.85);}
.hc-slide-sub{
  font-family:'Jost',sans-serif;
  font-size:14px;font-weight:300;
  letter-spacing:0.06em;line-height:1.8;
  color:rgba(255,255,255,.65);
  max-width:480px;margin-bottom:40px;
}
.hc-slide-actions{display:flex;align-items:center;gap:28px;}
.hc-slide-right{
  display:flex;flex-direction:column;
  align-items:flex-end;gap:6px;padding-bottom:6px;
}
.hc-dots{
  position:absolute;bottom:32px;left:50%;
  transform:translateX(-50%);
  display:flex;gap:10px;z-index:10;
}
.hc-dot{
  width:20px;height:1px;padding:4px 0;
  background:rgba(255,255,255,.3);
  border:none;cursor:pointer;
  transition:background .3s,width .3s;
  flex-shrink:0;
}
.hc-dot.active{background:var(--gold);width:32px;}

/* ═══════════════════════════════════════════════════════
   BRAND ARCHITECTURE DIAGRAM
═══════════════════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════
   BRAND ANCHOR — PART A
═══════════════════════════════════════════════════════ */
.brand-anchor{
  display:flex;align-items:center;justify-content:center;
  text-align:center;
  background:#1B2A4A;
  height:78vh;min-height:640px;
}
.brand-anchor-content{
  padding:0 40px;
  max-width:900px;
}
.padel-mark{
  width:280px;
  margin-bottom:36px;
  display:block;
  margin-left:auto;margin-right:auto;
}
.hairline-rule{
  width:1px;height:36px;
  background:#B8976A;
  margin:0 auto 20px;
}
.between-label{
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:14px;
  letter-spacing:0.35em;
  color:#B8976A;
  margin-bottom:20px;
}
.membership-name{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-weight:400;font-size:56px;
  color:#F5F0E8;
  line-height:1;letter-spacing:-0.005em;
}

/* ═══════════════════════════════════════════════════════
   OFFERINGS ROW — PART B
═══════════════════════════════════════════════════════ */
.offerings-section{
  background:#F5F0E8;
  padding:100px 60px 140px;
}
.offerings-intro{
  text-align:center;
  margin:0 auto 80px;
  max-width:720px;
}
.offerings-intro-eyebrow{
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:13px;
  letter-spacing:0.35em;
  color:#B8976A;
  margin-bottom:22px;
}
.offerings-intro-headline{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;font-size:38px;
  color:#1B2A4A;
  line-height:1.2;
}
.offerings-intro-headline em{font-style:italic;}
.offerings-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:36px;
  max-width:1480px;
  margin:0 auto;
}
.offering{text-align:left;}
.offering-image{
  width:100%;
  aspect-ratio:4/5;
  overflow:hidden;
  margin-bottom:26px;
  position:relative;
  background:#D9CDB8;
}
.offering-image img{
  width:100%;height:100%;
  object-fit:cover;display:block;
  transition:transform .7s ease;
}
.offering:hover .offering-image img{transform:scale(1.04);}
.offering-eyebrow{
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:9px;
  letter-spacing:0.3em;text-transform:uppercase;
  color:#B8976A;
  margin-bottom:14px;
}
.offering-name{
  font-family:'Cormorant Garamond',serif;
  font-weight:400;font-size:24px;
  color:#1B2A4A;
  line-height:1.25;margin-bottom:10px;
}
.offering-name em{font-style:italic;}
.offering-qualifier{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-size:14px;
  color:rgba(27,42,74,.7);
  margin-bottom:22px;line-height:1.4;
}
.offering-link{
  display:inline-block;
  font-family:'Jost',sans-serif;
  font-size:9px;font-weight:400;
  letter-spacing:0.24em;text-transform:uppercase;
  background:var(--gold);color:var(--white);
  padding:14px 32px;border-radius:1px;
  text-decoration:none;
  transition:background .3s,transform .3s;
}
.offering-link:hover{background:#a07d56;transform:translateY(-1px);}

/* ═══════════════════════════════════════════════════════
   FEATURED DESTINATION
═══════════════════════════════════════════════════════ */
.feat-dest{padding:0 0 120px;background:var(--cream);}
.feat-dest-inner{
  display:grid;grid-template-columns:55fr 45fr;
  height:580px;
}
.feat-dest-img{overflow:hidden;}
.feat-dest-img-fill{
  width:100%;height:100%;
  background-size:cover;background-position:center;
  transition:transform .8s cubic-bezier(.22,1,.36,1);
}
.feat-dest-img:hover .feat-dest-img-fill{transform:scale(1.03);}
.feat-dest-content{
  padding:80px;
  display:flex;flex-direction:column;justify-content:center;
  overflow:auto;
}
.feat-dest-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(36px,3.5vw,52px);font-weight:300;
  color:var(--navy);line-height:1.05;margin-bottom:8px;
}
.feat-dest-title em{font-style:italic;}
.feat-dest-region{
  font-family:'Cormorant Garamond',serif;
  font-size:16px;font-weight:300;font-style:italic;
  color:var(--mid);margin-bottom:28px;
}
.feat-dest-body{max-width:400px;margin-bottom:28px;}
.feat-dest-pills{
  display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px;
}
.feat-pill{
  font-family:'Jost',sans-serif;
  font-size:7.5px;font-weight:300;
  letter-spacing:0.18em;text-transform:uppercase;
  color:var(--navy);border:1px solid var(--sand);
  padding:6px 12px;
}

/* ═══════════════════════════════════════════════════════
   CURATED PADEL RETREATS
═══════════════════════════════════════════════════════ */
.retreats-section{padding:0 80px 120px;background:var(--cream);}
.retreats-header{margin-bottom:64px;}
.retreats-title{font-size:clamp(34px,3.2vw,50px);}
.retreat-rows{border-top:1px solid var(--sand);}
.retreat-row{
  display:grid;grid-template-columns:2fr 2.5fr 1fr;
  border-bottom:1px solid var(--sand);
  height:380px;
}
.retreat-row-img{overflow:hidden;}
.retreat-row-img-fill{
  width:100%;height:100%;
  background-size:cover;background-position:center;
  transition:transform .8s cubic-bezier(.22,1,.36,1);
}
.retreat-row:hover .retreat-row-img-fill{transform:scale(1.03);}
.retreat-row-content{
  padding:44px 52px;
  display:flex;flex-direction:column;justify-content:center;
  gap:0;
}
.retreat-row-eyebrow{
  font-family:'Jost',sans-serif;
  font-size:10px;font-weight:400;
  letter-spacing:0.24em;text-transform:uppercase;
  color:var(--gold);margin-bottom:16px;
}
.retreat-row-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(28px,2.6vw,38px);font-weight:300;
  color:var(--navy);line-height:1.1;margin-bottom:6px;
}
.retreat-row-title em{font-style:italic;}
.retreat-row-venue{
  font-family:'Cormorant Garamond',serif;
  font-size:14px;font-weight:300;font-style:italic;
  color:var(--mid);margin-bottom:20px;
}
.retreat-row-body{
  font-family:'Jost',sans-serif;
  font-size:12px;font-weight:300;
  letter-spacing:0.04em;line-height:1.85;
  color:var(--mid);max-width:380px;margin-bottom:20px;
}
.retreat-pills{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px;}
.retreat-pill{
  font-family:'Jost',sans-serif;
  font-size:7.5px;font-weight:300;
  letter-spacing:0.18em;text-transform:uppercase;
  color:var(--mid);border:1px solid var(--sand);
  padding:5px 10px;
}
.retreat-status{display:flex;align-items:center;gap:10px;}
.retreat-status-dot{
  width:7px;height:7px;border-radius:50%;flex-shrink:0;
}
.status-available{background:#5C9E6A;}
.status-waitlist{background:var(--gold);}
.status-coming-soon{background:var(--mid);}
.retreat-status-text{
  font-family:'Jost',sans-serif;
  font-size:8.5px;font-weight:300;
  letter-spacing:0.2em;text-transform:uppercase;
  color:var(--mid);
}
.retreat-row-action{
  display:flex;align-items:center;justify-content:center;
  border-left:1px solid var(--sand);
}
.retreat-action-btn{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:400;
  letter-spacing:0.22em;text-transform:uppercase;
  color:var(--navy);
  background:none;border:none;cursor:pointer;
  border-bottom:1px solid var(--navy);
  padding:0 0 3px;
  transition:color .25s, border-color .25s;
  white-space:nowrap;
}
.retreat-action-btn:hover{color:var(--gold);border-color:var(--gold);}
.retreats-footer{margin-top:56px;text-align:right;}

/* ── Retreat row description ── */
.retreat-row-desc{
  font-family:'Cormorant Garamond',serif;
  font-size:15px;font-weight:300;
  line-height:1.5;color:rgba(27,42,74,.85);
  max-width:560px;margin:12px 0 16px;
}

/* ── Retreat row tags (replaces pills) ── */
.retreat-row-tags{
  font-family:'Cormorant Garamond',serif;
  font-size:15px;font-weight:300;font-style:italic;
  color:rgba(27,42,74,.7);line-height:1.5;
}

/* ── Retreat drawer ── */
.retreat-drawer-overlay{
  position:fixed;inset:0;
  background:rgba(14,25,35,.55);
  z-index:200;opacity:0;pointer-events:none;
  transition:opacity .35s;
}
.retreat-drawer-overlay.open{opacity:1;pointer-events:all;}
.retreat-drawer{
  position:fixed;top:0;right:0;bottom:0;
  width:min(520px,95vw);
  background:var(--cream);z-index:201;
  transform:translateX(105%);
  transition:transform .42s cubic-bezier(.22,1,.36,1);
  overflow-y:auto;display:flex;flex-direction:column;
  box-shadow:-20px 0 60px rgba(14,25,35,.15);
}
.retreat-drawer.open{transform:translateX(0);}
.retreat-drawer-close-btn{
  position:sticky;top:0;align-self:flex-end;
  font-family:'Jost',sans-serif;font-size:9px;font-weight:300;
  letter-spacing:0.2em;text-transform:uppercase;
  color:var(--mid);background:var(--cream);border:none;cursor:pointer;
  transition:color .2s;padding:20px 20px 0;z-index:2;
}
.retreat-drawer-close-btn:hover{color:var(--navy);}
.retreat-drawer-hero{
  aspect-ratio:16/9;width:100%;flex-shrink:0;
  background-size:cover;background-position:center;
}
.retreat-drawer-body{padding:36px 44px 64px;}
.retreat-drawer-eyebrow{
  font-family:'Jost',sans-serif;font-size:10px;font-weight:500;
  letter-spacing:0.28em;text-transform:uppercase;
  color:var(--gold);margin-bottom:12px;
}
.retreat-drawer-title{
  font-family:'Cormorant Garamond',serif;
  font-size:32px;font-weight:300;
  color:var(--navy);line-height:1.1;margin-bottom:8px;
}
.retreat-drawer-title em{font-style:italic;}
.retreat-drawer-venue{
  font-family:'Cormorant Garamond',serif;
  font-size:15px;font-weight:300;font-style:italic;
  color:rgba(27,42,74,.55);margin-bottom:32px;
}
.retreat-drawer-leadin{
  font-family:'Cormorant Garamond',serif;
  font-size:16px;font-weight:300;font-style:italic;
  color:rgba(27,42,74,.7);margin:0;
}
.retreat-drawer-itin-label{
  font-family:'Jost',sans-serif;font-weight:500;font-size:10px;
  letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);margin-top:32px;margin-bottom:32px;
}
.retreat-drawer-day{padding-bottom:32px;}
.retreat-day-rule{
  width:40px;height:1px;background:var(--gold);
  margin-bottom:32px;
}
.retreat-day-label{
  font-family:'Jost',sans-serif;font-weight:500;font-size:10px;
  letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:8px;
}
.retreat-day-title{
  font-family:'Cormorant Garamond',serif;font-style:italic;
  font-size:18px;font-weight:300;
  color:var(--navy);margin-bottom:10px;
}
.retreat-day-content{
  font-family:'Cormorant Garamond',serif;
  font-size:15px;font-weight:300;
  line-height:1.65;color:rgba(27,42,74,.9);
  margin:0;
}
.retreat-drawer-cta{margin-top:48px;}
@media(max-width:600px){
  .retreat-drawer{
    width:100%;top:auto;height:85vh;
    border-radius:16px 16px 0 0;
    transform:translateY(105%);
  }
  .retreat-drawer.open{transform:translateY(0);}
  .retreat-drawer-overlay{display:flex;align-items:flex-end;}
  .retreat-drawer-body{padding:28px 24px 56px;}
}

/* ═══════════════════════════════════════════════════════
   WORLDVIEW MOMENT
═══════════════════════════════════════════════════════ */
.worldview-moment{
  padding:160px 80px;
  background:var(--dark);
  display:flex;justify-content:center;align-items:center;
  text-align:center;
}
.wm-inner{max-width:640px;}
.wm-quote{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(40px,5vw,72px);
  font-weight:300;font-style:italic;
  color:var(--white);line-height:1.05;
  margin-bottom:28px;
}
.wm-sub{
  font-family:'Jost',sans-serif;
  font-size:13px;font-weight:300;
  letter-spacing:0.05em;line-height:1.85;
  color:rgba(255,255,255,.45);
  margin-bottom:44px;
}

/* ═══════════════════════════════════════════════════════
   PRIVÉ LOCATIONS — HOME TEASER
═══════════════════════════════════════════════════════ */
.locations-section{
  background:var(--cream);
  padding:100px 80px 120px;
}
.location-feature{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:80px;
  align-items:center;
  max-width:1400px;
  margin:0 auto;
}
.location-feature-img{
  aspect-ratio:3/2;
  background-size:cover;
  background-position:center;
}
.location-coming-soon{
  display:inline-block;
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:10px;
  letter-spacing:0.25em;
  text-transform:uppercase;
  color:var(--gold);
  border:1px solid var(--gold);
  padding:6px 14px;
  margin-bottom:28px;
}
.location-place{
  font-family:'Jost',sans-serif;
  font-weight:400;font-size:11px;
  letter-spacing:0.3em;
  text-transform:uppercase;
  color:var(--mid);
  margin-bottom:14px;
}
.location-heading{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;
  font-size:clamp(36px,3.5vw,52px);
  color:var(--navy);
  line-height:1.1;
  margin-bottom:36px;
}
.location-heading em{font-style:italic;}
.location-stats{
  display:flex;
  gap:48px;
  margin-bottom:36px;
  padding-bottom:36px;
  border-bottom:1px solid var(--sand);
}
.stat-num{
  display:block;
  font-family:'Cormorant Garamond',serif;
  font-weight:300;font-size:48px;
  color:var(--navy);
  line-height:1;
  margin-bottom:6px;
}
.stat-label{
  display:block;
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:9px;
  letter-spacing:0.25em;
  text-transform:uppercase;
  color:var(--mid);
}
.location-body{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;font-size:18px;
  line-height:1.65;
  color:var(--navy);
  margin-bottom:40px;
}
@media(max-width:900px){
  .locations-section{padding:80px 30px 100px;}
  .location-feature{grid-template-columns:1fr;gap:40px;}
  .location-stats{gap:32px;}
  .stat-num{font-size:36px;}
}

/* ═══════════════════════════════════════════════════════
   PRIVÉ LOCATIONS — DEDICATED PAGE
═══════════════════════════════════════════════════════ */
.locations-intro{
  background:var(--navy);
  padding:calc(100px + var(--nav-h)) 80px 80px;
}
.locations-intro .section-eyebrow{color:var(--gold);margin-bottom:24px;}
.locations-intro-title{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;
  font-size:clamp(42px,5vw,68px);
  color:var(--white);
  line-height:1.1;
  margin-bottom:28px;
}
.locations-intro-title em{font-style:italic;}
.locations-intro-sub{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;font-size:20px;
  color:rgba(245,240,232,.7);
  line-height:1.65;
  max-width:580px;
}
.loc-entries-inner{
  max-width:1360px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:80px;
}
.loc-entry{
  display:grid;
  grid-template-columns:55fr 45fr;
  min-height:560px;
}
.loc-entry--flip{
  grid-template-columns:45fr 55fr;
}
.loc-entry--flip .loc-entry-img{order:2;}
.loc-entry--flip .loc-entry-content{order:1;}
.loc-entry-img{
  background-size:cover;
  background-position:center;
  min-height:420px;
}
.loc-entry-content{
  padding:80px 72px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.loc-status{
  display:inline-block;
  font-family:'Jost',sans-serif;
  font-weight:500;font-size:10px;
  letter-spacing:0.25em;
  text-transform:uppercase;
  color:var(--gold);
  border:1px solid var(--gold);
  padding:6px 14px;
  margin-bottom:28px;
  align-self:flex-start;
}
.loc-heading{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;
  font-size:clamp(38px,4vw,58px);
  color:var(--navy);
  line-height:1.1;
  margin-bottom:32px;
}
.loc-heading em{font-style:italic;}
.loc-stats{
  display:flex;
  gap:40px;
  margin-bottom:32px;
  padding-bottom:32px;
  border-bottom:1px solid var(--sand);
}
.loc-body{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;font-size:18px;
  line-height:1.65;
  color:var(--navy);
  margin-bottom:40px;
}
@media(max-width:900px){
  .loc-entries-inner{gap:60px;}
  .loc-entry,.loc-entry--flip{grid-template-columns:1fr;}
  .loc-entry--flip .loc-entry-img{order:0;}
  .loc-entry--flip .loc-entry-content{order:1;}
  .loc-entry-content{padding:48px 30px;}
  .loc-stats{gap:28px;}
}

/* ═══════════════════════════════════════════════════════
   CLOSING CTA  (reuses .home-cta family)
═══════════════════════════════════════════════════════ */
.closing-cta{
  position:relative;padding:140px 80px;
  overflow:hidden;
  display:flex;flex-direction:column;align-items:center;
  text-align:center;background:var(--navy);
}
.closing-cta-bg{
  position:absolute;inset:0;
  background:url('https://res.cloudinary.com/dfjqa5f05/image/upload/q_auto,f_auto/v1773183458/HomePage_Full-Bleed_CTA_wfvxw7.jpg') center/cover;
  opacity:.1;
}
.closing-cta-inner{position:relative;z-index:1;}
.closing-cta-eyebrow{
  font-family:'Jost',sans-serif;
  font-size:11px;font-weight:400;
  letter-spacing:0.25em;text-transform:uppercase;
  color:var(--gold);margin-bottom:24px;
}
.closing-cta-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(52px,6vw,88px);
  font-weight:300;line-height:1.05;
  color:var(--white);margin-bottom:20px;
}
.closing-cta-title em{font-style:italic;}
.closing-cta-sub{
  font-family:'Jost',sans-serif;
  font-size:14px;font-weight:300;
  letter-spacing:0.05em;line-height:1.8;
  color:rgba(255,255,255,.5);
  max-width:520px;margin:0 auto 44px;
}

/* ─── Responsive — new homepage components ──────────── */
@media (max-width: 768px) {
  .hc-slide-content { grid-template-columns:1fr; padding:0 24px 80px; }
  .hc-slide-right { display:none; }
  .hc-slide-hl { font-size:clamp(38px,10vw,52px); }
  .hc-slide-sub { font-size:13px; }
  .hc-slide-actions { flex-direction:column; gap:12px; }
  .hc-dots { bottom:24px; }

  .brand-anchor { height:70vh; min-height:520px; }
  .padel-mark { width:200px; }
  .membership-name { font-size:38px; }
  .offerings-section { padding:80px 30px 100px; }
  .offerings-intro-headline { font-size:30px; }
  .offerings-grid { grid-template-columns:1fr; gap:60px; max-width:480px; }

  .feat-dest-inner { grid-template-columns:1fr; }
  .feat-dest-img { height:280px; }
  .feat-dest-content { padding:40px 24px; }

  .retreats-section { padding:0 24px 80px; }
  .retreat-row { grid-template-columns:1fr !important; height:auto !important; min-height:unset !important; }
  .retreat-row-img { height:260px; }
  .retreat-row-content { padding:28px 0; }
  .retreat-row-action { display:flex; border-left:none; justify-content:flex-start; padding:16px 0 24px; }

  .worldview-moment { padding:100px 24px; }
  .wm-quote { font-size:clamp(34px,9vw,52px); }

  .closing-cta { padding:80px 24px; }
  .closing-cta-title { font-size:40px; }
}


/* ═══════════════════════════════════════════════════════
   CLUB PARTNERS PAGE
═══════════════════════════════════════════════════════ */

/* ── Shared eyebrow for both partners sections ── */
.cp-section-eyebrow{
  font-family:'Jost',sans-serif;font-weight:500;font-size:10px;
  letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:22px;
}

/* ── Live partners section ── */
.cp-live-section{
  background:var(--cream);
  padding:100px 60px;
}
.cp-live-intro{
  text-align:center;
  margin-bottom:80px;
}
.cp-live-headline{
  font-family:'Cormorant Garamond',serif;
  font-size:38px;font-weight:300;
  color:var(--navy);line-height:1.2;
  margin:0;
}
.cp-live-headline em{font-style:italic;}

/* ── Partner card grid ── */
.cp-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:36px;
  max-width:1320px;
  margin:0 auto;
}
.cp-card{text-align:left;}
.cp-card-img-wrap{
  aspect-ratio:4/5;
  width:100%;
  overflow:hidden;
  background:var(--sand);
  margin-bottom:26px;
}
.cp-card-img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
  transition:transform .7s ease;
}
.cp-card:hover .cp-card-img{transform:scale(1.04);}
.cp-card-eyebrow{
  font-family:'Jost',sans-serif;font-weight:500;font-size:9px;
  letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:14px;
}
.cp-card-headline{
  font-family:'Cormorant Garamond',serif;
  font-size:24px;font-weight:400;
  color:var(--navy);line-height:1.25;
  margin:0;
}
.cp-card-headline em{font-style:italic;}
.cp-card-pairing{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-size:14px;font-weight:300;
  color:rgba(27,42,74,.7);line-height:1.4;
  margin:12px 0 0;
}
.cp-card-fact{
  font-family:'Cormorant Garamond',serif;
  font-size:14px;font-weight:300;
  color:rgba(27,42,74,.8);line-height:1.5;
  margin:16px 0 0;
}

/* ── Cities in development section ── */
.cp-dev-section{
  background:var(--cream);
  padding:80px 60px 100px;
}
.cp-dev-intro{
  text-align:center;
  margin-bottom:60px;
}
.cp-dev-rule{
  width:36px;height:1px;
  background:var(--gold);
  margin:0 auto 36px;
}
.cp-dev-headline{
  font-family:'Cormorant Garamond',serif;
  font-size:28px;font-weight:300;
  color:var(--navy);line-height:1.2;
  margin:0;
}
.cp-dev-headline em{font-style:italic;}
.cp-dev-roster{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  max-width:1080px;
  margin:0 auto;
}
.cp-dev-row{
  padding:40px 32px;
  border-top:1px solid rgba(184,151,106,.35);
  border-left:1px solid rgba(184,151,106,.35);
  transition:opacity .25s;
}
.cp-dev-row:first-child{border-left:none;}
.cp-dev-row:hover{opacity:.72;}
.cp-dev-city-name{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(28px,2.8vw,42px);
  font-weight:300;font-style:italic;
  color:var(--navy);line-height:1.1;
  margin-bottom:14px;
}
.cp-dev-coming{
  font-family:'Jost',sans-serif;font-weight:400;font-size:9px;
  letter-spacing:0.3em;text-transform:uppercase;
  color:rgba(184,151,106,.7);
}

/* ── Club partners closing CTA ── */
.cp-closing{
  background:var(--dark);
  padding:120px 60px 140px;
  text-align:center;
}
.cp-closing-inner{
  max-width:720px;
  margin:0 auto;
  display:flex;flex-direction:column;align-items:center;
}
.cp-closing-eyebrow{
  font-family:'Jost',sans-serif;font-weight:500;font-size:10px;
  letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:24px;
}
.cp-closing-headline{
  font-family:'Cormorant Garamond',serif;
  font-size:48px;font-weight:300;
  color:var(--cream);line-height:1.1;
  margin:0;
}
.cp-closing-headline em{font-style:italic;}
.cp-closing-sub{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-size:16px;font-weight:300;
  color:rgba(245,240,232,.75);line-height:1.5;
  max-width:580px;margin-top:28px;
}

/* ── Club partners responsive ── */
@media(max-width:900px){
  .cp-live-section{padding:80px 24px;}
  .cp-dev-section{padding:60px 24px 80px;}
  .cp-closing{padding:80px 24px 100px;}
  .cp-grid{grid-template-columns:1fr;gap:60px;max-width:480px;margin:0 auto;}
  .cp-dev-roster{grid-template-columns:1fr;}
  .cp-dev-row{border-left:none;border-bottom:1px solid rgba(184,151,106,.35);}
  .cp-dev-row:first-child{border-top:1px solid rgba(184,151,106,.35);}
  .cp-closing-headline{font-size:36px;}
}

/* ── Footer email capture (compact column) ───────────── */
.footer-sub-desc{font-family:'Jost',sans-serif;font-size:11px;font-weight:300;line-height:1.65;color:rgba(245,240,232,.42);margin:0 0 12px;}
.footer-sub-form{display:flex;flex-direction:column;gap:7px;}
.footer-sub-field input{width:100%;box-sizing:border-box;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:1px;padding:9px 11px;font-family:'Jost',sans-serif;font-size:11px;font-weight:300;color:var(--white);outline:none;transition:border-color .2s;}
.footer-sub-field input::placeholder{color:rgba(245,240,232,.28);}
.footer-sub-field input:focus{border-color:rgba(184,151,106,.45);}
.footer-sub-field.err input{border-color:rgba(220,90,90,.5);}
.footer-sub-err{font-family:'Jost',sans-serif;font-size:10px;font-weight:300;color:#e07070;margin:4px 0 0;display:none;}
.footer-sub-field.err .footer-sub-err{display:block;}
.footer-sub-btn{font-family:'Jost',sans-serif;font-size:9px;font-weight:400;letter-spacing:.2em;text-transform:uppercase;background:var(--gold);color:var(--white);border:none;cursor:pointer;padding:9px;width:100%;border-radius:1px;transition:background .3s;}
.footer-sub-btn:hover{background:#a07d56;}
.footer-sub-btn:disabled{opacity:.5;cursor:default;}
.footer-sub-confirm{font-family:'Jost',sans-serif;font-size:11px;font-weight:300;color:rgba(245,240,232,.55);display:none;line-height:1.5;}
