:root{
  --ink:#0d1117;--ink-soft:#374151;--ink-muted:#6b7280;
  --gold:#c8912a;--gold-bright:#e0a235;--gold-light:#f5e6c8;--gold-pale:#fdf8ef;
  --navy:#0e1f40;--navy-mid:#162d5a;--navy-light:#1e3d7a;
  --white:#ffffff;--off:#f8f7f5;--surface:#f2f0ec;
  --border:rgba(13,17,23,.09);--border-md:rgba(13,17,23,.15);
  --green:#166534;--green-pale:#f0fdf4;--green-mid:#16a34a;
  --red:#991b1b;--red-pale:#fef2f2;--red-mid:#dc2626;
  --amber:#92400e;--amber-mid:#d97706;
  --r:8px;--r-lg:14px;--r-xl:22px;--r-pill:100px;
  --sh-sm:0 1px 4px rgba(0,0,0,.07);
  --sh-md:0 4px 18px rgba(0,0,0,.10),0 1px 4px rgba(0,0,0,.06);
  --sh-lg:0 12px 48px rgba(0,0,0,.14),0 4px 10px rgba(0,0,0,.06);
  --sh-xl:0 24px 72px rgba(0,0,0,.20);
  --display:'Fraunces',Georgia,serif;
  --body:'DM Sans',system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
body{font-family:var(--body);background:var(--white);color:var(--ink);line-height:1.6;overflow-x:hidden}
a{color:inherit}
/* URGENCY BAR */
.ub{background:var(--navy);color:rgba(255,255,255,.88);text-align:center;padding:.55rem 3rem .55rem 1rem;font-size:.8rem;font-weight:500;position:relative;line-height:1.4}
.ub strong{color:var(--gold-bright)}
.ub a{color:var(--gold-bright);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.ub-x{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);background:none;border:none;color:rgba(255,255,255,.4);cursor:pointer;font-size:1.1rem;line-height:1;padding:4px}
/* NAV */
nav{position:sticky;top:0;z-index:900;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.nav-logo{font-family:var(--display);font-size:1.5rem;font-weight:700;color:var(--navy);text-decoration:none;letter-spacing:-.03em}
.nav-logo em{font-style:normal;color:var(--gold)}
.nav-links{display:flex;align-items:center;gap:1.75rem}
.nav-links a{color:var(--ink-soft);text-decoration:none;font-size:.875rem;font-weight:500;transition:color .18s}
.nav-links a:hover{color:var(--navy)}
.nav-cta{background:var(--gold)!important;color:#fff!important;padding:.5rem 1.25rem;border-radius:var(--r);font-weight:700!important;font-size:.83rem!important;box-shadow:0 2px 10px rgba(200,145,42,.35);transition:all .18s!important}
.nav-cta:hover{background:var(--gold-bright)!important;transform:translateY(-1px);box-shadow:0 4px 16px rgba(200,145,42,.45)!important}
/* HERO */
.hero{background:var(--navy);min-height:94vh;display:flex;align-items:center;padding:5.5rem 2rem 4rem;position:relative;overflow:hidden}
.hero-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 90% 90% at 50% 50%,black 40%,transparent 100%)}
.hero-glow{position:absolute;top:-220px;right:-180px;width:680px;height:680px;border-radius:50%;background:radial-gradient(circle,rgba(200,145,42,.2) 0%,transparent 60%);pointer-events:none}
.hero-glow2{position:absolute;bottom:-100px;left:-60px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(30,61,122,.6) 0%,transparent 70%);pointer-events:none}
.hero-inner{max-width:1180px;margin:0 auto;width:100%;display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:center;position:relative;z-index:1}
.hero-badge{display:inline-flex;align-items:center;gap:.45rem;background:rgba(200,145,42,.14);border:1px solid rgba(200,145,42,.28);color:var(--gold-bright);padding:.32rem .9rem;border-radius:var(--r-pill);font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;margin-bottom:1.5rem}
.hero-badge::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold-bright);animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.25}}
.hero h1{font-family:var(--display);font-size:clamp(2.7rem,5.5vw,4.1rem);font-weight:900;color:#fff;line-height:1.07;letter-spacing:-.035em;margin-bottom:1.5rem}
.hero h1 .ital{font-style:italic;color:var(--gold-bright)}
.hero-sub{font-size:1.08rem;color:rgba(255,255,255,.68);line-height:1.78;margin-bottom:2rem;max-width:490px}
.hero-sub strong{color:#fff}
.hero-btns{display:flex;gap:.875rem;flex-wrap:wrap;margin-bottom:2.25rem}
.btn-primary{display:inline-flex;align-items:center;gap:.45rem;background:var(--gold);color:#fff;padding:.95rem 2.2rem;border-radius:var(--r);font-family:var(--body);font-size:1rem;font-weight:700;border:none;cursor:pointer;text-decoration:none;transition:all .2s;box-shadow:0 4px 22px rgba(200,145,42,.52);letter-spacing:.01em}
.btn-primary:hover{background:var(--gold-bright);transform:translateY(-2px);box-shadow:0 8px 30px rgba(200,145,42,.58)}
.btn-ghost{display:inline-flex;align-items:center;gap:.45rem;background:transparent;color:rgba(255,255,255,.8);padding:.95rem 1.65rem;border-radius:var(--r);font-family:var(--body);font-size:1rem;font-weight:600;border:1.5px solid rgba(255,255,255,.22);cursor:pointer;text-decoration:none;transition:all .2s}
.btn-ghost:hover{border-color:var(--gold-bright);color:var(--gold-bright)}
.hero-proof{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap}
.hero-stars{color:var(--gold-bright);font-size:.9rem;letter-spacing:-.04em}
.hero-proof-sep{width:1px;height:15px;background:rgba(255,255,255,.14)}
.hero-proof-txt{font-size:.8rem;color:rgba(255,255,255,.5)}
.hero-proof-txt strong{color:rgba(255,255,255,.75)}
/* hero right card */
.hero-card{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:var(--r-xl);padding:1.75rem;backdrop-filter:blur(16px)}
.hc-label{font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-bright);margin-bottom:.9rem}
.hc-title{font-family:var(--display);font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:.25rem}
.hc-sub{font-size:.8rem;color:rgba(255,255,255,.45);margin-bottom:1.35rem}
.plan-stack{display:flex;flex-direction:column;gap:.55rem}
.plan-row{display:flex;align-items:center;justify-content:space-between;padding:.8rem .95rem;border:1.5px solid rgba(255,255,255,.1);border-radius:var(--r);background:rgba(255,255,255,.04);cursor:pointer;position:relative;transition:all .18s}
.plan-row:hover{border-color:rgba(200,145,42,.55);background:rgba(200,145,42,.09)}
.plan-row.feat{border-color:var(--gold);background:rgba(200,145,42,.13)}
.plan-badge{position:absolute;top:-9px;right:10px;background:var(--gold);color:var(--navy);font-size:.6rem;font-weight:800;padding:2px 9px;border-radius:var(--r-pill);letter-spacing:.09em;text-transform:uppercase}
.plan-name{font-weight:700;color:#fff;font-size:.875rem}
.plan-meta{font-size:.72rem;color:rgba(255,255,255,.4);margin-top:1px}
.plan-price{font-family:var(--display);font-size:1.55rem;font-weight:700;color:var(--gold-bright)}
.plan-price small{font-family:var(--body);font-size:.66rem;color:rgba(255,255,255,.3);font-weight:400}
/* TRUST STRIP */
.trust{background:var(--surface);border-bottom:1px solid var(--border);padding:1.1rem 2rem}
.trust-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:2.25rem;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:500;color:var(--ink-soft);white-space:nowrap}
/* GENERIC SECTION */
section{padding:5.5rem 2rem}
.sec-max{max-width:1180px;margin:0 auto}
.eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:.65rem}
.sec-h{font-family:var(--display);font-size:clamp(1.9rem,4vw,2.85rem);font-weight:700;letter-spacing:-.025em;line-height:1.13;margin-bottom:.9rem;color:var(--ink)}
.sec-sub{font-size:1.05rem;color:var(--ink-soft);line-height:1.77;max-width:540px}
.sec-center{text-align:center}
.sec-center .sec-sub{margin-left:auto;margin-right:auto}
/* STAKES */
.stakes-bg{background:var(--white)}
.stakes-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.75rem;margin-top:3.5rem}
.stake{padding:1.75rem;border-radius:var(--r-lg);border:1px solid var(--border);transition:all .2s}
.stake:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.stake.bad{border-left:3px solid var(--red-mid)}
.stake.good{border-left:3px solid var(--green-mid)}
.stake-num{font-family:var(--display);font-size:2.9rem;font-weight:900;line-height:1;margin-bottom:.4rem}
.stake-num.r{color:var(--red-mid)}.stake-num.g{color:var(--green-mid)}
.stake-label{font-weight:600;font-size:.925rem;margin-bottom:.35rem}
.stake-desc{font-size:.85rem;color:var(--ink-muted);line-height:1.67}
/* HOW IT WORKS */
.how-bg{background:var(--off)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:3.5rem;position:relative}
.steps::after{content:'';position:absolute;top:27px;left:calc(12.5% + 27px);right:calc(12.5% + 27px);height:1px;background:repeating-linear-gradient(90deg,var(--gold) 0,var(--gold) 6px,transparent 6px,transparent 14px);z-index:0}
.step{text-align:center;padding:1.5rem 1rem}
.step-n{width:54px;height:54px;border-radius:50%;background:var(--navy);color:var(--gold-bright);font-family:var(--display);font-size:1.35rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;box-shadow:0 0 0 6px var(--off);position:relative;z-index:1}
.step h3{font-family:var(--display);font-size:1rem;font-weight:700;margin-bottom:.4rem}
.step p{font-size:.85rem;color:var(--ink-soft);line-height:1.65}
/* METHODOLOGY */
.method-bg{background:var(--white)}
.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.method-card{padding:2rem;border-radius:var(--r-lg);border:1px solid var(--border);position:relative;overflow:hidden;transition:all .22s}
.method-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--navy),var(--gold))}
.method-card:hover{box-shadow:var(--sh-md);transform:translateY(-3px)}
.method-icon{font-size:2rem;margin-bottom:.9rem}
.method-card h3{font-family:var(--display);font-size:1.1rem;font-weight:700;margin-bottom:.55rem}
.method-card p{font-size:.855rem;color:var(--ink-soft);line-height:1.72}
.method-tag{display:inline-block;margin-top:1rem;font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);border:1px solid rgba(200,145,42,.3);padding:3px 10px;border-radius:var(--r-pill)}
/* PRICING */
.pricing-bg{background:linear-gradient(160deg,var(--navy) 0%,var(--navy-mid) 100%);position:relative;overflow:hidden}
.pricing-bg::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(200,145,42,.09) 1.5px,transparent 1.5px);background-size:30px 30px}
.pricing-bg .eyebrow{color:rgba(200,145,42,.85)}
.pricing-bg .sec-h{color:#fff}
.pricing-bg .sec-sub{color:rgba(255,255,255,.58)}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3.5rem;align-items:start;position:relative;z-index:1}
.price-card{border-radius:var(--r-xl);border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.055);padding:2.1rem 1.85rem;transition:all .22s;position:relative}
.price-card:hover{transform:translateY(-4px);box-shadow:0 28px 56px rgba(0,0,0,.35)}
.price-card.feat{border-color:var(--gold);background:rgba(200,145,42,.1);transform:scale(1.025)}
.price-card.feat:hover{transform:scale(1.025) translateY(-4px)}
.price-crown{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--navy);font-size:.66rem;font-weight:800;padding:4px 18px;border-radius:var(--r-pill);white-space:nowrap;letter-spacing:.09em;text-transform:uppercase;box-shadow:0 4px 14px rgba(200,145,42,.5)}
.price-tier{font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-bright);margin-bottom:.25rem}
.price-name{font-family:var(--display);font-size:1.55rem;font-weight:700;color:#fff;margin-bottom:.7rem}
.price-amount{display:flex;align-items:baseline;gap:.15rem;margin-bottom:.35rem}
.price-sup{font-size:1.3rem;font-weight:700;color:var(--gold-bright);margin-top:.3rem}
.price-dollar{font-family:var(--display);font-size:3.1rem;font-weight:900;color:var(--gold-bright);line-height:1}
.price-freq{font-size:.76rem;color:rgba(255,255,255,.32);margin-bottom:.2rem;align-self:flex-end}
.price-tagline{font-size:.79rem;color:rgba(255,255,255,.48);padding-bottom:1.35rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:1.35rem}
.price-tagline strong{color:var(--gold-bright)}
.feats{list-style:none;display:flex;flex-direction:column;gap:.65rem;margin-bottom:1.85rem}
.feats li{display:flex;align-items:flex-start;gap:.6rem;font-size:.855rem;color:rgba(255,255,255,.76);line-height:1.5}
.feats li::before{content:'\2713';color:var(--gold-bright);font-weight:700;flex-shrink:0;margin-top:.08rem}
.feats li.off{color:rgba(255,255,255,.27)}
.feats li.off::before{content:'\2014';color:rgba(255,255,255,.2)}
.price-btn{width:100%;padding:.9rem;border-radius:var(--r);font-family:var(--body);font-size:.925rem;font-weight:700;cursor:pointer;transition:all .19s;letter-spacing:.01em}
.price-btn-out{background:transparent;color:var(--gold-bright);border:1.5px solid var(--gold)}
.price-btn-out:hover{background:var(--gold);color:var(--navy)}
.price-btn-fill{background:var(--gold);color:var(--navy);border:none}
.price-btn-fill:hover{background:var(--gold-bright)}
.price-secure{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:1rem;font-size:.72rem;color:rgba(255,255,255,.35)}
/* RESULTS PREVIEW */
.preview-bg{background:var(--off)}
.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;margin-top:3rem}
.preview-items{display:flex;flex-direction:column;gap:.85rem;margin-top:1.5rem}
.pi{display:flex;align-items:flex-start;gap:.9rem;padding:.95rem 1.1rem;background:var(--white);border:1px solid var(--border);border-radius:var(--r);transition:all .2s}
.pi:hover{box-shadow:var(--sh-sm);border-color:rgba(200,145,42,.3)}
.pi-ico{width:40px;height:40px;border-radius:var(--r);background:var(--navy);color:var(--gold-bright);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}
.pi h4{font-size:.875rem;font-weight:700;margin-bottom:.15rem}
.pi p{font-size:.79rem;color:var(--ink-muted);line-height:1.55}
.sample-report{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);padding:1.5rem;box-shadow:var(--sh-lg)}
.sr-head{background:var(--navy);border-radius:var(--r);padding:.95rem 1.15rem;margin-bottom:1.15rem}
.sr-head h4{font-family:var(--display);font-size:.975rem;font-weight:700;color:#fff;margin-bottom:.1rem}
.sr-head p{font-size:.73rem;color:rgba(255,255,255,.45)}
.sr-lbl{font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:.55rem}
.sr-bar-row{margin-bottom:.55rem}
.sr-bar-hd{display:flex;justify-content:space-between;font-size:.76rem;margin-bottom:.25rem}
.sr-bar-name{font-weight:600}
.sr-bar-pct{color:var(--ink-muted)}
.sr-bar-track{height:6px;background:#ede9e0;border-radius:var(--r-pill);overflow:hidden}
.sr-bar-fill{height:100%;border-radius:var(--r-pill)}
.pills{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}
.pill{padding:.28rem .72rem;border-radius:var(--r-pill);font-size:.73rem;font-weight:600}
.pill-navy{background:var(--navy);color:var(--gold-bright)}
.pill-gold{background:var(--gold);color:var(--navy)}
/* TESTIMONIALS */
.testi-bg{background:var(--white)}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.testi{padding:1.65rem;border-radius:var(--r-lg);border:1px solid var(--border);transition:all .2s}
.testi:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.testi-stars{color:var(--gold);font-size:.83rem;margin-bottom:.7rem;letter-spacing:-.03em}
.testi-q{font-size:.9rem;color:var(--ink-soft);line-height:1.76;font-style:italic;margin-bottom:1.15rem;padding-left:.95rem;position:relative}
.testi-q::before{content:'\201C';position:absolute;left:0;top:-.3rem;font-family:var(--display);font-size:2rem;color:var(--gold);line-height:1;opacity:.45}
.testi-auth{display:flex;align-items:center;gap:.7rem}
.testi-av{width:40px;height:40px;border-radius:50%;background:var(--navy);color:var(--gold-bright);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem;flex-shrink:0}
.testi-name{font-weight:700;font-size:.85rem}
.testi-role{font-size:.73rem;color:var(--ink-muted)}
/* FAQ */
.faq-bg{background:var(--off)}
.faq-list{max-width:700px;margin:2.75rem auto 0}
.faq-item{border-bottom:1px solid var(--border);padding:1.2rem 0;cursor:pointer}
.faq-q{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:.925rem;gap:1rem}
.faq-icon{color:var(--gold);font-size:1.1rem;flex-shrink:0;transition:transform .2s;font-style:normal}
.faq-item.open .faq-icon{transform:rotate(45deg)}
.faq-a{font-size:.86rem;color:var(--ink-soft);line-height:1.77;max-height:0;overflow:hidden;transition:max-height .32s ease,padding .28s}
.faq-item.open .faq-a{max-height:500px;padding-top:.7rem}
/* CTA BAND */
.cta-band{background:var(--navy);padding:5.5rem 2rem;text-align:center;position:relative;overflow:hidden}
.cta-band::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 65% 85% at 50% 0%,rgba(200,145,42,.16),transparent)}
.cta-band h2{font-family:var(--display);font-size:clamp(2rem,5vw,3.3rem);font-weight:900;color:#fff;letter-spacing:-.035em;line-height:1.08;margin-bottom:.9rem;position:relative;z-index:1}
.cta-band h2 em{font-style:italic;color:var(--gold-bright)}
.cta-band p{font-size:1.05rem;color:rgba(255,255,255,.6);margin-bottom:2.5rem;max-width:500px;margin-left:auto;margin-right:auto;position:relative;z-index:1}
.cta-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;position:relative;z-index:1}
.cta-sub{margin-top:1.15rem;font-size:.76rem;color:rgba(255,255,255,.32);position:relative;z-index:1}
/* SEO BLOCK */
.seo-block{background:var(--white);padding:4rem 2rem}
.seo-inner{max-width:940px;margin:0 auto}
.seo-inner h2{font-family:var(--display);font-size:1.65rem;font-weight:700;margin-bottom:.9rem;letter-spacing:-.02em}
.seo-inner p{font-size:.88rem;color:var(--ink-soft);line-height:1.82;margin-bottom:.9rem}
.seo-kw{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1.5rem}
.seo-kw-item h3{font-size:.88rem;font-weight:700;margin-bottom:.35rem}
.seo-kw-item p{font-size:.81rem;margin-bottom:0}
/* FOOTER */
footer{background:var(--navy);padding:3.5rem 2rem 2rem;border-top:1px solid rgba(255,255,255,.07)}
.footer-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:2.3fr 1fr 1fr;gap:3rem}
.footer-logo{font-family:var(--display);font-size:1.4rem;font-weight:700;color:#fff;margin-bottom:.65rem;letter-spacing:-.03em}
.footer-logo em{font-style:normal;color:var(--gold-bright)}
.footer-desc{font-size:.81rem;color:rgba(255,255,255,.38);line-height:1.77;max-width:270px}
.footer-col h4{font-size:.67rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-bright);margin-bottom:.85rem}
.footer-col ul{list-style:none}
.footer-col ul li{margin-bottom:.42rem}
.footer-col ul li a{color:rgba(255,255,255,.42);text-decoration:none;font-size:.81rem;transition:color .18s;cursor:pointer}
.footer-col ul li a:hover{color:rgba(255,255,255,.82)}
.footer-bottom{max-width:1180px;margin:2rem auto 0;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.07);display:flex;justify-content:space-between;font-size:.76rem;color:rgba(255,255,255,.24)}
/* MODAL OVERLAY */

