/* Prospalytics landing styles extracted from Combined LH #209.html. */

/* === Combined LH #209.html: style-1 === */
:root{
      --bg:#05060a;
      --text:rgba(255,255,255,.92);
      --muted:rgba(255,255,255,.70);
      --soft:rgba(255,255,255,.56);

      --panel:rgba(255,255,255,.06);
      --panel2:rgba(255,255,255,.04);
      --border:rgba(255,255,255,.12);

      --a1:#22d3ee; /* cyan */
      --a2:#7c3aed; /* violet */
      --a3:#a3e635; /* lime */
      --red1:#ef4444; /* red */
      --red2:#b91c1c; /* dark red */

      --shadow:0 22px 70px rgba(0,0,0,.68);
      --radius:18px;
      --radius2:26px;
      --max:1160px;
      --pad:clamp(18px, 3vw, 28px);
      --topbarH:64px;
      --sectionSpace:clamp(72px, 8vw, 112px);

      --focus:0 0 0 3px rgba(34,211,238,.28), 0 0 0 1px rgba(34,211,238,.44);
      --redditOrange:#FF4500;
    }

    *{ box-sizing:border-box; }
    html,body{ height:100%; }
    body{
      margin:0;
      background:var(--bg);
      color:var(--text);
      font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
      line-height:1.35;
      overflow-x:hidden;
    }
    a{ color:inherit; text-decoration:none; }
    a:focus-visible,
    button:focus-visible,
    summary:focus-visible,
    input:focus-visible,
    select:focus-visible,
    textarea:focus-visible{
      outline:none;
      box-shadow:var(--focus);
      border-radius:12px;
    }
    .container{
      width:min(var(--max), calc(100% - (var(--pad) * 2)));
      margin-inline:auto;
    }

    /* ---------- Background ---------- */
    .bg{
      position:fixed; inset:0; pointer-events:none; z-index:-3;
      background: linear-gradient(180deg, rgba(255,255,255,.02), transparent 26%);
    }
    .bg::before,
    .bg::after{
      content:"";
      position:absolute;
      top:0;
      bottom:0;
      width:clamp(14px, 1.55vw, 18px);
      border-radius:999px;
      pointer-events:none;
    }
    .bg::before{
      left:clamp(20px, 2.3vw, 30px);
      background:linear-gradient(90deg, rgba(34,211,238,0) 0%, rgba(34,211,238,.14) 22%, rgba(34,211,238,.34) 50%, rgba(34,211,238,.14) 78%, rgba(34,211,238,0) 100%);
      box-shadow:0 0 14px rgba(34,211,238,.12);
    }
    .bg::after{
      right:clamp(20px, 2.3vw, 30px);
      background:linear-gradient(90deg, rgba(124,58,237,0) 0%, rgba(124,58,237,.14) 22%, rgba(124,58,237,.34) 50%, rgba(124,58,237,.14) 78%, rgba(124,58,237,0) 100%);
      box-shadow:0 0 14px rgba(124,58,237,.14);
    }
    @media (prefers-reduced-motion: reduce){
      html{ scroll-behavior:auto; }
    }

    /* ---------- Topbar ---------- */
    .topbar{
      position:fixed; top:0; left:0; right:0; z-index:60;
      background: linear-gradient(180deg, rgba(5,6,10,.92), rgba(5,6,10,.68));
      border-bottom:1px solid rgba(255,255,255,.08);
    }
    .topbarInner{
      display:flex; align-items:center; justify-content:space-between;
      gap:14px;
      padding-block:14px;
      padding-inline:0;
    }
    .topbarSpacer{ height: var(--topbarH, 64px); }
    .brand{ display:flex; align-items:center; gap:10px; min-width:max-content; }
    .brandMark{
      width:14px; height:14px; border-radius:999px;
      background:linear-gradient(135deg, var(--a1), var(--a2));
      box-shadow:0 0 24px rgba(34,211,238,.25);
    }
    .brandName{
      font-weight:900;
      letter-spacing:-.02em;
      font-size:1.35rem;
      line-height:1.2;
      display:inline-block;
      padding:2px 0;
    }
    @media (min-width: 740px){
      .brandName{ font-size:1.55rem; }
    }
    @media (max-width: 420px){
      .brandName{ font-size:1.25rem; }
    }
    @media (max-width: 520px){
    }

    .nav{ display:flex; align-items:center; gap:10px; }
    .nav a{
      color:rgba(255,255,255,.80);
      font-size:.95rem;
      padding:10px 10px;
      border-radius:12px;
      transition: background .18s ease, color .18s ease;
    }
    .nav a:hover{ background:rgba(255,255,255,.06); color:rgba(255,255,255,.95); }

    .navToggle{
      display:none;
      width:42px; height:42px;
      border-radius:14px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.04);
      color:var(--text);
      align-items:center; justify-content:center;
      gap:5px; cursor:pointer;
    }
    .navToggle span{
      display:block; width:18px; height:2px;
      background:rgba(255,255,255,.78); border-radius:999px;
    }

    @media (max-width: 920px){
      .navToggle{ display:inline-flex; }
      .nav{
        position:absolute; left:var(--pad); right:var(--pad); top:var(--topbarH);
        display:none; flex-direction:column; align-items:stretch;
        padding:12px; border-radius:18px;
        background:rgba(10,12,18,.92);
border:1px solid rgba(255,255,255,.12);
        box-shadow:var(--shadow);
      }
      .nav.navOpen{ display:flex; }
      .nav a{ padding:12px 12px; }
    }

    /* ---------- UI primitives ---------- */
    .muted{ color:var(--muted); }
    .micro{ font-size:.92rem; color:var(--soft); }
    .glow{
      background:linear-gradient(90deg, var(--a1), var(--a2));
      -webkit-background-clip:text; background-clip:text;
      color:transparent;
      text-shadow:none;
    }
    .btnBrandWord{
      display:inline-block;
      background:linear-gradient(90deg, var(--a1), var(--a2));
      -webkit-background-clip:text;
      background-clip:text;
      -webkit-text-fill-color:transparent;
      color:transparent;
      text-shadow:none;
    }
    .redditWord{
      color:var(--redditOrange);
    }
    .redditWordLead{
      font-weight:760;
    }
    .redditNavWord{
      color:var(--redditOrange);
      font-weight:760;
    }
    .topbar .brandName.glow,
    .dsCompareTitle .glow{
      text-shadow:none;
    }
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:10px;
      padding:12px 16px;
      border-radius:14px;
      border:1px solid rgba(255,255,255,.12);
      background: linear-gradient(135deg, rgba(34,211,238,.18), rgba(124,58,237,.14));
      color:rgba(255,255,255,.95);
      font-weight:700;
      cursor:pointer;
      transition: transform .16s ease, filter .16s ease;
      user-select:none;
    }
    .btn:hover{ transform: translateY(-2px) scale(1.015); filter:saturate(1.08); }
    .btn:active{ transform: translateY(0) scale(1); }
    .btnGhost{ background:rgba(255,255,255,.04); }
    .btnSmall{ padding:10px 12px; font-size:.94rem; }

    .btnGlow{
      border-color: rgba(34,211,238,.62) !important;
      box-shadow:
        0 0 0 1px rgba(34,211,238,.35),
        0 0 18px rgba(34,211,238,.22),
        0 0 44px rgba(34,211,238,.14);
    }
    .btnGlow:hover{
      box-shadow:
        0 0 0 1px rgba(34,211,238,.45),
        0 0 22px rgba(34,211,238,.28),
        0 0 58px rgba(34,211,238,.18);
    }


    .btnGlowSoft{
      border-color: rgba(34,211,238,.46) !important;
      box-shadow:
        0 0 0 1px rgba(34,211,238,.20),
        0 0 12px rgba(34,211,238,.14),
        0 0 26px rgba(34,211,238,.08);
    }
    .btnGlowSoft:hover{
      box-shadow:
        0 0 0 1px rgba(34,211,238,.26),
        0 0 14px rgba(34,211,238,.18),
        0 0 32px rgba(34,211,238,.10);
    }
.btnFull{ width:100%; }

    .card{
      background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
      border:1px solid rgba(255,255,255,.12);
      border-radius:18px;
      box-shadow: 0 18px 56px rgba(0,0,0,.35);
    }
    .pad{ padding:18px; }

    .list{
      margin:14px 0 0;
      padding:0;
      list-style:none;
      display:grid;
      gap:10px;
    }

    /* Hero list spacing */
    .hero .list{ margin:18px 0 32px; }
.list li{
      position:relative;
      padding-left:18px;
      color:var(--muted);
    }
    .list li strong{ color:rgba(255,255,255,.92); font-weight:700; }
    .list li::before{
      content:"✓";
      position:absolute;
      left:0;
      top:0.1em;
      font-size:0.9rem;
      color:var(--a1);
    }
    .list.compact{ gap:8px; margin-top:12px; }
    .listCheckIcons li{
      padding-left:32px;
    }
    .listCheckIcons li::before{
      content:"✓";
      position:absolute;
      left:0;
      top:0.08em;
      width:20px;
      height:20px;
      border-radius:999px;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:.78rem;
      font-weight:950;
      line-height:1;
      color:rgba(255,255,255,.96);
      background:rgba(34,211,238,.92);
      box-shadow:0 0 0 1px rgba(255,255,255,.18), 0 0 22px rgba(0,0,0,.22);
    }

    /* ---------- Sections ---------- */
    .section{ padding: var(--sectionSpace) 0; scroll-margin-top: calc(var(--topbarH) + 16px); }
    .sectionHead{
      display:flex;
      flex-direction:column;
      align-items:center;
      text-align:center;
      gap:10px;
      margin-bottom:clamp(28px, 3.6vw, 40px);
    }

    h1{
      margin:0 0 12px;
      font-size: clamp(2.1rem, 4.8vw, 3.2rem);
      letter-spacing:-.03em;
      line-height:1.05;
    }
    h2{
      margin:0;
      font-size: clamp(1.82rem, 3.25vw, 2.48rem);
      letter-spacing:-.02em;
    }
    h3{
      margin:0 0 6px;
      letter-spacing:-.01em;
    }
    h4{ margin:0; letter-spacing:-.01em; }

    .grid2{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
      align-items:stretch;
    }
    .grid3{
      display:grid;
      grid-template-columns: repeat(3,1fr);
      gap:14px;
      align-items:stretch;
    }
    @media (max-width: 980px){
      .grid2{ grid-template-columns:1fr; }
      .grid3{ grid-template-columns:1fr; }
      .researchModesGrid{ grid-template-columns:1fr; }
    }

    /* ---------- Hero ---------- */
    .hero{ padding: clamp(44px, 6vw, 74px) 0 clamp(48px, 6vw, 78px); }
    .heroInner{
      display:grid;
      grid-template-columns: 1.22fr .78fr;
      gap:24px;
      align-items:stretch;
    }
    .lead{
      font-size:1.06rem;
      color:var(--muted);
      max-width:100%;
    }
    .leadLine{
      display:block;
    }
    .ctaRow{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin-top:18px;
    }

    /* ---------- Topic map (hero right column) ---------- */
    .topicMap{
      height:100%;
      padding:18px;
      border-radius:26px;
      border:1px solid rgba(255,255,255,.14);
      background:
        radial-gradient(1200px 600px at 0% 0%, rgba(34,211,238,.12), transparent 55%),
        radial-gradient(1000px 550px at 100% 0%, rgba(124,58,237,.12), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
      box-shadow: var(--shadow);
      position:relative;
      overflow:hidden;
    }
    .topicMap::after{
      content:"";
      position:absolute; inset:0;
      background:
        radial-gradient(900px 500px at 10% 0%, rgba(15,23,42,.9), transparent 60%),
        radial-gradient(900px 500px at 90% 100%, rgba(15,23,42,.95), transparent 65%);
      opacity:.95;
      mix-blend-mode:multiply;
      pointer-events:none;
    }
    .topicMapHeader{
      position:relative;
      z-index:1;
      display:flex;
      justify-content:flex-start;
      align-items:flex-start;
      gap:10px;
      margin-bottom:6px;
    }
    .topicMapTitleRow{
      display:flex;
      align-items:flex-start;
      gap:10px;
    }
    .topicMapIcon{
      width:30px;
      height:30px;
      border-radius:14px;
      display:flex;
      align-items:center;
      justify-content:center;
      border:1px solid rgba(255,255,255,.20);
      background:linear-gradient(135deg, rgba(34,211,238,.26), rgba(124,58,237,.26));
      color:#ffffff;
      flex:0 0 auto;
      box-shadow:0 0 18px rgba(34,211,238,.26);
    }
    .topicMapIcon svg{ width:17px; height:17px; display:block; }

    .topicMapHeader h3{
      margin:4px 0 0;
      font-size:1.02rem;
      letter-spacing:-.02em;
    }

    .topicMapTabs{
      position:relative;
      z-index:1;
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin-top:6px;
    }
    .topicTab{
      padding:7px 12px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.18);
      background:rgba(15,23,42,.92);
      color:rgba(255,255,255,.78);
      font-size:.86rem;
      font-weight:750;
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      white-space:nowrap;
      transition:
        background .16s ease,
        border-color .16s ease,
        color .16s ease,
        box-shadow .16s ease,
        transform .12s ease;
    }
    .topicTab.isActive,
    .topicTab:hover{
      background:linear-gradient(135deg, rgba(34,211,238,.32), rgba(124,58,237,.36));
      border-color:rgba(124,58,237,.75);
      color:#ffffff;
      box-shadow:0 12px 32px rgba(0,0,0,.9);
      transform:translateY(-1px);
    }
