/* ===== TVC — Full Site Styles ===== */
:root {
  --deep-space:  #02040e;
  --signal-navy: #0B1026;
  --purple:      #A855F7;
  --violet:      #C084FC;
  --gold:        #E2B84B;
  --cyan:        #22D3EE;
  --white:       #FFFFFF;
  --muted:       #A7B0C0;

  /* internal aliases */
  --bg:          var(--deep-space);
  --bg-2:        var(--signal-navy);
  --bg-3:        #12183A;
  --purple-lite: var(--violet);
  --purple-deep: #5b21b6;
  --gold-lite:   #f4d06f;
  --gold-deep:   #b8860b;
  --txt:         var(--white);
  --txt-dim:     #D1D5DB;
  --txt-muted:   var(--muted);
  --line:        rgba(255,255,255,.07);
  --line-gold:   rgba(226,184,75,.25);
  --card-bg:     rgba(255,255,255,.035);
  --radius:      10px;
}
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box }
html { scroll-behavior:smooth; font-size:16px }
body {
  font-family:'Inter',system-ui,sans-serif;
  background:var(--deep-space);
  color:var(--txt);
  line-height:1.6;
  overflow-x:hidden;
}
img { display:block; max-width:100% }
a { color:inherit; text-decoration:none }
ul { list-style:none }

/* ── Utilities ─────────────────────────────────────────────── */
.container { max-width:1280px; margin:0 auto; padding:0 40px }
.text-gold   { color:var(--gold) }
.text-purple { color:var(--purple-lite) }
.fw6 { font-weight:600 }
.mt-8 { margin-top:2rem }

.accent-rule {
  display:block; width:80px; height:4px; border-radius:2px;
  background:linear-gradient(90deg, var(--gold-lite), var(--gold-deep));
}
.accent-rule.center { margin:14px auto 0 }

.eyebrow {
  display:block;
  font-size:.75rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--purple-lite); margin-bottom:12px;
}

.section-header { text-align:center; margin-bottom:18px }
.section-header h2 { font-family:'Sora',sans-serif; font-size:1.2rem; font-weight:400; line-height:1.12 }
.section-header .accent-rule { margin-top:8px }
.section-sub { margin-top:18px; color:var(--txt-dim); font-size:1.05rem; max-width:560px; margin-left:auto; margin-right:auto }

