/* ═══════════════════════════════════════════════════════════════
   UNTAPPED AGENTS — Premium Light Theme — v3.0
   Design System: Apple HIG + Linear + Stripe
   Applied AFTER global.css and homepage-v2.css (final override)
   ═══════════════════════════════════════════════════════════════ */

/* ── 1. DESIGN TOKENS ── */
:root{
  /* Surface palette — Apple-grade grey scale */
  --bg0:#ffffff;
  --bg1:#f5f5f7;
  --bg2:#e8e8ed;
  --bg3:#d2d2d7;
  --bg4:#c7c7cc;
  --bdr:rgba(0,0,0,.05);
  --bdrh:rgba(0,0,0,.09);

  /* Text hierarchy */
  --td:#86868b;
  --tm:#6e6e73;
  --tmd:#48484a;
  --tb:#1d1d1f;
  --tl:#1d1d1f;
  --tbr:#0a0a0a;

  /* Brand — rose accent */
  --cy:#9E5261;
  --cyd:rgba(158, 82, 97,.04);
  --cym:rgba(158, 82, 97,.07);
  --cyg:rgba(158, 82, 97,.11);

  /* Typography — Inter primary, DM Sans fallback */
  --font-display:'Inter','DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --font-body:'Inter','DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;

  /* Type scale */
  --text-xs:.72rem;
  --text-sm:.82rem;
  --text-base:.95rem;
  --text-lg:1.15rem;
  --text-xl:1.3rem;

  /* Space tokens — 8px base rhythm, generous padding */
  --space-1:0.5rem;
  --space-2:1rem;
  --space-3:1.5rem;
  --space-4:2rem;
  --space-5:3rem;
  --space-6:4rem;
  --space-8:6rem;
  --space-10:8rem;

  /* Premium layered shadow system — subtle, multi-layer depth */
  --shadow-s:
    0 1px 2px rgba(0,0,0,.03),
    0 2px 4px rgba(0,0,0,.02),
    0 4px 8px rgba(0,0,0,.015);
  --shadow-m:
    0 1px 2px rgba(0,0,0,.03),
    0 4px 8px rgba(0,0,0,.03),
    0 12px 20px rgba(0,0,0,.025);
  --shadow-l:
    0 2px 4px rgba(0,0,0,.02),
    0 8px 16px rgba(0,0,0,.035),
    0 24px 48px rgba(0,0,0,.04);
  --shadow-xl:
    0 2px 4px rgba(0,0,0,.02),
    0 12px 24px rgba(0,0,0,.04),
    0 40px 80px rgba(0,0,0,.06);

  /* Easing */
  --ease-out:cubic-bezier(.25,1,.5,1);
  --ease-spring:cubic-bezier(.16,1,.3,1);
}