.topicMapCanvas{
      position:relative;
      z-index:1;
      margin-top:10px;
      border-radius:22px;
      border:1px solid rgba(15,23,42,1);
      background:
        radial-gradient(120% 140% at 10% 0%, rgba(15,23,42,1), rgba(15,23,42,.98)),
        radial-gradient(120% 140% at 90% 100%, rgba(15,23,42,1), rgba(2,6,23,1));
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.04),
        0 20px 40px rgba(0,0,0,.85);
      padding:10px;
      min-height:300px;
      overflow:hidden;
          opacity:0;
      transition: opacity .12s ease;
    }

    /* Topic map canvas bounds: prevent any visual overflow */
    .topicMapCanvas{ overflow:hidden; }
    .topicMapCanvas.isReady{ opacity:1; }

    .topicMapChart{
      width:100%;
      height:360px;
      display:block;
    }
    .topicMapCanvas.useECharts .topicMapChart{ display:block; }
    .topicMapCanvas.useECharts .topicMapSvg{ display:none !important; }
    .topicMapSvg{
      width:100%;
      height:auto;
      display:none !important;
    }
    .topicMapSvg.isActive{ display:none !important;
    }

    .topicMapSvg .topicEdge{
      stroke:rgba(148,163,184,.45);
      stroke-width:1.6;
      stroke-linecap:round;
    }
    .topicMapSvg .topicNodeGroup{
      cursor:pointer;
      transition:transform .12s ease;
    }
    .topicMapSvg .topicNodeCircle{
      fill:#2563eb;
      fill-opacity:.95;
      stroke:rgba(255,255,255,.30);
      stroke-width:1.6;
      filter:drop-shadow(0 0 12px rgba(37,99,235,.85));
      transition:fill-opacity .16s ease, filter .16s ease, r .16s ease;
    }
    .topicMapSvg .topicNodeCircle.secondary{
      fill:#1d4ed8;
      fill-opacity:.92;
      filter:drop-shadow(0 0 10px rgba(37,99,235,.7));
    }
    .topicMapSvg .topicNodeCircle.tertiary{
      fill:#0ea5e9;
      fill-opacity:.9;
      filter:drop-shadow(0 0 9px rgba(14,165,233,.7));
    }
    .topicMapSvg .topicNodeGroup:hover .topicNodeCircle{
      fill-opacity:1;
      filter:drop-shadow(0 0 14px rgba(59,130,246,1));
    }
    .topicMapSvg .topicNodeGroup:hover{
      transform:translateY(-1px);
    }
    .topicMapSvg .topicLabel{
      fill:rgba(226,232,240,.97);
      font-size:14px;
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      text-shadow:0 1px 3px rgba(0,0,0,.9);
    }
    .topicMapSvg .topicLabel.secondary{
      fill:rgba(203,213,225,.95);
      font-size:13px;
    }

    /* ---------- Topic map animation + drag ---------- */
    .topicMapSvg .topicNodeGroup{
      cursor:grab;
      transform-box: fill-box;
      transform-origin: center;
      touch-action:none;
    }
    .topicMapSvg .topicNodeGroup.isDragging{ cursor:grabbing; }

    .topicMapSvg.isAnimating .topicNodeGroup{
      opacity:0;
      animation: tmNodeIn .55s cubic-bezier(.2,.8,.2,1) forwards;
      animation-delay: var(--d, 0ms);
    }
    .topicMapSvg.isAnimating .topicEdge{
      opacity:0;
      stroke-dasharray: var(--len, 0);
      stroke-dashoffset: var(--len, 0);
      animation: tmEdgeDraw .70s cubic-bezier(.2,.8,.2,1) forwards;
      animation-delay: var(--d, 0ms);
    }
    @keyframes tmNodeIn{
      0%{ opacity:0; transform: translateY(6px) scale(.96); }
      100%{ opacity:1; transform: translateY(0) scale(1); }
    }
    @keyframes tmEdgeDraw{
      0%{ opacity:0; stroke-dashoffset: var(--len, 0); }
      20%{ opacity:.85; }
      100%{ opacity:1; stroke-dashoffset: 0; }
    }
    @media (prefers-reduced-motion: reduce){
      .topicMapSvg.isAnimating .topicNodeGroup,
      .topicMapSvg.isAnimating .topicEdge{
        animation:none;
        opacity:1;
        stroke-dasharray:none;
        stroke-dashoffset:0;
      }
    }

    @media (max-width: 980px){
      .heroInner{ grid-template-columns:1fr; }
    }

    /* ---------- HUD (legacy styling, unused for hero now) ---------- */
    .hud{
      height:100%;
      padding:18px;
      border-radius:26px;
      border:1px solid rgba(255,255,255,.14);
      background:
        radial-gradient(1200px 600px at 0% 0%, rgba(34,211,238,.12), transparent 55%),
        radial-gradient(1000px 550px at 100% 0%, rgba(124,58,237,.12), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
      box-shadow: var(--shadow);
      position:relative;
      overflow:hidden;
    }
    .hud::after{
      content:"";
      position:absolute; inset:0;
      background:
        linear-gradient(to right, rgba(255,255,255,.10) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255,255,255,.08) 1px, transparent 1px);
      background-size: 44px 44px;
      opacity:.12;
      pointer-events:none;
      mask-image: radial-gradient(45% 55% at 70% 30%, #000 30%, transparent 70%);
    }
    .hudTitle{ font-weight:800; margin-bottom:14px; }
    .hudGrid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
    .hudItem{
      padding:12px;
      border-radius:16px;
      background:rgba(255,255,255,.04);
      border:1px solid rgba(255,255,255,.10);
    }
    .hudLabel{ font-size:.88rem; color:rgba(255,255,255,.70); }
    .hudValue{ font-size:1.25rem; font-weight:900; margin:6px 0 2px; }
    .hudSub{ font-size:.9rem; color:rgba(255,255,255,.66); }
    .hudDivider{ height:1px; margin:14px 0 12px; background:rgba(255,255,255,.10); }

    .miniDash{ display:grid; gap:10px; position:relative; z-index:1; }
    .miniRow{
      display:flex;
      justify-content:space-between;
      align-items:center;
      padding:10px 12px;
      border-radius:14px;
      border:1px solid rgba(255,255,255,.10);
      background:rgba(255,255,255,.03);
      color:rgba(255,255,255,.80);
    }
    .miniRow strong{ font-weight:850; color:rgba(255,255,255,.92); }

    .spark{
      height:50px;
      border-radius:14px;
      border:1px solid rgba(255,255,255,.10);
      background:
        linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01)),
        radial-gradient(150px 60px at 20% 50%, rgba(34,211,238,.25), transparent 60%),
        radial-gradient(160px 60px at 60% 40%, rgba(124,58,237,.22), transparent 60%),
        radial-gradient(140px 60px at 85% 60%, rgba(163,230,53,.18), transparent 65%);
      overflow:hidden;
      position:relative;
    }
    .spark::after{
      content:"";
      position:absolute; inset:0;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
      transform: translateX(-35%);
      animation: shimmer 3.2s ease-in-out infinite;
      opacity:.9;
    }
    @keyframes shimmer{
      0%{ transform: translateX(-35%); }
      50%{ transform: translateX(35%); }
      100%{ transform: translateX(-35%); }
    }
    @media (prefers-reduced-motion: reduce){
      .spark::after{ animation:none; opacity:.35; }
    }

    /* ---------- Icon rows ---------- */
    .iconRow{ display:flex; align-items:center; gap:10px; margin-bottom:6px; }
    .iconBubble{
      width:28px; height:28px;
      border-radius:999px;
      display:flex;
      align-items:center;
      justify-content:center;
      background:linear-gradient(135deg, rgba(34,211,238,.26), rgba(124,58,237,.26));
      color:#ffffff;
      font-size:1rem;
      flex:0 0 auto;
      box-shadow:0 0 18px rgba(34,211,238,.35);
    }
    .iconBubble svg{ width:16px; height:16px; display:block; overflow:visible; }
    .iconBubble svg *{ vector-effect:non-scaling-stroke; }

        /* ---------- Workflow pipeline ---------- */
    .workflowPipeline{ padding-top:2px; }

    .pipelineGrid{
      display:grid;
      gap:16px;
      grid-template-columns: 1fr 1.15fr 1fr;
      align-items:stretch;
    }

    .pipelineCol{
      position:relative;
      overflow:hidden;
      border-radius:22px;
      padding:18px 18px 16px;
      background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.04));
      border:1px solid rgba(255,255,255,.12);
      box-shadow: 0 22px 76px rgba(0,0,0,.36);
    }

    .pipelineCol::before{
      content:"";
      position:absolute;
      inset:-1px;
      border-radius:inherit;
      padding:1px;
      background: linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.02));
      -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
              mask-composite: exclude;
      opacity:.75;
      pointer-events:none;
    }

    .pipelineHead{ margin-bottom:12px; }
    .pipelineKicker{
      display:inline-flex;
      align-items:center;
      gap:8px;
      font-size:.74rem;
      letter-spacing:.14em;
      text-transform:uppercase;
      font-weight:800;
      color: rgba(255,255,255,.72);
      margin-bottom:6px;
    }
    .pipelineHead h3{
      margin:0;
      letter-spacing:-.02em;
      font-size:1.08rem;
      line-height:1.2;
    }
    .pipelineHead p{ margin:8px 0 0; }

    .pipelineList{
      margin:14px 0 0;
      padding:0;
      list-style:none;
      display:grid;
      gap:12px;
    }
    .pipelineList li{
      display:flex;
      gap:10px;
      align-items:flex-start;
    }

    .pipeBullet{
      width:10px;
      height:10px;
      margin-top:7px;
      border-radius:999px;
      flex:0 0 auto;
      background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.88), rgba(255,255,255,.18));
      box-shadow:
        0 0 0 1px rgba(255,255,255,.22),
        0 0 18px rgba(255,255,255,.10);
    }

    .pipeMeta{
      color: rgba(226,232,240,.80);
      font-size:.92rem;
      line-height:1.35;
      margin-top:3px;
    }

    /* Column accents */
    .pipelineInputs::after,
    .pipelineOutputs::after{
      content:"";
      position:absolute;
      left:14px;
      right:14px;
      top:12px;
      height:2px;
      border-radius:999px;
      opacity:.65;
      pointer-events:none;
    }
    .pipelineInputs::after{ background: linear-gradient(90deg, rgba(124,58,237,.0), rgba(124,58,237,.95), rgba(124,58,237,.0)); }
    .pipelineOutputs::after{ background: linear-gradient(90deg, rgba(34,211,238,.0), rgba(34,211,238,.95), rgba(34,211,238,.0)); }

    .pipelineInputs .pipeBullet{
      background: radial-gradient(circle at 30% 30%, rgba(168,85,247,.95), rgba(124,58,237,.28));
      box-shadow:
        0 0 0 1px rgba(168,85,247,.38),
        0 0 20px rgba(124,58,237,.18);
    }
    .pipelineOutputs .pipeBullet{
      background: radial-gradient(circle at 30% 30%, rgba(34,211,238,.95), rgba(34,211,238,.20));
      box-shadow:
        0 0 0 1px rgba(34,211,238,.34),
        0 0 20px rgba(34,211,238,.14);
    }

    /* Engine emphasis */
    .pipelineEngine{
      border-color: rgba(148,163,184,.46);
      box-shadow:
        0 26px 92px rgba(0,0,0,.42),
        0 0 0 1px rgba(34,211,238,.12),
        0 0 26px rgba(34,211,238,.10),
        0 0 48px rgba(124,58,237,.12);
    }
    .pipelineEngine::before{
      background: linear-gradient(135deg, rgba(34,211,238,.70), rgba(124,58,237,.62), rgba(34,211,238,.60));
      opacity:.55;
    }
    .pipelineEngine::after{
      content:"";
      position:absolute;
      inset:-12px;
      border-radius:inherit;
      background: linear-gradient(135deg, rgba(34,211,238,.22), rgba(124,58,237,.20), rgba(34,211,238,.14));
      filter: blur(22px);
      opacity:.18;
      pointer-events:none;
      z-index:-1;
    }

    .pipelineSteps{
      margin:14px 0 0;
      padding:0;
      list-style:none;
      display:grid;
      gap:12px;
    }

    .pipeStep{
      display:flex;
      align-items:flex-start;
      gap:10px;
      padding:12px 12px;
      border-radius:18px;
      border:1px solid rgba(255,255,255,.10);
      background: rgba(0,0,0,.16);
    }

    .pipeStepNum{
      width:34px;
      height:34px;
      border-radius:12px;
      display:flex;
      align-items:center;
      justify-content:center;
      color:#fff;
      font-weight:900;
      font-size:.92rem;
      line-height:1;
      border:1px solid rgba(255,255,255,.16);
      background: linear-gradient(135deg, rgba(34,211,238,.22), rgba(124,58,237,.22));
      box-shadow: 0 0 18px rgba(34,211,238,.18);
      flex:0 0 auto;
    }

    .pipeStepBody strong{ display:block; letter-spacing:-.01em; }
    .pipeStepBody .pipeMeta{ margin-top:4px; }

    /* Shared foundation band */
    .pipelineShared{
      margin-top:16px;
      border-radius:22px;
      padding:16px 18px 14px;
      border:1px solid rgba(255,255,255,.12);
      background: linear-gradient(135deg, rgba(124,58,237,.10), rgba(34,211,238,.08));
      box-shadow: 0 20px 76px rgba(0,0,0,.34);
      position:relative;
      overflow:hidden;
    }
    .pipelineShared::before{
      content:"";
      position:absolute;
      inset:-1px;
      border-radius:inherit;
      padding:1px;
      background: linear-gradient(90deg, rgba(124,58,237,.55), rgba(34,211,238,.55));
      -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
              mask-composite: exclude;
      opacity:.40;
      pointer-events:none;
    }
    .pipelineSharedHead{
      display:flex;
      align-items:baseline;
      justify-content:space-between;
      gap:12px;
      margin-bottom:12px;
    }
    .pipelineSharedTitle{
      font-weight:900;
      letter-spacing:-.01em;
      color:#fff;
    }
    .pipelineSharedGrid{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap:14px;
    }
    .pipeSharedItem{
      padding:12px 12px;
      border-radius:18px;
      border:1px solid rgba(255,255,255,.10);
      background: rgba(0,0,0,.14);
    }
    .pipeSharedItem strong{ display:block; letter-spacing:-.01em; }

    @media (max-width: 980px){
      .pipelineGrid{ grid-template-columns: 1fr; }
      .pipelineSharedGrid{ grid-template-columns: 1fr; }
      .pipelineSharedHead{ flex-direction:column; align-items:flex-start; }
    }

/* ---------- Callout ---------- */
    .callout{
      margin-top:14px;
      padding:14px 16px;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.03);
      color:rgba(255,255,255,.84);
    }
    .calloutHeader{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:8px;
    }
    .calloutHeader h3{
      margin:0;
      letter-spacing:-.01em;
      color:rgba(255,255,255,.92);
    }
    .callout p{ margin:0; color:var(--muted); }
    .calloutBadge{
      width:28px;
      height:28px;
      border-radius:999px;
      display:flex;
      align-items:center;
      justify-content:center;
      border:1px solid rgba(255,255,255,.12);
      background:linear-gradient(135deg, rgba(34,211,238,.18), rgba(124,58,237,.16));
      font-weight:950;
      color:#ffffff;
      box-shadow:0 0 18px rgba(34,211,238,.25);
      flex:0 0 auto;
    }
    .calloutBlue{
      border-color: rgba(34,211,238,.30);
      box-shadow:
        0 0 0 1px rgba(34,211,238,.18),
        0 18px 60px rgba(34,211,238,.18);
    }

    /* ---------- Plans ---------- */
    .pricing{
      display:grid;
      grid-template-columns: repeat(4, 1fr);
      gap:14px;
      align-items:stretch;
      margin-top:42px;
    }
    @media (max-width: 1120px){
      .pricing{ grid-template-columns: 1fr 1fr; }
    }
    @media (max-width: 720px){
      .pricing{ grid-template-columns: 1fr; }
    }
    #plans .pricing{
      margin-top:64px;
    }
    .plansIntroRow{
      display:flex;
      align-items:center;
      justify-content:center;
      gap:12px;
      margin-top:4px;
      text-align:center;
    }
    .plansIntroText{
      margin:0;
      color:var(--muted);
      text-align:center;
    }
    .plansIntroRow .btn{
      white-space:nowrap;
      flex:0 0 auto;
      padding:12px 18px;
      font-size:1rem;
    }
    @media (max-width: 860px){
      .plansIntroRow{
        flex-direction:column;
        align-items:center;
      }
    }
    .planPolicyRow{
      display:grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap:14px;
      align-items:stretch;
      margin-top:14px;
    }
    @media (max-width: 720px){
      .planPolicyRow{ grid-template-columns: 1fr; }
    }

    .planPolicyCard{
      padding:18px 18px 16px;
      border-radius:22px;
      border:1px solid rgba(255,255,255,.12);
      background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
      box-shadow:0 22px 70px rgba(0,0,0,.35);
      display:flex;
      flex-direction:column;
    }
    .planPolicyCard h3{
      margin:0 0 10px;
      font-size:1.02rem;
      letter-spacing:-.01em;
    }
    .planPolicyCard .list.compact{ margin-top:0; }
    .planPolicyCardEmergency{ border-color: rgba(239,68,68,.80); }

    .priceCard{
      padding:24px 18px 18px;
      border-radius:26px;
      border:1px solid rgba(255,255,255,.12);
      background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
      box-shadow: 0 22px 70px rgba(0,0,0,.35);
      display:flex;
      flex-direction:column;
      gap:10px;
      position:relative;
      overflow:visible;
    }
    .priceTop{
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:flex-start;
      gap:12px;
      margin-bottom:8px;
      text-align:center;
    }
    .priceTop h3{
      margin:0;
      font-size:1.5rem;
      letter-spacing:-.02em;
    }
    .planPrice{
      font-size:1.6rem;
      font-weight:900;
      letter-spacing:-.03em;
      color:rgba(255,255,255,.98);
    }
    .planPriceUnit{
      font-size:.55em;
      font-weight:760;
      letter-spacing:normal;
      color:rgba(255,255,255,.74);
      margin-left:4px;
      white-space:nowrap;
    }

    .planFlag{
      position:absolute;
      top:0;
      left:50%;
      transform:translate(-50%, -115%);
      padding:5px 12px;
      border-radius:999px;
      font-size:.86rem;
      font-weight:800;
      letter-spacing:-.01em;
      border:1px solid rgba(255,255,255,.18);
      color:rgba(255,255,255,.96);
      white-space:nowrap;
      z-index:2;
    }
    .planFlagHot{
      background:linear-gradient(135deg, #a855f7, #7c3aed);
      border-color:rgba(124,58,237,.85);
      box-shadow:none;
    }
    .planFlagPro{
      background:linear-gradient(135deg, var(--red1), var(--red2));
      border-color:rgba(239,68,68,.9);
      box-shadow:none;
    }

    .tag{
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.03);
      color:rgba(255,255,255,.80);
      font-size:.86rem;
      font-weight:850;
      white-space:nowrap;
    }
    .tagHot{
      background:linear-gradient(135deg, rgba(34,211,238,.18), rgba(124,58,237,.18));
      border-color: rgba(34,211,238,.30);
    }
    .tagPro{
      background:linear-gradient(135deg, rgba(163,230,53,.16), rgba(34,211,238,.14));
      border-color: rgba(163,230,53,.26);
    }

    .priceCardBasic{
      border-color: rgba(34,211,238,.30);
    }
    .priceCardHot{
      border-color: rgba(124,58,237,.65);
      box-shadow: 0 22px 70px rgba(0,0,0,.35);
    }
    .priceCardPro{
      border-color: rgba(239,68,68,.80);
      box-shadow: 0 22px 70px rgba(0,0,0,.35);
    }


    /* ---------- Research modes section ---------- */
    .researchModesSection{
      padding-top: var(--sectionSpace);
    }
    .researchModesSection.revealOnScroll{
      transition: opacity .38s cubic-bezier(.2,.8,.2,1), transform .38s cubic-bezier(.2,.8,.2,1);
    }
    .researchModesHead{
      display:flex;
      flex-direction:column;
      align-items:center;
      text-align:center;
      gap:10px;
      margin-bottom:clamp(24px, 3vw, 34px);
    }
    .researchModesGrid{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:14px;
      align-items:start;
    }
    .researchModeCard{
      padding:22px;
      border-radius:24px;
      border:1px solid rgba(255,255,255,.10);
      background:rgba(255,255,255,.035);
      min-height:100%;
      position:relative;
      overflow:hidden;
      transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
    }
    .researchModeCard::before{
      content:"";
      position:absolute;
      left:18px;
      right:18px;
      top:10px;
      height:3px;
      border-radius:999px;
      background:linear-gradient(90deg, transparent, rgba(34,211,238,.84), rgba(124,58,237,.84), transparent);
      opacity:.9;
    }
    .researchModeCard:hover{
      transform:translateY(-2px);
      border-color:rgba(255,255,255,.16);
      box-shadow:0 18px 50px rgba(0,0,0,.26);
    }
    .researchModeTag{
      display:inline-flex;
      align-items:center;
      gap:8px;
      margin-bottom:14px;
      padding:7px 11px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.10);
      background:rgba(255,255,255,.04);
      color:rgba(255,255,255,.72);
      font-size:.8rem;
      font-weight:800;
      letter-spacing:.02em;
    }
    .researchModeCard p{
      margin-top:10px;
      color:var(--muted);
      line-height:1.45;
    }

    .emergencyCard{
      border-color: rgba(239,68,68,.80);
      box-shadow: 0 18px 56px rgba(0,0,0,.35);
    }

    /* ---------- FAQ ---------- */
    .faq{ display:grid; grid-template-columns: 1fr; gap:8px; margin-top:10px; }
    .faqGroupTitle{
      grid-column:1 / -1;
      margin:18px 0 6px;
      padding:0 2px;
      color:rgba(255,255,255,.52);
      font-size:.78rem;
      font-weight:900;
      letter-spacing:.14em;
      text-transform:uppercase;
    }
    .faqGroupTitle:first-child{ margin-top:0; }
    details.qa{
      border-radius:14px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.03);
      overflow:hidden;
      font-size:.94rem;
    }
    details.qa summary{
      cursor:pointer;
      padding:10px 12px;
      font-weight:800;
      color:rgba(255,255,255,.90);
      list-style:none;
    }
    details.qa summary::-webkit-details-marker{ display:none; }
    details.qa p{
      margin:0 0 6px;
      padding:0 12px;
      color:var(--muted);
    }
    details.qa ul{
      margin:4px 0 8px;
      padding:0 0 0 26px;
      color:var(--muted);
    }
    .faqMore{ margin-top:14px; }
    .isHidden{ display:none !important; }

    /* ---------- Footer ---------- */
    .footer{
      position:relative;
      padding:26px 0 40px;
      border-top:none;
      background:transparent;
    }
    .footerInner{
      display:flex;
      flex-wrap:wrap;
      align-items:flex-start;
      justify-content:space-between;
      gap:14px;
    }
    .footerTop{
      position:relative;
    }
    .footerTop::before{
      content:"";
      position:absolute;
      left:-6px;
      right:0;
      top:-26px;
      height:1px;
      background:rgba(255,255,255,.08);
      pointer-events:none;
    }

    .footerTop > div:first-child{
      flex:1 1 520px;
      min-width:320px;
    }

    .footerBrandTitle{
      margin-bottom:6px;
      font-weight:900;
      letter-spacing:-.02em;
      font-size:1.08rem;
    }
    .footerBrandTagline{
      margin:0;
      color:rgba(255,255,255,.96);
      font-weight:500;
      letter-spacing:-.02em;
      line-height:1.2;
    }
    .footerActions{
      display:flex;
      flex-direction:column;
      align-items:flex-end;
      gap:10px;
    }
    .footerLinks{
      display:flex;
      flex-direction:row;
      flex-wrap:wrap;
      align-items:flex-start;
      justify-content:flex-start;
      gap:8px 10px;
      color:rgba(255,255,255,.72);
    }
    .footerSocialRow{
      display:flex;
      justify-content:flex-end;
      width:100%;
    }
    .footerLinkedin{
      width:40px;
      height:40px;
      border-radius:12px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      border:1px solid transparent;
      background:transparent;
      color:rgba(255,255,255,.88);
      transition:background .18s ease, border-color .18s ease, transform .18s ease, color .18s ease;
    }
    .footerLinkedin:hover{
      background:rgba(255,255,255,.05);
      border-color:rgba(255,255,255,.16);
      color:rgba(255,255,255,.96);
      transform:translateY(-1px);
    }
    .footerLinkedin svg{
      width:18px;
      height:18px;
      display:block;
      fill:currentColor;
    }
    .footerLinks a{
      padding:8px 10px;
      border-radius:12px;
      border:1px solid transparent;
    }
    .footerLinks a:hover{
      background:rgba(255,255,255,.04);
      border-color:rgba(255,255,255,.10);
      color:rgba(255,255,255,.90);

    }

    @media (max-width: 720px){
      .footerActions{
        align-items:flex-start;
      }
      .footerBottomInner{
        justify-content:flex-start;
        flex-wrap:wrap;
      }
      .footerBottomSocialRow{
        justify-content:flex-start;
      }
    }

    .footerDisclaimer{
      margin:8px 0 0;
      font-size:.92rem;
      line-height:1.35;
      color:var(--soft);
      max-width:none;
      }
    .footerBottom{
      margin-top:18px;
      padding-top:14px;
      border-top:none;
    }
    .footerBottomInner{
      position:relative;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      font-size:.92rem;
      color:var(--soft);
    }
    .footerBottomCopy{
      text-align:left;
    }
    .footerBottomSocialRow{
      display:flex;
      align-items:center;
      justify-content:flex-end;
      flex:0 0 auto;
      margin-top:0;
    }
    .footerBottomInner::before{
      content:"";
      position:absolute;
      left:-6px;
      right:0;
      top:-14px;
      height:1px;
      background:rgba(255,255,255,.08);
      pointer-events:none;
    }
}

    /* ---------- Helpers ---------- */
    .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;
    }
    html{ scroll-behavior:smooth; }
    #mock-analysis{
      scroll-margin-top: calc(var(--topbarH) + 4px);
      padding-top: var(--sectionSpace);
    }

    /* ---------- Shared “title row” icon style ---------- */
    .teamTitleRow{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:10px;
    }
    .teamTitleRow h3{ margin:0; }

    .teamIcon{
      width:34px; height:34px;
      border-radius:14px;
      display:flex;
      align-items:center;
      justify-content:center;
      border:1px solid rgba(255,255,255,.20);
      background:linear-gradient(135deg, rgba(34,211,238,.26), rgba(124,58,237,.26));
      color:#ffffff;
      flex:0 0 auto;
      box-shadow:0 0 18px rgba(34,211,238,.18);
    }
    .teamIcon svg{ width:18px; height:18px; display:block; }

    /* ---------- Why Reddit Is a Strategic Signal Layer ---------- */
    .whyRowTop{
      display:grid;
      grid-template-columns: repeat(3, 1fr);
      gap:14px;
      align-items:stretch;
      margin-top:6px;
    }
    @media (max-width: 1100px){
      .whyRowTop{ grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 720px){
      .whyRowTop{ grid-template-columns: 1fr; }
    }

    .whyCard{
      padding:14px;
      border-radius:18px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.03);
      box-shadow: 0 14px 44px rgba(0,0,0,.24);
      height:100%;
    }
    .whyHeader{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:8px;
    }
    .whyHeader h3{
      margin:0;
      letter-spacing:-.01em;
      color:rgba(255,255,255,.92);
    }
    .whyCard p{
      margin:0;
      color:var(--muted);
      font-size:1rem;
    }

    .whyRowBottom{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
      align-items:stretch;
      margin-top:14px;
    }
    @media (max-width: 920px){
      .whyRowBottom{ grid-template-columns: 1fr; }
    }
    .signalLong{
      padding:16px;
      height:100%;
    }

    /* ---------- Data science advantage section ---------- */
    .dsPanel{
      border-radius:24px;
      border:1px solid rgba(255,255,255,.12);
      background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.02));
      box-shadow: 0 18px 56px rgba(0,0,0,.35);
      padding:18px;
      max-width:100%;
      box-sizing:border-box;
      overflow:hidden;
    }
    .dsTopGrid{ margin-top:6px; }
    .dsMiniRow{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:8px;
    }
    .dsMiniRow h3{ margin:0; letter-spacing:-.01em; }
    .dsBar{
      margin-top:14px;
      padding:14px 16px;
      border-radius:18px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.03);
      color:rgba(255,255,255,.88);
      font-weight:850;
      letter-spacing:-.01em;
    }
    .dsWide{
      margin-top:36px;
      display:flex;
      gap:12px;
      align-items:flex-start;
    }
    .dsWideText p{ margin:0; color:var(--muted); }
    @media (max-width: 720px){
      .dsWide{ flex-direction:column; }
    }