/* ==========================================
   OVERLAY & MODAL
   ========================================== */
.overlay{display:none;position:fixed;inset:0;z-index:9000;background:rgba(10,16,32,.88);backdrop-filter:blur(12px);overflow-y:auto;padding:0;align-items:center;justify-content:center}
.modal{background:var(--white);width:100%;height:100%;max-width:100%;max-height:100%;overflow-y:auto;position:relative;display:flex;flex-direction:column}
.modal-head{background:var(--navy);padding:1.2rem 2rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10;flex-shrink:0}
.modal-head h2{color:var(--white);font-size:1.25rem;margin:0}
.modal-head h2 em{color:var(--gold);font-style:normal}
.modal-x{background:none;border:none;color:rgba(255,255,255,.6);font-size:1.5rem;cursor:pointer;padding:0.25rem;transition:color .2s}
.modal-x:hover{color:#fff}
.modal-body{flex:1;overflow-y:auto;padding:0}

/* ==========================================
   PLAN PICKER
   ========================================== */
#s-plans{max-width:900px;margin:0 auto;padding:3rem 2rem}
.step-title{font-size:2rem;font-family:var(--font-head);color:var(--navy);margin-bottom:0.5rem;text-align:center}
.step-sub{color:var(--ink-muted);text-align:center;margin-bottom:2.5rem;font-size:1.05rem}
.plan-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.plan-card{background:var(--white);border:2px solid var(--border);border-radius:var(--r-lg);padding:2rem 1.5rem;text-align:center;position:relative;transition:transform .2s,box-shadow .2s}
.plan-card:hover{transform:translateY(-4px);box-shadow:var(--sh-md)}
.plan-card.featured{border-color:var(--gold);background:linear-gradient(135deg,#fffbf0,#fff)}
.plan-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--navy);font-size:.75rem;font-weight:700;padding:0.3rem 1rem;border-radius:var(--r-pill);text-transform:uppercase;white-space:nowrap}
.plan-card h4{font-size:1.2rem;color:var(--navy);margin-bottom:0.5rem}
.plan-price{font-size:2.8rem;font-weight:800;color:var(--navy);margin:0.5rem 0 1rem}
.plan-price .price-dollar{font-size:1.4rem;vertical-align:super;margin-right:2px}
.plan-features{list-style:none;padding:0;margin:0 0 1.5rem;text-align:left}
.plan-features li{padding:0.4rem 0;font-size:.92rem;color:var(--ink-soft);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:0.5rem}
.plan-features li:before{content:"\2713";color:var(--green);font-weight:700;font-size:.85rem}
.plan-btn{width:100%;padding:0.85rem;border:none;border-radius:var(--r);background:var(--navy);color:var(--white);font-weight:600;font-size:1rem;cursor:pointer;transition:background .2s}
.plan-card.featured .plan-btn{background:var(--gold);color:var(--navy)}
.plan-btn:hover{opacity:.9}

/* ==========================================
   INFO FORM
   ========================================== */
#s-info{max-width:560px;margin:0 auto;padding:3rem 2rem}
.info-form{display:flex;flex-direction:column;gap:1.25rem}
.form-group{display:flex;flex-direction:column;gap:0.4rem}
.form-group label{font-weight:600;font-size:.9rem;color:var(--ink-soft)}
.form-input{padding:0.85rem 1rem;border:2px solid var(--border);border-radius:var(--r);font-size:1rem;transition:border-color .2s;background:var(--white);width:100%;box-sizing:border-box}
.form-input:focus{border-color:var(--navy);outline:none}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-submit{padding:1rem 2rem;background:var(--navy);color:var(--white);border:none;border-radius:var(--r);font-size:1.05rem;font-weight:600;cursor:pointer;transition:background .2s;margin-top:0.5rem}
.form-submit:hover{background:var(--navy-mid)}

/* ==========================================
   PAYMENT
   ========================================== */
#s-payment{max-width:520px;margin:0 auto;padding:3rem 2rem}
.payment-form{display:flex;flex-direction:column;gap:1.25rem}
.payment-summary{display:flex;justify-content:space-between;padding:1rem;background:var(--gold-pale);border-radius:var(--r);border:1px solid var(--gold-light)}
.payment-note{text-align:center;font-size:.85rem;color:var(--ink-muted);margin-top:0.5rem}


/* ==========================================
   ASSESSMENT QUESTIONNAIRE
   ========================================== */
#s-assessment{min-height:calc(100vh - 60px);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;background:linear-gradient(170deg,#f8fafc 0%,#eef2f7 100%)}
.q-wrapper{max-width:740px;width:100%;margin:0 auto}
.q-progress{margin-bottom:2rem}
.q-progress-bar{height:8px;background:var(--border);border-radius:99px;overflow:hidden;margin-bottom:0.6rem}
.q-progress-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-bright));border-radius:99px;transition:width .4s ease}
.q-progress-text{font-size:.85rem;color:var(--ink-muted);font-weight:500}
.q-cat{display:inline-block;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--gold);background:var(--gold-pale);padding:0.35rem 0.85rem;border-radius:var(--r-pill);margin-bottom:1rem}
.q-text{font-size:1.65rem;line-height:1.4;color:var(--navy);font-family:var(--font-head);margin-bottom:0.5rem}
.q-sub{color:var(--ink-muted);font-size:1rem;margin-bottom:1.5rem;font-style:italic}
.q-opts{display:flex;flex-direction:column;gap:0.75rem;margin-top:1.5rem}
.q-opt{display:block;width:100%;text-align:left;padding:1.15rem 1.4rem;background:var(--white);border:2px solid var(--border);border-radius:var(--r-lg);font-size:1.05rem;color:var(--ink);cursor:pointer;transition:all .2s;line-height:1.5;position:relative;overflow:hidden}
.q-opt:hover{border-color:var(--navy-mid);background:var(--surface);transform:translateX(4px)}
.q-opt.selected{border-color:var(--navy);background:linear-gradient(135deg,rgba(14,31,64,.04),rgba(14,31,64,.08));color:var(--navy);font-weight:600}
.q-opt.selected::before{content:"\2713";position:absolute;right:1.2rem;top:50%;transform:translateY(-50%);width:28px;height:28px;background:var(--navy);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem}
.q-opt::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(14,31,64,.03));opacity:0;transition:opacity .2s}
.q-opt:hover::after{opacity:1}

