/*
Theme Name:  Game On Gear
Theme URI:   https://gameon-gear.co.nz
Author:      Game On Gear
Description: Aotearoa's Premium Sports Archive — Versant Collection lookbook theme featuring Shubman Gill. Dark charcoal/gold editorial design with NZ Māori design elements.
Version:     1.0.0
Requires at least: 6.0
Tested up to:      6.7
Requires PHP:      8.0
License:     Private
Text Domain: gameon-gear
*/

/* ─── CSS Custom Properties ──────────────────────────────── */
:root {
  /* Ground */
  --ink:            #050505;   /* pure matte black */
  --ink-pure:       #000000;
  --ink-raised:     #0c0c0c;
  /* Accent */
  --gold:           #D4AF37;   /* razor-sharp gold */
  --gold-light:     #E8C86A;
  --gold-dim:       rgba(212,175,55,.35);
  /* Surfaces */
  --studio:         #F6F6F6;   /* product card backdrop */
  --paper:          #FFFFFF;
  --brand-bg:       #FAFAFA;
  /* Legacy aliases */
  --brand-charcoal: #050505;
  --brand-gold:     #D4AF37;
  --brand-gold-light:#E8C86A;
}

/* ─── Base ───────────────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; font-family: 'Inter', sans-serif; }
html  { scroll-behavior: smooth; }
body  { background: var(--brand-bg); color: var(--brand-charcoal); -webkit-font-smoothing: antialiased; }

/* ─── Typography ─────────────────────────────────────────── */
.brand-name {
  font-family: 'Bebas Neue', 'Inter', sans-serif;
  letter-spacing: 0.06em;
}
/* Logo — transparent PNG, sits directly on the dark ground */
.logo-blend { filter: drop-shadow(0 2px 10px rgba(0,0,0,.55)); }