/* ── Buttons ───────────────────────────────────────────────── */
.btn {
  display:inline-flex; align-items:center; justify-content:center;
  font-family:'Inter',sans-serif; font-weight:700; font-size:.82rem;
  letter-spacing:.08em; text-transform:uppercase;
  padding:16px 30px; border-radius:4px;
  transition:all .2s; cursor:pointer; border:2px solid transparent;
  white-space:nowrap;
}
.btn-gold {
  background:linear-gradient(180deg, var(--gold-lite), var(--gold-deep));
  color:#1a1206;
  box-shadow:0 4px 20px rgba(226,184,75,.3);
}
.btn-gold:hover { filter:brightness(1.1); transform:translateY(-2px); box-shadow:0 8px 28px rgba(226,184,75,.4) }
.btn-ghost { background:transparent; border-color:var(--gold); color:var(--gold) }
.btn-ghost:hover { background:rgba(226,184,75,.1); transform:translateY(-2px) }
.btn-gold-outline { background:transparent; border-color:var(--gold); color:var(--gold); padding:12px 22px; font-size:.78rem }
.btn-gold-outline:hover { background:var(--gold); color:#1a1206 }
.btn-purple { background:var(--purple-deep); border-color:var(--purple); color:#fff }
.btn-purple:hover { background:var(--purple); transform:translateY(-2px) }

/* ── Header ────────────────────────────────────────────────── */
.site-header {
  position:sticky; top:0; z-index:100;
  background:rgba(5,8,22,.95);
  backdrop-filter:blur(12px);
}
.header-inner {
  display:flex; align-items:center; gap:24px;
  padding-top:16px; padding-bottom:16px;
  max-width:none; padding-left:40px; padding-right:40px;
}
.brand img { height:74px; width:auto }
.main-nav { display:flex; gap:28px; margin-left:auto }
.main-nav a {
  color:var(--txt-dim); font-size:.8rem; font-weight:600; letter-spacing:.08em;
  padding:6px 0; position:relative; transition:color .2s;
}
.main-nav a:hover, .main-nav a.active { color:var(--purple-lite) }
.main-nav a.active::after {
  content:""; position:absolute; left:0; right:0; bottom:-3px;
  height:2px; border-radius:1px; background:var(--purple);
}
.header-cta { margin-left:12px }

/* hamburger */
.nav-toggle {
  display:none; flex-direction:column; gap:5px;
  background:none; border:none; cursor:pointer; padding:8px;
  margin-left:auto;
}
.nav-toggle span {
  display:block; width:24px; height:2px; background:var(--txt);
  border-radius:2px; transition:all .3s;
}
.nav-toggle.open span:nth-child(1) { transform:translateY(7px) rotate(45deg) }
.nav-toggle.open span:nth-child(2) { opacity:0 }
.nav-toggle.open span:nth-child(3) { transform:translateY(-7px) rotate(-45deg) }

/* ── Hero — full-width, image flush right, spans full row height ── */
.hero { position:relative; overflow:hidden }
.hero-bg {
  position:absolute; inset:0; z-index:0;
  background:var(--deep-space);
}
.hero-inner {
  position:relative; z-index:1;
  display:grid; grid-template-columns:2fr 3fr;
  align-items:stretch;
  height:400px;
  padding-left:40px;
  padding-right:0;
}
.hero-copy {
  display:flex; flex-direction:column; justify-content:center;
  padding:22px 40px 22px 0;
}
.hero-copy h1 {
  font-family:'Sora',sans-serif; font-size:clamp(1.4rem, 3vw, 2.2rem); line-height:1.12;
  font-weight:700; letter-spacing:-.01em; color:#fff; white-space:nowrap;
}
.hero-copy .accent-rule { margin:12px 0 12px }
.hero-copy p { color:var(--txt-dim); font-size:.88rem; max-width:420px; margin-bottom:18px }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap }
.hero-actions .btn { padding:12px 22px; font-size:.78rem }
/* ── Hero Subscribe (Deiss CVJ Subscribe step) ─────────── */
.hero-proof-badge {
  display:inline-flex; align-items:center; gap:8px;
  font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  padding:6px 14px; border-radius:20px; margin-bottom:16px;
  background:rgba(226,184,75,.15); border:1px solid rgba(226,184,75,.4);
  color:var(--gold);
}
.hero-subscribe { display:flex; flex-direction:column; gap:10px; margin-top:8px; }
.hero-email-form { display:flex; gap:8px; flex-wrap:wrap; }
.hero-email-input {
  flex:1; min-width:220px; padding:12px 16px;
  background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.2);
  border-radius:var(--radius); color:#fff; font-size:.88rem;
  font-family:'Inter',sans-serif;
}
.hero-email-input::placeholder { color:rgba(255,255,255,.4); }
.hero-email-input:focus { outline:none; border-color:var(--gold); }
.hero-subscribe-note { font-size:.75rem; color:var(--txt-muted); margin:0; }
.hero-services-link { font-size:.78rem; font-weight:600; letter-spacing:.08em; color:var(--txt-dim); }
.hero-services-link:hover { color:var(--gold); }
@media(max-width:600px) { .hero-email-form { flex-direction:column; } }
.hero-art {
  overflow:hidden; position:relative;
}
.hero-art img {
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; object-position:center center;
  display:block;
}

/* ── Trust bar ─────────────────────────────────────────────── */
.trust-bar {
  background:rgba(10,8,26,.9);
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  padding:10px 40px;
  display:flex; align-items:center; justify-content:center;
  gap:18px; flex-wrap:wrap;
  font-size:.8rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase;
  color:var(--txt-dim);
}
.trust-bar .dot { opacity:.35; font-size:1rem }

