.offer-page {
  width: min(1120px, 100%);
  padding: 0 0 60px;
  animation: slide-in .45s ease both;
}
.offer-preview-banner {
  margin: 0 auto 18px;
  padding: 10px 14px;
  border: 1px solid rgba(255,202,99,.28);
  border-radius: 12px;
  color: #ffe5ac;
  background: rgba(255,202,99,.07);
  font-size: 12px;
  text-align: center;
}
.offer-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(34px, 7vw, 78px);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 32px;
  background:
    radial-gradient(circle at 75% 18%, rgba(79,130,255,.28), transparent 30%),
    radial-gradient(circle at 16% 5%, rgba(255,45,160,.22), transparent 34%),
    linear-gradient(145deg, rgba(25,14,43,.96), rgba(7,5,13,.97));
  box-shadow: var(--shadow);
}
.offer-eyebrow { color: #f1e4ff; font-size: 11px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.offer-hero h1 { max-width: 850px; margin: 13px 0 18px; font-family: Montserrat, Inter, sans-serif; font-size: clamp(38px, 7vw, 76px); line-height: .98; letter-spacing: -.05em; }
.offer-hero__lead { max-width: 760px; margin: 0; color: #ded5e8; font-size: clamp(17px,2.5vw,22px); }
.offer-price-row { display: flex; align-items: center; flex-wrap: wrap; gap: 18px; margin-top: 30px; }
.offer-price { font-family: Montserrat, Inter, sans-serif; font-size: 27px; font-weight: 900; }
.offer-scarcity { color: var(--muted); font-size: 12px; }
.offer-scarcity strong { color: #fff; }
.offer-section {
  margin-top: 22px;
  padding: clamp(26px, 5vw, 50px);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 26px;
  background: rgba(14,9,24,.86);
  box-shadow: 0 18px 65px rgba(0,0,0,.24);
}
.offer-section h2 { margin: 0 0 10px; font-family: Montserrat, Inter, sans-serif; font-size: clamp(27px,4vw,43px); letter-spacing: -.035em; }
.offer-section__lead { max-width: 760px; margin: 0 0 24px; color: var(--muted); }
.offer-map { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.offer-map-card { padding: 21px; border: 1px solid rgba(255,255,255,.09); border-radius: 18px; background: rgba(255,255,255,.035); }
.offer-map-card span { display: block; margin-bottom: 7px; color: var(--muted-2); font-size: 10px; font-weight: 900; letter-spacing: .11em; text-transform: uppercase; }
.offer-map-card strong { display: block; margin-bottom: 9px; color: #fff; font-size: 18px; }
.offer-map-card p { margin: 0; color: var(--muted); font-size: 13px; }
.offer-ideas { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 14px; }
.offer-idea { padding: 17px; border: 1px solid rgba(115,144,255,.19); border-radius: 16px; background: rgba(70,101,255,.05); }
.offer-idea strong { display: block; margin-bottom: 7px; }
.offer-idea p { margin: 0; color: var(--muted); font-size: 12px; }
.gap-grid, .unlock-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; }
.gap-card, .unlock-card { padding: 19px; border: 1px solid rgba(255,255,255,.085); border-radius: 17px; background: rgba(255,255,255,.03); }
.gap-card strong, .unlock-card strong { display: block; margin-bottom: 6px; color: #fff; }
.gap-card span, .unlock-card span { color: var(--muted); font-size: 13px; }
.month-path { counter-reset: month; display: grid; gap: 11px; margin: 24px 0 0; padding: 0; list-style: none; }
.month-path li { counter-increment: month; position: relative; padding: 17px 18px 17px 58px; border: 1px solid rgba(255,255,255,.09); border-radius: 16px; color: #e5deeb; background: rgba(255,255,255,.028); }
.month-path li::before { content: counter(month); position: absolute; top: 14px; left: 15px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; color: #fff; background: linear-gradient(135deg,var(--pink),var(--purple)); font-weight: 900; }
.offer-protection { border-color: rgba(75,227,158,.2); background: linear-gradient(145deg,rgba(75,227,158,.055),rgba(14,9,24,.88)); }
.offer-protection-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 24px; align-items: center; }
.offer-protection .offer-price { font-size: 38px; }
.policy-note { padding: 13px 15px; border: 1px solid rgba(255,202,99,.25); border-radius: 13px; color: #ffe7b4; background: rgba(255,202,99,.055); font-size: 12px; }
.faq-list { display: grid; gap: 10px; }
.faq-item { border: 1px solid rgba(255,255,255,.09); border-radius: 15px; background: rgba(255,255,255,.025); }
.faq-item summary { padding: 17px 18px; cursor: pointer; color: #fff; font-weight: 800; }
.faq-item p { margin: 0; padding: 0 18px 18px; color: var(--muted); font-size: 13px; }
.offer-final { text-align: center; }
.offer-final p { max-width: 680px; margin: 0 auto 22px; color: var(--muted); }
.offer-loading { display: grid; place-items: center; min-height: 420px; text-align: center; }

@media (max-width: 820px) {
  .offer-map, .offer-ideas { grid-template-columns: 1fr; }
  .gap-grid, .unlock-grid { grid-template-columns: 1fr; }
  .offer-protection-grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .offer-hero, .offer-section { border-radius: 22px; }
  .offer-price-row { align-items: flex-start; flex-direction: column; }
}

.offer-review-link { margin-top: 16px; }