/* ---------- Team access ---------- */
.hudCard{
  height:100%;
  padding:0;
  border-radius:0;
  border:0;
  background:transparent;
  box-shadow:none;
  position:relative;
  overflow:visible;
}
.teamShell{
  --teamTabWidth: 18px;
  --teamTabHeight: 44px;
  --teamClosedInset: var(--teamTabWidth);
  --teamPanelGap: 22px;
  margin-top:4px;
  position:relative;
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
  overflow:visible;
}
#workspace{
  padding-bottom: clamp(48px, 6vw, 78px);
}
#plans{
  padding-top: var(--sectionSpace);
}
.teamShellInner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0, calc(100% - var(--teamClosedInset)));
  gap:0;
  align-items:stretch;
}
.teamShell.isTeamPanelOpen .teamShellInner{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--teamPanelGap);
}
@media (max-width: 980px){
  .teamShell{
    --teamTabWidth: 16px;
    --teamTabHeight: 38px;
    --teamClosedInset: var(--teamTabWidth);
    --teamPanelGap: 16px;
  }
  .teamShellInner,
  .teamShell.isTeamPanelOpen .teamShellInner{
    grid-template-columns:1fr;
    gap:14px;
  }
}
.teamLeft{
  position:relative;
  display:flex;
  flex-direction:column;
  align-self:stretch;
  min-width:0;
  min-height:100%;
  padding:22px 24px 20px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow:none;
  overflow:visible;
  isolation:isolate;
}
.teamLeft::before{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  top:12px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, rgba(34,211,238,.94), rgba(124,58,237,.94), transparent);
  opacity:.98;
  pointer-events:none;
}
.teamLeft p{ margin:0 0 10px; }
.teamLeft > .list{
  flex:1 1 auto;
  min-height:0;
  margin:18px 0 0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:14px;
}
.teamLeft > .list li{
  flex:0 0 auto;
}
.teamShell.isTeamPanelOpen .teamLeft > .list{
  justify-content:space-between;
  gap:16px;
}
.teamLeft > .list.workspaceList,
.teamShell.isTeamPanelOpen .teamLeft > .list.workspaceList{
  justify-content:flex-start;
  gap:10px;
}
.teamRevealTab{
  position:absolute;
  top:50%;
  right:calc(var(--teamTabWidth) * -1);
  transform:translateY(-50%);
  display:block;
  width:var(--teamTabWidth);
  height:var(--teamTabHeight);
  padding:0;
  appearance:none;
  border:1px solid rgba(124,58,237,.86);
  border-left:0;
  border-radius:0 999px 999px 0;
  background:linear-gradient(180deg, rgba(168,85,247,.96), rgba(124,58,237,.96));
  box-shadow:0 10px 20px rgba(76,29,149,.16);
  cursor:pointer;
  z-index:4;
  transition:filter .18s ease, transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.teamRevealTab:hover{
  transform:translateY(-50%) translateX(1px);
  filter:saturate(1.05) brightness(1.03);
  box-shadow:0 12px 22px rgba(76,29,149,.20);
}
.teamRevealTab:focus-visible{
  outline:none;
  border-color:rgba(196,181,253,.96);
  box-shadow:
    0 0 0 3px rgba(124,58,237,.16),
    0 12px 24px rgba(76,29,149,.20);
}
@media (max-width: 980px){
  .teamLeft > .list,
  .teamShell.isTeamPanelOpen .teamLeft > .list{
    justify-content:flex-start;
    gap:12px;
  }
  .teamRevealTab{
    top:22px;
    right:calc(var(--teamTabWidth) * -1);
    transform:none;
  }
  .teamRevealTab:hover{
    transform:translateX(1px);
  }
}
.teamInnerCard{
  border-radius:24px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  padding:18px;
  box-shadow:none;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-self:stretch;
  min-width:0;
  min-height:100%;
  opacity:0;
  transform:translateX(-12px);
  pointer-events:none;
  transition:opacity .22s ease, transform .22s ease;
}
.teamInnerCard[hidden]{
  display:none !important;
}
.teamInnerCard.isVisible{
  opacity:1;
  transform:translateX(0);
  pointer-events:auto;
}
.teamInnerCardHot{
  border-color:rgba(255,255,255,.12);
  box-shadow:none;
  padding-top:26px;
}
.teamInnerCardHot::before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:10px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, rgba(34,211,238,.92), transparent);
  opacity:.95;
  pointer-events:none;
}
.teamInnerTop{
  display:grid;
  gap:12px;
  align-content:start;
  flex:1 1 auto;
  margin-bottom:10px;
}
.teamCtas{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:auto;
}
@media (max-width: 980px){
  .teamInnerCard{
    transform:translateY(-6px);
  }
  .teamInnerCard.isVisible{
    transform:translateY(0);
  }
}
@media (prefers-reduced-motion: reduce){
  .teamRevealTab,
  .teamInnerCard{
    transition:none;
  }
}
.teamGlowBox{
      margin:10px 0 12px;
      padding:12px 14px;
      border-radius:16px;
      border:1px solid rgba(124,58,237,.30);
      background:
        radial-gradient(700px 180px at 20% 0%, rgba(124,58,237,.22), transparent 62%),
        rgba(255,255,255,.03);
      box-shadow:
        0 0 0 1px rgba(124,58,237,.14),
        0 18px 60px rgba(124,58,237,.10);
      color:rgba(255,255,255,.86);
    }
    .teamGlowBox p{ margin:0; color:rgba(255,255,255,.80); }

    /* ---------- Contact section (CSS kept for completeness) ---------- */
    .contactShell{
      border-radius:26px;
      border:1px solid rgba(255,255,255,.12);
      background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
      box-shadow: 0 22px 70px rgba(0,0,0,.35);
      padding:18px;
      max-width:100%;
      box-sizing:border-box;
      overflow:hidden;
    }
    .contactGrid{
      display:grid;
      grid-template-columns: .95fr 1.05fr;
      gap:14px;
      align-items:stretch;
    }
    @media (max-width: 980px){
      .contactGrid{ grid-template-columns:1fr; }
    }

    .field{ display:grid; gap:6px; }
    .field label{
      font-size:.92rem;
      color:rgba(255,255,255,.78);
      font-weight:750;
      letter-spacing:-.01em;
    }
    .input, .select, .textarea{
      width:100%;
      padding:12px 14px;
      border-radius:14px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.03);
      color:rgba(255,255,255,.92);
      font: inherit;
    }
    .textarea{ min-height:140px; resize:vertical; }

    .formGrid2{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:12px;
    }
    @media (max-width: 720px){
      .formGrid2{ grid-template-columns:1fr; }
    }

    .contactAside{
      border-radius:18px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.03);
      padding:14px;
      display:flex;
      flex-direction:column;
    }
    .contactAsideHeader{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:10px;
    }
    .contactAsideHeader h3{ margin:0; letter-spacing:-.01em; }

    .pillRow{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:12px;
    }
    .pill{
      padding:8px 10px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.03);
      color:rgba(255,255,255,.78);
      font-size:.88rem;
      font-weight:750;
      white-space:nowrap;
    }

    .contactPromise{
      margin-top:12px;
      padding:12px;
      border-radius:16px;
      border:1px solid rgba(124,58,237,.26);
      background:
        radial-gradient(700px 190px at 20% 0%, rgba(124,58,237,.20), transparent 62%),
        rgba(255,255,255,.03);
      box-shadow: 0 18px 56px rgba(124,58,237,.08);
    }
    .contactPromiseTop{
      display:flex;
      align-items:center;
      gap:10px;
      margin-bottom:8px;
    }
    .contactPromiseTop strong{
      color:rgba(255,255,255,.92);
      font-weight:900;
      letter-spacing:-.01em;
    }
    .contactPromise p{
      margin:0;
      color:rgba(255,255,255,.78);
    }

    select.select{
      color: rgba(255,255,255,.92);
      background-color: rgba(255,255,255,.03);
    }
    select.select option{
      background-color:#0c0f18;
      color:rgba(255,255,255,.92);
    }

    /* ---------- DS problems + guardrails layout ---------- */
    .dsProblemsRow{
      margin-top:12px;
      display:grid;
      grid-template-columns: repeat(3, minmax(0,1fr));
      gap:14px;
      align-items:stretch;
    }
    .guardrailsBlock{
      margin-top:32px;
    }
    .guardrailsGridWide{
      margin-top:12px;
      display:grid;
      grid-template-columns: repeat(2, minmax(0,1fr));
      gap:14px;
      align-items:stretch;
    }
    .guardrailCard{
      border-color: rgba(34,211,238,.30);
      box-shadow:
        0 0 0 1px rgba(34,211,238,.14),
        0 18px 60px rgba(34,211,238,.14);
    }

    .guardrailCard .stepHeader h3{
      margin:0;
      letter-spacing:-.01em;
    }
    @media (max-width: 980px){
      .dsProblemsRow{ grid-template-columns:1fr; }
      .guardrailsGridWide{ grid-template-columns:1fr; }
    }

    .dsGlowGroup{
      border-radius:20px;
      border:none;
      box-shadow:none;
      background:transparent;
      padding:10px 14px 16px;
      margin:4px 0 18px;
    }

    .dsGroupPlain{
      border-radius:20px;
      border:none;
      box-shadow:none;
      background:transparent;
      padding:0;
      margin:4px 0 18px;
    }

    .dsGlowTitle{
      display:flex;
      align-items:center;
      justify-content:flex-start;
      padding:2px 0 8px;
      border-radius:14px;
      border:none;
      background:transparent;
      box-shadow:none;
      color:rgba(255,255,255,.92);
      margin:0 0 8px;
    }
    .dsGlowTitle--guardrails{
      margin-top:0;
      margin-bottom:8px;
    }

    /* ---------- Competitive advantage comparison ---------- */
    .dsPanel--compare{
      border-radius:24px;
      border:1px solid rgba(255,255,255,.08);
      background: linear-gradient(180deg, rgba(255,255,255,.050), rgba(255,255,255,.022));
      box-shadow: 0 26px 88px rgba(0,0,0,.40);
      padding:18px 18px 16px;
    }
    .compareIntro{ margin-bottom:12px; }
    .compareTitle{ margin:0 0 6px; letter-spacing:-.02em; }
    .compareSub{ max-width:78ch; }

    .compareTable{
      display:grid;
      grid-template-columns: 190px minmax(0,1fr) minmax(0,1fr);
      border-top:1px solid rgba(255,255,255,.08);
      border-radius:18px;
      overflow:hidden;
    }
    .compareRow{ display:contents; }
    .compareCell{
      padding:14px 14px;
      border-bottom:1px solid rgba(255,255,255,.08);
      background: rgba(255,255,255,.018);
      min-width:0;
    }
    .compareRow--head .compareCell{
      background: rgba(255,255,255,.028);
      border-bottom:1px solid rgba(255,255,255,.10);
    }

    .compareTable .compareCell:nth-child(3n){
      background: rgba(34,211,238,.035);
    }
    .compareTable .compareRow--head .compareCell:nth-child(3n){
      background: rgba(34,211,238,.060);
    }

    .compareCell--label{
      background: rgba(0,0,0,.00);
      color: rgba(255,255,255,.86);
      font-weight:700;
      letter-spacing:-.01em;
    }

    .comparePill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:6px 10px;
      border-radius:999px;
      font-size:12px;
      letter-spacing:.02em;
      border:1px solid rgba(255,255,255,.12);
      background: rgba(255,255,255,.03);
    }
    .comparePill--glow{
      border-color: rgba(34,211,238,.35);
      box-shadow: 0 0 0 1px rgba(34,211,238,.14), 0 16px 44px rgba(34,211,238,.18);
    }
    .compareColTitle{
      margin-top:8px;
      font-weight:800;
      letter-spacing:-.02em;
    }

    .compareItem{
      display:flex;
      gap:10px;
      align-items:flex-start;
    }
    .compareMark{
      width:22px;
      height:22px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      border-radius:7px;
      font-weight:900;
      flex:0 0 auto;
      margin-top:1px;
      user-select:none;
    }
    .compareMark--check{
      background: rgba(34,211,238,.14);
      color: rgba(195,255,255,.95);
      border:1px solid rgba(34,211,238,.35);
      box-shadow: 0 0 0 1px rgba(34,211,238,.10);
    }
    .compareMark--x{
      background: rgba(255,255,255,.06);
      color: rgba(255,255,255,.72);
      border:1px solid rgba(255,255,255,.14);
    }
    .compareText{
      color: rgba(255,255,255,.82);
      line-height:1.35;
    }
    .compareMiniList{
      margin:8px 0 0 18px;
      padding:0;
    }
    .compareMiniList li{
      margin:4px 0;
      color: rgba(255,255,255,.78);
    }

    .compareFooter{
      display:flex;
      gap:12px;
      align-items:flex-start;
      margin-top:14px;
      padding:14px 14px;
      border-radius:18px;
      border:1px solid rgba(34,211,238,.22);
      background: rgba(34,211,238,.06);
      box-shadow: 0 0 0 1px rgba(34,211,238,.12), 0 20px 70px rgba(0,0,0,.35);
    }
    .compareFooterIcon{
      width:42px;
      height:42px;
      border-radius:14px;
      border:1px solid rgba(34,211,238,.25);
      display:flex;
      align-items:center;
      justify-content:center;
      background: rgba(0,0,0,.20);
      flex:0 0 auto;
    }
    .compareFooterIcon svg{ width:22px; height:22px; opacity:.95; }

    @media (max-width: 980px){
      .compareTable{ grid-template-columns:1fr; border-top:none; }
      .compareRow--head .compareCell--label{ display:none; }
      .compareCell{
        border-bottom:none;
        border-top:1px solid rgba(255,255,255,.08);
      }
      .compareCell--label{
        font-size:12px;
        text-transform:uppercase;
        letter-spacing:.08em;
        opacity:.88;
      }
      .compareTable .compareCell:nth-child(3n){
        background: rgba(34,211,238,.035);
      }
    }



    /* ---------- Dual comparison cards (Redreach-style layout) ---------- */
    .dsPanel--compare{
      border:none;
      background:transparent;
      box-shadow:none;
      padding:0;
      overflow:visible; /* prevent hover lift from clipping */
    }
    .dsCompareDual{
      display:grid;
      grid-template-columns: minmax(0,1fr) minmax(0,1fr);
      gap:44px; /* extra room so glows never collide */
      align-items:stretch;
    }
    .dsCompareCard{
  position:relative;
  border-radius:24px;
  padding:22px 20px 20px;
  border:1px solid rgba(255,255,255,.13);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow: 0 22px 70px rgba(0,0,0,.34);
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow: visible;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.dsCompareCard::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:10px;
  height:4px;
  border-radius:999px;
  background: linear-gradient(90deg, transparent, var(--dsAccent), transparent);
  opacity:.95;
  pointer-events:none;
}
.dsCompareCard--bad{
  /* Premium lane-style stripe + icons (purple accent) */
  --dsAccent: rgba(168,85,247,.92);
  border-color: rgba(255,255,255,.13);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow: 0 22px 70px rgba(0,0,0,.34);
}
.dsCompareCard--good{
  /* Premium lane-style stripe + icons (blue accent) */
  --dsAccent: rgba(34,211,238,.92);
  border-color: rgba(255,255,255,.13);
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  box-shadow: 0 22px 70px rgba(0,0,0,.34);
}
    .dsCompareHead{ margin-bottom:22px; text-align:left; display:flex; flex-direction:column; align-items:flex-start; }
    .dsCompareTitle{
      text-align:left;
      font-weight:850;
      letter-spacing:-.02em;
      font-size: clamp(1.35rem, 1.2vw + 1rem, 1.65rem);
      line-height:1.15;
    }
    .dsCompareSub{ margin-top:4px; }

    .dsCompareList{
      list-style:none;
      padding:0 0 18px;
      margin:0;
      display:flex;
      flex-direction:column;
      gap:24px;
    }
    .dsCompareItem{
      display:flex;
      gap:14px;
      align-items:flex-start;
      padding:6px 0;
    }
    .dsCompareIcon{
  width:20px;
  height:20px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:950;
  flex:0 0 20px;
  margin-top:2px;
  user-select:none;
  font-size:.78rem;
  color: rgba(255,255,255,.96);
  background: var(--dsAccent, rgba(255,255,255,.28));
  box-shadow: 0 0 0 1px rgba(255,255,255,.18), 0 0 22px rgba(0,0,0,.22);
}
.dsCompareIcon--x{
  background: rgba(168,85,247,.92);
}
.dsCompareIcon--check{
  background: rgba(34,211,238,.92);
}
    .dsCompareItemTitle{
      font-weight:780;
      letter-spacing:-.01em;
      margin-bottom:2px;
    }
    .dsCompareItemText{ line-height:1.35; }

    .dsCompareBottom{
      margin-top:auto;
      padding:14px 14px;
      border-radius:14px;
      display:flex;
      align-items:center;
      gap:10px;
      font-weight:750;
      letter-spacing:-.01em;
    }
    .dsCompareBottomIcon{
      width:22px;
      height:22px;
      border-radius:999px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      font-weight:900;
      flex:0 0 auto;
    }
    .dsCompareBottom--bad{
      border:1px solid rgba(168,85,247,.30);
      background: rgba(168,85,247,.08);
      color: rgba(255,255,255,.90);
    }
    .dsCompareBottom--bad .dsCompareBottomIcon{
      border:1px solid rgba(168,85,247,.36);
      background: rgba(168,85,247,.14);
    }
    .dsCompareBottom--good{
      border:1px solid rgba(34,211,238,.26);
      background: rgba(34,211,238,.07);
      color: rgba(255,255,255,.92);
    }
    .dsCompareBottom--good .dsCompareBottomIcon{
      border:1px solid rgba(34,211,238,.35);
      background: rgba(34,211,238,.12);
    }

    @media (max-width: 980px){
      .dsCompareDual{ grid-template-columns:1fr; }
    }

    @media (hover:hover) and (pointer:fine){
      #advantage .dsCompareCard{
        transition: transform .16s ease;
        will-change: transform;
      }
      #advantage .dsCompareCard:hover{
        transform: translateY(-4px);
      }
    }
}
.dsPanelHighlight{
      border-color: rgba(34,211,238,.30);
      box-shadow: 0 30px 90px rgba(34,211,238,.10), 0 22px 70px rgba(0,0,0,.35);
    }

    /* ---------- Interactive mock analysis demo ---------- */
    .analysisShell{
      border-radius:26px;
      border:1px solid rgba(34,211,238,.30);
      background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
      box-shadow:
        0 0 0 1px rgba(34,211,238,.18),
        0 18px 60px rgba(34,211,238,.22),
        0 22px 70px rgba(0,0,0,.35);
      padding:18px;
      max-width:100%;
      box-sizing:border-box;
      position:relative;
      z-index:1;
      overflow:hidden;
    }

    #analysisDemo, #analysisDemo *{ box-sizing:border-box; }


    .mockNote{
      margin-top:28px;
      margin-bottom:34px; /* keep glow from overlapping the next block */
      padding:14px 16px;
      border-radius:18px;
      border:1px solid rgba(250,204,21,.70);
      background: linear-gradient(180deg, rgba(250,204,21,.18), rgba(250,204,21,.08));
      box-shadow:
        0 0 0 1px rgba(250,204,21,.34),
        0 10px 30px rgba(250,204,21,.22);
      position:relative;
      z-index:1;
    }
    .mockNoteTitle{
      font-weight:750;
      letter-spacing:-.01em;
      margin:0 0 6px;
      color: rgba(255,255,255,.92);
    }
    .mockNote p{
      margin:0;
      color: rgba(255,255,255,.82);
      line-height:1.45;
    }
    .mockExplain{
      margin-top:14px;
    }

    .emergencyPitch{
      margin-top:16px;
      padding:16px 18px;
      border-radius:22px;
      border:1px solid rgba(239,68,68,.55);
      background: linear-gradient(180deg, rgba(239,68,68,.10), rgba(255,255,255,.02));
      box-shadow:
        0 0 0 1px rgba(239,68,68,.22),
        0 22px 70px rgba(239,68,68,.12),
        0 22px 70px rgba(0,0,0,.55);
      position:relative;
      overflow:hidden;
    }
    .emergencyPitch::before{
      content:"";
      position:absolute;
      inset:-1px;
      border-radius:22px;
      background: radial-gradient(1200px 420px at 25% 0%, rgba(239,68,68,.20), transparent 60%);
      pointer-events:none;
      opacity:.9;
    }
    .emergencyPitchTop{
      position:relative;
      z-index:1;
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .emergencyBadge{
      display:inline-flex;
      align-items:center;
      gap:8px;
      width:max-content;
      padding:6px 10px;
      border-radius:999px;
      border:1px solid rgba(239,68,68,.58);
      background:rgba(239,68,68,.12);
      color:rgba(255,255,255,.88);
      font-weight:850;
      font-size:.78rem;
      letter-spacing:.06em;
      text-transform:uppercase;
      box-shadow:0 12px 30px rgba(239,68,68,.18);
    }
    .emergencyPitch h3{
      margin:0;
      font-size:1.06rem;
      letter-spacing:-.015em;
    }
    .emergencyPitch .sub{
      margin:0;
      color:var(--muted);
      max-width:78ch;
    }
    .emergencyTableWrap{
      position:relative;
      z-index:1;
      margin-top:14px;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.10);
      background:rgba(255,255,255,.02);
      overflow:hidden;
    }
    .emergencyTable{
      width:100%;
      border-collapse:separate;
      border-spacing:0;
    }
    .emergencyTable thead th{
      text-align:left;
      padding:12px 14px;
      font-size:.76rem;
      letter-spacing:.16em;
      text-transform:uppercase;
      color:rgba(255,255,255,.76);
      background:rgba(255,255,255,.04);
      border-bottom:1px solid rgba(255,255,255,.10);
    }
    .emergencyTable tbody td{
      padding:12px 14px;
      vertical-align:top;
      border-bottom:1px solid rgba(255,255,255,.08);
      font-size:.92rem;
      color:rgba(255,255,255,.88);
    }
    .emergencyTable tbody tr:last-child td{ border-bottom:none; }
    .emergencyTable tbody td:first-child{
      width:30%;
      font-weight:850;
      color:rgba(255,255,255,.92);
    }
    .miniList{
      margin:0;
      padding-left:18px;
      color:rgba(255,255,255,.78);
    }
    .miniList li{ margin:3px 0; }
    .miniList strong{ color:rgba(255,255,255,.92); font-weight:850; }
    .pillDanger{
      padding:6px 9px;
      border-radius:999px;
      border:1px solid rgba(239,68,68,.55);
      background:rgba(239,68,68,.12);
      color:rgba(255,255,255,.88);
      font-size:.80rem;
      font-weight:850;
      white-space:nowrap;
      display:inline-flex;
      align-items:center;
      gap:8px;
    }
    .emergencyPitchFoot{
      position:relative;
      z-index:1;
      margin-top:12px;
      color:var(--soft);
      font-size:.90rem;
    }
    @media (max-width: 720px){
      .emergencyTable thead{ display:none; }
      .emergencyTable, .emergencyTable tbody, .emergencyTable tr, .emergencyTable td{ display:block; width:100%; }
      .emergencyTable tbody td{
        border-bottom:none;
        padding:10px 14px;
      }
      .emergencyTable tbody tr{
        border-bottom:1px solid rgba(255,255,255,.10);
        padding:6px 0;
      }
      .emergencyTable tbody td:first-child{
        width:100%;
        padding-top:12px;
      }
    }
