.offer-page { background: var(--cream); }
.offer-header { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:92px; }
.offer-header-cta { min-height:48px; font-size:13px; }
.offer-hero { display:grid; justify-items:center; gap:30px; padding:52px 0 72px; text-align:center; }
.offer-heading { display:grid; justify-items:center; width:min(930px,100%); }
.offer-kicker { margin:0 0 20px; color:var(--blue-strong); font-family:"Archivo Black",Impact,sans-serif; font-size:13px; text-transform:uppercase; }
.offer-heading h1 { max-width:900px; margin:0; font-size:clamp(42px,5.4vw,78px); line-height:1; text-transform:none; }
.offer-heading h1 span { color:var(--blue-strong); }
.offer-lead { max-width:760px; margin:24px 0 0; color:var(--muted); font-size:clamp(17px,1.35vw,21px); line-height:1.55; }
.offer-video { width:min(960px,100%); aspect-ratio:16/9; border:1px solid rgba(91,132,230,.24); border-radius:28px; overflow:hidden; padding:0; background:var(--ink); box-shadow:0 28px 80px rgba(11,18,32,.16); color:var(--cream); cursor:pointer; }
.offer-video-stage { position:relative; display:grid; width:100%; height:100%; place-content:center; justify-items:center; gap:18px; overflow:hidden; padding:30px; background:var(--ink); isolation:isolate; }
.offer-video-stage::after { position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(11,18,32,.18),rgba(11,18,32,.68)); content:""; }
.offer-video-thumbnail { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; }
.offer-video-brand { position:absolute; top:26px; left:30px; font-family:"Archivo Black",Impact,sans-serif; font-size:22px; }
.offer-video-copy { max-width:500px; color:#fff; font-size:clamp(20px,2.1vw,34px); font-weight:900; text-shadow:0 3px 22px rgba(0,0,0,.55); }
.offer-video-play { display:block; width:74px; height:74px; border-radius:50%; background:var(--blue); box-shadow:0 18px 50px rgba(11,18,32,.45); }
.offer-video-play::after { display:block; width:0; height:0; margin:25px 0 0 30px; border-top:12px solid transparent; border-bottom:12px solid transparent; border-left:18px solid var(--ink); content:""; }
.offer-video iframe { width:100%; height:100%; border:0; }
.hero-purchase { display:grid; justify-items:center; gap:14px; }
.hero-purchase>div { display:flex; align-items:baseline; justify-content:center; gap:14px; }
.hero-purchase strong,.offer-price strong { font-family:"Archivo Black",Impact,sans-serif; font-size:clamp(34px,3.2vw,50px); }
.hero-purchase span,.offer-price span { color:var(--muted); font-weight:800; }
.hero-purchase small,.checkout-card>small,.offer-final small { color:var(--muted); font-weight:700; }
.offer-section { padding-block:clamp(58px,7vw,100px); }
.offer-section-heading { display:grid; justify-items:center; max-width:850px; margin:0 auto clamp(32px,4vw,54px); text-align:center; }
.offer-section-heading .eyebrow { margin-bottom:20px; }
.offer-section-heading h2,.checkout-intro h2,.offer-final h2 { font-size:clamp(34px,4vw,58px); text-transform:none; }
.offer-section-heading>p:last-child,.checkout-intro>p:last-child { max-width:680px; margin:20px auto 0; color:var(--muted); font-size:18px; line-height:1.55; }
.included-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.included-grid article { min-height:230px; border-radius:24px; background:var(--sand); padding:30px; }
.included-grid span { color:var(--blue-strong); font-family:"Archivo Black",Impact,sans-serif; font-size:14px; }
.included-grid h3 { margin:56px 0 12px; font-size:24px; line-height:1.08; }
.included-grid p,.simple-steps p,.offer-testimonials p,.offer-note p { margin:0; color:var(--muted); font-size:16px; line-height:1.5; }
.process-simple { border-block:1px solid rgba(11,18,32,.08); }
.simple-steps { display:grid; width:min(980px,100%); margin:auto; }
.simple-steps article { display:grid; grid-template-columns:100px 1fr; gap:30px; align-items:start; border-top:1px solid rgba(11,18,32,.12); padding:34px 0; }
.simple-steps article:last-child { border-bottom:1px solid rgba(11,18,32,.12); }
.simple-steps strong { color:var(--blue-strong); font-family:"Archivo Black",Impact,sans-serif; font-size:44px; line-height:1; }
.simple-steps h3 { margin:0 0 10px; font-size:24px; }
.offer-proof { overflow:hidden; }
.offer-testimonials { display:grid; grid-auto-columns:minmax(320px,1fr); grid-auto-flow:column; gap:18px; overflow-x:auto; padding:4px 2px 24px; scroll-snap-type:x mandatory; scrollbar-width:thin; }
.offer-testimonials article { display:flex; min-height:250px; flex-direction:column; justify-content:space-between; border-radius:24px; background:#fff; padding:32px; box-shadow:0 18px 60px rgba(11,18,32,.06); scroll-snap-align:start; }
.offer-testimonials p { color:var(--ink); font-size:19px; }
.offer-testimonials span { color:var(--muted); font-weight:900; }
.offer-summary { padding-top:30px; }
.offer-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.55fr); gap:28px; border-radius:32px; background:var(--ink); padding:clamp(30px,5vw,70px); color:var(--cream); }
.offer-card .eyebrow { margin-bottom:20px; background:rgba(255,255,255,.1); color:var(--cream); }
.offer-card h2 { font-size:clamp(36px,4vw,58px); text-transform:none; }
.offer-price { display:flex; align-items:baseline; gap:14px; margin:24px 0; }
.offer-price span { color:rgba(251,246,238,.65); }
.offer-card ul { display:grid; gap:11px; margin:0; padding:0; list-style:none; }
.offer-card li { color:rgba(251,246,238,.86); line-height:1.4; }
.offer-card li::before { margin-right:10px; color:var(--blue); content:"✓"; font-weight:900; }
.offer-note { align-self:start; border-radius:22px; background:#1b2638; padding:28px; }
.offer-note>strong { display:block; margin-bottom:16px; font-size:20px; }
.offer-note p { color:rgba(251,246,238,.7); }
.offer-note p+p { margin-top:14px; }
.offer-main-button { grid-column:1/-1; justify-self:start; }
.checkout-section { display:grid; grid-template-columns:minmax(280px,.65fr) minmax(0,1fr); gap:clamp(32px,7vw,100px); align-items:start; }
.checkout-intro { position:sticky; top:30px; }
.checkout-intro .eyebrow { margin-bottom:22px; }
.checkout-card { display:grid; gap:22px; border-radius:28px; background:#fff; padding:clamp(24px,4vw,46px); box-shadow:0 24px 80px rgba(11,18,32,.08); }
.checkout-product { display:flex; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid rgba(11,18,32,.1); padding-bottom:22px; }
.checkout-product>div { display:grid; gap:5px; }
.checkout-product>div>strong { font-size:21px; }
.checkout-product span { color:var(--muted); }
.checkout-product>strong { font-family:"Archivo Black",Impact,sans-serif; font-size:24px; }
.checkout-fields { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.checkout-fields label { display:grid; gap:8px; font-weight:800; }
.checkout-fields input { width:100%; min-height:52px; border:1px solid #cfd4dd; border-radius:12px; padding:0 15px; color:var(--ink); font:inherit; }
.checkout-fields input:focus { outline:3px solid rgba(91,132,230,.25); border-color:var(--blue-strong); }
.consent-row { display:grid; grid-template-columns:24px 1fr; gap:12px; align-items:start; color:#31394a; font-size:15px; line-height:1.5; cursor:pointer; }
.consent-row input { width:21px; height:21px; margin:2px 0 0; accent-color:var(--blue-strong); }
.consent-row a { color:#355fab; font-weight:800; text-decoration:underline; }
.checkout-button { width:100%; }
.checkout-button:disabled { transform:none; opacity:.45; box-shadow:none; cursor:not-allowed; }
.checkout-message { min-height:0; margin:0; color:#a12f37; font-size:14px; font-weight:800; }
.checkout-message:empty { display:none; }
.offer-faq-list { display:grid; gap:14px; width:min(900px,100%); margin:auto; }
.offer-faq-list summary { min-height:78px; font-size:19px; }
.offer-final { display:grid; justify-items:center; gap:18px; margin-top:30px; border-radius:32px; background:var(--sand); padding:clamp(54px,7vw,100px) 24px; text-align:center; }
.offer-final .eyebrow { margin:0; }
.offer-final>p:not(.eyebrow) { max-width:650px; margin:0; color:var(--muted); font-size:19px; }
.offer-final>strong { font-size:20px; }
.offer-sticky-cta { display:none; }
.reveal { opacity:0; transform:translateY(16px); transition:opacity .55s ease,transform .55s ease; }
.reveal.is-visible { opacity:1; transform:none; }

@media (max-width:900px) {
  .included-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .offer-card,.checkout-section { grid-template-columns:1fr; }
  .checkout-intro { position:static; }
}

@media (max-width:760px) {
  .offer-page { padding-bottom:78px; }
  .offer-header { min-height:72px; }
  .offer-header .brand img { width:104px; }
  .offer-header-cta { min-height:42px; padding-inline:14px; font-size:11px; }
  .offer-hero { gap:22px; padding:32px 0 48px; }
  .offer-heading h1 { font-size:clamp(36px,10vw,46px); }
  .offer-lead { margin-top:18px; font-size:16px; }
  .offer-video { border-radius:20px; }
  .offer-video-brand { top:16px; left:18px; font-size:16px; }
  .offer-video-copy { max-width:240px; font-size:18px; }
  .offer-video-play { width:58px; height:58px; }
  .offer-video-play::after { margin:19px 0 0 24px; border-top-width:10px; border-bottom-width:10px; border-left-width:15px; }
  .hero-purchase>div { display:grid; gap:2px; }
  .hero-purchase .button { width:100%; }
  .offer-section { padding-block:50px; }
  .offer-section-heading { justify-items:start; margin-bottom:28px; text-align:left; }
  .offer-section-heading h2,.checkout-intro h2,.offer-final h2 { font-size:34px; text-align:left; }
  .offer-section-heading>p:last-child { font-size:16px; }
  .included-grid { grid-template-columns:1fr; gap:12px; }
  .included-grid article { min-height:190px; padding:24px; }
  .included-grid h3 { margin-top:38px; }
  .simple-steps article { grid-template-columns:58px 1fr; gap:14px; padding:26px 0; }
  .simple-steps strong { font-size:34px; }
  .simple-steps h3 { font-size:21px; }
  .offer-testimonials { grid-auto-columns:88%; margin-right:-14px; }
  .offer-testimonials article { min-height:230px; padding:26px; }
  .offer-card { gap:26px; border-radius:24px; padding:28px 22px; }
  .offer-card h2 { font-size:36px; }
  .offer-price { display:grid; gap:2px; }
  .offer-main-button { width:100%; font-size:12px; }
  .checkout-fields { grid-template-columns:1fr; }
  .checkout-card { border-radius:22px; padding:24px 20px; }
  .checkout-product { align-items:flex-start; }
  .checkout-product>strong { white-space:nowrap; font-size:20px; }
  .offer-faq-list summary { min-height:76px; padding:18px; font-size:17px; }
  .offer-faq-list details p { font-size:16px; }
  .offer-final { justify-items:start; border-radius:24px; text-align:left; }
  .offer-final .button { width:100%; }
  .offer-sticky-cta { position:fixed; right:14px; bottom:14px; left:14px; z-index:50; display:flex; min-height:56px; align-items:center; justify-content:center; border-radius:999px; background:var(--blue); box-shadow:0 18px 50px rgba(11,18,32,.24); font-family:"Archivo Black",Impact,sans-serif; font-size:13px; text-transform:uppercase; transform:translateY(90px); opacity:0; pointer-events:none; transition:.2s ease; }
  .offer-sticky-cta.is-visible { transform:none; opacity:1; pointer-events:auto; }
  .offer-sticky-cta.is-hidden { display:none; }
}

@media (prefers-reduced-motion:reduce) { .reveal { opacity:1; transform:none; } }

.status-page { display:grid; min-height:calc(100vh - 150px); place-items:center; padding-block:40px 90px; }
.status-card { display:grid; justify-items:center; width:min(760px,100%); border-radius:32px; background:#fff; padding:clamp(38px,7vw,80px); box-shadow:0 24px 80px rgba(11,18,32,.08); text-align:center; }
.status-card .eyebrow { margin-bottom:24px; }
.status-card h1 { margin:0; font-size:clamp(36px,5.4vw,64px); text-transform:none; }
.status-card>p:not(.eyebrow) { max-width:600px; margin:22px 0 0; color:var(--muted); font-size:18px; line-height:1.55; }
.status-card .button { margin-top:30px; }
.status-loader { width:48px; height:48px; margin-top:30px; border:5px solid var(--sand); border-top-color:var(--blue-strong); border-radius:50%; animation:status-spin .8s linear infinite; }
.status-list { display:grid; gap:12px; width:min(440px,100%); margin:30px 0 0; padding:0; list-style:none; text-align:left; }
.status-list li { font-size:17px; font-weight:800; }
.status-list li::before { margin-right:10px; color:var(--blue-strong); content:"✓"; }
.status-contact a { color:var(--blue-strong); font-weight:900; }
@keyframes status-spin { to { transform:rotate(360deg); } }
