
/* ==========================================================================
   Our Courts — ourcourts.nyc
   One stylesheet for every page. Edit here, not in the HTML.
   ========================================================================== */

  :root{
    --cream:#FBF4E4; --cream-2:#FFFBF1; --paper:#FFFDF8; --mint:#E4F1EC;
    --ink:#1C1813; --ink-soft:#5C5142;
    --orange:#F2521B; --orange-deep:#C73B0E; --gold:#F5A623;
    --teal:#11796B; --teal-deep:#0A3D37; --asphalt:#15120F;
    --phcf-blue:#2b6ff0;
    --display:'Anton',Impact,sans-serif; --body:'Public Sans',system-ui,sans-serif;
    --mono:'DM Mono',ui-monospace,monospace;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
  body{font-family:var(--body);background:var(--cream);color:var(--ink);line-height:1.55;overflow-x:hidden}
  body.sb-on{padding-bottom:74px}
  @media(min-width:721px){body.sb-on{padding-bottom:0}}
  img{max-width:100%;display:block}
  a{color:inherit}
  .wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 22px}

  .eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--orange-deep);margin-bottom:18px}
  .display{font-family:var(--display);text-transform:uppercase;line-height:.92;letter-spacing:.005em;font-weight:400}
  .kicker{font-family:var(--display);text-transform:uppercase;line-height:.95;font-size:clamp(2.2rem,7vw,3.7rem);max-width:16ch}

  .btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--body);font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:.95rem;text-decoration:none;padding:17px 30px;border:none;cursor:pointer;border-radius:999px;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}
  .btn-primary{background:var(--orange);color:#fff;box-shadow:0 10px 22px -10px rgba(242,82,27,.7)}
  .btn-primary:hover{background:var(--orange-deep);transform:translateY(-2px)}
  .btn-ghost{background:transparent;color:var(--ink);border:2px solid rgba(28,24,19,.22)}
  .btn-ghost:hover{border-color:var(--orange);color:var(--orange-deep);transform:translateY(-2px)}
  .btn .ball{font-size:1.05em;line-height:0}

  .promo{display:block;background:var(--asphalt);color:#ffd8c2;text-align:center;font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:9px 16px;text-decoration:none;transition:background .2s ease}
  .promo b{color:var(--gold)}
  .promo:hover{background:#221c14}

  header.nav{position:sticky;top:0;z-index:50;background:rgba(251,244,228,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(28,24,19,.08)}
  .nav-inner{display:flex;align-items:center;justify-content:space-between;height:62px}
  .brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--display);font-size:1.3rem;letter-spacing:.02em;text-transform:uppercase;color:var(--ink)}
  .brand .dot{width:15px;height:15px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 2px var(--cream),0 0 0 3.5px var(--orange)}
  .nav-links{display:flex;align-items:center;gap:22px}
  .nav-links>a:not(.btn){display:none;font-weight:700;font-size:.88rem;text-decoration:none;color:var(--ink-soft)}
  .nav-links>a:not(.btn):hover{color:var(--orange-deep)}
  .nav-cta{display:none}
  @media(min-width:620px){.nav-cta{display:inline-flex;padding:11px 24px;font-size:.82rem}}
  @media(min-width:760px){.nav-links>a:not(.btn){display:inline-block}}

  .hero{position:relative;padding:54px 0 64px;overflow:hidden;background:radial-gradient(120% 90% at 80% 0%,#FFF7E4 0%,var(--cream) 55%)}
  .hero-court{position:absolute;inset:0;z-index:0;opacity:.9;-webkit-mask-image:linear-gradient(180deg,#000 35%,transparent 92%);mask-image:linear-gradient(180deg,#000 35%,transparent 92%)}
  .hero-inner{position:relative;z-index:1}
  .hero h1{font-size:clamp(3.4rem,15vw,12rem);margin:8px 0 0;color:var(--ink);line-height:.88}
  .hero h1 .hl{display:block;white-space:nowrap}
  .hero h1 .cnt{color:var(--orange)}

  .hero-top{display:grid;grid-template-columns:1fr;gap:30px;align-items:start}
  @media(min-width:1000px){.hero-top{grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:48px}}
  .hero-vid{margin-top:0;max-width:620px}
  @media(min-width:1000px){.hero-vid{max-width:none;margin-top:38px}}

  .hero-case{display:grid;grid-template-columns:1fr;gap:20px;margin-top:40px;max-width:68ch}
  @media(min-width:900px){.hero-case{grid-template-columns:1fr 1fr;gap:44px;max-width:none}}
  .hero-case .lede,.hero-case .standfirst{margin:0;max-width:none;text-align:left}
  .hero p.lede{font-size:clamp(1.12rem,2.5vw,1.4rem);color:var(--ink-soft);font-weight:600;line-height:1.5}
  .hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:34px}

  .section{padding:78px 0}
  .section-paper{background:var(--paper)} .section-cream{background:var(--cream-2)} .section-mint{background:var(--mint)}
  .courtline{height:4px;background:var(--orange);opacity:.9;border:none;margin:0}
  .courtline.teal{background:var(--teal)}

  .manifesto p{font-size:clamp(1.08rem,2.5vw,1.35rem);max-width:54ch;margin-top:22px;font-weight:600;color:var(--ink)}
  .manifesto p + p{margin-top:18px}
  .manifesto strong{color:var(--orange-deep)}

  .stats{display:grid;grid-template-columns:1fr;gap:14px;margin-top:40px}
  @media(min-width:640px){.stats{grid-template-columns:1fr 1fr}}
  @media(min-width:900px){.stats{grid-template-columns:repeat(4,1fr)}}
  .stat{background:var(--cream);border:2px solid rgba(242,82,27,.16);border-radius:14px;padding:24px 22px}
  .stat b{font-family:var(--display);font-size:clamp(2.1rem,6vw,2.9rem);color:var(--orange-deep);display:block;line-height:1}
  .stat span{font-size:.84rem;color:var(--ink-soft);display:block;margin-top:9px;font-weight:600;line-height:1.4}
  .stat em{font-style:normal;color:var(--orange)}

  /* ===== BEFORE / AFTER SLIDER ===== */
  .proof-head p.sub{max-width:56ch;color:var(--ink-soft);font-weight:600;margin-top:16px;font-size:1.05rem}
  .ba-tall{aspect-ratio:900/1200!important;margin-top:0!important}
  .court-img .ba-credit{margin-top:12px}
  .ba{position:relative;margin-top:34px;border-radius:16px;overflow:hidden;aspect-ratio:1764/1323;user-select:none;box-shadow:0 26px 54px -30px rgba(0,0,0,.5);background:#111;touch-action:none}
  .ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
  .ba-before{clip-path:inset(0 50% 0 0)}
  .ba-divider{position:absolute;top:0;bottom:0;left:50%;width:3px;background:#fff;transform:translateX(-50%);box-shadow:0 0 10px rgba(0,0,0,.4);pointer-events:none;z-index:3}
  .ba-handle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:800;box-shadow:0 4px 14px rgba(0,0,0,.35);border:3px solid #fff}
  .ba-tag{position:absolute;top:14px;font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.55);padding:6px 12px;border-radius:999px;z-index:2}
  .ba-tag-before{left:14px}.ba-tag-after{right:14px;background:rgba(242,82,27,.85)}
  .ba-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;z-index:4}
  .proof-sofar{margin-top:18px;font-weight:600;color:var(--ink-soft);max-width:68ch;font-size:.98rem}
  .proof-sofar a{color:var(--orange-deep);font-weight:700;text-decoration:underline;text-underline-offset:3px}

  .ba-credit{margin-top:16px;font-family:var(--mono);font-size:.74rem;letter-spacing:.06em;color:var(--ink-soft);text-transform:uppercase}
  .ba-credit a{color:var(--orange-deep);text-decoration:none;font-weight:600}
  .ba-credit a:hover{color:var(--orange)}

  .lineup-head{display:flex;flex-direction:column;gap:14px;margin-bottom:8px}
  .lineup-head p.sub{max-width:54ch;color:var(--ink-soft);font-weight:600;margin-top:4px}

  /* ===== COURT BY COURT ===== */
  .courts{list-style:none;margin-top:42px;display:flex;flex-direction:column;gap:46px}
  .court{display:grid;grid-template-columns:1fr;gap:22px;align-items:start}
  @media(min-width:820px){
    .court{grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}
    .court:nth-child(even) .court-img{order:2}
  }
  .court-img img{width:100%;height:auto;border-radius:14px;box-shadow:0 22px 44px -28px rgba(0,0,0,.55)}
  .court-img-pair{display:grid;grid-template-columns:1fr;gap:12px}
  @media(min-width:520px){.court-img-pair{grid-template-columns:1fr 1fr;align-items:stretch}
    .court-img-pair img{height:100%;object-fit:cover}}
  .court-body h3{font-family:var(--display);text-transform:uppercase;font-size:clamp(1.8rem,5vw,2.5rem);line-height:1;color:var(--ink);margin:6px 0 14px}
  .court-year{font-family:var(--mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--orange-deep)}
  .court-body p{font-weight:600;color:var(--ink-soft);max-width:52ch}
  .court-body em{color:var(--ink);font-style:italic}
  .court-meta{margin-top:16px;font-family:var(--mono);font-size:.74rem;line-height:1.7;letter-spacing:.02em;color:var(--ink-soft);text-transform:none}
  .court-body a{color:var(--orange-deep);font-weight:700;text-decoration:underline;text-underline-offset:3px}
  .court-body a:hover{color:var(--orange)}
  @media(min-width:820px){.court-wide{grid-template-columns:1fr;gap:26px}
    .court-wide .court-body{max-width:none}
    .court-wide .court-body p{max-width:68ch}}

  /* ===== MURAL / PULL QUOTE ===== */
  .mural{margin-top:60px;padding-top:44px;border-top:3px solid var(--gold)}
  .mural h3{color:var(--ink)}
  .mural>p{max-width:62ch;margin-top:18px;font-weight:600;color:var(--ink-soft);font-size:1.02rem}
  .mural .shot-pair{margin-top:30px}
  .mural .shot{margin-top:0}
  .pull{margin:30px 0 4px;padding:4px 0 4px 24px;border-left:4px solid var(--orange);max-width:56ch}
  .pull p{font-size:clamp(1.1rem,2.8vw,1.35rem);line-height:1.45;font-style:italic;color:var(--ink);font-weight:600}
  .pull cite{display:block;margin-top:14px;font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;
    text-transform:uppercase;font-style:normal;color:var(--ink-soft)}

  /* ===== COMING SOON ===== */
  .soon{margin-top:60px;padding:36px 30px 34px;border-radius:18px;background:var(--mint);
    border:2px solid rgba(17,121,107,.28)}
  .soon-grid{display:grid;grid-template-columns:1fr;gap:26px;align-items:center;margin-top:26px}
  @media(min-width:820px){.soon-grid{grid-template-columns:1fr 1fr;gap:34px}}
  .soon h3{color:var(--ink);margin-top:8px}
  .soon>p{max-width:60ch;margin-top:16px;font-weight:600;color:var(--ink-soft);font-size:1.02rem}
  .soon .shot{margin-top:0}
  .soon-flag{display:inline-block;font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;
    text-transform:uppercase;background:var(--teal);color:#fff;padding:7px 13px;border-radius:999px}

  /* ===== WHAT WAITING LOOKS LIKE ===== */
  .waiting{margin-top:62px;padding-top:44px;border-top:3px solid var(--teal)}
  .waiting h3{margin-top:6px;color:var(--ink)}
  .waiting-lede{max-width:62ch;margin-top:20px;font-weight:600;color:var(--ink-soft);font-size:1.05rem}
  .waiting .shot-pair{margin-top:30px}
  .waiting .shot{margin-top:0}
  .waiting .shot img{filter:saturate(.92)}
  .waiting-turn{margin:34px 0 4px;font-family:var(--display);text-transform:uppercase;font-size:clamp(1.3rem,3.4vw,1.9rem);line-height:1.1;color:var(--teal);max-width:24ch}
  .waiting .shot-wide{margin-top:30px}
  .waiting-then{display:grid;grid-template-columns:1fr;gap:26px;margin-top:30px;align-items:center}
  @media(min-width:820px){.waiting-then{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:38px}}
  .waiting-note{max-width:52ch;font-weight:600;color:var(--ink-soft);font-size:1rem}
  .waiting-note::before{content:"";display:block;width:52px;height:3px;background:var(--teal);margin-bottom:18px}

  /* ===== A TEAM SPORT ===== */
  .team{margin-top:64px;padding-top:44px;border-top:3px solid var(--orange)}
  .team h3{margin-top:6px;color:var(--ink)}
  .team-lede{max-width:62ch;margin-top:20px;font-weight:600;color:var(--ink-soft);font-size:1.05rem}
  .team-grid{display:grid;grid-template-columns:1fr;gap:26px;margin-top:38px}
  @media(min-width:640px){.team-grid{grid-template-columns:1fr 1fr;gap:28px 34px}}
  @media(min-width:1000px){.team-grid{grid-template-columns:repeat(3,1fr)}}
  .team-col h4{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--orange-deep);padding-bottom:10px;border-bottom:1px solid rgba(28,24,19,.14);margin-bottom:14px}
  .team-col ul{list-style:none;display:flex;flex-direction:column;gap:11px}
  .team-col li{font-size:.92rem;font-weight:600;color:var(--ink-soft);line-height:1.45;padding-left:15px;position:relative}
  .team-col li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--teal);opacity:.55}
  .team-col a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(242,82,27,.5)}
  .team-col a:hover{color:var(--orange-deep)}
  .team-note{margin-top:34px;padding-top:20px;border-top:1px solid rgba(28,24,19,.12);font-size:.92rem;font-weight:600;color:var(--ink-soft);max-width:62ch}
  .team-note a{color:var(--orange-deep);font-weight:700}

  /* ===== PHOTO FIGURES ===== */
  .shot{margin-top:30px}
  .shot img{width:100%;height:auto;border-radius:14px;box-shadow:0 22px 44px -28px rgba(0,0,0,.5)}
  .shot figcaption{margin-top:12px;font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;color:var(--ink-soft);line-height:1.6}
  .shot figcaption a{color:var(--orange-deep);font-weight:600;text-decoration:none}
  .shot figcaption a:hover{color:var(--orange)}
  .shot-pair{display:grid;grid-template-columns:1fr;gap:20px}
  @media(min-width:700px){.shot-pair{grid-template-columns:1fr 1fr;gap:24px}}
  .shot video{width:100%;height:auto;border-radius:14px;display:block;box-shadow:0 22px 44px -28px rgba(0,0,0,.5)}
  .shot-video{max-width:440px}
  .clip-pair{display:grid;grid-template-columns:1fr;gap:24px;margin-top:34px;justify-items:start}
  @media(min-width:760px){.clip-pair{grid-template-columns:1fr 1fr;gap:30px}}
  .clip-pair .shot{margin-top:0;max-width:none;width:100%}
  @media(min-width:820px){.shot-video{margin-top:42px}}

  /* ===== EMBEDDED VIDEO (loads only on click) ===== */

  .vid{margin-top:34px;max-width:760px}
  .vid-facade{position:relative;display:block;width:100%;padding:0;border:none;cursor:pointer;background:#000;border-radius:14px;overflow:hidden;aspect-ratio:16/9;box-shadow:0 22px 44px -28px rgba(0,0,0,.5)}
  .vid-facade img{width:100%;height:100%;object-fit:cover;opacity:.62;transition:opacity .2s ease}
  .vid-facade:hover img{opacity:.78}
  .vid-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:74px;height:74px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;padding-left:5px;box-shadow:0 10px 26px -8px rgba(0,0,0,.6)}
  .vid-facade:hover .vid-play{background:var(--orange-deep)}
  .vid-meta{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;text-align:left;font-family:var(--body);font-weight:700;font-size:.9rem;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.78))}
  .vid iframe{width:100%;aspect-ratio:16/9;border:none;border-radius:14px;display:block}
  .vid-note{margin-top:12px;font-family:var(--mono);font-size:.72rem;line-height:1.7;color:var(--ink-soft)}
  .vid-note a{color:var(--orange-deep);font-weight:600;text-decoration:none}
  .vid-note a:hover{color:var(--orange)}

  /* ===== ART ===== */
  .art-grid{display:grid;grid-template-columns:1fr;gap:30px;align-items:center}
  @media(min-width:860px){.art-grid{grid-template-columns:1.1fr .9fr;gap:48px}
    .art-grid .shot{margin-top:0}}
  .art-body p{font-weight:600;color:var(--ink-soft);max-width:52ch;margin-top:18px;font-size:1.05rem}
  .art-body em{color:var(--ink)}
  .art-links{display:flex;flex-wrap:wrap;gap:11px;margin-top:26px}

  .assists{display:grid;grid-template-columns:1fr;gap:16px;margin-top:38px}
  @media(min-width:760px){.assists{grid-template-columns:repeat(3,1fr)}}
  .assist{background:var(--paper);border:2px solid rgba(17,121,107,.22);border-radius:16px;padding:30px 26px;transition:transform .18s ease,border-color .18s ease}
  .assist:hover{transform:translateY(-4px);border-color:var(--teal)}
  .assist .amt{font-family:var(--display);font-size:2.6rem;color:var(--ink);line-height:1}
  .assist .amt .d{color:var(--orange-deep)}
  .assist p{margin-top:12px;font-weight:600;color:var(--ink-soft);font-size:.98rem}
  .assist .give{display:inline-block;margin-top:16px;font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--orange-deep);text-decoration:none;font-weight:600}
  .assist .give:hover{color:var(--orange)}

  .ways{display:grid;grid-template-columns:1fr;gap:16px;margin-top:38px}
  @media(min-width:760px){.ways{grid-template-columns:repeat(3,1fr)}}
  .way{background:var(--cream);border:2px solid rgba(28,24,19,.10);border-radius:16px;padding:28px 24px;display:flex;flex-direction:column;gap:10px}
  .way .ic{font-size:1.6rem;line-height:1}
  .way h3{font-family:var(--display);text-transform:uppercase;font-size:1.5rem;color:var(--ink);line-height:1}
  .way p{color:var(--ink-soft);font-weight:600;font-size:.96rem;flex:1}
  .way .act{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
  .chip-btn{font-family:var(--body);font-weight:800;font-size:.78rem;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;padding:10px 16px;border-radius:999px;background:var(--ink);color:#fff;border:none;cursor:pointer;transition:background .15s ease,transform .15s ease}
  .chip-btn:hover{background:var(--orange-deep);transform:translateY(-2px)}
  .chip-btn.alt{background:transparent;color:var(--ink);border:2px solid rgba(28,24,19,.2)}
  .chip-btn.alt:hover{border-color:var(--orange);color:var(--orange-deep)}

  .closer{background:linear-gradient(160deg,var(--orange) 0%,var(--orange-deep) 100%);color:#fff;text-align:center;padding:84px 0}
  .closer h2{font-family:var(--display);text-transform:uppercase;font-size:clamp(2.6rem,9vw,5rem);line-height:.94}
  .closer p{max-width:40ch;margin:20px auto 30px;font-weight:600;font-size:1.1rem;color:#fff}
  .closer .btn{background:#fff;color:var(--orange-deep)}
  .closer .btn:hover{background:var(--asphalt);color:#fff;transform:translateY(-2px)}
  .closer .tag{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;margin-top:34px;font-size:1.15rem;opacity:.95}

  footer{background:var(--teal-deep);padding:52px 0 40px;color:#bcd6cf;font-size:.86rem}
  .foot-top{display:flex;flex-direction:column;gap:26px}
  @media(min-width:720px){.foot-top{flex-direction:row;justify-content:space-between;align-items:flex-start}}
  .foot-org{display:flex;flex-direction:column;gap:14px;max-width:340px}
  .logo-chip{display:inline-block;width:fit-content}
  .logo-chip img{width:130px;height:auto}
  .foot-org p{color:#a7c6bd}
  .foot-links{display:flex;flex-wrap:wrap;gap:18px}
  .foot-links a{text-decoration:none;font-weight:600}
  .foot-links a:hover{color:var(--gold)}
  .foot-partners{margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-family:var(--mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#8fb3a9}
  .foot-partners a{color:#d8e7e2;text-decoration:none;font-weight:600}
  .foot-partners a:hover{color:var(--gold)}
  .foot-credits{margin-top:16px;font-size:.72rem;line-height:1.7;max-width:74ch;color:#7ba398}
  .foot-legal{margin-top:22px;font-size:.72rem;line-height:1.7;max-width:74ch;color:#7ba398}
  .foot-copy{margin-top:20px;font-size:.72rem;color:#6f9389}

  .stickybar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(21,18,15,.97);backdrop-filter:blur(8px);border-top:2px solid var(--orange);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;transform:translateY(120%);transition:transform .3s ease}
  .stickybar.show{transform:none}
  .stickybar .amt{font-family:var(--mono);color:#fff;font-size:.82rem;line-height:1.25}
  .stickybar .amt b{font-family:var(--display);text-transform:uppercase;color:var(--gold);font-size:1.02rem;letter-spacing:.03em}
  .stickybar .amt span{color:#a89c8c;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;display:block}
  .stickybar .btn{padding:13px 22px;font-size:.82rem;white-space:nowrap}
  @media(min-width:721px){.stickybar{display:none}}

  .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
  .reveal.in{opacity:1;transform:none}
  @media(prefers-reduced-motion:reduce){
    *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
    .reveal{opacity:1;transform:none}
    .stickybar{transition:none}
  }

/* ==========================================================================
   PARTNER BLOCK (Hoopbus)
   ========================================================================== */
  .partner{display:grid;grid-template-columns:1fr;gap:30px;align-items:start}
  @media(min-width:900px){.partner{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px}
    .partner .shot{margin-top:52px}}
  .partner-mark{width:62px;height:auto;margin-bottom:18px}
  .partner-body h2{margin-top:6px}
  .partner-body p{max-width:58ch;margin-top:18px;font-weight:600;color:var(--ink-soft);font-size:1.02rem}
  .partner-stats{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;
    margin:30px 0 26px;padding-top:24px;border-top:1px solid rgba(28,24,19,.14)}
  .partner-stats b{display:block;font-family:var(--display);font-size:clamp(1.6rem,4.5vw,2.3rem);
    line-height:1;color:var(--orange-deep)}
  .partner-stats span{display:block;margin-top:8px;font-family:var(--mono);font-size:.64rem;
    letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);line-height:1.4}

/* ==========================================================================
   PAGE HEADERS (courts, activation)
   ========================================================================== */
  .pagehead{padding:52px 0 8px;background:var(--cream)}
  .pagehead h1{font-family:var(--display);text-transform:uppercase;line-height:.95;
    font-size:clamp(2.6rem,8vw,4.6rem);margin-top:10px;color:var(--ink)}
  .pagehead p{max-width:56ch;margin-top:18px;font-weight:600;color:var(--ink-soft);font-size:1.08rem}

  .pagenav{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
  .pagenav a{font-family:var(--body);font-weight:800;font-size:.76rem;letter-spacing:.04em;
    text-transform:uppercase;text-decoration:none;padding:10px 17px;border-radius:999px;
    border:2px solid rgba(28,24,19,.16);color:var(--ink-soft)}
  .pagenav a:hover{border-color:var(--orange);color:var(--orange-deep)}
  .pagenav a[aria-current="page"]{background:var(--ink);border-color:var(--ink);color:#fff}

/* ==========================================================================
   EXPLORE CARDS (home)
   ========================================================================== */
  .explore{display:grid;grid-template-columns:1fr;gap:18px;margin-top:38px}
  @media(min-width:760px){.explore{grid-template-columns:1fr 1fr;gap:24px}}
  .ex{display:flex;flex-direction:column;background:var(--cream);border:2px solid rgba(28,24,19,.10);
    border-radius:16px;overflow:hidden;text-decoration:none;transition:transform .18s ease,border-color .18s ease}
  .ex:hover{transform:translateY(-4px);border-color:var(--orange)}
  .ex img{width:100%;aspect-ratio:16/10;object-fit:cover}
  .ex-body{padding:20px 20px 24px;display:flex;flex-direction:column;gap:9px;flex:1}
  .ex h3{font-family:var(--display);text-transform:uppercase;font-size:1.45rem;line-height:1;color:var(--ink)}
  .ex p{font-size:.94rem;font-weight:600;color:var(--ink-soft);flex:1}
  .ex .go{font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;
    color:var(--orange-deep);font-weight:600}