/* ── How We Help ───────────────────────────────────────────── */
.how { background:var(--bg); padding:40px 0 48px; }
.cards-full { width:100%; padding:0 40px }
.cards {
  display:flex; justify-content:space-between; align-items:flex-start;
  margin-top:18px;
}
.card {
  flex:0 0 auto; width:calc(25% - 12px);
  padding:0 16px; text-align:center; position:relative;
  transition:transform .3s; display:flex; flex-direction:column; align-items:center;
}
.card:hover { transform:translateY(-4px) }
.card + .card::before {
  content:""; position:absolute; left:0; top:12%; bottom:12%;
  width:1px; background:var(--line);
}
.card-icon { margin-bottom:14px; display:flex; justify-content:center }
.card-icon img { height:84px; width:auto; filter:drop-shadow(0 0 10px rgba(168,85,247,.5)) }
.card h3 { font-size:.72rem; font-weight:700; letter-spacing:.04em; margin-bottom:8px }
.card p { color:var(--txt-dim); font-size:.69rem; line-height:1.6 }

/* ── Stats ─────────────────────────────────────────────────── */
.stats {
  background:var(--deep-space);
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.stats-inner {
  display:flex; justify-content:space-between; align-items:center;
  padding:32px 40px; width:100%;
}
.stat { text-align:center; padding:0 8px; position:relative }
.stat + .stat::before {
  content:""; position:absolute; left:0; top:16%; bottom:16%;
  width:1px; background:var(--line);
}
.stat-num {
  display:inline;
  font-family:'Sora',sans-serif; font-weight:400;
  font-size:2.8rem; line-height:1; color:var(--gold);
}
.stat-suffix {
  font-family:'Sora',sans-serif; font-weight:400;
  font-size:2rem; color:var(--gold);
}
.stat-label {
  display:block; margin-top:10px;
  font-size:.72rem; font-weight:600; letter-spacing:.07em;
  color:var(--txt); text-transform:uppercase; line-height:1.45;
}

/* ── About ─────────────────────────────────────────────────── */
.about-section { padding:80px 0 90px; background:var(--bg) }
.about-inner {
  display:grid; grid-template-columns:1fr 1fr;
  gap:60px; align-items:center;
}
.about-copy h2 {
  font-family:'Sora',sans-serif; font-size:2.6rem;
  font-weight:800; line-height:1.12; margin-bottom:6px;
}
.about-copy .accent-rule { margin:20px 0 24px }
.about-copy p { color:var(--txt-dim); margin-bottom:18px; line-height:1.75 }
.about-badges { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; margin-bottom:28px }
.badge {
  background:rgba(168,85,247,.12); border:1px solid rgba(168,85,247,.3);
  color:var(--purple-lite); font-size:.78rem; font-weight:600;
  letter-spacing:.06em; padding:6px 14px; border-radius:20px;
}
.about-card-stack { display:flex; flex-direction:column; gap:16px }
.about-card {
  display:flex; align-items:flex-start; gap:16px;
  background:var(--card-bg); border:1px solid var(--line);
  border-radius:var(--radius); padding:20px 22px;
  transition:border-color .2s, transform .2s;
}
.about-card:hover { border-color:rgba(168,85,247,.4); transform:translateX(4px) }
.ac-icon { font-size:1.5rem; flex:0 0 auto; margin-top:2px; color:var(--gold) }
.ac-text strong { display:block; font-weight:700; margin-bottom:4px; color:var(--txt) }
.ac-text span { font-size:.9rem; color:var(--txt-dim); line-height:1.5 }

/* ── Services Expanded ─────────────────────────────────────── */
.services-section { padding:80px 0 90px; background:var(--bg-2) }
.services-grid {
  display:grid; grid-template-columns:repeat(2,1fr);
  gap:24px; margin-top:0;
}
.service-card {
  background:var(--card-bg); border:1px solid var(--line);
  border-radius:var(--radius); padding:36px 32px;
  position:relative; transition:border-color .2s, transform .3s;
}
.service-card:hover {
  border-color:rgba(168,85,247,.4);
  transform:translateY(-4px);
  box-shadow:0 16px 48px rgba(0,0,0,.3);
}
.sc-num {
  font-family:'Sora',sans-serif; font-size:.7rem; font-weight:800;
  letter-spacing:.14em; color:var(--purple-lite);
  background:rgba(168,85,247,.1); border:1px solid rgba(168,85,247,.25);
  display:inline-flex; align-items:center; justify-content:center;
  width:36px; height:36px; border-radius:50%; margin-bottom:16px;
}
.sc-icon { margin-bottom:16px }
.sc-icon img { width:44px; height:44px; filter:drop-shadow(0 0 8px rgba(168,85,247,.4)) }
.service-card h3 {
  font-family:'Sora',sans-serif; font-size:1.25rem; font-weight:700;
  margin-bottom:12px; color:var(--txt);
}
.service-card > p { color:var(--txt-dim); font-size:.95rem; line-height:1.7; margin-bottom:20px }
.service-card ul { margin-bottom:24px }
.service-card ul li {
  color:var(--txt-dim); font-size:.9rem; padding:6px 0;
  border-bottom:1px solid var(--line); display:flex; align-items:center; gap:10px;
}
.service-card ul li::before {
  content:""; width:6px; height:6px; border-radius:50%;
  background:var(--purple-lite); flex:0 0 auto;
}
.sc-link {
  font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:var(--gold); transition:color .2s;
}
.sc-link:hover { color:var(--gold-lite) }

/* ── Process ───────────────────────────────────────────────── */
.process-section { padding:80px 0 90px; background:var(--bg) }
.process-steps {
  display:flex; align-items:flex-start; gap:0;
  margin-top:8px;
}
.process-step {
  flex:1; background:var(--card-bg); border:1px solid var(--line);
  border-radius:var(--radius); padding:32px 28px; text-align:center;
  transition:border-color .2s, transform .3s;
}
.process-step:hover { border-color:rgba(226,184,75,.4); transform:translateY(-4px) }
.ps-num {
  font-family:'Sora',sans-serif; font-size:2rem; font-weight:800;
  color:var(--gold); margin-bottom:14px; display:block;
}
.process-step h3 { font-size:1rem; font-weight:700; margin-bottom:10px; color:var(--txt) }
.process-step p { font-size:.88rem; color:var(--txt-dim); line-height:1.65 }
.process-arrow {
  color:var(--purple-lite); font-size:1.5rem; opacity:.5;
  align-self:center; flex:0 0 24px; text-align:center; margin:0 -4px;
}

/* ── Results ───────────────────────────────────────────────── */
.results-section { padding:80px 0 90px; background:var(--bg-2) }
.results-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px }
.result-card {
  background:var(--card-bg); border:1px solid var(--line);
  border-radius:var(--radius); padding:36px 30px;
  transition:border-color .2s, transform .3s;
}
.result-card:hover { border-color:var(--line-gold); transform:translateY(-4px) }
.rc-metric {
  font-family:'Sora',sans-serif; font-size:3rem; font-weight:800;
  line-height:1; margin-bottom:4px;
}
.rc-label {
  font-size:.78rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  color:var(--txt-dim); margin-bottom:16px; border-bottom:1px solid var(--line);
  padding-bottom:14px;
}
.result-card p { color:var(--txt-dim); font-size:.92rem; line-height:1.7; margin-bottom:18px }
.rc-tag {
  display:inline-block; font-size:.72rem; font-weight:600; letter-spacing:.06em;
  background:rgba(168,85,247,.1); border:1px solid rgba(168,85,247,.25);
  color:var(--purple-lite); padding:4px 12px; border-radius:20px;
}

