/* Oviweb — Rank guarantee offer page (layers on bento.css + webdesign.css) */
.rg .hero{grid-template-columns:minmax(0,640px) minmax(0,500px);align-items:start}
.rg .hero h1{max-width:14ch;font-size:clamp(2.3rem,4.9vw,4.3rem)}
.pledge{display:flex;gap:18px;align-items:center;padding:18px 22px;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(6,43,62,.06);margin:26px 0 22px;max-width:560px}
.badge90{flex:none;width:64px;height:64px;border-radius:50%;border:2px dashed var(--purple);display:grid;place-items:center;text-align:center;line-height:1;font-weight:800;color:var(--purple);font-size:.9rem}
.badge90 small{display:block;font-size:.5rem;letter-spacing:.12em;margin-top:3px}
.pledge strong{display:block;color:var(--navy);font-size:1.02rem;margin-bottom:3px}
.pledge p{font-size:.92rem;margin:0}
.rg .hero .checks{grid-template-columns:1fr;gap:10px;margin:0 0 28px}
.hero__note{font-size:.85rem;color:var(--muted);margin-top:16px;max-width:520px}

/* Eligibility form card (hero right) */
.elig{position:relative;padding:0;background:none;box-shadow:none;border-radius:0;overflow:visible;color:inherit}

