/* ─── PAGE HERO ─── */
.page-hero{
  padding:72px 52px 0;
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:80px;align-items:end
}
.hero-lbl{
  font-family:var(--sans);font-size:12px;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--kl);margin-bottom:28px
}
.page-hero h1{
  font-family:var(--serif);font-size:22px;font-weight:normal;
  line-height:1.70;color:var(--k);max-width:440px
}
.hero-right{display:flex;flex-direction:column;align-items:flex-end}
.hero-desc{
  font-family:var(--sans);font-size:13px;line-height:2.05;
  color:var(--km);max-width:300px;margin-bottom:36px;text-align:right
}

/* ─── BASELINE STATS ─── */
.hero-baseline{
  display:grid;grid-template-columns:1fr 1fr 1fr 1fr;
  border-top:0.5px solid var(--rule);margin-top:52px
}
.baseline-item{padding:24px 52px;border-right:0.5px solid var(--rule)}
.baseline-item:last-child{border-right:none}
.baseline-n{font-family:var(--serif);font-size:14px;color:var(--k);margin-bottom:6px}
.baseline-n.red{color:var(--r)}
.baseline-l{
  font-family:var(--sans);font-size:10px;letter-spacing:0.16em;
  text-transform:uppercase;color:var(--kl)
}

/* ─── ABOUT ─── */
.about-grid{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:80px;align-items:start
}
.about-left h2{
  font-family:var(--serif);font-size:20px;font-weight:normal;
  line-height:1.6;color:var(--k);margin-bottom:20px
}
.about-left p{
  font-family:var(--sans);font-size:13px;line-height:2.05;
  color:var(--km);margin-bottom:20px
}
.about-left p:last-child{margin-bottom:0}
.about-right-lead{
  font-family:var(--sans);font-size:13px;line-height:2.05;
  color:var(--km);margin-bottom:48px
}

/* pull quote */
.pull-quote{
  font-family:var(--serif);font-style:italic;font-size:17px;
  line-height:1.75;color:var(--k);
  padding:28px 0;border-top:0.5px solid var(--rule);
  margin-bottom:28px
}
.pull-quote::before{
  content:'';display:block;width:20px;height:1px;
  background:var(--r);margin-bottom:20px
}

.schedule-block{padding:20px 0}
.schedule-lbl{
  font-family:var(--sans);font-size:10px;letter-spacing:0.14em;
  text-transform:uppercase;color:var(--kl);margin-bottom:10px
}
.schedule-time{
  font-family:var(--sans);font-size:13px;color:var(--km);margin-bottom:6px
}
.schedule-locations{font-family:var(--sans);font-size:12px;color:var(--kl)}

/* ─── WHO IT'S FOR ─── */
.who-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.who-col{padding:0 28px 0 0;border-right:0.5px solid var(--rule)}
.who-col:last-child{border-right:none;padding-right:0}
.who-col:not(:first-child){padding-left:28px}
.who-n{
  font-family:var(--sans);font-size:11px;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--r);margin-bottom:14px
}
.who-t{font-family:var(--sans);font-size:13px;line-height:1.85;color:var(--km)}

/* ─── DARK MEMBERSHIP BAND ─── */
.tier-hero{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:80px;align-items:end
}
.tier-left h2{
  font-family:var(--serif);font-size:20px;font-weight:normal;
  line-height:1.6;color:#d8d7cf;margin-bottom:16px
}
.tier-left p{
  font-family:var(--sans);font-size:13px;line-height:2.05;color:#5a5a52
}
.tier-right{display:flex;flex-direction:column;align-items:flex-end}
.price-block{margin-bottom:24px;text-align:right}
.price{
  font-family:var(--serif);font-size:30.6px;color:#d8d7cf;
  line-height:1;margin-bottom:6px
}
.price-note{
  font-family:var(--sans);font-size:11px;letter-spacing:0.08em;
  text-transform:uppercase;color:#484840
}

/* ─── PERKS ─── */
.perks-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.perk{padding:0 28px 0 0;border-right:0.5px solid var(--rule)}
.perk:last-child{border-right:none;padding-right:0}
.perk:not(:first-child){padding-left:28px}
.perk-n{
  font-family:var(--sans);font-size:11px;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--r);margin-bottom:14px
}
.perk-t{font-family:var(--sans);font-size:13px;line-height:1.85;color:var(--km)}

/* ─── TRIAL ─── */
.trial-grid{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:80px;align-items:start;position:relative
}
.trial-left h2{
  font-family:var(--serif);font-size:20px;font-weight:normal;
  line-height:1.6;color:var(--k);margin-bottom:18px
}
.trial-left p{
  font-family:var(--sans);font-size:13px;line-height:2.05;
  color:var(--km);margin-bottom:32px
}
.contact-row{
  display:flex;justify-content:space-between;align-items:baseline;
  padding:16px 0;border-top:0.5px solid var(--rule)
}
.contact-row:last-child{border-bottom:0.5px solid var(--rule)}
.cr-val{font-family:var(--sans);font-size:13px;color:var(--km)}
.cr-lbl{
  font-family:var(--sans);font-size:12px;letter-spacing:0.12em;
  text-transform:uppercase;color:var(--kl)
}

/* =========================================================================
   RESPONSIVE — membership
   ========================================================================= */
@media (max-width:1024px){
  .page-hero{padding:56px 32px 0;gap:40px}
  .about-grid,.tier-hero,.trial-grid{gap:48px}
  .baseline-item{padding:24px 24px}
}

@media (max-width:768px){
  .page-hero{
    grid-template-columns:1fr;gap:24px;
    padding:44px 24px 0;align-items:start
  }
  .page-hero h1{font-size:18px;max-width:none}
  .hero-right{align-items:flex-start}
  .hero-desc{text-align:left;max-width:none}

  .hero-baseline{grid-template-columns:1fr 1fr;margin-top:36px}
  .baseline-item{padding:18px 24px}
  .baseline-item:nth-child(2){border-right:none}
  .baseline-item:nth-child(1),
  .baseline-item:nth-child(2){border-bottom:0.5px solid var(--rule)}
  .baseline-item:nth-child(3){border-right:0.5px solid var(--rule)}

  .about-grid{grid-template-columns:1fr;gap:32px}
  .about-right-lead{margin-bottom:24px}

  .who-grid{grid-template-columns:1fr}
  .who-col{
    padding:18px 0;border-right:none;
    border-top:0.5px solid var(--rule);
    display:flex;gap:20px;align-items:baseline
  }
  .who-col:not(:first-child){padding-left:0}
  .who-col:last-child{border-bottom:0.5px solid var(--rule)}
  .who-n{flex-shrink:0}

  .tier-hero{grid-template-columns:1fr;gap:24px;align-items:flex-start}
  .tier-right{align-items:flex-start}
  .price-block{text-align:left;margin-bottom:24px}

  .perks-grid{grid-template-columns:1fr 1fr;gap:0}
  .perk{
    padding:18px 0;border-right:none;border-top:0.5px solid var(--rule)
  }
  .perk:not(:first-child){padding-left:0}
  .perk:nth-child(odd){padding-right:14px;border-right:0.5px solid var(--rule)}
  .perk:nth-child(even){padding-left:14px}

  .trial-grid{grid-template-columns:1fr;gap:32px}
}