.analysisHeader{
      display:flex;
      justify-content:space-between;
      align-items:flex-start;
      gap:10px;
      margin-bottom:14px;
    }
    .analysisHeader h3{
      margin:2px 0 0;
      font-size:1.1rem;
      letter-spacing:-.02em;
    }
    .analysisHeader .micro{
      margin-bottom:2px;
    }
    .analysisPills{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      justify-content:flex-end;
    }
    .analysisGrid{
      display:grid;
      grid-template-columns: minmax(0,1.02fr) minmax(0,1.3fr);
      gap:14px;
      align-items:stretch;
    }
    .analysisCol{
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .analysisStatRow{
      display:grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap:10px;
    }
    .analysisStat{
      padding:10px 12px;
      border-radius:14px;
      border:1px solid rgba(255,255,255,.14);
      background:rgba(255,255,255,.03);
    }
    .analysisStatLabel{
      font-size:.82rem;
      color:rgba(255,255,255,.70);
      margin-bottom:4px;
    }
    .analysisStatValue{
      font-size:1.05rem;
      font-weight:800;
      letter-spacing:-.02em;
    }
    .analysisStatSub{
      font-size:.8rem;
      color:rgba(255,255,255,.64);
      margin-top:2px;
    }
    .demoCard{
      padding:12px 14px;
      border-radius:16px;
      border:1px solid rgba(255,255,255,.14);
      background:rgba(255,255,255,.03);
    }
    .demoCardHeader{
      display:flex;
      justify-content:space-between;
      align-items:flex-end;
      gap:8px;
      margin-bottom:4px;
    }
    .demoCardHeader h4{
      margin:0;
      font-size:.98rem;
      letter-spacing:-.01em;
    }
    .demoCardHeader .micro{
      font-size:.82rem;
    }
    .demoChipRow{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin-top:8px;
    }
    .demoChip{
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.22);
      background:rgba(255,255,255,.03);
      color:rgba(255,255,255,.82);
      font-size:.85rem;
      font-weight:750;
      white-space:nowrap;
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      gap:6px;
      transition: background .16s ease, border-color .16s ease, color .16s ease, transform .12s ease;
    }
    .demoChip::before{
      content:"";
      width:7px;
      height:7px;
      border-radius:999px;
      background:rgba(34,211,238,.55);
    }
    .demoChip.isActive,
    .demoChip:hover{
      background:linear-gradient(135deg, rgba(34,211,238,.24), rgba(124,58,237,.22));
      border-color:rgba(124,58,237,.60);
      color:rgba(255,255,255,.96);
      transform:translateY(-1px);
    }
    .analysisSpark{
      margin-top:8px;
      height:42px;
      border-radius:14px;
      border:1px solid rgba(255,255,255,.12);
      background:
        linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01)),
        radial-gradient(180px 60px at 10% 70%, rgba(34,211,238,.28), transparent 60%),
        radial-gradient(220px 80px at 45% 30%, rgba(124,58,237,.24), transparent 60%),
        radial-gradient(190px 70px at 80% 65%, rgba(163,230,53,.22), transparent 60%);
      position:relative;
      overflow:hidden;
    }
    .analysisSpark::after{
      content:"";
      position:absolute; inset:0;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,.12), transparent);
      transform:translateX(-40%);
      animation: shimmer 3.2s ease-in-out infinite;
      opacity:.9;
    }
    @media (prefers-reduced-motion: reduce){
      .analysisSpark::after{ animation:none; opacity:.35; }
    }

    .demoDetailHeader{
      display:flex;
      justify-content:space-between;
      align-items:flex-start;
      gap:8px;
      margin-bottom:8px;
    }
    .demoDetailHeader h4{
      margin:2px 0 0;
      font-size:1rem;
      letter-spacing:-.01em;
    }
    .demoDetailMeta{
      text-align:right;
      font-size:.82rem;
      color:rgba(255,255,255,.72);
    }
    .demoDetailPanels{
      margin-top:4px;
    }
    .demoDetailPanel{
      display:none;
      gap:8px;
    }
    .demoDetailPanel.isActive{
      display:grid;
    }
    .demoDetailGrid{
      display:grid;
      grid-template-columns: minmax(0,1.05fr) minmax(0,1.1fr);
      gap:10px;
      align-items:flex-start;
    }
    .demoMetricBox{
      padding:10px 11px;
      border-radius:14px;
      border:1px solid rgba(255,255,255,.16);
      background:rgba(255,255,255,.03);
      font-size:.86rem;
    }
    .demoMetricRow{
      display:flex;
      justify-content:space-between;
      align-items:center;
      margin-bottom:4px;
    }
    .demoMetricLabel{
      color:rgba(255,255,255,.76);
      font-weight:700;
    }
    .demoMetricValue{
      font-weight:850;
    }
    .demoMetricSub{
      font-size:.8rem;
      color:rgba(255,255,255,.64);
    }
    .demoComments{
      padding:10px 11px;
      border-radius:14px;
      border:1px dashed rgba(255,255,255,.20);
      background:rgba(255,255,255,.02);
      font-size:.86rem;
    }
    .demoComment{
      margin:0 0 6px;
      color:rgba(255,255,255,.82);
    }
    .demoComment:last-child{ margin-bottom:0; }
    .demoComment span{
      display:inline-block;
      font-size:.76rem;
      color:rgba(255,255,255,.64);
      margin-left:4px;
    }

    @media (max-width: 980px){
      .analysisGrid{
        grid-template-columns: minmax(0,1fr);
      }
    }
    @media (max-width: 640px){
      .analysisStatRow{
        grid-template-columns: repeat(2,minmax(0,1fr));
      }
    }


    /* ---------- Mock dashboard-style analysis (Explore a mock Prospalytics analysis) ---------- */

    #analysisDemo .pillLabel{
      opacity:.78;
      font-size:.80rem;
    }
    #analysisDemo .pillValue{
      font-weight:600;
    }

    /* Override card look inside the mock analysis to match the analysis-display visual */
    #analysisDemo .card{
      background:
        radial-gradient(circle at 0 0, rgba(248,250,252,.10), transparent 55%),
        radial-gradient(circle at 100% 0, rgba(129,140,248,.10), transparent 55%),
        linear-gradient(135deg, rgba(15,23,42,.96), rgba(15,23,42,.96));
      border-radius:22px;
      border:1px solid rgba(148,163,184,.45);
      box-shadow:0 18px 40px rgba(0,0,0,.65);
    }
    #analysisDemo .analysisBlock + .analysisBlock{
      margin-top:14px;
    }

    /* Objective block */
    #analysisDemo .objectiveCard{
      flex:1 1 100%;
      display:flex;
      align-items:flex-start;
      gap:12px;
      padding:12px 14px;
      border-radius:18px;
      background:
        radial-gradient(circle at 0 0, rgba(34,211,238,.22), transparent 60%),
        radial-gradient(circle at 100% 0, rgba(129,140,248,.20), transparent 60%),
        rgba(15,23,42,.98);
      border:1px solid rgba(45,212,191,.7);
      box-shadow:
        0 0 0 1px rgba(15,23,42,1),
        0 16px 40px rgba(15,23,42,.85);
      position:relative;
      overflow:hidden;
    }
    #analysisDemo .objectiveCard::before{
      content:"";
      position:absolute;
      inset:-1px;
      border-radius:inherit;
      background:linear-gradient(120deg, rgba(34,211,238,.55), rgba(129,140,248,.25), rgba(34,211,238,.55));
      opacity:.25;
      pointer-events:none;
    }
    #analysisDemo .objectiveIcon{
      width:32px;
      height:32px;
      border-radius:999px;
      display:flex;
      align-items:center;
      justify-content:center;
      background:radial-gradient(circle at 30% 30%, rgba(252,211,77,.96), rgba(34,211,238,.75));
      box-shadow:0 0 0 1px rgba(15,23,42,1), 0 10px 24px rgba(15,23,42,.9);
      font-size:1.1rem;
      flex:0 0 auto;
      z-index:1;
    }
    #analysisDemo .objectiveBody{
      display:flex;
      flex-direction:column;
      gap:4px;
      position:relative;
      z-index:1;
    }
    #analysisDemo .objectiveLabel{
      font-size:.78rem;
      letter-spacing:.16em;
      text-transform:uppercase;
      color:rgba(148,163,184,.96);
    }
    #analysisDemo .objectiveText{
      font-size:.95rem;
      line-height:1.5;
      color:rgba(248,250,252,.98);
    }
    #analysisDemo .objectiveMeta{
      margin-top:6px;
      display:flex;
      flex-wrap:wrap;
      gap:6px;
      font-size:.78rem;
    }
    #analysisDemo .objectiveMetaItem{
      padding:3px 8px;
      border-radius:999px;
      border:1px solid rgba(148,163,184,.55);
      background:rgba(15,23,42,.96);
      color:rgba(203,213,225,.96);
    }

    /* KPI grid + flipcards */
    #analysisDemo .kpiGrid{
      display:grid;
      grid-template-columns:repeat(4, minmax(0,1fr));
      gap:10px;
      margin-top:14px;
    }
    @media (max-width: 980px){
      #analysisDemo .kpiGrid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
    }
    @media (max-width: 640px){
      #analysisDemo .kpiGrid{ grid-template-columns:1fr; }
    }

    #analysisDemo .flipcard{
      position:relative;
      border-radius:18px;
      overflow:hidden;
      background:
        radial-gradient(circle at 0 0, rgba(34,211,238,.25), transparent 60%),
        radial-gradient(circle at 100% 0, rgba(129,140,248,.20), transparent 60%),
        rgba(15,23,42,.95);
      border:1px solid rgba(148,163,184,.45);
      cursor:pointer;
      min-height:120px;
    }
    #analysisDemo .flipInner{
      position:relative;
      padding:14px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      height:100%;
    }
    #analysisDemo .flipTop{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:6px;
    }
    #analysisDemo .kpiLabel{
      font-size:.80rem;
      text-transform:uppercase;
      letter-spacing:.12em;
      color:rgba(148,163,184,.92);
    }
    #analysisDemo .kpiValue{
      font-size:1.4rem;
      font-weight:650;
      letter-spacing:-.03em;
      margin-top:8px;
    }
    #analysisDemo .kpiSub{
      font-size:.78rem;
      color:rgba(148,163,184,.92);
    }
    #analysisDemo .kpiDetail{
      font-size:.90rem;
      color:rgba(226,232,240,.90);
      margin-top:6px;
    }

    #analysisDemo .flipFront,
    #analysisDemo .flipBack{
      position:absolute;
      inset:0;
      opacity:1;
      transition:opacity .2s ease;
    }
    #analysisDemo .flipBack{ opacity:0; pointer-events:none; }

    #analysisDemo .flipcard:hover .flipFront{
      opacity:0;
      pointer-events:none;
    }
    #analysisDemo .flipcard:hover .flipBack{
      opacity:1;
      pointer-events:auto;
    }


    /* Disable KPI flip interaction (keep KPI cards static) */
    #analysisDemo .flipcard{
      cursor:default;
    }
    #analysisDemo .flipBack{
      display:none !important;
    }
    #analysisDemo .flipcard:hover .flipFront{
      opacity:1 !important;
      pointer-events:auto !important;
    }
    #analysisDemo .flipcard:hover .flipBack{
      opacity:0 !important;
      pointer-events:none !important;
    }

    /* Charts grid */
    #analysisDemo .chartGrid{
      display:grid;
      grid-template-columns:2.1fr 1.3fr;
      gap:12px;
      margin-top:18px;
    }
    @media (max-width:980px){
      #analysisDemo .chartGrid{ grid-template-columns:1fr; }

    /* Prevent grid items from forcing horizontal overflow */
    #analysisDemo .chartGrid > .card{ min-width:0; }
    #analysisDemo .chartCardTitle{ min-width:0; }
    #analysisDemo .chartCardTitle h3,
    #analysisDemo .chartCardTitle h4{ min-width:0; overflow-wrap:anywhere; }
    #analysisDemo .sectionHead{ min-width:0; }
}


    /* Prevent grid items from forcing horizontal overflow */
    #analysisDemo .chartGrid > .card{ min-width:0; }
    #analysisDemo .chartCardTitle{ min-width:0; }
    #analysisDemo .chartCardTitle h3,
    #analysisDemo .chartCardTitle h4{ min-width:0; overflow-wrap:anywhere; }
    #analysisDemo .sectionHead{ min-width:0; }

    #analysisDemo .chartCardTitle{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:8px;
      margin-bottom:10px;
    }
    #analysisDemo .chartCardTitle h3,
    #analysisDemo .chartCardTitle h4{
      margin:0;
      font-size:.98rem;
      letter-spacing:-.01em;
    }

    #analysisDemo .chart{
      width:100%;
      max-width:100%;
      height:210px;
      overflow:hidden;
    }

    /* Make topic Sentiment mix charts use available vertical space */
    #analysisDemo .topicGrid .topic-sentmix{
      display:flex;
      flex-direction:column;
    }
    #analysisDemo .topicGrid .topic-sentmix .chart{
      flex:0 0 auto;
      height:240px;
      min-height:240px;
    }

    #analysisDemo .chartTall{
      width:100%;
      max-width:100%;
      height:260px;
      overflow:hidden;
    }
    #analysisDemo .chartPie{
      height:260px;
    }
    #analysisDemo .topic-sentmix .chart{
      height:240px;
    }
    #analysisDemo .chartCaption{
      margin-top:6px;
      font-size:.78rem;
      color:rgba(148,163,184,.94);
    }

    /* Topic section */
    #analysisDemo .topicSection{
      margin-top:16px;
    }
    #analysisDemo .topicHeader{
      display:flex;
      flex-direction:column;
      gap:6px;
    }
    #analysisDemo .topicSummary{
      margin-top:4px;
      font-size:.88rem;
      color:rgba(226,232,240,.92);
    }
    #analysisDemo .topicStats{
      margin-top:12px;
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      font-size:.80rem;
    }
    #analysisDemo .stat{
      display:inline-flex;
      align-items:center;
      gap:4px;
      padding:5px 10px;
      border-radius:999px;
      border:1px solid rgba(148,163,184,.55);
      background:rgba(15,23,42,.98);
      color:rgba(226,232,240,.96);
    }

    #analysisDemo .topicGrid{
      display:grid;
      grid-template-columns:minmax(0,3fr) minmax(0,2.2fr);
      gap:12px;
      margin-top:10px;
    }
    @media (max-width:980px){
      #analysisDemo .topicGrid{ grid-template-columns:1fr; }
    }

    #analysisDemo .topicDetailGrid{
      display:grid;
      grid-template-columns:minmax(0,3fr) minmax(0,2.2fr);
      gap:12px;
      margin-top:14px;
    }
    @media (max-width:980px){
      #analysisDemo .topicDetailGrid{ grid-template-columns:1fr; }
    }

    /* Table styling scoped to analysis demo */
    #analysisDemo .tableWrap{
      margin-top:2px;
      border-radius:16px;
      border:1px solid rgba(148,163,184,.45);
      background:rgba(15,23,42,.94);
      overflow-x:hidden;
      overflow-y:visible;
    }
    #analysisDemo table{
      width:100%;
      border-collapse:separate;
      border-spacing:0 8px;
      font-size:.86rem;
    }

    /* Keep Topic summary table within its container without horizontal overflow */
    #analysisDemo #topic-table{
      table-layout:fixed;
    }
    #analysisDemo #topic-table th,
    #analysisDemo #topic-table td{
      overflow-wrap:anywhere;
      word-break:break-word;
    }
    #analysisDemo #topic-table th:nth-child(1),
    #analysisDemo #topic-table td:nth-child(1){ width:26%; }
    #analysisDemo #topic-table th:nth-child(n+2),
    #analysisDemo #topic-table td:nth-child(n+2){ width:10.5%; }

    @media (max-width: 860px){
      #analysisDemo table{ font-size:.80rem; }
      #analysisDemo thead th{ padding:8px 8px; }
      #analysisDemo tbody td{ padding:7px 8px; }
    }
    #analysisDemo thead th{
      text-align:left;
      padding:10px 12px;
      color:rgba(148,163,184,.92);
      font-weight:500;
      position:sticky;
      top:0;
      background:rgba(15,23,42,.94);
      z-index:4;
    }
    #analysisDemo tbody td{
      padding:8px 12px;
      background:rgba(255,255,255,.04);
      border:1px solid rgba(148,163,184,.35);
    }
    #analysisDemo tbody td:first-child{
      border-top-left-radius:12px;
      border-bottom-left-radius:12px;
    }
    #analysisDemo tbody td:last-child{
      border-top-right-radius:12px;
      border-bottom-right-radius:12px;
    }

    #analysisDemo .aspectTableWrap{
      max-height:220px;
      overflow-y:auto;
      overflow-x:hidden;
      position:relative;
      scrollbar-width:thin;
      scrollbar-color: rgba(148,163,184,.80) rgba(15,23,42,.98);
    }
    #analysisDemo .aspectTableWrap::-webkit-scrollbar{ width:8px; }
    #analysisDemo .aspectTableWrap::-webkit-scrollbar-track{
      background:rgba(15,23,42,.98);
      border-radius:999px;
    }
    #analysisDemo .aspectTableWrap::-webkit-scrollbar-thumb{
      background:linear-gradient(180deg, rgba(148,163,184,.9), rgba(51,65,85,.9));
      border-radius:999px;
    }

    /* Decision cards */
    #analysisDemo .decisionGrid{
      display:grid;
      grid-template-columns:repeat(3, 1fr);
      gap:14px;
    }
    @media (max-width: 980px){
      #analysisDemo .decisionGrid{ grid-template-columns:1fr; }
    }

    #analysisDemo .decision{
      padding:14px;
      border-radius:22px;
      border:1px solid rgba(255,255,255,.12);
      background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
      display:flex;
      flex-direction:column;
      gap:8px;
      position:relative;
      overflow:visible;
    }
    #analysisDemo .decision::after{
      content:"";
      position:absolute;
      inset:-2px;
      background: linear-gradient(135deg, rgba(34,211,238,.12), rgba(129,140,248,.16), rgba(34,211,238,.10));
      opacity:0;
      filter: blur(18px);
      z-index:-1;
      transition:opacity .14s ease;
    }
    #analysisDemo .decision:hover::after{ opacity:1; }

    #analysisDemo .dTop{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:8px;
      flex-wrap:wrap;
    }

    /* Decision card topic tags: tighter typography + matched T* circle sizing */
    #analysisDemo .decision .dTop .tag{
      font-size:.70rem;
      padding:3px 7px;
    }
    #analysisDemo .decision .dTop a.tag{
      font-size:.70rem;
      min-width:28px;
      height:28px;
      padding:0;
      justify-content:center;
    }

    #analysisDemo .dLine{
      font-size:.90rem;
      color:rgba(226,232,240,.96);
      margin-top:4px;
    }
    #analysisDemo .dSub{
      font-size:.88rem;
      color:rgba(226,232,240,.80);
      margin-top:4px;
    }
    #analysisDemo .noteBox{
      margin-top:8px;
      padding:8px 9px;
      border-radius:12px;
      border:1px solid rgba(148,163,184,.45);
      background:rgba(15,23,42,.96);
      font-size:.82rem;
      color:rgba(226,232,240,.92);
    }

    /* Scores */
    #analysisDemo .scoreRow{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      align-items:stretch;
      margin-top:6px;
    }
    #analysisDemo .score{
      flex:1 1 180px;
      min-width:0;
      padding:8px 9px;
      border-radius:14px;
      border:1px solid rgba(148,163,184,.55);
      background:
        radial-gradient(circle at 0 0, rgba(34,211,238,.15), transparent 55%),
        rgba(15,23,42,.98);
    }
    #analysisDemo .scoreTop{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:6px;
      margin-bottom:6px;
      font-size:.80rem;
    }
    #analysisDemo .scoreLabel{ color:rgba(148,163,184,.96); }
    #analysisDemo .scoreVal{
      font-weight:650;
      color:rgba(226,232,240,.96);
    }
    #analysisDemo .bar{
      width:100%;
      height:7px;
      border-radius:999px;
      background:rgba(15,23,42,1);
      overflow:hidden;
      position:relative;
    }
    #analysisDemo .barFill{
      position:absolute;
      inset:0;
      border-radius:999px;
      background-image: var(--barFill, linear-gradient(90deg, var(--a1), var(--a2)));
      transform-origin:left center;
    }

    /* In-depth */
    #analysisDemo .inDepthCard{
      border-color: rgba(34,211,238,.65);
      box-shadow:
        0 0 0 1px rgba(34,211,238,.45),
        0 0 24px rgba(34,211,238,.25);
      background: rgba(15,23,42,.98);
    }
    #analysisDemo .inDepthText{
      font-size:.95rem;
      line-height:1.45;
      color:rgba(255,255,255,.86);
      white-space:pre-line;
      word-wrap:break-word;
    }

    /* Tooltip helpers scoped to analysis demo */
    #analysisDemo [data-tip]{
      position:relative;
      cursor:help;
    }
    #analysisDemo [data-tip]::after{
      content:attr(data-tip);
      position:absolute;
      top:calc(100% + 10px);
      left:0;
      background:rgba(10,12,18,.96);
      border:1px solid rgba(255,255,255,.12);
      box-shadow: var(--shadow);
      color:rgba(255,255,255,.90);
      padding:10px 12px;
      border-radius:14px;
      width: min(260px, 80vw);
      font-size:.90rem;
      line-height:1.35;
      text-align:left;
      opacity:0;
      pointer-events:none;
      transform: translateY(4px);
      transition: opacity .14s ease, transform .14s ease;
      z-index:9999;
    }
    #analysisDemo [data-tip]::before{
      content:"";
      position:absolute;
      top:100%;
      left:14px;
      border:7px solid transparent;
      border-bottom-color: rgba(10,12,18,.96);
      opacity:0;
      pointer-events:none;
      transition: opacity .14s ease;
      z-index:10000;
    }
    #analysisDemo [data-tip]:hover::after,
    #analysisDemo [data-tip]:focus-visible::after{
      opacity:1;
      transform: translateY(0);
    }
    #analysisDemo [data-tip]:hover::before,
    #analysisDemo [data-tip]:focus-visible::before{
      opacity:1;
    }

    /* Info icon circle */
    #analysisDemo .infoIcon{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:20px;
      height:20px;
      border-radius:999px;
      border:1px solid rgba(148,163,184,.85);
      background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.20), rgba(15,23,42,1));
      box-shadow:0 0 0 1px rgba(15,23,42,1);
      font-size:.78rem;
      font-weight:800;
      color:rgba(248,250,252,.96);
      flex:0 0 auto;
    }

    /* ---------- Embedded Analysis Display 23 mock (scoped) ---------- */
    /* Allow tooltips to escape the rounded container */
    #analysisDemo.analysisShell{ overflow: visible; }
    #analysisDemo{ position: relative; }

    /* Dashboard header row (brand + meta chips) */
    #analysisDemo .analysisTopRow{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding:8px 0 14px;
      margin-bottom:8px;
      border-bottom:1px solid rgba(148,163,184,.28);
    }
    #analysisDemo .analysisBrandRow{
      display:flex;
      align-items:center;
      gap:10px;
      min-width:max-content;
    }
    #analysisDemo .analysisLogo{
      width:28px;
      height:28px;
      border-radius:10px;
      background:
        radial-gradient(circle at 25% 20%, rgba(252,211,77,.96), transparent 55%),
        radial-gradient(circle at 80% 20%, rgba(34,211,238,.95), transparent 55%),
        radial-gradient(circle at 50% 90%, rgba(59,130,246,.95), transparent 55%);
      box-shadow:0 0 0 1px rgba(15,23,42,.75), 0 14px 30px rgba(15,23,42,.9);
      position:relative;
      flex:0 0 auto;
    }
    #analysisDemo .analysisLogo::after{
      content:"";
      position:absolute;
      inset:4px;
      border-radius:8px;
      border:1px solid rgba(15,23,42,.75);
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.26);
    }
    #analysisDemo .analysisBrandText{ display:flex; flex-direction:column; gap:3px; }
    #analysisDemo .analysisBrandTitle{
      font-weight:650;
      letter-spacing:.02em;
      text-transform:uppercase;
      font-size:.74rem;
      color:rgba(226,232,240,.82);
    }
    #analysisDemo .analysisBrandSubtitle{
      font-size:.78rem;
      color:rgba(148,163,184,.90);
    }
    #analysisDemo .analysisTopMeta{
      display:flex;
      align-items:center;
      gap:12px;
      flex-wrap:wrap;
      justify-content:flex-end;
      font-size:.80rem;
      color:rgba(148,163,184,.92);
    }
    #analysisDemo .chipInline{
      padding:6px 10px;
      border-radius:999px;
      border:1px solid rgba(148,163,184,.45);
      background:radial-gradient(circle at 10% 0%, rgba(148,163,184,.26), transparent 60%);
      box-shadow:0 0 0 1px rgba(15,23,42,.85);
      display:inline-flex;
      align-items:center;
      gap:6px;
      white-space:nowrap;
    }
    #analysisDemo .chipInline strong{ font-weight:600; color:rgba(226,232,240,.96); }

    @media (max-width: 720px){
      #analysisDemo .analysisTopRow{ flex-direction:column; align-items:flex-start; }
      #analysisDemo .analysisTopMeta{ justify-content:flex-start; }
    }

    /* Typography + layout overrides for the embedded dashboard */
    #analysisDemo h2{ margin:0; font-size:1.25rem; letter-spacing:-.02em; }
    #analysisDemo h3{ margin:0; font-size:1rem; letter-spacing:-.01em; }

    #analysisDemo .sectionHead{
      display:flex;
      flex-direction:row;
      align-items:flex-end;
      justify-content:space-between;
      gap:12px;
      margin-bottom:12px;
      text-align:left;
    }
    #analysisDemo .sectionHead .right{ text-align:right; }

    @media (max-width: 720px){
      #analysisDemo .sectionHead{ flex-direction:column; align-items:flex-start; }
      #analysisDemo .sectionHead .right{ text-align:left; }
    }

    /* Ensure tables fit without horizontal scrolling */
