/* =========================================================
   WEALTH CREATORS — LUXURY THEME
   Palette: Onyx / Champagne Gold / Ivory
   ========================================================= */

:root{
  --onyx:#0a0a0a;
  --onyx-2:#111111;
  --onyx-3:#1a1a1a;
  --line:rgba(212,175,55,0.18);
  --gold:#d4af37;
  --gold-2:#c9a961;
  --gold-3:#b8862b;
  --gold-soft:#f0d98c;
  --ivory:#f5f1e8;
  --ivory-2:#e8e2d3;
  --muted:#9a9387;
  --success:#7ec488;
  --grad-gold:linear-gradient(135deg,#f4d97a 0%,#d4af37 40%,#b8862b 70%,#d4af37 100%);
  --grad-text:linear-gradient(135deg,#f4d97a 0%,#d4af37 50%,#b8862b 100%);
  --grad-onyx:linear-gradient(180deg,#0a0a0a 0%,#161616 100%);
  --shadow-lux:0 30px 80px -20px rgba(212,175,55,0.25),0 10px 30px -10px rgba(0,0,0,0.7);
  --serif:'Plus Jakarta Sans','Inter','Helvetica Neue',Arial,sans-serif;
  --sans:'Plus Jakarta Sans','Inter','Helvetica Neue',Arial,sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--onyx);
  color:var(--ivory);
  font-family:var(--sans);
  font-weight:300;
  line-height:1.6;
  letter-spacing:0.01em;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}

/* === TYPOGRAPHY === */
h1,h2,h3,h4{font-family:var(--serif);font-weight:700;letter-spacing:-0.025em;line-height:1.12;color:var(--ivory)}
h1{font-size:clamp(2.6rem,6vw,5.2rem);font-weight:700;letter-spacing:-0.035em}
h2{letter-spacing:-0.025em}
h2{font-size:clamp(2rem,4vw,3.6rem)}
h3{font-size:clamp(1.4rem,2.2vw,1.9rem)}
.eyebrow{
  font-family:var(--sans);
  text-transform:uppercase;
  letter-spacing:0.4em;
  font-size:0.72rem;
  color:var(--gold);
  font-weight:500;
  display:inline-block;
  margin-bottom:1.2rem;
}
.gold-text{
  background:var(--grad-text);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  display:inline-block;
}
.script{font-family:var(--sans);font-weight:400;color:var(--gold-soft);letter-spacing:0.01em}

/* === LAYOUT === */
.container{max-width:1280px;margin:0 auto;padding:0 1.75rem}
section{padding:7rem 0;position:relative}
.section-tight{padding:5rem 0}

/* === NAV === */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;
  padding:1.1rem 0;
  background:rgba(10,10,10,0.7);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid rgba(212,175,55,0.08);
  transition:all .35s ease;
}
.nav.scrolled{background:rgba(10,10,10,0.92);padding:0.75rem 0}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem}
.nav-logo{display:flex;align-items:center;gap:0.85rem;text-decoration:none;color:var(--ivory)}
.nav-logo img{height:46px;width:46px;object-fit:cover;border-radius:50%;border:1px solid var(--line)}
.nav-logo .brand{font-family:var(--serif);font-size:1.35rem;letter-spacing:0.04em;font-weight:500}
.nav-logo .brand span{color:var(--gold)}
.nav-links{display:flex;gap:2.4rem;align-items:center}
.nav-links a{
  color:var(--ivory-2);text-decoration:none;font-size:0.88rem;
  font-weight:400;letter-spacing:0.05em;
  text-transform:uppercase;position:relative;transition:color .25s;
}
.nav-links a:hover{color:var(--gold)}
.nav-links a::after{
  content:'';position:absolute;left:0;bottom:-6px;height:1px;width:0;
  background:var(--grad-gold);transition:width .35s ease;
}
.nav-links a:hover::after{width:100%}
.nav-toggle{display:none;background:none;border:none;color:var(--gold);font-size:1.6rem;cursor:pointer}

/* === BUTTONS === */
.btn{
  display:inline-flex;align-items:center;gap:0.6rem;
  padding:1rem 2.2rem;font-size:0.82rem;
  text-transform:uppercase;letter-spacing:0.22em;font-weight:500;
  text-decoration:none;cursor:pointer;border:none;
  transition:all .35s cubic-bezier(.2,.7,.2,1);
  position:relative;overflow:hidden;
}
.btn-gold{
  background:var(--grad-gold);color:#0a0a0a;
  box-shadow:0 14px 38px -12px rgba(212,175,55,0.55);
}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 20px 50px -10px rgba(212,175,55,0.7)}
.btn-ghost{
  background:transparent;color:var(--ivory);
  border:1px solid var(--line);
}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold);background:rgba(212,175,55,0.05)}
.btn-arrow::after{content:'→';font-size:1rem;letter-spacing:0;transition:transform .3s}
.btn:hover .btn-arrow::after,.btn-arrow:hover::after{transform:translateX(5px)}

/* === HERO === */
.hero{
  min-height:100vh;display:flex;align-items:center;
  position:relative;overflow:hidden;padding:8rem 0 5rem;
  background:radial-gradient(ellipse at top right,rgba(212,175,55,0.10),transparent 55%),
             radial-gradient(ellipse at bottom left,rgba(212,175,55,0.06),transparent 50%),
             var(--onyx);
}
.hero::before{
  content:'';position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(212,175,55,0.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(212,175,55,0.04) 1px,transparent 1px);
  background-size:80px 80px;
  mask-image:radial-gradient(ellipse at center,black 30%,transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 75%);
  pointer-events:none;
}
.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr 0.85fr;gap:4rem;align-items:center}
.hero h1{margin-bottom:1.5rem}
.hero h1 .accent{display:block}
.hero-lead{font-size:1.15rem;color:var(--ivory-2);margin-bottom:2.5rem;max-width:560px;font-weight:300}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3rem}
.hero-trust{display:flex;gap:2.5rem;flex-wrap:wrap;padding-top:2rem;border-top:1px solid var(--line)}
.hero-trust .stat .num{font-family:var(--serif);font-size:2.2rem;color:var(--gold);display:block;line-height:1}
.hero-trust .stat .lbl{font-size:0.72rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);margin-top:0.4rem;display:block}

/* hero visual */
.hero-visual{
  position:relative;aspect-ratio:4/5;
  border-radius:6px;overflow:hidden;
  background:linear-gradient(135deg,#1a1a1a,#0a0a0a);
  border:1px solid var(--line);
  box-shadow:var(--shadow-lux);
}
.hero-visual::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(circle at 30% 30%,rgba(212,175,55,0.25),transparent 60%);
}
.hero-visual .badge{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  text-align:center;color:var(--ivory);
}
.hero-visual .badge .crest{
  width:140px;height:140px;border-radius:50%;
  background:var(--grad-gold);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-size:3rem;color:#0a0a0a;
  margin:0 auto 1.5rem;
  box-shadow:0 0 0 8px rgba(212,175,55,0.08),0 0 0 16px rgba(212,175,55,0.04);
}
.hero-visual .badge .title{font-family:var(--serif);font-size:1.6rem;letter-spacing:0.1em}
.hero-visual .badge .sub{font-size:0.8rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);margin-top:0.5rem}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;z-index:1;transition:transform 1.2s ease}
.hero-visual:hover .hero-img{transform:scale(1.03)}
.hero-overlay{
  position:absolute;inset:0;z-index:2;
  background:
    linear-gradient(180deg,transparent 35%,rgba(10,10,10,0.45) 70%,rgba(10,10,10,0.95) 100%),
    linear-gradient(135deg,transparent 50%,rgba(212,175,55,0.18));
  pointer-events:none;
}
.hero-visual::after{
  content:'';position:absolute;inset:0;z-index:3;pointer-events:none;
  border:1px solid rgba(212,175,55,0.15);
}
.hero-caption{
  position:absolute;left:1.75rem;right:1.75rem;bottom:1.75rem;z-index:4;
  padding-top:1.2rem;border-top:1px solid rgba(212,175,55,0.35);
}
.hero-caption-name{
  font-family:var(--serif);font-size:1.6rem;color:var(--ivory);
  letter-spacing:0.02em;line-height:1.1;
}
.hero-caption-role{
  font-size:0.7rem;letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);margin-top:0.4rem;
}

/* === SECTION HEADERS === */
.section-head{text-align:center;max-width:780px;margin:0 auto 4.5rem}
.section-head p{color:var(--muted);font-size:1.05rem;margin-top:1.2rem}
.divider{
  width:60px;height:1px;background:var(--grad-gold);margin:1.5rem auto;
}

/* === SERVICES GRID === */
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}
.service-card{
  background:linear-gradient(180deg,#141414,#0c0c0c);
  border:1px solid var(--line);
  padding:2.5rem 2rem;border-radius:4px;
  position:relative;overflow:hidden;
  transition:all .4s ease;
}
.service-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:var(--grad-gold);transform:scaleX(0);transform-origin:left;transition:transform .5s;
}
.service-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,0.4)}
.service-card:hover::before{transform:scaleX(1)}
.service-icon{
  width:54px;height:54px;border-radius:50%;
  background:rgba(212,175,55,0.08);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-size:1.6rem;color:var(--gold);
  margin-bottom:1.5rem;
}
.service-card h3{margin-bottom:0.8rem;color:var(--ivory)}
.service-card p{color:var(--muted);font-size:0.95rem;margin-bottom:1.5rem}
.service-link{
  color:var(--gold);font-size:0.78rem;letter-spacing:0.2em;text-transform:uppercase;
  text-decoration:none;display:inline-flex;align-items:center;gap:0.5rem;
}
.service-link::after{content:'→';transition:transform .3s}
.service-link:hover::after{transform:translateX(4px)}

/* === STICKY STORYTELLER (services.html) === */
.story{padding:5rem 0 7rem}
.story-grid{
  display:grid;
  grid-template-columns:0.95fr 1.05fr;
  gap:4rem;
  align-items:start;
}

/* sticky visual stage */
.story-stage{
  position:sticky;top:110px;
  height:calc(100vh - 160px);
  max-height:680px;
  display:flex;gap:1.5rem;
}
.story-rail{
  width:2px;flex-shrink:0;
  background:rgba(212,175,55,0.14);
  border-radius:2px;position:relative;overflow:hidden;
}
.story-rail-fill{
  position:absolute;top:0;left:0;width:100%;height:0;
  background:linear-gradient(180deg,#f4d97a,#d4af37,#b8862b);
  box-shadow:0 0 14px rgba(212,175,55,0.6);
  transition:height .4s ease;
}
.story-stage-inner{
  position:relative;flex:1;
  border-radius:14px;overflow:hidden;
  border:1px solid var(--line);
  box-shadow:var(--shadow-lux);
  background:#0a0a0a;
}
.story-visual{
  position:absolute;inset:0;
  opacity:0;transform:scale(1.08);
  transition:opacity .8s ease,transform 1.2s cubic-bezier(.2,.7,.2,1);
  pointer-events:none;
}
.story-visual.active{opacity:1;transform:scale(1);pointer-events:auto}
.story-visual img{width:100%;height:100%;object-fit:cover}
.story-visual-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(10,10,10,0.2) 0%,transparent 40%,rgba(10,10,10,0.5) 100%),
    linear-gradient(135deg,transparent 60%,rgba(212,175,55,0.18));
}
.story-counter{
  position:absolute;left:1.8rem;bottom:1.6rem;z-index:5;
  display:flex;align-items:baseline;gap:0.4rem;
  padding:0.7rem 1.2rem;
  background:rgba(10,10,10,0.6);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(212,175,55,0.3);
  border-radius:99px;
}
.story-count-num{font-size:1.8rem;font-weight:700;color:var(--gold);line-height:1;letter-spacing:-0.02em}
.story-count-total{font-size:0.85rem;color:var(--muted);letter-spacing:0.1em}

