.pricing-page{background:#f2eee6;color:#242321}.pricing-hero{min-height:92vh;padding:10rem var(--pad) 5rem;display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(2rem,7vw,9rem);align-items:center;background:#242424;color:#f7f1e8;position:relative;overflow:hidden}.pricing-hero:after{content:"";position:absolute;inset:auto -8% -35% 42%;height:85%;background:radial-gradient(circle,#ff941f26,transparent 64%)}.pricing-hero h1,.pricing-head h2{font-family:"Cormorant Garamond",serif;font-weight:400;line-height:.84;font-size:clamp(4.4rem,9vw,10rem);letter-spacing:-.055em}.pricing-hero h1 em,.pricing-head em{color:#ff9218;font-weight:400}.pricing-lead{font-size:clamp(1.05rem,1.35vw,1.35rem);line-height:1.65;max-width:34rem;color:#d8d0c5}.pricing-ticket{position:relative;z-index:1;background:#ff9218;color:#191919;padding:clamp(2rem,4vw,5rem);display:grid;grid-template-columns:1fr auto;gap:3rem;box-shadow:-35px 35px 0 #f2eee6}.pricing-ticket small,.package-label,.pricing-kicker{text-transform:uppercase;letter-spacing:.2em;font:600 .68rem/1.4 Manrope,sans-serif}.pricing-ticket strong{font:400 clamp(5rem,10vw,10rem)/.72 "Cormorant Garamond",serif}.pricing-ticket span{align-self:end;margin-bottom:.5rem}.pricing-intro{padding:8rem var(--pad) 3rem;display:grid;grid-template-columns:.34fr 1fr;gap:4rem}.pricing-head h2{font-size:clamp(3.7rem,7vw,7rem);max-width:900px}.packages{padding:2rem var(--pad) 8rem}.package{display:grid;grid-template-columns:.7fr .45fr 1.35fr auto;border-top:1px solid #aaa399;padding:2.2rem 1rem;gap:2rem;align-items:start;transition:.3s}.package:hover{background:#faf7f1;padding-left:2rem}.package.featured{background:#242424;color:#f7f1e8;border:0;padding:3rem 2.4rem;margin:1.5rem 0;box-shadow:18px 18px 0 #ff9218}.package h3{font:400 clamp(2.1rem,3.2vw,3.8rem)/.9 "Cormorant Garamond",serif}.package-price strong{font:400 clamp(2.8rem,4vw,4.5rem)/.8 "Cormorant Garamond",serif}.package-price span{font-size:.75rem}.package ul{margin:0;padding:0;list-style:none;columns:2;column-gap:2rem}.package li{break-inside:avoid;margin:0 0 .65rem;padding-left:1.2rem;position:relative;line-height:1.4}.package li:before{content:"↗";position:absolute;left:0;color:#ff9218}.package .button{white-space:nowrap}.pricing-fine{padding:1.2rem 0;color:#6e685f;font-size:.8rem}.price-ledger{background:#dfd8cd;padding:7rem var(--pad)}.price-ledger-head{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-bottom:4rem}.price-ledger h2{font:400 clamp(3.5rem,6vw,6.5rem)/.88 "Cormorant Garamond",serif}.ledger-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #aaa399}.ledger-group{padding:2rem;border-right:1px solid #aaa399}.ledger-group:last-child{border:0}.ledger-row{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #bbb4aa;font-size:.9rem}.ledger-row strong{font-family:"Cormorant Garamond",serif;font-size:1.35rem;font-weight:500;white-space:nowrap}.pricing-note{padding:6rem var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:4rem}.pricing-note h2{font:400 clamp(3.5rem,6vw,6rem)/.9 "Cormorant Garamond",serif}.pricing-note-copy{font-size:1.05rem;line-height:1.7}.pricing-note-copy div{border-top:1px solid #aaa399;padding:1.2rem 0}.pricing-page .site-header{color:#f7f1e8}.pricing-page footer{background:#202020}
@media(max-width:900px){.pricing-hero{grid-template-columns:1fr;padding-top:8rem;min-height:auto}.pricing-ticket{box-shadow:12px 12px 0 #f2eee6}.pricing-intro,.price-ledger-head,.pricing-note{grid-template-columns:1fr}.package{grid-template-columns:1fr 1fr}.package ul{grid-column:1/-1}.ledger-grid{grid-template-columns:1fr}.ledger-group{border-right:0;border-bottom:1px solid #aaa399}.pricing-head h2{font-size:clamp(3.4rem,16vw,5.5rem)}}
@media(max-width:560px){.pricing-hero{padding-left:1.25rem;padding-right:1.25rem}.pricing-hero h1{font-size:clamp(4rem,21vw,6rem)}.pricing-ticket{grid-template-columns:1fr;gap:.5rem;padding:2rem}.package{grid-template-columns:1fr;padding:1.7rem 0}.package.featured{padding:2rem 1.4rem;margin-left:-.4rem;margin-right:-.4rem}.package ul{columns:1}.packages,.pricing-intro,.price-ledger,.pricing-note{padding-left:1.25rem;padding-right:1.25rem}}

/* Pricing hero: keep the editorial statement and the actual price visible
   together instead of allowing viewport-based type to break the composition. */
.pricing-hero{
  min-height:100svh;
  grid-template-columns:minmax(0,47fr) minmax(0,53fr);
  gap:clamp(3rem,5vw,6.5rem);
  padding:8.5rem var(--pad) 4.5rem;
}
.pricing-hero>div{min-width:0}
.pricing-hero h1{
  margin:1rem 0 2rem;
  font-size:clamp(5rem,6.4vw,8rem);
  line-height:.8;
}
.pricing-hero h1 em{white-space:nowrap}
.pricing-lead{margin:0;max-width:38rem}
.pricing-ticket{
  width:100%;
  max-width:760px;
  justify-self:end;
  padding:clamp(2.5rem,3.6vw,4.5rem);
  gap:clamp(2rem,4vw,5rem);
  box-shadow:-18px 18px 0 #f2eee6;
}
.pricing-ticket strong{font-size:clamp(6rem,8vw,9rem)}

@media(max-width:900px){
  .pricing-hero{grid-template-columns:minmax(0,1fr);gap:3rem;padding-top:8rem;min-height:auto}
  .pricing-hero h1{font-size:clamp(4.6rem,14vw,7rem)}
  .pricing-hero h1 em{white-space:normal}
  .pricing-ticket{justify-self:stretch;max-width:none;box-shadow:10px 10px 0 #f2eee6}
}
@media(max-width:560px){
  .pricing-hero{padding-bottom:4rem}
  .pricing-hero h1{font-size:clamp(4rem,20vw,5.5rem)}
  .pricing-ticket strong{font-size:5.8rem}
}

/* Clean pricing hierarchy: information first, decoration second. */
.pricing-hero{
  min-height:min(78svh,780px);
  background:linear-gradient(118deg,#242424 0%,#242424 68%,#2b261f 100%);
}
.pricing-hero::after{content:none}
.pricing-ticket{box-shadow:none}
.pricing-intro{
  padding:clamp(5rem,7vw,7rem) var(--pad) clamp(2.5rem,4vw,4rem);
  grid-template-columns:minmax(0,24fr) minmax(0,76fr);
  align-items:start;
}
.pricing-head h2{
  max-width:960px;
  margin:0;
  font-size:clamp(3.7rem,5.6vw,6.5rem);
  line-height:.9;
}
.package:hover{padding-left:1rem}
.package.featured{
  box-shadow:none;
  border-left:5px solid #ff9218;
  margin:0;
}
.price-ledger-head{align-items:start}
.price-ledger h2{margin:0;max-width:850px;font-size:clamp(3.2rem,5vw,5.6rem)}
.pricing-note h2{margin:0;max-width:680px;font-size:clamp(3.2rem,5vw,5.5rem)}

@media(max-width:900px){
  .pricing-hero{min-height:auto}
  .pricing-intro{grid-template-columns:minmax(0,1fr);gap:1.5rem}
  .pricing-head h2{font-size:clamp(3.4rem,12vw,5.3rem)}
}

/* Membership is positioned through the quality of the house, not a teaser price. */
.pricing-hero{
  min-height:92svh;
  grid-template-columns:minmax(0,43fr) minmax(0,57fr);
  background:#222321;
}
.pricing-visual{
  position:relative;
  height:min(61svh,650px);
  margin:0;
  overflow:hidden;
}
.pricing-visual::after{
  content:"";
  position:absolute;
  inset:1.6rem;
  border:1px solid rgba(255,250,243,.5);
  pointer-events:none;
}
.pricing-visual img{filter:saturate(.72) sepia(.08)}
.pricing-visual figcaption{
  position:absolute;
  left:0;
  bottom:0;
  z-index:1;
  width:min(330px,70%);
  padding:1.35rem 1.5rem;
  background:rgba(30,31,29,.9);
  backdrop-filter:blur(8px);
}
.pricing-visual figcaption span{
  display:block;
  color:#ff9218;
  font:600 .6rem/1.4 Manrope,sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.pricing-visual figcaption strong{
  display:block;
  margin-top:.35rem;
  font:400 1.55rem/1.05 "Cormorant Garamond",serif;
}

.packages{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1.5rem;
  padding-top:1rem;
}
.package,
.package.featured{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:520px;
  margin:0;
  padding:2.7rem;
  color:#242321;
  background:#f8f4ed;
  border:1px solid #c9c1b6;
  box-shadow:none;
}
.package:hover{padding-left:2.7rem;background:#fffaf3;border-color:#8f8579}
.package h3{margin:.8rem 0 1.8rem;font-size:clamp(2.8rem,4vw,4.5rem)}
.package-price{padding-bottom:1.8rem;border-bottom:1px solid #c9c1b6}
.package-price strong{font-size:clamp(3.6rem,5vw,5.4rem)}
.package ul{
  columns:1;
  display:grid;
  gap:.65rem;
  margin:1.8rem 0 2.2rem;
}
.package li{margin:0}
.package .button{align-self:flex-start;margin-top:auto}
.package.featured .button-light{background:#ff9218;color:#242321;border-color:#ff9218}
.pricing-fine{grid-column:1/-1}

@media(max-width:900px){
  .pricing-hero{grid-template-columns:minmax(0,1fr);min-height:auto}
  .pricing-visual{height:min(62svh,560px)}
  .packages{grid-template-columns:minmax(0,1fr)}
  .package,.package.featured{min-height:0;padding:2.2rem}
  .package:hover{padding-left:2.2rem}
}

/* Compact membership cards: keep the comparison readable without turning
   every package into a full-screen panel. */
.packages{
  align-items:start;
  gap:1.25rem;
  padding-bottom:clamp(4rem,6vw,6rem);
}
.package,
.package.featured{
  align-self:start;
  width:100%;
  min-height:460px;
  padding:2rem 2.2rem;
}
.package:hover{padding-left:2.2rem}
.package h3{
  margin:.65rem 0 1.25rem;
  font-size:clamp(2.65rem,3.5vw,3.8rem);
  line-height:.9;
}
.package-price{
  display:flex;
  align-items:baseline;
  gap:.55rem;
  min-height:76px;
  padding:0 0 1.25rem;
}
.package-price br{display:none}
.package-price strong{
  display:block;
  font-size:clamp(3.5rem,4.4vw,4.75rem);
  line-height:.82;
}
.package-price span{
  display:block;
  flex:0 0 auto;
  font-size:.72rem;
  line-height:1.2;
  white-space:nowrap;
}
.package ul{
  gap:.45rem;
  margin:1.35rem 0 1.6rem;
}
.package li{font-size:.9rem}
.package .button{padding:.85rem 1.05rem}

@media(max-width:900px){
  .package,.package.featured{min-height:0;padding:2rem}
  .package:hover{padding-left:2rem}
}
@media(max-width:560px){
  .package-price{min-height:64px}
  .package-price strong{font-size:3.7rem}
}