#analysisDemo .tableWrap{ overflow-x:hidden; }
#analysisDemo #topic-table{
  min-width:0;
  table-layout:fixed;
}
#analysisDemo #topic-table th,
#analysisDemo #topic-table td{
  white-space:normal;
  word-break:break-word;
}
#analysisDemo #topic-table th:nth-child(1),
#analysisDemo #topic-table td:nth-child(1){ width:34%; }
#analysisDemo #topic-table th:nth-child(n+2),
#analysisDemo #topic-table td:nth-child(n+2){ width:11%; }

/* Alignment: keep Topic column left-aligned; center the numeric columns */
#analysisDemo #topic-table th,
#analysisDemo #topic-table td{
  vertical-align:middle !important;
}
#analysisDemo #topic-table th:nth-child(1),
#analysisDemo #topic-table td:nth-child(1){
  text-align:left !important;
}
#analysisDemo #topic-table th:nth-child(n+2),
#analysisDemo #topic-table td:nth-child(n+2){
  text-align:center !important;
}

#analysisDemo .aspectTableWrap{ overflow-x:hidden; }
#analysisDemo .aspectTableWrap table{
  min-width:0;
  width:100%;
  table-layout:fixed;
}
#analysisDemo .aspectTableWrap th,
#analysisDemo .aspectTableWrap td{
  white-space:normal;
  word-break:break-word;
}