/* Scale questions */
.q-scale{display:flex;align-items:center;gap:1rem;margin-top:2rem;justify-content:center;flex-wrap:wrap}
.scale-label{font-size:.85rem;color:var(--ink-muted);font-weight:500;min-width:100px;text-align:center}
.scale-btns{display:flex;gap:0.6rem}
.scale-btn{width:56px;height:56px;border-radius:50%;border:2px solid var(--border);background:var(--white);font-size:1.1rem;font-weight:700;color:var(--ink-soft);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}
.scale-btn:hover{border-color:var(--navy);color:var(--navy);transform:scale(1.1)}
.scale-btn.active{background:var(--navy);color:var(--white);border-color:var(--navy);transform:scale(1.15);box-shadow:0 4px 16px rgba(14,31,64,.3)}

/* Question navigation */
.q-nav{display:flex;justify-content:flex-start;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}
.q-nav-btn{padding:0.7rem 1.4rem;border:2px solid var(--border);background:var(--white);border-radius:var(--r);color:var(--ink-soft);font-weight:600;cursor:pointer;transition:all .2s;font-size:.95rem}
.q-nav-btn:hover{border-color:var(--navy);color:var(--navy)}


/* ==========================================
   LOADING SCREEN
   ========================================== */
#s-loading{min-height:calc(100vh - 60px);display:flex;align-items:center;justify-content:center;background:linear-gradient(170deg,var(--navy) 0%,#0a1628 100%);padding:2rem}
.loader-content{text-align:center;color:var(--white);max-width:480px}
.loader-spinner{width:64px;height:64px;border:4px solid rgba(255,255,255,.15);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 2rem}
@keyframes spin{to{transform:rotate(360deg)}}
.loader-content h3{font-size:1.5rem;margin-bottom:0.75rem;color:var(--white)}
.loader-content p{color:rgba(255,255,255,.6);margin-bottom:2rem}
.loader-steps{text-align:left;display:flex;flex-direction:column;gap:0.6rem}
.loader-step{padding:0.6rem 1rem;background:rgba(255,255,255,.05);border-radius:var(--r);color:rgba(255,255,255,.3);font-size:.9rem;transition:all .5s}
.loader-step.active{background:rgba(192,137,18,.15);color:var(--gold);font-weight:500}