/* scrolling content blocks */
.story-track{display:flex;flex-direction:column}
.story-block{
  min-height:78vh;
  display:flex;flex-direction:column;justify-content:center;
  padding:3rem 0;
  border-bottom:1px solid rgba(212,175,55,0.06);
  opacity:0.35;
  transition:opacity .5s ease;
}
.story-block:last-child{border-bottom:none}
.story-block.active{opacity:1}
.story-kicker{
  font-size:0.72rem;letter-spacing:0.35em;text-transform:uppercase;
  color:var(--gold);font-weight:600;margin-bottom:1rem;
}
.story-block h2{font-size:clamp(2rem,3.4vw,3rem);margin:0.6rem 0 1.2rem;letter-spacing:-0.025em}
.story-block > p{color:var(--ivory-2);font-size:1.08rem;line-height:1.7;max-width:560px}
.story-list{list-style:none;margin:1.8rem 0}
.story-list li{
  padding:0.55rem 0;color:var(--ivory-2);font-size:0.98rem;
  display:flex;align-items:flex-start;gap:0.8rem;
  border-bottom:1px solid rgba(255,255,255,0.04);
}
.story-list li::before{
  content:'';flex-shrink:0;margin-top:0.6rem;
  width:18px;height:1px;background:var(--grad-gold);
}
.story-cta-row{display:flex;gap:0.75rem;flex-wrap:wrap;margin-top:0.5rem}

@media(max-width:880px){
  .story-grid{grid-template-columns:1fr;gap:0}
  .story-stage{
    position:sticky;top:78px;height:auto;max-height:none;
    margin-bottom:1.5rem;z-index:20;
  }
  .story-stage-inner{aspect-ratio:16/9}
  .story-rail{display:none}
  .story-counter{left:1rem;bottom:1rem;padding:0.5rem 0.9rem}
  .story-count-num{font-size:1.3rem}
  .story-block{min-height:0;padding:2rem 0;opacity:1;border-bottom:1px solid var(--line)}
  .story-block h2{font-size:1.8rem}
}

/* === BENTO GRID (legacy / disabled) === */
.bento-section{padding:5rem 0 7rem}
.bento{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:repeat(3,minmax(240px,auto));
  gap:1rem;
}
.bento-tile{
  position:relative;overflow:hidden;
  border-radius:14px;
  background-image:var(--bg);
  background-size:cover;background-position:center;
  text-decoration:none;color:var(--ivory);
  isolation:isolate;
  border:1px solid var(--line);
  transition:transform .55s cubic-bezier(.2,.7,.2,1),border-color .5s ease,box-shadow .55s ease;
  min-height:280px;
}
.bento-tile.big{grid-column:span 2;grid-row:span 2}
.bento-tile.wide{grid-column:span 2}
.bento-tile::before{
  content:'';position:absolute;inset:0;z-index:1;
  background-image:inherit;background-size:inherit;background-position:inherit;
  transition:transform 1.2s ease;
}
.bento-tile{background:transparent}
.bento-tile{background-image:none}
.bento-tile::before{background-image:var(--bg);background-size:cover;background-position:center}
.bento-overlay{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(10,10,10,0.25) 0%,rgba(10,10,10,0.55) 50%,rgba(10,10,10,0.95) 100%),
    linear-gradient(135deg,transparent 55%,rgba(212,175,55,0.16));
  transition:background .5s ease;
}
.bento-tile::after{
  content:'';position:absolute;inset:0;z-index:3;pointer-events:none;
  border:1px solid rgba(212,175,55,0.15);
  border-radius:inherit;
  transition:border-color .5s ease;
}
.bento-tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-lux)}
.bento-tile:hover::before{transform:scale(1.06)}
.bento-tile:hover::after{border-color:rgba(212,175,55,0.5)}
.bento-tile:hover .bento-cta{color:var(--gold);gap:1rem}
.bento-tile:hover .bento-cta i::after{transform:translateX(4px)}

.bento-body{
  position:absolute;left:0;right:0;bottom:0;z-index:4;
  padding:1.8rem 1.8rem;
  display:flex;flex-direction:column;gap:0.5rem;
}
.bento-tile.big .bento-body{padding:2.4rem 2.4rem}
.bento-num{
  font-size:0.7rem;letter-spacing:0.3em;font-weight:700;
  color:var(--gold);margin-bottom:0.5rem;
  display:inline-block;
}
.bento-tag{
  display:inline-block;width:fit-content;
  font-size:0.65rem;letter-spacing:0.22em;text-transform:uppercase;
  color:var(--ivory);font-weight:600;
  padding:0.35rem 0.8rem;
  background:rgba(10,10,10,0.5);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border:1px solid rgba(212,175,55,0.3);
  border-radius:99px;margin-bottom:0.6rem;
}
.bento-body h2{
  font-size:clamp(1.4rem,2.3vw,2rem);
  line-height:1.1;letter-spacing:-0.02em;font-weight:700;
  margin:0.2rem 0 0.6rem;
}
.bento-tile.big .bento-body h2{font-size:clamp(2rem,3.2vw,2.8rem)}
.bento-body p{
  color:var(--ivory-2);font-size:0.92rem;line-height:1.55;
  max-width:520px;
}
.bento-tile.big .bento-body p{font-size:1rem}
.bento-list{list-style:none;margin:0.9rem 0 1.2rem}
.bento-list li{
  padding:0.32rem 0;color:var(--ivory-2);font-size:0.92rem;
  display:flex;align-items:flex-start;gap:0.6rem;
}
.bento-list li::before{
  content:'';flex-shrink:0;margin-top:0.55rem;
  width:14px;height:1px;background:var(--grad-gold);
}
.bento-cta{
  display:inline-flex;align-items:center;gap:0.6rem;
  margin-top:0.5rem;
  font-size:0.78rem;letter-spacing:0.22em;text-transform:uppercase;
  color:var(--ivory);font-weight:600;
  transition:color .35s ease,gap .35s ease;
}
.bento-cta i{
  width:28px;height:28px;border-radius:50%;
  border:1px solid var(--line);
  display:inline-flex;align-items:center;justify-content:center;
  position:relative;
}
.bento-cta i::after{
  content:'→';font-style:normal;color:var(--gold);font-size:0.85rem;
  transition:transform .35s ease;
}

.bento-body.horizontal{
  display:grid;grid-template-columns:1fr 1.4fr;gap:2rem;align-items:end;
}
.bento-side{display:flex;flex-direction:column;gap:0.8rem}

/* Responsive */
@media(max-width:880px){
  .bento{grid-template-columns:1fr;grid-auto-rows:280px}
  .bento-tile.big,.bento-tile.wide{grid-column:auto;grid-row:auto}
  .bento-tile.big{grid-row:span 1;min-height:360px}
  .bento-body.horizontal{grid-template-columns:1fr;gap:0.8rem}
}

/* === SERVICES ACCORDION (expanding image strips) === */
.accordion{
  display:flex;gap:0.4rem;
  height:580px;width:100%;
  border-radius:10px;overflow:hidden;
  background:var(--onyx);
}
.acc-strip{
  flex:1 1 0;
  position:relative;
  cursor:pointer;
  overflow:hidden;
  background-image:var(--bg);
  background-size:cover;background-position:center;
  transition:flex .85s cubic-bezier(.2,.7,.2,1);
  border-radius:6px;
  isolation:isolate;
}
.acc-strip::before{
  content:'';position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,rgba(10,10,10,0.35) 0%,rgba(10,10,10,0.55) 50%,rgba(10,10,10,0.92) 100%),
    linear-gradient(135deg,rgba(10,10,10,0.4),rgba(10,10,10,0.1));
  transition:opacity .6s ease,background .6s ease;
}
.acc-strip::after{
  content:'';position:absolute;inset:0;z-index:2;pointer-events:none;
  border:1px solid rgba(212,175,55,0.12);
  border-radius:inherit;
  transition:border-color .5s;
}
.acc-strip:hover::after{border-color:rgba(212,175,55,0.35)}

/* Inactive strip — vertical label */
.acc-label{
  position:absolute;left:0;right:0;bottom:1.5rem;
  z-index:5;
  display:flex;flex-direction:column;align-items:center;gap:1rem;
  transition:opacity .35s ease;
}
.acc-num{
  font-size:0.7rem;letter-spacing:0.3em;
  color:var(--gold);font-weight:600;
  padding:0.4rem 0.7rem;
  background:rgba(10,10,10,0.55);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border:1px solid rgba(212,175,55,0.25);
  border-radius:99px;
}
.acc-title{
  writing-mode:vertical-rl;transform:rotate(180deg);
  font-size:1.15rem;font-weight:600;letter-spacing:0.18em;
  text-transform:uppercase;color:var(--ivory);
  text-shadow:0 2px 14px rgba(0,0,0,0.7);
}

/* Active strip */
.acc-strip.active{flex:6 1 0}
.acc-strip.active::before{
  background:
    linear-gradient(180deg,rgba(10,10,10,0.15) 0%,rgba(10,10,10,0.35) 45%,rgba(10,10,10,0.92) 100%),
    linear-gradient(135deg,transparent 55%,rgba(212,175,55,0.18));
}
.acc-strip.active::after{border-color:rgba(212,175,55,0.45)}
.acc-strip.active .acc-label{opacity:0;pointer-events:none}

/* Active content panel */
.acc-content{
  position:absolute;left:0;right:0;bottom:0;z-index:4;
  padding:2.5rem 2.5rem;
  opacity:0;transform:translateY(20px);
  transition:opacity .55s ease .15s,transform .65s cubic-bezier(.2,.7,.2,1) .15s;
  pointer-events:none;
  max-width:560px;
}
.acc-strip.active .acc-content{opacity:1;transform:none;pointer-events:auto}

.acc-content .eyebrow{font-size:0.7rem;margin-bottom:0.6rem}
.acc-content h3{
  font-size:clamp(1.7rem,3vw,2.6rem);
  margin:0.4rem 0 1rem;line-height:1.1;
  letter-spacing:-0.025em;font-weight:700;
}
.acc-content > p{
  color:var(--ivory-2);font-size:1rem;line-height:1.6;
  max-width:500px;
}
.acc-list{list-style:none;margin:1.2rem 0 1.6rem}
.acc-list li{
  padding:0.4rem 0;color:var(--ivory-2);font-size:0.94rem;
  display:flex;align-items:flex-start;gap:0.7rem;
}
.acc-list li::before{
  content:'';flex-shrink:0;margin-top:0.55rem;
  width:16px;height:1px;background:var(--grad-gold);
}
.acc-cta{display:flex;gap:0.7rem;flex-wrap:wrap}
.acc-cta .btn{padding:0.85rem 1.6rem;font-size:0.72rem}