/* Disable hover tooltips (data-tip) inside the mock analysis */
#analysisDemo [data-tip]{ cursor:default; }
#analysisDemo [data-tip]::before,
#analysisDemo [data-tip]::after{
  display:none !important;
  content:none !important;
}

    /* Tag styles used by Analysis Display 23 decision cards */
    #analysisDemo .tag{
      display:inline-flex;
      align-items:center;
      gap:4px;
      padding:4px 7px;
      border-radius:999px;
      border:1px solid rgba(148,163,184,.50);
      background:rgba(15,23,42,.96);
      font-size:.78rem;
      color:rgba(226,232,240,.94);
      text-decoration:none;
    }
    #analysisDemo .tagAccent{
      border-color:rgba(34,211,238,.75);
      background:rgba(15,23,42,.96);
    }

    /* Objective hero (ported) */
    #analysisDemo .objectiveHero{
      margin:10px 0 20px;
      padding-top:4px;
    }
    #analysisDemo .objectiveHero-label{
      font-size:.78rem;
      letter-spacing:.18em;
      text-transform:uppercase;
      color:rgba(148,163,184,.96);
      margin-bottom:6px;
    }
    #analysisDemo .objectiveHero-text{
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Display","Segoe UI",sans-serif;
      font-size:1.28rem;
      line-height:1.5;
      font-weight:520;
      letter-spacing:-.015em;
      max-width:880px;
      color:rgba(248,250,252,.98);
    }
    #analysisDemo .objectiveHero-accent{
      margin-top:10px;
      width:78px;
      height:3px;
      border-radius:999px;
      background:linear-gradient(90deg, rgba(45,212,191,1), rgba(56,189,248,1), rgba(129,140,248,.9));
    }

    /* ---------- Hover pop for key marketing boxes ---------- */
    @media (hover:hover) and (pointer:fine){
      #why .emergencyCard,
      .section[aria-label="Reddit Reveals What the Market Is Asking For"] .whyCard,
      .section[aria-label="Reddit Reveals What the Market Is Asking For"] .card.step,
      .workflowCondensedPanel .card.step,
      #advantage .card.step,
      #advantage .dsPanel,
      .callout{
        transition: transform .16s ease, filter .16s ease, box-shadow .16s ease, border-color .16s ease;
        will-change: transform;
      }

      .section[aria-label="Reddit Reveals What the Market Is Asking For"] .whyCard:hover,
      .section[aria-label="Reddit Reveals What the Market Is Asking For"] .card.step:hover,
      .workflowCondensedPanel .card.step:hover,
      #advantage .card.step:not(.guardrailCard):hover,
      #advantage .dsPanel:hover,
      .callout:hover{
        transform: translateY(-2px);
        filter: saturate(1.06);
        border-color: rgba(255,255,255,.18);
        box-shadow: 0 22px 70px rgba(0,0,0,.42);
      }

      /* Keep special glows intact */
      #why .emergencyCard:hover{
        transform: translateY(-2px);
        filter: saturate(1.06);
        border-color: rgba(239,68,68,.80);
        box-shadow: 0 22px 70px rgba(0,0,0,.42);
      }

      .guardrailCard:hover{
        transform: translateY(-2px);
        filter: saturate(1.06);
        border-color: rgba(34,211,238,.40);
        box-shadow:
          0 0 0 1px rgba(34,211,238,.20),
          0 18px 60px rgba(34,211,238,.22),
          0 22px 70px rgba(0,0,0,.42);
      }

      .calloutBlue:hover{
        border-color: rgba(34,211,238,.32);
        box-shadow:
          0 0 0 1px rgba(34,211,238,.20),
          0 18px 60px rgba(34,211,238,.22),
          0 22px 70px rgba(0,0,0,.42);
      }
    }

/* ---------- Scroll reveal: fade in + up ---------- */
    .revealOnScroll{
      opacity:0;
      transform: translateY(14px);
      transition: opacity .38s cubic-bezier(.2,.8,.2,1), transform .38s cubic-bezier(.2,.8,.2,1);
      will-change: opacity, transform;
    }
    .revealOnScroll.isVisible{
      opacity:1;
      transform: none;
    }
    #mock-analysis.revealOnScroll{
      transform:none;
      will-change:auto;
    }
    #mock-analysis.revealOnScroll.isVisible{
      transform:none;
    }
    @media (prefers-reduced-motion: reduce){
      .revealOnScroll{ opacity:1; transform:none; transition:none; }
    }



/* Insight report metrics (purple) + emergency lane (red) */
.metricsPitch{
  margin-top:72px;
  padding:18px 18px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.03);
  box-shadow:
    0 22px 70px rgba(0,0,0,.55);
  position:relative;
  z-index:2;
  isolation:isolate;
  overflow:hidden;
}
.metricsPitch::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1px;
  background: linear-gradient(135deg, rgba(34,211,238,.70), rgba(124,58,237,.62), rgba(34,211,238,.60));
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events:none;
  opacity:.55;
}
.metricsPitchTop{ position:relative; z-index:1; display:flex; flex-direction:column; gap:10px; }
.metricsBadge{
  align-self:flex-start;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.88);
  font-size:.82rem;
  font-weight:850;
  display:inline-flex;
  gap:8px;
  align-items:center;
  letter-spacing:.02em;
  white-space:nowrap;
}
.metricsGrid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
  margin-top:14px;
}
@media (max-width: 820px){
  .metricsGrid{ grid-template-columns:1fr; }
}
.metricCard{
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  padding:12px 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,.22);
}
/* Six signals cards: match workflow step outline glow (blue/purple clash) */
.metricsPitch .metricCard{
  position:relative;
  z-index:0;
  border-color: rgba(148,163,184,.45);
  box-shadow:
    0 18px 56px rgba(0,0,0,.35),
    0 0 0 1px rgba(34,211,238,.12),
    0 0 22px rgba(34,211,238,.10),
    0 0 40px rgba(124,58,237,.10);
}
.metricsPitch .metricCard::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:inherit;
  padding:1px;
  background: linear-gradient(135deg, rgba(34,211,238,.70), rgba(124,58,237,.62), rgba(34,211,238,.60));
  -webkit-mask:
    linear-gradient(#000 0 0) content-box,
    linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  opacity:.55;
  pointer-events:none;
}
.metricsPitch .metricCard::after{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius:inherit;
  background: linear-gradient(135deg, rgba(34,211,238,.22), rgba(124,58,237,.22), rgba(34,211,238,.18));
  filter: blur(18px);
  opacity:.18;
  pointer-events:none;
  z-index:-1;
}

.metricName{
  font-weight:900;
  letter-spacing:.01em;
  color:rgba(255,255,255,.92);
  font-size:1.00rem;
}
.metricWhy{
  margin-top:6px;
  color:rgba(255,255,255,.70);
  line-height:1.45;
  font-size:.94rem;
}
.metricsPitchFoot{
  position:relative;
  z-index:1;
  margin-top:14px;
  padding-top:10px;
  border-top:1px solid rgba(255,255,255,.10);
  color:rgba(255,255,255,.72);
  line-height:1.45;
  font-size:.95rem;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
.pillViolet{
  padding:6px 9px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.88);
  font-size:.80rem;
  font-weight:850;
  white-space:nowrap;
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.emergencyLanePitch{
  margin-top:12px;
  padding:14px 16px;
  border-radius:20px;
  border:1px solid rgba(239,68,68,.80); /* match Emergency insight reports (Pro) */
  background: rgba(255,255,255,.03);    /* keep interior neutral (no red fill) */
  box-shadow:
    0 26px 80px rgba(239,68,68,.15),
    0 18px 56px rgba(0,0,0,.35),
    0 22px 70px rgba(0,0,0,.55);
  position:relative;
  overflow:hidden;
}
.emergencyLanePitch::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:20px;
  background:none; /* no inner red wash */
  pointer-events:none;
  opacity:0;
}
.emergencyLaneTop{ position:relative; z-index:1; display:flex; flex-direction:column; gap:8px; }
.emergencyLaneBadge{
  align-self:flex-start;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.88);
  font-size:.82rem;
  font-weight:850;
  display:inline-flex;
  gap:8px;
  align-items:center;
  letter-spacing:.02em;
  white-space:nowrap;
}
.emergencyLaneTop h4{
  margin:0;
  font-size:1.10rem;
  font-weight:900;
  letter-spacing:-.01em;
}

.emergencyLaneTable{
  position:relative;
  z-index:1;
  margin-top:14px;
  border:1px solid rgba(239,68,68,.28);
  border-radius:20px;
  background: rgba(0,0,0,.18);
  overflow:hidden;
}
.emergencyLaneTR{
  display:grid;
  grid-template-columns: 1.05fr 1.25fr;
}
.emergencyLaneCell{
  padding:14px 16px;
  min-width:0;
}
.emergencyLaneTR + .emergencyLaneTR .emergencyLaneCell{
  border-top:1px solid rgba(239,68,68,.22);
}
.emergencyLaneCell + .emergencyLaneCell{
  border-left:1px solid rgba(239,68,68,.22);
}
.emergencyLaneTH .emergencyLaneCell{
  padding:12px 16px;
  background: rgba(255,255,255,.035);
  color: rgba(255,255,255,.78);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.10em;
}
.emergencyLaneKey{
  font-weight:900;
  letter-spacing:-.01em;
  color: rgba(255,255,255,.90);
  margin-bottom:6px;
}
.emergencyLaneMicro{
  font-size:.88rem;
  line-height:1.35;
}
.emergencyLaneVal{
  line-height:1.45;
  font-size:.95rem;
  color: rgba(255,255,255,.84);
}
.emergencyLaneFoot{
  border-top:1px solid rgba(255,255,255,.08);
}
.emergencyLaneFootInner{
  padding:12px 14px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
@media (max-width: 820px){
  .emergencyLaneTR{ grid-template-columns: 1fr; }
  .emergencyLaneCell + .emergencyLaneCell{ border-left:none; border-top:1px solid rgba(255,255,255,.08); }
  .emergencyLaneTH{ display:none; }
}
.emergencyLaneList{
  position:relative;
  z-index:1;
  margin:12px 0 0;
  padding-left:18px;
  display:grid;
  gap:10px;
  color:rgba(255,255,255,.76);
  line-height:1.45;
  font-size:.95rem;
}
.emergencyExamples{
  position:relative;
  z-index:1;
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.exTitle{
  width:100%;
  color:rgba(255,255,255,.84);
  font-weight:850;
  font-size:.92rem;
  margin-bottom:2px;
}
.emergencyChip{
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(239,68,68,.40);
  background:rgba(239,68,68,.08);
  color:rgba(255,255,255,.80);
  font-size:.84rem;
  font-weight:750;
  white-space:nowrap;
}



    /* ---------- Workflow bottom row (callouts) ---------- */
    .workflowBottomRow{
      margin-top:14px;
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap:14px;
      align-items:stretch;
    }
    .workflowBottomRow .callout{ margin-top:0; }
    @media (max-width: 920px){
      .workflowBottomRow{ grid-template-columns: 1fr; }
    }

    /* Make the crafted callout more compact */
    .calloutSmall{
      padding:12px 14px;
      border-radius:14px;
    }
    .calloutSmall .calloutHeader{ gap:8px; margin-bottom:6px; }
    .calloutSmall .calloutBadge{
      width:24px;
      height:24px;
      border-radius:999px;
      font-size:.95rem;
    }

    /* Credit icon sizing inside step header */
    .stepNumIcon svg{
      width:18px;
      height:18px;
      display:block;
    }


/* ---------- Lane comparison panel ---------- */
.laneCompare{ margin-top:24px; }
.laneCompareHead{ text-align:center; margin-top:18px; }
.laneCompareHead h3{ margin:0; font-size:1.45rem; letter-spacing:-.03em; }
.laneCompareHead p{ margin:10px auto 0; max-width:72ch; }

.laneCompareGrid{
  margin:22px auto 0;
  width:min(1100px, 100%);
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:18px;
  align-items:stretch;
}

.laneCard{
  position:relative;
  border-radius:24px;
  padding:22px 22px 18px;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border: 1px solid rgba(255,255,255,.13);
  box-shadow: 0 22px 70px rgba(0,0,0,.34);
  overflow: visible;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.laneCard::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:10px;
  height:4px;
  border-radius:999px;
  background: linear-gradient(90deg, transparent, var(--laneAccent), transparent);
  opacity:.95;
}

.laneCard:hover{
  transform: translateY(-2px);
  box-shadow: 0 28px 86px rgba(0,0,0,.44);
  border-color: rgba(255,255,255,.18);
}

.laneStandard{ --laneAccent: rgba(168,85,247,.92); }
.laneEmergency{ --laneAccent: rgba(239,68,68,.92); }

.lanePill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:7px 12px;
  border-radius:999px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.14);
  font-size:.88rem;
  font-weight:950;
  letter-spacing:-.02em;
  color: rgba(255,255,255,.94);
}

.laneDot{
  width:10px;
  height:10px;
  border-radius:999px;
  background: var(--laneAccent);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.22),
    0 0 18px color-mix(in srgb, var(--laneAccent) 55%, transparent);
}

@supports not (color: color-mix(in srgb, white 50%, black)){
  .laneDot{ box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 0 18px rgba(255,255,255,.10); }
}

.laneTagline{
  margin-top:10px;
  color: rgba(226,232,240,.78);
  font-size: .98rem;
  line-height: 1.35;
}

.laneList{
  margin:14px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.laneList li{
  margin:0;
  display:flex;
  gap:10px;
  color: rgba(226,232,240,.84);
  font-size:.95rem;
  line-height:1.35;
}

.laneList li::before{
  content:"✓";
  display:flex;
  align-items:center;
  justify-content:center;
  width:20px;
  height:20px;
  border-radius:999px;
  margin-top:2px;
  flex: 0 0 20px;
  font-size:.78rem;
  font-weight:950;
  color: rgba(255,255,255,.96);
  background: var(--laneAccent);
  box-shadow: 0 0 0 1px rgba(255,255,255,.18), 0 0 22px rgba(0,0,0,.22);
}

.laneShared{
  width:min(980px, 100%);
  margin:18px auto 0;
  border-radius:24px;
  padding:18px 20px 16px;
  background: linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.035));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 18px 60px rgba(0,0,0,.33);
}

.laneSharedTitle{
  margin:0 0 12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-weight:950;
  letter-spacing:-.03em;
  color: rgba(255,255,255,.95);
}

.laneSharedDots{
  display:inline-flex;
  gap:6px;
  align-items:center;
}

.laneSharedDots span{
  width:10px;
  height:10px;
  border-radius:999px;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22);
}

.laneSharedDots span:nth-child(1){ background: rgba(168,85,247,.92); }
.laneSharedDots span:nth-child(2){ background: rgba(239,68,68,.92); }

.laneSharedList{
  margin:0;
  padding-left:18px;
  display:grid;
  gap:10px;
  color: rgba(226,232,240,.82);
  font-size:.95rem;
  line-height:1.35;
}

@media (max-width: 920px){
  .laneCompareGrid{ grid-template-columns: 1fr; }
  .laneCard{ padding:20px 18px 16px; }
  .laneShared{ padding:16px 16px 14px; }
}


.emWhite{font-weight:700;color:#fff;}

/* ---------- Choose your lane: simplified titles + shared line ---------- */
.laneCompareSimplified .laneCompareGrid{
  margin-top:12px;
}

.laneCompareSimplified .lanePill{
  display:block;
  padding:0;
  background:none;
  border:0;
  border-radius:0;
  font-size:1.32rem;
  font-weight:950;
  letter-spacing:-.035em;
  line-height:1.08;
  color:rgba(255,255,255,.96);
}

.laneCompareSimplified .laneDot,
.laneCompareSimplified .laneTagline,
.laneCompareSimplified .laneSharedDots{
  display:none !important;
}

.laneCompareSimplified .laneShared{
  position:relative;
  padding:22px 22px 16px;
}

.laneCompareSimplified .laneShared::before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:10px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(168,85,247,0) 0%, rgba(168,85,247,.92) 16%, rgba(168,85,247,.92) 50%, rgba(239,68,68,.92) 50%, rgba(239,68,68,.92) 84%, rgba(239,68,68,0) 100%);
  opacity:.98;
}

.laneCompareSimplified .laneSharedTitle{
  margin:0 0 12px;
  display:block;
  text-align:center;
  font-size:1.32rem;
  font-weight:950;
  letter-spacing:-.035em;
  color:rgba(255,255,255,.96);
}

.laneCompareSimplified .laneSharedTitle::before{
  display:none;
}


    /* ---------- Condensed workflow toggle (inside Mock Insight Report section) ---------- */
    .workflowCondensed{ margin-top:8px; margin-bottom:22px; }
    .workflowCondensedInner{ display:flex; justify-content:center; }

    /* Smaller, tighter toggle button + Step-card style glow */
    .workflowToggleBtn{
      position:relative;
      z-index:0;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:6px;
      padding:8px 12px;
      font-size:13px;
      line-height:1.1;
      white-space:nowrap;
      letter-spacing:normal;

      /* Match the Step 01–05 card glow/shadow language */
      border-color: rgba(148,163,184,.45);
      box-shadow: none;
    }
    .workflowToggleBtn::before{
      content:"";
      position:absolute;
      inset:-1px;
      border-radius:inherit;
      padding:1px;
      background: linear-gradient(135deg, rgba(34,211,238,.70), rgba(124,58,237,.62), rgba(34,211,238,.60));
      -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
              mask-composite: exclude;
      opacity:.55;
      pointer-events:none;
    }
    .workflowToggleBtn::after{
      display:none;
    }

    .workflowToggleBtn:hover,
    .workflowToggleBtn:focus-visible{ box-shadow:none !important; }
    .workflowChev{ width:15px; height:15px; opacity:.9; transition: transform .18s ease; }
    .workflowToggleBtn[aria-expanded="true"] .workflowChev{ transform: rotate(180deg); }

    .workflowCondensedPanel{ max-width: 1120px; margin:22px auto 22px; }

    /* ---------- Clickable red callout marks (jump to Data Science Advantage) ---------- */
    .emergencyCard, .priceCardPro{ position:relative; }
    .qmark{
      position:absolute;
      top:12px;
      right:18px;
      color: rgba(239,68,68,1);
      font-weight:900;
      text-decoration:none;
      font-size:18px;
      line-height:1;
      z-index:2;
      animation:qmarkFadePulse 3s ease-in-out infinite;
      transition:opacity .18s ease;
    }
    .priceCardPro .qmark{ animation-delay:-1.5s; }
    .qmark:hover{ opacity:.92; }

    @keyframes qmarkFadePulse{
      0%, 100%{
        color: rgba(239,68,68,1);
        text-shadow: 0 0 10px rgba(239,68,68,.10);
      }
      50%{
        color: rgba(239,68,68,.42);
        text-shadow:none;
      }
    }

    .researchModeCard{
      --modeInfoColor: rgba(124,58,237,.76);
    }
    .researchModeSlot{
      min-width:0;
      display:flex;
      flex-direction:column;
      gap:10px;
      align-self:start;
    }
    .researchModeCard .modeQmark{
      position:absolute;
      top:20px;
      right:6px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-width:18px;
      height:18px;
      padding:0;
      border:0;
      background:linear-gradient(90deg, rgba(34,211,238,.56), rgba(124,58,237,.74));
      -webkit-background-clip:text;
      background-clip:text;
      -webkit-text-fill-color:transparent;
      color:var(--modeInfoColor);
      font-weight:900;
      font-size:18px;
      line-height:1;
      cursor:pointer;
      z-index:2;
      filter:brightness(1.08);
      text-shadow:0 0 10px rgba(124,58,237,.10);
    }
    .researchModeCard .modeQmark:focus-visible{
      outline:none;
    }
