/* Pricing continues the centred, full-section consumer journey.
   Values, comparisons and booking anchors remain ordinary readable HTML. */
body.consumer-pricing {
  --pc-cream: #faf7f2;
  --pc-sand: #f1e5d7;
  --pc-ink: #402313;
  --pc-muted: #765843;
  --pc-dark: #321d12;
  --pc-gutter: max(24px, calc((100% - 1120px) / 2));
  background: var(--pc-cream);
  color: var(--pc-ink);
}
body.consumer-pricing .site-header { position: relative; box-shadow: none; }
body.consumer-pricing .section-nav-consumer {
  width: 100%; max-width: none; margin: 0; padding-inline: var(--pc-gutter);
  border-inline: 0; border-radius: 0; box-shadow: none;
  justify-content: center; background: var(--pc-cream);
}
body.consumer-pricing .price-page { width: 100%; max-width: none; margin: 0; padding: 0; }
body.consumer-pricing .price-page .button::after { content: none; }
body.consumer-pricing .inner-intro-grid {
  display: block; margin: 0; padding: 72px var(--pc-gutter) 48px;
  text-align: center; background: var(--pc-cream);
}
body.consumer-pricing .inner-intro-grid .eyebrow { margin: 0 0 20px; font-size: .72rem; letter-spacing: .16em; }
body.consumer-pricing .inner-intro-grid h1 {
  max-width: 20ch; margin: 0 auto 24px;
  font-size: clamp(2.8rem, 5.5vw, 5.2rem); line-height: 1.02; letter-spacing: -.055em;
}
body.consumer-pricing .inner-intro-grid .price-lede { max-width: 45ch; margin: 0 auto; font-size: 1.08rem; line-height: 1.65; }
body.consumer-pricing .info-actions { justify-content: center; }
body.consumer-pricing .price-list {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px;
  margin: 0; padding: 16px var(--pc-gutter) 76px; border: 0; background: var(--pc-cream);
}
body.consumer-pricing .price-row {
  display: flex; flex-direction: column; align-items: stretch; gap: 30px;
  min-width: 0; margin: 0; padding: 32px 24px 30px; border: 1px solid #e1cdb7;
  border-radius: 20px; background: #fffcf7; box-shadow: none; text-align: center;
}
body.consumer-pricing .price-row.is-featured { background: var(--pc-dark); border-color: var(--pc-dark); }
body.consumer-pricing .price-row-main { flex: 1 1 auto; }
body.consumer-pricing .price-row h2 { margin: 0 0 15px; font-size: clamp(1.75rem, 2.5vw, 2.25rem); line-height: 1.13; }
body.consumer-pricing .price-row-main p { max-width: 29ch; margin: 0 auto; font-size: .95rem; line-height: 1.6; }
body.consumer-pricing .price-row-figure {
  justify-items: center; align-items: center; gap: 12px;
  border-top: 1px solid #e5d0b8; padding: 28px 0 0; text-align: center;
}
body.consumer-pricing .price-amount { font-size: clamp(3.4rem, 4.8vw, 4.3rem); color: #8c4617; }
body.consumer-pricing .price-duration { font-size: .86rem; color: var(--pc-muted); }
body.consumer-pricing .price-row.is-featured .price-row-figure { border-color: #745138; }
body.consumer-pricing .price-row.is-featured h2,
body.consumer-pricing .price-row.is-featured .price-amount { color: #fff5e9; }
body.consumer-pricing .price-row.is-featured p,
body.consumer-pricing .price-row.is-featured .price-duration { color: #e7ceb6; }
body.consumer-pricing .price-addon {
  grid-column: 1 / -1; flex-direction: row; align-items: center;
  padding: 28px 34px 0; border: 0; border-top: 1px solid #dcc6ad;
  border-radius: 0; background: transparent; text-align: left;
}
body.consumer-pricing .price-addon h2 { margin-bottom: 8px; font-size: 1.8rem; }
body.consumer-pricing .price-addon .price-row-main p { max-width: 60ch; margin: 0; }
body.consumer-pricing .price-addon .price-row-figure { flex: 0 0 130px; padding: 0; border: 0; }
body.consumer-pricing .price-addon .price-amount { font-size: 2.85rem; }

/* One pass overview and one side-by-side rate comparison. */
body.consumer-pricing .price-membership {
  display: block; margin: 0; padding: 72px var(--pc-gutter) 78px;
  border: 0; border-radius: 0; background: var(--pc-sand);
}
body.consumer-pricing .price-membership-intro { text-align: center; }
body.consumer-pricing .price-membership .eyebrow { margin: 0 0 20px; font-size: .72rem; letter-spacing: .14em; }
body.consumer-pricing .price-membership h2 {
  max-width: 25ch; margin: 0 auto 25px; font-size: clamp(2.3rem, 4.3vw, 3.8rem);
  line-height: 1.06; letter-spacing: -.05em;
}
body.consumer-pricing .price-membership .price-pass-amount { margin: 0; font-size: clamp(3.2rem, 4.5vw, 4rem); color: #82451d; }
body.consumer-pricing .price-membership .price-pass-amount span { font-size: .9rem; }
body.consumer-pricing .price-membership-benefits { max-width: 820px; gap: 32px; margin: 36px auto 0; }
body.consumer-pricing .price-pass-highlights { gap: 0; }
body.consumer-pricing .price-pass-highlight {
  align-items: center; padding: 10px 26px 15px; border: 0; border-radius: 0;
  background: transparent; text-align: center;
}
body.consumer-pricing .price-pass-highlight.is-saving { background: transparent; border-left: 1px solid #cdb297; }
body.consumer-pricing .price-pass-highlight > span,
body.consumer-pricing .price-pass-highlight.is-saving > span { color: #74492d; font-size: .88rem; }
body.consumer-pricing .price-pass-highlight > strong,
body.consumer-pricing .price-pass-highlight.is-saving > strong { margin-block: 14px 10px; color: #82451d; font-size: 3rem; }
body.consumer-pricing .price-pass-highlight small,
body.consumer-pricing .price-pass-highlight.is-saving small { color: #6c503b; font-size: .84rem; line-height: 1.5; }
body.consumer-pricing .price-member-rates { gap: 20px; }
body.consumer-pricing .price-member-rate { padding: 27px 28px; border: 0; border-radius: 18px; background: #fffbf5; text-align: center; }
body.consumer-pricing .price-member-rate h3 { font: 400 1.75rem/1.15 Georgia, serif; margin: 0 0 8px; }
body.consumer-pricing .price-member-rate .price-member-duration { font-size: .86rem; margin: 0 0 22px; color: #765843; }
body.consumer-pricing .price-member-rate dl { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; gap: 16px; }
body.consumer-pricing .price-member-rate dt { font-size: .82rem; color: #765843; margin-bottom: 8px; }
body.consumer-pricing .price-normal-rate dd { color: #795e48; font-size: 1.15rem; }
body.consumer-pricing .price-discount-rate dd { color: #914313; font-size: 3rem; }
body.consumer-pricing .price-membership .price-currency { font-size: .36em; }
body.consumer-pricing .info-contact {
  display: block; margin: 0; padding: 76px var(--pc-gutter) 84px;
  border: 0; border-radius: 0; background: var(--pc-dark); text-align: center;
}
body.consumer-pricing .info-contact h2 {
  max-width: 24ch; margin: 0 auto 28px; color: #fff5e9;
  font-size: clamp(2.35rem, 4.6vw, 4.25rem); line-height: 1.08; letter-spacing: -.05em;
}
body.consumer-pricing .info-contact .info-actions { max-width: none; margin-top: 0; justify-content: center; }
body.consumer-pricing .info-contact .button.ghost { color: #fff0df; border-color: #9a6f4d; }
body.consumer-pricing .info-contact .button.ghost:hover { background: #54341f; }

@media (max-width: 900px) {
  body.consumer-pricing .price-list { gap: 16px; }
  body.consumer-pricing .price-row { padding-inline: 20px; }
  body.consumer-pricing .price-row h2 { font-size: 1.85rem; }
  body.consumer-pricing .price-addon { padding-inline: 14px; }
}
@media (max-width: 760px) {
  body.consumer-pricing { --pc-gutter: 22px; }
  body.consumer-pricing .inner-intro-grid { padding-block: 44px 32px; }
  body.consumer-pricing .inner-intro-grid h1 { font-size: clamp(2.6rem, 9.5vw, 3.4rem); margin-bottom: 20px; }
  body.consumer-pricing .inner-intro-grid .price-lede { font-size: 1rem; max-width: 31ch; }
  body.consumer-pricing .inner-intro-grid .info-actions { margin-top: 24px; gap: 10px; }
  body.consumer-pricing .price-list { grid-template-columns: minmax(0, 1fr); gap: 14px; padding-block: 8px 46px; }
  body.consumer-pricing .price-row {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 22px;
    padding: 27px 23px; border-radius: 18px; text-align: left;
  }
  body.consumer-pricing .price-row h2 { margin-bottom: 10px; font-size: 1.85rem; }
  body.consumer-pricing .price-row-main p { margin: 0; font-size: .9rem; }
  body.consumer-pricing .price-row-figure { gap: 9px; border: 0; padding: 0; }
  body.consumer-pricing .price-amount { font-size: 2.9rem; }
  body.consumer-pricing .price-duration { font-size: .8rem; }
  body.consumer-pricing .price-addon { margin-top: 9px; padding: 25px 8px 0; border-top: 1px solid #dcc6ad; border-radius: 0; }
  body.consumer-pricing .price-addon h2 { font-size: 1.65rem; }
  body.consumer-pricing .price-addon .price-row-figure { min-width: 100px; }
  body.consumer-pricing .price-addon .price-amount { font-size: 2.75rem; }
  body.consumer-pricing .price-membership { padding-block: 48px 52px; }
  body.consumer-pricing .price-membership h2 { max-width: 17ch; margin-bottom: 22px; font-size: 2.55rem; }
  body.consumer-pricing .price-membership .price-pass-amount { font-size: 3.3rem; }
  body.consumer-pricing .price-membership-benefits { gap: 26px; margin-top: 30px; }
  body.consumer-pricing .price-pass-highlight { padding: 4px 12px 8px; }
  body.consumer-pricing .price-pass-highlight > strong { font-size: 2.75rem; }
  body.consumer-pricing .price-pass-highlight > span,
  body.consumer-pricing .price-pass-highlight.is-saving > span { font-size: .82rem; }
  body.consumer-pricing .price-pass-highlight small,
  body.consumer-pricing .price-pass-highlight.is-saving small { font-size: .8rem; }
  body.consumer-pricing .price-member-rates { gap: 12px; }
  body.consumer-pricing .price-member-rate { padding: 24px 14px; border-radius: 16px; }
  body.consumer-pricing .price-member-rate h3 { font-size: 1.5rem; }
  body.consumer-pricing .price-member-rate .price-member-duration { font-size: .82rem; margin-bottom: 20px; }
  body.consumer-pricing .price-member-rate dl { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  body.consumer-pricing .price-member-rate dt { font-size: .8rem; margin-bottom: 5px; }
  body.consumer-pricing .price-discount-rate dd { font-size: 2.8rem; }
  body.consumer-pricing .info-contact { padding-block: 54px 62px; }
  body.consumer-pricing .info-contact .info-actions { max-width: 380px; margin-inline: auto; }
}
@media (max-width: 420px) {
  body.consumer-pricing .inner-intro-grid .info-actions { flex-direction: column; align-items: stretch; max-width: 330px; margin-inline: auto; }
  body.consumer-pricing .price-row { gap: 15px; padding-inline: 20px; }
  body.consumer-pricing .price-row h2 { font-size: 1.7rem; }
  body.consumer-pricing .price-amount { font-size: 2.7rem; }
  body.consumer-pricing .price-addon { padding-inline: 4px; }
  body.consumer-pricing .price-addon .price-row-figure { min-width: 90px; }
}
@media (max-width: 360px) {
  body.consumer-pricing { --pc-gutter: 18px; }
  body.consumer-pricing .inner-intro-grid h1 { font-size: 2.45rem; }
  body.consumer-pricing .price-row { grid-template-columns: minmax(0, 1fr); gap: 20px; text-align: center; }
  body.consumer-pricing .price-row-main p { margin-inline: auto; }
  body.consumer-pricing .price-addon { grid-template-columns: minmax(0, 1fr) auto; text-align: left; }
  body.consumer-pricing .price-addon .price-row-main p { font-size: .87rem; }
  body.consumer-pricing .price-member-rates { gap: 10px; }
  body.consumer-pricing .price-member-rate { padding-inline: 10px; }
  body.consumer-pricing .price-member-rate h3 { font-size: 1.35rem; }
  body.consumer-pricing .price-discount-rate dd { font-size: 2.55rem; }
  body.consumer-pricing .info-contact .info-actions { flex-direction: column; align-items: stretch; }
}
