  /* =====================================================
     SPONSORS PAGE
     ===================================================== */
  .hero-sub{ min-height:74svh; }
  .is-loading .lockup > *{ opacity:0; }
  .sp-kicker{
    margin:0 0 var(--s3); font-size:.9rem; letter-spacing:.1em;
    color:var(--ink-soft); text-align:center;
  }
  .sp-title{
    margin:0; font-weight:300; text-align:center;
    font-size:clamp(2.7rem, 9.5vw, 8.5rem);
    line-height:.95; letter-spacing:-.036em; color:var(--ink);
  }
  .sp-sub{
    margin:var(--s4) auto 0; max-width:30ch; text-align:center;
    font-size:clamp(1.05rem, 2vw, 1.4rem); line-height:1.4;
    letter-spacing:-.01em; color:var(--ink);
  }
  .hero-sub .actions{ margin-top:var(--s5); }

  /* numbers */
  .stats{ padding:clamp(3rem, 8vh, 5rem) var(--pad); border-top:1px solid var(--rule); }
  .stat-grid{
    display:grid; grid-template-columns:repeat(auto-fit, minmax(11rem, 1fr));
    gap:var(--s4) clamp(1.5rem, 4vw, 3rem); max-width:var(--wide); margin:0 auto;
  }
  .stat{ border-top:1px solid var(--rule); padding-top:var(--s3); }
  .stat b{
    display:block; font-weight:300; line-height:1;
    font-size:clamp(2.6rem, 5.4vw, 4rem); letter-spacing:-.034em; color:var(--ink);
  }
  .stat span{ display:block; margin-top:var(--s2); color:var(--ink-mute); font-size:.95rem; line-height:1.45; }
  .stat-note{ max-width:var(--wide); margin:var(--s4) auto 0; color:var(--ink-faint); font-size:.85rem; }

  /* shared section frame (reuses the theme two-column layout) */
  .sp-sec{ padding:clamp(3.5rem, 9vh, 6rem) var(--pad); border-top:1px solid var(--rule); }
  .sp-sec.alt{ background:var(--ground-up); }
  .sp-body{ max-width:52rem; }
  .sp-body > p{ max-width:var(--narrow); color:var(--ink-soft); }
  .sp-body .directions{ margin-top:var(--s3); }
  .sp-sub-h{
    margin:var(--s5) 0 0; font-weight:300; color:var(--ink);
    font-size:1.2rem; letter-spacing:-.012em;
  }

  /* why */
  .why{
    display:grid; grid-template-columns:repeat(auto-fit, minmax(16rem, 1fr));
    gap:var(--s4) clamp(1.75rem, 5vw, 4rem); max-width:var(--wide); margin:var(--s4) auto 0;
  }
  .why-item{ border-top:1px solid var(--rule); padding-top:var(--s3); }
  .why-item h3{
    margin:0 0 var(--s2); font-weight:300; color:var(--ink);
    font-size:1.2rem; letter-spacing:-.012em;
  }
  .why-item p{ margin:0; color:var(--ink-soft); }

  /* sponsor + level rows */
  .sp-rows{ list-style:none; margin:var(--s4) 0 0; padding:0; max-width:56rem; }
  .sp-rows li{
    display:grid; grid-template-columns:minmax(10rem, 16rem) minmax(0, 1fr);
    gap:var(--s1) var(--s4); padding:var(--s3) 0; border-top:1px solid var(--rule);
  }
  .sp-rows li:last-child{ border-bottom:1px solid var(--rule); }
  .sp-rows .who{ color:var(--ink); }
  .sp-rows .what{ color:var(--ink-soft); }
  .lvl-name{ display:block; white-space:nowrap; color:var(--ink); }
  .lvl-amt{ display:block; margin-top:.15rem; color:var(--ink-mute); font-size:.92rem; }
  .lvl-tag{
    display:inline-block; margin-left:.5rem; padding:.02rem .55rem;
    border:1px solid var(--rule); border-radius:999px;
    font-size:.72rem; color:var(--ink-faint); vertical-align:middle;
  }
  @media (max-width: 620px){
    .sp-rows li{ grid-template-columns:1fr; gap:var(--s1); }
  }

  .sp-steps{ margin:var(--s3) 0 0; padding-left:1.4rem; max-width:var(--narrow); color:var(--ink); }
  .sp-steps li{ padding:.35rem 0 .35rem .35rem; }
  .sp-steps li::marker{ color:var(--ink-faint); }
  .sp-note{ margin-top:var(--s3); color:var(--ink-mute); font-size:.95rem; }
  .sp-body .actions{ justify-content:flex-start; margin-top:var(--s4); }