.modeDetailPanel{
  display:flex;
  align-items:flex-start;
  padding:12px 14px;
  min-height:100px;
  height:100px;
  border-radius:15px;
  border:1px solid rgba(124,58,237,.38);
  background:
    linear-gradient(180deg, rgba(124,58,237,.18), rgba(11,14,22,.97) 34%, rgba(8,10,16,.98)),
    linear-gradient(180deg, rgba(255,255,255,.02), transparent);
  box-shadow:0 14px 30px rgba(0,0,0,.22);
  color:rgba(255,255,255,.90);
  font-size:.82rem;
  font-weight:650;
  line-height:1.42;
  text-align:left;
}
@media (max-width: 720px){
  .modeDetailPanel{
    min-height:96px;
    height:96px;
  }
}
    .modeDetailPanel[hidden]{
      display:none !important;
    }

    /* ---------- Topic summary "Show more / Hide more" toggle row ---------- */
    #analysisDemo .topicToggleRow td{ border-top:1px solid rgba(148,163,184,.18); }
    #analysisDemo .topicMoreBtn{ padding:7px 12px; }

    /* ---------- Fusion purple/red outline for Choose Growth or Pro ---------- */
    .btnFusionOutline{ position:relative; z-index:0; }
    .btnFusionOutline::before{
      content:"";
      position:absolute;
      inset:-1px;
      border-radius:inherit;
      padding:1px;
      background: linear-gradient(135deg, rgba(239,68,68,.85), rgba(124,58,237,.80), rgba(239,68,68,.72));
      -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
      -webkit-mask-composite: xor;
              mask-composite: exclude;
      opacity:.80;
      pointer-events:none;
    }

    /* ---------- Smaller T3 badge in Decision cards ---------- */
    #analysisDemo .tagT3Small{
      width:28px;
      height:28px;
      padding:0;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      border-radius:999px;
      font-size:.72rem;
    }

    /* Ensure Choose Growth or Pro has no internal gradient fill */
    .btnFusionOutline{
      background-image: none !important;
      background: rgba(255,255,255,.06) !important;
    }

    .teamCtas a[href="#faq"],
    .teamCtas a[href="#faq"]:hover,
    .teamCtas a[href="#faq"]:focus-visible{
      box-shadow:none !important;
    }

    /* ---------- Reddit signal pipeline (Why Reddit section) ---------- */
    .signalPipeline{
      margin-top:10px;
    }
    .signalPipeline .pipelineGrid{
      margin-top:6px;
    }
    .signalPipeline .pipelineShared{
      margin-top:14px;
    }

    /* ---------- Executive hero showcase ---------- */
    .heroShowcase{
      position:relative;
      width:100%;
      max-width:468px;
      justify-self:end;
      min-height:422px;
      display:grid;
      grid-template-rows:auto 1fr auto;
      gap:16px;
      padding:22px;
      border-radius:28px;
      border:1px solid rgba(255,255,255,.14);
      background:
        radial-gradient(1200px 720px at 0% 0%, rgba(34,211,238,.20), transparent 52%),
        radial-gradient(1080px 760px at 100% 0%, rgba(124,58,237,.22), transparent 56%),
        linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
      box-shadow:var(--shadow);
      overflow:hidden;
      isolation:isolate;
    }
    .heroShowcase::before{
      content:"";
      position:absolute;
      inset:1px;
      border-radius:27px;
      background:
        radial-gradient(140% 140% at 0% 0%, rgba(10,16,28,.96), transparent 52%),
        radial-gradient(140% 140% at 100% 100%, rgba(11,14,24,.96), transparent 56%),
        linear-gradient(180deg, rgba(9,11,18,.82), rgba(6,8,14,.94));
      pointer-events:none;
      z-index:-2;
    }
    .heroShowcase::after{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(180deg, rgba(255,255,255,.05), transparent 22%),
        linear-gradient(120deg, transparent 0%, rgba(255,255,255,.03) 46%, transparent 65%);
      opacity:.65;
      pointer-events:none;
      z-index:-1;
    }
    .showcaseStripe{
      position:absolute;
      left:22px;
      right:22px;
      top:12px;
      height:4px;
      border-radius:999px;
      background:linear-gradient(90deg, transparent, rgba(34,211,238,.94), rgba(124,58,237,.94), transparent);
      opacity:.98;
      pointer-events:none;
      z-index:2;
    }
    .showcaseTop{
      position:relative;
      z-index:1;
      display:flex;
      align-items:center;
      justify-content:flex-end;
      gap:14px;
      padding-top:8px;
    }
    .showcaseEyebrow{
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding:9px 14px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.14);
      background:rgba(10,14,22,.72);
      color:rgba(255,255,255,.74);
      font-size:.78rem;
      font-weight:800;
      letter-spacing:.12em;
      text-transform:uppercase;
      backdrop-filter:blur(10px);
      -webkit-backdrop-filter:blur(10px);
    }
    .showcaseEyebrow::before{
      content:"";
      width:8px;
      height:8px;
      border-radius:999px;
      background:linear-gradient(135deg, var(--a1), var(--a2));
      box-shadow:0 0 16px rgba(34,211,238,.34);
      flex:0 0 auto;
    }
    .showcaseControls{
      display:flex;
      align-items:center;
      gap:12px;
    }
    .showcaseDots{
      display:flex;
      align-items:center;
      gap:8px;
    }
    .showcaseDot{
      appearance:none;
      border:1px solid rgba(255,255,255,.18);
      background:rgba(255,255,255,.10);
      width:10px;
      height:10px;
      flex:0 0 10px;
      border-radius:999px;
      padding:0;
      cursor:pointer;
      transition:transform .24s ease, background .24s ease, border-color .24s ease, box-shadow .24s ease, opacity .24s ease;
    }
    .showcaseDot:hover,
    .showcaseDot:focus-visible{
      transform:translateY(-1px);
    }
    .showcaseDot.isActive{
      background:linear-gradient(135deg, rgba(34,211,238,.96), rgba(124,58,237,.96));
      border-color:rgba(124,58,237,.56);
      box-shadow:0 0 18px rgba(34,211,238,.18);
    }
    .showcaseViewport{
      position:relative;
      min-height:332px;
      z-index:1;
    }
    .showcaseSlide{
      position:absolute;
      inset:0;
      display:grid;
      align-content:space-between;
      gap:18px;
      opacity:0;
      transform:translateY(18px) scale(.985);
      pointer-events:none;
      transition:opacity .55s ease, transform .55s ease;
    }
    .showcaseSlide.isActive{
      opacity:1;
      transform:none;
      pointer-events:auto;
    }
    .showcaseKicker{
      margin-bottom:12px;
      color:rgba(255,255,255,.56);
      font-size:.8rem;
      font-weight:800;
      letter-spacing:.16em;
      text-transform:uppercase;
    }
    .showcaseSlide h3{
      margin:0 0 14px;
      max-width:11ch;
      font-size:clamp(1.9rem, 4vw, 2.75rem);
      line-height:1.02;
      letter-spacing:-.045em;
    }
    .showcaseText{
      margin:0;
      max-width:48ch;
      color:rgba(255,255,255,.72);
      font-size:1rem;
      line-height:1.55;
    }
    .showcaseText:empty{
      min-height:6.2em;
    }

    .showcaseProgress{
      position:relative;
      z-index:1;
      height:3px;
      margin-top:8px;
      border-radius:999px;
      background:rgba(255,255,255,.08);
      overflow:hidden;
    }
    .showcaseProgressBar{
      display:block;
      width:100%;
      height:100%;
      transform:scaleX(0);
      transform-origin:left center;
      background:linear-gradient(90deg, rgba(34,211,238,.96), rgba(124,58,237,.96));
    }
    .showcaseProgressBar.isAnimating{
      animation:showcaseProgress 3s linear forwards;
    }
    @keyframes showcaseProgress{
      from{ transform:scaleX(0); }
      to{ transform:scaleX(1); }
    }
    @media (max-width: 980px){
      .heroShowcase{
        min-height:520px;
        max-width:none;
      }
      .showcaseViewport{
        min-height:380px;
      }
    }
    @media (max-width: 680px){
      .heroShowcase{
        min-height:536px;
      }
      .showcaseTop{
        justify-content:flex-end;
        align-items:flex-end;
      }
      .showcaseViewport{
        min-height:396px;
      }
      .showcaseSlide h3{
        max-width:none;
      }
    }
    @media (prefers-reduced-motion: reduce){
      .showcaseSlide,
      .showcaseDot{
        transition:none;
      }
      .showcaseProgressBar.isAnimating{
        animation:none;
        transform:scaleX(1);
      }
    }

    .heroMarquee{
      --heroMarqueeGap:1.2rem;
      width:min(var(--max), calc(100% - (var(--pad) * 2)));
      margin:clamp(52px, 6.6vw, 74px) auto 0;
      overflow:hidden;
      position:relative;
      padding:6px 0;
      -webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
      mask-image:linear-gradient(90deg, transparent 0%, #000 10%, #000 90%, transparent 100%);
    }
    .heroMarqueeTrack{
      display:flex;
      align-items:center;
      gap:var(--heroMarqueeGap);
      width:max-content;
      white-space:nowrap;
      animation:heroMarqueeMove 44s linear infinite;
      will-change:transform;
    }
    .heroMarqueeGroup{
      display:flex;
      align-items:center;
      gap:1.2rem;
      white-space:nowrap;
    }
    .heroMarqueeItem,
    .heroMarqueeDivider{
      display:inline-flex;
      align-items:center;
      white-space:nowrap;
      font-size:clamp(1.12rem, 1.04rem + .32vw, 1.22rem);
      line-height:1.2;
      letter-spacing:.01em;
      color:rgba(255,255,255,.98);
    }
    .heroMarqueeItem{
      font-weight:520;
    }
    .heroMarqueeReddit{
      display:inline-block;
      font-weight:760;
      letter-spacing:0;
    }
    .heroMarqueeDivider{
      color:rgba(255,255,255,.72);
      font-size:clamp(1.18rem, 1.08rem + .36vw, 1.28rem);
    }
    @keyframes heroMarqueeMove{
      from{ transform:translateX(0); }
      to{ transform:translateX(calc(-50% - (var(--heroMarqueeGap) / 2))); }
    }
    @media (max-width: 980px){
      .heroMarquee{
        margin-top:42px;
      }
    }
    @media (max-width: 680px){
      .heroMarquee{
        --heroMarqueeGap:1rem;
        margin-top:36px;
      }
      .heroMarqueeGroup{
        gap:1rem;
      }
      .heroMarqueeItem,
      .heroMarqueeDivider{
        font-size:1.08rem;
      }
      .heroMarqueeDivider{
        font-size:1.16rem;
      }
      .heroMarqueeTrack{
        animation-duration:38s;
      }
    }
    @media (prefers-reduced-motion: reduce){
      .heroMarqueeTrack{
        animation:none;
        transform:none;
      }
    }

.mockReportEmbed{
  margin-top:18px;
}
.mockReportFrameWrap{
  position:relative;
  border-radius:30px;
  padding:1px;
  overflow:hidden;
  background:linear-gradient(135deg, rgba(96,165,250,.62), rgba(34,211,238,.42), rgba(96,165,250,.54));
  box-shadow:
    0 0 0 1px rgba(96,165,250,.18),
    0 0 18px rgba(59,130,246,.10),
    0 24px 56px rgba(0,0,0,.40);
}
.mockReportFrameWrap::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:31px;
  pointer-events:none;
  box-shadow:
    0 0 0 1px rgba(96,165,250,.12),
    0 0 22px rgba(34,211,238,.08);
}
.mockReportFrame{
  display:block;
  width:100%;
  min-height:0;
  height:640px;
  border:0;
  border-radius:28px;
  background:#05060a;
  overflow:hidden;
}




/* LH217 mock report sharpness safeguards.
   Keep the embedded mock report crisp even when the client-tour popup locks page scrolling. */
.mockReportEmbed,
.mockReportFrameWrap,
.mockReportFrame{
  filter:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  transform:none !important;
  backface-visibility:visible !important;
  image-rendering:auto !important;
}

.mockReportFrame{
  opacity:1 !important;
  will-change:auto !important;
}

html.hasClientTourPopup .mockReportEmbed,
body.hasClientTourPopup .mockReportEmbed,
html.hasClientTourPopup .mockReportFrameWrap,
body.hasClientTourPopup .mockReportFrameWrap,
html.hasClientTourPopup .mockReportFrame,
body.hasClientTourPopup .mockReportFrame{
  filter:none !important;
  transform:none !important;
  opacity:1 !important;
}

/* ---------- v11 workflow popup refinements ---------- */
.workflowPipelineMain .pipelineHead p{ display:none !important; }
.workflowPipelineMain .pipelineInputs .pipelineHead h3,
.workflowPipelineMain .pipelineOutputs .pipelineHead h3{
  font-size:1.1rem;
}
.workflowPipelineMain .pipelineEngine{
  border-color: rgba(148,163,184,.42);
  box-shadow: 0 22px 58px rgba(0,0,0,.28);
}
.workflowPipelineMain .pipelineEngine::before{
  background: linear-gradient(135deg, rgba(34,211,238,.62), rgba(124,58,237,.58), rgba(34,211,238,.56));
  opacity:.72;
}
.workflowPipelineMain .pipelineEngine::after{
  display:none;
}
.workflowPipelineMain .pipelineEngine .pipelineHead{
  position:relative;
  padding-top:14px;
}
.workflowPipelineMain .pipelineEngine .pipelineHead::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:2px;
  border-radius:999px;
  background: linear-gradient(90deg, rgba(34,211,238,0), rgba(34,211,238,.94), rgba(124,58,237,.92), rgba(34,211,238,0));
  opacity:.94;
}
.workflowPipelineMain .pipelineEngine .pipelineHead h3{
  text-transform:uppercase;
  letter-spacing:.05em;
  font-size:1.02rem;
}
.workflowPipelineMain .pipelineEngine .pipelineHead h3 .glow{
  text-shadow:none;
  filter:none;
}
.workflowPipelineMain .pipelineSteps{
  gap:0;
}
.workflowPipelineMain .pipeStep{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:12px 0;
  border-radius:0;
  border:0;
  border-top:1px solid rgba(255,255,255,.08);
  background:transparent;
}
.workflowPipelineMain .pipeStep:first-child{
  border-top:0;
  padding-top:4px;
}
.workflowPipelineMain .pipeBulletEngine{
  width:10px;
  height:10px;
  margin-top:8px;
  border-radius:999px;
  flex:0 0 auto;
  background: linear-gradient(135deg, rgba(34,211,238,.94), rgba(124,58,237,.90));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:none;
}
.workflowPipelineMain .pipeStepNum{
  display:none !important;
}

/* ---------- v12 workflow popup heading polish ---------- */
.workflowPipelineMain .pipelineHead{
  margin-bottom:18px;
}
.workflowPipelineMain .pipelineHead h3{
  display:none !important;
}
.workflowPipelineMain .pipelineKicker{
  text-transform:none;
  letter-spacing:.12em;
  font-size:.8rem;
  margin-bottom:0;
  color:rgba(255,255,255,.80);
}
.workflowPipelineMain .pipelineKicker .brandWord{
  display:inline-block;
  background:linear-gradient(90deg, var(--a1), var(--a2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  letter-spacing:0;
  font-weight:900;
}
.workflowPipelineMain .pipelineInputs::after{
  background:linear-gradient(90deg, rgba(34,211,238,0), rgba(34,211,238,.95), rgba(34,211,238,0));
}
.workflowPipelineMain .pipelineOutputs::after{
  background:linear-gradient(90deg, rgba(124,58,237,0), rgba(124,58,237,.95), rgba(124,58,237,0));
}
.workflowPipelineMain .pipelineSteps{
  gap:10px;
}
.workflowPipelineMain .pipeStep{
  padding:2px 0 0;
  border:0;
  border-top:0;
  background:transparent;
}
.workflowPipelineMain .pipeStep:first-child{
  padding-top:2px;
}
.workflowPipelineMain .pipeBulletEngine{
  width:9px;
  height:9px;
  margin-top:8px;
  background:rgba(148,163,184,.88);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:none;
}

/* ---------- v14 workflow popup copy + process bullets ---------- */
.workflowPipelineMain .pipeBulletEngine{
  width:10px;
  height:10px;
  margin-top:8px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(34,211,238,.98) 0 50%, rgba(124,58,237,.98) 50% 100%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:none;
}
.workflowPipelineMain .pipelineKicker .brandWord{
  background:none;
  -webkit-background-clip:border-box;
  background-clip:border-box;
  color:inherit;
}

/* ---------- v11 research mode popup sizing/color ---------- */
.modeDetailPanel{
  padding:10px 12px;
  min-height:88px;
  height:88px;
  border-radius:14px;
  border:1px solid rgba(168,85,247,.42);
  background:
    linear-gradient(180deg, rgba(168,85,247,.18), rgba(16,18,28,.97) 36%, rgba(8,10,16,.98)),
    linear-gradient(180deg, rgba(255,255,255,.02), transparent);
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  color:rgba(255,255,255,.92);
  font-size:.8rem;
  font-weight:650;
  line-height:1.42;
}
@media (max-width: 720px){
  .modeDetailPanel{
    min-height:92px;
    height:92px;
  }
}



/* ---------- v15 workflow + signal color refinements ---------- */
/* Flip input/output accents for the signal pipeline and the workflow popup bullets */
.pipelineInputs::after{
  background: linear-gradient(90deg, rgba(34,211,238,0), rgba(34,211,238,.95), rgba(34,211,238,0));
}
.pipelineOutputs::after{
  background: linear-gradient(90deg, rgba(124,58,237,0), rgba(124,58,237,.95), rgba(124,58,237,0));
}
.pipelineInputs .pipeBullet{
  background: radial-gradient(circle at 30% 30%, rgba(34,211,238,.95), rgba(34,211,238,.20));
  box-shadow:
    0 0 0 1px rgba(34,211,238,.34),
    0 0 20px rgba(34,211,238,.14);
}
.pipelineOutputs .pipeBullet{
  background: radial-gradient(circle at 30% 30%, rgba(168,85,247,.95), rgba(124,58,237,.28));
  box-shadow:
    0 0 0 1px rgba(168,85,247,.38),
    0 0 20px rgba(124,58,237,.18);
}

/* Keep the workflow popup stripe swap that was already requested earlier */
.workflowPipelineMain .pipelineInputs::after{
  background:linear-gradient(90deg, rgba(34,211,238,0), rgba(34,211,238,.95), rgba(34,211,238,0));
}
.workflowPipelineMain .pipelineOutputs::after{
  background:linear-gradient(90deg, rgba(124,58,237,0), rgba(124,58,237,.95), rgba(124,58,237,0));
}

/* Make THE PROCESS match the Signal integrity card treatment */
.workflowPipelineMain .pipelineEngine{
  border-color: rgba(148,163,184,.46);
  box-shadow:
    0 26px 92px rgba(0,0,0,.42),
    0 0 0 1px rgba(34,211,238,.12),
    0 0 26px rgba(34,211,238,.10),
    0 0 48px rgba(124,58,237,.12);
}
.workflowPipelineMain .pipelineEngine::before{
  background: linear-gradient(135deg, rgba(34,211,238,.70), rgba(124,58,237,.62), rgba(34,211,238,.60));
  opacity:.55;
}
.workflowPipelineMain .pipelineEngine::after{
  content:"";
  position:absolute;
  inset:-12px;
  border-radius:inherit;
  background: linear-gradient(135deg, rgba(34,211,238,.22), rgba(124,58,237,.20), rgba(34,211,238,.14));
  filter: blur(22px);
  opacity:.18;
  pointer-events:none;
  z-index:-1;
  display:block;
}
.workflowPipelineMain .pipelineEngine .pipelineHead::before{
  display:none;
}
.workflowPipelineMain .pipeStepNum{
  display:none !important;
}
.workflowPipelineMain .pipeBulletEngine{
  width:10px;
  height:10px;
  margin-top:8px;
  border-radius:999px;
  background: radial-gradient(circle at 30% 30%, rgba(203,213,225,.90), rgba(148,163,184,.26));
  border:1px solid rgba(148,163,184,.34);
  box-shadow:none;
}

/* Replace the Prospalytics Framework top line with the hero showcase stripe */
.dsCompareCard--good::after{
  height:4px;
  background:linear-gradient(90deg, transparent, rgba(34,211,238,.94), rgba(124,58,237,.94), transparent);
  opacity:.98;
}



/* ---------- v16 process spacing cleanup ---------- */
.workflowPipelineMain .pipelineEngine .pipelineHead{
  padding-top:0;
  margin-bottom:12px;
}



/* ---------- v19 research mode popup card alignment/style ---------- */
.modeDetailPanel{
  display:block;
  text-align:left;
  padding:18px 18px 16px;
  border-radius:22px;
  border:1px solid rgba(124,58,237,.48);
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.028));
  box-shadow:0 22px 70px rgba(0,0,0,.35);
}