/* Mobile: stack as vertical accordion */
@media(max-width:880px){
  .accordion{
    flex-direction:column;height:auto;gap:0.5rem;
  }
  .acc-strip{
    flex:none;height:88px;
    transition:height .7s cubic-bezier(.2,.7,.2,1);
  }
  .acc-strip.active{flex:none;height:520px}
  .acc-label{
    flex-direction:row;left:1.4rem;right:auto;bottom:50%;transform:translateY(50%);
    gap:1rem;
  }
  .acc-title{
    writing-mode:horizontal-tb;transform:none;
    font-size:1.05rem;
  }
  .acc-content{padding:1.8rem 1.5rem;max-width:none}
  .acc-content h3{font-size:1.6rem}
}

/* === TABS FEATURE (legacy / disabled) === */
.tabs{max-width:1180px;margin:0 auto}
.tab-bar{
  position:relative;display:flex;gap:0.25rem;
  background:linear-gradient(180deg,#141414,#0c0c0c);
  border:1px solid var(--line);border-radius:999px;
  padding:0.5rem;margin-bottom:3.5rem;
  overflow-x:auto;scrollbar-width:none;
}
.tab-bar::-webkit-scrollbar{display:none}
.tab-item{
  position:relative;z-index:2;
  background:transparent;border:none;cursor:pointer;
  padding:0.85rem 1.6rem;border-radius:999px;
  color:var(--ivory-2);
  font-family:var(--sans);font-size:0.8rem;font-weight:500;
  letter-spacing:0.2em;text-transform:uppercase;
  display:flex;align-items:center;gap:0.6rem;
  white-space:nowrap;
  transition:color .35s ease;
}
.tab-item .tab-ico{color:var(--gold);font-size:1rem;transition:transform .4s}
.tab-item:hover{color:var(--ivory)}
.tab-item.active{color:#0a0a0a}
.tab-item.active .tab-ico{color:#0a0a0a;transform:scale(1.1)}
.tab-indicator{
  position:absolute;top:0.5rem;left:0;
  height:calc(100% - 1rem);
  background:var(--grad-gold);
  border-radius:999px;z-index:1;
  transition:transform .55s cubic-bezier(.34,1.3,.64,1),width .55s cubic-bezier(.34,1.3,.64,1);
  box-shadow:0 8px 24px -8px rgba(212,175,55,0.5);
  pointer-events:none;
}

.tab-panels{position:relative;min-height:480px}
.tab-panel{
  display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;
  position:absolute;inset:0;
  opacity:0;visibility:hidden;
  transform:translateY(18px);
  transition:opacity .45s ease,transform .55s cubic-bezier(.2,.7,.2,1),visibility .45s;
  pointer-events:none;
}
.tab-panel.active{
  opacity:1;visibility:visible;transform:none;pointer-events:auto;
  position:relative;
}
.tp-text h3{font-size:clamp(1.8rem,3vw,2.6rem);margin:1rem 0 1.2rem}
.tp-text > p{color:var(--ivory-2);font-size:1.05rem;line-height:1.7}
.tp-list{list-style:none;margin:1.8rem 0}
.tp-list li{
  padding:0.55rem 0;color:var(--ivory-2);font-size:0.97rem;
  display:flex;align-items:flex-start;gap:0.8rem;
}
.tp-list li::before{
  content:'';flex-shrink:0;margin-top:0.55rem;
  width:18px;height:1px;background:var(--grad-gold);
}
.tp-cta{display:flex;gap:0.75rem;flex-wrap:wrap;margin-top:0.5rem}

/* editorial photo */
.tp-photo{
  position:relative;
  border-radius:8px;overflow:hidden;
  border:1px solid var(--line);
  box-shadow:var(--shadow-lux);
  background:#0a0a0a;
  isolation:isolate;
}
.tp-photo img{
  display:block;width:100%;height:auto;
  position:relative;z-index:1;
  transition:transform 1.4s ease;
}
.tab-panel.active .tp-photo img{transform:scale(1.02)}
.tp-photo::after{
  content:'';position:absolute;inset:0;z-index:3;pointer-events:none;
  border:1px solid rgba(212,175,55,0.18);border-radius:inherit;
}

/* legacy mock visual (kept in case used elsewhere) */
.tp-visual{position:relative}
.tp-mock{
  position:relative;padding:2.5rem;border-radius:8px;
  background:
    radial-gradient(ellipse at top right,rgba(212,175,55,0.12),transparent 60%),
    linear-gradient(160deg,#1a1a1a 0%,#0a0a0a 100%);
  border:1px solid var(--line);
  box-shadow:var(--shadow-lux);
  overflow:hidden;
}
.tp-mock::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(212,175,55,0.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(212,175,55,0.04) 1px,transparent 1px);
  background-size:40px 40px;
  mask-image:radial-gradient(ellipse at center,black,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse at center,black,transparent 80%);
}
.tp-mock > *{position:relative}
.tp-mock-label{
  font-size:0.68rem;letter-spacing:0.32em;text-transform:uppercase;
  color:var(--gold);margin-bottom:1.5rem;
}
.tp-mock-big{
  font-family:var(--serif);font-size:clamp(2.4rem,5vw,3.6rem);
  line-height:1;letter-spacing:-0.01em;
}
.tp-mock-meta{color:var(--muted);font-size:0.88rem;margin-top:0.6rem}
.tp-mock-score{
  display:flex;align-items:baseline;gap:1.2rem;
  font-family:var(--serif);margin-bottom:1.5rem;
}
.tp-from{font-size:2rem;color:var(--muted);text-decoration:line-through;text-decoration-thickness:1px}
.tp-arrow{font-size:1.5rem;color:var(--gold)}
.tp-to{font-size:3.2rem;line-height:1}
.tp-mock-bar{
  height:8px;background:rgba(255,255,255,0.05);border-radius:999px;
  overflow:hidden;margin:1rem 0 2rem;border:1px solid var(--line);
}
.tp-mock-bar span{
  display:block;height:100%;background:var(--grad-gold);
  border-radius:999px;
  box-shadow:0 0 12px rgba(212,175,55,0.6);
  animation:fillBar 1.2s cubic-bezier(.2,.7,.2,1) forwards;
}
@keyframes fillBar{from{width:0 !important}}
.tp-mock-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;
  padding-top:1.5rem;border-top:1px solid var(--line);
}
.tp-mock-grid > div{display:flex;flex-direction:column;gap:0.3rem}
.tp-mock-grid .lbl{font-size:0.65rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--muted)}
.tp-mock-grid .val{font-family:var(--serif);font-size:1.6rem;color:var(--ivory)}

.tp-mock-stack{margin-top:1.5rem;display:flex;flex-direction:column;gap:0.5rem}
.tp-row{
  display:flex;justify-content:space-between;align-items:center;
  padding:0.85rem 1rem;
  background:rgba(255,255,255,0.02);
  border:1px solid rgba(212,175,55,0.08);
  border-radius:4px;font-size:0.92rem;
}
.tp-row span:first-child{color:var(--ivory-2);letter-spacing:0.05em}
.tp-row span:last-child{color:var(--gold);font-family:var(--serif);font-size:1.05rem}

.tp-mock-cards{display:flex;flex-direction:column;gap:0.85rem;margin-top:0.5rem}
.tp-card{
  padding:1.1rem 1.3rem;border-radius:6px;
  background:linear-gradient(135deg,rgba(212,175,55,0.08),rgba(255,255,255,0.01));
  border:1px solid rgba(212,175,55,0.18);
  display:grid;grid-template-columns:1fr auto;align-items:center;gap:0.4rem 1rem;
}
.tp-card-bank{font-size:0.72rem;letter-spacing:0.25em;color:var(--ivory-2);text-transform:uppercase}
.tp-card-limit{font-family:var(--serif);font-size:1.6rem;line-height:1;text-align:right;grid-row:span 2}
.tp-card-age{font-size:0.78rem;color:var(--muted);font-style:italic}

.tp-tier-stack{display:flex;flex-direction:column;gap:0.5rem;margin-top:1.5rem}
.tp-tier-stack.big .tp-tier{padding:1.2rem 1.4rem}
.tp-tier{
  display:flex;justify-content:space-between;align-items:center;
  padding:0.95rem 1.2rem;border-radius:4px;
  background:rgba(255,255,255,0.02);
  border:1px solid var(--line);
}
.tp-tier.featured{
  background:linear-gradient(135deg,rgba(212,175,55,0.12),rgba(212,175,55,0.02));
  border-color:rgba(212,175,55,0.4);
}
.tp-tier-name{font-size:0.88rem;letter-spacing:0.1em;color:var(--ivory)}
.tp-tier-price{font-family:var(--serif);font-size:1.15rem;color:var(--gold)}

@media(max-width:880px){
  .tab-panel{grid-template-columns:1fr;gap:2.5rem}
  .tab-panels{min-height:0}
  .tab-panel{position:relative;display:none}
  .tab-panel.active{display:grid}
  .tab-bar{margin-bottom:2.5rem}
}

/* === PRICING === */
.section-dark{background:linear-gradient(180deg,#0a0a0a,#0e0e0e,#0a0a0a)}
.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}
.price-card{
  background:linear-gradient(180deg,#161616,#0d0d0d);
  border:1px solid var(--line);
  padding:2.5rem 2rem;border-radius:6px;position:relative;
  transition:transform .4s ease,border-color .4s ease,box-shadow .4s ease;
  display:flex;flex-direction:column;
}
.price-card:hover{border-color:rgba(212,175,55,0.32);box-shadow:0 24px 60px -28px rgba(212,175,55,0.3)}
.price-card.featured{
  border-color:rgba(212,175,55,0.5);
  background:linear-gradient(180deg,#1a1408,#0d0d0d);
  transform:scale(1.04);
}
.price-card.featured::after{
  content:'MOST POPULAR';position:absolute;top:-12px;left:50%;transform:translateX(-50%);
  background:var(--grad-gold);color:#0a0a0a;
  padding:0.35rem 1.1rem;font-size:0.65rem;letter-spacing:0.25em;font-weight:600;border-radius:2px;
}
.price-card:hover{transform:translateY(-6px)}
.price-card.featured:hover{transform:translateY(-6px) scale(1.04)}
.price-tier{font-family:var(--sans);font-size:0.72rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}
.price-name{font-family:var(--serif);font-size:1.7rem;margin-bottom:0.6rem;color:var(--ivory)}
.price-amount{
  display:flex;align-items:baseline;gap:0.4rem;
  margin:1.4rem 0;padding-bottom:1.4rem;
  border-bottom:1px solid var(--line);
  min-height:74px;flex-wrap:wrap;
}
.price-amount .currency{font-size:1.2rem;color:var(--gold-2);font-weight:600}
.price-amount .num{font-size:3rem;color:var(--ivory);font-weight:700;line-height:1;letter-spacing:-0.03em}
.price-amount .per{font-size:0.85rem;color:var(--muted)}
.price-features{list-style:none;margin-bottom:1.8rem;flex:1 0 auto}
.price-features li{
  padding:0.6rem 0;font-size:0.92rem;color:var(--ivory-2);
  display:flex;align-items:flex-start;gap:0.65rem;
  border-bottom:1px solid rgba(255,255,255,0.04);
}
.price-features li:last-child{border-bottom:none}
.price-features li::before{
  content:'✓';color:var(--gold);font-weight:600;flex-shrink:0;
}
.price-card .btn{
  width:100%;justify-content:center;
  margin-top:auto;
  letter-spacing:0.12em;font-size:0.74rem;
  white-space:nowrap;padding:0.95rem 1rem;
}

/* === SPLIT / FEATURE BLOCK === */
.feature-split{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.feature-split.reverse{direction:rtl}
.feature-split.reverse > *{direction:ltr}
.feature-visual{
  aspect-ratio:1;border-radius:6px;
  border:1px solid var(--line);overflow:hidden;
  background:linear-gradient(135deg,#1a1a1a,#080808);
  position:relative;box-shadow:var(--shadow-lux);
}
.feature-visual img{width:100%;height:100%;object-fit:cover;opacity:0.9}
.feature-visual .overlay{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(10,10,10,0.15) 0%,transparent 35%,rgba(10,10,10,0.6) 100%),
    linear-gradient(135deg,transparent 50%,rgba(212,175,55,0.18));
}
/* Stronger scrim only on images that carry a quote, so the words stay readable */
.feature-visual:has(.fv-quote) .overlay{
  background:
    linear-gradient(180deg,rgba(10,10,10,0.30) 0%,rgba(10,10,10,0.20) 25%,rgba(10,10,10,0.62) 55%,rgba(10,10,10,0.85) 100%),
    linear-gradient(135deg,transparent 55%,rgba(212,175,55,0.14));
}
.fv-img{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center;
  z-index:1;
  transition:transform 1.4s ease;
  filter:saturate(0.95) contrast(1.05);
}
.feature-visual:hover .fv-img{transform:scale(1.04)}
.feature-visual::after{
  content:'';position:absolute;inset:0;z-index:3;pointer-events:none;
  border:1px solid rgba(212,175,55,0.18);border-radius:inherit;
}
.fv-tag{
  position:absolute;left:1.5rem;bottom:1.5rem;z-index:4;
  display:flex;flex-direction:column;gap:0.4rem;
  padding:1rem 1.4rem;
  background:rgba(10,10,10,0.7);
  backdrop-filter:blur(16px) saturate(1.2);
  -webkit-backdrop-filter:blur(16px) saturate(1.2);
  border:1px solid rgba(212,175,55,0.3);
  border-radius:4px;
}
.fv-tag-eyebrow{
  font-size:0.65rem;letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);
}
.fv-tag-price{
  font-family:var(--serif);font-size:2rem;line-height:1;
  color:var(--ivory);letter-spacing:0.02em;
}
.fv-tag-per{font-size:0.85rem;color:var(--muted);font-style:italic;margin-left:0.15rem}
.fv-quote{
  position:absolute;left:1.8rem;right:1.8rem;bottom:1.8rem;z-index:4;
  padding-top:1.4rem;border-top:1px solid rgba(212,175,55,0.35);
}
.fv-quote-text{
  font-size:1.35rem;font-weight:600;color:var(--ivory);
  line-height:1.35;letter-spacing:-0.01em;
  text-shadow:0 2px 14px rgba(0,0,0,0.9);
}
.fv-quote-author{
  font-size:0.72rem;letter-spacing:0.25em;text-transform:uppercase;
  color:var(--gold);margin-top:0.9rem;
  text-shadow:0 1px 8px rgba(0,0,0,0.9);
}
.fv-quote-stat{
  font-size:clamp(2.6rem,5vw,3.6rem);font-weight:700;line-height:1;letter-spacing:-0.03em;
}
.fv-quote-stat span{font-size:1.1rem;color:var(--muted);font-weight:400;margin-left:0.3rem}
.feature-content .price-tag{
  display:inline-block;background:rgba(212,175,55,0.1);
  border:1px solid var(--line);color:var(--gold);
  padding:0.4rem 1rem;font-size:0.78rem;letter-spacing:0.18em;
  text-transform:uppercase;margin-bottom:1.5rem;border-radius:2px;
}
.feature-content ul{list-style:none;margin:2rem 0}
/* Bullet via absolute ::before so inline text + <strong> wrap as one block on
   mobile (a flex li split "$5,000 for two" onto staggered lines). */
.feature-content ul li{position:relative;padding:0.5rem 0 0.5rem 1.4rem;color:var(--ivory-2);line-height:1.5}
.feature-content ul li::before{content:'◆';position:absolute;left:0;top:0.7rem;color:var(--gold);font-size:0.7rem}

/* Credit-repair hero tagline */
.hero-tagline{
  font-family:var(--serif);
  font-size:clamp(1.05rem,2.6vw,1.4rem);
  color:var(--gold-2);
  font-style:italic;
  margin:1.2rem auto 0;
  letter-spacing:0.01em;
  line-height:1.4;
}

/* Money-back guarantee band */
.guarantee-band{
  display:flex;align-items:center;gap:1.6rem;
  max-width:840px;margin:3rem auto 0;
  padding:2rem 2.2rem;
  background:linear-gradient(135deg,rgba(212,175,55,0.12),rgba(212,175,55,0.04));
  border:1px solid rgba(212,175,55,0.32);
  border-radius:10px;
}
.guarantee-band .guarantee-ico{font-size:2.8rem;line-height:1;flex-shrink:0}
.guarantee-band h3{color:var(--ivory);font-size:1.25rem;margin-bottom:0.45rem}
.guarantee-band p{color:var(--ivory-2);font-size:0.95rem;line-height:1.65;margin:0}
@media(max-width:560px){
  .guarantee-band{flex-direction:column;text-align:center;gap:1rem;padding:1.6rem 1.3rem}
}

/* === MENTORSHIP / VIP HERO === */
.vip-block{
  position:relative;padding:5rem 4rem;border-radius:8px;
  background:
    radial-gradient(ellipse at top right,rgba(212,175,55,0.18),transparent 60%),
    linear-gradient(135deg,#1a1408 0%,#0a0a0a 60%);
  border:1px solid rgba(212,175,55,0.3);
  box-shadow:var(--shadow-lux);
  text-align:center;overflow:hidden;
}
.vip-block::before{
  content:'';position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(212,175,55,0.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(212,175,55,0.05) 1px,transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse at center,black,transparent 70%);
}
.vip-block > *{position:relative;z-index:2}
.vip-price{font-family:var(--serif);font-size:clamp(3rem,7vw,5.5rem);color:var(--gold);margin:1rem 0}

/* === TESTIMONIALS === */
.testimonials{position:relative}
.test-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.75rem}
.test-card{
  background:linear-gradient(180deg,#121212,#0a0a0a);
  border:1px solid var(--line);
  padding:2.5rem;border-radius:4px;position:relative;
}
.test-card::before{
  content:'"';position:absolute;top:0.5rem;left:1.5rem;
  font-family:var(--serif);font-size:5rem;color:var(--gold);opacity:0.4;line-height:1;
}
.test-quote{font-style:italic;color:var(--ivory-2);margin:1.5rem 0;font-size:1.02rem;line-height:1.65}
.test-author{display:flex;align-items:center;gap:1rem;padding-top:1.2rem;border-top:1px solid var(--line)}
.test-avatar{
  width:48px;height:48px;border-radius:50%;
  background:var(--grad-gold);color:#0a0a0a;
  font-family:var(--serif);font-weight:600;font-size:1.2rem;
  display:flex;align-items:center;justify-content:center;
}
.test-name{font-weight:500;color:var(--ivory);font-size:0.95rem}
.test-role{font-size:0.78rem;color:var(--muted);letter-spacing:0.1em;text-transform:uppercase}
.test-stars{color:var(--gold);font-size:0.9rem;letter-spacing:0.2em;margin-bottom:0.5rem}

/* === PROCESS / TIMELINE === */
.process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;position:relative}
.process-step{text-align:center;position:relative;padding:1rem}
.step-num{
  width:70px;height:70px;border-radius:50%;
  border:1px solid var(--line);background:rgba(212,175,55,0.05);
  font-family:var(--serif);font-size:1.6rem;color:var(--gold);
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 1.5rem;position:relative;
}
.step-num::before{
  content:'';position:absolute;inset:-6px;border-radius:50%;
  border:1px solid rgba(212,175,55,0.15);
}
.process-step h4{font-size:1.2rem;margin-bottom:0.7rem;color:var(--ivory)}
.process-step p{color:var(--muted);font-size:0.92rem}

/* === JOURNEY · THE PROCESS === */
.journey-section{padding:8rem 0;position:relative;overflow:hidden}
.journey-section::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse at 20% 30%,rgba(212,175,55,0.06),transparent 50%),
    radial-gradient(ellipse at 80% 80%,rgba(212,175,55,0.04),transparent 50%);
}

.journey{
  position:relative;
  max-width:980px;margin:0 auto;
  padding:2rem 0 1rem;
}

.journey-spine{
  position:absolute;
  left:90px;top:0;bottom:0;width:2px;
  background:linear-gradient(180deg,rgba(212,175,55,0.08) 0%,rgba(212,175,55,0.18) 100%);
  border-radius:2px;
}
.journey-progress{
  position:absolute;left:-1px;top:0;width:4px;height:0;
  background:linear-gradient(180deg,#f4d97a,#d4af37 50%,#b8862b);
  border-radius:4px;
  box-shadow:0 0 24px rgba(212,175,55,0.55),0 0 8px rgba(212,175,55,0.8);
  transition:height 1.4s cubic-bezier(.2,.7,.2,1);
}

.phase{
  position:relative;
  display:grid;
  grid-template-columns:180px 1fr;
  gap:3rem;
  padding:2.5rem 0;
  align-items:start;
}

.phase-marker{
  position:relative;
  display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem;
}
.phase-day{
  display:inline-flex;flex-direction:column;align-items:flex-start;
  padding:0.5rem 0.9rem;border-radius:4px;
  background:rgba(212,175,55,0.06);
  border:1px solid var(--line);
  margin-left:0;
}
.phase-day span{
  font-size:0.62rem;letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);line-height:1;margin-bottom:0.3rem;
}
.phase-day strong{
  font-family:var(--serif);font-size:1.3rem;font-weight:500;
  color:var(--ivory);line-height:1;letter-spacing:0.02em;
}

.phase-node{
  position:absolute;
  left:78px;top:0;
  width:78px;height:78px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#1a1a1a,#080808);
  border:1px solid rgba(212,175,55,0.25);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-size:1.7rem;color:var(--gold);
  z-index:3;
  box-shadow:
    0 0 0 6px var(--onyx),
    0 0 0 7px rgba(212,175,55,0.08),
    inset 0 0 30px rgba(212,175,55,0.08);
  transition:transform .55s cubic-bezier(.34,1.3,.64,1),border-color .4s;
}
.phase-node::before{
  content:'';position:absolute;inset:-1px;border-radius:50%;
  background:conic-gradient(from 180deg,rgba(212,175,55,0.4),transparent 40%,transparent 60%,rgba(212,175,55,0.4));
  z-index:-1;opacity:0;transition:opacity .5s;
}
.phase.in .phase-node{
  border-color:rgba(212,175,55,0.7);
  transform:scale(1.05);
}
.phase.in .phase-node::before{opacity:1;animation:nodeSpin 6s linear infinite}
@keyframes nodeSpin{to{transform:rotate(360deg)}}

.phase-node.final{
  background:radial-gradient(circle at 35% 30%,#f4d97a 0%,#d4af37 40%,#8a6418 100%);
  color:#0a0a0a;
  border-color:rgba(212,175,55,0.9);
  box-shadow:
    0 0 0 6px var(--onyx),
    0 0 0 7px rgba(212,175,55,0.35),
    0 0 50px rgba(212,175,55,0.45);
}

.phase-card{
  background:linear-gradient(180deg,#141414,#0c0c0c);
  border:1px solid var(--line);
  border-radius:6px;
  padding:2.2rem 2.5rem;
  position:relative;
  transition:transform .5s ease,border-color .5s ease;
}
.phase-card::before{
  content:'';position:absolute;left:-1px;top:2.5rem;width:3px;height:32px;
  background:var(--grad-gold);border-radius:3px;
  box-shadow:0 0 14px rgba(212,175,55,0.45);
}
.phase.in .phase-card{transform:translateX(4px);border-color:rgba(212,175,55,0.25)}
.phase-card.featured{
  background:
    radial-gradient(ellipse at top right,rgba(212,175,55,0.12),transparent 60%),
    linear-gradient(180deg,#1a1408,#0c0c0c);
  border-color:rgba(212,175,55,0.3);
  box-shadow:var(--shadow-lux);
}

.phase-meta{
  display:flex;justify-content:space-between;align-items:center;
  gap:1rem;flex-wrap:wrap;margin-bottom:1rem;
}
.phase-tag{
  font-size:0.7rem;letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);font-weight:500;
}
.phase-time{
  font-size:0.7rem;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--muted);
  padding:0.3rem 0.7rem;border:1px solid var(--line);border-radius:99px;
}
.phase-card h3{
  font-size:clamp(1.5rem,2.4vw,2.1rem);
  margin-bottom:0.9rem;line-height:1.2;
}
.phase-card p{color:var(--ivory-2);font-size:1rem;line-height:1.7}

.phase-chips{
  display:flex;flex-wrap:wrap;gap:0.5rem;
  margin-top:1.6rem;padding-top:1.5rem;
  border-top:1px solid rgba(212,175,55,0.08);
}
.phase-chips span{
  font-size:0.74rem;letter-spacing:0.12em;
  padding:0.5rem 0.95rem;border-radius:999px;
  background:rgba(212,175,55,0.05);
  border:1px solid rgba(212,175,55,0.18);
  color:var(--ivory-2);
}
.phase-card.featured .phase-chips span{
  background:rgba(212,175,55,0.1);
  border-color:rgba(212,175,55,0.32);
  color:var(--ivory);
}

.journey-cta{
  text-align:center;margin-top:3rem;
  padding-top:2rem;border-top:1px solid var(--line);
}

@media(max-width:760px){
  .journey-spine{left:32px}
  .phase{grid-template-columns:1fr;gap:1.2rem;padding:1.5rem 0 2rem 80px;position:relative}
  .phase-marker{flex-direction:row;align-items:center;gap:1rem}
  .phase-node{
    position:absolute;left:0;top:1.5rem;
    width:64px;height:64px;font-size:1.4rem;
  }
  .phase-card{padding:1.6rem 1.4rem}
  .phase-card::before{display:none}
}

/* === STATS BAR === */
.stats-bar{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:4px;overflow:hidden;
}
.stats-bar .stat{padding:2.5rem 1.5rem;text-align:center;background:var(--onyx)}
.stats-bar .stat .num{font-family:var(--serif);font-size:2.6rem;color:var(--gold);display:block}
.stats-bar .stat .lbl{font-size:0.72rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--muted);margin-top:0.4rem;display:block}

/* === CTA BANNER === */
.cta-banner{
  background:
    radial-gradient(ellipse at center,rgba(212,175,55,0.15),transparent 65%),
    linear-gradient(135deg,#0f0d05 0%,#0a0a0a 100%);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  text-align:center;padding:6rem 0;
}
.cta-banner h2{margin-bottom:1rem}
.cta-banner p{color:var(--ivory-2);max-width:600px;margin:0 auto 2.5rem;font-size:1.1rem}

/* === FAQ === */
.faq-list{max-width:820px;margin:0 auto}
.faq-item{
  border-bottom:1px solid var(--line);
  padding:1.5rem 0;cursor:pointer;
}
.faq-q{
  display:flex;justify-content:space-between;align-items:center;gap:1rem;
  font-family:var(--serif);font-size:1.2rem;color:var(--ivory);
}
.faq-q .ico{
  width:32px;height:32px;border-radius:50%;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--gold);
  transition:transform .3s;flex-shrink:0;
}
.faq-item.open .faq-q .ico{transform:rotate(45deg)}
.faq-a{
  max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s;
  color:var(--muted);
}
.faq-item.open .faq-a{max-height:400px;padding-top:1rem}

/* === FOOTER === */
.footer{
  background:#070707;padding:5rem 0 2rem;
  border-top:1px solid var(--line);position:relative;
}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:3rem;margin-bottom:3rem}
.footer-brand .nav-logo{margin-bottom:1.2rem}
.footer-brand p{color:var(--muted);font-size:0.92rem;max-width:300px}
.footer h5{font-family:var(--sans);font-size:0.78rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--gold);margin-bottom:1.4rem;font-weight:500}
.footer ul{list-style:none}
.footer ul li{margin-bottom:0.7rem}
.footer ul a{color:var(--ivory-2);text-decoration:none;font-size:0.9rem;transition:color .25s}
.footer ul a:hover{color:var(--gold)}
.footer-contact a{display:block;color:var(--ivory-2);text-decoration:none;font-size:0.9rem;margin-bottom:0.5rem}
.footer-bottom{
  padding-top:2rem;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;
}
.footer-bottom p{color:var(--muted);font-size:0.82rem}
.socials{display:flex;gap:0.75rem}
.socials a{
  width:38px;height:38px;border-radius:50%;border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;
  color:var(--ivory-2);text-decoration:none;font-size:0.85rem;
  transition:all .3s;
}
.socials a:hover{background:var(--gold);color:#0a0a0a;border-color:var(--gold)}
.socials svg{width:18px;height:18px;display:block}
.footer-legal{display:flex;gap:1.25rem;flex-wrap:wrap;align-items:center}
.footer-legal a{color:var(--muted);text-decoration:none;font-size:0.82rem;transition:color .25s}
.footer-legal a:hover{color:var(--gold)}
@media(max-width:560px){
  .footer-bottom{flex-direction:column;text-align:center;gap:1.2rem}
  .footer-legal{justify-content:center}
}

/* === Legal pages (privacy / terms / disclaimer) === */
.legal{max-width:820px;margin:0 auto}
.legal p{color:var(--ivory-2);font-size:0.96rem;line-height:1.8;margin:0 0 1.1rem}
.legal h2{font-family:var(--serif);font-size:1.5rem;margin:2.4rem 0 0.9rem}
.legal h3{font-size:1.05rem;margin:1.6rem 0 0.6rem;color:var(--ivory)}
.legal ul{margin:0 0 1.2rem 1.1rem;padding:0}
.legal li{color:var(--ivory-2);font-size:0.94rem;line-height:1.7;margin-bottom:0.5rem}
.legal a{color:var(--gold);text-decoration:none}
.legal a:hover{text-decoration:underline}
.legal .legal-updated{color:var(--muted);font-size:0.85rem;margin-bottom:2rem}
.legal .legal-note{background:var(--onyx-2,#141414);border:1px solid var(--line);border-radius:12px;padding:1.2rem 1.4rem;margin:1.5rem 0}
.legal .legal-note p:last-child{margin-bottom:0}

/* === MARQUEE === */
.marquee{
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  padding:1.5rem 0;overflow:hidden;background:#070707;
}
.marquee-inner{display:flex;gap:4rem;animation:scroll 40s linear infinite;white-space:nowrap}
.marquee-item{
  font-family:var(--serif);font-size:1.5rem;color:var(--ivory-2);
  display:flex;align-items:center;gap:4rem;
}
.marquee-item::before{content:'✦';color:var(--gold)}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* === REVEAL ANIMATION === */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s ease,transform .9s ease}
.reveal.in{opacity:1;transform:none}

/* === PAGE HEADER (subpages) === */
.page-header{
  padding:11rem 0 5rem;text-align:center;
  background:
    radial-gradient(ellipse at center,rgba(212,175,55,0.10),transparent 60%),
    linear-gradient(180deg,#0a0a0a,#0e0e0e);
  border-bottom:1px solid var(--line);position:relative;
}
.page-header h1{font-size:clamp(2.2rem,5vw,4rem)}
.breadcrumbs{font-size:0.78rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);margin-top:1rem}
.breadcrumbs a{color:var(--gold);text-decoration:none}

/* === CONTACT === */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.contact-info .info-item{
  padding:1.5rem 0;border-bottom:1px solid var(--line);
}
.contact-info .info-item .lbl{font-size:0.72rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--gold);margin-bottom:0.4rem}
.contact-info .info-item .val{font-family:var(--serif);font-size:1.3rem;color:var(--ivory)}
.contact-info .info-item .val a{color:var(--ivory);text-decoration:none}
.contact-info .info-item .val a:hover{color:var(--gold)}
form.contact-form .field{margin-bottom:1.25rem}
form.contact-form label{display:block;font-size:0.72rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);margin-bottom:0.5rem}
form.contact-form input,form.contact-form textarea,form.contact-form select{
  width:100%;background:#0f0f0f;border:1px solid var(--line);
  padding:0.95rem 1.1rem;color:var(--ivory);font-family:var(--sans);font-size:0.95rem;
  border-radius:3px;outline:none;transition:border-color .3s;
}
form.contact-form input:focus,form.contact-form textarea:focus,form.contact-form select:focus{
  border-color:var(--gold);
}
form.contact-form textarea{min-height:140px;resize:vertical}