/* Tagline — metallic gold, matches brand lockup */
.tagline-gold {
  font-family: 'Bebas Neue', 'Inter', sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.34em;
  background: linear-gradient(180deg, #F6E8B4 0%, #E8C86A 42%, #D4AF37 68%, #A8842A 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.gold-gradient-text {
  background: linear-gradient(135deg, #fff 30%, var(--brand-gold-light) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ─── Mega Menu ──────────────────────────────────────────── */
#mega-panel {
  position: fixed !important;
  top: 176px; left: 0; right: 0; width: 100%;
  display: none; opacity: 0;
  transform: translateY(-6px);
  transition: opacity .22s cubic-bezier(.16,1,.3,1), transform .22s cubic-bezier(.16,1,.3,1);
}
#mega-panel.is-open { display: grid; opacity: 1; transform: translateY(0); }
body.gog-night-theme #mega-panel {
  display: none !important;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s;
}
body.gog-night-theme #mega-panel.is-open {
  display: block !important;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
body.gog-night-theme #mega-panel > div {
  display: grid !important;
  grid-template-columns: minmax(220px,1fr) minmax(220px,1fr) minmax(340px,1.25fr) !important;
  align-items: stretch;
  width: 100%;
}
body.gog-night-theme .mega-feature__photo {
  position: absolute; z-index: -2; inset: 0 0 0 auto; width: 70%; height: 100%;
  max-width: none; object-fit: cover; object-position: 42% 25%; opacity: .72;
}
body.gog-night-theme .mega-feature__shade {
  position: absolute; z-index: -1; inset: 0;
  background: linear-gradient(90deg,#111315 0%,rgba(17,19,21,.95) 25%,rgba(17,19,21,.45) 100%);
}

/* ─── Hero ───────────────────────────────────────────────── */
#hero-pane-a, #hero-pane-b { transition: opacity .85s cubic-bezier(.4,0,.2,1); }

/* ─── Product Cards (base) ───────────────────────────────── */
.card-overlay                 { transition: opacity .3s ease; }
.product-card:hover .card-overlay { opacity: 1 !important; }
.card-availability { position:absolute; left:12px; bottom:12px; z-index:21; }
.card-overlay { padding-bottom:3.5rem !important; }

/* ─── Swatches ───────────────────────────────────────────── */
.swatch.active { outline: 2px solid var(--brand-gold); outline-offset: 2px; }

/* ─── Sidebar Filter ─────────────────────────────────────── */
.filter-btn.active {
  background: var(--brand-charcoal);
  color: #fff;
  border-left: 4px solid var(--brand-gold);
  padding-left: 12px;
}
.filter-btn:not(.active)       { padding-left: 16px; }
.filter-btn:not(.active):hover { background: #f9f9f7; color: var(--brand-charcoal); }

/* ─── Hero Dots ──────────────────────────────────────────── */
.hero-dot {
  height: 4px; border-radius: 2px;
  background: rgba(212,175,55,.35);
  transition: width .35s ease, background .35s ease;
}
.hero-dot.active      { width: 28px; background: var(--brand-gold); }
.hero-dot:not(.active){ width: 6px; }

/* ─── Placeholder ────────────────────────────────────────── */
.ph {
  background: linear-gradient(135deg, #050505 0%, #1f1f1e 50%, #0a0a0a 100%);
  display: flex; align-items: center; justify-content: center;
}

/* ─── Nav Soon ───────────────────────────────────────────── */
.nav-soon { cursor: default; user-select: none; }

/* ─── Modal ──────────────────────────────────────────────── */

/* ─── Scrollbar ──────────────────────────────────────────── */
::-webkit-scrollbar       { width: 4px; }
::-webkit-scrollbar-track { background: #f1f1ee; }
::-webkit-scrollbar-thumb { background: var(--brand-gold); border-radius: 4px; }

/* ─── Generic page prose ─────────────────────────────────── */
.gog-prose { color:#52525b; font-size:15px; font-weight:300; line-height:1.85; }
.gog-prose h2 { color:#050505; font-size:1.5rem; font-weight:900; text-transform:uppercase; letter-spacing:-.02em; margin:2.5rem 0 1rem; }
.gog-prose h3 { color:#050505; font-size:1.1rem; font-weight:800; text-transform:uppercase; margin:2rem 0 .75rem; }
.gog-prose p  { margin-bottom:1.25rem; }
.gog-prose ul, .gog-prose ol { margin:0 0 1.25rem 1.25rem; }
.gog-prose ul { list-style:disc; }
.gog-prose ol { list-style:decimal; }
.gog-prose li { margin-bottom:.5rem; }
.gog-prose a  { color:#050505; text-decoration:underline; text-underline-offset:3px; }
.gog-prose a:hover { color:#050505; }
.gog-prose strong { color:#050505; font-weight:700; }

/* ─── Screen-reader only ─────────────────────────────────── */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ─── Hero — responsive grid ─────────────────────────────── */
.hero-grid{
  display:grid;
  grid-template-columns:1fr;
  min-height:auto;
}
@media (min-width:1024px){
  .hero-grid{ grid-template-columns:40% 60%; min-height:88vh; }
}

/* ─── Filter list — chips on mobile, stacked list on desktop ─ */
.filter-list{ scrollbar-width:none; -ms-overflow-style:none; }
.filter-list::-webkit-scrollbar{ display:none }

@media (max-width:1023px){
  .filter-list > li{ flex:0 0 auto; }
  .filter-list .filter-btn{
    width:auto; white-space:nowrap;
    border:1px solid #e4e4e7; border-radius:999px;
    padding:9px 16px !important; gap:8px;
  }
  .filter-list .filter-btn.active{
    background:var(--brand-charcoal); color:#fff;
    border-color:var(--brand-charcoal); border-left-width:1px;
  }
}

/* ─── Touch targets ──────────────────────────────────────── */
@media (max-width:1023px){
  .filter-btn, .slider-tab, .sl-dot{ min-height:38px; }
  .sl-dot{ min-height:auto; padding:8px 0; background-clip:content-box !important; }
}

/* ─── Mobile overflow guard ──────────────────────────────── */
html, body { overflow-x: hidden; max-width: 100%; }
img, svg, video { max-width: 100%; }

/* Mega panel offset tracks the responsive header height */
@media (max-width:1023px){ #mega-panel{ display:none !important } }

/* ══════════════════════════════════════════════════════════════
   TIER-1 ATHLETIC DESIGN SYSTEM
   ══════════════════════════════════════════════════════════════ */

/* ─── 1 · Dynamic athletic typography ─────────────────────── */
.display-athletic,
.display-athletic--sm,
.display-athletic--xl{
  font-family:'Anton','Oswald','Inter',sans-serif !important;
  font-weight:400;                 /* Anton ships a single ultra-bold weight */
  text-transform:uppercase;
  letter-spacing:-0.035em;
  line-height:0.9;
}
.display-athletic    { font-size:clamp(2.4rem,6.2vw,5.4rem) }
.display-athletic--sm{ font-size:clamp(1.9rem,4.2vw,3.4rem) }
.display-athletic--xl{ font-size:clamp(2.8rem,7.4vw,6.4rem); letter-spacing:-0.045em }

/* Oswald for sub-heads and structural labels */
.head-athletic{
  font-family:'Oswald','Inter',sans-serif !important;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:-0.01em;
  line-height:0.95;
}
.eyebrow-athletic{
  font-family:'Oswald','Inter',sans-serif !important;
  font-weight:600;
  text-transform:uppercase;
  /* Was 10px/.42em — legible up close, but too faint at desktop viewing
     distance for text that carries the page's structure. */
  letter-spacing:.26em;
  font-size:14px;
  line-height:1;
  color:var(--gold);
}

/* Enquiry CTAs — black by default, WhatsApp green on hover. One rule for the
   slider pill and the product-page button so the action looks identical
   wherever it appears. */
.slide-enquire,
.btn-enquire{
  background:var(--ink,#050505) !important;
  color:#fff !important;
  border:1px solid var(--ink,#050505) !important;
  border-radius:999px;
  transition:background .22s ease, border-color .22s ease, color .22s ease;
}
.slide-enquire:hover,
.btn-enquire:hover{
  background:#25D366 !important;
  border-color:#25D366 !important;
  color:#052e16 !important;
}
.slide-enquire{ padding:9px 16px; line-height:1; margin-top:10px }
.slide-enquire svg,
.btn-enquire svg{ flex-shrink:0 }

/* Navigation + filter menus — Barlow Condensed.
   Deliberately NOT Oswald: the product card labels are already Oswald 700, so
   using it here too made navigation and product names compete at similar size
   and weight. Barlow keeps the condensed feel but sits softer and more open at
   small sizes, which is what a scanned list wants. Runs slightly larger than
   Oswald did because its lowercase-height is smaller at the same px. */
.nav-athletic{
  font-family:'Barlow Condensed','Oswald','Inter',sans-serif !important;
  font-weight:600 !important;
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:13.5px;
}
.nav-athletic--sm{ font-size:12.5px; letter-spacing:.17em }

/* Sidebar filter list owns its own typography so Tailwind utilities in the
   markup can't quietly override the family or weight. */
.filter-btn{
  font-family:'Barlow Condensed','Oswald','Inter',sans-serif !important;
  font-weight:600 !important;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:13.5px;
  color:#57544c;
}
.filter-btn.active{ font-weight:700 !important; color:#fff }
.filter-btn:not(.active):hover{ color:var(--brand-charcoal) }
.filter-btn .filter-count{
  font-family:'Barlow Condensed','Oswald','Inter',sans-serif;
  font-weight:500; font-size:11.5px; letter-spacing:.06em;
}

/* ─── 2 · High-contrast action styles ─────────────────────── */
/* Solid white capsule — for dark grounds */
.btn-capsule{
  display:inline-flex; align-items:center; justify-content:center; gap:12px;
  background:#fff; color:#050505;
  font-family:'Oswald','Inter',sans-serif !important; font-weight:700;
  text-transform:uppercase; letter-spacing:.2em; font-size:11px;
  padding:16px 34px; border-radius:999px;
  border:1px solid #fff;
  transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease;
}
.btn-capsule:hover{ background:transparent; color:#fff; border-color:#fff; }
.btn-capsule svg{ transition:transform .22s ease }
.btn-capsule:hover svg{ transform:translateX(4px) }

/* Inverse capsule — for light grounds */
.btn-capsule--ink{ background:#050505; color:#fff; border-color:#050505 }
.btn-capsule--ink:hover{ background:transparent; color:#050505; border-color:#050505 }

/* Gold outline capsule — secondary */
.btn-capsule--gold{ background:transparent; color:var(--gold); border-color:var(--gold) }
.btn-capsule--gold:hover{ background:var(--gold); color:#050505; border-color:var(--gold) }

/* Razor-sharp gold micro-border */
.micro-border{ border:1px solid var(--gold) }
.micro-border-t{ border-top:1px solid var(--gold) }
.micro-rule{ height:1px; background:var(--gold); border:0 }

/* High-contrast tag — square, no rounding */
.tag-hc{
  display:inline-block;
  background:#fff; color:#050505;
  font-family:'Oswald','Inter',sans-serif !important; font-weight:700;
  text-transform:uppercase; letter-spacing:.24em; font-size:8px; line-height:1;
  padding:6px 10px;
}
.tag-hc--gold{ background:var(--gold); color:#050505 }
.tag-hc--ink { background:#050505; color:#fff; border:1px solid var(--gold) }

/* ─── 3 · Adidas-style product cards ──────────────────────── */
.product-card .card-media,
.slide .card-media{
  position:relative; overflow:hidden;
  background:var(--studio);
  aspect-ratio:3/4;
}
.product-card .card-img,
.slide .card-img{
  transition:transform .65s cubic-bezier(.16,1,.3,1);
  will-change:transform;
}
.product-card:hover .card-img,
.slide:hover .card-img{ transform:scale(1.05) }

/* Clean bold labels beneath */
.card-label{
  font-family:'Oswald','Inter',sans-serif !important;
  font-weight:700; text-transform:uppercase;
  letter-spacing:-0.005em; font-size:14px; line-height:1.15;
}
.card-meta{
  font-family:'Oswald','Inter',sans-serif !important;
  font-weight:500; text-transform:uppercase;
  letter-spacing:.26em; font-size:9px;
}

/* ─── 4 · Asymmetric editorial tiles ──────────────────────── */
.feature-split{ display:grid; grid-template-columns:1fr; gap:12px; align-items:stretch }
.feature-split .ft-stack{ display:grid; grid-template-rows:1fr 1fr; gap:12px }

@media (min-width:1024px){
  .feature-split{ grid-template-columns:60% 1fr; gap:14px }
  .feature-split .ft-stack{ gap:14px; height:100% }
  /* The anchor sets the row height; the stack simply fills it. */
  .feature-split .ft-anchor{ min-height:640px }
  .feature-split .ft-stack > .ft-tile{ min-height:0 }
}

/* ─── 5 · Full-bleed callout ──────────────────────────────── */
.callout-bleed{
  position:relative;
  background:var(--ink-pure);
  overflow:hidden;
}
.callout-bleed::before{
  content:''; position:absolute; inset:0;
  background:
    repeating-linear-gradient(115deg,rgba(212,175,55,.05) 0 1px,transparent 1px 84px);
  pointer-events:none;
}
.callout-kicker{
  font-family:'Anton','Inter',sans-serif !important;
  text-transform:uppercase; letter-spacing:-0.02em; line-height:.8;
  font-size:clamp(3.5rem,11vw,10rem);
  color:transparent;
  -webkit-text-stroke:1px rgba(255,255,255,.09);
}
.callout-kicker-wrap{
  position:absolute; left:0; right:0; bottom:-2.2vw;
  overflow:hidden; pointer-events:none; user-select:none;
}



/* Feature tiles — mobile intrinsic sizing (desktop is grid-driven) */
@media (max-width:1023px){
  .feature-split .ft-anchor{ aspect-ratio:4/5; min-height:380px }
  .feature-split .ft-sub   { aspect-ratio:16/10; min-height:240px }
}

/* ─── Styled product cards ───────────────────────────────── */
/* Cards are pre-composed: product trimmed and enlarged on a studio
   gradient. No baked-in text — the label lives in the markup below. */
.card-art{ transition:transform .65s cubic-bezier(.16,1,.3,1) }
.product-card:hover .card-art,
.slide:hover .card-art{ transform:scale(1.045) }
/* the raw studio shot is redundant once card art exists */
.card-art + .card-img{ display:none }

/* Cricket catalogue: make the filters and merchandise feel like one system. */
#catalog .catalog-filter-heading {
  margin: 0;
  color: #74716a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .16em;
  line-height: 1.2;
  text-transform: uppercase;
}

#catalog .filter-btn {
  min-height: 42px;
  font-size: 14px;
  letter-spacing: .11em;
}

#catalog .filter-btn .filter-count {
  color: #77736b;
  font-size: 12px;
}

#catalog .filter-btn.active .filter-count {
  color: #e7d08a;
}

#catalog-heading {
  font-size: clamp(1.55rem, 2vw, 1.9rem);
  letter-spacing: -.025em;
}

#catalog-count {
  padding: 6px 10px;
  border-radius: 999px;
  background: #f0eee8;
  color: #68655e;
  font-size: 12px;
  letter-spacing: .04em;
}

#catalog .product-card {
  padding: 10px;
  border: 1px solid #e8e5dd;
  background: #fff;
  text-decoration: none;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

#catalog .product-card:hover {
  transform: translateY(-2px);
  border-color: #d6c88f;
  box-shadow: 0 10px 24px rgba(5, 5, 5, .075);
}

#catalog .product-card:focus-visible {
  outline: 2px solid #9a7b21;
  outline-offset: 3px;
}

#catalog .product-card .card-media {
  border: 1px solid #eeece7;
  background: #f4f3f0;
}

#catalog .catalog-card-copy {
  padding: 13px 4px 5px;
}

#catalog .catalog-card-copy .card-meta {
  color: #8a6d1f !important;
  font-size: 10px;
  letter-spacing: .16em;
}

#catalog .catalog-card-copy .card-label {
  margin-bottom: 0;
  font-size: 16px;
  letter-spacing: .005em;
  line-height: 1.2;
}

.tag-hc--availability {
  padding: 7px 10px;
  font-size: 9px;
  letter-spacing: .12em;
}

.tag-order-category {
  padding: 7px 10px;
  font-size: 9px;
  letter-spacing: .12em;
}

.tag-coming-soon-category {
  padding: 4px 7px;
  font-size: 7px;
}

.gog-developer-credit {
  margin: 0;
  color: #777;
  font-size: 12px;
  letter-spacing: .025em;
  line-height: 1.4;
  text-align: center;
  transition: color .2s ease;
}

.gog-developer-credit a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  color: inherit;
  text-decoration: none;
}

.gog-credit-brand {
  font-family: 'Bowlby One', 'Inter', sans-serif;
  font-size: 1.04em;
  letter-spacing: .015em;
}

.gog-developer-credit a:focus-visible {
  outline: 2px solid #d4f05a;
  outline-offset: 4px;
}

.gog-developer-credit img {
  display: block;
  width: 24px;
  height: 24px;
  padding: 1px;
  border-radius: 2px;
  background: #f1f1f1;
  object-fit: contain;
}

.gog-developer-credit:hover {
  color: #d4f05a;
}

@media (max-width: 639px) {
  .gog-developer-credit {
    width: 100%;
  }
}

/* Portrait/tablet catalogue: keep filters beside products instead of stacking
   a full-width sidebar above the grid. Phones retain the compact chip row. */
@media (min-width: 640px) {
  body.gog-night-theme .catalog-layout {
    display: grid !important;
    grid-template-columns: clamp(148px, 20vw, 240px) minmax(0, 1fr) !important;
    align-items: start;
    column-gap: clamp(16px, 2.4vw, 28px) !important;
    row-gap: 0 !important;
  }

  body.gog-night-theme .catalog-layout > aside {
    display: block !important;
    min-width: 0;
    padding-right: 12px;
  }

  body.gog-night-theme .catalog-layout > aside .lg\:sticky {
    position: sticky;
    top: 16px;
  }

  body.gog-night-theme .catalog-layout > aside .hidden.lg\:block {
    display: none !important;
  }

  body.gog-night-theme .catalog-layout #catalog {
    min-width: 0;
  }
}

@media (min-width: 1200px) {
  body.gog-night-theme .catalog-layout:not(.catalog-layout--category) {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (min-width: 640px) and (max-width: 1199px) {
  body.gog-night-theme #catalog-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px 14px !important;
  }

  body.gog-night-theme #catalog .product-card {
    padding: 7px;
  }

  body.gog-night-theme #catalog .catalog-card-copy {
    padding: 10px 2px 4px;
  }
}

/* Product card gallery controls: present on pointer hover/focus; touch users
   can swipe the image itself and see a discreet current-image counter. */
body.gog-night-theme #catalog .card-media { touch-action: pan-y; }
body.gog-night-theme .card-gallery-arrow {
  position: absolute;
  z-index: 30;
  top: 50%;
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid rgba(237,166,40,.65);
  border-radius: 50%;
  background: rgba(10,11,12,.78);
  color: #f1eee5;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-50%);
  transition: opacity .18s ease, background .18s ease, color .18s ease;
  cursor: pointer;
}
body.gog-night-theme .card-gallery-arrow svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
body.gog-night-theme .card-gallery-arrow--prev { left: 9px; }
body.gog-night-theme .card-gallery-arrow--next { right: 9px; }
body.gog-night-theme #catalog .product-card:hover .card-gallery-arrow,
body.gog-night-theme #catalog .product-card:focus-within .card-gallery-arrow {
  opacity: 1;
  pointer-events: auto;
}
body.gog-night-theme .card-gallery-arrow:hover { background: #eda628; color: #111; }
body.gog-night-theme .card-gallery-count {
  position: absolute;
  z-index: 30;
  right: 9px;
  bottom: 9px;
  padding: 4px 7px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  background: rgba(10,11,12,.72);
  color: #f1eee5;
  font: 600 9px/1 'Inter', sans-serif;
  letter-spacing: .08em;
  pointer-events: none;
}

@media (max-width: 639px) {
  body.gog-night-theme .catalog-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    padding: 20px 14px 36px !important;
  }

  body.gog-night-theme .catalog-layout > aside {
    display: block !important;
    width: 100%;
    padding: 12px 12px 10px;
  }

  body.gog-night-theme .catalog-layout > aside > div { position: static !important; }
  body.gog-night-theme .catalog-layout > aside > div > .flex.items-center {
    margin-bottom: 8px;
    padding-bottom: 8px;
  }

  body.gog-night-theme #filter-list {
    display: flex !important;
    flex-wrap: nowrap;
    gap: 7px !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain;
    padding: 2px 1px 6px;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }
  body.gog-night-theme #filter-list > li { flex: 0 0 auto; scroll-snap-align: start; }
  body.gog-night-theme #catalog-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 10px !important;
  }
  body.gog-night-theme #catalog .product-card { padding: 6px; }
  body.gog-night-theme #catalog .product-card .card-media { margin-bottom: 8px; }
  body.gog-night-theme #catalog .catalog-card-copy { padding: 7px 2px 3px; }
  body.gog-night-theme #catalog .catalog-card-copy .card-meta { font-size: 8px; }
  body.gog-night-theme #catalog .catalog-card-copy .card-label { font-size: 14px; }
  body.gog-night-theme .card-gallery-arrow { display: none; }
  body.gog-night-theme .card-gallery-count { right: 6px; bottom: 6px; font-size: 8px; }
}

@media (hover: none) and (min-width: 640px) {
  body.gog-night-theme #catalog .card-gallery-arrow { opacity: .92; pointer-events: auto; }
}

/* Reversible catalogue direction experiment: soften the light/dark transition
   and consolidate display type. Remove this block to return to the prior style. */
@media (min-width: 1024px) {
  .site-header .site-header__inner { height: 144px; }
  .site-header .site-header__logo { height: 104px; }
  .site-header .site-header__brand { padding-block: 4px; }
}

/* Warm continuous shopping surface; retain black brand chrome and gold accents. */
.catalog-hero {
  background: #f3f0e8 !important;
  border-bottom-color: rgba(212, 175, 55, .45) !important;
}
.catalog-hero .catalog-hero__breadcrumb a { color: #77746d !important; }
.catalog-hero .catalog-hero__breadcrumb > span:not(:last-child) { color: #b8b3a8 !important; }
.catalog-hero .catalog-hero__breadcrumb > span:last-child,
.catalog-hero .catalog-hero__brandline .eyebrow-athletic { color: #8a6c1e !important; }
.catalog-hero h1 { color: #151513 !important; }
.catalog-hero p.max-w-xl { color: #66645e !important; }
.catalog-hero > div[aria-hidden="true"] { color: #151513 !important; }

/* Use Barlow Condensed for expressive headings; keep Inter for body copy. */
.display-athletic,
.display-athletic--sm,
.display-athletic--xl,
.head-athletic,
.card-label,
.filter-btn,
.catalog-filter-heading {
  font-family: 'Oswald', 'Barlow Condensed', 'Inter', sans-serif !important;
}
.display-athletic,
.display-athletic--sm,
.display-athletic--xl {
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: .96;
}
.head-athletic,
.card-label { font-weight: 700; }

.catalog-hero .catalog-hero__inner {
  padding-top: clamp(2rem, 4vw, 2.75rem);
  padding-bottom: clamp(2rem, 4vw, 2.75rem);
}

.catalog-hero .catalog-hero__breadcrumb { margin-bottom: 1.25rem; }
.catalog-hero .catalog-hero__brandline { margin-bottom: 1rem; }
.catalog-hero h1 { margin-bottom: .75rem; }

.catalog-layout.catalog-layout { padding-top: clamp(1.75rem, 3.2vw, 2.75rem); }
.catalog-layout .catalog-divider { margin-bottom: 1.25rem; }

/* Reversible NIGHT MATCH concept. Remove this block and the gog-night-theme
   body class in gameon_body_classes() to restore One continuous shopping canvas.
   The real enquiry-only sales flow and product photography stay unchanged. */
body.gog-night-theme {
  --ink: #101112;
  --ink-pure: #0b0c0d;
  --ink-raised: #1a1c1e;
  --gold: #eda628;
  --gold-light: #f5bb42;
  --gold-dim: rgba(237, 166, 40, .28);
  --studio: #292b2e;
  --paper: #17191b;
  --brand-bg: #101112;
  --brand-charcoal: #f1eee5;
  --brand-gold: #eda628;
  --brand-gold-light: #f5bb42;
  background: #101112 !important;
  background-image: none !important;
  color: #f1eee5;
}
body.gog-night-theme .site-header {
  background: #0b0c0d !important;
  box-shadow: 0 1px 0 #292b2d !important;
}
body.gog-night-theme .site-header > div:first-child { border-color: rgba(237,166,40,.42) !important; }
body.gog-night-theme #mega-panel { background: #0d0f10 !important; border-color: #333638 !important; }
body.gog-night-theme #mobile-drawer { background: #101112 !important; border-color: rgba(237,166,40,.45) !important; }

@media (min-width: 1200px) {
  body.gog-night-theme { padding-left: 0; }
  body.gog-night-theme .site-header { width: 100%; margin-left: 0; }
  body.gog-night-theme .site-header__inner {
    display: grid !important; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) !important;
    align-items: center !important; gap: clamp(12px,1.4vw,22px) !important;
    max-width: 1600px !important; height: 150px !important; padding-inline: 32px !important;
  }
  body.gog-night-theme .site-header__inner > nav {
    display: flex !important; min-width: 0; height: 100%; gap: clamp(14px,1.35vw,20px) !important;
    overflow: hidden; white-space: nowrap;
  }
  body.gog-night-theme .site-header__inner > nav a { font-size: 11px; letter-spacing: .09em; }
  body.gog-night-theme .site-header__brand {
    display: flex !important; position: static !important; justify-self: center !important;
    width: max-content; transform: none !important; padding-block: 7px !important;
  }
  body.gog-night-theme .site-header__logo { height: 106px !important; }
  body.gog-night-theme .site-header__brand .tagline-gold {
    font-size: 10px !important; letter-spacing: .22em; line-height: 1.2 !important;
    filter: drop-shadow(0 1px 5px rgba(237,166,40,.28));
  }
  body.gog-night-theme .site-header__inner > .flex.items-center.gap-3 { gap: 18px !important; min-width: 0; }
  body.gog-night-theme .site-header__inner > .flex.items-center.gap-3 > a[href$="/about/"] { display: inline-flex !important; }
  body.gog-night-theme .site-header__inner > .flex.items-center.gap-3 > .hidden.lg\:flex { display: flex !important; }
  body.gog-night-theme .site-header__inner .nav-athletic {
    font-size: 12px !important; font-weight: 600 !important; letter-spacing: .13em !important;
    line-height: 1 !important;
  }
  body.gog-night-theme #search-form:not(.is-open) { width: 0 !important; opacity: 0 !important; pointer-events: none !important; }
  body.gog-night-theme #search-form input { width: 100% !important; border-radius: 4px !important; border-color: #34383a !important; background: #151719 !important; }
  body.gog-night-theme #search-form button { border-radius: 0 4px 4px 0 !important; background: #eda628 !important; }
  body.gog-night-theme #search-toggle { display: flex !important; }
  body.gog-night-theme .catalog-layout > aside { display: none !important; }
  body.gog-night-theme .catalog-layout.catalog-layout--category > aside { display: block !important; }
  body.gog-night-theme .catalog-layout.catalog-layout--category { gap: 32px !important; }
  body.gog-night-theme .catalog-layout.catalog-layout--category > aside .hidden.lg\:block { display: none !important; }
  body.gog-night-theme #mega-panel { top: 150px !important; left: 0; width: 100%; }
}

/* Search can expand despite the collapsed desktop default. */
body.gog-night-theme #search-form:not(.is-open) {
  width: 0 !important; opacity: 0 !important; pointer-events: none !important;
}
body.gog-night-theme #search-form.is-open {
  width: min(224px, calc(100vw - 120px)) !important;
  opacity: 1 !important; pointer-events: auto !important;
}
@media (max-width: 1199px) {
  body.gog-night-theme .night-side-rail { display: none; }
  body.gog-night-theme .site-header__inner > nav { gap: 16px !important; }
  body.gog-night-theme .site-header__inner > nav a { font-size: 10px; }
}
@media (max-width: 639px) {
  body.gog-night-theme .site-header__inner { height: 88px !important; }
  body.gog-night-theme .site-header__logo { height: 58px !important; }
}

/* Replace the patterned light paper with a continuous graphite equipment-room canvas. */
body.gog-night-theme .catalog-hero,
body.gog-night-theme .catalog-layout,
body.gog-night-theme [class~="bg-white"],
body.gog-night-theme [class~="bg-[#fafaf9]"],
body.gog-night-theme [class~="bg-[#FAFAFA]"],
body.gog-night-theme [class~="bg-[#fafafa]"] {
  background-color: #141618 !important;
  color: #f1eee5;
}
body.gog-night-theme .catalog-hero {
  background-image: linear-gradient(112deg, #111315 0%, #17191b 58%, #101112 100%) !important;
  border-color: rgba(237,166,40,.36) !important;
}
body.gog-night-theme .catalog-hero h1,
body.gog-night-theme #catalog-heading,
body.gog-night-theme .catalog-layout [class~="text-[#050505]"],
body.gog-night-theme [class~="text-[#050505]"] { color: #f1eee5 !important; }
body.gog-night-theme .catalog-hero p.max-w-xl,
body.gog-night-theme [class~="text-zinc-600"],
body.gog-night-theme [class~="text-zinc-500"] { color: #b2b5b7 !important; }
body.gog-night-theme [class~="text-zinc-400"] { color: #92979a !important; }
body.gog-night-theme [class~="border-zinc-100"],
body.gog-night-theme [class~="border-zinc-200"],
body.gog-night-theme [class~="border-zinc-300"] { border-color: #34383a !important; }
body.gog-night-theme [class~="text-[#D4AF37]"],
body.gog-night-theme [class~="text-[#8a6d1f]"] { color: #f0ad31 !important; }
body.gog-night-theme [class~="bg-[#D4AF37]"] { background-color: #eda628 !important; }
body.gog-night-theme [class~="border-[#D4AF37]"] { border-color: #eda628 !important; }
body.gog-night-theme [class*="hover:text-[#D4AF37]"]:hover { color: #ffc452 !important; }

/* The category menu becomes a dark, legible equipment index. */
body.gog-night-theme .catalog-layout aside {
  background: #17191b;
  border-color: #34383a !important;
  padding: 22px 18px;
}
body.gog-night-theme .catalog-filter-heading { color: #ddd9cf; }
body.gog-night-theme .filter-btn { color: #c0c1bf !important; }
body.gog-night-theme .filter-btn.active {
  background: linear-gradient(100deg,rgba(237,166,40,.18),rgba(237,166,40,.075)) !important;
  color: #ffc452 !important;
  border-left-color: #f0a323 !important;
  box-shadow: inset 0 0 0 1px rgba(237,166,40,.2), 0 0 20px rgba(237,166,40,.13), inset 8px 0 16px -14px #f5bb42;
}
body.gog-night-theme .filter-btn:not(.active):hover { background: #222527 !important; color: #fff !important; }

/* Keep the naturally light bat photographs as deliberate display windows. */
body.gog-night-theme #catalog .product-card {
  background: #1b1d1f !important;
  border: 1px solid #34383a;
  padding: 9px 9px 14px;
  transition: border-color .2s ease, transform .25s ease;
}
body.gog-night-theme #catalog .product-card:hover { border-color: rgba(237,166,40,.72); transform: translateY(-3px); }
body.gog-night-theme #catalog .product-card .card-media {
  background: #242629 !important;
  border-color: #3a3d3f !important;
}
body.gog-night-theme #catalog .card-label { color: #f1eee5 !important; }
body.gog-night-theme .slide-title { color: #f1eee5 !important; }
body.gog-night-theme #catalog .card-meta { color: #edae36 !important; }
body.gog-night-theme .tag-hc--gold {
  background: #eda628 !important;
  color: #17120a !important;
}
body.gog-night-theme .card-overlay .tag-hc { background: #141618; color: #fff; }
body.gog-night-theme .btn-enquire,
body.gog-night-theme .catalog-layout .btn-capsule--ink,
body.gog-night-theme .slide-enquire,
body.gog-night-theme #hero-cta {
  background: #eda628 !important;
  border-color: #eda628 !important;
  color: #17120a !important;
}
body.gog-night-theme .btn-enquire:hover,
body.gog-night-theme .catalog-layout .btn-capsule--ink:hover,
body.gog-night-theme .slide-enquire:hover,
body.gog-night-theme #hero-cta:hover {
  background: #f5bb42 !important;
  border-color: #f5bb42 !important;
  color: #17120a !important;
}

/* Product details, enquiry pages and homepage use matching graphite surfaces. */
body.gog-night-theme .pdp-gallery-stage {
  border-color: #383b3d !important;
}
body.gog-night-theme .pdp-gallery-stage--studio {
  background: #070809 !important;
  border-color: #383b3d !important;
}
body.gog-night-theme .pdp-tab.is-active,
body.gog-night-theme .pdp-panel [class~="text-[#050505]"] { color: #f1eee5 !important; }
body.gog-night-theme .spec-row:nth-child(odd) { background: #1e2022 !important; }
body.gog-night-theme .pdp-swatch.is-active { box-shadow: 0 0 0 3px #141618, 0 0 0 4px #eda628 !important; }
body.gog-night-theme .catalog-layout .catalog-divider { background-color: #383b3d !important; }
body.gog-night-theme .gog-prose,
body.gog-night-theme .gog-prose p { color: #c4c4c0; }
body.gog-night-theme input,
body.gog-night-theme textarea,
body.gog-night-theme select { color: #f1eee5; }
body.gog-night-theme footer { background-color: #090a0b !important; border-color: rgba(237,166,40,.35) !important; }
/* Restrained, consistent type hierarchy: Barlow Condensed + Inter. */
body.gog-night-theme .display-athletic,
body.gog-night-theme .display-athletic--sm,
body.gog-night-theme .display-athletic--xl,
body.gog-night-theme .head-athletic,
body.gog-night-theme .eyebrow-athletic,
body.gog-night-theme .nav-athletic,
body.gog-night-theme .filter-btn,
body.gog-night-theme .catalog-filter-heading,
body.gog-night-theme .btn-capsule,
body.gog-night-theme .tag-hc,
body.gog-night-theme .card-label,
body.gog-night-theme .card-meta,
body.gog-night-theme .callout-kicker {
  font-family: 'Oswald', 'Barlow Condensed', 'Inter', sans-serif !important;
}
body.gog-night-theme .display-athletic,
body.gog-night-theme .display-athletic--sm,
body.gog-night-theme .display-athletic--xl { font-weight: 700; letter-spacing: -.025em; }
body.gog-night-theme .callout-kicker { font-family: 'Barlow Condensed', 'Inter', sans-serif !important; }

/* Match the requested sharper retail typography: condensed italic display,
   sturdy Oswald navigation, and readable Inter for product descriptions. */
body.gog-night-theme .display-athletic,
body.gog-night-theme .display-athletic--sm,
body.gog-night-theme .display-athletic--xl {
  font-family: 'Barlow Condensed', 'Oswald', sans-serif !important;
  font-style: italic !important;
  font-weight: 700 !important;
  letter-spacing: -.025em;
}
body.gog-night-theme .catalog-layout.catalog-layout--category > aside .lg\:sticky {
  top: 10rem !important;
}
body.gog-night-theme .filter-btn__label { display: inline-flex; align-items: center; }
body.gog-night-theme .card-label {
  font-family: 'Barlow Condensed', 'Oswald', sans-serif !important;
  font-style: italic !important; font-weight: 700 !important; letter-spacing: -.01em;
}
body.gog-night-theme .catalog-hero__brandline .eyebrow-athletic { color: #eda628 !important; }
/* Search results: keep the responsive card layout and branded typography in
   the main stylesheet so WordPress loads these rules after template output. */
body.gog-night-theme .gog-search-page { color: #f1eee5; }
body.gog-night-theme .gog-search-page .gog-search-kicker { color: #eda628; }
body.gog-night-theme .gog-search-page .gog-search-title {
  font-family: 'Barlow Condensed', 'Oswald', sans-serif !important;
  font-style: italic; font-size: clamp(2.25rem, 5vw, 3.75rem); line-height: 1.05; color: #f1eee5;
}
body.gog-night-theme .gog-search-page .gog-search-form { display: flex; width: 100%; max-width: 42rem; }
body.gog-night-theme .gog-search-page .gog-search-query {
  flex: 1; min-width: 0; background: #090a0b !important; border: 1px solid #414446;
  padding: .875rem 1.25rem; color: #f1eee5 !important; font-family: 'Inter', sans-serif;
}
body.gog-night-theme .gog-search-page .gog-search-query::placeholder { color: #92979a; opacity: 1; }
body.gog-night-theme .gog-search-page .gog-search-query:focus { border-color: #eda628; outline: 2px solid rgba(237,166,40,.18); }
body.gog-night-theme .gog-search-page .gog-search-submit {
  background: #eda628; padding: .875rem 1.75rem; color: #101112;
  font-family: 'Oswald', 'Inter', sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .14em;
}
body.gog-night-theme .gog-search-page .gog-search-submit:hover { background: #f5bb42; }
body.gog-night-theme .gog-search-page .gog-search-count { margin-top: 1rem; color: #a1a1aa; font-family: 'Inter', sans-serif; font-size: .9rem; }
body.gog-night-theme .gog-search-page .gog-search-results { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
body.gog-night-theme .gog-search-page .gog-search-result {
  display: block; min-width: 0; overflow: hidden; border: 1px solid #34383a; background: #151718;
  color: #f1eee5; text-decoration: none; transition: border-color .18s ease, transform .18s ease;
}
body.gog-night-theme .gog-search-page .gog-search-result:hover { border-color: rgba(237,166,40,.7); transform: translateY(-2px); }
body.gog-night-theme .gog-search-page .gog-search-result-image {
  display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover;
  background: #090a0b; border-bottom: 1px solid #333638;
}
body.gog-night-theme .gog-search-page .gog-search-result > span { display: block; padding: 1rem 1.1rem 1.15rem; }
body.gog-night-theme .gog-search-page .gog-search-result-type {
  display: block; margin-bottom: .45rem; color: #eda628; font-family: 'Oswald', 'Barlow Condensed', sans-serif;
  font-size: .72rem; font-weight: 600; text-transform: uppercase; letter-spacing: .16em;
}
body.gog-night-theme .gog-search-page .gog-search-result-title {
  display: block; color: #f1eee5; font-family: 'Barlow Condensed', 'Oswald', sans-serif;
  font-size: 1.4rem; font-style: italic; font-weight: 700; line-height: 1.15; text-transform: uppercase;
}
body.gog-night-theme .gog-search-page .gog-search-result:hover .gog-search-result-title { color: #eda628; }
body.gog-night-theme .gog-search-page .gog-search-result-excerpt {
  display: block; margin-top: .55rem; color: #a1a1aa; font-family: 'Inter', sans-serif; font-size: .9rem; line-height: 1.55;
}
body.gog-night-theme .gog-search-page .gog-search-empty { border-top: 1px solid #333638; padding: 2rem 0; color: #a1a1aa; }
@media (min-width: 640px) {
  body.gog-night-theme .gog-search-page .gog-search-results { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1100px) {
  body.gog-night-theme .gog-search-page .gog-search-results { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
/* Keep the primary left and right header navigation visually even at every
   desktop width; narrower breakpoints previously shrank only the left side. */
body.gog-night-theme .site-header__inner > nav .nav-athletic,
body.gog-night-theme .site-header__inner > .flex.items-center.gap-3 > .nav-athletic {
  font-size: 12px !important;
  letter-spacing: .13em !important;
}
