/* Approved Hero only. All remaining sections use unchanged live styles. */
main > .hero-review { min-height:0; padding:48px 24px; background:#191713; }
.hero-review::before { opacity:.35; }
.hero-review .hero-copy { width:min(100%,740px); gap:16px; }
.hero-review .poster-title { font-family:Arial,Helvetica,sans-serif; font-size:clamp(32px,5vw,64px); line-height:1.08; text-transform:none; font-weight:750; letter-spacing:-.035em; gap:4px; }
.hero-review .poster-title .accent-line { color:#dec09b; font-style:normal; }
.hero-review .hero-lede { max-width:640px; color:#e0d9cf; }
.hero-review .hero-signup { max-width:600px; scroll-margin-top:90px; }
.hero-review .compact-signup { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
.hero-review .compact-signup .form-field input { font-size:16px; min-height:48px; }
.hero-review .compact-signup .consent-row { font-size:13px; color:#ded5c8; grid-template-columns:20px 1fr; gap:10px; align-items:center; }
.hero-review .compact-signup .consent-row input { width:20px; height:20px; margin:0; }
.hero-review .compact-signup .signup-submit { grid-column:auto; grid-row:auto; background:#ead5b9; color:#211b15; border-color:#ead5b9; min-height:48px; font-size:15px; white-space:normal; }
.hero-review .compact-signup .signup-submit:hover { background:#f4e5d0; }
.hero-review .compact-signup .form-privacy { color:#c5bbac; font-size:12px; }
.hero-review .hero-vip { width:fit-content; min-height:44px; border-color:#b8a087; color:#f4e9d8; }
.hero-review .hero-payment-note { order:initial; max-width:600px; color:#c8bdad; font-size:12px; }
.hero-review .eyebrow { color:#dec09b; }

/* Hero-only review, October 16. Preserve the original background photograph. */
main > .hero-section.hero-review {
  min-height:660px;
  padding:64px clamp(24px,4.5vw,88px);
  background:#080706;
  isolation:isolate;
}
.hero-section.hero-review::after {
  content:"";
  position:absolute;
  inset:0 0 0 30%;
  z-index:-1;
  background:
    linear-gradient(90deg,#080706 0%,rgba(8,7,6,.22) 22%,rgba(8,7,6,.05) 70%,rgba(8,7,6,.18)),
    url("./hero-premium-gym.png") center / contain no-repeat;
  pointer-events:none;
}
.hero-section.hero-review::before { z-index:-1; opacity:.2; }
.hero-review .hero-copy { width:min(41%,520px); margin:0; gap:18px; }
.hero-review .eyebrow { font-size:11px; letter-spacing:.13em; margin:0; }
.hero-review .poster-title { font-size:clamp(23px,2.6vw,40px); line-height:1.12; letter-spacing:-.035em; gap:5px; margin:0; font-weight:800; }
.hero-review .hero-lede { font-size:15px; line-height:1.65; max-width:455px; }
.hero-review .hero-signup { width:100%; margin-top:6px; }
.hero-review .compact-signup { grid-template-columns:minmax(0,1fr) auto; gap:12px; }
.hero-review .compact-signup .form-field { grid-column:1; grid-row:1; }
.hero-review .compact-signup .form-field label { font-size:12px; }
.hero-review .compact-signup .form-field input { padding:12px; min-width:0; width:100%; background:#f6f2ec; border-color:#f6f2ec; color:#201c16; }
.hero-review .compact-signup .signup-submit { grid-column:2; grid-row:1; align-self:end; padding:12px 16px; font-size:13px; white-space:nowrap; box-shadow:none; }
.hero-review .compact-signup .consent-row,
.hero-review .compact-signup .form-privacy { grid-column:1 / -1; grid-row:auto; }
.hero-review .compact-signup .consent-row { font-size:12px; line-height:1.5; }
.hero-review .compact-signup .form-privacy { font-size:10.5px; line-height:1.45; font-weight:400; margin:0; }
.hero-review .hero-vip { font-size:13px; padding:10px 18px; margin-top:2px; }
@media (min-width:1800px) {
  main > .hero-section.hero-review { min-height:760px; }
}
@media (max-width:1100px) and (min-width:761px) {
  .hero-review .hero-copy { width:44%; }
  .hero-review .compact-signup { grid-template-columns:1fr; }
  .hero-review .compact-signup .signup-submit { grid-column:1; grid-row:2; }
}
@media (max-width:760px) {
  main > .hero-section.hero-review { min-height:0; padding:calc(56.3vw + 12px) 20px 32px; }
  .hero-section.hero-review::after {
    inset:0 0 auto;
    height:56.3vw;
    background:
      linear-gradient(180deg,rgba(8,7,6,.08) 55%,#080706 100%),
      url("./hero-premium-gym.png") center top / 100% auto no-repeat;
  }
  .hero-review .hero-copy { width:100%; gap:14px; }
  .hero-review .poster-title { font-size:clamp(25px,6.5vw,38px); gap:3px; }
  .hero-review .hero-lede { font-size:14px; line-height:1.55; }
  .hero-review .eyebrow { font-size:10px; letter-spacing:.08em; }
  .hero-review .hero-signup { margin-top:0; }
  .hero-review .compact-signup { grid-template-columns:1fr; gap:10px; }
  .hero-review .compact-signup .signup-submit { grid-column:1; grid-row:2; font-size:14px; }
}
@media (max-width:380px) {
  .hero-review .hero-copy { gap:12px; }
  .hero-review .poster-title { font-size:22px; letter-spacing:-.04em; }
}