/* === LEAD CAPTURE FORM (public pages) === */
.lead-section{padding:5rem 0;background:linear-gradient(180deg,#0a0a0a,#0e0e0e)}
.lead-card{
  max-width:760px;margin:0 auto;background:linear-gradient(180deg,#121212,#0d0d0d);
  border:1px solid var(--line);border-radius:14px;padding:clamp(1.6rem,4vw,3rem);
  box-shadow:0 30px 80px -40px rgba(0,0,0,0.9);
}
.lead-card-head{text-align:center;margin-bottom:2rem}
.lead-card-head h2{margin-top:0.4rem;font-size:clamp(1.6rem,4vw,2.4rem)}
.lead-sub{color:var(--muted);font-size:1rem;margin-top:1rem;max-width:520px;margin-inline:auto;line-height:1.6}
.lead-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.1rem 1.25rem}
.lead-grid .field{margin-bottom:0}
.lead-grid .field-full{grid-column:1 / -1}
form.lead-form .lead-submit{width:100%;justify-content:center;margin-top:1.6rem;padding:1.05rem 1.5rem;font-size:0.95rem}
.lead-alert{display:flex;gap:0.7rem;align-items:flex-start;border-radius:8px;padding:1rem 1.15rem;margin-bottom:1.6rem;font-size:0.92rem;line-height:1.5}
.lead-alert-success{background:rgba(212,175,55,0.1);border:1px solid rgba(212,175,55,0.45);color:var(--gold-soft)}
.lead-alert-success .lead-alert-ico{font-weight:700;color:var(--gold)}
.lead-alert-error{background:rgba(200,60,60,0.1);border:1px solid rgba(200,60,60,0.5);color:#f0c0c0;flex-direction:column;gap:0.4rem}
.lead-alert-error ul{margin:0.2rem 0 0;padding-left:1.1rem}
.lead-alert-error li{margin:0.15rem 0}

/* === RESPONSIVE === */
@media(max-width:960px){
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:#0a0a0a;flex-direction:column;padding:2rem;gap:1.4rem;border-bottom:1px solid var(--line)}
  .nav-links.open{display:flex}
  .nav-toggle{display:block}
  .hero-inner,.feature-split,.contact-grid{grid-template-columns:1fr;gap:3rem}
  .feature-split.reverse{direction:ltr}
  .footer-grid{grid-template-columns:1fr 1fr}
  section{padding:5rem 0}
  .vip-block{padding:3rem 1.5rem}
  .price-card.featured{transform:none}
  .price-card.featured:hover{transform:translateY(-6px)}
}
@media(max-width:560px){
  .lead-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .footer-grid{grid-template-columns:1fr}
  .hero{padding-top:7rem}
  .hero-trust{gap:1.5rem}
}

/* =========================================================
   ULTRA POLISH LAYER — site-wide professional refinements
   ========================================================= */

/* — Selection & focus — */
::selection{background:rgba(212,175,55,0.85);color:#0a0a0a}
::-moz-selection{background:rgba(212,175,55,0.85);color:#0a0a0a}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
a,button{-webkit-tap-highlight-color:transparent}

/* — Custom scrollbar — */
html{scrollbar-width:thin;scrollbar-color:var(--gold-3) #0a0a0a}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:#0a0a0a}
::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,var(--gold-2),var(--gold-3));
  border-radius:99px;border:2px solid #0a0a0a;
}
::-webkit-scrollbar-thumb:hover{background:var(--gold)}

/* — Page entrance — */
body{animation:pageIn .9s ease both}
@keyframes pageIn{from{opacity:0}to{opacity:1}}

/* — Fine grain texture for depth — */
body::after{
  content:'';position:fixed;inset:0;z-index:9998;pointer-events:none;
  opacity:0.025;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* — Scroll progress bar (top of page) — */
.scroll-progress{
  position:fixed;top:0;left:0;height:2px;width:0;z-index:200;
  background:linear-gradient(90deg,#f4d97a,#d4af37,#b8862b);
  box-shadow:0 0 12px rgba(212,175,55,0.6);
  transition:width .1s linear;
}

/* — Refined reveal: smoother, supports stagger via --d — */
.reveal{
  opacity:0;transform:translateY(34px);
  transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1);
  transition-delay:var(--d,0s);
  will-change:opacity,transform;
}
.reveal.in{opacity:1;transform:none}

/* — Gold button: light sweep on hover — */
.btn-gold{position:relative;overflow:hidden;isolation:isolate}
.btn-gold::after{
  content:'';position:absolute;top:0;left:-120%;width:60%;height:100%;z-index:-1;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,0.55),transparent);
  transform:skewX(-20deg);transition:left .7s cubic-bezier(.2,.7,.2,1);
}
.btn-gold:hover::after{left:140%}

/* — Ghost button: subtle gold fill grow — */
.btn-ghost{position:relative;overflow:hidden;isolation:isolate}
.btn-ghost::after{
  content:'';position:absolute;inset:0;z-index:-1;
  background:rgba(212,175,55,0.08);
  transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1);
}
.btn-ghost:hover::after{transform:scaleX(1)}

/* — Nav refinement: tighter, crisper on scroll — */
.nav-logo .brand{transition:letter-spacing .4s ease}
.nav.scrolled .nav-logo img{height:40px;width:40px;transition:all .35s ease}
.nav-logo img{transition:all .35s ease}

/* — Animated gradient on primary gold text (hero/H1 accents) — */
h1 .gold-text{
  background:linear-gradient(100deg,#f4d97a,#d4af37,#f0d98c,#b8862b,#d4af37);
  background-size:220% auto;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  animation:goldShift 7s ease-in-out infinite;
}
@keyframes goldShift{0%,100%{background-position:0% center}50%{background-position:100% center}}

/* — Eyebrow: refined with leading mark — */
.eyebrow{display:inline-flex;align-items:center;gap:0.7rem}
.eyebrow::before{
  content:'';width:24px;height:1px;background:var(--grad-gold);display:inline-block;
}

/* — Section dividers get a soft glow — */
.divider{box-shadow:0 0 12px rgba(212,175,55,0.5)}

/* ============================================================
   FX LAYER — ambient galaxy, cinematic preloader, magnetic CTAs.
   Additive only (no layout/structure changes); performance-guarded.
   ============================================================ */

/* Galaxy / constellation field: above the page background, behind all content */
#fx-stars{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:0.7}

/* Travelling sheen along the gold section dividers */
.divider{
  background:linear-gradient(90deg,rgba(212,175,55,0.12),#f4d97a,#d4af37,rgba(212,175,55,0.12));
  background-size:220% 100%;
  animation:fxDividerSheen 5s ease-in-out infinite;
}
@keyframes fxDividerSheen{0%,100%{background-position:0% 0}50%{background-position:100% 0}}

/* GPU hint for magnetic primary buttons (transform set in JS) */
.btn-gold,.nav-cta{will-change:transform}

/* Cinematic preloader (shown once per session) */
#fx-preloader{
  position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;
  background:radial-gradient(circle at 50% 42%,#16130b,#0a0a0a 65%);
  transition:opacity .7s ease,visibility .7s ease;
}
#fx-preloader.fx-done{opacity:0;visibility:hidden}
.fx-pre{display:flex;flex-direction:column;align-items:center;gap:1.2rem}
.fx-pre img{width:66px;height:66px;border-radius:16px;object-fit:cover;animation:fxPreFloat 1.7s cubic-bezier(.2,.7,.2,1) infinite}
.fx-pre-bar{position:relative;width:170px;height:2px;border-radius:2px;background:rgba(212,175,55,0.16);overflow:hidden}
.fx-pre-bar::after{content:'';position:absolute;top:0;left:-45%;width:45%;height:100%;border-radius:2px;background:linear-gradient(90deg,transparent,#d4af37,transparent);animation:fxPreSweep 1.05s ease-in-out infinite}
.fx-pre-word{font-size:0.6rem;letter-spacing:0.52em;text-transform:uppercase;color:#b9912f;padding-left:0.5em}
@keyframes fxPreFloat{0%,100%{transform:translateY(0);filter:drop-shadow(0 0 0 rgba(212,175,55,0))}50%{transform:translateY(-9px);filter:drop-shadow(0 12px 24px rgba(212,175,55,0.5))}}
@keyframes fxPreSweep{0%{left:-45%}100%{left:100%}}

@media(max-width:768px){ #fx-stars{display:none} }
@media (prefers-reduced-motion:reduce){
  #fx-stars,#fx-preloader{display:none!important}
  .divider{animation:none;background:var(--grad-gold)}
}

/* — Cards & tiles: unified premium easing — */
.service-card,.price-card,.test-card,.process-step,.phase-card{
  transition:transform .5s cubic-bezier(.16,1,.3,1),border-color .5s ease,box-shadow .5s ease;
}

/* — Links in body copy — */
.footer ul a,.nav-links a{transition:color .25s ease,opacity .25s ease}

/* — Image rendering crispness — */
img{image-rendering:auto}

/* — Reduce motion respect — */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1!important;transform:none!important}
}

/* — Anchor offset so deep links don't hide under fixed nav — */
section[id],article[id],[id^="credit"],[id^="funding"],[id^="tradelines"],[id^="community"],[id^="chex"]{
  scroll-margin-top:100px;
}

/* === OPERATING SYSTEM MODULE GRID (mentorship.html) === */
.os-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.25rem;
}
.os-card{
  position:relative;overflow:hidden;
  padding:2.4rem 2.2rem 2.2rem;
  border-radius:10px;
  background:linear-gradient(180deg,#151515,#0c0c0c);
  border:1px solid var(--line);
  isolation:isolate;
}
.os-card::before{
  content:'';position:absolute;inset:0;z-index:-1;
  background:radial-gradient(ellipse at top right,rgba(212,175,55,0.10),transparent 60%);
  opacity:0;transition:opacity .5s ease;
}
.os-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,0.4);box-shadow:0 28px 70px -30px rgba(212,175,55,0.35)}
.os-card:hover::before{opacity:1}
.os-watermark{
  position:absolute;top:0.6rem;right:1.2rem;z-index:0;
  font-size:5.5rem;font-weight:800;line-height:1;
  letter-spacing:-0.04em;
  color:transparent;
  -webkit-text-stroke:1px rgba(212,175,55,0.14);
  transition:-webkit-text-stroke .5s ease,color .5s ease;
  pointer-events:none;user-select:none;
}
.os-card:hover .os-watermark{-webkit-text-stroke:1px rgba(212,175,55,0.3)}
.os-head{display:flex;align-items:center;gap:0.7rem;margin-bottom:1.1rem}
.os-label{
  font-size:0.66rem;letter-spacing:0.3em;text-transform:uppercase;
  color:var(--gold);font-weight:600;
}
.os-dot{flex:1;height:1px;background:linear-gradient(90deg,rgba(212,175,55,0.3),transparent)}
.os-card h3{
  font-size:1.4rem;font-weight:700;letter-spacing:-0.02em;
  color:var(--ivory);margin-bottom:0.8rem;position:relative;
}
.os-card p{color:var(--muted);font-size:0.95rem;line-height:1.6;position:relative}
.os-line{
  margin-top:1.5rem;height:2px;width:36px;border-radius:2px;
  background:var(--grad-gold);
  transition:width .5s cubic-bezier(.16,1,.3,1);
  box-shadow:0 0 10px rgba(212,175,55,0.4);
}
.os-card:hover .os-line{width:72px}

/* === NAV DROPDOWN (Services menu) === */
.nav-dd{position:relative;display:inline-flex;align-items:center}
.nav-dd-trigger{display:inline-flex;align-items:center;gap:0.4rem}
.dd-caret{font-size:0.7rem;color:var(--gold);transition:transform .3s ease}
.nav-dd:hover .dd-caret{transform:rotate(180deg)}
.nav-dd-menu{
  position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(8px);
  min-width:230px;
  background:rgba(14,14,14,0.97);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid var(--line);border-radius:10px;
  padding:0.6rem;
  display:flex;flex-direction:column;gap:0.1rem;
  opacity:0;visibility:hidden;pointer-events:none;
  box-shadow:0 30px 70px -20px rgba(0,0,0,0.8),0 0 0 1px rgba(212,175,55,0.06);
  transition:opacity .3s ease,transform .35s cubic-bezier(.2,.7,.2,1),visibility .3s;
  z-index:120;
}
.nav-dd-menu::before{
  content:'';position:absolute;top:-7px;left:50%;transform:translateX(-50%) rotate(45deg);
  width:12px;height:12px;background:rgba(14,14,14,0.97);
  border-left:1px solid var(--line);border-top:1px solid var(--line);
}
.nav-dd:hover .nav-dd-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav-dd-menu a{
  padding:0.7rem 1rem!important;border-radius:6px;
  font-size:0.82rem!important;letter-spacing:0.05em!important;
  text-transform:none!important;color:var(--ivory-2)!important;
  transition:background .25s ease,color .25s ease,padding-left .25s ease;
}
.nav-dd-menu a::after{display:none!important}
.nav-dd-menu a:hover{background:rgba(212,175,55,0.1);color:var(--gold)!important;padding-left:1.3rem!important}

@media(max-width:960px){
  .nav-dd{flex-direction:column;align-items:flex-start;width:100%}
  .nav-dd-trigger{width:100%}
  .dd-caret{display:none}
  .nav-dd-menu{
    position:static;transform:none;opacity:1;visibility:visible;pointer-events:auto;
    background:transparent;border:none;box-shadow:none;backdrop-filter:none;
    padding:0.4rem 0 0.4rem 1rem;min-width:0;width:100%;
    border-left:1px solid var(--line);margin-top:0.6rem;
  }
  .nav-dd-menu::before{display:none}
  .nav-dd-menu a{padding:0.5rem 0!important}
}

/* =========================================================
   EXPANDED PAGE COMPONENTS
   ========================================================= */

/* — Guarantee / trust band — */
.trust-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.25rem}
.trust-card{
  text-align:center;padding:2.4rem 1.6rem;border-radius:12px;
  background:linear-gradient(180deg,#141414,#0c0c0c);border:1px solid var(--line);
  transition:transform .5s cubic-bezier(.16,1,.3,1),border-color .5s,box-shadow .5s;
}
.trust-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,0.4);box-shadow:0 24px 60px -30px rgba(212,175,55,0.3)}
.trust-ico{
  width:62px;height:62px;margin:0 auto 1.3rem;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:1.6rem;color:var(--gold);
  background:rgba(212,175,55,0.08);border:1px solid var(--line);
}
.trust-card h4{font-size:1.15rem;font-weight:700;margin-bottom:0.6rem;color:var(--ivory)}
.trust-card p{color:var(--muted);font-size:0.92rem;line-height:1.55}

/* Credit-repair "Exactly What You Get": forced 4-up grid (4 + 4 = 8 cards) */
.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}
@media(max-width:1024px){.value-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.value-grid{grid-template-columns:1fr}}

/* Mentorship tier deep-dive */
.tier-detail{max-width:980px;margin:0 auto;padding:2.4rem;border:1px solid var(--line);border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,0.02),transparent)}
.tier-detail-tag{display:inline-block;color:var(--gold);font-size:0.75rem;letter-spacing:0.2em;text-transform:uppercase;margin-bottom:0.8rem}
.tier-detail-head h3{font-size:clamp(1.5rem,4vw,2rem);color:var(--ivory);margin-bottom:0.8rem}
.tier-detail-head p{color:var(--ivory-2);line-height:1.65;max-width:760px}
.tier-detail-cols{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;margin:2rem 0}
.tier-detail-label{color:var(--gold);font-size:0.78rem;letter-spacing:0.16em;text-transform:uppercase;margin:1.8rem 0 0.6rem}
.tier-detail-label:first-child{margin-top:0}
.tier-list{list-style:none;margin:0 0 0.5rem;padding:0}
.tier-list li{position:relative;padding:0.4rem 0 0.4rem 1.4rem;color:var(--ivory-2);line-height:1.5}
.tier-list li::before{content:'◆';position:absolute;left:0;top:0.55rem;color:var(--gold);font-size:0.7rem}
.tier-sep{height:1px;max-width:980px;margin:3rem auto;background:linear-gradient(90deg,transparent,rgba(212,175,55,0.3),transparent)}
@media(max-width:760px){
  .tier-detail{padding:1.6rem 1.3rem}
  .tier-detail-cols{grid-template-columns:1fr;gap:0.5rem}
}

