/* ---------- Base / Reset ---------- */
    :root{
      --bg:#ffffff;
      --fg:#0b0b0f;
      --muted:#4b5563;
      --brand:#7b5cff;
      --brand-soft:#ede9ff;
      --card:#ffffff;
      --stroke:#e5e7eb;
      --shadow: 0 12px 30px rgba(17,24,39,.06);
      --radius:16px;
      --maxw:1100px;
      --header-h:64px;
    }
    *{box-sizing:border-box}
    html,body{height:100%}
    html{scroll-behavior:smooth}
    :target{scroll-margin-top: calc(var(--header-h) + 16px);}
    body{
      margin:0;
      padding-top: var(--header-h); /* keep content clear of fixed header */
      background: var(--bg);
      color:var(--fg);
      font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
      line-height:1.6;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    section{padding:72px 20px}
    .wrap{max-width:var(--maxw);margin:0 auto}

    /* ---------- Header / Nav (fixed) ---------- */
    header{
      position: fixed; top:0; left:0; right:0;
      z-index: 2000;
      height:var(--header-h);
      background:#ffffff;
      border-bottom:1px solid var(--stroke);
      box-shadow: 0 6px 20px rgba(17,24,39,.06);
    }
    .nav{display:flex;align-items:center;justify-content:space-between;padding:12px 20px}
    .brand{display:flex;gap:12px;align-items:center}
    .brand img{width:36px;height:36px;border-radius:8px}
    .brand strong{letter-spacing:.5px}
    .links{display:flex;gap:18px}
    .links a{padding:8px 10px;border-radius:10px}
    .links a:hover{background:#f3f4f6}
    .menu-btn{display:none}

    /* Drawer hidden by default in all sizes */
    .drawer{display:none;}

    /* Mobile nav */
    @media (max-width:720px){
      .links{display:none}
      .menu-btn{
        display:inline-flex;border:1px solid var(--stroke);
        padding:8px 10px;border-radius:10px;background:#fff
      }
      .drawer{
        position:fixed;
        top: var(--header-h);
        left:12px; right:12px;
        background:#ffffff;
        border:1px solid var(--stroke);
        border-radius:14px;
        padding:14px;
        box-shadow:var(--shadow);
        z-index: 2100;
        display:none; /* toggled via JS */
      }
      .drawer a{display:block;padding:12px;border-radius:10px}
      .drawer a:hover{background:#f3f4f6}
    }

    /* ---------- Hero: full-bleed cover with overlay ---------- */
    .hero{
      position: relative;
      min-height: 95.3vh;
      color: #fff;
      display: grid;
      align-items: end;
      padding: 0;
      background-image: url('cover.png');
      background-size: cover;
      background-position: 70% top;
    }
    .hero::before{
      content:"";
      position:absolute; inset:0;
      pointer-events:none;
    }
    .hero-inner{ position: relative; padding: 100px 20px 80px; width: 100%; }
    .hero-content{ max-width: 780px; }
    .hero .eyebrow{color: rgba(255,255,255,.8);}
    .hero h1{font-size:clamp(32px,6vw,60px);line-height:1.05;margin:0}

    /* ---------- Social strip (centered under hero) ---------- */
    .social-strip{ padding:28px 20px 0; }
    .socials-center{
      display:flex; align-items:center; justify-content:center; gap:14px; flex-wrap:wrap;
    }
    .icon-btn{
      display:inline-flex;align-items:center;justify-content:center;
      width:48px;height:48px;border-radius:14px;
      border:1px solid var(--stroke); background:#fff; box-shadow:var(--shadow);
      transition: transform .08s ease, border-color .2s ease, background .2s ease;
    }
    .icon-btn:hover{ transform:translateY(-1px); border-color:#d1d5db; background:#fafafa }
    .icon{width:24px;height:24px;display:block}

    /* ---------- Cards / Sections ---------- */
    .grid{display:grid;gap:22px}
    @media (min-width:900px){
      .grid--2{grid-template-columns:1fr 1fr;}
    }
    .card{
      background:var(--card);
      border:1px solid var(--stroke);
      border-radius:var(--radius);
      padding:20px;
      box-shadow:var(--shadow)
    }
    .section-title{font-size:clamp(22px,3vw,32px);margin:0 0 8px}
    .section-sub{color:var(--muted);margin:0 0 22px}

    /* ---------- Embeds ---------- */
    .embed{position:relative;width:100%;padding-top:56.25%;border-radius:14px;overflow:hidden;border:1px solid var(--stroke);background:#fff}
    .embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

    /* ---------- Press kit highlight ---------- */
    .presskit-section{
      padding-top:36px;
      padding-bottom:12px;
    }
    .presskit-banner{
      display:flex;
      flex-direction:column;
      gap:18px;
      padding:20px 22px;
      border-radius:20px;
      background: radial-gradient(circle at 0 0, var(--brand-soft), #ffffff);
      border:1px solid #ddd6fe;
      box-shadow: var(--shadow);
      align-items:flex-start;
    }
    .presskit-header{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      align-items:center;
      justify-content:space-between;
      width:100%;
    }
    .presskit-title{
      font-size:clamp(18px,2.6vw,24px);
      margin:0;
    }
    .presskit-pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:6px 10px;
      border-radius:999px;
      background:rgba(124,58,237,0.08);
      color:#4c1d95;
      font-size:12px;
      font-weight:500;
      text-transform:uppercase;
      letter-spacing:.06em;
    }
    .presskit-body{
      max-width:620px;
      font-size:14px;
      color:var(--muted);
    }
    .presskit-actions{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      align-items:center;
    }
    .btn-primary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      padding:10px 18px;
      border-radius:999px;
      border:none;
      background:var(--brand);
      color:#fff;
      font-weight:600;
      font-size:14px;
      cursor:pointer;
      box-shadow:0 10px 25px rgba(123,92,255,.35);
      transition:transform .08s ease, box-shadow .12s ease, background .2s ease;
    }
    .btn-primary:hover{
      transform:translateY(-1px);
      box-shadow:0 14px 30px rgba(123,92,255,.38);
      background:#6d50e6;
    }
    .btn-secondary-link{
      font-size:13px;
      color:var(--muted);
      text-decoration:underline;
      text-underline-offset:3px;
    }
    .btn-primary svg{
      width:16px;height:16px;
    }
    @media (max-width:640px){
      .presskit-banner{
        padding:18px 16px;
      }
      .presskit-header{
        align-items:flex-start;
      }
      .hero {
        aspect-ratio: 28 / 11;
        min-height: 100px;
        max-height: 259px;
      }
    }

    /* ---------- Footer ---------- */
    footer{padding:40px 20px;color:var(--muted);border-top:1px solid var(--stroke);text-align:center;background:#fff}

    /* ---------- Reveal ---------- */
    .reveal{opacity:0;transform:translateY(12px);transition:opacity .6s ease, transform .6s ease}
    .reveal.is-visible{opacity:1;transform:none}