/* ==========================================
   RESULTS PAGE
   ========================================== */
#s-results{min-height:calc(100vh - 60px);background:#f4f7fb;padding:0}
.res-hero-banner{background:linear-gradient(135deg,var(--navy) 0%,#162d5a 100%);padding:3rem 2rem 2rem;text-align:center;color:var(--white)}
.res-hero-banner h2{font-size:2.2rem;margin-bottom:0.5rem;font-family:var(--font-head)}
.res-hero-banner h2 span{color:var(--gold)}
.res-hero-banner p{color:rgba(255,255,255,.7);font-size:1.05rem;max-width:600px;margin:0 auto}

.res-tabs{display:flex;justify-content:center;gap:0.25rem;background:var(--white);padding:0.5rem 1rem;border-bottom:1px solid var(--border);position:sticky;top:56px;z-index:5;flex-wrap:wrap}
.res-tab{padding:0.7rem 1.4rem;border:none;background:none;font-size:.92rem;font-weight:600;color:var(--ink-muted);cursor:pointer;border-radius:var(--r);transition:all .2s}
.res-tab:hover{background:var(--surface);color:var(--ink)}
.res-tab.active{background:var(--navy);color:var(--white)}

.res-panel{max-width:1000px;margin:0 auto;padding:2.5rem 2rem;display:none}
.res-panel:first-of-type{display:block}


/* Dimension Bars */
.dim-bars{display:flex;flex-direction:column;gap:0.85rem;margin:1.5rem 0 2rem}
.dim-bar-row{display:grid;grid-template-columns:130px 1fr 50px;align-items:center;gap:1rem}
.dim-label{font-size:.9rem;font-weight:600;color:var(--ink-soft);text-transform:capitalize}
.dim-bar{height:14px;background:var(--surface);border-radius:99px;overflow:hidden;position:relative}
.dim-fill{height:100%;border-radius:99px;transition:width 1s ease;position:relative}
.dim-fill::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 50%,rgba(255,255,255,.2));border-radius:99px}
.dim-val{font-size:.9rem;font-weight:700;color:var(--ink)}