/* === Combined LH #209.html: v17-spacing-and-signal-refinement === */
/* ---------- v17 workflow spacing + signal pipeline cleanup ---------- */
.workflowPipelineMain .pipelineList,
.workflowPipelineMain .pipelineSteps{
  gap: 16px;
}
.workflowPipelineMain .pipelineList li,
.workflowPipelineMain .pipeStep{
  gap: 12px;
}
.workflowPipelineMain .pipeStep{
  padding: 2px 0 0;
}

.signalPipeline .pipelineList,
.signalPipeline .pipelineSteps{
  gap: 16px;
}
.signalPipeline .pipelineList li,
.signalPipeline .pipeStep{
  gap: 12px;
}
.signalPipeline .pipeStep{
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.signalPipeline .pipeStepBody .pipeMeta{
  margin-top: 4px;
}
.signalPipeline .pipeBulletEngine{
  width: 10px;
  height: 10px;
  margin-top: 8px;
  border-radius: 999px;
  flex: 0 0 auto;
  background: radial-gradient(circle at 30% 30%, rgba(203,213,225,.90), rgba(148,163,184,.26));
  border: 1px solid rgba(148,163,184,.34);
  box-shadow: none;
}

/* === Combined LH #209.html: auxPageStandaloneStyles === */
.auxPageOverlay{
    position:fixed;
    inset:0;
    z-index:2147483000;
    background:#05060a;
  }
  .auxPageOverlay[hidden]{
    display:none !important;
  }
  .auxPageFrame{
    display:block;
    width:100%;
    height:100%;
    border:0;
    background:#05060a;
  }
  body.hasAuxPage{
    overflow:hidden;
  }

/* === Combined LH #209.html: v3-user-request-adjustments === */
/* Flatten heavy gray-card shadows that create a dark inner/right-edge effect */
  .card,
  .researchModeCard,
  .pipelineCol,
  .laneCard,
  .laneShared,
  .dsCompareCard,
  .planPolicyCard,
  .priceCard,
  .priceCardBasic,
  .priceCardHot,
  .priceCardPro,
  .teamLeft,
  .teamInnerCard{
    box-shadow:none !important;
  }

  .pipelineEngine::after,
  .workflowPipelineMain .pipelineEngine::after{
    display:none !important;
  }

  /* Remove hover lift/bounce from lane cards and comparison cards */
  .laneCard,
  #advantage .dsCompareCard{
    transition:border-color .22s ease, box-shadow .22s ease !important;
    will-change:auto !important;
  }

  .laneCard:hover,
  #advantage .dsCompareCard:hover{
    transform:none !important;
  }

  .laneCard:hover{
    box-shadow:none !important;
    border-color:rgba(255,255,255,.13) !important;
  }

  #advantage .dsCompareCard:hover{
    box-shadow:none !important;
    border-color:rgba(255,255,255,.13) !important;
  }

/* === Combined LH #209.html: v9-type-and-card-polish === */
/* Buttons: title-case labels already updated in HTML/JS; this block polishes typography/layout. */

  /* Keep workflow and Why Reddit box titles in Title Case and bright white */
  .workflowPipelineMain .pipelineKicker,
  .signalPipeline .pipelineKicker{
    text-transform:none !important;
    color:rgba(255,255,255,.96) !important;
    letter-spacing:.01em !important;
    font-size:1.02rem !important;
    font-weight:800 !important;
    line-height:1.15;
    font-family:inherit !important;
  }

  /* Slightly smaller comparison titles */
  .dsCompareTitle{
    font-size:clamp(1.20rem, 1.00vw + .95rem, 1.42rem) !important;
  }

  /* Use the same regular title font feel inside Choose Your Lane */
  .lanePill,
  .laneSharedTitle,
  .laneCompareSimplified .lanePill,
  .laneCompareSimplified .laneSharedTitle{
    font-family:inherit !important;
    font-style:normal !important;
    letter-spacing:-.02em !important;
  }

  .laneCompareSimplified .lanePill,
  .laneCompareSimplified .laneSharedTitle{
    font-size:clamp(1.16rem, .95vw + .98rem, 1.24rem) !important;
    font-weight:850 !important;
  }

  /* Remove the darker interior/right-side shading from gray cards */
  .card,
  .researchModeCard,
  .laneCard,
  .laneShared,
  .teamLeft,
  .teamInnerCard,
  .priceCard,
  .planPolicyCard,
  .pipelineCol,
  .pipelineShared,
  .dsCompareCard{
    background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03)) !important;
  }

/* === Combined LH #209.html: assistant-side-rails-fix === */
/* Keep decorative rails outside the content area on all widths. */
  :root{
    --side-rail-width: clamp(12px, 1.15vw, 16px);
  }

  .bg::before,
  .bg::after{
    top: 0;
    bottom: 0;
    width: var(--side-rail-width);
    pointer-events: none;
    box-shadow: none;
  }

  .bg::before{
    left: 0;
    border-radius: 0 999px 999px 0;
    background: linear-gradient(
      90deg,
      rgba(34,211,238,.34) 0%,
      rgba(34,211,238,.16) 52%,
      rgba(34,211,238,0) 100%
    );
  }

  .bg::after{
    right: 0;
    border-radius: 999px 0 0 999px;
    background: linear-gradient(
      270deg,
      rgba(124,58,237,.36) 0%,
      rgba(124,58,237,.16) 52%,
      rgba(124,58,237,0) 100%
    );
  }

  /* Decorative elements should yield to content as space gets tighter. */
  @media (max-width: 900px){
    .bg::before,
    .bg::after{
      opacity: .62;
    }
  }

  @media (max-width: 640px){
    .bg::before,
    .bg::after{
      content: none;
      display: none;
    }
  }

/* === Combined LH #209.html: user-request-targeted-pipeline-and-hover-fixes === */
/* Keep the middle cards aligned with the outer cards in both three-box sections */
  .workflowPipelineMain .pipelineEngine,
  .signalPipeline .pipelineEngine{
    border-color:rgba(255,255,255,.12) !important;
    box-shadow:none !important;
    position:relative;
  }

  .workflowPipelineMain .pipelineEngine::before,
  .signalPipeline .pipelineEngine::before{
    background:linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.02)) !important;
    opacity:.75 !important;
  }

  .workflowPipelineMain .pipelineEngine::after,
  .signalPipeline .pipelineEngine::after{
    content:"" !important;
    position:absolute !important;
    inset:auto !important;
    left:14px !important;
    right:14px !important;
    top:12px !important;
    bottom:auto !important;
    height:2px !important;
    border-radius:999px !important;
    background:linear-gradient(90deg, transparent, rgba(34,211,238,.94), rgba(124,58,237,.94), transparent) !important;
    opacity:.98 !important;
    display:block !important;
    pointer-events:none !important;
    z-index:1 !important;
    filter:none !important;
  }

  .workflowPipelineMain .pipelineEngine .pipelineHead,
  .signalPipeline .pipelineEngine .pipelineHead{
    position:relative;
    padding-top:0 !important;
    margin-bottom:12px;
  }

  .workflowPipelineMain .pipelineEngine .pipelineHead::before,
  .signalPipeline .pipelineEngine .pipelineHead::before{
    content:none !important;
    display:none !important;
  }

  .workflowPipelineMain .pipelineInputs .pipeBullet,
  .workflowPipelineMain .pipelineOutputs .pipeBullet,
  .workflowPipelineMain .pipeBulletEngine,
  .signalPipeline .pipelineInputs .pipeBullet,
  .signalPipeline .pipelineOutputs .pipeBullet,
  .signalPipeline .pipeBulletEngine{
    background:radial-gradient(circle at 30% 30%, rgba(203,213,225,.90), rgba(148,163,184,.26)) !important;
    border:1px solid rgba(148,163,184,.34) !important;
    box-shadow:none !important;
  }

  /* Remove the remaining hover movement in A Higher Standard for Market Insight */
  #advantage .dsPanel,
  #advantage .dsPanel:hover,
  #advantage .dsCompareCard,
  #advantage .dsCompareCard:hover{
    transform:none !important;
  }

  #advantage .dsPanel,
  #advantage .dsCompareCard{
    transition:border-color .22s ease, box-shadow .22s ease !important;
    will-change:auto !important;
  }

/* === Combined LH #209.html: assistant-targeted-fixes === */
.plansIntroText{
    font-size:1.03rem;
  }

  #faq .faqGroupTitle::after{
    content:"";
    display:block;
    width:min(170px, 42%);
    height:1px;
    margin-top:10px;
    border-radius:999px;
    background:linear-gradient(90deg, rgba(34,211,238,.90), rgba(124,58,237,.70), rgba(124,58,237,0));
    opacity:.9;
  }

  #faq details.qa p{
    margin:0 0 12px;
    padding:0 14px;
    line-height:1.72;
  }

  #faq details.qa summary + p{
    margin-top:2px;
  }

  #faq details.qa ul{
    margin:2px 14px 14px;
    padding-left:1.35rem;
    display:grid;
    gap:10px;
    line-height:1.68;
  }

  #faq details.qa ul ul{
    margin:8px 0 0;
    padding-left:1.1rem;
    gap:8px;
  }

  #faq details.qa li{
    padding-left:4px;
  }

  #faq details.qa > :last-child{
    margin-bottom:16px;
  }

/* === Combined LH #209.html: assistant-footer-legal-layout === */
.footerActions .footerSocialRow{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:8px;
    width:100%;
  }

  .footerBottomInner{
    flex-wrap:wrap;
  }

  .footerBottomLinks{
    justify-content:flex-end;
    align-items:center;
    gap:2px 4px;
    max-width:min(100%, 720px);
    text-align:right;
  }

  .footerBottomLinks a{
    padding:7px 8px;
  }

  .footerLinkSeparator{
    color:rgba(255,255,255,.34);
    user-select:none;
  }

  @media (max-width: 760px){
    .footerBottomInner{
      align-items:flex-start;
      flex-direction:column;
    }

    .footerBottomLinks{
      justify-content:flex-start;
      text-align:left;
      max-width:100%;
    }

    .footerActions .footerSocialRow{
      justify-content:flex-start;
    }
  }

/* === Combined LH #209.html: assistant-enterprise-plan-styles === */
:root{
    --enterprise-yellow:rgba(250,204,21,.95);
    --enterprise-yellow-soft:rgba(250,204,21,.14);
  }

  html{
    scrollbar-gutter:stable;
  }

  .priceCardPro{
    position:relative;
  }

  .enterprisePlusBtn{
    position:absolute;
    top:50%;
    right:-46px;
    width:34px;
    height:34px;
    border-radius:999px;
    border:1px solid var(--enterprise-yellow);
    background:var(--enterprise-yellow);
    color:transparent;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0;
    font-size:0;
    line-height:0;
    font-weight:400;
    cursor:pointer;
    box-shadow:none;
    z-index:4;
    transform:translateY(-50%);
    transition:transform .16s ease, filter .16s ease;
  }

  .enterprisePlusBtn::before,
  .enterprisePlusBtn::after{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    width:15px;
    height:2px;
    border-radius:999px;
    background:#05060a;
    transform:translate(-50%, -50%);
  }

  .enterprisePlusBtn::after{
    transform:translate(-50%, -50%) rotate(90deg);
  }

  .enterprisePlusBtn:hover{
    transform:translateY(-50%) scale(1.04);
    filter:brightness(1.04);
  }

  .enterprisePlusBtn:active{
    transform:translateY(-50%) scale(.98);
  }

  .enterprisePlusBtn:focus-visible{
    outline:none;
    box-shadow:0 0 0 3px rgba(250,204,21,.22), 0 0 0 1px var(--enterprise-yellow);
  }

  body.hasEnterpriseModal{
    overflow:hidden;
  }

  .enterpriseModal{
    position:fixed;
    inset:0;
    z-index:2147482000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px;
  }

  .enterpriseModal[hidden]{
    display:none !important;
  }

  .enterpriseModalBackdrop{
    position:absolute;
    inset:0;
    background:rgba(15,23,42,.75);
  }

  .enterpriseModalPanel{
    position:relative;
    width:min(100%, 520px);
    max-height:78vh;
    overflow:auto;
    border-radius:22px;
    border:1px solid var(--enterprise-yellow);
    background:linear-gradient(180deg, rgba(15,23,42,.98), rgba(2,6,23,.98));
    box-shadow:none;
    padding:22px 22px 20px;
    transform:translateY(-3vh);
  }

  .enterpriseModalHeader{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:16px;
    margin-bottom:12px;
    text-align:center;
  }

  .enterpriseModalHeader > div{
    width:100%;
  }


  .enterpriseModalTitle{
    margin:0;
    font-size:1.55rem;
    line-height:1.08;
    letter-spacing:-.025em;
    text-align:center;
  }


  .enterpriseModalPrice{
    margin:0 0 10px;
    color:rgba(255,255,255,.98);
    font-size:1.2rem;
    font-weight:900;
    letter-spacing:-.02em;
    text-align:center;
  }

  .enterpriseModalCopy{
    margin:0;
    color:var(--muted);
    line-height:1.55;
  }

  .enterpriseModalList{
    margin-top:14px;
  }

  .enterpriseModalActions{
    margin-top:18px;
  }

  @media (max-width:720px){
    .enterprisePlusBtn{
      right:14px;
      top:18px;
      transform:none;
    }

    .enterprisePlusBtn:hover{
      transform:scale(1.04);
    }

    .enterprisePlusBtn:active{
      transform:scale(.98);
    }

    .enterpriseModalPanel{
      transform:none;
      padding:20px 18px 18px;
    }
  }

/* --- 2026-09-06 marquee motion compatibility ---
   Windows can report prefers-reduced-motion: reduce to Chromium when system animation effects are disabled.
   The old reduced-motion rule froze the decorative hero marquee, making it look broken on Chrome/Edge. */
@media (prefers-reduced-motion: reduce){
  .heroMarqueeTrack{
    animation:heroMarqueeMove 52s linear infinite !important;
    transform:translate3d(0,0,0);
  }
}
@media (prefers-reduced-motion: reduce) and (max-width: 680px){
  .heroMarqueeTrack{ animation-duration:44s !important; }
}



/* --- 2026-09-10 LH225 motion compatibility parity ---
   Keep intentional landing motion alive on Chromium/Windows setups that report reduced motion. */
@media (prefers-reduced-motion: reduce){
  .teamRevealTab{
    transition:filter .18s ease, transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
  }
  .teamInnerCard{
    transition:opacity .22s ease, transform .22s ease !important;
  }
  .showcaseSlide{
    transition:opacity .55s ease, transform .55s ease !important;
  }
  .showcaseDot{
    transition:transform .24s ease, background .24s ease, border-color .24s ease, box-shadow .24s ease, opacity .24s ease !important;
  }
  .showcaseProgressBar.isAnimating{
    animation:showcaseProgress 3s linear forwards !important;
  }
  .spark::after,
  .analysisSpark::after{
    animation:shimmer 3.2s ease-in-out infinite !important;
    opacity:.9 !important;
  }
  .revealOnScroll{
    transition:opacity .38s cubic-bezier(.2,.8,.2,1), transform .38s cubic-bezier(.2,.8,.2,1) !important;
  }
  .revealOnScroll:not(.isVisible){
    opacity:0 !important;
    transform:translateY(14px) !important;
  }
  .revealOnScroll.isVisible{
    opacity:1 !important;
    transform:none !important;
  }
  .topicMapSvg.isAnimating .topicNodeGroup{
    animation:tmNodeIn .55s cubic-bezier(.2,.8,.2,1) forwards !important;
  }
  .topicMapSvg.isAnimating .topicEdge{
    animation:tmEdgeDraw .70s cubic-bezier(.2,.8,.2,1) forwards !important;
  }
}