/* ── Testimonials ──────────────────────────────────────────── */
.testimonials-section { padding:80px 0 90px; background:var(--bg) }
.testi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px }
.testi-card {
  background:var(--card-bg); border:1px solid var(--line);
  border-radius:var(--radius); padding:32px 28px;
  display:flex; flex-direction:column; gap:16px;
  transition:border-color .2s;
}
.testi-card:hover { border-color:rgba(226,184,75,.3) }
.testi-stars { color:var(--gold); font-size:1rem; letter-spacing:2px }
.testi-card > p { color:var(--txt-dim); font-size:.95rem; line-height:1.75; flex:1 }
.testi-author { display:flex; align-items:center; gap:12px; margin-top:auto }
.testi-avatar {
  width:42px; height:42px; border-radius:50%; flex:0 0 42px;
  background:linear-gradient(135deg, var(--purple-deep), var(--purple));
  display:flex; align-items:center; justify-content:center;
  font-weight:700; font-size:.85rem; color:#fff;
}
.testi-author strong { display:block; font-size:.9rem; font-weight:700 }
.testi-author span { font-size:.8rem; color:var(--txt-dim) }
.testi-rating {
  display:flex; align-items:center; justify-content:center;
  gap:14px; margin-top:36px;
}
.testi-stars-big { color:var(--gold); font-size:1.4rem; letter-spacing:3px }
.testi-score { font-size:.9rem; font-weight:600; color:var(--txt-dim) }