/* ── 2. RESET DARK-MODE ARTIFACTS + BASE ── */
body::after,body::before{display:none!important}
body{
  background:var(--bg0);
  color:var(--tb);
  font-family:var(--font-body);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
::selection{background:var(--cy);color:#fff}
html{scroll-behavior:auto}

/* ── Subtle noise texture on grey sections ── */
.v2-agents,.v2-pricing{position:relative}
.v2-agents::before,.v2-pricing::before{
  content:'';position:absolute;inset:0;
  background:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.012'/%3E%3C/svg%3E");
  pointer-events:none;z-index:0;
}

/* ── Utility: screen-reader only ── */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ═══════════════════════════════════════════════════════════════ */
/* 3. NAV — Apple frosted glass                                    */
/* ═══════════════════════════════════════════════════════════════ */
nav{
  background:#0b0a1a;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  border-bottom:1px solid rgba(255,255,255,0.06);
  box-shadow:none;
  transition:all .35s var(--ease-out);
}
nav.scrolled{
  padding:.6rem 2rem;
  background:#0b0a1a;
  box-shadow:0 4px 20px rgba(0,0,0,.2);
}
/* Align nav content with the site's 1080px content rail: the logo lines up
   with the left content edge and the links with the right. Below
   1080px + 4rem the gutter stays at the original 2rem. Percentage (not vw)
   so the scrollbar never skews the math. */
nav,nav.scrolled{
  padding-left:max(2rem,calc((100% - 1080px)/2));
  padding-right:max(2rem,calc((100% - 1080px)/2));
}
.logo{
  font-family:var(--font-body);
  font-size:.85rem;font-weight:700;color:rgba(255,255,255,0.85);
  transition:opacity .2s;letter-spacing:-.02em;
}
.logo:hover{opacity:.7}
.logo{display:inline-flex;align-items:center}
.logo-mark{flex-shrink:0;display:block;margin-right:.6rem}
.logo b{color:rgba(255,255,255,0.85);text-shadow:none;font-weight:700;margin-left:.27em}

.nv a{
  color:rgba(255,255,255,0.85);font-family:var(--font-body);font-size:.85rem;
  font-weight:500;letter-spacing:0;text-transform:none;transition:color .2s;
}
.nv a:hover{color:#fff}
.nv a.act{color:var(--cy)}
.nv .cta{
  background:rgba(255,255,255,0.1);color:#fff;border-radius:980px;
  padding:.5rem 1.25rem;font-size:.85rem;font-weight:500;
  border:1px solid rgba(255,255,255,0.25);
  letter-spacing:0;transition:all .3s var(--ease-out);
}
.nv .cta:hover{
  background:rgba(255,255,255,0.18);
  box-shadow:0 4px 12px rgba(0,0,0,.2);
  transform:translateY(-1px);
}

/* Hamburger button */
.mbtn{
  color:#fff;border-color:rgba(255,255,255,.2);
  font-family:var(--font-body);display:none;
  flex-direction:column;justify-content:center;align-items:center;
  gap:5px;width:40px;height:40px;padding:0;
  background:none;border:none;cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.mbtn-bar{
  display:block;width:20px;height:1.5px;
  background:#fff;border-radius:2px;
  transition:all .3s var(--ease-out);transform-origin:center;
}
/* Hamburger → X animation */
.mbtn[aria-expanded="true"] .mbtn-bar:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.mbtn[aria-expanded="true"] .mbtn-bar:nth-child(2){opacity:0;transform:scaleX(0)}
.mbtn[aria-expanded="true"] .mbtn-bar:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* ── Nav Dropdown — dark panel ── */
.nav-dd-menu{
  background:rgba(18,16,36,.95);
  backdrop-filter:saturate(180%) blur(20px);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    0 4px 12px rgba(0,0,0,.2),
    0 16px 40px rgba(0,0,0,.3);
  border-radius:16px;overflow:visible;
  transform-origin:top center;
}
.dd-grid{background:transparent;gap:0}
.dd-item{
  background:transparent;border-radius:10px;margin:3px 6px;
  transition:background .2s;
}
.dd-item:hover{background:rgba(255,255,255,.06)}
.dd-item:focus{background:rgba(255,255,255,.06);outline:none}
.dd-item:focus-visible{outline:2px solid var(--cy);outline-offset:-2px;border-radius:10px}
.dd-item:hover .dd-name{color:var(--cy)}
.dd-num{color:rgba(255,255,255,.5);font-family:var(--font-body);font-size:.5rem;font-weight:700;letter-spacing:.05em}
.dd-icon{font-size:inherit;color:var(--cy)}
.dd-svg{display:block}
.dd-name{color:rgba(255,255,255,.85);font-family:var(--font-body);font-size:.82rem;font-weight:600;letter-spacing:-.01em;transition:color .2s}
.dd-role{color:rgba(255,255,255,.45);font-family:var(--font-body);font-size:.65rem;letter-spacing:0}
.dd-foot{background:transparent;border-top:0.5px solid rgba(255,255,255,.08);padding:.65rem 1rem}
.dd-all{color:var(--cy);font-family:var(--font-body);font-size:.75rem;font-weight:600;letter-spacing:.01em;transition:color .2s}
.dd-all:hover{color:#ff7a8a}

/* ── Nav Dropdown 3-col ── */
.dd-grid-3{grid-template-columns:1fr 1fr 1fr}

/* ═══════════════════════════════════════════════════════════════ */
/* 4. HERO — Dark section, massive type, shimmer                   */
/* ═══════════════════════════════════════════════════════════════ */
/* ── HERO — Pure black, ambient gradient mesh, massive type ── */
.v2-hero{
  padding:0;min-height:100vh;
  background:#000;
  display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
}
/* Ambient gradient mesh — organic multi-color glow */
.v2-hero-grain{
  position:absolute;top:-20%;left:50%;transform:translateX(-50%);
  width:140%;height:80%;z-index:0;pointer-events:none;
  background:
    radial-gradient(ellipse 50% 60% at 30% 40%,rgba(52,211,153,.07),transparent 60%),
    radial-gradient(ellipse 40% 50% at 70% 30%,rgba(56,189,248,.04),transparent 55%),
    radial-gradient(ellipse 60% 40% at 50% 80%,rgba(168,85,247,.03),transparent 50%);
  animation:heroGlowDrift 20s ease-in-out infinite alternate;
}
@keyframes heroGlowDrift{
  0%{transform:translateX(-50%) translateY(0) scale(1)}
  100%{transform:translateX(-50%) translateY(20px) scale(1.02)}
}
/* Subtle grid pattern — fades toward edges */
.v2-hero-glow{
  position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:80px 80px;
  mask-image:radial-gradient(ellipse 70% 50% at 50% 40%,black 20%,transparent 70%);
  -webkit-mask-image:radial-gradient(ellipse 70% 50% at 50% 40%,black 20%,transparent 70%);
}
.v2-hero-bg-orbs{display:none}
/* Bottom border */
.v2-hero::before{
  content:'';position:absolute;bottom:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);
  z-index:5;
}
.v2-hero-content{
  max-width:900px;position:relative;z-index:10;
  text-align:center;overflow:visible;
  padding:8rem 1.5rem 5rem;
  display:flex;flex-direction:column;align-items:center;
}

/* Eyebrow */
.v2-hero-tag{
  border:none;background:none;padding:0;
  font-family:'DM Serif Display',serif;
  font-size:.975rem;font-weight:400;font-style:italic;color:rgba(255,255,255,.55);
  letter-spacing:.02em;margin:0 auto 2rem;
  border-radius:0;display:inline-flex;text-transform:none;
  animation:fu 1s cubic-bezier(.16,1,.3,1) .1s both;
}
.v2-hero-tag::before{display:none}
.v2-hero-tag-pulse{display:none}
/* Desktop-only bump for the hero eyebrow — mobile keeps the .975rem above */
@media (min-width: 768px){
  .v2-hero-tag{font-size:1.15rem}
}

/* Headline — massive */
.v2-hero h1{
  font-family:var(--font-body);
  font-size:clamp(3rem,7vw,5.5rem);
  font-weight:700;color:#f5f5f7;
  line-height:1.05;letter-spacing:-.055em;
  margin-bottom:1.5rem;
  animation:fu 1s cubic-bezier(.16,1,.3,1) .2s both;
  overflow:visible;max-width:900px;
  margin-left:auto;margin-right:auto;
}

/* 85% — same white as headline */
.hero-stat{
  display:inline;font-weight:700;
  color:#f5f5f7;-webkit-text-fill-color:#f5f5f7;
  background:none;-webkit-background-clip:unset;background-clip:unset;
  animation:none;
}

/* em = green italic payoff, drops to its own line */
.v2-hero h1 em{
  font-family:inherit;font-style:italic;font-weight:600;
  color:var(--cy);-webkit-text-fill-color:var(--cy);
  display:block;margin-top:.1em;position:relative;
}
.v2-hero h1 em::after{display:none}

.hero-dot{display:none}

@keyframes shimmer-pro{
  0%{background-position:100% 50%}
  90.91%{background-position:0% 50%}
  100%{background-position:0% 50%}
}

/* Sub */
.v2-hero-sub{
  font-family:var(--font-body);font-size:clamp(1.125rem,1.8vw,1.375rem);
  color:rgba(255,255,255,.5);font-weight:400;line-height:1.5;
  max-width:420px;margin:2rem auto 0;
  letter-spacing:-.02em;
  animation:fu 1s cubic-bezier(.16,1,.3,1) .35s both;
  position:relative;padding-bottom:0;
}
.v2-hero-sub::after{display:none}

.v2-hero-kicker{display:none}

/* ── Buttons — rounded rect, not pills ── */
.bp{
  font-family:var(--font-body);font-size:.9375rem;font-weight:600;
  letter-spacing:0;text-transform:none;border-radius:12px;
  padding:.875rem 2rem;background:#1d1d1f;color:#f5f5f7;
  border:1px solid rgba(255,255,255,0.06);
  box-shadow:var(--shadow-m);
  transition:all .25s cubic-bezier(.16,1,.3,1);cursor:pointer;
  display:inline-flex;align-items:center;gap:.5rem;
}
.bp:hover{
  background:#2d2d2f;
  box-shadow:var(--shadow-l),0 0 0 1px rgba(255,255,255,0.08);
  transform:translateY(-1px);
}
.bp:active{transform:translateY(0);box-shadow:var(--shadow-s)}

.bs{
  font-family:var(--font-body);font-size:.9375rem;font-weight:500;
  letter-spacing:0;text-transform:none;border-radius:12px;
  padding:.875rem 2rem;border:1px solid rgba(0,0,0,.1);
  color:var(--tl);background:transparent;
  transition:all .25s cubic-bezier(.16,1,.3,1);cursor:pointer;
  display:inline-flex;align-items:center;gap:.5rem;
}
.bs:hover{
  border-color:rgba(0,0,0,.25);color:var(--tbr);
  background:rgba(0,0,0,.02);transform:translateY(-1px);
}
.bs:active{transform:translateY(0)}

/* Hero buttons */
.v2-hero .bp{
  background:#f5f5f7;color:#000;border:none;font-weight:600;
  box-shadow:none;
}
.v2-hero .bp:hover{
  background:#fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.1),0 8px 40px rgba(255,255,255,.08);
  transform:translateY(-1px);
}
.v2-hero .bs{
  border-color:rgba(255,255,255,.15);color:rgba(255,255,255,.7);font-weight:500;
}
.v2-hero .bs:hover{
  border-color:rgba(255,255,255,.3);color:#fff;
  background:rgba(255,255,255,.04);
}

.v2-hero-acts{
  animation:fu 1s cubic-bezier(.16,1,.3,1) .5s both;
  gap:1rem;margin-top:3rem;
}

/* ── Counter stats ── */
.v2-hero-stats{
  border-top:1px solid rgba(255,255,255,.08);padding-top:3rem;
  margin-top:5rem;gap:3.5rem;animation:fu 1s cubic-bezier(.16,1,.3,1) .65s both;
}
.v2-hs-num{
  font-family:var(--font-body);font-size:2rem;font-weight:700;
  letter-spacing:-.04em;line-height:1;
}
.v2-hs-num[data-count]{visibility:hidden}
.v2-hs-num[data-count].counter-ready{visibility:visible}
.v2-hero .v2-hs-num,
.v2-hero .v2-hs-num[data-count],
.v2-hero .v2-hs-num[data-count].counter-ready{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
.v2-hs-label{
  font-family:var(--font-body);font-size:.6875rem;font-weight:500;
  text-transform:uppercase;letter-spacing:.06em;
  margin-top:.6rem;display:block;
}
.v2-hero .v2-hs-label{
  color:rgba(255,255,255,.55)!important;
  -webkit-text-fill-color:rgba(255,255,255,.55)!important;
}

/* ═══════════════════════════════════════════════════════════════ */
/* TRUST STRIP (scrolling marquee)                                 */
/* ═══════════════════════════════════════════════════════════════ */
.v2-trust{padding:0;background:var(--bg0);overflow:hidden;position:relative}
.v2-trust::before,.v2-trust::after{content:'';position:absolute;top:0;bottom:0;width:120px;z-index:2;pointer-events:none}
.v2-trust::before{left:0;background:linear-gradient(to right,var(--bg0),transparent)}
.v2-trust::after{right:0;background:linear-gradient(to left,var(--bg0),transparent)}
.v2-trust-track{
  width:100%;overflow:hidden;
  background:linear-gradient(180deg,#f5f5f7 0%,#ededef 100%);
  border-top:1px solid rgba(0,0,0,.03);
  border-bottom:1px solid rgba(0,0,0,.03);
  padding:.8rem 0;
  mask-image:linear-gradient(to right,transparent 0%,black 10%,black 90%,transparent 100%);
  -webkit-mask-image:linear-gradient(to right,transparent 0%,black 10%,black 90%,transparent 100%);
}
.v2-trust-logos{
  display:flex;align-items:center;width:max-content;
  animation:marquee 40s linear infinite;will-change:transform;
}
.v2-trust-label{
  font-family:var(--font-body);font-size:.85rem;font-weight:600;
  color:var(--tbr);letter-spacing:-.01em;opacity:.3;
  white-space:nowrap;flex-shrink:0;padding:0 1.75rem;
}
.v2-trust-logo{
  font-family:var(--font-body);font-size:.85rem;font-weight:600;
  color:var(--tbr);letter-spacing:-.01em;opacity:.3;
  white-space:nowrap;flex-shrink:0;padding:0 1.75rem;
  transition:opacity .3s ease;
}
.v2-trust-track:hover .v2-trust-logos{animation-play-state:paused}
.v2-trust-track:hover .v2-trust-logo{opacity:.5}
@keyframes marquee{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-33.333%,0,0)}}

/* ═══════════════════════════════════════════════════════════════ */
/* 5. SECTION HEADERS — Clean hierarchy                            */
/* ═══════════════════════════════════════════════════════════════ */
.v2-shc{margin-bottom:var(--space-4)}
.v2-sl{
  font-family:var(--font-body);font-size:.78rem;font-weight:600;
  color:var(--cy);letter-spacing:.08em;
}
.v2-sl::before{display:none}
.v2-sh{
  font-family:var(--font-body);
  font-size:clamp(1.75rem,3.5vw,2.75rem);
  font-weight:700;color:var(--tbr);
  letter-spacing:-.035em;line-height:1.1;
  margin-bottom:var(--space-2);
}
.v2-sd{
  font-family:var(--font-body);font-size:1.1rem;
  color:var(--tmd);font-weight:400;line-height:1.65;
  max-width:520px;
}

/* ═══════════════════════════════════════════════════════════════ */
/* 6. HOW IT WORKS — 3-column with numbered steps                  */
/* ═══════════════════════════════════════════════════════════════ */
.v2-how{padding:var(--space-8) 2rem var(--space-6);background:var(--bg0)}
.v2-how-grid{gap:3rem;max-width:960px}
.v2-how-step{
  padding:var(--space-4) var(--space-3);
  transition:transform .3s var(--ease-out);
}
.v2-how-step:hover{transform:translateY(-2px)}
.v2-how-num{
  width:auto;height:auto;border:none;background:none;
  font-family:var(--font-body);font-size:3rem;font-weight:800;
  color:var(--tl);padding:0;margin-bottom:var(--space-3);
  border-radius:0;display:block;opacity:.15;line-height:1;
}
.v2-how-step h3{
  font-family:var(--font-body);font-size:1.2rem;font-weight:600;
  color:var(--tbr);margin-bottom:.65rem;letter-spacing:-.01em;
}
.v2-how-step p{
  font-family:var(--font-body);font-size:.95rem;color:var(--tmd);
  line-height:1.7;max-width:320px;
}
/* Subtle dividers between steps */
.v2-how-grid .v2-how-step:not(:last-child){
  border-right:0.5px solid rgba(0,0,0,.05);position:relative;
}
.v2-how-grid .v2-how-step:not(:last-child)::after{
  content:'';position:absolute;right:-1.5rem;top:50%;
  transform:translateY(-50%);width:3rem;height:1px;
  background:linear-gradient(90deg,transparent,rgba(0, 0, 0,.08),transparent);
  opacity:.7;
}

/* ═══════════════════════════════════════════════════════════════ */
/* 6b. RESULTS — Left-aligned to break monotony                    */
/* ═══════════════════════════════════════════════════════════════ */
.v2-results{
  padding:var(--space-8) 2rem;background:var(--bg0);
  border-top:0.5px solid rgba(0,0,0,.04);
}
.v2-results-inner{max-width:1080px;margin:0 auto}
.v2-results-lead{margin-bottom:var(--space-6)}
/* Left-alignment to break centered section monotony */
.v2-results .v2-shc{text-align:left}
.v2-results .v2-sh{font-size:clamp(1.5rem,3vw,2.2rem)}
.v2-results .v2-sd{margin:0}
.v2-results-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:var(--space-4);margin-bottom:var(--space-6);
}
.v2-result{
  position:relative;padding-left:var(--space-3);
  transition:all .3s var(--ease-out);
}
.v2-result::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:2px;
  background:var(--tbr);border-radius:2px;opacity:.12;
  transition:width .35s var(--ease-spring),opacity .35s var(--ease-spring);
}
.v2-result:hover::before{width:3px;opacity:.4}
/* Stat numbers */
.v2-result-num{
  display:block;font-family:var(--font-body);font-size:2rem;font-weight:800;
  color:var(--tbr);
  letter-spacing:-.03em;line-height:1;margin-bottom:.5rem;
}
.v2-result-label{
  font-family:var(--font-body);font-size:.88rem;
  color:var(--tmd);line-height:1.6;display:block;
}
.v2-results-quote{border-top:0.5px solid rgba(0,0,0,.05);padding-top:var(--space-5)}
.v2-results-quote blockquote{max-width:680px}
.v2-results-quote p{
  font-family:var(--font-body);font-size:1.2rem;font-weight:400;
  color:var(--tbr);line-height:1.65;letter-spacing:-.01em;
  margin-bottom:var(--space-2);
}
.v2-results-quote cite{
  font-family:var(--font-body);font-size:.82rem;font-weight:500;
  color:var(--tmd);font-style:normal;
}

/* ═══════════════════════════════════════════════════════════════ */
/* 7. AGENT GRID — Floating glass cards, 24px radius, lift hover   */
/* ═══════════════════════════════════════════════════════════════ */
.v2-agents{background:var(--bg1);padding:var(--space-8) 2rem;border:none}
.v2-ag-grid{border:none;background:transparent;gap:var(--space-4);max-width:1080px}

.v2-ag{
  background:rgba(255,255,255,.65);
  backdrop-filter:saturate(180%) blur(20px);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  border:1px solid rgba(0,0,0,.04);
  border-radius:24px;
  padding:var(--space-5) var(--space-4);
  box-shadow:var(--shadow-s);
  transition:all .45s var(--ease-out);
  cursor:default;position:relative;overflow:hidden;
}
.v2-ag::before{display:none}
.v2-ag:hover{
  box-shadow:var(--shadow-xl);
  transform:translateY(-6px);
  background:rgba(255,255,255,.92);
}

/* ── Featured Agent Badge ── */
.v2-ag-featured{
  border:1.5px solid var(--bdrh);
  border-left:4px solid var(--tbr);
  background:var(--bg0);
}
.v2-ag-featured:hover{
  border-color:rgba(0, 0, 0,.12);
  border-left-color:var(--tbr);
  box-shadow:var(--shadow-l);
}
.v2-ag-badge{
  position:absolute;top:var(--space-2);right:var(--space-2);
  font-family:var(--font-body);font-size:.6rem;font-weight:600;
  color:#fff;background:var(--tl);
  padding:.25rem .75rem;border-radius:980px;
  letter-spacing:.02em;z-index:1;
}

/* Agent inner */
.v2-ag-head{margin-bottom:var(--space-2);gap:var(--space-2)}
.v2-ag-icon{
  border-radius:14px;width:44px;height:44px;font-size:1.2rem;
  transition:transform .3s var(--ease-spring);
  color:var(--cy);display:flex;align-items:center;justify-content:center;
  border:none;background:none;
}
.v2-ag:hover .v2-ag-icon{transform:scale(1.08)}
.v2-ag-num{font-family:var(--font-body);font-size:.55rem;font-weight:700;color:var(--tm);letter-spacing:.08em}
.v2-ag-title{font-family:var(--font-body);font-size:1.1rem;font-weight:600;color:var(--tbr);letter-spacing:-.015em}
.v2-ag-sub{font-family:var(--font-body);font-size:.75rem;font-weight:500;color:var(--tbr);text-transform:none;letter-spacing:.01em;margin-bottom:var(--space-2)}
.v2-ag-desc{font-family:var(--font-body);font-size:.9rem;color:var(--tmd);line-height:1.7;margin-bottom:var(--space-3)}
.v2-ag-foot{
  border-top:0.5px solid rgba(0,0,0,.05);
  padding-top:var(--space-2);
  display:flex;justify-content:space-between;align-items:center;
}
.v2-ag-price{font-family:var(--font-body);font-size:.82rem;font-weight:700;color:var(--tbr)}
.v2-ag-link{
  font-family:var(--font-body);font-size:.82rem;font-weight:500;
  color:var(--cy);text-transform:none;letter-spacing:0;
  text-decoration:none;transition:all .2s;
}
.v2-ag-link:hover{color:#857050}
.v2-ag-link::after{
  content:'';display:block;width:0;height:1px;
  background:var(--cy);transition:width .25s var(--ease-out);margin-top:1px;
}
.v2-ag-link:hover::after{width:100%}

/* ── Triad grid: large single-column cards ── */
.v2-ag-grid-triad .v2-ag{padding:var(--space-5) var(--space-5);border-radius:24px}
.v2-ag-grid-triad .v2-ag-title{font-size:1.35rem;font-weight:700}
.v2-ag-grid-triad .v2-ag-desc{font-size:1rem;line-height:1.75}
.v2-ag-grid-triad .v2-ag-sub{font-size:.82rem}
.v2-ag-metrics{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:var(--space-3)}
.v2-ag-metric{
  font-family:var(--font-body);font-size:.72rem;font-weight:600;
  color:var(--tbr);border:1px solid var(--cy);
  background:var(--cyd);padding:.35rem .9rem;
  border-radius:980px;transition:all .2s;
}
.v2-ag-metric:hover{background:var(--cym);border-color:var(--cy)}

/* ═══════════════════════════════════════════════════════════════ */
/* DATA FLOW — Card with rounded corners, 3-stage pipeline         */
/* ═══════════════════════════════════════════════════════════════ */
.v2-flow{
  max-width:1080px;margin:var(--space-5) auto 0;
  padding:var(--space-5);background:var(--bg0);
  border-radius:24px;box-shadow:var(--shadow-m);
  border:1px solid var(--bdr);
  transition:box-shadow .35s var(--ease-out);
}
.v2-flow:hover{box-shadow:var(--shadow-l)}
.v2-flow-label{
  font-family:var(--font-body);font-size:.75rem;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;
  color:var(--tmd);margin-bottom:var(--space-4);text-align:center;
}
.v2-flow-chain{
  display:flex;align-items:stretch;justify-content:center;
  gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;
}
.v2-flow-node{
  text-align:center;padding:var(--space-3) var(--space-3);
  background:var(--bg1);
  border:1px solid var(--bdr);border-radius:20px;
  flex:1;min-width:200px;max-width:280px;
  transition:all .35s var(--ease-spring);
}
.v2-flow-node:hover{
  border-color:var(--bdrh);
  box-shadow:0 6px 20px rgba(0, 0, 0,.06);
  transform:translateY(-2px);
}
.v2-flow-stage{
  display:block;font-family:var(--font-body);font-size:.65rem;
  font-weight:700;color:var(--cy);text-transform:uppercase;
  letter-spacing:.1em;margin-bottom:.4rem;
}
.v2-flow-agent{
  display:block;font-family:var(--font-body);font-size:.92rem;
  font-weight:600;color:var(--tbr);margin-bottom:.3rem;
}
.v2-flow-action{display:block;font-family:var(--font-body);font-size:.78rem;color:var(--tmd)}
.v2-flow-arrow{font-size:1.5rem;color:var(--tmd);display:flex;align-items:center;flex-shrink:0;opacity:.4}
.v2-flow-note{
  font-family:var(--font-body);font-size:.88rem;color:var(--tmd);
  text-align:center;max-width:680px;margin:0 auto;line-height:1.7;
}

/* ── Staggered entrance for agent cards ── */
.v2-ag.rv-d1{transition-delay:.08s}

/* ═══════════════════════════════════════════════════════════════ */
/* 8. CUSTOM AGENT — Same card language                            */
/* ═══════════════════════════════════════════════════════════════ */
.v2-custom{
  border:none;border-radius:24px;background:var(--bg0);
  box-shadow:var(--shadow-m);padding:var(--space-5) var(--space-4);
  max-width:1080px;margin-top:var(--space-3);
  transition:all .35s var(--ease-spring);
}
.v2-custom:hover{box-shadow:var(--shadow-l);transform:translateY(-2px)}
.v2-custom::before{
  font-family:var(--font-body);font-size:.6rem;font-weight:600;
  color:var(--tmd);letter-spacing:.08em;border-radius:980px;
  padding:.2rem .85rem;top:-.45rem;background:var(--bg0);
  border:0.5px solid rgba(0,0,0,.05);box-shadow:var(--shadow-s);
}
.v2-custom h3{
  font-family:var(--font-body);font-size:1.35rem;font-weight:700;
  color:var(--tbr);letter-spacing:-.015em;margin-bottom:.6rem;
}
.v2-custom p{
  font-family:var(--font-body);font-size:.95rem;color:var(--tmd);
  line-height:1.7;max-width:520px;margin-bottom:var(--space-3);
}
.v2-custom-tags{gap:.5rem;margin-bottom:var(--space-3)}
.v2-custom-tag{
  font-family:var(--font-body);font-size:.72rem;font-weight:500;
  color:var(--tmd);border:1px solid rgba(0,0,0,.06);
  background:transparent;border-radius:980px;padding:.35rem .9rem;
  transition:all .2s;
}
.v2-custom-tag:hover{border-color:rgba(0,0,0,.14);background:rgba(0,0,0,.02)}
.v2-custom-price{font-family:var(--font-body);font-size:.78rem;color:var(--tm)}

/* ═══════════════════════════════════════════════════════════════ */
/* 9. VALUE PROPS — Glass cards with icon containers               */
/* ═══════════════════════════════════════════════════════════════ */
.v2-vals{padding:var(--space-8) 2rem;background:var(--bg0);border-top:0.5px solid rgba(0,0,0,.04)}
.v2-vals-grid{gap:var(--space-4);max-width:960px}

.v2-val{
  padding:var(--space-4);
  background:rgba(255,255,255,.65);
  backdrop-filter:saturate(180%) blur(20px);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  border:1px solid rgba(0,0,0,.04);
  border-radius:24px;
  box-shadow:var(--shadow-s);
  transition:all .45s var(--ease-out);
  cursor:default;position:relative;
}
.v2-val::before{display:none}
.v2-val:hover{
  box-shadow:var(--shadow-xl);
  transform:translateY(-6px);
  background:rgba(255,255,255,.92);
}
.v2-val-icon{
  font-size:inherit;margin-bottom:var(--space-3);
  display:flex;align-items:center;justify-content:center;
  width:48px;height:48px;
  background:var(--bg1);
  backdrop-filter:blur(10px);
  border-radius:14px;color:var(--cy);opacity:1;
}
.v2-val-icon svg{width:32px;height:32px}
.v2-val h3{
  font-family:var(--font-body);font-size:1.2rem;font-weight:600;
  color:var(--tbr);letter-spacing:-.01em;margin-bottom:.5rem;
}
.v2-val p{font-family:var(--font-body);font-size:.95rem;color:var(--tmd);line-height:1.7}

/* ═══════════════════════════════════════════════════════════════ */
/* 10. PRICING — Clean table + bundle cards                        */
/* ═══════════════════════════════════════════════════════════════ */
.v2-pricing{background:var(--bg1);padding:var(--space-8) 2rem;border:none}

.v2-ptable{
  background:var(--bg0);border:none;border-radius:20px;
  box-shadow:var(--shadow-m);overflow:hidden;max-width:1000px;
}
.v2-ptable thead{background:var(--bg1)}
.v2-ptable thead th{
  font-family:var(--font-body);font-size:.7rem;font-weight:600;
  color:var(--tm);letter-spacing:.06em;text-transform:uppercase;
  background:transparent;border-bottom:0.5px solid rgba(0,0,0,.05);
  padding:1rem 1.5rem;
}
.v2-ptable td{
  border-bottom:0.5px solid rgba(0,0,0,.035);
  font-family:var(--font-body);padding:.85rem 1.5rem;
  transition:background .15s;
}
.v2-ptable tbody tr{background:transparent}
.v2-ptable tbody tr:nth-child(odd){background:rgba(0, 0, 0,.015)}
.v2-ptable tbody tr:hover{background:rgba(0, 0, 0,.03)}
.v2-ptable tbody tr:last-child td{border-bottom:none}
.v2-pn{color:var(--tbr);font-weight:600;font-size:.88rem}
.v2-pp{font-family:var(--font-body);font-weight:700;color:var(--tbr);font-size:.82rem}
.v2-pg{color:var(--tmd);font-size:.82rem;line-height:1.5}

/* ── Bundles — floating cards, popular stands out ── */
.v2-bundles{
  border:none;background:transparent;gap:var(--space-3);
  max-width:1000px;margin-top:var(--space-4);
  overflow:visible;
}
.v2-bundle{
  background:var(--bg0);border-radius:22px;
  box-shadow:var(--shadow-m);
  padding:var(--space-4) var(--space-3);
  transition:all .35s var(--ease-spring);
  cursor:default;border:1.5px solid transparent;
  overflow:visible;
}
.v2-bundle:hover{box-shadow:var(--shadow-l);transform:translateY(-3px)}
.v2-bundle.popular{
  background:var(--bg0);box-shadow:var(--shadow-l);
  border-color:var(--tbr);position:relative;
  transform:scale(1.03);
  animation:none;
  overflow:visible;
  z-index:2;
}
.v2-bundle.popular:hover{transform:scale(1.03) translateY(-3px)}
.v2-bundle.popular::before{
  content:'';position:absolute;inset:-1px;border-radius:inherit;
  background:transparent;
  pointer-events:none;
}
.v2-bundle.popular::after{
  font-family:var(--font-body);font-size:.5rem;font-weight:600;
  color:#fff;background:var(--tl);letter-spacing:.06em;
  padding:.25rem .75rem;border-radius:980px;
  box-shadow:0 2px 8px rgba(0, 0, 0,.12);
  position:absolute;top:-.6rem;right:1rem;
}
@keyframes shimmer-border{0%,100%{border-color:var(--cy)}50%{border-color:rgba(158, 82, 97,.55)}}
.v2-bundle-num{
  font-family:var(--font-body);font-size:2.25rem;font-weight:800;
  color:var(--tbr);
  letter-spacing:-.02em;line-height:1;margin-bottom:.35rem;
}
.v2-bundle-name{font-family:var(--font-body);font-size:.92rem;font-weight:600;color:var(--tbr);margin-bottom:.2rem}
.v2-bundle-desc{font-family:var(--font-body);font-size:.75rem;color:var(--tmd)}

/* ═══════════════════════════════════════════════════════════════ */
/* 11. FAQ — Premium accordion with + → x rotation                 */
/* ═══════════════════════════════════════════════════════════════ */
.v2-faq{padding:var(--space-8) 2rem var(--space-4);background:var(--bg0);border-top:0.5px solid rgba(0,0,0,.04)}
.v2-faq-list{max-width:720px;margin:0 auto}

.v2-fq{
  border-bottom:0.5px solid rgba(0,0,0,.05);
  border-radius:16px;transition:background .2s;
  position:relative;padding-left:var(--space-2);
}
.v2-fq::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:2px;
  background:var(--tbr);border-radius:2px;opacity:0;
  transition:opacity .3s var(--ease-out);
}
.v2-fq:hover::before{opacity:.3}
.v2-fq summary{
  padding:1.35rem 0;font-family:var(--font-body);
  font-size:1rem;font-weight:600;color:var(--tbr);
  cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;align-items:center;
  gap:var(--space-3);transition:color .25s var(--ease-out);
  letter-spacing:-.01em;
}
.v2-fq summary::-webkit-details-marker{display:none}
.v2-fq summary::marker{display:none;content:''}
/* + icon that rotates to x */
.v2-fq summary::after{
  content:'';flex-shrink:0;width:28px;height:28px;
  border-radius:50%;
  transition:all .35s var(--ease-spring);
  background:rgba(0,0,0,.03)
    url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 2.5v7M2.5 6h7' stroke='%237c7c82' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E")
    no-repeat center;
}
.v2-fq summary:hover{color:var(--tbr)}
.v2-fq summary:hover::after{
  background-color:rgba(0, 0, 0,.05);
  background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 2.5v7M2.5 6h7' stroke='%23007a6e' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.v2-fq[open] summary::after{
  transform:rotate(45deg);
  background-color:rgba(0, 0, 0,.06);
  background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 2.5v7M2.5 6h7' stroke='%231d1d1f' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.v2-fq-ans{
  padding:0 0 1.35rem;font-family:var(--font-body);
  font-size:.95rem;color:var(--tmd);line-height:1.75;
  max-width:600px;animation:v2-fq-open .4s var(--ease-spring);
}
@keyframes v2-fq-open{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}

/* ═══════════════════════════════════════════════════════════════ */
/* 12. CTA — Dark section matching hero, form with glass inputs    */
/* ═══════════════════════════════════════════════════════════════ */
.v2-cta{
  text-align:center;padding:var(--space-10) 2rem var(--space-8);
  background:#050505;border-top:none;
  position:relative;overflow:hidden;
}
.v2-cta::before{
  content:'';position:absolute;inset:0;width:100%;height:100%;
  top:0;left:0;transform:none;
  background:
    radial-gradient(ellipse 55% 45% at 50% 100%,rgba(158, 82, 97,.09),transparent 55%),
    radial-gradient(ellipse 40% 30% at 50% 0%,rgba(158, 82, 97,.04),transparent 45%);
  pointer-events:none;z-index:0;
}
.v2-cta>*{position:relative;z-index:1}
.v2-cta h2{
  font-family:var(--font-body);
  font-size:clamp(2rem,4.5vw,3.25rem);
  font-weight:800;color:#f5f5f7;
  letter-spacing:-.035em;line-height:1.1;
  margin-bottom:var(--space-3);
}
.v2-cta h2 span.shimmer{
  -webkit-text-fill-color:var(--cy)!important;
  color:var(--cy)!important;
  background:none;
  animation:none;
  padding-left:0.05em;display:inline-block;
}
.v2-cta>p{
  font-family:var(--font-body);font-size:1.15rem;
  color:#a1a1a6;font-weight:400;line-height:1.6;
  max-width:480px;margin:0 auto;
}

/* CTA Form — glass inputs on dark bg */
.v2-cta-form{margin-top:var(--space-5);max-width:720px;margin-left:auto;margin-right:auto}
.v2-form-row{display:flex;gap:var(--space-2);align-items:flex-start}
.v2-form-field{flex:1;position:relative}
.v2-form-field input{
  width:100%;font-family:var(--font-body);font-size:.95rem;
  font-weight:400;color:#f5f5f7;padding:.9rem 1.25rem;
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1.5px solid rgba(255,255,255,.1);
  border-radius:980px;outline:none;
  transition:all .3s var(--ease-spring);
  -webkit-appearance:none;appearance:none;
  box-sizing:border-box;line-height:1.4;
}
.v2-form-field input::placeholder{color:#6e6e73;transition:opacity .25s var(--ease-out)}
.v2-form-field input:hover{
  border-color:rgba(255,255,255,.2);
  background:rgba(255,255,255,.09);
  box-shadow:0 4px 16px rgba(158, 82, 97,.08);
}
.v2-form-field input:focus{
  border-color:var(--cy);
  background:rgba(255,255,255,.08);
  box-shadow:0 0 0 3px rgba(158, 82, 97,.15),0 6px 20px rgba(158, 82, 97,.1);
}
.v2-form-field input:focus::placeholder{opacity:.4}
.v2-form-btn{
  white-space:nowrap;flex:1;padding:.9rem 1.25rem;
  border:1px solid rgba(255,255,255,0.06);border-radius:980px;
  font-size:.95rem;font-weight:500;line-height:1.4;
  box-sizing:border-box;transition:all .4s var(--ease-out);
  position:relative;overflow:hidden;
  background:#f5f5f7;color:#0a0a0a;cursor:pointer;
}
.v2-form-btn:hover{
  background:#ffffff;
  box-shadow:0 8px 28px rgba(255,255,255,0.12);
  transform:translateY(-1px);
}
.v2-form-btn::before{display:none}
.v2-form-btn:disabled{cursor:not-allowed;opacity:.6}
.v2-form-note{font-family:var(--font-body);font-size:.78rem;color:#6e6e73;margin-top:var(--space-2);letter-spacing:.005em}

/* ── Form Errors ── */
.v2-form-error{
  display:block;font-family:var(--font-body);font-size:0.75rem;
  color:#f5716c;margin-top:0.35rem;min-height:1.2em;
  padding-left:1.25rem;opacity:0;transform:translateY(-4px);
  transition:opacity 0.25s var(--ease-out),transform 0.25s var(--ease-out);
}
.v2-form-error.visible{opacity:1;transform:translateY(0)}

/* ── Disclaimer ── */
.v2-disclaimer{
  max-width:700px;
  margin:0 auto;
  text-align:center;
  padding:1.5rem 1.5rem 1.5rem;
  font-size:.7rem;
  color:var(--td);
}

/* ═══════════════════════════════════════════════════════════════ */
/* 13. FOOTER — 4-column grid, clean links, minimal                */
/* ═══════════════════════════════════════════════════════════════ */
footer{
  background:var(--bg1);border-top:0.5px solid rgba(0,0,0,.04);
  padding:var(--space-8) 2rem var(--space-5);
}
.ft-inner{
  max-width:960px;margin:0 auto;
  display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;
  gap:var(--space-5);margin-bottom:var(--space-6);
}
.ft-col{text-align:left}
.ft-logo{
  font-family:var(--font-body);font-size:1.1rem;font-weight:700;
  color:var(--tbr);text-decoration:none;display:inline-block;
  margin-bottom:var(--space-2);transition:opacity .2s;
}
.ft-logo:hover{opacity:.7}
.ft-logo b{font-family:var(--font-body);color:var(--tbr);text-shadow:none;font-weight:inherit}
.ft-tagline{
  font-family:var(--font-body);font-size:.82rem;color:var(--tmd);
  line-height:1.6;max-width:240px;margin:0;
}
.ft-heading{
  font-family:var(--font-body);font-size:.7rem;font-weight:600;
  color:var(--tm);letter-spacing:.06em;text-transform:uppercase;
  margin-bottom:var(--space-2);
}
.ft-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}
.ft-links a{
  font-family:var(--font-body);font-size:.82rem;color:var(--tmd);
  text-decoration:none;transition:color .2s;
}
.ft-links a:hover{color:var(--cy)}
.ft-bottom{
  max-width:960px;margin:0 auto;padding-top:var(--space-4);
  border-top:0.5px solid rgba(0,0,0,.05);text-align:center;
}
.ft-bottom p{font-family:var(--font-body);font-size:.72rem;color:var(--tm);letter-spacing:.005em}
.ft-social{display:flex;gap:.6rem;margin-top:1.1rem}
.ft-soc{
  display:inline-flex;align-items:center;justify-content:center;
  width:34px;height:34px;border:1px solid var(--bdr);border-radius:50%;
  color:var(--tmd);transition:color .2s,border-color .2s;
}
.ft-soc:hover{color:var(--cy);border-color:var(--cy)}
.ft-soc svg{display:block}
@media(max-width:768px){.ft-social{justify-content:center}}

/* ═══════════════════════════════════════════════════════════════ */
/* 14. SCROLL REVEAL — Gentle entrance                             */
/* ═══════════════════════════════════════════════════════════════ */
.rv{
  opacity:0;transform:translateY(24px);
  transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);
}
.rv.vis{opacity:1;transform:translateY(0)}
.rv-d1{transition-delay:.08s}
.rv-d2{transition-delay:.16s}
.rv-d3{transition-delay:.24s}

/* ═══════════════════════════════════════════════════════════════ */
/* 15. FOCUS STATES — Designed outlines                            */
/* ═══════════════════════════════════════════════════════════════ */
a:focus-visible,
.bp:focus-visible,
.bs:focus-visible,
button:focus-visible{
  outline:2px solid var(--cy);
  outline-offset:3px;
  border-radius:8px;
}
input:focus-visible{outline:none}

/* ═══════════════════════════════════════════════════════════════ */
/* 16. SMOOTH LINK TRANSITIONS                                     */
/* ═══════════════════════════════════════════════════════════════ */
a{transition:color .2s var(--ease-out)}

/* ═══════════════════════════════════════════════════════════════ */
/* RESPONSIVE                                                      */
/* ═══════════════════════════════════════════════════════════════ */

/* ── 1024px ── */
@media(max-width:1024px){
  .v2-ag-grid{grid-template-columns:1fr}
  .v2-ag-grid-triad{grid-template-columns:1fr}
  .v2-vals-grid,.v2-how-grid,.v2-bundles{grid-template-columns:1fr}
  .v2-how-grid .v2-how-step:not(:last-child){
    border-right:none;border-bottom:0.5px solid rgba(0,0,0,.05);
    padding-bottom:var(--space-4);
  }
  .v2-how-grid .v2-how-step:not(:last-child)::after{display:none}
  .v2-form-row{flex-direction:column}
  .v2-form-btn{width:100%}
  .v2-results-grid{grid-template-columns:1fr;gap:var(--space-4)}
  .v2-flow-chain{flex-direction:column;align-items:center}
  .v2-flow-arrow{transform:rotate(90deg)}
  .v2-flow-node{max-width:none;min-width:auto;width:100%}
  .dd-grid-3{grid-template-columns:1fr}
}

/* ── 768px ── */
@media(max-width:768px){
  .v2-hero{min-height:auto}
  .v2-hero-content{padding:7rem 1.25rem 4rem}
  .v2-hero h1{font-size:clamp(2.25rem,9vw,3.5rem)}
  .v2-hero h1 em{display:inline}
  .v2-hero-sub{font-size:1.0625rem;max-width:340px;margin:1.5rem auto 0}
  .v2-hero-acts{margin-top:2.5rem;flex-direction:column;width:100%;max-width:320px}
  .v2-hero .bp,.v2-hero .bs{justify-content:center;width:100%}
  .v2-hero-stats{gap:2rem;flex-wrap:wrap;justify-content:center;margin-top:3.5rem;padding-top:2rem}
  .v2-hero .v2-hs-num{font-size:1.5rem}
  /* Stats wrap nicely */
  .v2-hero-stats{
    flex-direction:row;flex-wrap:wrap;gap:2.5rem;
    justify-content:center;padding-top:var(--space-4);
    margin-top:var(--space-4);
  }
  .v2-hs-num{font-size:1.6rem}
  .v2-ag{padding:var(--space-3) var(--space-3);border-radius:18px}
  .v2-ag-grid{gap:var(--space-2)}
  .v2-agents,.v2-pricing{padding:var(--space-8) 1.5rem}
  .v2-how,.v2-vals,.v2-faq{padding:var(--space-8) 1.5rem}
  .v2-results{padding:var(--space-8) 1.5rem}
  .v2-results-quote p{font-size:1.05rem}
  .v2-cta{padding:var(--space-8) 1.5rem var(--space-6)}
  .v2-custom{border-radius:18px;padding:var(--space-4) var(--space-3)}

  /* Mobile pricing table becomes stacked cards */
  .v2-ptable{border-radius:18px;overflow:hidden;box-shadow:var(--shadow-s)}
  .v2-ptable table{min-width:0}
  .v2-ptable thead{display:none}
  .v2-ptable tbody,.v2-ptable tr,.v2-ptable td{display:block;width:100%}
  .v2-ptable tr{
    padding:var(--space-3) var(--space-3);
    border-bottom:0.5px solid rgba(0,0,0,.05);position:relative;
  }
  .v2-ptable tr:last-child{border-bottom:none}
  .v2-ptable td{padding:0;border-bottom:none}
  .v2-pn{font-size:.95rem;margin-bottom:.35rem;display:block}
  .v2-pp{display:inline-block;font-size:.82rem;margin-bottom:.45rem;color:var(--tbr);font-weight:700}
  .v2-pg{display:block;font-size:.82rem;line-height:1.55}
  .v2-bundle{border-radius:18px}
  .v2-bundles{gap:var(--space-2)}
  .v2-val{border-radius:18px;padding:var(--space-3)}
  .v2-ag-foot{flex-direction:column;gap:.5rem;align-items:flex-start}
  .nav-dd-menu{border-radius:0;box-shadow:0 10px 30px rgba(0,0,0,.3)}

  /* Mobile nav — dark */
  .nv.show{
    background:rgba(11,10,26,.97);
    backdrop-filter:saturate(180%) blur(20px);
    -webkit-backdrop-filter:saturate(180%) blur(20px);
    border-bottom:0.5px solid rgba(255,255,255,.06);
  }
  /* Mobile dropdown */
  .nv.show .nav-dd-menu{
    border:0.5px solid rgba(255,255,255,.08);border-radius:12px;
    background:rgba(18,16,36,.95);margin-top:.65rem;box-shadow:none;
  }
  .nv.show .dd-item{margin:2px 4px;border-radius:8px}
  .nv.show .dd-name{font-family:var(--font-body);font-size:.82rem;font-weight:600;color:rgba(255,255,255,.85);letter-spacing:-.01em}
  .nv.show .dd-role{font-family:var(--font-body);font-size:.65rem;color:rgba(255,255,255,.45);letter-spacing:0}
  .nv.show .dd-num{font-family:var(--font-body);font-size:.5rem;font-weight:700;color:rgba(255,255,255,.5)}
  .nv.show .dd-foot{border-top:0.5px solid rgba(255,255,255,.08)}
  .nv.show .dd-all{font-family:var(--font-body)}
  .v2-shc{margin-bottom:var(--space-6)}
  .bp,.bs{font-size:.88rem;padding:.8rem 1.75rem}
  .v2-fq summary{font-size:.95rem;padding:1.15rem 0}

  /* Footer: brand block centered; link sections in clean left-aligned rows */
  .ft-inner{grid-template-columns:auto auto;justify-content:center;gap:var(--space-4) 4rem}
  .ft-col{text-align:left}
  .ft-links{align-items:flex-start}
  .ft-brand{grid-column:1/-1;text-align:center}
  .ft-brand .ft-tagline{margin:0 auto}
  .mbtn{display:flex}

  /* Trust strip responsive */
  .v2-trust{padding:0}
  .v2-trust-label{font-size:.6rem;padding:0 1rem}
  .v2-trust-logo{padding:0 1.25rem}
  .v2-trust-track{padding:.55rem 0}
}

/* ── 480px ── */
@media(max-width:480px){
  .ft-inner{grid-template-columns:auto auto;justify-content:center;gap:1.75rem 3rem}
  .ft-brand{grid-column:1/-1}
  .ft-col:last-child{grid-column:1/-1}
  /* Hero headline owns the viewport: sized from measured wrap limits so
     "Your AI voice agents." always stays on one line (Inter 700, ls -.055em) */
  .v2-hero{padding-left:.75rem;padding-right:.75rem;min-height:100vh;min-height:100svh}
  .v2-hero-content{padding-left:.25rem;padding-right:.25rem}
  .v2-hero h1{font-size:clamp(1.5rem,9vw - 3px,2.5rem)}
  .v2-hero-tag{font-size:1rem;margin-bottom:1.4rem}
  .aurora-proof-bar{gap:.4rem;margin-top:1rem;margin-bottom:0}
  .v2-hero-acts{margin-top:2rem}
  .aurora-proof-item{font-size:.66rem}
  .btn-aurora-primary,.btn-aurora-secondary{font-size:.95rem;padding:.7rem 1.1rem}
  .v2-hero-sub{font-size:1rem}
  .v2-hero-stats{gap:2rem}
  .v2-hero .v2-hs-num{font-size:1.3rem}
  .v2-hero-stats{gap:2rem}
  .v2-hs-num{font-size:1.4rem}
  /* Tighten the seam between the live demo and Proven Results */
  .v2-how{padding-bottom:1.5rem}
  .v2-results{padding-top:2rem}
  .v2-bundle.popular{transform:scale(1)}
  .v2-bundle.popular:hover{transform:translateY(-3px)}
}

/* ═══════════════════════════════════════════════════════════════ */
/* PRINT                                                           */
/* ═══════════════════════════════════════════════════════════════ */
@media print{
  nav,.v2-hero::before,.v2-hero-grain,.v2-hero-glow,.v2-cta::before,.v2-ag-badge,.mbtn,.v2-trust{display:none!important}
  .rv{opacity:1!important;transform:none!important;transition:none!important}
  body{background:#fff;color:#000;font-size:11pt}
  .v2-hero{padding:2rem 0;min-height:auto;background:#fff!important}
  .v2-hero h1{color:#1d1d1f!important}
  .v2-hero-sub{color:#6e6e73!important}
  .v2-hero .v2-hs-num{color:#1d1d1f!important;text-shadow:none!important}
  .v2-hero .v2-hs-label{color:#6e6e73!important}
  .v2-ag,.v2-bundle,.v2-custom,.v2-ptable,.v2-val{
    box-shadow:none;border:1px solid #ddd;break-inside:avoid;
    backdrop-filter:none;-webkit-backdrop-filter:none;
  }
  .v2-ag-featured{border-left:3px solid var(--cy)}
  .v2-ag-grid{gap:1rem}
  section{padding:2rem 0!important}
  .v2-fq[open] .v2-fq-ans{animation:none}
  a{color:var(--cy)!important;text-decoration:underline}
  a::after{content:none!important}
  .ft-inner{grid-template-columns:1fr 1fr 1fr 1fr;gap:1rem}
  footer{padding:2rem 0;background:#fff}
  .v2-cta{background:#fff!important}
  .v2-cta h2{color:#1d1d1f!important}
  .v2-cta>p{color:#6e6e73!important}
  .v2-hero h1 em,.v2-cta h2 span.shimmer{
    background:none!important;-webkit-text-fill-color:var(--cy)!important;color:var(--cy)!important;
  }
}

/* ═══════════════════════════════════════════════════════════════ */
/* REDUCED MOTION (WCAG 2.2 AA)                                    */
/* ═══════════════════════════════════════════════════════════════ */
@media(prefers-reduced-motion:reduce){
  /* Disable scroll reveal animations */
  .rv{opacity:1!important;transform:none!important;transition:none!important}
  .rv-d1,.rv-d2,.rv-d3{transition-delay:0s!important}
  /* Disable hover lift/transform on all interactive cards */
  .v2-how-step:hover,
  .v2-ag:hover,
  .v2-ag-featured:hover,
  .v2-custom:hover,
  .v2-val:hover,
  .v2-bundle:hover,
  .bp:hover,.bs:hover{transform:none!important}
  .v2-ag:hover .v2-ag-icon{transform:none!important}
  /* Disable FAQ open animation */
  .v2-fq-ans{animation:none!important}
  /* Disable hero tag entrance animation */
  .v2-hero-tag{animation:none!important}
  /* Disable text shimmer */
  .v2-hero h1 em,
  .v2-cta h2 em,
  .v2-hero h1 span.shimmer,
  .v2-cta h2 span.shimmer{
    animation:none!important;background:none!important;
    -webkit-text-fill-color:inherit!important;color:inherit!important;
  }
  .hero-stat{animation:none!important}
  /* Disable link underline grow animation */
  .v2-ag-link::after{transition:none!important}
  /* Disable marquee */
  .v2-trust-logos{animation:none!important}
  /* Disable shimmer-border */
  .v2-bundle.popular{animation:none!important}
  /* Reduce all remaining transitions to instant */
  *{transition-duration:0.01ms!important;animation-duration:0.01ms!important}
  /* Keep scroll-behavior instant */
  html{scroll-behavior:auto}
}

/* ═══════════════════════════════════════════════════════════════ */
/* MOBILE FIX — Sticky in-page bar + hamburger collision           */
/* ─────────────────────────────────────────────────────────────── */
/* All four sticky bars (.hp-tabs homepage, .tabs studies,         */
/* .filters resources, .article-breadcrumb blog) host an absolute  */
/* .hh-burger anchored at `right: 1rem`. Desktop reserves 4rem of  */
/* right padding for that burger. The per-page mobile rules        */
/* shrank that padding back to ~1rem, so the burger overlapped     */
/* the rightmost tab. iOS Safari also doesn't honor overflow-x:    */
/* auto on a flex container without explicit touch-action /        */
/* -webkit-overflow-scrolling — which is why labels appeared to    */
/* not scroll on real iPhones.                                     */
/* This block lives in light-theme.css (final override on every    */
/* page) so it wins the cascade against the per-page sheets.       */
/* ═══════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  /* 1) Restore right-edge breathing room for the absolute burger.
     The burger button is 38px wide and sits at right:1rem (16px),
     so it occupies x-range [16, 54] from the right edge. Reserving
     4.25rem (68px) of right padding gives the rightmost tab a 14px
     gap from the burger's left edge — enough to read as separate
     UI, not a collision. */
  .hp-tabs,
  .tabs,
  .filters {
    padding-right: 4.25rem;
  }
  .article-breadcrumb {
    padding-right: 4.25rem;
    /* breadcrumb is its own flex row (no `-inner`), so it gets
       the touch-pan + overflow rules directly */
    overflow-x: auto;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
    scrollbar-width: none;
  }
  .article-breadcrumb::-webkit-scrollbar { display: none; }

  /* 2) Make the inner scroll containers actually scroll on iOS */
  .hp-tabs-inner,
  .tabs-inner,
  .filters-inner {
    overflow-x: auto;
    touch-action: pan-x;
    -webkit-overflow-scrolling: touch;
    /* Trailing scroll padding so the last tab can settle fully
       clear of the reserved burger area when scrolled to the end */
    scroll-padding-inline-end: 1rem;
    /* Tabs must not wrap — without this, narrow viewports can
       crush them into two rows instead of horizontal-scrolling */
    flex-wrap: nowrap;
  }

  /* 2b) Keep each pill at its natural width so the inner container
     actually overflows and scrolls. Default `flex-shrink: 1` lets
     the browser shrink pills to fit the container — combined with
     `.ftag { overflow: hidden }` in resources.css, that clipped
     category labels to "AI FUNDAM", "OPERATI", etc. instead of
     letting the bar scroll. flex-shrink:0 fixes both symptoms. */
  .hp-tabs-inner > .hp-tab,
  .tabs-inner > .tab,
  .filters-inner > .ftag {
    flex-shrink: 0;
  }

  /* 3) Burger stays plain — no white halo. The earlier halo read
     as a separate button sitting against the active tab. Letting
     the bar's own translucent-white background show through means
     the burger reads as just an icon. */
  .hp-tabs .hh-burger,
  .tabs .hh-burger,
  .filters .hh-burger,
  .article-breadcrumb .hh-burger {
    right: 1rem;
    background: transparent;
  }
}

/* Smallest phones — keep the same fix but tighten paddings so the
   tabs themselves have more room before the burger area. */
@media (max-width: 480px) {
  .hp-tabs,
  .tabs,
  .filters,
  .article-breadcrumb {
    padding-right: 4rem;
  }
}

/* ═══════════════════════════════════════════════════════════════ */
/* MOBILE FIX — CTA form inputs left-aligned instead of centered   */
/* ─────────────────────────────────────────────────────────────── */
/* `.v2-form-row` is a flex row on desktop with                    */
/* `align-items: flex-start` (aligns name/email/button to the top  */
/* of the row visually). At ≤1024px it flips to                    */
/* `flex-direction: column`, but `align-items: flex-start` was     */
/* never updated — and in column mode, flex-start aligns items     */
/* along the *cross* axis, which is now the X axis → left edge.    */
/* The button has an explicit `width: 100%` so it fills, but the   */
/* `.v2-form-field` divs do not — they shrink to their intrinsic   */
/* size and pin to the left, leaving the inputs visibly off-       */
/* center against an otherwise centered hero/form container.       */
/* Fix: stretch the children to fill, and explicitly width:100%    */
/* the field wrapper so the inputs match the button's width.       */
/* ═══════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
  .v2-form-row {
    align-items: stretch;
  }
  .v2-form-field {
    width: 100%;
  }
}