.elig h2{color:var(--navy);font-size:1.5rem;margin-bottom:6px}
.elig>p{color:var(--text);font-size:.92rem;margin-bottom:18px}
.elig .form{gap:14px}
.elig .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.elig label.lab{display:block;font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.7);margin-bottom:6px}
.elig .field{position:static}
.elig .field::after{display:none}
.elig .field input,.elig .field select{width:100%;padding:13px 14px;border-radius:12px;border:1.5px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;font-size:.95rem;outline:0;transition:border-color .25s,background .25s;-webkit-appearance:none;appearance:none}
.elig .field select{background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(135deg,#fff 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat}
.elig .field select option{color:var(--navy)}
.elig .field input::placeholder{color:rgba(255,255,255,.45)}
.elig .field input:focus,.elig .field select:focus{border-color:var(--lilac);background:rgba(255,255,255,.14)}
.elig .field input.is-invalid,.elig .field select.is-invalid{border-color:#ff8fb1}
.elig .btn{width:100%;margin-top:4px}
.elig .fine{font-size:.78rem;color:var(--muted);text-align:center;margin-top:12px}
.elig .form-msg.ok{color:#8ff0c0}.elig .form-msg.err{color:#ffb3c6}

/* The deal — 4 cards */
.deal{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.deal__card{position:relative;border-radius:var(--r);padding:34px 30px;background:#fff;display:flex;flex-direction:column;gap:10px;min-height:260px;overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.deal__card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.deal__card small{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--purple)}
.deal__card h3{font-size:1.3rem;letter-spacing:-.02em}
.deal__card p{font-size:.95rem}
.deal__card--hi{background:linear-gradient(160deg,var(--navy),#23204a);color:rgba(255,255,255,.8)}
.deal__card--hi h3{color:#fff}
.deal__card--hi small{color:var(--lilac)}
.deal__card--hi::after{content:"";position:absolute;right:-60px;bottom:-80px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.06)}

/* Photo banner */
.banner{min-height:380px;display:flex;align-items:flex-end;padding:var(--pad);color:#fff}
.banner h2{color:#fff;max-width:14ch}
.banner p{color:rgba(255,255,255,.85);max-width:520px;margin-top:10px}

/* Illustration + tracker */
.illus{min-height:460px;background:#f7d24a}
.illus img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tracker{background:linear-gradient(160deg,#071b28,#0d3a3a);color:#fff;padding:var(--pad);display:flex;flex-direction:column;gap:18px;border-radius:var(--r)}
.tracker__head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.tracker__head h3{color:#fff;font-size:1.25rem}
.tracker__head span{font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:99px;border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.75)}
.tracker table{width:100%;border-collapse:collapse;font-size:.95rem}
.tracker th{text-align:left;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.5);padding:0 8px 10px 0}
.tracker th:not(:first-child),.tracker td:not(:first-child){padding-left:8px;padding-right:8px;text-align:center}
.tracker th:last-child,.tracker td:last-child{padding-right:0}
.tracker td{padding:14px 0;border-top:1px solid rgba(255,255,255,.1)}
.tracker td.was{color:rgba(255,255,255,.4);text-decoration:line-through}
.tracker td.now{font-weight:700;font-size:1.1rem}
.tracker td:not(:first-child){text-align:center;white-space:nowrap}
.tracker .pill{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 10px;border-radius:99px;background:rgba(255,255,255,.12);color:#fff}
.tracker .pill--win{background:linear-gradient(90deg,#1fb6a8,#5ee0a2);color:#062b3e}
.tracker .pill--map{background:var(--grad);color:#fff}
.tracker .foot{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-top:auto}

/* Terms */
.terms{padding:var(--pad)}
.terms__list{display:grid;gap:12px;max-width:900px;margin:0 auto;counter-reset:t}
.terms__item{display:grid;grid-template-columns:44px 1fr;gap:14px;background:#fff;border-radius:18px;padding:22px 26px;align-items:start}
.terms__item i{font-style:normal;font-weight:800;color:var(--purple);font-size:.8rem;padding-top:4px}
.terms__item h3{font-size:1.08rem;letter-spacing:-.01em;margin-bottom:6px}
.terms__item p{font-size:.95rem}
.terms__legal{max-width:820px;margin:28px auto 0;text-align:center;font-size:.8rem;color:var(--muted)}

/* Subscribe */
.sub{position:relative;overflow:hidden;border-radius:var(--r);padding:clamp(44px,5.5vw,80px) var(--pad);color:rgba(255,255,255,.78);background:radial-gradient(120% 120% at 85% 0%,#241f5c 0%,transparent 55%),radial-gradient(110% 130% at 0% 100%,#0b3b4d 0%,transparent 60%),linear-gradient(150deg,#071b28 0%,#0d1533 60%,#151046 100%)}
.sub::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 18%,rgba(215,150,255,.26),transparent 42%),radial-gradient(circle at 10% 88%,rgba(31,182,168,.2),transparent 45%);pointer-events:none}
.sub::after{content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1px);background-size:26px 26px;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000,transparent 75%);mask-image:radial-gradient(70% 60% at 50% 40%,#000,transparent 75%)}
.sub__inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,390px);gap:clamp(24px,2.6vw,40px);align-items:center;max-width:1020px;margin:0 auto}
.sub__copy{max-width:520px}
.sub .hero__eyebrow{color:var(--lilac)}
.sub h2{color:#fff;max-width:15ch;margin:14px 0 12px}
.sub .grad-text{background:linear-gradient(90deg,#fff 0%,var(--lilac) 55%,#a89bff 100%);-webkit-background-clip:text;background-clip:text}
.sub__copy>p{color:rgba(255,255,255,.72);font-size:1rem}
.sub__steps{list-style:none;display:grid;gap:16px;margin:26px 0 0;padding:0}
.sub__steps li{display:grid;grid-template-columns:32px 1fr;gap:12px;align-items:start}
.sub__steps span{font-weight:800;font-size:.76rem;color:var(--lilac);padding-top:3px}
.sub__steps strong{display:block;color:#fff;font-size:1rem;margin-bottom:3px}
.sub__steps p{font-size:.9rem;color:rgba(255,255,255,.6);margin:0}
.sub__card{position:relative;display:flex;flex-direction:column;gap:12px;padding:32px 30px;border-radius:24px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(165deg,rgba(255,255,255,.14),rgba(255,255,255,.05));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 30px 70px rgba(4,10,32,.5)}
.sub__tag{align-self:flex-start;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:99px;border:1px solid rgba(215,150,255,.4);background:rgba(215,150,255,.12);color:var(--lilac)}
.sub__card h3{color:#fff;font-size:1.42rem;letter-spacing:-.02em}
.sub__card>p{font-size:.94rem;color:rgba(255,255,255,.74)}
.sub__card .btn{width:100%;margin-top:6px;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.sub__card .btn svg{width:16px;height:16px;flex:none}
.sub__fine{font-size:.76rem;line-height:1.55;color:rgba(255,255,255,.5);margin:0}
.sub__fine a,.sub__alt a{color:var(--lilac);font-weight:600}
.sub__alt{font-size:.88rem;color:rgba(255,255,255,.66);margin:0}

/* Final CTA */
.final{background:linear-gradient(135deg,var(--navy) 0%,#123a52 55%,#3b2fd0 140%);color:#fff;padding:clamp(56px,7vw,96px) var(--pad);text-align:center;border-radius:var(--r);position:relative;overflow:hidden}
.final::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(215,150,255,.3),transparent 45%),radial-gradient(circle at 15% 90%,rgba(31,182,168,.25),transparent 40%);pointer-events:none}
.final h2{color:#fff;max-width:18ch;margin:0 auto 16px;position:relative}
.final p{max-width:560px;margin:0 auto 30px;color:rgba(255,255,255,.8);position:relative}
.final .hero__cta{justify-content:center;position:relative}
.footer__legal{margin-top:36px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:.78rem;color:rgba(255,255,255,.5);max-width:1100px}

@media (max-width:1180px){
  .rg .hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
  .deal{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:960px){
  .rg .hero{grid-template-columns:minmax(0,1fr)}
  .sub__inner{grid-template-columns:minmax(0,1fr);max-width:560px}
  .sub__copy{max-width:none}
}
@media (max-width:640px){
  .deal{grid-template-columns:minmax(0,1fr)}
  .elig .row2{grid-template-columns:1fr}
  .tracker table{font-size:.85rem}
  .tracker td.now{font-size:1rem}
  .terms__item{grid-template-columns:32px 1fr;padding:18px 18px}
  .banner{min-height:320px}
  .illus{min-height:300px}
}

/* SureForm embed */
.sureform{margin-top:0}
.sureform iframe{width:100%;min-height:1000px;border:0;display:block;background:transparent}
.elig .fine{margin-top:14px}


@media (max-width:640px){
  /* let the embedded form use more of the screen than the hero copy does */
  .elig{margin-left:calc(-1 * var(--pad) + 14px);margin-right:calc(-1 * var(--pad) + 14px)}
  .elig .fine{padding:0 8px}
  .sureform iframe{min-height:1040px}
}