/* ── CTA ───────────────────────────────────────────────────── */
.cta {
  position:relative; overflow:hidden;
  background:linear-gradient(100deg, #1a0d36 0%, #3d1a72 55%, #4a1d8a 100%);
}
.cta-flag-overlay {
  position:absolute; inset:0; left:0; width:38%;
  background:linear-gradient(to right, rgba(0,0,128,.18), transparent);
  pointer-events:none;
}
.cta::before {
  content:""; position:absolute; inset:0; opacity:.06;
  background-image:repeating-linear-gradient(
    0deg, transparent, transparent 8px,
    rgba(255,0,0,.8) 8px, rgba(255,0,0,.8) 9px
  );
  pointer-events:none;
}
.cta-inner {
  position:relative; display:flex; align-items:center;
  gap:32px; padding:36px 40px;
}
.cta-crest { width:90px; height:90px; flex:0 0 auto; filter:drop-shadow(0 0 18px rgba(168,85,247,.5)) }
.cta-copy { flex:1 }
.cta-copy h2 { font-family:'Sora',sans-serif; font-size:1.75rem; font-weight:800; letter-spacing:.015em }
.cta-copy p { color:rgba(255,255,255,.8); font-size:1rem; margin-top:6px; max-width:520px }
.cta-points {
  display:flex; gap:20px; margin-top:12px;
  font-size:.82rem; font-weight:600; color:rgba(255,255,255,.7);
}
.cta-btn { flex:0 0 auto }

/* ── Footer ────────────────────────────────────────────────── */
.site-footer { background:var(--bg-3); border-top:1px solid var(--line) }
.footer-top { padding:60px 0 50px }
.footer-top-inner {
  display:grid; grid-template-columns:2fr 1fr 1fr 1.5fr; gap:48px; align-items:start;
}
.footer-brand .footer-logo { height:52px; width:auto; margin-bottom:18px }
.footer-brand p { color:var(--txt-dim); font-size:.88rem; line-height:1.7; max-width:320px; margin-bottom:16px }
.footer-badges { display:flex; gap:10px }
.footer-badges span {
  font-size:.72rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase;
  border:1px solid var(--line-gold); color:var(--gold); padding:4px 12px; border-radius:20px;
}
.footer-nav-col h4 {
  font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  color:var(--txt-dim); margin-bottom:18px;
}
.footer-nav-col a {
  display:block; color:var(--txt-dim); font-size:.88rem;
  padding:5px 0; transition:color .2s;
}
.footer-nav-col a:hover { color:var(--purple-lite) }
.footer-contact-col h4 {
  font-size:.72rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  color:var(--txt-dim); margin-bottom:18px;
}
.footer-contact-col a {
  display:block; color:var(--gold); font-size:.88rem;
  padding:4px 0; transition:opacity .2s;
}
.footer-contact-col a:hover { opacity:.8 }
.footer-addr { color:var(--txt-dim); font-size:.84rem; line-height:1.65; margin-top:10px }
.footer-mid {
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
  padding:14px 0; text-align:center;
  font-size:.8rem; color:var(--txt-dim); line-height:1.8;
}
.footer-states { opacity:.6 }
.footer-bottom { padding:18px 0 }
.footer-bottom-inner {
  display:flex; align-items:center; justify-content:space-between;
  font-size:.78rem; color:var(--txt-muted); flex-wrap:wrap; gap:12px;
}
.footer-links-row { display:flex; gap:20px }
.footer-links-row a { transition:color .2s }
.footer-links-row a:hover { color:var(--txt-dim) }

/* ── Scroll animations ─────────────────────────────────────── */
.fade-in, .fade-in-right {
  opacity:0; transform:translateY(28px);
  transition:opacity .65s ease, transform .65s ease;
}
.fade-in-right { transform:translateX(28px) }
.fade-in.visible, .fade-in-right.visible {
  opacity:1; transform:translate(0,0);
}

/* ── Responsive ────────────────────────────────────────────── */
@media(max-width:1100px) {
  .hero-copy h1 { font-size:2.2rem }
  .footer-top-inner { grid-template-columns:1fr 1fr; gap:36px }
}
@media(max-width:900px) {
  .container { padding:0 24px }
  .hero-inner { grid-template-columns:1fr; gap:36px; padding:48px 24px 60px }
  .hero-art { order:-1 }
  .hero-copy h1 { font-size:2rem }
  .about-inner { grid-template-columns:1fr; gap:40px }
  .services-grid { grid-template-columns:1fr }
  .process-steps { flex-direction:column; gap:16px }
  .process-arrow { transform:rotate(90deg); align-self:center }
  .results-grid, .testi-grid { grid-template-columns:1fr }
  .cards { grid-template-columns:repeat(2,1fr); gap:36px }
  .card::before { display:none }
  .cards .card { border-bottom:1px solid var(--line); padding-bottom:36px }
  .stats-inner { grid-template-columns:repeat(2,1fr); gap:28px 0; padding:36px 24px }
  .stat::before { display:none }
  .cta-inner { flex-direction:column; text-align:center; padding:40px 24px }
  .cta-points { justify-content:center }
  .main-nav { display:none; position:absolute; top:100%; left:0; right:0; z-index:200; flex-direction:column; background:rgba(5,8,22,.98); border-bottom:1px solid var(--line); padding:16px 24px 24px; gap:0 }
  .main-nav.open { display:flex }
  .main-nav a { padding:12px 0; border-bottom:1px solid var(--line); font-size:.9rem }
  .main-nav a:last-child { border:none }
  .header-cta { display:none }
  .nav-toggle { display:flex }
  .footer-top-inner { grid-template-columns:1fr; gap:32px }
  .footer-bottom-inner { flex-direction:column; text-align:center; gap:8px }
}
@media(max-width:600px) {
  .hero-copy h1 { font-size:1.7rem }
  .section-header h2 { font-size:1.9rem }
  .about-copy h2 { font-size:2rem }
  .trust-bar { gap:10px; font-size:.72rem }
  .cta-copy h2 { font-size:1.4rem }
  .stat-num { font-size:2.2rem }
}

/* ── Value Ladder Section ──────────────────────────────── */
.ladder-section { padding:80px 0; background:var(--signal-navy); }
.ladder-steps {
  display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;
  align-items:start; gap:0; margin-top:48px;
}
.ladder-step {
  background:var(--card-bg); border:1px solid var(--line);
  border-radius:var(--radius); padding:24px 20px;
  display:flex; flex-direction:column; gap:10px;
  transition:border-color .2s, transform .2s;
}
.ladder-step:hover { border-color:var(--gold); transform:translateY(-4px); }
.ladder-arrow {
  display:flex; align-items:center; justify-content:center;
  color:var(--gold); font-size:1.4rem; padding:0 8px; margin-top:48px;
}
.ls-rung {
  font-size:.65rem; font-weight:700; letter-spacing:.14em;
  color:var(--txt-muted); text-transform:uppercase;
}
.ls-price {
  font-family:'Sora',sans-serif; font-size:1.9rem; font-weight:800;
  color:var(--gold); line-height:1;
}
.ls-mo { font-size:1rem; font-weight:500; color:var(--txt-muted); }
.ls-label {
  display:inline-block; font-size:.68rem; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase;
  padding:3px 10px; border-radius:20px;
  background:rgba(168,85,247,.2); border:1px solid rgba(168,85,247,.3);
  color:var(--violet); width:fit-content;
}
.ladder-step h3 { font-family:'Sora',sans-serif; font-size:.95rem; font-weight:700; }
.ladder-step p  { font-size:.82rem; color:var(--txt-dim); flex:1; }
.ls-cta { font-size:.8rem; font-weight:600; color:var(--purple-lite); }
.ls-cta:hover { color:var(--gold); }
.ladder-cta {
  display:flex; flex-direction:column; align-items:center;
  gap:14px; margin-top:48px; text-align:center;
}
.ladder-note { font-size:.85rem; color:var(--txt-muted); }
@media(max-width:1100px) {
  .ladder-steps { grid-template-columns:1fr 1fr; gap:16px; }
  .ladder-arrow  { display:none; }
}
@media(max-width:600px) {
  .ladder-steps { grid-template-columns:1fr; }
}

/* ── Capital Bridge Section (Gunderson) ────────────────── */
.capital-bridge { padding:80px 0; background:var(--deep-space); border-top:1px solid var(--line); }
.bridge-inner {
  display:grid; grid-template-columns:1.4fr 1fr;
  gap:60px; align-items:center;
}
.bridge-story h2 { font-family:'Sora',sans-serif; font-size:2rem; font-weight:800; line-height:1.15; margin-bottom:20px; }
.bridge-story p { font-size:.95rem; color:var(--txt-dim); line-height:1.7; margin-bottom:14px; }
.bridge-highlight { color:var(--txt-dim); font-size:.95rem; padding:16px 20px; border-left:3px solid var(--gold); background:rgba(226,184,75,.07); border-radius:0 6px 6px 0; }
.bridge-story .btn { margin-top:24px; }
.bridge-stats { display:flex; flex-direction:column; gap:24px; }
.bridge-stat { padding:20px 24px; background:var(--card-bg); border:1px solid var(--line); border-radius:var(--radius); }
.bs-num { font-family:'Sora',sans-serif; font-size:2rem; font-weight:800; }
.bs-label { font-size:.82rem; color:var(--txt-muted); margin-top:4px; }
@media(max-width:900px) { .bridge-inner { grid-template-columns:1fr; gap:36px; } }

/* ── Cert Unlock Section ───────────────────────────────── */
.cert-section { padding:80px 0; background:var(--bg-3); }
.cert-grid {
  display:grid; grid-template-columns:repeat(4,1fr);
  gap:24px; margin-top:48px;
}
.cert-card {
  background:var(--card-bg); border:1px solid var(--line);
  border-radius:var(--radius); padding:28px 24px;
  display:flex; flex-direction:column; gap:12px;
  transition:border-color .2s;
}
.cert-card:hover { border-color:var(--gold); }
.cert-badge {
  display:inline-block; font-family:'Sora',sans-serif;
  font-weight:700; font-size:.75rem; letter-spacing:.1em;
  padding:4px 12px; border-radius:20px; width:fit-content;
  background:rgba(168,85,247,.2); border:1px solid rgba(168,85,247,.4);
  color:var(--violet);
}
.cert-badge--cyan { background:rgba(34,211,238,.15); border-color:rgba(34,211,238,.4); color:var(--cyan); }
.cert-badge--gold { background:rgba(226,184,75,.15);  border-color:rgba(226,184,75,.4);  color:var(--gold); }
.cert-amount       { font-family:'Sora',sans-serif; font-size:2.2rem; font-weight:800; line-height:1; color:var(--gold); margin-top:4px; }
.cert-amount-label { font-size:.82rem; color:var(--txt-muted); margin-top:-4px; }
.cert-list         { list-style:none; padding:0; display:flex; flex-direction:column; gap:8px; flex:1; }
.cert-list li      { font-size:.88rem; color:var(--txt-dim); padding-left:18px; position:relative; }
.cert-list li::before { content:'✓'; position:absolute; left:0; color:var(--gold); font-weight:700; }
.cert-link         { font-size:.82rem; font-weight:600; color:var(--purple-lite); margin-top:8px; }
.cert-link:hover   { color:var(--gold); }
.cert-cta-bar      { display:flex; flex-direction:column; align-items:center; gap:16px; margin-top:48px; text-align:center; }
.cert-note         { font-size:.9rem; color:var(--txt-muted); }
.cert-note a       { color:var(--purple-lite); }
@media(max-width:1024px) { .cert-grid { grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px)  { .cert-grid { grid-template-columns:1fr; } }