/* Radar chart container */
.chart-container{max-width:450px;margin:2rem auto;background:var(--white);padding:1.5rem;border-radius:var(--r-lg);box-shadow:var(--sh-sm)}

/* Major Cards */
.major-card{background:var(--white);border-radius:var(--r-lg);padding:1.75rem;margin-bottom:1.25rem;box-shadow:var(--sh-sm);border-left:4px solid var(--gold);transition:transform .2s}
.major-card:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}
.major-head{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.major-icon{font-size:2rem;width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:var(--gold-pale);border-radius:var(--r);flex-shrink:0}
.major-head h4{font-size:1.2rem;color:var(--navy);margin:0}
.major-badge{font-size:.8rem;font-weight:700;color:var(--gold);margin-top:0.2rem;display:block}
.major-reason{color:var(--ink-soft);font-size:.95rem;line-height:1.6;margin-bottom:1rem}
.major-meta{display:flex;flex-wrap:wrap;gap:0.75rem}
.major-meta span{font-size:.82rem;color:var(--ink-muted);background:var(--surface);padding:0.35rem 0.75rem;border-radius:var(--r-pill)}
.major-card.minor{padding:1rem 1.25rem;border-left-width:3px;border-left-color:var(--border);display:flex;align-items:center;gap:0.75rem}
.major-card.minor .major-icon{width:36px;height:36px;font-size:1.2rem}
.major-fit-bar{height:6px;background:var(--surface);border-radius:99px;flex:1;max-width:200px;overflow:hidden}
.major-fit-fill{height:100%;border-radius:99px;background:var(--gold)}

/* Careers Section */
.careers-block{background:var(--white);border-radius:var(--r-lg);padding:1.75rem;margin-bottom:1.5rem;box-shadow:var(--sh-sm)}
.careers-block h4{font-size:1.15rem;color:var(--navy);margin-bottom:0.3rem;display:flex;align-items:center;gap:0.5rem}
.careers-block .careers-subtitle{font-size:.85rem;color:var(--ink-muted);margin-bottom:1.25rem}
.career-table{width:100%;border-collapse:collapse}
.career-table th{text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:0.5px;color:var(--ink-muted);padding:0.6rem 0.75rem;border-bottom:2px solid var(--border);font-weight:700}
.career-table td{padding:0.75rem;border-bottom:1px solid var(--border);font-size:.92rem;color:var(--ink)}
.career-table tr:hover td{background:var(--surface)}
.career-salary{font-weight:600;color:var(--green)}
.career-growth{font-weight:600}
.career-growth.high{color:var(--green)}
.career-growth.med{color:var(--amber)}
.career-growth.low{color:var(--red)}

/* AI Risk Indicator */
.ai-risk{display:inline-flex;align-items:center;gap:0.4rem;padding:0.25rem 0.65rem;border-radius:var(--r-pill);font-size:.78rem;font-weight:700}
.ai-risk.low{background:#e8f5e9;color:#2e7d32}
.ai-risk.medium{background:#fff8e1;color:#f57f17}
.ai-risk.high{background:#fce4ec;color:#c62828}
.ai-risk-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.ai-risk.low .ai-risk-dot{background:#4caf50}
.ai-risk.medium .ai-risk-dot{background:#ff9800}
.ai-risk.high .ai-risk-dot{background:#f44336}

/* AI Risk Detail */
.ai-detail{margin-top:0.75rem;padding:1rem;background:var(--surface);border-radius:var(--r);border-left:3px solid var(--amber-mid)}
.ai-detail p{font-size:.88rem;line-height:1.6;color:var(--ink-soft);margin:0}
.ai-detail strong{color:var(--ink)}


/* Personality Cards */
.personality-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1.5rem 0}
.pers-card{background:var(--white);border-radius:var(--r-lg);padding:1.75rem;text-align:center;box-shadow:var(--sh-sm)}
.pers-letter{font-size:2.8rem;font-weight:800;color:var(--navy);margin:0.75rem 0;font-family:var(--font-head)}
.pers-card p{font-size:.9rem;color:var(--ink-soft);line-height:1.5}
.pers-card strong{color:var(--ink)}

/* Colleges */
.college-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-top:1.5rem}
.college-card{background:var(--white);border-radius:var(--r-lg);padding:1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:var(--sh-sm);transition:transform .2s}
.college-card:hover{transform:translateY(-2px)}
.college-icon{font-size:1.5rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--surface);border-radius:var(--r);flex-shrink:0}
.college-card strong{display:block;font-size:.95rem;color:var(--navy)}
.college-card p{font-size:.82rem;color:var(--ink-muted);margin:0.2rem 0 0}

/* Strengths Section */
.strengths-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1.5rem 0}
.strength-card{background:var(--white);border-radius:var(--r-lg);padding:1.25rem;text-align:center;box-shadow:var(--sh-sm)}
.strength-emoji{font-size:2rem;margin-bottom:0.5rem}
.strength-name{font-weight:700;color:var(--navy);font-size:1rem;margin-bottom:0.3rem;text-transform:capitalize}
.strength-score{font-size:2rem;font-weight:800;font-family:var(--font-head)}
.strength-desc{font-size:.82rem;color:var(--ink-muted);line-height:1.4;margin-top:0.3rem}

/* Responsive */
@media(max-width:768px){
  .plan-cards{grid-template-columns:1fr}
  .personality-grid{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .dim-bar-row{grid-template-columns:100px 1fr 40px}
  .q-text{font-size:1.3rem}
  .q-opt{padding:1rem}
  .res-tabs{gap:0.15rem;padding:0.4rem 0.5rem}
  .res-tab{padding:0.5rem 0.8rem;font-size:.82rem}
  .step-title{font-size:1.5rem}
  .career-table{font-size:.82rem}
  .career-table th,.career-table td{padding:0.5rem}
}
@media(max-width:480px){
  #s-assessment{padding:1.25rem}
  .q-text{font-size:1.15rem}
  .scale-btn{width:44px;height:44px}
  .res-panel{padding:1.5rem 1rem}
}

/* Section titles */
.section-title{font-size:1.5rem;font-family:var(--font-head);color:var(--navy);margin-bottom:0.5rem}
.section-desc{color:var(--ink-muted);margin-bottom:1.5rem;font-size:.95rem}

/* Print */
@media print{.modal-head,.res-tabs,.q-nav{display:none}}

/* MOBILE RESPONSIVE - LANDING PAGE */
.nav-hamburger{display:none;background:none;border:none;cursor:pointer;padding:6px;color:var(--navy);font-size:1.5rem;line-height:1}
@media(max-width:900px){nav{padding:0 1rem;height:56px}.nav-links{display:none;position:absolute;top:56px;left:0;right:0;background:var(--white);flex-direction:column;padding:1rem;gap:0.75rem;border-bottom:1px solid var(--border);box-shadow:var(--sh-md);z-index:900}.nav-links.open{display:flex}.nav-hamburger{display:block}.nav-cta{width:100%;text-align:center;padding:0.75rem 1rem}.hero{padding:3rem 1.25rem 2.5rem;min-height:auto}.hero-inner{grid-template-columns:1fr;gap:2rem;text-align:center}.hero h1{font-size:clamp(2rem,7vw,2.8rem)}.hero-sub{margin-left:auto;margin-right:auto;font-size:1rem}.hero-btns{justify-content:center}.hero-proof{justify-content:center}.hero-badge{margin-left:auto;margin-right:auto}.hero-card{max-width:420px;margin:0 auto}.trust{padding:0.85rem 1rem}.trust-inner{gap:1rem}.trust-item{font-size:.75rem}section{padding:3.5rem 1.25rem}.stakes-grid{grid-template-columns:1fr;gap:1rem}.steps{grid-template-columns:1fr 1fr;gap:1rem}.steps::after{display:none}.method-grid{grid-template-columns:1fr;gap:1rem}.pricing-grid{grid-template-columns:1fr;gap:1.25rem;max-width:420px;margin-left:auto;margin-right:auto;margin-top:2.5rem}.price-card.feat{transform:none}.price-card.feat:hover{transform:translateY(-4px)}.preview-grid{grid-template-columns:1fr;gap:2rem}.testi-grid{grid-template-columns:1fr;gap:1rem}.seo-kw{grid-template-columns:1fr;gap:1rem}.footer-grid{grid-template-columns:1fr 1fr;gap:2rem}.footer-desc{max-width:none}.footer-bottom{flex-direction:column;gap:0.5rem;text-align:center}.cta-band{padding:3.5rem 1.25rem}.cta-band h2{font-size:clamp(1.7rem,6vw,2.5rem)}.ub{font-size:.72rem;padding:.5rem 2.5rem .5rem 0.75rem}}
@media(max-width:600px){.nav-logo{font-size:1.25rem}.hero{padding:2rem 1rem 2rem}.hero h1{font-size:clamp(1.75rem,8vw,2.3rem)}.hero-sub{font-size:.92rem}.hero-btns{flex-direction:column;align-items:center;gap:0.65rem}.btn-primary{width:100%;justify-content:center;padding:0.85rem 1.5rem;font-size:.92rem}.btn-ghost{width:100%;justify-content:center;padding:0.85rem 1.5rem;font-size:.92rem}.hero-proof{flex-direction:column;gap:0.5rem}.hero-proof-sep{display:none}.hero-card{padding:1.25rem}.plan-row{padding:0.65rem 0.75rem}.plan-price{font-size:1.3rem}.sec-h{font-size:clamp(1.5rem,6vw,2rem)}.sec-sub{font-size:.95rem}.steps{grid-template-columns:1fr}.step{padding:1rem 0.5rem}.stake{padding:1.25rem}.stake-num{font-size:2.2rem}.footer-grid{grid-template-columns:1fr;gap:1.5rem;text-align:center}.footer-desc{margin-left:auto;margin-right:auto}.ub{font-size:.68rem;line-height:1.35}.cta-btns{flex-direction:column;align-items:center;gap:0.65rem}.cta-btns .btn-primary,.cta-btns .btn-ghost{width:100%;max-width:300px;justify-content:center}}
@media(max-width:380px){nav{padding:0 0.75rem}.hero{padding:1.5rem 0.75rem}section{padding:2.5rem 0.75rem}.hero h1{font-size:1.65rem}.hero-card{padding:1rem}.plan-name{font-size:.8rem}.plan-meta{font-size:.65rem}.plan-price{font-size:1.15rem}}


/* EXIT RESULTS POPUP */
#exit-results-popup{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center}
#exit-results-popup.show{display:flex}
.exit-popup-overlay{position:absolute;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(4px)}
.exit-popup-box{position:relative;background:var(--white);border-radius:var(--r-xl);padding:2.5rem;max-width:480px;width:90%;text-align:center;box-shadow:var(--sh-xl);animation:popIn .3s ease}
@keyframes popIn{from{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}
.exit-popup-icon{font-size:3rem;margin-bottom:1rem}
.exit-popup-box h3{font-family:var(--display);font-size:1.5rem;color:var(--navy);margin-bottom:.75rem}
.exit-popup-box p{font-size:.95rem;color:var(--ink-soft);line-height:1.7;margin-bottom:1.75rem}
.exit-popup-box p strong{color:var(--red-mid)}
.exit-popup-download{width:100%;padding:1rem;background:var(--gold);color:var(--navy);border:none;border-radius:var(--r);font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .2s;margin-bottom:.75rem}
.exit-popup-download:hover{background:var(--gold-bright);transform:translateY(-1px);box-shadow:0 4px 16px rgba(200,145,42,.45)}
.exit-popup-close{width:100%;padding:.75rem;background:none;border:1.5px solid var(--border);border-radius:var(--r);font-size:.88rem;color:var(--ink-muted);cursor:pointer;transition:all .2s}
.exit-popup-close:hover{border-color:var(--ink-soft);color:var(--ink)}


/* Question Transition Animations */
.q-wrapper{transition:opacity .3s ease,transform .3s ease}
.q-exit{opacity:0;transform:translateX(-40px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}
.q-enter{opacity:0;transform:translateX(40px)}
.q-enter-active{opacity:1;transform:translateX(0);transition:opacity .3s ease,transform .3s ease}
.q-exit-back{opacity:0;transform:translateX(40px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}
.q-enter-back{opacity:0;transform:translateX(-40px)}

/* Progress Bar Shimmer */
.q-progress-fill{position:relative;overflow:hidden}
.q-progress-fill::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}
@keyframes shimmer{0%{left:-100%}100%{left:100%}}

/* Mobile Sticky CTA */
.mobile-sticky-cta{position:fixed;bottom:0;left:0;right:0;background:var(--navy);padding:.7rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;z-index:800;transform:translateY(100%);transition:transform .3s ease;box-shadow:0 -4px 20px rgba(0,0,0,.2)}
.mobile-sticky-cta.visible{transform:translateY(0)}
.mobile-sticky-cta .cta-text{color:#fff;font-size:.82rem;font-weight:600;line-height:1.3}
.mobile-sticky-cta .cta-text small{display:block;font-size:.68rem;color:rgba(255,255,255,.5);font-weight:400}
.mobile-sticky-cta .cta-btn{background:var(--gold);color:var(--navy);border:none;padding:.6rem 1.2rem;border-radius:var(--r);font-weight:700;font-size:.82rem;cursor:pointer;white-space:nowrap;flex-shrink:0}

/* Hero CTA Pulse Animation */
@keyframes ctaPulse{0%,100%{box-shadow:0 4px 22px rgba(200,145,42,.52)}50%{box-shadow:0 4px 22px rgba(200,145,42,.52),0 0 0 8px rgba(200,145,42,.15)}}
.hero-btns .btn-primary{animation:ctaPulse 2.5s ease-in-out infinite}

/* Enhanced Exit Popup v2 */
.exit-popup-overlay{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:rgba(10,16,32,.85);backdrop-filter:blur(8px);opacity:0;transition:opacity .3s ease;pointer-events:none}
.exit-popup-overlay.show{opacity:1;pointer-events:auto}
.exit-popup-card{background:var(--white);border-radius:var(--r-xl);padding:2.5rem;max-width:480px;width:90%;text-align:center;box-shadow:var(--sh-xl);transform:scale(.85) translateY(20px);transition:transform .35s cubic-bezier(.34,1.56,.64,1);opacity:0;transition:transform .35s cubic-bezier(.34,1.56,.64,1),opacity .3s ease}
.exit-popup-overlay.show .exit-popup-card{transform:scale(1) translateY(0);opacity:1}
.exit-popup-icon{font-size:3rem;margin-bottom:1rem}
.exit-popup-card h3{font-family:var(--display);font-size:1.5rem;color:var(--navy);margin-bottom:.75rem}
.exit-popup-card p{font-size:.95rem;color:var(--ink-soft);line-height:1.7;margin-bottom:1.75rem}
.exit-popup-card p strong{color:var(--red-mid)}
.exit-popup-actions{display:flex;flex-direction:column;gap:.65rem}
.exit-popup-card .btn-download{width:100%;padding:1rem;background:var(--gold);color:var(--navy);border:none;border-radius:var(--r);font-size:1.05rem;font-weight:700;cursor:pointer;transition:all .2s}
.exit-popup-card .btn-download:hover{background:var(--gold-bright);transform:translateY(-1px);box-shadow:0 4px 16px rgba(200,145,42,.45)}
.exit-popup-card .btn-dismiss{width:100%;padding:.75rem;background:none;border:1.5px solid var(--border);border-radius:var(--r);font-size:.88rem;color:var(--ink-muted);cursor:pointer;transition:all .2s}
.exit-popup-card .btn-dismiss:hover{border-color:var(--ink-soft);color:var(--ink)}

/* FAQ touch improvements */
.faq-item{-webkit-tap-highlight-color:transparent;touch-action:manipulation}


/* Mobile hero overflow fix */
@media(max-width:900px){.hero{overflow:visible !important}}


/* ============================================
   SAVE RESULTS PROMPT MODAL
   ============================================ */

#save-results-prompt {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    opacity: 0;
    transition: opacity 0.3s ease;
    padding: 20px;
    box-sizing: border-box;
}

#save-results-prompt.active {
    opacity: 1;
}

.save-prompt-box {
    background: linear-gradient(135deg, #0f1628 0%, #1a2340 50%, #0f1628 100%);
    border-radius: 20px;
    padding: 40px 30px;
    max-width: 420px;
    width: 100%;
    text-align: center;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6), 0 0 0 1px rgba(202, 163, 65, 0.2);
    border: 1px solid rgba(202, 163, 65, 0.3);
    transform: translateY(20px);
    transition: transform 0.3s ease;
}

#save-results-prompt.active .save-prompt-box {
    transform: translateY(0);
}

.save-prompt-icon {
    font-size: 52px;
    margin-bottom: 15px;
}

.save-prompt-title {
    color: #caa341;
    font-size: 26px;
    font-weight: 700;
    margin: 0 0 14px 0;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    letter-spacing: -0.3px;
}

.save-prompt-text {
    color: rgba(255, 255, 255, 0.85);
    font-size: 16px;
    line-height: 1.6;
    margin: 0 0 28px 0;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.save-prompt-permanent {
    color: #e74c3c;
    font-weight: 700;
    text-decoration: underline;
    text-decoration-color: rgba(231, 76, 60, 0.4);
}

.save-prompt-btn {
    display: block;
    width: 100%;
    padding: 16px 30px;
    border: none;
    border-radius: 12px;
    font-size: 17px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    margin-bottom: 18px;
}

.save-prompt-download {
    background: linear-gradient(135deg, #caa341 0%, #e8c34a 50%, #caa341 100%);
    color: #0f1628;
}

.save-prompt-download:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(202, 163, 65, 0.4);
}

.save-prompt-download:disabled {
    opacity: 0.7;
    cursor: not-allowed;
    transform: none;
}

.save-prompt-skip {
    display: inline-block;
    color: rgba(255, 255, 255, 0.45);
    font-size: 13px;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.3s ease;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.save-prompt-skip:hover {
    color: rgba(255, 255, 255, 0.7);
}

@media (max-width: 480px) {
    .save-prompt-box {
        padding: 30px 20px;
    }
    .save-prompt-title {
        font-size: 22px;
    }
    .save-prompt-text {
        font-size: 15px;
    }
    .save-prompt-btn {
        font-size: 16px;
        padding: 14px 25px;
    }
}


/* Screen reader only - for SEO keyword visibility */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* SEO Content Section */
.seo-content {
  background: #0a1628;
  padding: 80px 0 60px;
  border-top: 1px solid rgba(202, 163, 65, 0.1);
}
.seo-content .container {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 24px;
}
.seo-content h2 {
  color: #fff;
  font-family: 'Fraunces', serif;
  font-size: 1.8rem;
  margin-bottom: 32px;
  text-align: center;
}
.seo-content h3 {
  color: #caa341;
  font-family: 'DM Sans', sans-serif;
  font-size: 1.15rem;
  font-weight: 600;
  margin-top: 36px;
  margin-bottom: 12px;
}
.seo-content p {
  color: rgba(255,255,255,0.72);
  font-family: 'DM Sans', sans-serif;
  font-size: 0.95rem;
  line-height: 1.7;
  margin-bottom: 16px;
}

/* Print stylesheet for results */
@media print {
  .top-bar, nav, .hero, .problem, .steps, .science, .pricing-section,
  .testimonials, .faq-section, .seo-content, footer, .modal-x,
  #save-results-prompt, #exit-results-popup, .cta-final {
    display: none !important;
  }
  #overlay {
    position: static !important;
    background: white !important;
  }
  #s-results {
    color: #000 !important;
  }
}


/* SHARE RESULTS */
.share-results-bar{text-align:center;padding:12px 0 8px}
.share-results-btn{background:transparent;color:#c8912a;border:2px solid #c8912a;padding:10px 28px;border-radius:50px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;letter-spacing:.5px}
.share-results-btn:hover{background:#c8912a;color:#fff}
.share-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.85);z-index:100000;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;padding:20px}
.share-modal-overlay.show{opacity:1}
.share-modal{background:#0e1f40;border:1px solid rgba(200,145,42,.25);border-radius:16px;padding:32px;max-width:640px;width:100%;max-height:90vh;overflow-y:auto;position:relative}
.share-modal-close{position:absolute;top:12px;right:16px;background:none;border:none;color:#8899b5;font-size:28px;cursor:pointer;padding:4px 8px;line-height:1}
.share-modal-close:hover{color:#fff}
.share-modal-title{color:#fff;font-size:24px;font-weight:700;margin:0 0 4px}
.share-modal-sub{color:#8899b5;font-size:15px;margin:0 0 20px}
.share-card-preview{border-radius:10px;overflow:hidden;margin-bottom:24px;border:1px solid rgba(200,145,42,.2)}
.share-card-preview img{width:100%;display:block}
.share-buttons{display:flex;flex-wrap:wrap;gap:10px}
.share-btn{flex:1 1 calc(33.33% - 10px);min-width:120px;padding:12px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;text-align:center}
.share-btn-x{background:#000;color:#fff}
.share-btn-x:hover{background:#1a1a1a}
.share-btn-fb{background:#1877f2;color:#fff}
.share-btn-fb:hover{background:#1565c0}
.share-btn-ig{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);color:#fff}
.share-btn-ig:hover{background:linear-gradient(45deg,#e08025,#d4572e,#ca1d38,#bb1a5b,#aa1080)}
.share-btn-dl{background:#c8912a;color:#fff}
.share-btn-dl:hover{background:#b07d1f}
.share-btn-copy{background:rgba(255,255,255,.1);color:#e6edf3;border:1px solid rgba(255,255,255,.15)}
.share-btn-copy:hover{background:rgba(255,255,255,.18)}
@media(max-width:500px){.share-modal{padding:20px;border-radius:12px}.share-btn{flex:1 1 calc(50% - 10px);padding:14px 12px;font-size:13px}.share-modal-title{font-size:20px}}

/* LOADING SKELETON */
.modal-skeleton{padding:40px 20px;max-width:600px;margin:0 auto}
.skel-pulse{animation:skelPulse 1.5s ease-in-out infinite;border-radius:8px}
@keyframes skelPulse{0%,100%{opacity:.3}50%{opacity:.7}}
.skel-header{height:18px;width:60%;background:rgba(200,145,42,.25);margin:0 auto 24px;border-radius:4px}
.skel-cat{height:12px;width:35%;background:rgba(200,145,42,.15);margin:0 auto 16px;border-radius:4px}
.skel-question{height:24px;width:85%;background:rgba(255,255,255,.12);margin:0 auto 10px;border-radius:6px}
.skel-question2{height:24px;width:70%;background:rgba(255,255,255,.12);margin:0 auto 30px;border-radius:6px}
.skel-opt{height:56px;width:100%;background:rgba(255,255,255,.06);margin-bottom:12px;border-radius:12px;border:1px solid rgba(255,255,255,.08)}
.skel-progress{height:6px;width:100%;background:rgba(255,255,255,.06);border-radius:3px;margin-bottom:30px;overflow:hidden;position:relative}
.skel-progress::after{content:"";position:absolute;top:0;left:0;width:30%;height:100%;background:rgba(200,145,42,.3);border-radius:3px;animation:skelSlide 2s ease-in-out infinite}
@keyframes skelSlide{0%{left:-30%}100%{left:100%}}

/* === Legal Pages (Privacy, Terms, About, Contact) === */
.legal-page{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;background:linear-gradient(135deg,#0a1628 0%,#0e1f40 40%,#132d5e 100%);overflow-y:auto;-webkit-overflow-scrolling:touch;animation:legalFadeIn .3s ease}
@keyframes legalFadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.legal-page-inner{max-width:780px;margin:0 auto;padding:40px 24px 80px}
.legal-back-btn{background:rgba(200,145,42,.15);color:#c8912a;border:1px solid rgba(200,145,42,.3);padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;margin-bottom:32px;transition:all .2s}
.legal-back-btn:hover{background:rgba(200,145,42,.25);border-color:#c8912a}
.legal-page h1{font-size:clamp(28px,5vw,42px);color:#fff;margin-bottom:8px;font-weight:800}
.legal-page .legal-updated{color:rgba(180,195,220,.6);font-size:13px;margin-bottom:32px}
.legal-page h2{font-size:clamp(18px,3vw,22px);color:#c8912a;margin-top:36px;margin-bottom:12px;font-weight:700}
.legal-page p{color:rgba(220,230,245,.85);font-size:15px;line-height:1.75;margin-bottom:14px}
.legal-page p strong{color:#fff}
.legal-page a{color:#c8912a;text-decoration:underline;text-underline-offset:3px}
.legal-page a:hover{color:#e0a830}
.about-lead{font-size:clamp(18px,3vw,22px)!important;color:rgba(220,230,245,.95)!important;line-height:1.6!important;margin-bottom:24px!important;font-style:italic}
.about-cta{text-align:center;margin-top:48px;padding:40px 24px;background:rgba(200,145,42,.08);border:1px solid rgba(200,145,42,.2);border-radius:16px}
.about-cta p{font-size:20px!important;color:#fff!important;font-weight:700;margin-bottom:16px!important}
.about-cta .cta-btn{display:inline-block;padding:14px 36px;background:linear-gradient(135deg,#c8912a,#e0a830);color:#0e1f40;font-size:16px;font-weight:700;border:none;border-radius:10px;cursor:pointer;transition:transform .2s,box-shadow .2s}
.about-cta .cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(200,145,42,.35)}
.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin:32px 0}
.contact-card{background:rgba(255,255,255,.04);border:1px solid rgba(200,145,42,.15);border-radius:14px;padding:28px 24px;text-align:center;transition:border-color .2s,transform .2s}
.contact-card:hover{border-color:rgba(200,145,42,.4);transform:translateY(-3px)}
.contact-icon{font-size:36px;margin-bottom:12px}
.contact-card h3{color:#fff;font-size:16px;margin-bottom:8px;font-weight:700}
.contact-card p{font-size:13px!important;color:rgba(180,195,220,.7)!important;margin-bottom:12px!important}
.contact-link{display:inline-block;padding:8px 20px;background:rgba(200,145,42,.12);color:#c8912a!important;border:1px solid rgba(200,145,42,.3);border-radius:8px;text-decoration:none!important;font-size:13px;font-weight:600;transition:all .2s}
.contact-link:hover{background:rgba(200,145,42,.2)}
.contact-faq{margin-top:40px;padding:28px;background:rgba(255,255,255,.03);border-radius:14px;border:1px solid rgba(255,255,255,.06)}
.contact-faq h2{margin-top:0!important}
@media(max-width:600px){.legal-page-inner{padding:24px 16px 60px}.contact-cards{grid-template-columns:1fr}}
