  .ab-hero{padding:104px 0 76px;text-align:center;border-bottom:1px solid var(--line)}
  .ab-hero .wrap{max-width:860px}
  h1.head{font-family:'Dazzed',Arial,sans-serif;font-weight:500;font-size:clamp(31px,4.4vw,50px);
          letter-spacing:-.024em;line-height:1.08;color:var(--espresso);max-width:100%;
          text-wrap:balance;margin:12px auto 0}
  .ab-hero .lead{max-width:700px;margin:34px auto 0}

  /* One drawing scaled to a phone puts every dot below a pixel, so the narrow
     variant is a separate, chunkier composition rather than the same one shrunk. */
  .hero-art{display:block;width:100%;max-width:940px;height:auto;margin:44px auto 0}
  .ha-narrow{display:none;max-width:420px}
  @media (max-width:700px){.ha-wide{display:none}.ha-narrow{display:block}}
  .hero-art .ha-dots circle{fill:var(--espresso)}
  .hero-art .ha-people circle{fill:none;stroke:var(--evergreen);stroke-width:2.6;opacity:.9}
  .hero-art .ha-mark path{fill:var(--ochre)}
  .hero-art .ha-mark circle{fill:none;stroke:var(--evergreen);stroke-width:5}
  /* the resolve reads left-to-right, so reveal it that way */
  .hero-art g{opacity:0}
  .hero-art .ha-dots{transition:opacity 1.1s ease .15s}
  .hero-art .ha-people{transition:opacity .8s ease .6s}
  .hero-art .ha-mark{transform:translateX(-14px);
                     transition:opacity .9s ease .9s,transform .9s cubic-bezier(.2,.65,.2,1) .9s}
  .hero-art.in g{opacity:1}
  .hero-art.in .ha-mark{transform:none}
  @media (prefers-reduced-motion:reduce){
    .hero-art g{opacity:1;transform:none;transition:none}
  }

  .ab-logos{display:flex;flex-wrap:wrap;justify-content:center;gap:11px 12px;margin-top:34px}
  .ab-logos span{display:inline-flex;align-items:center;gap:8px;
                 font-family:'Instrument Sans',Arial,sans-serif;font-size:12.5px;font-weight:600;
                 letter-spacing:.04em;color:var(--espresso-soft);background:var(--surface);
                 border:1px solid var(--line);border-radius:999px;padding:8px 15px}
  .ab-logos img{height:15px;width:auto;display:block}
  /* Uniform boxes rather than uniform height: the wordmarks run from 2:1 to 8:1,
     so matching their heights would make Space Cadet three times the visual weight
     of Strategic Cyber Ventures. Each sits in the same cell and scales to fit. */
  /* 6 x 130 + 5 x 24 = 900, inside the 980px wrap, so all six hold one row */
  .inv-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;
             gap:16px 24px;margin-top:38px}
  .inv-logos .il{display:flex;align-items:center;justify-content:center;
                 width:130px;height:36px}
  .inv-logos img{max-width:100%;max-height:100%;width:auto;height:auto;
                 object-fit:contain;opacity:.62;
                 transition:opacity .3s ease}
  .inv-logos .il:hover img{opacity:.9}
  @media (max-width:560px){.inv-logos{gap:10px 20px}.inv-logos .il{width:124px;height:32px}}

  .ab-team{padding:82px 0;background:var(--ivory-2);border-bottom:1px solid var(--line)}
  .ab-team .wrap,.ab-adv .wrap,.ab-inv .wrap{max-width:980px;text-align:center}
  .pgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:30px 22px;margin-top:44px;
         list-style:none;padding:0}
  .pcard{text-align:center}
  .pc-img{display:block;width:104px;height:104px;border-radius:50%;object-fit:cover;
          margin:0 auto 13px;background:var(--ivory);border:1px solid var(--line)}
  .pc-mono{display:flex;align-items:center;justify-content:center;font-family:'Instrument Sans',Arial,sans-serif;
           font-weight:600;font-size:29px;color:var(--evergreen);background:rgba(210,255,81,.30)}
  .pc-n{font-family:'Dazzed',Arial,sans-serif;font-weight:500;font-size:16.5px;letter-spacing:-.01em;
        color:var(--espresso);line-height:1.25}
  .pc-r{font-size:13px;color:var(--espresso-soft);margin-top:3px}
  @media (max-width:900px){.pgrid{grid-template-columns:repeat(3,1fr);gap:26px 16px}}
  @media (max-width:560px){.pgrid{grid-template-columns:repeat(2,1fr)}
                           .pc-img{width:88px;height:88px}}

  .ab-adv{padding:82px 0;border-bottom:1px solid var(--line)}
  .agrid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:44px;
         list-style:none;padding:0;text-align:left}
  .acard{display:flex;gap:18px;align-items:flex-start;background:var(--surface);
         border:1px solid var(--line);border-radius:16px;padding:22px;
         box-shadow:0 18px 40px -34px rgba(20,20,8,.4)}
  .acard .pc-img{width:76px;height:76px;margin:0;flex:0 0 auto}
  .acard .pc-mono{font-size:22px}
  .acard p{font-size:14.5px;line-height:1.55;color:var(--espresso-soft);margin-top:9px}
  @media (max-width:820px){.agrid{grid-template-columns:1fr}}

  .ab-inv{padding:82px 0 92px}
  .ab-inv h2.head{max-width:760px;text-wrap:balance}
  .ang{margin-top:40px}
  .ang-h{font-family:'Instrument Sans',Arial,sans-serif;text-transform:uppercase;font-size:10.5px;
         letter-spacing:.18em;font-weight:700;color:var(--ochre-d);margin-bottom:14px}
  .ang-l{display:flex;flex-wrap:wrap;justify-content:center;gap:9px 22px}
  .ang-l span{font-size:15px;color:var(--espresso)}
  .ang-l i{font-style:normal;color:var(--espresso-soft);font-size:13.5px}
