  /* ===== HERO ===== */
  .hero{
    padding-top:100px;
    padding-bottom:110px;
    position:relative;
    overflow:hidden;
    background:
      radial-gradient(700px 500px at 82% 10%, rgba(52,87,255,0.09), transparent 65%),
      var(--warm-white);
  }
  .hero-grid{
    display:grid;
    grid-template-columns:1.05fr 0.95fr;
    gap:64px;
    align-items:center;
  }
  .hero-badge{
    display:inline-flex;align-items:center;gap:8px;
    padding:7px 14px;
    border:1px solid var(--hairline);
    border-radius:var(--r-pill);
    font-family:var(--mono);
    font-size:11.5px;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:var(--warm-gray);
    background:#fff;
    margin-bottom:26px;
  }
  .hero-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--blue);}
  .hero h1{margin-bottom:22px;}
  .hero .lede{max-width:480px;margin-bottom:34px;}
  .hero-entity{
    max-width:560px;
    margin:-18px 0 30px;
    color:var(--muted);
    font-size:15px;
    line-height:1.7;
  }
  .hero-ctas{display:flex;align-items:center;gap:28px;margin-bottom:48px;flex-wrap:wrap;}
  .trust-list{display:flex;flex-direction:column;gap:14px;}
  .trust-list li{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;color:var(--navy);}
  .trust-list svg{flex-shrink:0;margin-top:2px;color:var(--blue);}

  .hero-visual{position:relative;  }
  .hero-art-wrap{
    position:relative;
    border-radius:var(--r-lg);
    overflow:hidden;
    aspect-ratio:1/1.02;
    background:linear-gradient(155deg, var(--navy) 0%, var(--navy-soft) 55%, #223065 100%);
    box-shadow:0 40px 80px -30px rgba(14,21,38,0.35);
  }
  .hero-art-wrap svg{width:100%;height:100%;}
  .hero-art-wrap.hero-art{display:block;width:100%;height:auto;aspect-ratio:auto;}
  .float-card{
    position:absolute;
    left:22px;bottom:22px;
    background:rgba(255,255,255,0.08);
    border:1px solid rgba(255,255,255,0.18);
    backdrop-filter:blur(10px);
    border-radius:var(--r-md);
    padding:14px 18px;
    display:flex;
    flex-direction:column;
    gap:2px;
    animation:floaty 5.5s ease-in-out infinite;
  }
  .float-card .fc-label{font-family:var(--mono);font-size:10px;letter-spacing:0.06em;text-transform:uppercase;color:rgba(255,255,255,0.55);}
  .float-card .fc-value{font-family:var(--mono);font-size:13px;color:#fff;display:flex;align-items:center;gap:7px;}
  .float-card .fc-value::before{content:'';width:6px;height:6px;border-radius:50%;background:#5CFF9D;box-shadow:0 0 8px #5CFF9D;}
  @keyframes floaty{
    0%,100%{transform:translateY(0);}
    50%{transform:translateY(-9px);}
  }
