.gh-lifefm-hero {
  background: radial-gradient(circle at 88% 12%, rgba(153, 0, 0, .1), transparent 30rem), linear-gradient(180deg, #fff 0%, #f8f9fb 100%);
}
.gh-lifefm-partnership { align-items: center; display: flex; gap: 1.15rem; margin-bottom: 1.5rem; }
.gh-lifefm-partnership span { color: #5a6470; font-size: .82rem; font-weight: 700; text-transform: uppercase; }
.gh-lifefm-partnership img { height: auto; max-width: min(230px, 58vw); }

.gh-lifefm-offer {
  background: linear-gradient(145deg, var(--gh-red), var(--gh-red-dark));
  border-radius: 12px;
  box-shadow: 0 24px 60px rgba(118, 0, 0, .22);
  color: #fff;
  padding: clamp(1.6rem, 4vw, 2.4rem);
}

.gh-lifefm-offer-label {
  display: inline-block;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  margin-bottom: 1rem;
  text-transform: uppercase;
}

.gh-lifefm-offer-value strong,
.gh-lifefm-offer-value span { display: block; font-family: var(--gh-font-heading); }
.gh-lifefm-offer-value strong { font-size: clamp(3.4rem, 8vw, 5.6rem); font-weight: 800; line-height: .9; }
.gh-lifefm-offer-value span { font-size: clamp(1.35rem, 3vw, 2rem); font-weight: 800; margin: .45rem 0 1rem; }
.gh-lifefm-offer-terms { color: rgba(255, 255, 255, .76); font-size: .78rem; margin: .85rem 0 0; }

.gh-lifefm-proof { background: var(--gh-charcoal); color: #fff; padding: 1rem 0; }
.gh-lifefm-proof-grid { display: grid; gap: .8rem 1.5rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gh-lifefm-proof-grid span { align-items: center; display: flex; font-size: .9rem; gap: .55rem; }
.gh-lifefm-proof-grid i { color: #ffb3b3; }
.gh-lifefm-card { height: 100%; }
.gh-lifefm-pricing { padding-top: 1rem; }
.gh-lifefm-price-card { background: #fff; border: 1px solid var(--gh-border); border-radius: 10px; display: flex; flex-direction: column; height: 100%; padding: 1.5rem; }
.gh-lifefm-price-card > span { color: var(--gh-red); font-size: .78rem; font-weight: 700; text-transform: uppercase; }
.gh-lifefm-price-card h3 { font-size: 1.35rem; margin: .55rem 0; }
.gh-lifefm-price-featured { border-color: var(--gh-red); box-shadow: 0 14px 34px rgba(153, 0, 0, .1); }
.gh-lifefm-typical { background: #f4f6f8; border-radius: 8px; color: #4d5863; font-size: .86rem; line-height: 1.35; margin: .25rem 0 1rem; padding: .7rem .8rem; }
.gh-lifefm-typical strong { color: var(--gh-ink); display: block; font-size: 1.35rem; }
.gh-lifefm-typical small { color: #6c757d; }
.gh-lifefm-price { color: #5a6470; margin-bottom: .75rem; }
.gh-lifefm-price strong { color: var(--gh-ink); font-family: var(--gh-font-heading); font-size: 2.2rem; }
.gh-lifefm-price-card > .btn { margin-top: auto; }
.gh-lifefm-swipe-hint { color: #6c757d; font-size: .85rem; margin: -.5rem 0 1rem; text-align: center; }
.gh-lifefm-plan-browser {
  display: grid; gap: 1rem; grid-auto-columns: minmax(280px, 31%); grid-auto-flow: column;
  overflow-x: auto; padding: .25rem .1rem 1rem; scroll-snap-type: x mandatory;
  scrollbar-color: var(--gh-red) #e9ecef; scrollbar-width: thin;
}
.gh-lifefm-plan-browser .gh-lifefm-price-card { min-width: 0; scroll-snap-align: start; }
.gh-lifefm-price-card ul { color: #5a6470; font-size: .88rem; margin: 0 0 1.25rem; padding-left: 1.15rem; }
.gh-lifefm-price-card li { margin-bottom: .3rem; }
.gh-lifefm-typical small { display: block; margin-top: .25rem; }
.gh-lifefm-phone { background: #fff; }
.gh-lifefm-phone-note {
  background: #fff7f7; border-left: 4px solid var(--gh-red); border-radius: 8px;
  color: #4d5863; margin: 1.5rem auto 0; max-width: 880px; padding: 1rem 1.2rem;
}

.gh-lifefm-check-list { display: grid; gap: .7rem; margin-top: 1.4rem; }
.gh-lifefm-info-panel,
.gh-lifefm-payment-note {
  background: #fff; border: 1px solid var(--gh-border); border-radius: 10px; box-shadow: 0 12px 30px rgba(22, 32, 42, .06); padding: 1.5rem;
}
.gh-lifefm-info-panel h3 { font-size: 1.25rem; margin: 1rem 0 .75rem; }
.gh-lifefm-info-panel p:last-child { margin-bottom: 0; }
.gh-lifefm-payment-note { border-left: 4px solid var(--gh-red); margin-top: 1.5rem; }
.gh-lifefm-payment-note p { color: #5a6470; margin: .4rem 0 0; }

.gh-lifefm-steps { display: grid; gap: 1rem; list-style: none; margin: 1.75rem 0 0; padding: 0; }
.gh-lifefm-steps li { align-items: flex-start; display: flex; gap: 1rem; }
.gh-lifefm-steps li > span {
  align-items: center; background: var(--gh-red); border-radius: 50%; color: #fff; display: inline-flex;
  flex: 0 0 2.25rem; font-family: var(--gh-font-heading); font-weight: 800; height: 2.25rem; justify-content: center;
}
.gh-lifefm-steps strong { font-family: var(--gh-font-heading); }
.gh-lifefm-steps p { color: #5a6470; margin: .25rem 0 0; }

.gh-lifefm-local-panel {
  background: #fff; border: 1px solid var(--gh-border); border-radius: 10px;
  box-shadow: 0 16px 36px rgba(22, 32, 42, .07); padding: clamp(1.5rem, 4vw, 2.4rem);
}
.gh-lifefm-aaron-quote { border-left: 4px solid var(--gh-red); margin: 1.5rem 0; padding: .2rem 0 .2rem 1rem; }
.gh-lifefm-aaron-quote p { font-size: 1.02rem; font-style: italic; margin-bottom: .65rem; }
.gh-lifefm-aaron-quote footer span { color: #5a6470; display: block; font-size: .85rem; }
.gh-lifefm-carried-offer { border-left: 4px solid #198754; }
.gh-lifefm-cta .gh-eyebrow { color: #ffb3b3; }
.gh-lifefm-referrals { background: linear-gradient(135deg, #fff 0%, #fff7f7 100%); }
.gh-lifefm-referral-value { background: var(--gh-charcoal); border-radius: 12px; color: #fff; padding: clamp(1.5rem, 4vw, 2.4rem); text-align: center; }
.gh-lifefm-referral-value span { color: #ffb3b3; display: block; font-size: .85rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.gh-lifefm-referral-value strong { display: block; font-family: var(--gh-font-heading); font-size: clamp(4rem, 10vw, 6rem); line-height: 1; margin: .5rem 0; }
.gh-lifefm-referral-value p { margin: 0 auto; max-width: 20rem; }
.gh-lifefm-faq { max-width: 860px; }
.gh-lifefm-faq .accordion-item { border-color: var(--gh-border); }
.gh-lifefm-faq .accordion-button { font-family: var(--gh-font-heading); font-weight: 700; }
.gh-lifefm-mobile-actions { display: none; }

@media (max-width: 991.98px) {
  .gh-lifefm-proof-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gh-lifefm-plan-browser { grid-auto-columns: minmax(280px, 52%); }
}

@media (max-width: 575.98px) {
  .gh-lifefm-partnership { align-items: flex-start; flex-direction: column; gap: .55rem; }
  .gh-lifefm-proof-grid { grid-template-columns: 1fr; }
  .gh-lifefm-plan-browser { grid-auto-columns: 88%; }
  .gh-lifefm-mobile-actions {
    background: #fff; border-top: 1px solid var(--gh-border); bottom: 0; box-shadow: 0 -8px 24px rgba(22, 32, 42, .14);
    display: grid; gap: .55rem; grid-template-columns: 1fr .7fr; left: 0; padding: .65rem max(.75rem, env(safe-area-inset-left)) calc(.65rem + env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-right)); position: fixed; right: 0; z-index: 1040;
  }
  .gh-lifefm-mobile-actions a { align-items: center; background: var(--gh-red); border-radius: 6px; color: #fff; display: flex; font-weight: 700; justify-content: center; min-height: 44px; text-decoration: none; }
  .gh-lifefm-mobile-actions a:last-child { background: var(--gh-charcoal); }
}