/* — Before / After score showcase — */
.ba-wrap{
  display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:center;
  max-width:880px;margin:0 auto;
}
.ba-card{
  text-align:center;padding:3rem 2rem;border-radius:14px;position:relative;overflow:hidden;
  border:1px solid var(--line);
}
.ba-card.before{background:linear-gradient(180deg,#161210,#0c0c0c)}
.ba-card.after{background:radial-gradient(ellipse at top,rgba(212,175,55,0.14),transparent 60%),linear-gradient(180deg,#1a1408,#0c0c0c);border-color:rgba(212,175,55,0.4)}
.ba-label{font-size:0.7rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}
.ba-card.after .ba-label{color:var(--gold)}
.ba-score{font-size:4.5rem;font-weight:800;line-height:1;letter-spacing:-0.04em}
.ba-card.before .ba-score{color:#6b6b6b}
.ba-rating{margin-top:0.8rem;font-size:0.85rem;color:var(--muted);letter-spacing:0.1em}
.ba-arrow{font-size:2rem;color:var(--gold);text-align:center}
@media(max-width:700px){.ba-wrap{grid-template-columns:1fr;gap:1rem}.ba-arrow{transform:rotate(90deg)}}

/* — Inventory / spec table — */
.spec-table{
  width:100%;border-collapse:separate;border-spacing:0;
  border:1px solid var(--line);border-radius:12px;overflow:hidden;
}
.spec-table th,.spec-table td{padding:1.1rem 1.4rem;text-align:left;font-size:0.95rem}
.spec-table thead th{
  background:rgba(212,175,55,0.07);color:var(--gold);
  font-size:0.72rem;letter-spacing:0.22em;text-transform:uppercase;font-weight:600;
}
.spec-table tbody tr{border-top:1px solid rgba(255,255,255,0.05);transition:background .3s}
.spec-table tbody tr:hover{background:rgba(212,175,55,0.04)}
.spec-table td:first-child{color:var(--ivory);font-weight:600}
.spec-table .gold-cell{color:var(--gold);font-weight:700}
@media(max-width:640px){.spec-table th,.spec-table td{padding:0.8rem 0.8rem;font-size:0.82rem}}

/* — Lender / logo marquee strip — */
.logo-strip{
  display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;
}
.logo-chip{
  padding:0.9rem 1.6rem;border-radius:99px;
  border:1px solid var(--line);background:rgba(255,255,255,0.02);
  font-size:0.95rem;font-weight:600;color:var(--ivory-2);letter-spacing:0.03em;
  transition:all .35s ease;
}
.logo-chip:hover{border-color:rgba(212,175,55,0.4);color:var(--gold);transform:translateY(-3px)}

/* — Chapters / what's inside grid — */
.chapter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
.chapter-card{
  display:flex;gap:1.2rem;align-items:flex-start;
  padding:1.6rem 1.6rem;border-radius:10px;
  background:linear-gradient(180deg,#141414,#0c0c0c);border:1px solid var(--line);
  transition:transform .5s cubic-bezier(.16,1,.3,1),border-color .5s;
}
.chapter-card:hover{transform:translateY(-4px);border-color:rgba(212,175,55,0.35)}
.chapter-no{
  flex-shrink:0;width:44px;height:44px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  background:var(--grad-gold);color:#0a0a0a;font-weight:800;font-size:1.05rem;
}
.chapter-card h4{font-size:1.05rem;font-weight:700;margin-bottom:0.35rem;color:var(--ivory)}
.chapter-card p{color:var(--muted);font-size:0.9rem;line-height:1.5}

/* — Big quote / pull section — */
.pull-quote{
  text-align:center;max-width:900px;margin:0 auto;
}
.pull-quote .mark{font-size:4rem;color:var(--gold);line-height:0.5;opacity:0.5}
.pull-quote blockquote{
  font-size:clamp(1.6rem,3vw,2.4rem);font-weight:700;line-height:1.35;
  letter-spacing:-0.02em;color:var(--ivory);margin:1.5rem 0;
}
.pull-quote cite{font-style:normal;font-size:0.8rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--gold)}

/* =========================================================
   WOW LAYER — cursor spotlight + count-up
   ========================================================= */
.has-glow{position:relative}
.cursor-glow{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(circle 360px at var(--gx,50%) var(--gy,50%),rgba(212,175,55,0.16),transparent 62%);
  opacity:0;transition:opacity .5s ease;mix-blend-mode:screen;
}
.has-glow:hover .cursor-glow{opacity:1}
.has-glow > .container{position:relative;z-index:2}
.hero.has-glow .hero-inner{position:relative;z-index:3}

/* count-up: subtle pop when it lands */
.counted{animation:countPop .5s cubic-bezier(.2,1.4,.5,1)}
@keyframes countPop{0%{transform:translateY(4px);opacity:.6}100%{transform:none;opacity:1}}

/* =========================================================
   CHAINEX TESTIMONIALS — infinite horizontal carousel
   ========================================================= */
.chainex{position:relative;width:100%;overflow:hidden;padding:1rem 0}
.chainex::before,.chainex::after{
  content:'';position:absolute;top:0;bottom:0;width:14%;z-index:3;pointer-events:none;
}
.chainex::before{left:0;background:linear-gradient(90deg,var(--onyx),transparent)}
.chainex::after{right:0;background:linear-gradient(270deg,var(--onyx),transparent)}
.section-dark .chainex::before{background:linear-gradient(90deg,#0a0a0a,transparent)}
.section-dark .chainex::after{background:linear-gradient(270deg,#0a0a0a,transparent)}

.chainex-track{
  display:flex;gap:1.5rem;width:max-content;
  animation:chainexScroll var(--cx-dur,48s) linear infinite;
  will-change:transform;
}
.chainex:hover .chainex-track{animation-play-state:paused}
@keyframes chainexScroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 0.75rem))}}

.chainex .test-card{
  flex:0 0 380px;max-width:380px;margin:0;
  transition:transform .5s cubic-bezier(.16,1,.3,1),border-color .5s ease,box-shadow .5s ease,background .5s ease;
}
.chainex .test-card:hover{
  transform:translateY(-8px) scale(1.015);
  border-color:rgba(212,175,55,0.5);
  background:radial-gradient(ellipse at top,rgba(212,175,55,0.10),transparent 60%),linear-gradient(180deg,#161106,#0a0a0a);
  box-shadow:0 30px 70px -30px rgba(212,175,55,0.4);
}
.chainex .test-avatar{box-shadow:0 0 0 3px rgba(212,175,55,0.15),0 0 0 4px rgba(212,175,55,0.3)}

@media(max-width:640px){
  .chainex .test-card{flex:0 0 300px;max-width:300px}
  .chainex::before,.chainex::after{width:8%}
}

/* ============================================================
   ADDED — nav polish, entrance animations & ebook popup
   ============================================================ */

/* — Nav entrance on load — */
@keyframes navDrop{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}
@keyframes navLinkIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.nav{animation:navDrop .7s cubic-bezier(.2,.7,.2,1) both}
.nav-links > *{animation:navLinkIn .5s ease both;animation-delay:calc(.35s + var(--i,0) * .06s)}

/* — Active nav link — */
.nav-links a.active{color:var(--gold)}
.nav-links a.active::after{width:100%}

/* — Book Call CTA in nav (was inline-styled) — */
.nav-cta{padding:0.65rem 1.4rem;font-size:0.72rem;letter-spacing:0.14em}
.nav-cta::after{display:none}
/* keep the gold CTA's text dark in every state (override generic .nav-links a hover/active color) */
.nav-links a.nav-cta,
.nav-links a.nav-cta:hover,
.nav-links a.nav-cta.active{color:#0a0a0a}

/* — Hero/section soft entrance on first paint — */
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.hero .hero-inner > .reveal:first-child{animation:fadeUp 1s cubic-bezier(.2,.7,.2,1) .2s both}

/* — Floating Ebook button — */
.ebook-fab{
  position:fixed;left:1.4rem;bottom:1.4rem;z-index:140;
  display:inline-flex;align-items:center;gap:0.6rem;
  padding:0.85rem 1.3rem;border:1px solid var(--gold);border-radius:999px;
  background:linear-gradient(135deg,rgba(20,16,6,0.92),rgba(10,10,10,0.92));
  color:var(--gold);font-family:var(--sans);font-weight:600;
  font-size:0.78rem;letter-spacing:0.06em;text-transform:uppercase;
  cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:0 14px 40px -12px rgba(212,175,55,0.6);
  transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease,color .3s;
  animation:fabIn .6s cubic-bezier(.2,.7,.2,1) 1.2s both;
}
.ebook-fab:hover{transform:translateY(-3px) scale(1.03);color:var(--gold-soft);box-shadow:0 22px 55px -12px rgba(212,175,55,0.85)}
.ebook-fab-ico{font-size:1.1rem;line-height:1;animation:fabBob 2.6s ease-in-out infinite}
.ebook-fab::before{
  content:'';position:absolute;inset:-1px;border-radius:999px;border:1px solid var(--gold);
  opacity:.7;animation:fabPulse 2.4s ease-out infinite;pointer-events:none;
}
@keyframes fabIn{from{opacity:0;transform:translateY(30px) scale(.9)}to{opacity:1;transform:none}}
@keyframes fabBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes fabPulse{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.4);opacity:0}}
@media(max-width:520px){.ebook-fab-text{display:none}.ebook-fab{padding:0.9rem;border-radius:50%}}

/* — Ebook modal — */
.ebook-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1.2rem;visibility:hidden;opacity:0;transition:opacity .35s ease,visibility .35s}
.ebook-modal.open{visibility:visible;opacity:1}
.ebook-modal-backdrop{position:absolute;inset:0;background:rgba(5,5,5,0.78);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ebook-modal-card{
  position:relative;z-index:1;display:grid;grid-template-columns:0.85fr 1fr;
  width:min(840px,100%);max-height:92vh;overflow:hidden;border-radius:20px;
  background:var(--grad-onyx);border:1px solid var(--line);box-shadow:var(--shadow-lux);
  transform:translateY(28px) scale(.96);opacity:0;transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .45s ease;
}
.ebook-modal.open .ebook-modal-card{transform:none;opacity:1}
.ebook-modal-x{position:absolute;top:0.7rem;right:0.9rem;z-index:3;background:rgba(0,0,0,0.35);border:1px solid var(--line);color:var(--ivory);width:38px;height:38px;border-radius:50%;font-size:1.4rem;line-height:1;cursor:pointer;transition:all .25s}
.ebook-modal-x:hover{background:var(--gold);color:var(--onyx);transform:rotate(90deg)}
.ebook-modal-media{position:relative;min-height:240px;overflow:hidden;background:#0a0a0a}
.ebook-modal-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.ebook-modal-media::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 65%,rgba(10,10,10,0.45) 100%)}
.ebook-modal-badge{position:absolute;left:1rem;top:1rem;z-index:2;background:var(--grad-gold);color:var(--onyx);font-size:0.66rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:0.45rem 0.9rem;border-radius:999px}
.ebook-modal-body{padding:2.4rem 2.4rem 2.2rem}
.ebook-modal-body h3{font-family:var(--serif);font-size:1.85rem;line-height:1.1;margin:0.5rem 0 0.9rem}
.ebook-modal-body p{color:var(--ivory-2);font-size:0.95rem;margin-bottom:1.2rem}
.ebook-modal-list{list-style:none;margin:0 0 1.6rem;padding:0;display:grid;gap:0.55rem}
.ebook-modal-list li{position:relative;padding-left:1.6rem;color:var(--ivory-2);font-size:0.9rem}
.ebook-modal-list li::before{content:'\2713';position:absolute;left:0;top:0;color:var(--gold);font-weight:700}
.ebook-modal-cta{display:flex;gap:0.8rem;flex-wrap:wrap}
.ebook-modal-cta .btn{padding:0.85rem 1.6rem;font-size:0.72rem}
@media(max-width:720px){
  .ebook-modal-card{grid-template-columns:1fr;max-height:94vh;overflow-y:auto}
  .ebook-modal-media{min-height:150px}
  .ebook-modal-body{padding:1.8rem 1.6rem}
}
body.ebook-lock{overflow:hidden}

/* — 4-up pricing row (credit-repair page) — */
.pricing-grid.cols-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1024px){.pricing-grid.cols-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pricing-grid.cols-4{grid-template-columns:1fr}}

/* ============================================================
   5-step lead-capture quiz popup
   ============================================================ */
.quiz-modal{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:1.2rem;visibility:hidden;opacity:0;transition:opacity .4s ease,visibility .4s}
.quiz-modal.open{visibility:visible;opacity:1}
.quiz-backdrop{position:absolute;inset:0;background:rgba(4,4,4,0.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.quiz-card{
  position:relative;z-index:1;width:min(620px,100%);max-height:92vh;overflow-y:auto;
  background:radial-gradient(120% 120% at 0% 0%,#1a1408 0%,#0e0e0e 45%,#0a0a0a 100%);
  border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-lux);
  padding:2.4rem 2.4rem 1.8rem;
  transform:translateY(34px) scale(.96);opacity:0;
  transition:transform .5s cubic-bezier(.2,.7,.2,1),opacity .5s ease;
}
.quiz-modal.open .quiz-card{transform:none;opacity:1}
.quiz-card::-webkit-scrollbar{width:8px}
.quiz-card::-webkit-scrollbar-thumb{background:rgba(212,175,55,0.3);border-radius:8px}
.quiz-x{position:absolute;top:0.9rem;right:1rem;z-index:3;background:rgba(0,0,0,0.35);border:1px solid var(--line);color:var(--ivory);width:38px;height:38px;border-radius:50%;font-size:1.4rem;line-height:1;cursor:pointer;transition:all .25s}
.quiz-x:hover{background:var(--gold);color:var(--onyx);transform:rotate(90deg)}

.quiz-head{margin-bottom:1.6rem}
.quiz-progress{height:5px;border-radius:999px;background:rgba(255,255,255,0.08);overflow:hidden;margin:0.7rem 0 0.5rem}
.quiz-progress-fill{display:block;height:100%;width:20%;border-radius:999px;background:var(--grad-gold);transition:width .45s cubic-bezier(.2,.7,.2,1)}
.quiz-stepmeta{font-size:0.72rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted)}
.quiz-stepmeta .quiz-stepnum{color:var(--gold)}

.quiz-form{position:relative}
.quiz-step{display:none;animation:quizIn .45s cubic-bezier(.2,.7,.2,1) both}
.quiz-step.active{display:block}
@keyframes quizIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
.quiz-step h3{font-family:var(--serif);font-size:1.55rem;line-height:1.15;margin-bottom:0.5rem}
.quiz-sub{color:var(--ivory-2);font-size:0.92rem;margin-bottom:1.3rem}

.quiz-options{display:grid;gap:0.7rem}
.quiz-options.grid-2{grid-template-columns:1fr 1fr}
.quiz-opt{
  display:flex;align-items:center;gap:0.9rem;width:100%;text-align:left;
  padding:0.9rem 1.05rem;border-radius:13px;cursor:pointer;
  background:rgba(255,255,255,0.03);border:1px solid var(--line);color:var(--ivory);
  transition:transform .2s ease,border-color .2s,background .2s,box-shadow .2s;
}
.quiz-opt:hover{transform:translateY(-2px);border-color:rgba(212,175,55,0.55);background:rgba(212,175,55,0.06)}
.quiz-opt.selected{border-color:var(--gold);background:rgba(212,175,55,0.12);box-shadow:0 0 0 1px var(--gold) inset}
.quiz-opt-ico{flex:0 0 40px;height:40px;display:grid;place-items:center;border-radius:10px;background:rgba(212,175,55,0.12);color:var(--gold);font-size:1.15rem}
.quiz-opt-txt{display:flex;flex-direction:column;gap:1px}
.quiz-opt-txt strong{font-weight:600;font-size:0.95rem}
.quiz-opt-txt small{color:var(--muted);font-size:0.78rem}
.quiz-opt.selected .quiz-opt-ico{background:var(--grad-gold);color:var(--onyx)}
.quiz-options.grid-2 .quiz-opt{padding:1.05rem 1rem}

.quiz-fields{display:grid;gap:1rem}
.quiz-field{display:flex;flex-direction:column;gap:0.4rem}
.quiz-field span{font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted)}
.quiz-field input{
  background:rgba(255,255,255,0.04);border:1px solid var(--line);border-radius:11px;
  padding:0.85rem 1rem;color:var(--ivory);font-family:var(--sans);font-size:0.95rem;
  transition:border-color .2s,box-shadow .2s;
}
.quiz-field input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,0.15)}
.quiz-field input::placeholder{color:#6b665c}
.quiz-error{color:#e0857c;font-size:0.82rem;margin-top:0.9rem}

.quiz-success{text-align:center;padding:1rem 0 0.5rem}
.quiz-check{width:70px;height:70px;margin:0 auto 1.1rem;border-radius:50%;display:grid;place-items:center;font-size:2rem;color:var(--onyx);background:var(--grad-gold);box-shadow:0 14px 40px -10px rgba(212,175,55,0.7);animation:quizPop .5s cubic-bezier(.2,.9,.3,1.4) both}
@keyframes quizPop{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}

.quiz-nav{display:flex;align-items:center;gap:1rem;margin-top:1.6rem}
.quiz-back{background:none;border:none;color:var(--muted);font-family:var(--sans);font-size:0.82rem;letter-spacing:0.08em;cursor:pointer;transition:color .2s;padding:0.4rem 0}
.quiz-back:hover{color:var(--gold)}
.quiz-next,.quiz-submit{margin-left:auto;padding:0.9rem 1.9rem;font-size:0.74rem;border:none;cursor:pointer}
.quiz-next[disabled]{opacity:.4;cursor:not-allowed}
/* .btn sets display:inline-flex, which beats the UA [hidden] rule — re-assert it
   so JS-hidden quiz buttons (Continue / Get My Custom Plan) actually disappear. */
.quiz-back[hidden],.quiz-next[hidden],.quiz-submit[hidden]{display:none}

@media(max-width:560px){
  .quiz-card{padding:1.8rem 1.3rem 1.4rem;border-radius:18px;max-height:94vh}
  .quiz-step h3{font-size:1.3rem}
  .quiz-options.grid-2{grid-template-columns:1fr}
  .quiz-opt-txt small{font-size:0.74rem}
  .quiz-next,.quiz-submit{padding:0.85rem 1.4rem}
}
body.quiz-lock{overflow:hidden}
