/* MCR v9.40 - cache bust 202604011200 */
/* ── Skip-to-content accessibility link (hidden until focused) ──── */
.skip-to-content{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:99999}
.skip-to-content:focus{position:fixed;left:16px;top:16px;width:auto;height:auto;overflow:visible;padding:12px 24px;background:#E8201A;color:#fff;font-weight:700;border-radius:8px;outline:none;text-decoration:none}

/* ── Global link reset - no underlines anywhere in theme ─────────── */
a { text-decoration: none !important; }
a:hover { text-decoration: none !important; }

/* ── Sidebar: kill all underlines on every element ─────────────── */
.sb-item,
.sb-item:link,
.sb-item:visited,
.sb-item:hover,
.sb-item:active,
.sb-item > *,
.sb-item-name,
.sb-label,
.sb-area-code,
.sb-ev,
.sb-ev-title,
.sb-ev-more,
.sb-footer a,
.sb-dotcity a,
.sb-nl-form a,
aside.SB a,
aside.SB a:any-link {
  text-decoration: none !important;
}


/* ── Sidebar logo SVG fallback ──────────────────────────────── */
.sb-logo-svg {
  font-family:'Inter Tight',sans-serif;font-weight:900;
  font-size:1.35rem;letter-spacing:-.04em;
  display:flex;align-items:baseline;gap:0;padding:4px 0;
  text-decoration:none;line-height:1;
}
.sb-logo-mcr { color:#fff;font-size:1.35rem;font-weight:900; }
.sb-logo-dot  { font-size:1.35rem;font-weight:900;color:var(--dc-red);margin:0 1px; }
.sb-logo-city { font-size:.9rem;font-weight:900;color:rgba(255,255,255,.45);letter-spacing:-.02em; }


/* ══ CINEMATIC EVENT CARDS - 2030 design ════════════════════════ */
.ev-card {
  position:relative !important;
  display:block !important;
  text-decoration:none;
  border-radius:22px;
  overflow:hidden !important;
  aspect-ratio:3/4 !important;
  border:1.5px solid color-mix(in srgb, var(--cc,#e8201a) 30%, rgba(255,255,255,.06));
  background:
    radial-gradient(ellipse at 70% 20%, rgba(255,255,255,.04) 0%, transparent 55%),
    linear-gradient(148deg,
      color-mix(in srgb, var(--cc,#e8201a) 65%, #02020a) 0%,
      color-mix(in srgb, var(--cc,#e8201a) 28%, #02020a) 45%,
      #02020a 100%
    );
  box-shadow:0 6px 24px rgba(0,0,0,.2);
  transition:transform .35s cubic-bezier(.4,0,.2,1),
             box-shadow .35s,
             border-color .35s;
  cursor:pointer;
  opacity:0;
  animation:cardIn .5s cubic-bezier(.22,1,.36,1) forwards;
}
@keyframes cardIn { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:translateY(0)} }
.ev-card:nth-child(1){animation-delay:.04s}
.ev-card:nth-child(2){animation-delay:.11s}
.ev-card:nth-child(3){animation-delay:.18s}
.ev-card:nth-child(4){animation-delay:.25s}
.ev-card:nth-child(5){animation-delay:.32s}
.ev-card:nth-child(6){animation-delay:.39s}
.ev-card:nth-child(7){animation-delay:.46s}
.ev-card:nth-child(8){animation-delay:.53s}
.ev-card:nth-child(9){animation-delay:.60s}
.ev-card:nth-child(10){animation-delay:.67s}
.ev-card:nth-child(11){animation-delay:.74s}
.ev-card:nth-child(12){animation-delay:.81s}
.ev-card:hover {
  transform:translateY(-8px) scale(1.015);
  border-color:color-mix(in srgb, var(--cc,#e8201a) 45%, rgba(255,255,255,.1));
  box-shadow:
    0 24px 60px rgba(0,0,0,.45),
    0 0 0 1px color-mix(in srgb, var(--cc,#e8201a) 25%, transparent);
}

/* Full-bleed image - covers entire card */
.ev-card-img {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
  display:block !important;
}
.ev-card-img img {
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center top !important;
  display:block !important;
  color:transparent !important; /* hide alt text if image fails to load */
}
.ev-card:hover .ev-card-img img { transform:scale(1.09); }

/* Bottom gradient only - keeps image readable, darkens bottom portion so
   card title/meta text is legible over the image. */
.ev-card-img::after {
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse at 0% 0%,
      color-mix(in srgb, var(--cc,#e8201a) 18%, transparent) 0%,
      transparent 52%
    ),
    linear-gradient(180deg,
      rgba(0,0,0,0) 0%,
      rgba(0,0,0,0) 40%,
      rgba(0,0,0,.45) 62%,
      rgba(0,0,0,.82) 82%,
      rgba(0,0,0,.94) 100%
    );
  pointer-events:none;z-index:1;
}

/* No image filter - show API promo art at full fidelity. */

/* Empty image fallback - category-colour gradient when no real image exists.
   Prevents broken-image icons and matches card's --cc colour variable. */
.ev-card-img--empty {
  background:linear-gradient(135deg,
    color-mix(in srgb, var(--cc,#e8201a) 55%, #0c0c0e) 0%,
    color-mix(in srgb, var(--cc,#e8201a) 15%, #0c0c0e) 50%,
    #0c0c0e 100%
  ) !important;
}
.ev-card-img--empty::before {
  content:'';position:absolute;inset:0;
  background:radial-gradient(circle at 30% 20%,
    rgba(255,255,255,.08) 0%,
    transparent 50%);
  z-index:0;
}

/* Remove old card-level ::after overlay */
.ev-card::after { display:none !important; }

/* Category colour bloom at bottom of card */
.ev-card::before {
  content:'';position:absolute;
  bottom:-20px;left:-30px;right:-30px;height:180px;
  background:radial-gradient(ellipse at center bottom,
    color-mix(in srgb, var(--cc,#e8201a) 22%, transparent) 0%,
    transparent 68%
  );
  z-index:2;pointer-events:none;
  opacity:.65;transition:opacity .35s;
}
.ev-card:hover::before { opacity:.85; }

/* Text overlaid at bottom - floats over image gradient scrim */
.ev-card-body {
  position:absolute !important;bottom:0 !important;left:0 !important;right:0 !important;
  padding:20px 16px 18px;
  z-index:3;
  display:flex;flex-direction:column;gap:5px;
  background:transparent !important;
}

/* Category badge - small coloured chip */
.ev-card-cat {
  display:inline-flex;align-items:center;gap:5px;
  font-size:.52rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;
  color:#fff;margin-bottom:1px;
  width:fit-content;
  padding:3px 9px 3px 7px;
  background:color-mix(in srgb, var(--cc,#e8201a) 30%, rgba(0,0,0,.35));
  border:1px solid color-mix(in srgb, var(--cc,#e8201a) 50%, rgba(255,255,255,.1));
  border-radius:20px;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.ev-card-cat::before {
  content:'';display:inline-block;width:5px;height:5px;border-radius:50%;
  background:var(--cc, #fff);flex-shrink:0;
  box-shadow:0 0 5px var(--cc, transparent);
}

/* Unsplash attribution credit - bottom-right of card image */
.ev-photo-credit{
  position:absolute;bottom:5px;right:8px;
  font-size:.48rem;line-height:1;
  color:rgba(255,255,255,.38);
  z-index:4;pointer-events:none;
  text-shadow:0 1px 3px rgba(0,0,0,.6);
}
.ev-photo-credit a{color:inherit;text-decoration:none;pointer-events:all;}
.ev-photo-credit a:hover{color:rgba(255,255,255,.7);}

.ev-card-title {
  font-size:.95rem;font-weight:900;line-height:1.2;
  letter-spacing:-.025em;color:#fff;
  text-shadow:0 2px 16px rgba(0,0,0,.85), 0 0 30px rgba(0,0,0,.5);
  /* v12.7.74 — allow 3 lines so longer event titles ("Jim Henson's Labyrinth: In Concert") don't truncate */
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  word-break:break-word;
  hyphens:auto;
}
.ev-card-title a { color:inherit;text-decoration:none; }

.ev-card-meta {
  display:flex;flex-direction:column;gap:2px;
  font-size:.58rem;color:rgba(255,255,255,.78);
  margin-bottom:2px;
}
.ev-card-meta span { display:flex;align-items:center;gap:5px; }
.ev-card-meta i { width:10px;flex-shrink:0;color:color-mix(in srgb,var(--cc,#fff) 80%,rgba(255,255,255,.5)); }

.ev-card-ctas {
  display:flex;gap:6px;margin-top:5px;align-items:center;
}
.ev-card-ctas .btn-ghost-sm {
  display:inline-flex;align-items:center;cursor:pointer;
  background:rgba(255,255,255,.18);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.38);
  color:#fff;
  font-size:.58rem;padding:7px 14px;
  border-radius:7px;
  font-weight:700;
  letter-spacing:.02em;
}
.ev-card-ctas .btn-ghost-sm:hover {
  background:rgba(255,255,255,.30);
  border-color:rgba(255,255,255,.55);
}
.ev-card-ctas .btn-primary-sm,
.ev-card-ctas .btn-tickets {
  display:inline-flex;align-items:center;cursor:pointer;
  font-size:.58rem;padding:7px 14px;
  border-radius:7px;
  font-weight:700;
  letter-spacing:.02em;
  background:var(--cc,var(--dc-red));
  border:1px solid color-mix(in srgb,var(--cc,var(--dc-red)) 70%,rgba(255,255,255,.3));
  box-shadow:0 2px 6px rgba(0,0,0,.25);
  color:#fff;
}
.ev-card-ctas .btn-primary-sm:hover,
.ev-card-ctas .btn-tickets:hover {
  filter:brightness(1.12);
}

/* Grid layout - auto-fits columns. v12.7.74: bumped from 200px → 240px so titles fit cleanly */
.ev-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:18px;
  padding:20px 20px 32px;
  margin:0;
  max-width:100%;
  box-sizing:border-box;
}

.ev-card.sold-out { display:none; } /* hidden - sold-out events don't show in grid */

/* Badges */
.ev-sold-badge {
  position:absolute;top:12px;right:12px;z-index:4;
  background:rgba(0,0,0,.7);backdrop-filter:blur(8px);
  color:#fff;font-size:.5rem;font-weight:800;padding:4px 10px;
  border-radius:20px;text-transform:uppercase;letter-spacing:.08em;
  border:1px solid rgba(255,255,255,.18);
}

/* No-image fallback */
.ev-card:not(:has(.ev-card-img)) {
  background:var(--dark3,#1a1a20);
}
.ev-card:not(:has(.ev-card-img)) .ev-card-body { position:relative; }


/* White-bg page shadow override */
.CENTRE.white-bg .ev-card { box-shadow:0 4px 24px rgba(0,0,0,.18); }
.CENTRE.white-bg .ev-card:hover { box-shadow:0 16px 48px rgba(0,0,0,.25); }

/* Category pill colours */
.ev-pill {
  display:inline-flex;align-items:center;padding:5px 12px;border-radius:20px;
  font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;
  background:rgba(255,255,255,.06);color:rgba(255,255,255,.6);text-decoration:none;
  border:1px solid rgba(255,255,255,.08);transition:all .15s;
}
.ev-pill.on,.ev-pill:hover {
  background:var(--dc-red);color:#fff;border-color:var(--dc-red);
}
.ev-pill[style*="--pc"] { border-color:var(--pc); }
.ev-pill[style*="--pc"].on,.ev-pill[style*="--pc"]:hover { background:var(--pc);color:#fff; }
.ev-cat-pills { display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px; }

/* Submit banner */
.ev-submit-banner {
  display:flex;align-items:center;gap:16px;
  background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;padding:18px 22px;margin-top:24px;
}
.ev-submit-banner i { font-size:1.4rem;color:var(--dc-red);flex-shrink:0; }
.ev-submit-banner strong { display:block;margin-bottom:3px; }

/* Filter bar */
.ev-filters { margin-bottom:16px; }
.ev-filter-row { display:flex;gap:8px;flex-wrap:wrap;align-items:center; }
.ev-filter-row input,.ev-filter-row select {
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  color:#fff;padding:8px 12px;border-radius:6px;font-size:.7rem;
  font-family:inherit;
}
.ev-filter-row input[type=date]::-webkit-calendar-picker-indicator { filter:invert(1); }

/* Page header */
.pg-header { padding:24px 0 20px; }
.pg-eyebrow { font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--dc-red);margin-bottom:6px; }
.pg-title { font-size:2rem;font-weight:900;margin:0 0 8px;font-family:'Inter Tight',sans-serif; }
.pg-desc { font-size:.8rem;color:rgba(255,255,255,.5);margin:0; }

/* No results */
.no-results {
  grid-column:1/-1;text-align:center;padding:60px 20px;
  color:rgba(255,255,255,.3);
}
.no-results i { font-size:2.5rem;display:block;margin-bottom:14px; }
.no-results p { margin-bottom:16px; }

/* Load more */
.load-more-wrap { text-align:center;padding:24px 0; }
.btn-load-more {
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  color:#fff;padding:12px 28px;border-radius:6px;font-size:.75rem;
  font-weight:700;cursor:pointer;transition:all .15s;font-family:inherit;
}
.btn-load-more:hover { background:rgba(255,255,255,.12); }

/* Buttons */
.btn-primary,.btn-ghost,.btn-primary-sm,.btn-ghost-sm,.btn-disabled-sm {
  display:inline-flex;align-items:center;padding:8px 16px;border-radius:6px;
  font-size:.65rem;font-weight:700;text-decoration:none;text-transform:uppercase;
  letter-spacing:.06em;cursor:pointer;border:none;font-family:inherit;transition:all .15s;
}
.btn-primary,.btn-primary-sm { background:var(--dc-red);color:#fff; }
.btn-primary:hover,.btn-primary-sm:hover { background:#c01815; }
.btn-ghost,.btn-ghost-sm { background:rgba(255,255,255,.06);color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.1); }
.btn-ghost:hover,.btn-ghost-sm:hover { background:rgba(255,255,255,.12); }
.btn-disabled-sm { background:rgba(255,255,255,.06);color:rgba(255,255,255,.3);cursor:not-allowed; }


/* ── Hero fallback when no featured posts ───────────────────── */
.vs-slide { min-height:340px;background:linear-gradient(135deg,#0c0c0e 0%,#1a1a2e 100%); }

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{overflow-x:hidden;scroll-behavior:smooth}

:root{
  /* Brand primaries from logo */
  --dc-blue:#1A56FF;
  --dc-red:#E8201A;
  --dc-yellow:#F5C400;
  --dc-green:#2DB54B;
  /* Extended palette */
  --orange:#FF6B00;
  --violet:#7C3AED;
  --teal:#00BFA5;
  --pink:#E91E8C;

  /* Surfaces - DARK sidebar/nav */
  --dark:#0C0C0E;
  --dark2:#111114;
  --dark3:#18181C;
  --dark4:#1F1F24;
  --dark5:#26262C;
  --dark-b1:rgba(255,255,255,.06);
  --dark-b2:rgba(255,255,255,.10);
  --dark-b3:rgba(255,255,255,.18);
  --dark-tx:#F2F2F4;
  --dark-tx2:rgba(242,242,244,.88);
  --dark-tx3:rgba(242,242,244,.6);
  --dark-tx4:rgba(242,242,244,.35);

  /* Surfaces - WHITE content */
  --white:#FFFFFF;
  --w1:#F7F7F8;
  --w2:#EFEFEF;
  --w3:#E6E6E8;
  --w-b1:rgba(0,0,0,.06);
  --w-b2:rgba(0,0,0,.10);
  --w-b3:rgba(0,0,0,.16);
  --w-tx:#0C0C0E;
  --w-tx2:rgba(12,12,14,.62);
  --w-tx3:rgba(12,12,14,.40);
  --w-tx4:rgba(12,12,14,.20);

  --r:6px;--rl:10px;--rx:14px;--rxx:20px;
  --nav-h:0px;
  --sb-w:220px;
  --rp-w:220px;
}

body{
  font-family:'Inter',sans-serif;
  background:var(--dark);
  color:var(--dark-tx);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  min-height:100vh;
}

/* ══════════════════════════════════════
   RETRO PIXEL CURSOR
══════════════════════════════════════ */
*{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='18'%3E%3Cpolygon points='0,0 0,14 4,10 6,16 8,15.5 6,9 10,9' fill='white' stroke='black' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/svg%3E") 0 0, default}
a,button,[onclick],.sb-item,.SC,.BT,.AP,.cg-main,.cg-sm,.cta,.hood,.tn-row,.tr-card,.ai-chip,.ai-send-btn,.mob-tab,.ft-si{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='18'%3E%3Cpolygon points='0,0 0,14 4,10 6,16 8,15.5 6,9 10,9' fill='%231A56FF' stroke='black' stroke-width='1.2' stroke-linejoin='round'/%3E%3C/svg%3E") 0 0, pointer}
.blink{animation:blink .9s ease infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.15}}

/* ══════════════════════════════════════
   MOBILE DRAWER - APP STYLE
══════════════════════════════════════ */
#MOB-DRAWER{
  display:none;
  position:fixed;inset:0;z-index:799;
  background:var(--dark);
  padding-top:var(--nav-h);
  overflow-y:auto;
}
#MOB-DRAWER.open{display:block}
.mob-inner{padding:16px}
.mob-section{margin-bottom:24px}
.mob-section-label{
  font-size:.52rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--dark-tx4);padding:0 4px;margin-bottom:8px;
}
.mob-link{
  display:flex;align-items:center;gap:12px;
  padding:13px 12px;border-radius:var(--rl);
  font-size:.88rem;font-weight:500;color:var(--dark-tx2);
  transition:background .15s;
  border:1px solid transparent;
}
.mob-link:hover,.mob-link:active{background:var(--dark3);color:#fff;border-color:var(--dark-b1)}
.mob-link-ico{
  width:36px;height:36px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-size:.85rem;flex-shrink:0;
}
.mob-link-badge{
  margin-left:auto;font-size:.52rem;font-weight:700;
  padding:2px 7px;border-radius:100px;background:var(--dc-red);color:#fff;
}
/* Bottom tab bar for mobile */
/* ── Bottom tab bar (5 tabs, always fits) ────────── */
#MOB-TABS{
  display:none;
  position:fixed;bottom:0;left:0;right:0;z-index:850;
  height:64px;
  background:rgba(12,12,14,.96);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-top:1px solid rgba(255,255,255,.08);
  padding:0;padding-bottom:env(safe-area-inset-bottom);
  align-items:stretch;
}
.mob-tab{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:3px;padding:6px 4px 8px;cursor:pointer;
  font-size:.48rem;font-weight:700;letter-spacing:.04em;
  color:rgba(255,255,255,.38);text-transform:uppercase;
  transition:color .15s;text-decoration:none;
  position:relative;
}
.mob-tab span{display:block;line-height:1;}
.mob-tab i{font-size:1.15rem;display:block;line-height:1;transition:transform .15s;}
.mob-tab.on{color:#fff;}
.mob-tab.on i{transform:scale(1.1);}
.mob-tab.on::after{
  content:'';position:absolute;top:0;left:25%;right:25%;
  height:2px;
  background:linear-gradient(90deg,#E8201A,#1A56FF);
  border-radius:0 0 3px 3px;
  box-shadow:0 0 8px rgba(232,32,26,.6);
}
.mob-tab-more { color:rgba(255,255,255,.38); }
@media(max-width:900px){
  #MOB-TABS{display:flex;}
  #WRAP{padding-bottom:64px;}
}

/* ══════════════════════════════════════
   MOBILE TOP HEADER
══════════════════════════════════════ */
#MOB-HEADER {
  display:none;
  position:fixed;top:0;left:0;right:0;z-index:900;
  height:64px;
  background:#000;
  border-bottom:1px solid rgba(255,255,255,.07);
  align-items:center;justify-content:center;
  padding:0 14px;
  overflow:visible;
}
.mob-hdr-logo {
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;
  padding:4px;
}
.mob-hdr-actions { display:none !important; }
.mob-hdr-logo svg { flex-shrink:0;width:34px;height:34px; }
/* Burger icon */
.mob-burger {
  display:flex;flex-direction:column;justify-content:center;
  gap:5px;width:18px;height:18px;
}
.mob-burger span {
  display:block;height:2px;border-radius:2px;
  background:rgba(255,255,255,.8);
  transition:all .2s;
}
.mob-burger span:first-child { width:100%; }
.mob-burger span:nth-child(2) { width:75%; }
.mob-burger span:last-child { width:100%; }
.mob-hdr-menu.open .mob-burger span:first-child { transform:rotate(45deg) translate(5px,5px); }
.mob-hdr-menu.open .mob-burger span:nth-child(2) { opacity:0; }
.mob-hdr-menu.open .mob-burger span:last-child { transform:rotate(-45deg) translate(5px,-5px); }
.mob-hdr-act {
  display:flex;align-items:center;justify-content:center;
  width:38px;height:38px;border-radius:10px;
  background:rgba(255,255,255,.07);border:none;
  color:rgba(255,255,255,.75);font-size:.95rem;
  cursor:pointer;text-decoration:none;
  transition:background .15s;flex-shrink:0;
}
.mob-hdr-act:hover { background:rgba(255,255,255,.14); }
/* .mob-hdr-actions hidden on mobile - logo centred */
@media(max-width:900px){
  #MOB-HEADER { display:flex; }
  #WRAP { padding-top:64px; }
  #MOB-DRAWER { padding-top:52px; }
}

/* ══════════════════════════════════════
   MAIN WRAP
══════════════════════════════════════ */
#WRAP{padding-top:var(--nav-h)}

/* ══════════════════════════════════════
   VIDEO SLIDER HERO
══════════════════════════════════════ */
.vs-track{
  display:flex;height:100%;
  transition:transform .55s cubic-bezier(.4,0,.2,1);
}
.vs-slide{
  min-width:100%;height:100%;position:relative;overflow:hidden;flex-shrink:0;
}
.vs-video,.vs-img{
  width:100%;height:100%;object-fit:cover;position:absolute;inset:0;
}
.vs-img-blend{ display:none; }
.vs-vid-wrap{
  position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;opacity:.6;
}
.vs-vid{
  position:absolute;top:50%;left:50%;border:0;
  width:177.78vh;height:100%;
  min-width:100%;min-height:56.25vw;
  transform:translate(-50%,-50%);
}
.vs-scrim{
  position:absolute;inset:0;
  background:
    linear-gradient(to top,  rgba(0,0,0,.88) 0%, rgba(0,0,0,.35) 50%, transparent 80%),
    linear-gradient(to left, rgba(0,0,0,.88) 0%, rgba(0,0,0,.5) 45%, transparent 72%);
}
.vs-content{
  position:absolute;bottom:52px;right:28px;left:40%;z-index:2;
  display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:8px;
}
.vs-tag{
  display:inline-flex;align-items:center;gap:5px;
  font-size:.5rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:#fff;padding:3px 10px;border-radius:4px;margin-bottom:0;
}
.vs-title{
  font-family:'Inter Tight',sans-serif;font-weight:900;
  font-size:clamp(1.2rem,3vw,1.85rem);
  color:#fff;line-height:1.08;letter-spacing:-.02em;margin-bottom:0;
  text-shadow:0 1px 18px rgba(0,0,0,.6);
}
.vs-meta{font-size:.62rem;color:rgba(255,255,255,.5);font-weight:500}

/* Overlaid eyebrow */
.vs-eyebrow{
  position:absolute;top:16px;left:24px;z-index:3;
  font-size:.5rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;
  color:rgba(255,255,255,.35);
  display:flex;align-items:center;gap:8px;
}
.vs-eyebrow::before{content:'';width:14px;height:1px;background:var(--dc-blue);opacity:.8}

/* Weather overlay top-right */
.vs-wx{
  position:absolute;top:12px;right:16px;z-index:3;
  background:rgba(0,0,0,.4);backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.12);border-radius:10px;
  padding:8px 12px;display:flex;align-items:center;gap:10px;
}
.vs-wx-temp{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.6rem;color:#fff;letter-spacing:-.04em}
.vs-wx-right{display:flex;flex-direction:column;gap:1px}
.vs-wx-ico{font-size:1rem}
.vs-wx-desc{font-size:.48rem;color:rgba(255,255,255,.45);line-height:1.4}

/* Dots */
.vs-dots{
  position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:3;
  display:flex;gap:6px;
}
.vs-dot{
  width:6px;height:6px;border-radius:50%;
  background:rgba(255,255,255,.3);transition:all .2s;
}
.vs-dot.on{background:#fff;width:18px;border-radius:3px}

/* Arrows */
.vs-arrow,.vs-prev,.vs-next{
  position:absolute;top:50%;transform:translateY(-50%);z-index:3;
  width:36px;height:54px;border-radius:4px;
  background:rgba(0,0,0,.35);backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;font-size:.85rem;
  display:flex;align-items:center;justify-content:center;
  transition:background .15s;cursor:pointer;
}
.vs-arrow:hover,.vs-prev:hover,.vs-next:hover{background:rgba(26,86,255,.6)}
.vs-prev{left:12px}
.vs-next{right:12px}

/* CTAs overlaid bottom-right */
.vs-ctas{
  position:absolute;bottom:14px;right:16px;z-index:3;
  display:flex;gap:6px;
}

@media(max-width:768px){
  .vs-content{left:10px;right:12px;bottom:44px;align-items:flex-end;text-align:right}
  .vs-ctas{right:10px;bottom:10px}
  .vs-wx{display:none}
}

/* Keep cta styles from before */
.cta{
  font-size:.65rem;font-weight:700;letter-spacing:.02em;
  padding:8px 15px;border-radius:var(--r);transition:all .22s;
  display:inline-flex;align-items:center;gap:6px;
  white-space:nowrap;
}
.cta.primary{background:#fff;color:#000;border:1.5px solid #fff}
.cta.primary:hover{background:#e8e8e8;transform:translateY(-1px)}
.cta.ghost{background:rgba(0,0,0,.3);color:rgba(255,255,255,.75);border:1.5px solid rgba(255,255,255,.2);backdrop-filter:blur(8px)}
.cta.ghost:hover{border-color:rgba(255,255,255,.5);color:#fff}


/* ══════════════════════════════════════
   TICKER - DARK
══════════════════════════════════════ */
.TICKER{
  height:36px;
  background:var(--dark2);
  border-top:none;
  border-bottom:1px solid var(--dark-b1);
  display:flex;align-items:center;overflow:hidden;
  position:relative;
}
.TICKER::after{
  content:'';position:absolute;right:0;top:0;bottom:0;width:80px;
  background:linear-gradient(to left,var(--dark2),transparent);
  z-index:2;pointer-events:none;
}
.tk-badge{
  display:none;
  padding:0 16px;height:100%;
  background:linear-gradient(135deg,rgba(26,86,255,.9),#0a3acc);
  display:none;align-items:center;gap:6px;
  font-size:.56rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff;
  flex-shrink:0;z-index:3;
  box-shadow:4px 0 16px rgba(26,86,255,.2);
}
.tk-track{flex:1;overflow:hidden}
.tk-inner{display:flex;animation:ticker 55s linear infinite;white-space:nowrap}
.tk-inner:hover{animation-play-state:paused}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.tk-item{
  font-size:.65rem;font-weight:400;color:rgba(255,255,255,.4);
  padding:0 28px;display:flex;align-items:center;gap:8px;
  border-right:1px solid var(--dark-b1);
}
.tk-item em{color:rgba(255,255,255,.8);font-style:normal;font-weight:700}
.tk-sep{color:var(--dark-b3);font-size:.8em}

/* ══════════════════════════════════════
   3-COL LAYOUT
══════════════════════════════════════ */
.BODY{
  display:grid;
  grid-template-columns:var(--sb-w) 1fr;
  background:linear-gradient(to right,#0c0c0e var(--sb-w),var(--dark) var(--sb-w));
  min-height:100vh;
}
body.page-template-tpl-food .BODY{background:linear-gradient(to right,#0c0c0e var(--sb-w),#fff var(--sb-w)) !important;}
@media(max-width:900px){.BODY{grid-template-columns:1fr}}

/* ══════════════════════════════════════
   LEFT SIDEBAR - DARK SOLID BLACK
══════════════════════════════════════ */
.SB{
  background:#0c0c0e;
  backdrop-filter:none;-webkit-backdrop-filter:none;
  border-right:1px solid rgba(255,255,255,.07);
  position:sticky;top:0;
  height:100vh;
  overflow-y:auto;padding:16px 0 24px;
  scrollbar-width:none;
}
.SB a,.SB a:hover,.SB a:visited{text-decoration:none !important;}
.SB::-webkit-scrollbar{display:none}
@media(max-width:900px){.SB{display:none}}

.sb-section{padding:0 12px;margin-bottom:6px}
.sb-label{
  font-size:.48rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:rgba(255,255,255,.38);padding:0 10px;margin-bottom:4px;margin-top:16px;
  display:block;
}

/* Each nav item */
.sb-item{
  display:flex;align-items:center;gap:11px;
  padding:7px 10px;border-radius:10px;
  font-size:.76rem;font-weight:500;color:rgba(255,255,255,.72);
  transition:all .15s;cursor:pointer;
  border:1px solid transparent;
  position:relative;
  text-decoration:none !important;
}
.sb-item,.sb-item *,.sb-item:hover,.sb-item:focus,.sb-item:visited{text-decoration:none !important;}
.sb-item:hover{background:var(--dark3);color:rgba(255,255,255,.75)}
.sb-item:hover .sb-ico-wrap{opacity:1}
.sb-item.on{background:var(--dark3);color:#fff;border-color:var(--dark-b1)}
.sb-item.on .sb-ico-wrap{opacity:1}

/* Premium icon container - gradient pill */
.sb-ico-wrap{
  width:32px;height:32px;border-radius:9px;
  display:flex;align-items:center;justify-content:center;
  font-size:.78rem;flex-shrink:0;
  opacity:.75;
  transition:opacity .15s;
  position:relative;overflow:hidden;
}

/* Subtle inner shine */
.sb-ico-wrap::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.12) 0%,transparent 60%);
  border-radius:inherit;pointer-events:none;
}

/* 2040 SVG glyphs */
.sb-ico-wrap svg{width:14px;height:14px;overflow:visible;position:relative;z-index:2;opacity:0;transition:filter .3s,opacity .3s}
.sb-item:hover .sb-ico-wrap svg,.sb-item.on .sb-ico-wrap svg{opacity:1;filter:drop-shadow(0 0 6px var(--ic)) drop-shadow(0 0 12px var(--ic))}

.sb-item-name{flex:1;line-height:1;text-decoration:none !important;}

.sb-badge{
  margin-left:auto;flex-shrink:0;
  font-size:.5rem;font-weight:700;letter-spacing:.04em;
  background:var(--dc-red);color:#fff;
  padding:3px 7px;border-radius:100px;
  min-width:22px;text-align:center;
}
.sb-dot{
  width:6px;height:6px;border-radius:50%;
  margin-left:auto;flex-shrink:0;
  animation:blink 2.2s ease infinite;
}
/* Active indicator bar */
.sb-item.on::before{
  content:'';position:absolute;left:0;top:25%;bottom:25%;
  width:2.5px;border-radius:0 2px 2px 0;
  background:var(--dc-blue);
}

/* Area items - text code badges */
.sb-area-code{
  width:32px;height:32px;border-radius:9px;
  background:var(--dark3);border:1px solid var(--dark-b1);
  display:flex;align-items:center;justify-content:center;
  font-size:.52rem;font-weight:800;letter-spacing:.04em;
  color:var(--dark-tx2);flex-shrink:0;
  font-family:'Inter Tight',sans-serif;
}

/* Weather widget */
.sb-wx{
  margin:0 12px 8px;padding:14px 14px 12px;
  background:linear-gradient(135deg,var(--dark3) 0%,var(--dark2) 100%);
  border:1px solid var(--dark-b1);
  border-radius:12px;
}
.wx-top{display:flex;justify-content:space-between;align-items:flex-start}
.wx-temp{
  font-family:'Inter Tight',sans-serif;font-weight:900;
  font-size:2.2rem;color:#fff;line-height:1;letter-spacing:-.03em;
}
.wx-desc{font-size:.5rem;font-weight:500;color:var(--dark-tx3);margin-top:3px;line-height:1.5}
.wx-icon{font-size:1.6rem;opacity:.6;margin-top:2px}
.wx-row{
  display:grid;grid-template-columns:repeat(4,1fr);
  margin-top:11px;padding-top:11px;
  border-top:1px solid var(--dark-b1);
  gap:0;
}
.wx-cell{text-align:center}
.wx-val{font-size:.62rem;font-weight:700;color:var(--dark-tx2);display:block;font-variant-numeric:tabular-nums}
.wx-key{font-size:.42rem;font-weight:500;color:var(--dark-tx4);text-transform:uppercase;letter-spacing:.08em;margin-top:1px;display:block}

/* ══════════════════════════════════════
   CENTRE - WHITE CONTENT AREA
══════════════════════════════════════ */
.CENTRE{
  background:var(--dark2);
  padding:28px;
  min-width:0;
}
/* Dark background for all section/category pages */
/* Correct WordPress body classes for templates in page-templates/ subdirectory */
.page-template-page-templates-tpl-events-php .CENTRE,
.page-template-page-templates-tpl-food-php .CENTRE,
.page-template-page-templates-tpl-music-php .CENTRE,
.page-template-page-templates-tpl-nightlife-php .CENTRE,
.page-template-page-templates-tpl-sport-php .CENTRE,
.page-template-page-templates-tpl-culture-php .CENTRE,
.page-template-page-templates-tpl-stories-php .CENTRE,
.page-template-page-templates-tpl-directory-php .CENTRE,
.page-template-page-templates-tpl-tv-php .CENTRE,
.page-template-page-templates-tpl-videos-php .CENTRE,
.page-template-page-templates-tpl-neighbourhood-php .CENTRE,
.page-template-page-templates-tpl-submit-php .CENTRE,
.page-template-page-templates-tpl-contact-php .CENTRE,
.page-template-page-templates-tpl-about-php .CENTRE,
.page-template-page-templates-tpl-advertise-php .CENTRE,
.page-template-page-templates-tpl-legal-php .CENTRE,
.page-template-page-templates-tpl-sitemap-php .CENTRE,
.page-template-page-templates-tpl-dating-php .CENTRE,
.page-template-page-templates-tpl-market-php .CENTRE,
.page-template-page-templates-tpl-jobs-php .CENTRE,
/* Also keep old selectors as fallback for root-level templates */
.page-template-tpl-events .CENTRE,
.page-template-tpl-food .CENTRE,
.page-template-tpl-music .CENTRE,
.page-template-tpl-nightlife .CENTRE,
.page-template-tpl-sport .CENTRE,
.page-template-tpl-culture .CENTRE,
.page-template-tpl-stories .CENTRE,
.page-template-tpl-directory .CENTRE,
.page-template-tpl-tv .CENTRE,
.page-template-tpl-videos .CENTRE,
.page-template-tpl-neighbourhood .CENTRE,
.page-template-tpl-submit .CENTRE,
.page-template-tpl-contact .CENTRE,
.page-template-tpl-about .CENTRE,
.page-template-tpl-advertise .CENTRE,
.page-template-tpl-legal .CENTRE,
.page-template-tpl-sitemap .CENTRE,
.page-template-tpl-dating .CENTRE,
.page-template-tpl-market .CENTRE,
.page-template-tpl-jobs .CENTRE,
/* cat-page-centre class used directly as fallback */
.cat-page-centre {
  background:var(--dark2);
}
/* white-bg for non-food pages */
.cat-page-centre.white-bg,
.CENTRE.white-bg {
  background:#ffffff !important;
}
/* Food page - uses white-bg from main rule */
@media(max-width:900px){.CENTRE{padding:16px}}

/* Section header - premium */
.SH{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px;gap:12px}
.sh-eyebrow{
  font-size:.5rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;
  color:rgba(255,255,255,.35);margin-bottom:5px;display:flex;align-items:center;gap:7px;
}
.sh-eyebrow::before{content:'';width:14px;height:2px;background:currentColor;border-radius:2px;opacity:.5}
.sh-title{
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.8rem;
  color:#fff;letter-spacing:-.04em;line-height:.95;
}
.sh-link{
  font-size:.6rem;font-weight:700;color:rgba(255,255,255,.5);
  display:flex;align-items:center;gap:5px;
  padding:5px 11px;border-radius:100px;
  border:1px solid rgba(255,255,255,.07);
  transition:all .18s;white-space:nowrap;
}
.sh-link:hover{color:#fff;border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.07)}

/* ══════════════════════════════════════
   CINEMATIC GRID - TOP POST = VIDEO
══════════════════════════════════════ */
.CG{
  display:grid;
  grid-template-columns:1.6fr 1fr;
  grid-template-rows:220px 220px;
  gap:4px;border-radius:12px;overflow:hidden;
  margin-bottom:0;
  outline:none;
}
.cg-main{grid-row:1/3;position:relative;overflow:hidden;cursor:pointer;background:#000}
.cg-sm{position:relative;overflow:hidden;cursor:pointer;background:var(--dark3)}
.cg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.65)}
.cg-img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.4,0,.2,1);filter:brightness(.72)}
.cg-main:hover .cg-video{filter:brightness(.78)}
.cg-sm:hover .cg-img{transform:scale(1.07);filter:brightness(.85)}
.cg-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.1) 60%,transparent 100%);z-index:1}
.cg-body{position:absolute;bottom:0;left:0;right:0;z-index:3;padding:20px}
.cg-main .cg-body{padding:28px}
.cg-accent{position:absolute;top:0;left:0;right:0;height:2px;z-index:4}
.cg-tag{
  font-size:.52rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.45);margin-bottom:7px;
  display:flex;align-items:center;gap:6px;
}
.cg-dot{width:4px;height:4px;border-radius:50%;flex-shrink:0}
.cg-title{
  font-family:'Inter Tight',sans-serif;font-weight:800;color:#fff;
  line-height:1.02;letter-spacing:-.02em;
}
.cg-main .cg-title{font-size:clamp(1.2rem,2.4vw,1.95rem)}
.cg-sm .cg-title{font-size:.9rem}
.cg-meta{font-size:.56rem;font-weight:400;color:rgba(255,255,255,.28);margin-top:6px}
.cg-arrow{
  position:absolute;bottom:18px;right:18px;z-index:3;
  width:32px;height:32px;border-radius:50%;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);
  display:flex;align-items:center;justify-content:center;
  font-size:.6rem;color:rgba(255,255,255,.55);
  opacity:0;transform:scale(.7);transition:all .2s;
}
.cg-main:hover .cg-arrow,.cg-sm:hover .cg-arrow{opacity:1;transform:scale(1)}

/* Video controls */
.vid-badge{
  position:absolute;top:14px;left:14px;z-index:4;
  background:var(--dc-red);color:#fff;
  font-size:.5rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  padding:4px 10px;border-radius:100px;
  display:flex;align-items:center;gap:4px;
}
.vid-mute{
  position:absolute;top:14px;right:14px;z-index:4;
  width:30px;height:30px;border-radius:50%;
  background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.12);
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:.65rem;cursor:pointer;
  backdrop-filter:blur(8px);transition:background .18s;
}
.vid-mute:hover{background:rgba(0,0,0,.75)}

@media(max-width:768px){
  .CG{grid-template-columns:1fr;grid-template-rows:200px 130px 130px}
  .cg-main{grid-row:auto}
}

/* ══════════════════════════════════════
   STORY CARDS - PREMIUM
══════════════════════════════════════ */
.CARDS{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}
@media(max-width:640px){.CARDS{grid-template-columns:1fr 1fr}}
@media(max-width:400px){.CARDS{grid-template-columns:1fr}}
/* .SC card styles moved to v9.5 dark theme block below */

/* ══════════════════════════════════════
   BENTO GRID
══════════════════════════════════════ */
.BENTO{
  display:grid;
  grid-template-columns:1fr 1fr 1fr 1fr;
  grid-template-rows:116px 116px;
  gap:8px;margin-bottom:22px;
}
@media(max-width:640px){.BENTO{grid-template-columns:1fr 1fr;grid-template-rows:auto}}
.BT{
  border-radius:var(--rl);padding:16px;cursor:pointer;
  border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.04);
  transition:all .18s;position:relative;overflow:hidden;
  display:flex;flex-direction:column;justify-content:space-between;
}
.BT:hover{border-color:rgba(255,255,255,.14);transform:translateY(-2px);background:rgba(255,255,255,.07);}
.BT.span2{grid-column:span 2}
@media(max-width:640px){.BT.span2{grid-column:span 1}}
.bt-ico{font-size:1rem;margin-bottom:auto}
.bt-num{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.9rem;line-height:1;letter-spacing:-.03em}
.bt-label{font-size:.48rem;font-weight:700;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.1em;margin-top:2px}
.bt-h{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.95rem;color:#fff;line-height:1.15;letter-spacing:-.02em}
.bt-sub{font-size:.58rem;color:rgba(255,255,255,.5);margin-top:5px;line-height:1.6}
.bt-pill{font-size:.44rem;font-weight:700;padding:3px 8px;border-radius:100px;display:inline-flex;align-items:center;gap:5px;margin-top:8px}

/* ══════════════════════════════════════
   VIDEO WALL
══════════════════════════════════════ */
.VW{
  display:grid;grid-template-columns:1fr 1fr 1fr;
  gap:3px;border-radius:var(--rx);overflow:hidden;
  border:1px solid rgba(255,255,255,.07);margin-bottom:22px;
}
@media(max-width:580px){.VW{grid-template-columns:1fr}}
.vw-card{position:relative;aspect-ratio:16/9;overflow:hidden;cursor:pointer;background:var(--dark3)}
.vw-card img{width:100%;height:100%;object-fit:cover;filter:brightness(.65) saturate(1.1);transition:all .35s}
.vw-card:hover img{filter:brightness(.85) saturate(1.2);transform:scale(1.05)}
.vw-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85),transparent 60%)}
.vw-play{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);
  display:flex;align-items:center;justify-content:center;
  font-size:.65rem;color:#fff;
  opacity:0;transition:all .2s;
}
.vw-card:hover .vw-play{opacity:1;transform:translate(-50%,-50%) scale(1.1)}
.vw-body{position:absolute;bottom:0;left:0;right:0;padding:10px 11px;z-index:2}
.vw-cat{font-size:.44rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.32);margin-bottom:3px}
.vw-title{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.82rem;color:#fff;line-height:1.2}
.vw-dur{position:absolute;top:7px;right:7px;font-size:.46rem;font-weight:600;color:rgba(255,255,255,.7);background:rgba(0,0,0,.55);padding:2px 6px;border-radius:3px}

/* ══════════════════════════════════════
   APPS
══════════════════════════════════════ */
.APPS{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:22px}
@media(max-width:580px){.APPS{grid-template-columns:1fr 1fr}}
.AP{
  padding:16px 14px;border-radius:var(--rl);
  border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.04);
  cursor:pointer;transition:all .18s;text-align:center;
}
.AP:hover{border-color:rgba(255,255,255,.14);transform:translateY(-2px);}
.ap-ico{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;font-size:.95rem}
.ap-name{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.78rem;color:#fff;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:3px}
.ap-desc{font-size:.56rem;font-weight:400;color:rgba(255,255,255,.5)}
.ap-tag{display:inline-flex;margin-top:5px;font-size:.42rem;font-weight:700;padding:2px 7px;border-radius:100px}

/* ══════════════════════════════════════
   HOODS - 3 × 2 even grid
══════════════════════════════════════ */
.hoods-section { padding:0 0 4px; }
.HOODS{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:4px;
  margin-bottom:28px;
  border-radius:20px;
  overflow:hidden;
}
/* Equal 3-col layout - all cards same height */
.hood:nth-child(n)            { grid-column:span 1; height:190px; }
.hood{
  position:relative;
  overflow:hidden;
  cursor:pointer;
  border-radius:6px;
}
.hood img{
  width:100%;height:100%;
  object-fit:cover;
  filter:brightness(.5) saturate(1.1);
  transition:filter .4s ease, transform .5s cubic-bezier(.4,0,.2,1);
}
.hood:hover img{
  filter:brightness(.7) saturate(1.2);
  transform:scale(1.06);
}
/* Bottom gradient scrim */
.hood-scrim{
  position:absolute;inset:0;
  background:linear-gradient(to top,
    rgba(0,0,0,.88) 0%,
    rgba(0,0,0,.3) 45%,
    transparent 75%);
  pointer-events:none;
}
/* Top-left glass color tint from --hc */
.hood-glass-top {
  position:absolute;inset:0;
  background:linear-gradient(135deg,
    color-mix(in srgb,var(--hc,#1A56FF) 22%,transparent) 0%,
    transparent 55%);
  pointer-events:none;
  transition:opacity .3s ease;
  opacity:.7;
}
.hood:hover .hood-glass-top { opacity:1; }
/* Content */
.hood-body{
  position:absolute;bottom:0;left:0;right:0;
  padding:16px 18px;
  z-index:2;
  display:flex;
  flex-direction:column;
  gap:3px;
}
.hood-abbr{
  font-size:.4rem;font-weight:900;
  letter-spacing:.2em;text-transform:uppercase;
  color:color-mix(in srgb,var(--hc,#fff) 90%,rgba(255,255,255,.5));
  line-height:1;
}
.hood-name{
  font-family:'Inter Tight',sans-serif;
  font-weight:900;
  font-size:1.05rem;
  color:#fff;
  line-height:1.1;
  letter-spacing:-.02em;
}
.hood:nth-child(n) .hood-name { font-size:.95rem; }
.hood-cta {
  font-size:.52rem;
  font-weight:700;
  color:rgba(255,255,255,.7);
  letter-spacing:.04em;
  display:flex;
  align-items:center;
  gap:5px;
  opacity:1;
  transform:translateY(0);
  transition:opacity .25s ease, transform .25s ease, color .25s ease;
}
.hood-cta i { font-size:.55em; }
.hood:hover .hood-cta { color:rgba(255,255,255,.95); }
/* Left accent bar - always visible */
.hood::before {
  content:'';
  position:absolute;
  top:0;bottom:0;left:0;
  width:3px;
  background:var(--hc,#1A56FF);
  transform:scaleX(1);
  transform-origin:left;
  transition:width .25s ease;
  z-index:3;
}
.hood:hover::before { width:5px; }
/* Responsive */
@media(max-width:900px){
  .HOODS{grid-template-columns:repeat(3,1fr);}
  .hood:nth-child(n){grid-column:span 1;height:160px;}
  .hood-name{font-size:.85rem;}
}
@media(max-width:640px){
  .HOODS{grid-template-columns:repeat(2,1fr);border-radius:14px;}
  .hood:nth-child(n){grid-column:span 1 !important;height:130px !important;}
  .hood-name{font-size:.78rem !important;}
  .hood-body{padding:10px 12px;}
}

/* ══════════════════════════════════════
   RIGHT PANEL - HAIR LINE + RED TAB
══════════════════════════════════════ */
.RP{
  position:fixed;top:0;right:0;
  width:1px;height:100vh;z-index:700;
  background:rgba(255,255,255,.1);
  overflow:visible;
  transition:width .35s cubic-bezier(.4,0,.2,1);
  display:block !important;
}
.RP.open{
  width:260px;
  background:rgba(10,10,16,0.95);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border-left:1px solid rgba(255,255,255,.08);
  overflow-y:auto;
}
.RP::-webkit-scrollbar{display:none}
.RP.open{scrollbar-width:none}

/* Collapsed strip - hidden when closed, shown when open */
.rp-strip{ display:none }
.RP.open .rp-strip{ display:none }

/* Pull tab - black, clean colour-cycling border */
.rp-tab{
  position:fixed;top:50%;right:1px;
  transform:translateY(-50%);
  width:42px;height:144px;z-index:701;
  background:#000;
  border-left:2px solid #1A56FF;
  border-top:1px solid #1A56FF;
  border-bottom:1px solid #1A56FF;
  border-right:none;
  border-radius:12px 0 0 12px;
  display:flex;align-items:center;justify-content:center;
  transition:right .35s cubic-bezier(.4,0,.2,1),width .2s;
  cursor:pointer;
  animation:tab-cycle 4s linear infinite;
}
@keyframes tab-cycle{
  0%,100%{ border-color:#1A56FF }
  25%    { border-color:#E8201A }
  50%    { border-color:#F5C400 }
  75%    { border-color:#2DB54B }
}
.rp-tab:hover{width:48px}
.rp-tab.open{right:260px;animation:none;border-color:rgba(255,255,255,.12);background:#0a0a0a}
.rp-tab i{font-size:1rem;color:rgba(255,255,255,.4);transition:transform .35s}
.rp-tab.open i{transform:rotate(180deg)}

/* Expanded panel content */
.rp-inner{
  width:260px;padding:20px 16px 80px;
  opacity:0;pointer-events:none;
  transition:opacity .2s .15s;
  min-height:100%;
}
.RP.open .rp-inner{opacity:1;pointer-events:all}

/* ══════════════════════════════════════
   CLIPPY - ORBITAL LOGO ANIMATIONS
══════════════════════════════════════ */
@keyframes clippy-pop{from{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes clippy-bounce{
  0%,100%{transform:translateY(0) rotate(-2deg)}
  35%{transform:translateY(-8px) rotate(2deg)}
  65%{transform:translateY(-3px) rotate(0deg)}
}

.rp-section{margin-bottom:18px}
.rp-label{
  font-size:.46rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
  color:var(--dark-tx4);margin-bottom:8px;
  display:flex;align-items:center;gap:8px;
}
.rp-label::after{content:'';flex:1;height:1px;background:var(--dark-b1)}

/* Events */
.EV{
  display:flex;gap:8px;padding:7px 0;
  border-bottom:1px solid var(--dark-b1);cursor:pointer;
}
.EV:last-child{border-bottom:none}
.EV:hover .ev-title{color:#fff}
.ev-stripe{width:2px;border-radius:1px;align-self:stretch;flex-shrink:0;min-height:24px}
.ev-body{flex:1;min-width:0}
.ev-cat{font-size:.42rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dark-tx4);margin-bottom:2px}
.ev-title{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.75rem;color:var(--dark-tx2);line-height:1.2;transition:color .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ev-meta{font-size:.5rem;font-weight:400;color:var(--dark-tx3);margin-top:1px}
.ev-day{font-size:.42rem;font-weight:700;color:var(--dark-tx4);flex-shrink:0;margin-top:1px}

/* Map */
.MAP{
  height:134px;border-radius:var(--rl);overflow:hidden;
  border:1px solid var(--dark-b1);background:var(--dark3);position:relative;
}
.map-grid{
  position:absolute;inset:0;
  background-image:linear-gradient(var(--dark-b1) 1px,transparent 1px),
                   linear-gradient(90deg,var(--dark-b1) 1px,transparent 1px);
  background-size:16px 16px;
}
.map-dot{
  position:absolute;border-radius:50%;transform:translate(-50%,-50%);
  border:1.5px solid var(--dark);
}
.map-dot::after{
  content:'';position:absolute;inset:-4px;border-radius:50%;
  border:1px solid currentColor;opacity:.2;animation:ping 2.2s ease infinite;
}
@keyframes ping{0%{transform:scale(1);opacity:.35}100%{transform:scale(3);opacity:0}}
.map-label{
  position:absolute;transform:translate(-50%,-50%);
  font-size:.36rem;font-weight:600;color:var(--dark-tx3);
  background:rgba(12,12,14,.85);padding:1px 5px;border-radius:3px;white-space:nowrap;
}
.map-fade{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 50%,var(--dark) 100%)}

/* Transport */
.TR{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.tr-card{
  padding:10px 8px;border-radius:var(--r);
  border:1px solid var(--dark-b1);background:var(--dark3);
  text-align:center;cursor:pointer;transition:all .14s;
}
.tr-card:hover{border-color:var(--dark-b2);background:var(--dark4)}
.tr-icon{font-size:.95rem;display:block;margin-bottom:4px}
.tr-val{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.82rem;color:#fff;display:block;line-height:1}
.tr-label{font-size:.44rem;font-weight:500;color:var(--dark-tx3);text-transform:uppercase;letter-spacing:.06em}

/* Trending */
.TN{display:flex;flex-direction:column}
.tn-row{display:flex;align-items:center;gap:9px;padding:8px 0;border-bottom:1px solid var(--dark-b1);cursor:pointer}
.tn-row:last-child{border-bottom:none}
.tn-num{font-size:.48rem;font-weight:700;color:var(--dark-tx4);width:14px;flex-shrink:0;font-variant-numeric:tabular-nums}
.tn-info{flex:1}
.tn-title{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.8rem;color:var(--dark-tx)}
.tn-sub{font-size:.54rem;color:var(--dark-tx3)}
.tn-arrow{font-size:.48rem;color:var(--dc-green)}

/* ══════════════════════════════════════
   NEWSLETTER - DARK
══════════════════════════════════════ */
.NL{
  padding:56px 48px;
  background:linear-gradient(135deg,#0c0c0e 0%,#111114 100%);
  border-top:1px solid rgba(255,255,255,.06);
  display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;
  position:relative;overflow:hidden;
}
.NL::before{
  content:'';position:absolute;top:-80px;left:-60px;
  width:320px;height:320px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.03) 0%,transparent 65%);
  pointer-events:none;
}
.NL::after{
  content:'';position:absolute;bottom:-60px;right:10%;
  width:240px;height:240px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.02) 0%,transparent 65%);
  pointer-events:none;
}
@media(max-width:768px){.NL{grid-template-columns:1fr;padding:36px 18px;gap:24px}}
.nl-heading{
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:2.6rem;
  color:#fff;line-height:.88;margin-bottom:10px;letter-spacing:-.05em;
  position:relative;z-index:1;
}
.nl-heading span{
  color:#fff;
}
.nl-sub{font-size:.7rem;font-weight:400;color:rgba(255,255,255,.35);line-height:1.9;position:relative;z-index:1}
.nl-form{display:flex;gap:0;position:relative;z-index:1}
.nl-input{
  flex:1;padding:13px 16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);border-right:none;
  border-radius:var(--r) 0 0 var(--r);
  font-family:'Inter',sans-serif;font-size:.72rem;color:#fff;outline:none;
  transition:border-color .18s;backdrop-filter:blur(8px);
}
.nl-input:focus{border-color:rgba(255,255,255,.25)}
.nl-input::placeholder{color:rgba(255,255,255,.2)}
.nl-btn{
  padding:0 22px;
  background:var(--dc-red);
  color:#fff;border:none;
  border-radius:0 var(--r) var(--r) 0;cursor:pointer;
  font-family:'Inter',sans-serif;font-weight:700;font-size:.7rem;
  letter-spacing:.08em;text-transform:uppercase;transition:all .2s;
  box-shadow:none;
}
.nl-btn:hover{opacity:.88;transform:translateX(1px)}

/* ══════════════════════════════════════
   FOOTER - DARK
══════════════════════════════════════ */
/* .FT - see footer section below */
@media(max-width:768px){.FT{grid-template-columns:1fr 1fr;padding:28px 18px 18px}}
.ft-brand{
  display:flex;align-items:center;gap:8px;
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.9rem;
  letter-spacing:.1em;text-transform:uppercase;color:#fff;margin-bottom:10px;
}
.ft-desc{font-size:.62rem;font-weight:400;color:var(--dark-tx3);line-height:1.85;max-width:200px}
.ft-soc{display:flex;gap:7px;margin-top:12px}
.ft-si{
  width:30px;height:30px;border-radius:8px;
  background:var(--dark3);border:1px solid var(--dark-b1);
  display:flex;align-items:center;justify-content:center;
  font-size:.7rem;color:var(--dark-tx3);cursor:pointer;transition:all .14s;
}
.ft-si:hover{background:var(--dark5);color:#fff;border-color:var(--dark-b2)}
.ft-col h4{font-size:.48rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--dark-tx4);margin-bottom:12px}
.ft-col ul{display:flex;flex-direction:column;gap:7px}
.FT a,.FT a:hover,.FT a:visited,.NL a,.ft-bottom a{text-decoration:none;}
.ft-col a{font-size:.7rem;font-weight:400;color:var(--dark-tx3);transition:color .14s;text-decoration:none}
.ft-col a:hover{color:#fff}
.ft-bottom{
  background:var(--dark);border-top:1px solid var(--dark-b1);
  padding:12px 48px;display:flex;justify-content:space-between;
  font-size:.52rem;font-weight:500;color:var(--dark-tx4);
}
@media(max-width:768px){.ft-bottom{padding:10px 18px;flex-direction:column;gap:3px}}

/* ══════════════════════════════════════
   CITY PULSE
══════════════════════════════════════ */
.pulse-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.pulse-card{
  background:var(--dark3);border:1px solid var(--dark-b1);
  border-radius:10px;padding:10px 11px;
}
.pulse-val{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1rem;line-height:1;letter-spacing:-.02em}
.pulse-bar{height:2px;background:var(--dark-b1);border-radius:2px;margin:5px 0 4px}
.pulse-fill{height:100%;border-radius:2px}
.pulse-label{font-size:.44rem;font-weight:600;color:var(--dark-tx4);text-transform:uppercase;letter-spacing:.06em}

/* ══════════════════════════════════════
   HERO WEATHER FLOAT CARD
══════════════════════════════════════ */
.hero-wx{
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.11);
  border-radius:14px;
  padding:16px 18px;
  backdrop-filter:blur(12px);
  min-width:190px;
  flex-shrink:0;
}
.hero-wx-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}
.hero-wx-temp{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:2.2rem;color:#fff;line-height:1;letter-spacing:-.04em}
.hero-wx-desc{font-size:.58rem;color:rgba(255,255,255,.4);margin-top:4px;line-height:1.5}
.hero-wx-icon{font-size:1.8rem;opacity:.8}
.hero-wx-row{display:flex;gap:10px;border-top:1px solid rgba(255,255,255,.07);padding-top:10px}
.hero-wx-cell{display:flex;flex-direction:column;align-items:center;gap:2px}
.hero-wx-val{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.8rem;color:rgba(255,255,255,.8)}
.hero-wx-key{font-size:.42rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.25)}

/* ══════════════════════════════════════
   SIDEBAR CLIPPY SLOT
══════════════════════════════════════ */
.sb-clippy-slot{
  padding:14px 14px 12px;
  border-bottom:1px solid rgba(255,255,255,.06);
  margin-bottom:6px;
  display:flex;flex-direction:column;align-items:center;
  gap:6px;
}
#sb-clippy-bubble{
  background:#1c1c22;
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  padding:10px 12px;
  width:100%;
  font-family:'Inter',sans-serif;
  font-size:.64rem;line-height:1.55;
  color:rgba(255,255,255,.88);
  box-shadow:0 4px 20px rgba(0,0,0,.5);
  display:none;position:relative;
}
#sb-clippy-bubble.show{display:block;animation:clippy-pop .2s ease}
/* Arrow pointing down toward clippy */
#sb-clippy-bubble::after{
  content:'';position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);
  border:5px solid transparent;border-top-color:#1c1c22;
}
#sb-clippy-bubble::before{
  content:'';position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);
  border:6px solid transparent;border-top-color:rgba(255,255,255,.1);
}
.clippy-btns{display:flex;gap:6px;margin-top:8px}
.clippy-btn{
  flex:1;padding:4px 0;text-align:center;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.14);
  font-size:.6rem;font-weight:600;color:rgba(255,255,255,.75);
  border-radius:5px;
}
.clippy-btn:hover{background:rgba(255,255,255,.16);color:#fff}
#sb-clippy-char{
  width:88px;height:88px;
  filter:drop-shadow(0 3px 10px rgba(0,0,0,.7));
  transition:transform .2s ease;
}
#sb-clippy-char:hover{transform:scale(1.06)}
#sb-clippy-char svg{width:100%;height:100%}

/* ══════════════════════════════════════
   SIDEBAR TONIGHT
══════════════════════════════════════ */
.sb-tonight{display:flex;flex-direction:column;gap:0;margin:0 2px}
.sb-ev{
  display:flex;align-items:center;gap:8px;
  padding:7px 10px;border-radius:8px;
  transition:background .15s;
}
.sb-ev:hover{background:rgba(255,255,255,.04)}
.sb-ev-stripe{width:2px;border-radius:1px;align-self:stretch;flex-shrink:0;min-height:22px}
.sb-ev-body{flex:1;min-width:0}
.sb-ev-cat{font-size:.4rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--dark-tx4);margin-bottom:1px}
.sb-ev-title{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.7rem;color:var(--dark-tx2);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sb-ev-meta{font-size:.48rem;color:var(--dark-tx4);margin-top:1px}
.sb-ev-day{font-size:.4rem;font-weight:700;color:var(--dark-tx4);flex-shrink:0;letter-spacing:.06em}
.sb-ev-more{
  display:block;text-align:center;margin:6px 10px 2px;
  font-size:.55rem;font-weight:600;color:var(--dark-tx4);
  padding:6px;border:1px solid var(--dark-b1);border-radius:7px;
  transition:all .15s;
}
.sb-ev-more:hover{color:var(--dark-tx2);border-color:var(--dark-b2);background:rgba(255,255,255,.03)}



/* ══════════════════════════════════════
   SIDEBAR LOGO SLOT
══════════════════════════════════════ */
/* sb-logo-slot/img - see below */

/* ══════════════════════════════════════
   WHITE PARTNER SCROLL BAR
══════════════════════════════════════ */
.PBAR{
  background:#fff;
  border-top:1px solid #f0f0f0;
  border-bottom:1px solid #f0f0f0;
  overflow:hidden;
  height:36px;
  display:flex;align-items:center;
  margin:24px -28px;
  position:relative;
}
.PBAR::before,.PBAR::after{
  content:'';position:absolute;top:0;bottom:0;width:40px;z-index:2;
}
.PBAR::before{left:0;background:linear-gradient(to right,#fff,transparent)}
.PBAR::after{right:0;background:linear-gradient(to left,#fff,transparent)}
.pbar-inner{
  display:flex;align-items:center;gap:0;
  white-space:nowrap;
  animation:pbar-scroll 38s linear infinite;
}
.pbar-inner:hover{animation-play-state:paused}
@keyframes pbar-scroll{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}
.pbar-item{
  font-family:'Inter Tight',sans-serif;
  font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:#111;padding:0 14px;
}
.pbar-sep{color:#ccc;font-size:.7rem}

/* ══════════════════════════════════════
   MCR.TV - FULL BROADCAST CHANNEL
══════════════════════════════════════ */
.MCTV{
  background:#050508;
  margin:32px -28px -28px -28px;
  padding:0;
  border-top:1px solid rgba(255,255,255,.08);
  font-family:'Inter','Inter Tight',sans-serif;
}

/* ── Top bar ── */
.tv-topbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 28px;
  background:#050508;
  border-bottom:1px solid rgba(255,255,255,.06);
  gap:16px;flex-wrap:wrap;
}
.tv-brand{
  display:flex;align-items:center;gap:12px;
}
.tv-brand-logo{
  background:#fff;
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1rem;
  letter-spacing:-.02em;color:#000;padding:5px 12px;border-radius:5px;
}
.tv-brand-sub{
  font-size:.5rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;
  color:rgba(255,255,255,.22);
}
.tv-liveclock{
  display:flex;align-items:center;gap:12px;
}
.tv-clock{
  font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums;
  color:rgba(255,255,255,.9);letter-spacing:.06em;font-family:var(--font-mono,monospace);
}
.tv-live-pill{
  display:flex;align-items:center;gap:5px;
  background:transparent;border:1px solid rgba(255,255,255,.18);
  border-radius:20px;padding:4px 12px;
  font-size:.44rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);
}
.tv-live-dot{
  width:5px;height:5px;border-radius:50%;background:#fff;
  animation:wot-blink 1.2s ease infinite;flex-shrink:0;
}
.tv-channel-select{
  display:flex;gap:6px;
}
.tv-ch-btn{
  display:flex;align-items:center;gap:7px;
  padding:7px 16px;border-radius:100px;
  border:1px solid rgba(255,255,255,.1);background:transparent;
  color:rgba(255,255,255,.3);font-size:.55rem;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all .18s;
}
.tv-ch-btn:hover{color:rgba(255,255,255,.75);border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.06)}
.tv-ch-btn.on,.tv-ch-btn[data-ch].on{background:#fff;border-color:#fff;color:#000}
.tv-ch-num{
  font-size:.38rem;opacity:.45;font-variant-numeric:tabular-nums;
}

/* ── Main body ── */
.tv-body{
  display:grid;
  grid-template-columns:1fr 340px;
  min-height:520px;
}
@media(max-width:900px){.tv-body{grid-template-columns:1fr}}

/* ── Player side ── */
.tv-player-col{display:flex;flex-direction:column;min-width:0}
.tv-player-wrap{
  position:relative;width:100%;padding-bottom:56.25%;
  background:#000;
  flex-shrink:0;
}
.tv-player-wrap iframe{
  position:absolute;inset:0;width:100%;height:100%;border:none;
}
/* Loading state */
.tv-loading{
  position:absolute;inset:0;background:#000;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
  z-index:5;
}
.tv-loading-spinner{
  width:36px;height:36px;border:2px solid rgba(255,255,255,.1);
  border-top-color:rgba(255,255,255,.7);border-radius:50%;
  animation:tv-spin .7s linear infinite;
}
@keyframes tv-spin{to{transform:rotate(360deg)}}
.tv-loading-label{font-size:.6rem;color:rgba(255,255,255,.4);font-weight:600;letter-spacing:.1em;text-transform:uppercase}
/* Now playing bar */
.tv-now-bar{
  background:#0a0a0d;
  padding:14px 24px;
  display:flex;align-items:center;gap:14px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.tv-now-badge{
  font-size:.4rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  padding:4px 10px;border-radius:100px;
  background:rgba(255,255,255,.1)!important;color:rgba(255,255,255,.7);flex-shrink:0;
  border:1px solid rgba(255,255,255,.12);
}
.tv-now-title{
  font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.85rem;
  color:#fff;flex:1;min-width:0;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.tv-now-dur{font-size:.52rem;color:rgba(255,255,255,.25);flex-shrink:0;font-variant-numeric:tabular-nums;}
/* Progress bar */
.tv-progress{height:3px;background:rgba(255,255,255,.08);position:relative;cursor:pointer}
.tv-progress-fill{height:100%;transition:width .5s linear;background:rgba(255,255,255,.55)}

/* ── EPG / Schedule ── */
.tv-epg{
  background:#0c0c18;
  padding:16px 18px 14px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.tv-epg-head{
  display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;
}
.tv-epg-label{
  font-size:.5rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.3);
}
.tv-epg-view-all{
  font-size:.5rem;font-weight:700;color:rgba(255,255,255,.3);cursor:pointer;
  letter-spacing:.06em;text-transform:uppercase;transition:color .14s;
}
.tv-epg-view-all:hover{color:rgba(255,255,255,.7)}
.tv-epg-grid{
  display:flex;gap:4px;overflow-x:auto;
  scrollbar-width:none;
}
.tv-epg-grid::-webkit-scrollbar{display:none}
.tv-epg-slot{
  flex:0 0 auto;min-width:120px;
  background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);
  border-radius:8px;padding:10px 12px;
  cursor:pointer;transition:all .18s;position:relative;overflow:hidden;
}
.tv-epg-slot:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12)}
.tv-epg-slot.now{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25)}
.tv-epg-slot.now::before{
  content:'NOW';
  position:absolute;top:7px;right:8px;
  font-size:.35rem;font-weight:900;letter-spacing:.14em;
  color:rgba(255,255,255,.5);
}
.tv-epg-time{font-size:.45rem;font-weight:600;color:rgba(255,255,255,.28);margin-bottom:4px;font-variant-numeric:tabular-nums;}
.tv-epg-title{font-size:.6rem;font-weight:700;color:#fff;line-height:1.3;margin-bottom:4px}
.tv-epg-ch{font-size:.4rem;font-weight:700;color:rgba(255,255,255,.25);text-transform:uppercase;letter-spacing:.08em}
.tv-epg-prog{height:1px;background:rgba(255,255,255,.06);border-radius:1px;margin-top:8px}
.tv-epg-prog-fill{height:100%;border-radius:1px}

/* ── Ad break screen (policy-safe - no fake ads) ── */
.tv-break-overlay{
  position:absolute;inset:0;z-index:20;
  background:linear-gradient(135deg,#0c0c18,#0c0c0e);
  display:none;flex-direction:column;align-items:center;justify-content:center;
}
.tv-break-overlay.show{display:flex}
.tv-break-inner{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:24px;}
.tv-break-logo{
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:2rem;color:#fff;letter-spacing:-.02em;
}
.tv-break-logo span{color:#fff}
.tv-break-msg{font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.4)}
.tv-break-cd{font-size:1.4rem;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}
.tv-break-skip{
  margin-top:8px;font-size:.62rem;font-weight:700;
  background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);
  border:1px solid rgba(255,255,255,.15);
  padding:8px 18px;border-radius:6px;cursor:pointer;
  transition:all .14s;white-space:nowrap;
}
.tv-break-skip:hover:not(:disabled){background:rgba(255,255,255,.14);color:#fff}
.tv-break-skip:disabled{opacity:.4;cursor:not-allowed}
/* ── PiP pop-out button ── */
.tv-pip-btn{
  position:absolute;top:10px;right:10px;z-index:10;
  background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.2);
  color:#fff;font-size:.9rem;width:28px;height:28px;
  border-radius:5px;cursor:pointer;opacity:0;transition:opacity .2s;
  display:flex;align-items:center;justify-content:center;
}
.tv-player-wrap:hover .tv-pip-btn{opacity:1}
/* ── AI description ── */
.tv-now-info{flex:1;min-width:0}
.tv-ai-desc{
  font-size:.52rem;color:rgba(255,255,255,.38);line-height:1.4;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  margin-top:2px;
  animation:tv-desc-fade .4s ease;
}
@keyframes tv-desc-fade{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
/* ── Keyboard shortcut hint ── */
.tv-kb-hint{
  font-size:.44rem;color:rgba(255,255,255,.2);
  border:1px solid rgba(255,255,255,.08);border-radius:4px;
  padding:2px 7px;letter-spacing:.06em;cursor:help;
}
/* ── SEO / text content section ── */
.tv-seo-section{
  padding:32px 24px 40px;
  background:#0c0c18;
  border-top:1px solid rgba(255,255,255,.05);
}
.tv-seo-header{text-align:center;margin-bottom:24px}
.tv-seo-title{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.1rem;color:#fff;margin:0 0 6px}
.tv-seo-sub{font-size:.65rem;color:rgba(255,255,255,.4);margin:0}
.tv-seo-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:14px;margin-bottom:28px;
}
.tv-seo-card{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;padding:16px;
}
.tv-seo-card-icon{font-size:1.4rem;margin-bottom:8px}
.tv-seo-card-title{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.78rem;color:#fff;margin:0 0 6px}
.tv-seo-card-body{font-size:.62rem;color:rgba(255,255,255,.45);line-height:1.6;margin:0}
.tv-seo-ad{max-width:728px;margin:0 auto}
@media(max-width:900px){.tv-seo-section{padding:24px 16px 32px}.tv-seo-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.tv-seo-grid{grid-template-columns:1fr}}

/* ── Right sidebar ── */
.tv-sidebar-col{
  background:#030305;
  border-left:1px solid rgba(255,255,255,.04);
  display:flex;flex-direction:column;overflow:hidden;
  max-height:720px;
}
.tv-sidebar-tabs{
  display:flex;border-bottom:1px solid rgba(255,255,255,.05);
  padding:0 4px;
}
.tv-stab{
  flex:1;text-align:center;padding:12px 4px;
  font-size:.45rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.25);cursor:pointer;border-bottom:1px solid transparent;
  transition:all .15s;background:none;border-top:none;border-left:none;border-right:none;
}
.tv-stab:hover{color:rgba(255,255,255,.55)}
.tv-stab.on{color:#fff;border-bottom-color:rgba(255,255,255,.6)}
.tv-panel{display:none;flex-direction:column;overflow:hidden;flex:1}
.tv-panel.on{display:flex}
.tv-queue-scroll{overflow-y:auto;flex:1}

/* Queue items */
.tv-qi{
  display:flex;align-items:center;gap:12px;
  padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.03);
  cursor:pointer;transition:background .15s;
}
.tv-qi:hover{background:rgba(255,255,255,.04)}
.tv-qi.active{background:rgba(255,255,255,.07);border-left:2px solid rgba(255,255,255,.5);padding-left:14px;}
.tv-qi.ad-marker{
  background:rgba(26,86,255,.05);border-left:2px solid rgba(26,86,255,.4);
  cursor:default;padding:8px 16px;
}
.tv-qi-num{
  font-size:.46rem;font-weight:700;color:rgba(255,255,255,.15);
  width:14px;text-align:center;flex-shrink:0;font-variant-numeric:tabular-nums;
}
.tv-qi-thumb{
  width:84px;height:48px;flex-shrink:0;border-radius:5px;overflow:hidden;
  background:#111;position:relative;
}
.tv-qi-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s;}
.tv-qi:hover .tv-qi-thumb img{transform:scale(1.04)}
.tv-qi-play-ico{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .15s;background:rgba(0,0,0,.5);
  font-size:.5rem;color:#fff;
}
.tv-qi:hover .tv-qi-play-ico{opacity:1}
.tv-qi.active .tv-qi-play-ico{opacity:1;background:rgba(0,0,0,.35)}
.tv-qi-body{flex:1;min-width:0}
.tv-qi-cat{font-size:.36rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.22);margin-bottom:2px}
.tv-qi-title{font-size:.63rem;font-weight:600;color:rgba(255,255,255,.8);line-height:1.35;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tv-qi-dur{font-size:.42rem;color:rgba(255,255,255,.2);margin-top:3px;font-variant-numeric:tabular-nums;}

/* Info panel */
.tv-info-panel{padding:16px 16px;overflow-y:auto;flex:1}
.tv-info-ch-name{
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.1rem;
  color:#fff;margin-bottom:4px;
}
.tv-info-desc{font-size:.65rem;color:rgba(255,255,255,.5);line-height:1.6;margin-bottom:14px}
.tv-info-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}
.tv-stat-box{background:rgba(255,255,255,.04);border-radius:7px;padding:10px;text-align:center}
.tv-stat-val{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.1rem;color:#fff}
.tv-stat-lbl{font-size:.44rem;color:rgba(255,255,255,.3);text-transform:uppercase;letter-spacing:.08em;margin-top:2px}
.tv-info-tags{display:flex;gap:5px;flex-wrap:wrap}
.tv-info-tag{
  font-size:.5rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:4px 10px;border-radius:4px;border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.4);
}

/* Powered by strip */
.tv-powered-strip{
  padding:10px 14px;
  background:rgba(255,255,255,.03);border-top:1px solid rgba(255,255,255,.05);
  font-size:.48rem;color:rgba(255,255,255,.2);
  display:flex;align-items:center;gap:5px;flex-wrap:wrap;
}
.tv-powered-strip a{color:rgba(255,255,255,.35);font-weight:700}

::-webkit-scrollbar{width:2px}
::-webkit-scrollbar-thumb{background:var(--dark-b3);border-radius:2px}
::-webkit-scrollbar-track{background:transparent}

/* ══════════════════════════════════════
   CITY TOOLS - COMING SOON SHOWCASE
══════════════════════════════════════ */
.CITY-TOOLS-SECTION{
  margin:0 -28px;
  padding:40px 28px 44px;
  background:#0c0c0e;
  border-top:1px solid rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.05);
}
/* Header */
.cts-head{margin-bottom:28px;text-align:center}
.cts-eyebrow{
  display:inline-flex;align-items:center;gap:7px;
  font-size:.52rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(255,255,255,.4);margin-bottom:8px;
}
.cts-live-dot{
  display:inline-block;width:6px;height:6px;border-radius:50%;
  background:var(--dc-red);animation:wot-blink 1.2s ease infinite;
}
.cts-live-dot-sm{
  display:inline-block;width:5px;height:5px;border-radius:50%;
  background:#fff;animation:wot-blink 1.2s ease infinite;flex-shrink:0;
}
.cts-title{
  font-family:'Inter Tight',sans-serif;font-weight:900;
  font-size:clamp(1.6rem,3.5vw,2.6rem);letter-spacing:-.04em;
  color:#fff;line-height:1;margin-bottom:10px;
}
.cts-sub{
  font-size:.68rem;color:rgba(255,255,255,.4);
  max-width:480px;margin:0 auto;line-height:1.7;
}
/* Grid */
.cts-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;margin-bottom:20px;
}
@media(max-width:860px){.cts-grid{grid-template-columns:1fr 1fr}}
@media(max-width:540px){.cts-grid{grid-template-columns:1fr}}
/* Cards */
.cts-card{
  background:#111114;
  border:1px solid rgba(255,255,255,.07);
  border-radius:14px;
  padding:20px 18px 18px;
  display:flex;flex-direction:column;gap:10px;
  transition:border-color .18s,transform .18s;
  position:relative;overflow:hidden;
}
.cts-card:hover{border-color:rgba(255,255,255,.14);transform:translateY(-2px)}
.cts-coming{opacity:.92}
.cts-live{
  border-color:rgba(245,196,0,.2);
  background:linear-gradient(135deg,#111114 0%,#151510 100%);
}
.cts-live:hover{border-color:rgba(245,196,0,.4)}
.cts-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.cts-icon{
  width:40px;height:40px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;flex-shrink:0;
}
/* Badges */
.cts-badge{
  font-size:.44rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  padding:3px 9px;border-radius:20px;
}
.cts-badge-soon{
  background:rgba(255,255,255,.06);
  color:rgba(255,255,255,.35);
  border:1px solid rgba(255,255,255,.08);
}
.cts-badge-live{
  background:rgba(45,181,75,.15);
  color:var(--dc-green);
  border:1px solid rgba(45,181,75,.25);
  display:flex;align-items:center;gap:4px;
}
/* Card content */
.cts-name{
  font-family:'Inter Tight',sans-serif;font-weight:800;
  font-size:.95rem;letter-spacing:-.02em;color:#fff;
}
.cts-desc{
  font-size:.62rem;color:rgba(255,255,255,.45);
  line-height:1.65;flex:1;
}
.cts-features{
  display:flex;gap:6px;flex-wrap:wrap;
}
.cts-features span{
  font-size:.5rem;font-weight:600;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.07);
  border-radius:4px;padding:3px 7px;
  color:rgba(255,255,255,.5);
}
/* Buttons */
.cts-notify-btn{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.5);
  font-size:.58rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  padding:9px 14px;border-radius:7px;cursor:pointer;
  transition:all .16s;text-align:center;
  font-family:'Inter',sans-serif;
}
.cts-notify-btn:hover{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.2)}
.cts-notify-btn.notified{
  background:rgba(45,181,75,.12);border-color:rgba(45,181,75,.25);
  color:var(--dc-green);cursor:default;
}
.cts-live-btn{
  background:var(--dc-yellow);color:#0c0c0e;
  font-size:.58rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  padding:10px 16px;border-radius:7px;text-align:center;text-decoration:none;
  transition:opacity .15s;display:block;
}
.cts-live-btn:hover{opacity:.88}
/* Notify strip */
.cts-notify-strip{
  background:#111114;border:1px solid rgba(255,255,255,.07);
  border-radius:12px;padding:20px 22px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
}
.cts-notify-title{
  font-family:'Inter Tight',sans-serif;font-weight:800;
  font-size:.9rem;color:#fff;margin-bottom:3px;letter-spacing:-.02em;
}
.cts-notify-sub{font-size:.6rem;color:rgba(255,255,255,.35)}
.cts-notify-form{display:flex;gap:0;flex:0 0 auto}
.cts-notify-input{
  padding:10px 14px;background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);border-right:none;
  border-radius:7px 0 0 7px;font-size:.68rem;color:#fff;outline:none;
  font-family:'Inter',sans-serif;width:200px;
}
.cts-notify-input::placeholder{color:rgba(255,255,255,.2)}
.cts-notify-input:focus{border-color:rgba(255,255,255,.25)}
.cts-notify-submit{
  background:var(--dc-red);color:#fff;border:none;
  padding:0 18px;border-radius:0 7px 7px 0;
  font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  cursor:pointer;transition:opacity .15s;font-family:'Inter',sans-serif;
}
.cts-notify-submit:hover{opacity:.85}


/* ══════════════════════════════════════
   NEWS STRIP
══════════════════════════════════════ */
.NEWS-STRIP{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;margin-bottom:28px;
}
@media(max-width:760px){.NEWS-STRIP{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.NEWS-STRIP{grid-template-columns:1fr}}
.ns-card{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;
  padding:14px 13px;display:flex;flex-direction:column;gap:5px;
  transition:border-color .15s,box-shadow .15s;cursor:pointer;
  text-decoration:none;
}
.ns-card:hover{border-color:rgba(255,255,255,.18);transform:translateY(-1px);}
.ns-cat{font-size:.48rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.ns-title{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.78rem;color:#fff;line-height:1.3;flex:1}
.ns-meta{font-size:.52rem;color:rgba(255,255,255,.35);font-weight:500;margin-top:2px}

/* ══════════════════════════════════════
   EVENTS LIST (gigs)
══════════════════════════════════════ */
.EVENTS-LIST{
  display:flex;flex-direction:column;gap:6px;margin-bottom:28px;
}
.el-row{
  display:grid;grid-template-columns:52px 64px 1fr auto;
  gap:12px;align-items:center;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;
  padding:11px 14px;text-decoration:none;
  transition:border-color .15s,box-shadow .15s;
}
.el-row:hover{border-color:#c0c0c8;box-shadow:0 3px 14px rgba(0,0,0,.06)}
.el-date{text-align:center}
.el-day{font-size:.44rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#999}
.el-num{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.5rem;color:#0c0c0e;line-height:1;letter-spacing:-.04em}
.el-img{width:64px;height:44px;border-radius:6px;overflow:hidden;flex-shrink:0}
.el-img img{width:100%;height:100%;object-fit:cover}
.el-body{min-width:0}
.el-title{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.78rem;color:#0c0c0e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.el-venue{font-size:.56rem;color:#888;margin-top:2px}
.el-venue i{font-size:.45rem;margin-right:3px}
.el-tags{display:flex;gap:6px;margin-top:5px}
.el-tags span{font-size:.46rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#f4f4f6;padding:2px 7px;border-radius:4px}
.el-price{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.75rem;color:#0c0c0e;white-space:nowrap;text-align:right;flex-shrink:0}
@media(max-width:600px){.el-row{grid-template-columns:44px 1fr auto}.el-img{display:none}}

/* ══════════════════════════════════════
   SPORT GRID
══════════════════════════════════════ */
.SPORT-GRID{
  display:grid;grid-template-columns:1.2fr 1fr;
  gap:10px;margin-bottom:28px;
}
@media(max-width:640px){.SPORT-GRID{grid-template-columns:1fr}}
.sg-main{
  position:relative;border-radius:12px;overflow:hidden;
  height:240px;cursor:pointer;display:block;text-decoration:none;
}
.sg-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sg-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.2) 60%,transparent 100%)}
.sg-body{position:absolute;bottom:0;left:0;right:0;padding:16px 14px}
.sg-league{font-size:.5rem;font-weight:700;letter-spacing:.08em;color:rgba(255,255,255,.6);margin-bottom:4px;display:flex;align-items:center;gap:4px}
.sg-title{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.2rem;color:#fff;line-height:1.1;letter-spacing:-.02em}
.sg-kickoff{font-size:.58rem;color:rgba(255,255,255,.6);margin-top:5px}
.sg-kickoff i{font-size:.5rem;margin-right:3px}
.sg-badge{position:absolute;top:12px;right:12px;font-size:.48rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:5px;color:#fff}
.sg-sidebar{display:flex;flex-direction:column;gap:8px}
.sg-sm{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;
  padding:12px 13px;display:flex;align-items:center;gap:10px;
  text-decoration:none;transition:border-color .15s,box-shadow .15s;flex:1;
}
.sg-sm:hover{border-color:#c0c0c8;box-shadow:0 2px 10px rgba(0,0,0,.06)}
.sg-sm-sport{font-size:1.1rem;flex-shrink:0;width:32px;text-align:center}
.sg-sm-body{flex:1;min-width:0}
.sg-sm-title{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.72rem;color:#0c0c0e;line-height:1.2}
.sg-sm-meta{font-size:.53rem;color:#999;margin-top:2px}
.sg-sm-pill{font-size:.48rem;font-weight:700;letter-spacing:.06em;padding:4px 9px;border-radius:5px;white-space:nowrap;flex-shrink:0}

/* ══════════════════════════════════════
   STORIES GRID (editorial)
══════════════════════════════════════ */
.STORIES-GRID{
  display:grid;grid-template-columns:1.4fr 1fr;
  gap:10px;margin-bottom:28px;
}
@media(max-width:640px){.STORIES-GRID{grid-template-columns:1fr}}
.stg-feat{
  position:relative;border-radius:12px;overflow:hidden;
  min-height:280px;display:block;text-decoration:none !important;
  background-size:cover;background-position:center;
}
.stg-feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.stg-feat:hover img,.stg-feat:hover{filter:brightness(1.05);}
.stg-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.1) 55%,transparent 100%)}
.stg-body{position:absolute;bottom:0;left:0;right:0;padding:18px 16px}
.stg-cat{font-size:.48rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:5px}
.stg-title{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.1rem;color:#fff;line-height:1.2;letter-spacing:-.02em}
.stg-meta{font-size:.55rem;color:rgba(255,255,255,.45);margin-top:6px}
.stg-list{display:flex;flex-direction:column;gap:8px}
.stg-item{
  display:grid;grid-template-columns:70px 1fr;gap:10px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;
  padding:10px;text-decoration:none !important;
  transition:border-color .15s,transform .15s;align-items:center;
}
.stg-item:hover{border-color:rgba(255,255,255,.15);transform:translateX(2px);}
.stg-item img{width:70px;height:50px;object-fit:cover;border-radius:6px;display:block;}
.stg-item-cat{font-size:.46rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:3px;}
.stg-item-title{font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.7rem;color:#fff;line-height:1.3;}
.stg-item-meta{font-size:.5rem;color:rgba(255,255,255,.35);margin-top:3px;}


/* ── Events page extra card states ──────────────────────────── */
.ev-card-noimg {
  padding:14px 16px;min-height:72px;
  display:flex;align-items:center;gap:10px;
  position:relative;
}
.ev-noimg-date {
  font-size:1.1rem;font-weight:800;color:rgba(255,255,255,.15);
  font-family:'Inter Tight',sans-serif;letter-spacing:-.02em;
  margin-left:auto;
}
.ev-feat-badge { display:none; } /* hidden - featured star was showing as dark box */
.ev-card.featured { border-color:rgba(245,196,0,.3); }
.ev-card.featured:hover { border-color:var(--dc-yellow); }

/* WOT calendar empty state handled in main block above */

/* ── MCR.TV click-to-play ────────────────────────────────────── */
#tv-player { position:absolute;inset:0;width:100%;height:100%; }

/* ── Better hero slider fallback ─────────────────────────────── */
.vs-slide {
  position:relative;
  background:linear-gradient(135deg,#0d0d14 0%,#1a1a2e 50%,#0d0d14 100%);
}
.vs-slide:not(:has(img)):not(:has(video)) .vs-scrim { display:none; }

/* ── Sidebar logo SVG ─────────────────────────────────────────── */
/* sb-logo consolidated above */

/* ── Single event page ───────────────────────────────────────── */
.ev-single-hero {
  height:320px;overflow:hidden;position:relative;border-radius:10px;
  background:linear-gradient(135deg,#1a1a2e,#0c0c0e);margin-bottom:28px;
}
.ev-single-hero img { width:100%;height:100%;object-fit:cover; }
.ev-single-hero-scrim { position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent); }
.ev-meta-grid {
  display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;
}
.ev-meta-item {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:8px;padding:14px 16px;
}
.ev-meta-label { font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.35);margin-bottom:5px; }
.ev-meta-val { font-size:.8rem;font-weight:600; }

/* ── Responsive fixes ────────────────────────────────────────── */
@media (max-width:900px) {
  .ev-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:600px) {
  .ev-grid { grid-template-columns:1fr; }
  .ev-meta-grid { grid-template-columns:1fr; }
}

/* ── Single page styles ──────────────────────────────────────── */
.back-link {
  display:inline-flex;align-items:center;gap:6px;
  font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
  color:rgba(255,255,255,.4);text-decoration:none;margin-bottom:16px;
  padding:6px 10px;border-radius:5px;border:1px solid rgba(255,255,255,.08);
  transition:all .15s;
}
.back-link:hover { color:#fff;border-color:rgba(255,255,255,.2); }
.ev-single-cat {
  font-size:.62rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.08em;margin-bottom:8px;
}
.ev-single-title {
  font-size:2rem;font-weight:900;line-height:1.15;margin:0 0 20px;
  font-family:'Inter Tight',sans-serif;
}
.ev-single-hero {
  height:380px;overflow:hidden;position:relative;
  border-radius:10px;margin-bottom:24px;
  background:#1a1a2e;
}
.ev-single-hero img { width:100%;height:100%;object-fit:cover;display:block; }
.ev-single-hero-scrim {
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 60%);
}
.ev-sold-banner {
  position:absolute;top:16px;right:16px;
  background:var(--dc-red);color:#fff;
  font-size:.65rem;font-weight:800;padding:6px 14px;
  border-radius:4px;text-transform:uppercase;letter-spacing:.08em;
}
.verified-badge {
  display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;background:#2DB54B;color:#fff;
  border-radius:50%;font-size:.6rem;font-weight:800;
  vertical-align:middle;margin-left:6px;
}
.single-content {
  font-size:.8rem;line-height:1.75;color:rgba(255,255,255,.8);
  margin:20px 0;
}
.single-content p { margin-bottom:16px; }
.single-content h2 { font-size:1.1rem;font-weight:800;margin:24px 0 12px; }
.single-content h3 { font-size:.9rem;font-weight:700;margin:20px 0 10px; }
.single-content strong { color:#fff;font-weight:700; }
.single-content a { color:var(--dc-red);text-decoration:none; }
.single-content a:hover { text-decoration:underline !important; }
.story-standfirst {
  font-size:.95rem;color:rgba(255,255,255,.6);line-height:1.6;
  margin:0 0 20px;font-style:italic;
}
.story-byline {
  display:flex;align-items:center;gap:10px;
  padding:14px 0;border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
  margin-bottom:20px;
}
.story-byline img { border-radius:50%;width:36px;height:36px; }
.ev-organiser {
  font-size:.7rem;color:rgba(255,255,255,.4);
  padding-top:16px;border-top:1px solid rgba(255,255,255,.06);
  margin-top:16px;
}
.ev-organiser a { color:rgba(255,255,255,.6); }

/* ── single-centre: replaces inline style on single.php CENTRE ── */
.single-centre {
  padding:0;
  max-width:none;
}
@media(max-width:900px){ .single-centre { padding:16px; } }
@media(max-width:480px){ .single-centre { padding:12px; } }

/* ── single.php mobile breakpoints ───────────────────────────── */
@media(max-width:600px){
  .ev-single-hero     { height:200px;margin-bottom:16px; }
  .ev-single-title    { font-size:1.5rem;margin-bottom:14px; }
  .story-standfirst   { font-size:.85rem; }
  .ev-meta-grid       { gap:8px;margin:14px 0; }
  .ev-meta-item       { padding:10px 12px; }
  .ev-meta-val        { font-size:.75rem; }
}
@media(max-width:400px){
  .ev-single-hero     { height:160px; }
  .ev-single-title    { font-size:1.25rem; }
  .ev-meta-grid       { grid-template-columns:1fr;gap:6px; }
  .story-byline       { gap:8px;padding:10px 0; }
  .story-byline img   { width:30px;height:30px; }
  .single-content     { font-size:.75rem; }
}

/* ─── Sidebar box (legacy single layout support) ──────────────── */
.ev-sidebar-box {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:8px;padding:16px;margin-bottom:12px;
}
.esb-title { font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.35);margin-bottom:12px; }
.esb-row { display:flex;align-items:flex-start;gap:8px;font-size:.72rem;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.04);color:rgba(255,255,255,.7); }
.esb-row:last-child { border-bottom:none; }
.esb-row i { width:14px;flex-shrink:0;margin-top:2px;color:rgba(255,255,255,.3); }
.esb-back { margin-top:8px; }
.esb-back a { font-size:.65rem;color:rgba(255,255,255,.4);text-decoration:none; }
.esb-back a:hover { color:#fff; }
.esm-item { display:flex;align-items:flex-start;gap:10px;padding:12px 16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:7px; }
.esm-label { font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.3);margin-bottom:3px; }
.esm-val { font-size:.75rem;font-weight:600; }
.esm-item i { margin-top:3px;font-size:.8rem;flex-shrink:0; }

/* (end) */

/* ═══════════════════════════════════════════════════════════════════
   EVENT SINGLE PAGE v2 - Advanced editorial layout
   ═══════════════════════════════════════════════════════════════════ */

/* Breadcrumb */
.evs-breadcrumb {
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;
  font-size:.65rem;color:rgba(255,255,255,.35);padding:18px 0 0;font-weight:500;
}
.evs-breadcrumb a { color:rgba(255,255,255,.35);transition:color .15s; }
.evs-breadcrumb a:hover { color:rgba(255,255,255,.8); }
.evs-bc-current { color:rgba(255,255,255,.6); }

/* Hero */
.evs-hero {
  position:relative;margin:16px -28px 0;height:400px;overflow:hidden;
}
@media(max-width:860px){
  .evs-hero { margin:12px 0 0; }
}
.evs-hero-img {
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transform:scale(1.04);transition:transform 8s ease;filter:brightness(.6) saturate(.9);
}
.evs-hero:hover .evs-hero-img { transform:scale(1.08); }
.evs-hero-scrim {
  position:absolute;inset:0;z-index:2;
  background:
    linear-gradient(to right, rgba(9,9,12,.9) 0%, rgba(9,9,12,.35) 55%, transparent 100%),
    linear-gradient(to top, rgba(9,9,12,.98) 0%, rgba(9,9,12,.15) 45%, transparent 70%);
}
.evs-sold-bar {
  position:absolute;top:16px;right:16px;z-index:4;
  background:rgba(0,0,0,.75);color:#fff;border:1px solid rgba(255,255,255,.2);
  font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  padding:5px 12px;border-radius:4px;backdrop-filter:blur(8px);
}
.evs-hero-body {
  position:absolute;bottom:0;left:0;right:0;z-index:3;
  padding:28px 28px 22px;
  display:grid;grid-template-columns:1fr auto;align-items:end;gap:20px;
}
.evs-hero-cat {
  display:inline-flex;align-items:center;gap:6px;
  color:#fff;font-size:.5rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  padding:4px 10px;border-radius:3px;margin-bottom:10px;
}
.evs-hero-title {
  font-family:'Inter Tight',sans-serif;font-weight:900;
  font-size:clamp(1.6rem,4vw,3rem);line-height:.98;
  letter-spacing:-.025em;color:#fff;margin-bottom:10px;
  text-shadow:0 2px 20px rgba(0,0,0,.4);
}
.evs-hero-meta {
  display:flex;flex-wrap:wrap;gap:10px;
  font-size:.68rem;color:rgba(255,255,255,.65);
}
.evs-hero-meta span { display:flex;align-items:center;gap:5px; }
.evs-hero-meta i { color:rgba(255,255,255,.3);font-size:.62rem; }
.evs-date-card {
  background:rgba(255,255,255,.08);backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.14);border-radius:10px;
  padding:12px 16px;text-align:center;flex-shrink:0;
  display:flex;flex-direction:column;gap:2px;
}
.evs-date-num { font-family:'Inter Tight',sans-serif;font-weight:900;font-size:2.4rem;color:#fff;line-height:1; }
.evs-date-mon { font-size:.55rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase; }
.evs-date-yr  { font-size:.5rem;color:rgba(255,255,255,.3); }

/* Body grid */
.evs-body {
  display:grid;grid-template-columns:1fr 300px;gap:28px;
  margin-top:24px;align-items:start;
  padding:0 28px 28px;
}
@media(max-width:860px){ .evs-body{grid-template-columns:1fr;} }

/* CTA row */
.evs-cta-row {
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:22px;
}
.evs-btn-tickets {
  display:inline-flex;align-items:center;gap:8px;
  color:#fff;font-size:.78rem;font-weight:700;
  padding:11px 20px;border-radius:8px;border:none;cursor:pointer;
  transition:filter .15s,transform .1s;text-decoration:none;
}
.evs-btn-tickets:hover { filter:brightness(1.12);transform:translateY(-1px); }
.evs-btn-full { width:100%;justify-content:center; }
.evs-price-tag {
  background:rgba(0,0,0,.2);border-radius:4px;
  padding:2px 8px;font-size:.7rem;
}
.evs-btn-secondary {
  display:inline-flex;align-items:center;gap:6px;
  background:transparent;color:rgba(255,255,255,.6);
  font-size:.72rem;font-weight:600;
  padding:10px 14px;border-radius:7px;
  border:1px solid rgba(255,255,255,.1);cursor:pointer;transition:all .15s;
}
.evs-btn-secondary:hover { color:#fff;border-color:rgba(255,255,255,.22); }
.evs-btn-sold {
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.06);color:rgba(255,255,255,.4);
  font-size:.78rem;font-weight:700;padding:11px 20px;border-radius:8px;
}

/* Facts grid */
.evs-facts {
  display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:24px;
}
.evs-fact {
  background:var(--dark3);border:1px solid rgba(255,255,255,.07);
  border-radius:var(--rl);padding:12px 14px;
}
.evs-fact--accent {
  border-color:rgba(var(--ac-rgb,255,255,255),.25);
  background:color-mix(in srgb, var(--ac,var(--dc-red)) 6%, var(--dark3));
}
.evs-fact-label {
  font-size:.55rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.35);margin-bottom:5px;
  display:flex;align-items:center;gap:5px;
}
.evs-fact-label i { font-size:.58rem; }
.evs-fact--accent .evs-fact-label { color:var(--ac,var(--dc-red)); }
.evs-fact-val {
  font-family:'Inter Tight',sans-serif;font-weight:700;
  font-size:.9rem;color:#fff;line-height:1.2;
}
.evs-fact-val small { font-family:inherit;font-weight:400;font-size:.65rem;color:rgba(255,255,255,.4);display:block;margin-top:2px; }
.evs-past-chip {
  display:inline-block;font-size:.52rem;font-weight:700;
  background:rgba(255,255,255,.08);color:rgba(255,255,255,.4);
  padding:1px 6px;border-radius:3px;margin-left:4px;
}

/* Section head */
.evs-section-head {
  font-size:.6rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(255,255,255,.3);margin-bottom:12px;
  display:flex;align-items:center;gap:8px;margin-top:24px;
}
.evs-section-head::after { content:'';flex:1;height:1px;background:rgba(255,255,255,.07); }

/* Description */
.evs-description {
  font-size:.86rem;color:rgba(255,255,255,.6);line-height:1.75;margin-bottom:4px;
}
.evs-description p { margin-bottom:12px; }
.evs-description p:last-child { margin-bottom:0; }
.evs-description strong,.evs-description b { color:#fff; }
.evs-description h2,.evs-description h3 { font-family:'Inter Tight',sans-serif;font-weight:800;color:#fff;margin:18px 0 8px; }
.evs-description a { color:var(--dc-blue); }

/* Getting there */
.evs-transport {
  background:var(--dark3);border:1px solid rgba(255,255,255,.07);
  border-radius:var(--rl);overflow:hidden;margin-bottom:4px;
}
.evs-transport-item {
  display:flex;align-items:flex-start;gap:12px;
  padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.05);font-size:.78rem;
}
.evs-transport-item:last-child { border-bottom:none; }
.evs-transport-icon {
  width:30px;height:30px;border-radius:7px;
  display:flex;align-items:center;justify-content:center;
  font-size:.72rem;flex-shrink:0;margin-top:1px;
}
.evs-transport-title { font-weight:700;color:#fff;margin-bottom:3px; }
.evs-transport-detail { font-size:.72rem;color:rgba(255,255,255,.5);line-height:1.55; }
.evs-transport-tip {
  display:inline-flex;align-items:center;gap:4px;
  font-size:.58rem;font-weight:700;color:var(--dc-green);margin-top:5px;
}

/* Venue block */
.evs-venue-block {
  display:flex;align-items:center;gap:12px;
  background:var(--dark3);border:1px solid rgba(255,255,255,.07);
  border-radius:var(--rl);overflow:hidden;text-decoration:none;
  transition:border-color .15s;margin-bottom:4px;
}
.evs-venue-block:hover { border-color:rgba(255,255,255,.18); }
.evs-venue-block img { width:80px;height:60px;object-fit:cover;flex-shrink:0; }
.evs-vb-body { padding:10px 12px; }
.evs-vb-name { font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.88rem;color:#fff;margin-bottom:2px; }
.evs-vb-address { font-size:.62rem;color:rgba(255,255,255,.4);margin-bottom:4px; }
.evs-vb-link { font-size:.62rem;font-weight:700;color:var(--dc-blue); }

/* Tags */
.evs-tags { display:flex;flex-wrap:wrap;gap:6px;margin-top:16px; }
.evs-tag {
  font-size:.58rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  background:var(--dark4);border:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.5);padding:4px 10px;border-radius:4px;
  transition:all .15s;text-decoration:none;
}
.evs-tag:hover { color:#fff;border-color:rgba(255,255,255,.2); }

/* Sidebar cards */
.evs-sidebar-card {
  background:var(--dark3);border:1px solid rgba(255,255,255,.07);
  border-radius:var(--rl);overflow:hidden;margin-bottom:14px;
}
.evs-ticket-card { border-color:rgba(var(--ac,255,107,0),.3); }
.evs-sc-head {
  padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.07);
  font-size:.58rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.35);display:flex;align-items:center;gap:6px;
}
.evs-ticket-card .evs-sc-head { border-color:rgba(255,255,255,.07); }
.evs-sc-body { padding:14px; }
.evs-price-big {
  padding:16px 14px 8px;display:flex;align-items:baseline;gap:4px;
}
.evs-price-from { font-size:.65rem;color:rgba(255,255,255,.35);margin-right:2px; }
.evs-price-amount {
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:2.2rem;color:#fff;line-height:1;
}
.evs-ticket-meta {
  display:flex;flex-direction:column;gap:5px;
  font-size:.68rem;color:rgba(255,255,255,.5);margin-top:10px;
  padding-top:10px;border-top:1px solid rgba(255,255,255,.07);
}
.evs-ticket-meta div { display:flex;align-items:center;gap:6px; }

/* Mini map */
.evs-mini-map { height:120px;background:var(--dark4); }
.evs-mini-map-embed { height:120px;overflow:hidden; }
.evs-mini-map-embed iframe { width:100%;height:100%;border:none;filter:brightness(.6) saturate(.4); }
.evs-venue-name { font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.92rem;color:#fff;margin-bottom:3px; }
.evs-venue-addr { font-size:.65rem;color:rgba(255,255,255,.45);margin-bottom:8px;line-height:1.5; }
.evs-venue-btns { display:flex;gap:6px; }
.evs-venue-btn {
  flex:1;text-align:center;font-size:.62rem;font-weight:700;
  padding:6px 10px;border-radius:5px;
  border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.55);
  transition:all .15s;
}
.evs-venue-btn:hover { color:#fff;border-color:rgba(255,255,255,.22); }

/* Weather */
.evs-weather-body { padding:12px 14px 0; }
.evs-weather-main { display:flex;align-items:center;justify-content:space-between;margin-bottom:8px; }
.evs-weather-temp { font-family:'Inter Tight',sans-serif;font-weight:900;font-size:2rem;color:#fff;line-height:1; }
.evs-weather-desc { font-size:.62rem;color:rgba(255,255,255,.4);margin-top:3px; }
.evs-weather-tip { font-size:.65rem;font-weight:600;color:var(--dc-green);padding:8px 14px 12px;border-top:1px solid rgba(255,255,255,.07); }

/* More events list */
.evs-more-list { padding:4px 0; }
.evs-more-item {
  display:flex;align-items:center;gap:10px;
  padding:9px 14px;border-bottom:1px solid rgba(255,255,255,.05);
  transition:background .1s;text-decoration:none;
}
.evs-more-item:last-child { border-bottom:none; }
.evs-more-item:hover { background:rgba(255,255,255,.03); }
.evs-more-date {
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.1rem;
  min-width:26px;text-align:center;line-height:1;
}
.evs-more-date small { display:block;font-size:.46rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.3); }
.evs-more-body { flex:1;min-width:0; }
.evs-more-title { font-size:.72rem;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.evs-more-sub { font-size:.58rem;color:rgba(255,255,255,.35);margin-top:1px; }
.evs-more-price { font-size:.65rem;font-weight:700;color:rgba(255,255,255,.5);white-space:nowrap; }

/* Ask Manc card */
.evs-ask-card .evs-sc-head { color:var(--dc-yellow); }

/* Related events */
.evs-related { margin-top:36px;padding-top:28px;border-top:1px solid rgba(255,255,255,.07); }
.evs-related-head {
  font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.3);margin-bottom:14px;
  display:flex;align-items:center;gap:8px;
}
.evs-related-head::after { content:'';flex:1;height:1px;background:rgba(255,255,255,.07); }
.evs-related-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:10px; }
@media(max-width:640px){ .evs-related-grid{grid-template-columns:1fr 1fr;} }
.evs-rel-card {
  background:var(--dark3);border:1px solid rgba(255,255,255,.07);
  border-radius:var(--rl);overflow:hidden;text-decoration:none;
  transition:border-color .15s,transform .15s;
}
.evs-rel-card:hover { border-color:rgba(255,255,255,.18);transform:translateY(-2px); }
.evs-rel-img { position:relative;height:110px;overflow:hidden;background:var(--dark4); }
.evs-rel-img img { width:100%;height:100%;object-fit:cover;transition:transform .3s; }
.evs-rel-card:hover .evs-rel-img img { transform:scale(1.07); }
.evs-rel-scrim { position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent 55%); }
.evs-rel-stripe { position:absolute;top:0;left:0;right:0;height:3px;z-index:2; }
.evs-rel-body { padding:10px 12px; }
.evs-rel-cat { font-size:.48rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px; }
.evs-rel-title { font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.8rem;color:#fff;line-height:1.2;margin-bottom:4px; }
.evs-rel-meta { font-size:.58rem;color:rgba(255,255,255,.35); }

/* Responsive */
@media(max-width:768px){
  .evs-hero{height:280px;margin:12px -18px 0;}
  .evs-hero-body{padding:18px 18px 14px;}
  .evs-date-card{display:none;}
  .evs-facts{grid-template-columns:1fr;}
}


/* ══════════════════════════════════════
   STATIC PAGE - SHARED FORM COMPONENTS
══════════════════════════════════════ */

/* Two-col grid for form fields */
.sf-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px 16px;
  margin-bottom:20px;
}
.sf-field { display:flex;flex-direction:column;gap:5px; }
.sf-field.sf-full { grid-column:1/-1; }
.sf-field label {
  font-size:.58rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.08em;color:rgba(255,255,255,.45);
}
.sf-field input,
.sf-field select,
.sf-field textarea {
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:7px;padding:10px 12px;
  font-size:.75rem;color:#fff;
  transition:border-color .15s,background .15s;
  font-family:inherit;
}
.sf-field input:focus,
.sf-field select:focus,
.sf-field textarea:focus {
  outline:none;
  border-color:rgba(255,255,255,.3);
  background:rgba(255,255,255,.08);
}
.sf-field select { appearance:none;cursor:pointer; }
.sf-field textarea { resize:vertical;min-height:110px; }

/* Status messages */
.sf-msg {
  margin-top:14px;padding:12px 16px;
  border-radius:8px;font-size:.72rem;
  display:flex;align-items:flex-start;gap:8px;
  line-height:1.5;
}
.sf-msg.sf-success {
  background:rgba(45,181,75,.12);
  border:1px solid rgba(45,181,75,.3);
  color:#4ade80;
}
.sf-msg.sf-error {
  background:rgba(220,38,38,.12);
  border:1px solid rgba(220,38,38,.3);
  color:#f87171;
}
.sf-note {
  font-size:.62rem;color:rgba(255,255,255,.4);
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:7px;padding:10px 14px;margin-bottom:16px;
  display:flex;align-items:flex-start;gap:8px;line-height:1.6;
}
.sf-submit { margin-top:4px; }

@media(max-width:500px){
  .sf-grid { grid-template-columns:1fr; }
  .sf-field.sf-full { grid-column:1; }
}

/* ══════════════════════════════════════
   CONTACT PAGE
══════════════════════════════════════ */
.contact-wrap {
  display:grid;grid-template-columns:1fr 340px;
  gap:28px;align-items:start;
}
.contact-form-col {}
.contact-info-col {}
.contact-info-col h3 {
  font-size:.7rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;color:rgba(255,255,255,.5);
  margin:0 0 12px;
}
.contact-list {
  list-style:none;padding:0;margin:0 0 8px;
  display:flex;flex-direction:column;gap:8px;
}
.contact-list li {
  display:flex;align-items:center;gap:10px;
  font-size:.72rem;color:rgba(255,255,255,.6);
}
.contact-list li i { width:16px;flex-shrink:0;color:rgba(255,255,255,.3); }
.contact-list li a { color:rgba(255,255,255,.7);text-decoration:none; }
.contact-list li a:hover { color:#fff; }
.contact-social-btn {
  display:inline-flex;align-items:center;gap:7px;
  font-size:.68rem;font-weight:600;
  color:rgba(255,255,255,.6);text-decoration:none;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);
  border-radius:6px;padding:7px 12px;margin:4px 4px 0 0;
  transition:all .15s;
}
.contact-social-btn:hover { color:#fff;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.18); }

@media(max-width:680px){
  .contact-wrap { grid-template-columns:1fr; }
}

/* ══════════════════════════════════════
   ABOUT PAGE
══════════════════════════════════════ */
.about-content {
  display:grid;grid-template-columns:1fr 260px;
  gap:28px;align-items:start;
}
.about-main {
  font-size:.8rem;line-height:1.75;color:rgba(255,255,255,.75);
}
.about-main h2 {
  font-size:1.1rem;font-weight:800;color:#fff;
  margin:28px 0 10px;font-family:'Inter Tight',sans-serif;
}
.about-main ul {
  padding-left:0;list-style:none;
  display:flex;flex-direction:column;gap:7px;margin:0 0 16px;
}
.about-main ul li {
  padding-left:18px;position:relative;
  color:rgba(255,255,255,.7);
}
.about-main ul li::before {
  content:'-';position:absolute;left:0;color:var(--dc-red);font-weight:700;
}
.about-main p { margin-bottom:14px; }
.about-main a { color:var(--dc-blue);text-decoration:none; }
.about-main a:hover { text-decoration:underline !important; }

.about-sidebar {
  display:flex;flex-direction:column;gap:10px;
}
.about-sidebar h3 {
  font-size:.65rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;color:rgba(255,255,255,.4);margin:0 0 6px;
}
.about-stat-box {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:10px;padding:16px;text-align:center;
}
.about-stat-box .asb-num {
  font-size:1.8rem;font-weight:900;color:#fff;
  font-family:'Inter Tight',sans-serif;letter-spacing:-.03em;line-height:1;
}
.about-stat-box .asb-label {
  font-size:.55rem;color:rgba(255,255,255,.4);margin-top:4px;text-transform:uppercase;
  font-weight:700;letter-spacing:.08em;
}

@media(max-width:640px){
  .about-content { grid-template-columns:1fr; }
  .about-sidebar { flex-direction:row;flex-wrap:wrap; }
  .about-stat-box { flex:1;min-width:110px; }
}

/* ══════════════════════════════════════
   ADVERTISE PAGE
══════════════════════════════════════ */
.advert-content {
  display:flex;flex-direction:column;gap:36px;
}
.advert-packages {
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.advert-pkg {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:12px;padding:24px 20px;
  display:flex;flex-direction:column;gap:12px;
  position:relative;transition:border-color .2s,box-shadow .2s;
}
.advert-pkg:hover {
  border-color:rgba(255,255,255,.16);
  box-shadow:0 4px 24px rgba(0,0,0,.2);
}
.advert-pkg.popular {
  border-color:rgba(220,38,38,.3);
  background:rgba(220,38,38,.06);
}
.pkg-badge {
  position:absolute;top:-10px;left:50%;transform:translateX(-50%);
  background:var(--dc-red);color:#fff;
  font-size:.5rem;font-weight:800;padding:4px 12px;
  border-radius:20px;text-transform:uppercase;letter-spacing:.08em;
  white-space:nowrap;
}
.pkg-tier {
  font-size:.62rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;
}
.pkg-price {
  font-size:1.6rem;font-weight:900;color:#fff;
  font-family:'Inter Tight',sans-serif;letter-spacing:-.03em;line-height:1;
}
.pkg-desc {
  font-size:.68rem;color:rgba(255,255,255,.5);line-height:1.6;
  flex:1;
}
.pkg-features {
  list-style:none;padding:0;margin:0;
  display:flex;flex-direction:column;gap:7px;
}
.pkg-features li {
  font-size:.68rem;color:rgba(255,255,255,.7);
  display:flex;align-items:flex-start;gap:8px;
}
.pkg-features li i { flex-shrink:0;margin-top:2px; }

.advert-stat-row {
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:12px;margin-top:12px;
}
.a-stat {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;padding:16px;text-align:center;
}
.a-stat-n {
  font-size:1.5rem;font-weight:900;font-family:'Inter Tight',sans-serif;
  letter-spacing:-.03em;line-height:1;margin-bottom:5px;
}
.a-stat-l {
  font-size:.55rem;color:rgba(255,255,255,.4);font-weight:600;
  text-transform:uppercase;letter-spacing:.07em;line-height:1.4;
}

@media(max-width:720px){
  .advert-packages { grid-template-columns:1fr; }
}
@media(max-width:560px){
  .advert-stat-row { grid-template-columns:1fr 1fr; }
}

/* ══════════════════════════════════════
   SUBMIT PAGE
══════════════════════════════════════ */
.submit-form-wrap {
  display:grid;grid-template-columns:1fr 280px;
  gap:28px;align-items:start;
}
.submit-sidebar {}
.submit-sidebar h3 {
  font-size:.65rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;color:rgba(255,255,255,.4);margin:0 0 10px;
}
.submit-sidebar ul {
  list-style:none;padding:0;margin:0 0 8px;
  display:flex;flex-direction:column;gap:8px;
}
.submit-sidebar ul li {
  font-size:.7rem;color:rgba(255,255,255,.65);
  display:flex;align-items:center;gap:8px;
}
.submit-sidebar a { color:var(--dc-blue);text-decoration:none; }
.submit-sidebar a:hover { text-decoration:underline; }

@media(max-width:680px){
  .submit-form-wrap { grid-template-columns:1fr; }
  .submit-sidebar { order:2; }
}

/* ══════════════════════════════════════
   pg-title FONT REDUCTION - 375px
══════════════════════════════════════ */
@media(max-width:375px){
  .pg-title      { font-size:1.45rem; }
  .pg-desc       { font-size:.72rem; }
  .pg-header     { padding:18px 0 16px; }
}

/* Hood image placeholder (shown when no WP media or local JPG exists) */
.hood-img-placeholder {
  position:absolute;inset:0;
  background:linear-gradient(135deg,#1a1a2e 0%,#0c0c14 100%);
}


/* ══════════════════════════════════════
   PASS-2 - ALL REMAINING MISSING CLASSES
══════════════════════════════════════ */

/* ── btn-lg modifier ─────────────────────────────────────────── */
.btn-lg { padding:13px 24px;font-size:.75rem; }

/* ── submit-form (the <form> itself) ─────────────────────────── */
.submit-form { width:100%; }

/* ── content-body (single.php prose wrapper) ─────────────────── */
.content-body {
  font-size:.8rem;line-height:1.8;color:rgba(255,255,255,.75);
}
.content-body p  { margin-bottom:14px; }
.content-body h2 { font-size:1.1rem;font-weight:800;color:#fff;margin:24px 0 10px;font-family:'Inter Tight',sans-serif; }
.content-body h3 { font-size:.9rem;font-weight:700;color:#fff;margin:18px 0 8px; }
.content-body a  { color:var(--dc-blue);text-decoration:none; }
.content-body a:hover { text-decoration:underline; }
.content-body ul,
.content-body ol { padding-left:20px;margin-bottom:14px; }
.content-body li { margin-bottom:6px; }

/* ── legal-content ───────────────────────────────────────────── */
.legal-content {
  font-size:.78rem;line-height:1.85;color:rgba(255,255,255,.7);
}
.legal-content h2 { font-size:1rem;font-weight:800;color:#fff;margin:24px 0 10px;font-family:'Inter Tight',sans-serif; }
.legal-content h3 { font-size:.85rem;font-weight:700;color:#fff;margin:18px 0 8px; }
.legal-content p  { margin-bottom:12px; }
.legal-content a  { color:var(--dc-blue);text-decoration:none; }
.legal-content a:hover { text-decoration:underline; }

/* ── advert-stats wrapper ────────────────────────────────────── */
.advert-stats {}
.advert-stats h2 {
  font-size:1.1rem;font-weight:800;color:#fff;
  font-family:'Inter Tight',sans-serif;margin:0 0 16px;
}

/* ── no-content-notice ───────────────────────────────────────── */
.no-content-notice {
  padding:48px 24px;text-align:center;
  font-size:.75rem;color:rgba(255,255,255,.35);
  background:rgba(255,255,255,.02);border:1px dashed rgba(255,255,255,.08);
  border-radius:10px;
}
.no-content-notice a { color:var(--dc-blue);text-decoration:none; }
.no-content-notice a:hover { text-decoration:underline; }

/* ── hood-hero (neighbourhood page) ─────────────────────────── */
.hood-hero {
  position:relative;
  border-radius:var(--rx);overflow:hidden;
  margin-bottom:24px;
}

/* ── Bento Featured (BF) cards ───────────────────────────────── */
.BF {
  position:relative;overflow:hidden;border-radius:var(--rl);
  display:block;text-decoration:none;
  background:#111118 center/cover no-repeat;
  min-height:220px;
}
.bf-scrim {
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.1) 60%,transparent 100%);
}
.bf-body {
  position:absolute;bottom:0;left:0;right:0;
  padding:16px 18px;z-index:2;
}
.bf-cat {
  font-size:.5rem;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;margin-bottom:5px;
}
.bf-title {
  font-family:'Inter Tight',sans-serif;font-weight:900;
  font-size:1rem;color:#fff;line-height:1.2;letter-spacing:-.02em;
}

/* ── Right panel - events + newsletter + pulse ───────────────── */
.rp-evlist {
  display:flex;flex-direction:column;gap:3px;
}
.rp-ev {
  display:flex;align-items:flex-start;gap:8px;
  padding:7px 0;border-bottom:1px solid rgba(255,255,255,.05);
  text-decoration:none;
  transition:opacity .15s;
}
.rp-ev:last-child { border-bottom:none; }
.rp-ev:hover { opacity:.75; }
.rp-ev-dot {
  width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-top:5px;
}
.rp-ev-body { flex:1;min-width:0; }
.rp-ev-title {
  font-size:.68rem;font-weight:700;color:#fff;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;
}
.rp-ev-meta {
  font-size:.55rem;color:rgba(255,255,255,.4);margin-top:2px;
}
.rp-nl {
  background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);
  border-radius:8px;padding:12px;
}
.rp-nl-copy {
  font-size:.6rem;color:rgba(255,255,255,.45);margin-bottom:8px;line-height:1.5;
}
.rp-nl-form {
  display:flex;gap:5px;
}
.rp-nl-form input {
  flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);
  border-radius:5px;padding:7px 10px;font-size:.65rem;color:#fff;outline:none;
}
.rp-nl-form input:focus { border-color:rgba(255,255,255,.25); }
.rp-nl-form button {
  background:var(--dc-red);border:none;border-radius:5px;
  color:#fff;font-size:.65rem;font-weight:700;padding:7px 12px;cursor:pointer;
}
.rp-pulse { display:flex;flex-direction:column;gap:8px; }

/* ── Sport grid sidebar items (sg-) ──────────────────────────── */
.sg-list { display:flex;flex-direction:column;gap:6px; }
.sg-item {
  display:grid;grid-template-columns:56px 1fr;gap:8px;
  text-decoration:none;align-items:center;
  padding:6px;border-radius:7px;
  border:1px solid rgba(255,255,255,.05);
  transition:border-color .15s;
}
.sg-item:hover { border-color:rgba(255,255,255,.12); }
.sg-item img { width:56px;height:40px;object-fit:cover;border-radius:5px; }
.sg-item-body {}
.sg-item-cat {
  font-size:.46rem;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;margin-bottom:2px;
}
.sg-item-title {
  font-size:.65rem;font-weight:700;color:#fff;line-height:1.3;
}
.sg-meta { font-size:.55rem;color:rgba(255,255,255,.35);margin-top:2px; }

/* ── Sponsors bar (sp-) ───────────────────────────────────────── */
.SPONSORS {
  padding:28px 0;
  border-top:1px solid rgba(255,255,255,.07);
}
.sp-inner {
  display:flex;flex-wrap:wrap;align-items:center;
  justify-content:center;gap:12px 20px;
  padding:14px 0;
}
.sp-item {
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;opacity:.45;transition:opacity .2s;
}
.sp-item:hover { opacity:.85; }
.sp-item img { height:28px;width:auto;filter:grayscale(1) brightness(5); }
.sp-name {
  font-size:.6rem;font-weight:700;color:rgba(255,255,255,.5);
  letter-spacing:.04em;white-space:nowrap;
}

/* ── stg-item-body (stories grid list items) ─────────────────── */
.stg-item-body {}
.stg-item-cat {
  font-size:.46rem;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;margin-bottom:3px;
}
.stg-item-title {
  font-family:'Inter Tight',sans-serif;font-weight:700;
  font-size:.7rem;color:#0c0c0e;line-height:1.3;
}
.stg-item-meta { font-size:.5rem;color:#999;margin-top:3px; }

/* ── Story cards (used across category templates) ────────────── */
.STORIES {
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:10px;margin-bottom:22px;
}
@media(max-width:500px){ .STORIES { grid-template-columns:1fr; } }

.story-card {
  display:grid;grid-template-columns:90px 1fr;gap:10px;
  text-decoration:none;align-items:center;
  background:var(--dark2);border:1px solid rgba(255,255,255,.07);
  border-radius:var(--rl);padding:10px;
  transition:border-color .15s,box-shadow .15s;
}
.story-card:hover { border-color:rgba(255,255,255,.14);box-shadow:0 2px 10px rgba(0,0,0,.08); }
.story-img { flex-shrink:0; }
.story-img img { width:90px;height:64px;object-fit:cover;border-radius:6px;display:block; }
.story-body {}
.story-cat {
  font-size:.46rem;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;margin-bottom:3px;
}
.story-title {
  font-family:'Inter Tight',sans-serif;font-weight:700;
  font-size:.72rem;color:#fff;line-height:1.3;
}
.story-meta { font-size:.52rem;color:rgba(255,255,255,.4);margin-top:4px; }

/* ── Story grid card (card-list.php) ─────────────────────────── */
.story-grid-card {
  background:var(--dark2);border:1px solid rgba(255,255,255,.07);
  border-radius:var(--rl);overflow:hidden;
  transition:border-color .15s,box-shadow .15s;
}
.story-grid-card:hover { border-color:rgba(255,255,255,.14);box-shadow:0 2px 12px rgba(0,0,0,.08); }
.sgc-img { display:block;aspect-ratio:16/9;overflow:hidden; }
.sgc-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.story-grid-card:hover .sgc-img img { transform:scale(1.04); }
.sgc-body { padding:14px 16px; }
.sgc-cat {
  font-size:.46rem;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;margin-bottom:5px;
}
.sgc-title {
  font-family:'Inter Tight',sans-serif;font-weight:800;
  font-size:.82rem;color:#fff;line-height:1.3;margin-bottom:6px;
}
.sgc-title a { color:inherit;text-decoration:none; }
.sgc-sub {
  font-size:.65rem;color:rgba(255,255,255,.5);
  line-height:1.6;margin-bottom:8px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.sgc-meta { font-size:.52rem;color:rgba(255,255,255,.35); }

/* ── Venue card (directory / food / neighbourhood) ───────────── */
.venue-grid {
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:10px;margin-bottom:22px;
}
@media(max-width:720px){ .venue-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:440px){ .venue-grid { grid-template-columns:1fr; } }

.venue-card {
  background:var(--dark2);border:1px solid rgba(255,255,255,.07);
  border-radius:var(--rl);overflow:hidden;
  transition:border-color .15s,box-shadow .15s;
  display:flex;flex-direction:column;
}
.venue-card:hover { border-color:rgba(255,255,255,.14);box-shadow:0 2px 12px rgba(0,0,0,.1); }
.venue-card-img {
  display:block;aspect-ratio:16/9;overflow:hidden;position:relative;
}
.venue-card-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.venue-card:hover .venue-card-img img { transform:scale(1.04); }
.v-verified {
  position:absolute;top:8px;right:8px;
  background:var(--dc-green);color:#fff;
  font-size:.48rem;font-weight:800;padding:3px 8px;
  border-radius:3px;text-transform:uppercase;letter-spacing:.06em;
}
.venue-card-body { padding:14px;flex:1;display:flex;flex-direction:column;gap:5px; }
.venue-card-head { display:flex;align-items:flex-start;justify-content:space-between;gap:8px; }
.venue-card-name { font-size:.8rem;font-weight:800;line-height:1.2; }
.venue-card-name a { color:#fff;text-decoration:none; }
.venue-card-name a:hover { color:var(--dc-blue); }
.venue-card-price { font-size:.65rem;color:rgba(255,255,255,.4);flex-shrink:0; }
.venue-card-area { font-size:.6rem;color:rgba(255,255,255,.45); }
.venue-card-cuisine { font-size:.6rem;color:rgba(255,255,255,.45); }
.venue-card-rating { font-size:.6rem;color:var(--dc-yellow); }
.venue-card-exc {
  font-size:.65rem;color:rgba(255,255,255,.5);line-height:1.5;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  flex:1;
}
.venue-hours { font-size:.6rem;color:rgba(255,255,255,.4); }
.venue-card-ctas { display:flex;gap:6px;margin-top:auto;padding-top:8px; }

/* ── Filter rows (dir-filters, fd-filters) ───────────────────── */
.dir-filters,
.fd-filters {
  display:flex;flex-wrap:wrap;gap:8px;
  margin-bottom:18px;align-items:center;
}
.dir-filters input[type=search],
.fd-filters input[type=search],
.dir-filters select,
.fd-filters select {
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  border-radius:7px;padding:9px 12px;font-size:.7rem;color:#fff;
  outline:none;font-family:inherit;
}
.dir-filters input[type=search] { min-width:180px; }
.dir-filters input[type=search]:focus,
.fd-filters input[type=search]:focus,
.dir-filters select:focus,
.fd-filters select:focus { border-color:rgba(255,255,255,.3); }
.dir-filters select,
.fd-filters select { appearance:none;cursor:pointer;padding-right:28px; }

/* ── Video wall (vwall-) used in TV and Videos pages ─────────── */
.VWALL {
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:10px;margin-bottom:22px;
}
@media(max-width:600px){ .VWALL { grid-template-columns:1fr 1fr; } }
@media(max-width:380px){ .VWALL { grid-template-columns:1fr; } }

.vwall-card {
  background:var(--dark2);border:1px solid rgba(255,255,255,.07);
  border-radius:var(--rl);overflow:hidden;cursor:pointer;
  transition:border-color .15s,box-shadow .15s;
}
.vwall-card:hover { border-color:rgba(255,255,255,.18);box-shadow:0 2px 14px rgba(0,0,0,.15); }
.vwall-thumb {
  position:relative;aspect-ratio:16/9;overflow:hidden;
}
.vwall-thumb img { width:100%;height:100%;object-fit:cover;display:block; }
.vwall-play {
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.35);opacity:0;transition:opacity .2s;
}
.vwall-card:hover .vwall-play { opacity:1; }
.vwall-play i { font-size:1.6rem;color:#fff; }
.vwall-dur {
  position:absolute;bottom:6px;right:7px;
  background:rgba(0,0,0,.75);color:#fff;
  font-size:.5rem;font-weight:700;padding:2px 6px;border-radius:3px;
}
.vwall-body { padding:10px 12px; }
.vwall-cat {
  font-size:.48rem;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--dc-red);margin-bottom:4px;
}
.vwall-title {
  font-family:'Inter Tight',sans-serif;font-weight:700;
  font-size:.74rem;color:#fff;line-height:1.3;
}

/* ── TV page extras ───────────────────────────────────────────── */
.tv-click-play {} /* styled inline - just needs class to exist for JS targeting */
.tv-meta {
  font-size:.68rem;color:rgba(255,255,255,.5);padding:8px 0;line-height:1.5;
}
.tv-tabs {
  display:flex;gap:2px;margin-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.tv-epg-col {
  flex:1;overflow-y:auto;max-height:480px;
  border-left:1px solid rgba(255,255,255,.06);
}

/* ── Hero slider extras (vs-cta, vs-weather) ─────────────────── */
.vs-cta {
  position:absolute;bottom:60px;right:28px;z-index:10;
}
.vs-cta-btn {
  display:inline-flex;align-items:center;gap:7px;
  background:#000;color:#fff;
  font-size:.7rem;font-weight:800;padding:11px 20px;
  border-radius:6px;text-decoration:none;letter-spacing:.04em;
  transition:background .15s;
}
.vs-cta-btn:hover { background:#1a1a1a; }
.vs-weather {
  position:absolute;top:14px;right:14px;z-index:10;
  background:rgba(0,0,0,.45);backdrop-filter:blur(6px);
  color:rgba(255,255,255,.8);font-size:.62rem;font-weight:600;
  padding:5px 11px;border-radius:20px;
  border:1px solid rgba(255,255,255,.12);
}

/* ── WOT legend + week-strip dots ───────────────────────────── */
.wot-legend { display:flex;gap:12px;flex-wrap:wrap; }
.wot-leg-item {
  display:flex;align-items:center;gap:5px;
  font-size:.55rem;color:rgba(255,255,255,.5);
}
.wot-leg-dot {
  width:7px;height:7px;border-radius:50%;flex-shrink:0;
}

/* ── Sitemap ──────────────────────────────────────────────────── */
.sitemap-grid {
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:20px 28px;margin-bottom:28px;
}
.sm-section h3 {
  font-size:.65rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;color:rgba(255,255,255,.4);
  margin:0 0 10px;
}
.sm-section ul {
  list-style:none;padding:0;margin:0;
  display:flex;flex-direction:column;gap:6px;
}
.sm-section ul li a {
  font-size:.72rem;color:rgba(255,255,255,.6);text-decoration:none;
}
.sm-section ul li a:hover { color:#fff; }
@media(max-width:640px){ .sitemap-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:360px){ .sitemap-grid { grid-template-columns:1fr; } }

/* ── Sidebar newsletter + footer (sidebar-nav.php) ───────────── */
.sb-nl {
  padding:12px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:8px;margin:8px 12px;
}
.sb-nl-label {
  font-size:.58rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;color:rgba(255,255,255,.5);margin-bottom:3px;
}
.sb-nl-sub { font-size:.58rem;color:rgba(255,255,255,.35);margin-bottom:8px;line-height:1.4; }
.sb-nl-form {
  display:flex;gap:5px;
}
.sb-nl-form input {
  flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);
  border-radius:5px;padding:7px 8px;font-size:.62rem;color:#fff;outline:none;
}
.sb-nl-form input:focus { border-color:rgba(255,255,255,.25); }
.sb-nl-form button {
  background:var(--dc-red);border:none;border-radius:5px;
  color:#fff;font-size:.62rem;font-weight:700;padding:7px 10px;cursor:pointer;
  white-space:nowrap;
}
.sb-footer {
  display:flex;flex-wrap:wrap;gap:4px 10px;
  padding:8px 12px 4px;
}
.sb-footer a {
  font-size:.58rem;color:rgba(255,255,255,.3);text-decoration:none;
}
.sb-footer a:hover { color:rgba(255,255,255,.7); }
.sb-dotcity {
  font-size:.55rem;color:rgba(255,255,255,.2);padding:0 12px 10px;
}
.sb-dotcity a { color:rgba(255,255,255,.35);text-decoration:none; }
.sb-dotcity a:hover { color:rgba(255,255,255,.6); }

/* ── Ask Manc AI chatbot (sb-clippy) ─────────────────────────── */
.sb-clippy {
  margin:6px 12px 0;
}
.sb-clippy-trigger {
  display:flex;align-items:center;gap:7px;cursor:pointer;
  padding:7px 10px;border-radius:7px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  transition:background .15s;
}
.sb-clippy-trigger:hover { background:rgba(255,255,255,.07); }
.sb-clippy-icon { font-size:.9rem;line-height:1; }
.sb-clippy-label { font-size:.62rem;font-weight:700;color:rgba(255,255,255,.6); }
.sb-clippy-bubble {
  display:none;
  margin-top:6px;padding:10px 12px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
}
.sb-clippy-bubble.open { display:block; }
.sb-clippy-msg { font-size:.65rem;color:rgba(255,255,255,.6);margin-bottom:8px;line-height:1.5; }
.sb-clippy-btns { display:flex;gap:6px;flex-wrap:wrap; }
.sb-clippy-btns button {
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  border-radius:5px;color:#fff;font-size:.62rem;font-weight:600;
  padding:6px 10px;cursor:pointer;transition:background .15s;
}
.sb-clippy-btns button:hover { background:rgba(255,255,255,.14); }

/* ── City Tools - notify strip extras ───────────────────────── */
.cts-notify-left {
  flex:1;min-width:0;
}
.cts-bottom-strip {
  display:flex;align-items:center;justify-content:space-between;
  gap:12px;flex-wrap:wrap;
  padding:14px 16px;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);border-radius:8px;
  margin-top:16px;
}
.cts-strip-btn {
  background:var(--dc-blue);border:none;border-radius:6px;
  color:#fff;font-size:.7rem;font-weight:700;padding:9px 16px;
  cursor:pointer;white-space:nowrap;flex-shrink:0;
  transition:background .15s;
}
.cts-strip-btn:hover { background:#1445d4; }

/* ── sec-title (section heading in food/directory) ───────────── */
.sec-title {
  font-size:.62rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.12em;color:rgba(255,255,255,.4);
  margin:24px 0 10px;
}

/* ═══════════════════════════════════════════════════════════════════
   SINGLE.PHP - STORY EDITORIAL LAYOUT v9
   ═══════════════════════════════════════════════════════════════════ */

/* CENTRE override for story pages - dark background, readable width */
.single-template-default .CENTRE,
.single .CENTRE {
  background:var(--dark2);
}

/* Story article wrapper */
.story-article {
  padding-bottom:40px;
  border-bottom:1px solid rgba(255,255,255,.07);
  margin-bottom:48px;
}

/* Eyebrow category label above headline */
.story-eyebrow {
  font-size:.62rem;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;margin-bottom:14px;
}

/* Headline */
.story-headline {
  font-family:'Inter Tight',sans-serif;
  font-size:2.2rem;font-weight:900;line-height:1.1;
  margin:0 0 18px;color:#fff;
  letter-spacing:-.02em;
}
@media(max-width:600px){.story-headline{font-size:1.65rem;}}
@media(max-width:400px){.story-headline{font-size:1.35rem;}}

/* Standfirst */
.story-standfirst {
  font-size:1.05rem;line-height:1.6;
  color:rgba(255,255,255,.6);
  margin:0 0 24px;font-style:italic;
  border-left:3px solid rgba(255,255,255,.12);
  padding-left:16px;
}

/* Byline row */
.story-byline {
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  padding:16px 0;
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
  margin-bottom:28px;
}
.story-byline-avatar {
  width:44px;height:44px;border-radius:50%;
  object-fit:cover;flex-shrink:0;
  background:rgba(255,255,255,.08);
}
.story-byline-meta {
  display:flex;flex-direction:column;gap:3px;flex:1;min-width:0;
}
.story-byline-name {
  font-size:.8rem;font-weight:700;color:#fff;
}
.story-byline-detail {
  font-size:.68rem;color:rgba(255,255,255,.4);
  display:flex;align-items:center;gap:6px;
}
.story-byline-sep {
  opacity:.4;
}
.story-cat-pill {
  font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:4px 10px;border-radius:20px;border:1px solid;
  flex-shrink:0;
}

/* Hero image */
.story-hero-img {
  border-radius:10px;overflow:hidden;margin-bottom:32px;
}
.story-hero-img img {
  width:100%;height:auto;display:block;
}

/* Body text */
.story-body {
  font-size:.95rem;line-height:1.85;
  color:rgba(255,255,255,.82);
  margin:0;
}
.story-body p { margin-bottom:20px; }
.story-body h2 {
  font-family:'Inter Tight',sans-serif;
  font-size:1.25rem;font-weight:800;
  margin:36px 0 14px;color:#fff;
  letter-spacing:-.01em;
}
.story-body h3 {
  font-size:1rem;font-weight:700;
  margin:28px 0 10px;color:rgba(255,255,255,.9);
}
.story-body blockquote {
  border-left:3px solid var(--dc-red);
  padding:12px 20px;margin:28px 0;
  background:rgba(255,255,255,.03);
  border-radius:0 8px 8px 0;
  font-style:italic;font-size:1rem;
  color:rgba(255,255,255,.7);
}
.story-body ul,.story-body ol {
  padding-left:22px;margin-bottom:20px;
}
.story-body li {margin-bottom:8px;}
.story-body a {color:var(--dc-red);text-decoration:none;}
.story-body a:hover {text-decoration:underline;}
.story-body strong {color:#fff;font-weight:700;}
.story-body img {
  width:100%;border-radius:8px;
  margin:16px 0;display:block;
}

/* Story footer - author credit + share */
.story-footer {
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;flex-wrap:wrap;
  padding:24px 0 0;
  margin-top:32px;
  border-top:1px solid rgba(255,255,255,.08);
}
.story-footer-author {
  display:flex;align-items:center;gap:12px;
}
.story-footer-avatar {
  width:48px;height:48px;border-radius:50%;
  object-fit:cover;background:rgba(255,255,255,.08);
}
.story-footer-by {
  font-size:.6rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:rgba(255,255,255,.3);
  margin-bottom:3px;
}
.story-footer-name {
  font-size:.82rem;font-weight:700;color:#fff;
}
.story-share {
  display:flex;align-items:center;gap:8px;
}
.story-share-label {
  font-size:.6rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:rgba(255,255,255,.3);
  margin-right:2px;
}
.story-share-btn {
  display:flex;align-items:center;justify-content:center;
  width:34px;height:34px;border-radius:50%;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.5);
  text-decoration:none;font-size:.75rem;
  transition:all .15s;cursor:pointer;
  font-family:inherit;
}
.story-share-btn:hover {
  background:rgba(255,255,255,.12);
  color:#fff;border-color:rgba(255,255,255,.2);
}

/* Related stories */
.story-related { margin-top:8px; }
.story-related-head {
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:20px;
}
.story-related-title {
  font-size:.65rem;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;color:rgba(255,255,255,.4);
}
.story-related-all {
  font-size:.65rem;font-weight:700;
  color:rgba(255,255,255,.4);text-decoration:none;
  transition:color .15s;
}
.story-related-all:hover {color:#fff;}
.story-related-grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
}
@media(max-width:600px){.story-related-grid{grid-template-columns:1fr;gap:12px;}}
.rel-card {
  display:block;text-decoration:none;
  border-radius:10px;overflow:hidden;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  transition:border-color .15s,transform .15s;
}
.rel-card:hover {
  border-color:rgba(255,255,255,.15);
  transform:translateY(-2px);
}
.rel-card-img {
  height:120px;overflow:hidden;
}
.rel-card-img img {
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .3s;
}
.rel-card:hover .rel-card-img img {transform:scale(1.04);}
.rel-card-body {padding:12px;}
.rel-card-cat {
  font-size:.55rem;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;margin-bottom:5px;
}
.rel-card-title {
  font-size:.78rem;font-weight:700;color:rgba(255,255,255,.9);
  line-height:1.35;margin-bottom:6px;
}
.rel-card-date {
  font-size:.6rem;color:rgba(255,255,255,.3);
}

/* Misc fixes */
.btn-tickets {
  font-size:.8rem;padding:14px 28px;
  margin-bottom:28px;display:inline-flex;gap:8px;
  align-items:center;
}
.ev-sold-inline {
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  padding:14px 28px;border-radius:6px;font-size:.8rem;
  color:rgba(255,255,255,.4);margin-bottom:28px;
}
.ev-single-hero--gradient {
  background:linear-gradient(135deg,rgba(30,10,60,.9),#0c0c0e);
}
.ev-single-hero-text {
  padding:40px 32px;
  position:relative;z-index:1;
}
.ev-single-cat-pill {
  font-size:.6rem;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;margin-bottom:12px;
}
.ev-hero-title {
  font-family:'Inter Tight',sans-serif;
  font-size:2rem;font-weight:900;line-height:1.1;color:#fff;margin:0 0 10px;
}
.ev-hero-date {
  font-size:.75rem;color:rgba(255,255,255,.5);
}
.venue-rating-row {
  font-size:1.1rem;margin-bottom:16px;display:flex;align-items:center;gap:8px;
}
.venue-rating-num {
  font-size:.65rem;color:rgba(255,255,255,.4);
}
.venue-cta-row {
  display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap;
}
.venue-hours {margin-top:28px;}
.venue-hours-label {
  font-size:.65rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.1em;color:rgba(255,255,255,.35);
  margin-bottom:12px;display:flex;align-items:center;gap:7px;
}
.venue-hours-row {
  font-size:.78rem;padding:8px 0;
  border-bottom:1px solid rgba(255,255,255,.05);
  color:rgba(255,255,255,.7);
}
.single-content--empty {
  color:rgba(255,255,255,.3);font-size:.78rem;
  padding:20px 0;border-top:1px solid rgba(255,255,255,.07);
  margin-top:20px;
}

/* ═══════════════════════════════════════════════════════════════════
   ADVANCED PAGE TEMPLATES - v9
   ═══════════════════════════════════════════════════════════════════ */

/* ── Cat page centre override - higher specificity than .CENTRE ─── */
.CENTRE.cat-page-centre,
main.cat-page-centre {
  padding:0;
  background:var(--dark2) !important;
  color:rgba(255,255,255,.85);
}
/* white-bg wins over cat-page-centre dark (3-class beats 2-class !important) */
.CENTRE.cat-page-centre.white-bg,
main.cat-page-centre.white-bg {
  background:#ffffff !important;
  color:#0c0c0e;
}

/* ── Category hero banner ─────────────────────────────────────── */
.cat-hero {
  position:relative;padding:36px 32px 32px;
  background:var(--dark3);
  border-bottom:1px solid rgba(255,255,255,.06);
  overflow:hidden;
}
.cat-hero--minimal { padding:24px 32px 20px; }
.cat-hero-glow {
  position:absolute;top:-60px;right:-60px;
  width:300px;height:300px;border-radius:50%;
  background:var(--cat-col,#1A56FF);
  opacity:.06;filter:blur(60px);pointer-events:none;
}
.cat-hero-content { position:relative;z-index:1; }
.cat-hero-eyebrow {
  font-size:.58rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:var(--cat-col,var(--dc-blue));margin-bottom:10px;
}
.cat-hero-title {
  font-family:'Inter Tight',sans-serif;
  font-size:2rem;font-weight:900;line-height:1.1;color:#fff;
  margin:0 0 14px;letter-spacing:-.02em;
}
.cat-hero-stats {
  display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap;
}
.cat-hero-stat { display:flex;align-items:baseline;gap:5px; }
.cat-hero-stat-num {
  font-size:1.1rem;font-weight:900;color:#fff;
  font-family:'Inter Tight',sans-serif;
}
.cat-hero-stat-lbl { font-size:.65rem;color:rgba(255,255,255,.4); }
.cat-hero-stat-live { color:var(--cat-col,var(--dc-blue)); }
.cat-hero-stat-sep { color:rgba(255,255,255,.2); }
.cat-hero-quick {
  display:flex;gap:8px;flex-wrap:wrap;margin-top:20px;
}
.cat-hero-btn {
  display:inline-flex;align-items:center;gap:6px;
  padding:9px 18px;border-radius:6px;font-size:.72rem;font-weight:700;
  text-decoration:none;color:#fff;transition:filter .15s;
}
.cat-hero-btn:hover { filter:brightness(1.12); }
.cat-hero-btn--ghost {
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.12);
}
.cat-hero-btn--ghost:hover { background:rgba(255,255,255,.14) !important; }

/* ── AI summary inline ──────────────────────────────────────────── */
.cat-ai-summary,.hood-ai-summary {
  min-height:20px;margin-top:6px;
}
.cat-ai-loading,.hood-ai-summary {
  display:flex;align-items:center;gap:4px;
}
.ai-dot {
  width:5px;height:5px;border-radius:50%;
  background:rgba(255,255,255,.25);
  animation:ai-pulse 1.2s ease-in-out infinite;
}
.ai-dot:nth-child(2){animation-delay:.2s}
.ai-dot:nth-child(3){animation-delay:.4s}
@keyframes ai-pulse{0%,100%{opacity:.25;transform:scale(1)}50%{opacity:.9;transform:scale(1.3)}}
.cat-ai-text,.hood-ai-text {
  font-size:.72rem;font-style:italic;color:rgba(255,255,255,.55);
  display:flex;align-items:center;gap:6px;
}
.cat-ai-text i,.hood-ai-text i { font-size:.55rem; }

/* ── Featured event hero card ──────────────────────────────────── */
.cat-featured-event {
  display:block;position:relative;text-decoration:none;
  height:240px;border-radius:12px;overflow:hidden;
  background:#1a1a2e;background-size:cover;background-position:center;
  margin:24px 24px 0;
  transition:transform .2s;
}
.cat-featured-event:hover { transform:scale(1.005); }
.cfe-scrim {
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.2) 60%);
}
.cfe-body {
  position:absolute;bottom:0;left:0;right:0;
  padding:20px 24px;
}
.cfe-badge {
  display:inline-flex;align-items:center;gap:5px;
  font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:#fff;padding:4px 10px;border-radius:4px;margin-bottom:10px;
}
.cfe-title {
  font-family:'Inter Tight',sans-serif;
  font-size:1.4rem;font-weight:900;color:#fff;line-height:1.15;margin:0 0 8px;
}
.cfe-meta {
  display:flex;flex-wrap:wrap;gap:12px;font-size:.65rem;color:rgba(255,255,255,.65);margin-bottom:12px;
}
.cfe-meta span { display:flex;align-items:center;gap:5px; }
.cfe-cta {
  display:inline-block;padding:8px 18px;border-radius:5px;
  font-size:.7rem;font-weight:700;color:#fff;background:rgba(255,255,255,.15);
  backdrop-filter:blur(4px);
}

/* ── Section header (cat pages) ────────────────────────────────── */
.cat-section-head {
  display:flex;align-items:flex-end;justify-content:space-between;
  padding:24px 24px 16px;gap:12px;
}
.csh-eyebrow {
  font-size:.55rem;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:4px;
}
.csh-title {
  font-family:'Inter Tight',sans-serif;
  font-size:1.1rem;font-weight:900;color:#fff;margin:0;
  display:flex;align-items:center;gap:10px;
}
.csh-count {
  font-size:.65rem;font-weight:700;
  background:rgba(255,255,255,.1);
  padding:2px 8px;border-radius:10px;
  color:rgba(255,255,255,.5);
}

/* ── Advanced event grid (cat pages) ───────────────────────────── */
.cat-ev-grid {
  display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:16px;padding:0 24px 24px;
}
.cat-ev-card {
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  border-radius:10px;overflow:hidden;
  transition:border-color .15s,transform .15s;
  display:flex;flex-direction:column;
}
.cat-ev-card:hover { border-color:rgba(255,255,255,.15);transform:translateY(-2px); }
.cat-ev-sold { opacity:.6; }
.cec-img {
  display:block;height:140px;overflow:hidden;position:relative;
}
.cec-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.cat-ev-card:hover .cec-img img { transform:scale(1.05); }
.cec-img--noimg {
  height:80px;display:flex;align-items:center;justify-content:center;
}
.cec-noimg-date {
  font-size:.65rem;font-weight:800;color:rgba(255,255,255,.3);letter-spacing:.06em;
}
.cec-tonight-badge,.cec-sold-badge {
  position:absolute;top:8px;right:8px;
  font-size:.5rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:#fff;padding:3px 8px;border-radius:3px;
}
.cec-sold-badge { background:rgba(0,0,0,.6); }
.cec-body { padding:12px 14px;flex:1;display:flex;flex-direction:column;gap:4px; }
.cec-date-row { display:flex;align-items:center;justify-content:space-between;gap:6px; }
.cec-date {
  font-size:.6rem;font-weight:700;color:rgba(255,255,255,.4);
}
.cec-date--today { color:var(--dc-red); }
.cec-date--soon  { color:var(--orange); }
.cec-time { font-size:.55rem;color:rgba(255,255,255,.3); }
.cec-title { font-size:.8rem;font-weight:800;line-height:1.25;margin:2px 0; }
.cec-title a { color:#fff;text-decoration:none; }
.cec-title a:hover { color:rgba(255,255,255,.7); }
.cec-venue { font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px; }
.cec-price { font-size:.6rem;color:rgba(255,255,255,.5);display:flex;align-items:center;gap:4px; }
.cec-ctas { display:flex;gap:6px;margin-top:auto;padding-top:8px; }

/* ── Stories grid (cat pages) ────────────────────────────────── */
.cat-stories-grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:0 24px 24px;
}
@media(max-width:700px){.cat-stories-grid{grid-template-columns:1fr;}}
.cst-card {
  display:block;text-decoration:none;
  border-radius:10px;overflow:hidden;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  transition:border-color .15s,transform .15s;
}
.cst-card:hover { border-color:rgba(255,255,255,.15);transform:translateY(-2px); }
.cst-card--hero { grid-column:1/-1; display:grid;grid-template-columns:1.6fr 1fr; }
@media(max-width:700px){.cst-card--hero{grid-template-columns:1fr;}}
.cst-img { height:140px;overflow:hidden; }
.cst-card--hero .cst-img { height:100%;min-height:200px; }
.cst-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.cst-card:hover .cst-img img { transform:scale(1.04); }
.cst-body { padding:14px 16px; }
.cst-card--hero .cst-body { padding:20px 22px;display:flex;flex-direction:column;justify-content:center; }
.cst-cat { font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px; }
.cst-title { font-size:.85rem;font-weight:800;color:#fff;line-height:1.3;margin-bottom:6px; }
.cst-card--hero .cst-title { font-size:1.1rem; }
.cst-sub { font-size:.72rem;color:rgba(255,255,255,.55);line-height:1.5;margin-bottom:8px; }
.cst-meta { font-size:.55rem;color:rgba(255,255,255,.3); }

/* ── Newsletter CTA (cat pages) ─────────────────────────────── */
.cat-nl-cta {
  display:grid;grid-template-columns:auto 1fr auto;
  align-items:center;gap:16px;
  margin:32px 24px 24px;
  padding:20px 24px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
}
@media(max-width:700px){.cat-nl-cta{grid-template-columns:1fr;gap:12px;}}
.cat-nl-icon { font-size:1.4rem; }
.cat-nl-title { font-size:.85rem;font-weight:700;color:#fff;margin-bottom:3px; }
.cat-nl-sub { font-size:.65rem;color:rgba(255,255,255,.4); }
.cat-nl-form { display:flex;gap:6px;align-items:center; }
.cat-nl-form input {
  padding:8px 12px;border-radius:5px;border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);color:#fff;font-size:.72rem;
  outline:none;width:180px;
}
.cat-nl-form input:focus { border-color:rgba(255,255,255,.25); }
.cat-nl-form button {
  padding:8px 16px;border-radius:5px;border:none;
  font-size:.72rem;font-weight:700;color:#fff;cursor:pointer;
  transition:filter .15s;white-space:nowrap;
}
.cat-nl-form button:hover { filter:brightness(1.12); }

/* ── Cuisine pills (food page) ───────────────────────────────── */
.food-cuisine-pills {
  display:flex;flex-wrap:wrap;gap:6px;padding:20px 24px 0;
}
.food-cpill {
  padding:5px 14px;border-radius:20px;font-size:.65rem;font-weight:700;
  text-decoration:none;color:rgba(255,255,255,.5);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  transition:all .15s;
}
.food-cpill:hover,.food-cpill.on {
  background:var(--dc-green);color:#fff;border-color:var(--dc-green);
}

/* ── Advanced filter bar (food page) ─────────────────────────── */
.food-filter-bar { padding:16px 24px 0; }
.ffb-inner {
  display:flex;flex-wrap:wrap;gap:8px;align-items:center;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  padding:12px 16px;border-radius:10px;
}
.ffb-search {
  display:flex;align-items:center;gap:8px;
  flex:1;min-width:180px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:6px;padding:6px 12px;
}
.ffb-search i { color:rgba(255,255,255,.35);font-size:.75rem; }
.ffb-search input {
  background:none;border:none;outline:none;
  color:#fff;font-size:.72rem;width:100%;
}
.ffb-inner select {
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.7);padding:6px 10px;border-radius:6px;font-size:.72rem;
  outline:none;cursor:pointer;
}

/* ── Food venue grid ─────────────────────────────────────────── */
.food-venue-grid {
  display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:16px;padding:0 24px 24px;
}
.fvg-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;overflow:hidden;
  transition:border-color .15s,transform .15s;
  display:flex;flex-direction:column;
}
.fvg-card:hover { border-color:rgba(255,255,255,.15);transform:translateY(-2px); }
.fvg-img {
  display:block;height:150px;overflow:hidden;position:relative;
}
.fvg-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.fvg-card:hover .fvg-img img { transform:scale(1.05); }
.fvg-img-placeholder {
  height:100%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;
}
.fvg-verified {
  position:absolute;top:8px;left:8px;
  background:rgba(45,181,75,.9);color:#fff;
  font-size:.48rem;font-weight:800;letter-spacing:.08em;padding:3px 7px;border-radius:3px;
}
.fvg-price {
  position:absolute;bottom:8px;right:8px;
  background:rgba(0,0,0,.7);color:rgba(255,255,255,.8);
  font-size:.55rem;font-weight:700;padding:3px 7px;border-radius:3px;
}
.fvg-body { padding:12px 14px;flex:1;display:flex;flex-direction:column;gap:4px; }
.fvg-head { display:flex;align-items:flex-start;justify-content:space-between;gap:6px; }
.fvg-name { font-size:.82rem;font-weight:800;line-height:1.2; }
.fvg-name a { color:#fff;text-decoration:none; }
.fvg-name a:hover { color:rgba(255,255,255,.7); }
.fvg-rating { font-size:.6rem;color:var(--dc-yellow);display:flex;align-items:center;gap:3px;flex-shrink:0; }
.fvg-rating span { color:rgba(255,255,255,.4); }
.fvg-cuisine { font-size:.6rem;color:rgba(255,255,255,.45); }
.fvg-area { font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px; }
.fvg-exc { font-size:.65rem;color:rgba(255,255,255,.55);line-height:1.5;margin:2px 0; }
.fvg-ctas { display:flex;gap:6px;margin-top:auto;padding-top:8px; }

/* ── Stories page ────────────────────────────────────────────── */
.stories-hero-card {
  display:block;position:relative;text-decoration:none;
  height:280px;border-radius:12px;overflow:hidden;
  background:#1a1a2e;background-size:cover;background-position:center;
  margin:0 0 24px;transition:transform .2s;
}
.stories-hero-card:hover { transform:scale(1.005); }
.shc-scrim { position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85),rgba(0,0,0,.15)); }
.shc-body { position:absolute;bottom:0;left:0;right:0;padding:24px 28px; }
.shc-cat { font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px; }
.shc-title { font-family:'Inter Tight',sans-serif;font-size:1.6rem;font-weight:900;color:#fff;margin:0 0 8px;line-height:1.15; }
.shc-sub { font-size:.8rem;color:rgba(255,255,255,.65);margin-bottom:8px; }
.shc-meta { font-size:.62rem;color:rgba(255,255,255,.4); }
.stories-masonry {
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
}
@media(max-width:700px){.stories-masonry{grid-template-columns:1fr;}}
.sm-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;overflow:hidden;
  transition:border-color .15s,transform .15s;
}
.sm-card:hover { border-color:rgba(255,255,255,.15);transform:translateY(-2px); }
.sm-card--wide { grid-column:1/-1;display:grid;grid-template-columns:1.5fr 1fr; }
@media(max-width:700px){.sm-card--wide{grid-template-columns:1fr;}}
.sm-img { display:block;aspect-ratio:16/9;overflow:hidden; }
.sm-card--wide .sm-img { height:100%;aspect-ratio:unset; }
.sm-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.sm-card:hover .sm-img img { transform:scale(1.04); }
.sm-body { padding:14px 16px; }
.sm-card--wide .sm-body { padding:20px 24px;display:flex;flex-direction:column;justify-content:center; }
.sm-cat { font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px; }
.sm-title { font-size:.85rem;font-weight:800;color:#fff;line-height:1.3;margin-bottom:5px; }
.sm-card--wide .sm-title { font-size:1.05rem; }
.sm-title a { color:inherit;text-decoration:none; }
.sm-title a:hover { color:rgba(255,255,255,.7); }
.sm-sub { font-size:.7rem;color:rgba(255,255,255,.5);line-height:1.5;margin-bottom:6px; }
.sm-meta { font-size:.55rem;color:rgba(255,255,255,.3); }

/* ── Neighbourhood page ───────────────────────────────────────── */
.hood-hero-full {
  height:320px;position:relative;
  background-size:cover;background-position:center;
  display:flex;flex-direction:column;justify-content:flex-end;
}
.hhf-scrim { position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.25) 60%); }
.hhf-body { position:relative;z-index:1;padding:24px 28px 8px; }
.hhf-label { font-size:.52rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:6px; }
.hhf-name { font-family:'Inter Tight',sans-serif;font-size:2.2rem;font-weight:900;color:#fff;margin:0 0 8px;letter-spacing:-.02em; }
.hhf-stats { display:flex;gap:16px;font-size:.65rem;color:rgba(255,255,255,.5);flex-wrap:wrap;margin-bottom:6px; }
.hhf-stats span { display:flex;align-items:center;gap:5px; }
.hhf-quick-links { display:flex;gap:1px;position:relative;z-index:1;padding:0 28px 20px; }
.hhf-ql {
  display:flex;align-items:center;gap:5px;
  padding:7px 14px;font-size:.65rem;font-weight:700;text-decoration:none;
  background:rgba(255,255,255,.1);color:rgba(255,255,255,.75);
  backdrop-filter:blur(8px);
  transition:background .15s,color .15s;
}
.hhf-ql:first-child { border-radius:6px 0 0 6px; }
.hhf-ql:last-child  { border-radius:0 6px 6px 0; }
.hhf-ql:hover { background:rgba(255,255,255,.2);color:#fff; }
.hood-ai-summary { display:flex;align-items:center;gap:4px;min-height:18px;margin-bottom:8px; }
.hood-ai-text { font-size:.7rem;font-style:italic;color:rgba(255,255,255,.5); }
.hood-content { padding:24px; }
.hood-cat-grid {
  display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;
}
.hcg-pill {
  display:flex;align-items:center;gap:6px;
  padding:5px 14px;border-radius:20px;border:1px solid;
  font-size:.65rem;font-weight:700;text-decoration:none;
  transition:opacity .15s;
}
.hcg-pill:hover { opacity:.8; }
.hcg-count { font-weight:900; }
.hcg-name { opacity:.85; }

/* ── Submit page ─────────────────────────────────────────────── */
.submit-page-hero {
  padding:32px 32px 28px;
  background:linear-gradient(135deg,rgba(26,86,255,.08),rgba(232,32,26,.05));
  border-bottom:1px solid rgba(255,255,255,.06);
  text-align:center;
}
.sph-badge {
  display:inline-flex;align-items:center;gap:5px;
  background:rgba(45,181,75,.15);color:var(--dc-green);
  border:1px solid rgba(45,181,75,.3);
  font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  padding:4px 12px;border-radius:20px;margin-bottom:12px;
}
.sph-title {
  font-family:'Inter Tight',sans-serif;
  font-size:1.8rem;font-weight:900;color:#fff;margin:0 0 10px;letter-spacing:-.02em;
}
.sph-desc { font-size:.85rem;color:rgba(255,255,255,.55);margin-bottom:20px; }
.sph-stats {
  display:flex;justify-content:center;gap:32px;flex-wrap:wrap;
}
.sph-stat { text-align:center; }
.sph-stat-n { font-size:1.4rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif; }
.sph-stat-l { font-size:.6rem;color:rgba(255,255,255,.4); }
.submit-layout { display:grid;grid-template-columns:1fr 280px;gap:28px;margin-top:28px; }
@media(max-width:800px){ .submit-layout { grid-template-columns:1fr; } }
.sfa-section { margin-bottom:20px; }
.sfa-section-label {
  font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.4);margin-bottom:12px;
  display:flex;align-items:center;gap:7px;
  padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.06);
}
.sfa-section-label i { color:var(--dc-blue); }
.sfa-section--contact .sfa-section-label i { color:var(--dc-green); }
.sf-req { color:var(--dc-red); }
.sf-note-inline { font-size:.55rem;color:rgba(255,255,255,.3);font-weight:400;letter-spacing:0; }
.submit-aside { display:flex;flex-direction:column;gap:16px; }
.sa-block {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;padding:16px;
}
.sa-block h3 { font-size:.8rem;font-weight:800;color:#fff;margin:0 0 10px; }
.sa-block p { font-size:.65rem;color:rgba(255,255,255,.5);line-height:1.6;margin:0; }
.sa-checklist { list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px; }
.sa-checklist li { font-size:.7rem;color:rgba(255,255,255,.7);display:flex;align-items:center;gap:8px; }
.sa-checklist li i { flex-shrink:0; }
.sa-ev { display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);text-decoration:none; }
.sa-ev:last-child { border-bottom:none; }
.sa-ev-dot { width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:3px; }
.sa-ev-title { font-size:.7rem;font-weight:700;color:rgba(255,255,255,.8);line-height:1.3; }
.sa-ev-date { font-size:.58rem;color:rgba(255,255,255,.35);margin-top:2px; }

/* ── Contact page ─────────────────────────────────────────────── */
.contact-layout { display:grid;grid-template-columns:1fr 280px;gap:28px;margin-top:0; }
@media(max-width:800px){ .contact-layout { grid-template-columns:1fr; } }
.contact-info-col { display:flex;flex-direction:column;gap:16px; }
.cic-block {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;padding:16px;
}
.cic-block h3 { font-size:.8rem;font-weight:800;color:#fff;margin:0 0 12px; }
.contact-list { list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px; }
.contact-list li { font-size:.7rem;display:flex;align-items:center;gap:9px; }
.contact-list a { color:rgba(255,255,255,.7);text-decoration:none; }
.contact-list a:hover { color:#fff; }
.cic-socials { display:flex;flex-direction:column;gap:6px; }
.cic-social-btn {
  display:flex;align-items:center;gap:9px;padding:8px 12px;border-radius:6px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);
  text-decoration:none;font-size:.72rem;color:rgba(255,255,255,.65);
  transition:all .15s;
}
.cic-social-btn:hover { background:rgba(255,255,255,.1);color:#fff; }
.cic-action-btn {
  display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:6px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);
  text-decoration:none;font-size:.72rem;color:rgba(255,255,255,.65);
  transition:all .15s;margin-bottom:6px;
}
.cic-action-btn:hover { background:rgba(255,255,255,.1);color:#fff; }
.cic-action-btn i { color:var(--dc-blue);width:14px;text-align:center; }
.cic-response-time {
  display:flex;align-items:center;gap:12px;
}
.crt-label { font-size:.55rem;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.08em; }
.crt-val { font-size:.8rem;font-weight:700;color:#fff; }

/* ── About page ──────────────────────────────────────────────── */
.about-hero {
  padding:32px;text-align:center;
  background:linear-gradient(135deg,rgba(26,86,255,.06),rgba(232,32,26,.04));
  border-bottom:1px solid rgba(255,255,255,.06);
}
.ah-wordmark {
  font-family:'Inter Tight',sans-serif;font-size:2.4rem;font-weight:900;
  color:rgba(255,255,255,.15);letter-spacing:-.02em;margin-bottom:12px;
}
.ah-wordmark span { color:var(--dc-red); }
.ah-title { font-family:'Inter Tight',sans-serif;font-size:1.6rem;font-weight:900;color:#fff;margin:0 0 10px; }
.ah-desc { font-size:.9rem;color:rgba(255,255,255,.5);margin:0; }
.about-stats-row {
  display:flex;flex-wrap:wrap;gap:0;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.asr-stat {
  flex:1;min-width:100px;text-align:center;
  padding:20px 12px;border-right:1px solid rgba(255,255,255,.07);
}
.asr-stat:last-child { border-right:none; }
.asr-n { font-size:1.5rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif; }
.asr-l { font-size:.58rem;color:rgba(255,255,255,.35);margin-top:3px; }
.about-layout { display:grid;grid-template-columns:1fr 260px;gap:28px;padding:28px; }
@media(max-width:800px){ .about-layout { grid-template-columns:1fr; } }
.about-body p { font-size:.82rem;line-height:1.75;color:rgba(255,255,255,.75);margin-bottom:16px; }
.about-body h2 { font-size:1rem;font-weight:800;color:#fff;margin:24px 0 14px; }
.about-features-grid { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px; }
@media(max-width:500px){ .about-features-grid { grid-template-columns:1fr; } }
.afg-card {
  display:flex;align-items:flex-start;gap:10px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:8px;padding:12px 14px;
}
.afg-icon { font-size:1rem;margin-top:1px;flex-shrink:0; }
.afg-title { font-size:.75rem;font-weight:800;color:#fff;margin-bottom:3px; }
.afg-desc { font-size:.62rem;color:rgba(255,255,255,.45);line-height:1.5; }
.about-sidebar-col { display:flex;flex-direction:column;gap:16px; }
.asb-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;padding:16px;
}
.asb-card-title { font-size:.8rem;font-weight:800;color:#fff;margin-bottom:8px; }
.asb-card-desc { font-size:.65rem;color:rgba(255,255,255,.5);line-height:1.6;margin-bottom:12px; }
.asb-card-desc a { color:var(--dc-blue); }
.asb-dotcity-grid { display:flex;flex-wrap:wrap;gap:5px; }
.asb-city-pill {
  font-size:.58rem;font-weight:700;padding:3px 10px;border-radius:12px;
  background:rgba(255,255,255,.07);color:rgba(255,255,255,.5);
}
.asb-cta-stack { display:flex;flex-direction:column; }

/* ── Responsive overrides for new templates ──────────────────── */
@media(max-width:900px){
  .cat-ev-grid { grid-template-columns:1fr 1fr; padding:0 16px 16px; }
  .cat-stories-grid { grid-template-columns:1fr 1fr; padding:0 16px 16px; }
  .cat-featured-event { margin:16px 16px 0; }
  .cat-section-head { padding:20px 16px 12px; }
  .food-venue-grid { grid-template-columns:1fr 1fr; padding:0 16px 16px; }
  .cat-nl-cta { margin:20px 16px 16px; grid-template-columns:auto 1fr; }
}
@media(max-width:600px){
  .cat-hero { padding:24px 16px 20px; }
  .cat-hero-title { font-size:1.5rem; }
  .cat-ev-grid { grid-template-columns:1fr; }
  .cat-stories-grid { grid-template-columns:1fr; }
  .food-venue-grid { grid-template-columns:1fr; }
  .cat-nl-cta { grid-template-columns:1fr; }
  .cat-nl-form { flex-direction:column; }
  .cat-nl-form input { width:100%; }
  .cst-card--hero { grid-template-columns:1fr; }
  .sm-card--wide { grid-template-columns:1fr; }
  .hhf-name { font-size:1.6rem; }
  .sph-title { font-size:1.4rem; }
  .stories-masonry { grid-template-columns:1fr; }
  .stories-hero-card { height:220px; }
  .shc-title { font-size:1.2rem; }
}

/* ═══════════════════════════════════════════════════════════════════
   REMAINING PAGE TEMPLATES - v9 continued
   ═══════════════════════════════════════════════════════════════════ */

/* ── Directory ──────────────────────────────────────────────────── */
.dir-hero {
  padding:32px 28px 24px;
  background:linear-gradient(135deg,rgba(245,196,0,.06),rgba(26,86,255,.04));
  border-bottom:1px solid rgba(255,255,255,.06);
}
.dir-hero-content { margin-bottom:20px; }
.dir-hero-desc { font-size:.85rem;color:rgba(255,255,255,.55);margin:8px 0 12px; }
.dir-hero-total { font-size:.7rem;color:rgba(255,255,255,.35); }
.dir-hero-total span { font-weight:800;color:rgba(255,255,255,.7);font-size:.85rem; }
.dir-cat-breakdown { display:flex;flex-wrap:wrap;gap:8px; }
.dcb-pill {
  display:flex;flex-direction:column;align-items:center;
  padding:8px 14px;border-radius:10px;text-decoration:none;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);
  transition:all .15s;min-width:60px;
}
.dcb-pill:hover { background:rgba(255,255,255,.1); }
.dcb-pill.on { background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2); }
.dcb-pill[style*="--dc"] { border-color:var(--dc)44; }
.dcb-pill[style*="--dc"]:hover,.dcb-pill[style*="--dc"].on { background:var(--dc)22;border-color:var(--dc)88; }
.dcb-n { font-size:.9rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif; }
.dcb-l { font-size:.55rem;color:rgba(255,255,255,.4);font-weight:600;margin-top:2px; }
.dir-filter-bar { padding:16px 28px 0; }
.dfb-form { display:flex;flex-wrap:wrap;gap:8px;align-items:center; }
.dfb-search {
  display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:8px;padding:8px 14px;flex:1;min-width:200px;
}
.dfb-search i { color:rgba(255,255,255,.3); }
.dfb-search input { background:none;border:none;outline:none;color:#fff;font-size:.75rem;width:100%; }
.dfb-selects { display:flex;flex-wrap:wrap;gap:6px; }
.dfb-selects select {
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.75);padding:7px 12px;border-radius:6px;font-size:.72rem;
  outline:none;cursor:pointer;
}
.dfb-check {
  display:flex;align-items:center;gap:5px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  padding:7px 12px;border-radius:6px;font-size:.72rem;color:rgba(255,255,255,.6);
  cursor:pointer;transition:all .15s;
}
.dfb-check input { display:none; }
.dfb-check.on { background:rgba(45,181,75,.15);border-color:rgba(45,181,75,.4);color:var(--dc-green); }
.dfb-check i { font-size:.7rem; }
.dfb-actions { display:flex;gap:6px; }
.dir-results-bar {
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 28px 10px;
}
.drb-count { font-size:.7rem;color:rgba(255,255,255,.4); }
.drb-count em { color:rgba(255,255,255,.7);font-style:normal;font-weight:700; }
.drb-view-toggle { display:flex;gap:3px; }
.drvt-btn {
  padding:5px 9px;border-radius:5px;border:1px solid rgba(255,255,255,.1);
  background:transparent;color:rgba(255,255,255,.35);cursor:pointer;font-size:.75rem;
  transition:all .15s;
}
.drvt-btn.on { background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.2); }
.dir-grid {
  display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:16px;padding:0 28px 24px;
}
.dir-grid--list { grid-template-columns:1fr; }
.dir-grid--list .dir-card { flex-direction:row; }
.dir-grid--list .dir-card-img { width:140px;height:100%;min-height:90px;flex-shrink:0; }
.dir-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;overflow:hidden;
  transition:border-color .15s,transform .15s;
  display:flex;flex-direction:column;
}
.dir-card:hover { border-color:rgba(255,255,255,.16);transform:translateY(-2px); }
.dir-card-img {
  display:block;height:150px;overflow:hidden;position:relative;text-decoration:none;
}
.dir-card-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.dir-card:hover .dir-card-img img { transform:scale(1.05); }
.dir-card-noimg {
  height:100%;display:flex;align-items:center;justify-content:center;font-size:1.8rem;
}
.dir-verified {
  position:absolute;top:8px;left:8px;
  background:rgba(45,181,75,.9);color:#fff;
  font-size:.5rem;font-weight:800;padding:3px 7px;border-radius:3px;
}
.dir-price {
  position:absolute;bottom:8px;right:8px;
  background:rgba(0,0,0,.7);color:rgba(255,255,255,.8);
  font-size:.55rem;font-weight:700;padding:3px 7px;border-radius:3px;
}
.dir-card-body { padding:12px 14px;flex:1;display:flex;flex-direction:column;gap:4px; }
.dir-card-head { display:flex;align-items:flex-start;justify-content:space-between;gap:6px; }
.dir-card-name { font-size:.82rem;font-weight:800;line-height:1.2; }
.dir-card-name a { color:#fff;text-decoration:none; }
.dir-card-name a:hover { color:rgba(255,255,255,.7); }
.dir-card-rating { font-size:.58rem;color:var(--dc-yellow);display:flex;align-items:center;gap:3px;flex-shrink:0; }
.dir-card-rating span { color:rgba(255,255,255,.3); }
.dir-card-cat { font-size:.58rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase; }
.dir-card-cuisine,.dir-card-area { font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px; }
.dir-card-exc { font-size:.65rem;color:rgba(255,255,255,.5);line-height:1.5;margin:2px 0; }
.dir-card-ctas { display:flex;gap:6px;margin-top:auto;padding-top:8px; }
.dir-submit-cta { margin:8px 28px 24px; }
.dir-submit-cta-inner {
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  background:rgba(45,181,75,.08);border:1px solid rgba(45,181,75,.2);
  border-radius:12px;padding:18px 22px;
}
.dsc-title { font-size:.85rem;font-weight:700;color:#fff;margin-bottom:3px; }
.dsc-sub { font-size:.65rem;color:rgba(255,255,255,.5); }

/* ── Advertise page ──────────────────────────────────────────── */
.adv-hero {
  position:relative;overflow:hidden;
  padding:48px 32px 36px;text-align:center;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.adv-hero-bg {
  position:absolute;inset:0;
  background:radial-gradient(ellipse at 50% 0%,rgba(232,32,26,.12) 0%,transparent 70%);
  pointer-events:none;
}
.adv-hero-content { position:relative;z-index:1; }
.adv-eyebrow {
  display:inline-flex;align-items:center;gap:5px;
  font-size:.58rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--dc-red);margin-bottom:12px;
}
.adv-title { font-family:'Inter Tight',sans-serif;font-size:2.4rem;font-weight:900;color:#fff;margin:0 0 12px;letter-spacing:-.02em; }
.adv-desc { font-size:.9rem;color:rgba(255,255,255,.55);margin:0 0 24px; }
.adv-hero-stats { display:flex;justify-content:center;gap:36px;flex-wrap:wrap; }
.adv-hs { text-align:center; }
.adv-hs-n { font-size:1.5rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif; }
.adv-hs-l { font-size:.6rem;color:rgba(255,255,255,.4);margin-top:3px; }
.adv-section-label {
  font-size:.58rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.3);margin-bottom:20px;
  padding:24px 28px 0;
}
.adv-packages-wrap { padding:0 28px 32px; }
.adv-packages { display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px; }
@media(max-width:700px){ .adv-packages { grid-template-columns:1fr; } }
.adv-pkg {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:14px;padding:24px 20px;position:relative;
  display:flex;flex-direction:column;gap:14px;
  transition:border-color .2s,transform .2s;
}
.adv-pkg:hover { border-color:rgba(255,255,255,.16);transform:translateY(-2px); }
.adv-pkg--popular { border-color:rgba(232,32,26,.35);background:rgba(232,32,26,.06); }
.adv-pkg-badge {
  position:absolute;top:-11px;left:50%;transform:translateX(-50%);
  background:var(--dc-red);color:#fff;
  font-size:.5rem;font-weight:800;padding:4px 14px;
  border-radius:20px;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;
}
.adv-pkg-tier { font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em; }
.adv-pkg-price { font-size:1.5rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif;line-height:1; }
.adv-pkg-desc { font-size:.7rem;color:rgba(255,255,255,.5);line-height:1.6;flex:1; }
.adv-pkg-feats { list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px; }
.adv-pkg-feats li { font-size:.7rem;color:rgba(255,255,255,.75);display:flex;align-items:flex-start;gap:8px; }
.adv-pkg-feats li i { flex-shrink:0;margin-top:2px; }
.adv-pkg-cta {
  display:block;text-align:center;padding:11px;border-radius:7px;
  font-size:.75rem;font-weight:800;color:#fff;text-decoration:none;
  transition:filter .15s;
}
.adv-pkg-cta:hover { filter:brightness(1.12); }
.adv-bespoke { font-size:.65rem;color:rgba(255,255,255,.35);text-align:center; }
.adv-bespoke a { color:var(--dc-blue); }
.adv-audience { padding:0 28px 32px; }
.adv-audience-grid { display:grid;grid-template-columns:1fr 1fr;gap:20px; }
@media(max-width:700px){ .adv-audience-grid { grid-template-columns:1fr; } }
.adv-aud-block {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:12px;padding:20px;
}
.adv-aud-bar-row { display:flex;align-items:center;gap:10px;margin-bottom:12px; }
.adv-aud-bar-label { font-size:.65rem;color:rgba(255,255,255,.6);width:140px;flex-shrink:0; }
.adv-aud-bar-track { flex:1;height:6px;background:rgba(255,255,255,.08);border-radius:3px;overflow:hidden; }
.adv-aud-bar-fill { height:100%;border-radius:3px;transition:width .6s; }
.adv-aud-bar-pct { font-size:.65rem;font-weight:800;width:36px;text-align:right; }
.adv-aud-stats { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.adv-aud-stat { display:flex;align-items:center;gap:10px; }
.adv-aud-stat-icon { font-size:1rem;width:28px;text-align:center;flex-shrink:0; }
.adv-aud-stat-n { font-size:.95rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif; }
.adv-aud-stat-l { font-size:.58rem;color:rgba(255,255,255,.4); }
.adv-placements { padding:0 28px 32px; }
.adv-placement-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:14px; }
@media(max-width:700px){ .adv-placement-grid { grid-template-columns:1fr 1fr; } }
.adv-pl-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;padding:16px;
  transition:border-color .15s;
}
.adv-pl-card:hover { border-color:rgba(255,255,255,.14); }
.adv-pl-icon { font-size:1.2rem;color:var(--dc-blue);margin-bottom:8px; }
.adv-pl-title { font-size:.78rem;font-weight:800;color:#fff;margin-bottom:5px; }
.adv-pl-desc { font-size:.65rem;color:rgba(255,255,255,.5);line-height:1.55;margin-bottom:8px; }
.adv-pl-reach { font-size:.6rem;color:rgba(255,255,255,.35);display:flex;align-items:center;gap:5px; }
.adv-cta-strip {
  display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
  margin:0 28px 28px;padding:22px 24px;
  background:linear-gradient(135deg,rgba(232,32,26,.1),rgba(26,86,255,.06));
  border:1px solid rgba(232,32,26,.2);border-radius:12px;
}
.adv-cta-title { font-size:1rem;font-weight:800;color:#fff;margin-bottom:5px; }
.adv-cta-sub { font-size:.7rem;color:rgba(255,255,255,.5); }
.adv-cta-btns { display:flex;gap:8px;flex-shrink:0; }

/* ── TV page ────────────────────────────────────────────────── */
.tv-page-header {
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 24px;background:var(--dark3);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.tv-ph-left { display:flex;align-items:center;gap:12px; }
.tv-ph-live {
  display:flex;align-items:center;gap:5px;
  font-size:.55rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.7);
}
.tv-live-dot {
  width:6px;height:6px;border-radius:50%;background:#fff;
  animation:tv-live-pulse 1.2s ease-in-out infinite;
}
@keyframes tv-live-pulse{0%,100%{opacity:1}50%{opacity:.3}}
.tv-ph-brand { font-family:'Inter Tight',sans-serif;font-size:1.1rem;font-weight:900;color:#fff; }
.tv-ph-sub { font-size:.6rem;color:rgba(255,255,255,.35); }
.tv-ph-right { display:flex;align-items:center;gap:12px; }
.tv-ph-admin {
  display:flex;align-items:center;gap:5px;
  font-size:.65rem;font-weight:700;padding:5px 11px;border-radius:5px;
  background:rgba(26,86,255,.15);border:1px solid rgba(26,86,255,.3);
  color:var(--dc-blue);text-decoration:none;
}
.tv-ph-clock { font-size:.75rem;font-weight:700;color:rgba(255,255,255,.4);font-family:var(--font-mono,monospace); }
/* TV page: remove MCTV margin since CENTRE has padding:0 */
.page-template-tpl-tv .MCTV { margin:0; }
/* EPG current slot - white instead of channel colour */
.tv-epg-slot.now { color:#fff !important; }
.tv-epg-prog-fill { background:rgba(255,255,255,.45) !important; }
.tv-archive { padding:0 24px 24px; }
.tv-archive-header { display:flex;align-items:center;justify-content:space-between;margin:24px 0 16px; }
.tv-archive-title { font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.4); }
.tv-arch-channel { margin-bottom:28px; }
.tv-arch-ch-head { display:flex;align-items:center;gap:8px;margin-bottom:12px; }
.tv-arch-ch-dot { width:8px;height:8px;border-radius:50%;flex-shrink:0; }
.tv-arch-ch-name { font-size:.75rem;font-weight:800;letter-spacing:.06em; }
.tv-arch-ch-count { font-size:.6rem;color:rgba(255,255,255,.3); }
.tv-arch-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px; }
.tv-arch-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:8px;overflow:hidden;transition:border-color .15s,transform .15s;
}
.tv-arch-card:hover { border-color:rgba(255,255,255,.16);transform:translateY(-1px); }
.tv-arch-thumb { position:relative;aspect-ratio:16/9;overflow:hidden; }
.tv-arch-thumb img { width:100%;height:100%;object-fit:cover;display:block; }
.tv-arch-play {
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.4);opacity:0;transition:opacity .2s;
}
.tv-arch-card:hover .tv-arch-play { opacity:1; }
.tv-arch-play i { color:#fff;font-size:1.2rem; }
.tv-arch-dur {
  position:absolute;bottom:4px;right:5px;
  background:rgba(0,0,0,.75);color:#fff;font-size:.48rem;font-weight:700;padding:2px 5px;border-radius:2px;
}
.tv-arch-title { font-size:.62rem;font-weight:700;color:rgba(255,255,255,.8);padding:8px 10px;line-height:1.3; }

/* ── Videos page ────────────────────────────────────────────── */
.vids-header {
  display:flex;align-items:center;justify-content:space-between;
  padding:28px 24px 16px;
}
.vids-ch-tabs {
  display:flex;flex-wrap:wrap;gap:6px;padding:0 24px 16px;
}
.vct-tab {
  display:flex;align-items:center;gap:6px;
  padding:7px 16px;border-radius:22px;font-size:.7rem;font-weight:700;
  text-decoration:none;
  background:rgba(255,255,255,.07);color:rgba(255,255,255,.5);
  border:1px solid rgba(255,255,255,.1);transition:all .15s;
}
.vct-tab:hover { background:rgba(255,255,255,.12);color:#fff; }
.vct-tab.on { background:var(--vc,var(--dc-red));color:#fff;border-color:transparent; }
.vct-dot { width:6px;height:6px;border-radius:50%;flex-shrink:0; }
.vids-grid {
  display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:14px;padding:0 24px 24px;
}
.vid-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;overflow:hidden;
  transition:border-color .15s,transform .15s;
}
.vid-card:hover { border-color:rgba(255,255,255,.16);transform:translateY(-2px); }
.vid-card-thumb { position:relative;aspect-ratio:16/9;overflow:hidden; }
.vid-card-thumb img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.vid-card:hover .vid-card-thumb img { transform:scale(1.04); }
.vid-card-overlay {
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  background:rgba(0,0,0,.4);opacity:0;transition:opacity .2s;
}
.vid-card:hover .vid-card-overlay { opacity:1; }
.vid-card-play { color:#fff;font-size:1.6rem; }
.vid-card-dur {
  position:absolute;bottom:6px;right:7px;
  background:rgba(0,0,0,.75);color:#fff;font-size:.5rem;font-weight:700;padding:2px 6px;border-radius:3px;
}
.vid-card-ch-badge {
  position:absolute;top:7px;left:7px;
  color:#fff;font-size:.5rem;font-weight:800;padding:3px 8px;border-radius:3px;
  text-transform:uppercase;letter-spacing:.07em;
}
.vid-card-body { padding:10px 12px; }
.vid-card-title { font-size:.72rem;font-weight:700;color:#fff;line-height:1.3;margin-bottom:4px; }
.vid-card-meta { font-size:.58rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase; }
/* Video lightbox */
.vid-lightbox {
  display:none;position:fixed;inset:0;z-index:9999;
  background:rgba(0,0,0,.9);align-items:center;justify-content:center;
  padding:24px;
}
.vid-lightbox.open { display:flex; }
.vid-lb-inner { position:relative;width:100%;max-width:900px; }
.vid-lb-close {
  position:absolute;top:-44px;right:0;
  background:rgba(255,255,255,.1);border:none;color:#fff;
  width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:.9rem;
  transition:background .15s;
}
.vid-lb-close:hover { background:rgba(255,255,255,.2); }
.vid-lb-player { position:relative;padding-bottom:56.25%;background:#000;border-radius:8px;overflow:hidden; }
.vids-tv-cta { margin:4px 24px 24px; }
.vtc-inner {
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  background:rgba(232,32,26,.08);border:1px solid rgba(232,32,26,.2);
  border-radius:12px;padding:18px 22px;
}
.vtc-icon { font-size:1.6rem;flex-shrink:0; }
.vtc-title { font-size:.85rem;font-weight:700;color:#fff;margin-bottom:3px; }
.vtc-sub { font-size:.65rem;color:rgba(255,255,255,.5); }

/* ── Legal page ─────────────────────────────────────────────── */
.legal-body { font-size:.82rem;line-height:1.8;color:rgba(255,255,255,.75); }
.legal-body p { margin-bottom:16px; }
.legal-body h2 { font-size:1rem;font-weight:800;color:#fff;margin:24px 0 12px; }
.legal-body h3 { font-size:.85rem;font-weight:700;color:#fff;margin:18px 0 8px; }
.legal-body a { color:var(--dc-blue); }
.legal-body ul,.legal-body ol { padding-left:22px;margin-bottom:16px; }
.legal-body li { margin-bottom:7px; }
.legal-footer { margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.07);font-size:.7rem; }
.legal-footer a { color:var(--dc-blue); }

/* ── Sitemap ────────────────────────────────────────────────── */
.sitemap-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px; }
@media(max-width:700px){ .sitemap-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:420px){ .sitemap-grid { grid-template-columns:1fr; } }
.sm-section { background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:16px; }
.sm-section-title { font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.4);margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.06); }
.sm-list { list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:5px; }
.sm-link { display:flex;align-items:center;gap:8px;text-decoration:none;font-size:.72rem;color:rgba(255,255,255,.65);padding:5px 6px;border-radius:5px;transition:all .15s; }
.sm-link:hover { background:rgba(255,255,255,.06);color:#fff; }

/* ── Responsive ─────────────────────────────────────────────── */
@media(max-width:900px){
  .dir-grid { padding:0 16px 16px; grid-template-columns:1fr 1fr; }
  .dir-hero { padding:24px 16px 20px; }
  .dir-filter-bar { padding:12px 16px 0; }
  .dir-results-bar { padding:10px 16px 8px; }
  .adv-hero { padding:32px 16px 28px; }
  .adv-packages-wrap,.adv-audience,.adv-placements { padding:0 16px 24px; }
  .adv-cta-strip { margin:0 16px 16px; }
  .adv-section-label { padding:16px 16px 0; }
  .adv-placement-grid { grid-template-columns:1fr 1fr; }
  .tv-page-header { padding:10px 16px; }
  .tv-archive { padding:0 16px 16px; }
  .vids-grid { padding:0 16px 16px; }
  .vids-ch-tabs { padding:0 16px 12px; }
  .vids-header { padding:20px 16px 12px; }
  .vids-tv-cta { margin:4px 16px 16px; }
}
@media(max-width:600px){
  .dir-grid { grid-template-columns:1fr; }
  .adv-aud-stats { grid-template-columns:1fr; }
  .adv-hero-stats { gap:20px; }
  .vids-grid { grid-template-columns:1fr 1fr; }
  .tv-arch-grid { grid-template-columns:1fr 1fr; }
}

/* ═══════════════════════════════════════════════════════════════════
   DEEP PAGE CSS v9.2 - Food / Nightlife / Sport mastheads + components
   ═══════════════════════════════════════════════════════════════════ */

/* ── SHARED: food-stories-grid (used on all 3 pages) ─────────────────── */
.food-stories-grid {
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  grid-template-rows:auto auto;
  gap:12px;
  padding:0 24px 24px;
}
@media(max-width:760px){.food-stories-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:500px){.food-stories-grid{grid-template-columns:1fr;}}
.fstory-card {
  display:block;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);border-radius:10px;
  overflow:hidden;transition:border-color .15s,transform .15s;
}
.fstory-card:hover{border-color:rgba(255,255,255,.18);transform:translateY(-2px);}
.fstory-card--hero{grid-row:1/3;}
.fstory-card--hero .fstory-img{height:260px;}
.fstory-img{height:130px;overflow:hidden;}
.fstory-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.fstory-card:hover .fstory-img img{transform:scale(1.05);}
.fstory-body{padding:13px 15px;}
.fstory-cat{font-size:.55rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;}
.fstory-title{font-size:.82rem;font-weight:800;color:#fff;line-height:1.3;margin:0 0 5px;}
.fstory-card--hero .fstory-title{font-size:1.05rem;}
.fstory-sub{font-size:.7rem;color:rgba(255,255,255,.55);line-height:1.5;margin:0 0 7px;}
.fstory-meta{font-size:.55rem;color:rgba(255,255,255,.3);}

/* ── SHARED: newsletter block ─────────────────────────────────────────── */
.food-nl-block {
  margin:32px 24px 32px;
  background:linear-gradient(135deg,rgba(var(--col-r,26),var(--col-g,86),var(--col-b,255),.08),rgba(0,0,0,0));
  border:1px solid rgba(255,255,255,.08);border-radius:14px;
}
.fnl-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:24px 28px;}
@media(max-width:700px){.fnl-inner{grid-template-columns:1fr;gap:16px;}}
.fnl-left{display:flex;align-items:center;gap:16px;}
.fnl-icon{font-size:1.8rem;flex-shrink:0;}
.fnl-title{font-size:.95rem;font-weight:800;color:#fff;margin:0 0 4px;}
.fnl-sub{font-size:.7rem;color:rgba(255,255,255,.5);line-height:1.5;margin:0;}
.fnl-form{display:flex;gap:8px;align-items:center;}
.fnl-input{padding:10px 14px;border-radius:6px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);color:#fff;font-size:.75rem;outline:none;min-width:220px;}
.fnl-input:focus{border-color:rgba(255,255,255,.3);}
.fnl-btn{padding:10px 18px;border-radius:6px;border:none;font-size:.75rem;font-weight:700;color:#fff;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:6px;transition:filter .15s;}
.fnl-btn:hover{filter:brightness(1.1);}
@media(max-width:500px){.fnl-form{flex-direction:column;width:100%;}.fnl-input{min-width:0;width:100%;}.fnl-btn{width:100%;justify-content:center;}}

/* ══════════════════════════════════════════════
   FOOD PAGE
══════════════════════════════════════════════ */
.food-masthead{position:relative;height:240px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;}
.fm-bg{position:absolute;inset:0;}
.fm-bg img{width:100%;height:100%;object-fit:cover;display:block;}
.fm-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.96) 0%,rgba(0,0,0,.6) 40%,rgba(0,0,0,.2) 100%);}
.fm-inner{position:relative;z-index:1;padding:28px 28px 16px;}
.fm-kicker{font-size:.58rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:10px;display:flex;align-items:center;gap:6px;}
.fm-headline{font-family:'Inter Tight',sans-serif;font-size:2.6rem;font-weight:900;color:#fff;margin:0 0 10px;letter-spacing:-.035em;line-height:1.0;}
.fm-headline em{font-style:normal;}
.fm-sub{font-size:.85rem;color:rgba(255,255,255,.6);max-width:500px;line-height:1.6;margin:0 0 18px;}
.fm-live-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px;}
.fm-live-item{display:flex;align-items:baseline;gap:5px;}
.fm-live-n{font-size:1.1rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif;}
.fm-live-l{font-size:.6rem;color:rgba(255,255,255,.4);}
.fm-live-div{width:1px;height:20px;background:rgba(255,255,255,.15);}
.fm-ai-line{min-height:22px;padding-bottom:4px;}
.fm-ai-text{font-size:.72rem;font-style:italic;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:6px;}
.fm-ctas{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap;padding:0 28px 20px;}
.fm-cta-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 20px;border-radius:6px;font-size:.76rem;font-weight:700;color:#fff;transition:filter .15s;}
.fm-cta-btn:hover{filter:brightness(1.1);}
.fm-cta-ghost{background:rgba(255,255,255,.1) !important;border:1px solid rgba(255,255,255,.18);}
.fm-cta-ghost:hover{background:rgba(255,255,255,.18) !important;}

/* Food category nav */
.food-cat-nav{display:flex;gap:5px;padding:16px 24px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;z-index:50;background:#111114;}
.food-cat-nav::-webkit-scrollbar{display:none}
.fcn-pill{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:20px;font-size:.68rem;font-weight:700;white-space:nowrap;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.6);transition:all .15s;flex-shrink:0;}
.fcn-pill:hover{background:rgba(255,255,255,.1);color:#fff;}
.fcn-on{background:rgba(45,181,75,.15);border-color:rgba(45,181,75,.4);color:#2DB54B;}

/* Food search bar */
.food-search-bar{padding:16px 24px 0;}
.fsb-form{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;}
.fsb-main{display:flex;flex-wrap:wrap;gap:0;align-items:stretch;}
.fsb-search-wrap{flex:1;min-width:220px;display:flex;align-items:center;gap:8px;padding:10px 14px;border-right:1px solid rgba(255,255,255,.07);position:relative;}
.fsb-ico{color:rgba(255,255,255,.35);font-size:.8rem;flex-shrink:0;}
.fsb-input{flex:1;background:none;border:none;outline:none;color:#fff;font-size:.78rem;}
.fsb-input::placeholder{color:rgba(255,255,255,.3);}
.fsb-clear{background:none;border:none;color:rgba(255,255,255,.35);cursor:pointer;padding:0 4px;font-size:.8rem;}
.fsb-selects{display:flex;align-items:center;gap:0;flex-wrap:wrap;}
.fsb-sel{background:none;border:none;border-right:1px solid rgba(255,255,255,.07);color:rgba(255,255,255,.65);padding:10px 14px;font-size:.72rem;outline:none;cursor:pointer;}
.fsb-sel:last-of-type{border-right:none;}
.fsb-view-toggle{display:flex;gap:0;border-left:1px solid rgba(255,255,255,.07);}
.fsb-view{padding:10px 12px;color:rgba(255,255,255,.35);font-size:.8rem;transition:all .15s;}
.fsb-view:hover,.fsb-view-on{color:#fff;background:rgba(255,255,255,.06);}
.fsb-actions{display:flex;gap:8px;align-items:center;padding:10px 14px;border-top:1px solid rgba(255,255,255,.06);}
.fsb-active-filters{display:flex;flex-wrap:wrap;gap:6px;padding:10px 14px 0;}
.fsb-af-tag{font-size:.6rem;background:rgba(255,255,255,.08);border-radius:4px;padding:3px 8px;color:rgba(255,255,255,.6);display:flex;align-items:center;gap:5px;}
.fsb-af-tag a{color:rgba(255,255,255,.4);font-weight:700;}
.fsb-af-tag a:hover{color:#fff;}

/* Results header */
.food-results-head{display:flex;align-items:center;justify-content:space-between;padding:16px 24px 12px;}
.frh-count{font-size:.75rem;color:rgba(255,255,255,.55);}
.frh-count strong{color:#fff;font-weight:800;}
.frh-count em{color:rgba(255,255,255,.8);font-style:normal;}
.frh-add-btn{font-size:.65rem;font-weight:700;color:var(--dc-blue);display:flex;align-items:center;gap:5px;}

/* Venue grid & list */
.food-venues{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;padding:0 24px 24px;}
.fv-list{grid-template-columns:1fr;}
.fvg-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;overflow:hidden;transition:border-color .15s,transform .15s;display:flex;flex-direction:column;}
.fvg-card:hover{border-color:rgba(255,255,255,.16);transform:translateY(-2px);}
.fvg-card-list{flex-direction:row;height:100px;}
.fvg-card-list .fvg-img{height:100%;width:140px;flex-shrink:0;}
.fvg-card-list .fvg-body{padding:10px 14px;}
.fvg-img{display:block;height:150px;overflow:hidden;position:relative;flex-shrink:0;}
.fvg-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.fvg-card:hover .fvg-img img{transform:scale(1.05);}
.fvg-img-placeholder{height:100%;display:flex;align-items:center;justify-content:center;font-size:1.6rem;}
.fvg-price{position:absolute;bottom:8px;right:8px;background:rgba(0,0,0,.75);color:rgba(255,255,255,.85);font-size:.55rem;font-weight:700;padding:3px 8px;border-radius:3px;}
.fvg-verified{position:absolute;top:8px;left:8px;background:rgba(45,181,75,.9);color:#fff;font-size:.48rem;font-weight:800;letter-spacing:.06em;padding:3px 7px;border-radius:3px;}
.fvg-body{padding:13px 15px;flex:1;display:flex;flex-direction:column;gap:4px;}
.fvg-head{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;}
.fvg-name{font-size:.84rem;font-weight:800;line-height:1.2;margin:0;}
.fvg-name a{color:#fff;}
.fvg-name a:hover{color:rgba(255,255,255,.7);}
.fvg-stars{color:#F5C400;font-size:.6rem;flex-shrink:0;letter-spacing:1px;}
.fvg-tags{display:flex;flex-wrap:wrap;gap:4px;}
.fvg-tag-c{font-size:.58rem;font-weight:700;color:rgba(255,255,255,.5);}
.fvg-tag-h{font-size:.58rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:3px;}
.fvg-exc{font-size:.65rem;color:rgba(255,255,255,.5);line-height:1.5;margin:2px 0;flex:1;}
.fvg-ctas{display:flex;gap:6px;margin-top:auto;padding-top:8px;align-items:center;}

/* Map */
.food-map-section{padding:0 24px 24px;}
.food-map-container{height:300px;border-radius:10px;overflow:hidden;background:rgba(255,255,255,.04);transition:height .3s;}
.food-map-expanded{height:500px !important;}
.food-map-note{font-size:.62rem;color:rgba(255,255,255,.3);margin:8px 0 0;display:flex;align-items:center;gap:5px;}
.food-map-note strong{color:rgba(255,255,255,.5);}
.fsm-expand-btn{font-size:.65rem;}

/* Neighbourhood cards */
.food-hoods{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 24px 24px;}
@media(max-width:700px){.food-hoods{grid-template-columns:1fr 1fr;}}
@media(max-width:460px){.food-hoods{grid-template-columns:1fr;}}
.fhood-card{display:block;position:relative;height:150px;border-radius:10px;overflow:hidden;transition:transform .2s;}
.fhood-card:hover{transform:scale(1.02);}
.fhc-img{position:absolute;inset:0;}
.fhc-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.fhood-card:hover .fhc-img img{transform:scale(1.06);}
.fhc-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.15) 60%);}
.fhc-body{position:absolute;bottom:0;left:0;right:0;padding:12px 14px;}
.fhc-count{display:inline-block;font-size:.52rem;font-weight:800;color:#fff;padding:2px 8px;border-radius:10px;margin-bottom:5px;}
.fhc-name{font-size:.82rem;font-weight:800;color:#fff;margin:0 0 3px;}
.fhc-desc{font-size:.58rem;color:rgba(255,255,255,.65);line-height:1.4;margin:0;}

/* Guide grid */
.food-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 24px 24px;}
@media(max-width:700px){.food-guide-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:460px){.food-guide-grid{grid-template-columns:1fr;}}
.fgg-card{display:block;position:relative;height:170px;border-radius:10px;overflow:hidden;transition:transform .2s;}
.fgg-card:hover{transform:translateY(-3px);}
.fgg-img{position:absolute;inset:0;}
.fgg-img img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.5);transition:filter .3s;}
.fgg-card:hover .fgg-img img{filter:brightness(.65);}
.fgg-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.3) 70%);}
.fgg-body{position:absolute;bottom:0;left:0;right:0;padding:14px;}
.fgg-icon{font-size:.9rem;margin-bottom:5px;}
.fgg-title{font-size:.78rem;font-weight:800;color:#fff;margin:0 0 4px;}
.fgg-desc{font-size:.58rem;color:rgba(255,255,255,.65);line-height:1.4;margin:0 0 5px;}
.fgg-meta{font-size:.55rem;color:rgba(255,255,255,.4);}

/* ══════════════════════════════════════════════
   NIGHTLIFE PAGE
══════════════════════════════════════════════ */
.nl-masthead,.fm-masthead{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;min-height:380px;}
.nlm-bg{position:absolute;inset:0;}
.nlm-poster{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0;}
.nlm-video{display:none;}
.nlm-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.98) 0%,rgba(0,0,0,.7) 40%,rgba(20,5,0,.35) 100%);}
.nlm-scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.06) 2px,rgba(0,0,0,.06) 4px);pointer-events:none;}
.nlm-inner{position:relative;z-index:1;padding:32px 28px 16px;}
.nlm-kicker{font-size:.6rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:8px;}
.nlm-live-dot{width:7px;height:7px;border-radius:50%;background:#FF6B00;display:inline-block;animation:live-pulse 1.5s ease-in-out infinite;}
@keyframes live-pulse{0%,100%{box-shadow:0 0 0 0 rgba(255,107,0,.5)}50%{box-shadow:0 0 0 6px rgba(255,107,0,0)}}
.nlm-headline{font-family:'Inter Tight',sans-serif;font-size:2.8rem;font-weight:900;color:#fff;margin:0 0 10px;letter-spacing:-.04em;line-height:1.0;}
.nlm-headline em{font-style:normal;}
.nlm-sub{font-size:.85rem;color:rgba(255,255,255,.6);max-width:520px;line-height:1.6;margin:0 0 20px;}
.nlm-tonight-stat{display:flex;align-items:center;gap:14px;margin-bottom:14px;}
.nlm-stat-wrap{display:flex;align-items:baseline;gap:5px;}
.nlm-stat-big{font-size:1.4rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif;}
.nlm-stat-label{font-size:.62rem;color:rgba(255,255,255,.45);}
.nlm-stat-label strong{color:#fff;}
.nlm-stat-sep{color:rgba(255,255,255,.2);font-size:.8rem;}
.nlm-ai{min-height:22px;margin-bottom:16px;}
.nlm-ai-text{font-size:.72rem;font-style:italic;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:6px;}
.nlm-ctas{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;}
.nlm-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 20px;border-radius:6px;font-size:.76rem;font-weight:700;color:#fff;transition:filter .15s;}
.nlm-btn:hover{filter:brightness(1.1);}
.nlm-btn-ghost{background:rgba(255,255,255,.1) !important;border:1px solid rgba(255,255,255,.2);}
.nlm-ticker{position:relative;z-index:1;display:flex;align-items:center;gap:12px;padding:12px 28px;background:rgba(0,0,0,.7);backdrop-filter:blur(8px);border-top:1px solid rgba(255,107,0,.2);overflow:hidden;}
.nlm-ticker-label{font-size:.55rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;flex-shrink:0;display:flex;align-items:center;gap:5px;}
.nlm-ticker-track{display:flex;gap:20px;overflow:hidden;flex:1;transition:transform .5s ease;}
.nlm-tick-item{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:.65rem;flex-shrink:0;}
.nlm-tick-name{font-weight:700;color:#fff;}
.nlm-tick-venue{color:rgba(255,255,255,.45);}
.nlm-tick-time{font-size:.58rem;background:rgba(255,107,0,.2);color:#FF6B00;padding:2px 6px;border-radius:3px;}
.nlm-ticker-all{font-size:.6rem;font-weight:800;flex-shrink:0;}

/* Genre bar */
.nl-genre-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.06);}
.nlgb-label{font-size:.6rem;font-weight:700;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.1em;margin-right:4px;}
.nlgb-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 14px;border-radius:20px;font-size:.65rem;font-weight:700;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.55);transition:all .15s;}
.nlgb-pill:hover{background:rgba(255,107,0,.1);border-color:rgba(255,107,0,.3);color:#FF6B00;}
.nlgb-on{background:rgba(255,107,0,.15);border-color:rgba(255,107,0,.4);}
.nlgb-clear{font-size:.62rem;font-weight:700;color:rgba(255,255,255,.35);padding:4px 10px;border-radius:4px;background:rgba(255,255,255,.06);}

/* Nightlife v12 - FAQ accordion only (everything else uses shared .mm-*, .mvg-*, .ev-card patterns) */
.nl-faq-section{padding:0 24px 36px;}
.nl-faq{margin-top:16px;border-radius:10px;overflow:hidden;}
.nl-faq-item{border-bottom:1px solid rgba(255,255,255,.06);}
.nl-faq-item:last-child{border-bottom:none;}
.nl-faq-q{width:100%;text-align:left;background:rgba(255,255,255,.02);border:none;color:rgba(255,255,255,.75);font-family:inherit;font-size:.78rem;font-weight:700;padding:16px 20px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;transition:background .15s,color .15s;line-height:1.4;}
.nl-faq-q:hover{background:rgba(255,255,255,.05);color:#fff;}
.nl-faq-item.open .nl-faq-q{color:#FF6B00;background:rgba(255,107,0,.07);}
.nl-faq-arrow{font-size:.6rem;color:rgba(255,255,255,.28);flex-shrink:0;transition:transform .25s,color .15s;}
.nl-faq-item.open .nl-faq-arrow{transform:rotate(180deg);color:#FF6B00;}
.nl-faq-a{padding:0 20px 16px;background:rgba(255,107,0,.025);}
.nl-faq-a p{font-size:.74rem;color:rgba(255,255,255,.52);line-height:1.75;margin:0;padding-top:8px;}
@media(max-width:700px){.nl-faq-section{padding:0 16px 24px;}.nl-faq-q{font-size:.72rem;padding:14px 16px;}.nl-faq-a{padding:0 16px 14px;}}

/* ══════════════════════════════════════════════
   SPORT PAGE
══════════════════════════════════════════════ */
.sport-masthead{position:relative;height:460px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;}
.spm-bg{position:absolute;inset:0;}
.spm-bg img{width:100%;height:100%;object-fit:cover;display:block;}
.spm-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,10,.97) 0%,rgba(0,5,20,.65) 40%,rgba(5,10,30,.25) 100%);}
.spm-grid-overlay{position:absolute;inset:0;background-image:linear-gradient(rgba(26,86,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(26,86,255,.04) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;}
.spm-inner{position:relative;z-index:1;padding:28px 28px 16px;}
.spm-kicker{font-size:.6rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:6px;}
.spm-headline{font-family:'Inter Tight',sans-serif;font-size:2.8rem;font-weight:900;color:#fff;margin:0 0 10px;letter-spacing:-.04em;line-height:1.0;}
.spm-headline em{font-style:normal;}
.spm-sub{font-size:.85rem;color:rgba(255,255,255,.6);max-width:520px;line-height:1.6;margin:0 0 18px;}
.spm-stats-row{display:flex;align-items:center;gap:14px;margin-bottom:14px;flex-wrap:wrap;}
.spm-stat{display:flex;align-items:baseline;gap:5px;}
.spm-stat-n{font-size:1.2rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif;}
.spm-stat-l{font-size:.62rem;color:rgba(255,255,255,.4);}
.spm-stat-sep{color:rgba(255,255,255,.2);}
.spm-ai{min-height:22px;margin-bottom:16px;}
.spm-ai-text{font-size:.72rem;font-style:italic;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:6px;}
.spm-ctas{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;}
.spm-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 20px;border-radius:6px;font-size:.76rem;font-weight:700;color:#fff;transition:filter .15s;}
.spm-btn:hover{filter:brightness(1.1);}
.spm-btn-ghost{background:rgba(255,255,255,.1) !important;border:1px solid rgba(255,255,255,.18);}
.spm-live-bar{position:relative;z-index:1;display:flex;align-items:center;gap:12px;padding:10px 28px;background:rgba(0,0,0,.8);backdrop-filter:blur(8px);border-top:1px solid rgba(26,86,255,.2);overflow:hidden;}
.spm-live-label{font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;flex-shrink:0;display:flex;align-items:center;gap:5px;}
.spm-live-track{display:flex;gap:20px;flex:1;overflow:hidden;white-space:nowrap;}
.spm-live-item{font-size:.65rem;color:rgba(255,255,255,.75);flex-shrink:0;font-weight:600;}
.spm-live-sep{color:rgba(255,255,255,.2);flex-shrink:0;}
.spm-live-note{font-size:.55rem;color:rgba(255,255,255,.25);flex-shrink:0;}
.spm-live-note strong{color:rgba(255,255,255,.4);}

/* Sport type nav */
.sport-type-nav{display:flex;gap:4px;padding:16px 24px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid rgba(255,255,255,.06);}
.sport-type-nav::-webkit-scrollbar{display:none}
.stn-pill{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 16px;border-radius:8px;min-width:64px;flex-shrink:0;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);transition:all .15s;}
.stn-pill:hover{background:rgba(26,86,255,.1);border-color:rgba(26,86,255,.3);}
.stn-icon{font-size:.95rem;color:rgba(255,255,255,.5);}
.stn-label{font-size:.56rem;font-weight:700;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;}
.stn-pill:hover .stn-icon,.stn-pill:hover .stn-label{color:#1A56FF;}

/* Fixture list */
.sport-fixture-list{display:flex;flex-direction:column;gap:3px;padding:0 24px 8px;}
.sfl-row{display:grid;grid-template-columns:1fr 2fr 1fr auto;align-items:center;gap:16px;padding:14px 18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:8px;transition:border-color .15s;}
.sfl-row:hover{border-color:rgba(255,255,255,.12);}
@media(max-width:760px){.sfl-row{grid-template-columns:1fr;gap:8px;}}
.sfl-comp-date{display:flex;flex-direction:column;gap:3px;}
.sfl-comp{font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.35);}
.sfl-date{font-size:.6rem;color:rgba(255,255,255,.5);display:flex;align-items:center;gap:4px;}
.sfl-time{font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px;}
.sfl-match-block{display:flex;align-items:center;justify-content:center;gap:10px;}
.sfl-team{display:flex;align-items:center;gap:7px;}
.sfl-away{flex-direction:row-reverse;}
.sfl-away-name{text-align:right;}
.sfl-team-badge{width:32px;height:32px;border-radius:4px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:900;color:#fff;letter-spacing:.04em;}
.sfl-team-name{font-size:.78rem;font-weight:700;color:#fff;white-space:nowrap;}
.sfl-vs-block{display:flex;align-items:center;justify-content:center;width:32px;}
.sfl-vs{font-size:.6rem;font-weight:800;color:rgba(255,255,255,.3);}
.sfl-venue-col{font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px;}
.sfl-ctas{display:flex;gap:6px;justify-content:flex-end;}
.sport-db-notice{font-size:.68rem;color:rgba(255,255,255,.35);padding:10px 24px 24px;display:flex;align-items:center;gap:6px;line-height:1.6;}
.sport-db-notice a{color:var(--dc-blue);}
.sport-db-notice strong{color:rgba(255,255,255,.55);}

/* Sport clubs deep */
.sport-clubs-deep{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:0 24px 24px;}
@media(max-width:760px){.sport-clubs-deep{grid-template-columns:1fr 1fr;}}
@media(max-width:460px){.sport-clubs-deep{grid-template-columns:1fr;}}
.scd-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;overflow:hidden;transition:border-color .15s,transform .15s;}
.scd-card:hover{border-color:rgba(255,255,255,.15);transform:translateY(-2px);}
.scd-img{height:200px;position:relative;overflow:hidden;}
.scd-img img{width:100%;height:100%;object-fit:cover;display:block;}
.scd-img-scrim{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.1),rgba(0,0,0,.6));}
.scd-badge-big{position:absolute;bottom:8px;left:10px;font-size:.55rem;font-weight:900;color:#fff;padding:4px 10px;border-radius:4px;letter-spacing:.06em;}
.scd-body{padding:12px 14px;}
.scd-league{font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;}
.scd-name{font-size:.88rem;font-weight:800;color:#fff;margin:0 0 6px;}
.scd-meta-row{display:flex;gap:10px;margin-bottom:6px;flex-wrap:wrap;}
.scd-meta-item{font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px;}
.scd-desc{font-size:.62rem;color:rgba(255,255,255,.5);line-height:1.5;margin:0 0 10px;}
.scd-ctas{display:flex;gap:6px;}

/* Stadiums */
.sport-stadiums{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 24px 24px;}
@media(max-width:760px){.sport-stadiums{grid-template-columns:1fr 1fr;}}
@media(max-width:460px){.sport-stadiums{grid-template-columns:1fr;}}
.sstd-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;overflow:hidden;transition:border-color .15s;}
.sstd-card:hover{border-color:rgba(255,255,255,.15);}
.sstd-img{height:160px;position:relative;overflow:hidden;}
.sstd-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.sstd-card:hover .sstd-img img{transform:scale(1.05);}
.sstd-ico-badge{position:absolute;bottom:8px;right:8px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:#fff;}
.sstd-body{padding:12px 14px;}
.sstd-name{font-size:.82rem;font-weight:800;color:#fff;margin:0 0 3px;}
.sstd-team{font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;}
.sstd-meta{display:flex;gap:10px;margin-bottom:5px;flex-wrap:wrap;}
.sstd-meta span{font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:3px;}
.sstd-desc{font-size:.62rem;color:rgba(255,255,255,.5);line-height:1.5;margin:0;}

/* Sport map */
.sport-map-wrap{display:grid;grid-template-columns:1fr 200px;gap:0;margin:0 24px 24px;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.08);}
@media(max-width:700px){.sport-map-wrap{grid-template-columns:1fr;}}
.sport-map{height:320px;}
.sport-map-pins{background:rgba(255,255,255,.04);padding:14px;display:flex;flex-direction:column;gap:8px;}
.smp-item{display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05);border-left:2px solid;}
.smp-item:last-child{border-bottom:none;}
.smp-item{padding-left:8px;}
.smp-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:3px;}
.smp-name{font-size:.65rem;font-weight:700;color:#fff;line-height:1.2;}
.smp-team{font-size:.55rem;color:rgba(255,255,255,.35);}

/* ── Responsive final pass ────────────────────────────────────────── */
@media(max-width:900px){
  .fm-headline,.spm-headline,.nlm-headline{font-size:2rem;}
  .food-masthead{height:220px;}.sport-masthead{height:400px;}
  .food-hoods,.food-guide-grid{padding:0 16px 16px;}
  .food-venues,.sport-clubs-deep,.sport-stadiums,.sport-fixture-list{padding:0 16px 16px;}
  .food-search-bar,.food-results-head,.food-cat-nav{padding-left:16px;padding-right:16px;}
  .food-map-section{padding:0 16px 16px;}
  .food-nl-block{margin:20px 16px 20px;}
  .cat-section-head{padding:20px 16px 12px;}
  .nl-genre-bar,.sport-type-nav{padding:12px 16px;}
  .nlm-inner,.spm-inner,.fm-inner{padding:20px 18px 12px;}
  .nlm-ticker,.spm-live-bar{padding:10px 18px;}
  .nlm-ctas,.spm-ctas,.fm-ctas{padding:0 18px 16px;}
  .sport-map-wrap{margin:0 16px 16px;}
  .nl-area-blocks{padding:0 16px 16px;}
  .food-stories-grid{padding:0 16px 16px;}
}
@media(max-width:600px){
  .fm-headline,.spm-headline,.nlm-headline{font-size:1.7rem;}
  .food-masthead{height:200px;}
  .sport-masthead{height:380px;}
  .sport-clubs-deep{grid-template-columns:1fr;}
  .sport-stadiums{grid-template-columns:1fr 1fr;}
  .food-stories-grid{grid-template-columns:1fr;}
  .fstory-card--hero{grid-row:auto;}
  .sport-map-wrap{grid-template-columns:1fr;}
  .sport-map{height:240px;}
  .sfl-row{grid-template-columns:1fr;}
  .fnl-inner{grid-template-columns:1fr;}
  .fnl-form{flex-direction:column;width:100%;}
  .fnl-input{min-width:0;width:100%;}
  .fnl-btn{width:100%;justify-content:center;}
}

/* ═══════════════════════════════════════════════════════════════════
   MUSIC / CULTURE PAGES + FOOTER UPGRADE - v9.3
   ═══════════════════════════════════════════════════════════════════ */

/* ── MUSIC page ────────────────────────────────────────────────────── */
.music-masthead{position:relative;height:460px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;}
.mm-bg{position:absolute;inset:0;}
.mm-bg img{width:100%;height:100%;object-fit:cover;display:block;}
.mm-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.97) 0%,rgba(0,0,0,.65) 40%,rgba(20,0,0,.25) 100%);}
.mm-vinyl{position:absolute;top:-60px;right:-60px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle at 50%,#111 18%,#1a1a1a 18.5%,#1a1a1a 60%,#111 60.5%);border:2px solid rgba(255,255,255,.06);animation:vinyl-spin 8s linear infinite;opacity:.3;}
.mm-vinyl-inner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border-radius:50%;background:rgba(232,32,26,.6);box-shadow:0 0 0 4px rgba(232,32,26,.2);}
@keyframes vinyl-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.mm-inner{position:relative;z-index:1;padding:28px 28px 16px;}
.mm-kicker{font-size:.6rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:6px;}
.mm-headline{font-family:'Inter Tight',sans-serif;font-size:2.8rem;font-weight:900;color:#fff;margin:0 0 10px;letter-spacing:-.04em;line-height:1.0;}
.mm-headline em{font-style:normal;}
.mm-sub{font-size:.85rem;color:rgba(255,255,255,.6);max-width:520px;line-height:1.6;margin:0 0 16px;}
.mm-stats{display:flex;align-items:center;gap:14px;margin-bottom:12px;flex-wrap:wrap;}
.mm-stat{display:flex;align-items:baseline;gap:5px;}
.mm-stat-n{font-size:1.2rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif;}
.mm-stat-l{font-size:.62rem;color:rgba(255,255,255,.4);}
.mm-stat-sep{color:rgba(255,255,255,.2);}
.mm-ai{min-height:22px;margin-bottom:16px;}
.mm-ai-text{font-size:.72rem;font-style:italic;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:6px;}
.mm-ctas{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.mm-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 20px;border-radius:6px;font-size:.76rem;font-weight:700;color:#fff;transition:filter .15s;}
.mm-btn:hover{filter:brightness(1.1);}
.mm-btn-ghost{background:rgba(255,255,255,.1) !important;border:1px solid rgba(255,255,255,.18);}
.mm-tonight-bar{position:relative;z-index:1;display:flex;align-items:center;gap:12px;padding:12px 28px;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);border-top:1px solid rgba(232,32,26,.2);overflow:hidden;}
.mm-tb-label{font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;flex-shrink:0;display:flex;align-items:center;gap:5px;}
.mm-tb-track{display:flex;gap:20px;overflow:hidden;flex:1;}
.mm-tb-item{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:.65rem;flex-shrink:0;}
.mm-tb-name{font-weight:700;color:#fff;}
.mm-tb-venue{color:rgba(255,255,255,.45);}
.mm-tb-time{font-size:.58rem;background:rgba(232,32,26,.2);color:#E8201A;padding:2px 6px;border-radius:3px;}
.mm-tb-all{font-size:.6rem;font-weight:800;flex-shrink:0;}
.music-genre-bar{display:flex;flex-wrap:wrap;gap:6px;padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.06);}
.mgb-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 14px;border-radius:20px;font-size:.65rem;font-weight:700;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.6);transition:all .15s;text-decoration:none !important;}
.mgb-pill:hover{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.22);}
/* Genre pill varied colours - Indie=red, Electronic=blue, Post-Punk=violet, Dance=orange, Pop=green, Jazz=yellow, Classical=teal, Hip-Hop=pink */
.mgb-pill:nth-child(1){background:rgba(232,32,26,.08);border-color:rgba(232,32,26,.25);color:rgba(232,32,26,.85);}
.mgb-pill:nth-child(1):hover{background:rgba(232,32,26,.18);color:#E8201A;}
.mgb-pill:nth-child(2){background:rgba(26,86,255,.08);border-color:rgba(26,86,255,.25);color:rgba(100,140,255,.9);}
.mgb-pill:nth-child(2):hover{background:rgba(26,86,255,.18);color:#6B9FFF;}
.mgb-pill:nth-child(3){background:rgba(124,58,237,.08);border-color:rgba(124,58,237,.25);color:rgba(167,139,250,.9);}
.mgb-pill:nth-child(3):hover{background:rgba(124,58,237,.18);color:#a78bfa;}
.mgb-pill:nth-child(4){background:rgba(255,107,0,.08);border-color:rgba(255,107,0,.25);color:rgba(255,107,0,.85);}
.mgb-pill:nth-child(4):hover{background:rgba(255,107,0,.18);color:#FF6B00;}
.mgb-pill:nth-child(5){background:rgba(45,181,75,.08);border-color:rgba(45,181,75,.25);color:rgba(45,181,75,.85);}
.mgb-pill:nth-child(5):hover{background:rgba(45,181,75,.18);color:#2DB54B;}
.mgb-pill:nth-child(6){background:rgba(245,196,0,.08);border-color:rgba(245,196,0,.25);color:rgba(245,196,0,.85);}
.mgb-pill:nth-child(6):hover{background:rgba(245,196,0,.18);color:#F5C400;}
.mgb-pill:nth-child(7){background:rgba(20,184,166,.08);border-color:rgba(20,184,166,.25);color:rgba(20,184,166,.85);}
.mgb-pill:nth-child(7):hover{background:rgba(20,184,166,.18);color:#14b8a6;}
.mgb-pill:nth-child(8){background:rgba(236,72,153,.08);border-color:rgba(236,72,153,.25);color:rgba(236,72,153,.85);}
.mgb-pill:nth-child(8):hover{background:rgba(236,72,153,.18);color:#ec4899;}
.music-venues-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;padding:0 24px 24px;}
.mvg-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;overflow:hidden;transition:border-color .15s,transform .15s;}
.mvg-card:hover{border-color:rgba(255,255,255,.15);transform:translateY(-2px);}
.mvg-img{height:140px;overflow:hidden;position:relative;}
.mvg-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.mvg-card:hover .mvg-img img{transform:scale(1.05);}
.mvg-cap{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.7);color:rgba(255,255,255,.8);font-size:.52rem;font-weight:700;padding:3px 8px;border-radius:3px;}
.mvg-body{padding:13px 15px;}
.mvg-type{font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;}
.mvg-name{font-size:.88rem;font-weight:800;color:#fff;margin:0 0 4px;}
.mvg-hood{font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px;margin-bottom:6px;}
.mvg-desc{font-size:.65rem;color:rgba(255,255,255,.55);line-height:1.5;margin:0 0 10px;}
.music-acts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:0 24px 24px;}
@media(max-width:900px){.music-acts-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:500px){.music-acts-grid{grid-template-columns:1fr;}}
.mag-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-top:2px solid;border-radius:10px;padding:16px;transition:border-color .15s,transform .15s;}
.mag-card:hover{transform:translateY(-2px);}
.mag-genre{font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;}
.mag-name{font-size:.88rem;font-weight:800;color:#fff;margin:0 0 6px;}
.mag-desc{font-size:.65rem;color:rgba(255,255,255,.55);line-height:1.5;margin:0 0 10px;flex:1;}
.mag-link{font-size:.65rem;font-weight:700;}
.music-tv-cta{margin:0 24px 24px;background:linear-gradient(135deg,rgba(232,32,26,.1),rgba(232,32,26,.04));border:1px solid rgba(232,32,26,.2);border-radius:12px;padding:24px 28px;}
.mtv-inner{display:flex;align-items:center;gap:24px;}
@media(max-width:700px){.mtv-inner{flex-direction:column;align-items:flex-start;}}
.mtv-left{flex:1;}
.mtv-badge{font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--dc-red);display:flex;align-items:center;gap:5px;margin-bottom:8px;}
.mtv-title{font-size:1rem;font-weight:800;color:#fff;margin:0 0 6px;}
.mtv-desc{font-size:.72rem;color:rgba(255,255,255,.55);line-height:1.5;margin:0;}
.mtv-btn{display:inline-flex;align-items:center;gap:7px;padding:12px 22px;border-radius:6px;font-size:.78rem;font-weight:700;color:#fff;white-space:nowrap;transition:filter .15s;}
.mtv-btn:hover{filter:brightness(1.1);}
.music-no-events{text-align:center;padding:48px 24px;display:flex;flex-direction:column;align-items:center;gap:12px;}
.music-no-events i{font-size:2rem;opacity:.3;}
.music-no-events p{font-size:.82rem;color:rgba(255,255,255,.5);margin:0;}
.music-no-events a{color:var(--dc-red);}

/* ── CULTURE page ──────────────────────────────────────────────────── */
.culture-masthead{position:relative;height:440px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;}
.cm-bg{position:absolute;inset:0;}
.cm-bg img{width:100%;height:100%;object-fit:cover;display:block;}
.cm-scrim{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.95) 0%,rgba(0,0,0,.5) 50%,rgba(0,0,0,.15) 100%);}
.cm-color-wash{position:absolute;inset:0;opacity:.12;mix-blend-mode:multiply;}
.cm-inner{position:relative;z-index:1;padding:28px 28px 20px;}
.cm-kicker{font-size:.6rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;display:flex;align-items:center;gap:6px;}
.cm-headline{font-family:'Inter Tight',sans-serif;font-size:2.8rem;font-weight:900;color:#fff;margin:0 0 10px;letter-spacing:-.04em;line-height:1.0;}
.cm-headline em{font-style:normal;}
.cm-sub{font-size:.85rem;color:rgba(255,255,255,.6);max-width:520px;line-height:1.6;margin:0 0 16px;}
.cm-stats{display:flex;align-items:center;gap:14px;margin-bottom:12px;}
.cm-stat{display:flex;align-items:baseline;gap:5px;}
.cm-stat-n{font-size:1.2rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif;}
.cm-stat-l{font-size:.62rem;color:rgba(255,255,255,.4);}
.cm-stat-sep{color:rgba(255,255,255,.2);}
.cm-ai{min-height:22px;margin-bottom:16px;}
.cm-ctas{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.cm-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 20px;border-radius:6px;font-size:.76rem;font-weight:700;color:#fff;transition:filter .15s;}
.cm-btn:hover{filter:brightness(1.1);}
.cm-btn-ghost{background:rgba(255,255,255,.1) !important;border:1px solid rgba(255,255,255,.18);}
.culture-strands{display:grid;grid-template-columns:repeat(6,1fr);gap:0;border-bottom:1px solid rgba(255,255,255,.06);}
@media(max-width:900px){.culture-strands{grid-template-columns:repeat(3,1fr);}}
@media(max-width:500px){.culture-strands{grid-template-columns:repeat(2,1fr);}}
.cs-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 12px;border-right:1px solid rgba(255,255,255,.06);transition:background .15s;text-align:center;text-decoration:none !important;color:inherit;}
.cs-item:last-child{border-right:none;}
.cs-item:hover{background:rgba(255,255,255,.04);}
.cs-icon{font-size:1rem;}
.cs-label{font-size:.62rem;font-weight:700;color:#fff;text-decoration:none !important;}
.cs-desc{font-size:.54rem;color:rgba(255,255,255,.4);line-height:1.4;}
.culture-venues-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;padding:0 24px 24px;}
.cvg-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;overflow:hidden;transition:border-color .15s,transform .15s;}
.cvg-card:hover{border-color:rgba(255,255,255,.15);transform:translateY(-2px);}
.cvg-img{height:140px;overflow:hidden;}
.cvg-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.cvg-card:hover .cvg-img img{transform:scale(1.05);}
.cvg-body{padding:13px 15px;}
.cvg-type{font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;}
.cvg-name{font-size:.88rem;font-weight:800;color:#fff;margin:0 0 4px;}
.cvg-hood{font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px;margin-bottom:6px;}
.cvg-desc{font-size:.65rem;color:rgba(255,255,255,.55);line-height:1.5;margin:0 0 10px;}

/* ── FOOTER upgrade ────────────────────────────────────────────────── */
.NL {
  display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:center;
  background:var(--dark3);padding:48px 56px;
  border-top:1px solid rgba(255,255,255,.07);
}
@media(max-width:800px){.NL{grid-template-columns:1fr;gap:24px;padding:28px 24px;}}
.nl-left{display:flex;flex-direction:column;gap:10px;}
.nl-heading{font-family:'Inter Tight',sans-serif;font-size:2rem;font-weight:900;color:#fff;line-height:1.1;}
.nl-heading span{color:var(--dc-red);}
.nl-sub{font-size:.82rem;color:rgba(255,255,255,.5);line-height:1.6;}
.nl-trust{font-size:.65rem;color:rgba(255,255,255,.35);display:flex;align-items:center;gap:5px;}
.nl-right{display:flex;align-items:center;}
.nl-form-wrap{width:100%;}
.nl-form{display:flex;gap:8px;margin-bottom:12px;}
.nl-input{flex:1;padding:11px 16px;border-radius:6px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);color:#fff;font-size:.8rem;outline:none;}
.nl-input:focus{border-color:rgba(255,255,255,.3);}
.nl-btn{padding:11px 20px;border-radius:6px;border:none;background:var(--dc-red);color:#fff;font-size:.78rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:filter .15s;}
.nl-btn:hover{filter:brightness(1.1);}
.nl-categories{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.nl-cat-label{font-size:.6rem;color:rgba(255,255,255,.35);margin-right:2px;}
.nl-cat-check{display:flex;align-items:center;gap:5px;cursor:pointer;}
.nl-cat-check input{accent-color:var(--dc-red);cursor:pointer;}
.nl-cat-check span{font-size:.65rem;color:rgba(255,255,255,.55);font-weight:600;}
.FT{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;padding:40px 56px;background:var(--dark);border-top:1px solid rgba(255,255,255,.07);}
@media(max-width:900px){.FT{grid-template-columns:1fr 1fr;gap:24px;padding:28px 24px;}}
@media(max-width:500px){.FT{grid-template-columns:1fr;}}
.ft-brand-col{display:flex;flex-direction:column;gap:12px;}
.ft-brand{display:flex;align-items:center;gap:8px;font-family:'Inter Tight',sans-serif;font-size:.95rem;font-weight:900;color:#fff;letter-spacing:.04em;}
.ft-desc{font-size:.65rem;color:rgba(255,255,255,.4);line-height:1.7;}
.ft-desc a{color:var(--dc-blue);}
.ft-soc{display:flex;gap:6px;}
.ft-si{width:30px;height:30px;border-radius:7px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:.75rem;color:rgba(255,255,255,.55);transition:all .14s;}
.ft-si:hover{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.2);}
.ft-live-stats{display:flex;gap:16px;flex-wrap:wrap;}
.ft-ls-item{display:flex;flex-direction:column;gap:2px;}
.ft-ls-n{font-size:1.1rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif;}
.ft-ls-l{font-size:.55rem;color:rgba(255,255,255,.35);}
.ft-col h4{font-size:.48rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.3);margin:0 0 14px;}
.ft-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;}
.ft-col a{font-size:.72rem;font-weight:400;color:rgba(255,255,255,.5);transition:color .14s;display:flex;align-items:center;gap:6px;}
.ft-col a:hover{color:#fff;}
.ft-col a i{font-size:.65rem;width:12px;text-align:center;color:rgba(255,255,255,.3);}
.ft-new{font-size:.48rem;font-weight:800;letter-spacing:.08em;background:var(--dc-red);color:#fff;padding:1px 5px;border-radius:3px;text-transform:uppercase;}
.ft-bottom{display:flex;align-items:center;justify-content:space-between;padding:14px 56px;background:var(--dark);border-top:1px solid rgba(255,255,255,.06);font-size:.58rem;color:rgba(255,255,255,.3);flex-wrap:wrap;gap:8px;}
@media(max-width:700px){.ft-bottom{padding:12px 24px;flex-direction:column;gap:6px;text-align:center;}}
.ft-bottom a{color:rgba(255,255,255,.4);}
.ft-bottom a:hover{color:#fff;}
.ft-bottom-links{display:flex;gap:14px;}

/* ── Responsive fixes for new pages ──────────────────────────────── */
@media(max-width:900px){
  .music-masthead,.culture-masthead{height:380px;}
  .mm-headline,.cm-headline{font-size:2rem;}
  .music-venues-grid,.culture-venues-grid,.music-acts-grid{padding:0 16px 16px;}
  .music-genre-bar,.culture-strands{padding:12px 16px;}
  .music-tv-cta{margin:0 16px 16px;padding:18px 20px;}
  .mm-inner,.cm-inner{padding:20px 18px 12px;}
  .mm-tonight-bar{padding:10px 18px;}
  .mm-ctas,.cm-ctas{margin-bottom:12px;}
}
@media(max-width:600px){
  .music-masthead,.culture-masthead{height:320px;}
  .mm-headline,.cm-headline{font-size:1.7rem;}
  .music-acts-grid{grid-template-columns:1fr 1fr;}
  .culture-strands{grid-template-columns:repeat(3,1fr);}
}

/* ── Hide Events This Week bento tile ─────────────────────── */
.BENTO .BT:has(#stat-week) { display:none !important; }
.BENTO { grid-template-columns:1fr 1fr 1fr; grid-template-rows:116px; }
@media(max-width:640px){ .BENTO { grid-template-columns:1fr 1fr; grid-template-rows:auto; } }

/* ═══════════════════════════════════════════════════════════════════
   STORY v2 SINGLE + COMING SOON PAGES - v9.3
   ═══════════════════════════════════════════════════════════════════ */

/* ── Story: back link ─────────────────────────────────────────────── */
.story-back {
  display:inline-flex;align-items:center;gap:6px;
  font-size:.68rem;font-weight:700;color:rgba(255,255,255,.4);
  padding:16px 28px 8px;transition:color .15s;
}
.story-back:hover{color:#fff;}

/* ── Story: full-bleed hero ───────────────────────────────────────── */
.story-hero-full {
  position:relative;
  height:400px;overflow:hidden;
  margin:0 0 0;
}
.story-hero-img-full {
  width:100%;height:100%;object-fit:cover;display:block;
}
.shf-scrim {
  position:absolute;inset:0;
  background:linear-gradient(to bottom,rgba(0,0,0,.1) 0%,rgba(0,0,0,.6) 100%);
}
.shf-cat {
  position:absolute;top:20px;left:28px;
  font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:#fff;padding:5px 12px;border-radius:4px;
}

/* ── Story article v2 ────────────────────────────────────────────── */
.story-article-v2 {
  max-width:680px;margin:0 auto;padding:32px 28px 0;
}
@media(max-width:760px){.story-article-v2{padding:24px 18px 0;}}

.sv2-header {margin-bottom:28px;}
.sv2-cat {
  display:flex;align-items:center;gap:7px;
  font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  margin-bottom:12px;
}
.sv2-cat-dot {width:7px;height:7px;border-radius:50%;display:inline-block;}
.sv2-headline {
  font-family:'Inter Tight',sans-serif;
  font-size:clamp(1.6rem,3.5vw,2.4rem);
  font-weight:900;color:#fff;line-height:1.1;
  letter-spacing:-.03em;margin:0 0 14px;
}
.sv2-standfirst {
  font-size:1.05rem;color:rgba(255,255,255,.65);line-height:1.65;
  font-weight:400;margin:0 0 20px;border-left:3px solid rgba(255,255,255,.12);
  padding-left:16px;font-style:italic;
}
.sv2-byline {
  display:flex;align-items:center;justify-content:space-between;
  gap:12px;padding:14px 0;
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
  flex-wrap:wrap;
}
.sv2-byline-left {display:flex;align-items:center;gap:10px;}
.sv2-avatar {width:36px;height:36px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.1);}
.sv2-byline-text {display:flex;flex-direction:column;gap:2px;}
.sv2-author {font-size:.75rem;font-weight:700;color:#fff;}
.sv2-meta {font-size:.62rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:5px;}
.sv2-sep {opacity:.4;}
.sv2-actions {display:flex;align-items:center;gap:10px;}

/* Progress ring */
.sv2-progress-wrap {
  display:flex;align-items:center;justify-content:center;
  position:relative;width:32px;height:32px;
}
.sv2-progress-ring {overflow:visible;}
.sv2-progress-pct {
  position:absolute;font-size:.42rem;font-weight:800;
  color:rgba(255,255,255,.5);
}

/* Share buttons */
.sv2-share {display:flex;align-items:center;gap:5px;}
.sv2-share-label {font-size:.6rem;color:rgba(255,255,255,.35);margin-right:3px;}
.sv2-share-btn {
  width:30px;height:30px;border-radius:6px;
  display:flex;align-items:center;justify-content:center;
  font-size:.7rem;border:none;cursor:pointer;transition:all .15s;
}
.sv2-tw {background:rgba(255,255,255,.08);color:rgba(255,255,255,.6);}
.sv2-tw:hover{background:#000;color:#fff;}
.sv2-fb {background:rgba(26,86,255,.15);color:#60a5fa;}
.sv2-fb:hover{background:#1877f2;color:#fff;}
.sv2-wa {background:rgba(37,211,102,.12);color:#25d366;}
.sv2-wa:hover{background:#25d366;color:#fff;}
.sv2-cp {background:rgba(255,255,255,.06);color:rgba(255,255,255,.5);}
.sv2-cp:hover{background:rgba(255,255,255,.15);color:#fff;}

/* Category rule */
.sv2-cat-rule {
  height:3px;border-radius:2px;margin-top:20px;
  opacity:.7;
}

/* Body */
.sv2-body {
  font-size:.95rem;line-height:1.85;color:rgba(255,255,255,.82);
  margin-top:28px;
}
.sv2-body p {margin-bottom:1.4em;}
.sv2-body h2 {font-family:'Inter Tight',sans-serif;font-size:1.3rem;font-weight:900;color:#fff;margin:2em 0 .6em;letter-spacing:-.02em;}
.sv2-body h3 {font-family:'Inter Tight',sans-serif;font-size:1.05rem;font-weight:800;color:#fff;margin:1.6em 0 .5em;}
.sv2-body img {width:100%;border-radius:8px;margin:1.5em 0;display:block;}
.sv2-body blockquote {
  border-left:3px solid var(--dc-red);padding:14px 20px;
  margin:1.5em 0;background:rgba(255,255,255,.04);border-radius:0 8px 8px 0;
  font-style:italic;color:rgba(255,255,255,.7);font-size:1.05em;
}
.sv2-body ul,.sv2-body ol {padding-left:1.5em;margin-bottom:1.4em;}
.sv2-body li {margin-bottom:.4em;}
.sv2-body a {color:var(--dc-blue);text-decoration:underline !important;}
.sv2-body strong {color:#fff;font-weight:700;}
.sv2-body .wp-block-image {margin:1.5em 0;}
.sv2-body .wp-block-image figcaption {font-size:.72rem;color:rgba(255,255,255,.35);text-align:center;margin-top:6px;font-style:italic;}
.sv2-body .wp-block-pullquote {
  border-top:2px solid var(--dc-red);border-bottom:2px solid var(--dc-red);
  padding:20px 0;margin:2em 0;text-align:center;
}
.sv2-body .wp-block-pullquote blockquote {border:none;padding:0;margin:0;background:none;}
.sv2-body .wp-block-pullquote p {font-size:1.25rem;font-weight:700;color:#fff;font-style:normal;}

/* Tags */
.sv2-tags {
  display:flex;flex-wrap:wrap;gap:6px;margin:24px 0 0;padding-top:20px;
  border-top:1px solid rgba(255,255,255,.07);
}
.sv2-tag {
  font-size:.62rem;font-weight:700;padding:4px 12px;border-radius:20px;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.55);transition:all .15s;
}
.sv2-tag:hover{background:rgba(255,255,255,.12);color:#fff;}

/* Footer */
.sv2-footer {
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;padding:24px 0;margin-top:24px;
  border-top:1px solid rgba(255,255,255,.07);
  flex-wrap:wrap;
}
.sv2-footer-author {display:flex;align-items:center;gap:12px;}
.sv2-footer-avatar {width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.1);}
.sv2-footer-by {font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.35);}
.sv2-footer-name {font-size:.82rem;font-weight:800;color:#fff;}
.sv2-footer-bio {font-size:.62rem;color:rgba(255,255,255,.4);}
.sv2-footer-share {display:flex;flex-direction:column;gap:6px;align-items:flex-end;}
.sv2-footer-share-label {font-size:.6rem;color:rgba(255,255,255,.35);}

/* Related stories */
.sv2-related {
  max-width:680px;margin:0 auto;padding:32px 28px 0;
}
@media(max-width:760px){.sv2-related{padding:24px 18px 0;}}
.sv2-related-head {
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:16px;
}
.sv2-related-title {
  font-family:'Inter Tight',sans-serif;font-size:1rem;font-weight:900;color:#fff;
}
.sv2-related-all {font-size:.68rem;font-weight:700;color:var(--dc-blue);}
.sv2-related-grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;
}
@media(max-width:600px){.sv2-related-grid{grid-template-columns:1fr;}}
.sv2-rel-card {
  display:block;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);border-radius:10px;overflow:hidden;
  transition:border-color .15s,transform .15s;
}
.sv2-rel-card:hover{border-color:rgba(255,255,255,.18);transform:translateY(-2px);}
.sv2-rel-img {height:120px;overflow:hidden;}
.sv2-rel-img img {width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.sv2-rel-card:hover .sv2-rel-img img{transform:scale(1.06);}
.sv2-rel-body {padding:12px 13px;}
.sv2-rel-cat {font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;}
.sv2-rel-title {font-size:.78rem;font-weight:700;color:#fff;line-height:1.3;margin-bottom:5px;}
.sv2-rel-meta {font-size:.55rem;color:rgba(255,255,255,.3);}

/* Newsletter CTA below article */
.sv2-nl-cta {
  max-width:680px;margin:24px auto 32px;padding:0 28px;
}
@media(max-width:760px){.sv2-nl-cta{padding:0 18px;}}
.sv2-nl-inner {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:12px;padding:24px 28px;
  display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;
}
@media(max-width:600px){.sv2-nl-inner{grid-template-columns:1fr;}}
.sv2-nl-title {font-size:.88rem;font-weight:800;color:#fff;margin-bottom:4px;}
.sv2-nl-sub {font-size:.7rem;color:rgba(255,255,255,.5);}
.sv2-nl-form {display:flex;gap:8px;}
.sv2-nl-input {padding:9px 14px;border-radius:6px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);color:#fff;font-size:.75rem;outline:none;min-width:180px;}
.sv2-nl-input:focus{border-color:rgba(255,255,255,.3);}
.sv2-nl-btn {padding:9px 16px;border-radius:6px;border:none;font-size:.75rem;font-weight:700;color:#fff;cursor:pointer;transition:filter .15s;white-space:nowrap;}
.sv2-nl-btn:hover{filter:brightness(1.1);}
@media(max-width:500px){.sv2-nl-form{flex-direction:column;}.sv2-nl-input{min-width:0;}}

/* ── COMING SOON PAGES ────────────────────────────────────────────── */
.cs-page-wrap {
  position:relative;min-height:calc(100vh - 60px);
  display:flex;align-items:center;justify-content:center;
  padding:40px 24px;overflow:hidden;
}
.csp-glow {
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:500px;height:500px;border-radius:50%;
  opacity:.06;filter:blur(80px);pointer-events:none;
}
.csp-inner {
  position:relative;z-index:1;
  max-width:560px;width:100%;text-align:center;
}
.csp-icon {
  width:72px;height:72px;border-radius:20px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.8rem;margin:0 auto 20px;
}
.csp-badge {
  display:inline-block;font-size:.6rem;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;padding:5px 14px;border-radius:20px;
  background:rgba(255,255,255,.1);color:rgba(255,255,255,.6);
  border:1px solid rgba(255,255,255,.15);margin-bottom:16px;
}
.csp-title {
  font-family:'Inter Tight',sans-serif;font-size:2.4rem;font-weight:900;
  color:#fff;margin:0 0 14px;letter-spacing:-.03em;
}
.csp-desc {
  font-size:.9rem;color:rgba(255,255,255,.6);line-height:1.65;margin:0 0 24px;
}
.csp-waitlist-bar {
  height:4px;background:rgba(255,255,255,.08);border-radius:2px;
  margin:0 auto 10px;max-width:400px;overflow:hidden;
}
.csp-wbar-fill {
  height:100%;width:68%;border-radius:2px;
  animation:wbar-grow 1.5s ease-out forwards;
}
@keyframes wbar-grow{from{width:0}to{width:68%}}
.csp-stats {
  display:flex;align-items:baseline;justify-content:center;gap:6px;margin-bottom:28px;
}
.csp-stat-n {font-size:1.6rem;font-weight:900;color:#fff;font-family:'Inter Tight',sans-serif;}
.csp-stat-l {font-size:.72rem;color:rgba(255,255,255,.45);}
.csp-form {margin:0 0 24px;}
.csp-form-inner {display:flex;gap:8px;max-width:420px;margin:0 auto 8px;}
.csp-input {
  flex:1;padding:12px 16px;border-radius:7px;
  border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);
  color:#fff;font-size:.82rem;outline:none;
}
.csp-input:focus{border-color:rgba(255,255,255,.3);}
.csp-btn {
  padding:12px 20px;border-radius:7px;border:none;
  font-size:.8rem;font-weight:700;color:#fff;cursor:pointer;
  white-space:nowrap;display:flex;align-items:center;gap:6px;
  transition:filter .15s;
}
.csp-btn:hover{filter:brightness(1.1);}
.csp-form-note {font-size:.62rem;color:rgba(255,255,255,.35);}
.csp-features {
  display:grid;grid-template-columns:1fr 1fr;gap:8px;
  max-width:400px;margin:0 auto 32px;text-align:left;
}
.csp-feat {
  font-size:.72rem;color:rgba(255,255,255,.65);
  display:flex;align-items:center;gap:7px;
}
.csp-feat i {flex-shrink:0;width:14px;text-align:center;}
.csp-success {
  display:flex;align-items:center;gap:12px;
  padding:16px 20px;background:rgba(45,181,75,.1);border:1px solid rgba(45,181,75,.25);
  border-radius:8px;text-align:left;max-width:420px;margin:0 auto;
}
.csp-success i {font-size:1.4rem;flex-shrink:0;}
.csp-success strong {display:block;font-size:.82rem;font-weight:700;color:#fff;margin-bottom:3px;}
.csp-success p {font-size:.68rem;color:rgba(255,255,255,.5);margin:0;}

/* Preview mockups */
.csp-preview {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:12px;padding:16px;margin-top:0;
}
.csp-preview-inner { padding:20px;overflow:hidden; }
.csp-preview-label {
  font-size:.55rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(255,255,255,.3);margin-bottom:12px;text-align:left;
}
/* Dating preview */
.csp-prev-dating {display:flex;gap:10px;justify-content:center;}
.csp-prev-card {
  flex:1;max-width:160px;padding:14px;border-radius:10px;
  display:flex;flex-direction:column;gap:8px;
}
.csp-prev-avatar {
  width:44px;height:44px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:.9rem;color:#fff;
}
.csp-prev-name {font-size:.68rem;font-weight:700;color:#fff;}
.csp-prev-tags {display:flex;flex-wrap:wrap;gap:4px;}
.csp-prev-tags span {font-size:.55rem;background:rgba(255,255,255,.1);padding:2px 7px;border-radius:10px;color:rgba(255,255,255,.6);}
/* Market preview */
.csp-prev-market {display:flex;flex-direction:column;gap:8px;}
.csp-prev-listing {display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.05);border-radius:7px;padding:8px;}
.csp-prev-listing-img {width:36px;height:36px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.9rem;}
.csp-prev-listing-title {font-size:.72rem;font-weight:700;color:#fff;}
.csp-prev-listing-meta {font-size:.6rem;color:rgba(255,255,255,.4);}
/* Jobs preview */
.csp-prev-jobs {display:flex;flex-direction:column;gap:8px;}
.csp-prev-job {display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.05);border-radius:7px;padding:8px;flex:1;}
.csp-prev-job-co {width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0;}
.csp-prev-job-title {font-size:.72rem;font-weight:700;color:#fff;}
.csp-prev-job-meta {font-size:.6rem;color:rgba(255,255,255,.4);}
.csp-prev-job-badge {font-size:.48rem;font-weight:800;letter-spacing:.08em;background:var(--dc-red);color:#fff;padding:2px 6px;border-radius:3px;margin-left:auto;flex-shrink:0;}

/* ── single-centre override ───────────────────────────────────────── */
.single-centre {
  background:var(--dark2,#111114) !important;
  padding:0 !important;
  max-width:none;
}
/* white-bg on event/venue/story pages overrides dark single-centre */
.CENTRE.single-centre.white-bg {
  background:#ffffff !important;
}

/* Responsive story v2 */
@media(max-width:760px){
  .story-hero-full{height:260px;}
  .sv2-headline{font-size:1.5rem;}
  .sv2-standfirst{font-size:.9rem;}
  .sv2-nl-inner{grid-template-columns:1fr;}
  .csp-title{font-size:1.8rem;}
  .csp-features{grid-template-columns:1fr;}
  .csp-prev-dating{flex-direction:column;align-items:center;}
}

/* ═══════════════════════════════════════════════════════════════════
   v9.3 FIXES - Hero brand, BENTO 3-col, LIVE dot red
   ═══════════════════════════════════════════════════════════════════ */

/* ── Hero: LIVE badge left, MCR.CITY brand right ─────────────────── */
.vs-eyebrow-left {
  position:absolute;top:16px;left:20px;z-index:3;
}
.vs-live-badge {
  display:inline-flex;align-items:center;gap:5px;
  font-size:.55rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  background:var(--dc-red);color:#fff;
  padding:4px 10px;border-radius:4px;
}
.vs-live-dot-sm {
  display:inline-block;width:6px;height:6px;border-radius:50%;background:#fff;
  animation:wot-blink 1.2s ease infinite;
}
.vs-brand-right {
  position:absolute;top:16px;right:20px;z-index:3;
  font-family:'Inter Tight',sans-serif;font-size:.85rem;font-weight:900;
  color:rgba(255,255,255,.9);letter-spacing:.08em;
}
.vs-brand-right span { color:var(--dc-red); }

/* ── BENTO 3-column (stats row + 2 feature cards) ────────────────── */
.BENTO.bento-3col {
  grid-template-columns:1fr 1fr 1fr;
  grid-template-rows:auto auto;
}
.BENTO.bento-3col .BT { min-height:100px; }
.BENTO.bento-3col .BF { grid-column:span 1; min-height:160px; }
@media(max-width:640px){.BENTO.bento-3col{grid-template-columns:1fr 1fr;}}
@media(max-width:400px){.BENTO.bento-3col{grid-template-columns:1fr;}}

/* ── Override old :has() rule with display:none on stat-week BT ───── */
#stat-week { display:none; }

/* ── Calendar: ensure all category pill colours are vivid ─────────── */
.wot-cal-ev[data-c="music"]    { background:rgba(232,32,26,.22) !important;  color:#ff9999 !important;  border-left-color:#E8201A !important; }
.wot-cal-ev[data-c="sport"]    { background:rgba(26,86,255,.22) !important;  color:#8ab4ff !important;  border-left-color:#1A56FF !important; }
.wot-cal-ev[data-c="food"]     { background:rgba(45,181,75,.18) !important;  color:#7ee89a !important;  border-left-color:#2DB54B !important; }
.wot-cal-ev[data-c="nightlife"]{ background:rgba(255,107,0,.22) !important;  color:#ffb366 !important;  border-left-color:#FF6B00 !important; }
.wot-cal-ev[data-c="night"]    { background:rgba(255,107,0,.22) !important;  color:#ffb366 !important;  border-left-color:#FF6B00 !important; }
.wot-cal-ev[data-c="culture"]  { background:rgba(124,58,237,.22) !important; color:#c4a0ff !important;  border-left-color:#7C3AED !important; }
.wot-cal-ev[data-c="family"]   { background:rgba(245,196,0,.18) !important;  color:#ffe066 !important;  border-left-color:#F5C400 !important; }

/* ── Logo sizing ──────────────────────────────────────────────────── */
.sb-logo-img {
  width:110px !important;
  height:110px !important;
  object-fit:contain;
  display:block;
  border-radius:10px;
}
/* SVG fallback logo - compact */
/* sb-logo-svg consolidated - see top of CSS */
.sb-logo-city { color:rgba(255,255,255,.42);font-size:.9rem; }
.sb-logo-slot {
  padding:14px 10px 10px !important;
  display:flex;align-items:center;justify-content:center;
}

/* ── WOT LIVE eyebrow - red ───────────────────────────────────────── */
.wot-eyebrow { color:var(--dc-red) !important; }

/* ═══════════════════════════════════════════════════════════════════
   STORIES PAGE v2 - Advanced editorial layout
   ═══════════════════════════════════════════════════════════════════ */

/* ── Masthead ─────────────────────────────────────────────────────── */
.stories-masthead {
  background:var(--dark3);
  border-bottom:1px solid rgba(255,255,255,.07);
  padding:36px 28px 24px;
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  flex-wrap:wrap;
}
.stm-inner { flex:1;min-width:280px; }
.stm-kicker { font-size:.58rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--dc-red);margin-bottom:10px;display:flex;align-items:center;gap:6px; }
.stm-title { font-family:'Inter Tight',sans-serif;font-size:2.2rem;font-weight:900;color:#fff;margin:0 0 8px;letter-spacing:-.03em; }
.stm-sub { font-size:.82rem;color:rgba(255,255,255,.55);margin:0 0 12px; }
.stm-stats { display:flex;gap:10px;align-items:center;font-size:.68rem;color:rgba(255,255,255,.45);flex-wrap:wrap; }
.stm-stats strong { color:#fff;font-weight:800; }
.stm-sep { color:rgba(255,255,255,.2); }
.stm-ai { min-height:20px;margin-top:8px; }
.stm-ai-text { font-size:.72rem;font-style:italic;color:rgba(255,255,255,.5);display:flex;align-items:center;gap:6px; }
.stm-search { display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 14px;min-width:260px; }
.stm-search-ico { color:rgba(255,255,255,.35);font-size:.8rem;flex-shrink:0; }
.stm-search-input { background:none;border:none;outline:none;color:#fff;font-size:.78rem;flex:1; }
.stm-search-input::placeholder { color:rgba(255,255,255,.3); }
.stm-search-btn { background:var(--dc-red);border:none;color:#fff;font-size:.72rem;font-weight:700;padding:6px 14px;border-radius:5px;cursor:pointer;white-space:nowrap;transition:filter .15s; }
.stm-search-btn:hover { filter:brightness(1.1); }

/* ── Category filter bar ──────────────────────────────────────────── */
.stories-cat-bar { display:flex;flex-wrap:wrap;gap:6px;padding:16px 28px;border-bottom:1px solid rgba(255,255,255,.06);overflow-x:auto;scrollbar-width:none; }
.stories-cat-bar::-webkit-scrollbar { display:none; }
.scb-pill { display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:20px;font-size:.68rem;font-weight:700;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.55);transition:all .15s;white-space:nowrap; }
.scb-pill:hover { background:rgba(255,255,255,.1);color:#fff; }
.scb-on { background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.2); }
.scb-pill[style*="--pc"] { border-color:rgba(var(--pc),.3); }
.scb-pill[style*="--pc"].scb-on { background:var(--pc);color:#fff;border-color:var(--pc); }
.scb-dot { width:7px;height:7px;border-radius:50%;flex-shrink:0; }
.scb-count { font-size:.55rem;opacity:.6;font-weight:600; }

/* ── Search notice ────────────────────────────────────────────────── */
.stories-search-notice { padding:12px 28px;font-size:.75rem;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:8px; }
.stories-search-notice strong { color:#fff; }
.ssn-clear { color:rgba(255,255,255,.35);font-weight:700;margin-left:auto; }
.ssn-clear:hover { color:#fff; }

/* ── Hero story ───────────────────────────────────────────────────── */
.stories-hero {
  display:block;position:relative;height:420px;overflow:hidden;
  text-decoration:none;margin:0;transition:transform .2s;
}
.stories-hero:hover { transform:scale(1.005); }
.sh-img { position:absolute;inset:0; }
.sh-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s; }
.stories-hero:hover .sh-img img { transform:scale(1.04); }
.sh-scrim { position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.4) 55%,rgba(0,0,0,.1) 100%); }
.sh-body { position:absolute;bottom:0;left:0;right:0;padding:28px 32px; }
.sh-meta { display:flex;align-items:center;gap:8px;margin-bottom:10px; }
.sh-cat { font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;padding:4px 10px;border-radius:4px; }
.sh-badge { font-size:.52rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.2);padding:3px 8px;border-radius:4px; }
.sh-title { font-family:'Inter Tight',sans-serif;font-size:clamp(1.4rem,3vw,2.2rem);font-weight:900;color:#fff;margin:0 0 8px;line-height:1.1;letter-spacing:-.02em; }
.sh-sub { font-size:.85rem;color:rgba(255,255,255,.7);margin:0 0 12px;line-height:1.5;max-width:600px; }
.sh-foot { display:flex;align-items:center;gap:8px;font-size:.68rem;color:rgba(255,255,255,.5); }
.sh-sep { opacity:.4; }

/* ── Secondary 3-grid ─────────────────────────────────────────────── */
.stories-secondary { display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.07); }
@media(max-width:700px) { .stories-secondary { grid-template-columns:1fr; } }
.sstory-card { display:block;background:var(--dark2);padding:0;overflow:hidden;text-decoration:none;transition:background .15s; }
.sstory-card:hover { background:rgba(255,255,255,.04); }
.ssc-img { height:160px;overflow:hidden; }
.ssc-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.sstory-card:hover .ssc-img img { transform:scale(1.05); }
.ssc-body { padding:14px 18px; }
.ssc-cat { font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px; }
.ssc-title { font-size:.88rem;font-weight:800;color:#fff;line-height:1.3;margin:0 0 5px; }
.ssc-sub { font-size:.7rem;color:rgba(255,255,255,.5);line-height:1.5;margin:0 0 7px; }
.ssc-meta { font-size:.58rem;color:rgba(255,255,255,.3); }

/* ── Section header ───────────────────────────────────────────────── */
.stories-section-head { display:flex;align-items:center;justify-content:space-between;padding:20px 28px 12px; }
.ssh-title { font-family:'Inter Tight',sans-serif;font-size:1rem;font-weight:900;color:#fff; }
.ssh-sort { display:flex;gap:4px; }
.ssh-sort-btn { font-size:.65rem;font-weight:700;padding:5px 12px;border-radius:5px;color:rgba(255,255,255,.45);background:rgba(255,255,255,.05);transition:all .15s; }
.ssh-sort-btn:hover { color:#fff; }
.ssh-sort-btn.on { background:rgba(255,255,255,.1);color:#fff; }

/* ── Main stories grid ────────────────────────────────────────────── */
.stories-main-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  padding:0 28px 28px;
}
@media(max-width:900px) { .stories-main-grid { grid-template-columns:1fr 1fr; padding:0 16px 16px; } }
@media(max-width:500px) { .stories-main-grid { grid-template-columns:1fr; } }
.smg-card { background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;overflow:hidden;transition:border-color .15s,transform .15s;display:flex;flex-direction:column; }
.smg-card:hover { border-color:rgba(255,255,255,.18);transform:translateY(-2px); }
.smg-wide { grid-column:1/-1;display:grid;grid-template-columns:1.5fr 1fr; }
@media(max-width:700px) { .smg-wide { grid-template-columns:1fr; } }
.smg-img { display:block;height:170px;overflow:hidden;position:relative;flex-shrink:0; }
.smg-wide .smg-img { height:100%;min-height:200px; }
.smg-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.smg-card:hover .smg-img img { transform:scale(1.05); }
.smg-feat-badge { position:absolute;top:8px;right:8px;background:rgba(0,0,0,.7);color:#F5C400;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem; }
.smg-body { padding:14px 16px;flex:1;display:flex;flex-direction:column; }
.smg-wide .smg-body { padding:20px 24px;justify-content:center; }
.smg-cat { font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;display:flex;align-items:center;gap:5px; }
.smg-cat-dot { width:6px;height:6px;border-radius:50%;flex-shrink:0; }
.smg-title { font-size:.88rem;font-weight:800;color:#fff;line-height:1.3;margin:0 0 5px; }
.smg-wide .smg-title { font-size:1.1rem; }
.smg-title a { color:inherit; }
.smg-title a:hover { color:rgba(255,255,255,.7); }
.smg-sub { font-size:.7rem;color:rgba(255,255,255,.5);line-height:1.5;margin:0 0 auto;flex:1; }
.smg-foot { display:flex;align-items:center;gap:5px;font-size:.58rem;color:rgba(255,255,255,.35);margin-top:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,.05); }
.smg-rt { display:flex;align-items:center;gap:3px; }
.smg-rt i { font-size:.5rem;opacity:.7; }
.smg-sep { opacity:.4; }

/* ── Empty state ──────────────────────────────────────────────────── */
.stories-empty { text-align:center;padding:60px 24px;display:flex;flex-direction:column;align-items:center;gap:14px; }
.stories-empty i { font-size:2.5rem;opacity:.2; }
.stories-empty p { font-size:.82rem;color:rgba(255,255,255,.45);margin:0; }

/* Responsive stories masthead */
@media(max-width:700px) {
  .stories-masthead { flex-direction:column;align-items:flex-start; }
  .stm-search { min-width:0;width:100%; }
  .sh-body { padding:18px 18px; }
  .stories-hero { height:300px; }
  .stories-section-head,.stories-cat-bar { padding-left:16px;padding-right:16px; }
  .stories-main-grid { padding:0 16px 16px; }
}

/* ═══════════════════════════════════════════════════════════════════
   404 PAGE, GENERIC PAGE, MISSING COMPONENTS - v9.4
   ═══════════════════════════════════════════════════════════════════ */

/* ── 404 page ─────────────────────────────────────────────────────── */
.notfound-wrap {
  text-align:center;padding:40px 24px;max-width:520px;margin:0 auto;
}
.nf-num {
  font-family:'Inter Tight',sans-serif;font-size:8rem;font-weight:900;
  color:rgba(255,255,255,.04);line-height:1;margin-bottom:0;
  letter-spacing:-.05em;
}
.nf-title {
  font-family:'Inter Tight',sans-serif;font-size:1.8rem;font-weight:900;
  color:#fff;margin:0 0 12px;letter-spacing:-.02em;
}
.nf-desc {
  font-size:.82rem;color:rgba(255,255,255,.5);line-height:1.65;margin:0 0 28px;
}
.nf-links {
  display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:40px;
}
.nf-suggestions {
  border-top:1px solid rgba(255,255,255,.07);padding-top:24px;
}
.nf-sug-label {
  font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;
  color:rgba(255,255,255,.3);margin-bottom:14px;
}
.nf-sug-grid {
  display:flex;flex-wrap:wrap;gap:8px;justify-content:center;
}
.nf-sug-item {
  display:flex;align-items:center;gap:7px;padding:8px 16px;
  border-radius:7px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  font-size:.7rem;font-weight:600;color:rgba(255,255,255,.6);
  transition:all .15s;
}
.nf-sug-item:hover{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.15);}

/* ── Generic page.php content ────────────────────────────────────── */
.page-content {
  font-size:.85rem;color:rgba(255,255,255,.75);line-height:1.8;
}
.page-content h2 {
  font-family:'Inter Tight',sans-serif;font-size:1.3rem;font-weight:900;
  color:#fff;margin:2em 0 .6em;letter-spacing:-.02em;
}
.page-content h3 {
  font-family:'Inter Tight',sans-serif;font-size:1rem;font-weight:800;color:#fff;margin:1.5em 0 .5em;
}
.page-content p { margin-bottom:1.2em; }
.page-content a { color:var(--dc-blue);text-decoration:underline !important; }
.page-content ul,.page-content ol { padding-left:1.4em;margin-bottom:1.2em; }
.page-content li { margin-bottom:.4em; }
.page-content strong { color:#fff;font-weight:700; }
.page-content blockquote {
  border-left:3px solid var(--dc-red);padding:12px 18px;
  margin:1.5em 0;background:rgba(255,255,255,.04);border-radius:0 6px 6px 0;
  font-style:italic;color:rgba(255,255,255,.65);
}

/* ── Legal page body ─────────────────────────────────────────────── */
.legal-body {
  font-size:.82rem;color:rgba(255,255,255,.7);line-height:1.8;
}
.legal-body h2 {
  font-size:1rem;font-weight:800;color:#fff;margin:2em 0 .5em;
  border-bottom:1px solid rgba(255,255,255,.07);padding-bottom:8px;
}
.legal-body p { margin-bottom:1em; }
.legal-body a { color:var(--dc-blue); }
.legal-footer {
  margin-top:32px;padding-top:20px;border-top:1px solid rgba(255,255,255,.07);
  font-size:.72rem;color:rgba(255,255,255,.4);
}
.legal-footer a { color:var(--dc-blue); }

/* ── Sitemap page ────────────────────────────────────────────────── */
.sitemap-grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:24px;
}
@media(max-width:700px){.sitemap-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:450px){.sitemap-grid{grid-template-columns:1fr;}}
.sm-section h3 {
  font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.3);margin:0 0 12px;
}
.sm-section ul { list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px; }
.sm-section a {
  font-size:.75rem;color:rgba(255,255,255,.55);
  display:flex;align-items:center;gap:8px;transition:color .15s;
}
.sm-section a:hover { color:#fff; }
.sm-section a i { width:14px;text-align:center;font-size:.7rem; }

/* ── ev-feat-badge - hidden, was rendering as dark box ─────────── */
.ev-feat-badge { display:none; }

/* ── ev-card-noimg ───────────────────────────────────────────────── */
.ev-card-noimg {
  height:120px;display:flex;align-items:flex-end;padding:12px;
  position:relative;
}
.ev-noimg-date {
  font-family:'Inter Tight',sans-serif;font-size:1.1rem;font-weight:900;
  color:rgba(255,255,255,.2);letter-spacing:-.02em;
}

/* btn-primary/ghost: defined in core button styles above */

/* ── cat-section-head shared ────────────────────────────────────── */
.cat-section-head {
  display:flex;align-items:flex-end;justify-content:space-between;
  padding:28px 24px 14px;gap:12px;flex-wrap:wrap;
}
.csh-eyebrow {
  font-size:.55rem;font-weight:800;letter-spacing:.16em;
  text-transform:uppercase;margin-bottom:5px;
}
.csh-title {
  font-family:'Inter Tight',sans-serif;font-size:1.3rem;font-weight:900;
  color:#fff;margin:0;letter-spacing:-.02em;display:flex;align-items:center;gap:8px;
}
.csh-count {
  font-size:.65rem;font-weight:700;color:rgba(255,255,255,.4);
  background:rgba(255,255,255,.07);padding:2px 8px;border-radius:10px;
}
.sh-link {
  font-size:.68rem;font-weight:700;color:var(--dc-blue);white-space:nowrap;flex-shrink:0;
}
.sh-link:hover { color:#fff; }

/* ── load-more-wrap ─────────────────────────────────────────────── */
.load-more-wrap {
  text-align:center;padding:16px 24px 24px;
}
.btn-load-more {
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.7);padding:11px 28px;border-radius:6px;
  font-size:.75rem;font-weight:700;cursor:pointer;transition:all .15s;
}
.btn-load-more:hover { background:rgba(255,255,255,.12);color:#fff; }
.btn-load-more:disabled { opacity:.5;cursor:not-allowed; }

/* ── Responsive final pass ──────────────────────────────────────── */
@media(max-width:700px){
  .ev-filter-row{flex-direction:column;align-items:stretch;}
  .ev-filter-row input,.ev-filter-row select,.ev-filter-row button{width:100%;}
  .nf-links{flex-direction:column;align-items:center;}
  .sitemap-grid{grid-template-columns:1fr;}
  .cat-section-head{padding:20px 16px 12px;}
}

/* ── Hero overlay fixes: top-right group + weather pill ─────────── */
.vs-top-right {
  position:absolute;top:14px;right:16px;z-index:3;
  display:flex;flex-direction:column;align-items:flex-end;gap:6px;
}
.vs-weather-pill {
  display:inline-flex;align-items:center;gap:5px;
  background:rgba(0,0,0,.45);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.12);border-radius:20px;
  padding:4px 10px;font-size:.65rem;font-weight:600;color:rgba(255,255,255,.85);
}
/* Remove old vs-weather position if it clashes */
.vs-weather { display:none; }

/* ═══════════════════════════════════════════════════════════════════
   HOMEPAGE ENHANCEMENTS v9.5 - City bar, SC fallbacks, Sport grid
   ═══════════════════════════════════════════════════════════════════ */

/* ── Manchester City Links Bar ────────────────────────────────────── */
.mcr-city-bar {
  display:grid;
  grid-template-columns:repeat(8,1fr);
  background:var(--dark3);
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
  margin:-28px -28px 28px -28px;
}
@media(max-width:900px){ .mcr-city-bar { grid-template-columns:repeat(4,1fr); } }
@media(max-width:500px){ .mcr-city-bar { grid-template-columns:repeat(4,1fr); } }
.mcb-item {
  display:flex;flex-direction:column;align-items:center;
  gap:5px;padding:14px 8px;
  border-right:1px solid rgba(255,255,255,.05);
  transition:background .15s;text-align:center;
}
.mcb-item:last-child { border-right:none; }
.mcb-item:hover { background:rgba(255,255,255,.05); }
.mcb-icon { font-size:1rem; }
.mcb-label { font-size:.6rem;font-weight:700;color:#fff; }
.mcb-sub { font-size:.52rem;color:rgba(255,255,255,.35); }

/* ── SC card (homepage category cards) polish ─────────────────────── */
.SC {
  display:block;border-radius:var(--rl);overflow:hidden;
  background:var(--dark3);border:1px solid rgba(255,255,255,.06);
  transition:border-color .15s,transform .15s;text-decoration:none !important;
}
.SC:hover { border-color:rgba(255,255,255,.15);transform:translateY(-2px); }
.sc-thumb {
  position:relative;aspect-ratio:16/7;overflow:hidden;
  background:var(--dark2);
}
.sc-thumb img {
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .3s;
}
.SC:hover .sc-thumb img { transform:scale(1.05); }
.sc-stripe {
  position:absolute;top:0;left:0;right:0;height:3px;z-index:2;
}
.sc-body { padding:8px 10px; }
.sc-cat {
  display:flex;align-items:center;gap:5px;
  font-size:.55rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.1em;color:rgba(255,255,255,.45);margin-bottom:5px;
}
.sc-cat-dot { width:5px;height:5px;border-radius:50%;flex-shrink:0; }
.sc-title {
  font-size:.72rem;font-weight:700;color:#fff;
  line-height:1.25;margin-bottom:3px;
}
.sc-meta { font-size:.56rem;color:rgba(255,255,255,.4);line-height:1.5; }

/* ── Sport grid improvements ──────────────────────────────────────── */
.sg-main {
  position:relative;overflow:hidden;border-radius:var(--rl);
  grid-column:1;grid-row:1/3;min-height:200px;
  display:block;text-decoration:none !important;
}
.sg-main img {
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;transition:transform .3s;
}
.sg-main:hover img { transform:scale(1.04); }
.sg-scrim {
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.88) 0%,rgba(0,0,0,.2) 70%);
}
.sg-body {
  position:absolute;bottom:0;left:0;right:0;padding:16px;z-index:2;
}
.sg-league { font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px; }
.sg-title { font-size:.95rem;font-weight:800;color:#fff;line-height:1.2;margin-bottom:4px; }
.sg-meta { font-size:.6rem;color:rgba(255,255,255,.5); }

/* ── Responsive ─────────────────────────────────────────────────── */
@media(max-width:760px){
  .mcr-city-bar{margin:-16px -16px 16px -16px;}
  .mcb-sub{display:none;}
  .mcb-label{font-size:.55rem;}
}
@media(max-width:500px){
  .mcb-item{padding:10px 6px;gap:4px;}
  .mcb-icon{font-size:.85rem;}
}

.ev-page-masthead {
  position:relative;min-height:180px;max-height:260px;display:flex;flex-direction:column;
  justify-content:flex-end;overflow:hidden;
}

/* ══ CLEAN LIGHT HERO - matches white-bg main content area ══════════
   Typography + spacing tuned to match the rest of the site: smaller titles,
   refined stat row, subtle borders, brand red for accent only. */
.epm-clean {
  position:relative;z-index:2;
  background:#0c0c0e;
  padding:26px 28px 22px !important;
  border-bottom:1px solid rgba(255,255,255,.08);
  max-height:none;min-height:auto;
}
/* When clean hero is in use, strip the parent's flex/height constraints */
.ev-page-masthead:has(.epm-clean),
.CENTRE.white-bg .ev-page-masthead:has(.epm-clean) {
  min-height:auto !important;
  max-height:none !important;
  background:#0c0c0e !important;
  overflow:visible !important;
  display:block !important;
  color:#fff !important;
  margin-bottom:0 !important;
}
.CENTRE.white-bg .ev-page-masthead:has(.epm-clean) a { color:inherit !important; }
.CENTRE.white-bg .ev-page-masthead:has(.epm-clean) .epm-clean-btn-primary { color:#fff !important; }

/* Live category bar on white-bg - kill the dark translucent + blur frost
   (which rendered as grey haze on white pages) and use flat light surface. */
.CENTRE.white-bg .epm-live-bar {
  background:#fafafa !important;
  border-top:1px solid #eee !important;
  border-bottom:1px solid #eee !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

/* Generic safety net - any element using translucent-black + blur on a
   white-bg page gets flattened to a solid neutral surface so there's no
   grey frost bleeding through from the page behind. */
.CENTRE.white-bg [class*="-masthead"],
.CENTRE.white-bg [class*="-tonight-bar"],
.CENTRE.white-bg [class*="-live-bar"] {
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
/* Live bar sits on the WHITE hero strip at the top of /events/ - dark ink for contrast.
   (Previously inherited white from dark-mode rules - white-on-white bug) */
.CENTRE.white-bg .epm-live-bar .epm-lb-item,
.CENTRE.white-bg .epm-live-bar .epm-lb-label {
  color:#1a1a1f !important;
}
.CENTRE.white-bg .epm-live-bar .epm-lb-item {
  color:#4a4a55 !important;font-weight:700 !important;
}
.CENTRE.white-bg .epm-live-bar .epm-lb-item:hover {
  color:#0c0c0e !important;background:rgba(0,0,0,.04) !important;
}
.CENTRE.white-bg .epm-live-bar .epm-lb-item.active,
.CENTRE.white-bg .epm-live-bar .epm-lb-item.active .epm-lb-label {
  color:#0c0c0e !important;
}
.CENTRE.white-bg .epm-live-bar .epm-lb-item.active {
  border-bottom-color:var(--dc-red) !important;
}
.CENTRE.white-bg .epm-live-bar .epm-lb-count {
  background:rgba(0,0,0,.06) !important;color:#2a2a32 !important;font-weight:800 !important;
}
.CENTRE.white-bg .epm-lb-item.active .epm-lb-count {
  background:rgba(232,32,26,.12) !important;color:var(--dc-red) !important;
}
.epm-clean-stats {
  display:flex;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap;
}
.epm-clean-stat {
  display:inline-flex;align-items:baseline;gap:5px;
}
.epm-clean-stat + .epm-clean-stat {
  padding-left:14px;border-left:1px solid rgba(255,255,255,.12);
}
.epm-clean-n {
  font-family:'Inter Tight',sans-serif;font-size:1.05rem;font-weight:800;
  color:#fff;letter-spacing:-.01em;line-height:1;
}
.epm-clean-n-red { color:var(--dc-red); }
.epm-clean-l {
  font-size:.62rem;font-weight:700;color:rgba(255,255,255,.45);text-transform:uppercase;
  letter-spacing:.08em;
}
.epm-clean-title {
  font-family:'Inter Tight',sans-serif;font-size:1.65rem;font-weight:900;
  color:#fff;line-height:1.05;letter-spacing:-.025em;margin:0 0 6px;
}
.epm-clean-title em {
  color:#7C3AED;font-style:normal;
}
.epm-clean-sub {
  font-size:.78rem;color:rgba(255,255,255,.55);margin:0 0 16px;line-height:1.5;max-width:620px;
}
.epm-clean-ctas { display:flex;gap:8px;flex-wrap:wrap; }
.epm-clean-btn-primary,
.epm-clean-btn-ghost {
  display:inline-flex;align-items:center;gap:7px;
  padding:8px 14px;border-radius:7px;
  font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
  text-decoration:none;transition:all .15s ease;
}
.epm-clean-btn-primary {
  background:var(--dc-red);color:#fff !important;
  box-shadow:0 2px 6px rgba(232,32,26,.2);
}
.epm-clean-btn-primary:hover {
  filter:brightness(1.08);transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(232,32,26,.32);
}
.epm-clean-btn-ghost {
  background:transparent;color:#fff !important;border:1.5px solid rgba(255,255,255,.25);
}
.epm-clean-btn-ghost:hover {
  background:rgba(255,255,255,.1);color:#fff !important;border-color:rgba(255,255,255,.5);
}
@media(max-width:700px){
  .epm-clean { padding:20px 16px 18px !important; }
  .epm-clean-title { font-size:1.35rem; }
  .epm-clean-sub { font-size:.74rem; }
  .epm-clean-n { font-size:.95rem; }
  .epm-clean-stat + .epm-clean-stat { padding-left:10px; }
  .epm-clean-stats { gap:10px;margin-bottom:12px; }
}
.epm-bg {
  position:absolute;inset:0;background-size:cover;background-position:center;
  z-index:0;
}
.epm-scrim {
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.82) 0%,rgba(0,0,0,.35) 60%,rgba(0,0,0,.15) 100%);
}
.epm-content {
  position:relative;z-index:2;padding:28px 28px 20px;
}
.epm-label {
  display:inline-flex;align-items:center;gap:6px;
  font-size:.55rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:#fff;padding:4px 10px;border-radius:4px;margin-bottom:10px;
}
.epm-title {
  font-family:'Inter Tight',sans-serif;font-size:1.6rem;font-weight:900;
  color:#fff;line-height:1.1;letter-spacing:-.03em;margin:0 0 10px;
}
.epm-stats-row {
  display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap;
}
.epm-stat { display:flex;align-items:baseline;gap:5px; }
.epm-stat-n { font-family:'Inter Tight',sans-serif;font-size:1.4rem;font-weight:900;color:#fff; }
.epm-stat-l { font-size:.6rem;color:rgba(255,255,255,.5); }
.epm-stat-sep { color:rgba(255,255,255,.25);font-size:.8rem; }
.epm-main-title {
  font-family:'Inter Tight',sans-serif;font-size:2.4rem;font-weight:900;
  color:#fff;line-height:1;letter-spacing:-.04em;margin:0 0 10px;
}
.epm-main-title em { color:var(--dc-red);font-style:normal; }
.epm-sub { font-size:.82rem;color:rgba(255,255,255,.6);margin:0 0 16px;line-height:1.5;max-width:540px; }
.epm-meta { display:flex;flex-wrap:wrap;gap:12px;font-size:.68rem;color:rgba(255,255,255,.6);margin-bottom:14px; }
.epm-meta span { display:flex;align-items:center;gap:5px; }
.epm-meta i { color:rgba(255,255,255,.35); }
.epm-ctas { display:flex;gap:8px;flex-wrap:wrap; }

/* Events live bar (category tabs) */
.epm-live-bar {
  position:relative;z-index:2;
  display:flex;border-top:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.4);backdrop-filter:blur(8px);
  overflow-x:auto;scrollbar-width:none;
}
.epm-live-bar::-webkit-scrollbar { display:none; }
.epm-lb-item {
  display:flex;align-items:center;gap:7px;padding:11px 16px;
  font-size:.65rem;font-weight:700;color:rgba(255,255,255,.5);
  border-bottom:2px solid transparent;transition:all .15s;white-space:nowrap;
  flex-shrink:0;
}
.epm-lb-item:hover { color:#fff;background:rgba(255,255,255,.05); }
.epm-lb-item.active { color:#fff;border-bottom-color:var(--dc-red); }
.epm-lb-dot { width:7px;height:7px;border-radius:50%;flex-shrink:0; }
.epm-lb-label { }
.epm-lb-count {
  background:rgba(255,255,255,.1);border-radius:10px;
  padding:1px 7px;font-size:.55rem;font-weight:800;color:rgba(255,255,255,.6);
}
.epm-lb-item.active .epm-lb-count { background:rgba(232,32,26,.2);color:var(--dc-red); }

/* ── Events filter bar (efa-*) ─────────────────────────────────────── */
.ev-filter-advanced {
  background:rgba(255,255,255,.03);
  border-bottom:1px solid rgba(255,255,255,.06);
  padding:14px 20px 0;
}
.efa-form { margin-bottom:0; }
.efa-row {
  display:flex;gap:8px;flex-wrap:wrap;align-items:center;
  padding-bottom:12px;
}
.efa-sel {
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  color:#fff;padding:8px 12px;border-radius:6px;font-size:.72rem;
  font-family:inherit;flex:1;min-width:140px;cursor:pointer;
}
.efa-sel option { background:var(--dark2); }
.efa-date {
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  color:#fff;padding:8px 12px;border-radius:6px;font-size:.72rem;
  font-family:inherit;
}
.efa-date::-webkit-calendar-picker-indicator { filter:invert(1); }
.efa-bottom {
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 0;gap:12px;flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,.05);
}
.efa-pills { display:flex;flex-wrap:wrap;gap:5px; }
.efa-view-btns { display:flex;gap:4px;flex-shrink:0; }
.efa-vb {
  width:32px;height:32px;border-radius:6px;display:flex;align-items:center;
  justify-content:center;font-size:.75rem;color:rgba(255,255,255,.4);
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);
  transition:all .15s;
}
.efa-vb:hover { color:#fff;background:rgba(255,255,255,.1); }
.efa-vb.on { color:#fff;background:var(--dc-red);border-color:var(--dc-red); }

/* ── Events results header (erh-*) ────────────────────────────────── */
.ev-results-head {
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.06);
  gap:12px;flex-wrap:wrap;
}
.erh-count { font-size:.78rem;color:rgba(255,255,255,.6); }
.erh-count strong { color:#fff;font-weight:800; }
.erh-count em { color:rgba(255,255,255,.8);font-style:normal; }
.erh-submit {
  display:inline-flex;align-items:center;gap:6px;
  font-size:.65rem;font-weight:700;color:rgba(255,255,255,.5);
  border:1px solid rgba(255,255,255,.1);border-radius:5px;padding:6px 12px;
  transition:all .15s;
}
.erh-submit:hover { color:#fff;border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.06); }

/* ── Tonight pill badge on event cards ─────────────────────────────── */
.ev-tonight-pill {
  position:absolute;top:14px;left:14px;z-index:5;
  background:#e8201a;color:#fff;
  font-size:.46rem;font-weight:800;padding:5px 13px;
  border-radius:20px;text-transform:uppercase;letter-spacing:.12em;
  font-family:'Inter Tight',sans-serif;
  box-shadow:0 2px 8px rgba(232,32,26,.35);
  animation:tonightPulse 2.6s ease-in-out infinite;
}
@keyframes tonightPulse {
  0%,100% { box-shadow:0 4px 16px rgba(232,32,26,.55), 0 0 0 0 rgba(232,32,26,.3); }
  55%      { box-shadow:0 4px 16px rgba(232,32,26,.55), 0 0 0 7px rgba(232,32,26,0); }
}
.ev-this-week-pill {
  position:absolute;top:12px;left:12px;z-index:4;
  background:#ff6b00;color:#fff;
  font-size:.52rem;font-weight:800;padding:5px 13px;
  border-radius:20px;text-transform:uppercase;letter-spacing:.1em;
  box-shadow:0 4px 14px rgba(255,107,0,.45);
}
.ev-date-badge {
  position:absolute;top:12px;right:12px;z-index:5;
  background:rgba(0,0,0,.5);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.2);
  border-radius:12px;
  padding:7px 10px;text-align:center;min-width:40px;
}
.ev-date-day { display:block;font-family:'Inter Tight',sans-serif;font-size:1.15rem;font-weight:900;color:#fff;letter-spacing:-.03em;line-height:1; }
.ev-date-month { display:block;font-size:.4rem;font-weight:700;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.14em;margin-top:3px; }
.ev-price-tag {
  /* v12.7.79 - moved from bottom-right (overlapping Tickets button) to top-right under date badge */
  position:absolute;top:62px;right:12px;z-index:5;
  background:rgba(0,0,0,.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-radius:6px;
  border:1px solid rgba(255,255,255,.18);
  padding:4px 9px;font-size:.55rem;font-weight:800;color:#fff;letter-spacing:.04em;
  text-transform:uppercase;
}
.ev-section-head { grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:4px 0;margin:12px 0 2px; }
.ev-section-dot { width:7px;height:7px;border-radius:50%;background:#e8201a;flex-shrink:0;animation:sectionPing 2s ease-in-out infinite; }
@keyframes sectionPing { 0%{box-shadow:0 0 0 0 rgba(232,32,26,.55)} 70%{box-shadow:0 0 0 9px rgba(232,32,26,0)} 100%{box-shadow:0 0 0 0 rgba(232,32,26,0)} }
.ev-section-label { font-family:'Inter Tight',sans-serif;font-size:1rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:.18em; }
.ev-section-rule { flex:1;height:1px;background:rgba(255,255,255,.12); }

/* ── Timeline view (evt-*) ─────────────────────────────────────────── */
.ev-timeline { padding:0 20px 20px; }
.evt-day { margin-bottom:28px; }
.evt-day-label {
  font-size:.7rem;font-weight:800;color:rgba(255,255,255,.5);
  padding:8px 0 10px;
  border-bottom:1px solid rgba(255,255,255,.06);
  margin-bottom:4px;display:flex;align-items:center;gap:8px;
}
.evt-day-label.evt-today { color:#fff; }
.evt-today-dot {
  width:7px;height:7px;border-radius:50%;background:var(--dc-red);flex-shrink:0;
}
.evt-day-count {
  margin-left:auto;font-size:.58rem;font-weight:600;
  color:rgba(255,255,255,.35);
  background:rgba(255,255,255,.06);padding:2px 8px;border-radius:10px;
}
.evt-day-events { display:flex;flex-direction:column; }
.evt-row {
  display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:12px;
  padding:10px 8px;border-bottom:1px solid rgba(255,255,255,.04);
  transition:background .12s;position:relative;
}
.evt-row:hover { background:rgba(255,255,255,.04); }
.evt-row-stripe {
  position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:0 2px 2px 0;
}
.evt-row-time {
  font-size:.62rem;font-weight:700;color:rgba(255,255,255,.4);text-align:right;
  padding-left:10px;
}
.evt-row-main { min-width:0; }
.evt-row-title {
  font-size:.78rem;font-weight:700;color:#fff;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px;
}
.evt-row-venue { font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px; }
.evt-row-right { display:flex;align-items:center;gap:6px;flex-shrink:0; }
.evt-row-cat {
  font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
}
.evt-row-price {
  font-size:.6rem;font-weight:700;color:rgba(255,255,255,.5);
  background:rgba(255,255,255,.07);padding:2px 6px;border-radius:3px;
}
.evt-row-tix {
  font-size:.55rem;font-weight:800;color:#fff;
  background:var(--dc-red);padding:3px 7px;border-radius:3px;
  text-transform:uppercase;letter-spacing:.06em;
}

/* ── Stories masthead (stm-*) ─────────────────────────────────────── */
.stm-kicker {
  font-size:.55rem;font-weight:800;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:8px;
}
.stm-title {
  font-family:'Inter Tight',sans-serif;font-size:2.2rem;font-weight:900;
  color:#fff;letter-spacing:-.04em;line-height:1;margin:0 0 8px;
}
.stm-sub { font-size:.82rem;color:rgba(255,255,255,.5);margin:0 0 14px;line-height:1.6; }
.stm-stats { display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap; }
.stm-stat { font-size:.7rem;color:rgba(255,255,255,.55); }
.stm-stat strong { color:#fff;font-size:.82rem; }
.stm-sep { color:rgba(255,255,255,.2); }
.stm-ai { min-height:24px;font-size:.75rem;color:rgba(255,255,255,.6);margin-bottom:4px; }
.stm-search {
  position:relative;display:flex;align-items:center;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:8px;overflow:hidden;
}
.stm-search-ico { position:absolute;left:12px;color:rgba(255,255,255,.3);font-size:.75rem; }
.stm-search-input {
  flex:1;background:transparent;border:none;outline:none;
  padding:11px 12px 11px 36px;color:#fff;font-size:.8rem;font-family:inherit;
}
.stm-search-input::placeholder { color:rgba(255,255,255,.25); }
.stm-search-btn {
  background:var(--dc-red);color:#fff;border:none;padding:0 16px;
  font-size:.7rem;font-weight:700;cursor:pointer;height:100%;align-self:stretch;
  transition:filter .15s;
}
.stm-search-btn:hover { filter:brightness(1.1); }

/* Stories hero card (sh-date, sh-rt) */
.sh-date { font-size:.65rem;color:rgba(255,255,255,.4); }
.sh-rt   { font-size:.65rem;color:rgba(255,255,255,.4); }
.sh-sep  { color:rgba(255,255,255,.2);font-size:.6rem; }

/* Stories masonry grid (smg-*) */
.smg-date { font-size:.62rem;color:rgba(255,255,255,.35); }
.smg-sep  { color:rgba(255,255,255,.2); }
.smg-wide { grid-column:1/-1; }
.smg-feat-badge {
  position:absolute;top:8px;left:8px;
  color:#fff;font-size:.52rem;font-weight:800;padding:3px 8px;
  border-radius:3px;display:flex;align-items:center;gap:4px;
  text-transform:uppercase;letter-spacing:.06em;
}

/* ── Submit form (submit-form-adv, sfa-section--contact) ──────────── */
.submit-form-adv { display:flex;flex-direction:column;gap:0; }
.sfa-section--contact {
  background:rgba(255,255,255,.02);border-radius:8px;
  border:1px solid rgba(255,255,255,.06);
}

/* Submit sidebar recent events */
.sa-recent { margin-top:4px; }

/* ── About page (about-main-col, about-body) ───────────────────────── */
.about-main-col { min-width:0; }
.about-body {
  font-size:.85rem;color:rgba(255,255,255,.75);line-height:1.8;
}
.about-body p { margin-bottom:1.3em; }
.about-body h2 {
  font-family:'Inter Tight',sans-serif;font-size:1.2rem;font-weight:900;
  color:#fff;margin:2em 0 .6em;letter-spacing:-.02em;
}
.about-body a { color:var(--dc-blue); }

/* ── Footer column base (ft-col) ───────────────────────────────────── */
.ft-col { display:flex;flex-direction:column; }

/* ── City links bar text (mcb-text) ────────────────────────────────── */
.mcb-text { display:flex;flex-direction:column;align-items:center;gap:2px; }

/* ── Newsletter badge/cap (nl-badge, nl-cap-badges) ───────────────── */
.nl-badge {
  display:inline-flex;align-items:center;gap:5px;font-size:.58rem;font-weight:700;
  color:rgba(255,255,255,.4);background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:3px 9px;
}
.nl-cap-badges { display:flex;flex-wrap:wrap;gap:5px;margin-top:6px; }

/* ── HERO class (homepage) ─────────────────────────────────────────── */
.HERO { position:relative; }

/* ── Responsive ─────────────────────────────────────────────────────── */
@media(max-width:760px) {
  .epm-main-title { font-size:1.7rem; }
  .epm-content { padding:20px 16px 16px; }
  .ev-filter-advanced { padding:12px 14px 0; }
  .efa-row { flex-direction:column;align-items:stretch; }
  .efa-sel,.efa-date { width:100%; }
  .efa-bottom { flex-direction:column;align-items:flex-start;gap:10px; }
  .ev-results-head { padding:10px 14px; }
  .ev-timeline { padding:0 14px 16px; }
  .evt-row { grid-template-columns:46px 1fr auto;gap:8px; }
  .epm-live-bar { overflow-x:scroll; }
  .stm-title { font-size:1.6rem; }
}

/* ── Homepage: hide header ticker, show inline ticker below hero ──── */
.home > .TICKER:first-of-type { display:none; }
.hp-ticker { display:flex !important; }

/* ── LIVE pill on hero (right-aligned, red) ────────────────────────── */
.vs-live-pill {
  display:inline-flex;align-items:center;gap:5px;
  background:var(--dc-red);color:#fff;
  font-size:.58rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  padding:4px 10px;border-radius:4px;
}

/* ── Homepage white/light alternating sections ──────────────────────── */
/* The CENTRE column on homepage gets white sections for contrast */
.home .CENTRE .section-white {
  background:#f5f5f7;
  color:#0c0c0e;
  margin:0 -28px;
  padding:36px 28px;
  border-top:1px solid rgba(0,0,0,.06);
  border-bottom:1px solid rgba(0,0,0,.06);

  position:relative;z-index:1;
}

/* ── Section headers inside white ── */
.section-white .SH .sh-title,
.section-white .sh-title { color:#0c0c0e; }
.section-white .sh-eyebrow { color:#666; }
.section-white .sh-link {
  color:var(--dc-blue);
  border-color:rgba(26,86,255,.2);
  background:rgba(26,86,255,.06);
}
.section-white .sh-link:hover { color:#fff; background:var(--dc-blue); border-color:var(--dc-blue); }

/* ── SC cards (venue/event cards) inside white ── */
.section-white .SC {
  background:#fff;
  border-color:rgba(0,0,0,.08);
  box-shadow:0 1px 4px rgba(0,0,0,.06);
}
.section-white .SC:hover {
  border-color:rgba(0,0,0,.18);
  box-shadow:0 4px 18px rgba(0,0,0,.1);
}
.section-white .sc-thumb { background:#e8e8ec; }
.section-white .sc-cat { color:rgba(0,0,0,.45); }
.section-white .sc-title { color:#0c0c0e; }
.section-white .sc-meta { color:rgba(0,0,0,.45); }

/* ── HOODS section standalone (not inside section-white) ── */
.hoods-section { background:#f9f9fb; padding:20px 0 0; }
.hoods-section .SH { padding:0 0 14px; }

/* ── News strip cards inside white ── */
.section-white .ns-card {
  background:#fff;
  border-color:rgba(0,0,0,.08);
  box-shadow:0 1px 4px rgba(0,0,0,.05);
}
.section-white .ns-card:hover {
  border-color:rgba(0,0,0,.18);
  box-shadow:0 4px 14px rgba(0,0,0,.08);
}
.section-white .ns-title { color:#0c0c0e; }
.section-white .ns-meta { color:rgba(0,0,0,.38); }

/* ── Stories grid inside white ── */
.section-white .STORIES-GRID { background:transparent; }
.section-white .stg-item {
  background:#fff;
  border-color:rgba(0,0,0,.08);
  box-shadow:0 1px 4px rgba(0,0,0,.05);
}
.section-white .stg-item:hover {
  border-color:rgba(0,0,0,.18);
  box-shadow:0 4px 14px rgba(0,0,0,.08);
}
.section-white .stg-item-title { color:#0c0c0e; }
.section-white .stg-item-meta { color:rgba(0,0,0,.38); }

/* ── Sponsors scroll inside white ── */
.section-white .SPONSORS { background:transparent; }
.section-white .sp-item img { filter:grayscale(1) brightness(.15); opacity:.5; }
.section-white .sp-item img:hover { opacity:.9; }
.section-white .sp-name { color:rgba(0,0,0,.45); }
.section-white .sp-item:hover { opacity:.85; }

/* ── Category pages: section-white inside cat-page-centre ── */
.cat-page-centre .section-white {
  background:#f5f5f7;
  color:#0c0c0e;
  margin:0 -28px;
  padding:36px 28px;
  border-top:1px solid rgba(0,0,0,.06);
  border-bottom:1px solid rgba(0,0,0,.06);
}
.cat-page-centre .section-white .SH .sh-title,
.cat-page-centre .section-white .sh-title { color:#0c0c0e; }
.cat-page-centre .section-white .sh-eyebrow { color:#666; }
.cat-page-centre .section-white .sh-link { color:var(--dc-blue); border-color:rgba(26,86,255,.2); background:rgba(26,86,255,.06); }
.cat-page-centre .section-white .SC { background:#fff; border-color:rgba(0,0,0,.08); box-shadow:0 1px 4px rgba(0,0,0,.06); }
.cat-page-centre .section-white .SC:hover { border-color:rgba(0,0,0,.18); box-shadow:0 4px 18px rgba(0,0,0,.1); }
.cat-page-centre .section-white .sc-thumb { background:#e8e8ec; }
.cat-page-centre .section-white .sc-cat { color:rgba(0,0,0,.45); }
.cat-page-centre .section-white .sc-title { color:#0c0c0e; }
.cat-page-centre .section-white .sc-meta { color:rgba(0,0,0,.45); }
.cat-page-centre .section-white .ns-card { background:#fff; border-color:rgba(0,0,0,.08); box-shadow:0 1px 4px rgba(0,0,0,.05); }
.cat-page-centre .section-white .ns-card:hover { border-color:rgba(0,0,0,.18); }
.cat-page-centre .section-white .ns-title { color:#0c0c0e; }
.cat-page-centre .section-white .ns-meta { color:rgba(0,0,0,.38); }
.cat-page-centre .section-white .stg-item { background:#fff; border-color:rgba(0,0,0,.08); box-shadow:0 1px 4px rgba(0,0,0,.05); }
.cat-page-centre .section-white .stg-item-title { color:#0c0c0e; }
.cat-page-centre .section-white .stg-item-meta { color:rgba(0,0,0,.38); }

/* Section dividers */
.home .CENTRE > section,
.home .CENTRE > div.section-block {
  border-bottom:1px solid rgba(255,255,255,.05);
}

/* Ensure mcr-city-bar has proper dark background */
/* mcr-city-bar - see line 5816 */

/* ── Hero multi-CTA buttons ─────────────────────────────────────────── */
.vs-cta { display:flex;gap:8px;flex-wrap:wrap; }
.vs-cta-ghost {
  background:rgba(255,255,255,.12) !important;
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.25) !important;
}
.vs-cta-ghost:hover { background:rgba(255,255,255,.22) !important; }

/* ── Homepage ticker strip (below hero) ─────────────────────────────── */
.hp-ticker {
  border-top:none;
  border-bottom:1px solid rgba(255,255,255,.07);
  background:var(--dark);
  position:relative;z-index:10;
}
.hp-ticker .tk-badge {
  background:var(--dc-red) !important;
  color:#fff !important;
  font-weight:900;
  letter-spacing:.1em;
  padding:0 16px;
  display:flex;align-items:center;gap:6px;
}

/* ── News strip image cards ─────────────────────────────────────────── */
.NEWS-STRIP {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  padding:0 0 24px;
}
@media(max-width:1100px){ .NEWS-STRIP { grid-template-columns:repeat(3,1fr); } }
@media(max-width:700px)  { .NEWS-STRIP { grid-template-columns:1fr 1fr; } }
@media(max-width:450px)  { .NEWS-STRIP { grid-template-columns:1fr; } }

.ns-card-img {
  display:flex !important;
  flex-direction:column;
  overflow:hidden;
  border-radius:10px;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.07) !important;
  text-decoration:none !important;
  transition:transform .15s,border-color .15s;
}
.ns-card-img:hover { transform:translateY(-2px); border-color:rgba(255,255,255,.16) !important; }
.ns-card-thumb {
  aspect-ratio:16/10;
  overflow:hidden;
  position:relative;
}
.ns-card-thumb img {
  width:100%; height:100%; object-fit:cover;
  display:block; transition:transform .3s;
}
.ns-card-img:hover .ns-card-thumb img { transform:scale(1.05); }
.ns-card-body { padding:12px; }
.ns-cat  { font-size:.52rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px; }
.ns-title{ font-size:.78rem;font-weight:700;color:#fff;line-height:1.3;margin-bottom:5px; }
.ns-meta { font-size:.58rem;color:rgba(255,255,255,.35); }

/* ═══════════════════════════════════════════════════════════════════════
   MOBILE FIXES v9.9.8 - comprehensive responsive pass
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Touch targets - minimum 44px hit area on mobile ─────────────────── */
@media(max-width:900px) {
  .btn-primary,.btn-ghost,.btn-primary-sm {
    min-height:44px;
    padding:10px 16px;
    font-size:.7rem;
  }
  .btn-ghost-sm {
    padding:9px 14px;
    font-size:.7rem;
  }
  /* Sidebar items need bigger hit areas */
  .sb-item { min-height:44px; }
  /* Event card CTAs */
  .ev-card-ctas .btn-primary,
  .ev-card-ctas .btn-ghost,
  .cec-ctas .btn-primary,
  .cec-ctas .btn-ghost { min-height:40px; font-size:.65rem; padding:8px 14px; }
  /* Keep ghost-sm in event cards at its designed height - not the 44px touch target */
  .ev-card-ctas .btn-ghost-sm,
  .ev-card-ctas .btn-primary-sm,
  .ev-card-ctas .btn-tickets { min-height:0 !important; padding:7px 14px !important; font-size:.58rem !important; }
}

/* ── Category page masthead - tighter on small screens ───────────────── */
@media(max-width:480px) {
  .nl-masthead,.fm-masthead,.spm-masthead { min-height:260px; }
  .nlm-inner,.fm-inner,.spm-inner { padding:16px 14px 10px; }
  .nlm-sub,.fm-sub,.spm-sub { display:none; }
  .nlm-ctas,.fm-ctas,.spm-ctas { flex-wrap:wrap; gap:6px; }
  .nlm-btn,.fm-btn,.spm-btn { flex:1; min-width:120px; justify-content:center; font-size:.65rem; }
}

/* ── Event single page on mobile ─────────────────────────────────────── */
@media(max-width:640px) {
  .evs-hero { height:240px !important; margin:10px 0 0; }
  .evs-hero-title { font-size:1.4rem !important; }
  .evs-hero-meta { flex-wrap:wrap; gap:6px; }
  .evs-hero-actions { margin-top:10px; }
  .evs-hero-actions .btn-primary,
  .evs-hero-actions .btn-ghost { flex:1; justify-content:center; }
  .evs-facts { grid-template-columns:1fr 1fr; }
  .evs-fact { padding:10px 12px; }
  .evs-related-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .evs-transport-item { padding:10px 12px; }
}
@media(max-width:400px) {
  .evs-hero { height:200px !important; }
  .evs-hero-title { font-size:1.2rem !important; }
  .evs-facts { grid-template-columns:1fr; }
  .evs-related-grid { grid-template-columns:1fr; }
}

/* ── Planner page on mobile ───────────────────────────────────────────── */
@media(max-width:640px) {
  .planner-hero { padding:24px 16px 20px; }
  .planner-title { font-size:1.8rem; }
  .planner-quick { padding:14px 14px 0; }
  .planner-quick-chips { gap:6px; }
  .plq-chip { font-size:.66rem; padding:6px 11px; }
  .planner-chat { padding:14px 14px; }
  .pm-input-row { padding:10px 12px; }
}

/* ── Sport clubs deep grid on mobile ─────────────────────────────────── */
@media(max-width:380px) {
  .sport-clubs-deep { grid-template-columns:1fr; }
  .sport-stadiums { grid-template-columns:1fr; }
}

/* ── Search overlay on mobile ────────────────────────────────────────── */
@media(max-width:640px) {
  .mcr-search-overlay { padding-top:0;align-items:flex-start; }
  .mcr-search-inner { border-radius:0 0 14px 14px;max-width:100%; }
  .mcr-search-bar { padding:14px 14px; }
  .mcr-search-tabs { padding:0 12px 10px; }
  .msr-item { padding:10px 14px; }
}

/* ── Tonight bar on mobile ─────────────────────────────────────────────── */
@media(max-width:480px) {
  .tnb-ev-venue { display:none; }
  .tnb-events { gap:8px; }
  .tnb-event { font-size:.6rem; }
}

/* ── Directory page on mobile ────────────────────────────────────────── */
@media(max-width:440px) {
  .dir-grid { grid-template-columns:1fr !important; padding:0 12px 12px; }
  .dir-card-img { height:130px; }
  .dir-card-body { padding:10px 12px; }
}

/* ── About/Contact/Submit pages padding on mobile ────────────────────── */
@media(max-width:640px) {
  main.CENTRE[style*="padding:28px 32px"] { padding:16px !important; }
  .pg-title { font-size:1.4rem; }
  .pg-desc { font-size:.8rem; }
}

/* ── Mobile tab bar - 5 fixed tabs, equal width ─────────────────── */
#MOB-TABS { justify-content:stretch !important; overflow:hidden; }
.mob-tab { flex-shrink:1; min-width:0; }

/* ── Hero slider CTAs - stack on very small screens ─────────────────── */
@media(max-width:400px) {
  .vs-cta { flex-direction:column; gap:6px; }
  .vs-cta-btn { justify-content:center; font-size:.62rem; padding:9px 14px; }
  .vs-content { bottom:44px; left:8px; right:10px; align-items:flex-end; text-align:right; }
}

/* ── City bar - scroll on mobile ────────────────────────────────────── */
@media(max-width:640px) {
  .mcr-city-bar {
    grid-template-columns:repeat(8,1fr);
    overflow-x:auto;
    scrollbar-width:none;
  }
  .mcr-city-bar::-webkit-scrollbar { display:none; }
  .mcb-item { min-width:62px; }
}


/* ── Events page masthead - mobile ──────────────────────────────────── */
@media(max-width:640px) {
  .ev-page-masthead { min-height:260px; }
  .epm-main-title { font-size:1.5rem; }
  .epm-content { padding:16px 16px 14px; }
  .epm-ctas { gap:6px; }
  .epm-ctas .btn-primary,
  .epm-ctas .btn-ghost { padding:8px 14px; font-size:.68rem; }
  .epm-live-bar { overflow-x:auto; scrollbar-width:none; }
  .epm-live-bar::-webkit-scrollbar { display:none; }
  .epm-lb-item { padding:9px 12px; }
}

/* ── Filter bars - full width on mobile ─────────────────────────────── */
@media(max-width:640px) {
  .efa-row { flex-direction:column; }
  .efa-sel, .efa-date { width:100%; min-width:0; }
  .ev-results-head { padding:10px 16px; }
  .ev-timeline { padding:0 14px 16px; }
  .evt-row { grid-template-columns:44px 1fr; }
  .evt-row-right { display:none; }
}

/* ── CENTRE padding on mobile ────────────────────────────────────────── */
@media(max-width:640px) {
  .CENTRE { padding:16px !important; }
  .cat-page-centre { padding:0 !important; }
}

/* ── Section headers on mobile ───────────────────────────────────────── */
@media(max-width:480px) {
  .SH { margin-bottom:12px; }
  .sh-title { font-size:1.1rem !important; }
  .sh-eyebrow { font-size:.5rem; }
}

/* ── HOODS grid on mobile ────────────────────────────────────────────── */
@media(max-width:480px) {
  .HOODS { grid-template-columns:1fr 1fr; gap:6px; }
  .hood { min-height:80px; }
  .hood-name { font-size:.65rem; }
}

/* ── News strip on mobile ────────────────────────────────────────────── */
@media(max-width:400px) {
  .NEWS-STRIP { grid-template-columns:1fr; }
}

/* ── Story grid on mobile ────────────────────────────────────────────── */
@media(max-width:640px) {
  .STORIES-GRID { grid-template-columns:1fr; }
  .stg-feat { min-height:200px; }
  .stg-list { gap:6px; }
}

/* ── Single event/story hero on mobile ───────────────────────────────── */
@media(max-width:480px) {
  .ev-single-hero { height:200px; }
  .story-hero-full { height:200px; }
  .story-headline { font-size:1.4rem !important; }
  .ev-single-title { font-size:1.3rem; }
}

/* ── Submit + contact forms on mobile ───────────────────────────────── */
@media(max-width:640px) {
  .sfa-section-label { font-size:.7rem; }
  .sf-grid { grid-template-columns:1fr !important; }
  .sf-field.sf-full { grid-column:1; }
  .submit-layout, .contact-layout { grid-template-columns:1fr !important; }
}

/* ── Footer on mobile ────────────────────────────────────────────────── */
@media(max-width:480px) {
  .FT { grid-template-columns:1fr !important; padding:24px 16px !important; }
  .NL { padding:28px 16px !important; }
  .ft-bottom { padding:10px 16px !important; font-size:.52rem; }
}

/* ── vs-top-right on mobile - smaller ───────────────────────────────── */
@media(max-width:480px) {
  .vs-brand-right { font-size:.75rem; }
  .vs-weather-pill { font-size:.55rem; padding:3px 8px; }
  .vs-live-pill { font-size:.5rem; padding:3px 7px; }
  .vs-top-right { gap:4px; top:10px; right:10px; }
}

/* ── Ticker on mobile - smaller text ────────────────────────────────── */
@media(max-width:480px) {
  .TICKER, .hp-ticker { height:32px; }
  .tk-item { font-size:.58rem; }
  .tk-badge { padding:0 10px; font-size:.55rem; }
}

   GLOBAL SEARCH - overlay, results, sidebar button
   ═══════════════════════════════════════════════════════════════════════ */

/* Sidebar search button */
.sb-search-btn {
  display:flex;align-items:center;gap:9px;
  margin:0 10px 14px;padding:10px 12px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.14);
  border-radius:8px;cursor:pointer;
  transition:background .15s,border-color .15s;
  font-size:.72rem;color:rgba(255,255,255,.55);
}
.sb-search-btn:hover { background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.75); }
.sb-search-btn i { font-size:.7rem;flex-shrink:0; }
.sb-search-btn span:first-of-type { flex:1; }
.sb-search-shortcut {
  font-size:.55rem;font-weight:600;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);
  border-radius:4px;padding:2px 5px;color:rgba(255,255,255,.3);
  flex-shrink:0;
}

/* Overlay backdrop */
.mcr-search-overlay {
  position:fixed;inset:0;z-index:9999;
  background:rgba(0,0,0,.7);backdrop-filter:blur(6px);
  display:flex;align-items:flex-start;justify-content:center;
  padding-top:80px;
  opacity:0;pointer-events:none;
  transition:opacity .18s;
}
.mcr-search-overlay.open { opacity:1;pointer-events:all; }
body.search-open { overflow:hidden; }

/* Search modal inner */
.mcr-search-inner {
  width:100%;max-width:640px;
  background:var(--dark2);
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;overflow:hidden;
  box-shadow:0 24px 80px rgba(0,0,0,.6);
  transform:translateY(-12px);transition:transform .18s;
}
.mcr-search-overlay.open .mcr-search-inner { transform:translateY(0); }

/* Search bar row */
.mcr-search-bar {
  display:flex;align-items:center;gap:12px;
  padding:16px 18px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.mcr-search-ico { color:rgba(255,255,255,.35);font-size:.85rem;flex-shrink:0; }
.mcr-search-input {
  flex:1;background:transparent;border:none;outline:none;
  font-size:1rem;color:#fff;font-family:inherit;
}
.mcr-search-input::placeholder { color:rgba(255,255,255,.25); }
.mcr-search-close {
  width:28px;height:28px;border-radius:6px;
  background:rgba(255,255,255,.07);border:none;
  color:rgba(255,255,255,.4);font-size:.75rem;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .12s,color .12s;flex-shrink:0;
}
.mcr-search-close:hover { background:rgba(255,255,255,.14);color:#fff; }

/* Type tabs */
.mcr-search-tabs {
  display:flex;gap:0;
  padding:10px 16px 0;border-bottom:1px solid rgba(255,255,255,.07);
}
.msr-tab {
  padding:7px 14px;font-size:.68rem;font-weight:700;
  color:rgba(255,255,255,.4);background:none;border:none;
  border-bottom:2px solid transparent;cursor:pointer;
  transition:all .12s;
}
.msr-tab:hover { color:rgba(255,255,255,.7); }
.msr-tab.on { color:#fff;border-bottom-color:var(--dc-red); }

/* Results area */
.mcr-search-results {
  max-height:420px;overflow-y:auto;scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.1) transparent;
}
.mcr-search-results::-webkit-scrollbar { width:4px; }
.mcr-search-results::-webkit-scrollbar-thumb { background:rgba(255,255,255,.1);border-radius:2px; }

/* Empty / suggestions state */
.mcr-search-empty { padding:28px 20px;text-align:center; }
.mse-icon { font-size:2rem;color:rgba(255,255,255,.12);margin-bottom:10px; }
.mse-text { font-size:.82rem;color:rgba(255,255,255,.3);margin-bottom:16px; }
.mse-suggestions { display:flex;flex-wrap:wrap;gap:6px;justify-content:center; }
.mse-suggestions span {
  font-size:.68rem;padding:5px 11px;border-radius:20px;cursor:pointer;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.5);transition:all .12s;
}
.mse-suggestions span:hover { background:rgba(255,255,255,.1);color:#fff; }

/* Loading dots */
.mcr-search-loading { display:flex;align-items:center;justify-content:center;gap:6px;padding:32px; }
.msl-dot {
  width:7px;height:7px;border-radius:50%;background:var(--dc-red);
  animation:msl-bounce .6s ease-in-out infinite;
}
.msl-dot:nth-child(2){ animation-delay:.1s; }
.msl-dot:nth-child(3){ animation-delay:.2s; }
@keyframes msl-bounce { 0%,60%,100%{transform:translateY(0)} 30%{transform:translateY(-8px)} }

/* Result list */
.mcr-search-list { padding:6px 0; }
.msr-item {
  display:flex;align-items:center;gap:12px;
  padding:10px 18px;transition:background .1s;
  text-decoration:none;
}
.msr-item:hover { background:rgba(255,255,255,.05); }
.msr-thumb {
  width:44px;height:44px;border-radius:7px;overflow:hidden;flex-shrink:0;
}
.msr-thumb img { width:100%;height:100%;object-fit:cover; }
.msr-thumb-placeholder { width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:.85rem; }
.msr-body { flex:1;min-width:0; }
.msr-type { font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;margin-bottom:2px; }
.msr-title { font-size:.82rem;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.msr-meta { font-size:.62rem;color:rgba(255,255,255,.4);margin-top:1px; }
.msr-arrow { color:rgba(255,255,255,.2);font-size:.65rem;flex-shrink:0; }
.msr-item:hover .msr-arrow { color:rgba(255,255,255,.5); }

/* No result */
.mcr-search-noresult { padding:24px 20px;text-align:center;font-size:.82rem;color:rgba(255,255,255,.35); }
.mcr-search-noresult strong { color:rgba(255,255,255,.6); }

/* See all link */
.msr-see-all {
  display:block;text-align:center;padding:12px;
  font-size:.72rem;font-weight:700;color:var(--dc-red);
  border-top:1px solid rgba(255,255,255,.06);
  transition:background .12s;
}
.msr-see-all:hover { background:rgba(232,32,26,.08); }

/* Mobile search overlay */
@media(max-width:640px) {
  .mcr-search-overlay { padding-top:0;align-items:flex-start; }
  .mcr-search-inner { border-radius:0 0 14px 14px;max-width:100%; }
}

/* ── Venue map ──────────────────────────────────────────────────────────── */
.venue-map-section { margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.07); }
.venue-map-wrap {
  height:300px;border-radius:10px;overflow:hidden;
  border:1px solid rgba(255,255,255,.08);margin-top:10px;
}
.venue-map-embed { margin-top:10px; }
.venue-map-embed iframe { border-radius:10px;border:1px solid rgba(255,255,255,.08) !important; }
.venue-map-fallback-note { font-size:.68rem;color:rgba(255,255,255,.4);margin-top:6px;display:flex;align-items:center;gap:8px; }
.venue-map-fallback-note a { color:var(--dc-blue); }
.venue-map-pin {
  width:32px;height:40px;display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;color:var(--dc-red);filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));
}

/* ═══════════════════════════════════════════════════════════════════════
   TONIGHT BAR - persistent event strip above mobile tabs
   ═══════════════════════════════════════════════════════════════════════ */
.tonight-bar {
  display:none; /* shown only when events exist via PHP */
  position:fixed;bottom:64px;left:0;right:0;z-index:900;
  background:var(--dark);border-top:1px solid rgba(255,255,255,.06);
  padding:0 16px;height:44px;
  align-items:center;gap:12px;
}
@media(max-width:900px){ .tonight-bar { display:flex; } }
@media(min-width:901px){
  /* On desktop, show as a subtle bar below the sidebar */
  .tonight-bar {
    display:flex;position:static;
    border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.05);
    height:40px;padding:0 20px;background:rgba(255,255,255,.03);
    margin:0 0 0 var(--sb-w,140px);
  }
}
.tnb-eyebrow {
  display:none;
}
.tnb-dot { display:none; }
@keyframes tnb-pulse{ 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.4;transform:scale(.7)} }
.tnb-events {
  display:flex;align-items:center;gap:14px;flex:1;min-width:0;
  overflow:hidden;
}
.tnb-event {
  display:inline-flex;align-items:center;gap:5px;flex-shrink:0;
  font-size:.65rem;color:rgba(255,255,255,.6);
  text-decoration:none;transition:color .12s;
  white-space:nowrap;
}
.tnb-event:hover { color:#fff; }
.tnb-ev-dot { width:5px;height:5px;border-radius:50%;flex-shrink:0; }
.tnb-ev-name { font-weight:600;color:rgba(255,255,255,.85); }
.tnb-ev-venue,.tnb-ev-time { color:rgba(255,255,255,.4);font-size:.6rem; }
.tnb-all {
  display:inline-flex;align-items:center;gap:5px;
  font-size:.6rem;font-weight:700;color:var(--dc-red);
  white-space:nowrap;flex-shrink:0;transition:opacity .12s;
}
.tnb-all:hover { opacity:.75; }
.tnb-close {
  background:none;border:none;color:rgba(255,255,255,.25);
  font-size:.65rem;cursor:pointer;padding:4px;flex-shrink:0;
  transition:color .12s;
}
.tnb-close:hover { color:rgba(255,255,255,.6); }

/* Adjust WRAP bottom padding when tonight bar is visible */
@media(max-width:900px){ #WRAP { padding-bottom:64px; } }
@media(max-width:900px){ body.has-tonight-bar #WRAP { padding-bottom:108px; } }

/* ═══════════════════════════════════════════════════════════════════════
   MY MANCHESTER - dashboard, auth, saved grid
   ═══════════════════════════════════════════════════════════════════════ */

/* Dashboard header */
.mym-header {
  display:flex;align-items:center;gap:16px;
  padding:24px 24px 20px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.mym-avatar img {
  width:56px;height:56px;border-radius:50%;
  border:2px solid rgba(255,255,255,.1);
}
.mym-identity { flex:1;min-width:0; }
.mym-greeting { font-size:.55rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:3px; }
.mym-name { font-family:'Inter Tight',sans-serif;font-size:1.4rem;font-weight:900;color:#fff;letter-spacing:-.02em;line-height:1; }
.mym-since { font-size:.65rem;color:rgba(255,255,255,.35);margin-top:3px; }

/* Stats strip */
.mym-stats {
  display:flex;align-items:center;gap:16px;
  padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.07);
  flex-wrap:wrap;
}
.mym-stat { display:flex;align-items:baseline;gap:6px; }
.mym-stat-n { font-family:'Inter Tight',sans-serif;font-size:1.4rem;font-weight:900;color:#fff; }
.mym-stat-l { font-size:.65rem;color:rgba(255,255,255,.4); }
.mym-stat-sep { color:rgba(255,255,255,.15); }

/* Saved grid */
.mym-saved-grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;
  padding:0 0 24px;
}
@media(max-width:900px){ .mym-saved-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:480px){ .mym-saved-grid { grid-template-columns:1fr; } }

.mym-card {
  border-radius:10px;overflow:hidden;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  transition:opacity .3s,transform .3s;
}
.mym-card--past { opacity:.55; }
.mym-card-img { display:block;aspect-ratio:16/9;overflow:hidden;position:relative; }
.mym-card-img img { width:100%;height:100%;object-fit:cover;transition:transform .3s; }
.mym-card:hover .mym-card-img img { transform:scale(1.04); }
.mym-past-badge {
  position:absolute;top:8px;right:8px;
  background:rgba(0,0,0,.6);color:rgba(255,255,255,.5);
  font-size:.52rem;font-weight:700;padding:3px 7px;border-radius:3px;
}
.mym-card-body { padding:12px; }
.mym-card-type { font-size:.52rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px; }
.mym-card-title { font-size:.82rem;font-weight:700;color:#fff;line-height:1.3;margin-bottom:4px; }
.mym-card-title a { color:inherit;text-decoration:none; }
.mym-card-title a:hover { color:rgba(255,255,255,.7); }
.mym-card-meta { font-size:.62rem;color:rgba(255,255,255,.35);margin-bottom:8px; }
.mym-unsave {
  display:inline-flex;align-items:center;gap:5px;
  font-size:.62rem;font-weight:600;color:rgba(255,255,255,.35);
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);
  border-radius:4px;padding:4px 9px;cursor:pointer;transition:all .12s;
}
.mym-unsave:hover { color:#fff;border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.1); }
.mym-unsave .fas { color:var(--dc-red); }

/* Empty state */
.mym-empty {
  grid-column:1/-1;text-align:center;padding:40px 20px;
}
.mym-empty-icon { font-size:2.5rem;color:rgba(255,255,255,.1);margin-bottom:12px; }
.mym-empty-title { font-size:1.1rem;font-weight:700;color:rgba(255,255,255,.6);margin-bottom:6px; }
.mym-empty-desc { font-size:.8rem;color:rgba(255,255,255,.3);line-height:1.6; }

/* Auth page */
.mym-auth-wrap {
  display:flex;justify-content:center;align-items:flex-start;
  padding:40px 20px;min-height:60vh;
}
.mym-auth-card {
  width:100%;max-width:420px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  border-radius:16px;padding:32px;
}
.mym-auth-logo {
  font-family:'Inter Tight',sans-serif;font-size:1.6rem;font-weight:900;
  color:#fff;letter-spacing:-.04em;margin-bottom:12px;
}
.mym-auth-title {
  font-family:'Inter Tight',sans-serif;font-size:2rem;font-weight:900;
  color:#fff;letter-spacing:-.03em;margin:0 0 8px;
}
.mym-auth-sub { font-size:.85rem;color:rgba(255,255,255,.4);line-height:1.6;margin-bottom:24px; }
.mym-tabs {
  display:flex;gap:0;margin-bottom:20px;
  border:1px solid rgba(255,255,255,.1);border-radius:8px;overflow:hidden;
}
.mym-tab {
  flex:1;padding:10px;font-size:.75rem;font-weight:700;
  background:none;border:none;color:rgba(255,255,255,.4);cursor:pointer;
  transition:all .12s;
}
.mym-tab.on { background:rgba(255,255,255,.08);color:#fff; }
.mym-form { display:flex;flex-direction:column;gap:10px; }
.mym-input {
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  color:#fff;padding:12px 14px;border-radius:8px;font-size:.85rem;
  font-family:inherit;outline:none;transition:border-color .12s;
  width:100%;
}
.mym-input:focus { border-color:rgba(255,255,255,.25); }
.mym-input::placeholder { color:rgba(255,255,255,.25); }
.mym-msg { font-size:.75rem;min-height:20px;text-align:center; }

/* Save button on cards (injected via JS) */
.mcr-save-btn {
  position:absolute;top:8px;right:8px;z-index:2;
  width:30px;height:30px;border-radius:6px;
  background:rgba(0,0,0,.5);backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.15);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:.75rem;color:rgba(255,255,255,.6);
  transition:all .12s;
}
.mcr-save-btn:hover,
.mcr-save-btn.saved { color:#fff;background:rgba(232,32,26,.7);border-color:var(--dc-red); }

/* ═══════════════════════════════════════════════════════════════════════
   VENUE REVIEWS
   ═══════════════════════════════════════════════════════════════════════ */
.venue-reviews-section {
  margin-top:28px;padding-top:22px;
  border-top:1px solid rgba(255,255,255,.07);
}
.vr-header {
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:16px;gap:12px;flex-wrap:wrap;
}
.vr-header-left { display:flex;align-items:center;gap:12px;flex-wrap:wrap; }
.vr-summary { display:flex;align-items:center;gap:7px; }
.vr-avg { font-family:'Inter Tight',sans-serif;font-size:1.4rem;font-weight:900;color:#fff; }
.vr-stars { color:var(--dc-yellow);font-size:.85rem; }
.vr-count { font-size:.68rem;color:rgba(255,255,255,.4); }

/* Review form */
.vr-form-wrap {
  background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);
  border-radius:10px;padding:18px;margin-bottom:20px;
}
.vr-form { display:flex;flex-direction:column;gap:10px; }
.vr-rating-input { display:flex;align-items:center;gap:10px; }
.vr-rating-label { font-size:.72rem;color:rgba(255,255,255,.5); }
.vr-stars-input { display:flex;gap:4px;cursor:pointer; }
.vr-stars-input i {
  font-size:1.3rem;color:rgba(255,255,255,.2);transition:color .1s;cursor:pointer;
}
.vr-stars-input i.fas,
.vr-stars-input i.vr-hover { color:var(--dc-yellow); }
.vr-input {
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  color:#fff;padding:10px 12px;border-radius:7px;font-size:.82rem;
  font-family:inherit;outline:none;transition:border-color .12s;
}
.vr-input:focus { border-color:rgba(255,255,255,.25); }
.vr-input::placeholder { color:rgba(255,255,255,.25); }
.vr-textarea {
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  color:#fff;padding:10px 12px;border-radius:7px;font-size:.82rem;
  font-family:inherit;outline:none;resize:vertical;transition:border-color .12s;
}
.vr-textarea:focus { border-color:rgba(255,255,255,.25); }
.vr-textarea::placeholder { color:rgba(255,255,255,.25); }
.vr-msg { font-size:.72rem;min-height:18px; }

/* Review list */
.vr-list { display:flex;flex-direction:column;gap:16px; }
.vr-loading { display:flex;gap:5px;padding:16px 0; }
.vr-empty { font-size:.8rem;color:rgba(255,255,255,.3);padding:16px 0;font-style:italic; }
.vr-item {
  padding:16px;background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.07);border-radius:9px;
}
.vr-item-head { display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap; }
.vr-item-stars { color:var(--dc-yellow);font-size:.8rem;letter-spacing:1px; }
.vr-item-name { font-size:.75rem;font-weight:700;color:rgba(255,255,255,.8); }
.vr-verified {
  font-size:.55rem;color:var(--dc-green);font-weight:800;
  background:rgba(45,181,75,.1);padding:1px 5px;border-radius:3px;margin-left:3px;
}
.vr-item-date { font-size:.62rem;color:rgba(255,255,255,.3);margin-left:auto; }
.vr-item-title { font-size:.8rem;font-weight:700;color:#fff;margin-bottom:4px; }
.vr-item-body { font-size:.78rem;color:rgba(255,255,255,.6);line-height:1.6; }

/* ═══════════════════════════════════════════════════════════════════════
   AI PLANNER PAGE
   ═══════════════════════════════════════════════════════════════════════ */
.planner-hero {
  position:relative;padding:40px 28px 32px;overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.planner-hero-bg {
  position:absolute;inset:0;
  background:radial-gradient(ellipse at 60% 50%, rgba(124,58,237,.2) 0%, transparent 70%),
             radial-gradient(ellipse at 20% 80%, rgba(26,86,255,.15) 0%, transparent 60%);
  pointer-events:none;
}
.planner-eyebrow {
  display:inline-flex;align-items:center;gap:7px;
  font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--violet);margin-bottom:12px;
}
.planner-title {
  font-family:'Inter Tight',sans-serif;font-size:clamp(2rem,5vw,3.2rem);
  font-weight:900;color:#fff;letter-spacing:-.04em;line-height:1;margin:0 0 12px;
  position:relative;
}
.planner-title em { color:var(--violet);font-style:normal; }
.planner-sub { font-size:.88rem;color:rgba(255,255,255,.5);max-width:540px;line-height:1.6;position:relative; }

/* Quick prompt chips */
.planner-quick { padding:20px 28px 0;border-bottom:1px solid rgba(255,255,255,.06); }
.planner-quick-label { font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:10px; }
.planner-quick-chips { display:flex;flex-wrap:wrap;gap:7px;padding-bottom:18px; }
.plq-chip {
  display:inline-flex;align-items:center;gap:5px;
  font-size:.72rem;font-weight:600;padding:7px 13px;border-radius:20px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.6);cursor:pointer;transition:all .12s;
  font-family:inherit;
}
.plq-chip:hover { background:rgba(124,58,237,.15);border-color:var(--violet);color:#fff; }

/* Chat interface */
.planner-chat {
  display:flex;flex-direction:column;
  padding:20px 28px;gap:16px;
}
.planner-messages {
  display:flex;flex-direction:column;gap:16px;
  max-height:500px;overflow-y:auto;scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.1) transparent;
  padding-right:4px;
}
.planner-messages::-webkit-scrollbar { width:3px; }
.planner-messages::-webkit-scrollbar-thumb { background:rgba(255,255,255,.1); }

/* Chat bubbles */
.pm-bubble { display:flex;gap:10px;align-items:flex-start; }
.pm-bubble--user { flex-direction:row-reverse; }
.pm-avatar {
  width:32px;height:32px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,var(--violet),var(--dc-blue));
  display:flex;align-items:center;justify-content:center;
  font-size:.75rem;color:#fff;
}
.pm-content { max-width:78%; }
.pm-text {
  padding:12px 15px;border-radius:12px;font-size:.82rem;line-height:1.6;
}
.pm-bubble--ai .pm-text {
  background:rgba(255,255,255,.06);color:rgba(255,255,255,.85);
  border-radius:4px 12px 12px 12px;
}
.pm-bubble--user .pm-text {
  background:var(--violet);color:#fff;
  border-radius:12px 4px 12px 12px;
}

/* Typing dots */
.pm-dots { display:flex;gap:4px;padding:14px 16px; }
.pm-dots span {
  width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.3);
  animation:pm-dot .9s ease-in-out infinite;
}
.pm-dots span:nth-child(2){ animation-delay:.15s; }
.pm-dots span:nth-child(3){ animation-delay:.3s; }
@keyframes pm-dot { 0%,60%,100%{transform:translateY(0);opacity:.3} 30%{transform:translateY(-6px);opacity:1} }

/* Input area */
.planner-input-wrap {
  display:flex;gap:10px;align-items:flex-end;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);
  border-radius:12px;padding:10px 12px;
}
.planner-input {
  flex:1;background:transparent;border:none;outline:none;
  color:#fff;font-size:.85rem;font-family:inherit;resize:none;
  max-height:120px;line-height:1.5;min-height:24px;
}
.planner-input::placeholder { color:rgba(255,255,255,.25); }
.planner-send {
  width:44px;height:44px;border-radius:8px;flex-shrink:0;
  background:var(--violet);border:none;color:#fff;
  font-size:.85rem;cursor:pointer;transition:all .12s;
  display:flex;align-items:center;justify-content:center;
}
.planner-send:hover { background:#6d28d9; }
.planner-send:disabled { opacity:.4;cursor:not-allowed; }
.planner-hint { font-size:.58rem;color:rgba(255,255,255,.2);text-align:center; }

/* Actions row */
.planner-actions { display:flex;gap:8px;justify-content:center;padding:0 28px 20px; }

@media(max-width:640px) {
  .planner-hero { padding:28px 16px 22px; }
  .planner-quick { padding:14px 16px 0; }
  .planner-chat { padding:14px 16px; }
  .planner-messages { max-height:360px; }
  .pm-content { max-width:88%; }
}

/* ═══════════════════════════════════════════════════════════════════════
   SPORT LIVE SCORES
   ═══════════════════════════════════════════════════════════════════════ */
.spm-live-dot {
  display:inline-block;width:7px;height:7px;border-radius:50%;
  background:var(--dc-red);margin-right:2px;
  animation:spm-pulse 1.4s ease-in-out infinite;
}
@keyframes spm-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.6)}}
.spm-live-bar--live .spm-live-dot { animation-duration:.8s; }
.spm-live-item--live { color:#fff !important; }
.spm-live-item--live strong { color:var(--dc-red); }
.spm-live-item em { font-size:.55rem;font-style:normal;color:var(--dc-red);font-weight:800; }

.sv2-nl-text { font-size:.82rem;color:rgba(255,255,255,.5);line-height:1.6;margin-bottom:14px; }
.sv2-footer-text { font-size:.72rem;color:rgba(255,255,255,.35);line-height:1.6; }

/* ── Venue single - hero action buttons ─────────────────────────── */
.evs-hero-actions {
  display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;
}
.evs-hero-actions .btn-primary,
.evs-hero-actions .btn-ghost {
  font-size:.68rem;padding:8px 16px;
}

/* ══════════════════════════════════════════════════════════════════════
   iOS ZOOM FIX - prevent auto-zoom on input focus (requires font-size >= 16px)
   ══════════════════════════════════════════════════════════════════════ */
@supports (-webkit-touch-callout: none) {
  input, select, textarea {
    font-size: 16px !important;
  }
}


/* ── Fallback index.php grid ────────────────────────────────────────── */
.PGRID {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:20px;margin:20px 0 40px;
}
.no-content-notice {
  padding:40px 20px;text-align:center;
  font-size:.85rem;color:rgba(255,255,255,.4);
}
.story-card {
  display:flex;flex-direction:column;
  background:var(--dark3);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;overflow:hidden;text-decoration:none;
  transition:border-color .15s,transform .15s;
}
.story-card:hover { border-color:rgba(255,255,255,.16);transform:translateY(-2px); }
.story-img { height:160px;overflow:hidden; }
.story-img img { width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s; }
.story-card:hover .story-img img { transform:scale(1.04); }
.story-body { padding:14px 16px;display:flex;flex-direction:column;gap:5px; }
.story-cat { font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em; }
.story-title { font-size:.88rem;font-weight:700;color:#fff;line-height:1.35; }
.story-meta { font-size:.58rem;color:rgba(255,255,255,.35); }
@media(max-width:600px) { .PGRID { grid-template-columns:1fr; } }


/* ══════════════════════════════════════════════════════════════════════
   COMMUNITY & GRASSROOTS SPORT
   ══════════════════════════════════════════════════════════════════════ */

/* Section sub-heading */
.sport-sub-head {
  font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;
  color:rgba(255,255,255,.5);margin:0 0 16px;display:flex;align-items:center;gap:8px;
  padding:20px 28px 0;
}
.sport-sub-head i { font-size:.85rem; }

/* ── Sunday League cards ──────────────────────────────────────────── */
.community-leagues-grid {
  display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:14px;padding:0 28px;
}
.clg-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:10px;padding:18px;display:flex;flex-direction:column;gap:12px;
  transition:border-color .15s;
}
.clg-card:hover { border-color:rgba(255,255,255,.16); }
.clg-top { display:flex;gap:14px;align-items:flex-start; }
.clg-icon {
  width:40px;height:40px;border-radius:10px;display:flex;
  align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;
}
.clg-meta { display:flex;flex-direction:column;gap:3px; }
.clg-sport { font-size:.52rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em; }
.clg-name { font-size:.82rem;font-weight:700;color:#fff;margin:0; }
.clg-teams { font-size:.58rem;color:rgba(255,255,255,.4); }
.clg-desc { font-size:.65rem;color:rgba(255,255,255,.5);line-height:1.55;margin:0; }
.clg-footer { display:flex;gap:8px;flex-wrap:wrap;margin-top:auto; }

.community-cta-note {
  font-size:.65rem;color:rgba(255,255,255,.35);padding:12px 28px 0;
  line-height:1.6;
}
.community-cta-note a { text-decoration:underline; }

/* ── Grassroots clubs filter ─────────────────────────────────────── */
.community-filter-row {
  display:flex;gap:8px;padding:0 28px 16px;flex-wrap:wrap;
}
.cfl-btn {
  padding:6px 14px;border-radius:6px;font-size:.58rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;cursor:pointer;
  border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.5);transition:all .15s;
}
.cfl-btn:hover { border-color:rgba(255,255,255,.25);color:#fff; }
.cfl-btn.on {
  background:var(--dc-red);border-color:var(--dc-red);color:#fff;
}

/* ── Club cards ──────────────────────────────────────────────────── */
.community-clubs-grid {
  display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:12px;padding:0 28px;
}
.cgc-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;padding:16px;transition:border-color .15s;
}
.cgc-card:hover { border-color:rgba(255,255,255,.15); }
.cgc-top { display:flex;gap:12px;align-items:flex-start;margin-bottom:10px; }
.cgc-badge {
  width:44px;height:44px;border-radius:8px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.cgc-info { display:flex;flex-direction:column;gap:2px;min-width:0; }
.cgc-sport { font-size:.5rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em; }
.cgc-name { font-size:.8rem;font-weight:700;color:#fff;margin:0;line-height:1.25; }
.cgc-area { font-size:.58rem;color:rgba(255,255,255,.35); }
.cgc-desc { font-size:.63rem;color:rgba(255,255,255,.45);line-height:1.55;margin:0; }

/* ── Add your club CTA ───────────────────────────────────────────── */
.community-add-club {
  margin:20px 28px 0;
  background:rgba(255,255,255,.03);border:1px dashed rgba(255,255,255,.12);
  border-radius:10px;
}
.cac-inner {
  padding:20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;
}
.cac-icon {
  width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.06);
  display:flex;align-items:center;justify-content:center;
  font-size:.9rem;color:rgba(255,255,255,.4);flex-shrink:0;
}
.cac-title { font-size:.78rem;font-weight:700;color:#fff;margin-bottom:3px; }
.cac-sub { font-size:.62rem;color:rgba(255,255,255,.4);line-height:1.5; }
.cac-inner > div:nth-child(2) { flex:1;min-width:180px; }

/* ── Places to play ──────────────────────────────────────────────── */
.community-pitches-grid {
  display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:12px;padding:0 28px;
}
.cpp-card {
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:10px;padding:16px;transition:border-color .15s;
}
.cpp-card:hover { border-color:rgba(255,255,255,.14); }
.cpp-header { margin-bottom:6px; }
.cpp-name { font-size:.8rem;font-weight:700;color:#fff; }
.cpp-type { font-size:.55rem;color:rgba(255,255,255,.4);font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin-top:2px; }
.cpp-loc { font-size:.6rem;color:rgba(255,255,255,.35);margin-bottom:8px; }
.cpp-desc { font-size:.63rem;color:rgba(255,255,255,.45);line-height:1.55;margin:0 0 10px; }

/* ── Mobile ──────────────────────────────────────────────────────── */
@media(max-width:640px) {
  .community-leagues-grid { grid-template-columns:1fr;padding:0 16px; }
  .community-clubs-grid   { grid-template-columns:1fr;padding:0 16px; }
  .community-pitches-grid { grid-template-columns:1fr;padding:0 16px; }
  .community-filter-row   { padding:0 16px 14px; }
  .community-add-club     { margin:16px 16px 0; }
  .cac-inner              { flex-direction:column;align-items:flex-start; }
  .sport-sub-head         { padding:16px 16px 0; }
}

/* ── Event page light/white section breaks ─────────────────────────── */
.evs-transport--light {
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  padding:20px;
  margin-bottom:8px;
}
.evs-related--light {
  background:#f8f8f8;
  padding:32px 28px;
  margin:0 -28px;
}
.evs-related--light .evs-related-head {
  color:#111;
}
.evs-related--light .evs-rel-card {
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 2px 8px rgba(0,0,0,.06);
}
.evs-related--light .evs-rel-card:hover {
  border-color:rgba(0,0,0,.15);
  transform:translateY(-2px);
}
.evs-related--light .evs-rel-title { color:#111; }
.evs-related--light .evs-rel-meta  { color:#666; }

/* ── Event page breadcrumb ─────────────────────────────────────────── */
.evs-breadcrumb { padding:16px 28px 0; }

/* ── Event hero fills full width ───────────────────────────────────── */
.evs-hero { margin:16px 0 0; }

/* ── Fix inner content padding ─────────────────────────────────────── */
.evs-section-head {
  padding:0;
  margin:24px 0 12px;
}
.evs-facts { margin:16px 0; }

@media(max-width:860px) {
  .evs-transport--light { padding:14px; }
  .evs-related--light { padding:24px 16px; margin:0 -16px; }
  .evs-breadcrumb { padding:12px 16px 0; }
  .evs-body { padding:0 12px 20px; grid-template-columns:1fr !important; }
  .evs-left { min-width:0; max-width:100%; overflow:hidden; }
  .evs-sidebar { display:none; }
  .CENTRE { overflow-x:hidden; }
}


/* ══════════════════════════════════════════════════════════════════════
   WHITE-BG MODE
   Rule: base color dark. Hero mastheads + dark cards keep white text.
   DO NOT set h1/h2/h3/a globally - too broad, bleeds into dark heroes.
   ══════════════════════════════════════════════════════════════════════ */

.CENTRE.white-bg,
.white-bg.CENTRE {
  background:#ffffff;
  color:#0c0c0e;
}

/* ── Section heads that sit directly on white surface ─────────── */
.CENTRE.white-bg .csh-title,
.CENTRE.white-bg .sh-title       { color:#0c0c0e; }
.CENTRE.white-bg .csh-eyebrow,
.CENTRE.white-bg .sh-eyebrow     { color:var(--dc-red); }
.CENTRE.white-bg .csh-sub,
.CENTRE.white-bg .sh-sub         { color:rgba(0,0,0,.5); }
.CENTRE.white-bg .csh-count      { color:rgba(0,0,0,.35); background:rgba(0,0,0,.06); }
.CENTRE.white-bg .sh-link        { color:rgba(0,0,0,.45); }
.CENTRE.white-bg .cat-section-head { border-color:rgba(0,0,0,.08); }

/* ── Filters, pills, dropdowns on white ───────────────────────── */
.CENTRE.white-bg .ev-pill { background:rgba(0,0,0,.05); color:rgba(0,0,0,.65); border-color:rgba(0,0,0,.1); }
.CENTRE.white-bg .ev-pill.on,.CENTRE.white-bg .ev-pill:hover { background:var(--dc-red);color:#fff;border-color:var(--dc-red); }
.CENTRE.white-bg select,.CENTRE.white-bg .ev-filter-select,.CENTRE.white-bg .fsb-sel,.CENTRE.white-bg .fsb-input {
  background:#fff; border-color:rgba(0,0,0,.12); color:#0c0c0e;
}
.CENTRE.white-bg .ev-count,.CENTRE.white-bg .events-count { color:rgba(0,0,0,.5); }

/* ── Buttons on white surface ─────────────────────────────────── */
.CENTRE.white-bg .btn-ghost,.CENTRE.white-bg .btn-ghost-sm { color:#0c0c0e; border-color:rgba(0,0,0,.2); }
.CENTRE.white-bg .ev-section-label { color:#0c0c0e; }
.CENTRE.white-bg .ev-section-rule { background:rgba(0,0,0,.1); }
.CENTRE.white-bg .btn-ghost:hover,.CENTRE.white-bg .btn-ghost-sm:hover { background:rgba(0,0,0,.06); color:#0c0c0e; }
.CENTRE.white-bg .btn-primary,.CENTRE.white-bg .btn-primary-sm { color:#fff; }
.CENTRE.white-bg .btn-load-more { background:rgba(0,0,0,.06); color:#0c0c0e; border-color:rgba(0,0,0,.12); }
.CENTRE.white-bg .btn-load-more:hover { background:rgba(0,0,0,.1); }

/* ── cs-item strands (sit directly on white) ──────────────────── */
.CENTRE.white-bg .cs-label { color:#0c0c0e; }
.CENTRE.white-bg .cs-desc  { color:rgba(0,0,0,.45); }

/* ══ DARK CARD CONTAINERS - give solid bg + restore white text ══ */
/* Background overrides */
.CENTRE.white-bg .ev-card      { /* keep category gradient - shadow only */ box-shadow:0 6px 28px rgba(0,0,0,.22),0 2px 6px rgba(0,0,0,.12); }
.CENTRE.white-bg .ev-card:hover{ box-shadow:0 18px 50px rgba(0,0,0,.32),0 0 60px color-mix(in srgb,var(--cc,#ff6b00) 25%,transparent); }
.CENTRE.white-bg .cat-ev-card  { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); box-shadow:0 2px 10px rgba(0,0,0,.1); }
.CENTRE.white-bg .cvg-card     { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .fvg-card     { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); box-shadow:0 2px 10px rgba(0,0,0,.1); }
.CENTRE.white-bg .scd-card     { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .sstd-card    { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .clg-card     { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .cgc-card     { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .cpp-card     { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .fstory-card  { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .fhood-card   { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .dir-card     { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .evs-sidebar-card,.CENTRE.white-bg .evs-ticket-card { background:var(--dark3,#1a1a20); }

/* White text on ALL dark cards - one rule, children inherit */
.CENTRE.white-bg .ev-card,
.CENTRE.white-bg .cat-ev-card,
.CENTRE.white-bg .cvg-card,
.CENTRE.white-bg .fvg-card,
.CENTRE.white-bg .scd-card,.CENTRE.white-bg .sstd-card,
.CENTRE.white-bg .clg-card,.CENTRE.white-bg .cgc-card,.CENTRE.white-bg .cpp-card,
.CENTRE.white-bg .fstory-card,.CENTRE.white-bg .fhood-card,
.CENTRE.white-bg .dir-card,
.CENTRE.white-bg .evs-sidebar-card,.CENTRE.white-bg .evs-ticket-card { color:rgba(255,255,255,.85); }

/* Links inside dark cards */
.CENTRE.white-bg .ev-card a,.CENTRE.white-bg .cat-ev-card a,
.CENTRE.white-bg .cvg-card a,.CENTRE.white-bg .fvg-card a,
.CENTRE.white-bg .scd-card a,.CENTRE.white-bg .sstd-card a,
.CENTRE.white-bg .clg-card a,.CENTRE.white-bg .cgc-card a,
.CENTRE.white-bg .dir-card a,.CENTRE.white-bg .fstory-card a,
.CENTRE.white-bg .fhood-card a { color:rgba(255,255,255,.9); }

/* btn-ghost inside dark cards - keep light style */
.CENTRE.white-bg .cat-ev-card .btn-ghost-sm,
.CENTRE.white-bg .fvg-card .btn-ghost-sm,
.CENTRE.white-bg .ev-card .btn-ghost-sm { color:rgba(255,255,255,.7); border-color:rgba(255,255,255,.2); }

/* ══ DARK HERO MASTHEADS - always dark image bg, keep white text ══ */
.CENTRE.white-bg .culture-masthead,
.CENTRE.white-bg .ev-page-masthead,
.CENTRE.white-bg .food-masthead,
.CENTRE.white-bg .spm-hero,
.CENTRE.white-bg [class*="-masthead"] { color:rgba(255,255,255,.9); }

/* Links inside mastheads */
.CENTRE.white-bg .culture-masthead a,
.CENTRE.white-bg .ev-page-masthead a,
.CENTRE.white-bg [class*="-masthead"] a { color:rgba(255,255,255,.9); }

/* ── Newsletter blocks - always dark gradient bg ──────────────── */
.CENTRE.white-bg [class*="nl-block"],.CENTRE.white-bg [class*="-nl-"] { color:rgba(255,255,255,.9); }
.CENTRE.white-bg .fnl-title  { color:#fff; }
.CENTRE.white-bg .fnl-sub    { color:rgba(255,255,255,.6); }
.CENTRE.white-bg .fnl-input  { color:#fff; background:rgba(255,255,255,.1); }

/* ── scb active pill keeps white ──────────────────────────────── */
.CENTRE.white-bg .scb-on { color:#fff; }

/* ── Single event page meta grid ─────────────────────────────── */
.CENTRE.white-bg .ev-meta-item {
  background:var(--dark3,#1a1a20);
  border-color:rgba(255,255,255,.07);
}
.CENTRE.white-bg .ev-meta-label { color:rgba(255,255,255,.4); }
.CENTRE.white-bg .ev-meta-val   { color:rgba(255,255,255,.9); }

/* ── Single event page - elements on white surface ───────────── */
.CENTRE.white-bg .evs-left,
.CENTRE.white-bg .evs-body       { color:#0c0c0e; }
.CENTRE.white-bg .evs-breadcrumb { color:rgba(0,0,0,.4); }
.CENTRE.white-bg .evs-breadcrumb a { color:rgba(0,0,0,.55); }
.CENTRE.white-bg .evs-section-head { color:rgba(0,0,0,.5); }
.CENTRE.white-bg .evs-section-head::after { background:rgba(0,0,0,.1); }
.CENTRE.white-bg .evs-description { color:rgba(0,0,0,.72); }
.CENTRE.white-bg .evs-description a { color:#1a56ff; }
.CENTRE.white-bg .evs-description h2,
.CENTRE.white-bg .evs-description h3 { color:#0c0c0e; }
.CENTRE.white-bg .evs-fact-label { color:rgba(0,0,0,.45); }
.CENTRE.white-bg .evs-fact-val,
.CENTRE.white-bg .evs-fact-value { color:#0c0c0e; }
.CENTRE.white-bg .evs-tag { background:rgba(0,0,0,.06); color:rgba(0,0,0,.65); border-color:rgba(0,0,0,.1); }
.CENTRE.white-bg .evs-hero-title { color:#fff; }
.CENTRE.white-bg .evs-hero-meta  { color:rgba(255,255,255,.85); }
.CENTRE.white-bg .evs-cta-row .evs-btn-secondary { background:#f4f4f6; border:1px solid rgba(0,0,0,.12); color:#0c0c0e; }
.CENTRE.white-bg .venue-reviews-section { border-top-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .vr-avg   { color:#0c0c0e; }
.CENTRE.white-bg .vr-count { color:rgba(0,0,0,.4); }
.CENTRE.white-bg #vr-list > div { color:rgba(0,0,0,.35); }
.CENTRE.white-bg .evs-about-label,
.CENTRE.white-bg .evs-getting-there-label { color:rgba(0,0,0,.5); }
.CENTRE.white-bg .evs-desc  { color:rgba(0,0,0,.75); }
.CENTRE.white-bg .eti-name  { color:#0c0c0e; }
.CENTRE.white-bg .eti-desc  { color:rgba(0,0,0,.55); }

/* ── Transport block - has dark bg, needs solid bg on white pages ── */
.CENTRE.white-bg .evs-transport--light {
  background:var(--dark3,#1a1a20);
  border-color:rgba(255,255,255,.07);
}
/* transport text already white in base CSS - no override needed */

/* ── Venue block - dark bg, keep white text (remove dark overrides) ── */
.CENTRE.white-bg .evs-venue-block { background:var(--dark3,#1a1a20); border-color:rgba(255,255,255,.07); }
.CENTRE.white-bg .evs-vb-name    { color:#fff; }
.CENTRE.white-bg .evs-vb-address { color:rgba(255,255,255,.45); }
.CENTRE.white-bg .evs-vb-link    { color:var(--dc-blue); }

/* ── Text directly on white background ─────────────────────────────── */
.CENTRE.white-bg .evs-left,
.CENTRE.white-bg .evs-body {
  color: #0c0c0e;
}
/* Breadcrumb */
.CENTRE.white-bg .evs-breadcrumb { color: rgba(0,0,0,.4); }
.CENTRE.white-bg .evs-breadcrumb a { color: rgba(0,0,0,.55); }
/* Section divider labels */
.CENTRE.white-bg .evs-section-head { color: rgba(0,0,0,.5); }
.CENTRE.white-bg .evs-section-head::after { background: rgba(0,0,0,.1); }
/* Description body text */
.CENTRE.white-bg .evs-description { color: rgba(0,0,0,.72); }
.CENTRE.white-bg .evs-description strong,
.CENTRE.white-bg .evs-description b { color: #0c0c0e; }
.CENTRE.white-bg .evs-description h2,
.CENTRE.white-bg .evs-description h3 { color: #0c0c0e; }
.CENTRE.white-bg .evs-description a { color: #1a56ff; }
/* Facts grid labels/values */
.CENTRE.white-bg .evs-fact-label { color: rgba(0,0,0,.45); }
.CENTRE.white-bg .evs-fact-val,
.CENTRE.white-bg .evs-fact-value { color: #0c0c0e; }
/* Tags */
.CENTRE.white-bg .evs-tag { background: rgba(0,0,0,.06); color: rgba(0,0,0,.65); border-color: rgba(0,0,0,.1); }
/* Hero (always has image/scrim behind it - keep white text) */
.CENTRE.white-bg .evs-hero-title { color: #fff; }
.CENTRE.white-bg .evs-hero-meta { color: rgba(255,255,255,.85); }
/* CTA secondary buttons on white */
.CENTRE.white-bg .evs-cta-row .evs-btn-secondary {
  background: #f4f4f6; border: 1px solid rgba(0,0,0,.12); color: #0c0c0e;
}
/* Reviews section - sits on white */
.CENTRE.white-bg .venue-reviews-section { border-top-color: rgba(0,0,0,.08); }
.CENTRE.white-bg .vr-avg { color: #0c0c0e; }
.CENTRE.white-bg .vr-count { color: rgba(0,0,0,.4); }
.CENTRE.white-bg #vr-list > div { color: rgba(0,0,0,.35); }
/* Legacy field names */
.CENTRE.white-bg .evs-about-label,
.CENTRE.white-bg .evs-getting-there-label { color: rgba(0,0,0,.5); }
.CENTRE.white-bg .evs-desc { color: rgba(0,0,0,.75); }
.CENTRE.white-bg .eti-name { color: #0c0c0e; }
.CENTRE.white-bg .eti-desc { color: rgba(0,0,0,.55); }

/* ── Events listing page - elements that sit on white background ── */
/* Filter pills */
.CENTRE.white-bg .ev-pill {
  background: rgba(0,0,0,.05); color: rgba(0,0,0,.65);
  border-color: rgba(0,0,0,.1);
}
.CENTRE.white-bg .ev-pill.on,
.CENTRE.white-bg .ev-pill:hover {
  background: var(--dc-red); color: #fff; border-color: var(--dc-red);
}
/* Category count pills (Music 319 etc.) */
.CENTRE.white-bg .ev-cat-pills .ev-pill { background: rgba(0,0,0,.04); }
/* Page count text ("701 events") */
.CENTRE.white-bg .ev-count,
.CENTRE.white-bg .events-count,
.CENTRE.white-bg [class*="ev-count"] { color: rgba(0,0,0,.5); }
/* Section/page headings */
.CENTRE.white-bg .sh-title { color: #0c0c0e; }
.CENTRE.white-bg .sh-eyebrow { color: var(--dc-red); }
.CENTRE.white-bg .sh-sub { color: rgba(0,0,0,.5); }
/* Filter bar dropdowns */
.CENTRE.white-bg select,
.CENTRE.white-bg .ev-filter-select {
  background: #fff; border-color: rgba(0,0,0,.12); color: #0c0c0e;
}
/* ── Dark cards on white pages - keep category gradient, shadow only ── */
/* ev-card (events listing) - DO NOT override background, let category gradient show */
.CENTRE.white-bg .ev-card {
  box-shadow: 0 6px 28px rgba(0,0,0,.22), 0 2px 6px rgba(0,0,0,.12);
}
.CENTRE.white-bg .ev-card:hover {
  box-shadow: 0 20px 55px rgba(0,0,0,.34),
              0 0 70px color-mix(in srgb, var(--cc,#ff6b00) 28%, transparent);
}
.CENTRE.white-bg .ev-card .ev-card-title,
.CENTRE.white-bg .ev-card .ev-card-title a { color: rgba(255,255,255,.9); }
.CENTRE.white-bg .ev-card .ev-card-meta  { color: rgba(255,255,255,.5); }
.CENTRE.white-bg .ev-card .ev-card-meta i { color: rgba(255,255,255,.3); }
.CENTRE.white-bg .ev-card .ev-card-excerpt { color: rgba(255,255,255,.5); }
/* cat-ev-card (sport/culture/music event cards) */
.CENTRE.white-bg .cat-ev-card {
  background: var(--dark3, #1a1a20);
  border-color: rgba(255,255,255,.08);
}
/* scd-card (sport clubs/stadiums) */
.CENTRE.white-bg .scd-card,
.CENTRE.white-bg .sstd-card {
  background: var(--dark3, #1a1a20);
  border-color: rgba(255,255,255,.08);
}
/* cvg-card (culture venues) */
.CENTRE.white-bg .cvg-card {
  background: var(--dark3, #1a1a20);
  border-color: rgba(255,255,255,.08);
}
/* fstory-card (stories) */
.CENTRE.white-bg .fstory-card {
  background: var(--dark3, #1a1a20);
  border-color: rgba(255,255,255,.08);
}
/* Generic white-alpha cards that become invisible on white */
.CENTRE.white-bg [class*="-card"]:not(.evs-sidebar-card):not(.evs-ticket-card):not([class*="ev-card-"]):not(.ev-card) {
  background: var(--dark3, #1a1a20);
}
/* cs-item (culture strand icons) - sit directly on white, use dark text */
.CENTRE.white-bg .cs-label { color: #0c0c0e; }
.CENTRE.white-bg .cs-desc  { color: rgba(0,0,0,.45); }
/* Sidebar/info boxes */
.CENTRE.white-bg .evs-sidebar-card { background: var(--dark3, #1a1a20); }
/* Load-more button on white */
.CENTRE.white-bg .btn-load-more {
  background: rgba(0,0,0,.06);
  color: #0c0c0e;
  border-color: rgba(0,0,0,.12);
}
/* Section headings/eyebrows inside white pages */
.CENTRE.white-bg .cat-section-head,
.CENTRE.white-bg .csh-label { color: rgba(0,0,0,.5); }
.CENTRE.white-bg .csh-label::after { background: rgba(0,0,0,.1); }

/* ── Events filter bar & count on white bg ───────────────────────── */
.CENTRE.white-bg .ev-filter-advanced {
  background:rgba(0,0,0,.02);
  border-bottom-color:rgba(0,0,0,.08);
}
.CENTRE.white-bg .efa-date {
  background:rgba(0,0,0,.04);
  border-color:rgba(0,0,0,.12);
  color:#0c0c0e;
}
.CENTRE.white-bg .efa-sel option { background:#fff; color:#0c0c0e; }
.CENTRE.white-bg .efa-bottom { border-top-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .efa-vb {
  color:#3a3a42 !important;
  background:rgba(0,0,0,.04) !important;
  border-color:rgba(0,0,0,.12) !important;
}
.CENTRE.white-bg .efa-vb i { color:inherit !important; }
.CENTRE.white-bg .efa-vb:hover { color:#fff !important;background:var(--dc-red) !important;border-color:var(--dc-red) !important; }
.CENTRE.white-bg .efa-vb.on { color:#fff !important;background:var(--dc-red) !important;border-color:var(--dc-red) !important; }
.CENTRE.white-bg .efa-vb.on i { color:#fff !important; }
/* keep all three view-toggle buttons exactly the same size and baseline */
.efa-view-btns { align-items:center; }
.efa-vb { flex-shrink:0;box-sizing:border-box; }
/* ensure count chips are exact same height across all categories */
.epm-live-bar .epm-lb-item { box-sizing:border-box;line-height:1; }
.epm-live-bar .epm-lb-count { display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:18px;box-sizing:border-box;line-height:1; }
.CENTRE.white-bg .ev-results-head { border-bottom-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .erh-count { color:rgba(0,0,0,.5); }
.CENTRE.white-bg .erh-count strong { color:#0c0c0e; }
.CENTRE.white-bg .erh-count em { color:rgba(0,0,0,.7); }
.CENTRE.white-bg .erh-submit { color:rgba(0,0,0,.35);border-color:rgba(0,0,0,.1); }
.CENTRE.white-bg .erh-submit:hover { color:#0c0c0e;border-color:rgba(0,0,0,.2);background:rgba(0,0,0,.05); }

/* ── Food cat nav + search bar on white bg ───────────────────────── */
.CENTRE.white-bg .food-cat-nav { border-bottom-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .fcn-pill {
  background:rgba(0,0,0,.05);
  border-color:rgba(0,0,0,.1);
  color:rgba(0,0,0,.6);
}
.CENTRE.white-bg .fcn-pill:hover { background:rgba(0,0,0,.09);color:#0c0c0e; }
.CENTRE.white-bg .fcn-on { background:rgba(45,181,75,.1);border-color:rgba(45,181,75,.35);color:#1a7a30; }
.CENTRE.white-bg .fsb-form {
  background:rgba(0,0,0,.03);
  border-color:rgba(0,0,0,.1);
}
.CENTRE.white-bg .fsb-search-wrap { border-right-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .fsb-ico { color:rgba(0,0,0,.3); }
.CENTRE.white-bg .fsb-input { background:transparent; }
.CENTRE.white-bg .fsb-input::placeholder { color:rgba(0,0,0,.35); }
.CENTRE.white-bg .fsb-clear { color:rgba(0,0,0,.3); }
.CENTRE.white-bg .fsb-sel { background:transparent;border-right-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .fsb-view-toggle { border-left-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .fsb-view { color:rgba(0,0,0,.3); }
.CENTRE.white-bg .fsb-view:hover,.CENTRE.white-bg .fsb-view-on { color:#0c0c0e;background:rgba(0,0,0,.05); }
.CENTRE.white-bg .fsb-actions { border-top-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .fsb-af-tag { background:rgba(0,0,0,.06);color:rgba(0,0,0,.55); }
.CENTRE.white-bg .fsb-af-tag a { color:rgba(0,0,0,.35); }
.CENTRE.white-bg .fsb-af-tag a:hover { color:#0c0c0e; }
.CENTRE.white-bg .frh-count { color:rgba(0,0,0,.5); }
.CENTRE.white-bg .frh-count strong { color:#0c0c0e; }
.CENTRE.white-bg .frh-count em { color:rgba(0,0,0,.7); }

/* ── Sport type nav on white bg ──────────────────────────────────── */
.CENTRE.white-bg .sport-type-nav { border-bottom-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .stn-pill {
  background:rgba(0,0,0,.04);
  border-color:rgba(0,0,0,.1);
}
.CENTRE.white-bg .stn-icon,
.CENTRE.white-bg .stn-label { color:rgba(0,0,0,.5); }
.CENTRE.white-bg .stn-pill:hover { background:rgba(26,86,255,.08);border-color:rgba(26,86,255,.25); }
.CENTRE.white-bg .stn-pill:hover .stn-icon,
.CENTRE.white-bg .stn-pill:hover .stn-label { color:#1A56FF; }

/* ── Event single: fact boxes on white bg ────────────────────────── */
.CENTRE.white-bg .evs-fact {
  background:#f4f4f6;
  border-color:rgba(0,0,0,.08);
}
.CENTRE.white-bg .evs-fact--accent {
  border-color:color-mix(in srgb, var(--ac,var(--dc-red)) 30%, transparent);
  background:color-mix(in srgb, var(--ac,var(--dc-red)) 8%, #f4f4f6);
}
.CENTRE.white-bg .evs-fact-val small { color:rgba(0,0,0,.4); }
.CENTRE.white-bg .evs-past-chip { background:rgba(0,0,0,.06);color:rgba(0,0,0,.45); }

/* ── Story single: all text on white bg ──────────────────────────── */
.CENTRE.white-bg .story-back { color:rgba(0,0,0,.4); }
.CENTRE.white-bg .story-back:hover { color:#0c0c0e; }
.CENTRE.white-bg .sv2-headline { color:#0c0c0e; }
.CENTRE.white-bg .sv2-standfirst {
  color:rgba(0,0,0,.62);
  border-left-color:rgba(0,0,0,.15);
}
.CENTRE.white-bg .sv2-byline {
  border-top-color:rgba(0,0,0,.08);
  border-bottom-color:rgba(0,0,0,.08);
}
.CENTRE.white-bg .sv2-avatar { border-color:rgba(0,0,0,.1); }
.CENTRE.white-bg .sv2-author { color:#0c0c0e; }
.CENTRE.white-bg .sv2-meta { color:rgba(0,0,0,.4); }
.CENTRE.white-bg .sv2-body { color:rgba(0,0,0,.78); }
.CENTRE.white-bg .sv2-body h2,
.CENTRE.white-bg .sv2-body h3 { color:#0c0c0e; }
.CENTRE.white-bg .sv2-body strong { color:#0c0c0e; }
.CENTRE.white-bg .sv2-body blockquote {
  background:rgba(0,0,0,.03);
  color:rgba(0,0,0,.62);
}
.CENTRE.white-bg .sv2-body .wp-block-pullquote p { color:#0c0c0e; }
.CENTRE.white-bg .sv2-body .wp-block-image figcaption { color:rgba(0,0,0,.35); }
.CENTRE.white-bg .sv2-tags { border-top-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .sv2-tag {
  background:rgba(0,0,0,.05);
  border-color:rgba(0,0,0,.1);
  color:rgba(0,0,0,.55);
}
.CENTRE.white-bg .sv2-tag:hover { background:rgba(0,0,0,.09);color:#0c0c0e; }
.CENTRE.white-bg .sv2-footer {
  border-top-color:rgba(0,0,0,.08);
}
.CENTRE.white-bg .sv2-footer-by { color:rgba(0,0,0,.35); }
.CENTRE.white-bg .sv2-footer-name { color:#0c0c0e; }
.CENTRE.white-bg .sv2-footer-bio { color:rgba(0,0,0,.4); }
.CENTRE.white-bg .sv2-footer-avatar { border-color:rgba(0,0,0,.1); }
.CENTRE.white-bg .sv2-footer-share-label { color:rgba(0,0,0,.35); }
.CENTRE.white-bg .sv2-related-title { color:#0c0c0e; }
/* General .single-content (fallback for WP posts) */
.CENTRE.white-bg .single-content { color:rgba(0,0,0,.78); }
.CENTRE.white-bg .single-content strong { color:#0c0c0e; }
.CENTRE.white-bg .single-content h2,
.CENTRE.white-bg .single-content h3 { color:#0c0c0e; }

/* ── This Week in Manchester - white background ─────────────────── */
.CG-WRAP { background:#ffffff; padding:0 0 24px; margin:0 -28px; padding:0 28px 24px; }

/* CG-WRAP section-head on white */
.CG-WRAP .sh-title { color:#0c0c0e; }
.CG-WRAP .sh-eyebrow { color:var(--dc-red); }

/* ══════════════════════════════════════════════════════════════
   WHAT'S ON TONIGHT - REDESIGNED v2
   White background, two-panel layout, hourly timeline + weekly grid
══════════════════════════════════════════════════════════════ */
.WOT {
  margin:-28px -28px 0 -28px;
  background:#ffffff;
  border-bottom:1px solid rgba(0,0,0,.08);
}

/* ── Top bar ─────────────────────────────────────────────────── */
.wot-topbar {
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 24px 0;gap:16px;flex-wrap:wrap;
}
.wot-topbar-left {}
.wot-title {
  font-family:'Inter Tight',sans-serif;font-weight:900;
  font-size:clamp(1.3rem,2.5vw,1.8rem);letter-spacing:-.04em;
  color:#0c0c0e;line-height:1;margin:0 0 4px;
}
.wot-date-label {font-size:.6rem;font-weight:500;color:rgba(0,0,0,.4);letter-spacing:.02em;}
.wot-topbar-center {display:flex;align-items:center;gap:5px;flex:1;justify-content:center;}
.wot-nav-btn {
  width:32px;height:32px;border-radius:8px;
  border:1px solid rgba(0,0,0,.12);background:#fff;
  color:rgba(0,0,0,.5);font-size:.55rem;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;transition:all .15s;flex-shrink:0;
}
.wot-nav-btn:hover {border-color:rgba(0,0,0,.25);color:#0c0c0e;background:#f5f5f7;}
.wot-week-strip {display:flex;gap:3px;}
.wot-wday {
  width:40px;height:44px;border-radius:8px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;
  border:1px solid rgba(0,0,0,.1);background:#fafafa;
  cursor:pointer;transition:all .15s;position:relative;
}
.wot-wday:hover {border-color:rgba(0,0,0,.2);background:#f0f0f2;}
.wot-wday.active {background:#E8201A;border-color:#E8201A;}
.wot-wday-dn {font-size:.38rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(0,0,0,.35);}
.wot-wday.active .wot-wday-dn {color:rgba(255,255,255,.8);}
.wot-wday-num {font-size:.82rem;font-weight:900;color:#0c0c0e;line-height:1;}
.wot-wday.active .wot-wday-num {color:#fff;}
.wot-wday-dot {
  position:absolute;bottom:4px;width:4px;height:4px;border-radius:50%;
  background:rgba(0,0,0,.2);
}
.wot-wday.active .wot-wday-dot {background:rgba(255,255,255,.7);}
.wot-live-badge {
  display:flex;align-items:center;gap:6px;
  padding:6px 12px;border-radius:100px;
  background:#E8201A;color:#fff;
  font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;flex-shrink:0;
}
.wot-live-dot {
  width:6px;height:6px;border-radius:50%;background:#fff;
  animation:wot-blink 1.2s ease infinite;flex-shrink:0;
}
@keyframes wot-blink{0%,100%{opacity:1}50%{opacity:.3}}
.wot-topbar-right {display:flex;align-items:center;}

/* ── Filter pills ─────────────────────────────────────────────── */
.wot-filterbar {
  display:flex;align-items:center;gap:7px;
  padding:14px 20px;flex-wrap:nowrap;
  overflow-x:auto;scrollbar-width:none;
  border-bottom:1px solid rgba(0,0,0,.07);
}
.wot-filterbar::-webkit-scrollbar{display:none;}
/* 2030 pill design */
.wot-flt {
  flex-shrink:0;
  padding:7px 16px;border-radius:100px;
  font-size:.58rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  border:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);
  display:flex;align-items:center;gap:6px;
  color:#fff;
  position:relative;
  /* default inactive - dark glass */
  background:rgba(255,255,255,.07);
  box-shadow:0 1px 0 rgba(255,255,255,.08) inset, 0 2px 8px rgba(0,0,0,.2);
}
.wot-flt:hover { transform:translateY(-1px); filter:brightness(1.15); }
.wot-flt.on { transform:translateY(-1px); }
/* ALL */
.wot-flt[data-cat="all"] { background:rgba(255,255,255,.1); color:rgba(255,255,255,.6); }
.wot-flt[data-cat="all"].on {
  background:linear-gradient(135deg,#1a1a20,#333);
  color:#fff;
  box-shadow:0 4px 18px rgba(0,0,0,.5), 0 1px 0 rgba(255,255,255,.15) inset;
}
/* MUSIC - red */
.wot-flt[data-cat="music"] { color:rgba(255,80,60,.7);background:rgba(232,32,26,.08); }
.wot-flt[data-cat="music"].on {
  background:linear-gradient(135deg,#E8201A,#ff5533);
  color:#fff;
  box-shadow:0 4px 20px rgba(232,32,26,.5), 0 0 30px rgba(232,32,26,.25), 0 1px 0 rgba(255,255,255,.2) inset;
}
/* SPORT - blue */
.wot-flt[data-cat="sport"] { color:rgba(60,120,255,.8);background:rgba(26,86,255,.08); }
.wot-flt[data-cat="sport"].on {
  background:linear-gradient(135deg,#1A56FF,#4d7fff);
  color:#fff;
  box-shadow:0 4px 20px rgba(26,86,255,.5), 0 0 30px rgba(26,86,255,.25), 0 1px 0 rgba(255,255,255,.2) inset;
}
/* FOOD - green */
.wot-flt[data-cat="food"] { color:rgba(45,181,75,.9);background:rgba(45,181,75,.08); }
.wot-flt[data-cat="food"].on {
  background:linear-gradient(135deg,#2DB54B,#40d960);
  color:#fff;
  box-shadow:0 4px 20px rgba(45,181,75,.5), 0 0 30px rgba(45,181,75,.25), 0 1px 0 rgba(255,255,255,.2) inset;
}
/* NIGHTLIFE - orange */
.wot-flt[data-cat="nightlife"] { color:rgba(255,107,0,.9);background:rgba(255,107,0,.08); }
.wot-flt[data-cat="nightlife"].on {
  background:linear-gradient(135deg,#FF6B00,#ff9933);
  color:#fff;
  box-shadow:0 4px 20px rgba(255,107,0,.5), 0 0 30px rgba(255,107,0,.25), 0 1px 0 rgba(255,255,255,.2) inset;
}
/* CULTURE - purple */
.wot-flt[data-cat="culture"] { color:rgba(150,80,255,.9);background:rgba(124,58,237,.08); }
.wot-flt[data-cat="culture"].on {
  background:linear-gradient(135deg,#7C3AED,#a855f7);
  color:#fff;
  box-shadow:0 4px 20px rgba(124,58,237,.5), 0 0 30px rgba(124,58,237,.25), 0 1px 0 rgba(255,255,255,.2) inset;
}
.wot-flt-dot {width:6px;height:6px;border-radius:50%;flex-shrink:0;background:currentColor;opacity:.7;}
.wot-full-cal-btn {
  margin-left:auto;display:inline-flex;align-items:center;gap:6px;
  padding:6px 14px;border-radius:100px;
  background:#E8201A;color:#fff;font-size:.58rem;font-weight:800;
  text-decoration:none;letter-spacing:.03em;white-space:nowrap;
  transition:opacity .15s;flex-shrink:0;
}
.wot-full-cal-btn:hover {opacity:.85;}
.wot-full-cal-btn i {font-size:.5em;}

/* ══════════════════════════════════════════════════════════════
   WOT - PREMIUM TIME GRID (Disney · Apple · Tesla)
══════════════════════════════════════════════════════════════ */

/* ── Time grid container ───────────────────────────────────── */
.wot-tg {
  overflow-y:auto;
  max-height:560px;
  background:#0d0d10;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.1) transparent;
  padding:4px 0 16px;
}
.wot-tg::-webkit-scrollbar{width:3px;}
.wot-tg::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:2px;}

/* ── Hour rows ─────────────────────────────────────────────── */
.wot-tg-row {
  display:flex;
  align-items:flex-start;
  min-height:20px;
  border-bottom:1px solid rgba(255,255,255,.04);
  position:relative;
}
.wot-tg-row:not(.has-ev){opacity:0;height:0;min-height:0;overflow:hidden;border:none;}

/* ── Time label ────────────────────────────────────────────── */
.wot-tg-time {
  width:52px;
  flex-shrink:0;
  padding:13px 10px 10px 16px;
  font-size:.54rem;
  font-weight:300;
  color:rgba(255,255,255,.55);
  letter-spacing:.04em;
  text-transform:uppercase;
  text-align:right;
  line-height:1;
  font-variant-numeric:tabular-nums;
}

/* ── Event row ─────────────────────────────────────────────── */
.wot-tg-ev-row {
  flex:1;
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:5px;
  padding:8px 14px 8px 10px;
  border-left:1px solid rgba(255,255,255,.06);
  min-height:24px;
  overflow-x:auto;
  overflow-y:visible;
  scrollbar-width:none;
}
.wot-tg-ev-row::-webkit-scrollbar{display:none;}

/* ══ EVENT PILLS - compact dark glass ═══════════════════════ */
/* WOT V19: old .wot-ev-pill glassmorphism definition removed */
/* WOT V19: old .wot-ev-pill::before flat-color removed */
.wot-ev-pill>* { position:relative; z-index:1; }
.wot-ev-pill:hover::before { opacity:.25; }
.wot-ev-pill:hover {
  background:rgba(0,0,0,.4);
  transform:translateY(-2px);
  box-shadow:0 6px 20px rgba(0,0,0,.45);
}
.wot-ev-pill.active {
  background:rgba(0,0,0,.4) !important;
  border-color:rgba(255,255,255,.15) !important;
}

/* ── Title ─────────────────────────────────────────────────── */
/* WOT V19: old .wot-ep-title sizing removed */

/* ── Sub (venue · price) ───────────────────────────────────── */
/* WOT V19: old .wot-ep-sub sizing removed */

/* keep badge/venue hidden */
.wot-ep-badge { display:none; }
.wot-ep-venue { display:none; }

/* ══ INLINE EXPAND DRAWER - ultra premium ══════════════════ */
.wot-expand {
  display:none;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.wot-expand.open {
  display:block;
  animation:wotExpandIn .32s cubic-bezier(.4,0,.2,1) both;
}
@keyframes wotExpandIn {
  from{opacity:0;transform:translateY(-8px);}
  to{opacity:1;transform:translateY(0);}
}
.wot-expand-inner {
  display:flex;align-items:center;justify-content:space-between;
  gap:24px;padding:22px 28px 24px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--ec,#888) 12%,#0f0f14) 0%,#111116 60%);
  border-left:4px solid var(--ec,#888);
  flex-wrap:wrap;position:relative;overflow:hidden;
}
.wot-expand-img {
  width:120px;height:90px;flex-shrink:0;
  border-radius:10px;overflow:hidden;
}
.wot-expand-img img { width:100%;height:100%;object-fit:cover;display:block; }
.wot-expand-left { flex:1;min-width:0; }
.wot-expand-toprow { display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap; }
.wot-expand-badge {
  display:inline-flex;align-items:center;
  padding:3px 10px;border-radius:5px;
  font-size:.38rem;font-weight:900;letter-spacing:.12em;
  text-transform:uppercase;color:#fff;
  margin-bottom:8px;
}
.wot-expand-title {
  font-family:'Inter Tight',sans-serif;
  font-size:1.05rem;font-weight:900;
  color:#fff;letter-spacing:-.04em;line-height:1.2;
  margin-bottom:8px;
}
.wot-expand-meta {
  display:flex;align-items:center;flex-wrap:wrap;
  gap:12px;font-size:.57rem;
  color:rgba(255,255,255,.5);font-weight:600;margin-bottom:8px;
}
.wot-xm-item { display:inline-flex;align-items:center;gap:5px; }
.wot-xm-item i { color:rgba(255,255,255,.35);font-size:.7em; }
.wot-xm-price {
  color:#fff;font-weight:800;
  background:rgba(255,255,255,.1);
  padding:2px 9px;border-radius:20px;
}
.wot-expand-desc {
  font-size:.56rem;color:rgba(255,255,255,.38);font-weight:400;
  line-height:1.6;margin:0;max-width:520px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.wot-expand-btn {
  display:inline-flex;align-items:center;gap:9px;
  flex-shrink:0;padding:13px 26px;border-radius:12px;
  font-size:.6rem;font-weight:900;color:#fff;
  text-decoration:none;letter-spacing:.06em;text-transform:uppercase;
  white-space:nowrap;transition:opacity .18s ease;
}
.wot-expand-btn:hover { opacity:.85; }
@media(max-width:640px){
  /* ── Grid: image left spanning rows, content+btn right column ── */
  .wot-expand-inner{
    display:grid !important;
    grid-template-columns:80px 1fr !important;
    grid-template-rows:1fr auto !important;
    padding:16px !important;
    gap:0 14px !important;
    align-items:start;
  }
  .wot-expand-img{
    grid-column:1 !important;grid-row:1 / 3 !important;
    width:80px !important;height:80px !important;
    border-radius:8px !important;align-self:center;
  }
  .wot-expand-img img{border-radius:8px;}
  .wot-expand-left{
    grid-column:2 !important;grid-row:1 !important;
    min-width:0;
  }
  /* Hide cheesy badge - category already shown by border + gradient */
  .wot-expand-badge{display:none !important;}
  .wot-expand-title{font-size:.92rem !important;margin-bottom:4px !important;}
  .wot-expand-meta{font-size:.58rem !important;margin-bottom:5px !important;}
  .wot-expand-desc{
    font-size:.58rem !important;margin-bottom:0 !important;
    display:-webkit-box !important;-webkit-line-clamp:2;
    -webkit-box-orient:vertical;overflow:hidden;
  }
  .wot-expand-btn{
    grid-column:2 !important;grid-row:2 !important;
    justify-self:start !important;
    margin-top:10px !important;
    padding:7px 18px !important;font-size:.52rem !important;
    border-radius:6px !important;
    background:transparent !important;
    border:1.5px solid var(--ec,#888) !important;
    color:#fff !important;
  }
}

/* ══ EMPTY STATE ═══════════════════════════════════════════ */
.wot-tg-empty{
  display:flex;flex-direction:column;align-items:center;
  gap:12px;padding:64px 20px;text-align:center;
}
.wot-tg-empty i{font-size:2.5rem;color:rgba(255,255,255,.1);}
.wot-tg-empty div{font-size:.78rem;color:rgba(255,255,255,.3);font-weight:700;}
.wot-tg-empty a{font-size:.68rem;color:#E8201A;font-weight:800;text-decoration:none;}

/* ══ BOTTOM NAV BAR ════════════════════════════════════════ */
.wot-nav-bar{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  border-top:1px solid rgba(0,0,0,.06);
  background:#fafafa;
}
.wnb-item{
  display:flex;align-items:center;gap:10px;
  padding:14px 14px;
  text-decoration:none;
  color:rgba(0,0,0,.55);
  font-size:.58rem;
  font-weight:700;
  border-right:1px solid rgba(0,0,0,.055);
  transition:background .15s,color .15s;
}
.wnb-item:last-child{border-right:none;}
.wnb-item:hover{background:#f0f0f5;color:#0c0c0e;}
.wnb-icon{font-size:.95rem;flex-shrink:0;}
.wnb-label{font-size:.6rem;font-weight:800;color:#0c0c0e;line-height:1.1;}
.wnb-sub{font-size:.5rem;color:rgba(0,0,0,.38);margin-top:1px;font-weight:500;}

/* ══ RESPONSIVE ════════════════════════════════════════════ */
@media(max-width:900px) {
  .wot-nav-bar{grid-template-columns:repeat(4,1fr);}
  .wnb-item:nth-child(4){border-right:none;}
  .wnb-item:nth-child(n+5){border-top:1px solid rgba(0,0,0,.055);}
}
@media(max-width:640px) {
  .wot-topbar{padding:12px 14px 0;flex-wrap:wrap;gap:10px;}
  .wot-topbar-left{width:100%;order:1;}
  .wot-topbar-center{order:2;width:100%;justify-content:flex-start;padding-bottom:4px;overflow-x:auto;}
  .wot-topbar-right{order:1;margin-left:auto;}
  .wot-week-strip{gap:4px;flex-wrap:nowrap;}
  .wot-filterbar{padding:8px 14px;gap:5px;overflow-x:auto;flex-wrap:nowrap;}
  .wot-wday{width:36px;height:40px;flex-shrink:0;}
  .wot-wday-num{font-size:.72rem;}
  .wot-tg{max-height:380px;}
  .wot-tg-time{width:42px;font-size:.42rem;padding:14px 7px 10px 10px;}
  .wot-tg-ev-row{padding:8px 12px 8px 8px;gap:6px;}
  .wot-ep-title{max-width:110px;font-size:.6rem !important;}
  .wot-ep-venue{display:none;}
  .wot-ev-pill{padding:5px 8px 5px 7px;min-width:90px;max-width:160px;border-radius:6px;}
  .wot-nav-bar{grid-template-columns:repeat(4,1fr);}
  .wnb-item{padding:11px 10px;gap:7px;}
  .wnb-sub{display:none;}
}
@media(max-width:400px) {
  .wot-week-strip{gap:2px;}
  .wot-wday{width:32px;height:38px;}
}

/* ══════════════════════════════════════
   MCR CITY CUSTOMIZATIONS v10
══════════════════════════════════════ */

/* 1. Hide the Right Panel (RP) sticky tab completely */
.RP, 
.rp-tab, 
.rp-strip, 
.rp-inner, 
#rp, 
#rp-tab { 
  display:none !important; 
  visibility:hidden !important;
}

/* 2. WOT - premium dark top / white grid ══════════════════ */
.WOT {
  background:#000000 !important;
  border-top:none !important;
  margin-top:0 !important;
  padding-top:0 !important;
  padding-bottom:28px !important;
  position:relative !important;
  z-index:1 !important;
  overflow:hidden !important;
}

/* ── Section intro accent line ── */
.WOT::before {
  content:'';
  display:block;
  height:2px;
  background:linear-gradient(90deg,#E8201A 0%,#FF6B00 30%,#1A56FF 60%,#7C3AED 100%);
  opacity:.7;
}

/* ── Top bar: premium black ── */
.wot-topbar {
  background:#000000 !important;
  padding:16px 20px 0 !important;
  border-bottom:none !important;
}
.wot-title {
  color:#fff !important;
  font-size:1.35rem !important;
  font-weight:900 !important;
  letter-spacing:-.03em !important;
}
.wot-date-label { color:rgba(255,255,255,.38) !important; }
.wot-nav-btn {
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  color:rgba(255,255,255,.6) !important;
  transition:background .15s,border-color .15s !important;
}
.wot-nav-btn:hover {
  background:rgba(255,255,255,.13) !important;
  border-color:rgba(255,255,255,.2) !important;
  color:#fff !important;
}

/* ── Day strip buttons ── */
.wot-wday {
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.09) !important;
  border-radius:12px !important;
  transition:background .15s,transform .15s !important;
}
.wot-wday-dn { color:rgba(255,255,255,.38) !important; font-size:.42rem !important; letter-spacing:.06em !important; }
.wot-wday-num { color:#fff !important; font-size:.8rem !important; font-weight:900 !important; }
.wot-wday:hover {
  background:rgba(255,255,255,.12) !important;
  transform:translateY(-2px) !important;
}
.wot-wday.active {
  background:linear-gradient(155deg,#ff3b30 0%,#E8201A 100%) !important;
  border-color:transparent !important;
  box-shadow:0 4px 18px rgba(232,32,26,.45) !important;
}
.wot-wday.active .wot-wday-dn { color:rgba(255,255,255,.75) !important; }
.wot-wday.active .wot-wday-num { color:#fff !important; }
.wot-wday-dot { background:rgba(255,255,255,.28) !important; }
.wot-wday.active .wot-wday-dot { background:rgba(255,255,255,.9) !important; }
.wot-live-badge {
  background:rgba(232,32,26,.15) !important;
  border:1px solid rgba(232,32,26,.3) !important;
  color:#ff6060 !important;
  animation:wotLivePulse 2s ease-in-out infinite !important;
}
@keyframes wotLivePulse{0%,100%{opacity:1;}50%{opacity:.65;}}

/* ── Filter bar ── */
.wot-filterbar {
  background:#000000 !important;
  border-bottom:1px solid rgba(255,255,255,.06) !important;
  padding:10px 20px !important;
  gap:6px !important;
  align-items:center !important;
}

/* ── Filter pills - sleek outlined style ── */
.wot-flt {
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  padding:5px 13px !important;
  border-radius:100px !important;
  font-size:.49rem !important;
  font-weight:600 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
  cursor:pointer !important;
  transition:background .15s ease, color .15s ease, border-color .15s ease !important;
  box-shadow:none !important;
  position:relative !important;
  overflow:visible !important;
}
.wot-flt::before { display:none !important; }

/* inactive - ghost outlined with category tint */
.wot-flt[data-cat="all"]       { background:transparent !important; border:1px solid rgba(255,255,255,.18) !important; color:rgba(255,255,255,.5) !important; }
.wot-flt[data-cat="music"]     { background:transparent !important; border:1px solid rgba(232,32,26,.4) !important;    color:rgba(232,32,26,.85) !important; }
.wot-flt[data-cat="sport"]     { background:transparent !important; border:1px solid rgba(26,86,255,.45) !important;   color:rgba(80,130,255,.95) !important; }
.wot-flt[data-cat="food"]      { background:transparent !important; border:1px solid rgba(45,181,75,.4) !important;    color:rgba(45,181,75,.9) !important; }
.wot-flt[data-cat="nightlife"] { background:transparent !important; border:1px solid rgba(255,107,0,.4) !important;    color:rgba(255,107,0,.9) !important; }
.wot-flt[data-cat="culture"]   { background:transparent !important; border:1px solid rgba(124,58,237,.45) !important;  color:rgba(160,100,255,.95) !important; }
.wot-flt[data-cat="family"]    { background:transparent !important; border:1px solid rgba(245,196,0,.4) !important;    color:rgba(245,196,0,.9) !important; }

/* active - solid fill */
.wot-flt[data-cat="all"].on       { background:rgba(255,255,255,.9) !important; border-color:transparent !important; color:#0c0c0e !important; }
.wot-flt[data-cat="music"].on     { background:#E8201A !important; border-color:transparent !important; color:#fff !important; }
.wot-flt[data-cat="sport"].on     { background:#1A56FF !important; border-color:transparent !important; color:#fff !important; }
.wot-flt[data-cat="food"].on      { background:#2DB54B !important; border-color:transparent !important; color:#fff !important; }
.wot-flt[data-cat="nightlife"].on { background:#FF6B00 !important; border-color:transparent !important; color:#fff !important; }
.wot-flt[data-cat="culture"].on   { background:#7C3AED !important; border-color:transparent !important; color:#fff !important; }
.wot-flt[data-cat="family"].on    { background:#d4a900 !important; border-color:transparent !important; color:#fff !important; }

.wot-flt:hover { opacity:.8 !important; }
.wot-flt-dot { display:none !important; }

.wot-full-cal-btn {
  background:transparent !important;
  border:1px solid rgba(255,255,255,.2) !important;
  color:rgba(255,255,255,.6) !important;
  font-size:.49rem !important;
  font-weight:600 !important;
  letter-spacing:.05em !important;
  padding:5px 13px !important;
  border-radius:100px !important;
  box-shadow:none !important;
  transition:border-color .15s,color .15s !important;
}
.wot-full-cal-btn:hover { border-color:rgba(255,255,255,.4) !important; color:#fff !important; opacity:1 !important; }

/* ── Time grid: full dark (scoped so .wot-light can override) ── */
.WOT:not(.wot-light) .wot-tg { background:#000000 !important; }
.WOT:not(.wot-light) .wot-tg-row { border-bottom-color:rgba(255,255,255,.07) !important; }
.WOT:not(.wot-light) .wot-tg-time {
  color:#ffffff !important;
  font-size:.56rem !important;
  font-weight:200 !important;
  letter-spacing:.05em !important;
  opacity:1 !important;
}
.WOT:not(.wot-light) .wot-tg-ev-row { border-left-color:rgba(255,255,255,.1) !important; }
.WOT:not(.wot-light) .wot-tg-empty i { color:rgba(255,255,255,.1) !important; }
.WOT:not(.wot-light) .wot-tg-empty div { color:rgba(255,255,255,.3) !important; }

/* Light-mode equivalents */
.WOT.wot-light .wot-tg { background:#ffffff !important; }
.WOT.wot-light .wot-tg-row { border-bottom-color:rgba(0,0,0,.06) !important; }
.WOT.wot-light .wot-tg-time {
  color:rgba(0,0,0,.6) !important; font-weight:700 !important; opacity:1 !important;
}
.WOT.wot-light .wot-tg-ev-row { border-left-color:rgba(0,0,0,.08) !important; }
.WOT.wot-light .wot-tg-empty i { color:rgba(0,0,0,.1) !important; }
.WOT.wot-light .wot-tg-empty div { color:rgba(0,0,0,.35) !important; }
/* ── Expand: dark glass ── */
.wot-expand { border-bottom-color:rgba(255,255,255,.04) !important; }
.wot-expand-title { color:#ffffff !important; }
.wot-expand-meta { color:rgba(255,255,255,.45) !important; }
/* responsive expand img hide on tiny screens */

/* ── Nav bar: premium dark ── */
.wot-nav-bar {
  background:#000 !important;
  border-top:1px solid rgba(255,255,255,.06) !important;
  grid-template-columns:repeat(6,1fr) !important;
  position:relative !important;
}
.wnb-item {
  color:rgba(255,255,255,.35) !important;
  border-right:1px solid rgba(255,255,255,.04) !important;
  transition:background .15s, color .15s !important;
  padding:18px 16px !important;
  background:transparent !important;
  display:flex !important; align-items:center !important; gap:10px !important;
  text-decoration:none !important;
}
.wnb-item:last-child { border-right:none !important; }
.wnb-item:hover {
  background:rgba(255,255,255,.03) !important;
  color:rgba(255,255,255,.8) !important;
}
.wnb-icon { font-size:1rem !important; flex-shrink:0 !important; opacity:.5 !important; }
.wnb-label {
  color:rgba(255,255,255,.75) !important;
  font-size:.6rem !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
  line-height:1.1 !important;
}
.wnb-sub {
  color:rgba(255,255,255,.28) !important;
  font-size:.45rem !important;
  font-weight:400 !important;
  margin-top:1px !important;
}

/* 3. Hide the This Week / CG section completely */
.CG-WRAP, .CG { display:none !important; }

/* 4. Hero spacing */
section.HERO.hero-slider { margin-bottom:0 !important; }

/* 5. Mobile - hero first, then WOT */
@media(max-width:900px) {
  main.CENTRE { display:flex !important; flex-direction:column !important; }
  main.CENTRE > section.HERO.hero-slider { order:1; }
  main.CENTRE > section.WOT { order:2; }
  main.CENTRE > * { order:3; }
  /* WOT flush to edges on mobile */
  section.WOT { margin-left:-14px !important; margin-right:-14px !important; }
  /* hero margin restore + taller on mobile */
  section.HERO.hero-slider { margin:0 -16px 0 -16px !important; min-height:45vh !important; }
  /* hide WOT nav bar on mobile - bottom tabs replace it */
  .wot-nav-bar { display:none !important; }
  /* hide YouTube iframes on mobile - no autoplay videos, use static images */
  section.HERO.hero-slider .vs-vid-wrap { display:none !important; }
  /* hide hero CTA buttons on mobile - too large, out of place */
  section.HERO.hero-slider .vs-cta { display:none !important; }
  /* hide prev/next arrow buttons on mobile */
  .vs-prev, .vs-next { display:none !important; }
}
@media(max-width:640px) {
  section.HERO.hero-slider { margin:0 -28px 0 -28px !important; }
  section.WOT { margin-left:-14px !important; margin-right:-14px !important; }
}
@media(max-width:400px) {}

/* 6. Change footer/newsletter subscribe button from red to blue */
.nl-btn {
  background:#1A56FF !important;
}
.nl-btn:hover {
  background:#1449dd !important;
}
.nl-heading span {
  color:#1A56FF !important;
}

/* 7. Fix events page layout - prevent squishing */
.cat-page-centre, 
.CENTRE {
  max-width:100% !important;
}
.ev-page-masthead {
  margin-bottom:24px !important;
}

/* 8. Single event page - prevent squishing */
.single-mcr_event .CENTRE,
.single-mcr_event .cat-page-centre {
  max-width:100% !important;
}

/* 9. Ensure all interactive elements remain clickable */
.wot-nav-btn,
.wot-wday,
.wot-flt,
.vs-dot,
.vs-prev,
.vs-next,
.vs-cta-btn,
.wnb-item,
.sb-item,
.mob-tab,
button,
a {
  pointer-events:auto !important;
}


/* Visually hidden - for screen readers and SEO only */
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ═══════════════════════════════════════════════════════════════════════
   MCR CITY v9.80 - FOOD / SPORT / STORIES UPGRADES
   Appended 2026-03-27
══════════════════════════════════════════════════════════════════════ */

/* ── Shared: bigger heroes */
.food-masthead--xl{height:660px;}
.sport-masthead--xl{height:660px;}
.stories-masthead--xl{height:540px;}
@media(max-width:600px){.food-masthead--xl,.sport-masthead--xl{height:460px;}.stories-masthead--xl{height:380px;}}

/* ── Shared: scroll reveal */
.reveal-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease;}
.reveal-on-scroll.revealed{opacity:1;transform:translateY(0);}

/* ── What's Hot Strip */
.whats-hot-strip{padding:12px 24px;background:linear-gradient(90deg,rgba(45,181,75,.08) 0%,transparent 60%);border-bottom:1px solid rgba(45,181,75,.12);}
.whs-inner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.whs-label{font-size:.65rem;font-weight:800;color:rgba(255,255,255,.6);white-space:nowrap;display:flex;align-items:center;gap:5px;}
.whs-fire{font-size:.85rem;}
.whs-pills{display:flex;gap:6px;flex-wrap:wrap;flex:1;}
.whs-pill{font-size:.62rem;font-weight:700;padding:4px 12px;border-radius:20px;background:rgba(45,181,75,.1);border:1px solid rgba(45,181,75,.25);color:#2DB54B;transition:all .15s;white-space:nowrap;}
.whs-pill:hover{background:rgba(45,181,75,.2);color:#fff;}
.whs-ai-rec{font-size:.68rem;color:rgba(255,255,255,.55);display:flex;align-items:center;gap:6px;min-height:20px;}
.whs-ai-rec em{font-style:italic;}

/* ── Good For Row */
.good-for-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.05);}
.gfr-label{font-size:.6rem;font-weight:800;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;}
.gfr-tag{font-size:.65rem;font-weight:600;padding:5px 12px;border-radius:20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.65);transition:all .15s;white-space:nowrap;}
.gfr-tag:hover{background:rgba(45,181,75,.12);border-color:rgba(45,181,75,.3);color:#2DB54B;}

/* ── Open Now Badge */
.fvg-open-badge{position:absolute;top:8px;left:8px;font-size:.5rem;font-weight:800;letter-spacing:.06em;padding:3px 8px;border-radius:3px;pointer-events:none;}
.fvg-open{background:rgba(45,181,75,.9);color:#fff;}
.fvg-closed{background:rgba(0,0,0,.7);color:rgba(255,255,255,.5);}

/* ── Awards Strip */
.awards-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:0 24px 24px;}
@media(max-width:900px){.awards-strip{grid-template-columns:1fr 1fr;}}
@media(max-width:500px){.awards-strip{grid-template-columns:1fr;}}
.award-card{display:block;position:relative;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);transition:transform .2s,border-color .2s;}
.award-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.18);}
.acd-img{height:140px;overflow:hidden;}
.acd-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s;filter:brightness(.7);}
.award-card:hover .acd-img img{transform:scale(1.06);filter:brightness(.85);}
.acd-scrim{position:absolute;top:0;left:0;right:0;height:140px;background:linear-gradient(to bottom,transparent 40%,rgba(0,0,0,.6) 100%);pointer-events:none;}
.acd-body{padding:14px 16px;}
.acd-badge{display:inline-block;font-size:.55rem;font-weight:800;letter-spacing:.06em;padding:3px 10px;border-radius:20px;margin-bottom:8px;}
.acd-name{font-size:.9rem;font-weight:900;color:#fff;margin:0 0 4px;}
.acd-hood{font-size:.6rem;color:rgba(255,255,255,.45);display:flex;align-items:center;gap:4px;margin-bottom:6px;}
.acd-desc{font-size:.65rem;color:rgba(255,255,255,.55);line-height:1.5;margin:0;}

/* ── Tonight's Pick */
.tonights-pick-block{margin:0 24px 24px;padding:20px 24px;background:linear-gradient(135deg,rgba(45,181,75,.06) 0%,rgba(45,181,75,.02) 100%);border:1px solid rgba(45,181,75,.15);border-radius:12px;}
.tpb-inner{display:flex;flex-direction:column;gap:10px;}
.tpb-label{display:flex;align-items:center;gap:8px;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.4);}
.tpb-text{font-size:.88rem;font-weight:600;color:rgba(255,255,255,.9);margin:0;line-height:1.5;}
.tpb-link{font-size:.72rem;font-weight:700;display:inline-flex;align-items:center;gap:4px;}
.tpb-link:hover{opacity:.8;}

/* ── This Weekend Block */
.this-weekend-block{padding:20px 24px;background:rgba(232,32,26,.04);border-top:1px solid rgba(232,32,26,.1);border-bottom:1px solid rgba(232,32,26,.1);}
.twd-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;}
.twd-label{font-size:.72rem;font-weight:800;color:rgba(255,255,255,.7);display:flex;align-items:center;gap:8px;}
.twd-all{font-size:.65rem;font-weight:700;color:#E8201A;}
.twd-fixtures{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
@media(max-width:800px){.twd-fixtures{grid-template-columns:1fr;}}
.twd-fix{padding:16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s;}
.twd-fix:hover{border-color:rgba(232,32,26,.25);}
.twd-fix-comp{display:flex;align-items:center;justify-content:space-between;}
.twd-comp-badge{font-size:.52rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:3px 8px;background:rgba(255,255,255,.07);border-radius:4px;color:rgba(255,255,255,.55);}
.twd-tagline{font-size:.6rem;font-weight:700;color:#E8201A;}
.twd-fix-match{display:flex;align-items:center;gap:8px;}
.twd-team{display:flex;align-items:center;gap:8px;flex:1;}
.twd-team-away{justify-content:flex-end;}
.twd-badge{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:900;color:#fff;flex-shrink:0;letter-spacing:.04em;}
.twd-tname{font-size:.72rem;font-weight:800;color:#fff;}
.twd-vs{display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0;width:44px;}
.twd-vs-time{font-size:.52rem;color:rgba(255,255,255,.4);font-weight:600;white-space:nowrap;}
.twd-vs-text{font-size:.65rem;font-weight:900;color:rgba(255,255,255,.25);letter-spacing:.1em;}
.twd-fix-venue{font-size:.6rem;color:rgba(255,255,255,.35);display:flex;align-items:center;gap:5px;}

/* ── Sport Records Grid */
.sport-records-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:0 24px 24px;}
@media(max-width:900px){.sport-records-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:500px){.sport-records-grid{grid-template-columns:1fr;}}
.spr-card{padding:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;display:flex;flex-direction:column;gap:6px;transition:border-color .2s,transform .2s;}
.spr-card:hover{border-color:rgba(255,255,255,.16);transform:translateY(-3px);}
.spr-icon{font-size:1.2rem;margin-bottom:4px;}
.spr-num{font-family:'Inter Tight',sans-serif;font-size:2rem;font-weight:900;line-height:1;}
.spr-title{font-size:.78rem;font-weight:800;color:#fff;}
.spr-desc{font-size:.65rem;color:rgba(255,255,255,.5);line-height:1.5;margin:0;flex:1;}

/* ── Editor's Picks */
.editors-picks-block{padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.06);}
.epb-header{display:flex;align-items:baseline;gap:12px;margin-bottom:14px;}
.epb-label{font-size:.7rem;font-weight:800;color:rgba(255,255,255,.8);display:flex;align-items:center;gap:7px;}
.epb-sub{font-size:.6rem;color:rgba(255,255,255,.35);}
.epb-strip{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px;}
.epb-strip::-webkit-scrollbar{display:none;}
.ep-card{display:block;position:relative;min-width:200px;height:150px;border-radius:10px;overflow:hidden;flex-shrink:0;border:1px solid rgba(255,255,255,.08);transition:transform .2s;}
.ep-card:hover{transform:scale(1.03);}
.ep-img{position:absolute;inset:0;}
.ep-img img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.55);transition:filter .3s;}
.ep-card:hover .ep-img img{filter:brightness(.7);}
.ep-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,transparent 60%);}
.ep-body{position:absolute;bottom:0;left:0;right:0;padding:12px;}
.ep-cat{font-size:.52rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;}
.ep-title{font-size:.72rem;font-weight:800;color:#fff;margin:0 0 4px;line-height:1.3;}
.ep-meta{font-size:.55rem;color:rgba(255,255,255,.45);display:flex;align-items:center;gap:4px;}

/* ── Trending Topics */
.trending-topics-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:14px 24px;border-bottom:1px solid rgba(255,255,255,.05);}
.tt-label{font-size:.6rem;font-weight:800;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;}
.tt-chip{font-size:.65rem;font-weight:600;padding:4px 12px;border-radius:20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);color:rgba(255,255,255,.6);transition:all .15s;white-space:nowrap;}
.tt-chip:hover{background:rgba(220,38,38,.1);border-color:rgba(220,38,38,.3);color:#DC2626;}

/* ── Enhanced card hovers */
.fvg-card{transition:border-color .2s,transform .25s,box-shadow .25s;}
.fvg-card:hover{transform:translateY(-5px);box-shadow:0 12px 32px rgba(0,0,0,.35);border-color:rgba(255,255,255,.18)!important;}
.fvg-img img{transition:transform .4s ease;}
.fvg-card:hover .fvg-img img{transform:scale(1.08);}
.scd-card{transition:transform .25s,box-shadow .25s,border-color .2s;}
.scd-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,.4);}
.smg-card{transition:border-color .2s,transform .25s,box-shadow .25s;}
.smg-card:hover{transform:translateY(-4px);box-shadow:0 10px 28px rgba(0,0,0,.3);border-color:rgba(255,255,255,.16)!important;}

/* ── Bigger masthead headlines at XL */
.food-masthead--xl .fm-headline,.sport-masthead--xl .spm-headline{font-size:3.2rem;}
@media(max-width:600px){.food-masthead--xl .fm-headline,.sport-masthead--xl .spm-headline{font-size:2.4rem;}}
.stories-masthead--xl .stm-title{font-size:3rem;}
@media(max-width:600px){.stories-masthead--xl .stm-title{font-size:2.2rem;}}

/* ── Better section headers */
.csh-title{font-size:1.35rem;font-weight:900;}

/* ── Improved fixture list rows */
.sfl-row{transition:background .15s;border-radius:8px;}
.sfl-row:hover{background:rgba(255,255,255,.04);}

/* ── Glass shimmer on award cards */
.award-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.06) 0%,transparent 60%);pointer-events:none;z-index:1;border-radius:12px;}
.acd-body{position:relative;z-index:2;}

/* ── Fix: This Weekend block - force dark bg so white text is visible */
.this-weekend-block{background:#130404 !important;border-top:1px solid rgba(232,32,26,.2) !important;border-bottom:1px solid rgba(232,32,26,.2) !important;}
.twd-fix{background:rgba(255,255,255,.05) !important;border-color:rgba(255,255,255,.1) !important;}

/* ── Fix: What's Hot strip - ensure dark bg */
.whats-hot-strip{background:linear-gradient(90deg,rgba(45,181,75,.12) 0%,rgba(45,181,75,.03) 100%) !important;}

/* ═══════════════════════════════════════════════════════════════════════
   MCR CITY v9.85 - STORIES PAGE DEEP UPGRADE
   Appended 2026-03-28
══════════════════════════════════════════════════════════════════════ */

/* ── Stories masthead: dramatic background image */
.stories-masthead--xl{background-image:linear-gradient(to bottom right,rgba(17,17,20,.93) 0%,rgba(232,32,26,.11) 100%),url('/wp-content/themes/mcrcity-theme-v9-fixed/assets/img/hero-home.png');background-size:cover;background-position:center 30%;}

/* ── Editor's Picks: taller, more impactful cards */
.ep-card{min-width:230px;height:210px;}

/* ── Editorial Focus Bar */
.stories-focus-bar{display:flex;align-items:center;gap:7px;padding:10px 28px;border-bottom:1px solid rgba(255,255,255,.06);overflow-x:auto;scrollbar-width:none;flex-wrap:wrap;}
.stories-focus-bar::-webkit-scrollbar{display:none;}
.sfb-label{font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.3);white-space:nowrap;flex-shrink:0;}
.sfb-chip{font-size:.65rem;font-weight:600;padding:5px 13px;border-radius:20px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.65);white-space:nowrap;transition:all .15s;}
.sfb-chip:hover{background:rgba(232,32,26,.12);border-color:rgba(232,32,26,.3);color:#fff;}

/* ── Must-Read This Week */
.must-reads-block{padding:22px 28px;border-bottom:1px solid rgba(255,255,255,.05);}
.mrb-header{margin-bottom:14px;}
.mrb-label{font-size:.62rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.6);display:flex;align-items:center;gap:6px;}
.mrb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
@media(max-width:700px){.mrb-grid{grid-template-columns:1fr;}}
.mr-card{display:block;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);transition:transform .2s,border-color .2s,box-shadow .2s;}
.mr-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.18);box-shadow:0 10px 28px rgba(0,0,0,.3);}
.mr-img{height:175px;overflow:hidden;}
.mr-img img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.82);transition:transform .35s,filter .35s;}
.mr-card:hover .mr-img img{transform:scale(1.05);filter:brightness(.95);}
.mr-body{padding:14px 16px;}
.mr-cat{font-size:.52rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;}
.mr-title{font-size:.88rem;font-weight:800;color:#fff;line-height:1.3;margin:0 0 8px;}
.mr-meta{font-size:.58rem;color:rgba(255,255,255,.35);display:flex;align-items:center;gap:4px;}
.mr-meta i{font-size:.5rem;}

/* ── Browse by Category Showcase */
.stories-cat-showcase{padding:22px 28px;border-bottom:1px solid rgba(255,255,255,.05);}
.scs-header{margin-bottom:14px;}
.scs-title{font-family:'Inter Tight',sans-serif;font-size:1rem;font-weight:900;color:#fff;}
.scs-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;}
@media(max-width:900px){.scs-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:500px){.scs-grid{grid-template-columns:repeat(2,1fr);}}
.scs-card{display:block;position:relative;height:110px;border-radius:10px;overflow:hidden;transition:transform .2s,box-shadow .2s;}
.scs-card:hover{transform:scale(1.04);box-shadow:0 8px 24px rgba(0,0,0,.35);}
.scs-img{position:absolute;inset:0;}
.scs-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s;}
.scs-card:hover .scs-img img{transform:scale(1.08);}
.scs-overlay{position:absolute;inset:0;opacity:.82;transition:opacity .2s;}
.scs-card:hover .scs-overlay{opacity:.68;}
.scs-body{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-shadow:0 1px 6px rgba(0,0,0,.6);}
.scs-icon{font-size:1.1rem;color:#fff;}
.scs-name{font-size:.65rem;font-weight:800;color:#fff;letter-spacing:.04em;}

/* ── From the Editor */
.from-editor-block{padding:22px 28px;border-bottom:1px solid rgba(255,255,255,.05);}
.feb-inner{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:22px 26px;display:flex;align-items:center;gap:22px;}
@media(max-width:600px){.feb-inner{flex-direction:column;align-items:flex-start;gap:14px;}}
.feb-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.15);flex-shrink:0;}
.feb-content{flex:1;}
.feb-kicker{font-size:.55rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--dc-red);margin-bottom:8px;}
.feb-quote{font-size:.84rem;font-style:italic;color:rgba(255,255,255,.7);line-height:1.65;margin:0 0 10px;border-left:3px solid var(--dc-red);padding-left:14px;}
.feb-sig{display:flex;align-items:center;gap:8px;font-size:.7rem;}
.feb-sig strong{color:#fff;font-weight:800;}
.feb-sig span{color:rgba(255,255,255,.4);}

/* ── Fix: Good For row - ensure dark bg */
.good-for-row{background:transparent !important;}

/* ═══════════════════════════════════════════════════════════════════════
   MCR CITY v9.86 - STORIES: Big Read + Numbers + Voices
   Appended 2026-03-28
══════════════════════════════════════════════════════════════════════ */

/* ── Manchester in Numbers */
.mcr-numbers-block{padding:22px 28px;border-bottom:1px solid rgba(255,255,255,.05);}
.mnb-header{margin-bottom:14px;}
.mnb-title{font-family:'Inter Tight',sans-serif;font-size:1rem;font-weight:900;color:#fff;}
.mnb-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;}
@media(max-width:1000px){.mnb-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:500px){.mnb-grid{grid-template-columns:repeat(2,1fr);}}
.mnb-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:16px 12px;text-align:center;transition:border-color .2s,transform .2s;}
.mnb-card:hover{border-color:rgba(255,255,255,.16);transform:translateY(-3px);}
.mnb-icon{font-size:1.1rem;margin-bottom:8px;}
.mnb-num{font-family:'Inter Tight',sans-serif;font-size:1.5rem;font-weight:900;line-height:1;margin-bottom:4px;}
.mnb-label{font-size:.6rem;color:rgba(255,255,255,.45);line-height:1.4;}

/* ── The Big Read */
.big-read-block{padding:0 28px 22px;}
.brb-inner{border-radius:14px;overflow:hidden;background-image:linear-gradient(135deg,#1a0033 0%,#3a0066 40%,#FF2D95 100%);min-height:280px;display:flex;align-items:center;padding:40px 44px;}
.brb-content{max-width:560px;}
.brb-kicker{font-size:.57rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--dc-red);margin-bottom:12px;display:flex;align-items:center;gap:6px;}
.brb-title{font-family:'Inter Tight',sans-serif;font-size:clamp(1.4rem,3vw,2rem);font-weight:900;color:#fff;margin:0 0 12px;line-height:1.15;letter-spacing:-.02em;}
.brb-sub{font-size:.82rem;color:rgba(255,255,255,.65);line-height:1.65;margin:0 0 18px;max-width:460px;}
.brb-meta{display:flex;align-items:center;gap:8px;margin-bottom:18px;}
.brb-author-img{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid rgba(255,255,255,.2);}
.brb-author{font-size:.68rem;font-weight:700;color:rgba(255,255,255,.8);}
.brb-sep{color:rgba(255,255,255,.2);font-size:.8rem;}
.brb-time{font-size:.65rem;color:rgba(255,255,255,.45);display:flex;align-items:center;gap:4px;}
.brb-time i{font-size:.55rem;}
.brb-btn{display:inline-flex;align-items:center;gap:8px;background:var(--dc-red);color:#fff;font-size:.72rem;font-weight:800;padding:11px 22px;border-radius:6px;transition:filter .15s,transform .15s;}
.brb-btn:hover{filter:brightness(1.12);transform:translateX(3px);}
@media(max-width:600px){.brb-inner{padding:28px 22px;min-height:200px;}.brb-title{font-size:1.3rem;}.big-read-block{padding:0 16px 16px;}}

/* ── Editorial Voices */
.editorial-voices{padding:22px 28px;border-bottom:1px solid rgba(255,255,255,.05);}
.ev-header{display:flex;align-items:baseline;gap:12px;margin-bottom:16px;}
.ev-title{font-family:'Inter Tight',sans-serif;font-size:1rem;font-weight:900;color:#fff;}
.ev-sub{font-size:.62rem;color:rgba(255,255,255,.3);}
.editorial-voices .ev-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
@media(max-width:800px){.editorial-voices .ev-grid{grid-template-columns:repeat(2,1fr);}}
.editorial-voices .ev-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:18px 16px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;transition:border-color .2s,transform .2s;aspect-ratio:unset;position:static;overflow:visible;}
.editorial-voices .ev-card:hover{border-color:rgba(255,255,255,.18);transform:translateY(-3px);}
.ev-avatar{width:58px;height:58px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.12);}
.ev-body{display:flex;flex-direction:column;gap:3px;}
.ev-name{font-size:.78rem;font-weight:800;color:#fff;}
.ev-role{font-size:.6rem;font-weight:700;letter-spacing:.04em;}
.ev-beat{font-size:.6rem;color:rgba(255,255,255,.38);line-height:1.4;}

/* ── Food New Openings grid ─────────────────────────────────────── */
.food-new-openings{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;padding:4px 0 8px;}
.fno-card{display:block;text-decoration:none;border-radius:16px;overflow:hidden;background:#111;border:1px solid rgba(255,255,255,.08);transition:transform .25s,box-shadow .25s;}
.fno-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,.35);}
.fno-img{position:relative;aspect-ratio:4/3;overflow:hidden;}
.fno-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.fno-card:hover .fno-img img{transform:scale(1.06);}
.fno-badge{position:absolute;top:10px;left:10px;font-size:.5rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#fff;padding:4px 10px;border-radius:20px;}
.fno-body{padding:14px 14px 16px;}
.fno-price{display:inline-block;font-size:.58rem;font-weight:700;color:rgba(255,255,255,.45);margin-bottom:4px;}
.fno-name{font-family:'Inter Tight',sans-serif;font-size:.92rem;font-weight:900;color:#fff;margin-bottom:3px;line-height:1.2;}
.fno-cuisine{font-size:.58rem;font-weight:600;color:rgba(255,255,255,.5);margin-bottom:3px;}
.fno-hood{font-size:.56rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px;margin-bottom:6px;}
.fno-exc{font-size:.6rem;color:rgba(255,255,255,.55);line-height:1.45;margin:0;}

/* ═══ END v9.80 UPGRADES ════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════════════
   MCR CITY v9.89 - SPORT PAGE: NO MORE GREY BOXES
   Full visual redesign of records, stadiums, clubs, fixtures
   Appended 2026-03-28
══════════════════════════════════════════════════════════════════════ */

/* ── Records Grid: colour-driven premium cards ─────────────────────── */
.spr-card{
  position:relative;overflow:hidden;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(14,14,17,1);
  padding:28px 16px 22px;
  text-align:center;
  transition:transform .25s,border-color .25s,box-shadow .3s;
}
.spr-card::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 120% -20%, var(--c,#E8201A) 0%, transparent 58%);
  opacity:.15;pointer-events:none;
}
.spr-card::after{
  content:'';position:absolute;
  bottom:0;left:0;right:0;height:3px;
  background:var(--c,#E8201A);
  opacity:.6;
}
.spr-card:hover{
  transform:translateY(-7px);
  border-color:var(--c,rgba(255,255,255,.2));
  box-shadow:0 0 0 1px var(--c,transparent),0 20px 48px rgba(0,0,0,.55);
}
.spr-icon{font-size:1.6rem;margin-bottom:12px;position:relative;display:block;}
.spr-num{font-family:'Inter Tight',sans-serif;font-size:2.5rem;font-weight:900;line-height:1;margin-bottom:7px;position:relative;}
.spr-title{font-size:.78rem;font-weight:800;color:#fff;margin-bottom:6px;position:relative;}
.spr-desc{font-size:.62rem;color:rgba(255,255,255,.5);line-height:1.55;margin:0;position:relative;}

/* ── Fixture Cards: team-colour gradients ───────────────────────────── */
.twd-fix{
  position:relative;overflow:hidden;
  padding:18px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(14,14,17,1);
  display:flex;flex-direction:column;gap:12px;
  transition:border-color .2s,box-shadow .2s;
}
.twd-fix::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,var(--hc,#DA291C) 0%,transparent 45%,var(--ac,#C8102E) 100%);
  opacity:.08;pointer-events:none;
}
.twd-fix:hover{border-color:rgba(255,255,255,.22);box-shadow:0 10px 32px rgba(0,0,0,.4);}
.twd-badge{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.52rem;font-weight:900;color:#fff;flex-shrink:0;letter-spacing:.04em;}
.twd-vs-text{font-size:.7rem;font-weight:900;color:rgba(255,255,255,.3);letter-spacing:.12em;}
.twd-vs-time{font-size:.55rem;color:rgba(255,255,255,.45);font-weight:700;}
.twd-tname{font-size:.75rem;font-weight:800;color:#fff;}
.twd-comp-badge{font-size:.52rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;padding:3px 8px;background:rgba(255,255,255,.08);border-radius:4px;color:rgba(255,255,255,.6);}
.twd-tagline{font-size:.6rem;font-weight:700;color:#E8201A;letter-spacing:.04em;}
.twd-fix-venue{font-size:.6rem;color:rgba(255,255,255,.38);display:flex;align-items:center;gap:5px;}

/* ── Club Cards: accent top-border + gradient ───────────────────────── */
.scd-card{
  position:relative;
  border-radius:12px;overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(14,14,17,1);
  transition:transform .25s,border-color .2s,box-shadow .25s;
}
.scd-card::after{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--c,#E8201A);
}
.scd-card:hover{transform:translateY(-5px);border-color:var(--c,rgba(255,255,255,.2));box-shadow:0 16px 44px rgba(0,0,0,.5);}
.scd-img{height:175px;position:relative;overflow:hidden;}
.scd-img img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.75);transition:transform .4s,filter .3s;}
.scd-card:hover .scd-img img{transform:scale(1.06);filter:brightness(.9);}
.scd-img-scrim{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 40%,rgba(14,14,17,.9) 100%);}
.scd-badge-big{position:absolute;bottom:10px;left:14px;font-size:.6rem;font-weight:900;color:#fff;padding:4px 10px;border-radius:5px;letter-spacing:.06em;}
.scd-body{padding:14px 16px;}
.scd-league{font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;}
.scd-name{font-size:.95rem;font-weight:900;color:#fff;margin:0 0 8px;}
.scd-meta-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:6px;}
.scd-meta-item{font-size:.6rem;color:rgba(255,255,255,.45);display:flex;align-items:center;gap:4px;}
.scd-desc{font-size:.65rem;color:rgba(255,255,255,.55);line-height:1.55;margin:0 0 10px;}

/* ── Stadium Cards: cinematic image-forward ─────────────────────────── */
.sstd-card{
  position:relative;
  border-radius:12px;overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(14,14,17,1);
  transition:transform .2s,border-color .2s,box-shadow .2s;
  display:flex;flex-direction:column;
}
.sstd-card::after{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--c,#E8201A);
}
.sstd-card:hover{transform:translateY(-5px);border-color:var(--c,rgba(255,255,255,.2));box-shadow:0 14px 40px rgba(0,0,0,.5);}
.sstd-img{height:190px;position:relative;overflow:hidden;}
.sstd-img img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.78);transition:transform .4s,filter .3s;}
.sstd-card:hover .sstd-img img{transform:scale(1.06);filter:brightness(.92);}
.sstd-ico-badge{position:absolute;bottom:10px;right:10px;width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#fff;}
.sstd-body{padding:14px 16px;flex:1;display:flex;flex-direction:column;gap:3px;}
.sstd-name{font-size:.9rem;font-weight:900;color:#fff;margin:0;}
.sstd-team{font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;}
.sstd-meta{display:flex;gap:10px;flex-wrap:wrap;}
.sstd-meta span{font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:3px;}
.sstd-desc{font-size:.65rem;color:rgba(255,255,255,.55);line-height:1.55;margin:4px 0 0;flex:1;}

/* ── Sport clubs grid: 3-col on wide screens ────────────────────────── */
@media(min-width:960px){.sport-clubs-deep{grid-template-columns:repeat(3,1fr);}}

/* ── Stadiums grid: 3-col on wide screens ───────────────────────────── */
@media(min-width:960px){.sport-stadiums{grid-template-columns:repeat(3,1fr);}}

/* ── FIX: Community cards - force solid dark bg, never inherit white ─── */
.cgc-card,
.cpp-card,
.clg-card,
.community-leagues-grid,
.community-clubs-grid,
.community-pitches-grid,
.CENTRE.white-bg .cgc-card,
.CENTRE.white-bg .cpp-card,
.CENTRE.white-bg .clg-card{
  background:#111115 !important;
  color:rgba(255,255,255,.8) !important;
}
.cgc-card *,
.cpp-card *,
.clg-card *{color:inherit;}
.cgc-name,.cpp-name,.clg-name{color:#fff !important;}
.cgc-sport,.cgc-area,.cgc-desc,
.cpp-type,.cpp-loc,.cpp-desc,
.clg-sport,.clg-teams,.clg-desc{color:rgba(255,255,255,.5) !important;}
.sport-sub-head{color:rgba(255,255,255,.55) !important;}
#community,.sport-records-section,
.community-leagues-grid,.community-clubs-grid,.community-pitches-grid{
  background:transparent !important;
}

/* ═══════════════════════════════════════════════════════════════════════
   COMMUNITY SPORT PAGE - v9.92.0
   Light / premium design system - .cs-* prefix
   mcr.city/community-sport
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Page wrapper ───────────────────────────────────────────────────── */
.cs-page{
  background:#f7f8fc;
  min-height:100vh;
  padding:0;
  margin:0;
  font-family:inherit;
}

/* ── Shared section shell ───────────────────────────────────────────── */
.cs-section{
  padding:56px 24px;
  max-width:1160px;
  margin:0 auto;
}
.cs-section--white{background:#fff;max-width:none;padding:56px 0;}
.cs-section--white>.cs-section-head,
.cs-section--white>.cs-stories-grid,
.cs-section--white>.cs-fixtures-grid,
.cs-section--white>.cs-facilities-grid{max-width:1160px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;}
.cs-section--grey{background:#f0f2f7;max-width:none;padding:56px 0;}
.cs-section--grey>.cs-section-head,
.cs-section--grey>.cs-leagues-grid,
.cs-section--grey>.cs-filter-row,
.cs-section--grey>.cs-clubs-grid{max-width:1160px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;}
.cs-section--accent{background:linear-gradient(135deg,#0e0e11 0%,#1a1a22 100%);max-width:none;padding:64px 0;}
.cs-section--accent>.cs-section-head,
.cs-section--accent>.cs-pathways-grid{max-width:1160px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;}

/* ── Section heading ────────────────────────────────────────────────── */
.cs-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:32px;
  flex-wrap:wrap;
}
.cs-sh-kicker{
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#E8201A;
  margin-bottom:5px;
}
.cs-sh-kicker--light{color:rgba(255,255,255,.5);}
.cs-sh-title{
  font-size:1.7rem;
  font-weight:900;
  color:#0d0d0f;
  margin:0;
  line-height:1.15;
}
.cs-sh-title--light{color:#fff;}
.cs-link-more{
  font-size:.75rem;
  font-weight:700;
  color:#E8201A;
  text-decoration:none;
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:5px;
  transition:opacity .2s;
}
.cs-link-more:hover{opacity:.7;}

/* ── Buttons ────────────────────────────────────────────────────────── */
.cs-btn{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:11px 20px;
  border-radius:8px;
  font-size:.78rem;
  font-weight:800;
  text-decoration:none;
  transition:transform .18s,box-shadow .18s,opacity .18s;
  cursor:pointer;
  border:none;
}
.cs-btn:hover{transform:translateY(-2px);}
.cs-btn-primary{background:#E8201A;color:#fff;box-shadow:0 4px 16px rgba(232,32,26,.3);}
.cs-btn-primary:hover{box-shadow:0 8px 24px rgba(232,32,26,.45);}
.cs-btn-outline{background:transparent;color:#0d0d0f;border:2px solid rgba(0,0,0,.15);}
.cs-btn-outline:hover{border-color:rgba(0,0,0,.35);}
.cs-btn-white{background:#fff;color:#0d0d0f;box-shadow:0 4px 16px rgba(0,0,0,.15);}
.cs-btn-white:hover{box-shadow:0 8px 24px rgba(0,0,0,.25);}
.cs-btn-ghost-white{background:transparent;color:rgba(255,255,255,.75);border:2px solid rgba(255,255,255,.3);}
.cs-btn-ghost-white:hover{color:#fff;border-color:rgba(255,255,255,.6);}

/* ══ MASTHEAD ═══════════════════════════════════════════════════════════ */
.cs-masthead{
  position:relative;
  background:#0d0d0f;
  overflow:hidden;
  min-height:540px;
  display:flex;
  flex-direction:column;
}
.cs-mh-bg{
  position:absolute;
  inset:0;
}
.cs-mh-bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 40%;
  filter:grayscale(15%);
  display:block;
}
.cs-mh-scrim{
  position:absolute;
  inset:0;
  background:linear-gradient(105deg,rgba(13,13,15,.96) 0%,rgba(13,13,15,.78) 55%,rgba(26,10,10,.88) 100%);
}
.cs-mh-inner{
  position:relative;
  z-index:2;
  max-width:1160px;
  margin:0 auto;
  padding:80px 24px 48px;
  flex:1;
}
.cs-mh-content{max-width:660px;}
.cs-mh-kicker{
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#E8201A;
  margin-bottom:16px;
  display:flex;
  align-items:center;
  gap:6px;
}
.cs-mh-title{
  font-size:clamp(2.2rem,5vw,4rem);
  font-weight:900;
  color:#fff;
  line-height:1.02;
  margin:0 0 18px;
}
.cs-mh-accent{
  display:block;
  background:linear-gradient(135deg,#E8201A 0%,#ff6b5b 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
}
.cs-mh-sub{
  font-size:.95rem;
  color:rgba(255,255,255,.65);
  line-height:1.65;
  max-width:500px;
  margin:0 0 28px;
}
.cs-mh-sport-pills{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:32px;
}
.cs-mh-pill{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 13px;
  border-radius:20px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  font-size:.65rem;
  font-weight:700;
  color:rgba(255,255,255,.75);
}
.cs-mh-ctas{display:flex;gap:10px;flex-wrap:wrap;}
/* Stats bar - sits at bottom of masthead */
.cs-mh-stats-bar{
  position:relative;
  z-index:2;
  background:rgba(255,255,255,.05);
  border-top:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.cs-mh-stats{
  max-width:1160px;
  margin:0 auto;
  padding:20px 24px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:0;
  row-gap:12px;
}
.cs-mh-stat{
  display:flex;
  flex-direction:column;
  padding:0 24px;
}
.cs-mh-stat:first-child{padding-left:0;}
.cs-mh-stat strong{font-size:1.4rem;font-weight:900;color:#fff;line-height:1;}
.cs-mh-stat span{font-size:.6rem;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.07em;margin-top:3px;}
.cs-mh-stat-sep{width:1px;height:32px;background:rgba(255,255,255,.15);}
@media(max-width:640px){
  .cs-masthead{min-height:auto;}
  .cs-mh-inner{padding:56px 16px 36px;}
  .cs-mh-stats{padding:16px;}
  .cs-mh-stat{padding:0 14px;}
  .cs-mh-stat strong{font-size:1.1rem;}
}

/* ══ FIXTURES ═══════════════════════════════════════════════════════════ */
.cs-fixtures-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:16px;
}
.cs-fix-card{
  background:#fff;
  border:1px solid #eaecf2;
  border-radius:12px;
  padding:16px 18px;
  position:relative;
  overflow:hidden;
  transition:box-shadow .22s,transform .22s;
}
.cs-fix-card::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,var(--hc,#DA291C) 0%,transparent 40%,var(--ac,#003087) 100%);
  opacity:.04;
  pointer-events:none;
}
.cs-fix-card::after{
  content:'';
  position:absolute;
  bottom:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,var(--hc,#DA291C),var(--ac,#003087));
}
.cs-fix-card:hover{box-shadow:0 8px 28px rgba(0,0,0,.1);transform:translateY(-3px);}
.cs-fix-comp{
  font-size:.55rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#999;
  margin-bottom:12px;
}
.cs-fix-match{
  display:flex;
  align-items:center;
  gap:10px;
  justify-content:space-between;
}
.cs-fix-team{
  display:flex;
  align-items:center;
  gap:9px;
  flex:1;
}
.cs-fix-team--away{
  flex-direction:row-reverse;
  text-align:right;
}
.cs-fix-badge{
  width:34px;
  height:34px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.58rem;
  font-weight:900;
  color:#fff;
  letter-spacing:.03em;
  flex-shrink:0;
}
.cs-fix-name{
  font-size:.78rem;
  font-weight:800;
  color:#0d0d0f;
  line-height:1.2;
}
.cs-fix-vs{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  flex-shrink:0;
  padding:0 6px;
}
.cs-fix-time{
  font-size:.58rem;
  font-weight:700;
  color:#E8201A;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.cs-fix-vs-text{
  font-size:.65rem;
  font-weight:900;
  color:#bbb;
  letter-spacing:.08em;
}
.cs-fix-venue{
  font-size:.6rem;
  color:#999;
  margin-top:10px;
  display:flex;
  align-items:center;
  gap:4px;
}

/* ══ CLUB SPOTLIGHT ══════════════════════════════════════════════════════ */
.cs-spotlight{
  position:relative;
  min-height:480px;
  overflow:hidden;
  display:flex;
  align-items:center;
}
.cs-spotlight-img{
  position:absolute;
  inset:0;
}
.cs-spotlight-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.cs-spotlight-scrim{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.55) 50%,rgba(0,0,0,.2) 100%);
}
.cs-spotlight-inner{
  position:relative;
  z-index:2;
  width:100%;
  max-width:1160px;
  margin:0 auto;
  padding:64px 24px;
}
.cs-spotlight-content{
  max-width:560px;
}
.cs-spotlight-kicker{
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#DA291C;
  margin-bottom:10px;
  display:flex;
  align-items:center;
  gap:6px;
}
.cs-spotlight-title{
  font-size:clamp(1.6rem,3.5vw,2.6rem);
  font-weight:900;
  color:#fff;
  margin:0 0 6px;
  line-height:1.1;
}
.cs-spotlight-league{
  font-size:.75rem;
  color:rgba(255,255,255,.6);
  margin-bottom:16px;
}
.cs-spotlight-desc{
  font-size:.88rem;
  color:rgba(255,255,255,.8);
  line-height:1.65;
  margin:0 0 24px;
}
.cs-spotlight-stats{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
  margin-bottom:28px;
}
.cs-spotlight-stat{
  display:flex;
  flex-direction:column;
}
.cs-spotlight-stat strong{
  font-size:1.25rem;
  font-weight:900;
  color:#fff;
  line-height:1;
}
.cs-spotlight-stat span{
  font-size:.6rem;
  color:rgba(255,255,255,.5);
  text-transform:uppercase;
  letter-spacing:.07em;
  margin-top:2px;
}
.cs-spotlight-ctas{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

/* ══ LEAGUES ═════════════════════════════════════════════════════════════ */
.cs-leagues-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:14px;
}
.cs-league-card{
  background:#fff;
  border:1px solid #dde0e8;
  border-radius:12px;
  padding:18px;
  transition:box-shadow .22s,transform .22s;
}
.cs-league-card:hover{
  box-shadow:0 8px 24px rgba(0,0,0,.09);
  transform:translateY(-3px);
}
.cs-lc-top{
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin-bottom:10px;
}
.cs-lc-icon{
  width:42px;
  height:42px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1rem;
  flex-shrink:0;
}
.cs-lc-sport{
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  margin-bottom:3px;
}
.cs-lc-name{
  font-size:.85rem;
  font-weight:900;
  color:#0d0d0f;
  margin:0 0 4px;
  line-height:1.2;
}
.cs-lc-info{
  font-size:.6rem;
  color:#999;
  display:flex;
  align-items:center;
  gap:4px;
}
.cs-lc-desc{
  font-size:.72rem;
  color:#666;
  line-height:1.55;
  margin:0;
}

/* ══ COMMUNITY STORIES ═══════════════════════════════════════════════════ */
.cs-stories-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:auto auto;
  gap:16px;
}
.cs-story-card{
  display:flex;
  flex-direction:column;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
  border:1px solid #eaecf2;
  text-decoration:none;
  color:inherit;
  transition:box-shadow .22s,transform .22s;
}
.cs-story-card:hover{
  box-shadow:0 10px 32px rgba(0,0,0,.1);
  transform:translateY(-4px);
}
.cs-story-card--wide{
  grid-column:1/-1;
  flex-direction:row;
}
.cs-story-card--wide .cs-sc-img{
  width:42%;
  flex-shrink:0;
}
.cs-story-card--wide .cs-sc-img img{height:100%;}
.cs-sc-img{
  width:100%;
  height:180px;
  overflow:hidden;
  flex-shrink:0;
}
.cs-sc-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .4s;
}
.cs-story-card:hover .cs-sc-img img{transform:scale(1.05);}
.cs-sc-body{
  padding:16px;
  flex:1;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.cs-sc-cat{
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.cs-sc-title{
  font-size:.9rem;
  font-weight:900;
  color:#0d0d0f;
  margin:0;
  line-height:1.3;
}
.cs-story-card--wide .cs-sc-title{font-size:1.15rem;}
.cs-sc-desc{
  font-size:.75rem;
  color:#666;
  line-height:1.55;
  margin:0;
  flex:1;
}
.cs-sc-meta{
  font-size:.62rem;
  color:#aaa;
  margin-top:auto;
  display:flex;
  align-items:center;
  gap:5px;
}
@media(max-width:800px){
  .cs-stories-grid{grid-template-columns:1fr;}
  .cs-story-card--wide{flex-direction:column;}
  .cs-story-card--wide .cs-sc-img{width:100%;}
  .cs-story-card--wide .cs-sc-img img{height:220px;}
}

/* ══ CLUBS DIRECTORY ══════════════════════════════════════════════════════ */
.cs-filter-row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:24px;
}
.cs-filter-btn{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:7px 14px;
  border-radius:20px;
  border:2px solid #dde0e8;
  background:#fff;
  font-size:.7rem;
  font-weight:700;
  color:#555;
  cursor:pointer;
  transition:all .18s;
}
.cs-filter-btn:hover{border-color:#E8201A;color:#E8201A;}
.cs-filter-btn.cs-filter-on{
  background:#E8201A;
  border-color:#E8201A;
  color:#fff;
}
.cs-clubs-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:14px;
}
.cs-club-card{
  background:#fff;
  border:1px solid #dde0e8;
  border-radius:12px;
  padding:16px;
  display:flex;
  align-items:flex-start;
  gap:14px;
  transition:box-shadow .22s,transform .22s;
}
.cs-club-card:hover{
  box-shadow:0 8px 24px rgba(0,0,0,.09);
  transform:translateY(-3px);
}
.cs-club-badge{
  width:48px;
  height:48px;
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.65rem;
  font-weight:900;
  color:#fff;
  letter-spacing:.03em;
  flex-shrink:0;
  text-align:center;
}
.cs-club-body{flex:1;min-width:0;}
.cs-club-sport{
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:3px;
}
.cs-club-name{
  font-size:.88rem;
  font-weight:900;
  color:#0d0d0f;
  margin:0 0 4px;
  line-height:1.2;
}
.cs-club-area{
  font-size:.63rem;
  color:#999;
  margin-bottom:5px;
  display:flex;
  align-items:center;
  gap:4px;
}
.cs-club-desc{
  font-size:.7rem;
  color:#666;
  line-height:1.5;
  margin:0;
}

/* ══ GET INVOLVED PATHWAYS ════════════════════════════════════════════════ */
.cs-pathways-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:16px;
}
.cs-pathway-card{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:16px;
  padding:24px;
  text-decoration:none;
  color:inherit;
  display:flex;
  flex-direction:column;
  gap:12px;
  transition:background .22s,border-color .22s,transform .22s;
}
.cs-pathway-card:hover{
  background:rgba(255,255,255,.09);
  border-color:rgba(255,255,255,.22);
  transform:translateY(-3px);
}
.cs-pw-icon{
  width:48px;
  height:48px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.1rem;
  color:#fff;
  flex-shrink:0;
}
.cs-pw-title{
  font-size:1rem;
  font-weight:900;
  color:#fff;
  margin:0;
}
.cs-pw-desc{
  font-size:.75rem;
  color:rgba(255,255,255,.6);
  line-height:1.6;
  margin:0;
  flex:1;
}
.cs-pw-cta{
  font-size:.72rem;
  font-weight:800;
  color:rgba(255,255,255,.5);
  display:flex;
  align-items:center;
  gap:5px;
  margin-top:auto;
  transition:color .18s;
}
.cs-pathway-card:hover .cs-pw-cta{color:#fff;}

/* ══ FACILITIES ══════════════════════════════════════════════════════════ */
.cs-facilities-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:16px;
}
.cs-facility-card{
  background:#fff;
  border:1px solid #eaecf2;
  border-radius:12px;
  overflow:hidden;
  transition:box-shadow .22s,transform .22s;
}
.cs-facility-card:hover{
  box-shadow:0 8px 28px rgba(0,0,0,.1);
  transform:translateY(-3px);
}
.cs-fac-header{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 16px;
}
.cs-fac-icon{
  font-size:1.2rem;
  flex-shrink:0;
  width:28px;
  text-align:center;
}
.cs-fac-sport{
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  margin-bottom:2px;
}
.cs-fac-name{
  font-size:.88rem;
  font-weight:900;
  color:#0d0d0f;
  margin:0;
  line-height:1.2;
}
.cs-fac-body{
  padding:12px 16px 16px;
}
.cs-fac-loc{
  font-size:.62rem;
  color:#999;
  margin-bottom:6px;
  display:flex;
  align-items:center;
  gap:4px;
}
.cs-fac-desc{
  font-size:.72rem;
  color:#555;
  line-height:1.55;
  margin:0 0 10px;
}
.cs-fac-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:.68rem;
  font-weight:800;
  color:#E8201A;
  text-decoration:none;
  transition:opacity .18s;
}
.cs-fac-link:hover{opacity:.7;}

/* ══ NEWSLETTER ══════════════════════════════════════════════════════════ */
.cs-newsletter{
  background:linear-gradient(135deg,#E8201A 0%,#b51814 100%);
  padding:48px 24px;
}
.cs-nl-inner{
  max-width:1160px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
  flex-wrap:wrap;
}
.cs-nl-left{
  display:flex;
  align-items:center;
  gap:20px;
}
.cs-nl-icon{
  width:52px;
  height:52px;
  border-radius:12px;
  background:rgba(255,255,255,.15);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.2rem;
  color:#fff;
  flex-shrink:0;
}
.cs-nl-title{
  font-size:1.05rem;
  font-weight:900;
  color:#fff;
  margin:0 0 4px;
}
.cs-nl-sub{
  font-size:.75rem;
  color:rgba(255,255,255,.75);
  margin:0;
}
.cs-nl-form{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.cs-nl-input{
  padding:11px 16px;
  border-radius:8px;
  border:none;
  font-size:.82rem;
  min-width:240px;
  outline:none;
  background:#fff;
  color:#0d0d0f;
}
.cs-nl-btn{
  padding:11px 20px;
  border-radius:8px;
  background:#0d0d0f;
  color:#fff;
  font-size:.78rem;
  font-weight:800;
  border:none;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:6px;
  transition:background .18s;
}
.cs-nl-btn:hover{background:#222;}

/* ══ BACK BAR ════════════════════════════════════════════════════════════ */
.cs-back-bar{
  background:#fff;
  border-top:1px solid #eaecf2;
  padding:16px 24px;
}
.cs-back-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.75rem;
  font-weight:700;
  color:#888;
  text-decoration:none;
  max-width:1160px;
  margin:0 auto;
  display:flex;
  transition:color .18s;
}
.cs-back-link:hover{color:#0d0d0f;}

/* ══ SCROLL REVEAL ═══════════════════════════════════════════════════════ */
.cs-reveal{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .45s ease,transform .45s ease;
}
.cs-revealed{
  opacity:1;
  transform:none;
}
.cs-card-show{
  opacity:1;
  transform:none;
}

/* ── Club card website link ─────────────────────────────────────────── */
.cs-club-link{
  display:inline-flex;align-items:center;gap:5px;
  font-size:.65rem;font-weight:800;color:#E8201A;
  text-decoration:none;margin-top:8px;transition:opacity .18s;
}
.cs-club-link:hover{opacity:.7;}

/* ── Area filter secondary style ────────────────────────────────────── */
.cs-filter-btn--area{background:#f5f6fa;border-color:#dde0e8;font-size:.65rem;}
.cs-filter-btn--area.cs-filter-on{background:#0d0d0f;border-color:#0d0d0f;color:#fff;}
.cs-filter-btn--area:hover:not(.cs-filter-on){border-color:#0d0d0f;color:#0d0d0f;}

/* ══ WOMEN'S SPORT GRID ══════════════════════════════════════════════════ */
.cs-womens-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;
}
.cs-womens-card{
  background:#fff;border:1px solid #eaecf2;border-radius:12px;
  padding:20px;display:flex;gap:14px;align-items:flex-start;
  transition:box-shadow .22s,transform .22s;
}
.cs-womens-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.09);transform:translateY(-3px);}
.cs-wc-icon{
  width:44px;height:44px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;flex-shrink:0;
}
.cs-wc-body{flex:1;min-width:0;}
.cs-wc-league{font-size:.58rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px;}
.cs-wc-name{font-size:.9rem;font-weight:900;color:#0d0d0f;margin:0 0 8px;line-height:1.2;}
.cs-wc-desc{font-size:.72rem;color:#666;line-height:1.55;margin:0 0 10px;}
@media(max-width:640px){.cs-womens-grid{grid-template-columns:1fr;}}

/* ══ LIGHT PATHWAY CARDS (youth section) ════════════════════════════════ */
.cs-pathway-card--light{background:#fff;border:1px solid #eaecf2;}
.cs-pathway-card--light:hover{background:#f7f8fc;border-color:#dde0e8;transform:translateY(-3px);}

/* ── Community Sport responsive tweaks ──────────────────────────────── */
@media(max-width:640px){
  .cs-section{padding:40px 16px;}
  .cs-section--white,
  .cs-section--grey,
  .cs-section--accent{padding:40px 0;}
  .cs-section--white>.cs-section-head,
  .cs-section--white>.cs-stories-grid,
  .cs-section--white>.cs-fixtures-grid,
  .cs-section--white>.cs-facilities-grid,
  .cs-section--grey>.cs-section-head,
  .cs-section--grey>.cs-leagues-grid,
  .cs-section--grey>.cs-filter-row,
  .cs-section--grey>.cs-clubs-grid,
  .cs-section--accent>.cs-section-head,
  .cs-section--accent>.cs-pathways-grid{padding-left:16px;padding-right:16px;}
  .cs-sh-title{font-size:1.3rem;}
  .cs-mh-inner{padding:36px 16px 24px;}
  .cs-fixtures-grid{grid-template-columns:1fr;}
  .cs-leagues-grid{grid-template-columns:1fr;}
  .cs-clubs-grid{grid-template-columns:1fr;}
  .cs-pathways-grid{grid-template-columns:1fr 1fr;}
  .cs-facilities-grid{grid-template-columns:1fr;}
  .cs-nl-inner{flex-direction:column;align-items:stretch;}
  .cs-nl-form{flex-direction:column;}
  .cs-nl-input{min-width:0;width:100%;}
  .cs-spotlight-inner{padding:48px 16px;}
  .cs-spotlight-stats{gap:16px;}
}
@media(max-width:480px){
  .cs-pathways-grid{grid-template-columns:1fr;}
}

/* ═══════════════════════════════════════════════════════════════════════
   SPORT PAGE - Community Sport promo block - v9.92.0
   ═══════════════════════════════════════════════════════════════════════ */
.sport-cs-promo{
  background:linear-gradient(135deg,#0d0d0f 0%,#1a1a24 60%,#1e1a2e 100%);
  border-radius:16px;
  margin:40px 0;
  overflow:hidden;
  position:relative;
}
.sport-cs-promo::before{
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse at 80% 50%,rgba(232,32,26,.12) 0%,transparent 65%);
  pointer-events:none;
}
.scp-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  padding:40px 36px;
  position:relative;
  z-index:1;
  flex-wrap:wrap;
}
.scp-left{flex:1;min-width:260px;}
.scp-kicker{
  font-size:.6rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#E8201A;
  margin-bottom:10px;
  display:flex;
  align-items:center;
  gap:6px;
}
.scp-title{
  font-size:1.5rem;
  font-weight:900;
  color:#fff;
  margin:0 0 10px;
  line-height:1.15;
}
.scp-desc{
  font-size:.8rem;
  color:rgba(255,255,255,.6);
  line-height:1.65;
  margin:0 0 18px;
  max-width:500px;
}
.scp-pills{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:22px;
}
.scp-pills span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:5px 11px;
  border-radius:20px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  font-size:.65rem;
  font-weight:700;
  color:rgba(255,255,255,.7);
}
.scp-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:12px 22px;
  border-radius:9px;
  background:#E8201A;
  color:#fff;
  font-size:.8rem;
  font-weight:800;
  text-decoration:none;
  box-shadow:0 4px 18px rgba(232,32,26,.35);
  transition:transform .18s,box-shadow .18s;
}
.scp-cta:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(232,32,26,.5);}
.scp-stats{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
  flex-shrink:0;
}
.scp-stat{
  display:flex;
  flex-direction:column;
  align-items:center;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  padding:16px 20px;
  text-align:center;
}
.scp-stat strong{
  font-size:1.6rem;
  font-weight:900;
  color:#fff;
  line-height:1;
}
.scp-stat span{
  font-size:.6rem;
  color:rgba(255,255,255,.45);
  text-transform:uppercase;
  letter-spacing:.07em;
  margin-top:3px;
}
@media(max-width:640px){
  .scp-inner{padding:28px 20px;gap:24px;}
  .scp-title{font-size:1.2rem;}
  .scp-stats{grid-template-columns:repeat(4,1fr);width:100%;}
}

/* ── Community Sport: editorial intro ───────────────────────────────── */
.cs-editorial-intro{
  max-width:760px;
  margin:0 auto;
  padding:0 24px;
}
.cs-ei-lead{
  font-size:1.1rem;
  font-weight:700;
  color:#0d0d0f;
  line-height:1.55;
  margin:0 0 14px;
}
.cs-ei-body{
  font-size:.88rem;
  color:#555;
  line-height:1.75;
  margin:0 0 22px;
}
.cs-ei-tags{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.cs-ei-tag{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 13px;
  border-radius:20px;
  background:#f3f4f8;
  border:1px solid #dde0e8;
  font-size:.7rem;
  font-weight:700;
  color:#444;
  text-decoration:none;
  transition:background .18s,border-color .18s,color .18s;
}
.cs-ei-tag:hover{background:#E8201A;border-color:#E8201A;color:#fff;}

/* ═══════════════════════════════════════════════════════════════════════
   MCR CITY v9.91 - STORIES: White EP surface + Ultra-premium hero
   Appended 2026-03-28
══════════════════════════════════════════════════════════════════════ */

/* ── Editor's Picks: white surface ─────────────────────────────────── */
.editors-picks-block {
  background:#fff !important;
  border-top:1px solid rgba(0,0,0,.07);
  border-bottom:1px solid rgba(0,0,0,.08);
  padding:22px 28px;
}
.epb-label { color:#0c0c0e !important; }
.epb-label i { color:var(--dc-red) !important; }
.epb-sub { color:rgba(0,0,0,.45) !important; }
.epb-header { margin-bottom:16px; }
/* ep-cards: keep their own dark overlay look - images handle bg */
.ep-card { border-color:rgba(0,0,0,.1) !important; }

/* ── Hero story: ultra-premium treatment ────────────────────────────── */
.stories-hero {
  height:580px !important;
}
.sh-scrim {
  background:
    linear-gradient(to top,  rgba(0,0,0,.97) 0%, rgba(0,0,0,.62) 42%, rgba(0,0,0,.18) 75%, transparent 100%),
    linear-gradient(to right, rgba(0,0,0,.5)  0%, transparent 60%) !important;
}
.sh-body {
  padding:52px 56px !important;
}
.sh-cat {
  font-size:.54rem !important;
  letter-spacing:.14em !important;
  padding:5px 12px !important;
  border-radius:4px !important;
}
.sh-badge {
  letter-spacing:.16em !important;
  color:rgba(255,255,255,.75) !important;
  border-color:rgba(255,255,255,.35) !important;
  font-size:.52rem !important;
}
.sh-title {
  font-size:clamp(2.1rem,4.5vw,3.4rem) !important;
  letter-spacing:-.04em !important;
  line-height:1.03 !important;
  margin:0 0 16px !important;
}
.sh-sub {
  font-size:.96rem !important;
  color:rgba(255,255,255,.78) !important;
  max-width:600px !important;
  line-height:1.62 !important;
  margin:0 0 20px !important;
}
.sh-foot {
  font-size:.72rem !important;
  color:rgba(255,255,255,.55) !important;
  gap:10px !important;
}
@media(max-width:700px){
  .stories-hero{height:400px !important;}
  .sh-body{padding:28px 24px !important;}
  .sh-title{font-size:1.7rem !important;}
}

/* ══════════════════════════════════════════════════════════
   WOT MOBILE REDESIGN - clean, compact, app-style
══════════════════════════════════════════════════════════ */
@media(max-width:640px){

  /* ── Topbar: grid layout - title+live row 1, date strip row 2 ── */
  .wot-topbar {
    display:grid !important;
    grid-template-columns:1fr auto !important;
    grid-template-rows:auto auto !important;
    align-items:start !important;
    padding:14px 14px 0 !important;
    gap:0 !important;
  }
  .wot-topbar-left   { grid-column:1; grid-row:1; }
  .wot-topbar-right  { grid-column:2; grid-row:1; padding-top:4px; }
  .wot-topbar-center {
    grid-column:1 / -1;
    grid-row:2;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    padding:10px 0 12px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
    -webkit-overflow-scrolling:touch !important;
    width:auto !important;
    margin:0 !important;
  }
  .wot-topbar-center::-webkit-scrollbar { display:none !important; }

  /* Hide < > nav buttons - use swipe */
  .wot-nav-btn { display:none !important; }

  /* Compact title */
  .wot-title       { font-size:1.05rem !important; letter-spacing:-.03em !important; }
  .wot-date-label  { font-size:.5rem !important; margin-top:1px !important; }

  /* Compact LIVE badge */
  .wot-live-badge  { padding:5px 10px !important; font-size:.44rem !important; gap:4px !important; }
  .wot-live-dot    { width:5px !important; height:5px !important; }

  /* Day strip scrollable */
  .wot-week-strip  { gap:6px !important; flex-wrap:nowrap !important; }
  .wot-wday        { width:44px !important; height:48px !important; flex-shrink:0 !important; border-radius:12px !important; }
  .wot-wday-dn     { font-size:.38rem !important; }
  .wot-wday-num    { font-size:.78rem !important; }

  /* Filter bar */
  .wot-filterbar { padding:8px 14px 12px !important; gap:6px !important; flex-wrap:nowrap !important; }
  .wot-flt       { padding:5px 11px !important; font-size:.46rem !important; flex-shrink:0 !important; white-space:nowrap !important; }
  .wot-flt-dot   { width:5px !important; height:5px !important; }

  /* Time grid - internal scroll box (50vh), day-switch stays compact, JS scrollTop works */
  .wot-tg          { max-height:50vh !important; overflow-y:auto !important; overflow-x:hidden !important; -webkit-overflow-scrolling:touch !important; }
  .wot-tg::after   { display:none !important; }

  /* Time grid rows - horizontal scroll per row, no touch-action override */
  .wot-tg-time     { width:40px !important; font-size:.4rem !important; padding:12px 6px 10px 10px !important; }
  .wot-tg-ev-row   { padding:6px 10px 6px 8px !important; gap:6px !important; overflow-x:auto !important; overflow-y:hidden !important; -webkit-overflow-scrolling:touch !important; }

  /* Event pills */
  .wot-ev-pill     { padding:5px 8px 5px 7px !important; min-width:90px !important; max-width:150px !important; border-radius:6px !important; gap:1px !important; }
  .wot-ep-title    { font-size:.58rem !important; max-width:105px !important; }
  .wot-ep-sub      { font-size:.48rem !important; }

  /* NOW row - horizontal scroll on mobile, no wrap */
  .wot-tg-row.wot-now.double-layer .wot-tg-ev-row,
  .wot-tg-row.double-layer .wot-tg-ev-row {
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    max-height:none !important;
  }

  /* Last 2 rows - show all pills wrapped */
  .wot-tg-row.wot-last-two .wot-tg-ev-row {
    flex-wrap:wrap !important;
    overflow-x:hidden !important;
    overflow-y:visible !important;
    max-height:none !important;
    padding-bottom:8px !important;
  }
}

/* ═══════════════════════════════════════════════════════════════════════
   MCR BOTTOM DRAWER - v9.9
   Pull-up nav: sections, tools, What's On Tonight
══════════════════════════════════════════════════════════════════════ */
#MCR-DRAWER-BD{
  display:none;position:fixed;inset:0;z-index:899;
  background:rgba(0,0,0,.6);
  backdrop-filter:blur(6px) saturate(.8);
  -webkit-backdrop-filter:blur(6px) saturate(.8);
  opacity:0;pointer-events:none;
  transition:opacity .4s ease;
}
#MCR-DRAWER-BD.on{opacity:1;pointer-events:auto}
/* ═══ DRAWER ═══════════════════════════ */
#MCR-DRAWER{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:900;background:#000;
  height:92vh;border-radius:26px 26px 0 0;overflow:hidden;
  transform:translateY(calc(100% - 58px));
  transition:transform .52s cubic-bezier(.22,1.08,.36,1);
  touch-action:none;
  -webkit-overflow-scrolling:touch;
}
#MCR-DRAWER.open{transform:translateY(6vh)}

.mcrd-glass{
  position:absolute;inset:0;
  background:#000;
  background-image:radial-gradient(ellipse 70% 40% at 50% 0%,rgba(255,102,0,.05) 0%,transparent 100%);
  border-radius:26px 26px 0 0;
  border-top:1px solid rgba(255,255,255,.13);
}
.mcrd-glow{
  position:absolute;top:0;left:0;right:0;height:1px;z-index:2;
  background:linear-gradient(90deg,
    transparent 0%,rgba(255,102,0,.55) 15%,rgba(26,86,255,.9) 35%,
    rgba(232,0,42,.75) 55%,rgba(139,92,246,.65) 75%,transparent 100%);
  animation:glow-anim 6s ease infinite;
}
@keyframes glow-anim{0%,100%{opacity:.5;filter:blur(0)}50%{opacity:1;filter:blur(.5px)}}
.mcrd-noise{
  position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.018;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:128px;
}
.mcrd-fade{
  position:absolute;bottom:0;left:0;right:0;height:90px;z-index:10;pointer-events:none;
  background:linear-gradient(to top,rgba(4,4,8,.85) 0%,transparent 100%);
}

/* ── HANDLE ───────────────────────────── */
.mcrd-handle{
  position:relative;z-index:20;
  display:flex;flex-direction:column;align-items:center;
  padding:4px 0 2px;cursor:grab;user-select:none;
}
.mcrd-pill{
  width:38px;height:4px;border-radius:4px;
  background:rgba(255,255,255,.13);transition:all .3s;
}
#MCR-DRAWER.open .mcrd-pill{width:28px;background:rgba(255,255,255,.28)}
.mcrd-hint{
  margin-top:9px;display:flex;align-items:center;gap:5px;
  font-size:.43rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(255,255,255,.18);transition:opacity .25s;
}
.mcrd-hint svg{animation:bounce-up 1.8s ease infinite}
@keyframes bounce-up{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(-4px);opacity:.9}}
#MCR-DRAWER.open .mcrd-hint{opacity:0;pointer-events:none}

/* ═══ SCROLL ════════════════════════════ */
.mcrd-scroll{
  position:relative;z-index:20;
  height:calc(92vh - 68px);
  overflow-y:auto;overflow-x:hidden;
  padding:8px 16px 80px;
  overscroll-behavior:contain;
  scrollbar-width:none;
  opacity:0;pointer-events:none;
  transform:translateY(12px);
  transition:opacity .3s .06s,transform .3s .06s;
}
.mcrd-scroll::-webkit-scrollbar{display:none}
#MCR-DRAWER.open .mcrd-scroll{opacity:1;pointer-events:auto;transform:translateY(0)}

/* ── SECTION HEADER ───────────────────── */
.sh{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}
.mcrd-sh-title{font-size:.45rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.24)}
.mcrd-sh-link{font-size:.5rem;font-weight:700;color:rgba(255,255,255,.35);text-decoration:none;transition:color .15s}
.mcrd-sh-link:hover{color:rgba(255,255,255,.7)}

/* ═══ SEARCH ════════════════════════════ */
.mcrd-search-wrap{position:relative;margin-bottom:18px}
.mcrd-search-bar{
  width:100%;height:34px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;color:#fff;
  font-family:'Inter',sans-serif;font-size:.7rem;font-weight:500;
  padding:0 36px 0 34px;outline:none;
  transition:border-color .22s,background .22s,box-shadow .22s;
}
.mcrd-search-bar::placeholder{color:rgba(255,255,255,.22)}
.mcrd-search-bar:focus{
  border-color:rgba(26,86,255,.4);
  background:rgba(26,86,255,.08);
  box-shadow:0 0 0 3px rgba(26,86,255,.1);
}
.mcrd-search-ico{
  position:absolute;left:14px;top:50%;transform:translateY(-50%);
  color:rgba(255,255,255,.25);pointer-events:none;transition:color .2s;
}
.mcrd-search-wrap:focus-within .mcrd-search-ico{color:rgba(26,86,255,.7)}
.mcrd-search-clear{
  position:absolute;right:11px;top:50%;transform:translateY(-50%);
  width:28px;height:28px;border-radius:7px;
  background:rgba(255,255,255,.07);border:none;
  color:rgba(255,255,255,.4);cursor:pointer;
  display:none;align-items:center;justify-content:center;
  font-size:.8rem;transition:background .15s,color .15s;
}
.mcrd-search-clear.show{display:flex}
.mcrd-search-clear:hover{background:rgba(255,255,255,.12);color:#fff}

/* Search results overlay */
#SEARCH-PANEL{
  position:absolute;top:42px;left:0;right:0;
  background:rgba(8,8,12,.98);
  border:1px solid rgba(255,255,255,.09);
  border-radius:16px;
  z-index:50;overflow:hidden;
  display:none;
  box-shadow:0 16px 48px rgba(0,0,0,.6);
  max-height:360px;overflow-y:auto;scrollbar-width:none;
}
#SEARCH-PANEL::-webkit-scrollbar{display:none}
#SEARCH-PANEL.show{display:block;animation:panel-in .18s ease}
@keyframes panel-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}

.sp-section{padding:8px 0 4px}
.sp-section-title{
  font-size:.42rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.22);padding:0 14px 6px;
}
.sp-row{
  display:flex;align-items:center;gap:11px;
  padding:9px 14px;cursor:pointer;
  transition:background .12s;text-decoration:none;color:#fff;
}
.sp-row:hover{background:rgba(255,255,255,.05)}
.sp-type-ico{
  width:32px;height:32px;border-radius:9px;
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;font-size:.75rem;
}
.sp-body{flex:1;min-width:0}
.sp-title{
  font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.65rem;
  color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.sp-sub{font-size:.48rem;color:rgba(255,255,255,.35);margin-top:1px}
.sp-cat{
  font-size:.4rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
  padding:2px 7px;border-radius:4px;flex-shrink:0;
  background:rgba(255,255,255,.07);color:rgba(255,255,255,.5);
}
.sp-divider{height:1px;background:rgba(255,255,255,.05);margin:4px 14px}
.sp-no-results{
  padding:28px;text-align:center;
  font-size:.65rem;color:rgba(255,255,255,.28);
}
.sp-recent-clear{
  font-size:.48rem;font-weight:600;color:rgba(26,86,255,.7);
  padding:4px 14px 10px;cursor:pointer;display:block;
  transition:color .15s;text-decoration:none;
}
.sp-recent-clear:hover{color:#1A56FF}

/* ═══ STATS ═════════════════════════════ */
.mcrd-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:18px}
a.mcrd-stat{text-decoration:none;color:inherit}
.mcrd-stat{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:12px;padding:11px 4px 8px;position:relative;overflow:hidden;cursor:pointer;
  transition:background .15s;
}
.mcrd-stat:hover{background:rgba(255,255,255,.07)}
.mcrd-stat::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--c,transparent);opacity:.7;
  border-radius:12px 12px 0 0;
}
.mcrd-stat-num{
  font-family:'Inter Tight',sans-serif;font-weight:900;
  font-size:1.05rem;color:#fff;line-height:1;
}
.mcrd-stat-lbl{font-size:.4rem;font-weight:600;color:rgba(255,255,255,.22);letter-spacing:.05em;text-transform:uppercase}

/* ═══ CHIPS ═════════════════════════════ */
.mcrd-chips{
  display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;
  padding-bottom:2px;margin-bottom:20px;
}
.mcrd-chips::-webkit-scrollbar{display:none}
.mcrd-chip{
  display:inline-flex;align-items:center;gap:5px;flex-shrink:0;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:100px;padding:7px 13px;
  font-size:.56rem;font-weight:700;color:rgba(255,255,255,.5);
  cursor:pointer;text-decoration:none;white-space:nowrap;
  transition:background .15s,color .15s,border-color .15s,transform .1s;
}
.mcrd-chip.active{
  background:rgba(26,86,255,.14);border-color:rgba(26,86,255,.38);color:#fff;
}
.mcrd-chip:hover{background:rgba(255,255,255,.08);color:#fff}
.mcrd-chip:active{transform:scale(.95)}
.mcrd-chip-dot{width:5px;height:5px;border-radius:50%;background:var(--cd,#fff);flex-shrink:0}

@keyframes live-p{0%,100%{box-shadow:0 0 0 2px rgba(232,0,42,.25)}50%{box-shadow:0 0 0 5px rgba(232,0,42,.07)}}

/* ═══ EXPLORE GRID ══════════════════════ */
.mcrd-explore{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:22px}
.mcrd-cat{
  position:relative;height:74px;border-radius:14px;padding:10px 12px 9px 15px;
  display:flex;flex-direction:column;justify-content:space-between;
  overflow:hidden;cursor:pointer;text-decoration:none;color:#fff;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.07);
  border-left:3px solid var(--c);
  transition:background .2s,transform .18s;
  -webkit-tap-highlight-color:transparent;
}
.mcrd-cat:hover,.mcrd-cat:active{background:rgba(255,255,255,.065);transform:translateX(2px)}
.mcrd-cat-tint{
  position:absolute;bottom:-18px;right:-18px;width:90px;height:90px;border-radius:50%;
  background:var(--c);opacity:.09;pointer-events:none;transition:opacity .2s;
}
.mcrd-cat:hover .mcrd-cat-tint{opacity:.18}
.mcrd-cat-head{display:flex;align-items:center;justify-content:space-between}
.mcrd-cat-ico{color:var(--c);opacity:.85;flex-shrink:0}
.mcrd-cat-ico svg{display:block}
.mcrd-cat-badge{
  font-size:.38rem;font-weight:900;letter-spacing:.04em;
  padding:2px 7px;border-radius:100px;
  background:var(--c);color:#fff;line-height:1.4;
}
.mcrd-cat-name{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.74rem;color:#fff;letter-spacing:-.01em}
.mcrd-cat-sub{font-size:.43rem;color:rgba(255,255,255,.3);margin-top:1px}

/* ═══ CITY TOOLS COMPACT ════════════════ */
.mcrd-tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:22px}
.mcrd-tool-mini{
  display:flex;flex-direction:column;align-items:center;gap:7px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:14px;padding:13px 8px 11px;
  cursor:pointer;text-decoration:none;color:#fff;position:relative;overflow:hidden;
  transition:background .18s,transform .18s;-webkit-tap-highlight-color:transparent;
}
.mcrd-tool-mini:hover{background:rgba(255,255,255,.07);transform:translateY(-1px)}
.mcrd-tool-mini.soon{opacity:.55}
.mcrd-tool-mini-ico{
  width:36px;height:36px;border-radius:11px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
}
.mcrd-tool-mini-name{
  font-family:'Inter Tight',sans-serif;font-weight:800;
  font-size:.57rem;color:rgba(255,255,255,.7);
  text-align:center;line-height:1.2;letter-spacing:-.01em;
}
.mcrd-tool-mini.soon .mcrd-tool-mini-name{color:rgba(255,255,255,.35)}
.mcrd-tool-chip{
  position:absolute;top:6px;right:6px;
  font-size:.34rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;
  padding:1px 5px;border-radius:4px;
}
.mcrd-chip-ai{color:#8b5cf6;background:rgba(139,92,246,.15);border:1px solid rgba(139,92,246,.25)}
.mcrd-chip-live{color:#00d26a;background:rgba(0,210,106,.1);border:1px solid rgba(0,210,106,.2)}
.mcrd-chip-soon{color:rgba(255,255,255,.28);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.mcrd-chip-new{color:#1A56FF;background:rgba(26,86,255,.12);border:1px solid rgba(26,86,255,.2)}

/* ═══ WOT CARDS ═════════════════════════ */
.mcrd-wot-title{display:flex;align-items:center;gap:8px;font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.78rem}
.mcrd-live-dot{width:7px;height:7px;border-radius:50%;background:#e8002a;flex-shrink:0;box-shadow:0 0 0 3px rgba(232,0,42,.2);animation:live-p 1.6s ease infinite}
.mcrd-wot-count{font-size:.5rem;font-weight:700;color:rgba(255,255,255,.5);background:rgba(255,255,255,.07);border-radius:100px;padding:2px 9px}
.mcrd-wot-scroll{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;margin-bottom:22px}
.mcrd-wot-scroll::-webkit-scrollbar{display:none}
.mcrd-wot-card{
  flex-shrink:0;width:154px;height:96px;border-radius:14px;
  position:relative;overflow:hidden;cursor:pointer;text-decoration:none;
  border:1px solid rgba(255,255,255,.07);transition:transform .2s;
}
.mcrd-wot-card:active{transform:scale(.97)}
.mcrd-wot-ci{position:absolute;inset:0;background:center/cover no-repeat;transition:transform .4s}
.mcrd-wot-card:hover .mcrd-wot-ci{transform:scale(1.06)}
.mcrd-wot-cs{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,transparent 55%)}
.mcrd-wot-cb{position:absolute;bottom:0;left:0;right:0;padding:8px 9px}
.mcrd-wot-ct{display:inline-block;font-size:.37rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--c,#333);border-radius:4px;padding:2px 6px;margin-bottom:4px}
.mcrd-wot-cn{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.59rem;color:#fff;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mcrd-wot-cm{font-size:.46rem;color:rgba(255,255,255,.4);margin-top:2px}

/* ═══ SCORES ════════════════════════════ */
.scores-row{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;margin-bottom:22px}
.scores-row::-webkit-scrollbar{display:none}
.score-card{
  flex-shrink:0;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:12px;padding:10px 12px;min-width:132px;
  cursor:pointer;text-decoration:none;color:#fff;transition:background .15s;
}
.score-card:hover{background:rgba(255,255,255,.07)}
.score-comp{
  font-size:.39rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(255,255,255,.28);margin-bottom:7px;display:flex;align-items:center;gap:4px;
}
.sc-live-dot{width:5px;height:5px;border-radius:50%;background:#e8002a;animation:live-p 1.6s ease infinite}
.score-teams{display:flex;flex-direction:column;gap:5px}
.score-team{display:flex;align-items:center;gap:7px}
.sc-badge{
  width:18px;height:18px;border-radius:4px;
  display:flex;align-items:center;justify-content:center;
  font-size:.42rem;font-weight:900;flex-shrink:0;
  border:1px solid rgba(255,255,255,.08);
}
.score-name{flex:1;font-size:.55rem;font-weight:700;color:rgba(255,255,255,.75)}
.score-num{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.75rem;color:#fff;min-width:12px;text-align:right}
.score-team.winner .score-name{color:#fff}

/* ═══ STORIES ═══════════════════════════ */
.mcrd-stories{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;margin-bottom:22px}
.mcrd-stories::-webkit-scrollbar{display:none}
.mcrd-story-c{
  flex-shrink:0;width:132px;height:86px;border-radius:13px;
  position:relative;overflow:hidden;cursor:pointer;text-decoration:none;
  border:1px solid rgba(255,255,255,.07);transition:transform .2s;
}
.mcrd-story-c:active{transform:scale(.97)}
.mcrd-story-i{position:absolute;inset:0;background:center/cover no-repeat;filter:saturate(.75) brightness(.7);transition:transform .4s}
.mcrd-story-c:hover .mcrd-story-i{transform:scale(1.07)}
.mcrd-story-s{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.2) 55%,transparent 100%)}
.mcrd-story-cat{position:absolute;top:7px;left:8px;font-size:.36rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--c,#fff)}
.mcrd-story-t{position:absolute;bottom:0;left:0;right:0;padding:7px 8px;font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.54rem;color:#fff;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ═══ VENUES LIST ═══════════════════════ */
.mcrd-venues{display:flex;flex-direction:column;gap:6px;margin-bottom:22px}
.mcrd-venue-row{
  display:flex;align-items:center;gap:12px;padding:11px 13px 11px 0;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
  border-radius:14px;cursor:pointer;text-decoration:none;color:#fff;
  transition:background .18s,border-color .18s,transform .18s;
  position:relative;overflow:hidden;
}
.mcrd-venue-row:hover{background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.14);transform:translateX(2px)}
/* Left accent bar - thicker, more prominent */
.mcrd-venue-row::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--c,transparent);
  border-radius:0 2px 2px 0;
}
.mcrd-vr-rank{
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.6rem;
  color:rgba(255,255,255,.15);width:28px;flex-shrink:0;
  text-align:center;letter-spacing:-.02em;
}
.mcrd-vr-thumb{
  width:42px;height:42px;border-radius:11px;flex-shrink:0;
  background:center/cover no-repeat rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.07);
  display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;
}
.mcrd-vr-body{flex:1;min-width:0}
.mcrd-vr-name{
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.7rem;
  color:#fff;letter-spacing:-.01em;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  margin-bottom:3px;
}
.mcrd-vr-row2{display:flex;align-items:center;gap:6px}
.mcrd-vr-meta{font-size:.47rem;color:rgba(255,255,255,.3);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mcrd-vr-stat{
  display:inline-flex;align-items:center;gap:3px;
  font-size:.42rem;font-weight:600;color:rgba(255,255,255,.35);
  flex-shrink:0;
}
.mcrd-vr-stat-dot{width:4px;height:4px;border-radius:50%;background:#00d26a;animation:live-p 2s ease infinite}
/* Right side */
.mcrd-vr-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}
.mcrd-vr-badge{
  display:inline-flex;align-items:center;gap:4px;
  font-size:.38rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  padding:3px 8px;border-radius:6px;
  color:var(--orange);background:rgba(255,102,0,.1);border:1px solid rgba(255,102,0,.2);
}
/* Trending arrow */
.mcrd-vr-badge svg{flex-shrink:0}
.mcrd-vr-checkins{font-size:.42rem;color:rgba(255,255,255,.25);text-align:right}

/* ═══ WEEKEND GRID ══════════════════════ */
.mcrd-weekend{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:22px}
.mcrd-wknd-card{
  position:relative;border-radius:14px;overflow:hidden;cursor:pointer;
  text-decoration:none;border:1px solid rgba(255,255,255,.07);
  height:102px;transition:transform .2s;
}
.mcrd-wknd-card:active{transform:scale(.97)}
.mcrd-wknd-i{position:absolute;inset:0;background:center/cover no-repeat;filter:saturate(.7) brightness(.6);transition:transform .4s}
.mcrd-wknd-card:hover .mcrd-wknd-i{transform:scale(1.06)}
.mcrd-wknd-s{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,transparent 55%)}
.mcrd-wknd-b{position:absolute;bottom:0;left:0;right:0;padding:9px 10px}
.mcrd-wknd-day{font-size:.37rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c,rgba(255,255,255,.5));margin-bottom:3px}
.mcrd-wknd-t{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.6rem;color:#fff;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mcrd-wknd-v{font-size:.43rem;color:rgba(255,255,255,.35);margin-top:2px}

/* ═══ HOODS ═════════════════════════════ */
.mcrd-hoods{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:80px 80px;gap:7px;margin-bottom:24px}
.mcrd-hood{
  position:relative;border-radius:14px;overflow:hidden;
  cursor:pointer;text-decoration:none;border:1px solid rgba(255,255,255,.07);transition:transform .2s;
}
.mcrd-hood:active{transform:scale(.97)}
.mcrd-hood:first-child{grid-row:span 2}
.mcrd-hood-bg{position:absolute;inset:0;background:center/cover no-repeat;filter:saturate(.6) brightness(.6);transition:transform .4s,filter .4s}
.mcrd-hood:hover .mcrd-hood-bg{transform:scale(1.06);filter:saturate(.85) brightness(.75)}
.mcrd-hood-s{position:absolute;inset:0;background:linear-gradient(135deg,transparent 30%,rgba(0,0,0,.5) 100%),linear-gradient(to top,rgba(0,0,0,.88) 0%,transparent 55%)}
.mcrd-hood-bar{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--hc);opacity:.7;transform:scaleY(0);transform-origin:bottom;transition:transform .3s cubic-bezier(.22,1,.36,1)}
.mcrd-hood:hover .mcrd-hood-bar{transform:scaleY(1)}
.mcrd-hood-nm{position:absolute;bottom:10px;left:14px;right:8px;font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.63rem;color:#fff;line-height:1.2}
.mcrd-hood-sub{font-family:'Inter',sans-serif;font-weight:500;font-size:.42rem;color:rgba(255,255,255,.34);display:block;margin-top:1px}

/* ═══ NEWSLETTER ════════════════════════ */
.nl{background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:15px;margin-bottom:24px}
.mcrd-nl-title{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.8rem;margin-bottom:3px}
.mcrd-nl-sub{font-size:.53rem;color:rgba(255,255,255,.5);margin-bottom:11px}
.mcrd-nl-form{display:flex;gap:6px}
.mcrd-nl-input{flex:1;height:36px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-size:.67rem;padding:0 12px;outline:none;font-family:'Inter',sans-serif}
.mcrd-nl-input::placeholder{color:rgba(255,255,255,.22)}
.mcrd-nl-btn{height:36px;padding:0 14px;background:#1A56FF;border:none;border-radius:10px;color:#fff;font-size:.63rem;font-weight:800;cursor:pointer;white-space:nowrap;transition:background .15s,transform .15s}
.mcrd-nl-btn:hover{background:#1449e0;transform:scale(.98)}

/* ═══ EXPLORE HEAD ══════════════════════ */
.mcrd-explore-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}
.mcrd-explore-title{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.95rem;color:#fff;letter-spacing:-.02em;line-height:1}
.mcrd-explore-sub{font-size:.43rem;color:rgba(255,255,255,.28);margin-top:3px;letter-spacing:.04em}

/* ═══ CITY TOOLS BADGE ══════════════════ */
.mcrd-tools-badge{
  font-size:.34rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;
  padding:2px 7px;border-radius:5px;
  color:rgba(255,255,255,.35);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);
}

/* ═══ SLIDE-IN ANIMATIONS ═══════════════ */
#MCR-DRAWER.open .mcrd-search-wrap,
#MCR-DRAWER.open .mcrd-stats,
#MCR-DRAWER.open .mcrd-chips,
#MCR-DRAWER.open .mcrd-explore,
#MCR-DRAWER.open .mcrd-tools-grid,
#MCR-DRAWER.open .mcrd-wot-scroll,
#MCR-DRAWER.open .scores-row,
#MCR-DRAWER.open .mcrd-stories,
#MCR-DRAWER.open .mcrd-venues,
#MCR-DRAWER.open .mcrd-weekend,
#MCR-DRAWER.open .mcrd-hoods,
#MCR-DRAWER.open .nl{animation:slide-up .35s cubic-bezier(.22,1,.36,1) both}

#MCR-DRAWER.open .mcrd-stats        {animation-delay:.03s}
#MCR-DRAWER.open .mcrd-chips        {animation-delay:.06s}
#MCR-DRAWER.open .mcrd-explore      {animation-delay:.09s}
#MCR-DRAWER.open .mcrd-weekend   {animation-delay:.12s}
#MCR-DRAWER.open .mcrd-wot-scroll     {animation-delay:.15s}
#MCR-DRAWER.open .scores-row     {animation-delay:.18s}
#MCR-DRAWER.open .mcrd-stories    {animation-delay:.21s}
#MCR-DRAWER.open .mcrd-venues    {animation-delay:.24s}
#MCR-DRAWER.open .mcrd-tools-grid     {animation-delay:.27s}
#MCR-DRAWER.open .mcrd-hoods     {animation-delay:.30s}
#MCR-DRAWER.open .nl             {animation-delay:.33s}

@keyframes slide-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
/* ── section header row ── */
.mcrd-sh{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 8px;gap:8px}
/* ── wot header row ── */
.mcrd-wot-hd{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 8px}
/* ── nl container ── */
.mcrd-nl{padding:18px;margin:12px 16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px}

/* ── Peek search - always visible ── */
.mcrd-peek-search{
  position:relative;z-index:20;
  padding:6px 20px 10px;
}
.mcrd-peek-search .mcrd-search-bar{
  width:100%;height:34px;
  border-radius:10px;padding:0 12px 0 32px;
  background:#000;
  border:1px solid rgba(255,255,255,.5);
  color:#fff;font-size:.62rem;font-family:inherit;
  outline:none;transition:border-color .2s,background .2s;
}
.mcrd-peek-search .mcrd-search-bar:focus{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.8);
}

.mcrd-peek-search .mcrd-search-bar::placeholder{color:rgba(255,255,255,.45)}
.mcrd-peek-search .mcrd-search-bar::-webkit-input-placeholder{color:rgba(255,255,255,.45)}

.mcrd-peek-search .mcrd-search-ico{
  position:absolute;left:28px;top:50%;transform:translateY(-50%);
  font-size:.48rem;color:rgba(255,255,255,.4);pointer-events:none;
}

/* ── Mobile: show drawer, hide tab bar ── */
@media(max-width:900px){
  #MCR-DRAWER,#MCR-DRAWER-BD{display:block}
  #WRAP{padding-bottom:48px!important}
  #MOB-TABS{display:none!important}
}

/* ── RGB colour lines - top nav + bottom drawer tab ── */
#MOB-HEADER { position:relative !important; }
#MOB-HEADER::after {
  content:"" !important;display:block !important;
  position:absolute !important;bottom:0 !important;left:0 !important;right:0 !important;
  height:2px !important;z-index:10 !important;
  background:linear-gradient(90deg,#e8002a 0%,#ff6600 20%,#ffd200 38%,#00d26a 55%,#1A56FF 75%,#8b5cf6 100%) !important;
  opacity:.8 !important;
}

/* ═══════════════════════════════════════════════════════════════════════
   MOBILE HOMEPAGE FIXES - v9.91
══════════════════════════════════════════════════════════════════════ */
@media(max-width:900px){

  /* 1. Homepage video slider hero - FULLY REMOVED on mobile. Targets ONLY
     .hero-slider (the YouTube video carousel on homepage), not other page
     heroes. Belt + braces: display:none plus zeroed dimensions/spacing so
     margin-collapse cannot leave a gap at the top of the page. */
  section.HERO.hero-slider,
  main.CENTRE > section.HERO.hero-slider,
  body.home section.HERO.hero-slider,
  body.home .vs-track,
  body.home #vs-track {
    display:none !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    visibility:hidden !important;
  }

  /* Neutralise .CENTRE's 28px top padding on mobile homepage so the WOT
     section flows directly under the mobile header with no dead space. */
  body.home main.CENTRE {
    padding-top:0 !important;
  }

  /* RGB line under mobile nav is handled by the drawer v5a #MOB-HEADER::after
     rule above - duplicate 3-colour rule removed to prevent stacked lines. */
}

/* 5. Cookie consent - ultra minimal */
#cookie-law-info-bar,
.cookie-notice-container,
.cc-window,
.cc-banner,
[id*="cookie-law"],
[class*="cookie-notice"],
[class*="cookie-consent"],
[id*="cookie_notice"],
.wp-gdpr-cookie-notice {
  background:rgba(8,8,10,.92) !important;
  border:none !important;
  border-top:1px solid rgba(255,255,255,.06) !important;
  box-shadow:none !important;
  padding:8px 16px !important;
  font-size:.5rem !important;
  color:rgba(255,255,255,.35) !important;
  border-radius:0 !important;
}
#cookie-law-info-bar a,
.cookie-notice-container a,
.cc-window a,
[class*="cookie-notice"] a,
[class*="cookie-consent"] a {
  color:rgba(255,255,255,.4) !important;
  font-size:.5rem !important;
}
#cookie-law-info-bar .medium,
#cookie-law-info-bar button,
#cookie-law-info-bar .btn,
.cookie-notice-container button,
.cookie-notice-container .btn,
.cc-btn,
[class*="cookie-notice"] button,
[class*="cookie-consent"] button {
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  color:rgba(255,255,255,.5) !important;
  font-size:.48rem !important;
  font-weight:600 !important;
  padding:4px 10px !important;
  border-radius:4px !important;
  box-shadow:none !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}

/* ══════════════════════════════════════════════════════════════
   HERO - 6 CATEGORY SLIDES
══════════════════════════════════════════════════════════════ */
.vs-cat-link {
  position:absolute; inset:0; z-index:5;
  display:flex; align-items:flex-end; justify-content:flex-start;
  padding:10px 14px; text-decoration:none;
}
.vs-cat-badge {
  display:inline-flex; align-items:center; gap:5px;
  padding:5px 12px; border-radius:20px;
  background:rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.15);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  font-size:.52rem; font-weight:800;
  color:#fff; letter-spacing:.06em;
  text-transform:uppercase;
  box-shadow:0 2px 10px rgba(0,0,0,.4);
}
.vs-cat-badge-dot {
  width:6px; height:6px; border-radius:50%;
  background:var(--cc,#fff); flex-shrink:0;
}

/* ══════════════════════════════════════════════════════════════
   WOT REDESIGN - v5  Premium dark glass
══════════════════════════════════════════════════════════════ */

/* Section */
section.WOT { background:#000 !important; border-bottom:1px solid rgba(255,255,255,.06) !important; }

/* Mini label */
.wot-mini-label {
  display:flex; align-items:center; gap:8px;
  padding:14px 18px 0;
}
.wot-mini-tonight {
  font-size:.42rem; font-weight:800; letter-spacing:.22em;
  text-transform:uppercase; white-space:nowrap;
  color:#fff;
}
.wot-mini-line {
  flex:1; height:1px;
  background:linear-gradient(90deg,rgba(255,255,255,.08),transparent);
}
.wot-mini-live {
  display:flex; align-items:center; gap:4px;
  font-size:.42rem; font-weight:800; letter-spacing:.14em;
  color:rgba(232,32,26,.75); text-transform:uppercase;
  white-space:nowrap;
}
.wot-mini-dot {
  width:4px; height:4px; border-radius:50%;
  background:#e8201a; display:inline-block;
  animation:wot-blink 1.6s ease-in-out infinite;
}

/* ── Segmented Dark/Light switch for WOT ─────────────────── */
.wot-mode-switch {
  display:inline-flex; align-items:center;
  margin-left:auto; padding:3px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px; gap:2px;
  flex-shrink:0;
}
.wot-mode-opt {
  display:inline-flex; align-items:center; gap:6px;
  padding:5px 11px; border:0; background:transparent;
  color:rgba(255,255,255,.58); cursor:pointer;
  border-radius:999px; font-size:.7rem; font-weight:700;
  letter-spacing:.02em; text-transform:uppercase;
  line-height:1; transition:background .18s ease, color .18s ease, box-shadow .18s ease;
}
.wot-mode-opt i { font-size:.72rem; }
.wot-mode-opt:hover { color:#fff; }
.wot-mode-opt.is-on {
  background:#fff; color:#0c0c0e;
  box-shadow:0 1px 4px rgba(0,0,0,.25);
}
.wot-light .wot-mode-switch {
  background:rgba(0,0,0,.05); border-color:rgba(0,0,0,.12);
}
.wot-light .wot-mode-opt { color:rgba(0,0,0,.55); }
.wot-light .wot-mode-opt:hover { color:#0c0c0e; }
.wot-light .wot-mode-opt.is-on {
  background:#0c0c0e; color:#fff; box-shadow:0 1px 4px rgba(0,0,0,.18);
}

/* ── Legacy single-button toggle (kept harmless for cached markup) ── */
.wot-mode-btn {
  width:28px; height:28px; border-radius:50%;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.6);
  font-size:.55rem;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; transition:all .2s ease;
  flex-shrink:0; margin-left:4px;
}
.wot-mode-btn:hover { background:rgba(255,255,255,.15); color:#fff; }
.wot-light .wot-mode-btn {
  border-color:rgba(0,0,0,.12);
  background:rgba(0,0,0,.05);
  color:rgba(0,0,0,.5);
}
.wot-light .wot-mode-btn:hover { background:rgba(0,0,0,.1); color:#0c0c0e; }

/* ══ WOT LIGHT MODE ══════════════════════════════════════════ */
.WOT.wot-light { background:#ffffff !important; }

/* Mini label */
.wot-light .wot-mini-tonight { color:#0c0c0e !important; }
.wot-light .wot-mini-line { background:linear-gradient(90deg,rgba(0,0,0,.1),transparent) !important; }

/* Day strip */
.wot-light .wot-wday { background:#fff !important; border:1px solid rgba(0,0,0,.1) !important; box-shadow:0 1px 2px rgba(0,0,0,.04) !important; }
.wot-light .wot-wday:hover { background:#fafafa !important; border-color:rgba(0,0,0,.18) !important; }
.wot-light .wot-wday-dn { color:rgba(0,0,0,.5) !important; font-weight:700 !important; }
.wot-light .wot-wday-num { color:#0c0c0e !important; font-weight:800 !important; }
.wot-light .wot-wday.active { background:#E8201A !important; border-color:#E8201A !important; box-shadow:0 4px 12px rgba(232,32,26,.3) !important; }
.wot-light .wot-wday.active .wot-wday-dn { color:rgba(255,255,255,.9) !important; }
.wot-light .wot-wday.active .wot-wday-num { color:#fff !important; }

/* Filter bar - stronger pills for light mode */
.wot-light .wot-filterbar { border-bottom:1px solid rgba(0,0,0,.08) !important; background:#fafafa !important; }

/* WOT light-mode event pills - fix white-on-white bug on homepage.
   In dark mode pill titles are forced white (#fff) and the coloured bg uses 15% opacity.
   On light bg that renders as invisible ghost pills. Scope a proper light treatment. */
.wot-light .wot-tg { background:#ffffff !important; }
.wot-light .wot-tg-row { border-bottom:1px solid rgba(0,0,0,.06) !important; }
.wot-light .wot-tg-time { color:rgba(0,0,0,.55) !important; font-weight:700 !important; }
.wot-light .wot-tg-row.wot-past { opacity:.42 !important; }
.wot-light .wot-tg-row.wot-past .wot-tg-time { color:rgba(0,0,0,.3) !important; }
/* Light mode pills: SOLID category colour, white text - readable + on-brand */
.wot-light .wot-ev-pill {
  background:var(--ec,#666) !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.08) !important;
}
.wot-light .wot-ev-pill::before { opacity:0 !important; }
.wot-light .wot-ev-pill:hover { box-shadow:0 4px 14px rgba(0,0,0,.18) !important; filter:brightness(1.08); }
.wot-light .wot-ev-pill:hover::before { opacity:0 !important; }
.wot-light .wot-ep-title { color:#ffffff !important; text-shadow:0 1px 2px rgba(0,0,0,.15); }
.wot-light .wot-ep-venue { color:rgba(255,255,255,.88) !important; }
.wot-light .wot-ep-time { color:rgba(255,255,255,.95) !important; font-weight:700 !important; }
.wot-light .wot-ep-cat { color:rgba(255,255,255,.95) !important; }
/* No left stripe needed - pill IS the colour now */
.wot-light .wot-ev-pill { border-left:none !important; }

/* same fix for the site-wide .CENTRE.white-bg context in case .wot-light class isn't added */
.CENTRE.white-bg .wot-ep-title { color:#0c0c0e !important; }
.CENTRE.white-bg .wot-ev-pill {
  background:#ffffff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-left:3px solid var(--ec,#888) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.06) !important;
}
.CENTRE.white-bg .wot-ev-pill::before { opacity:.10 !important; }
.CENTRE.white-bg .wot-tg-time { color:rgba(0,0,0,.55) !important; font-weight:700 !important; }
.wot-light .wot-flt { background:#fff !important; color:rgba(0,0,0,.65) !important; border:1px solid rgba(0,0,0,.1) !important; box-shadow:0 1px 2px rgba(0,0,0,.04) !important; font-weight:700 !important; }
.wot-light .wot-flt[data-cat="all"] { background:#fff !important; color:#0c0c0e !important; }
.wot-light .wot-flt[data-cat="all"].on { background:#0c0c0e !important; color:#fff !important; border-color:#0c0c0e !important; }
.wot-light .wot-flt[data-cat="music"] { color:#E8201A !important; border-color:rgba(232,32,26,.2) !important; }
.wot-light .wot-flt[data-cat="music"].on { background:#E8201A !important; color:#fff !important; border-color:#E8201A !important; }
.wot-light .wot-flt[data-cat="sport"] { color:#1A56FF !important; border-color:rgba(26,86,255,.2) !important; }
.wot-light .wot-flt[data-cat="sport"].on { background:#1A56FF !important; color:#fff !important; border-color:#1A56FF !important; }
.wot-light .wot-flt[data-cat="food"] { color:#1e8a37 !important; border-color:rgba(45,181,75,.2) !important; }
.wot-light .wot-flt[data-cat="food"].on { background:#2DB54B !important; color:#fff !important; border-color:#2DB54B !important; }
.wot-light .wot-flt[data-cat="nightlife"] { color:#cc5500 !important; border-color:rgba(255,107,0,.2) !important; }
.wot-light .wot-flt[data-cat="nightlife"].on { background:#FF6B00 !important; color:#fff !important; border-color:#FF6B00 !important; }
.wot-light .wot-flt[data-cat="culture"] { color:#6a2ec7 !important; border-color:rgba(124,58,237,.2) !important; }
.wot-light .wot-flt[data-cat="culture"].on { background:#7C3AED !important; color:#fff !important; border-color:#7C3AED !important; }

/* Time grid - the big swap */
.wot-light .wot-tg { background:#ffffff !important; }
.wot-light .wot-tg-row { border-bottom-color:rgba(0,0,0,.06) !important; }
.wot-light .wot-tg-time { color:rgba(0,0,0,.4) !important; }
.wot-light .wot-tg-ev-row { border-left-color:rgba(0,0,0,.08) !important; }

/* Event pills on white - FLAT MODERN (Notion/Spotify aesthetic) */
.wot-light .wot-ev-pill {
  background:var(--ec,#666) !important;
  background-image:none !important;
  border:none !important;
  border-radius:8px !important;
  box-shadow:0 1px 2px rgba(0,0,0,.06) !important;
  position:relative !important;
  overflow:hidden !important;
  transition:transform .15s ease, box-shadow .15s ease !important;
}
.wot-light .wot-ev-pill::before { display:none !important; }
.wot-light /* WOT V19: old .wot-ev-pill::after display:none removed */

.wot-light .wot-ev-pill:hover {
  transform:translateY(-1px) !important;
  box-shadow:0 2px 6px rgba(0,0,0,.1) !important;
}

.wot-light .wot-ev-pill.active {
  box-shadow:0 0 0 2px #fff, 0 0 0 3px var(--ec,#666), 0 2px 6px rgba(0,0,0,.1) !important;
}

/* Text - crisp white, clean hierarchy */
.wot-light .wot-ep-title {
  color:#ffffff !important;
  font-weight:600 !important;
  letter-spacing:-.01em !important;
  text-shadow:none !important;
}
.wot-light .wot-ep-sub,
.wot-light .wot-ep-venue {
  color:rgba(255,255,255,.75) !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  text-shadow:none !important;
}
.wot-light .wot-ep-time {
  color:#ffffff !important;
  font-weight:600 !important;
  text-shadow:none !important;
}
.wot-light .wot-ep-cat {
  color:rgba(255,255,255,.85) !important;
  font-weight:600 !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
  font-size:.58rem !important;
  text-shadow:none !important;
}

/* Expand drawer */
.wot-light .wot-expand { border-bottom-color:rgba(0,0,0,.08) !important; }
.wot-light .wot-expand-inner { background:linear-gradient(135deg,#f8f8fa,#fff) !important; }
.wot-light .wot-expand-title { color:#0c0c0e !important; }
.wot-light .wot-expand-meta { color:rgba(0,0,0,.5) !important; }
.wot-light .wot-expand-desc { color:rgba(0,0,0,.6) !important; }

/* Time state overrides */
.wot-light .wot-tg-row.wot-now .wot-tg-time { color:#0c0c0e !important; text-shadow:none !important; }
.wot-light .wot-tg-row.wot-past .wot-tg-time { color:rgba(0,0,0,.2) !important; }
.wot-light .wot-tg-row.wot-near-past .wot-tg-time { color:rgba(0,0,0,.25) !important; }
.wot-light .wot-tg-row.wot-near-future .wot-tg-time { color:rgba(0,0,0,.4) !important; }
.wot-light .wot-tg-row:not(.wot-past):hover { background:rgba(0,0,0,.02) !important; }

/* Now-line glow */
.wot-light .wot-tg-row.wot-now::after { background:linear-gradient(90deg,#E8201A,transparent) !important; opacity:.15 !important; }

/* Scrollbar */
.wot-light .wot-tg::-webkit-scrollbar-thumb { background:rgba(0,0,0,.12) !important; }
.wot-light .wot-tg { scrollbar-color:rgba(0,0,0,.1) transparent !important; }

/* Empty state */
.wot-light .wot-tg-empty i { color:rgba(0,0,0,.1) !important; }
.wot-light .wot-tg-empty div { color:rgba(0,0,0,.35) !important; }

/* Nav bar */
.wot-light .wot-nav-bar { border-top-color:rgba(0,0,0,.08) !important; }

/* ── Mobile: bigger tap target ─────────────────────────────── */
@media(max-width:600px){
  .wot-mode-btn { width:32px; height:32px; font-size:.6rem; }
}

/* Day strip */
.wot-week-strip {
  display:flex !important; gap:5px !important;
  padding:10px 18px 8px !important;
  overflow-x:auto !important; scrollbar-width:none !important;
  flex-wrap:nowrap !important;
}
.wot-week-strip::-webkit-scrollbar { display:none !important; }
.wot-wday {
  display:flex !important; flex-direction:column !important;
  align-items:center !important; justify-content:center !important;
  gap:1px !important; min-width:44px !important; width:auto !important;
  height:auto !important; padding:7px 4px 8px !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.07) !important;
  cursor:pointer !important; flex-shrink:0 !important;
}
.wot-wday-dn { font-size:.37rem !important; font-weight:700 !important; letter-spacing:.1em !important; color:rgba(255,255,255,.28) !important; text-transform:uppercase !important; }
.wot-wday-num { font-size:.88rem !important; font-weight:800 !important; color:rgba(255,255,255,.55) !important; line-height:1.15 !important; }
.wot-wday-dot { display:none !important; }
.wot-wday.active {
  background:linear-gradient(160deg,#ff2d20 0%,#c0100a 100%) !important;
  border-color:rgba(255,60,50,.3) !important;
  box-shadow:0 0 0 1px rgba(255,60,50,.15), 0 6px 22px rgba(220,20,15,.4) !important;
}
.wot-wday.active .wot-wday-dn { color:rgba(255,255,255,.7) !important; }
.wot-wday.active .wot-wday-num { color:#fff !important; }

/* Filter bar */
.wot-filterbar {
  display:flex !important; gap:5px !important;
  padding:8px 16px 10px !important;
  overflow-x:auto !important; scrollbar-width:none !important;
  flex-wrap:nowrap !important; align-items:center !important;
  border-bottom:1px solid rgba(255,255,255,.04) !important;
  background:#000 !important;
}
.wot-filterbar::-webkit-scrollbar { display:none !important; }
.wot-flt {
  display:inline-flex !important; align-items:center !important; gap:4px !important;
  padding:4px 11px !important; border-radius:20px !important;
  background:rgba(255,255,255,.05) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  font-size:.45rem !important; font-weight:800 !important;
  letter-spacing:.07em !important; text-transform:uppercase !important;
  white-space:nowrap !important; flex-shrink:0 !important;
  cursor:pointer !important; color:rgba(255,255,255,.45) !important;
  box-shadow:none !important; transform:none !important;
  transition:all .18s ease !important;
}
.wot-flt:hover { background:rgba(255,255,255,.09) !important; color:rgba(255,255,255,.7) !important; transform:none !important; filter:none !important; }
.wot-flt.on    { transform:none !important; }
.wot-flt-dot   { display:none !important; }
/* inactive - coloured text only */
.wot-flt[data-cat="all"]       { color:rgba(255,255,255,.55) !important; border-color:rgba(255,255,255,.12) !important; }
.wot-flt[data-cat="music"]     { color:rgba(255,59,48,.7) !important;   border-color:rgba(255,59,48,.2) !important; }
.wot-flt[data-cat="sport"]     { color:rgba(59,130,255,.8) !important;  border-color:rgba(59,130,255,.2) !important; }
.wot-flt[data-cat="food"]      { color:rgba(50,215,75,.8) !important;   border-color:rgba(50,215,75,.2) !important; }
.wot-flt[data-cat="nightlife"] { color:rgba(255,159,10,.8) !important;  border-color:rgba(255,159,10,.2) !important; }
.wot-flt[data-cat="culture"]   { color:rgba(191,90,242,.8) !important;  border-color:rgba(191,90,242,.2) !important; }
.wot-flt[data-cat="family"]    { color:rgba(255,214,10,.8) !important;  border-color:rgba(255,214,10,.2) !important; }
/* active - filled */
.wot-flt[data-cat="all"].on       { background:rgba(255,255,255,.12) !important; color:#fff !important; border-color:rgba(255,255,255,.25) !important; }
.wot-flt[data-cat="music"].on     { background:rgba(255,59,48,.15) !important;   color:#ff5040 !important; border-color:rgba(255,59,48,.4) !important; box-shadow:0 0 12px rgba(255,59,48,.15) !important; }
.wot-flt[data-cat="sport"].on     { background:rgba(59,130,255,.15) !important;  color:#6aa3ff !important; border-color:rgba(59,130,255,.4) !important; box-shadow:0 0 12px rgba(59,130,255,.15) !important; }
.wot-flt[data-cat="food"].on      { background:rgba(50,215,75,.12) !important;   color:#4de870 !important; border-color:rgba(50,215,75,.4) !important;  box-shadow:0 0 12px rgba(50,215,75,.12) !important; }
.wot-flt[data-cat="nightlife"].on { background:rgba(255,159,10,.15) !important;  color:#ffb340 !important; border-color:rgba(255,159,10,.4) !important; box-shadow:0 0 12px rgba(255,159,10,.15) !important; }
.wot-flt[data-cat="culture"].on   { background:rgba(191,90,242,.15) !important;  color:#d08af7 !important; border-color:rgba(191,90,242,.4) !important; box-shadow:0 0 12px rgba(191,90,242,.15) !important; }
.wot-flt[data-cat="family"].on    { background:rgba(255,214,10,.12) !important;  color:#ffe040 !important; border-color:rgba(255,214,10,.4) !important;  box-shadow:0 0 12px rgba(255,214,10,.12) !important; }
.wot-full-cal-btn {
  border:1.5px solid rgba(255,255,255,.2) !important;
  color:rgba(255,255,255,.4) !important;
  background:transparent !important;
  padding:5px 13px !important; border-radius:20px !important;
  font-size:.48rem !important; font-weight:800 !important;
  box-shadow:none !important;
}
.wot-full-cal-btn i { display:none !important; }

/* ── V6 Time grid (dark mode only - light mode handled elsewhere) ─── */
.wot-tg { perspective:1200px !important; }
.WOT:not(.wot-light) .wot-tg { background:#000 !important; }
.WOT:not(.wot-light) .wot-tg-row { background:#000 !important; }
.WOT:not(.wot-light) .wot-tg-ev-row { background:#000 !important; }
.WOT:not(.wot-light) .wot-filterbar { background:#000 !important; }

.WOT.wot-light .wot-tg-row { background:#fff !important; }
.WOT.wot-light .wot-tg-ev-row { background:#fff !important; }

/* Time labels - dark mode: white; light mode: dark */
.wot-tg-time { font-weight:600 !important; transition:color .2s ease !important; }
.WOT:not(.wot-light) .wot-tg-time { color:rgba(255,255,255,.45) !important; }
.WOT:not(.wot-light) .wot-tg-row.wot-past .wot-tg-time        { color:rgba(255,255,255,.12) !important; }
.WOT:not(.wot-light) .wot-tg-row.wot-near-past .wot-tg-time   { color:rgba(255,255,255,.2) !important; }
.WOT:not(.wot-light) .wot-tg-row.wot-now .wot-tg-time         { color:#fff !important; font-weight:900 !important; text-shadow:0 0 12px rgba(255,255,255,.4) !important; }
.WOT:not(.wot-light) .wot-tg-row.wot-near-future .wot-tg-time { color:rgba(255,255,255,.45) !important; }
.WOT:not(.wot-light) .wot-tg-row.wot-far-future .wot-tg-time  { color:rgba(255,255,255,.35) !important; }

.WOT.wot-light .wot-tg-time { color:rgba(0,0,0,.55) !important; }
.WOT.wot-light .wot-tg-row.wot-past .wot-tg-time        { color:rgba(0,0,0,.2) !important; }
.WOT.wot-light .wot-tg-row.wot-near-past .wot-tg-time   { color:rgba(0,0,0,.3) !important; }
.WOT.wot-light .wot-tg-row.wot-now .wot-tg-time         { color:#0c0c0e !important; font-weight:900 !important; text-shadow:none !important; }
.WOT.wot-light .wot-tg-row.wot-near-future .wot-tg-time { color:rgba(0,0,0,.5) !important; }
.WOT.wot-light .wot-tg-row.wot-far-future .wot-tg-time  { color:rgba(0,0,0,.4) !important; }

/* Row hover highlight */
.WOT:not(.wot-light) .wot-tg-row:not(.wot-past):hover { background:rgba(255,255,255,.015) !important; }
.WOT.wot-light .wot-tg-row:not(.wot-past):hover { background:rgba(0,0,0,.03) !important; }

/* Past-hour - darker + compressed (desktop: dim, mobile: hide) */
.wot-tg-row.wot-past {
  opacity:.18 !important;
}
.wot-tg-row.wot-past .wot-ev-pill   { transform:none !important; }
.wot-tg-row.wot-near-past { opacity:.35 !important; }
/* Mobile 10PM+ night mode: JS adds .wot-night-mode - hide past rows */
@media(max-width:640px){
  .wot-night-mode .wot-tg-row.wot-past { display:none !important; }
  .wot-night-mode .wot-tg-row.wot-near-past { display:none !important; }
}

/* NOW row - top white line + left vertical accent */
.wot-tg-row.wot-now { position:relative !important; }
/* Top horizontal line */
.wot-tg-row.wot-now::after {
  content:'' !important; position:absolute !important; top:0 !important; left:48px !important; right:0 !important;
  height:1px !important; z-index:2 !important;
  background:linear-gradient(90deg, rgba(255,255,255,.85) 0%, rgba(255,255,255,.5) 55%, rgba(255,255,255,.15) 80%, transparent 100%) !important;
  box-shadow:0 0 14px rgba(255,255,255,.25), 0 0 30px rgba(255,255,255,.1) !important;
}
/* NOW pulsing dot */
.wot-now-dot {
  display:inline-block !important; width:5px !important; height:5px !important;
  background:#fff !important; border-radius:50% !important;
  box-shadow:0 0 8px rgba(255,255,255,.5), 0 0 20px rgba(255,255,255,.2) !important;
  animation:wotPulse 2s ease-in-out infinite !important;
  margin-right:3px !important; vertical-align:middle !important;
}
@keyframes wotPulse {
  0%,100% { opacity:1; transform:scale(1); }
  50%     { opacity:.5; transform:scale(.7); }
}

/* Scroll snap on event row */
.wot-tg-ev-row {
  scroll-snap-type:x proximity !important;
  -webkit-overflow-scrolling:touch !important;
  position:relative !important;
}

/* Scroll fade hint - right edge */
.wot-tg-row.has-ev { position:relative !important; }
.wot-tg-row.has-ev /* WOT V19: old .wot-tg-ev-row::after removed - was hardcoding #000 in light mode */

/* Event count badge */
.wot-ev-count {
  position:absolute !important; right:8px !important; top:50% !important; transform:translateY(-50%) !important;
  font-size:.36rem !important; font-weight:700 !important;
  color:rgba(255,255,255,.12) !important;
  z-index:3 !important; pointer-events:none !important;
}

/* ── Double-layer rows (>7 events) ──────────────────────── */
.wot-tg-row.double-layer .wot-tg-ev-row {
  flex-wrap:wrap !important;
  overflow-x:hidden !important;
  overflow-y:hidden !important;
  max-height:90px !important;
  padding-bottom:6px !important;
  gap:4px !important;
}
.wot-tg-row.double-layer .wot-ev-pill {
  flex-shrink:0 !important;
}

/* ── V6 Entrance animation ───────────────────────────────── */
@keyframes wotPillSlideIn {
  from { opacity:0; transform:translateX(20px) scale(.95); }
  to   { opacity:1; transform:translateX(0) scale(1); }
}

/* ── V6 Event pills - colourful + 3D ─────────────────────── */
.wot-ev-pill {
  padding:5px 10px 6px 9px !important;
  border-radius:8px !important;
  background:var(--bg, rgba(16,16,20,.9)) !important;
  border:1px solid var(--border, rgba(255,255,255,.08)) !important;
  border-left:2.5px solid var(--ec, rgba(255,255,255,.15)) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  min-width:80px !important; max-width:200px !important;
  position:relative !important; overflow:hidden !important;
  /* 3D shadow stack */
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    inset 0 -1px 0 rgba(0,0,0,.2),
    0 1px 2px rgba(0,0,0,.3),
    0 3px 8px rgba(0,0,0,.25),
    0 1px 14px var(--glow, transparent) !important;
  transition:transform .25s cubic-bezier(.34,1.4,.64,1), box-shadow .25s ease, background .15s ease !important;
  transform-style:preserve-3d !important;
  transform:translateZ(0) !important;
  scroll-snap-align:start !important;
  animation:wotPillSlideIn .4s cubic-bezier(.22,1,.36,1) both !important;
  animation-delay:var(--d, 0s) !important;
}
/* Category colour wash overlay */
.wot-ev-pill::before {
  content:'' !important; display:block !important;
  position:absolute !important; inset:0 !important;
  background:linear-gradient(135deg, var(--ec, transparent) 0%, transparent 70%) !important;
  opacity:.12 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  transition:opacity .2s ease !important;
}
/* Bottom colour bar */
/* WOT V19: old .wot-ev-pill::after bottom bar removed */
.wot-ev-pill > * { position:relative !important; z-index:1 !important; }

/* Hover: lift + tilt + category glow */
.wot-ev-pill:hover {
  transform:translateY(-3px) rotateX(2deg) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.1),
    inset 0 -1px 0 rgba(0,0,0,.15),
    0 2px 4px rgba(0,0,0,.35),
    0 8px 20px rgba(0,0,0,.3),
    0 2px 24px var(--glow-hover, transparent) !important;
}
.wot-ev-pill:hover::before { opacity:.2 !important; }

/* Active state - pressed in when drawer open */
.wot-ev-pill.active {
  transform:translateY(1px) scale(.97) !important;
  box-shadow:
    inset 0 2px 4px rgba(0,0,0,.4),
    inset 0 -1px 0 rgba(255,255,255,.03),
    0 0 0 1px var(--ec, #888),
    0 0 16px var(--glow, transparent) !important;
}
.wot-ev-pill.active::before { opacity:.25 !important; }
.wot-ev-pill.active::after  { opacity:1 !important; height:2px !important; }

/* Past rows: no fancy shadows or animations */
.wot-tg-row.wot-past .wot-ev-pill      { box-shadow:0 1px 4px rgba(0,0,0,.3) !important; animation:none !important; transform:none !important; }
.wot-tg-row.wot-past .wot-ev-pill:hover { transform:none !important; }
.wot-tg-row.wot-near-past .wot-ev-pill  { animation:none !important; }

/* Per-category tinted backgrounds + 3D glow */
.wot-ev-pill[data-cat="music"]     { --bg:rgba(255,59,48,.08);  --border:rgba(255,59,48,.22);  --glow:rgba(255,59,48,.08);  --glow-hover:rgba(255,59,48,.25); }
.wot-ev-pill[data-cat="sport"]     { --bg:rgba(59,130,255,.08); --border:rgba(59,130,255,.22); --glow:rgba(59,130,255,.08); --glow-hover:rgba(59,130,255,.25); }
.wot-ev-pill[data-cat="food"]      { --bg:rgba(50,215,75,.07);  --border:rgba(50,215,75,.22);  --glow:rgba(50,215,75,.07);  --glow-hover:rgba(50,215,75,.2); }
.wot-ev-pill[data-cat="nightlife"] { --bg:rgba(255,159,10,.08); --border:rgba(255,159,10,.22); --glow:rgba(255,159,10,.08); --glow-hover:rgba(255,159,10,.25); }
.wot-ev-pill[data-cat="night"]     { --bg:rgba(255,159,10,.08); --border:rgba(255,159,10,.22); --glow:rgba(255,159,10,.08); --glow-hover:rgba(255,159,10,.25); }
.wot-ev-pill[data-cat="culture"]   { --bg:rgba(191,90,242,.08); --border:rgba(191,90,242,.22); --glow:rgba(191,90,242,.08); --glow-hover:rgba(191,90,242,.25); }
.wot-ev-pill[data-cat="family"]    { --bg:rgba(255,214,10,.07); --border:rgba(255,214,10,.22); --glow:rgba(255,214,10,.07); --glow-hover:rgba(255,214,10,.2); }
/* Fallback for pills with no matching category (e.g. attractions) - use neutral family-ish tint, NEVER plain grey */
.wot-ev-pill:not([data-cat="music"]):not([data-cat="sport"]):not([data-cat="food"]):not([data-cat="nightlife"]):not([data-cat="night"]):not([data-cat="culture"]):not([data-cat="family"]) {
  --bg:rgba(255,214,10,.07) !important;
  --border:rgba(255,214,10,.22) !important;
  --glow:rgba(255,214,10,.07) !important;
  --glow-hover:rgba(255,214,10,.2) !important;
}

/* ── ALL DAY row (events with no specific start time, e.g. attractions) ─ */
.wot-tg-row.wot-tg-allday .wot-tg-time {
  font-size:.42rem !important;
  line-height:1.05 !important;
  font-weight:700 !important;
  letter-spacing:.05em !important;
  padding-top:11px !important;
  padding-bottom:9px !important;
}
/* Pills inside the ALL DAY row must behave like every other pill - no full-width grey bar */
.wot-tg-row.wot-tg-allday .wot-tg-ev-row {
  flex-wrap:nowrap !important;
  gap:5px !important;
}
.wot-tg-row.wot-tg-allday .wot-ev-pill {
  flex:0 0 auto !important;
  width:auto !important;
  min-width:110px !important;
  max-width:200px !important;
  align-self:center !important;
}
/* Light mode - ALL DAY label must stay readable, never grey-on-white */
.wot-light .wot-tg-row.wot-tg-allday .wot-tg-time,
.CENTRE.white-bg .wot-tg-row.wot-tg-allday .wot-tg-time {
  color:rgba(0,0,0,.55) !important;
  font-weight:700 !important;
}

/* Title + venue */
.wot-ep-title { font-size:.58rem !important; font-weight:800 !important; color:#fff !important; text-shadow:0 1px 4px rgba(0,0,0,.7) !important; }
.wot-ep-sub   { font-size:.4rem !important; color:rgba(255,255,255,.3) !important; text-shadow:none !important; }

/* ── V6 Drawer upgrades ──────────────────────────────────── */
.wot-expand-inner {
  background:linear-gradient(135deg, rgba(255,255,255,.03) 0%, rgba(0,0,0,.2) 100%) !important;
  position:relative !important;
}
.wot-expand-inner::before {
  content:'' !important; position:absolute !important; inset:0 !important;
  background:linear-gradient(135deg, var(--ec, transparent) 0%, transparent 60%) !important;
  opacity:.06 !important; pointer-events:none !important;
}
.wot-expand-btn {
  box-shadow:0 4px 16px rgba(0,0,0,.3), 0 0 20px color-mix(in srgb, var(--ec, #888) 30%, transparent) !important;
  transition:transform .15s ease, box-shadow .15s ease !important;
}
.wot-expand-btn:hover {
  transform:translateY(-1px) !important;
  box-shadow:0 6px 24px rgba(0,0,0,.4), 0 0 30px color-mix(in srgb, var(--ec, #888) 40%, transparent) !important;
}

/* ── V6 Filter pill counts ───────────────────────────────── */
.wot-flt-count {
  font-size:.36rem !important; font-weight:700 !important;
  opacity:.5 !important; font-variant-numeric:tabular-nums !important;
  margin-left:2px !important;
}

/* ══════════════════════════════════════════════════════════════════════════
   MCR MOBILE APP POLISH - WOT alignment, LED, nav buttons, cat grid
   ══════════════════════════════════════════════════════════════════════════ */

/* ── Rainbow brand gradient (shared between WOT top line + mobile header) */
:root {
  --mcr-rainbow: linear-gradient(90deg, #E8201A 0%, #FF6B00 20%, #FFD600 38%, #2DB54B 55%, #1A56FF 75%, #7C3AED 100%);
}

/* ── Coloured top line on WOT section (desktop + mobile) */
section.WOT { position:relative !important; }
section.WOT::before {
  content:'' !important; position:absolute !important;
  top:0 !important; left:0 !important; right:0 !important;
  height:1px !important; z-index:5 !important;
  background:var(--mcr-rainbow) !important;
  opacity:.7 !important;
}

/* ── Mobile header bottom line - match same gradient, 1px thin */
#MOB-HEADER::after {
  background:var(--mcr-rainbow) !important;
  opacity:.7 !important;
  height:1px !important;
  bottom:-1px !important;
}

/* ── Mobile category buttons (hidden on desktop) */
.mob-cats { display:none; }

/* ── Mobile-only category section (hidden on desktop) */
.mob-only-block { display:none; }

/* ── Explore Manchester section - white bg */
.mob-explore-section {
  background:#fff !important;
  padding:24px 16px 16px !important;
  border:none !important;
}
.mob-explore-section .SH {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:4px !important;
}
.mob-explore-section .SH .sh-title,
.mob-explore-section .sh-title { color:#0c0c0e !important; }
.mob-explore-section .sh-eyebrow { color:#888 !important; width:100% !important; }
.mob-explore-section .sh-link {
  color:var(--dc-blue) !important;
  border-color:rgba(26,86,255,.2) !important;
  background:rgba(26,86,255,.06) !important;
}

/* Category card gradient background - replaces photo */
.cat-hood-bg {
  position:absolute; inset:0;
  background:linear-gradient(135deg,
    color-mix(in srgb, var(--hc) 55%, #030306) 0%,
    color-mix(in srgb, var(--hc) 20%, #030306) 50%,
    #030306 75%
  );
}

@media(max-width:640px) {
  .mob-only-block { display:block !important; }
}

@media(max-width:640px) {

  /* Grey bar fix: match backgrounds + clip all horizontal overflow */
  body, #WRAP, .BODY, main.CENTRE {
    overflow-x:hidden !important;
    max-width:100vw !important;
  }
  main.CENTRE {
    padding-top:64px !important;
    background:#0c0c0e !important;
  }

  /* ── Explore Manchester section - matches Neighbourhoods style exactly */
  .mob-explore-section {
    margin:0 -16px !important;
    padding:24px 16px 16px !important;
    background:#fff !important;
  }
  .mob-explore-section .SH { margin-bottom:12px !important; padding:0 !important; }
  .BODY { background:#0c0c0e !important; }

  /* WOT section - flush under fixed header, edge-to-edge */
  section.WOT { margin:0 -16px !important; }

  /* Bigger, brighter LED dot */
  .wot-mini-dot {
    width:7px !important; height:7px !important;
    box-shadow:0 0 6px #e8201a, 0 0 14px rgba(232,32,26,.6) !important;
  }
  .wot-mini-live { color:#e8201a !important; font-weight:900 !important; }

  /* Remove the small coloured dots from filter pills - cleaner look */
  .wot-flt-dot { display:none !important; }

  /* ── Nav bar - hidden on mobile (replaced by mob-cats section) */
  .wot-nav-bar { display:none !important; }

  /* ── Nav bar - large pill buttons, coloured border, text only */
  .wot-nav-bar-UNUSED {
    display:grid !important;
    grid-template-columns:repeat(3,1fr) !important;
    background:#000 !important;
    padding:12px !important;
    gap:10px !important;
    border-top:none !important;
    border-bottom:none !important;
  }
  .wnb-item {
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:64px !important;
    padding:16px 8px !important;
    background:#000 !important;
    border:2px solid var(--wnb-col, rgba(255,255,255,.25)) !important;
    border-radius:18px !important;
    text-align:center !important;
    text-decoration:none !important;
    color:#fff !important;
    box-shadow:none !important;
    transition:opacity .12s ease !important;
    -webkit-tap-highlight-color:transparent !important;
  }
  .wnb-item:active { opacity:.6 !important; }
  .wnb-icon { display:none !important; }
  .wnb-label {
    font-size:.62rem !important;
    font-weight:900 !important;
    color:#fff !important;
    letter-spacing:.01em !important;
    line-height:1.2 !important;
    text-transform:none !important;
  }
  .wnb-sub { display:none !important; }

  /* ── Mobile category explore grid - hidden */
  .mob-cats {
    display:grid !important;
    background:#000 !important;
    padding:18px 14px 22px !important;
    margin:0 -16px !important;
    border-bottom:1px solid rgba(255,255,255,.06) !important;
  }
  .mob-cats-hdr {
    display:flex !important; align-items:center !important;
    justify-content:space-between !important;
    margin-bottom:14px !important;
  }
  .mob-cats-hdr-label {
    font-size:.46rem !important; font-weight:800 !important;
    letter-spacing:.18em !important;
    color:rgba(255,255,255,.38) !important;
  }
  .mob-cats-hdr-link {
    font-size:.46rem !important; font-weight:700 !important;
    color:#1A56FF !important; text-decoration:none !important;
  }
  .mob-cats-grid {
    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;
    gap:10px !important;
  }
  .mob-cat-btn {
    display:flex !important; flex-direction:column !important;
    align-items:center !important; justify-content:center !important;
    gap:10px !important;
    padding:18px 6px 14px !important;
    background:#1c1c1e !important;
    border-radius:18px !important;
    text-decoration:none !important;
    -webkit-tap-highlight-color:transparent !important;
    transition:opacity .12s ease !important;
  }
  .mob-cat-btn:active { opacity:.55 !important; }
  .mob-cat-diamond {
    width:28px !important; height:28px !important;
    background:var(--cc) !important;
    transform:rotate(45deg) !important;
    border-radius:5px !important;
    flex-shrink:0 !important;
    display:block !important;
  }
  .mob-cat-name {
    font-size:.46rem !important; font-weight:700 !important;
    color:#fff !important; text-align:center !important;
    line-height:1 !important; letter-spacing:.01em !important;
  }

  /* ── Fix grey bar: section-white has margin:-28px but CENTRE only has 16px padding on mobile ── */
  .home .CENTRE .section-white,
  .section-white {
    margin-left:-16px !important;
    margin-right:-16px !important;
    padding-left:16px !important;
    padding-right:16px !important;
  }

  /* ── Latest News section - compact horizontal scroll, black bg ── */
  .news-section-mob {
    background:#000 !important;
    margin:0 -16px !important;
    padding:16px 0 8px !important;
  }
  .news-section-mob .SH { padding:0 16px !important; margin-bottom:10px !important; }
  .news-section-mob .NEWS-STRIP {
    display:flex !important;
    grid-template-columns:none !important;
    overflow-x:auto !important;
    scroll-snap-type:x proximity !important;
    -webkit-overflow-scrolling:touch !important;
    scrollbar-width:none !important;
    gap:8px !important;
    padding:0 16px 10px !important;
    margin-bottom:0 !important;
  }
  .news-section-mob .NEWS-STRIP::-webkit-scrollbar { display:none !important; }
  /* Full-bleed image cards - image fills card, text overlaid */
  .news-section-mob .ns-card-img {
    flex:0 0 260px !important;
    scroll-snap-align:start !important;
    border-radius:12px !important;
    background:#111 !important;
    border:none !important;
    position:relative !important;
    overflow:hidden !important;
    min-height:180px !important;
  }
  .news-section-mob .ns-card-thumb {
    position:absolute !important;
    inset:0 !important;
    aspect-ratio:auto !important;
    z-index:0 !important;
  }
  .news-section-mob .ns-card-thumb img {
    width:100% !important; height:100% !important;
    object-fit:cover !important;
    filter:brightness(.55) saturate(1.1) !important;
  }
  .news-section-mob .ns-card-img:hover .ns-card-thumb img {
    filter:brightness(.7) saturate(1.2) !important;
  }
  .news-section-mob .ns-card-body {
    position:relative !important;
    z-index:2 !important;
    padding:0 14px 14px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-end !important;
    min-height:180px !important;
    background:linear-gradient(to top, rgba(0,0,0,.85) 0%, rgba(0,0,0,.4) 50%, transparent 100%) !important;
  }
  .news-section-mob .ns-cat {
    font-size:.42rem !important;
    margin-bottom:4px !important;
    text-shadow:0 1px 4px rgba(0,0,0,.8) !important;
  }
  .news-section-mob .ns-title {
    font-size:.72rem !important;
    line-height:1.25 !important;
    color:#fff !important;
    text-shadow:0 1px 6px rgba(0,0,0,.9) !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }
  .news-section-mob .ns-meta {
    font-size:.44rem !important;
    margin-top:4px !important;
    color:rgba(255,255,255,.5) !important;
    text-shadow:0 1px 3px rgba(0,0,0,.8) !important;
  }

  /* ── SC cards on dark sections - subtle border, no grey ── */
  .SC {
    background:rgba(255,255,255,.03) !important;
    border:1px solid rgba(255,255,255,.06) !important;
    box-shadow:none !important;
    border-radius:10px !important;
    overflow:hidden !important;
  }
  .sc-body { padding:10px 12px !important; }

  /* ── SC cards inside white sections - restore proper light styling ── */
  .section-white .SC {
    background:#fff !important;
    border:1px solid rgba(0,0,0,.08) !important;
    box-shadow:0 1px 4px rgba(0,0,0,.05) !important;
  }
  .section-white .SC:hover {
    border-color:rgba(0,0,0,.15) !important;
    box-shadow:0 3px 12px rgba(0,0,0,.08) !important;
  }
  .section-white .sc-title { color:#0c0c0e !important; }
  .section-white .sc-meta { color:rgba(0,0,0,.45) !important; }
  .section-white .sc-cat { color:rgba(0,0,0,.5) !important; }

  /* ── CARDS grids - edge-to-edge on mobile ── */
  .CARDS {
    margin-left:0 !important;
    margin-right:0 !important;
    gap:8px !important;
    margin-bottom:8px !important;
  }

  /* ── Section headers (.SH) - tighten on mobile ── */
  .SH { margin-bottom:12px !important; }

  /* ── Section spacing - consistent 16px rhythm between sections ── */
  .section-white {
    padding-top:24px !important;
    padding-bottom:16px !important;
    margin-bottom:0 !important;
  }

  /* ── Dark→Light section transitions - subtle border ── */
  .section-white {
    border-top:1px solid rgba(0,0,0,.06) !important;
    border-bottom:1px solid rgba(0,0,0,.06) !important;
  }

  /* ── SPORT grid inside white - fix dark styling ── */
  .section-white .SPORT-GRID .sg-main,
  .section-white .SPORT-GRID .sg-item {
    border-radius:10px !important;
    overflow:hidden !important;
  }

  /* ── Word-break safety - prevent overflow from long titles ── */
  h1, h2, h3, .sh-title, .hood-name, .sc-title, .ns-title {
    word-break:break-word !important;
    overflow-wrap:break-word !important;
  }

  /* ── Eyebrow labels - better contrast on light sections ── */
  .section-white .sh-eyebrow { color:#555 !important; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   FOOTER V4 - Newsletter, Trending, Grid, About, Bottom
   ═══════════════════════════════════════════════════════════════════════════ */
.mcr-nl{position:relative;overflow:hidden;background:linear-gradient(160deg,#0d0d10 0%,#111118 50%,#0f0f15 100%);border-top:1px solid var(--b1)}
.mcr-nl-inner{max-width:1200px;margin:0 auto;padding:64px 56px;display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center;position:relative;z-index:2}
.mcr-nl::before{content:'';position:absolute;top:-120px;left:-80px;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(26,86,255,.08) 0%,transparent 60%);pointer-events:none}
.mcr-nl::after{content:'';position:absolute;bottom:-100px;right:-40px;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,rgba(232,0,42,.06) 0%,transparent 60%);pointer-events:none}
.mcr-nl-line{position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,var(--dc-blue) 25%,var(--dc-red) 50%,var(--dc-orange) 75%,transparent 100%);background-size:200% 100%;animation:nl-shimmer 6s ease infinite;opacity:.5}
@keyframes nl-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.mcr-nl-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:100px;padding:4px 12px 4px 8px;font-size:.6rem;font-weight:700;color:var(--tx3);margin-bottom:16px}
.mcr-nl-badge i{font-size:.5rem}
.mcr-nl h2{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:2.8rem;line-height:.92;letter-spacing:-.04em;color:#fff;margin-bottom:14px}
.mcr-nl h2 span{color:#fff}
.mcr-nl-sub{font-size:.82rem;color:var(--tx3);line-height:1.7;max-width:380px}
.mcr-nl-form-area{display:flex;flex-direction:column;gap:14px}
.mcr-nl-form{display:flex;gap:0;border-radius:14px;overflow:hidden;border:1px solid var(--b2);background:rgba(255,255,255,.04);transition:border-color .2s}
.mcr-nl-form:focus-within{border-color:rgba(26,86,255,.35);background:rgba(26,86,255,.04)}
.mcr-nl-form input{flex:1;padding:15px 18px;background:transparent;border:none;color:#fff;font-family:'Inter',sans-serif;font-size:.82rem;outline:none}
.mcr-nl-form input::placeholder{color:rgba(255,255,255,.2)}
.mcr-nl-form button{padding:0 28px;background:#0f2f7a;border:none;color:#fff;font-family:'Inter',sans-serif;font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:filter .2s;white-space:nowrap}
.mcr-nl-form button:hover{filter:brightness(1.15)}
.mcr-nl-interests{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mcr-nl-interests-label{font-size:.58rem;font-weight:600;color:var(--tx4);margin-right:4px}
.mcr-nl-chip{display:flex;align-items:center;gap:5px;padding:5px 11px;border-radius:100px;border:1px solid var(--b1);background:transparent;font-size:.6rem;font-weight:600;color:var(--tx3);cursor:pointer;transition:all .15s;user-select:none}
.mcr-nl-chip:hover{border-color:var(--b2);color:var(--tx2)}
.mcr-nl-chip.active{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:rgba(255,255,255,.85)}
.mcr-nl-chip i{font-size:.5rem;opacity:.7}
.mcr-nl-trust{display:flex;align-items:center;gap:16px;font-size:.56rem;color:var(--tx4)}
.mcr-nl-trust span{display:flex;align-items:center;gap:5px}
.mcr-nl-trust i{font-size:.5rem}
@media(max-width:800px){.mcr-nl-inner{grid-template-columns:1fr;gap:28px;padding:36px 20px} .mcr-nl h2{font-size:2rem}}

/* Trending */
.mcr-trending{background:#0a0a0d;border-top:1px solid var(--b1);border-bottom:1px solid var(--b1)}
.mcr-trending-inner{max-width:1200px;margin:0 auto;padding:28px 56px}
.mcr-trending h3{font-size:.48rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--tx4);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.mcr-trending h3 .ft-pulse-sm{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--dc-green);box-shadow:0 0 0 2px rgba(0,210,106,.15);animation:ft-pulse 2s ease infinite}
.mcr-trending-grid{display:flex;flex-wrap:wrap;gap:6px}
.mcr-trending-grid a{padding:6px 14px;border-radius:100px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03);font-size:.62rem;font-weight:500;color:var(--tx3);transition:all .15s;white-space:nowrap}
.mcr-trending-grid a:hover{background:rgba(255,255,255,.08);border-color:var(--b2);color:var(--tx2)}
.mcr-trending-grid a.hot{border-color:rgba(232,0,42,.2);background:rgba(232,0,42,.06);color:rgba(255,255,255,.7)}
.mcr-trending-grid a.hot:hover{background:rgba(232,0,42,.12);border-color:rgba(232,0,42,.35);color:var(--tx2)}
.mcr-trending-grid .trend-fire{color:var(--dc-orange);font-size:.5rem;margin-right:2px}
.mcr-seasonal{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.04)}
.mcr-seasonal-label{font-size:.46rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--tx4);display:flex;align-items:center;margin-right:4px}
.mcr-seasonal a{padding:5px 12px;border-radius:8px;background:rgba(139,92,246,.06);border:1px solid rgba(139,92,246,.12);font-size:.58rem;font-weight:600;color:rgba(139,92,246,.7);transition:all .15s}
.mcr-seasonal a:hover{background:rgba(139,92,246,.14);border-color:rgba(139,92,246,.3);color:#fff}
@media(max-width:700px){.mcr-trending-inner{padding:20px}}

/* Footer grid */
.mcr-ft{background:#060608;border-top:1px solid var(--b1)}
.mcr-ft-inner{max-width:1200px;margin:0 auto;padding:48px 56px 40px;display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:40px}
.mcr-ft-brand-col{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.mcr-ft-brand-stack{display:flex;flex-direction:column;align-items:center;margin-bottom:16px}
.mcr-ft-logo-hero{margin-bottom:-8px;opacity:1;transition:opacity .3s}
.mcr-ft-logo-hero:hover{opacity:.85}
.mcr-ft-everything-label{font-family:'Inter Tight',sans-serif;font-weight:500;font-size:.85rem;letter-spacing:.32em;text-transform:uppercase;color:var(--tx4);margin-bottom:3px;line-height:1}
.mcr-ft-everything-city{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:1.15rem;letter-spacing:.08em;color:var(--tx3);text-transform:uppercase;margin-bottom:16px;line-height:1}
.mcr-ft-desc{font-size:.68rem;color:var(--tx3);line-height:1.8;max-width:280px;margin-bottom:20px}
.mcr-ft-desc a{color:var(--tx2);font-weight:600}
.mcr-ft-desc a:hover{text-decoration:underline}
.mcr-ft-social{display:flex;gap:6px}
.mcr-ft-si{width:34px;height:34px;border-radius:9px;background:rgba(255,255,255,.05);border:1px solid var(--b1);display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--tx3);transition:all .18s}
.mcr-ft-si:hover{background:rgba(255,255,255,.1);color:var(--tx2);border-color:var(--b2);transform:translateY(-2px)}
.mcr-ft-si.si-ig:hover{color:#E4405F}
.mcr-ft-si.si-tt:hover,.mcr-ft-si.si-tw:hover{color:var(--tx2)}
.mcr-ft-si.si-fb:hover{color:#1877F2}
.mcr-ft-si.si-yt:hover{color:#FF0000}
.mcr-ft-col h4{font-size:.5rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--tx2);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.04)}
.mcr-ft-col ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.mcr-ft-col a{font-size:.72rem;font-weight:400;color:var(--tx3);display:flex;align-items:center;gap:8px;transition:color .14s,transform .14s}
.mcr-ft-col a:hover{color:var(--tx2);transform:translateX(2px)}
.mcr-ft-col a i{font-size:.6rem;width:14px;text-align:center;color:var(--tx4);transition:color .14s}
.mcr-ft-col a:hover i{color:var(--tx2)}
.ft-tag{font-size:.42rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:4px;line-height:1}
.ft-tag-new{background:var(--dc-red);color:#fff}
.ft-tag-ai{background:rgba(139,92,246,.15);color:var(--dc-purple)}
.ft-tag-soon{background:rgba(255,255,255,.08);color:var(--tx3)}
.mcr-ft-hoods{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:12px}
.mcr-ft-hood{padding:8px 10px;border-radius:8px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);font-size:.58rem;font-weight:600;color:var(--tx3);transition:all .3s;text-align:center;--hc:rgba(255,255,255,.12)}
.mcr-ft-hood:hover{background:color-mix(in srgb,var(--hc) 15%,transparent);color:var(--tx2);border-color:var(--hc)}
.mcr-ft-col-group{display:flex;flex-direction:column;gap:28px}
@media(max-width:900px){.mcr-ft-inner{grid-template-columns:1fr 1fr;gap:28px;padding:32px 24px}}
@media(max-width:600px){.mcr-ft-inner{grid-template-columns:1fr;gap:32px;padding:32px 20px} .mcr-ft-brand-col{align-items:center;text-align:center} .mcr-ft-desc{max-width:100%} .mcr-ft-social{justify-content:center} .mcr-ft-hoods{grid-template-columns:repeat(3,1fr)} .mcr-nl-inner{grid-template-columns:1fr;gap:24px;padding:32px 20px} .mcr-nl h2{font-size:1.8rem} .mcr-nl-form{border-radius:12px} .mcr-nl-form button{padding:0 18px;font-size:.65rem} .mcr-nl-interests{justify-content:center} .mcr-nl-trust{justify-content:center;flex-wrap:wrap} .mcr-trending-inner{padding:20px} .mcr-ft-about-inner{grid-template-columns:1fr;gap:20px;padding:24px 20px} .mcr-ft-bottom-inner{flex-direction:column;padding:14px 20px;text-align:center} .mcr-ft-bottom-links{flex-wrap:wrap;justify-content:center} .mcr-ft-everything-label{font-size:.8rem} .mcr-ft-everything-city{font-size:1.1rem}}
@media(max-width:380px){.mcr-ft-hoods{grid-template-columns:repeat(2,1fr)} .mcr-nl h2{font-size:1.5rem} .mcr-nl-chip{padding:4px 9px;font-size:.55rem}}

/* About Manchester */
.mcr-ft-about{background:#070709;border-top:1px solid var(--b1)}
.mcr-ft-about-inner{max-width:1200px;margin:0 auto;padding:32px 56px;display:grid;grid-template-columns:1fr 1fr;gap:40px}
.mcr-ft-about h3{font-family:'Inter Tight',sans-serif;font-size:.9rem;font-weight:800;color:rgba(255,255,255,.7);margin-bottom:10px}
.mcr-ft-about p{font-size:.65rem;color:var(--tx3);line-height:1.9}
.mcr-ft-about p a{color:var(--tx2);font-weight:600}
.mcr-ft-about p a:hover{text-decoration:underline}
@media(max-width:700px){.mcr-ft-about-inner{grid-template-columns:1fr;gap:20px;padding:24px 20px}}

/* Override old styles - force correct colors on new footer
   Headings = white, body/links/descriptions = light grey (.4) */
section.mcr-nl .mcr-nl-sub{color:rgba(255,255,255,.4)!important}
section.mcr-nl .mcr-nl-badge{color:rgba(255,255,255,.4)!important}
section.mcr-nl .mcr-nl-trust{color:rgba(255,255,255,.25)!important}
footer.mcr-ft .mcr-ft-everything-label{color:#fff!important}
footer.mcr-ft .mcr-ft-everything-city{color:#fff!important}
footer.mcr-ft .mcr-ft-desc{color:rgba(255,255,255,.4)!important}
footer.mcr-ft .mcr-ft-desc a{color:rgba(255,255,255,.55)!important}
footer.mcr-ft .mcr-ft-col a{color:rgba(255,255,255,.4)!important}
footer.mcr-ft .mcr-ft-col a:hover{color:rgba(255,255,255,.65)!important}
footer.mcr-ft .mcr-ft-col a i{color:rgba(255,255,255,.25)!important}
footer.mcr-ft .mcr-ft-hood{color:rgba(255,255,255,.4)!important}
footer.mcr-ft .mcr-ft-hood:hover{color:rgba(255,255,255,.65)!important}
footer.mcr-ft .mcr-ft-si{color:rgba(255,255,255,.4)!important}
footer.mcr-ft .mcr-ft-si:hover{color:rgba(255,255,255,.6)!important}
section.mcr-ft-about h3{color:rgba(255,255,255,.4)!important}
section.mcr-ft-about p{color:rgba(255,255,255,.4)!important}
section.mcr-ft-about p a{color:rgba(255,255,255,.55)!important;font-weight:600}
.mcr-ft-bottom .mcr-ft-copy{color:rgba(255,255,255,.25)!important}
.mcr-ft-bottom .mcr-ft-copy a{color:rgba(255,255,255,.35)!important}
.mcr-ft-bottom .mcr-ft-bottom-links a{color:rgba(255,255,255,.25)!important}
.mcr-ft-bottom .mcr-ft-tagline{color:rgba(255,255,255,.25)!important}
section.mcr-trending .mcr-trending-grid a{color:rgba(255,255,255,.35)!important;border-color:rgba(255,255,255,.08)!important;background:rgba(255,255,255,.03)!important}
section.mcr-trending .mcr-trending-grid a:hover{color:rgba(255,255,255,.55)!important;border-color:rgba(255,255,255,.15)!important;background:rgba(255,255,255,.06)!important}
section.mcr-trending .mcr-trending-grid a.hot{color:rgba(255,255,255,.4)!important;border-color:rgba(255,255,255,.1)!important;background:rgba(255,255,255,.04)!important}
section.mcr-trending .mcr-seasonal a{color:rgba(139,92,246,.45)!important;border-color:rgba(139,92,246,.1)!important;background:rgba(139,92,246,.04)!important}
section.mcr-trending .mcr-seasonal a:hover{color:rgba(139,92,246,.7)!important;border-color:rgba(139,92,246,.25)!important}
section.mcr-trending h3{color:rgba(255,255,255,.25)!important}

/* Bottom bar */
.mcr-ft-bottom{background:#050507;border-top:1px solid rgba(255,255,255,.04)}
.mcr-ft-bottom-inner{max-width:1200px;margin:0 auto;padding:16px 56px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.mcr-ft-copy{font-size:.56rem;font-weight:500;color:var(--tx4)}
.mcr-ft-copy a{color:var(--tx3)}
.mcr-ft-copy a:hover{color:var(--tx2)}
.mcr-ft-bottom-links{display:flex;gap:16px}
.mcr-ft-bottom-links a{font-size:.56rem;font-weight:500;color:var(--tx4);transition:color .14s}
.mcr-ft-bottom-links a:hover{color:var(--tx2)}
.mcr-ft-tagline{font-size:.52rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--tx4)}
@media(max-width:700px){.mcr-ft-bottom-inner{flex-direction:column;padding:14px 20px;text-align:center}}

/* Collapsible editorial intros - keeps content for SEO but out of users' way */
.page-editorial-intro{max-width:800px;margin:48px auto 24px;padding:0 20px;font-size:.9rem}
.page-editorial-intro summary{cursor:pointer;font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--dc-red,#e8201a);padding:14px 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);list-style:none;display:flex;align-items:center;justify-content:space-between}
.page-editorial-intro summary::after{content:'+';font-size:1.4rem;font-weight:300;transition:transform .2s}
.page-editorial-intro[open] summary::after{transform:rotate(45deg)}
.page-editorial-intro summary::-webkit-details-marker{display:none}
.page-editorial-intro .pei-body{padding:24px 0;color:rgba(255,255,255,.75);line-height:1.7}
.page-editorial-intro .pei-body p{margin:0 0 16px}
.CENTRE.white-bg .page-editorial-intro summary{color:var(--dc-red);border-color:rgba(0,0,0,.08)}
.CENTRE.white-bg .page-editorial-intro .pei-body{color:#333}
@media(max-width:767px){.page-editorial-intro{margin:32px 16px;padding:0;font-size:.85rem}}

/* Mobile typography rescue - the sub-0.5rem sizes are unreadable on phones */
@media (max-width: 640px) {
  .wot-tg-time { font-size: .68rem !important; }
  .mob-tab span { font-size: .62rem !important; }
  .mob-cat-name { font-size: .7rem !important; }
  .wnb-sub { font-size: .62rem !important; }
  .wot-ep-title { font-size: .82rem !important; }
  .wot-filt-pill { font-size: .68rem !important; padding: 8px 12px !important; }
  .wnb-item { font-size: .7rem !important; }
  .epm-lb-item { font-size: .72rem !important; }
  .sc-cat, .ns-cat, .stg-item-cat { font-size: .6rem !important; }
  .sc-meta, .ns-meta { font-size: .72rem !important; }
}

/* Mobile UX Fixes - April 2026 ────────────────────────────────────────── */

/* FIX 2: Mobile ticket fallback display */
@media(max-width:768px){
  .mobile-ticket-fallback{
    display:block !important;
    margin:16px 0
  }
}

/* FIX 4: Mobile form stacking */
@media(max-width:480px){
  .csp-form-inner{
    flex-direction:column !important;
    gap:8px
  }
  .csp-form-inner input,
  .csp-form-inner select,
  .csp-form-inner button{
    width:100% !important
  }
}

/* FIX 6: Directory filters mobile stacking */
@media(max-width:600px){
  .directory-filters,
  .dir-filter-row,
  .filter-stack{
    flex-direction:column;
    gap:8px
  }
  .directory-filters select,
  .directory-filters input{
    width:100%
  }
}

/* FIX 7: Advertise CTA mobile stacking */
@media(max-width:600px){
  .advertise-cta,
  .tpl-advertise .cta-block{
    flex-direction:column;
    text-align:center
  }
  .advertise-cta .btn,
  .tpl-advertise .btn{
    width:100%;
    max-width:320px;
    margin:8px auto
  }
}

/* FIX 8: Touch target minimum size */
@media(max-width:768px){
  button,
  .btn,
  a.btn,
  input[type=submit]{
    min-height:44px
  }
  .icon-btn,
  .close-btn{
    min-width:44px;
    min-height:44px
  }
}

/* FIX 9: Mobile heading sizes */
@media(max-width:480px){
  h1{
    font-size:1.6rem;
    line-height:1.2
  }
  h2{
    font-size:1.3rem
  }
  .hero-title{
    font-size:2rem;
    line-height:1.1
  }
}

/* ── Editorial readability rescue ── */
/* BUG 1: Section page intro text was dark-grey on near-black - force readable colour */
.tpl-music .cat-intro, .tpl-food .cat-intro, .tpl-nightlife .cat-intro, .tpl-culture .cat-intro, .tpl-sport .cat-intro, .tpl-stories .cat-intro,
.cat-intro, .page-editorial, .page-editorial-intro .pei-body,
.cat-intro p, .page-editorial p, .page-editorial-intro .pei-body p { color: #d0d0d0 !important; }
.cat-intro blockquote, .page-editorial blockquote { color: #e8e8e8 !important; }

/* White-bg rescue: when a section uses .CENTRE.white-bg, inherited white text becomes invisible.
   Force readable dark text on common text containers inside white-bg sections. */
.CENTRE.white-bg,
.CENTRE.white-bg p,
.CENTRE.white-bg .stm-stat,
.CENTRE.white-bg .stm-sub,
.CENTRE.white-bg .stm-ai-text,
.CENTRE.white-bg .epm-lb-item,
.CENTRE.white-bg .epm-stats,
.CENTRE.white-bg .ep-kicker,
.CENTRE.white-bg .ev-count,
.CENTRE.white-bg .event-count,
.CENTRE.white-bg .section-kicker,
.CENTRE.white-bg span:not([class*="pill"]):not([class*="tag"]):not([class*="badge"]):not([class*="chip"]):not([class*="btn"]) {
  color: #1a1a1a;
}
.CENTRE.white-bg a:not([class*="btn"]):not([class*="pill"]) { color: #0066cc; }
.CENTRE.white-bg h1, .CENTRE.white-bg h2, .CENTRE.white-bg h3, .CENTRE.white-bg h4 { color: #0b0b0b; }

/* BUG 3: Venue card location tag (.fvg-tag-h) was stretching full-width due to display:flex on a block container.
   fvg-card-meta needs flex layout; fvg-tag-h must be inline-flex so it only takes its content width. */
.fvg-card-meta { display:flex; flex-wrap:wrap; align-items:center; gap:4px; margin-top:4px; }
.fvg-tag-h { display:inline-flex !important; align-items:center; gap:3px; width:auto !important; }

/* END OF STYLESHEET - v10/v11 nightlife CSS removed in v12 rebuild */

/* ── WOT white-bg variant rescue ── */
/* Activates only when the WOT box sits inside a .CENTRE.white-bg section page.
   Dark-theme rules above set white text/rgba-white backgrounds - all invisible on white.
   These scoped selectors flip every problematic colour to a dark-on-light equivalent. */

/* Top bar + title */
.CENTRE.white-bg .wot-topbar { background:#f5f5f7 !important; border-bottom:1px solid rgba(0,0,0,.07) !important; }
.CENTRE.white-bg .wot-title { color:#0c0c0e !important; }
.CENTRE.white-bg .wot-date-label { color:rgba(0,0,0,.4) !important; }

/* Nav buttons */
.CENTRE.white-bg .wot-nav-btn { background:rgba(0,0,0,.05) !important; border:1px solid rgba(0,0,0,.12) !important; color:rgba(0,0,0,.6) !important; }
.CENTRE.white-bg .wot-nav-btn:hover { background:rgba(0,0,0,.09) !important; border-color:rgba(0,0,0,.2) !important; color:#0c0c0e !important; }

/* Day strip */
.CENTRE.white-bg .wot-wday { background:#fff !important; border:1px solid rgba(0,0,0,.1) !important; box-shadow:0 1px 3px rgba(0,0,0,.06) !important; }
.CENTRE.white-bg .wot-wday-dn { color:rgba(0,0,0,.45) !important; }
.CENTRE.white-bg .wot-wday-num { color:#0c0c0e !important; }
.CENTRE.white-bg .wot-wday:hover { background:#f0f0f2 !important; }
.CENTRE.white-bg .wot-wday.active { background:linear-gradient(155deg,#ff3b30 0%,#E8201A 100%) !important; border-color:transparent !important; box-shadow:0 4px 14px rgba(232,32,26,.35) !important; }
.CENTRE.white-bg .wot-wday.active .wot-wday-dn { color:rgba(255,255,255,.8) !important; }
.CENTRE.white-bg .wot-wday.active .wot-wday-num { color:#fff !important; }
.CENTRE.white-bg .wot-wday-dot { background:rgba(0,0,0,.2) !important; }
.CENTRE.white-bg .wot-wday.active .wot-wday-dot { background:rgba(255,255,255,.9) !important; }

/* Live badge - keep red accent */
.CENTRE.white-bg .wot-live-badge { background:rgba(232,32,26,.1) !important; border:1px solid rgba(232,32,26,.25) !important; color:#c41c14 !important; }
.CENTRE.white-bg .wot-live-dot { background:var(--dc-red) !important; }

/* Filter bar */
.CENTRE.white-bg .wot-filterbar { background:#fafafa !important; border-bottom:1px solid rgba(0,0,0,.08) !important; }

/* Filter pills - ghost outlined, dark text, category tints on light */
.CENTRE.white-bg .wot-flt { box-shadow:0 1px 2px rgba(0,0,0,.05) !important; }
.CENTRE.white-bg .wot-flt[data-cat="all"]       { background:#fff !important; border:1px solid rgba(0,0,0,.14) !important; color:rgba(0,0,0,.55) !important; }
.CENTRE.white-bg .wot-flt[data-cat="music"]     { background:#fff !important; border:1px solid rgba(232,32,26,.25) !important;    color:#c41c14 !important; }
.CENTRE.white-bg .wot-flt[data-cat="sport"]     { background:#fff !important; border:1px solid rgba(26,86,255,.3) !important;   color:#1340cc !important; }
.CENTRE.white-bg .wot-flt[data-cat="food"]      { background:#fff !important; border:1px solid rgba(45,181,75,.3) !important;    color:#1a7a30 !important; }
.CENTRE.white-bg .wot-flt[data-cat="nightlife"] { background:#fff !important; border:1px solid rgba(255,107,0,.3) !important;    color:#b84c00 !important; }
.CENTRE.white-bg .wot-flt[data-cat="culture"]   { background:#fff !important; border:1px solid rgba(124,58,237,.3) !important;  color:#6a2ec7 !important; }
.CENTRE.white-bg .wot-flt[data-cat="family"]    { background:#fff !important; border:1px solid rgba(200,160,0,.35) !important;  color:#8a6a00 !important; }

/* Active pills - solid fill, same accent colours as dark variant */
.CENTRE.white-bg .wot-flt[data-cat="all"].on       { background:#0c0c0e !important; border-color:#0c0c0e !important; color:#fff !important; }
.CENTRE.white-bg .wot-flt[data-cat="music"].on     { background:#E8201A !important; border-color:transparent !important; color:#fff !important; }
.CENTRE.white-bg .wot-flt[data-cat="sport"].on     { background:#1A56FF !important; border-color:transparent !important; color:#fff !important; }
.CENTRE.white-bg .wot-flt[data-cat="food"].on      { background:#2DB54B !important; border-color:transparent !important; color:#fff !important; }
.CENTRE.white-bg .wot-flt[data-cat="nightlife"].on { background:#FF6B00 !important; border-color:transparent !important; color:#fff !important; }
.CENTRE.white-bg .wot-flt[data-cat="culture"].on   { background:#7C3AED !important; border-color:transparent !important; color:#fff !important; }
.CENTRE.white-bg .wot-flt[data-cat="family"].on    { background:#d4a900 !important; border-color:transparent !important; color:#fff !important; }
.CENTRE.white-bg .wot-flt:hover { opacity:.8 !important; }

/* Full calendar button */
.CENTRE.white-bg .wot-full-cal-btn { background:#fff !important; border:1px solid rgba(0,0,0,.15) !important; color:rgba(0,0,0,.6) !important; }
.CENTRE.white-bg .wot-full-cal-btn:hover { border-color:rgba(0,0,0,.3) !important; color:#0c0c0e !important; opacity:1 !important; }

/* Time grid */
.CENTRE.white-bg .wot-tg { background:#ffffff !important; }
.CENTRE.white-bg .wot-tg::-webkit-scrollbar-thumb { background:rgba(0,0,0,.12) !important; }
.CENTRE.white-bg .wot-tg-row { border-bottom-color:rgba(0,0,0,.07) !important; }
.CENTRE.white-bg .wot-tg-row:not(.wot-past):hover { background:rgba(0,0,0,.02) !important; }
.CENTRE.white-bg .wot-tg-time { color:rgba(0,0,0,.45) !important; font-weight:500 !important; text-shadow:none !important; }
.CENTRE.white-bg .wot-tg-row.wot-past .wot-tg-time { color:rgba(0,0,0,.18) !important; }
.CENTRE.white-bg .wot-tg-row.wot-near-past .wot-tg-time { color:rgba(0,0,0,.22) !important; }
.CENTRE.white-bg .wot-tg-row.wot-now .wot-tg-time { color:#0c0c0e !important; font-weight:900 !important; text-shadow:none !important; }
.CENTRE.white-bg .wot-tg-row.wot-near-future .wot-tg-time { color:rgba(0,0,0,.4) !important; }
.CENTRE.white-bg .wot-tg-row.wot-far-future .wot-tg-time { color:rgba(0,0,0,.3) !important; }
.CENTRE.white-bg .wot-tg-row.wot-now::after { background:linear-gradient(90deg,#E8201A,transparent) !important; opacity:.12 !important; }
.CENTRE.white-bg .wot-tg-ev-row { border-left-color:rgba(0,0,0,.1) !important; background:transparent !important; }

/* Event pills - light surface with subtle shadow to separate from white bg */
.CENTRE.white-bg .wot-ev-pill {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.1) !important;
  border-left:2.5px solid var(--ec, rgba(0,0,0,.2)) !important;
  box-shadow:0 2px 8px rgba(0,0,0,.07), 0 1px 2px rgba(0,0,0,.05) !important;
}
.CENTRE.white-bg .wot-ev-pill:hover {
  box-shadow:0 4px 16px rgba(0,0,0,.12), 0 1px 3px rgba(0,0,0,.06) !important;
  transform:translateY(-2px) !important;
}
.CENTRE.white-bg .wot-ev-pill.active {
  box-shadow:inset 0 1px 3px rgba(0,0,0,.1), 0 0 0 1px var(--ec,rgba(0,0,0,.2)) !important;
  transform:translateY(0) scale(.98) !important;
}
.CENTRE.white-bg .wot-tg-row.wot-past .wot-ev-pill { box-shadow:0 1px 3px rgba(0,0,0,.06) !important; }

/* Pill text */
.CENTRE.white-bg .wot-ep-title { color:#0c0c0e !important; text-shadow:none !important; }
.CENTRE.white-bg .wot-ep-sub { color:rgba(0,0,0,.5) !important; }

/* Expand drawer */
.CENTRE.white-bg .wot-expand { border-bottom-color:rgba(0,0,0,.07) !important; }
.CENTRE.white-bg .wot-expand-inner { background:linear-gradient(135deg,#f8f8fa,#fff) !important; }
.CENTRE.white-bg .wot-expand-title { color:#0c0c0e !important; }
.CENTRE.white-bg .wot-expand-meta { color:rgba(0,0,0,.5) !important; }
.CENTRE.white-bg .wot-expand-desc { color:rgba(0,0,0,.65) !important; }
.CENTRE.white-bg .wot-xm-item i { color:rgba(0,0,0,.3) !important; }
.CENTRE.white-bg .wot-xm-price { color:rgba(0,0,0,.6) !important; }

/* Empty state */
.CENTRE.white-bg .wot-tg-empty i { color:rgba(0,0,0,.12) !important; }
.CENTRE.white-bg .wot-tg-empty div { color:rgba(0,0,0,.4) !important; }
.CENTRE.white-bg .wot-tg-empty a { color:#E8201A !important; }

/* Nav bar at bottom */
.CENTRE.white-bg .wot-nav-bar { background:#fff !important; border-top-color:rgba(0,0,0,.08) !important; }

/* ── Neighbourhood page seamless layout ── */

/* Hero tagline */
.hhf-tagline {
  font-size:.95rem;
  color:rgba(255,255,255,.8);
  margin:.5rem 0 0;
  max-width:520px;
  line-height:1.5;
}

/* Container */
.hood-seamless {
  background:#111;
  color:#e8e8e8;
  padding-bottom:40px;
}
/* Collapse hs-two-col to single column when the watch section is absent
   (prevents the half-blank "Video" well on pages without a configured video). */
.hood-seamless .hs-two-col:not(:has(.hs-watch)) { grid-template-columns:1fr !important; }
.hood-seamless .hs-two-col > section:only-child { grid-column:1 / -1; }
.hood-seamless .cat-section-head { margin-bottom:16px; }
.hood-seamless .csh-eyebrow { color:rgba(255,255,255,.45); font-size:.68rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; margin-bottom:4px; }
.hood-seamless .csh-title { color:#fff; font-size:1.2rem; font-weight:800; margin:0; }
.hood-seamless .sh-link { color:#E8201A; font-size:.8rem; font-weight:600; text-decoration:none; white-space:nowrap; }
.hood-seamless .sh-link:hover { text-decoration:underline; }

/* MCR Take */
.hs-take { padding:28px 20px 4px; border-bottom:1px solid rgba(255,255,255,.06); }
.hs-eyebrow { font-size:.65rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; color:#E8201A; margin-bottom:10px; }
.hs-take-inner { max-width:720px; }
.hs-take-body { font-size:.92rem; line-height:1.7; color:rgba(255,255,255,.92); margin:0 0 10px; }
.hs-take-more { margin-top:6px; }
.hs-take-more summary { font-size:.8rem; color:#E8201A; cursor:pointer; list-style:none; text-decoration:underline; }
.hs-take-more summary::-webkit-details-marker { display:none; }
.hs-take-full { font-size:.85rem; line-height:1.75; color:rgba(255,255,255,.92); margin:12px 0 0; }
@media(max-width:900px){
  .hs-take-body { display:none !important; }
  .hs-take-more { margin-top:8px; }
  .hs-take-more summary {
    font-size:.85rem;
    padding:10px 14px;
    background:rgba(255,255,255,.05);
    border-radius:8px;
    display:inline-block;
    cursor:pointer;
  }
}

/* Stats bar */
.hs-stats-bar {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  padding:20px 20px 16px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.hs-stat-chip {
  display:flex;
  align-items:center;
  gap:8px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  border-radius:100px;
  padding:7px 14px;
  font-size:.8rem;
}
.hs-stat-chip i { color:#E8201A; font-size:.8rem; }
.hs-stat-value { font-weight:800; color:#fff; }
.hs-stat-label { color:rgba(255,255,255,.55); }

/* Two-col layout (tonight+watch, venues+stories, map+nearby) */
.hs-two-col {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  padding:28px 20px 0;
}
@media (max-width:800px) {
  .hs-two-col { grid-template-columns:1fr; gap:0; padding:0; }
}

/* Tonight events list */
.hs-tonight { display:flex; flex-direction:column; }
.hs-tonight-list { display:flex; flex-direction:column; gap:12px; }
.hs-ev-card {
  display:grid;
  grid-template-columns:80px 1fr;
  gap:12px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  overflow:hidden;
}
.hs-ev-card.hs-ev-sold { opacity:.55; }
.hs-ev-thumb { position:relative; display:block; }
.hs-ev-thumb img { width:80px; height:80px; object-fit:cover; display:block; }
.hs-ev-badge {
  position:absolute;
  bottom:4px;
  left:4px;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:#fff;
  padding:2px 5px;
  border-radius:4px;
}
.hs-ev-body { padding:10px 12px 10px 0; display:flex; flex-direction:column; justify-content:center; gap:4px; }
.hs-ev-title { font-size:.85rem; font-weight:700; margin:0; line-height:1.3; }
.hs-ev-title a { color:#fff; text-decoration:none; }
.hs-ev-title a:hover { color:#E8201A; }
.hs-ev-venue { font-size:.72rem; color:rgba(255,255,255,.5); }
.hs-ev-meta { display:flex; gap:10px; flex-wrap:wrap; }
.hs-ev-time,.hs-ev-price { font-size:.72rem; color:rgba(255,255,255,.5); }
.hs-ev-ctas { display:flex; gap:6px; flex-wrap:wrap; margin-top:2px; }
.hs-ev-sold-label { font-size:.7rem; color:#888; font-weight:700; align-self:center; }

/* Watch section */
.hs-watch { display:flex; flex-direction:column; }
.hs-watch-inner { flex:1; display:flex; flex-direction:column; justify-content:center; }
.hs-watch-full { padding:28px 20px 0; }
.hs-watch-placeholder {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:rgba(255,255,255,.03);
  border:1px dashed rgba(255,255,255,.1);
  border-radius:12px;
  padding:40px 20px;
  text-align:center;
}
.hs-watch-placeholder i { font-size:2.4rem; color:rgba(255,255,255,.15); }
.hs-watch-placeholder p { font-size:.82rem; color:rgba(255,255,255,.4); margin:0; }
.hs-watch-hint { font-size:.73rem !important; color:rgba(255,255,255,.25) !important; }
.hs-watch-hint code { font-size:.7rem; color:rgba(255,255,255,.35); }
/* Ensure the youtube embed block fills the panel */
.hs-watch-inner .mcr-yt-embed { width:100%; }
.hs-watch-inner .mcr-yt-embed iframe { width:100%; aspect-ratio:16/9; border:none; border-radius:10px; }

/* Venue grid */
.hs-venues { display:flex; flex-direction:column; }
.hs-venue-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
@media (max-width:600px) {
  .hs-venue-grid { grid-template-columns:1fr; }
}
.hs-venue-card {
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.hs-venue-card.hs-venue-featured { border-color:rgba(232,32,26,.35); }
.hs-vc-img { position:relative; display:block; }
.hs-vc-img img { width:100%; height:120px; object-fit:cover; display:block; }
.hs-vc-price {
  position:absolute;
  bottom:6px;
  right:6px;
  background:rgba(0,0,0,.7);
  color:#fff;
  font-size:.72rem;
  font-weight:700;
  padding:2px 7px;
  border-radius:4px;
}
.hs-vc-feat-badge {
  position:absolute;
  top:6px;
  left:6px;
  background:#f5c400;
  color:#000;
  font-size:.62rem;
  font-weight:800;
  padding:2px 6px;
  border-radius:4px;
  letter-spacing:.04em;
}
.hs-vc-body { padding:10px 12px 12px; display:flex; flex-direction:column; gap:4px; flex:1; }
.hs-vc-cat { font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.07em; }
.hs-vc-name { font-size:.88rem; font-weight:700; margin:0; line-height:1.3; }
.hs-vc-name a { color:#fff; text-decoration:none; }
.hs-vc-name a:hover { color:#E8201A; }
.hs-vc-ctas { display:flex; gap:6px; margin-top:auto; padding-top:6px; }

/* Stories list */
.hs-stories { display:flex; flex-direction:column; }
.hs-stories-list { display:flex; flex-direction:column; gap:12px; }
.hs-story-card {
  display:grid;
  grid-template-columns:90px 1fr;
  gap:12px;
  text-decoration:none;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  overflow:hidden;
  transition:border-color .15s;
}
.hs-story-card:hover { border-color:rgba(232,32,26,.4); }
.hs-story-img img { width:90px; height:90px; object-fit:cover; display:block; }
.hs-story-body { padding:10px 12px 10px 0; display:flex; flex-direction:column; gap:3px; }
.hs-story-kicker { font-size:.65rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.hs-story-title { font-size:.85rem; font-weight:700; color:#fff; line-height:1.3; margin:0; }
.hs-story-exc { font-size:.76rem; color:rgba(255,255,255,.5); margin:0; line-height:1.5; }
.hs-story-meta { font-size:.7rem; color:rgba(255,255,255,.35); margin-top:auto; }

/* Sub-sections grid */
.hs-subsections { padding:28px 20px 0; }
.hs-sub-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
@media (max-width:680px) {
  .hs-sub-grid { grid-template-columns:repeat(2,1fr); }
}
.hs-sub-tile {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:color-mix(in srgb, var(--sub-color) 12%, rgba(255,255,255,.04));
  border:1px solid color-mix(in srgb, var(--sub-color) 30%, transparent);
  border-radius:12px;
  padding:22px 12px;
  text-decoration:none;
  color:#fff;
  font-size:.82rem;
  font-weight:700;
  text-align:center;
  transition:background .15s,border-color .15s;
}
.hs-sub-tile:hover { background:color-mix(in srgb, var(--sub-color) 22%, rgba(255,255,255,.06)); }
.hs-sub-tile i { font-size:1.5rem; color:var(--sub-color); }
.hs-sub-label { color:#fff; }
.hs-sub-count { font-size:.68rem; color:rgba(255,255,255,.45); font-weight:400; }

/* Map section */
.hs-two-col--mn { padding-top:28px; align-items:start; }
.hs-map { display:flex; flex-direction:column; }
.hs-map-frame { border-radius:12px; overflow:hidden; border:1px solid rgba(255,255,255,.1); position:relative; }
.hs-map-frame iframe { width:100%; height:260px; border:none; display:block; }
.hs-map-link { display:block; text-align:right; font-size:.74rem; color:rgba(255,255,255,.4); padding:6px 10px 0; text-decoration:none; }
.hs-map-link:hover { color:#E8201A; }
.hs-map-note { font-size:.72rem; color:rgba(255,255,255,.3); padding:6px 10px; margin:0; }
.hs-map-note code { font-size:.68rem; }

/* Nearby neighbourhoods */
.hs-nearby { display:flex; flex-direction:column; }
.hs-nearby-list { display:flex; flex-direction:column; gap:10px; }
.hs-nearby-card { text-decoration:none; border-radius:10px; overflow:hidden; display:block; }
.hs-nearby-img {
  position:relative;
  height:80px;
  background-size:cover;
  background-position:center;
  border-radius:10px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
}
.hs-nearby-scrim {
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.1) 100%);
}
.hs-nearby-name {
  position:absolute;
  bottom:12px;
  left:14px;
  color:#fff;
  font-size:.9rem;
  font-weight:800;
  text-shadow:0 1px 4px rgba(0,0,0,.5);
}
.hs-nearby-card:hover .hs-nearby-img { border-color:rgba(232,32,26,.4); }

/* Footer links bar */
.hs-footer-links {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  padding:28px 20px 0;
  border-top:1px solid rgba(255,255,255,.06);
  margin-top:28px;
}
.hs-footer-links a {
  display:flex;
  align-items:center;
  gap:7px;
  font-size:.8rem;
  color:rgba(255,255,255,.55);
  text-decoration:none;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:100px;
  transition:color .15s,border-color .15s;
}
.hs-footer-links a:hover { color:#E8201A; border-color:rgba(232,32,26,.4); }
.hs-footer-links a i { color:#E8201A; font-size:.8rem; }

/* hood-cat-grid lives inside seamless - keep existing styles but ensure dark bg */
.hood-seamless .hood-cat-grid { padding:12px 20px; }

/* Padding for sections that live inside the two-col */
.hood-seamless .hs-tonight,
.hood-seamless .hs-watch,
.hood-seamless .hs-venues,
.hood-seamless .hs-stories,
.hood-seamless .hs-map,
.hood-seamless .hs-nearby { background:transparent; }

/* Mobile stacking - sections get side padding */
@media (max-width:800px) {
  .hood-seamless .hs-take,
  .hood-seamless .hs-stats-bar,
  .hood-seamless .hs-subsections,
  .hood-seamless .hs-footer-links { padding-left:16px; padding-right:16px; }
  .hood-seamless .hs-two-col > section { padding:20px 16px 0; }
  .hood-seamless .hs-two-col--mn { padding:20px 16px 0; }
  .hs-sub-tile { padding:18px 8px; font-size:.75rem; }
}
/* ── End neighbourhood seamless layout ── */

/* ── YouTube embed ──────────────────────────────────────────────────────────
   .mcr-yt-embed: responsive 16:9 container for youtube-nocookie iframes.
   Used on venue, event, and neighbourhood pages.
   ───────────────────────────────────────────────────────────────────────── */
.mcr-yt-wrap { margin: 28px 0 4px; }
.mcr-yt-wrap-head {
  font-size: .68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(255,255,255,.4);
  margin-bottom: 10px;
}
.hood-content .mcr-yt-wrap-head { color: rgba(0,0,0,.4); }
.mcr-yt-embed {
  position: relative;
  width: 100%;
  max-width: 720px;
  aspect-ratio: 16 / 9;
  border-radius: 10px;
  overflow: hidden;
  background: #000;
}
.mcr-yt-embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 10px;
}

/* ══════════════════════════════════════
   EVENT CARD CTA ALIGNMENT FIX
   "More info" + "Tickets" buttons must sit level
══════════════════════════════════════ */
.ev-card-ctas {
  display:flex;
  gap:6px;
  margin-top:auto;
  align-items:stretch;
  padding-top:8px;
}
.ev-card-ctas .btn-ghost-sm,
.ev-card-ctas .btn-primary-sm,
.ev-card-ctas .btn-tickets {
  flex:1 1 0;
  justify-content:center;
  text-align:center;
  min-height:30px;
  line-height:1.1;
  box-sizing:border-box;
  white-space:nowrap;
}
.ev-card-body {
  display:flex;
  flex-direction:column;
  min-height:0;
}

/* ══════════════════════════════════════
   SMALLER EVENT CARDS ON MOBILE
══════════════════════════════════════ */
@media (max-width: 600px) {
  .ev-grid {
    grid-template-columns:repeat(2, 1fr);
    gap:10px;
    padding:12px 12px 20px;
  }
  .ev-card-img { aspect-ratio:4/3; }
  .ev-card-body { padding:8px 9px 9px; gap:4px; }
  .ev-card-title { font-size:.78rem; line-height:1.2; }
  .ev-card-cat { font-size:.55rem; padding:2px 6px; }
  .ev-card-meta { font-size:.58rem; gap:6px; }
  .ev-card-meta i { width:9px; }
  .ev-card-ctas { gap:4px; padding-top:6px; }
  .ev-card-ctas .btn-ghost-sm,
  .ev-card-ctas .btn-primary-sm,
  .ev-card-ctas .btn-tickets {
    font-size:.54rem;
    padding:6px 8px;
    min-height:26px;
  }
}
@media (max-width: 420px) {
  .ev-grid { gap:8px; padding:10px 10px 18px; }
  .ev-card-title { font-size:.72rem; }
  .ev-card-ctas .btn-ghost-sm,
  .ev-card-ctas .btn-primary-sm,
  .ev-card-ctas .btn-tickets {
    font-size:.5rem;
    padding:5px 6px;
    min-height:24px;
  }
}

/* ══════════════════════════════════════
   Neighbourhood count badge on category pages
   (/food, /nightlife, /music, /culture "By Neighbourhood" tiles)
══════════════════════════════════════ */
.hs-nearby-count {
  position:absolute;
  top:8px;
  right:8px;
  background:rgba(0,0,0,.72);
  color:#fff;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.02em;
  padding:4px 8px;
  border-radius:999px;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  z-index:3;
  pointer-events:none;
}
.hs-nearby-img { position:relative; }
@media (max-width: 600px) {
  .hs-nearby-count {
    font-size:.55rem;
    padding:3px 6px;
    top:6px;
    right:6px;
  }
}

/* ══════════════════════════════════════
   Breadcrumb on seamless category pages
   (/food, /nightlife, /music, /culture)
══════════════════════════════════════ */
.hs-breadcrumb {
  padding:14px 20px 0;
  font-size:.72rem;
  color:rgba(255,255,255,.55);
  letter-spacing:.02em;
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.CENTRE.white-bg .hs-breadcrumb { color:rgba(0,0,0,.55); }
.hs-breadcrumb a {
  color:inherit;
  text-decoration:none;
  opacity:.75;
  transition:opacity .15s;
}
.hs-breadcrumb a:hover { opacity:1; text-decoration:underline; }
.hs-breadcrumb span[aria-current="page"] { font-weight:600; opacity:1; }
.hs-breadcrumb span[aria-hidden="true"] { opacity:.35; }
@media (max-width: 600px) {
  .hs-breadcrumb { padding:10px 14px 0; font-size:.68rem; }
}

/* ==========================================================================
   SKY SPORTS MODE - /sport page dark premium sports-network styling.
   Scoped to .sky-sport wrapper so it only affects /sport.
   White island .sky-local for community + neighbourhood sport.
   ========================================================================== */
.sky-sport{
  background:#0a0a0a;color:#fff;padding:0;margin-top:-1px;
  --sky-red:#EB1C23;--sky-yellow:#FFCC00;--sky-card:#141414;--sky-line:rgba(255,255,255,.08);
}
.sky-sport .hs-take,
.sky-sport .hs-stats-bar,
.sky-sport .hs-tonight,
.sky-sport .hs-watch,
.sky-sport .hs-venues,
.sky-sport .hs-stories,
.sky-sport .hs-subsections,
.sky-sport .hs-footer-links{
  background:transparent;padding:28px 24px;border-top:1px solid var(--sky-line);
}
.sky-sport .hs-two-col{gap:0;padding:0;background:transparent;}
.sky-sport .hs-two-col > *{border-top:1px solid var(--sky-line);}
.sky-sport .hs-two-col > *:first-child{border-right:1px solid var(--sky-line);}
@media (max-width:900px){.sky-sport .hs-two-col > *:first-child{border-right:none;}}
.sky-sport .csh-eyebrow{
  color:var(--sky-red) !important;font-weight:900;letter-spacing:.18em;
  text-transform:uppercase;font-size:.7rem;position:relative;padding-left:14px;
}
.sky-sport .csh-eyebrow::before{
  content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:6px;height:14px;background:var(--sky-red);
}
.sky-sport .csh-title{
  color:#fff !important;font-weight:900;letter-spacing:-.01em;
  text-transform:uppercase;font-size:1.4rem;line-height:1.05;margin-top:6px;
}
.sky-sport .sh-link{
  color:var(--sky-yellow) !important;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;
}
.sky-sport .hs-stats-bar{
  display:flex;gap:0;flex-wrap:wrap;background:#000;padding:0;
  border-top:1px solid var(--sky-red);border-bottom:1px solid var(--sky-red);
}
.sky-sport .hs-stat-chip{
  flex:1;min-width:140px;background:transparent;border:none;
  border-right:1px solid var(--sky-line);border-radius:0;padding:18px 14px;
  display:flex;flex-direction:column;align-items:center;gap:4px;color:#fff;
}
.sky-sport .hs-stat-chip:last-child{border-right:none;}
.sky-sport .hs-stat-chip i{color:var(--sky-red);font-size:1.2rem;margin-bottom:4px;}
.sky-sport .hs-stat-value{font-size:1.8rem;font-weight:900;line-height:1;color:#fff;font-variant-numeric:tabular-nums;}
.sky-sport .hs-stat-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;color:rgba(255,255,255,.55);}
/* sport hero CSS reverted - sport now uses default white/colourful style */
.sky-sport .hs-take-inner{background:transparent;padding:4px 0;}
.sky-sport .hs-eyebrow{color:var(--sky-red);font-weight:900;letter-spacing:.18em;}
.sky-sport .hs-take-body,.sky-sport .hs-take-full{color:rgba(255,255,255,.82);}
.sky-sport .hs-take-more summary{color:var(--sky-yellow);font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
.sky-sport .hs-tonight-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:0;}
.sky-sport .hs-ev-card{
  background:var(--sky-card);border:none;border-bottom:1px solid var(--sky-line);
  border-right:1px solid var(--sky-line);border-radius:0;padding:0;overflow:hidden;
  display:flex;flex-direction:column;transition:background .15s;
}
.sky-sport .hs-ev-card:hover{background:#1c1c1c;}
.sky-sport .hs-ev-thumb{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;}
.sky-sport .hs-ev-thumb img{width:100%;height:100%;object-fit:cover;filter:saturate(.92);}
.sky-sport .hs-ev-badge{
  position:absolute;top:10px;left:10px;background:var(--sky-red) !important;color:#fff !important;
  font-weight:900;text-transform:uppercase;letter-spacing:.14em;font-size:.62rem;padding:4px 8px;border-radius:0;
}
.sky-sport .hs-ev-body{padding:14px 16px 16px;background:transparent;}
.sky-sport .hs-ev-title{font-weight:900;color:#fff;font-size:1rem;line-height:1.2;margin:0 0 6px;}
.sky-sport .hs-ev-title a{color:#fff;text-decoration:none;}
.sky-sport .hs-ev-title a:hover{color:var(--sky-yellow);}
.sky-sport .hs-ev-venue{color:rgba(255,255,255,.6);font-size:.72rem;}
.sky-sport .hs-ev-meta{color:rgba(255,255,255,.65);font-size:.72rem;margin-top:6px;}
.sky-sport .hs-ev-ctas{margin-top:10px;display:flex;gap:8px;}
.sky-sport .hs-ev-ctas .btn-ghost-sm{
  background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff;font-weight:800;
  text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;padding:7px 12px;border-radius:0;
}
.sky-sport .hs-ev-ctas .btn-primary-sm{
  background:var(--sky-red) !important;border-color:var(--sky-red) !important;color:#fff !important;
  font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;padding:7px 12px;border-radius:0;
}
.sky-sport .hs-venue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0;}
.sky-sport .hs-venue-card{
  background:var(--sky-card);border:none;border-right:1px solid var(--sky-line);
  border-bottom:1px solid var(--sky-line);border-radius:0;overflow:hidden;transition:background .15s;
}
.sky-sport .hs-venue-card:hover{background:#1c1c1c;}
.sky-sport .hs-venue-featured{box-shadow:inset 4px 0 0 var(--sky-red);}
.sky-sport .hs-vc-img{aspect-ratio:16/10;}
.sky-sport .hs-vc-img img{filter:saturate(.9);}
.sky-sport .hs-vc-feat-badge{background:var(--sky-red) !important;color:#fff !important;border-radius:0;font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.6rem;padding:3px 8px;}
.sky-sport .hs-vc-price{background:#000 !important;color:var(--sky-yellow) !important;border-radius:0;font-weight:900;}
.sky-sport .hs-vc-body{background:transparent;padding:12px 14px 14px;}
.sky-sport .hs-vc-cat{text-transform:uppercase;letter-spacing:.12em;font-weight:900;font-size:.62rem;}
.sky-sport .hs-vc-name{color:#fff;font-weight:900;font-size:1.02rem;}
.sky-sport .hs-vc-name a{color:#fff;text-decoration:none;}
.sky-sport .hs-vc-name a:hover{color:var(--sky-yellow);}
.sky-sport .hs-vc-ctas .btn-ghost-sm,
.sky-sport .hs-vc-ctas .btn-primary-sm{
  background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff;
  text-transform:uppercase;letter-spacing:.08em;font-weight:800;font-size:.66rem;border-radius:0;padding:6px 10px;
}
.sky-sport .hs-vc-ctas .btn-primary-sm{background:var(--sky-red);border-color:var(--sky-red);}
.sky-sport .hs-stories-list{display:flex;flex-direction:column;gap:0;}
.sky-sport .hs-story-card{
  background:transparent;border:none;border-bottom:1px solid var(--sky-line);padding:14px 0;
  display:grid;grid-template-columns:120px 1fr;gap:14px;border-radius:0;
}
.sky-sport .hs-story-card:hover{background:rgba(255,255,255,.03);}
.sky-sport .hs-story-img{border-radius:0;overflow:hidden;aspect-ratio:4/3;}
.sky-sport .hs-story-img img{filter:saturate(.9);}
.sky-sport .hs-story-kicker{color:var(--sky-red) !important;font-weight:900;text-transform:uppercase;letter-spacing:.14em;font-size:.62rem;}
.sky-sport .hs-story-title{color:#fff;font-weight:900;font-size:1rem;line-height:1.2;margin:4px 0;}
.sky-sport .hs-story-exc{color:rgba(255,255,255,.6);font-size:.76rem;}
.sky-sport .hs-story-meta{color:rgba(255,255,255,.4);font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;}
.sky-sport .hs-sub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1px;background:var(--sky-line);}
.sky-sport .hs-sub-tile{
  background:#000;color:#fff;border:none;border-radius:0;padding:22px 14px;
  display:flex;flex-direction:column;align-items:center;gap:8px;transition:background .15s,color .15s;
}
.sky-sport .hs-sub-tile:hover{background:var(--sub-color,var(--sky-red));color:#fff;}
.sky-sport .hs-sub-tile i{color:var(--sub-color,var(--sky-red));font-size:1.5rem;}
.sky-sport .hs-sub-tile:hover i{color:#fff;}
.sky-sport .hs-sub-label{text-transform:uppercase;letter-spacing:.12em;font-weight:900;font-size:.74rem;}
.sky-sport .hs-footer-links{display:flex;flex-wrap:wrap;gap:0;background:#000;border-top:2px solid var(--sky-red);padding:0;}
.sky-sport .hs-footer-links a{
  flex:1;min-width:180px;background:transparent;color:#fff;padding:18px 16px;
  border-right:1px solid var(--sky-line);border-radius:0;
  text-transform:uppercase;letter-spacing:.1em;font-weight:800;font-size:.74rem;
  display:flex;align-items:center;gap:8px;transition:background .15s,color .15s;
}
.sky-sport .hs-footer-links a:hover{background:var(--sky-red);color:#fff;}
.sky-sport .hs-footer-links a i{color:var(--sky-red);}
.sky-sport .hs-footer-links a:hover i{color:#fff;}
/* sport breadcrumb reverted to default */

/* ==========================================================================
   SKY-LOCAL ISLAND - community + neighbourhood sport stays white
   ========================================================================== */
.sky-sport .sky-local{
  background:#ffffff;color:#0a0a0a;padding:0;margin:0;border-top:4px solid var(--sky-red);
}
.sky-sport .sky-local::before{
  content:"Local & Community";display:block;background:#fff;color:var(--sky-red);
  font-weight:900;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;padding:18px 24px 0;
}
.sky-sport .sky-local .csh-eyebrow{color:var(--sky-red) !important;}
.sky-sport .sky-local .csh-eyebrow::before{background:var(--sky-red);}
.sky-sport .sky-local .csh-title{color:#0a0a0a !important;text-transform:uppercase;font-weight:900;}
.sky-sport .sky-local .sh-link{color:#0a0a0a !important;}
.sky-sport .sky-local .hs-two-col{background:#fff;}
.sky-sport .sky-local .hs-two-col > *{border-top:1px solid rgba(0,0,0,.06);background:#fff;}
.sky-sport .sky-local .hs-two-col > *:first-child{border-right:1px solid rgba(0,0,0,.06);}
.sky-sport .sky-local .hs-nearby,
.sky-sport .sky-local .hs-map{background:#fff;padding:28px 24px;}
.sky-sport .sky-local .hs-nearby-card .hs-nearby-name,
.sky-sport .sky-local .hs-nearby-card .hs-nearby-count{color:#fff;}
.sky-sport .sky-local .hcg-pill{background:#f5f5f5;color:#0a0a0a;}

@media (max-width:640px){
  .sky-sport .hs-tonight-list,.sky-sport .hs-venue-grid{grid-template-columns:1fr;}
  .sky-sport .csh-title{font-size:1.15rem;}
  .sky-sport .hs-stat-value{font-size:1.4rem;}
}

/* ==========================================================================
   MORE INFO button - halve size per Dom. Applies site-wide on event cards.
   Bug 2 fix: the generic .btn-tickets rule (~line 3608) adds margin-bottom:28px,
   font-size:.8rem and padding:14px 28px which made TICKETS render taller/wider
   than the matching MORE INFO ghost button. Force both buttons to identical
   box model: same flex basis, margin, padding, height, gap, border-radius.
   ========================================================================== */
.ev-card-ctas .btn-ghost-sm,
.ev-card-ctas .btn-tickets,
.ev-card-ctas .btn-primary-sm,
.ev-card-ctas .btn-disabled-sm,
.card-list .btn-ghost-sm,
.card-list .btn-tickets{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:.62rem !important;
  padding:6px 10px !important;
  margin:0 !important;
  letter-spacing:.06em !important;
  font-weight:700 !important;
  border-radius:6px !important;
  line-height:1 !important;
  min-height:28px !important;
  height:28px !important;
  box-sizing:border-box !important;
  flex:1 1 0 !important;
  gap:4px !important;
  white-space:nowrap !important;
  text-align:center !important;
  vertical-align:middle !important;
}
.ev-card-ctas{ align-items:stretch !important; }


/* Extend Sky-style hero CSS to music + nightlife templates */
body.page-template-tpl-music .hood-hero-full,
body.page-template-tpl-nightlife .hood-hero-full{border-bottom:3px solid #EB1C23;}
body.page-template-tpl-music .hhf-label,
body.page-template-tpl-nightlife .hhf-label{color:#EB1C23 !important;font-weight:900;letter-spacing:.2em;}
body.page-template-tpl-music .hhf-name,
body.page-template-tpl-nightlife .hhf-name{font-weight:900;text-transform:uppercase;letter-spacing:-.01em;}
body.page-template-tpl-music .hhf-quick-links .hhf-ql,
body.page-template-tpl-nightlife .hhf-quick-links .hhf-ql{background:#000;border:1px solid #EB1C23;color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
body.page-template-tpl-music .hhf-quick-links .hhf-ql:hover,
body.page-template-tpl-nightlife .hhf-quick-links .hhf-ql:hover{background:#EB1C23;color:#fff;}
body.page-template-tpl-music .hs-breadcrumb,
body.page-template-tpl-nightlife .hs-breadcrumb{background:#000;color:rgba(255,255,255,.7);border-bottom:1px solid rgba(255,255,255,.08);}
body.page-template-tpl-music .hs-breadcrumb a,
body.page-template-tpl-nightlife .hs-breadcrumb a{color:#FFCC00;}


/* MCR-INTRO-BOTTOM :: adaptive editorial block placed below grid */
.mcr-intro-bottom-wrap {
  max-width: 900px;
  margin: 48px auto 32px;
  padding: 28px 24px;
  border-top: 1px solid rgba(128,128,128,.18);
  color: inherit;
}
.mcr-intro-bottom-wrap .mib-heading {
  font-size: 1.1rem;
  font-weight: 700;
  margin: 0 0 16px;
  letter-spacing: -.01em;
  opacity: .85;
}
.mcr-intro-bottom-wrap .mcr-section-intro {
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
}
.mcr-intro-bottom-wrap .mcr-section-intro p {
  color: inherit !important;
  opacity: .78;
  font-size: .92rem !important;
  line-height: 1.7 !important;
  margin: 0 0 14px !important;
  font-weight: 400 !important;
}
.mcr-intro-bottom-wrap .mcr-section-intro p:first-child {
  font-weight: 600 !important;
  opacity: .92;
  border-left: 3px solid var(--dc-green, #2DB54B);
  padding-left: 14px !important;
  font-size: 1rem !important;
}
@media (max-width: 640px) {
  .mcr-intro-bottom-wrap { padding: 20px 16px; margin: 32px auto 24px; }
  .mcr-intro-bottom-wrap .mcr-section-intro p { font-size: .88rem !important; }
}


/* MCR-MOBILE-COMPACT-EVENTS :: tighten .ev-card on <=640 */
@media (max-width: 640px) {
  .ev-grid { gap: 8px !important; }
  .ev-card {
    padding: 8px !important;
    border-radius: 10px !important;
    min-height: unset !important;
  }
  .ev-card-img {
    height: 88px !important;
    border-radius: 8px !important;
    margin-bottom: 8px !important;
  }
  .ev-card .ev-title {
    font-size: .9rem !important;
    line-height: 1.25 !important;
    -webkit-line-clamp: 2;
    margin: 4px 0 !important;
  }
  .ev-card .ev-meta {
    font-size: .72rem !important;
    gap: 6px !important;
  }
  .ev-card .ev-price-chip,
  .ev-card .ev-date-chip {
    padding: 2px 6px !important;
    font-size: .7rem !important;
  }
  .ev-section-head { margin: 10px 0 6px !important; }
}


/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — Night Plan + Inline Drawer + Grid/Map toggle
   Shipped 2026-04-24 per WOT-HANDOFF. Appended at end = cascade wins.
   ═══════════════════════════════════════════════════════════════════════ */

/* =========================================================
   WOT V19 — drop-in styles for mcr.city theme
   ─────────────────────────────────────────────────────────
   Paste ALL of this into style.css, anywhere after the
   existing .WOT styles (it will override them cleanly).
   Or replace the existing WOT block in style.css with this.
   ─────────────────────────────────────────────────────────
   Dependencies: Inter font + FontAwesome (already loaded).
   Leaflet CSS: add this to wp_head or enqueue:
     <link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css">
   ========================================================= */


/* =========================================================
   WOT V19 — DROP-IN UPGRADE TO LIVE STRUCTURE
   Uses the actual live classes: section.WOT / wot-mini-label
   / wot-week-strip / wot-filterbar / wot-tg / wot-tg-row /
   wot-tg-time / wot-tg-ev-row / wot-ev-pill / wot-nav-bar
   Adds on top: Night Plan (+ FAB + sheet) · inline pull-down
   drawer replacing the old popup · Grid/Map seg toggle.
   Font: Inter only (no Playfair). Icons: FontAwesome.
   ========================================================= */

/* Brand tokens matching live site */
:root{
  --dc-red:#E8201A;
  --dc-blue:#1A56FF;
  --dc-green:#2DB54B;
  --dc-orange:#FF6B00;
  --dc-purple:#7C3AED;
  --dc-yellow:#F5C400;
  --dc-pink:#EC4899;
  --dc-cyan:#06B6D4;

  --ec:currentColor;
  --bg:#0d0d10;
  --bg-elev:rgba(255,255,255,.04);
  --fg:#fff;
  --fg-muted:rgba(255,255,255,.58);
  --fg-dim:rgba(255,255,255,.35);
  --stroke:rgba(255,255,255,.08);
  --stroke-hi:rgba(255,255,255,.14);
  --glass:rgba(13,13,16,.9);

  --safe-top:env(safe-area-inset-top,0px);
  --safe-bot:env(safe-area-inset-bottom,0px);
  --ease-out:cubic-bezier(.22,1,.36,1);
  --ease-spring:cubic-bezier(.34,1.4,.64,1);
}
.WOT.wot-light{
  --bg:#fff;
  --bg-elev:rgba(0,0,0,.028);
  --fg:#0c0c0e;
  --fg-muted:rgba(0,0,0,.6);
  --fg-dim:rgba(0,0,0,.4);
  --stroke:rgba(0,0,0,.08);
  --stroke-hi:rgba(0,0,0,.14);
  --glass:rgba(255,255,255,.92);
}

body.plan-open{padding-bottom:calc(85vh + var(--safe-bot));}
/* ══════════════════════════════════════════════════
   SECTION WOT
   ══════════════════════════════════════════════════ */
.WOT{
  background:var(--bg);color:var(--fg);
  padding:12px 14px 18px;
  transition:background .3s var(--ease-out),color .3s var(--ease-out);
}

/* ── MINI LABEL — Tonight · Live + Dark/Light + Grid/Map ── */
.wot-mini-label{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding:6px 2px 10px;
}
.wot-mini-tonight{font-size:.68rem;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:var(--fg);}
.wot-mini-line{flex:1;height:1px;background:var(--stroke-hi);min-width:20px;}
.wot-mini-live{display:inline-flex;align-items:center;gap:5px;font-size:.6rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--dc-red);font-variant-numeric:tabular-nums;}
.wot-mini-dot{width:6px;height:6px;border-radius:50%;background:var(--dc-red);box-shadow:0 0 8px var(--dc-red);animation:miniDot 1.6s ease-in-out infinite;}
@keyframes miniDot{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.4;transform:scale(.7);}}

.wot-mode-switch,.wot-view-switch{
  display:inline-flex;gap:2px;
  background:var(--bg-elev);border:1px solid var(--stroke);border-radius:999px;padding:2.5px;
}
.wot-mode-opt,.wot-view-opt{
  all:unset;cursor:pointer;
  font-size:.5rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  padding:5px 9px;border-radius:999px;color:var(--fg-dim);
  display:inline-flex;align-items:center;gap:4px;min-height:24px;
  transition:all .2s;
}
.wot-mode-opt.is-on,.wot-view-opt.is-on{background:var(--fg);color:var(--bg);}
.wot-mode-opt i,.wot-view-opt i{font-size:.55rem;}

/* ── WEEK STRIP — 7 days ── */
.wot-week-strip{
  display:flex;gap:4px;margin:0 0 10px;
  overflow-x:auto;scrollbar-width:none;
}
.wot-week-strip::-webkit-scrollbar{display:none;}
.wot-wday{
  flex-shrink:0;width:42px;height:46px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  border:1px solid var(--stroke);border-radius:10px;
  background:var(--bg-elev);cursor:pointer;
  transition:all .2s var(--ease-out);
}
.wot-wday:active{transform:scale(.95);}
.wot-wday:hover{border-color:var(--stroke-hi);}
.wot-wday.active{background:var(--dc-red);border-color:var(--dc-red);}
.wot-wday-dn{font-size:.5rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-dim);}
.wot-wday.active .wot-wday-dn{color:rgba(255,255,255,.85);}
.wot-wday-num{font-size:.92rem;font-weight:900;color:var(--fg);line-height:1;}
.wot-wday.active .wot-wday-num{color:#fff;}

/* ── FILTER BAR ── */
.wot-filterbar{
  display:flex;gap:6px;margin:0 0 10px;
  overflow-x:auto;scrollbar-width:none;align-items:center;
}
.wot-filterbar::-webkit-scrollbar{display:none;}
.wot-flt{
  all:unset;cursor:pointer;
  display:inline-flex;align-items:center;gap:5px;
  padding:7px 12px;border-radius:999px;
  font-size:.55rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  background:var(--bg-elev);color:var(--fg-muted);
  border:1px solid var(--stroke);white-space:nowrap;
  transition:all .2s var(--ease-out);min-height:32px;
}
.wot-flt:active{transform:scale(.95);}
.wot-flt-dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7;flex-shrink:0;}
.wot-flt.on{color:var(--bg);font-weight:900;}
.wot-flt[data-cat="all"].on{background:var(--fg);color:var(--bg);border-color:transparent;}
.wot-flt[data-cat="music"].on{background:var(--dc-red);color:#fff;border-color:transparent;}
.wot-flt[data-cat="sport"].on{background:var(--dc-blue);color:#fff;border-color:transparent;}
.wot-flt[data-cat="food"].on{background:var(--dc-green);color:#fff;border-color:transparent;}
.wot-flt[data-cat="nightlife"].on{background:var(--dc-orange);color:#fff;border-color:transparent;}
.wot-flt[data-cat="culture"].on{background:var(--dc-purple);color:#fff;border-color:transparent;}
.wot-flt[data-cat="family"].on{background:var(--dc-yellow);color:var(--bg);border-color:transparent;}

.wot-full-cal-btn{
  margin-left:auto;
  display:inline-flex;align-items:center;gap:5px;
  padding:7px 12px;border-radius:999px;
  font-size:.55rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--dc-red);white-space:nowrap;flex-shrink:0;
  transition:opacity .2s;
}
.wot-full-cal-btn:hover{opacity:.8;}
.wot-full-cal-btn i{font-size:.5em;}

/* ══════════════════════════════════════════════════
   TIME GRID
   ══════════════════════════════════════════════════ */
.wot-tg{
  background:var(--bg);
  border-radius:12px;
  border:1px solid var(--stroke);
  overflow:hidden;
  position:relative;
}

.wot-tg-row{
  display:flex;align-items:stretch;
  border-bottom:1px solid var(--stroke);
  min-height:50px;position:relative;
}
.wot-tg-row:last-child{border-bottom:none;}
.wot-tg-row.wot-past .wot-ep-title{opacity:.5;}
.wot-tg-row.wot-past .wot-ep-sub{opacity:.5;}
.wot-tg-row.wot-past .wot-ev-pill::before{opacity:.12;}
.wot-tg-row.wot-now{background:linear-gradient(90deg,rgba(232,32,26,.1),transparent 40%);}
.wot-tg-row.wot-now::before{
  content:'';position:absolute;top:0;left:58px;right:0;height:1px;
  background:linear-gradient(90deg,var(--dc-red),transparent);
  box-shadow:0 0 8px var(--dc-red);z-index:2;
}

.wot-tg-time{
  width:58px;flex-shrink:0;
  display:flex;align-items:center;justify-content:flex-end;
  padding:0 14px 0 10px;
  font-size:.64rem;font-weight:700;letter-spacing:-.01em;color:var(--fg-muted);
  font-variant-numeric:tabular-nums;
  border-right:1px solid var(--stroke);
  user-select:none;
}
.wot-tg-row.wot-past .wot-tg-time{color:var(--fg-dim);}
.wot-tg-row.wot-now .wot-tg-time{color:var(--dc-red);font-weight:900;font-size:.72rem;text-shadow:0 0 10px rgba(232,32,26,.4);}

.wot-tg-ev-row{
  display:flex;flex-wrap:nowrap;gap:6px;
  flex:1;min-width:0;
  overflow-x:auto;overflow-y:visible;scrollbar-width:none;
  padding:6px 40px 6px 6px;align-items:center;
  scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;
  position:relative;
}
.wot-tg-ev-row::-webkit-scrollbar{display:none;}
.wot-tg-ev-row::after{
  content:'';position:absolute;right:0;top:0;bottom:0;width:40px;
  background:linear-gradient(90deg,transparent,var(--bg));
  pointer-events:none;z-index:3;
}
.wot-ev-count{
  position:absolute;right:8px;top:50%;transform:translateY(-50%);
  font-size:.45rem;font-weight:700;color:var(--fg-dim);z-index:4;pointer-events:none;letter-spacing:.06em;text-transform:uppercase;
}

/* ══════════════════════════════════════════════════
   PILL — V19 brighter
   ══════════════════════════════════════════════════ */
.wot-ev-pill{
  all:unset;cursor:pointer;
  position:relative;overflow:hidden;flex-shrink:0;
  display:flex;flex-direction:column;justify-content:center;gap:2px;
  min-width:152px;max-width:204px;
  padding:8px 36px 8px 11px;
  border-radius:11px;
  background:color-mix(in srgb,var(--ec,var(--dc-red)) 10%,var(--bg-elev));
  border:1px solid color-mix(in srgb,var(--ec,var(--dc-red)) 35%,var(--stroke-hi));
  border-left:2.5px solid var(--ec,var(--dc-red));
  scroll-snap-align:start;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 1px 2px rgba(0,0,0,.26),
    0 5px 14px rgba(0,0,0,.22),
    0 0 18px color-mix(in srgb,var(--ec,var(--dc-red)) 12%,transparent);
  transition:transform .22s var(--ease-spring),box-shadow .22s;
  min-height:48px;
}
.WOT.wot-light .wot-ev-pill{
  background:color-mix(in srgb,var(--ec,var(--dc-red)) 8%,#fff);
  border-color:color-mix(in srgb,var(--ec,var(--dc-red)) 32%,var(--stroke-hi));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.6),
    0 1px 2px rgba(0,0,0,.05),
    0 4px 12px rgba(0,0,0,.07);
}
/* Category colour wash */
.wot-ev-pill::before{
  content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,var(--ec,var(--dc-red)) 0%,transparent 75%);
  opacity:.26;border-radius:inherit;pointer-events:none;z-index:0;
  transition:opacity .2s;
}
.WOT.wot-light .wot-ev-pill::before{opacity:.14;}
/* Specular sweep on hover — hint of V18 */
.wot-ev-pill::after{
  content:'';position:absolute;top:0;left:-110%;width:80%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.07),transparent);
  transition:left .65s var(--ease-out);pointer-events:none;z-index:0;
}
.wot-ev-pill:hover::after{left:130%;}
.wot-ev-pill:hover{
  transform:translateY(-2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 2px 4px rgba(0,0,0,.3),
    0 10px 24px rgba(0,0,0,.3),
    0 2px 24px color-mix(in srgb,var(--ec,var(--dc-red)) 24%,transparent);
}
.wot-ev-pill:hover::before{opacity:.22;}
.wot-ev-pill:active{transform:scale(.98);}
.wot-ev-pill.open{
  box-shadow:
    inset 0 0 0 1.5px var(--ec,var(--dc-red)),
    0 0 22px color-mix(in srgb,var(--ec,var(--dc-red)) 28%,transparent),
    0 8px 22px rgba(0,0,0,.38);
}
.wot-ev-pill.open::before{opacity:.24;}
.wot-ev-pill>*{position:relative;z-index:1;}

.wot-ep-title{
  font-family:'Inter',sans-serif;
  font-size:.72rem;font-weight:800;letter-spacing:-.01em;color:var(--fg);line-height:1.2;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.wot-ep-sub{
  font-size:.56rem;font-weight:500;color:var(--fg-muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}

/* + button */
.wot-ep-add{
  position:absolute;top:50%;right:5px;transform:translateY(-50%);z-index:3;
  width:28px;height:28px;border-radius:50%;
  background:rgba(255,255,255,.05);backdrop-filter:blur(6px);
  border:1px solid var(--stroke-hi);
  color:var(--fg-muted);cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  font-size:16px;font-weight:400;line-height:1;
  transition:all .2s var(--ease-spring);
}
.WOT.wot-light .wot-ep-add{background:rgba(0,0,0,.04);}
.wot-ep-add:hover{background:var(--ec,var(--dc-red));color:#fff;border-color:transparent;}
.wot-ep-add:active{transform:translateY(-50%) scale(.88);}
.wot-ev-pill[data-added="1"] .wot-ep-add{background:var(--dc-green);color:#fff;border-color:transparent;box-shadow:0 0 10px rgba(45,181,75,.5);}
.wot-ev-pill[data-added="1"] .wot-ep-add span{display:none;}
.wot-ev-pill[data-added="1"] .wot-ep-add::before{content:'';width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-2px);}
.wot-ev-pill[data-added="1"]{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--dc-green) 60%,transparent),0 5px 14px rgba(0,0,0,.25);}

.wot-ep-order{
  position:absolute;top:-5px;left:-5px;z-index:4;
  width:18px;height:18px;border-radius:50%;
  background:var(--dc-green);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:900;
  box-shadow:0 0 8px rgba(45,181,75,.55),0 2px 5px rgba(0,0,0,.3);
  animation:orderPop .3s var(--ease-spring);
}
@keyframes orderPop{from{transform:scale(0);}to{transform:scale(1);}}

/* ══════════════════════════════════════════════════
   INLINE PULL-DOWN DRAWER — bulletproof grid
   ══════════════════════════════════════════════════ */
.wot-drawer{
  max-height:0;overflow:hidden;position:relative;
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--ec,var(--dc-red)) 18%,var(--bg-elev)) 0%,var(--bg-elev) 60%,var(--bg-elev) 100%);
  border-bottom:1px solid var(--stroke);
  transition:max-height .5s var(--ease-out);
}
.WOT.wot-light .wot-drawer{
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--ec,var(--dc-red)) 22%,#fff) 0%,color-mix(in srgb,var(--ec,var(--dc-red)) 7%,#fff) 65%,#fff 100%);
}
.wot-drawer.open{max-height:720px;}
.wot-drawer::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--ec,var(--dc-red));
  box-shadow:0 0 14px color-mix(in srgb,var(--ec,var(--dc-red)) 45%,transparent);
}

.wot-dr-inner{
  position:relative;
  padding:20px 56px 20px 22px;
  display:flex;gap:18px;align-items:flex-start;
  box-sizing:border-box;
}
.wot-dr-img{
  width:120px;height:120px;border-radius:14px;overflow:hidden;
  background:var(--img) center/cover,color-mix(in srgb,var(--ec,var(--dc-red)) 20%,var(--bg-elev));
  position:relative;flex:0 0 120px;
  box-shadow:0 8px 20px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.04) inset;
}
.WOT.wot-light .wot-dr-img{box-shadow:0 6px 18px rgba(0,0,0,.12),0 0 0 1px rgba(0,0,0,.05) inset;}
.wot-dr-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.4));border-radius:inherit;}

.wot-dr-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;}
.wot-dr-cat{
  font-size:.54rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ec,var(--dc-red));align-self:flex-start;
  display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
}
.wot-dr-cat::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--ec,var(--dc-red));box-shadow:0 0 8px var(--ec,var(--dc-red));flex-shrink:0;}
.wot-dr-title{
  font-size:1.2rem;font-weight:900;letter-spacing:-.022em;color:var(--fg);line-height:1.12;
  word-wrap:break-word;overflow-wrap:break-word;
}
.wot-dr-meta{
  display:flex;gap:10px;align-items:center;flex-wrap:wrap;
  font-size:.64rem;color:var(--fg-muted);font-weight:600;
  font-variant-numeric:tabular-nums;letter-spacing:.01em;
}
.wot-dr-meta b{color:var(--fg);font-weight:800;}
.wot-dr-meta .sep{width:3px;height:3px;border-radius:50%;background:var(--stroke-hi);flex-shrink:0;}
.wot-dr-desc{font-size:.66rem;color:var(--fg-dim);line-height:1.6;margin-top:2px;max-width:640px;font-weight:500;}
.wot-dr-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:6px;}
.wot-dr-btn{
  all:unset;cursor:pointer;box-sizing:border-box;
  padding:10px 18px;border-radius:10px;
  font-size:.6rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;
  display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;
  transition:transform .2s var(--ease-spring),box-shadow .2s;min-height:38px;
}
.wot-dr-btn:active{transform:scale(.95);}
.wot-dr-btn.primary{background:var(--ec,var(--dc-red));color:#fff;box-shadow:0 8px 22px -5px var(--ec,var(--dc-red)),0 1px 0 rgba(255,255,255,.15) inset;}
.wot-dr-btn.primary:hover{transform:translateY(-1px);}
.wot-dr-btn.ghost{
  background:rgba(255,255,255,.05);color:var(--fg);
  border:1px solid var(--stroke-hi);
}
.WOT.wot-light .wot-dr-btn.ghost{background:rgba(0,0,0,.04);}
.wot-dr-close{
  position:absolute;top:10px;right:10px;
  all:unset;cursor:pointer;
  width:30px;height:30px;border-radius:50%;
  background:rgba(255,255,255,.08);backdrop-filter:blur(6px);
  border:1px solid var(--stroke-hi);color:var(--fg-muted);
  display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:700;z-index:4;
}
.WOT.wot-light .wot-dr-close{background:rgba(0,0,0,.06);}
.wot-dr-close:active{transform:scale(.9);}

/* Narrow: stack image on top */
@media (max-width:560px){
  .wot-dr-inner{flex-direction:column;padding:16px 16px 18px;gap:14px;}
  .wot-dr-img{width:100%;height:160px;flex:0 0 160px;border-radius:12px;}
  .wot-dr-title{font-size:1.08rem;}
  .wot-dr-close{top:10px;right:10px;width:30px;height:30px;}
}

/* ══════════════════════════════════════════════════
   MAP VIEW
   ══════════════════════════════════════════════════ */
.wot-mapview{
  display:none;margin-top:6px;
  height:calc(100vh - 280px);min-height:380px;
  border-radius:12px;overflow:hidden;position:relative;
  border:1px solid var(--stroke);
  background:var(--bg);
}
.WOT.map-on .wot-tg{display:none;}
.WOT.map-on .wot-mapview{display:block;}
#mcrmap{width:100%;height:100%;background:var(--bg);}
.leaflet-container{background:var(--bg);font-family:'Inter',sans-serif;}
.leaflet-control-attribution{background:var(--glass)!important;color:var(--fg-dim)!important;font-size:9px!important;padding:2px 6px!important;}
.leaflet-control-attribution a{color:var(--fg-muted)!important;}
.leaflet-bar{border:none!important;box-shadow:none!important;}
.leaflet-bar a{background:var(--glass)!important;backdrop-filter:blur(10px);color:var(--fg)!important;border:1px solid var(--stroke-hi)!important;font-size:16px;font-weight:700;line-height:30px!important;width:32px!important;height:32px!important;border-radius:8px!important;margin-bottom:4px!important;}
.pin-marker{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--c);color:#fff;font-size:10px;font-weight:900;box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--c),0 0 12px var(--c),0 4px 10px rgba(0,0,0,.4);cursor:pointer;}
.pin-marker.plan-stop{background:var(--fg);color:var(--bg);}
.leaflet-popup-content-wrapper{background:var(--glass)!important;backdrop-filter:blur(14px);color:var(--fg)!important;border-radius:10px!important;border:1px solid var(--stroke-hi)!important;padding:0!important;}
.leaflet-popup-tip{background:var(--glass)!important;}
.leaflet-popup-content{margin:0!important;padding:10px 12px!important;min-width:180px;}
.leaflet-popup-close-button{color:var(--fg-muted)!important;font-size:16px!important;padding:6px!important;}
.pop-cat{font-size:.5rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ec);margin-bottom:3px;}
.pop-title{font-size:.8rem;font-weight:800;color:var(--fg);margin-bottom:4px;line-height:1.2;}
.pop-meta{font-size:.55rem;color:var(--fg-muted);display:flex;gap:6px;align-items:center;margin-bottom:6px;}
.pop-meta .sep{width:2px;height:2px;border-radius:50%;background:var(--stroke-hi);}
.pop-btn{display:inline-block;padding:6px 10px;border-radius:6px;background:var(--ec);color:#fff;font-size:.5rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;min-height:28px;}
.pop-btn.ghost{background:transparent;color:var(--fg-muted);border:1px solid var(--stroke-hi);margin-left:4px;}

/* ══════════════════════════════════════════════════
   SITE NAV BAR (below WOT, as live)
   ══════════════════════════════════════════════════ */
.wot-nav-bar{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:0;margin-top:14px;
  border:1px solid var(--stroke);border-radius:12px;overflow:hidden;
  background:var(--bg);
}
.wnb-item{
  display:flex;flex-direction:column;gap:3px;
  padding:14px 10px;
  border-right:1px solid var(--stroke);
  border-top:1px solid var(--stroke);
  text-align:center;align-items:center;
  color:var(--fg-muted);transition:all .2s;cursor:pointer;
}
.wnb-item:nth-child(-n+4){border-top:none;}
.wnb-item:nth-child(4n){border-right:none;}
.wnb-item:hover{background:var(--bg-elev);color:var(--fg);}
.wnb-ico{
  width:34px;height:34px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  background:color-mix(in srgb,var(--wnb-col) 14%,transparent);
  color:var(--wnb-col);font-size:.8rem;
  box-shadow:0 0 18px -4px color-mix(in srgb,var(--wnb-col) 40%,transparent) inset;
}
.wnb-label{font-size:.6rem;font-weight:800;letter-spacing:.02em;color:var(--fg);}
.wnb-sub{font-size:.48rem;font-weight:600;letter-spacing:.02em;color:var(--fg-dim);text-transform:uppercase;}

/* ══════════════════════════════════════════════════
   PLAN FAB + SHEET
   ══════════════════════════════════════════════════ */
.plan-fab{
  position:fixed;bottom:calc(14px + var(--safe-bot));right:14px;z-index:70;
  display:inline-flex;align-items:center;gap:7px;padding:11px 16px 11px 13px;border-radius:999px;
  background:#0c0c0e;color:#fff;
  font-size:.6rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  box-shadow:0 14px 32px -10px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.08) inset;
  cursor:pointer;border:none;transition:transform .3s var(--ease-spring),opacity .3s;min-height:42px;
}
.plan-fab .pf-count{ background:#fff !important; color:#0c0c0e !important; }
.plan-fab:active{transform:scale(.94);}
.plan-fab i{font-size:.7rem;}
.plan-fab .pf-count{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:rgba(0,0,0,.3);font-size:.6rem;font-weight:900;font-variant-numeric:tabular-nums;}
.plan-fab .pf-count.bump{animation:bump .5s var(--ease-spring);}
@keyframes bump{0%{transform:scale(1);}40%{transform:scale(1.35);background:#fff;color:#000;}100%{transform:scale(1);}}
body.plan-open .plan-fab{transform:translateY(200px);opacity:0;pointer-events:none;}

.plan{
  position:fixed;left:0;right:0;bottom:0;z-index:65;
  background:var(--glass);
  backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);
  border-top:1px solid var(--stroke-hi);
  box-shadow:0 -22px 50px -14px rgba(0,0,0,.8);
  transform:translateY(calc(100% - 58px - var(--safe-bot)));
  transition:transform .5s var(--ease-out);
  max-width:1040px;margin:0 auto;
  border-radius:16px 16px 0 0;
  color:var(--fg);
}
body.plan-open .plan{transform:translateY(0);}
.plan-handle{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:12px 16px 10px;cursor:pointer;user-select:none;
  border-bottom:1px solid var(--stroke);position:relative;min-height:58px;
}
.plan-handle::before{content:'';position:absolute;left:50%;top:5px;transform:translateX(-50%);width:34px;height:3px;border-radius:3px;background:var(--stroke-hi);}
.ph-left{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;min-width:0;}
.ph-label{font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:var(--dc-red);}
.ph-summary{font-size:.62rem;color:var(--fg-muted);font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ph-summary b{color:var(--fg);font-weight:800;}
.ph-chevron{color:var(--fg-muted);transition:transform .4s;}
body.plan-open .ph-chevron{transform:rotate(180deg);}

.plan-body{max-height:calc(85vh - 58px - var(--safe-bot));overflow-y:auto;padding:0 0 calc(14px + var(--safe-bot));}
body:not(.plan-open) .plan-body{display:none;}

.plan-empty{padding:24px 18px 18px;text-align:center;color:var(--fg-muted);}
.plan-empty h3{font-size:.9rem;font-weight:800;color:var(--fg);letter-spacing:-.015em;margin-bottom:5px;}
.plan-empty p{font-size:.65rem;max-width:360px;margin:0 auto;line-height:1.55;}
.plan-empty kbd{display:inline-block;padding:1px 6px;border-radius:4px;background:var(--bg-elev);border:1px solid var(--stroke-hi);font-family:inherit;font-weight:700;color:var(--fg);font-size:.75rem;}

.plan-timeline{padding:10px 16px 0;position:relative;}
.plan-spine{position:absolute;top:24px;bottom:70px;left:36px;width:1.5px;background:linear-gradient(180deg,var(--dc-red),var(--dc-orange),var(--dc-purple));border-radius:2px;opacity:.4;z-index:0;}

.plan-step{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:8px 0;position:relative;z-index:1;animation:stepIn .3s var(--ease-out) both;}
@keyframes stepIn{from{opacity:0;transform:translateX(-6px);}to{opacity:1;transform:translateX(0);}}
.ps-bullet{width:28px;height:28px;border-radius:50%;background:var(--img) center/cover,var(--ec,var(--dc-red));color:#fff;display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:900;box-shadow:0 0 10px var(--ec,var(--dc-red)),0 0 0 3px var(--glass);position:relative;z-index:2;}
.ps-bullet::before{content:'';position:absolute;inset:0;border-radius:50%;background:rgba(0,0,0,.45);}
.ps-bullet::after{content:attr(data-n);position:absolute;z-index:1;text-shadow:0 1px 2px rgba(0,0,0,.6);}
.ps-body{min-width:0;}
.ps-cat{font-size:.45rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ec,var(--dc-red));}
.ps-title{font-size:.72rem;font-weight:800;color:var(--fg);letter-spacing:-.01em;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ps-meta{font-size:.55rem;color:var(--fg-muted);font-variant-numeric:tabular-nums;display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.ps-meta .sep{width:2px;height:2px;border-radius:50%;background:var(--stroke-hi);}
.ps-btn{all:unset;cursor:pointer;width:28px;height:28px;border-radius:8px;background:var(--bg-elev);border:1px solid var(--stroke);color:var(--fg-muted);display:flex;align-items:center;justify-content:center;}

.plan-transit{display:grid;grid-template-columns:34px 1fr;gap:10px;padding:1px 0;position:relative;z-index:1;animation:stepIn .3s var(--ease-out) both;}
.pt-bullet{width:28px;height:28px;margin-left:4px;display:flex;align-items:center;justify-content:center;color:var(--fg-dim);font-size:.72rem;}
.pt-body{display:flex;align-items:center;gap:6px;padding:5px 9px;border-radius:8px;background:var(--bg-elev);border:1px dashed var(--stroke-hi);font-size:.55rem;font-weight:600;color:var(--fg-muted);flex-wrap:wrap;}
.pt-body .mode{display:inline-flex;align-items:center;gap:3px;font-weight:800;color:var(--fg);}
.pt-body .mode.walk{color:var(--dc-green);}
.pt-body .mode.tram{color:var(--dc-blue);}
.pt-body .mode.uber{color:var(--dc-orange);}
.pt-body .sep{width:2px;height:2px;border-radius:50%;background:var(--stroke-hi);}

.plan-summary{margin:12px 16px 4px;padding:11px 13px;border-radius:10px;background:var(--bg-elev);border:1px solid var(--stroke-hi);display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.ps-stat{display:flex;flex-direction:column;gap:1px;}
.ps-stat .k{font-size:.45rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-dim);}
.ps-stat .v{font-size:.85rem;font-weight:900;color:var(--fg);letter-spacing:-.02em;font-variant-numeric:tabular-nums;}
.ps-actions-main{grid-column:1/-1;display:flex;gap:6px;margin-top:4px;}
.plan-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:11px 12px;border-radius:8px;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;min-height:40px;}
.plan-btn.primary{background:linear-gradient(90deg,var(--dc-red),var(--dc-orange));color:#fff;}
.plan-btn.ghost{background:transparent;color:var(--fg-muted);border:1px solid var(--stroke-hi);}

/* Hint banner */
.hint{margin:18px 16px 0;padding:14px 16px;background:var(--bg-elev);border:1px solid var(--stroke);border-radius:10px;font-size:.62rem;color:var(--fg-muted);line-height:1.55;}
.hint b{color:var(--fg);font-weight:800;}

/* Mobile breakpoints */
@media (max-width:640px){
  .wot-mini-line{flex:0 0 20px;}
  .wot-nav-bar{grid-template-columns:repeat(4,1fr);}
  .wot-wday{width:40px;height:44px;}
  .wot-wday-num{font-size:.85rem;}
  .wot-ev-pill{min-width:162px;max-width:200px;padding:9px 38px 9px 12px;}
  .wot-ep-title{font-size:.7rem;}
  .wot-ep-sub{font-size:.56rem;}
}




/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — Amendment 01 overrides (force V19 values over older CSS)
   Ensures + on every pill, colour intensity, compact rows.
   ═══════════════════════════════════════════════════════════════════════ */

.WOT .wot-ev-pill{
  min-height:48px !important;
  min-width:152px !important;
  max-width:204px !important;
  padding:8px 36px 8px 11px !important;
  border-radius:11px !important;
  background:color-mix(in srgb, var(--ec, #E8201A) 10%, rgba(255,255,255,.04)) !important;
  border:1px solid color-mix(in srgb, var(--ec, #E8201A) 35%, rgba(255,255,255,.14)) !important;
  border-left:2.5px solid var(--ec, #E8201A) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.WOT.wot-light .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 8%, #fff) !important;
  border-color:color-mix(in srgb, var(--ec, #E8201A) 32%, rgba(0,0,0,.14)) !important;
}
.WOT .wot-ev-pill::before{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(135deg, var(--ec, #E8201A) 0%, transparent 75%) !important;
  opacity:.26 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  z-index:0 !important;
}
.WOT.wot-light .wot-ev-pill::before{opacity:.14 !important;}

.WOT .wot-tg-row{min-height:50px !important;}
.WOT .wot-tg-ev-row{padding:6px 40px 6px 6px !important;}
.WOT .wot-ep-title{
  font-family:'Inter',sans-serif !important;
  font-size:.72rem !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  letter-spacing:-.01em !important;
  max-width:none !important;
  color:var(--fg, #fff) !important;
}
.WOT.wot-light .wot-ep-title{color:#0c0c0e !important;}
.WOT .wot-ep-sub{
  font-size:.56rem !important;
  font-weight:500 !important;
  color:var(--fg-muted, rgba(255,255,255,.58)) !important;
}
.WOT.wot-light .wot-ep-sub{color:rgba(0,0,0,.6) !important;}

/* Ensure + button is positioned INSIDE every pill (not at row end) */
.WOT .wot-ev-pill .wot-ep-add{
  position:absolute !important;
  top:50% !important;
  right:5px !important;
  left:auto !important;
  transform:translateY(-50%) !important;
  width:28px !important;
  height:28px !important;
  z-index:3 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — Amendment 02 (12.4.22)
   Final cleanup: kill competing ::after rules + boost light mode colour
   body.home .WOT specificity beats any older !important rules
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Kill the BLACK scroll-fade that's bleeding onto pills ── */
body .WOT .wot-tg-ev-row::after{
  background:linear-gradient(90deg, transparent, var(--bg, #0d0d10)) !important;
  position:absolute !important;
  right:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:40px !important;
  min-height:0 !important;
  margin-left:0 !important;
  pointer-events:none !important;
  z-index:3 !important;
}
body .WOT.wot-light .wot-tg-ev-row::after{
  background:linear-gradient(90deg, transparent, #fff) !important;
}

/* ── Remove the competing bottom-bar ::after rule on pills ── */
body .WOT .wot-ev-pill::after{
  content:'' !important;
  position:absolute !important;
  top:0 !important;
  left:-110% !important;
  right:auto !important;
  bottom:auto !important;
  width:80% !important;
  height:100% !important;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.07), transparent) !important;
  border-radius:0 !important;
  opacity:1 !important;
  transition:left .65s cubic-bezier(.22,1,.36,1) !important;
  pointer-events:none !important;
  z-index:0 !important;
  display:block !important;
}
body .WOT .wot-ev-pill:hover::after{
  left:130% !important;
}

/* ── Boost LIGHT MODE intensity so colours actually read ── */
body .WOT.wot-light .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 15%, #fff) !important;
  border-color:color-mix(in srgb, var(--ec, #E8201A) 45%, rgba(0,0,0,.14)) !important;
  border-left:3px solid var(--ec, #E8201A) !important;
}
body .WOT.wot-light .wot-ev-pill::before{opacity:.22 !important;}

/* ── Shrink + button in light mode so it's not a grey blob ── */
body .WOT .wot-ep-add{
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border:1.5px solid var(--ec, currentColor) !important;
  color:var(--ec, var(--fg-muted)) !important;
  opacity:.65 !important;
  width:24px !important;
  height:24px !important;
  font-size:14px !important;
}
body .WOT .wot-ep-add:hover{
  background:var(--ec, var(--dc-red)) !important;
  color:#fff !important;
  opacity:1 !important;
}
body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add{
  background:var(--dc-green, #2DB54B) !important;
  color:#fff !important;
  border-color:transparent !important;
  opacity:1 !important;
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — Final CSS (designer's spec, 2026-04-24, v12.4.23)
   
   Amendment 01: + per pill, colourful pills, compact rows
   Amendment 02: light-mode fade bug fix
   
   Selector body.home .WOT beats any stray !important rule left elsewhere.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Row scroll fade: explicit light/dark background, never #000 in light ── */
body .WOT .wot-tg-ev-row::after{
  content:'' !important;
  position:absolute !important;
  right:0 !important;
  top:0 !important;
  bottom:0 !important;
  left:auto !important;
  width:40px !important;
  min-height:0 !important;
  margin-left:0 !important;
  pointer-events:none !important;
  z-index:3 !important;
}
body .WOT.wot-light .wot-tg-ev-row::after{
  background:linear-gradient(90deg, transparent 0%, #fafafa 100%) !important;
}
body .WOT:not(.wot-light) .wot-tg-ev-row::after{
  background:linear-gradient(90deg, transparent 0%, #0d0d10 100%) !important;
}

/* ── Pill ::after hover specular only - no bottom bar ── */
body .WOT .wot-ev-pill::after{
  content:'' !important;
  position:absolute !important;
  top:0 !important;
  left:-110% !important;
  right:auto !important;
  bottom:auto !important;
  width:80% !important;
  height:100% !important;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.07), transparent) !important;
  border-radius:0 !important;
  opacity:1 !important;
  transition:left .65s cubic-bezier(.22,1,.36,1) !important;
  pointer-events:none !important;
  z-index:0 !important;
  display:block !important;
}
body .WOT .wot-ev-pill:hover::after{left:130% !important;}

/* ── PILLS: compact + colourful ── */
body .WOT .wot-ev-pill{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  gap:2px !important;
  min-height:48px !important;
  min-width:152px !important;
  max-width:204px !important;
  padding:8px 36px 8px 11px !important;
  border-radius:11px !important;
  position:relative !important;
  overflow:hidden !important;
  flex-shrink:0 !important;
  cursor:pointer !important;
  /* DARK MODE background */
  background:color-mix(in srgb, var(--ec, #E8201A) 12%, #1a1a1e) !important;
  border:1px solid color-mix(in srgb, var(--ec, #E8201A) 35%, rgba(255,255,255,.14)) !important;
  border-left:3px solid var(--ec, #E8201A) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 1px 2px rgba(0,0,0,.26),
    0 5px 14px rgba(0,0,0,.22),
    0 0 18px color-mix(in srgb, var(--ec, #E8201A) 12%, transparent) !important;
}
/* LIGHT MODE — more vibrant 22% tint so music reads as red, culture as purple etc. */
body .WOT.wot-light .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 22%, #fff) !important;
  border:1px solid color-mix(in srgb, var(--ec, #E8201A) 55%, rgba(0,0,0,.14)) !important;
  border-left:3px solid var(--ec, #E8201A) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.7),
    0 1px 2px rgba(0,0,0,.05),
    0 4px 12px rgba(0,0,0,.07) !important;
}

/* ── PILL ::before diagonal colour wash ── */
body .WOT .wot-ev-pill::before{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(135deg, var(--ec, #E8201A) 0%, transparent 75%) !important;
  opacity:.28 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  z-index:0 !important;
}
body .WOT.wot-light .wot-ev-pill::before{opacity:.22 !important;}

/* ── PILL children above overlays ── */
body .WOT .wot-ev-pill > *{position:relative !important; z-index:1 !important;}

/* ── TITLE + SUB ── */
body .WOT .wot-ep-title{
  font-family:'Inter', sans-serif !important;
  font-size:.72rem !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
  line-height:1.2 !important;
  max-width:none !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:#fff !important;
}
body .WOT.wot-light .wot-ep-title{color:#0c0c0e !important;}
body .WOT .wot-ep-sub{
  font-size:.56rem !important;
  font-weight:500 !important;
  line-height:1.3 !important;
  color:rgba(255,255,255,.7) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body .WOT.wot-light .wot-ep-sub{color:rgba(0,0,0,.6) !important;}

/* ── ROW HEIGHT: compact ── */
body .WOT .wot-tg-row{min-height:50px !important;}
body .WOT .wot-tg-ev-row{
  padding:6px 44px 6px 6px !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  overflow-y:visible !important;
  align-items:center !important;
  gap:6px !important;
}

/* ── + BUTTON: small coloured outline, not grey blob ── */
body .WOT .wot-ev-pill .wot-ep-add{
  position:absolute !important;
  top:50% !important;
  right:5px !important;
  left:auto !important;
  transform:translateY(-50%) !important;
  width:22px !important;
  height:22px !important;
  padding:0 !important;
  border-radius:50%  !important;
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border:1.5px solid var(--ec, currentColor) !important;
  color:var(--ec, rgba(255,255,255,.7)) !important;
  opacity:.8 !important;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1 !important;
  z-index:3 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  transition:all .2s !important;
}
body .WOT.wot-light .wot-ev-pill .wot-ep-add{color:var(--ec, #0c0c0e) !important;}
body .WOT .wot-ev-pill .wot-ep-add:hover{
  background:var(--ec, #E8201A) !important;
  color:#fff !important;
  border-color:transparent !important;
  opacity:1 !important;
}
body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add{
  background:var(--dc-green, #2DB54B) !important;
  color:#fff !important;
  border-color:transparent !important;
  opacity:1 !important;
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — Final (v12.4.24)
   Amendment 01 Fix 1: + on EVERY pill (pill now a div, + a proper child button)
   Amendment 01 Fix 2: pills colourful (12% dark / 22% light)
   Amendment 01 Fix 3: compact rows - row 50px, pill 44px
   Amendment 02:       light mode fade to #fafafa
   Mobile:             FAB fixed, tap targets 26px, pills 140-190px
   ═══════════════════════════════════════════════════════════════════════ */

body .WOT .wot-ev-pill{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  gap:1px !important;
  min-height:44px !important;
  max-height:44px !important;
  min-width:152px !important;
  max-width:204px !important;
  padding:5px 32px 5px 10px !important;
  border-radius:10px !important;
  position:relative !important;
  overflow:hidden !important;
  flex-shrink:0 !important;
  cursor:pointer !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  background:color-mix(in srgb, var(--ec, #E8201A) 12%, #1a1a1e) !important;
  border:1px solid color-mix(in srgb, var(--ec, #E8201A) 35%, rgba(255,255,255,.14)) !important;
  border-left:3px solid var(--ec, #E8201A) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.07),
    0 1px 2px rgba(0,0,0,.26),
    0 3px 10px rgba(0,0,0,.22),
    0 0 14px color-mix(in srgb, var(--ec, #E8201A) 12%, transparent) !important;
  transition:transform .22s cubic-bezier(.34,1.4,.64,1) !important;
}
body .WOT.wot-light .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 22%, #fff) !important;
  border:1px solid color-mix(in srgb, var(--ec, #E8201A) 55%, rgba(0,0,0,.14)) !important;
  border-left:3px solid var(--ec, #E8201A) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.7),
    0 1px 2px rgba(0,0,0,.05),
    0 3px 8px rgba(0,0,0,.06) !important;
}
body .WOT .wot-ev-pill:hover{transform:translateY(-1px) !important;}
body .WOT .wot-ev-pill:focus-visible{outline:2px solid var(--ec, #E8201A) !important; outline-offset:2px !important;}

body .WOT .wot-ev-pill::before{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(135deg, var(--ec, #E8201A) 0%, transparent 75%) !important;
  opacity:.28 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  z-index:0 !important;
}
body .WOT.wot-light .wot-ev-pill::before{opacity:.24 !important;}

body .WOT .wot-ev-pill::after{
  content:'' !important;
  position:absolute !important;
  top:0 !important;
  left:-110% !important;
  right:auto !important;
  bottom:auto !important;
  width:80% !important;
  height:100% !important;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.08), transparent) !important;
  border-radius:0 !important;
  opacity:1 !important;
  transition:left .65s cubic-bezier(.22,1,.36,1) !important;
  pointer-events:none !important;
  z-index:0 !important;
  display:block !important;
}
body .WOT .wot-ev-pill:hover::after{left:130% !important;}

body .WOT .wot-ev-pill > *{position:relative !important; z-index:1 !important;}

body .WOT .wot-ep-title{
  font-family:'Inter', sans-serif !important;
  font-size:.7rem !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
  line-height:1.15 !important;
  max-width:none !important;
  width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:#fff !important;
}
body .WOT.wot-light .wot-ep-title{color:#0c0c0e !important;}
body .WOT .wot-ep-sub{
  font-size:.54rem !important;
  font-weight:500 !important;
  line-height:1.2 !important;
  max-width:none !important;
  width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:rgba(255,255,255,.65) !important;
}
body .WOT.wot-light .wot-ep-sub{color:rgba(0,0,0,.6) !important;}

body .WOT .wot-tg{
  border:1px solid var(--stroke, rgba(255,255,255,.08)) !important;
  border-radius:12px !important;
  overflow:hidden !important;
}
body .WOT .wot-tg-row{
  display:flex !important;
  align-items:center !important;
  min-height:50px !important;
  max-height:50px !important;
  border-bottom:1px solid var(--stroke, rgba(255,255,255,.08)) !important;
  padding:0 !important;
  position:relative !important;
}
body .WOT .wot-tg-row:last-child{border-bottom:none !important;}
body .WOT .wot-tg-time{
  width:58px !important;
  flex-shrink:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  padding:0 14px 0 10px !important;
  font-size:.64rem !important;
  font-weight:700 !important;
  color:var(--fg-muted, rgba(255,255,255,.58)) !important;
  border-right:1px solid var(--stroke, rgba(255,255,255,.08)) !important;
  height:100% !important;
}
body .WOT .wot-tg-ev-row{
  display:flex !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  overflow-y:visible !important;
  align-items:center !important;
  gap:6px !important;
  padding:3px 44px 3px 6px !important;
  flex:1 !important;
  min-width:0 !important;
  height:100% !important;
  scrollbar-width:none !important;
  -webkit-overflow-scrolling:touch !important;
  scroll-snap-type:x proximity !important;
}
body .WOT .wot-tg-ev-row::-webkit-scrollbar{display:none !important;}

body .WOT .wot-tg-ev-row::after{
  content:'' !important;
  position:absolute !important;
  right:0 !important;
  top:0 !important;
  bottom:0 !important;
  left:auto !important;
  width:40px !important;
  min-height:0 !important;
  margin-left:0 !important;
  pointer-events:none !important;
  z-index:3 !important;
}
body .WOT.wot-light .wot-tg-ev-row::after{
  background:linear-gradient(90deg, transparent 0%, #fafafa 100%) !important;
}
body .WOT:not(.wot-light) .wot-tg-ev-row::after{
  background:linear-gradient(90deg, transparent 0%, #0d0d10 100%) !important;
}

body .WOT .wot-ev-pill .wot-ep-add{
  position:absolute !important;
  top:50% !important;
  right:5px !important;
  left:auto !important;
  transform:translateY(-50%) !important;
  width:22px !important;
  height:22px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border:1.5px solid var(--ec, currentColor) !important;
  color:var(--ec, rgba(255,255,255,.7)) !important;
  opacity:.85 !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1 !important;
  z-index:3 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  transition:all .2s !important;
  flex-shrink:0 !important;
}
body .WOT.wot-light .wot-ev-pill .wot-ep-add{color:var(--ec, #0c0c0e) !important;}
body .WOT .wot-ev-pill .wot-ep-add:hover{
  background:var(--ec, #E8201A) !important;
  color:#fff !important;
  border-color:transparent !important;
  opacity:1 !important;
  transform:translateY(-50%) scale(1.1) !important;
}
body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add{
  background:var(--dc-green, #2DB54B) !important;
  color:#fff !important;
  border-color:transparent !important;
  opacity:1 !important;
}

@media (max-width: 900px){
  body .plan-fab{
    position:fixed !important;
    bottom:calc(14px + env(safe-area-inset-bottom, 0px)) !important;
    right:14px !important;
    z-index:70 !important;
    display:inline-flex !important;
  }
  body .WOT .wot-ev-pill{min-width:140px !important; max-width:190px !important;}
  body .WOT .wot-tg-time{width:48px !important; font-size:.58rem !important; padding:0 10px 0 8px !important;}
  body .WOT .wot-ev-pill .wot-ep-add{width:26px !important; height:26px !important; font-size:16px !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — Premium Drawer (v12.4.26)
   Hero image with category-coloured fallback, typography hierarchy,
   iconised meta, 4 action buttons, reveal animation.
   ═══════════════════════════════════════════════════════════════════════ */

body .WOT .wot-drawer{
  max-height:0 !important;
  overflow:hidden !important;
  position:relative !important;
  transition:max-height .55s cubic-bezier(.22,1,.36,1) !important;
  background:transparent !important;
  border-bottom:none !important;
}
body .WOT .wot-drawer.open{max-height:720px !important;}

body .WOT .wot-dr-inner{
  position:relative !important;
  padding:22px 60px 22px 22px !important;
  display:flex !important;
  gap:22px !important;
  align-items:flex-start !important;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--ec, #E8201A) 18%, transparent) 0%, transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,0,0,.3)),
    #141418 !important;
  border-radius:14px !important;
  margin:10px 12px !important;
  border:1px solid color-mix(in srgb, var(--ec, #E8201A) 28%, rgba(255,255,255,.08)) !important;
  box-shadow:
    0 14px 40px -12px rgba(0,0,0,.55),
    0 2px 8px rgba(0,0,0,.3),
    inset 0 1px 0 rgba(255,255,255,.06),
    0 0 30px -6px color-mix(in srgb, var(--ec, #E8201A) 30%, transparent) !important;
  animation:drwReveal .55s cubic-bezier(.22,1,.36,1) !important;
  overflow:hidden !important;
}
body .WOT.wot-light .wot-dr-inner{
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--ec, #E8201A) 20%, transparent) 0%, transparent 55%),
    linear-gradient(180deg, #ffffff, #f5f5f7) !important;
  border-color:color-mix(in srgb, var(--ec, #E8201A) 32%, rgba(0,0,0,.08)) !important;
  box-shadow:
    0 14px 40px -12px rgba(0,0,0,.15),
    0 2px 8px rgba(0,0,0,.06),
    inset 0 1px 0 rgba(255,255,255,.8),
    0 0 24px -6px color-mix(in srgb, var(--ec, #E8201A) 28%, transparent) !important;
}

@keyframes drwReveal{
  from { opacity:0; transform:translateY(-8px); }
  to   { opacity:1; transform:translateY(0); }
}

/* Category-coloured glow blob in corner */
body .WOT .wot-dr-glow{
  position:absolute !important;
  top:-40px !important; right:-40px !important;
  width:220px !important; height:220px !important;
  background:radial-gradient(circle, color-mix(in srgb, var(--ec, #E8201A) 35%, transparent) 0%, transparent 70%) !important;
  pointer-events:none !important;
  z-index:0 !important;
  opacity:.6 !important;
}

/* Hero image: 160 desktop, full-width mobile */
body .WOT .wot-dr-img{
  position:relative !important;
  flex:0 0 170px !important;
  height:140px !important;
  border-radius:12px !important;
  background-size:cover !important;
  background-position:center !important;
  background-color:color-mix(in srgb, var(--ec, #E8201A) 18%, #1a1a1e) !important;
  box-shadow:
    0 10px 24px -8px rgba(0,0,0,.5),
    0 0 0 1px rgba(255,255,255,.06) inset,
    0 0 24px -8px color-mix(in srgb, var(--ec, #E8201A) 35%, transparent) !important;
  overflow:hidden !important;
  z-index:1 !important;
}
body .WOT.wot-light .wot-dr-img{
  box-shadow:
    0 8px 20px -6px rgba(0,0,0,.18),
    0 0 0 1px rgba(0,0,0,.06) inset,
    0 0 24px -8px color-mix(in srgb, var(--ec, #E8201A) 35%, transparent) !important;
}
body .WOT .wot-dr-img-scrim{
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg, transparent 45%, rgba(0,0,0,.45) 100%) !important;
  border-radius:inherit !important;
}
body .WOT .wot-dr-img-fallback{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(135deg,
    color-mix(in srgb, var(--ec, #E8201A) 45%, #1a1a1e) 0%,
    color-mix(in srgb, var(--ec, #E8201A) 15%, #1a1a1e) 100%) !important;
  color:#fff !important;
  font-size:58px !important;
  opacity:.9 !important;
  text-shadow:0 4px 16px rgba(0,0,0,.4) !important;
}
body .WOT.wot-light .wot-dr-img-fallback{
  background:linear-gradient(135deg,
    color-mix(in srgb, var(--ec, #E8201A) 55%, #fff) 0%,
    color-mix(in srgb, var(--ec, #E8201A) 20%, #fff) 100%) !important;
  color:#fff !important;
}

/* Content column */
body .WOT .wot-dr-content{
  flex:1 !important;
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  position:relative !important;
  z-index:1 !important;
}

/* Category eyebrow */
body .WOT .wot-dr-cat{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  font-size:.58rem !important;
  font-weight:900 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:var(--ec, #E8201A) !important;
  align-self:flex-start !important;
}
body .WOT .wot-dr-cat-dot{
  width:7px !important; height:7px !important;
  border-radius:50% !important;
  background:var(--ec, #E8201A) !important;
  box-shadow:0 0 10px var(--ec, #E8201A) !important;
}

/* Title - premium */
body .WOT .wot-dr-title{
  font-family:'Inter Tight', 'Inter', sans-serif !important;
  font-size:1.38rem !important;
  font-weight:900 !important;
  letter-spacing:-.028em !important;
  line-height:1.08 !important;
  color:#fff !important;
  margin:0 !important;
  word-wrap:break-word !important;
}
body .WOT.wot-light .wot-dr-title{color:#0c0c0e !important;}

/* Meta row - iconised chips */
body .WOT .wot-dr-meta{
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  font-size:.66rem !important;
  color:rgba(255,255,255,.72) !important;
  font-weight:600 !important;
  font-variant-numeric:tabular-nums !important;
  margin:2px 0 2px !important;
}
body .WOT.wot-light .wot-dr-meta{color:rgba(0,0,0,.68) !important;}
body .WOT .wot-dr-meta-item{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
}
body .WOT .wot-dr-meta-item i{
  font-size:.72em !important;
  color:var(--ec, #E8201A) !important;
  opacity:.85 !important;
}

/* Free/Price chip */
body .WOT .wot-dr-chip{
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  padding:3px 9px !important;
  border-radius:999px !important;
  font-size:.58rem !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
  text-transform:uppercase !important;
}
body .WOT .wot-dr-chip.free{
  background:color-mix(in srgb, #2DB54B 22%, transparent) !important;
  color:#2DB54B !important;
  border:1px solid color-mix(in srgb, #2DB54B 40%, transparent) !important;
}
body .WOT .wot-dr-chip.price{
  background:color-mix(in srgb, var(--ec, #E8201A) 22%, transparent) !important;
  color:var(--ec, #E8201A) !important;
  border:1px solid color-mix(in srgb, var(--ec, #E8201A) 40%, transparent) !important;
}
body .WOT .wot-dr-chip i{font-size:.8em !important;}

/* Description */
body .WOT .wot-dr-desc{
  font-size:.72rem !important;
  line-height:1.55 !important;
  color:rgba(255,255,255,.6) !important;
  max-width:620px !important;
  margin:2px 0 4px !important;
  font-weight:500 !important;
}
body .WOT.wot-light .wot-dr-desc{color:rgba(0,0,0,.6) !important;}

/* Action row */
body .WOT .wot-dr-actions{
  display:flex !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  margin-top:6px !important;
  align-items:center !important;
}

body .WOT .wot-dr-btn{
  all:unset !important;
  cursor:pointer !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  padding:11px 18px !important;
  border-radius:10px !important;
  font-family:'Inter', sans-serif !important;
  font-size:.66rem !important;
  font-weight:800 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  min-height:40px !important;
  box-sizing:border-box !important;
  transition:transform .2s cubic-bezier(.34,1.4,.64,1), box-shadow .2s, background .2s !important;
}
body .WOT .wot-dr-btn i{font-size:.95em !important;}
body .WOT .wot-dr-btn:active{transform:scale(.96) !important;}

/* Primary Book button - gradient + glow */
body .WOT .wot-dr-btn.primary{
  background:linear-gradient(135deg, var(--ec, #E8201A) 0%, color-mix(in srgb, var(--ec, #E8201A) 70%, #000) 100%) !important;
  color:#fff !important;
  box-shadow:
    0 8px 22px -6px color-mix(in srgb, var(--ec, #E8201A) 60%, transparent),
    0 1px 0 rgba(255,255,255,.18) inset,
    0 -1px 0 rgba(0,0,0,.15) inset !important;
}
body .WOT .wot-dr-btn.primary:hover{
  transform:translateY(-1px) !important;
  box-shadow:
    0 12px 28px -6px color-mix(in srgb, var(--ec, #E8201A) 70%, transparent),
    0 1px 0 rgba(255,255,255,.18) inset !important;
}
body .WOT .wot-dr-btn.primary i{transition:transform .25s !important;}
body .WOT .wot-dr-btn.primary:hover i{transform:translateX(2px) !important;}

/* Add to night - outlined with category colour */
body .WOT .wot-dr-btn.add-btn{
  background:transparent !important;
  color:var(--ec, #E8201A) !important;
  border:1.5px solid color-mix(in srgb, var(--ec, #E8201A) 45%, transparent) !important;
}
body .WOT .wot-dr-btn.add-btn:hover{
  background:color-mix(in srgb, var(--ec, #E8201A) 12%, transparent) !important;
  border-color:var(--ec, #E8201A) !important;
}
body .WOT .wot-dr-btn.add-btn.is-added{
  background:#2DB54B !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 0 18px -4px rgba(45,181,75,.55) !important;
}

/* Ghost (Directions, Share) */
body .WOT .wot-dr-btn.ghost{
  background:rgba(255,255,255,.05) !important;
  color:rgba(255,255,255,.85) !important;
  border:1px solid rgba(255,255,255,.12) !important;
}
body .WOT.wot-light .wot-dr-btn.ghost{
  background:rgba(0,0,0,.04) !important;
  color:rgba(0,0,0,.75) !important;
  border:1px solid rgba(0,0,0,.1) !important;
}
body .WOT .wot-dr-btn.ghost:hover{
  background:rgba(255,255,255,.09) !important;
  border-color:rgba(255,255,255,.22) !important;
}
body .WOT.wot-light .wot-dr-btn.ghost:hover{
  background:rgba(0,0,0,.07) !important;
  border-color:rgba(0,0,0,.2) !important;
}

/* Share icon-only - compact */
body .WOT .wot-dr-btn.share-btn{
  padding:11px 13px !important;
  min-width:40px !important;
  aspect-ratio:1 !important;
}

/* Close button */
body .WOT .wot-dr-close{
  all:unset !important;
  cursor:pointer !important;
  position:absolute !important;
  top:12px !important; right:12px !important;
  width:30px !important; height:30px !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.06) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  color:rgba(255,255,255,.7) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:11px !important;
  z-index:4 !important;
  transition:all .2s !important;
}
body .WOT.wot-light .wot-dr-close{
  background:rgba(0,0,0,.05) !important;
  color:rgba(0,0,0,.6) !important;
  border-color:rgba(0,0,0,.1) !important;
}
body .WOT .wot-dr-close:hover{
  background:rgba(255,255,255,.12) !important;
  transform:rotate(90deg) !important;
}

/* Mobile: stack image on top, full-width */
@media (max-width: 640px){
  body .WOT .wot-dr-inner{
    flex-direction:column !important;
    padding:16px 16px 18px !important;
    gap:14px !important;
    margin:8px 8px !important;
  }
  body .WOT .wot-dr-img{
    width:100% !important;
    flex:0 0 auto !important;
    height:180px !important;
  }
  body .WOT .wot-dr-title{font-size:1.15rem !important;}
  body .WOT .wot-dr-btn{flex:1 !important; min-width:120px !important;}
  body .WOT .wot-dr-btn.share-btn{flex:0 !important; min-width:48px !important;}
  body .WOT .wot-dr-glow{width:160px !important; height:160px !important; top:-30px !important; right:-30px !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — v12.4.27 polish
   1. Compact + button (18x18, flush top-right corner, thinner stroke)
   2. Book button: dramatically less glow (subtle shadow only)
   3. Mobile: strict overflow so pills never escape row + fix alignment
   4. Drawer: align with pill rhythm, tighter padding
   ═══════════════════════════════════════════════════════════════════════ */

/* Compact + button - less chunky, more integrated */
body .WOT .wot-ev-pill .wot-ep-add{
  width:18px !important;
  height:18px !important;
  top:5px !important;
  right:5px !important;
  transform:none !important;
  border-width:1px !important;
  font-size:11px !important;
  font-weight:500 !important;
  opacity:.7 !important;
  background:transparent !important;
  color:color-mix(in srgb, var(--ec, #E8201A) 80%, #fff) !important;
  border-color:color-mix(in srgb, var(--ec, #E8201A) 55%, transparent) !important;
}
body .WOT.wot-light .wot-ev-pill .wot-ep-add{
  color:color-mix(in srgb, var(--ec, #E8201A) 80%, #000) !important;
  border-color:color-mix(in srgb, var(--ec, #E8201A) 55%, transparent) !important;
}
body .WOT .wot-ev-pill .wot-ep-add:hover{
  background:var(--ec, #E8201A) !important;
  color:#fff !important;
  border-color:transparent !important;
  opacity:1 !important;
  transform:scale(1.15) !important;
}
body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add{
  background:var(--dc-green, #2DB54B) !important;
  color:#fff !important;
  border-color:transparent !important;
  opacity:1 !important;
  box-shadow:0 0 6px rgba(45,181,75,.4) !important;
}
/* Reposition + to not compete with text padding — tighten pill right padding */
body .WOT .wot-ev-pill{padding:5px 26px 5px 10px !important;}

/* Book button: MUCH less glow */
body .WOT .wot-dr-btn.primary{
  background:linear-gradient(135deg, var(--ec, #E8201A) 0%, color-mix(in srgb, var(--ec, #E8201A) 82%, #000) 100%) !important;
  box-shadow:
    0 2px 4px rgba(0,0,0,.18),
    0 1px 0 rgba(255,255,255,.12) inset !important;
}
body .WOT .wot-dr-btn.primary:hover{
  transform:translateY(-1px) !important;
  box-shadow:
    0 4px 10px rgba(0,0,0,.22),
    0 1px 0 rgba(255,255,255,.14) inset !important;
}

/* Drawer: tighter margin, align to pill edges */
body .WOT .wot-dr-inner{
  margin:8px 8px !important;
  padding:18px 52px 18px 18px !important;
  gap:18px !important;
  border-radius:12px !important;
}

/* Drawer glow more subtle */
body .WOT .wot-dr-glow{
  opacity:.4 !important;
  width:180px !important;
  height:180px !important;
}

/* Image slightly smaller, tighter */
body .WOT .wot-dr-img{
  flex:0 0 150px !important;
  height:120px !important;
  border-radius:10px !important;
}
body .WOT .wot-dr-img-fallback{font-size:48px !important;}

/* Title alignment tightened */
body .WOT .wot-dr-title{
  font-size:1.25rem !important;
  line-height:1.1 !important;
}

/* Description less aggressive */
body .WOT .wot-dr-desc{
  font-size:.68rem !important;
  line-height:1.5 !important;
}

/* Action buttons: smaller, tighter */
body .WOT .wot-dr-btn{
  padding:9px 15px !important;
  font-size:.62rem !important;
  min-height:36px !important;
  gap:7px !important;
}
body .WOT .wot-dr-btn.share-btn{
  padding:9px 11px !important;
  min-width:36px !important;
}

/* ══ MOBILE FIX ═══════════════════════════════════════════════════════
   Ensure pills stay contained to their row. Key: overflow-y:hidden on the
   scroll row prevents pills from bleeding into rows above/below.
   ═══════════════════════════════════════════════════════════════════ */
@media (max-width: 900px){
  body .WOT .wot-tg{overflow:hidden !important;}
  body .WOT .wot-tg-row{
    overflow:hidden !important;
    position:relative !important;
    contain:layout style !important;
  }
  body .WOT .wot-tg-ev-row{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    height:100% !important;
    scroll-snap-type:x mandatory !important;
    padding:3px 20px 3px 6px !important;
  }
  body .WOT .wot-ev-pill{
    scroll-snap-align:start !important;
    min-width:calc(100vw - 130px) !important;
    max-width:calc(100vw - 130px) !important;
  }
  body .WOT .wot-ev-pill .wot-ep-add{
    width:22px !important; height:22px !important;
    top:6px !important; right:6px !important;
    font-size:13px !important;
  }
  /* Drawer mobile: stacked, full-width image */
  body .WOT .wot-dr-inner{
    flex-direction:column !important;
    gap:12px !important;
    padding:14px !important;
    margin:6px 6px !important;
  }
  body .WOT .wot-dr-img{
    width:100% !important;
    flex:0 0 auto !important;
    height:140px !important;
  }
  body .WOT .wot-dr-title{font-size:1.1rem !important;}
  body .WOT .wot-dr-actions{gap:6px !important;}
  body .WOT .wot-dr-btn{flex:1 !important; min-width:0 !important; padding:9px 10px !important; font-size:.58rem !important;}
  body .WOT .wot-dr-btn.share-btn{flex:0 0 auto !important; min-width:40px !important;}
  /* FAB shouldn't overlap content - lift clear of plan sheet handle */
  body .plan{max-height:75vh !important;}
  body:not(.plan-open) .plan{transform:translateY(calc(100% - 54px - env(safe-area-inset-bottom, 0px))) !important;}
}

/* Very narrow phones: even more padding reduction */
@media (max-width: 400px){
  body .WOT .wot-ev-pill{
    min-width:calc(100vw - 80px) !important;
    max-width:calc(100vw - 80px) !important;
    padding:4px 24px 4px 8px !important;
  }
  body .WOT .wot-tg-time{width:42px !important; font-size:.55rem !important;}
}


/* Map pin - approx variant (venue not fully geocoded) shows with a dashed ring */
body .WOT .pin-marker.approx{
  opacity:.75 !important;
  box-shadow:0 0 0 2px var(--bg, #0d0d10), 0 0 0 3px var(--c, #fff), 0 0 12px var(--c), 0 4px 10px rgba(0,0,0,.4), inset 0 0 0 2px rgba(255,255,255,.2) !important;
}






/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — v12.4.28 (COLOURFUL edition)
   Tight rows (44px) + pills still properly coloured (stronger in light mode)
   + compact + button + map pin fallback
   ═══════════════════════════════════════════════════════════════════════ */

/* ── ROW / PILL hard-heights ── */
body .WOT .wot-tg-row{
  height:44px !important;
  min-height:44px !important;
  max-height:44px !important;
}
body .WOT .wot-tg-ev-row{padding:2px 44px 2px 6px !important;}
body .WOT .wot-ev-pill{
  height:38px !important;
  min-height:38px !important;
  max-height:38px !important;
  padding:4px 24px 4px 10px !important;
  gap:0 !important;
  border-radius:8px !important;
}

/* ── DARK MODE pills: vibrant 14% tint + 0.3 wash (more saturated) ── */
body .WOT:not(.wot-light) .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 18%, #1a1a1e) !important;
  border:1px solid color-mix(in srgb, var(--ec, #E8201A) 45%, rgba(255,255,255,.14)) !important;
  border-left:3px solid var(--ec, #E8201A) !important;
}
body .WOT:not(.wot-light) .wot-ev-pill::before{opacity:.32 !important;}

/* ── LIGHT MODE pills: properly coloured (35%), not washed out ── */
body .WOT.wot-light .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 32%, #fff) !important;
  border:1px solid color-mix(in srgb, var(--ec, #E8201A) 60%, rgba(0,0,0,.12)) !important;
  border-left:3px solid var(--ec, #E8201A) !important;
  box-shadow:
    0 1px 2px rgba(0,0,0,.06),
    inset 0 1px 0 rgba(255,255,255,.5) !important;
}
body .WOT.wot-light .wot-ev-pill::before{
  background:linear-gradient(135deg, var(--ec, #E8201A) 0%, transparent 80%) !important;
  opacity:.28 !important;
}

/* Text must be legible on coloured bg */
body .WOT:not(.wot-light) .wot-ep-title{color:#fff !important; font-size:.68rem !important; font-weight:700 !important; line-height:1.1 !important;}
body .WOT:not(.wot-light) .wot-ep-sub{color:rgba(255,255,255,.72) !important; font-size:.5rem !important; line-height:1.15 !important;}
/* Light mode: DARK text on coloured tint reads well at 32% tint */
body .WOT.wot-light .wot-ep-title{color:#0c0c0e !important; font-size:.68rem !important; font-weight:800 !important; line-height:1.1 !important;}
body .WOT.wot-light .wot-ep-sub{color:rgba(0,0,0,.58) !important; font-size:.5rem !important; font-weight:500 !important; line-height:1.15 !important;}

/* Hover lifts + saturates */
body .WOT .wot-ev-pill:hover{transform:translateY(-1px) !important;}
body .WOT:not(.wot-light) .wot-ev-pill:hover{
  background:color-mix(in srgb, var(--ec, #E8201A) 26%, #1a1a1e) !important;
}
body .WOT.wot-light .wot-ev-pill:hover{
  background:color-mix(in srgb, var(--ec, #E8201A) 38%, #fff) !important;
  box-shadow:
    0 4px 10px color-mix(in srgb, var(--ec, #E8201A) 25%, transparent),
    inset 0 1px 0 rgba(255,255,255,.6) !important;
}

body .WOT .wot-ev-pill.open,
body .WOT .wot-ev-pill[data-added="1"]{
  box-shadow:
    inset 0 0 0 1.5px var(--ec, #E8201A),
    0 3px 10px color-mix(in srgb, var(--ec, #E8201A) 30%, transparent) !important;
}

/* ── + button tiny, top-right, category coloured ── */
body .WOT .wot-ev-pill .wot-ep-add{
  width:16px !important;
  height:16px !important;
  top:4px !important;
  right:4px !important;
  border-width:1px !important;
  font-size:10px !important;
  opacity:.55 !important;
}
body .WOT:not(.wot-light) .wot-ev-pill .wot-ep-add{
  color:rgba(255,255,255,.65) !important;
  border-color:rgba(255,255,255,.25) !important;
  background:rgba(0,0,0,.25) !important;
}
body .WOT.wot-light .wot-ev-pill .wot-ep-add{
  color:var(--ec, #E8201A) !important;
  border-color:var(--ec, #E8201A) !important;
  background:rgba(255,255,255,.7) !important;
}
body .WOT .wot-ev-pill:hover .wot-ep-add{opacity:1 !important;}
body .WOT .wot-ev-pill .wot-ep-add:hover{
  background:var(--ec, #E8201A) !important;
  color:#fff !important;
  border-color:transparent !important;
  transform:scale(1.2) !important;
}
body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add{
  background:var(--dc-green, #2DB54B) !important;
  color:#fff !important;
  border-color:transparent !important;
  opacity:1 !important;
}

/* Time column + grid base colours */
body .WOT.wot-light .wot-tg{background:#fafafa !important; border-color:rgba(0,0,0,.08) !important;}
body .WOT.wot-light .wot-tg-time{color:rgba(0,0,0,.45) !important; border-right-color:rgba(0,0,0,.06) !important;}
body .WOT.wot-light .wot-tg-row{border-bottom-color:rgba(0,0,0,.05) !important;}

/* Past events fade (not invisible) */
body .WOT.wot-light .wot-tg-row.wot-past .wot-ev-pill{opacity:.55 !important;}
body .WOT:not(.wot-light) .wot-tg-row.wot-past .wot-ev-pill{opacity:.45 !important;}

/* ── MOBILE: one pill per row, snap scroll ── */
@media (max-width: 900px){
  body .WOT .wot-tg{overflow:hidden !important;}
  body .WOT .wot-tg-row{
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    overflow:hidden !important;
    position:relative !important;
    contain:layout style !important;
  }
  body .WOT .wot-tg-ev-row{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory !important;
    padding:2px 12px 2px 6px !important;
    gap:4px !important;
  }
  body .WOT .wot-ev-pill{
    scroll-snap-align:start !important;
    min-width:calc(100vw - 110px) !important;
    max-width:calc(100vw - 110px) !important;
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
  }
  body .WOT .wot-tg-time{
    width:44px !important;
    font-size:.55rem !important;
    padding:0 8px 0 6px !important;
  }
  body .WOT .wot-ev-pill .wot-ep-add{
    width:20px !important; height:20px !important;
    top:4px !important; right:4px !important;
    font-size:12px !important;
    opacity:.75 !important;
  }
  body .WOT .wot-ep-title{font-size:.66rem !important;}
  body .WOT .wot-ep-sub{font-size:.48rem !important;}
}

@media (max-width: 480px){
  body .WOT .wot-ev-pill{
    min-width:calc(100vw - 80px) !important;
    max-width:calc(100vw - 80px) !important;
  }
  body .WOT .wot-tg-time{width:38px !important; font-size:.52rem !important;}
}









/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — v12.4.34: clean segmented toggles + day switching
   iOS-style pill toggles - WITH text labels, active state solid white
   ═══════════════════════════════════════════════════════════════════════ */

/* Day switching */
body .WOT .wot-day{display:none !important;}
body .WOT .wot-day.active{display:block !important;}

/* ── TOGGLE GROUP CONTAINER ── */
body .WOT .wot-mode-switch,
body .WOT .wot-view-switch{
  display:inline-flex !important;
  padding:3px !important;
  border-radius:100px !important;
  gap:2px !important;
  background:rgba(255,255,255,.07) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
body .WOT.wot-light .wot-mode-switch,
body .WOT.wot-light .wot-view-switch{
  background:rgba(0,0,0,.05) !important;
  border-color:rgba(0,0,0,.08) !important;
}

/* ── INDIVIDUAL BUTTON ── */
body .WOT .wot-mode-opt,
body .WOT .wot-view-opt{
  all:unset !important;
  cursor:pointer !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  padding:6px 12px !important;
  border-radius:100px !important;
  font-family:'Inter', sans-serif !important;
  font-size:.58rem !important;
  font-weight:800 !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
  color:rgba(255,255,255,.55) !important;
  min-height:24px !important;
  transition:background .2s, color .2s, box-shadow .2s !important;
  box-sizing:border-box !important;
}
body .WOT.wot-light .wot-mode-opt,
body .WOT.wot-light .wot-view-opt{
  color:rgba(0,0,0,.55) !important;
}

/* ── ACTIVE STATE: clean solid white pill, dark text ── */
body .WOT .wot-mode-opt.is-on,
body .WOT .wot-view-opt.is-on{
  background:#ffffff !important;
  color:#0c0c0e !important;
  box-shadow:
    0 1px 2px rgba(0,0,0,.15),
    0 2px 6px rgba(0,0,0,.08) !important;
}

/* ── ICON SIZING ── */
body .WOT .wot-mode-opt i,
body .WOT .wot-view-opt i{
  font-size:.66rem !important;
  line-height:1 !important;
}

/* ── HOVER on non-active ── */
body .WOT .wot-mode-opt:not(.is-on):hover,
body .WOT .wot-view-opt:not(.is-on):hover{
  color:#ffffff !important;
}
body .WOT.wot-light .wot-mode-opt:not(.is-on):hover,
body .WOT.wot-light .wot-view-opt:not(.is-on):hover{
  color:#0c0c0e !important;
}

/* ── MOBILE: tighter padding, keep text labels ── */
@media (max-width: 640px){
  body .WOT .wot-mode-opt,
  body .WOT .wot-view-opt{
    padding:5px 9px !important;
    font-size:.52rem !important;
    gap:4px !important;
    min-height:22px !important;
  }
  body .WOT .wot-mode-opt i,
  body .WOT .wot-view-opt i{font-size:.6rem !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 — v12.4.35: mobile pill multi-per-row (final override)
   ═══════════════════════════════════════════════════════════════════════ */
@media (max-width: 900px){
  body .WOT .wot-ev-pill{
    min-width:145px !important;
    max-width:190px !important;
    width:auto !important;
  }
  body .WOT .wot-tg-ev-row{
    padding:3px 30px 3px 6px !important;
    gap:5px !important;
  }
  body .WOT .wot-tg-time{width:46px !important; font-size:.56rem !important; padding:0 8px 0 6px !important;}
}
@media (max-width: 480px){
  body .WOT .wot-ev-pill{
    min-width:135px !important;
    max-width:165px !important;
  }
  body .WOT .wot-tg-time{width:40px !important; font-size:.52rem !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.36  ULTRA COMPACT + SPACED
   Pills must be SMALL (height 32px, max-width ~170px) AND have visible
   gaps between them, at ALL viewport widths (not just mobile).
   ═══════════════════════════════════════════════════════════════════════ */

/* ── All viewports: compact row + pill ── */
body .WOT .wot-tg-row{
  height:38px !important;
  min-height:38px !important;
  max-height:38px !important;
}
body .WOT .wot-tg-ev-row{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:8px !important;
  padding:3px 28px 3px 6px !important;
  align-items:center !important;
}
body .WOT .wot-ev-pill{
  height:32px !important;
  min-height:32px !important;
  max-height:32px !important;
  min-width:150px !important;
  max-width:175px !important;
  width:auto !important;
  flex:0 0 auto !important;
  padding:3px 20px 3px 9px !important;
  border-radius:7px !important;
  margin:0 !important;
}
body .WOT .wot-ep-title{
  font-size:.64rem !important;
  line-height:1.08 !important;
  font-weight:700 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body .WOT .wot-ep-sub{
  font-size:.46rem !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body .WOT .wot-ev-pill .wot-ep-add{
  width:14px !important;
  height:14px !important;
  top:3px !important;
  right:3px !important;
  font-size:9px !important;
  border-width:1px !important;
}

/* Time column tighter too */
body .WOT .wot-tg-time{
  width:42px !important;
  font-size:.54rem !important;
  padding:0 6px 0 4px !important;
}

/* ── Mobile ≤900: allow horizontal scroll, keep compact ── */
@media (max-width: 900px){
  body .WOT .wot-tg-ev-row{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x proximity !important;
    gap:6px !important;
    padding:3px 24px 3px 6px !important;
  }
  body .WOT .wot-ev-pill{
    min-width:140px !important;
    max-width:165px !important;
    scroll-snap-align:start !important;
  }
  body .WOT .wot-tg-time{width:38px !important; font-size:.5rem !important;}
}

/* ── Tiny phones ≤480 ── */
@media (max-width: 480px){
  body .WOT .wot-ev-pill{
    min-width:130px !important;
    max-width:150px !important;
    height:30px !important;
    min-height:30px !important;
    max-height:30px !important;
  }
  body .WOT .wot-tg-row{
    height:36px !important; min-height:36px !important; max-height:36px !important;
  }
  body .WOT .wot-ep-title{font-size:.6rem !important;}
  body .WOT .wot-ep-sub{font-size:.44rem !important;}
  body .WOT .wot-tg-time{width:34px !important; font-size:.48rem !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.36  MOBILE OPTIMISED
   - touch-friendly scroll (momentum)
   - hide scrollbar (cleaner look)
   - hardware accel on pills
   - snap scroll + overscroll-contain (no page hijack)
   - bigger tap target for + button on mobile
   - reduce repaints via contain:layout style paint
   ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 900px){
  body .WOT .wot-tg{
    contain:layout style !important;
  }
  body .WOT .wot-tg-row{
    contain:layout style paint !important;
    overflow:hidden !important;
  }
  body .WOT .wot-tg-ev-row{
    -webkit-overflow-scrolling:touch !important;
    overscroll-behavior-x:contain !important;
    scrollbar-width:none !important;
    scroll-padding-left:6px !important;
  }
  body .WOT .wot-tg-ev-row::-webkit-scrollbar{
    display:none !important;
    height:0 !important;
    width:0 !important;
  }
  body .WOT .wot-ev-pill{
    will-change:transform !important;
    transform:translateZ(0) !important;
    backface-visibility:hidden !important;
    touch-action:manipulation !important;
  }
  /* Bigger + tap target on mobile (still visually small) */
  body .WOT .wot-ev-pill .wot-ep-add{
    width:22px !important;
    height:22px !important;
    top:-2px !important;
    right:-2px !important;
    font-size:11px !important;
    opacity:.85 !important;
  }
  /* Headers compact on mobile already handled in 12.4.31 - reinforce */
  body .WOT .wot-mode-switch,
  body .WOT .wot-view-switch{
    flex-shrink:0 !important;
  }
  /* Day bar: snap to active day */
  body .WOT .wot-wdays{
    scroll-snap-type:x proximity !important;
    -webkit-overflow-scrolling:touch !important;
    scrollbar-width:none !important;
  }
  body .WOT .wot-wdays::-webkit-scrollbar{display:none !important;}
  body .WOT .wot-wday{scroll-snap-align:center !important;}
  /* Drawer: full width on mobile, safe-area bottom padding */
  body .WOT .wot-drawer{
    padding-bottom:env(safe-area-inset-bottom, 0) !important;
  }
}

/* Reduce motion: kill transforms/animations */
@media (prefers-reduced-motion: reduce){
  body .WOT .wot-ev-pill,
  body .WOT .wot-ev-pill:hover{
    transition:none !important;
    transform:none !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.37  NUCLEAR AUDIT
   OVERRIDES all 192 prior pill/row rules via html body .WOT specificity.
   Pills = IDENTICAL fixed size. No stretching. Visible gap.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── GRID container: compact ── */
html body .WOT .wot-tg{
  overflow:hidden !important;
}
html body .WOT .wot-tg-row{
  display:flex !important;
  align-items:stretch !important;
  height:40px !important;
  min-height:40px !important;
  max-height:40px !important;
  border-bottom:1px solid rgba(255,255,255,.04) !important;
  position:relative !important;
}
html body .WOT.wot-light .wot-tg-row{
  border-bottom-color:rgba(0,0,0,.04) !important;
}

/* Time column locked */
html body .WOT .wot-tg-time{
  flex:0 0 44px !important;
  width:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  font-size:.55rem !important;
  padding:0 6px 0 4px !important;
  display:flex !important;
  align-items:center !important;
}

/* Event row: fixed flex, nowrap, explicit gap */
html body .WOT .wot-tg-ev-row{
  flex:1 1 auto !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:8px !important;
  padding:3px 20px 3px 6px !important;
  align-items:center !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  min-width:0 !important;
}

/* PILL: locked identical size, NO stretch */
html body .WOT .wot-ev-pill{
  flex:0 0 168px !important;
  width:168px !important;
  min-width:168px !important;
  max-width:168px !important;
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;
  padding:3px 22px 3px 9px !important;
  border-radius:7px !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  position:relative !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}

/* Text tight + ellipsis */
html body .WOT .wot-ev-pill .wot-ep-title{
  font-size:.64rem !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
  margin:0 !important;
}
html body .WOT .wot-ev-pill .wot-ep-sub{
  font-size:.45rem !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:100% !important;
  margin:1px 0 0 !important;
  opacity:.7 !important;
}

/* + button locked top-right, small */
html body .WOT .wot-ev-pill .wot-ep-add{
  position:absolute !important;
  width:16px !important;
  height:16px !important;
  top:3px !important;
  right:3px !important;
  font-size:10px !important;
  padding:0 !important;
  border-radius:50% !important;
  border-width:1px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
}

/* Hide scrollbar */
html body .WOT .wot-tg-ev-row::-webkit-scrollbar{display:none !important;}
html body .WOT .wot-tg-ev-row{scrollbar-width:none !important;}

/* ── MOBILE ≤900px ── */
@media (max-width: 900px){
  html body .WOT .wot-tg-row{
    height:38px !important; min-height:38px !important; max-height:38px !important;
  }
  html body .WOT .wot-tg-time{
    flex:0 0 38px !important; width:38px !important;
    min-width:38px !important; max-width:38px !important;
    font-size:.5rem !important; padding:0 4px !important;
  }
  html body .WOT .wot-tg-ev-row{
    gap:6px !important;
    padding:3px 16px 3px 4px !important;
    scroll-snap-type:x proximity !important;
    -webkit-overflow-scrolling:touch !important;
    overscroll-behavior-x:contain !important;
  }
  html body .WOT .wot-ev-pill{
    flex:0 0 150px !important;
    width:150px !important;
    min-width:150px !important;
    max-width:150px !important;
    height:32px !important; min-height:32px !important; max-height:32px !important;
    padding:3px 20px 3px 8px !important;
    scroll-snap-align:start !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{font-size:.6rem !important;}
  html body .WOT .wot-ev-pill .wot-ep-sub{font-size:.43rem !important;}
  html body .WOT .wot-ev-pill .wot-ep-add{
    width:18px !important; height:18px !important;
    top:2px !important; right:2px !important;
    font-size:10px !important;
  }
  /* Toggles: stay on one row - compact */
  html body .WOT .wot-controls,
  html body .WOT .wot-tonight-controls{
    flex-wrap:wrap !important;
    gap:6px !important;
  }
  html body .WOT .wot-mode-switch,
  html body .WOT .wot-view-switch{
    flex-shrink:0 !important;
  }
  /* Day bar tighter */
  html body .WOT .wot-wday{
    flex:0 0 54px !important; min-width:54px !important;
    padding:6px 4px !important;
  }
  html body .WOT .wot-wday-d{font-size:.9rem !important;}
  html body .WOT .wot-wday-dn{font-size:.5rem !important;}
}

/* ── TINY ≤480px ── */
@media (max-width: 480px){
  html body .WOT .wot-ev-pill{
    flex:0 0 140px !important;
    width:140px !important;
    min-width:140px !important;
    max-width:140px !important;
    height:30px !important; min-height:30px !important; max-height:30px !important;
  }
  html body .WOT .wot-tg-row{
    height:36px !important; min-height:36px !important; max-height:36px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{font-size:.58rem !important;}
  html body .WOT .wot-ev-pill .wot-ep-sub{font-size:.42rem !important;}
  html body .WOT .wot-tg-time{
    flex:0 0 34px !important; width:34px !important;
    min-width:34px !important; max-width:34px !important;
    font-size:.46rem !important;
  }
}

/* Hide empty rows (rows with no pill children) for denser grid */
html body .WOT .wot-tg-row.wot-tg-empty{display:none !important;}

/* Past event rows fade but don't waste space - reduce their height */
html body .WOT .wot-tg-row.wot-past{
  opacity:.35 !important;
}
@media (max-width: 900px){
  html body .WOT .wot-tg-row.wot-past{
    height:28px !important; min-height:28px !important; max-height:28px !important;
  }
  html body .WOT .wot-tg-row.wot-past .wot-ev-pill{
    height:22px !important; min-height:22px !important; max-height:22px !important;
  }
  html body .WOT .wot-tg-row.wot-past .wot-ep-sub{display:none !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.38  FILL THE ROW
   Pills FLEX-SHARE available row width. Equal within a row. No black gap.
   min 150 / max 240 keeps them readable and not absurd.
   ═══════════════════════════════════════════════════════════════════════ */

html body .WOT .wot-tg-ev-row{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:8px !important;
  padding:3px 12px 3px 6px !important;
  align-items:center !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
}

html body .WOT .wot-ev-pill{
  flex:1 1 0 !important;
  width:auto !important;
  min-width:150px !important;
  max-width:240px !important;
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;
  padding:3px 24px 3px 9px !important;
  border-radius:7px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}

/* Mobile: still horizontal-scroll, fixed pill width (can't flex-share when scrolling) */
@media (max-width: 900px){
  html body .WOT .wot-tg-ev-row{
    padding:3px 10px 3px 4px !important;
    gap:6px !important;
  }
  html body .WOT .wot-ev-pill{
    flex:0 0 150px !important;
    width:150px !important;
    min-width:150px !important;
    max-width:150px !important;
    height:32px !important;
    min-height:32px !important;
    max-height:32px !important;
  }
}

@media (max-width: 480px){
  html body .WOT .wot-ev-pill{
    flex:0 0 140px !important;
    width:140px !important;
    min-width:140px !important;
    max-width:140px !important;
    height:30px !important;
    min-height:30px !important;
    max-height:30px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.39  BADGE NUKE + FILTER WIRING
   Force + button AND plan-count badges to small top-right corner.
   Stops the "tongue" shape and the 1/2/3 badges overlapping titles.
   ═══════════════════════════════════════════════════════════════════════ */

/* + button locked small top-right corner - beats all prior rules */
html body .WOT .wot-ev-pill .wot-ep-add,
html body .WOT .wot-ev-pill button.wot-ep-add,
html body .WOT .wot-ev-pill .wot-ep-add *{
  pointer-events:auto !important;
}
html body .WOT .wot-ev-pill .wot-ep-add{
  position:absolute !important;
  top:4px !important;
  right:4px !important;
  left:auto !important;
  bottom:auto !important;
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  min-height:16px !important;
  max-height:16px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:50% !important;
  border-width:1px !important;
  font-size:10px !important;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  transform:none !important;
  box-shadow:none !important;
  background:rgba(0,0,0,.35) !important;
  color:#fff !important;
  opacity:.85 !important;
}
html body .WOT.wot-light .wot-ev-pill .wot-ep-add{
  background:rgba(255,255,255,.85) !important;
  color:#111 !important;
  border-color:rgba(0,0,0,.2) !important;
}
html body .WOT .wot-ev-pill .wot-ep-add span,
html body .WOT .wot-ev-pill .wot-ep-add i,
html body .WOT .wot-ev-pill .wot-ep-add svg{
  font-size:10px !important;
  width:auto !important;
  height:auto !important;
  line-height:1 !important;
  margin:0 !important;
  padding:0 !important;
}

/* Plan counter badge (green 1/2/3) - force tiny top-right, not overlap title */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add,
html body .WOT .wot-plan-count,
html body .WOT .wot-ev-pill .wot-plan-badge{
  position:absolute !important;
  top:4px !important;
  right:4px !important;
  left:auto !important;
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  min-height:16px !important;
  max-height:16px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:50% !important;
  font-size:9px !important;
  font-weight:700 !important;
  line-height:1 !important;
  background:#2DB54B !important;
  color:#fff !important;
  border:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:none !important;
  transform:none !important;
}

/* Kill any ::before/::after tongue shapes on pills (old "open" indicator) */
html body .WOT .wot-ev-pill::before,
html body .WOT .wot-ev-pill::after{
  display:none !important;
  content:none !important;
}
/* BUT preserve the left accent bar if it was done via border-left (the 3px colour bar) */
/* (we're not touching border-left, just the pseudo-elements) */

/* Ensure pill text has room (right padding for the 16px badge + 4px margin) */
html body .WOT .wot-ev-pill{
  padding-right:26px !important;
}

/* Mobile: still compact */
@media (max-width: 900px){
  html body .WOT .wot-ev-pill{
    padding-right:22px !important;
    padding-left:8px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-add,
  html body .WOT .wot-plan-count{
    width:16px !important; height:16px !important;
    min-width:16px !important; max-width:16px !important;
    min-height:16px !important; max-height:16px !important;
    top:3px !important; right:3px !important;
    font-size:9px !important;
  }

  /* ── CONTROLS ROW: GRID/MAP + DARK/LIGHT + LIVE on ONE row, small ── */
  html body .WOT .wot-controls,
  html body .WOT .wot-tonight-controls,
  html body .WOT .wot-top-bar,
  html body .WOT .wot-header-row{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:6px !important;
    padding:4px 8px !important;
  }
  /* Toggle segmented controls: compact */
  html body .WOT .wot-view-switch,
  html body .WOT .wot-mode-switch{
    flex:0 0 auto !important;
    display:inline-flex !important;
    padding:2px !important;
    gap:0 !important;
    border-radius:999px !important;
    height:26px !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    padding:3px 8px !important;
    min-height:22px !important;
    height:22px !important;
    font-size:.55rem !important;
    font-weight:700 !important;
    letter-spacing:.3px !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:3px !important;
    border-radius:999px !important;
  }
  html body .WOT .wot-view-opt span,
  html body .WOT .wot-mode-opt span{
    font-size:.55rem !important;
    display:inline !important;
  }
  html body .WOT .wot-view-opt i,
  html body .WOT .wot-mode-opt i{
    font-size:.6rem !important;
  }
  /* LIVE indicator compact */
  html body .WOT .wot-live,
  html body .WOT .wot-live-dot,
  html body .WOT .wot-live-label{
    font-size:.55rem !important;
    padding:0 !important;
    gap:4px !important;
  }

  /* Day strip pills tighter */
  html body .WOT .wot-wday{
    flex:0 0 52px !important;
    min-width:52px !important;
    max-width:52px !important;
    padding:6px 2px !important;
    border-radius:10px !important;
  }
  html body .WOT .wot-wday-d,
  html body .WOT .wot-wday-num{font-size:1rem !important; line-height:1.1 !important;}
  html body .WOT .wot-wday-dn{font-size:.48rem !important;}

  /* Category filter pills tighter */
  html body .WOT .wot-flt{
    padding:6px 10px !important;
    font-size:.6rem !important;
    height:30px !important;
    border-radius:999px !important;
  }
  html body .WOT .wot-flt-count{
    font-size:.5rem !important;
    margin-left:4px !important;
  }

  /* Grid: maximise width, remove side padding from section */
  html body .WOT .wot-tg{
    margin-left:-4px !important;
    margin-right:-4px !important;
  }
  html body .WOT .wot-tg-time{
    flex:0 0 34px !important;
    width:34px !important;
    min-width:34px !important;
    max-width:34px !important;
    font-size:.48rem !important;
    padding:0 2px 0 3px !important;
  }
  html body .WOT .wot-tg-ev-row{
    padding:3px 8px 3px 4px !important;
    gap:5px !important;
  }
  /* Two pills per row on mobile - flex-share, not fixed width */
  html body .WOT .wot-ev-pill{
    flex:1 1 0 !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:34px !important;
    min-height:34px !important;
    max-height:34px !important;
  }
}

/* ── TINY ≤420px: even tighter ── */
@media (max-width: 420px){
  html body .WOT .wot-view-opt span,
  html body .WOT .wot-mode-opt span{font-size:.5rem !important;}
  html body .WOT .wot-wday{flex:0 0 46px !important; min-width:46px !important; max-width:46px !important;}
  html body .WOT .wot-ev-pill .wot-ep-title{font-size:.58rem !important;}
  html body .WOT .wot-ev-pill .wot-ep-sub{font-size:.42rem !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.40  KILL GREEN + NUKE PAST ROWS
   1. No more green "1/2/3" plan badges, no green checkmark overlay
      → replaced with subtle 2px bottom accent (non-intrusive)
   2. Past-hour rows HIDDEN entirely (was the "huge black gap at top")
   3. All-day pills at top hidden too (they're faded past too)
   4. Remove max-width cap so single pills stretch to fill row (no black gap)
   ═══════════════════════════════════════════════════════════════════════ */

/* ── HIDE past rows completely ── */
html body .WOT .wot-tg-row.wot-past{
  display:none !important;
}
/* Also hide faded rows that have no actual pill (ghost placeholders) */
html body .WOT .wot-tg-row.wot-tg-empty{
  display:none !important;
}

/* ── Remove max-width so pills fill empty row space ── */
html body .WOT .wot-ev-pill{
  max-width:none !important;
}

/* ── KILL green plan badges (user hates them) ── */
html body .WOT .wot-plan-count,
html body .WOT .wot-plan-badge,
html body .WOT .wot-ev-pill .wot-plan-num,
html body .WOT .wot-ev-pill .wot-ep-check,
html body .WOT .wot-ev-pill[data-added="1"]::before,
html body .WOT .wot-ev-pill[data-added="1"]::after,
html body .WOT .wot-ev-pill.added::before,
html body .WOT .wot-ev-pill.added::after{
  display:none !important;
  content:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
}

/* ── When added: subtle 2px accent at pill bottom instead of overlay ── */
html body .WOT .wot-ev-pill[data-added="1"],
html body .WOT .wot-ev-pill.added{
  box-shadow:inset 0 -2px 0 #2DB54B !important;
  outline:none !important;
}
/* Change + button to a checkmark when added - same 16px corner position */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{
  background:#2DB54B !important;
  color:#fff !important;
  border-color:#2DB54B !important;
  opacity:1 !important;
  font-size:9px !important;
  /* Keep small corner badge size - don't let old rules grow it */
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  top:4px !important;
  right:4px !important;
}

/* Mobile: same treatment */
@media (max-width: 900px){
  html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
  html body .WOT .wot-ev-pill.added .wot-ep-add{
    width:16px !important;
    height:16px !important;
    min-width:16px !important;
    max-width:16px !important;
    top:3px !important;
    right:3px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.41  REVERT COMPACT + SWIPE
   Before: flex:1 1 0 collapsed pills to icon-only cubes
   Now: FIXED pill width, row scrolls horizontally with swipe/touch
   Desktop: flex-share OK (wider viewport, usually enough room)
   Mobile: fixed 155px, scroll horizontally
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Desktop: flex-share BUT with a floor that prevents collapse ── */
html body .WOT .wot-ev-pill{
  flex:1 1 160px !important;
  width:auto !important;
  min-width:160px !important;
  max-width:240px !important;
  height:40px !important;
  min-height:40px !important;
  max-height:40px !important;
  padding:4px 24px 4px 10px !important;
}
html body .WOT .wot-tg-row{
  height:46px !important; min-height:46px !important; max-height:46px !important;
}
html body .WOT .wot-tg-ev-row{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  flex-wrap:nowrap !important;
  gap:7px !important;
  padding:3px 16px 3px 6px !important;
  scrollbar-width:thin !important;
}
html body .WOT .wot-ev-pill .wot-ep-title{
  font-size:.7rem !important; line-height:1.15 !important; font-weight:700 !important;
}
html body .WOT .wot-ev-pill .wot-ep-sub{
  font-size:.5rem !important; line-height:1.15 !important;
}

/* ── MOBILE: FIXED width, SWIPE scroll ── */
@media (max-width: 900px){
  html body .WOT .wot-tg-row{
    height:52px !important; min-height:52px !important; max-height:52px !important;
  }
  html body .WOT .wot-tg-ev-row{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    overscroll-behavior-x:contain !important;
    scroll-snap-type:x proximity !important;
    scrollbar-width:none !important;
    padding:4px 12px 4px 4px !important;
    gap:6px !important;
  }
  html body .WOT .wot-tg-ev-row::-webkit-scrollbar{display:none !important;}
  html body .WOT .wot-ev-pill{
    flex:0 0 155px !important;
    width:155px !important;
    min-width:155px !important;
    max-width:155px !important;
    height:44px !important;
    min-height:44px !important;
    max-height:44px !important;
    padding:5px 22px 5px 9px !important;
    scroll-snap-align:start !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{
    font-size:.66rem !important; line-height:1.15 !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-sub{
    font-size:.48rem !important; line-height:1.15 !important;
  }
  html body .WOT .wot-tg-time{
    flex:0 0 40px !important; width:40px !important;
    min-width:40px !important; max-width:40px !important;
    font-size:.55rem !important; padding:0 4px !important;
  }
  /* + button readable size on mobile */
  html body .WOT .wot-ev-pill .wot-ep-add{
    width:20px !important; height:20px !important;
    min-width:20px !important; max-width:20px !important;
    top:4px !important; right:4px !important;
    font-size:11px !important;
  }
}

/* ── TINY ≤420px ── */
@media (max-width: 420px){
  html body .WOT .wot-ev-pill{
    flex:0 0 145px !important;
    width:145px !important;
    min-width:145px !important;
    max-width:145px !important;
  }
}

/* ── UN-HIDE past rows (user wants to see them, just faded) ── */
html body .WOT .wot-tg-row.wot-past{
  display:flex !important;
  opacity:.4 !important;
}

/* Keep green badges nuked (from v12.4.40) */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add{
  background:#2DB54B !important;
  color:#fff !important;
  border-color:#2DB54B !important;
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.42  SWITCHES ALIGNED ONE ROW (mobile)
   All header pieces on single row: TONIGHT · line · •LIVE · [GRID|MAP] · [DARK|LIGHT]
   Force nowrap, shrink where needed, guarantee fit at 360px viewport.
   ═══════════════════════════════════════════════════════════════════════ */

html body .WOT .wot-mini-label{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:6px !important;
  width:100% !important;
  padding:6px 8px !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}

/* TONIGHT / line / LIVE: shrink but stay inline */
html body .WOT .wot-mini-tonight{
  flex:0 0 auto !important;
  font-size:.7rem !important;
  font-weight:800 !important;
  letter-spacing:.5px !important;
  white-space:nowrap !important;
}
html body .WOT .wot-mini-line{
  flex:1 1 auto !important;
  min-width:8px !important;
  height:1px !important;
  background:rgba(255,255,255,.12) !important;
  display:block !important;
}
html body .WOT .wot-mini-live{
  flex:0 0 auto !important;
  font-size:.55rem !important;
  font-weight:700 !important;
  white-space:nowrap !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:3px !important;
}
html body .WOT .wot-mini-dot{
  width:5px !important;
  height:5px !important;
  background:#E8201A !important;
  border-radius:50% !important;
  display:inline-block !important;
}

/* View (Grid/Map) + Mode (Dark/Light) switches: same compact style */
html body .WOT .wot-view-switch,
html body .WOT .wot-mode-switch{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  padding:2px !important;
  gap:0 !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  height:26px !important;
}
html body .WOT.wot-light .wot-view-switch,
html body .WOT.wot-light .wot-mode-switch{
  background:rgba(0,0,0,.05) !important;
  border-color:rgba(0,0,0,.08) !important;
}

html body .WOT .wot-view-opt,
html body .WOT .wot-mode-opt{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  padding:3px 8px !important;
  height:22px !important;
  min-height:22px !important;
  max-height:22px !important;
  font-size:.55rem !important;
  font-weight:700 !important;
  letter-spacing:.3px !important;
  border-radius:999px !important;
  border:none !important;
  background:transparent !important;
  color:inherit !important;
  cursor:pointer !important;
  white-space:nowrap !important;
}
html body .WOT .wot-view-opt.is-on,
html body .WOT .wot-mode-opt.is-on{
  background:#fff !important;
  color:#0a0a0d !important;
}
html body .WOT.wot-light .wot-view-opt.is-on,
html body .WOT.wot-light .wot-mode-opt.is-on{
  background:#0a0a0d !important;
  color:#fff !important;
}
html body .WOT .wot-view-opt i,
html body .WOT .wot-mode-opt i{
  font-size:.6rem !important;
}
html body .WOT .wot-view-opt span,
html body .WOT .wot-mode-opt span{
  font-size:.55rem !important;
  display:inline !important;
}

/* ── MOBILE ≤600px: shrink even tighter to guarantee one-row fit ── */
@media (max-width: 600px){
  html body .WOT .wot-mini-label{
    gap:5px !important;
    padding:6px 6px !important;
  }
  html body .WOT .wot-mini-tonight{font-size:.62rem !important;}
  html body .WOT .wot-mini-live{font-size:.5rem !important;}
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    padding:3px 6px !important;
    font-size:.5rem !important;
    gap:2px !important;
  }
  html body .WOT .wot-view-opt i,
  html body .WOT .wot-mode-opt i{font-size:.55rem !important;}
  html body .WOT .wot-view-opt span,
  html body .WOT .wot-mode-opt span{font-size:.5rem !important;}
}

/* ── TINY ≤380px: icon-only for mode switch (keep grid/map labeled) ── */
@media (max-width: 380px){
  html body .WOT .wot-mini-line{display:none !important;}
  html body .WOT .wot-mode-opt span{display:none !important;}
  html body .WOT .wot-mode-opt{padding:3px 6px !important; min-width:22px !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.43  AUDIT FIX (addresses 7 issues cohesively)
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ 1. HIDE PAST-HOUR ROWS - removes the huge black gap at top of WOT ══ */
html body .WOT .wot-tg-row.wot-past{display:none !important;}

/* ══ 2. NUKE GREEN BADGES + ADD 3D POPPED STATE ══ */
/* Hide every green checkmark/number overlay that existed before */
html body .WOT .wot-ev-pill .wot-ep-check,
html body .WOT .wot-ev-pill .wot-plan-count,
html body .WOT .wot-ev-pill .wot-plan-badge,
html body .WOT .wot-ev-pill .wot-plan-num,
html body .WOT .wot-ev-pill[data-added="1"]::before,
html body .WOT .wot-ev-pill[data-added="1"]::after,
html body .WOT .wot-ev-pill.added::before,
html body .WOT .wot-ev-pill.added::after{
  display:none !important;
  content:none !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
}

/* When pill is ADDED: 3D popped effect - raised + accent outline + subtle scale */
html body .WOT .wot-ev-pill[data-added="1"],
html body .WOT .wot-ev-pill.added{
  transform:translateY(-2px) scale(1.01) !important;
  box-shadow:
    0 8px 20px color-mix(in srgb, var(--ec, #E8201A) 45%, transparent),
    0 2px 4px rgba(0,0,0,.3),
    inset 0 0 0 2px var(--ec, #E8201A) !important;
  z-index:2 !important;
  position:relative !important;
}

/* + button becomes white NUMBER when added (shows plan position) */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{
  background:#fff !important;
  color:#0a0a0d !important;
  border:none !important;
  font-weight:800 !important;
  font-size:10px !important;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  top:4px !important;
  right:4px !important;
  position:absolute !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 1px 3px rgba(0,0,0,.4) !important;
  opacity:1 !important;
}

/* ══ 3. CATEGORY FILTER PILLS: compact, all 7 fit at 360px ══ */
html body .WOT .wot-filterbar{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:5px !important;
  padding:4px 8px !important;
  overflow-x:auto !important;
  scrollbar-width:none !important;
}
html body .WOT .wot-filterbar::-webkit-scrollbar{display:none !important;}
html body .WOT .wot-flt{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
  padding:5px 10px !important;
  height:28px !important;
  min-height:28px !important;
  max-height:28px !important;
  font-size:.58rem !important;
  font-weight:700 !important;
  letter-spacing:.3px !important;
  border-radius:999px !important;
  white-space:nowrap !important;
}
html body .WOT .wot-flt-dot{
  width:6px !important; height:6px !important;
  border-radius:50% !important;
  flex:0 0 6px !important;
}
html body .WOT .wot-flt-count{
  font-size:.5rem !important;
  opacity:.6 !important;
  margin-left:2px !important;
  font-weight:600 !important;
}

/* ══ 4. DAY STRIP shrunk - TUE + WED visible at 360px ══ */
@media (max-width: 600px){
  html body .WOT .wot-week-strip{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:4px !important;
    padding:4px 8px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
  }
  html body .WOT .wot-week-strip::-webkit-scrollbar{display:none !important;}
  html body .WOT .wot-wday{
    flex:0 0 48px !important;
    min-width:48px !important;
    max-width:48px !important;
    padding:5px 2px !important;
    border-radius:10px !important;
    scroll-snap-align:start !important;
  }
  html body .WOT .wot-wday-num{font-size:.95rem !important; line-height:1.1 !important; font-weight:800 !important;}
  html body .WOT .wot-wday-dn{font-size:.45rem !important; line-height:1.1 !important; letter-spacing:.5px !important;}
}

/* ══ 5. PILL GAP increased - pills breathe, don't feel glued ══ */
html body .WOT .wot-tg-ev-row{
  gap:12px !important;
  padding:4px 14px 4px 6px !important;
}
@media (max-width: 900px){
  html body .WOT .wot-tg-ev-row{
    gap:10px !important;
    padding:4px 12px 4px 4px !important;
  }
}

/* ══ 6. CATEGORY FILTER: smaller on tiny screens ══ */
@media (max-width: 420px){
  html body .WOT .wot-flt{
    padding:4px 8px !important;
    font-size:.52rem !important;
    height:26px !important;
  }
  html body .WOT .wot-flt-count{font-size:.45rem !important;}
}

/* ══ 7. MOBILE DRAWER fix - hero capped, sticky action bar ══ */
@media (max-width: 900px){
  html body .wot-drawer,
  html body .wot-popup,
  html body .wot-ev-popup{
    padding-bottom:env(safe-area-inset-bottom, 0) !important;
  }
  html body .wot-popup-hero,
  html body .wot-ev-popup .pop-hero,
  html body .wot-drawer-hero,
  html body .wot-drawer-img{
    max-height:140px !important;
    height:140px !important;
    min-height:140px !important;
    object-fit:cover !important;
    width:100% !important;
  }
  html body .wot-drawer-actions,
  html body .wot-popup-actions,
  html body .wot-ev-popup .pop-actions{
    position:sticky !important;
    bottom:0 !important;
    background:inherit !important;
    padding:10px 12px !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
    backdrop-filter:blur(8px) !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.44  REAL FIX (the badge was .wot-ep-order all along)
   1. .wot-ep-order → white circle, black number, top-RIGHT corner (not left)
   2. No scale transform (was glitching text)
   3. + button → FAINT plus symbol (no circle bg)
   4. Multi-select filter pills: .on = solid accent bg
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ REAL BADGE (.wot-ep-order) - was the green blob on left ══ */
html body .WOT .wot-ev-pill .wot-ep-order{
  position:absolute !important;
  top:4px !important;
  right:4px !important;
  left:auto !important;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#0a0a0d !important;
  font-size:10px !important;
  font-weight:900 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 2px 6px rgba(0,0,0,.35) !important;
  z-index:5 !important;
  animation:none !important;
  border:1px solid rgba(0,0,0,.12) !important;
}

/* ══ When pill has .wot-ep-order child = added state. Hide the + button. ══ */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{
  display:none !important;
}

/* ══ ADDED PILL: subtle lift, no scale (scale was glitching text) ══ */
html body .WOT .wot-ev-pill[data-added="1"],
html body .WOT .wot-ev-pill.added{
  transform:translateY(-2px) !important;
  box-shadow:
    0 8px 18px color-mix(in srgb, var(--ec, #E8201A) 40%, transparent),
    0 2px 4px rgba(0,0,0,.25) !important;
  outline:2px solid var(--ec, #E8201A) !important;
  outline-offset:-2px !important;
  z-index:3 !important;
  position:relative !important;
}

/* ══ + BUTTON: faint plus symbol, NO circle background ══ */
html body .WOT .wot-ev-pill .wot-ep-add{
  position:absolute !important;
  top:50% !important;
  right:6px !important;
  left:auto !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  width:14px !important;
  height:14px !important;
  min-width:14px !important;
  max-width:14px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1 !important;
  color:rgba(255,255,255,.45) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:.65 !important;
  cursor:pointer !important;
}
html body .WOT.wot-light .wot-ev-pill .wot-ep-add{
  color:rgba(0,0,0,.4) !important;
}
html body .WOT .wot-ev-pill:hover .wot-ep-add{
  opacity:1 !important;
  color:#fff !important;
}
html body .WOT.wot-light .wot-ev-pill:hover .wot-ep-add{
  color:#0a0a0d !important;
}
/* Kill any pseudo-elements inside + that were making it a circle */
html body .WOT .wot-ev-pill .wot-ep-add::before,
html body .WOT .wot-ev-pill .wot-ep-add::after{
  display:none !important;
  content:none !important;
}
/* Inner span/i inside + */
html body .WOT .wot-ev-pill .wot-ep-add span,
html body .WOT .wot-ev-pill .wot-ep-add i{
  font-size:14px !important;
  background:transparent !important;
  color:inherit !important;
  width:auto !important;
  height:auto !important;
  padding:0 !important;
  margin:0 !important;
  line-height:1 !important;
}

/* Shift pill right-padding to not overlap + (smaller now) */
html body .WOT .wot-ev-pill{
  padding-right:22px !important;
}

/* ══ MULTI-SELECT FILTER: .on state = solid accent fill ══ */
html body .WOT .wot-flt.on{
  background:currentColor !important;
  color:#0a0a0d !important;
  border-color:transparent !important;
  font-weight:800 !important;
}
html body .WOT .wot-flt[data-cat="music"].on{background:#E8201A !important; color:#fff !important;}
html body .WOT .wot-flt[data-cat="sport"].on{background:#1A56FF !important; color:#fff !important;}
html body .WOT .wot-flt[data-cat="food"].on{background:#2DB54B !important; color:#fff !important;}
html body .WOT .wot-flt[data-cat="nightlife"].on{background:#FF6B00 !important; color:#fff !important;}
html body .WOT .wot-flt[data-cat="culture"].on{background:#7C3AED !important; color:#fff !important;}
html body .WOT .wot-flt[data-cat="family"].on{background:#F5C400 !important; color:#0a0a0d !important;}
html body .WOT .wot-flt[data-cat="all"].on{background:rgba(255,255,255,.12) !important; color:#fff !important;}
html body .WOT.wot-light .wot-flt[data-cat="all"].on{background:#0a0a0d !important; color:#fff !important;}
html body .WOT .wot-flt.on .wot-flt-count{
  color:inherit !important;
  opacity:.8 !important;
}

/* Kill the orderPop animation keyframes entirely */
@keyframes orderPop{from{transform:none;}to{transform:none;}}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.45  CALM + COMPACT
   Problem: controls area too busy - every category pill shouting with
   full colored outline + colored text + count.
   Fix: GHOST style default (muted/outlined), ONLY .on gets full color fill.
   Day pills flatter. Pills on mobile: 2-column compact.
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ CATEGORY FILTERS: ghost default, color only when active ══ */
html body .WOT .wot-flt{
  background:transparent !important;
  border:1px solid rgba(255,255,255,.12) !important;
  color:rgba(255,255,255,.6) !important;
  padding:5px 12px !important;
  font-size:.58rem !important;
  font-weight:700 !important;
  letter-spacing:.5px !important;
  text-transform:uppercase !important;
  height:28px !important;
  transition:all .15s ease !important;
}
html body .WOT.wot-light .wot-flt{
  border-color:rgba(0,0,0,.12) !important;
  color:rgba(0,0,0,.55) !important;
}
html body .WOT .wot-flt .wot-flt-dot{
  display:none !important; /* remove the colored dot - too busy */
}
html body .WOT .wot-flt-count{
  font-size:.5rem !important;
  opacity:.5 !important;
  margin-left:4px !important;
  font-weight:600 !important;
}
html body .WOT .wot-flt:hover{
  border-color:rgba(255,255,255,.3) !important;
  color:rgba(255,255,255,.9) !important;
}
html body .WOT.wot-light .wot-flt:hover{
  border-color:rgba(0,0,0,.3) !important;
  color:rgba(0,0,0,.9) !important;
}
/* ACTIVE: solid category fill */
html body .WOT .wot-flt.on{
  border-color:transparent !important;
  color:#fff !important;
  font-weight:800 !important;
}
html body .WOT .wot-flt.on .wot-flt-count{opacity:.85 !important; color:inherit !important;}
html body .WOT .wot-flt[data-cat="all"].on{background:rgba(255,255,255,.15) !important;}
html body .WOT.wot-light .wot-flt[data-cat="all"].on{background:#0a0a0d !important;}
html body .WOT .wot-flt[data-cat="music"].on{background:#E8201A !important;}
html body .WOT .wot-flt[data-cat="sport"].on{background:#1A56FF !important;}
html body .WOT .wot-flt[data-cat="food"].on{background:#2DB54B !important;}
html body .WOT .wot-flt[data-cat="nightlife"].on{background:#FF6B00 !important;}
html body .WOT .wot-flt[data-cat="culture"].on{background:#7C3AED !important;}
html body .WOT .wot-flt[data-cat="family"].on{background:#F5C400 !important; color:#0a0a0d !important;}

html body .WOT .wot-filterbar{
  gap:5px !important;
  padding:6px 8px !important;
}

/* ══ DAY PILLS: flatter, cleaner ══ */
html body .WOT .wot-wday{
  background:transparent !important;
  border:none !important;
  padding:6px 4px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:10px !important;
  cursor:pointer !important;
  transition:background .15s ease !important;
}
html body .WOT .wot-wday:hover{
  background:rgba(255,255,255,.05) !important;
}
html body .WOT.wot-light .wot-wday:hover{
  background:rgba(0,0,0,.04) !important;
}
html body .WOT .wot-wday-dn{
  font-size:.52rem !important;
  font-weight:600 !important;
  letter-spacing:.8px !important;
  text-transform:uppercase !important;
  color:rgba(255,255,255,.5) !important;
  margin-bottom:2px !important;
}
html body .WOT.wot-light .wot-wday-dn{color:rgba(0,0,0,.5) !important;}
html body .WOT .wot-wday-num{
  font-size:1.1rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  color:#fff !important;
}
html body .WOT.wot-light .wot-wday-num{color:#0a0a0d !important;}
/* ACTIVE day: red pill (only for today) */
html body .WOT .wot-wday.active{
  background:#E8201A !important;
  color:#fff !important;
}
html body .WOT .wot-wday.active .wot-wday-dn,
html body .WOT .wot-wday.active .wot-wday-num{color:#fff !important;}

html body .WOT .wot-week-strip{
  gap:2px !important;
  padding:4px 8px !important;
}

/* ══ KILL DOTS before category label in drawer/popup ══ */
html body .pop-cat::before,
html body .pop-cat::after,
html body .wot-expand-badge::before,
html body .wot-expand-badge::after,
html body .wot-drawer .pop-cat::before,
html body .wot-drawer-cat::before,
html body .wot-drawer-cat::after,
html body .wot-popup-cat::before,
html body .wot-popup-cat::after,
html body .wot-mini-dot.in-popup{
  display:none !important;
  content:none !important;
}
/* Pull in any stray bullet dots near category label inside expand */
html body .wot-expand-left > .wot-expand-badge + span.dot,
html body .wot-expand .live-dot,
html body .wot-expand .pulse-dot{
  display:none !important;
}

/* ══ EXPLORE / section H2 titles: BLACK text (not purple) ══ */
html body .SH .sh-title,
html body h2.sh-title{
  color:#0a0a0d !important;
}
/* On dark body background, use white-ish instead of invisible black */
html body.dark-mode .SH .sh-title,
html body .dark-bg .SH .sh-title{
  color:#f5f5f5 !important;
}
/* BUT the Explore Manchester section has white background per screenshot, so black works */

/* ══ MOBILE: 2-column pills, compact + clean ══ */
@media (max-width: 900px){
  html body .WOT .wot-tg-row{
    min-height:62px !important;
    height:auto !important;
    max-height:none !important;
  }
  html body .WOT .wot-tg-time{
    flex:0 0 42px !important;
    width:42px !important;
    min-width:42px !important;
    max-width:42px !important;
    font-size:.55rem !important;
    color:rgba(255,255,255,.4) !important;
    font-weight:600 !important;
    padding:0 4px 0 6px !important;
  }
  html body .WOT .wot-tg-ev-row{
    gap:6px !important;
    padding:6px 8px 6px 4px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    scroll-snap-type:x proximity !important;
    scrollbar-width:none !important;
    flex-wrap:nowrap !important;
  }
  html body .WOT .wot-tg-ev-row::-webkit-scrollbar{display:none !important;}

  /* 3 pills per row: 2.75 visible (3rd peeks as swipe hint) */
  /* Viewport - 42 time - 8 padding = usable. divide by 2.75 */
  html body .WOT .wot-ev-pill{
    flex:0 0 calc((100vw - 50px) / 2.75 - 6px) !important;
    width:calc((100vw - 50px) / 2.75 - 6px) !important;
    min-width:calc((100vw - 50px) / 2.75 - 6px) !important;
    max-width:calc((100vw - 50px) / 2.75 - 6px) !important;
    height:50px !important;
    min-height:50px !important;
    max-height:50px !important;
    padding:7px 8px 7px 9px !important;
    border-radius:9px !important;
    scroll-snap-align:start !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    border-left-width:3px !important;
    border-left-style:solid !important;
    box-sizing:border-box !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{
    font-size:.66rem !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    margin:0 0 1px 0 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-sub{
    font-size:.5rem !important;
    line-height:1.15 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    margin:0 !important;
    opacity:.55 !important;
    font-weight:500 !important;
  }
  /* + button shifts to not overlap title-ellipsis */
  html body .WOT .wot-ev-pill .wot-ep-add{
    top:4px !important;
    right:4px !important;
    transform:none !important;
    width:12px !important;
    height:12px !important;
    font-size:11px !important;
    opacity:.35 !important;
  }
  /* Order badge smaller on mobile to fit tiny pills */
  html body .WOT .wot-ev-pill .wot-ep-order{
    width:15px !important; height:15px !important;
    top:4px !important; right:4px !important;
    font-size:9px !important;
  }

  /* Category filters also calmer on mobile */
  html body .WOT .wot-flt{
    padding:4px 9px !important;
    font-size:.52rem !important;
    height:26px !important;
  }
  html body .WOT .wot-flt-count{font-size:.44rem !important;}

  /* Day strip compact */
  html body .WOT .wot-wday{
    flex:0 0 50px !important;
    min-width:50px !important;
    max-width:50px !important;
    padding:5px 2px !important;
  }
  html body .WOT .wot-wday-num{font-size:1rem !important;}
  html body .WOT .wot-wday-dn{font-size:.45rem !important;}
}

/* Tiny screens */
@media (max-width: 420px){
  html body .WOT .wot-ev-pill{
    flex:0 0 calc(50vw - 36px) !important;
    width:calc(50vw - 36px) !important;
    min-width:calc(50vw - 36px) !important;
    max-width:calc(50vw - 36px) !important;
    height:50px !important;
    min-height:50px !important;
    max-height:50px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{font-size:.72rem !important;}
  html body .WOT .wot-ev-pill .wot-ep-sub{font-size:.54rem !important;}
  html body .WOT .wot-tg-time{
    flex:0 0 34px !important; width:34px !important;
    min-width:34px !important; max-width:34px !important;
    font-size:.5rem !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.46  BIG VISUAL FIX
   1. Cat pills: ghost + per-category COLOUR border + COLOUR text. ALL = solid white.
   2. Event pills: dark bg (#1a1a22) + vivid LEFT-BORDER accent + white text, bigger
   3. Time column: bigger, cleaner
   4. WOT topbar: ultra-compact (half the current height)
   5. My Night FAB: always visible, high z-index
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ 1. CATEGORY FILTER PILLS ══ */
html body .WOT .wot-flt{
  background:transparent !important;
  border:1.5px solid rgba(255,255,255,.18) !important;
  color:rgba(255,255,255,.45) !important;
  font-size:.58rem !important;
  font-weight:700 !important;
  letter-spacing:.5px !important;
  text-transform:uppercase !important;
  padding:5px 13px !important;
  height:30px !important;
  min-height:30px !important;
  max-height:30px !important;
  border-radius:999px !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  transition:all .15s ease !important;
  box-shadow:none !important;
}
/* Per-category: vivid outline + matching text colour */
html body .WOT .wot-flt[data-cat="music"]    {border-color:#E8201A !important; color:#E8201A !important;}
html body .WOT .wot-flt[data-cat="sport"]    {border-color:#1A56FF !important; color:#1A56FF !important;}
html body .WOT .wot-flt[data-cat="food"]     {border-color:#2DB54B !important; color:#2DB54B !important;}
html body .WOT .wot-flt[data-cat="nightlife"]{border-color:#FF6B00 !important; color:#FF6B00 !important;}
html body .WOT .wot-flt[data-cat="culture"]  {border-color:#7C3AED !important; color:#7C3AED !important;}
html body .WOT .wot-flt[data-cat="family"]   {border-color:#F5C400 !important; color:#F5C400 !important;}
/* ALL: solid white always (default active state look) */
html body .WOT .wot-flt[data-cat="all"]{
  background:#fff !important;
  color:#0a0a0d !important;
  border-color:#fff !important;
  font-weight:800 !important;
}
/* .on = solid fill */
html body .WOT .wot-flt[data-cat="all"].on    {background:#fff !important;color:#0a0a0d !important;border-color:#fff !important;}
html body .WOT .wot-flt[data-cat="music"].on  {background:#E8201A !important;color:#fff !important;border-color:#E8201A !important;}
html body .WOT .wot-flt[data-cat="sport"].on  {background:#1A56FF !important;color:#fff !important;border-color:#1A56FF !important;}
html body .WOT .wot-flt[data-cat="food"].on   {background:#2DB54B !important;color:#fff !important;border-color:#2DB54B !important;}
html body .WOT .wot-flt[data-cat="nightlife"].on{background:#FF6B00 !important;color:#fff !important;border-color:#FF6B00 !important;}
html body .WOT .wot-flt[data-cat="culture"].on{background:#7C3AED !important;color:#fff !important;border-color:#7C3AED !important;}
html body .WOT .wot-flt[data-cat="family"].on {background:#F5C400 !important;color:#0a0a0d !important;border-color:#F5C400 !important;}
html body .WOT .wot-flt .wot-flt-dot{display:none !important;}
html body .WOT .wot-flt-count{font-size:.48rem !important;opacity:.55 !important;margin-left:3px !important;font-weight:600 !important;}
html body .WOT .wot-flt.on .wot-flt-count{opacity:.85 !important;color:inherit !important;}
html body .WOT .wot-filterbar{
  gap:6px !important;
  padding:5px 10px 6px !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  scrollbar-width:none !important;
}
html body .WOT .wot-filterbar::-webkit-scrollbar{display:none !important;}

/* ══ 2. EVENT PILLS: dark bg + vivid left-border + white text ══ */
html body .WOT .wot-ev-pill{
  background:#16161e !important;
  border:none !important;
  border-left:3.5px solid var(--ec, #E8201A) !important;
  border-radius:10px !important;
  color:#fff !important;
  height:64px !important;
  min-height:64px !important;
  max-height:64px !important;
  padding:10px 28px 10px 11px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  position:relative !important;
  box-sizing:border-box !important;
  box-shadow:none !important;
  outline:none !important;
  transform:none !important;
}
html body .WOT .wot-ev-pill:hover{
  background:#1d1d28 !important;
  transform:none !important;
}
html body .WOT .wot-ev-pill .wot-ep-title{
  font-size:.83rem !important;
  font-weight:700 !important;
  color:#fff !important;
  line-height:1.2 !important;
  margin:0 0 3px 0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
html body .WOT .wot-ev-pill .wot-ep-sub{
  font-size:.62rem !important;
  color:rgba(255,255,255,.5) !important;
  line-height:1.2 !important;
  margin:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-weight:400 !important;
}
/* Added state: outline glow, no scale */
html body .WOT .wot-ev-pill[data-added="1"],
html body .WOT .wot-ev-pill.added{
  transform:translateY(-2px) !important;
  background:#1d1d2c !important;
  box-shadow:0 6px 20px rgba(0,0,0,.5) !important;
  outline:1.5px solid var(--ec, #E8201A) !important;
  outline-offset:-1px !important;
  z-index:3 !important;
}
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-title,
html body .WOT .wot-ev-pill.added .wot-ep-title{color:#fff !important;}

/* ══ 3. TIME COLUMN: bigger, cleaner ══ */
html body .WOT .wot-tg-time{
  font-size:.7rem !important;
  font-weight:700 !important;
  color:rgba(255,255,255,.4) !important;
  letter-spacing:.2px !important;
  flex:0 0 46px !important;
  width:46px !important;
  min-width:46px !important;
  max-width:46px !important;
  padding:0 6px 0 10px !important;
  display:flex !important;
  align-items:flex-start !important;
  padding-top:22px !important;
  box-sizing:border-box !important;
}
html body .WOT .wot-tg-row.has-ev{
  min-height:80px !important;
  height:auto !important;
  max-height:none !important;
}
html body .WOT .wot-tg-ev-row{
  gap:8px !important;
  padding:8px 10px 8px 0 !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  scrollbar-width:none !important;
  align-items:stretch !important;
}
html body .WOT .wot-tg-ev-row::-webkit-scrollbar{display:none !important;}

/* ══ 4. WOT TOPBAR: ultra-compact ══ */
html body .WOT .wot-topbar{
  padding:6px 10px 4px !important;
  min-height:0 !important;
  gap:6px !important;
}
html body .WOT .wot-title{
  font-size:.68rem !important;
  font-weight:900 !important;
  letter-spacing:1.2px !important;
  text-transform:uppercase !important;
}
html body .WOT .wot-live-badge{
  padding:3px 7px !important;
  font-size:.44rem !important;
  gap:4px !important;
  height:20px !important;
}
html body .WOT .wot-live-dot{
  width:5px !important;
  height:5px !important;
}
html body .WOT .wot-view-switch{
  gap:2px !important;
  padding:2px !important;
}
html body .WOT .wot-view-opt,
html body .WOT .wot-mode-opt{
  font-size:.55rem !important;
  padding:4px 9px !important;
  height:24px !important;
  min-height:24px !important;
  letter-spacing:.5px !important;
}
html body .WOT .wot-week-strip{
  gap:3px !important;
  padding:3px 8px 4px !important;
}
html body .WOT .wot-wday{
  flex:0 0 46px !important;
  min-width:46px !important;
  max-width:46px !important;
  padding:4px 2px !important;
  border-radius:9px !important;
}
html body .WOT .wot-wday-dn{
  font-size:.44rem !important;
  font-weight:700 !important;
  letter-spacing:.6px !important;
  text-transform:uppercase !important;
  color:rgba(255,255,255,.45) !important;
  margin-bottom:1px !important;
}
html body .WOT .wot-wday-num{
  font-size:.95rem !important;
  font-weight:900 !important;
  line-height:1 !important;
  color:#fff !important;
}
html body .WOT .wot-wday.active{
  background:#E8201A !important;
}
html body .WOT .wot-wday.active .wot-wday-dn,
html body .WOT .wot-wday.active .wot-wday-num{color:#fff !important;}

/* ══ 5. MY NIGHT FAB: always visible, high z-index ══ */
html body .plan-fab{
  position:fixed !important;
  bottom:calc(16px + env(safe-area-inset-bottom, 0px)) !important;
  right:14px !important;
  z-index:9990 !important;
  display:inline-flex !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
html body.plan-open .plan-fab{
  transform:translateY(200px) !important;
  opacity:0 !important;
  pointer-events:none !important;
}
html body .plan{
  z-index:9980 !important;
}

/* ══ MOBILE: 2 full pills per row ══ */
@media (max-width: 900px){
  html body .WOT .wot-ev-pill{
    flex:0 0 calc(50vw - 33px) !important;
    width:calc(50vw - 33px) !important;
    min-width:calc(50vw - 33px) !important;
    max-width:calc(50vw - 33px) !important;
    height:64px !important;
    min-height:64px !important;
    max-height:64px !important;
  }
  html body .WOT .wot-tg-time{
    flex:0 0 44px !important;
    width:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    font-size:.65rem !important;
    padding:0 4px 0 8px !important;
    padding-top:22px !important;
  }
  html body .WOT .wot-flt{
    padding:4px 11px !important;
    font-size:.54rem !important;
    height:28px !important;
    min-height:28px !important;
    max-height:28px !important;
  }
  html body .WOT .wot-topbar{
    padding:5px 8px 3px !important;
  }
  html body .WOT .wot-title{font-size:.62rem !important;}
}

@media (max-width: 420px){
  html body .WOT .wot-ev-pill{
    flex:0 0 calc(50vw - 30px) !important;
    width:calc(50vw - 30px) !important;
    min-width:calc(50vw - 30px) !important;
    max-width:calc(50vw - 30px) !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{font-size:.78rem !important;}
  html body .WOT .wot-ev-pill .wot-ep-sub{font-size:.58rem !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.47  MATCH REFERENCE
   User side-by-side: mine has + buttons, number badges, bright tints.
   Reference: CLEAN pills - dark bg, coloured left border, title, venue. DONE.
   - Hide + button in grid view (kept in popup/drawer)
   - Hide order badge in grid view (shows in My Night sheet instead)
   - Softer pill bg (#14141a, no saturated tint)
   - Cat pills smaller (24px)
   - plan-fab below bottom nav z-index
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ HIDE CLUTTER: + button and order badge in grid ══ */
html body .WOT .wot-ev-pill .wot-ep-add{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  width:0 !important;
  height:0 !important;
}
html body .WOT .wot-ev-pill .wot-ep-order{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
}
/* Extra right-padding no longer needed without + button */
html body .WOT .wot-ev-pill{
  padding:9px 11px 9px 10px !important;
}

/* ══ EVENT PILLS: clean, dark, subtle, matches reference ══ */
html body .WOT .wot-ev-pill{
  background:#14141a !important;
  border:none !important;
  border-left:3px solid var(--ec, #E8201A) !important;
  border-radius:9px !important;
  color:#fff !important;
  height:54px !important;
  min-height:54px !important;
  max-height:54px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  position:relative !important;
  box-sizing:border-box !important;
  box-shadow:none !important;
  outline:none !important;
  transform:none !important;
}
html body .WOT .wot-ev-pill:hover{background:#1c1c26 !important;}
html body .WOT .wot-ev-pill .wot-ep-title{
  font-size:.78rem !important;
  font-weight:700 !important;
  color:#fff !important;
  line-height:1.2 !important;
  margin:0 0 2px 0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
html body .WOT .wot-ev-pill .wot-ep-sub{
  font-size:.58rem !important;
  color:rgba(255,255,255,.5) !important;
  line-height:1.2 !important;
  margin:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-weight:400 !important;
}
/* Added pill: subtle glow, no scale */
html body .WOT .wot-ev-pill[data-added="1"],
html body .WOT .wot-ev-pill.added{
  transform:translateY(-1px) !important;
  background:#1e1e28 !important;
  box-shadow:0 4px 14px rgba(0,0,0,.45) !important;
  outline:1px solid var(--ec, #E8201A) !important;
  outline-offset:-1px !important;
}

/* ══ CAT PILLS: smaller ══ */
html body .WOT .wot-flt{
  height:26px !important;
  min-height:26px !important;
  max-height:26px !important;
  padding:4px 11px !important;
  font-size:.54rem !important;
  letter-spacing:.5px !important;
  border-width:1.5px !important;
}
html body .WOT .wot-flt-count{
  font-size:.46rem !important;
  margin-left:4px !important;
}
html body .WOT .wot-filterbar{
  gap:5px !important;
  padding:4px 10px 5px !important;
}

/* ══ TIME COLUMN ══ */
html body .WOT .wot-tg-time{
  font-size:.65rem !important;
  font-weight:700 !important;
  color:rgba(255,255,255,.4) !important;
  letter-spacing:.3px !important;
  flex:0 0 44px !important;
  width:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  padding:18px 4px 0 10px !important;
  display:flex !important;
  align-items:flex-start !important;
  box-sizing:border-box !important;
}
html body .WOT .wot-tg-row.has-ev{
  min-height:68px !important;
  height:auto !important;
  max-height:none !important;
}
html body .WOT .wot-tg-ev-row{
  gap:8px !important;
  padding:7px 10px 7px 0 !important;
}

/* ══ TOPBAR: tight ══ */
html body .WOT .wot-topbar{
  padding:5px 10px 3px !important;
}
html body .WOT .wot-title{
  font-size:.64rem !important;
  letter-spacing:1.1px !important;
  font-weight:900 !important;
}
html body .WOT .wot-live-badge{
  padding:2px 6px !important;
  font-size:.42rem !important;
  height:18px !important;
}
html body .WOT .wot-view-opt,
html body .WOT .wot-mode-opt{
  font-size:.5rem !important;
  padding:3px 8px !important;
  height:22px !important;
  min-height:22px !important;
}
html body .WOT .wot-week-strip{
  gap:3px !important;
  padding:3px 8px !important;
}
html body .WOT .wot-wday{
  flex:0 0 44px !important;
  min-width:44px !important;
  max-width:44px !important;
  padding:4px 2px !important;
}
html body .WOT .wot-wday-num{font-size:.9rem !important; font-weight:900 !important;}
html body .WOT .wot-wday-dn{font-size:.42rem !important;}

/* ══ RESTORE BOTTOM NAV (#MCR-DRAWER z:900 must win over plan-fab) ══ */
html body .plan-fab{
  z-index:70 !important;
  bottom:calc(72px + env(safe-area-inset-bottom, 0px)) !important;
}
html body .plan{
  z-index:65 !important;
}
html body #MCR-DRAWER{z-index:900 !important;}
html body #MCR-DRAWER-BD{z-index:899 !important;}

/* ══ MOBILE: 2 pills per row ══ */
@media (max-width: 900px){
  html body .WOT .wot-ev-pill{
    flex:0 0 calc(50vw - 32px) !important;
    width:calc(50vw - 32px) !important;
    min-width:calc(50vw - 32px) !important;
    max-width:calc(50vw - 32px) !important;
    height:54px !important;
    min-height:54px !important;
    max-height:54px !important;
    padding:8px 10px !important;
  }
  html body .WOT .wot-tg-time{
    flex:0 0 40px !important;
    width:40px !important;
    min-width:40px !important;
    max-width:40px !important;
    font-size:.58rem !important;
    padding:16px 3px 0 8px !important;
  }
  html body .WOT .wot-flt{
    padding:3px 10px !important;
    font-size:.5rem !important;
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{font-size:.72rem !important;}
  html body .WOT .wot-ev-pill .wot-ep-sub{font-size:.56rem !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.48  RESTORE FUNCTIONALITY
   User: "i still want the + button and all the same functionality,
          just want the fucking pill to look like what i send"
   - Re-enable + button (subtle, top-right)
   - Re-enable order badge (white circle, black number, top-right when added)
   - Keep pill visual style from v12.4.47 (#14141a bg + coloured left border)
   ═══════════════════════════════════════════════════════════════════════ */

/* Restore + button: small, minimal, top-right */
html body .WOT .wot-ev-pill .wot-ep-add{
  display:flex !important;
  visibility:visible !important;
  opacity:.5 !important;
  pointer-events:auto !important;
  position:absolute !important;
  top:4px !important;
  right:5px !important;
  left:auto !important;
  bottom:auto !important;
  transform:none !important;
  width:14px !important;
  height:14px !important;
  min-width:14px !important;
  max-width:14px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1 !important;
  color:rgba(255,255,255,.55) !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
}
html body .WOT .wot-ev-pill .wot-ep-add:hover,
html body .WOT .wot-ev-pill:hover .wot-ep-add{
  opacity:1 !important;
  color:#fff !important;
}
html body .WOT .wot-ev-pill .wot-ep-add::before,
html body .WOT .wot-ev-pill .wot-ep-add::after{
  display:none !important;
  content:none !important;
}

/* Restore order badge: white circle + black number, top-right */
html body .WOT .wot-ev-pill .wot-ep-order{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  position:absolute !important;
  top:4px !important;
  right:4px !important;
  left:auto !important;
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#0a0a0d !important;
  font-size:9px !important;
  font-weight:900 !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 2px 5px rgba(0,0,0,.35) !important;
  z-index:5 !important;
  animation:none !important;
  border:none !important;
  padding:0 !important;
  margin:0 !important;
  line-height:1 !important;
}

/* Hide + when order badge present (pill is added) */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add,
html body .WOT .wot-ev-pill:has(.wot-ep-order) .wot-ep-add{
  display:none !important;
}

/* Make room on right for + / badge */
html body .WOT .wot-ev-pill{
  padding:9px 22px 9px 10px !important;
}
@media (max-width: 900px){
  html body .WOT .wot-ev-pill{
    padding:8px 22px 8px 10px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.49  MOBILE HEADER COLLAPSE
   User: kill TONIGHT + LIVE text on mobile, put days + GRID/MAP +
         DARK/LIGHT on ONE row, cats compact below, pill text bigger.
   Approach: absolute-position the view/mode switches over the week-strip.
   ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 900px){
  /* WOT needs relative for absolute child positioning */
  html body .WOT{
    position:relative !important;
  }

  /* HIDE TONIGHT + LIVE label entirely on mobile */
  html body .WOT .wot-topbar-left,
  html body .WOT .wot-title,
  html body .WOT .wot-live-badge,
  html body .WOT .wot-live-dot{
    display:none !important;
  }

  /* Topbar becomes floating right-aligned switches */
  html body .WOT .wot-topbar{
    position:absolute !important;
    top:8px !important;
    right:8px !important;
    left:auto !important;
    width:auto !important;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    border:none !important;
    z-index:6 !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
    min-height:0 !important;
  }
  html body .WOT .wot-topbar-center,
  html body .WOT .wot-topbar-right{
    padding:0 !important;
    margin:0 !important;
    width:auto !important;
    order:unset !important;
  }
  html body .WOT .wot-view-switch,
  html body .WOT .wot-mode-switch{
    gap:1px !important;
    padding:2px !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    font-size:.46rem !important;
    padding:3px 7px !important;
    height:20px !important;
    min-height:20px !important;
    letter-spacing:.4px !important;
  }

  /* Week strip: add right padding to clear the absolute switches */
  html body .WOT .wot-week-strip{
    padding:8px 180px 4px 10px !important;
    gap:3px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
  }
  html body .WOT .wot-week-strip::-webkit-scrollbar{display:none !important;}
  html body .WOT .wot-wday{
    flex:0 0 42px !important;
    min-width:42px !important;
    max-width:42px !important;
    padding:3px 2px !important;
    border-radius:9px !important;
  }
  html body .WOT .wot-wday-num{
    font-size:.88rem !important;
    font-weight:900 !important;
    line-height:1 !important;
  }
  html body .WOT .wot-wday-dn{
    font-size:.4rem !important;
    font-weight:700 !important;
    letter-spacing:.5px !important;
  }

  /* Cat pills directly below, compact */
  html body .WOT .wot-filterbar{
    padding:4px 10px 6px !important;
    gap:5px !important;
  }
  html body .WOT .wot-flt{
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
    padding:3px 10px !important;
    font-size:.5rem !important;
    letter-spacing:.4px !important;
    border-width:1.5px !important;
  }
  html body .WOT .wot-flt-count{
    font-size:.44rem !important;
    margin-left:3px !important;
  }

  /* ══ PILLS: bigger title to match reference second image ══ */
  html body .WOT .wot-ev-pill{
    background:#14141a !important;
    border:none !important;
    border-left:3.5px solid var(--ec, #E8201A) !important;
    border-radius:10px !important;
    height:56px !important;
    min-height:56px !important;
    max-height:56px !important;
    padding:8px 22px 8px 11px !important;
    flex:0 0 calc(50vw - 30px) !important;
    width:calc(50vw - 30px) !important;
    min-width:calc(50vw - 30px) !important;
    max-width:calc(50vw - 30px) !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{
    font-size:.82rem !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    margin:0 0 2px 0 !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-sub{
    font-size:.6rem !important;
    color:rgba(255,255,255,.45) !important;
    line-height:1.15 !important;
    font-weight:400 !important;
  }

  /* Time column: bigger, readable */
  html body .WOT .wot-tg-time{
    font-size:.62rem !important;
    font-weight:700 !important;
    color:rgba(255,255,255,.4) !important;
    flex:0 0 40px !important;
    width:40px !important;
    min-width:40px !important;
    max-width:40px !important;
    padding:17px 3px 0 9px !important;
  }
  html body .WOT .wot-tg-row.has-ev{
    min-height:70px !important;
  }
  html body .WOT .wot-tg-ev-row{
    gap:8px !important;
    padding:7px 10px 7px 0 !important;
  }

  /* Tiny + button kept but minimal */
  html body .WOT .wot-ev-pill .wot-ep-add{
    width:13px !important;
    height:13px !important;
    font-size:12px !important;
    top:4px !important;
    right:5px !important;
    opacity:.45 !important;
    background:transparent !important;
    border:none !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-order{
    width:15px !important;
    height:15px !important;
    font-size:9px !important;
    top:4px !important;
    right:4px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.51  HIDE wot-nav-bar ON DESKTOP
   .wot-nav-bar = the 8 colored-square "What's On / Food & Drink / ..." grid
   that was showing on desktop. User: REMOVE from desktop.
   Keep visible on mobile.
   ═══════════════════════════════════════════════════════════════════════ */

@media (min-width: 901px){
  html body .WOT .wot-nav-bar,
  html body .wot-nav-bar{
    display:none !important;
    visibility:hidden !important;
    height:0 !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.52  REAL FIXES (cat filter + grey pills)
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ CAT FILTER WORKS: respect JS inline display:none ══ */
html body .WOT .wot-ev-pill[style*="display: none"],
html body .WOT .wot-ev-pill[style*="display:none"],
html body .WOT .wot-tg-row[style*="display: none"],
html body .WOT .wot-tg-row[style*="display:none"]{
  display:none !important;
}

/* ══ PILLS GREY (not colored tints) ══ */
html body .WOT .wot-ev-pill,
html body .WOT .wot-ev-pill[data-cat],
html body .WOT.wot-light .wot-ev-pill,
body .WOT:not(.wot-light) .wot-ev-pill,
body .WOT.wot-light .wot-ev-pill{
  background:#1e1e24 !important;
  background-image:none !important;
  border:none !important;
  border-left:3.5px solid var(--ec, #E8201A) !important;
  border-radius:10px !important;
  color:#fff !important;
  box-shadow:none !important;
  outline:none !important;
  transform:none !important;
}
html body .WOT .wot-ev-pill:hover{background:#26262e !important;}
html body .WOT .wot-ev-pill[data-added="1"],
html body .WOT .wot-ev-pill.added{
  background:#2a2a33 !important;
  outline:1.5px solid var(--ec, #E8201A) !important;
  outline-offset:-1px !important;
  transform:translateY(-1px) !important;
  box-shadow:0 4px 14px rgba(0,0,0,.4) !important;
}
html body .WOT .wot-ev-pill .wot-ep-title{color:#fff !important; font-weight:700 !important;}
html body .WOT .wot-ev-pill .wot-ep-sub{color:rgba(255,255,255,.5) !important;}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.53  REAL MOBILE LAYOUT FIX
   The real classes: .wot-mini-label / .wot-mini-tonight / .wot-mini-live
   (I was targeting wrong selectors all along)
   ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 900px){
  /* HIDE TONIGHT + LIVE text + separator on mobile */
  html body .WOT .wot-mini-tonight,
  html body .WOT .wot-mini-live,
  html body .WOT .wot-mini-line,
  html body .WOT .wot-mini-dot{
    display:none !important;
    visibility:hidden !important;
    width:0 !important;
    height:0 !important;
    padding:0 !important;
    margin:0 !important;
    opacity:0 !important;
  }

  /* WOT relative so child can absolute position */
  html body .WOT{position:relative !important;}

  /* .wot-mini-label becomes floating switches top-right */
  html body .WOT .wot-mini-label{
    position:absolute !important;
    top:8px !important;
    right:8px !important;
    left:auto !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border:none !important;
    z-index:6 !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:5px !important;
    min-height:0 !important;
  }
  html body .WOT .wot-view-switch,
  html body .WOT .wot-mode-switch{
    gap:1px !important;
    padding:2px !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    font-size:.45rem !important;
    padding:3px 7px !important;
    height:20px !important;
    min-height:20px !important;
    letter-spacing:.3px !important;
  }

  /* week-strip: right padding so days dont overlap the switches */
  html body .WOT .wot-week-strip{
    padding:8px 172px 4px 10px !important;
    gap:3px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
  }
  html body .WOT .wot-week-strip::-webkit-scrollbar{display:none !important;}

  html body .WOT .wot-wday{
    flex:0 0 42px !important;
    min-width:42px !important;
    max-width:42px !important;
    padding:3px 2px !important;
  }
  html body .WOT .wot-wday-num{font-size:.88rem !important;}
  html body .WOT .wot-wday-dn{font-size:.4rem !important;}

  /* Cat pills ultra compact */
  html body .WOT .wot-filterbar{
    padding:4px 10px 6px !important;
    gap:5px !important;
  }
  html body .WOT .wot-flt{
    height:24px !important;
    min-height:24px !important;
    padding:3px 10px !important;
    font-size:.5rem !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.54  SUBTLE CATEGORY TINT ON PILLS
   Reference: Chris Bridgett (music) = dark with subtle red tint.
   NOT grey. NOT fully saturated. Just a whisper of the category colour.
   ═══════════════════════════════════════════════════════════════════════ */

html body .WOT .wot-ev-pill,
html body .WOT .wot-ev-pill[data-cat],
html body .WOT.wot-light .wot-ev-pill,
body .WOT:not(.wot-light) .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 14%, #13131a) !important;
  background-image:none !important;
  border:none !important;
  border-left:3.5px solid var(--ec, #E8201A) !important;
  border-radius:10px !important;
  color:#fff !important;
  box-shadow:none !important;
  outline:none !important;
  transform:none !important;
}
html body .WOT .wot-ev-pill:hover{
  background:color-mix(in srgb, var(--ec, #E8201A) 22%, #13131a) !important;
}
/* Added pill: stronger tint + outline */
html body .WOT .wot-ev-pill[data-added="1"],
html body .WOT .wot-ev-pill.added{
  background:color-mix(in srgb, var(--ec, #E8201A) 28%, #13131a) !important;
  outline:1.5px solid var(--ec, #E8201A) !important;
  outline-offset:-1px !important;
  transform:translateY(-1px) !important;
  box-shadow:0 4px 14px color-mix(in srgb, var(--ec, #E8201A) 30%, transparent) !important;
}
/* Light mode */
html body .WOT.wot-light .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 18%, #ffffff) !important;
  color:#0a0a0d !important;
}
html body .WOT.wot-light .wot-ev-pill .wot-ep-title{color:#0a0a0d !important;}
html body .WOT.wot-light .wot-ev-pill .wot-ep-sub{color:rgba(0,0,0,.55) !important;}

/* Text */
html body .WOT .wot-ev-pill .wot-ep-title{color:#fff !important; font-weight:700 !important;}
html body .WOT .wot-ev-pill .wot-ep-sub{color:rgba(255,255,255,.55) !important;}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.55  HIDE ORDER NUMBER BADGES
   User doesn't like the 1/2/3/4/5 circles. Keep + button, keep
   added-outline glow, just hide the number badge. Plan order still
   shown in the My Night bottom sheet.
   ═══════════════════════════════════════════════════════════════════════ */

html body .WOT .wot-ev-pill .wot-ep-order{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
  padding:0 !important;
  margin:0 !important;
}

/* When pill is added, show + again (or hide it), but NOT the number.
   Keep + visible since functionality requested. */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{
  display:flex !important;
  opacity:.6 !important;
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.56  RESTORE NUMBERS + 3D HOVER + HALVE MOBILE
   - Restore order number badge (number, not + dot)
   - Hide + button when pill added (no double symbol)
   - 3D lift on pill hover
   - Mobile cat pills: half size
   - Mobile event pills: half size
   - Fix top row overlap (shrink mini-label switches further)
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ RESTORE ORDER NUMBER ══ */
html body .WOT .wot-ev-pill .wot-ep-order{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  position:absolute !important;
  top:4px !important;
  right:5px !important;
  left:auto !important;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#0a0a0d !important;
  font-size:10px !important;
  font-weight:900 !important;
  line-height:1 !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 2px 6px rgba(0,0,0,.4) !important;
  z-index:5 !important;
  padding:0 !important;
  margin:0 !important;
  border:1px solid rgba(0,0,0,.15) !important;
  animation:none !important;
}

/* Hide + when added (only show number) */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{
  display:none !important;
  visibility:hidden !important;
}

/* ══ 3D HOVER LIFT ══ */
html body .WOT .wot-ev-pill{
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease !important;
  position:relative !important;
}
html body .WOT .wot-ev-pill:hover{
  transform:translateY(-4px) scale(1.015) !important;
  box-shadow:
    0 14px 32px rgba(0,0,0,.45),
    0 4px 10px rgba(0,0,0,.35),
    0 0 0 1.5px color-mix(in srgb, var(--ec, #E8201A) 50%, transparent) !important;
  z-index:10 !important;
}
html body .WOT .wot-ev-pill[data-added="1"]:hover,
html body .WOT .wot-ev-pill.added:hover{
  transform:translateY(-4px) scale(1.015) !important;
}

/* ══ MOBILE: HALF SIZE (cat pills + event pills) + FIX TOP ROW ══ */
@media (max-width: 900px){
  /* Top row: SHRINK switches so they don't overlap week days */
  html body .WOT .wot-mini-label{
    position:absolute !important;
    top:6px !important;
    right:6px !important;
    gap:3px !important;
    z-index:7 !important;
  }
  html body .WOT .wot-view-switch,
  html body .WOT .wot-mode-switch{
    gap:0 !important;
    padding:1px !important;
    transform:scale(.82) !important;
    transform-origin:right center !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    font-size:.4rem !important;
    padding:2px 5px !important;
    height:18px !important;
    min-height:18px !important;
  }
  /* Week-strip: more right padding, horizontal scroll */
  html body .WOT .wot-week-strip{
    padding:6px 130px 4px 8px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
    -webkit-overflow-scrolling:touch !important;
  }
  html body .WOT .wot-week-strip::-webkit-scrollbar{display:none !important;}
  html body .WOT .wot-wday{
    flex:0 0 36px !important;
    min-width:36px !important;
    max-width:36px !important;
    padding:3px 2px !important;
  }
  html body .WOT .wot-wday-num{font-size:.78rem !important;}
  html body .WOT .wot-wday-dn{font-size:.36rem !important;}

  /* CAT PILLS HALF SIZE */
  html body .WOT .wot-filterbar{
    padding:3px 8px 4px !important;
    gap:4px !important;
  }
  html body .WOT .wot-flt{
    height:18px !important;
    min-height:18px !important;
    max-height:18px !important;
    padding:2px 7px !important;
    font-size:.42rem !important;
    letter-spacing:.25px !important;
    border-width:1px !important;
  }
  html body .WOT .wot-flt-count{
    font-size:.36rem !important;
    margin-left:2px !important;
  }

  /* EVENT PILLS HALF SIZE */
  html body .WOT .wot-ev-pill{
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    padding:4px 22px 4px 8px !important;
    border-left-width:2.5px !important;
    border-radius:7px !important;
    flex:0 0 calc(50vw - 28px) !important;
    width:calc(50vw - 28px) !important;
    min-width:calc(50vw - 28px) !important;
    max-width:calc(50vw - 28px) !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{
    font-size:.62rem !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    margin:0 0 1px 0 !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-sub{
    font-size:.48rem !important;
    line-height:1.1 !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-order{
    width:14px !important;
    height:14px !important;
    min-width:14px !important;
    max-width:14px !important;
    font-size:8px !important;
    top:3px !important;
    right:3px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-add{
    width:11px !important;
    height:11px !important;
    font-size:10px !important;
    top:3px !important;
    right:4px !important;
  }
  html body .WOT .wot-tg-row.has-ev{
    min-height:48px !important;
  }
  html body .WOT .wot-tg-ev-row{
    gap:5px !important;
    padding:4px 8px 4px 0 !important;
  }
  html body .WOT .wot-tg-time{
    flex:0 0 34px !important;
    width:34px !important;
    min-width:34px !important;
    max-width:34px !important;
    font-size:.5rem !important;
    padding:10px 2px 0 6px !important;
  }
  /* Mobile hover: smaller lift */
  html body .WOT .wot-ev-pill:hover{
    transform:translateY(-2px) scale(1.02) !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.57  PAPER PLANE + SMALLER + MORE SPACING
   Reference: faint paper plane glyph bottom-right (not a +).
   Small compact pill with breathing room between pills.
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ PAPER PLANE ICON (replaces +) ══ */
html body .WOT .wot-ev-pill .wot-ep-add{
  color:transparent !important;
  font-size:0 !important;
  position:absolute !important;
  top:auto !important;
  bottom:5px !important;
  right:7px !important;
  left:auto !important;
  width:14px !important;
  height:14px !important;
  min-width:14px !important;
  max-width:14px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:.55 !important;
  cursor:pointer !important;
  transform:none !important;
  line-height:1 !important;
}
html body .WOT .wot-ev-pill .wot-ep-add::before{
  font-family:"Font Awesome 6 Free","Font Awesome 5 Free","FontAwesome","Font Awesome 6 Pro" !important;
  font-weight:900 !important;
  content:"\f1d8" !important;
  font-size:10px !important;
  color:rgba(255,255,255,.5) !important;
  display:inline-block !important;
  line-height:1 !important;
}
html body .WOT.wot-light .wot-ev-pill .wot-ep-add::before{color:rgba(0,0,0,.4) !important;}
html body .WOT .wot-ev-pill:hover .wot-ep-add{opacity:1 !important;}
html body .WOT .wot-ev-pill:hover .wot-ep-add::before{color:#fff !important;}
html body .WOT.wot-light .wot-ev-pill:hover .wot-ep-add::before{color:#0a0a0d !important;}
html body .WOT .wot-ev-pill .wot-ep-add::after{display:none !important; content:none !important;}
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{display:none !important;}

/* ══ DESKTOP: smaller pills + more spacing ══ */
html body .WOT .wot-ev-pill{
  height:46px !important;
  min-height:46px !important;
  max-height:46px !important;
  padding:6px 22px 6px 9px !important;
  border-radius:8px !important;
  border-left-width:3px !important;
}
html body .WOT .wot-ev-pill .wot-ep-title{
  font-size:.72rem !important;
  font-weight:700 !important;
  line-height:1.15 !important;
  margin:0 0 1px 0 !important;
}
html body .WOT .wot-ev-pill .wot-ep-sub{
  font-size:.56rem !important;
  line-height:1.15 !important;
}
html body .WOT .wot-tg-ev-row{
  gap:14px !important;  /* MORE spacing between pills */
  padding:8px 14px 8px 0 !important;
}
html body .WOT .wot-tg-row.has-ev{
  min-height:58px !important;
}

/* ══ MOBILE: even smaller + generous spacing ══ */
@media (max-width: 900px){
  html body .WOT .wot-ev-pill{
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    padding:5px 20px 5px 8px !important;
    border-radius:7px !important;
    border-left-width:2.5px !important;
    flex:0 0 calc(50vw - 34px) !important;
    width:calc(50vw - 34px) !important;
    min-width:calc(50vw - 34px) !important;
    max-width:calc(50vw - 34px) !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{
    font-size:.62rem !important;
    font-weight:800 !important;
    line-height:1.1 !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-sub{
    font-size:.48rem !important;
    line-height:1.1 !important;
  }
  html body .WOT .wot-tg-ev-row{
    gap:10px !important;  /* spacing between pills mobile */
    padding:6px 12px 6px 0 !important;
  }
  html body .WOT .wot-tg-row.has-ev{
    min-height:52px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-order{
    width:14px !important;
    height:14px !important;
    min-width:14px !important;
    max-width:14px !important;
    font-size:8px !important;
    top:3px !important;
    right:3px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-add{
    width:12px !important;
    height:12px !important;
    bottom:3px !important;
    right:5px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-add::before{
    font-size:8px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.58  MATCH REFERENCE PILL EXACTLY
   Reference: tall pill (~65px), big bold white title (.9rem+),
   muted venue subtitle, visible category tint, 4px colored left border,
   paper plane bottom-right.
   ═══════════════════════════════════════════════════════════════════════ */

html body .WOT .wot-ev-pill,
html body .WOT .wot-ev-pill[data-cat],
body .WOT:not(.wot-light) .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 22%, #0e0e14) !important;
  background-image:none !important;
  border:none !important;
  border-left:4px solid var(--ec, #E8201A) !important;
  border-radius:9px !important;
  color:#fff !important;
  height:64px !important;
  min-height:64px !important;
  max-height:64px !important;
  padding:10px 26px 10px 12px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  position:relative !important;
  box-sizing:border-box !important;
  box-shadow:none !important;
  outline:none !important;
  transition:transform .2s ease, box-shadow .2s ease !important;
}
html body .WOT .wot-ev-pill:hover{
  transform:translateY(-4px) scale(1.015) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.5), 0 0 0 1.5px color-mix(in srgb, var(--ec, #E8201A) 60%, transparent) !important;
  z-index:10 !important;
}
/* Title: big bold white */
html body .WOT .wot-ev-pill .wot-ep-title{
  font-size:.9rem !important;
  font-weight:800 !important;
  color:#fff !important;
  line-height:1.2 !important;
  margin:0 0 3px 0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  letter-spacing:-.005em !important;
}
/* Venue: muted */
html body .WOT .wot-ev-pill .wot-ep-sub{
  font-size:.65rem !important;
  color:rgba(255,255,255,.5) !important;
  line-height:1.2 !important;
  margin:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-weight:400 !important;
}
/* Added state: darker bg, visible outline */
html body .WOT .wot-ev-pill[data-added="1"],
html body .WOT .wot-ev-pill.added{
  background:color-mix(in srgb, var(--ec, #E8201A) 36%, #0e0e14) !important;
  outline:1.5px solid var(--ec, #E8201A) !important;
  outline-offset:-1px !important;
}

/* Order number (when added) */
html body .WOT .wot-ev-pill .wot-ep-order{
  position:absolute !important;
  top:6px !important;
  right:6px !important;
  left:auto !important;
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#0a0a0d !important;
  font-size:10px !important;
  font-weight:900 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 2px 6px rgba(0,0,0,.4) !important;
  z-index:5 !important;
  padding:0 !important; margin:0 !important;
  animation:none !important;
  border:none !important;
}
/* Paper plane (when NOT added) */
html body .WOT .wot-ev-pill .wot-ep-add{
  color:transparent !important;
  font-size:0 !important;
  position:absolute !important;
  bottom:7px !important;
  right:9px !important;
  top:auto !important;
  left:auto !important;
  width:14px !important;
  height:14px !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:1 !important;
  cursor:pointer !important;
  transform:none !important;
}
html body .WOT .wot-ev-pill .wot-ep-add::before{
  font-family:"Font Awesome 6 Free","Font Awesome 5 Free","FontAwesome" !important;
  font-weight:900 !important;
  content:"\f1d8" !important;
  font-size:11px !important;
  color:rgba(255,255,255,.55) !important;
}
html body .WOT .wot-ev-pill .wot-ep-add::after{display:none !important;}
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{display:none !important;}
html body .WOT .wot-ev-pill:hover .wot-ep-add::before{color:#fff !important;}

/* Spacing + grid */
html body .WOT .wot-tg-ev-row{
  gap:12px !important;
  padding:10px 14px 10px 0 !important;
}
html body .WOT .wot-tg-row.has-ev{
  min-height:80px !important;
}

/* Mobile: same design, 2 pills per row */
@media (max-width: 900px){
  html body .WOT .wot-ev-pill{
    height:60px !important;
    min-height:60px !important;
    max-height:60px !important;
    padding:9px 24px 9px 11px !important;
    flex:0 0 calc(50vw - 30px) !important;
    width:calc(50vw - 30px) !important;
    min-width:calc(50vw - 30px) !important;
    max-width:calc(50vw - 30px) !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{
    font-size:.78rem !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-sub{
    font-size:.58rem !important;
  }
  html body .WOT .wot-tg-ev-row{
    gap:10px !important;
    padding:8px 12px 8px 0 !important;
  }
  html body .WOT .wot-tg-row.has-ev{
    min-height:76px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.59  FIX TOP ROW OVERLAP
   Issue: GRID/MAP + DARK/LIGHT text + toggle too wide, WED day hidden.
   Fix: ICON-ONLY buttons on mobile. Hide the GRID/MAP/DARK/LIGHT text,
        keep only the icons. Buttons tiny. Days fit cleanly.
   ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 900px){
  /* Hide text labels in switches on mobile - icons only */
  html body .WOT .wot-view-opt span,
  html body .WOT .wot-mode-opt span{
    display:none !important;
  }

  /* Tiny icon buttons */
  html body .WOT .wot-view-switch,
  html body .WOT .wot-mode-switch{
    gap:0 !important;
    padding:1px !important;
    transform:none !important;
    border-radius:18px !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    width:22px !important;
    min-width:22px !important;
    max-width:22px !important;
    height:22px !important;
    min-height:22px !important;
    padding:0 !important;
    font-size:9px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  html body .WOT .wot-view-opt i,
  html body .WOT .wot-mode-opt i{
    font-size:10px !important;
    margin:0 !important;
  }

  /* .wot-mini-label container: compact, top-right */
  html body .WOT .wot-mini-label{
    position:absolute !important;
    top:6px !important;
    right:6px !important;
    gap:4px !important;
    z-index:8 !important;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    display:flex !important;
    align-items:center !important;
  }

  /* Week-strip: correct right padding to clear the icon switches */
  html body .WOT .wot-week-strip{
    padding:8px 110px 4px 8px !important;
    gap:3px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
    flex-wrap:nowrap !important;
  }
  html body .WOT .wot-week-strip::-webkit-scrollbar{display:none !important;}

  /* Days slightly smaller so 7 fit + buffer */
  html body .WOT .wot-wday{
    flex:0 0 40px !important;
    min-width:40px !important;
    max-width:40px !important;
    padding:3px 2px !important;
  }
  html body .WOT .wot-wday-num{font-size:.82rem !important; font-weight:900 !important;}
  html body .WOT .wot-wday-dn{font-size:.38rem !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.60  COMPACT PILLS
   User: stop making them big, keep compact. Force small size.
   ═══════════════════════════════════════════════════════════════════════ */

html body .WOT .wot-ev-pill{
  height:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  padding:5px 22px 5px 9px !important;
  border-left-width:3px !important;
  border-radius:8px !important;
}
html body .WOT .wot-ev-pill .wot-ep-title{
  font-size:.7rem !important;
  font-weight:700 !important;
  line-height:1.15 !important;
  margin:0 0 1px 0 !important;
}
html body .WOT .wot-ev-pill .wot-ep-sub{
  font-size:.54rem !important;
  line-height:1.15 !important;
}
html body .WOT .wot-tg-row.has-ev{
  min-height:56px !important;
}
html body .WOT .wot-tg-ev-row{
  gap:12px !important;
  padding:7px 12px 7px 0 !important;
}
html body .WOT .wot-ev-pill .wot-ep-order{
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  font-size:9px !important;
  top:3px !important;
  right:3px !important;
}
html body .WOT .wot-ev-pill .wot-ep-add{
  width:12px !important;
  height:12px !important;
  bottom:3px !important;
  right:6px !important;
}
html body .WOT .wot-ev-pill .wot-ep-add::before{
  font-size:9px !important;
}

@media (max-width: 900px){
  html body .WOT .wot-ev-pill{
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
    padding:4px 20px 4px 8px !important;
    border-left-width:2.5px !important;
    border-radius:7px !important;
    flex:0 0 calc(50vw - 32px) !important;
    width:calc(50vw - 32px) !important;
    min-width:calc(50vw - 32px) !important;
    max-width:calc(50vw - 32px) !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{
    font-size:.6rem !important;
    font-weight:800 !important;
    line-height:1.1 !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-sub{
    font-size:.46rem !important;
    line-height:1.1 !important;
  }
  html body .WOT .wot-tg-row.has-ev{
    min-height:50px !important;
  }
  html body .WOT .wot-tg-ev-row{
    gap:10px !important;
    padding:6px 10px 6px 0 !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-order{
    width:13px !important;
    height:13px !important;
    min-width:13px !important;
    max-width:13px !important;
    font-size:7.5px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-add{
    width:10px !important;
    height:10px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-add::before{
    font-size:7.5px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.61  SMALLEST PILLS + KILL OVERLAP
   Match reference 1: tinted bg, 4px colored left border, bold white title,
   muted venue, paper plane bottom-right. Smallest possible. Overlap gone.
   ═══════════════════════════════════════════════════════════════════════ */

/* ═══ PILL CORE (reference 1 design) ═══ */
html body .WOT .wot-ev-pill,
html body .WOT .wot-ev-pill[data-cat],
body .WOT:not(.wot-light) .wot-ev-pill{
  background:color-mix(in srgb, var(--ec, #E8201A) 20%, #0e0e14) !important;
  background-image:none !important;
  border:none !important;
  border-left:4px solid var(--ec, #E8201A) !important;
  border-radius:8px !important;
  color:#fff !important;
  height:40px !important;
  min-height:40px !important;
  max-height:40px !important;
  padding:5px 22px 5px 10px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  position:relative !important;
  box-sizing:border-box !important;
  box-shadow:none !important;
  outline:none !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}
html body .WOT .wot-ev-pill[style*="display: none"]{display:none !important;}
html body .WOT .wot-ev-pill:hover{
  transform:translateY(-3px) scale(1.015) !important;
  box-shadow:0 12px 28px rgba(0,0,0,.5), 0 0 0 1.5px color-mix(in srgb, var(--ec,#E8201A) 55%, transparent) !important;
  z-index:10 !important;
}

/* Title: bold white, compact */
html body .WOT .wot-ev-pill .wot-ep-title{
  font-size:.72rem !important;
  font-weight:800 !important;
  color:#fff !important;
  line-height:1.15 !important;
  margin:0 0 1px 0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  letter-spacing:-.005em !important;
}
/* Venue: muted */
html body .WOT .wot-ev-pill .wot-ep-sub{
  font-size:.54rem !important;
  color:rgba(255,255,255,.5) !important;
  line-height:1.15 !important;
  margin:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  font-weight:400 !important;
}
/* Added state */
html body .WOT .wot-ev-pill[data-added="1"],
html body .WOT .wot-ev-pill.added{
  background:color-mix(in srgb, var(--ec, #E8201A) 34%, #0e0e14) !important;
  outline:1.5px solid var(--ec, #E8201A) !important;
  outline-offset:-1px !important;
}

/* Order number circle (when added) */
html body .WOT .wot-ev-pill .wot-ep-order{
  position:absolute !important;
  top:4px !important;
  right:4px !important;
  left:auto !important;
  width:15px !important;
  height:15px !important;
  min-width:15px !important;
  max-width:15px !important;
  border-radius:50% !important;
  background:#fff !important;
  color:#0a0a0d !important;
  font-size:9px !important;
  font-weight:900 !important;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:0 2px 5px rgba(0,0,0,.4) !important;
  z-index:5 !important;
  padding:0 !important; margin:0 !important;
  animation:none !important;
  border:none !important;
}

/* Paper plane (when NOT added) */
html body .WOT .wot-ev-pill .wot-ep-add{
  color:transparent !important;
  font-size:0 !important;
  position:absolute !important;
  bottom:4px !important;
  right:6px !important;
  top:auto !important;
  left:auto !important;
  width:12px !important;
  height:12px !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  opacity:1 !important;
  cursor:pointer !important;
  transform:none !important;
}
html body .WOT .wot-ev-pill .wot-ep-add::before{
  font-family:"Font Awesome 6 Free","Font Awesome 5 Free","FontAwesome" !important;
  font-weight:900 !important;
  content:"\f1d8" !important;
  font-size:10px !important;
  color:rgba(255,255,255,.55) !important;
}
html body .WOT .wot-ev-pill .wot-ep-add::after{display:none !important;}
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{display:none !important;}
html body .WOT .wot-ev-pill:hover .wot-ep-add::before{color:#fff !important;}

/* Row spacing */
html body .WOT .wot-tg-ev-row{
  gap:10px !important;
  padding:6px 12px 6px 0 !important;
}
html body .WOT .wot-tg-row.has-ev{
  min-height:52px !important;
}

/* ═══ KILL THE OVERLAP: switches tiny, absolute, week-strip padding heavy ═══ */
@media (max-width: 900px){
  /* Icon-only switches, tiny */
  html body .WOT .wot-view-opt span,
  html body .WOT .wot-mode-opt span{display:none !important;}

  html body .WOT .wot-mini-label{
    position:absolute !important;
    top:5px !important;
    right:5px !important;
    gap:3px !important;
    z-index:20 !important;
    padding:0 !important;
    margin:0 !important;
    background:rgba(10,10,14,.75) !important;
    backdrop-filter:blur(4px) !important;
    border-radius:14px !important;
    display:flex !important;
    align-items:center !important;
  }
  html body .WOT .wot-mini-tonight,
  html body .WOT .wot-mini-live{display:none !important;}

  html body .WOT .wot-view-switch,
  html body .WOT .wot-mode-switch{
    gap:0 !important;
    padding:1px !important;
    transform:none !important;
    border-radius:14px !important;
    background:transparent !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    width:20px !important;
    min-width:20px !important;
    max-width:20px !important;
    height:20px !important;
    min-height:20px !important;
    padding:0 !important;
    font-size:0 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:50% !important;
  }
  html body .WOT .wot-view-opt i,
  html body .WOT .wot-mode-opt i{
    font-size:9px !important;
    margin:0 !important;
  }

  /* Week-strip: BIG right padding so days NEVER touch switches */
  html body .WOT .wot-week-strip{
    padding:8px 100px 4px 8px !important;
    gap:3px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
    flex-wrap:nowrap !important;
    position:relative !important;
  }
  html body .WOT .wot-week-strip::-webkit-scrollbar{display:none !important;}
  html body .WOT .wot-wday{
    flex:0 0 36px !important;
    min-width:36px !important;
    max-width:36px !important;
    padding:3px 2px !important;
  }
  html body .WOT .wot-wday-num{font-size:.78rem !important; font-weight:900 !important;}
  html body .WOT .wot-wday-dn{font-size:.36rem !important;}

  /* Pills smaller still on mobile */
  html body .WOT .wot-ev-pill{
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    padding:4px 20px 4px 8px !important;
    border-left-width:3px !important;
    border-radius:7px !important;
    flex:0 0 calc(50vw - 30px) !important;
    width:calc(50vw - 30px) !important;
    min-width:calc(50vw - 30px) !important;
    max-width:calc(50vw - 30px) !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{
    font-size:.62rem !important;
    font-weight:800 !important;
    line-height:1.1 !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-sub{
    font-size:.46rem !important;
    line-height:1.1 !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-order{
    width:13px !important;
    height:13px !important;
    min-width:13px !important;
    max-width:13px !important;
    font-size:8px !important;
    top:3px !important;
    right:3px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-add{
    width:10px !important;
    height:10px !important;
    bottom:3px !important;
    right:5px !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-add::before{
    font-size:8px !important;
  }
  html body .WOT .wot-tg-ev-row{
    gap:8px !important;
    padding:5px 10px 5px 0 !important;
  }
  html body .WOT .wot-tg-row.has-ev{
    min-height:46px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.62  KILL OVERLAP FOR REAL
   Put switches in own flow row above week-strip. No absolute = no overlap.
   ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 900px){
  /* Force switches into normal flow, own row, right-aligned */
  html body .WOT .wot-mini-label{
    position:static !important;
    top:auto !important;
    right:auto !important;
    left:auto !important;
    bottom:auto !important;
    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:4px !important;
    width:100% !important;
    padding:6px 8px 2px 8px !important;
    margin:0 !important;
    background:transparent !important;
    backdrop-filter:none !important;
    border-radius:0 !important;
    z-index:1 !important;
  }
  html body .WOT .wot-mini-tonight,
  html body .WOT .wot-mini-live{display:none !important;}

  /* Week-strip NO extra right padding needed now */
  html body .WOT .wot-week-strip{
    padding:4px 8px 4px 8px !important;
    gap:4px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
    flex-wrap:nowrap !important;
  }
  html body .WOT .wot-week-strip::-webkit-scrollbar{display:none !important;}

  /* 7 days fit: 7*44 + 6*4 = 332px; fits on 360+ viewport */
  html body .WOT .wot-wday{
    flex:1 1 0 !important;
    min-width:0 !important;
    max-width:none !important;
    padding:3px 2px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.64  DESELECT BUTTON ON ADDED PILLS
   When added, .wot-ep-add shows an X icon (deselect). Click toggles off.
   ═══════════════════════════════════════════════════════════════════════ */

/* Override previous "display:none" on added .wot-ep-add - make it visible as X */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
}
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add::before,
html body .WOT .wot-ev-pill.added .wot-ep-add::before{
  content:"\f00d" !important; /* fa-xmark (X) */
  color:rgba(255,255,255,.9) !important;
  font-size:11px !important;
}
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add:hover::before,
html body .WOT .wot-ev-pill.added .wot-ep-add:hover::before{
  color:#fff !important;
}

/* Move the X to bottom-right (don't clash with order badge top-right) */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{
  bottom:4px !important;
  right:6px !important;
  top:auto !important;
  left:auto !important;
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.65  SMALL TIME COL + MAP FULL-BLEED
   - Time column narrow + small text, pills shift left
   - Map view stretched edge-to-edge (full width)
   ═══════════════════════════════════════════════════════════════════════ */

/* Time column - narrow */
html body .WOT .wot-tg-time{
  flex:0 0 34px !important;
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
  font-size:.58rem !important;
  font-weight:700 !important;
  color:rgba(255,255,255,.45) !important;
  padding:8px 2px 0 8px !important;
  letter-spacing:.3px !important;
  text-align:left !important;
}
html body .WOT .wot-tg-ev-row{
  padding:6px 10px 6px 0 !important;
  gap:8px !important;
}

/* MAP: full-bleed edge to edge */
html body .WOT .wot-mapview,
html body .WOT #wotMapView{
  margin-left:calc(-1 * var(--wot-pad, 12px)) !important;
  margin-right:calc(-1 * var(--wot-pad, 12px)) !important;
  width:calc(100% + 2 * var(--wot-pad, 12px)) !important;
  max-width:none !important;
  border-radius:0 !important;
  padding:0 !important;
}
html body .WOT .wot-mapview .wot-map,
html body .WOT .wot-mapview #wotMap,
html body .WOT #wotMap{
  width:100% !important;
  min-height:60vh !important;
  height:60vh !important;
  border-radius:0 !important;
  margin:0 !important;
}

@media (max-width: 900px){
  html body .WOT .wot-tg-time{
    flex:0 0 28px !important;
    width:28px !important;
    min-width:28px !important;
    max-width:28px !important;
    font-size:.5rem !important;
    padding:7px 2px 0 6px !important;
  }
  html body .WOT .wot-tg-ev-row{
    padding:5px 8px 5px 0 !important;
    gap:6px !important;
  }
  /* Map full-bleed on mobile - ignore any parent padding */
  html body .WOT .wot-mapview,
  html body .WOT #wotMapView{
    margin-left:-12px !important;
    margin-right:-12px !important;
    width:calc(100% + 24px) !important;
  }
  html body .WOT .wot-mapview .wot-map,
  html body .WOT .wot-mapview #wotMap,
  html body .WOT #wotMap{
    min-height:70vh !important;
    height:70vh !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.66  NO BOTTOM DOT + COLORED ORDER BADGE
   - Hide deselect icon on added pills (clicking pill still toggles)
   - Order badge: category color background, white number
   ═══════════════════════════════════════════════════════════════════════ */

/* Hide the bottom icon entirely when added - no more empty white dot */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add,
html body .WOT .wot-ev-pill.added .wot-ep-add{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
}

/* Order number badge: pill-color bg + white text */
html body .WOT .wot-ev-pill .wot-ep-order{
  background:var(--ec, #E8201A) !important;
  color:#fff !important;
  border:1.5px solid rgba(255,255,255,.9) !important;
  box-shadow:0 2px 5px rgba(0,0,0,.4) !important;
  font-weight:900 !important;
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.67  CLEAN HEADER REDESIGN
   Kill empty circles. Flat icon-only toggles. Single compact pill top-right.
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ WIPE all previous mini-label/switch styling ══ */
html body .WOT .wot-mini-label{
  position:absolute !important;
  top:8px !important;
  right:10px !important;
  left:auto !important;
  bottom:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:2px !important;
  width:auto !important;
  padding:3px 5px !important;
  margin:0 !important;
  background:rgba(20,20,26,.7) !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:999px !important;
  z-index:25 !important;
  line-height:1 !important;
}
html body .WOT .wot-mini-tonight,
html body .WOT .wot-mini-live,
html body .WOT .wot-mini-line{display:none !important;}

html body .WOT .wot-view-switch,
html body .WOT .wot-mode-switch{
  display:inline-flex !important;
  background:transparent !important;
  border:none !important;
  padding:0 !important;
  margin:0 !important;
  gap:0 !important;
  border-radius:0 !important;
  transform:none !important;
  box-shadow:none !important;
}
html body .WOT .wot-view-switch{border-right:1px solid rgba(255,255,255,.1) !important; padding-right:3px !important; margin-right:3px !important;}

html body .WOT .wot-view-opt,
html body .WOT .wot-mode-opt{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:24px !important;
  min-width:24px !important;
  max-width:24px !important;
  height:24px !important;
  min-height:24px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  border-radius:50% !important;
  color:rgba(255,255,255,.4) !important;
  cursor:pointer !important;
  font-size:0 !important;
  letter-spacing:0 !important;
  transition:color .15s ease, background .15s ease !important;
  box-shadow:none !important;
  outline:none !important;
}
html body .WOT .wot-view-opt span,
html body .WOT .wot-mode-opt span{display:none !important;}
html body .WOT .wot-view-opt i,
html body .WOT .wot-mode-opt i{
  font-size:11px !important;
  line-height:1 !important;
  margin:0 !important;
  display:inline-block !important;
}
html body .WOT .wot-view-opt.is-on,
html body .WOT .wot-mode-opt.is-on,
html body .WOT .wot-view-opt[aria-pressed="true"],
html body .WOT .wot-mode-opt[aria-pressed="true"]{
  background:rgba(255,255,255,.15) !important;
  color:#fff !important;
}
html body .WOT .wot-view-opt:hover,
html body .WOT .wot-mode-opt:hover{
  color:#fff !important;
  background:rgba(255,255,255,.1) !important;
}

/* Give the WOT head container position:relative so the absolute toggle sits right */
html body .WOT .wot-head,
html body .WOT .wot-topbar{
  position:relative !important;
}

/* Leave room at the top of week-strip for the floating toggle */
html body .WOT .wot-week-strip{
  padding-right:80px !important;
}

@media (max-width: 900px){
  html body .WOT .wot-mini-label{
    top:6px !important;
    right:8px !important;
    padding:2px 4px !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    width:22px !important;
    min-width:22px !important;
    max-width:22px !important;
    height:22px !important;
    min-height:22px !important;
  }
  html body .WOT .wot-view-opt i,
  html body .WOT .wot-mode-opt i{
    font-size:10px !important;
  }
  html body .WOT .wot-week-strip{
    padding-right:72px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.68  FULL-BLEED MOBILE REDESIGN
   Delete broken switches. Day + filter rows = full viewport width.
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ KILL SWITCHES COMPLETELY ══ */
html body .WOT .wot-mini-label,
html body .WOT .wot-view-switch,
html body .WOT .wot-mode-switch,
html body .WOT .wot-mini-tonight,
html body .WOT .wot-mini-live,
html body .WOT .wot-mini-line,
html body .WOT .wot-view-opt,
html body .WOT .wot-mode-opt{
  display:none !important;
  visibility:hidden !important;
}

@media (max-width: 900px){
  /* ══ FULL-BLEED: break out of any parent padding ══ */
  html body .WOT .wot-week-strip,
  html body .WOT .wot-filterbar{
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    width:100vw !important;
    max-width:100vw !important;
    box-sizing:border-box !important;
  }

  /* ══ DAY STRIP: 7 equal days, edge-to-edge ══ */
  html body .WOT .wot-week-strip{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:4px !important;
    padding:8px 6px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
    background:transparent !important;
  }
  html body .WOT .wot-week-strip::-webkit-scrollbar{display:none !important;}
  html body .WOT .wot-wday{
    flex:1 1 0 !important;
    min-width:0 !important;
    max-width:none !important;
    padding:6px 2px !important;
    border-radius:10px !important;
  }
  html body .WOT .wot-wday-dn{
    font-size:.54rem !important;
    letter-spacing:.4px !important;
    font-weight:700 !important;
    color:rgba(255,255,255,.5) !important;
    text-transform:uppercase !important;
  }
  html body .WOT .wot-wday-num{
    font-size:1.05rem !important;
    font-weight:900 !important;
    line-height:1.1 !important;
  }
  html body .WOT .wot-wday.is-today,
  html body .WOT .wot-wday.is-active{
    background:var(--mcr-red, #E8201A) !important;
  }

  /* ══ FILTER PILLS: edge-to-edge horizontal scroll ══ */
  html body .WOT .wot-filterbar{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:6px !important;
    padding:6px 10px 8px 10px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
    background:transparent !important;
  }
  html body .WOT .wot-filterbar::-webkit-scrollbar{display:none !important;}
  html body .WOT .wot-flt{
    flex:0 0 auto !important;
    height:26px !important;
    padding:0 12px !important;
    font-size:.6rem !important;
    font-weight:800 !important;
    letter-spacing:.4px !important;
    border-width:1.5px !important;
    border-radius:999px !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:6px !important;
  }
  html body .WOT .wot-flt-count{
    font-size:.5rem !important;
    opacity:.65 !important;
    font-weight:700 !important;
  }

  /* ══ MAP: full viewport bleed ══ */
  html body .WOT .wot-mapview,
  html body .WOT #wotMapView{
    margin-left:calc(50% - 50vw) !important;
    margin-right:calc(50% - 50vw) !important;
    width:100vw !important;
    max-width:100vw !important;
    padding:0 !important;
    border-radius:0 !important;
  }
  html body .WOT #wotMap,
  html body .WOT .wot-mapview .wot-map{
    width:100% !important;
    height:75vh !important;
    min-height:75vh !important;
    border-radius:0 !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.69  FIT EVERYTHING IN ONE ROW
   [grid|map] [days THU...WED] [dark|light] - all coexist, no overlap.
   ═══════════════════════════════════════════════════════════════════════ */

/* ══ UN-HIDE toggles (override 12.4.68) ══ */
html body .WOT .wot-mini-label,
html body .WOT .wot-view-switch,
html body .WOT .wot-mode-switch,
html body .WOT .wot-view-opt,
html body .WOT .wot-mode-opt{
  display:inline-flex !important;
  visibility:visible !important;
}
html body .WOT .wot-mini-tonight,
html body .WOT .wot-mini-live,
html body .WOT .wot-mini-line{display:none !important;}

/* ══ Toggles pinned to corners, day strip fills middle ══ */
html body .WOT .wot-mini-label{
  position:absolute !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  left:6px !important;
  right:6px !important;
  bottom:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  width:auto !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  pointer-events:none !important;
  z-index:5 !important;
}
html body .WOT .wot-mini-label > *{pointer-events:auto !important;}

/* Segmented toggle groups - small pill each */
html body .WOT .wot-view-switch,
html body .WOT .wot-mode-switch{
  display:inline-flex !important;
  align-items:center !important;
  gap:0 !important;
  padding:2px !important;
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  border-radius:999px !important;
  transform:none !important;
  box-shadow:none !important;
  backdrop-filter:blur(8px) !important;
  -webkit-backdrop-filter:blur(8px) !important;
}

html body .WOT .wot-view-opt,
html body .WOT .wot-mode-opt{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:22px !important;
  min-width:22px !important;
  max-width:22px !important;
  height:20px !important;
  min-height:20px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  border-radius:999px !important;
  color:rgba(255,255,255,.55) !important;
  cursor:pointer !important;
  transition:all .15s ease !important;
  box-shadow:none !important;
  outline:none !important;
  font-size:0 !important;
}
html body .WOT .wot-view-opt span,
html body .WOT .wot-mode-opt span{display:none !important;}

/* FORCE icon render */
html body .WOT .wot-view-opt i,
html body .WOT .wot-mode-opt i,
html body .WOT .wot-view-opt .fas,
html body .WOT .wot-mode-opt .fas{
  font-size:10px !important;
  line-height:1 !important;
  display:inline-block !important;
  margin:0 !important;
  color:inherit !important;
}
html body .WOT .wot-view-opt.is-on,
html body .WOT .wot-mode-opt.is-on{
  background:#fff !important;
  color:#0a0a0d !important;
}
html body .WOT .wot-view-opt.is-on i,
html body .WOT .wot-mode-opt.is-on i{color:#0a0a0d !important;}

/* ══ Week strip: padding to clear toggles, small day pills ══ */
html body .WOT .wot-week-strip{
  position:relative !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:3px !important;
  padding:8px 66px !important;  /* leave 66px each side for toggles */
  overflow-x:auto !important;
  scrollbar-width:none !important;
  background:transparent !important;
}
html body .WOT .wot-week-strip::-webkit-scrollbar{display:none !important;}

html body .WOT .wot-wday{
  flex:1 1 0 !important;
  min-width:0 !important;
  max-width:none !important;
  padding:4px 2px !important;
  border-radius:9px !important;
}
html body .WOT .wot-wday-dn{
  font-size:.48rem !important;
  letter-spacing:.3px !important;
  font-weight:700 !important;
  color:rgba(255,255,255,.5) !important;
  text-transform:uppercase !important;
  line-height:1 !important;
  margin-bottom:1px !important;
}
html body .WOT .wot-wday-num{
  font-size:.88rem !important;
  font-weight:900 !important;
  line-height:1.1 !important;
}

@media (max-width: 900px){
  html body .WOT .wot-mini-label{
    left:5px !important;
    right:5px !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    width:20px !important;
    min-width:20px !important;
    max-width:20px !important;
    height:18px !important;
    min-height:18px !important;
  }
  html body .WOT .wot-view-opt i,
  html body .WOT .wot-mode-opt i{font-size:9px !important;}

  html body .WOT .wot-week-strip{
    padding:6px 58px !important;
    gap:2px !important;
  }
  html body .WOT .wot-wday{
    padding:3px 1px !important;
    border-radius:7px !important;
  }
  html body .WOT .wot-wday-dn{font-size:.42rem !important;}
  html body .WOT .wot-wday-num{font-size:.78rem !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.70  EVENT TICKER
   Marquee of today's event titles. Sits above day strip.
   ═══════════════════════════════════════════════════════════════════════ */

html body .WOT .wot-ticker{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  width:100% !important;
  padding:5px 10px !important;
  background:linear-gradient(90deg, rgba(232,32,26,.08), rgba(232,32,26,.02) 40%, transparent) !important;
  border-top:1px solid rgba(255,255,255,.04) !important;
  border-bottom:1px solid rgba(255,255,255,.04) !important;
  overflow:hidden !important;
  position:relative !important;
  height:24px !important;
  box-sizing:border-box !important;
}
html body .WOT .wot-ticker-live{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:5px !important;
  padding:2px 8px 2px 6px !important;
  background:rgba(232,32,26,.14) !important;
  border:1px solid rgba(232,32,26,.5) !important;
  border-radius:999px !important;
  line-height:1 !important;
}
html body .WOT .wot-ticker-live-txt{
  font-size:.56rem !important;
  font-weight:900 !important;
  letter-spacing:.8px !important;
  color:#E8201A !important;
  text-shadow:0 0 6px rgba(232,32,26,.6) !important;
}
html body .WOT .wot-ticker-dot{
  flex:0 0 auto !important;
  width:7px !important;
  height:7px !important;
  border-radius:50% !important;
  background:#E8201A !important;
  box-shadow:0 0 10px rgba(232,32,26,.85), 0 0 4px rgba(232,32,26,1) !important;
  animation:wotTickerPulse 1.4s ease-in-out infinite !important;
}
@keyframes wotTickerPulse{
  0%,100%{opacity:1; transform:scale(1);}
  50%{opacity:.4; transform:scale(.7);}
}
html body .WOT .wot-ticker-viewport{
  flex:1 1 auto !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  height:100% !important;
  display:flex !important;
  align-items:center !important;
  mask-image:linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 20px), transparent 100%) !important;
  -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 20px), transparent 100%) !important;
}
html body .WOT .wot-ticker-track{
  display:inline-flex !important;
  align-items:center !important;
  gap:22px !important;
  white-space:nowrap !important;
  animation:wotTickerScroll 55s linear infinite !important;
  will-change:transform !important;
  padding-left:100% !important;
}
html body .WOT .wot-ticker:hover .wot-ticker-track{animation-play-state:paused !important;}
@keyframes wotTickerScroll{
  0%{transform:translateX(0);}
  100%{transform:translateX(-50%);}
}
html body .WOT .wot-ticker-item{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  font-size:.62rem !important;
  font-weight:600 !important;
  color:rgba(255,255,255,.75) !important;
  letter-spacing:.2px !important;
}
html body .WOT .wot-ticker-item b{
  color:#fff !important;
  font-weight:800 !important;
}
html body .WOT .wot-ticker-item::before{
  content:"\25CF" !important;
  color:var(--tc, #E8201A) !important;
  font-size:6px !important;
  margin-right:2px !important;
}
html body .WOT .wot-ticker-item .tk-time{
  color:rgba(255,255,255,.45) !important;
  font-weight:700 !important;
}

@media (max-width: 900px){
  html body .WOT .wot-ticker{
    height:22px !important;
    padding:4px 8px !important;
    gap:6px !important;
  }
  html body .WOT .wot-ticker-item{font-size:.56rem !important;}
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.71  TOGGLES WITH LABELS
   GRID MAP DARK LIGHT visible. Own row, segmented, icon+text.
   ═══════════════════════════════════════════════════════════════════════ */

/* Put the toggle row back to NORMAL FLOW, above the ticker/days */
html body .WOT .wot-mini-label{
  position:static !important;
  top:auto !important; right:auto !important; left:auto !important; bottom:auto !important;
  transform:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  width:100% !important;
  max-width:100% !important;
  padding:8px 10px 4px !important;
  margin:0 !important;
  gap:8px !important;
  background:transparent !important;
  backdrop-filter:none !important;
  border:none !important;
  border-radius:0 !important;
  pointer-events:auto !important;
  z-index:1 !important;
}
html body .WOT .wot-mini-tonight,
html body .WOT .wot-mini-live,
html body .WOT .wot-mini-line{display:none !important;}

/* Segmented pill groups */
html body .WOT .wot-view-switch,
html body .WOT .wot-mode-switch{
  display:inline-flex !important;
  align-items:center !important;
  gap:0 !important;
  padding:2px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  border-radius:999px !important;
  transform:none !important;
  box-shadow:none !important;
  visibility:visible !important;
}

/* Each button: icon + text visible */
html body .WOT .wot-view-opt,
html body .WOT .wot-mode-opt{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  height:24px !important;
  min-height:24px !important;
  padding:0 10px !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  border-radius:999px !important;
  color:rgba(255,255,255,.55) !important;
  cursor:pointer !important;
  transition:all .15s ease !important;
  box-shadow:none !important;
  outline:none !important;
  font-size:.6rem !important;
  font-weight:800 !important;
  letter-spacing:.6px !important;
  text-transform:uppercase !important;
  visibility:visible !important;
}
html body .WOT .wot-view-opt span,
html body .WOT .wot-mode-opt span{
  display:inline !important;
  visibility:visible !important;
  font-size:inherit !important;
  color:inherit !important;
}
html body .WOT .wot-view-opt i,
html body .WOT .wot-mode-opt i,
html body .WOT .wot-view-opt .fas,
html body .WOT .wot-mode-opt .fas{
  font-size:10px !important;
  line-height:1 !important;
  display:inline-block !important;
  margin:0 !important;
  color:inherit !important;
}

/* Active state */
html body .WOT .wot-view-opt.is-on,
html body .WOT .wot-mode-opt.is-on{
  background:#fff !important;
  color:#0a0a0d !important;
}
html body .WOT .wot-view-opt.is-on i,
html body .WOT .wot-mode-opt.is-on i,
html body .WOT .wot-view-opt.is-on span,
html body .WOT .wot-mode-opt.is-on span{color:#0a0a0d !important;}

html body .WOT .wot-view-opt:not(.is-on):hover,
html body .WOT .wot-mode-opt:not(.is-on):hover{color:#fff !important;}

/* Week-strip: no need for huge side padding now, toggles are in own row */
html body .WOT .wot-week-strip{
  padding:6px 10px !important;
}

/* Slow the ticker scroll (was 55s, now 140s for comfortable reading) */
html body .WOT .wot-ticker-track{
  animation-duration:140s !important;
}
@media (max-width: 900px){
  html body .WOT .wot-ticker-track{animation-duration:120s !important;}
}

@media (max-width: 900px){
  html body .WOT .wot-mini-label{
    padding:6px 8px 3px !important;
    gap:6px !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    height:22px !important;
    min-height:22px !important;
    padding:0 8px !important;
    font-size:.54rem !important;
    gap:4px !important;
  }
  html body .WOT .wot-view-opt i,
  html body .WOT .wot-mode-opt i{font-size:9px !important;}

  html body .WOT .wot-week-strip{
    padding:4px 8px !important;
  }
}



/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.72  COMPACT TOGGLE GROUP (right side, inline style)
   Switches grouped right, smaller, not a full row.
   ═══════════════════════════════════════════════════════════════════════ */

/* Toggle row = thin strip, both groups right-aligned together, compact */
html body .WOT .wot-mini-label{
  position:static !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;  /* right-aligned, grouped */
  gap:6px !important;
  width:100% !important;
  padding:4px 8px 2px !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  transform:none !important;
  pointer-events:auto !important;
}

/* Compact pills */
html body .WOT .wot-view-switch,
html body .WOT .wot-mode-switch{
  display:inline-flex !important;
  padding:2px !important;
  gap:0 !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  border-radius:999px !important;
  visibility:visible !important;
  transform:none !important;
  box-shadow:none !important;
}
html body .WOT .wot-view-opt,
html body .WOT .wot-mode-opt{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  height:20px !important;
  min-height:20px !important;
  padding:0 8px !important;
  margin:0 !important;
  background:transparent !important;
  border:none !important;
  border-radius:999px !important;
  color:rgba(255,255,255,.55) !important;
  cursor:pointer !important;
  font-size:.48rem !important;
  font-weight:800 !important;
  letter-spacing:.5px !important;
  text-transform:uppercase !important;
  box-shadow:none !important;
  outline:none !important;
  visibility:visible !important;
}
html body .WOT .wot-view-opt span,
html body .WOT .wot-mode-opt span{
  display:inline !important;
  visibility:visible !important;
  font-size:inherit !important;
  color:inherit !important;
}
html body .WOT .wot-view-opt i,
html body .WOT .wot-mode-opt i{
  font-size:9px !important;
  line-height:1 !important;
  display:inline-block !important;
  color:inherit !important;
}
html body .WOT .wot-view-opt.is-on,
html body .WOT .wot-mode-opt.is-on{
  background:#fff !important;
  color:#0a0a0d !important;
}
html body .WOT .wot-view-opt.is-on span,
html body .WOT .wot-view-opt.is-on i,
html body .WOT .wot-mode-opt.is-on span,
html body .WOT .wot-mode-opt.is-on i{color:#0a0a0d !important;}

@media (max-width: 900px){
  html body .WOT .wot-mini-label{
    padding:3px 6px 2px !important;
    gap:5px !important;
  }
  html body .WOT .wot-view-opt,
  html body .WOT .wot-mode-opt{
    height:18px !important;
    min-height:18px !important;
    padding:0 6px !important;
    font-size:.44rem !important;
  }
  html body .WOT .wot-view-opt i,
  html body .WOT .wot-mode-opt i{font-size:8px !important;}

  /* Pills 1/4 narrower so ~3 fit per row */
  html body .WOT .wot-ev-pill{
    flex:0 0 calc(37vw - 22px) !important;
    width:calc(37vw - 22px) !important;
    min-width:calc(37vw - 22px) !important;
    max-width:calc(37vw - 22px) !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-title{
    font-size:.56rem !important;
  }
  html body .WOT .wot-ev-pill .wot-ep-sub{
    font-size:.42rem !important;
  }
}






/* ═══════════════════════════════════════════════════════════════════════
   WOT V19 - v12.4.74  MOBILE CAT PILLS REDESIGN + DROPDOWN LINE FIX
   ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 900px){
  /* Cat filter pills: flat, small, dot+label, solid when active */
  html body .WOT .wot-filterbar{
    padding:6px 10px 8px !important;
    gap:6px !important;
  }
  html body .WOT .wot-flt{
    display:inline-flex !important;
    align-items:center !important;
    gap:5px !important;
    height:24px !important;
    min-height:24px !important;
    max-height:24px !important;
    padding:0 10px !important;
    background:rgba(255,255,255,.04) !important;
    border:1px solid rgba(255,255,255,.08) !important;
    border-radius:999px !important;
    color:rgba(255,255,255,.7) !important;
    font-size:.56rem !important;
    font-weight:800 !important;
    letter-spacing:.4px !important;
    text-transform:uppercase !important;
    box-shadow:none !important;
    transition:all .15s ease !important;
  }
  html body .WOT .wot-flt .wot-flt-dot{
    width:6px !important;
    height:6px !important;
    border-radius:50% !important;
    display:inline-block !important;
    flex:0 0 auto !important;
  }
  html body .WOT .wot-flt-count{
    font-size:.48rem !important;
    font-weight:700 !important;
    opacity:.55 !important;
    margin-left:2px !important;
  }
  /* Active: solid cat color */
  html body .WOT .wot-flt.on[data-cat="all"]{background:#fff !important; color:#0a0a0d !important; border-color:#fff !important;}
  html body .WOT .wot-flt.on[data-cat="music"]{background:#E8201A !important; color:#fff !important; border-color:#E8201A !important;}
  html body .WOT .wot-flt.on[data-cat="sport"]{background:#1A56FF !important; color:#fff !important; border-color:#1A56FF !important;}
  html body .WOT .wot-flt.on[data-cat="food"]{background:#2DB54B !important; color:#fff !important; border-color:#2DB54B !important;}
  html body .WOT .wot-flt.on[data-cat="nightlife"]{background:#FF6B00 !important; color:#fff !important; border-color:#FF6B00 !important;}
  html body .WOT .wot-flt.on[data-cat="culture"]{background:#9B2BFF !important; color:#fff !important; border-color:#9B2BFF !important;}
  html body .WOT .wot-flt.on[data-cat="family"]{background:#00B3C5 !important; color:#fff !important; border-color:#00B3C5 !important;}
  html body .WOT .wot-flt.on .wot-flt-dot{background:rgba(255,255,255,.8) !important;}
  html body .WOT .wot-flt.on[data-cat="all"] .wot-flt-dot{background:#0a0a0d !important;}
  html body .WOT .wot-flt.on .wot-flt-count{opacity:.75 !important; color:inherit !important;}

  /* Dropdown / expanded drawer on mobile - remove thick white line */
  html body .WOT .wot-drawer,
  html body .WOT .wot-dr,
  html body .wot-drawer{
    border:none !important;
    border-top:none !important;
    border-bottom:none !important;
    box-shadow:none !important;
  }
  html body .WOT .wot-drawer::before,
  html body .WOT .wot-drawer::after,
  html body .WOT .wot-dr::before,
  html body .WOT .wot-dr::after,
  html body .wot-drawer::before,
  html body .wot-drawer::after{
    display:none !important;
    content:none !important;
    background:none !important;
    border:none !important;
  }
  html body .WOT .wot-dr-meta,
  html body .WOT .wot-dr-head,
  html body .WOT .wot-dr-close{
    border:none !important;
    border-bottom:none !important;
    box-shadow:none !important;
  }
  /* Any hr inside drawer */
  html body .WOT .wot-drawer hr,
  html body .WOT .wot-dr hr{display:none !important;}
}





/* ═══════════════════════════════════════════════════════════════════════
   v12.4.76  BIGGER MOBILE LOGO + THINNER RAINBOW
   ═══════════════════════════════════════════════════════════════════════ */

/* Mobile header rainbow line: half as thick */
html body #MOB-HEADER::after{
  height:1px !important;
  opacity:.7 !important;
}
@media(max-width:900px){
  html body #MOB-HEADER::after{
    height:1px !important;
  }
}

/* Mobile logo: bigger (36 -> 44) */
@media(max-width:900px){
  html body .mob-hdr-logo{padding:2px !important;}
  html body .mob-hdr-logo img{
    width:44px !important;
    height:44px !important;
  }
  html body #MOB-HEADER{
    height:60px !important;
  }
}


/* v12.4.77 LOGO BIGGER ON MOBILE */
@media(max-width:900px){
  html body .mob-hdr-logo{padding:0 !important;}
  html body .mob-hdr-logo img{
    width:54px !important;
    height:54px !important;
  }
  html body #MOB-HEADER{
    height:66px !important;
  }
  html body #WRAP{padding-top:70px !important;}
}


/* v12.4.78 TIGHTER LOGO + THINNER RAINBOW */
@media(max-width:900px){
  html body .mob-hdr-logo{
    padding:0 !important;
    margin:0 !important;
    line-height:0 !important;
  }
  html body .mob-hdr-logo img{
    width:52px !important;
    height:52px !important;
    display:block !important;
    margin:0 !important;
  }
  html body #MOB-HEADER{
    height:56px !important;
    padding-top:2px !important;
    padding-bottom:2px !important;
    align-items:center !important;
  }
  html body #WRAP{padding-top:58px !important;}

  /* Rainbow line: thinner */
  html body #MOB-HEADER::after{
    height:0.5px !important;
    min-height:0.5px !important;
    opacity:.65 !important;
  }
}



/* v12.4.79 KILL MOBILE TOP GAP */
@media(max-width:900px){
  html body #WRAP{
    padding-top:56px !important;  /* exact nav height, no sliver */
  }
  html body main.CENTRE{
    padding-top:0 !important;
    margin-top:0 !important;
  }
  html body main.CENTRE > h1:first-child{
    display:none !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
  }
  html body main.CENTRE > section.HERO.hero-slider{
    display:none !important;
    height:0 !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
  }
  /* WOT flush under nav */
  html body main.CENTRE > section.WOT{
    margin-top:0 !important;
  }

  /* v12.4.79 CAT PILLS: hide counts + ultra compact */
  html body .WOT .wot-flt-count{
    display:none !important;
  }
  html body .WOT .wot-filterbar{
    padding:5px 8px 7px !important;
    gap:5px !important;
  }
  html body .WOT .wot-flt{
    height:20px !important;
    min-height:20px !important;
    max-height:20px !important;
    padding:0 8px !important;
    font-size:.5rem !important;
    gap:4px !important;
    border-width:1px !important;
    letter-spacing:.3px !important;
  }
  html body .WOT .wot-flt .wot-flt-dot{
    width:5px !important;
    height:5px !important;
  }
}



/* v12.4.80 KILL GAP - FORCE NAV FIXED */
@media(max-width:900px){
  html body #MOB-HEADER{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    z-index:9999 !important;
    height:56px !important;
    min-height:56px !important;
    max-height:56px !important;
  }
  html body #WRAP{
    padding-top:56px !important;
    margin-top:0 !important;
  }
  html body{
    padding-top:0 !important;
    margin-top:0 !important;
    background:#0c0c0e !important;
  }
  html body main.CENTRE{
    padding-top:0 !important;
    margin-top:0 !important;
  }
  html body main.CENTRE > h1:first-child,
  html body main.CENTRE > .page-hero,
  html body main.CENTRE > .hero,
  html body main.CENTRE > section.HERO.hero-slider{
    display:none !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
  }
  html body main.CENTRE > section.WOT{
    margin-top:0 !important;
    padding-top:0 !important;
  }

  /* v12.4.80 LIGHT THEME: also lighten the page around WOT */
  html body.wot-page-light,
  html body .wot-light-active{
    background:#f6f6f8 !important;
  }
  html body.wot-page-light main.CENTRE{
    background:#f6f6f8 !important;
  }
  html body.wot-page-light #MOB-HEADER{
    background:#fff !important;
    color:#111 !important;
  }
  html body.wot-page-light #MOB-HEADER .mob-hdr-logo img{
    filter:invert(1) !important;
  }
}





/* v12.4.82 NUKE LIGHT-MODE PILL MUD */
html body.wot-page-light .WOT .wot-ev-pill,
html body .WOT.wot-light .wot-ev-pill{
  background:#ffffff !important;
  background-image:none !important;
  border:1px solid #e3e3ea !important;
  border-left:4px solid var(--ec,#888) !important;
  border-radius:6px !important;
  box-shadow:0 1px 2px rgba(0,0,0,.05) !important;
  color:#111 !important;
  overflow:hidden !important;
}
/* KILL every dark overlay on the pill in light mode */
html body.wot-page-light .WOT .wot-ev-pill::before,
html body.wot-page-light .WOT .wot-ev-pill::after,
html body .WOT.wot-light .wot-ev-pill::before,
html body .WOT.wot-light .wot-ev-pill::after{
  display:none !important;
  content:none !important;
  background:none !important;
  opacity:0 !important;
}
/* Text: dark on white, readable */
html body.wot-page-light .WOT .wot-ep-title,
html body .WOT.wot-light .wot-ep-title{
  color:#0c0c0e !important;
  text-shadow:none !important;
  font-weight:600 !important;
}
html body.wot-page-light .WOT .wot-ep-sub,
html body.wot-page-light .WOT .wot-ep-venue,
html body .WOT.wot-light .wot-ep-sub,
html body .WOT.wot-light .wot-ep-venue{
  color:#5a5a66 !important;
  text-shadow:none !important;
}
html body.wot-page-light .WOT .wot-ep-time,
html body .WOT.wot-light .wot-ep-time{
  color:#0c0c0e !important;
  font-weight:700 !important;
}
/* + add button: keep visible, subtle */
html body.wot-page-light .WOT .wot-ep-add,
html body .WOT.wot-light .wot-ep-add{
  background:#f1f1f5 !important;
  color:#111 !important;
  border:1px solid #e3e3ea !important;
}
/* Hover: soft lift, no dark */
html body.wot-page-light .WOT .wot-ev-pill:hover,
html body .WOT.wot-light .wot-ev-pill:hover{
  background:#fafafc !important;
  transform:translateY(-1px) !important;
  box-shadow:0 3px 8px rgba(0,0,0,.08) !important;
}
/* Past hours: gently fade but still legible */
html body.wot-page-light .WOT .wot-tg-row.wot-past .wot-ev-pill,
html body .WOT.wot-light .wot-tg-row.wot-past .wot-ev-pill{
  opacity:.55 !important;
}



/* v12.4.83b SOLID COLOUR PILLS + WHITE TEXT + NO TEXT SHADOW */
html body.wot-page-light .WOT .wot-ev-pill,
html body .WOT.wot-light .wot-ev-pill{
  background:var(--ec,#888) !important;
  background-image:none !important;
  border:none !important;
  border-radius:6px !important;
  box-shadow:0 2px 6px rgba(0,0,0,.18), 0 1px 2px rgba(0,0,0,.12) !important;
  color:#fff !important;
  overflow:hidden !important;
}
/* Kill EVERY overlay — pill must stay pure category colour */
html body.wot-page-light .WOT .wot-ev-pill::before,
html body.wot-page-light .WOT .wot-ev-pill::after,
html body .WOT.wot-light .wot-ev-pill::before,
html body .WOT.wot-light .wot-ev-pill::after{
  display:none !important;
  content:none !important;
  background:none !important;
  opacity:0 !important;
}
/* Crisp white text with tiny shadow for legibility on any cat colour */
html body.wot-page-light .WOT .wot-ep-title,
html body .WOT.wot-light .wot-ep-title{
  color:#ffffff !important;
  font-weight:700 !important;
  text-shadow:none !important;
}
html body.wot-page-light .WOT .wot-ep-sub,
html body.wot-page-light .WOT .wot-ep-venue,
html body .WOT.wot-light .wot-ep-sub,
html body .WOT.wot-light .wot-ep-venue{
  color:rgba(255,255,255,.92) !important;
  text-shadow:none !important;
}
html body.wot-page-light .WOT .wot-ep-time,
html body .WOT.wot-light .wot-ep-time{
  color:#ffffff !important;
  font-weight:700 !important;
  text-shadow:none !important;
}
/* + add button on coloured pill: white translucent chip */
html body.wot-page-light .WOT .wot-ep-add,
html body .WOT.wot-light .wot-ep-add{
  background:rgba(255,255,255,.22) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.35) !important;
  backdrop-filter:blur(2px) !important;
}
/* Hover: lift a touch + deeper shadow */
html body.wot-page-light .WOT .wot-ev-pill:hover,
html body .WOT.wot-light .wot-ev-pill:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 4px 12px rgba(0,0,0,.22), 0 2px 4px rgba(0,0,0,.14) !important;
  filter:brightness(1.05) !important;
}
/* Past hours: soft fade */
html body.wot-page-light .WOT .wot-tg-row.wot-past .wot-ev-pill,
html body .WOT.wot-light .wot-tg-row.wot-past .wot-ev-pill{
  opacity:.55 !important;
}



/* v12.4.84 WHITE TEXT ON LIGHT-MODE PILLS — SPECIFICITY FIX */
html body.wot-page-light .WOT .wot-ev-pill .wot-ep-title,
html body .WOT.wot-light .wot-ev-pill .wot-ep-title{
  color:#ffffff !important;
  font-weight:700 !important;
  text-shadow:none !important;
}
html body.wot-page-light .WOT .wot-ev-pill .wot-ep-sub,
html body.wot-page-light .WOT .wot-ev-pill .wot-ep-venue,
html body .WOT.wot-light .wot-ev-pill .wot-ep-sub,
html body .WOT.wot-light .wot-ev-pill .wot-ep-venue{
  color:rgba(255,255,255,.92) !important;
  text-shadow:none !important;
}
html body.wot-page-light .WOT .wot-ev-pill .wot-ep-time,
html body .WOT.wot-light .wot-ev-pill .wot-ep-time{
  color:#ffffff !important;
  font-weight:700 !important;
  text-shadow:none !important;
}
html body.wot-page-light .WOT .wot-ev-pill .wot-ep-cat,
html body .WOT.wot-light .wot-ev-pill .wot-ep-cat{
  color:rgba(255,255,255,.95) !important;
}
/* Also re-assert the pill bg + shadow at this higher specificity in case
   another rule is overriding the pill background too */
html body.wot-page-light .WOT .wot-ev-pill,
html body .WOT.wot-light .wot-ev-pill{
  background:var(--ec,#888) !important;
  background-image:none !important;
  color:#fff !important;
  border:none !important;
  box-shadow:0 2px 6px rgba(0,0,0,.18), 0 1px 2px rgba(0,0,0,.12) !important;
}

/* v12.4.84 + button = JUST a plus, no box, no border */
html body .WOT .wot-ev-pill .wot-ep-add,
html body.wot-page-light .WOT .wot-ev-pill .wot-ep-add,
html body .WOT.wot-light .wot-ev-pill .wot-ep-add{
  background:transparent !important;
  background-image:none !important;
  border:none !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  color:#ffffff !important;
  opacity:.95 !important;
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:2px !important;
  border-radius:0 !important;
  font-size:15px !important;
  font-weight:800 !important;
  line-height:1 !important;
}
html body .WOT .wot-ev-pill .wot-ep-add::before,
html body .WOT .wot-ev-pill .wot-ep-add::after{
  display:none !important;
  content:none !important;
  background:none !important;
}
html body .WOT .wot-ev-pill .wot-ep-add span{
  display:inline !important;
  color:inherit !important;
}
html body .WOT .wot-ev-pill .wot-ep-add:hover{
  background:transparent !important;
  transform:translateY(-50%) scale(1.15) !important;
}
/* Added state: green checkmark tiny, still no box */
html body .WOT .wot-ev-pill[data-added="1"] .wot-ep-add{
  background:transparent !important;
  color:#2DB54B !important;
  box-shadow:none !important;
}



/* v12.4.85 HIDE TOP VIDEO/HERO SLIDER */
html body.home main.CENTRE > section.HERO,
html body.home main.CENTRE > section.HERO.hero-slider,
html body.home main.CENTRE > .hero-slider,
html body.home main.CENTRE > .hero,
html body.home main.CENTRE > .page-hero,
html body.home main.CENTRE > .mcr-hero,
html body.home main.CENTRE > section.hero-video,
html body.home main.CENTRE > section.video-hero,
html body.home main.CENTRE > section.top-video,
html body.home main.CENTRE > .top-video-slider{
  display:none !important;
  height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}



/* v12.4.87 HOMEPAGE DESKTOP SPLIT VIEW */
@media(min-width:901px){
  html body.home.wot-split .WOT{
    display:flex !important;
    flex-direction:column !important;
  }
  /* Map strip at the very top (where video slider was) */
  html body.home.wot-split .WOT .wot-mapview{
    display:block !important;
    order:-1 !important;
    height:280px !important;
    min-height:280px !important;
    max-height:280px !important;
    width:100% !important;
    margin:0 0 16px 0 !important;
    border-radius:10px !important;
    overflow:hidden !important;
    position:relative !important;
    z-index:1 !important;
    box-shadow:0 4px 14px rgba(0,0,0,.18) !important;
  }
  html body.home.wot-split .WOT .wot-mapview #mcrmap,
  html body.home.wot-split .WOT .wot-mapview .wot-map{
    height:280px !important;
    min-height:280px !important;
    width:100% !important;
  }
  /* Grid stays visible below - override the .map-on hides */
  html body.home.wot-split .WOT.map-on .wot-tg{display:block !important;}
  html body.home.wot-split .WOT .wot-tg{display:block !important;}
}

/* ═══════════════════════════════════════════════════════════════════════
   v8 (v12.6.0) · Ticket journey drawer
   Self-contained block. WOT card tap -> inline ticket sheet.
   --tk-c is the per-event accent (avoids collision with --c category color).
   ═══════════════════════════════════════════════════════════════════════ */
.mcrd-wot-card[data-tk]{cursor:pointer}

.mcrd-tk{
  position:absolute;left:0;right:0;top:0;bottom:0;z-index:920;
  background:rgba(6,6,10,.78);backdrop-filter:blur(22px) saturate(1.4);-webkit-backdrop-filter:blur(22px) saturate(1.4);
  border-top:1px solid rgba(255,255,255,.08);border-radius:26px 26px 0 0;
  transform:translateY(100%);transition:transform .42s cubic-bezier(.22,1.08,.36,1);
  display:flex;flex-direction:column;overflow:hidden;
  pointer-events:none;
}
.mcrd-tk.open{transform:translateY(0);pointer-events:auto}
.mcrd-tk-hero{
  position:relative;height:180px;flex-shrink:0;overflow:hidden;
  background:#0a0a12 center/cover no-repeat;
}
.mcrd-tk-hero::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to top,rgba(6,6,10,1) 0%,rgba(6,6,10,.3) 55%,transparent 100%);
}
.mcrd-tk-close{
  position:absolute;top:14px;right:14px;z-index:3;
  width:34px;height:34px;border-radius:50%;
  background:rgba(0,0,0,.55);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.15);color:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  font-size:13px;font-weight:700;transition:transform .2s,background .2s;
}
.mcrd-tk-close:hover{background:rgba(232,0,42,.7);transform:scale(1.05)}
.mcrd-tk-cat{
  position:absolute;top:14px;left:14px;z-index:3;
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 11px;border-radius:100px;
  background:rgba(0,0,0,.6);backdrop-filter:blur(8px);
  border:1px solid var(--tk-c,#e8002a);
  font-size:.5rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;
}
.mcrd-tk-cat::before{
  content:'';width:6px;height:6px;border-radius:50%;
  background:var(--tk-c,#e8002a);box-shadow:0 0 8px var(--tk-c,#e8002a);
  animation:live-p 1.6s ease infinite;
}
.mcrd-tk-body{
  flex:1;overflow-y:auto;padding:18px 18px 20px;
  scrollbar-width:none;
}
.mcrd-tk-body::-webkit-scrollbar{display:none}
.mcrd-tk-title{
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.35rem;
  color:#fff;letter-spacing:-.025em;line-height:1.1;margin-bottom:8px;
}
.mcrd-tk-venue{font-size:.72rem;color:rgba(255,255,255,.55);margin-bottom:14px;font-weight:500}
.mcrd-tk-venue b{color:#fff;font-weight:700}

.mcrd-tk-facts{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;
}
.mcrd-tk-fact{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  border-radius:12px;padding:10px 10px 9px;
}
.mcrd-tk-fact-lbl{font-size:.42rem;font-weight:700;color:rgba(255,255,255,.38);letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.mcrd-tk-fact-val{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.78rem;color:#fff;letter-spacing:-.01em}
.mcrd-tk-fact.hot .mcrd-tk-fact-val{color:#ff6600}
.mcrd-tk-fact.hot{border-color:rgba(255,102,0,.3);background:rgba(255,102,0,.06)}

.mcrd-tk-desc{
  font-size:.72rem;line-height:1.55;color:rgba(255,255,255,.6);margin-bottom:16px;
}

.mcrd-tk-tiers{
  display:flex;flex-direction:column;gap:7px;margin-bottom:18px;
}
.mcrd-tk-tier{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px 14px;border-radius:12px;
  background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);
  cursor:pointer;transition:background .15s,border-color .15s,transform .15s;
}
.mcrd-tk-tier:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}
.mcrd-tk-tier.selected{
  background:rgba(26,86,255,.08);border-color:rgba(26,86,255,.5);
  box-shadow:0 0 0 3px rgba(26,86,255,.1);
}
.mcrd-tk-tier.sold{opacity:.4;cursor:not-allowed}
.mcrd-tk-tier-nm{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.72rem;color:#fff;letter-spacing:-.01em}
.mcrd-tk-tier-sub{font-size:.52rem;color:rgba(255,255,255,.4);margin-top:2px}
.mcrd-tk-tier-sub.warn{color:#ff6600}
.mcrd-tk-tier-sub.warn::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#ff6600;box-shadow:0 0 6px #ff6600;margin-right:5px;vertical-align:middle;animation:live-p 1.6s ease infinite}
.mcrd-tk-tier-price{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1rem;color:#fff;letter-spacing:-.02em}
.mcrd-tk-tier.sold .mcrd-tk-tier-price{text-decoration:line-through;color:rgba(255,255,255,.35)}

.mcrd-tk-qty{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px 14px;border-radius:12px;
  background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);
  margin-bottom:14px;
}
.mcrd-tk-qty-lbl{font-family:'Inter Tight',sans-serif;font-weight:800;font-size:.72rem;color:#fff}
.mcrd-tk-qty-ctrl{display:flex;align-items:center;gap:10px}
.mcrd-tk-qty-btn{
  width:30px;height:30px;border-radius:8px;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);
  color:#fff;font-weight:800;font-size:14px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .15s,transform .1s;
}
.mcrd-tk-qty-btn:hover{background:rgba(255,255,255,.14)}
.mcrd-tk-qty-btn:active{transform:scale(.92)}
.mcrd-tk-qty-val{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1rem;color:#fff;min-width:18px;text-align:center}

.mcrd-tk-earn{
  display:flex;align-items:center;gap:8px;
  padding:9px 12px;border-radius:10px;margin-bottom:14px;
  background:linear-gradient(90deg,rgba(255,210,0,.08),rgba(255,102,0,.04));
  border:1px solid rgba(255,210,0,.2);
}
.mcrd-tk-earn-ico{
  width:26px;height:26px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,#ffd200,#ff6600);
  display:flex;align-items:center;justify-content:center;font-size:12px;
  box-shadow:0 4px 10px rgba(255,102,0,.25);
}
.mcrd-tk-earn-txt{font-size:.58rem;color:rgba(255,255,255,.75);line-height:1.35}
.mcrd-tk-earn-txt b{color:#ffd200;font-weight:800}

.mcrd-tk-total{
  display:flex;align-items:baseline;justify-content:space-between;
  padding:10px 2px;margin-bottom:12px;
  border-top:1px dashed rgba(255,255,255,.12);
}
.mcrd-tk-total-lbl{font-size:.6rem;font-weight:700;color:rgba(255,255,255,.5);letter-spacing:.04em;text-transform:uppercase}
.mcrd-tk-total-val{font-family:'Inter Tight',sans-serif;font-weight:900;font-size:1.4rem;color:#fff;letter-spacing:-.025em}
.mcrd-tk-total-val small{font-size:.6rem;font-weight:700;color:rgba(255,255,255,.35);margin-left:6px;letter-spacing:0}

.mcrd-tk-actions{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
.mcrd-tk-go{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;height:52px;border-radius:14px;
  background:linear-gradient(135deg,var(--tk-c,#e8002a),var(--tk-c2,#ff6600));
  border:none;color:#fff;cursor:pointer;
  font-family:'Inter Tight',sans-serif;font-weight:900;font-size:.82rem;letter-spacing:.01em;
  box-shadow:0 10px 26px -5px var(--tk-c,rgba(232,0,42,.6)),inset 0 1px 0 rgba(255,255,255,.15);
  transition:transform .15s,box-shadow .2s;
}
.mcrd-tk-go:hover{transform:translateY(-1px);box-shadow:0 14px 32px -5px var(--tk-c,rgba(232,0,42,.7)),inset 0 1px 0 rgba(255,255,255,.2)}
.mcrd-tk-go:active{transform:translateY(0) scale(.98)}
.mcrd-tk-go small{font-size:.5rem;font-weight:700;opacity:.85;letter-spacing:.06em;text-transform:uppercase}
.mcrd-tk-sub-btn{
  display:flex;align-items:center;justify-content:center;gap:7px;
  height:42px;border-radius:11px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.85);cursor:pointer;
  font-family:'Inter Tight',sans-serif;font-weight:700;font-size:.7rem;letter-spacing:.04em;
  transition:background .15s,color .15s;
}
.mcrd-tk-sub-btn:hover{background:rgba(255,255,255,.1);color:#fff}
.mcrd-tk-sub-btn i{font-size:.65rem}

/* ═══════════════════════════════════════════════════════════════════════
   v8 (v12.6.0) · 3D polish layer
   Additive depth on existing drawer cards. No overrides.
   ═══════════════════════════════════════════════════════════════════════ */
#MCR-DRAWER .mcrd-weekend,
#MCR-DRAWER .mcrd-wot-scroll,
#MCR-DRAWER .mcrd-explore,
#MCR-DRAWER .mcrd-stories,
#MCR-DRAWER .mcrd-hoods{perspective:1200px}
#MCR-DRAWER .mcrd-wknd-card,
#MCR-DRAWER .mcrd-wot-card,
#MCR-DRAWER .mcrd-cat,
#MCR-DRAWER .mcrd-story-c,
#MCR-DRAWER .mcrd-hood{
  transform-style:preserve-3d;
  transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s,background .2s,border-color .2s;
  box-shadow:0 10px 24px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05);
}
#MCR-DRAWER .mcrd-wknd-card:hover,
#MCR-DRAWER .mcrd-wot-card:hover,
#MCR-DRAWER .mcrd-cat:hover,
#MCR-DRAWER .mcrd-story-c:hover,
#MCR-DRAWER .mcrd-hood:hover{
  transform:translateZ(14px) rotateX(3deg);
  box-shadow:0 22px 40px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.08),inset 0 1px 0 rgba(255,255,255,.1);
}
#MCR-DRAWER .mcrd-wknd-i,
#MCR-DRAWER .mcrd-wot-ci,
#MCR-DRAWER .mcrd-story-i,
#MCR-DRAWER .mcrd-hood-bg{
  transition:transform .5s,filter .5s;
  transform:translateZ(-8px) scale(1.04);
}
#MCR-DRAWER .mcrd-wknd-card:hover .mcrd-wknd-i,
#MCR-DRAWER .mcrd-wot-card:hover .mcrd-wot-ci,
#MCR-DRAWER .mcrd-story-c:hover .mcrd-story-i,
#MCR-DRAWER .mcrd-hood:hover .mcrd-hood-bg{
  transform:translateZ(-8px) scale(1.1);filter:saturate(.95) brightness(.82);
}
#MCR-DRAWER .mcrd-cat-ico{transform:translateZ(4px);filter:drop-shadow(0 4px 6px var(--c))}
#MCR-DRAWER .mcrd-cat-name{transform:translateZ(2px)}
#MCR-DRAWER .mcrd-live-dot{animation:live-p 1.4s ease infinite}

/* Body lock when ticket sheet open */
body.tk-open{overflow:hidden}



/* v12.4.90 FIX HERO TEXT VISIBILITY ON IMAGE HEROES */
html body .fstory-card--hero,
html body .fstory-card.fstory-card--hero{
  position:relative !important;
}
/* Soft dark scrim so any image still shows through but text is legible */
html body .fstory-card--hero::after{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg, rgba(0,0,0,.15) 0%, rgba(0,0,0,.55) 100%) !important;
  pointer-events:none !important;
  z-index:0 !important;
  border-radius:inherit !important;
}
html body .fstory-card--hero > *,
html body .fstory-card--hero .fm-inner,
html body .fstory-card--hero .csh-eyebrow,
html body .fstory-card--hero h1,
html body .fstory-card--hero p,
html body .fstory-card--hero .csh-stats,
html body .fstory-card--hero .csh-actions{
  position:relative !important;
  z-index:1 !important;
}
html body .fstory-card--hero h1,
html body .fstory-card--hero h2,
html body .fstory-card--hero .fm-inner h1{
  color:#ffffff !important;
  text-shadow:0 2px 8px rgba(0,0,0,.55) !important;
}
html body .fstory-card--hero p,
html body .fstory-card--hero .lead,
html body .fstory-card--hero .csh-desc{
  color:rgba(255,255,255,.95) !important;
  text-shadow:0 1px 4px rgba(0,0,0,.5) !important;
}
html body .fstory-card--hero .csh-stat,
html body .fstory-card--hero .csh-stat *,
html body .fstory-card--hero .stat-num,
html body .fstory-card--hero .stat-label{
  color:#ffffff !important;
  text-shadow:0 1px 3px rgba(0,0,0,.5) !important;
}
/* Eyebrow keeps its accent colour but adds shadow for legibility */
html body .fstory-card--hero .csh-eyebrow{
  text-shadow:0 1px 3px rgba(0,0,0,.55) !important;
}



/* v12.6.1 FOOD MASTHEAD HERO TEXT */
html body .food-masthead{position:relative !important;}
html body .food-masthead::after{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg, rgba(0,0,0,.25) 0%, rgba(0,0,0,.65) 100%) !important;
  pointer-events:none !important;
  z-index:0 !important;
  border-radius:inherit !important;
}
html body .food-masthead .fm-inner,
html body .food-masthead > *{position:relative !important; z-index:1 !important;}
html body .food-masthead .fm-headline,
html body .food-masthead h1,
html body .food-masthead h2{
  color:#ffffff !important;
  text-shadow:0 2px 10px rgba(0,0,0,.6) !important;
}
html body .food-masthead p,
html body .food-masthead .fm-lead,
html body .food-masthead .fm-desc{
  color:rgba(255,255,255,.95) !important;
  text-shadow:0 1px 4px rgba(0,0,0,.55) !important;
}
html body .food-masthead .fm-eyebrow,
html body .food-masthead .csh-eyebrow{
  color:rgba(255,255,255,.85) !important;
  text-shadow:0 1px 3px rgba(0,0,0,.55) !important;
}
html body .food-masthead .fm-stats *,
html body .food-masthead .stat-num,
html body .food-masthead .stat-label{
  color:#ffffff !important;
  text-shadow:0 1px 3px rgba(0,0,0,.5) !important;
}



/* v12.6.2 SITE-WIDE HERO TEXT WHITEWASH */
html body .mcrev-hero,
html body .cat-hero,
html body .cs-masthead,
html body .dir-hero,
html body .ev-page-masthead,
html body .evs-hero,
html body .nf-hero,
html body .planner-hero,
html body .sh-hero,
html body .sh-hero-main,
html body .sh-hero-secondary,
html body .sh-hero-split,
html body .sh-masthead,
html body .story-hero-full,
html body .students-hero,
html body .sub-hero,
html body .tv-hero,
html body .ap-hero,
html body .food-masthead{
  position:relative !important;
}
/* Dark gradient scrim so any image bg still shows but text is legible */
html body .mcrev-hero::after,
html body .cat-hero::after,
html body .cs-masthead::after,
html body .dir-hero::after,
html body .ev-page-masthead::after,
html body .evs-hero::after,
html body .nf-hero::after,
html body .planner-hero::after,
html body .sh-masthead::after,
html body .story-hero-full::after,
html body .students-hero::after,
html body .sub-hero::after,
html body .tv-hero::after,
html body .ap-hero::after{
  content:'' !important;
  position:absolute !important;
  inset:0 !important;
  background:linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.55) 100%) !important;
  pointer-events:none !important;
  z-index:0 !important;
  border-radius:inherit !important;
}
/* All children stay above the scrim */
html body .mcrev-hero > *,
html body .cat-hero > *,
html body .cs-masthead > *,
html body .dir-hero > *,
html body .ev-page-masthead > *,
html body .evs-hero > *,
html body .nf-hero > *,
html body .planner-hero > *,
html body .sh-masthead > *,
html body .story-hero-full > *,
html body .students-hero > *,
html body .sub-hero > *,
html body .tv-hero > *,
html body .ap-hero > *,
html body .food-masthead > *{
  position:relative !important;
  z-index:1 !important;
}
/* Headings — force white with shadow */
html body .mcrev-hero h1, html body .mcrev-hero h2, html body .mcrev-hero .mcrev-h1,
html body .cat-hero h1, html body .cat-hero h2, html body .cat-hero-title,
html body .cs-masthead h1, html body .cs-masthead h2,
html body .dir-hero h1, html body .dir-hero h2,
html body .ev-page-masthead h1, html body .ev-page-masthead h2,
html body .evs-hero h1, html body .evs-hero h2,
html body .nf-hero h1, html body .nf-hero h2,
html body .planner-hero h1, html body .planner-hero h2,
html body .sh-masthead h1, html body .sh-masthead h2, html body .sh-masthead-title,
html body .sh-hero-title,
html body .story-hero-full h1, html body .story-hero-full h2,
html body .students-hero h1, html body .students-hero h2,
html body .sub-hero h1, html body .sub-hero h2,
html body .tv-hero h1, html body .tv-hero h2, html body .tv-hero__title,
html body .ap-hero h1, html body .ap-hero h2, html body .ap-hero__h1,
html body .food-masthead h1, html body .food-masthead h2, html body .food-masthead .fm-headline{
  color:#ffffff !important;
  text-shadow:0 2px 10px rgba(0,0,0,.6) !important;
}
/* Sub copy / description / breadcrumbs / eyebrow */
html body .mcrev-hero p, html body .mcrev-hero .mcrev-hero-meta, html body .mcrev-hero .mcrev-hero-meta *,
html body .cat-hero p, html body .cat-hero-eyebrow, html body .cat-hero-stat-lbl, html body .cat-hero-stat-num,
html body .cs-masthead p,
html body .dir-hero p, html body .dir-hero-desc, html body .dir-hero-eyebrow, html body .dir-hero-stats *,
html body .ev-page-masthead p,
html body .evs-hero p,
html body .nf-hero p,
html body .planner-hero p, html body .planner-hero-content *,
html body .sh-masthead p, html body .sh-masthead-kicker, html body .sh-masthead-sub,
html body .sh-hero-kicker, html body .sh-hero-excerpt,
html body .story-hero-full p,
html body .students-hero p,
html body .sub-hero p, html body .sub-hero-badge,
html body .tv-hero p, html body .tv-hero__sub, html body .tv-hero__meta, html body .tv-hero__pill,
html body .ap-hero p, html body .ap-hero__eyebrow, html body .ap-hero__sub, html body .ap-hero__stat-note, html body .ap-hero-eyebrow, html body .ap-hero-sub, html body .ap-hero-badge,
html body .food-masthead p, html body .food-masthead .fm-lead, html body .food-masthead .fm-eyebrow, html body .food-masthead .fm-stats *{
  color:rgba(255,255,255,.95) !important;
  text-shadow:0 1px 4px rgba(0,0,0,.5) !important;
}
/* Breadcrumbs inside heroes */
html body .mcrev-hero a,
html body .cat-hero a,
html body .cs-masthead a,
html body .dir-hero a,
html body .evs-hero a,
html body .nf-hero a,
html body .sh-masthead a,
html body .sub-hero a{
  color:rgba(255,255,255,.85) !important;
  text-shadow:0 1px 3px rgba(0,0,0,.55) !important;
}



/* v12.6.3 LIGHT MODE SWITCHES + TICKER + DESKTOP RGB LINE */

/* GRID/MAP + DARK/LIGHT switches — readable in light mode */
html body .WOT.wot-light .wot-view-opt,
html body .WOT.wot-light .wot-mode-opt{
  background:#ffffff !important;
  color:#0c0c0e !important;
  border:1px solid rgba(0,0,0,.12) !important;
  text-shadow:none !important;
}
html body .WOT.wot-light .wot-view-opt i,
html body .WOT.wot-light .wot-mode-opt i{
  color:#0c0c0e !important;
}
/* Active (is-on) — invert: black pill, white text */
html body .WOT.wot-light .wot-view-opt.is-on,
html body .WOT.wot-light .wot-mode-opt.is-on{
  background:#0c0c0e !important;
  color:#ffffff !important;
  border-color:#0c0c0e !important;
}
html body .WOT.wot-light .wot-view-opt.is-on i,
html body .WOT.wot-light .wot-mode-opt.is-on i{
  color:#ffffff !important;
}
/* Hover state — soft grey */
html body .WOT.wot-light .wot-view-opt:not(.is-on):hover,
html body .WOT.wot-light .wot-mode-opt:not(.is-on):hover{
  background:#f1f1f5 !important;
  color:#0c0c0e !important;
}

/* LIVE ticker scrolling text — dark on white in light mode */
html body .WOT.wot-light .wot-ticker,
html body .WOT.wot-light .wot-ticker-viewport{
  background:#ffffff !important;
  border:1px solid rgba(0,0,0,.08) !important;
}
html body .WOT.wot-light .wot-ticker-track,
html body .WOT.wot-light .wot-ticker-track *,
html body .WOT.wot-light .wot-ticker-item,
html body .WOT.wot-light .wot-ticker-item *{
  color:#0c0c0e !important;
  text-shadow:none !important;
}
html body .WOT.wot-light .wot-ticker-live{
  background:#E8201A !important;
  color:#ffffff !important;
}
html body .WOT.wot-light .wot-ticker-live-txt{
  color:#ffffff !important;
}

/* RGB line under nav — restore on desktop too */
@media(min-width:901px){
  html body #MOB-HEADER::after,
  html body #TOP-HEADER::after,
  html body #DESK-HEADER::after,
  html body .site-header::after{
    content:'' !important;
    position:absolute !important;
    bottom:0 !important;
    left:0 !important;
    right:0 !important;
    height:1.5px !important;
    background:linear-gradient(90deg,
      #E8201A 0%, #FF7A00 16%, #FFD400 32%,
      #2DB54B 48%, #1A56FF 64%, #7C3AED 80%, #FF1A8C 100%) !important;
    opacity:.8 !important;
    z-index:9 !important;
    pointer-events:none !important;
  }
}



/* v12.6.4 LIGHT MODE SWITCHES - NUCLEAR SPECIFICITY */
/* Selector adds .wot-mini-label parent and #WOT id-equivalent specificity boost */
html body section#WOT.WOT.wot-light .wot-mini-label .wot-view-opt,
html body section#WOT.WOT.wot-light .wot-mini-label .wot-mode-opt,
html body section.WOT.wot-light .wot-mini-label .wot-view-opt,
html body section.WOT.wot-light .wot-mini-label .wot-mode-opt,
html body .WOT.wot-light .wot-mini-label .wot-view-opt,
html body .WOT.wot-light .wot-mini-label .wot-mode-opt,
html body .WOT.wot-light .wot-view-switch .wot-view-opt,
html body .WOT.wot-light .wot-mode-switch .wot-mode-opt{
  background:#ffffff !important;
  color:#0c0c0e !important;
  border:1px solid rgba(0,0,0,.15) !important;
  text-shadow:none !important;
  opacity:1 !important;
}
html body .WOT.wot-light .wot-mini-label .wot-view-opt i,
html body .WOT.wot-light .wot-mini-label .wot-mode-opt i,
html body .WOT.wot-light .wot-view-switch .wot-view-opt i,
html body .WOT.wot-light .wot-mode-switch .wot-mode-opt i,
html body .WOT.wot-light .wot-mini-label .wot-view-opt span,
html body .WOT.wot-light .wot-mini-label .wot-mode-opt span,
html body .WOT.wot-light .wot-view-switch .wot-view-opt span,
html body .WOT.wot-light .wot-mode-switch .wot-mode-opt span{
  color:#0c0c0e !important;
  opacity:1 !important;
}
/* Active state - inverted */
html body section.WOT.wot-light .wot-mini-label .wot-view-opt.is-on,
html body section.WOT.wot-light .wot-mini-label .wot-mode-opt.is-on,
html body .WOT.wot-light .wot-mini-label .wot-view-opt.is-on,
html body .WOT.wot-light .wot-mini-label .wot-mode-opt.is-on,
html body .WOT.wot-light .wot-view-switch .wot-view-opt.is-on,
html body .WOT.wot-light .wot-mode-switch .wot-mode-opt.is-on{
  background:#0c0c0e !important;
  color:#ffffff !important;
  border-color:#0c0c0e !important;
}
html body .WOT.wot-light .wot-view-opt.is-on i,
html body .WOT.wot-light .wot-mode-opt.is-on i,
html body .WOT.wot-light .wot-view-opt.is-on span,
html body .WOT.wot-light .wot-mode-opt.is-on span{
  color:#ffffff !important;
}
/* Hover */
html body .WOT.wot-light .wot-view-opt:not(.is-on):hover,
html body .WOT.wot-light .wot-mode-opt:not(.is-on):hover{
  background:#f1f1f5 !important;
  color:#0c0c0e !important;
  border-color:rgba(0,0,0,.25) !important;
}

/* LIVE TICKER - dark text on white viewport in light mode */
html body section.WOT.wot-light .wot-ticker,
html body .WOT.wot-light .wot-ticker{
  background:#ffffff !important;
  border:1px solid rgba(0,0,0,.08) !important;
}
html body section.WOT.wot-light .wot-ticker-viewport,
html body .WOT.wot-light .wot-ticker-viewport{
  background:#ffffff !important;
}
html body section.WOT.wot-light .wot-ticker-track,
html body section.WOT.wot-light .wot-ticker-track *,
html body section.WOT.wot-light .wot-ticker-item,
html body section.WOT.wot-light .wot-ticker-item *,
html body .WOT.wot-light .wot-ticker-track,
html body .WOT.wot-light .wot-ticker-track *,
html body .WOT.wot-light .wot-ticker-item,
html body .WOT.wot-light .wot-ticker-item *{
  color:#0c0c0e !important;
  text-shadow:none !important;
  opacity:1 !important;
}
html body .WOT.wot-light .wot-ticker-live{
  background:#E8201A !important;
  color:#ffffff !important;
}
html body .WOT.wot-light .wot-ticker-live-txt,
html body .WOT.wot-light .wot-ticker-dot{
  color:#ffffff !important;
}



/* v12.6.5 EXEMPT WHITE-BG / LIGHT-CONTENT HEROES FROM WHITEWASH */

/* Kill the dark scrim on heroes inside light-content/white-bg parents */
html body main.white-bg .mcrev-hero::after,
html body main.white-bg .cat-hero::after,
html body main.white-bg .cs-masthead::after,
html body main.white-bg .dir-hero::after,
html body main.white-bg .ev-page-masthead::after,
html body main.white-bg .evs-hero::after,
html body main.white-bg .nf-hero::after,
html body main.white-bg .planner-hero::after,
html body main.white-bg .sh-masthead::after,
html body main.white-bg .story-hero-full::after,
html body main.white-bg .students-hero::after,
html body main.white-bg .sub-hero::after,
html body main.white-bg .tv-hero::after,
html body main.white-bg .ap-hero::after,
html body main.light-content .mcrev-hero::after,
html body main.light-content .cat-hero::after,
html body main.light-content .cs-masthead::after,
html body main.light-content .dir-hero::after,
html body main.light-content .ev-page-masthead::after,
html body main.light-content .evs-hero::after,
html body main.light-content .nf-hero::after,
html body main.light-content .planner-hero::after,
html body main.light-content .sh-masthead::after,
html body main.light-content .story-hero-full::after,
html body main.light-content .students-hero::after,
html body main.light-content .sub-hero::after,
html body main.light-content .tv-hero::after,
html body main.light-content .ap-hero::after{
  display:none !important;
  content:none !important;
  background:none !important;
  opacity:0 !important;
}

/* Restore DARK text on heroes inside light-content/white-bg parents */
html body main.white-bg .ev-page-masthead h1,
html body main.white-bg .ev-page-masthead h2,
html body main.white-bg .ev-page-masthead .epm-clean-title,
html body main.light-content .ev-page-masthead h1,
html body main.light-content .ev-page-masthead h2,
html body main.light-content .ev-page-masthead .epm-clean-title,
html body main.white-bg .cat-hero h1,
html body main.white-bg .cat-hero h2,
html body main.white-bg .cat-hero-title,
html body main.light-content .cat-hero h1,
html body main.light-content .cat-hero h2,
html body main.light-content .cat-hero-title,
html body main.white-bg .mcrev-hero h1,
html body main.white-bg .mcrev-hero .mcrev-h1,
html body main.light-content .mcrev-hero h1,
html body main.light-content .mcrev-hero .mcrev-h1,
html body main.white-bg .evs-hero h1,
html body main.white-bg .evs-hero h2,
html body main.light-content .evs-hero h1,
html body main.light-content .evs-hero h2{
  color:#0f172a !important;
  text-shadow:none !important;
}
html body main.white-bg .ev-page-masthead p,
html body main.white-bg .ev-page-masthead .epm-clean-sub,
html body main.light-content .ev-page-masthead p,
html body main.light-content .ev-page-masthead .epm-clean-sub,
html body main.white-bg .cat-hero p,
html body main.white-bg .cat-hero-eyebrow,
html body main.light-content .cat-hero p,
html body main.light-content .cat-hero-eyebrow,
html body main.white-bg .mcrev-hero p,
html body main.white-bg .mcrev-hero .mcrev-hero-meta *,
html body main.light-content .mcrev-hero p,
html body main.light-content .mcrev-hero .mcrev-hero-meta *,
html body main.white-bg .evs-hero p,
html body main.light-content .evs-hero p{
  color:rgba(15,23,42,.78) !important;
  text-shadow:none !important;
}
html body main.white-bg .mcrev-hero a,
html body main.white-bg .ev-page-masthead a,
html body main.white-bg .cat-hero a,
html body main.light-content .mcrev-hero a,
html body main.light-content .ev-page-masthead a,
html body main.light-content .cat-hero a{
  color:#0f172a !important;
  text-shadow:none !important;
}



/* v12.6.6 KILL DRAWER TOP DARK FADE */
html body .mcrd-fade,
html body #MCR-DRAWER .mcrd-fade{
  display:none !important;
  background:none !important;
  background-image:none !important;
  opacity:0 !important;
  height:0 !important;
  pointer-events:none !important;
}



/* v12.6.7 FLUID DRAWER PULL - content visible during drag, not just on .open */
#MCR-DRAWER .mcrd-scroll{
  opacity:1 !important;
  pointer-events:auto !important;
  transform:none !important;
  transition:none !important;
}
/* Kill child slide-up animations - content already visible, replay would jump */
#MCR-DRAWER.open .mcrd-search-wrap,
#MCR-DRAWER.open .mcrd-stats,
#MCR-DRAWER.open .mcrd-chips,
#MCR-DRAWER.open .mcrd-explore,
#MCR-DRAWER.open .mcrd-tools-grid,
#MCR-DRAWER.open .mcrd-wot-scroll,
#MCR-DRAWER.open .scores-row,
#MCR-DRAWER.open .mcrd-stories,
#MCR-DRAWER.open .mcrd-venues,
#MCR-DRAWER.open .mcrd-weekend,
#MCR-DRAWER.open .mcrd-hoods,
#MCR-DRAWER.open .nl{ animation:none !important; }



/* v12.6.8 DRAWER PEEK FIX - handle was 44px from a11y rule, eating the search */
@media(max-width:900px){
  html body button.mcrd-handle,
  html body #mcrd-handle{
    min-height:0 !important;
    height:auto !important;
    padding:6px 0 4px !important;
  }
}
/* Bump peek window from 58px to 70px so search bar fully visible */
#MCR-DRAWER{ transform:translateY(calc(100% - 70px)) !important; }
#MCR-DRAWER.open{ transform:translateY(6vh) !important; }
@media(max-width:900px){
  #WRAP{ padding-bottom:70px !important; }
}



/* v12.6.9 KILL DRAWER CORNER RADIUS - was showing white page behind */
#MCR-DRAWER,
#MCR-DRAWER .mcrd-glass{
  border-top-left-radius:0 !important;
  border-top-right-radius:0 !important;
}



/* v12.6.10 KILL HANDLE BUTTON DEFAULT BG - was rgb(240,240,240) UA grey */
html body button.mcrd-handle,
html body #mcrd-handle{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}



/* v12.6.11 LIGHT-MODE SWITCH TEXT + MANCHESTER TITLE BLACK */
/* Children of switches were color:white (parent was wot-view-switch not wot-mini-label) */
html body .WOT.wot-light .wot-view-switch .wot-view-opt i,
html body .WOT.wot-light .wot-view-switch .wot-view-opt span,
html body .WOT.wot-light .wot-mode-switch .wot-mode-opt i,
html body .WOT.wot-light .wot-mode-switch .wot-mode-opt span{
  color:#0c0c0e !important;
}
/* Active (is-on) - inverted: dark bg + white children */
html body .WOT.wot-light .wot-view-switch .wot-view-opt.is-on,
html body .WOT.wot-light .wot-mode-switch .wot-mode-opt.is-on{
  background:#0c0c0e !important;
  color:#ffffff !important;
  border-color:#0c0c0e !important;
}
html body .WOT.wot-light .wot-view-switch .wot-view-opt.is-on i,
html body .WOT.wot-light .wot-view-switch .wot-view-opt.is-on span,
html body .WOT.wot-light .wot-mode-switch .wot-mode-opt.is-on i,
html body .WOT.wot-light .wot-mode-switch .wot-mode-opt.is-on span{
  color:#ffffff !important;
}
/* Manchester title in Explore section - black not purple */
html body .mob-explore-section .sh-title,
html body .mob-explore-section h2.sh-title{
  color:#0c0c0e !important;
}



/* v12.6.12 NUCLEAR LIGHT-MODE FIX - switches + title + section-white text */

/* ACTIVE switch in light mode - dark bg + white children. Use ID + section for max specificity */
html body section#WOT.WOT.wot-light .wot-view-switch button.wot-view-opt.is-on,
html body section#WOT.WOT.wot-light .wot-mode-switch button.wot-mode-opt.is-on,
html body section.WOT.wot-light .wot-view-switch button.wot-view-opt.is-on,
html body section.WOT.wot-light .wot-mode-switch button.wot-mode-opt.is-on{
  background:#0a0a0d !important;
  background-color:#0a0a0d !important;
  color:#fff !important;
  border-color:#0a0a0d !important;
}
html body section.WOT.wot-light .wot-view-switch button.wot-view-opt.is-on i,
html body section.WOT.wot-light .wot-view-switch button.wot-view-opt.is-on span,
html body section.WOT.wot-light .wot-mode-switch button.wot-mode-opt.is-on i,
html body section.WOT.wot-light .wot-mode-switch button.wot-mode-opt.is-on span{
  color:#fff !important;
}

/* Manchester title in mob-explore-section - black not purple. ID-level specificity */
html body main#CENTRE .mob-explore-section .sh-title,
html body main .mob-explore-section h2.sh-title,
html body section.mob-explore-section .sh-title,
html body .mob-explore-section h2.sh-title{
  color:#0c0c0e !important;
}

/* WHITE-ON-WHITE section-white text fix - any descendant text in light sections gets dark */
html body section.section-white .SC,
html body section.section-white .SC *:not(.btn):not([class*=pill]):not([class*=chip]),
html body section.section-white .sport-card,
html body section.section-white .sport-card *,
html body section.section-white .news-card,
html body section.section-white .news-card .t,
html body section.section-white .news-card .nm,
html body section.section-white .news-card .title{
  color:#0c0c0e !important;
}
html body section.section-white .SC .sub,
html body section.section-white .SC .meta,
html body section.section-white .SC .v,
html body section.section-white .sport-card .sub,
html body section.section-white .sport-card .meta{
  color:rgba(0,0,0,.55) !important;
}

/* WOT pill hover - kill any white overlay that appears on hover in light mode */
html body section.WOT.wot-light .wot-ev-pill:hover,
html body section.WOT.wot-light .wot-tg-pill:hover,
html body section.WOT.wot-light .wot-tg-row:hover{
  background-color:transparent !important;
  background-image:none !important;
}



/* v12.6.13 WOT PILL: bigger title + drop shadow for readability */
html body section.WOT .wot-ev-pill .wot-ev-t,
html body section.WOT .wot-ev-pill .wot-pill-t,
html body section.WOT .wot-ev-pill .t,
html body section.WOT .wot-ev-pill b{
  font-size:.78rem !important;
  line-height:1.15 !important;
  font-weight:800 !important;
  letter-spacing:.1px !important;
  text-shadow:0 1px 2px rgba(0,0,0,.55), 0 0 1px rgba(0,0,0,.35) !important;
  -webkit-font-smoothing:antialiased !important;
}
html body section.WOT .wot-ev-pill .wot-ev-v,
html body section.WOT .wot-ev-pill .wot-pill-v,
html body section.WOT .wot-ev-pill .v,
html body section.WOT .wot-ev-pill .sub{
  font-size:.55rem !important;
  text-shadow:0 1px 1px rgba(0,0,0,.4) !important;
}
/* Light mode: keep title dark text but with subtle white shadow for contrast */
html body section.WOT.wot-light .wot-ev-pill .wot-ev-t,
html body section.WOT.wot-light .wot-ev-pill b{
  text-shadow:0 1px 0 rgba(255,255,255,.45), 0 0 2px rgba(255,255,255,.6) !important;
}



/* v12.6.14 WOT: per-hour event counter + sticky scroll-to-NOW button */
.wot-tg-time{ position:relative; }
.wot-tg-count{
  display:inline-flex; align-items:center; justify-content:center;
  margin-left:6px; min-width:18px; height:14px; padding:0 5px;
  font-size:.42rem; font-weight:800; letter-spacing:.04em;
  color:rgba(255,255,255,.55);
  background:rgba(255,255,255,.08);
  border-radius:999px;
  vertical-align:middle;
}
.wot-tg-row.wot-now .wot-tg-count{
  color:#fff; background:rgba(232,32,26,.55);
}
.wot-light .wot-tg-count{
  color:rgba(0,0,0,.55); background:rgba(0,0,0,.07);
}
.wot-light .wot-tg-row.wot-now .wot-tg-count{
  color:#fff; background:rgba(232,32,26,.85);
}

/* Floating Scroll-to-NOW pill */
.wot-now-fab{
  position:fixed; left:50%; bottom:88px; transform:translateX(-50%) translateY(20px);
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 18px 10px 14px;
  background:linear-gradient(135deg, #E8201A 0%, #FF6B00 100%);
  color:#fff; font-size:.65rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  border-radius:999px; border:none; cursor:pointer;
  box-shadow:0 8px 24px rgba(232,32,26,.45), 0 0 0 1px rgba(255,255,255,.08) inset;
  opacity:0; pointer-events:none;
  transition:opacity .25s ease, transform .25s cubic-bezier(.22,1,.36,1);
  z-index:850;
}
.wot-now-fab.show{ opacity:1; pointer-events:auto; transform:translateX(-50%) translateY(0); }
.wot-now-fab .wot-now-dot{
  width:8px; height:8px; border-radius:50%; background:#fff;
  box-shadow:0 0 8px rgba(255,255,255,.8);
  animation:wot-now-pulse 1.6s ease infinite;
}
@keyframes wot-now-pulse{
  0%,100%{opacity:1; transform:scale(1)}
  50%{opacity:.5; transform:scale(.7)}
}
.wot-now-fab:hover{ filter:brightness(1.08); }
@media(max-width:640px){
  .wot-now-fab{ bottom:84px; padding:9px 16px 9px 12px; font-size:.6rem; }
}



/* v12.6.17 KILL PILL HOVER WHITE OVERLAY */
/* The ::before pseudo or filter is causing a wash on hover. Suppress completely. */
html body section.WOT .wot-ev-pill:hover,
html body section.WOT.wot-light .wot-ev-pill:hover{
  filter:none !important;
  background-image:none !important;
}
html body section.WOT .wot-ev-pill:hover::before,
html body section.WOT .wot-ev-pill:hover::after,
html body section.WOT .wot-ev-pill.active::before,
html body section.WOT .wot-ev-pill.active::after,
html body section.WOT.wot-light .wot-ev-pill:hover::before,
html body section.WOT.wot-light .wot-ev-pill:hover::after,
html body section.WOT.wot-light .wot-ev-pill.active::before,
html body section.WOT.wot-light .wot-ev-pill.active::after{
  opacity:0 !important;
  background:none !important;
  background-image:none !important;
  display:none !important;
  content:none !important;
}
/* Active state - keep base color, just slight darken via box-shadow */
html body section.WOT .wot-ev-pill.active,
html body section.WOT.wot-light .wot-ev-pill.active{
  background-image:none !important;
  filter:brightness(.92) !important;
}



/* v12.6.18 FIX hour-counter chip pushing time text to single 'M' */
html body section.WOT .wot-tg-time{
  white-space:normal !important;
  line-height:1.1 !important;
}
html body section.WOT .wot-tg-time .wot-tg-count{
  display:block !important;
  margin:3px 0 0 0 !important;
  width:fit-content !important;
}



/* v12.6.19 PAST = GHOST + 3-HOUR BAND RHYTHM */

/* Past hours: desaturated + lower opacity. Future feels alive, past feels archived */
html body section.WOT .wot-tg-row.wot-past .wot-ev-pill{
  filter:grayscale(.55) brightness(.85) !important;
  opacity:.45 !important;
}
html body section.WOT.wot-light .wot-tg-row.wot-past .wot-ev-pill{
  filter:grayscale(.55) brightness(1.05) !important;
  opacity:.5 !important;
}
html body section.WOT .wot-tg-row.wot-past .wot-tg-time,
html body section.WOT .wot-tg-row.wot-past .wot-tg-count{
  opacity:.5 !important;
}

/* 3-hour band dividers - subtle thicker line above each band start */
/* Bands: 6am morning, 9am, 12pm noon, 3pm afternoon, 6pm evening, 9pm, 12am late */
html body section.WOT .wot-tg-row[data-h="6"],
html body section.WOT .wot-tg-row[data-h="9"],
html body section.WOT .wot-tg-row[data-h="12"],
html body section.WOT .wot-tg-row[data-h="15"],
html body section.WOT .wot-tg-row[data-h="18"],
html body section.WOT .wot-tg-row[data-h="21"],
html body section.WOT .wot-tg-row[data-h="0"]{
  border-top:1px solid rgba(255,255,255,.10) !important;
  margin-top:6px !important;
  padding-top:6px !important;
}
html body section.WOT.wot-light .wot-tg-row[data-h="6"],
html body section.WOT.wot-light .wot-tg-row[data-h="9"],
html body section.WOT.wot-light .wot-tg-row[data-h="12"],
html body section.WOT.wot-light .wot-tg-row[data-h="15"],
html body section.WOT.wot-light .wot-tg-row[data-h="18"],
html body section.WOT.wot-light .wot-tg-row[data-h="21"],
html body section.WOT.wot-light .wot-tg-row[data-h="0"]{
  border-top-color:rgba(0,0,0,.08) !important;
}



/* v12.6.20 STACK time + count chip vertically (parent was flex-row squishing text) */
html body section.WOT .wot-tg-time{
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
}
html body section.WOT .wot-tg-time .wot-tg-count{
  margin:3px 0 0 0 !important;
  align-self:flex-start !important;
}



/* v12.6.21 LIGHT MODE DEPTH - layered greys + shadows + hairlines (Apple Calendar feel) */

/* Section: subtle off-white gradient, not flat */
html body section.WOT.wot-light{
  background:
    linear-gradient(180deg, #fafafb 0%, #f4f4f6 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,1),
    inset 0 -1px 0 rgba(0,0,0,.04) !important;
}

/* Inner timeline frame - slightly recessed feel */
html body section.WOT.wot-light .wot-tg{
  background:#ffffff !important;
  border:1px solid rgba(0,0,0,.06) !important;
  border-radius:14px !important;
  box-shadow:
    0 1px 2px rgba(0,0,0,.03),
    0 4px 16px rgba(0,0,0,.04),
    0 12px 40px rgba(0,0,0,.05) !important;
  overflow:hidden !important;
}

/* Time gutter: very light grey strip with right hairline divider */
html body section.WOT.wot-light .wot-tg-time{
  background:linear-gradient(180deg, #f7f7f9 0%, #f1f1f3 100%) !important;
  border-right:1px solid rgba(0,0,0,.05) !important;
  color:rgba(0,0,0,.55) !important;
  font-weight:700 !important;
  box-shadow:inset -1px 0 0 rgba(255,255,255,.6) !important;
}

/* Row hairline divider (between hours) */
html body section.WOT.wot-light .wot-tg-row{
  border-bottom:1px solid rgba(0,0,0,.04) !important;
}
html body section.WOT.wot-light .wot-tg-row:last-child{ border-bottom:none !important; }

/* Pills: keep their category colour fill, add proper depth shadows + inner highlight */
html body section.WOT.wot-light .wot-ev-pill{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 1px 2px rgba(0,0,0,.06),
    0 3px 8px rgba(0,0,0,.08),
    0 8px 22px rgba(0,0,0,.06) !important;
  border:1px solid rgba(0,0,0,.04) !important;
}
html body section.WOT.wot-light .wot-ev-pill:hover{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 2px 4px rgba(0,0,0,.08),
    0 6px 14px rgba(0,0,0,.10),
    0 14px 32px rgba(0,0,0,.10) !important;
  transform:translateY(-1px) !important;
}

/* Hour count chip: lifted card feel */
html body section.WOT.wot-light .wot-tg-count{
  background:#ffffff !important;
  color:rgba(0,0,0,.6) !important;
  border:1px solid rgba(0,0,0,.06) !important;
  box-shadow:0 1px 2px rgba(0,0,0,.05) !important;
}
html body section.WOT.wot-light .wot-tg-row.wot-now .wot-tg-count{
  background:#E8201A !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 2px 6px rgba(232,32,26,.4), 0 0 0 3px rgba(232,32,26,.12) !important;
}

/* 3-hour band divider stronger in light mode for visible rhythm */
html body section.WOT.wot-light .wot-tg-row[data-h="6"],
html body section.WOT.wot-light .wot-tg-row[data-h="9"],
html body section.WOT.wot-light .wot-tg-row[data-h="12"],
html body section.WOT.wot-light .wot-tg-row[data-h="15"],
html body section.WOT.wot-light .wot-tg-row[data-h="18"],
html body section.WOT.wot-light .wot-tg-row[data-h="21"],
html body section.WOT.wot-light .wot-tg-row[data-h="0"]{
  border-top:1px solid rgba(0,0,0,.10) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,1) !important;
  margin-top:0 !important;
  padding-top:0 !important;
}



/* v12.6.22 STRIP outer frame chrome from v12.6.21, keep depth INSIDE grid */
html body section.WOT.wot-light{
  background:#ffffff !important;
  box-shadow:none !important;
}
html body section.WOT.wot-light .wot-tg{
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

/* INSIDE the grid - real depth */

/* Zebra striping: alternating very-subtle greys for hour rows */
html body section.WOT.wot-light .wot-tg-row{
  background:#fafafb !important;
  border-bottom:1px solid rgba(0,0,0,.05) !important;
  position:relative !important;
}
html body section.WOT.wot-light .wot-tg-row:nth-child(even){
  background:#f4f4f6 !important;
}

/* NOW row - distinct lift, soft red wash */
html body section.WOT.wot-light .wot-tg-row.wot-now{
  background:linear-gradient(180deg, #fff5f5 0%, #ffeaea 100%) !important;
  box-shadow:
    inset 3px 0 0 #E8201A,
    inset 0 1px 0 rgba(255,255,255,1) !important;
}

/* Time gutter - soft inset shadow makes it feel recessed */
html body section.WOT.wot-light .wot-tg-time{
  background:rgba(0,0,0,.025) !important;
  border-right:1px solid rgba(0,0,0,.06) !important;
  box-shadow:inset -1px 0 1px rgba(0,0,0,.03) !important;
  color:rgba(0,0,0,.55) !important;
  font-weight:700 !important;
}

/* PILLS - richer depth via stacked shadows + subtle inner highlight */
html body section.WOT.wot-light .wot-ev-pill{
  border:1px solid rgba(0,0,0,.06) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.25),
    inset 0 -1px 0 rgba(0,0,0,.06),
    0 1px 1px rgba(0,0,0,.04),
    0 2px 4px rgba(0,0,0,.06),
    0 6px 14px rgba(0,0,0,.07) !important;
}
html body section.WOT.wot-light .wot-ev-pill:hover{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.3),
    inset 0 -1px 0 rgba(0,0,0,.06),
    0 1px 2px rgba(0,0,0,.06),
    0 4px 10px rgba(0,0,0,.08),
    0 12px 28px rgba(0,0,0,.10) !important;
  transform:translateY(-1px) !important;
}

/* 3-hour band: stronger divider INSIDE the grid as a real visual break */
html body section.WOT.wot-light .wot-tg-row[data-h="6"],
html body section.WOT.wot-light .wot-tg-row[data-h="9"],
html body section.WOT.wot-light .wot-tg-row[data-h="12"],
html body section.WOT.wot-light .wot-tg-row[data-h="15"],
html body section.WOT.wot-light .wot-tg-row[data-h="18"],
html body section.WOT.wot-light .wot-tg-row[data-h="21"],
html body section.WOT.wot-light .wot-tg-row[data-h="0"]{
  border-top:2px solid rgba(0,0,0,.09) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 -1px 0 rgba(0,0,0,.04) !important;
}

/* Hour count chip - keep the lift */
html body section.WOT.wot-light .wot-tg-count{
  background:#ffffff !important;
  color:rgba(0,0,0,.6) !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 2px rgba(0,0,0,.06) !important;
}
html body section.WOT.wot-light .wot-tg-row.wot-now .wot-tg-count{
  background:#E8201A !important;
  color:#fff !important;
  border-color:transparent !important;
  box-shadow:0 2px 6px rgba(232,32,26,.4) !important;
}



/* v12.6.23 ALIGN WOT LIGHT MODE WITH /food (Apple-feel restraint) */

/* Section bg: subtle off-white like /food page chrome */
html body section.WOT.wot-light{ background:#fafafa !important; }

/* Lose the heavy zebra striping - use a subtle warm grey wash instead */
html body section.WOT.wot-light .wot-tg-row{
  background:transparent !important;
  border-bottom:1px solid rgba(0,0,0,.045) !important;
}
html body section.WOT.wot-light .wot-tg-row:nth-child(even){
  background:rgba(0,0,0,.012) !important;
}

/* Time gutter: lighter, hairline divider only */
html body section.WOT.wot-light .wot-tg-time{
  background:transparent !important;
  border-right:1px solid rgba(0,0,0,.06) !important;
  box-shadow:none !important;
  color:rgba(0,0,0,.5) !important;
  font-weight:600 !important;
}

/* PILLS: keep their colours, refine shadow to match /food card recipe */
html body section.WOT.wot-light .wot-ev-pill{
  border:1px solid rgba(0,0,0,.05) !important;
  box-shadow:
    0 1px 2px rgba(0,0,0,.04),
    0 4px 12px rgba(0,0,0,.05) !important;
  border-radius:10px !important;
}
html body section.WOT.wot-light .wot-ev-pill:hover{
  box-shadow:
    0 1px 2px rgba(0,0,0,.05),
    0 8px 22px rgba(0,0,0,.10) !important;
  transform:translateY(-1px) !important;
  border-color:rgba(0,0,0,.07) !important;
}

/* NOW row: less heavy red wash, use a clean green-style left accent like /food JUST OPENED */
html body section.WOT.wot-light .wot-tg-row.wot-now{
  background:rgba(232,32,26,.04) !important;
  box-shadow:inset 3px 0 0 #E8201A !important;
}

/* 3-hour band: hairline only, no shadow inset (looked too letterpress) */
html body section.WOT.wot-light .wot-tg-row[data-h="6"],
html body section.WOT.wot-light .wot-tg-row[data-h="9"],
html body section.WOT.wot-light .wot-tg-row[data-h="12"],
html body section.WOT.wot-light .wot-tg-row[data-h="15"],
html body section.WOT.wot-light .wot-tg-row[data-h="18"],
html body section.WOT.wot-light .wot-tg-row[data-h="21"],
html body section.WOT.wot-light .wot-tg-row[data-h="0"]{
  border-top:1px solid rgba(0,0,0,.10) !important;
  box-shadow:none !important;
}

/* Hour count chip: matches /food chip style - white with thin border */
html body section.WOT.wot-light .wot-tg-count{
  background:#fff !important;
  color:rgba(0,0,0,.55) !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 2px rgba(0,0,0,.04) !important;
  font-weight:700 !important;
}

/* Filter pills (top of WOT) match /food pill style if not already */
html body section.WOT.wot-light .wot-flt{
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 2px rgba(0,0,0,.03) !important;
  color:rgba(0,0,0,.65) !important;
  font-weight:600 !important;
}



/* v12.6.25 nav-bar-hosted toggles - keep ORIGINAL switch size, just position them */
#MOB-HEADER.mob-hdr-with-toggles{
  display:flex; align-items:center;
  gap:8px;
  padding:0 8px;
}
#MOB-HEADER .mob-hdr-tog{ display:flex; align-items:center; flex:0 0 auto; }
#MOB-HEADER .mob-hdr-tog-left{ order:1; }
#MOB-HEADER .mob-hdr-logo{ order:2; flex:1 1 auto; justify-content:center; display:flex; }
#MOB-HEADER .mob-hdr-tog-right{ order:3; }
#MOB-HEADER .mob-hdr-act.mob-hdr-menu{ order:0; }
#MOB-HEADER .mob-hdr-act:not(.mob-hdr-menu){ order:4; }

/* Hide empty wot-mini-label after toggles moved out */
section.WOT .wot-mini-label:empty{ display:none !important; }



/* v12.6.27 WOT pill density slider + gate nav-toggle relocation to mobile */

/* The relocated toggles in MOB-HEADER must NEVER show on desktop */
@media(min-width:901px){
  #MOB-HEADER.mob-hdr-with-toggles{ display:none !important; }
}

/* Density slider control */
section.WOT .wot-density{
  position:absolute; left:10px; bottom:10px;
  z-index:5;
  display:inline-flex; align-items:center; gap:8px;
  padding:5px 10px 5px 8px;
  background:rgba(0,0,0,.55);
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 4px 14px rgba(0,0,0,.25);
  font-size:.5rem; font-weight:700; letter-spacing:.04em;
  color:rgba(255,255,255,.65);
}
section.WOT.wot-light .wot-density{
  background:#ffffff;
  border:1px solid rgba(0,0,0,.08);
  color:rgba(0,0,0,.6);
  box-shadow:0 1px 2px rgba(0,0,0,.04), 0 4px 12px rgba(0,0,0,.06);
}
section.WOT .wot-density-ico i{ font-size:.55rem; opacity:.7; }
section.WOT .wot-density-range{
  -webkit-appearance:none; appearance:none;
  width:90px; height:3px;
  background:rgba(255,255,255,.18);
  border-radius:999px; outline:none;
  cursor:pointer; padding:0; margin:0;
}
section.WOT.wot-light .wot-density-range{ background:rgba(0,0,0,.12); }
section.WOT .wot-density-range::-webkit-slider-thumb{
  -webkit-appearance:none; appearance:none;
  width:14px; height:14px; border-radius:50%;
  background:#fff;
  border:1px solid rgba(0,0,0,.25);
  box-shadow:0 1px 3px rgba(0,0,0,.4);
  cursor:grab;
}
section.WOT .wot-density-range::-moz-range-thumb{
  width:14px; height:14px; border-radius:50%;
  background:#fff; border:1px solid rgba(0,0,0,.25);
  box-shadow:0 1px 3px rgba(0,0,0,.4); cursor:grab;
}
section.WOT .wot-density-val{ min-width:30px; text-align:right; font-variant-numeric:tabular-nums; }

/* Apply --wot-pill-scale to pills + labels */
section.WOT{ --wot-pill-scale:1; }
section.WOT .wot-ev-pill{
  padding:calc(5px * var(--wot-pill-scale)) calc(8px * var(--wot-pill-scale)) calc(5px * var(--wot-pill-scale)) calc(7px * var(--wot-pill-scale)) !important;
  min-width:calc(90px * var(--wot-pill-scale)) !important;
  max-width:calc(160px * var(--wot-pill-scale)) !important;
}
section.WOT .wot-ev-pill .wot-ev-t,
section.WOT .wot-ev-pill .wot-pill-t,
section.WOT .wot-ev-pill b{
  font-size:calc(.78rem * var(--wot-pill-scale)) !important;
}
section.WOT .wot-ev-pill .wot-ev-v,
section.WOT .wot-ev-pill .wot-pill-v,
section.WOT .wot-ev-pill .v,
section.WOT .wot-ev-pill .sub{
  font-size:calc(.55rem * var(--wot-pill-scale)) !important;
}

/* Pad the WOT bottom so the floating slider doesn't overlap last row */
section.WOT{ padding-bottom:60px !important; }



/* v12.6.31 FIX density slider - target the ACTUAL class names .wot-ep-title and .wot-ep-sub */
html body section.WOT .wot-ev-pill .wot-ep-title{
  font-size:calc(.7rem * var(--wot-pill-scale, 1)) !important;
  line-height:1.2 !important;
}
html body section.WOT .wot-ev-pill .wot-ep-sub{
  font-size:calc(.5rem * var(--wot-pill-scale, 1)) !important;
}
/* Also let pill heights / paddings / widths flex with the scale */
html body section.WOT .wot-ev-pill{
  min-width:calc(110px * var(--wot-pill-scale, 1)) !important;
  max-width:calc(180px * var(--wot-pill-scale, 1)) !important;
  padding:calc(5px * var(--wot-pill-scale, 1)) calc(10px * var(--wot-pill-scale, 1)) calc(5px * var(--wot-pill-scale, 1)) calc(8px * var(--wot-pill-scale, 1)) !important;
}



/* v12.6.34 HALF-SIZE switches IN NAV ONLY (leave WOT section untouched) */
#MOB-HEADER .wot-view-switch,
#MOB-HEADER .wot-mode-switch{
  padding:1px !important;
  gap:0 !important;
  height:auto !important;
}
#MOB-HEADER .wot-view-opt,
#MOB-HEADER .wot-mode-opt{
  height:14px !important;
  min-height:14px !important;
  max-height:14px !important;
  padding:0 5px !important;
  font-size:.36rem !important;
  letter-spacing:.04em !important;
  gap:2px !important;
}
#MOB-HEADER .wot-view-opt span,
#MOB-HEADER .wot-mode-opt span{ font-size:.36rem !important; }
#MOB-HEADER .wot-view-opt i,
#MOB-HEADER .wot-mode-opt i{ font-size:.38rem !important; }



/* v12.6.35 SWITCH active = grey not white (dark mode) */
html body section.WOT:not(.wot-light) .wot-view-opt.is-on,
html body section.WOT:not(.wot-light) .wot-mode-opt.is-on,
#MOB-HEADER .wot-view-opt.is-on,
#MOB-HEADER .wot-mode-opt.is-on{
  background:rgba(255,255,255,.22) !important;
  color:#fff !important;
}
html body section.WOT:not(.wot-light) .wot-view-opt.is-on i,
html body section.WOT:not(.wot-light) .wot-view-opt.is-on span,
html body section.WOT:not(.wot-light) .wot-mode-opt.is-on i,
html body section.WOT:not(.wot-light) .wot-mode-opt.is-on span,
#MOB-HEADER .wot-view-opt.is-on i,
#MOB-HEADER .wot-view-opt.is-on span,
#MOB-HEADER .wot-mode-opt.is-on i,
#MOB-HEADER .wot-mode-opt.is-on span{
  color:#fff !important;
}



/* v12.6.37 GTA RADAR thumbnail */
section.WOT .wot-view-switch{ display:none !important; }
#MOB-HEADER .wot-view-switch,
#MOB-HEADER .mob-hdr-tog-right{ display:none !important; }

section.WOT .wot-radar{
  position:absolute; top:14px; right:14px;
  width:78px; height:78px;
  z-index:6;
  padding:0; border:none; background:transparent;
  cursor:pointer;
  filter:drop-shadow(0 6px 14px rgba(0,0,0,.45));
  transition:transform .18s ease, filter .18s ease;
}
section.WOT .wot-radar:hover{ transform:scale(1.06); filter:drop-shadow(0 8px 22px rgba(0,0,0,.55)); }
section.WOT .wot-radar:active{ transform:scale(0.97); }

section.WOT .wot-radar-ring{
  position:absolute; inset:-3px;
  border-radius:50%;
  background:conic-gradient(from 0deg, #1A56FF 0%, #1A56FF 45%, #E8201A 50%, #E8201A 95%, #1A56FF 100%);
  opacity:.85;
  z-index:0;
  filter:blur(.4px);
}
section.WOT .wot-radar:hover .wot-radar-ring{ animation:wot-radar-spin 6s linear infinite; }
@keyframes wot-radar-spin{ to{ transform:rotate(360deg); } }

section.WOT .wot-radar-bg{
  position:absolute; inset:3px;
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 60%, rgba(255,255,255,.08) 0%, transparent 60%),
    url("https://a.basemaps.cartocdn.com/dark_all/12/2018/1336.png") center/cover,
    #1a1a22;
  box-shadow:inset 0 0 12px rgba(0,0,0,.6), inset 0 0 0 2px rgba(0,0,0,.7);
  overflow:hidden;
}
section.WOT.wot-light .wot-radar-bg{
  background:
    radial-gradient(circle at 50% 60%, rgba(0,0,0,.06) 0%, transparent 60%),
    url("https://a.basemaps.cartocdn.com/light_all/12/2018/1336.png") center/cover,
    #efefef;
  box-shadow:inset 0 0 12px rgba(0,0,0,.15), inset 0 0 0 2px rgba(255,255,255,.6);
}

section.WOT .wot-radar-me{
  position:absolute; left:50%; top:50%;
  width:8px; height:8px; margin:-4px 0 0 -4px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 2px rgba(232,32,26,.85), 0 0 10px rgba(232,32,26,.6);
  z-index:3;
  animation:wot-radar-pulse 1.6s ease-in-out infinite;
}
@keyframes wot-radar-pulse{
  0%,100%{ transform:scale(1); }
  50%   { transform:scale(1.18); }
}

section.WOT .wot-radar-pin{
  position:absolute; width:7px; height:7px;
  border-radius:50%; z-index:2;
  box-shadow:0 0 0 1px rgba(0,0,0,.6);
}
section.WOT .wot-radar-pin-1{ top:30%; left:40%; background:#FF6B00; }
section.WOT .wot-radar-pin-2{ top:42%; left:62%; background:#7C3AED; }
section.WOT .wot-radar-pin-3{ top:58%; left:35%; background:#2DB54B; }
section.WOT .wot-radar-pin-4{ top:68%; left:55%; background:#E8201A; }
section.WOT .wot-radar-pin-5{ top:38%; left:25%; background:#1A56FF; }

section.WOT .wot-radar-n{
  position:absolute; top:6px; right:8px; z-index:4;
  font-size:.5rem; font-weight:900; letter-spacing:.04em;
  color:#fff;
  text-shadow:0 1px 2px rgba(0,0,0,.85);
}
section.WOT.wot-light .wot-radar-n{ color:#0c0c0e; text-shadow:0 1px 0 rgba(255,255,255,.8); }

section.WOT.wot-view-map .wot-radar{ display:none !important; }

/* Back-to-grid pill */
section.WOT .wot-map-back{
  position:absolute; top:14px; left:14px; z-index:6;
  display:none; align-items:center; gap:6px;
  padding:6px 12px 6px 10px;
  background:rgba(0,0,0,.7);
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  color:#fff; font-size:.55rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  cursor:pointer;
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  box-shadow:0 4px 14px rgba(0,0,0,.35);
}
section.WOT.wot-view-map .wot-map-back{ display:inline-flex; }
section.WOT.wot-light .wot-map-back{
  background:#fff; color:#0c0c0e; border-color:rgba(0,0,0,.08);
}
section.WOT .wot-map-back i{ font-size:.55rem; }

/* GPS button on map view */
section.WOT .wot-gps-btn{
  position:absolute; bottom:90px; right:14px; z-index:7;
  width:42px; height:42px; border-radius:50%;
  background:#fff; color:#1A56FF;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 6px 18px rgba(0,0,0,.35);
  cursor:pointer;
  display:none; align-items:center; justify-content:center;
  font-size:1rem;
}
section.WOT.wot-view-map .wot-gps-btn{ display:flex; }
section.WOT .wot-gps-btn.loading{ animation:wot-radar-pulse 1s ease infinite; }
section.WOT .wot-gps-btn.on{ background:#1A56FF; color:#fff; }

/* GPS marker on map - pulsing blue dot */
.mcr-gps-pulse{ pointer-events:none !important; }
.mcr-gps-pulse .gps-dot{
  position:absolute; left:50%; top:50%; width:14px; height:14px; margin:-7px 0 0 -7px;
  background:#1A56FF; border:2px solid #fff; border-radius:50%;
  box-shadow:0 0 8px rgba(26,86,255,.6);
}
.mcr-gps-pulse .gps-pulse{
  position:absolute; left:50%; top:50%; width:14px; height:14px; margin:-7px 0 0 -7px;
  background:rgba(26,86,255,.5);
  border-radius:50%;
  animation:gps-ping 1.6s ease-out infinite;
}
@keyframes gps-ping{
  0%{ transform:scale(1); opacity:.6; }
  100%{ transform:scale(3); opacity:0; }
}



/* v12.6.38 SQUARE map thumbnail (override v12.6.37 round radar) */
section.WOT .wot-radar{
  width:96px !important; height:74px !important;
  filter:drop-shadow(0 4px 12px rgba(0,0,0,.45)) !important;
}
/* Kill the round ring + N indicator + player marker */
section.WOT .wot-radar-ring,
section.WOT .wot-radar-n,
section.WOT .wot-radar-me{ display:none !important; }

/* Square card with rounded corners */
section.WOT .wot-radar-bg{
  position:absolute !important;
  inset:0 !important;
  border-radius:10px !important;
  background:
    url("https://a.basemaps.cartocdn.com/dark_all/12/2018/1336.png") center/cover,
    #1a1a22 !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.10),
    0 0 0 1px rgba(0,0,0,.5) !important;
  overflow:hidden !important;
}
section.WOT.wot-light .wot-radar-bg{
  background:
    url("https://a.basemaps.cartocdn.com/light_all/12/2018/1336.png") center/cover,
    #efefef !important;
  box-shadow:
    inset 0 0 0 1px rgba(0,0,0,.06),
    0 0 0 1px rgba(0,0,0,.04) !important;
}

/* Pins: scale up slightly + better positions for square aspect */
section.WOT .wot-radar-pin{
  width:9px !important; height:9px !important;
  box-shadow:0 0 0 1.5px rgba(0,0,0,.75), 0 0 6px rgba(0,0,0,.4) !important;
}
section.WOT .wot-radar-pin-1{ top:25%; left:38%; background:#FF6B00 !important; }
section.WOT .wot-radar-pin-2{ top:35%; left:60%; background:#7C3AED !important; }
section.WOT .wot-radar-pin-3{ top:60%; left:30%; background:#2DB54B !important; }
section.WOT .wot-radar-pin-4{ top:65%; left:55%; background:#E8201A !important; }
section.WOT .wot-radar-pin-5{ top:42%; left:75%; background:#1A56FF !important; }

section.WOT .wot-radar:hover{ transform:translateY(-1px) scale(1.04) !important; }
section.WOT .wot-radar:hover .wot-radar-bg{
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.18),
    0 0 0 1px rgba(0,0,0,.5) !important;
}



/* v12.6.39 micro-map cosmetics inside the thumbnail */
section.WOT .wot-radar .wot-radar-mini{ filter:saturate(1.1) contrast(1.05); }
section.WOT .wot-radar .wot-radar-mini .leaflet-control-attribution{ display:none !important; }
section.WOT .wot-radar .leaflet-tile-pane{ filter:none; }
section.WOT .wot-radar .leaflet-pane{ pointer-events:none !important; }



/* v12.6.40 Mobile-only nav-docked map radar with white outline + shadow */

/* Desktop: hide the radar entirely (Grid/Map switch lives inside WOT instead) */
@media(min-width:901px){
  section.WOT .wot-radar,
  #MOB-HEADER .wot-radar{ display:none !important; }
  /* Keep the original Grid/Map switch visible on desktop */
  section.WOT .wot-view-switch{ display:inline-flex !important; }
}

/* Mobile: radar lives in the nav header right slot */
@media(max-width:900px){
  section.WOT .wot-view-switch{ display:none !important; }

  #MOB-HEADER .wot-radar{
    position:relative !important;
    top:auto !important; right:auto !important;
    width:48px !important; height:36px !important;
    padding:0 !important; margin:0 !important;
    border:1.5px solid #ffffff !important;
    background:#1a1a22 !important;
    border-radius:8px !important;
    overflow:hidden !important;
    box-shadow:
      0 2px 6px rgba(0,0,0,.35),
      0 6px 18px rgba(0,0,0,.45) !important;
    cursor:pointer !important;
    filter:none !important;
    transition:transform .15s ease, box-shadow .15s ease !important;
  }
  #MOB-HEADER .wot-radar:hover,
  #MOB-HEADER .wot-radar:active{
    transform:scale(1.04) !important;
    box-shadow:
      0 3px 8px rgba(0,0,0,.45),
      0 8px 22px rgba(0,0,0,.55) !important;
  }
  #MOB-HEADER .wot-radar .wot-radar-bg{
    position:absolute !important;
    inset:0 !important;
    border-radius:6px !important;
    background:#1a1a22 !important;
    box-shadow:none !important;
    overflow:hidden !important;
  }
  #MOB-HEADER .wot-radar .wot-radar-mini{
    position:absolute !important; inset:0 !important;
    border-radius:6px !important; overflow:hidden !important;
  }
  #MOB-HEADER .wot-radar .leaflet-control-attribution{ display:none !important; }
  #MOB-HEADER .wot-radar .leaflet-pane{ pointer-events:none !important; }

  /* Hide all the decorative round-radar bits (they were for the old design) */
  #MOB-HEADER .wot-radar .wot-radar-ring,
  #MOB-HEADER .wot-radar .wot-radar-n,
  #MOB-HEADER .wot-radar .wot-radar-me,
  #MOB-HEADER .wot-radar .wot-radar-pin{ display:none !important; }

  /* Dock layout in header: keep logo center, radar right */
  #MOB-HEADER.mob-hdr-with-radar{ display:flex; align-items:center; padding:0 10px; gap:6px; }
  #MOB-HEADER.mob-hdr-with-radar .mob-hdr-act.mob-hdr-menu{ order:0; }
  #MOB-HEADER.mob-hdr-with-radar .mob-hdr-tog-left{ order:1; }
  #MOB-HEADER.mob-hdr-with-radar .mob-hdr-logo{ order:2; flex:1 1 auto; display:flex; justify-content:center; }
  #MOB-HEADER.mob-hdr-with-radar .mob-hdr-tog-right{ order:3; }
  #MOB-HEADER.mob-hdr-with-radar .mob-hdr-act:not(.mob-hdr-menu){ order:4; }
}






/* v12.6.43 VERY SLOW ticker + kill cat-button dot before text */
html body section.WOT .wot-ticker-track,
html body section#WOT .wot-ticker-track{
  animation-duration:300s !important;
}
@media (max-width: 900px){
  html body section.WOT .wot-ticker-track,
  html body section#WOT .wot-ticker-track{ animation-duration:300s !important; }
}

/* Kill the colored dot before category-filter button text */
html body section.WOT .wot-flt .wot-flt-dot,
html body section.WOT .wot-flt::before,
html body section.WOT .wot-flt::after{
  display:none !important;
  content:none !important;
}






/* v12.6.45 ticker x0.5 (3000s -> 1500s) */
html body section.WOT .wot-ticker-track,
html body section#WOT .wot-ticker-track{
  animation-duration:1500s !important;
}
@media (max-width: 900px){
  html body section.WOT .wot-ticker-track,
  html body section#WOT .wot-ticker-track{ animation-duration:1500s !important; }
}



/* v12.6.46 MOBILE: WOT box edge-to-edge (no L/R margins, full bleed) */
@media (max-width:900px){
  html body main.CENTRE section.WOT,
  html body section.WOT,
  html body section#WOT{
    margin-left:calc(-50vw + 50%) !important;
    margin-right:calc(-50vw + 50%) !important;
    width:100vw !important;
    max-width:100vw !important;
    padding-left:0 !important;
    padding-right:0 !important;
    border-radius:0 !important;
  }
  /* Inner timeline grid + ticker still need a touch of side breathing room */
  html body section.WOT .wot-tg{
    padding-left:0 !important;
    padding-right:0 !important;
  }
  html body section.WOT .wot-tg-ev-row{
    padding-left:6px !important;
    padding-right:8px !important;
  }
  html body section.WOT .wot-ticker,
  html body section.WOT .wot-week-strip,
  html body section.WOT .wot-flt-wrap{
    margin-left:8px !important;
    margin-right:8px !important;
  }
}



/* v12.6.47 Hide LIVE badge + ticker treatment when below filterbar */
html body section.WOT .wot-ticker-live{ display:none !important; }
@media (max-width:900px){
  html body section.WOT .wot-ticker{
    margin-top:8px !important;
    margin-bottom:6px !important;
  }
}



/* v12.6.48 Radar inside .mob-hdr-actions next to the search button */
@media(max-width:900px){
  #MOB-HEADER .mob-hdr-actions{
    display:flex !important; align-items:center !important; gap:8px !important;
  }
  #MOB-HEADER .mob-hdr-actions .wot-radar.wot-radar-nav{
    position:relative !important;
    top:auto !important; right:auto !important;
    width:48px !important; height:36px !important;
    padding:0 !important; margin:0 !important;
    border:1.5px solid #ffffff !important;
    background:#1a1a22 !important;
    border-radius:8px !important;
    overflow:hidden !important;
    box-shadow:
      0 2px 6px rgba(0,0,0,.35),
      0 6px 18px rgba(0,0,0,.45) !important;
    cursor:pointer !important;
    flex:0 0 auto !important;
  }
  #MOB-HEADER .mob-hdr-actions .wot-radar .wot-radar-bg{
    position:absolute !important; inset:0 !important;
    border-radius:6px !important;
    background:#1a1a22 !important;
    box-shadow:none !important; overflow:hidden !important;
  }
}



/* v12.6.50 thinner radar outline + tighter ticker margins */
@media(max-width:900px){
  /* Tighter ticker spacing */
  html body section.WOT .wot-ticker{
    margin-top:2px !important;
    margin-bottom:2px !important;
    padding-top:2px !important;
    padding-bottom:2px !important;
  }
  /* Thinner radar outline (was 1.5px, now 0.5px hairline) */
  #MOB-HEADER .mob-hdr-actions .wot-radar.wot-radar-nav{
    border:0.5px solid rgba(255,255,255,.85) !important;
    box-shadow:
      0 1px 3px rgba(0,0,0,.4),
      0 4px 12px rgba(0,0,0,.35) !important;
  }
}



/* v12.6.51 ticker starts ON-SCREEN (kill the 100vw left-padding empty gap) */
html body section.WOT .wot-ticker-track,
html body section#WOT .wot-ticker-track{
  padding-left:0 !important;
}



/* v12.6.55 Radar inline in WOT next to day strip + tight WOT spacing on mobile */
@media(max-width:900px){
  /* Row holding day strip + radar */
  html body section.WOT .wot-day-row{
    display:flex !important;
    align-items:stretch !important;
    gap:6px !important;
    margin:0 8px !important;
    padding:0 !important;
  }
  html body section.WOT .wot-day-row .wot-week-strip{
    flex:1 1 auto !important;
    margin:0 !important;
    padding:0 !important;
    min-width:0 !important;
  }
  html body section.WOT .wot-day-row .wot-radar.wot-radar-inline{
    flex:0 0 auto !important;
    width:54px !important;
    height:auto !important;        /* match day strip height */
    min-height:46px !important;
    padding:0 !important; margin:0 !important;
    border:0.5px solid rgba(255,255,255,.85) !important;
    background:#1a1a22 !important;
    border-radius:8px !important;
    overflow:hidden !important;
    box-shadow:0 1px 3px rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.35) !important;
    cursor:pointer !important;
    position:relative !important;
  }
  html body section.WOT.wot-light .wot-day-row .wot-radar.wot-radar-inline{
    border-color:rgba(0,0,0,.5) !important;
    background:#fff !important;
  }
  html body section.WOT .wot-day-row .wot-radar .wot-radar-bg{
    position:absolute !important; inset:0 !important;
    border-radius:6px !important; overflow:hidden !important;
    background:#1a1a22 !important;
  }
  /* Tight stack of WOT components under nav */
  html body section.WOT .wot-ticker{ margin:2px 8px !important; padding:2px 0 !important; }
  html body section.WOT .wot-day-row{ margin:4px 8px !important; }
  html body section.WOT .wot-week-strip{ padding:0 !important; gap:3px !important; }
  html body section.WOT .wot-filterbar{ margin:4px 8px !important; padding:0 !important; gap:5px !important; }
  html body section.WOT .wot-tg{ margin-top:4px !important; }

  /* Hide the empty mini-label spacer under nav since toggles are gone from there */
  html body section.WOT .wot-mini-label{ display:none !important; }
}



/* v12.6.56 hide leftover empty radar slots in nav */
#MOB-HEADER .mob-hdr-tog,
#MOB-HEADER .mob-hdr-tog-left,
#MOB-HEADER .mob-hdr-tog-right{ display:none !important; }
#MOB-HEADER:not(.mob-hdr-with-radar) .mob-hdr-with-radar{ display:none !important; }



/* v12.6.57 nav-docked Dark/Light switch styling (compact pill, beside search) */
@media(max-width:900px){
  #MOB-HEADER .mob-hdr-actions{ display:flex !important; align-items:center !important; gap:8px !important; }
  #MOB-HEADER .mob-hdr-actions .wot-mode-switch{
    display:inline-flex !important; align-items:center !important;
    gap:0 !important; padding:1px !important; height:24px !important;
    background:rgba(255,255,255,.06) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:999px !important; margin:0 !important;
  }
  #MOB-HEADER .mob-hdr-actions .wot-mode-opt{
    height:20px !important; min-height:20px !important; max-height:20px !important;
    padding:0 7px !important;
    font-size:.36rem !important; letter-spacing:.04em !important; gap:2px !important;
    background:transparent !important; color:rgba(255,255,255,.7) !important;
    border:none !important;
  }
  #MOB-HEADER .mob-hdr-actions .wot-mode-opt span{ font-size:.36rem !important; }
  #MOB-HEADER .mob-hdr-actions .wot-mode-opt i{ font-size:.4rem !important; color:inherit !important; }
  #MOB-HEADER .mob-hdr-actions .wot-mode-opt.is-on{
    background:rgba(255,255,255,.22) !important;
    color:#fff !important;
  }
  #MOB-HEADER .mob-hdr-actions .wot-mode-opt.is-on i,
  #MOB-HEADER .mob-hdr-actions .wot-mode-opt.is-on span{ color:#fff !important; }
}



/* v12.6.58 hid the empty search button in MOB-HEADER (icon font failed to load); */
/* v12.7.79 — search trigger now works, restored display. Font Awesome confirmed loading. */
@media(max-width:900px){
  #MOB-HEADER .mob-hdr-actions .mob-hdr-act{ display:flex !important; }
}



/* v12.6.59 inline radar must NOT be absolute (overrides earlier position:absolute) */
@media(max-width:900px){
  html body section.WOT .wot-radar.wot-radar-inline{
    position:relative !important;
    top:auto !important; right:auto !important; left:auto !important; bottom:auto !important;
    transform:none !important;
    z-index:auto !important;
    align-self:stretch !important;
  }
  /* Make sure the parent flex row is visible & sized */
  html body section.WOT .wot-day-row{
    width:auto !important;
    min-height:46px !important;
  }
}



/* v12.6.60 ALL radars on mobile go relative - kill any leftover absolute positioning */
@media(max-width:900px){
  html body section.WOT .wot-radar,
  html body section#WOT .wot-radar{
    position:relative !important;
    top:auto !important; right:auto !important; left:auto !important; bottom:auto !important;
    transform:none !important;
  }
  /* Day row flex with the radar must clamp width to container */
  html body section.WOT .wot-day-row{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    width:auto !important;
    max-width:100% !important;
    overflow:hidden !important;
  }
  html body section.WOT .wot-day-row .wot-week-strip{
    flex:1 1 0% !important;
    overflow-x:auto !important;
    min-width:0 !important;
    max-width:100% !important;
  }
}



/* v12.6.61 PAST hour row in WOT: ultra compact - thin sliver of recent past */
html body section.WOT .wot-tg-row.wot-past{
  min-height:0 !important;
  padding-top:0 !important; padding-bottom:0 !important;
  border-bottom:1px solid rgba(255,255,255,.04) !important;
}
html body section.WOT .wot-tg-row.wot-past .wot-ev-pill{
  height:18px !important;
  min-height:18px !important;
  max-height:18px !important;
  padding:2px 6px !important;
  border-radius:5px !important;
  opacity:.45 !important;
}
html body section.WOT .wot-tg-row.wot-past .wot-ev-pill .wot-ep-title{
  font-size:.55rem !important; line-height:1 !important;
}
html body section.WOT .wot-tg-row.wot-past .wot-ev-pill .wot-ep-sub,
html body section.WOT .wot-tg-row.wot-past .wot-ev-pill .wot-ep-add{
  display:none !important;
}
html body section.WOT .wot-tg-row.wot-past .wot-tg-time{
  font-size:.42rem !important;
  padding-top:2px !important; padding-bottom:2px !important;
}
html body section.WOT .wot-tg-row.wot-past .wot-tg-count{
  height:12px !important; font-size:.36rem !important; padding:0 4px !important;
  margin-top:1px !important;
}



/* v12.6.64 Smaller nav radar + center logo + dark-grey WOT bands */

@media(max-width:900px){
  /* Center logo even with toggles + radar in actions */
  #MOB-HEADER{
    display:flex !important;
    align-items:center !important;
    padding:0 8px !important;
    position:relative !important;
  }
  #MOB-HEADER .mob-hdr-logo{
    position:absolute !important;
    left:50% !important;
    top:50% !important;
    transform:translate(-50%,-50%) !important;
    margin:0 !important;
  }
  #MOB-HEADER .mob-hdr-actions{
    margin-left:auto !important;
    display:flex !important; align-items:center !important; gap:8px !important;
  }

  /* Mini map: 1/3 smaller (was 48x36 -> 32x24) */
  #MOB-HEADER .mob-hdr-actions .wot-radar.wot-radar-nav{
    position:relative !important;
    width:32px !important; height:24px !important;
    padding:0 !important; margin:0 !important;
    border:0.5px solid rgba(255,255,255,.85) !important;
    background:#1a1a22 !important;
    border-radius:6px !important;
    overflow:hidden !important;
    box-shadow:0 1px 3px rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.35) !important;
    cursor:pointer !important;
    flex:0 0 auto !important;
    opacity:0;
    pointer-events:none;
    transition:opacity .25s ease;
  }
  #MOB-HEADER .mob-hdr-actions .wot-radar.wot-radar-nav.wot-radar-visible{
    opacity:1; pointer-events:auto;
  }
  #MOB-HEADER .mob-hdr-actions .wot-radar .wot-radar-bg{
    position:absolute !important; inset:0 !important;
    border-radius:4px !important; overflow:hidden !important;
    background:#1a1a22 !important;
  }

  /* Very-dark-grey bands to break up the WOT box on mobile */
  html body section.WOT{ background:#0a0a0c !important; }
  html body section.WOT .wot-ticker{
    background:#16161c !important;
    border-top:1px solid rgba(255,255,255,.04) !important;
    border-bottom:1px solid rgba(255,255,255,.04) !important;
    margin:0 !important;
    padding:4px 8px !important;
  }
  html body section.WOT .wot-week-strip{
    background:#101015 !important;
    margin:0 !important;
    padding:4px 6px !important;
  }
  html body section.WOT .wot-filterbar{
    background:#16161c !important;
    border-top:1px solid rgba(255,255,255,.04) !important;
    margin:0 !important;
    padding:5px 8px !important;
  }
  html body section.WOT .wot-tg{
    background:#0c0c10 !important;
  }
}



/* v12.6.65 Square radar zoomed in + Dark/Light moved LEFT of logo */
@media(max-width:900px){
  /* Square mini map */
  #MOB-HEADER .mob-hdr-actions .wot-radar.wot-radar-nav{
    width:28px !important;
    height:28px !important;
  }
  /* Move .wot-mode-switch OUT of the right actions group, position absolutely on the left */
  #MOB-HEADER .wot-mode-switch{
    position:absolute !important;
    left:8px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:2 !important;
    margin:0 !important;
  }
  /* Make sure mode-switch styles still apply when positioned absolutely */
  #MOB-HEADER .wot-mode-switch.wot-mode-switch{
    display:inline-flex !important; align-items:center !important;
    padding:1px !important; height:24px !important;
    background:rgba(255,255,255,.06) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:999px !important;
  }
  /* Right actions only contains radar (search hidden in v12.6.58) */
  #MOB-HEADER .mob-hdr-actions{
    margin-left:auto !important;
    z-index:2 !important;
  }
}



/* v12.6.66 NUKE size of nav radar - force square hard */
@media(max-width:900px){
  html body #MOB-HEADER .mob-hdr-actions .wot-radar,
  html body #MOB-HEADER .mob-hdr-actions .wot-radar.wot-radar-nav,
  html body #MOB-HEADER .wot-radar.wot-radar-nav{
    width:32px !important;
    height:32px !important;
    min-width:32px !important;
    min-height:32px !important;
    max-width:32px !important;
    max-height:32px !important;
    aspect-ratio:1 / 1 !important;
    flex:0 0 32px !important;
  }
  html body #MOB-HEADER .wot-radar .wot-radar-bg,
  html body #MOB-HEADER .wot-radar .wot-radar-mini,
  html body #MOB-HEADER .wot-radar .leaflet-container{
    width:100% !important;
    height:100% !important;
    aspect-ratio:1 / 1 !important;
  }
}



/* v12.6.67 Nav radar shows OTHER view as preview - toggle */

/* Default: show the map preview, hide the grid SVG */
#MOB-HEADER .wot-radar .wot-radar-bg{ opacity:1; }
#MOB-HEADER .wot-radar .wot-radar-grid{
  position:absolute; inset:2px;
  width:calc(100% - 4px); height:calc(100% - 4px);
  display:block;
  opacity:0;
  background:#0a0a0c;
  border-radius:4px;
  transition:opacity .2s ease;
  pointer-events:none;
}
/* When WOT is in map view, show the grid preview instead */
#MOB-HEADER .wot-radar.show-grid .wot-radar-bg{ opacity:0; }
#MOB-HEADER .wot-radar.show-grid .wot-radar-grid{ opacity:1; }



/* v12.6.68 MAP VIEW: keep day/cat/ticker visible + GPS button + move zoom controls */
@media(max-width:900px){
  /* Keep WOT chrome visible while in map view */
  html body section.WOT.wot-view-map .wot-day-row,
  html body section.WOT.wot-view-map .wot-week-strip,
  html body section.WOT.wot-view-map .wot-ticker,
  html body section.WOT.wot-view-map .wot-filterbar{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    position:relative !important;
    z-index:5 !important;
  }
  /* Map view container size */
  html body section.WOT.wot-view-map .wot-mapview{
    display:block !important;
    height:60vh !important;
    min-height:340px !important;
    margin:6px 8px !important;
    border-radius:10px !important;
  }

  /* GPS button - always visible & well-positioned in map view */
  html body section.WOT.wot-view-map .wot-gps-btn,
  html body section.WOT .wot-gps-btn{
    display:flex !important;
    position:absolute !important;
    bottom:14px !important; right:14px !important;
    width:40px !important; height:40px !important;
    border-radius:50% !important;
    background:#fff !important; color:#1A56FF !important;
    border:1px solid rgba(0,0,0,.08) !important;
    box-shadow:0 6px 18px rgba(0,0,0,.45) !important;
    align-items:center !important; justify-content:center !important;
    z-index:8 !important;
    cursor:pointer !important;
  }
  html body section.WOT.wot-view-map .wot-gps-btn::before{
    content:"3c5";
    font-family:"Font Awesome 6 Free", "Font Awesome 5 Free", system-ui;
    font-weight:900;
    font-size:16px;
  }
  html body section.WOT.wot-view-map .wot-gps-btn i{ font-size:16px; }

  /* Move Leaflet zoom control to top-right so it doesn''t collide with Plan-your-night bottom tab */
  html body section.WOT .leaflet-bottom.leaflet-right{ display:none !important; }
  html body section.WOT .leaflet-control-zoom{
    position:absolute !important;
    top:10px !important;
    right:10px !important;
    z-index:8 !important;
  }
  html body section.WOT .leaflet-bar a{
    width:34px !important; height:34px !important; line-height:34px !important;
    background:rgba(0,0,0,.7) !important; color:#fff !important;
    border:1px solid rgba(255,255,255,.15) !important;
  }

  /* Map should not cover the day/cat chrome */
  html body section.WOT.wot-view-map{ display:flex !important; flex-direction:column !important; }
}



/* v12.6.69 LIGHT MODE: undo the dark-grey banding so day strip + ticker + filters look clean white */
@media(max-width:900px){
  html body section.WOT.wot-light{ background:#fafafa !important; }
  html body section.WOT.wot-light .wot-ticker{
    background:#ffffff !important;
    border-top:1px solid rgba(0,0,0,.05) !important;
    border-bottom:1px solid rgba(0,0,0,.05) !important;
  }
  html body section.WOT.wot-light .wot-week-strip{
    background:transparent !important;
  }
  html body section.WOT.wot-light .wot-filterbar{
    background:#ffffff !important;
    border-top:1px solid rgba(0,0,0,.05) !important;
  }
  html body section.WOT.wot-light .wot-tg{
    background:transparent !important;
  }
}



/* v12.6.70 hide the orange NOW fab + recolour Night plan FAB to black */
.wot-now-fab{ display:none !important; }

html body .plan-fab,
html body button.plan-fab,
html body #planFab{
  background:#0c0c0e !important;
  background-image:none !important;
  color:#ffffff !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 6px 18px rgba(0,0,0,.4), 0 1px 2px rgba(0,0,0,.3) !important;
}
html body .plan-fab .pf-count{
  background:#ffffff !important;
  color:#0c0c0e !important;
}



/* v12.6.76 Drawer mini-map + nuclear Night/NOW fixes */

/* Drawer mini-map preview */
#MCR-DRAWER .mcrd-radar{
  display:block;
  width:calc(100% - 32px);
  height:120px;
  margin:8px 16px 16px;
  padding:0;
  border:1px solid rgba(255,255,255,.08);
  background:#1a1a22;
  border-radius:10px;
  overflow:hidden;
  position:relative;
  cursor:pointer;
  box-shadow:0 4px 14px rgba(0,0,0,.3);
  transition:transform .15s ease, box-shadow .15s ease;
}
#MCR-DRAWER .mcrd-radar:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 22px rgba(0,0,0,.4);
}
#MCR-DRAWER .mcrd-radar:active{ transform:scale(.99); }
#MCR-DRAWER .mcrd-radar-bg{
  position:absolute; inset:0;
  border-radius:9px;
  background:#1a1a22;
  overflow:hidden;
}
#MCR-DRAWER .mcrd-radar-lbl{
  position:absolute; bottom:8px; left:12px;
  z-index:2;
  font-size:.55rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:#fff;
  text-shadow:0 1px 4px rgba(0,0,0,.7);
  pointer-events:none;
}
#MCR-DRAWER .mcrd-radar-mini{ pointer-events:none; }
#MCR-DRAWER .mcrd-radar-mini .leaflet-control-attribution{ display:none !important; }

/* NUCLEAR Night fab black + hide NOW orange — beat any later override */
html body button.plan-fab,
html body #planFab,
html body #planFab.plan-fab,
html body main button.plan-fab,
html body section.WOT button.plan-fab{
  background:#0c0c0e !important;
  background-image:none !important;
  color:#ffffff !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 6px 18px rgba(0,0,0,.45), 0 1px 2px rgba(0,0,0,.3) !important;
}
html body button.plan-fab .pf-count,
html body #planFab .pf-count{
  background:#ffffff !important;
  color:#0c0c0e !important;
}
html body .wot-now-fab,
html body button.wot-now-fab{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}



/* v12.6.77 plan tab starts ABOVE the bottom drawer peek (not behind it) */
@media(max-width:900px){
  html body .plan{
    bottom:70px !important; /* sit on top of MCR-DRAWER peek */
  }
  /* Plan FAB also lifts up so it doesn''t hide behind the drawer */
  html body .plan-fab,
  html body #planFab{
    bottom:calc(70px + 14px + var(--safe-bot, 0px)) !important;
  }
}



/* v12.6.80 Full working drawer map (rectangle, proper visuals) */

/* Strip leftover preview styles from v12.6.76 */
#MCR-DRAWER .mcrd-radar{ display:none !important; }

/* Full map container - rectangle, full width inside drawer */
#MCR-DRAWER .mcrd-fullmap{
  display:block;
  width:calc(100% - 32px);
  height:240px;
  margin:8px 16px 18px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  overflow:hidden;
  background:#0c0c0e;
  box-shadow:0 8px 24px rgba(0,0,0,.45), 0 1px 2px rgba(0,0,0,.3);
  position:relative;
}
#MCR-DRAWER .mcrd-fullmap-inner{
  position:absolute; inset:0;
  border-radius:13px;
  overflow:hidden;
}

/* Pin marker style (small, branded by category) */
.mcrd-pin{
  width:14px; height:14px; border-radius:50%;
  background:var(--c, #E8201A);
  border:2px solid #fff;
  box-shadow:0 0 0 1px rgba(0,0,0,.5), 0 2px 6px rgba(0,0,0,.45);
  transition:transform .15s;
}
.leaflet-marker-icon:hover .mcrd-pin{ transform:scale(1.2); }

/* Hide attribution to keep it clean inside drawer */
#MCR-DRAWER .mcrd-fullmap .leaflet-control-attribution{ display:none !important; }



/* v12.6.81 plan panel must stop AT TOP of MCR-DRAWER peek (no overlap) */
@media(max-width:900px){
  html body .plan{
    bottom:70px !important;
    max-height:calc(100vh - 70px) !important;
    z-index:65 !important; /* under drawer (900) */
  }
  /* plan handle peeks from bottom of panel which is now 70px above viewport bottom */
  html body .plan{
    transform:translateY(calc(100% - 58px)) !important;
  }
  html body.plan-open .plan{
    transform:translateY(0) !important;
  }
  /* night fab also lifted */
  html body .plan-fab,
  html body #planFab{
    bottom:calc(70px + 14px + var(--safe-bot, 0px)) !important;
  }
  /* the body padding adjustment when plan-open should account for new bottom */
  html body.plan-open{
    padding-bottom:calc(85vh + var(--safe-bot, 0px) - 70px) !important;
  }
}



/* v12.6.87 walk-there + cluster + happening-now */

/* Walk-there prominent button */
.mcrd-tk-walk-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  width:100%;
  padding:12px 16px;
  margin-top:8px;
  background:rgba(255,255,255,.08);
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  border-radius:12px;
  font-size:.7rem; font-weight:700; letter-spacing:.04em;
  cursor:pointer;
  transition:background .15s, transform .1s;
}
.mcrd-tk-walk-btn:hover{ background:rgba(255,255,255,.14); }
.mcrd-tk-walk-btn:active{ transform:scale(.98); }
.mcrd-tk-walk-btn i{ font-size:.85rem; }

/* Cluster styling */
.marker-cluster{
  background:rgba(232,32,26,.85) !important;
  border:2px solid rgba(255,255,255,.6) !important;
  color:#fff !important;
  font-weight:800 !important;
  box-shadow:0 4px 14px rgba(0,0,0,.35) !important;
}
.marker-cluster div{ background:transparent !important; color:#fff !important; }
.marker-cluster span{ font-weight:800 !important; }
.marker-cluster-small{ background-color:rgba(232,32,26,.85) !important; }
.marker-cluster-medium{ background-color:rgba(255,107,0,.9) !important; }
.marker-cluster-large{ background-color:rgba(124,58,237,.9) !important; }

/* Happening-now pulse on map pins */
.leaflet-marker-icon.happening-now{
  animation:wot-now-pulse 1.6s ease-in-out infinite;
  z-index:1000 !important;
}
@keyframes wot-now-pulse{
  0%,100%{ filter:drop-shadow(0 0 0 rgba(232,32,26,.0)); }
  50%{ filter:drop-shadow(0 0 12px rgba(232,32,26,.85)); }
}

/* Happening-now pulse on grid pills */
.wot-ev-pill.happening-now{
  animation:wot-pill-pulse 1.6s ease-in-out infinite;
  position:relative;
}
.wot-ev-pill.happening-now::after{
  content:'NOW'; position:absolute; top:-8px; right:-6px;
  background:#E8201A; color:#fff;
  font-size:.42rem; font-weight:900; letter-spacing:.06em;
  padding:2px 5px; border-radius:8px;
  box-shadow:0 2px 6px rgba(232,32,26,.5);
  z-index:5;
}
@keyframes wot-pill-pulse{
  0%,100%{ box-shadow:0 0 0 0 rgba(232,32,26,.0); }
  50%{ box-shadow:0 0 0 4px rgba(232,32,26,.18); }
}



/* v12.6.88 PREMIUM pins + map polish */



/* MAP TILES — premium polish: saturation + contrast + subtle warm filter */
section.WOT .leaflet-tile-pane{
  filter:saturate(1.2) contrast(1.05) brightness(1.02);
}
section.WOT.wot-light .leaflet-tile-pane{
  filter:saturate(1.1) contrast(1.05);
}

/* Subtle vignette overlay on the map for depth */
section.WOT .leaflet-container::after{
  content:''; position:absolute; inset:0;
  pointer-events:none;
  background:radial-gradient(ellipse at center, transparent 50%, rgba(0,0,0,.35) 100%);
  z-index:401;
}
section.WOT.wot-light .leaflet-container::after{
  background:radial-gradient(ellipse at center, transparent 60%, rgba(0,0,0,.12) 100%);
}








/* v12.7.70 IMPERFECT DOTS — organic blob shape, no rotation, slight per-marker variation
   (was diamond pins — user wanted hand-drawn dot feel) */
.leaflet-marker-icon .pin-marker{
  width:18px !important; height:18px !important;
  border-radius: 47% 53% 51% 49% / 49% 51% 47% 53% !important;
  transform:none !important;
  background:radial-gradient(circle at 32% 30%, color-mix(in srgb, var(--c, #E8201A) 88%, #fff) 0%, var(--c, #E8201A) 55%, color-mix(in srgb, var(--c, #E8201A) 72%, #000) 100%) !important;
  border:2px solid rgba(255,255,255,.92) !important;
  box-shadow:
    0 3px 8px rgba(0,0,0,.42),
    0 1px 2px rgba(0,0,0,.55),
    inset 0 1px 2px rgba(255,255,255,.5) !important;
  display:block !important;
  font-size:0 !important;
  color:transparent !important;
  text-indent:-9999px !important;
  cursor:pointer !important;
  transition:transform .18s ease, box-shadow .18s ease, border-radius .25s ease !important;
}
/* Per-marker subtle blob variation - hand-drawn feel */
.leaflet-marker-icon:nth-of-type(2n) .pin-marker{ border-radius: 53% 47% 49% 51% / 51% 49% 53% 47% !important; }
.leaflet-marker-icon:nth-of-type(3n) .pin-marker{ border-radius: 49% 51% 53% 47% / 47% 53% 49% 51% !important; }
.leaflet-marker-icon:nth-of-type(5n) .pin-marker{ border-radius: 51% 49% 47% 53% / 53% 47% 51% 49% !important; }
.leaflet-marker-icon:nth-of-type(7n) .pin-marker{ border-radius: 50% 48% 52% 50% / 48% 52% 50% 48% !important; }
.leaflet-marker-icon:nth-of-type(11n) .pin-marker{ border-radius: 48% 52% 50% 50% / 52% 50% 48% 50% !important; }
.leaflet-marker-icon:hover .pin-marker,
.leaflet-marker-icon:active .pin-marker{
  transform:scale(1.32) !important;
  border-radius:50% !important;
  box-shadow:
    0 6px 16px rgba(0,0,0,.5),
    0 2px 4px rgba(0,0,0,.65),
    0 0 0 2px rgba(255,255,255,1),
    inset 0 1px 2px rgba(255,255,255,.55) !important;
}
.leaflet-marker-icon .pin-marker.approx{ opacity:.55 !important; }

/* Happening-now soft pulse on dot */
.leaflet-marker-icon.happening-now .pin-marker{
  animation:wot-dot-pulse 1.8s ease-in-out infinite;
}
@keyframes wot-dot-pulse{
  0%,100%{ filter:drop-shadow(0 0 0 rgba(255,255,255,0)); }
  50%{ filter:drop-shadow(0 0 9px rgba(255,255,255,.9)); }
}

/* ──────────── v12.7.70 Pokemon-card popup (anchored to dot, mimics WOT drawer) ──────────── */
.mcr-pcard{
  position:fixed;
  z-index:9999;
  width:240px; max-width:calc(100vw - 24px);
  pointer-events:none; opacity:0;
  transform:translate(-50%, calc(-100% - 18px)) scale(.92);
  transform-origin:50% calc(100% + 12px);
  transition:opacity .18s ease, transform .22s cubic-bezier(.4,1.4,.5,1);
  filter:drop-shadow(0 14px 30px rgba(0,0,0,.5));
}
.mcr-pcard.open{ pointer-events:auto; opacity:1; transform:translate(-50%, calc(-100% - 18px)) scale(1); }
.mcr-pcard-inner{
  position:relative;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--ec,#E8201A) 22%, transparent) 0%, transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(0,0,0,.35)),
    #141418;
  border-radius:14px;
  border:1px solid color-mix(in srgb, var(--ec,#E8201A) 32%, rgba(255,255,255,.08));
  overflow:hidden;
  color:#fff;
}
.mcr-pcard-inner::before{
  content:''; position:absolute; top:-30px; right:-30px;
  width:140px; height:140px;
  background:radial-gradient(circle, color-mix(in srgb, var(--ec,#E8201A) 38%, transparent) 0%, transparent 70%);
  pointer-events:none; z-index:0;
}
.mcr-pcard-img{
  position:relative; height:84px; width:100%;
  background-size:cover; background-position:center;
  background-color:color-mix(in srgb, var(--ec,#E8201A) 18%, #1a1a1e);
  border-radius:12px 12px 0 0;
  z-index:1;
}
.mcr-pcard-img.empty{
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, color-mix(in srgb, var(--ec,#E8201A) 45%, #1a1a1e), color-mix(in srgb, var(--ec,#E8201A) 15%, #1a1a1e));
  color:#fff; font-size:32px; opacity:.92;
}
.mcr-pcard-img::after{
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg, transparent 50%, rgba(0,0,0,.55));
  pointer-events:none;
}
.mcr-pcard-x{
  position:absolute; top:6px; right:6px;
  width:24px; height:24px; border:0; border-radius:50%;
  background:rgba(0,0,0,.55); color:#fff;
  font-size:14px; line-height:1; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  z-index:3; backdrop-filter:blur(4px);
}
.mcr-pcard-x:hover{ background:rgba(0,0,0,.78); }
.mcr-pcard-body{
  position:relative; z-index:1;
  padding:10px 12px 12px;
  display:flex; flex-direction:column; gap:6px;
}
.mcr-pcard-cat{
  display:inline-flex; align-items:center; gap:6px;
  font-size:.55rem; font-weight:900; letter-spacing:.16em; text-transform:uppercase;
  color:var(--ec,#E8201A);
  align-self:flex-start;
}
.mcr-pcard-cat::before{
  content:''; width:6px; height:6px; border-radius:50%;
  background:var(--ec,#E8201A);
  box-shadow:0 0 8px var(--ec,#E8201A);
}
.mcr-pcard-title{
  font-family:'Inter Tight','Inter',sans-serif;
  font-size:.95rem; font-weight:900; line-height:1.18;
  letter-spacing:-.018em;
  color:#fff;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.mcr-pcard-meta{
  display:flex; gap:8px; flex-wrap:wrap;
  font-size:.62rem; font-weight:600;
  color:rgba(255,255,255,.72);
  font-variant-numeric:tabular-nums;
}
.mcr-pcard-meta-item{
  display:inline-flex; align-items:center; gap:4px;
}
.mcr-pcard-meta-item i{
  font-size:.7em; color:var(--ec,#E8201A); opacity:.9;
}
.mcr-pcard-acts{
  display:flex; gap:5px; margin-top:6px;
}
.mcr-pcard-acts a, .mcr-pcard-acts button{
  flex:1 1 0; min-width:0;
  display:inline-flex; align-items:center; justify-content:center; gap:4px;
  padding:8px 6px;
  border-radius:9px;
  border:0; font-family:inherit; cursor:pointer;
  font-size:.6rem; font-weight:800; letter-spacing:.02em;
  text-decoration:none;
  transition:transform .12s ease, background .15s ease, color .15s ease;
}
.mcr-pcard-acts a:active, .mcr-pcard-acts button:active{ transform:scale(.96); }
.mcr-pcard-acts .ppc-tix{
  background:var(--ec,#E8201A); color:#fff;
  box-shadow:0 4px 12px -4px color-mix(in srgb, var(--ec,#E8201A) 60%, transparent);
}
.mcr-pcard-acts .ppc-tix:hover{ filter:brightness(1.1); }
.mcr-pcard-acts .ppc-info{
  background:rgba(255,255,255,.09); color:#fff;
  border:1px solid rgba(255,255,255,.12);
}
.mcr-pcard-acts .ppc-info:hover{ background:rgba(255,255,255,.15); }
.mcr-pcard-acts .ppc-add{
  background:rgba(255,255,255,.09); color:#fff;
  border:1px solid rgba(255,255,255,.12);
}
.mcr-pcard-acts .ppc-add:hover{ background:rgba(255,255,255,.15); }
.mcr-pcard-acts .ppc-add.is-added{
  background:#10b981; color:#fff; border-color:transparent;
}
.mcr-pcard-acts i{ font-size:.85em; }
/* Triangle pointer down to the dot */
.mcr-pcard::after{
  content:'';
  position:absolute;
  left:50%; bottom:-7px;
  transform:translateX(-50%) rotate(45deg);
  width:14px; height:14px;
  background:#141418;
  border-right:1px solid color-mix(in srgb, var(--ec,#E8201A) 32%, rgba(255,255,255,.08));
  border-bottom:1px solid color-mix(in srgb, var(--ec,#E8201A) 32%, rgba(255,255,255,.08));
  z-index:0;
}
/* Mobile: scale a bit smaller */
@media(max-width:480px){
  .mcr-pcard{ width:220px; }
  .mcr-pcard-title{ font-size:.88rem; }
  .mcr-pcard-img{ height:74px; }
  .mcr-pcard-acts a, .mcr-pcard-acts button{ font-size:.56rem; padding:7px 5px; }
}



/* v12.6.93 Map full-bleed inside WOT box (fills available space) */
section.WOT.wot-view-map .wot-mapview,
html body section.WOT.wot-view-map .wot-mapview{
  height:auto !important;
  min-height:60vh !important;
  flex:1 1 auto !important;
}
section.WOT.wot-view-map{
  display:flex !important;
  flex-direction:column !important;
  min-height:80vh !important;
}
@media(max-width:900px){
  section.WOT.wot-view-map .wot-mapview,
  html body section.WOT.wot-view-map .wot-mapview{
    min-height:70vh !important;
    margin:6px 0 !important;
    border-radius:0 !important;
  }
  section.WOT.wot-view-map{ min-height:90vh !important; }
}
section.WOT.wot-view-map #mcrmap{
  height:100% !important;
  min-height:inherit !important;
}



/* v12.6.94 Desktop map: fill big - 80vh tall, dominate the viewport */
@media(min-width:901px){
  html body section.WOT.wot-view-map{
    min-height:90vh !important;
    display:flex !important;
    flex-direction:column !important;
  }
  html body section.WOT.wot-view-map .wot-mapview{
    height:80vh !important;
    min-height:80vh !important;
    flex:1 1 auto !important;
    margin:6px 0 !important;
    border-radius:0 !important;
  }
  html body section.WOT.wot-view-map #mcrmap{
    height:80vh !important;
    min-height:80vh !important;
  }
  /* Keep day-strip and filterbar visible above the map */
  html body section.WOT.wot-view-map .wot-week-strip,
  html body section.WOT.wot-view-map .wot-filterbar,
  html body section.WOT.wot-view-map .wot-ticker{
    flex-shrink:0 !important;
  }
}



/* v12.6.97 Bottom time slider on the map */
section.WOT.wot-view-map .wot-mapview{ position:relative !important; }
.wot-time-slider{
  position:absolute; left:50%; bottom:14px;
  transform:translateX(-50%);
  z-index:7;
  display:flex; flex-direction:column; align-items:stretch; gap:4px;
  width:min(560px, 90%);
  padding:10px 16px 8px;
  background:rgba(0,0,0,.78);
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  backdrop-filter:blur(14px) saturate(1.1);
  -webkit-backdrop-filter:blur(14px) saturate(1.1);
  box-shadow:0 8px 24px rgba(0,0,0,.5);
  color:#fff;
  font-family:inherit;
}
.wot-ts-label{
  font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  text-align:center;
  color:rgba(255,255,255,.85);
}
.wot-ts-range{
  -webkit-appearance:none; appearance:none;
  width:100%; height:4px;
  background:linear-gradient(to right, #1A56FF, #7C3AED, #E8201A, #FF6B00, #FFD60A);
  border-radius:999px; outline:none;
  cursor:pointer; padding:0;
}
.wot-ts-range::-webkit-slider-thumb{
  -webkit-appearance:none; appearance:none;
  width:18px; height:18px; border-radius:50%;
  background:#fff;
  border:2px solid rgba(0,0,0,.4);
  box-shadow:0 2px 6px rgba(0,0,0,.5);
  cursor:grab;
}
.wot-ts-range::-moz-range-thumb{
  width:18px; height:18px; border-radius:50%;
  background:#fff; border:2px solid rgba(0,0,0,.4);
  box-shadow:0 2px 6px rgba(0,0,0,.5); cursor:grab;
}
.wot-ts-ticks{
  display:flex; justify-content:space-between;
  font-size:.42rem; font-weight:700; letter-spacing:.04em;
  color:rgba(255,255,255,.5);
  padding:0 4px;
}
@media(max-width:900px){
  .wot-time-slider{ bottom:80px; width:calc(100% - 24px); }
}



/* v12.6.98 Custom Leaflet popup card */
.leaflet-popup.mcr-pop .leaflet-popup-content-wrapper{
  background:#0e0e14 !important;
  color:#fff !important;
  border-radius:14px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 12px 40px rgba(0,0,0,.6) !important;
  padding:0 !important;
  overflow:hidden !important;
}
.leaflet-popup.mcr-pop .leaflet-popup-content{
  margin:0 !important; padding:0 !important; width:240px !important;
}
.leaflet-popup.mcr-pop .leaflet-popup-tip{ background:#0e0e14 !important; }
.leaflet-popup.mcr-pop .leaflet-popup-close-button{
  color:rgba(255,255,255,.5) !important;
  font-size:16px !important;
  padding:8px !important;
  z-index:5 !important;
}
.mcr-pop-img{
  width:100%; height:120px;
  background-size:cover; background-position:center;
  background-color:#222;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.mcr-pop-body{ padding:10px 12px 12px; }
.mcr-pop-cat{
  display:inline-block;
  font-size:.42rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase;
  color:var(--c, #E8201A);
  margin-bottom:4px;
}
.mcr-pop-title{
  font-size:.78rem; font-weight:800; line-height:1.2;
  color:#fff;
  margin-bottom:4px;
}
.mcr-pop-meta{
  font-size:.55rem; font-weight:600;
  color:rgba(255,255,255,.6);
  margin-bottom:10px;
}
.mcr-pop-meta b{ color:#fff; font-weight:800; }
.mcr-pop-go{
  display:inline-block;
  padding:8px 12px;
  background:linear-gradient(135deg, #E8201A 0%, #FF6B00 100%);
  color:#fff;
  font-size:.55rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase;
  border-radius:8px;
  text-decoration:none;
}
.mcr-pop-go:hover{ filter:brightness(1.1); }



/* v12.7.1 MAP: tall, simple, obvious */
section.WOT.wot-view-map .wot-mapview,
section.WOT.map-on .wot-mapview,
html body section.WOT.wot-view-map .wot-mapview,
html body section.WOT.map-on .wot-mapview{
  display:block !important;
  height:78vh !important;
  min-height:78vh !important;
  max-height:78vh !important;
  margin:0 !important;
  border-radius:0 !important;
  position:relative !important;
}
section.WOT.wot-view-map #mcrmap,
section.WOT.map-on #mcrmap,
html body #mcrmap{
  width:100% !important;
  height:100% !important;
  min-height:78vh !important;
}
@media(max-width:900px){
  section.WOT.wot-view-map .wot-mapview,
  section.WOT.map-on .wot-mapview{
    height:75vh !important;
    min-height:75vh !important;
    max-height:75vh !important;
  }
  section.WOT.wot-view-map #mcrmap,
  section.WOT.map-on #mcrmap{ min-height:75vh !important; }
}

/* Time slider: bottom centred, prominent, always visible in map view */
section.WOT.wot-view-map .wot-time-slider,
section.WOT.map-on .wot-time-slider{
  display:flex !important;
  position:absolute !important;
  left:50% !important;
  bottom:16px !important;
  transform:translateX(-50%) !important;
  z-index:8 !important;
  width:min(560px, 92%) !important;
  background:rgba(0,0,0,.82) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  box-shadow:0 8px 28px rgba(0,0,0,.55) !important;
}
section.WOT.wot-view-map.wot-light .wot-time-slider{
  background:rgba(255,255,255,.95) !important;
  border-color:rgba(0,0,0,.08) !important;
  color:#0c0c0e !important;
}
section.WOT.wot-view-map.wot-light .wot-ts-label,
section.WOT.wot-view-map.wot-light .wot-ts-ticks span{ color:#0c0c0e !important; }

/* Count chip top-left of map: "X events from now" */
section.WOT.wot-view-map .wot-map-count,
section.WOT.map-on .wot-map-count{
  display:inline-flex !important;
  position:absolute !important;
  top:14px !important; left:14px !important;
  z-index:7 !important;
}

/* GPS button top-right of map (Leaflet.Locate output, plus our explicit positioning) */
.leaflet-control-locate{
  display:block !important;
}
.leaflet-control-locate a{
  background:rgba(0,0,0,.78) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.14) !important;
  width:36px !important; height:36px !important;
  line-height:36px !important;
  font-size:18px !important;
  border-radius:8px !important;
}
section.WOT.wot-light .leaflet-control-locate a{
  background:#fff !important;
  color:#1A56FF !important;
  border-color:rgba(0,0,0,.08) !important;
}



/* v12.7.2 Gamified map - urban/neon, adult discover vibe */

/* HUD chip top of map */
.wot-map-hud{
  position:absolute; top:14px; left:50%;
  transform:translateX(-50%);
  z-index:8;
  display:flex; align-items:center; gap:10px;
  padding:8px 14px;
  background:rgba(0,0,0,.78);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  font-size:.55rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase;
  color:rgba(255,255,255,.7);
  backdrop-filter:blur(14px) saturate(1.2);
  -webkit-backdrop-filter:blur(14px) saturate(1.2);
  box-shadow:0 6px 20px rgba(0,0,0,.5);
}
.wot-map-hud b{ color:#fff; font-weight:900; font-size:.7rem; padding-right:3px; }
.wot-map-hud .hud-sep{
  width:1px; height:14px;
  background:linear-gradient(to bottom, transparent, rgba(255,255,255,.18), transparent);
}
.wot-map-hud .hud-now{ color:#FF6B00; }
.wot-map-hud .hud-now b{ color:#FF6B00; }
.wot-map-hud .hud-dot{
  display:inline-block;
  width:8px; height:8px; border-radius:50%;
  background:#E8201A;
  margin-right:5px;
  box-shadow:0 0 8px rgba(232,32,26,.95);
  animation:hud-pulse 1.4s ease-in-out infinite;
}
@keyframes hud-pulse{
  0%,100%{ transform:scale(1); opacity:1; }
  50%{ transform:scale(1.3); opacity:.6; }
}
section.WOT.wot-light .wot-map-hud{
  background:rgba(255,255,255,.92); color:rgba(0,0,0,.55);
  border-color:rgba(0,0,0,.06);
}
section.WOT.wot-light .wot-map-hud b{ color:#0c0c0e; }

/* PROXIMITY: events within 1km get a stronger pulsing aura */
.leaflet-marker-icon.mcr-near .pin-marker{
  box-shadow:
    0 4px 12px rgba(0,0,0,.45),
    0 1px 3px rgba(0,0,0,.6),
    inset 0 1px 2px rgba(255,255,255,.45),
    0 0 16px var(--c, #1A56FF) !important;
  animation:mcr-near-pulse 2.6s ease-in-out infinite;
}
@keyframes mcr-near-pulse{
  0%,100%{ filter:brightness(1); }
  50%{ filter:brightness(1.35) saturate(1.2); }
}

/* SAVED: gold corner tick + warm aura */
.leaflet-marker-icon.mcr-saved .pin-marker{
  box-shadow:
    0 4px 12px rgba(255,193,7,.45),
    0 0 18px rgba(255,193,7,.55),
    inset 0 1px 2px rgba(255,255,255,.45) !important;
}
.leaflet-marker-icon.mcr-saved .pin-marker::after{
  content:'\2713';
  position:absolute; top:-6px; right:-6px;
  width:14px; height:14px; line-height:14px;
  background:#FFC107; color:#0c0c0e;
  border:2px solid #fff;
  border-radius:50%;
  font-size:9px; font-weight:900;
  text-align:center;
  box-shadow:0 2px 6px rgba(0,0,0,.5);
  z-index:5;
  transform:rotate(-45deg); /* counter-rotate against the diamond */
}

/* HAPPENING NOW: red urgent pulse, brighter than proximity */
.leaflet-marker-icon.mcr-now .pin-marker{
  animation:mcr-now-pulse 1.2s ease-in-out infinite;
}
@keyframes mcr-now-pulse{
  0%,100%{
    filter:drop-shadow(0 0 0 rgba(232,32,26,0)) brightness(1);
    transform:rotate(45deg) scale(1);
  }
  50%{
    filter:drop-shadow(0 0 14px rgba(232,32,26,.95)) brightness(1.25);
    transform:rotate(45deg) scale(1.12);
  }
}

/* TAP RIPPLE: satisfying ring on click */
.leaflet-marker-icon .pin-marker{ position:relative; }
.leaflet-marker-icon:active .pin-marker::before{
  content:''; position:absolute; inset:-8px;
  border:2px solid currentColor;
  border-radius:6px;
  animation:mcr-tap-ripple .5s ease-out forwards;
  pointer-events:none;
}
@keyframes mcr-tap-ripple{
  0%{ opacity:.7; transform:rotate(0deg) scale(1); }
  100%{ opacity:0; transform:rotate(0deg) scale(2.2); }
}

/* Idle: subtle bob on event diamonds */
.leaflet-marker-icon .pin-marker{
  animation:mcr-idle-bob 4s ease-in-out infinite;
}
@keyframes mcr-idle-bob{
  0%,100%{ transform:rotate(45deg) translateY(0); }
  50%{ transform:rotate(45deg) translateY(-2px); }
}
/* Override on hover/active: stop bob */
.leaflet-marker-icon:hover .pin-marker,
.leaflet-marker-icon.mcr-now .pin-marker{
  animation:mcr-now-pulse 1.2s ease-in-out infinite;
}



/* v12.7.7 keep city switcher hidden (not nav-rebuild) */
#MCR-DRAWER .dotcity-switcher,
.dotcity-suggest{ display:none !important; }



/* v12.7.9 Mobile nav layout: mode-switch left, logo center, radar right */
@media(max-width:900px){
  #MOB-HEADER.mcr-nav-built{
    display:flex !important;
    align-items:center !important;
    padding:0 10px !important;
    position:relative !important;
    height:56px !important;
  }
  #MOB-HEADER.mcr-nav-built .mcr-nav-left{
    flex:0 0 auto !important;
    z-index:2;
    order:1;
  }
  #MOB-HEADER.mcr-nav-built .mob-hdr-logo{
    position:absolute !important;
    left:50% !important; top:50% !important;
    transform:translate(-50%,-50%) !important;
    margin:0 !important;
    z-index:1;
    order:2;
  }
  #MOB-HEADER.mcr-nav-built .mob-hdr-actions{
    margin-left:auto !important;
    z-index:2;
    order:3;
    display:flex !important;
    align-items:center !important;
  }
  #MOB-HEADER.mcr-nav-built .wot-radar.wot-radar-nav{
    display:block !important;
    width:42px !important; height:32px !important;
    border:1.5px solid rgba(255,255,255,.85) !important;
    background:#1a1a22 !important;
    border-radius:7px !important;
    overflow:hidden !important;
    box-shadow:0 2px 6px rgba(0,0,0,.35), 0 6px 16px rgba(0,0,0,.45) !important;
    cursor:pointer !important;
    position:relative !important;
    padding:0 !important;
    flex:0 0 auto !important;
  }
  #MOB-HEADER.mcr-nav-built .wot-radar .wot-radar-bg{
    position:absolute !important; inset:0 !important;
    border-radius:5px !important; overflow:hidden !important;
    background:#1a1a22 !important;
  }
}



/* v12.7.10 stop hiding past hours on mobile - show full day always */
@media(max-width:900px){
  /* Disable night-mode hide of past rows */
  html body section.WOT .wot-night-mode .wot-tg-row.wot-past,
  html body section.WOT .wot-night-mode .wot-tg-row.wot-near-past{
    display:flex !important;
  }
  /* Past rows readable - undo the v12.6.61 ultra-compact heights */
  html body section.WOT .wot-tg-row.wot-past{
    min-height:auto !important;
    padding-top:initial !important; padding-bottom:initial !important;
    border-bottom:1px solid rgba(255,255,255,.06) !important;
  }
  html body section.WOT .wot-tg-row.wot-past .wot-ev-pill{
    height:auto !important; min-height:auto !important; max-height:none !important;
    padding:5px 8px 5px 7px !important;
    opacity:.5 !important;
  }
  html body section.WOT .wot-tg-row.wot-past .wot-ev-pill .wot-ep-sub{ display:block !important; }
  html body section.WOT .wot-tg-row.wot-past .wot-ev-pill .wot-ep-add{ display:flex !important; }
}



/* v12.7.14 hide any leftover cluster bubbles */
.marker-cluster, .leaflet-marker-icon.marker-cluster{ display:none !important; }


/* v12.7.49 event single header fixes - force white on all hero text (CENTRE.white-bg was making title/breadcrumb dark) */
body.single-mcr_event .CENTRE.white-bg .mcrev-hero,
body.single-mcr_event .CENTRE.white-bg .mcrev-hero *,
body.single-mcr_event .mcrev-hero,
body.single-mcr_event .mcrev-hero *{ color:#fff !important; }
body.single-mcr_event .mcrev-hero h1,
body.single-mcr_event .mcrev-hero .mcrev-h1{ text-shadow:0 2px 8px rgba(0,0,0,.7); }
body.single-mcr_event .mcrev-hero a{ color:#fff !important; }
body.single-mcr_event .mcrev-hero .mcrev-bc-sep{ color:rgba(255,255,255,.5) !important; }

/* v12.7.59 — kill white logo placeholder flash on mobile (alt text / broken-img frame was rendering as a grey square before bee.png decoded) */
.mob-hdr-logo, .mob-hdr-logo img{ background:transparent !important; }
.mob-hdr-logo img{ background-color:transparent !important; color:transparent !important; }
.mob-hdr-logo img:not([src]), .mob-hdr-logo img[src=""]{ visibility:hidden; }

/* v12.7.59 — In-map event card (self-contained, fires on dot tap; no dependency on openSheet/wotShowPopup) */
#mcrmap .mcr-map-card{
  position:absolute; left:50%; bottom:8px; z-index:1100;
  width:calc(100% - 16px); max-width:560px;
  background:#0e0e12; color:#fff; border-radius:14px;
  box-shadow:0 18px 40px rgba(0,0,0,.55);
  display:grid; grid-template-columns:90px 1fr; gap:10px; padding:10px 12px 12px;
  border-left:4px solid var(--ec,#E8201A);
  opacity:0; transform:translateX(-50%) translateY(10px); transition:opacity .18s, transform .18s;
}
#mcrmap .mcr-map-card.open{ opacity:1; transform:translateX(-50%) translateY(0); }
#mcrmap .mmc-x{
  position:absolute; top:6px; right:8px; width:28px; height:28px; border:0;
  background:rgba(255,255,255,.1); color:#fff; font-size:18px; line-height:1;
  border-radius:50%; cursor:pointer; padding:0; z-index:2;
}
#mcrmap .mmc-x:hover{ background:rgba(255,255,255,.18); }
#mcrmap .mmc-img{ width:90px; height:90px; border-radius:10px; background:#1a1a22 center/cover no-repeat; align-self:start; }
#mcrmap .mmc-img-empty{ background:linear-gradient(135deg,#222,#11111a); }
#mcrmap .mmc-body{ min-width:0; padding-right:24px; display:flex; flex-direction:column; gap:5px; }
#mcrmap .mmc-badge{ align-self:flex-start; color:#fff; font-size:9px; font-weight:800; letter-spacing:.08em; padding:3px 7px; border-radius:4px; }
#mcrmap .mmc-title{ font-size:14px; font-weight:900; line-height:1.2; color:#fff; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
#mcrmap .mmc-meta{ display:flex; flex-wrap:wrap; gap:4px 10px; font-size:11px; color:rgba(255,255,255,.6); }
#mcrmap .mmc-meta i{ font-size:9px; opacity:.8; margin-right:2px; }
#mcrmap .mmc-price{ font-weight:800; color:#fff; }
#mcrmap .mmc-actions{ display:flex; gap:6px; flex-wrap:wrap; margin-top:4px; }
#mcrmap .mmc-btn{
  font-size:11px; font-weight:800; letter-spacing:.04em; text-transform:uppercase;
  padding:7px 11px; border-radius:999px; text-decoration:none; white-space:nowrap;
  border:0; cursor:pointer;
}
#mcrmap .mmc-tix{ background:#E8201A; color:#fff; }
#mcrmap .mmc-info{ background:rgba(255,255,255,.1); color:#fff; }
#mcrmap .mmc-dir{ background:rgba(255,255,255,.06); color:rgba(255,255,255,.85); border:1px solid rgba(255,255,255,.16); }
#mcrmap .mmc-tix:hover{ filter:brightness(1.1); }
#mcrmap .mmc-info:hover, #mcrmap .mmc-dir:hover{ background:rgba(255,255,255,.15); }
@media(max-width:480px){
  #mcrmap .mcr-map-card{ grid-template-columns:70px 1fr; padding:8px 10px 10px; gap:8px; }
  #mcrmap .mmc-img{ width:70px; height:70px; }
  #mcrmap .mmc-title{ font-size:13px; }
  #mcrmap .mmc-btn{ font-size:10px; padding:6px 10px; }
}

/* v12.7.58 — Light-mode overrides for WOT header strip + day row (was reading dark on dark when Light selected on mobile) */
.WOT.wot-light .wot-mini-label,
.WOT.wot-light .wot-week-strip,
.WOT.wot-light .wot-filterbar{ background:#ffffff !important; color:#0c0c0e !important; }
.WOT.wot-light .wot-week-strip .wot-wday-num,
.WOT.wot-light .wot-week-strip .wot-wday-dn{ color:#0c0c0e !important; }
.WOT.wot-light .wot-week-strip .wot-wday:not(.active){ background:#fff !important; border:1px solid rgba(0,0,0,.1) !important; }
.WOT.wot-light .wot-mini-label,
.WOT.wot-light .wot-mini-tonight,
.WOT.wot-light .wot-mini-live{ color:#0c0c0e !important; }
section.WOT.wot-light{ background:#ffffff !important; }

/* v12.7.58 — Book All sequence overlay (each stop is a big tap-target; popup-blocker safe; affiliate-wrapped) */
.bs-wrap{ position:fixed; inset:0; z-index:10000; visibility:hidden; pointer-events:none; }
.bs-wrap.open{ visibility:visible; pointer-events:auto; }
.bs-back{ position:absolute; inset:0; background:rgba(0,0,0,.6); opacity:0; transition:opacity .22s; }
.bs-wrap.open .bs-back{ opacity:1; }
.bs-card{
  position:absolute; left:0; right:0; bottom:0; background:#0e0e12; color:#fff;
  border-radius:18px 18px 0 0; box-shadow:0 -10px 40px rgba(0,0,0,.5);
  padding:18px 18px 22px; transform:translateY(100%); transition:transform .25s ease;
  max-width:560px; margin:0 auto; max-height:88vh; overflow-y:auto;
}
.bs-wrap.open .bs-card{ transform:translateY(0); }
.bs-x{ position:absolute; top:10px; right:10px; width:34px; height:34px; border:0; border-radius:50%; background:rgba(255,255,255,.08); color:#fff; font-size:22px; line-height:1; cursor:pointer; padding:0; }
.bs-x:hover{ background:rgba(255,255,255,.16); }
.bs-header{ padding:4px 0 14px; border-bottom:1px solid rgba(255,255,255,.08); margin-bottom:14px; }
.bs-eyebrow{ font-size:10px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; color:#E8201A; margin-bottom:4px; }
.bs-title{ font-size:20px; font-weight:900; line-height:1.2; margin-bottom:4px; }
.bs-sub{ font-size:13px; color:rgba(255,255,255,.55); }
.bs-stops{ display:flex; flex-direction:column; gap:10px; margin-bottom:16px; }
.bs-stop{
  display:grid; grid-template-columns:28px 60px 1fr auto; gap:10px; align-items:center;
  padding:10px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.06);
  border-radius:12px; transition:background .18s, border-color .18s;
}
.bs-stop:hover{ background:rgba(255,255,255,.06); }
.bs-stop.is-booked{ background:rgba(45,181,75,.08); border-color:rgba(45,181,75,.22); }
.bs-stop-num{ width:28px; height:28px; border-radius:50%; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; font-weight:900; font-size:13px; }
.bs-stop.is-booked .bs-stop-num{ background:#2DB54B; color:#fff; }
.bs-stop-img{ width:60px; height:60px; border-radius:8px; background:#1a1a22 center/cover no-repeat; }
.bs-stop-body{ min-width:0; }
.bs-stop-cat{ font-size:10px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; margin-bottom:2px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.bs-stop-title{ font-size:14px; font-weight:800; line-height:1.2; margin-bottom:2px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.bs-stop-meta{ font-size:12px; color:rgba(255,255,255,.55); }
.bs-stop-price{ color:#fff; font-weight:700; }
.bs-stop-go{
  background:#E8201A; color:#fff; font-weight:800; font-size:12px; letter-spacing:.04em;
  padding:10px 14px; border-radius:999px; text-decoration:none; white-space:nowrap;
  transition:filter .15s, transform .1s;
}
.bs-stop-go:hover{ filter:brightness(1.1); }
.bs-stop-go:active{ transform:scale(.96); }
.bs-stop.is-booked .bs-stop-go{ background:#2DB54B; }
.bs-stop-no{ font-size:11px; color:rgba(255,255,255,.4); white-space:nowrap; }
.bs-foot{ display:flex; gap:8px; padding-top:12px; border-top:1px solid rgba(255,255,255,.08); }
.bs-btn{ flex:1; padding:12px 14px; border:0; border-radius:999px; font-weight:800; font-size:13px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:8px; }
.bs-cal{ background:rgba(255,255,255,.08); color:#fff; }
.bs-cal:hover{ background:rgba(255,255,255,.14); }
.bs-share{ background:#fff; color:#0d0d10; }
.bs-share:hover{ background:#f0f0f0; }
@media(max-width:480px){
  .bs-stop{ grid-template-columns:50px 1fr auto; gap:8px; padding:8px; }
  .bs-stop-img{ width:50px; height:50px; }
  .bs-stop-title{ font-size:13px; }
  .bs-stop-go{ font-size:11px; padding:9px 12px; }
}

/* v12.7.70 — Smart Book Sequence: per-partner groups (Skiddle / Ticketmaster / etc.) */
.bs-groups{ display:flex; flex-direction:column; gap:14px; margin-bottom:18px; }
.bs-grp{
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  padding:12px 12px 6px;
  background:linear-gradient(180deg, color-mix(in srgb, var(--partner-tone, #444) 14%, transparent) 0%, transparent 80%);
}
.bs-grp-head{ display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.bs-grp-icon{
  width:36px; height:36px; border-radius:10px;
  background:var(--partner-tone, #444); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size:16px; flex-shrink:0;
  box-shadow:0 4px 14px -4px color-mix(in srgb, var(--partner-tone, #444) 60%, transparent);
}
.bs-grp-meta{ flex:1; min-width:0; }
.bs-grp-name{ font-size:14px; font-weight:900; color:#fff; }
.bs-grp-sub{ font-size:11px; color:rgba(255,255,255,.55); margin-top:1px; }
.bs-grp-hint{
  font-size:11px; color:rgba(255,255,255,.5);
  margin:0 4px 8px; line-height:1.4;
}
.bs-grp-events{ display:flex; flex-direction:column; gap:8px; }
.bs-grp .bs-stop{
  background:rgba(255,255,255,.03); border-color:rgba(255,255,255,.05);
  grid-template-columns:54px 1fr auto;
}
.bs-grp .bs-stop-num{ display:none; }

.bs-actions-row{
  display:flex; gap:6px; padding-top:14px; border-top:1px solid rgba(255,255,255,.08);
  flex-wrap:wrap;
}
.bs-actions-row .bs-btn{ flex:1 1 0; min-width:90px; padding:11px 10px; font-size:12px; gap:6px; }
.bs-email{ background:rgba(255,255,255,.08); color:#fff; }
.bs-email:hover{ background:rgba(255,255,255,.14); }
@media(max-width:480px){
  .bs-grp{ padding:10px 10px 4px; }
  .bs-grp-icon{ width:32px; height:32px; font-size:14px; }
  .bs-grp-name{ font-size:13px; }
  .bs-grp-hint{ font-size:10.5px; }
  .bs-actions-row .bs-btn{ font-size:11px; padding:10px 8px; }
}

/* v12.7.57 — show Dark/Light text labels (icons were removed at user's request, so the desktop buttons were empty) */
html body .WOT .wot-mode-opt span{ display:inline !important; font-size:.7rem !important; letter-spacing:.02em !important; }
html body .WOT .wot-mode-opt{ font-size:.7rem !important; padding:5px 11px !important; }

/* v12.7.57 — Event info link in drawer (was missing — only had ticket affiliate, no link to single page) */
.wot-dr-btn.info-btn{
  background:rgba(255,255,255,.08); color:#fff; border:1px solid rgba(255,255,255,.18);
  text-decoration:none; display:inline-flex; align-items:center; gap:7px;
}
.wot-dr-btn.info-btn:hover{ background:rgba(255,255,255,.14); }
.WOT.wot-light .wot-dr-btn.info-btn{ background:rgba(0,0,0,.04); color:#0d0d10; border-color:rgba(0,0,0,.12); }
.WOT.wot-light .wot-dr-btn.info-btn:hover{ background:rgba(0,0,0,.08); }

/* v12.7.67 — guarantee the Plan It handle is interactive (was getting blocked by stacking issues with the bottom drawer) */
#planFab, .plan-fab{ pointer-events:auto !important; }
#planHandle, .plan-handle{ pointer-events:auto !important; cursor:pointer !important; }
.plan{ pointer-events:auto !important; }

/* v12.7.66 — kill the leftover map corner chips/surprise box if any remain in DOM (CSS hide as belt+braces over the JS removal in footer.php) */
#mcrmap .mcr-tchips, #mcrmap .mcr-surprise, #mcrmap .mcrmap-pop{ display:none !important; }
/* v12.7.66 — day-strip + filter pills must sit ABOVE the WOT section's other layers but BELOW the fixed mobile top header */
section.WOT .wot-week-strip, section.WOT .wot-filterbar{ position:relative; z-index:5; }

/* v12.7.62 — clearance for fixed bottom UI on mobile.
   #MOB-TABS sits at 64px, #MCR-DRAWER peek at 58px (z-index 900).
   .plan keeps its native translateY peek (do NOT override bottom or it doubles up — issue from v12.7.61).
   We only adjust z-index so the plan handle isn't BEHIND the drawer peek. */
@media (max-width:992px){
  body{ padding-bottom:calc(64px + env(safe-area-inset-bottom)); }
  .plan-fab{ bottom:calc(72px + env(safe-area-inset-bottom)) !important; z-index:950 !important; }
  .plan{ z-index:910 !important; }
  body.plan-open .plan{ z-index:9500 !important; }
  body.plan-open #MCR-DRAWER{ z-index:9000 !important; }
}

/* v12.7.55 — bottom-sheet that opens when a map dot is tapped (was rendered but had no CSS) */
#mcrPinSheet{ position:fixed; inset:0; z-index:9999; pointer-events:none; visibility:hidden; }
#mcrPinSheet.open{ pointer-events:auto; visibility:visible; }
#mcrPinSheet .mcr-ps-back{ position:absolute; inset:0; background:rgba(0,0,0,.55); opacity:0; transition:opacity .2s; }
#mcrPinSheet.open .mcr-ps-back{ opacity:1; }
#mcrPinSheet .mcr-ps-card{
  position:absolute; left:0; right:0; bottom:0; background:#fff; color:#0d0d10;
  border-radius:18px 18px 0 0; box-shadow:0 -10px 30px rgba(0,0,0,.4);
  padding:16px 16px 22px; transform:translateY(100%); transition:transform .25s ease;
  max-width:560px; margin:0 auto; max-height:85vh; overflow-y:auto;
}
#mcrPinSheet.open .mcr-ps-card{ transform:translateY(0); }
#mcrPinSheet .mcr-ps-x{
  position:absolute; top:10px; right:10px; width:32px; height:32px; border:0; border-radius:50%;
  background:rgba(0,0,0,.06); font-size:22px; line-height:1; cursor:pointer; padding:0; color:#0d0d10;
}
#mcrPinSheet .mcr-ps-x:hover{ background:rgba(0,0,0,.12); }
#mcrPinSheet .mcr-ps-img{
  width:100%; height:160px; border-radius:12px; background:#eee center/cover no-repeat; margin-bottom:12px;
}
#mcrPinSheet .mcr-ps-img.empty{ background:linear-gradient(135deg,#f3f3f5,#e8e8ec); }
#mcrPinSheet .mcr-ps-when{ font-size:12px; font-weight:800; color:#E8201A; letter-spacing:.06em; text-transform:uppercase; margin-bottom:4px; }
#mcrPinSheet .mcr-ps-title{ font-size:18px; font-weight:900; line-height:1.2; margin-bottom:4px; }
#mcrPinSheet .mcr-ps-venue{ font-size:14px; color:#555; margin-bottom:8px; }
#mcrPinSheet .mcr-ps-meta{ font-size:13px; color:#333; margin-bottom:14px; }
#mcrPinSheet .mcr-ps-meta b{ color:#0d0d10; }
#mcrPinSheet .mcr-ps-acts{ display:flex; gap:8px; flex-wrap:wrap; }
#mcrPinSheet .mcr-ps-acts a{
  flex:1 1 auto; text-align:center; padding:12px 14px; border-radius:999px; text-decoration:none;
  font-weight:800; font-size:14px;
}
#mcrPinSheet .mcr-ps-tix{ background:#E8201A; color:#fff; }
#mcrPinSheet .mcr-ps-walk{ background:#0d0d10; color:#fff; }
#mcrPinSheet .mcr-ps-soldout{ background:#999; color:#fff; flex:1 1 auto; text-align:center; padding:12px 14px; border-radius:999px; font-weight:800; }

/* v12.7.54 — shrink Now/Next/Tonight mini-label + day-strip boxes per user request */
.wot-mini-label{ gap:6px !important; font-size:11px !important; padding:4px 0 !important; }
.wot-mini-tonight{ font-size:11px !important; letter-spacing:.04em !important; }
.wot-mini-live{ font-size:10px !important; padding:2px 6px !important; }
.wot-mini-dot{ width:6px !important; height:6px !important; }
.wot-view-switch, .wot-mode-switch{ transform:scale(.85); transform-origin:right center; }
.wot-wday{ width:34px !important; height:38px !important; padding:4px 0 !important; }
.wot-wday-dn{ font-size:.34rem !important; }
.wot-wday-num{ font-size:.72rem !important; }
@media (max-width:480px){
  .wot-wday{ width:30px !important; height:34px !important; }
  .wot-wday-num{ font-size:.66rem !important; }
}
.wot-map-hud{ font-size:11px !important; padding:6px 8px !important; gap:6px !important; }
.wot-map-hud b{ font-size:13px !important; }

/* v12.7.52 in-map event popup (fires when user taps a map marker on mobile WOT) */
#mcrmap .mcrmap-pop{
  position:absolute; left:12px; right:12px; bottom:12px; z-index:1000;
  background:#fff; color:#0d0d10; border-radius:14px;
  box-shadow:0 18px 40px rgba(0,0,0,.45), 0 0 0 1px rgba(0,0,0,.06);
  display:flex; flex-direction:row; gap:12px; padding:10px;
  animation:mcrmapPopIn .18s ease-out;
  border-left:4px solid var(--ec,#E8201A);
}
@keyframes mcrmapPopIn { from{ opacity:0; transform:translateY(8px) } to{ opacity:1; transform:none } }
#mcrmap .mcrmap-pop-x{
  position:absolute; top:6px; right:8px; width:28px; height:28px; border:0; background:rgba(0,0,0,.06);
  border-radius:50%; font-size:18px; line-height:1; cursor:pointer; color:#0d0d10; padding:0;
}
#mcrmap .mcrmap-pop-x:hover{ background:rgba(0,0,0,.12); }
#mcrmap .mcrmap-pop-img{ flex:0 0 90px; height:90px; border-radius:10px; overflow:hidden; background:#eee; }
#mcrmap .mcrmap-pop-img img{ width:100%; height:100%; object-fit:cover; display:block; }
#mcrmap .mcrmap-pop-body{ flex:1 1 auto; min-width:0; padding-right:24px; display:flex; flex-direction:column; gap:6px; }
#mcrmap .mcrmap-pop-badge{
  display:inline-block; align-self:flex-start; color:#fff; font-size:10px; font-weight:800;
  letter-spacing:.06em; padding:3px 8px; border-radius:4px; text-transform:uppercase;
}
#mcrmap .mcrmap-pop-title{ font-weight:800; font-size:15px; line-height:1.25; color:#0d0d10; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
#mcrmap .mcrmap-pop-meta{ display:flex; flex-wrap:wrap; gap:4px 10px; font-size:12px; color:#555; }
#mcrmap .mcrmap-pop-mi.mcrmap-pop-pr{ color:#0d0d10; font-weight:700; }
#mcrmap .mcrmap-pop-btn{
  margin-top:4px; align-self:flex-start; color:#fff; font-weight:700; font-size:13px;
  padding:8px 14px; border-radius:999px; text-decoration:none; display:inline-flex; align-items:center; gap:6px;
}
#mcrmap .mcrmap-pop-btn:hover{ filter:brightness(1.08); }
@media (max-width:480px){
  #mcrmap .mcrmap-pop{ left:8px; right:8px; bottom:8px; padding:8px; gap:8px; }
  #mcrmap .mcrmap-pop-img{ flex:0 0 70px; height:70px; }
  #mcrmap .mcrmap-pop-title{ font-size:14px; }
}

/* =========================================================================
   === FASHION HUB === v12.7.84
   /fashion Google-vibrant playground - tpl-fashion.php
   White bg, dark text, multi-color Google accents (red EA4335 / yellow FBBC05
   / green 34A853 / blue 4285F4 / hot pink ff003a). Big rounded corners,
   bouncy hovers, lots of white space, Inter Black headlines. Sits inside
   .CENTRE.white-bg.light-content. Multi-city safe. Self-contained.
   ========================================================================= */
.fashion-hub.fashion-hub{ background:#ffffff; color:#0f172a; font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif; padding:0; }
.fashion-hub *{ box-sizing:border-box; }
.fashion-hub a{ color:inherit; text-decoration:none; }
.fashion-hub h1,.fashion-hub h2,.fashion-hub h3,.fashion-hub h4{ margin:0; font-family:'Inter','Helvetica Neue',Arial,sans-serif; font-weight:900; letter-spacing:-0.025em; color:#0f172a; }
.fashion-hub p{ margin:0; line-height:1.55; color:#475569; }
.fashion-hub .fhub-section{ max-width:1180px; margin:0 auto; padding:72px 28px; }
.fashion-hub .fhub-sec-head{ margin:0 0 36px; }
.fashion-hub .fhub-sec-head-c{ text-align:center; }
.fashion-hub .fhub-sec-head h2{ font-size:clamp(30px,4.2vw,48px); line-height:1.05; margin:10px 0 12px; }
.fashion-hub .fhub-sec-head p{ font-size:18px; max-width:680px; }
.fashion-hub .fhub-sec-head-c p{ margin-left:auto; margin-right:auto; }

/* Eyebrow pills */
.fashion-hub .fhub-eyebrow-pill{ display:inline-block; padding:7px 14px; border-radius:999px; background:#0f172a; color:#fff; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.fashion-hub .fhub-eyebrow-pink{ background:#ff003a; }
.fashion-hub .fhub-eyebrow-yellow{ background:#FBBC05; color:#1f2937; }
.fashion-hub .fhub-eyebrow-green{ background:#34A853; }
.fashion-hub .fhub-eyebrow-blue{ background:#4285F4; }
.fashion-hub .fhub-eyebrow-red{ background:#EA4335; }

/* HERO */
.fashion-hub .fhub-hero{ position:relative; padding:96px 28px 72px; text-align:center; overflow:hidden; background:radial-gradient(ellipse at 50% 0%, #fff8fb 0%, #ffffff 60%); }
.fashion-hub .fhub-hero-inner{ max-width:980px; margin:0 auto; position:relative; z-index:2; }
.fashion-hub .fhub-hero-eyebrow{ display:inline-flex; align-items:center; gap:8px; font-size:12px; font-weight:800; letter-spacing:.18em; color:#1f2937; background:#fff; border:1px solid #e5e7eb; padding:8px 16px; border-radius:999px; box-shadow:0 4px 14px rgba(15,23,42,.06); margin-bottom:26px; }
.fashion-hub .fhub-dot{ width:8px; height:8px; border-radius:50%; display:inline-block; }
.fashion-hub .fhub-dot-r{ background:#EA4335; }
.fashion-hub .fhub-dot-y{ background:#FBBC05; }
.fashion-hub .fhub-dot-g{ background:#34A853; }
.fashion-hub .fhub-dot-b{ background:#4285F4; }
.fashion-hub .fhub-hero-title{ font-size:clamp(44px,8vw,96px); line-height:.95; font-weight:900; letter-spacing:-0.04em; margin:0 0 24px; }
.fashion-hub .fhub-w{ display:inline-block; transition:transform .35s cubic-bezier(.22,1.4,.4,1); }
.fashion-hub .fhub-w:hover{ transform:translateY(-6px) rotate(-2deg); }
.fashion-hub .fhub-w-r{ color:#EA4335; }
.fashion-hub .fhub-w-y{ color:#FBBC05; }
.fashion-hub .fhub-w-g{ color:#34A853; }
.fashion-hub .fhub-w-b{ color:#4285F4; }
.fashion-hub .fhub-hero-lede{ font-size:clamp(18px,2.4vw,24px); color:#1f2937; font-weight:500; max-width:620px; margin:0 auto 36px; }
.fashion-hub .fhub-hero-cta{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
.fashion-hub .fhub-btn{ display:inline-flex; align-items:center; gap:10px; padding:18px 30px; border-radius:999px; font-weight:800; font-size:15px; letter-spacing:.04em; cursor:pointer; border:none; transition:transform .22s cubic-bezier(.22,1.4,.4,1), box-shadow .22s ease, background .2s ease; }
.fashion-hub .fhub-btn-primary{ background:#ff003a; color:#fff; box-shadow:0 10px 28px rgba(255,0,58,.32); }
.fashion-hub .fhub-btn-primary:hover{ transform:translateY(-3px) scale(1.04); background:#ff1f55; box-shadow:0 16px 36px rgba(255,0,58,.42); }
.fashion-hub .fhub-btn-ghost{ background:#fff; color:#0f172a; border:2px solid #0f172a; }
.fashion-hub .fhub-btn-ghost:hover{ transform:translateY(-3px) scale(1.04); background:#0f172a; color:#fff; }
.fashion-hub .fhub-hero-bubbles{ position:absolute; inset:0; pointer-events:none; }
.fashion-hub .fhub-bubble{ position:absolute; border-radius:50%; opacity:.55; filter:blur(2px); animation:fhubFloat 9s ease-in-out infinite; }
.fashion-hub .fhub-b1{ width:80px; height:80px; background:#FBBC05; top:18%; left:7%; animation-delay:0s; }
.fashion-hub .fhub-b2{ width:120px; height:120px; background:#4285F4; top:60%; left:4%; animation-delay:1.2s; }
.fashion-hub .fhub-b3{ width:64px; height:64px; background:#34A853; top:14%; right:10%; animation-delay:.6s; }
.fashion-hub .fhub-b4{ width:96px; height:96px; background:#EA4335; top:62%; right:6%; animation-delay:1.8s; }
@keyframes fhubFloat{ 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-22px) } }

/* DotZ EXPLAINED */
.fashion-hub .fhub-rainbow{ background:linear-gradient(90deg,#EA4335,#FBBC05,#34A853,#4285F4,#ff003a); -webkit-background-clip:text; background-clip:text; color:transparent; }
.fashion-hub .fhub-steps{ display:grid; grid-template-columns:1fr auto 1fr auto 1fr; gap:18px; align-items:start; max-width:1080px; margin:0 auto 36px; }
.fashion-hub .fhub-step{ background:#fff; border:1px solid #e5e7eb; border-radius:24px; padding:32px 24px; text-align:center; transition:transform .25s cubic-bezier(.22,1.4,.4,1), box-shadow .25s ease; box-shadow:0 6px 20px rgba(15,23,42,.04); position:relative; }
.fashion-hub .fhub-step:hover{ transform:translateY(-6px); box-shadow:0 18px 40px rgba(15,23,42,.10); }
.fashion-hub .fhub-step-circle{ width:88px; height:88px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; color:#fff; font-size:34px; margin:0 auto 16px; box-shadow:0 8px 24px rgba(15,23,42,.18); }
.fashion-hub .fhub-c-blue{ background:#4285F4; }
.fashion-hub .fhub-c-yellow{ background:#FBBC05; }
.fashion-hub .fhub-c-pink{ background:#ff003a; }
.fashion-hub .fhub-step-num{ position:absolute; top:14px; left:14px; width:28px; height:28px; border-radius:50%; background:#0f172a; color:#fff; font-size:13px; font-weight:800; display:inline-flex; align-items:center; justify-content:center; }
.fashion-hub .fhub-step h3{ font-size:20px; margin:0 0 6px; }
.fashion-hub .fhub-step p{ font-size:15px; }
.fashion-hub .fhub-step-arrow{ display:flex; align-items:center; justify-content:center; color:#cbd5e1; font-size:24px; padding-top:60px; }
.fashion-hub .fhub-explain-foot{ text-align:center; font-size:16px; max-width:760px; margin:0 auto 40px; color:#1f2937; }
.fashion-hub .fhub-explain-foot strong{ color:#0f172a; }

/* Card preview */
.fashion-hub .fhub-card-preview{ display:flex; gap:20px; justify-content:center; flex-wrap:wrap; }
.fashion-hub .fhub-card{ position:relative; width:240px; aspect-ratio:3/4; border-radius:20px; overflow:hidden; background:#0f172a; box-shadow:0 14px 36px rgba(15,23,42,.18); transition:transform .35s cubic-bezier(.22,1.4,.4,1); }
.fashion-hub .fhub-card:hover{ transform:translateY(-8px) rotate(1.5deg) scale(1.03); }
.fashion-hub .fhub-card-img{ position:absolute; inset:0; background-size:cover; background-position:center; }
.fashion-hub .fhub-card-shine{ position:absolute; inset:0; background:linear-gradient(115deg, rgba(255,255,255,0) 30%, rgba(255,255,255,.6) 50%, rgba(255,255,255,0) 70%), linear-gradient(45deg,rgba(255,0,58,.32),rgba(255,189,5,.32),rgba(52,168,83,.32),rgba(66,133,244,.32)); mix-blend-mode:overlay; animation:fhubShine 3.6s linear infinite; pointer-events:none; }
@keyframes fhubShine{ 0%{ background-position:-200% 0, 0 0; } 100%{ background-position:200% 0, 0 0; } }
.fashion-hub .fhub-card-meta{ position:absolute; left:0; right:0; bottom:0; padding:14px 16px; background:linear-gradient(to top, rgba(0,0,0,.78), transparent); color:#fff; }
.fashion-hub .fhub-card-handle{ font-weight:800; font-size:15px; }
.fashion-hub .fhub-card-hood{ font-size:12px; opacity:.85; }
.fashion-hub .fhub-card-rarity{ position:absolute; top:12px; right:12px; padding:5px 10px; border-radius:999px; font-size:10px; font-weight:900; letter-spacing:.1em; background:#fff; color:#0f172a; }
.fashion-hub .fhub-card-shiny .fhub-card-rarity{ background:linear-gradient(90deg,#FBBC05,#ff003a,#4285F4); color:#fff; }

/* FIT PIT */
.fashion-hub .fhub-fitpit-sec{ background:#fff7f9; border-radius:32px; }
.fashion-hub .fhub-week-bar{ max-width:780px; margin:0 auto 36px; background:#fff; border-radius:20px; padding:18px 22px; box-shadow:0 8px 24px rgba(15,23,42,.06); border:1px solid #ffe1ea; }
.fashion-hub .fhub-week-bar-track{ height:10px; background:#ffe1ea; border-radius:999px; overflow:hidden; margin-bottom:10px; }
.fashion-hub .fhub-week-bar-fill{ height:100%; background:linear-gradient(90deg,#FBBC05,#ff003a); border-radius:999px; transition:width .6s ease; }
.fashion-hub .fhub-week-bar-meta{ display:flex; justify-content:space-between; font-size:12px; font-weight:800; letter-spacing:.06em; color:#1f2937; }
.fashion-hub .fhub-fitpit-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.fashion-hub .fhub-fitpit-card{ position:relative; background:#fff; border-radius:24px; overflow:hidden; box-shadow:0 8px 24px rgba(15,23,42,.06); transition:transform .25s cubic-bezier(.22,1.4,.4,1), box-shadow .25s ease; border:2px solid transparent; }
.fashion-hub .fhub-fitpit-card:hover{ transform:translateY(-6px); box-shadow:0 18px 40px rgba(15,23,42,.12); }
.fashion-hub .fhub-fitpit-card.is-leading{ grid-row:span 2; border-color:#FBBC05; box-shadow:0 14px 36px rgba(251,188,5,.28); }
.fashion-hub .fhub-leading-chip{ position:absolute; top:14px; left:14px; z-index:2; background:#FBBC05; color:#1f2937; font-size:11px; font-weight:900; letter-spacing:.1em; padding:7px 12px; border-radius:999px; display:inline-flex; align-items:center; gap:6px; box-shadow:0 6px 18px rgba(251,188,5,.4); }
.fashion-hub .fhub-fitpit-img{ width:100%; aspect-ratio:3/4; background-size:cover; background-position:center; }
.fashion-hub .fhub-fitpit-card.is-leading .fhub-fitpit-img{ aspect-ratio:3/4.6; }
.fashion-hub .fhub-fitpit-meta{ padding:14px 16px 0; }
.fashion-hub .fhub-fitpit-handle{ font-weight:800; font-size:16px; color:#0f172a; }
.fashion-hub .fhub-fitpit-hood{ font-size:13px; color:#64748b; margin-top:2px; }
.fashion-hub .fhub-fitpit-hood i{ color:#ff003a; margin-right:4px; }
.fashion-hub .fhub-vote-btn{ display:flex; align-items:center; gap:8px; margin:14px 16px 16px; padding:11px 16px; border-radius:999px; background:#fff; border:2px solid #ffe1ea; color:#ff003a; font-weight:800; font-size:14px; cursor:pointer; transition:transform .2s cubic-bezier(.22,1.4,.4,1), background .2s ease, color .2s ease, border-color .2s ease; }
.fashion-hub .fhub-vote-btn:hover{ background:#ff003a; color:#fff; border-color:#ff003a; transform:scale(1.04); }
.fashion-hub .fhub-vote-btn.is-voted{ background:#ff003a; color:#fff; border-color:#ff003a; }
.fashion-hub .fhub-vote-btn.is-voted i{ animation:fhubPop .4s; }
@keyframes fhubPop{ 0%{ transform:scale(1) } 50%{ transform:scale(1.6) } 100%{ transform:scale(1) } }

/* WALLET */
.fashion-hub .fhub-wallet{ background:#fff; border-radius:28px; padding:36px; box-shadow:0 16px 48px rgba(15,23,42,.08); border:1px solid #f1f5f9; }
.fashion-hub .fhub-wallet-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-bottom:32px; padding-bottom:32px; border-bottom:2px dashed #f1f5f9; }
.fashion-hub .fhub-stat{ text-align:center; }
.fashion-hub .fhub-stat-num{ font-size:clamp(34px,5vw,52px); font-weight:900; line-height:1; letter-spacing:-0.03em; background:linear-gradient(135deg,#ff003a,#FBBC05); -webkit-background-clip:text; background-clip:text; color:transparent; }
.fashion-hub .fhub-stat-lbl{ margin-top:6px; font-size:11px; font-weight:800; letter-spacing:.14em; color:#64748b; }
.fashion-hub .fhub-collections{ display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.fashion-hub .fhub-collection{ position:relative; padding:22px 18px; border-radius:20px; color:#fff; overflow:hidden; transition:transform .3s cubic-bezier(.22,1.4,.4,1), box-shadow .3s ease; isolation:isolate; }
.fashion-hub .fhub-collection:hover{ transform:translateY(-6px) scale(1.025); }
.fashion-hub .fhub-col-pink{ background:#ff003a; box-shadow:0 8px 24px rgba(255,0,58,.32); }
.fashion-hub .fhub-col-red{ background:#EA4335; box-shadow:0 8px 24px rgba(234,67,53,.32); }
.fashion-hub .fhub-col-blue{ background:#4285F4; box-shadow:0 8px 24px rgba(66,133,244,.32); }
.fashion-hub .fhub-col-yellow{ background:#FBBC05; color:#1f2937; box-shadow:0 8px 24px rgba(251,188,5,.32); }
.fashion-hub .fhub-col-green{ background:#34A853; box-shadow:0 8px 24px rgba(52,168,83,.32); }
.fashion-hub .fhub-col-icon{ width:44px; height:44px; border-radius:12px; background:rgba(255,255,255,.22); display:inline-flex; align-items:center; justify-content:center; font-size:20px; margin-bottom:14px; }
.fashion-hub .fhub-col-yellow .fhub-col-icon{ background:rgba(31,41,55,.18); color:#1f2937; }
.fashion-hub .fhub-col-name{ font-weight:900; font-size:16px; letter-spacing:.06em; }
.fashion-hub .fhub-col-count{ font-size:13px; opacity:.92; margin-top:4px; }
.fashion-hub .fhub-col-shiny{ font-size:12px; opacity:.78; }
.fashion-hub .fhub-col-link{ margin-top:14px; font-size:11px; font-weight:800; letter-spacing:.1em; opacity:.95; display:flex; align-items:center; gap:6px; }
.fashion-hub .fhub-col-link i{ font-size:10px; transition:transform .25s ease; }
.fashion-hub .fhub-collection:hover .fhub-col-link i{ transform:translateX(4px); }
.fashion-hub .fhub-wallet-empty{ display:flex; align-items:center; justify-content:center; gap:8px; margin-top:24px; padding:18px; background:#fffbe5; border:2px dashed #FBBC05; border-radius:16px; color:#1f2937; font-weight:600; font-size:15px; }

/* LEADERBOARD */
.fashion-hub .fhub-leaderboard{ list-style:none; padding:0; margin:0; max-width:760px; margin-left:auto; margin-right:auto; display:flex; flex-direction:column; gap:10px; }
.fashion-hub .fhub-leader{ display:grid; grid-template-columns:48px 56px 1fr auto auto; gap:16px; align-items:center; padding:14px 18px; background:#fff; border:1px solid #f1f5f9; border-radius:18px; transition:transform .2s ease, box-shadow .2s ease; }
.fashion-hub .fhub-leader:hover{ transform:translateX(4px); box-shadow:0 8px 22px rgba(15,23,42,.08); }
.fashion-hub .fhub-leader-rank{ display:flex; align-items:center; gap:6px; font-weight:900; font-size:18px; color:#0f172a; }
.fashion-hub .fhub-leader-rank i{ font-size:18px; }
.fashion-hub .fhub-medal-gold .fhub-leader-rank i{ color:#FBBC05; }
.fashion-hub .fhub-medal-silver .fhub-leader-rank i{ color:#94a3b8; }
.fashion-hub .fhub-medal-bronze .fhub-leader-rank i{ color:#c2710c; }
.fashion-hub .fhub-medal-gold{ background:linear-gradient(90deg,#fffbe5,#fff); border-color:#FBBC05; }
.fashion-hub .fhub-leader-avatar{ width:48px; height:48px; border-radius:50%; }
.fashion-hub .fhub-leader-handle{ font-weight:800; font-size:15px; color:#0f172a; }
.fashion-hub .fhub-leader-dotz{ font-size:14px; color:#64748b; }
.fashion-hub .fhub-leader-dotz strong{ color:#ff003a; font-weight:900; }
.fashion-hub .fhub-leader-sections{ display:flex; gap:5px; }
.fashion-hub .fhub-leader-badge{ width:26px; height:26px; border-radius:8px; color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:11px; }

/* HOOD GRID */
.fashion-hub .fhub-hood-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.fashion-hub .fhub-hood-card{ position:relative; background:#fff; border-radius:22px; overflow:hidden; box-shadow:0 6px 20px rgba(15,23,42,.05); transition:transform .25s cubic-bezier(.22,1.4,.4,1), box-shadow .25s ease; border:1px solid #f1f5f9; }
.fashion-hub .fhub-hood-card:hover{ transform:translateY(-6px); box-shadow:0 18px 40px rgba(15,23,42,.10); }
.fashion-hub .fhub-hood-img{ height:160px; background-size:cover; background-position:center; background-color:#f1f5f9; }
.fashion-hub .fhub-hood-img-empty{ display:flex; align-items:center; justify-content:center; font-size:34px; color:var(--accent,#cbd5e1); background:linear-gradient(135deg,#f8fafc,#fff); }
.fashion-hub .fhub-hood-body{ padding:16px 18px 18px; }
.fashion-hub .fhub-hood-tag{ display:inline-block; background:var(--accent,#0f172a); color:#fff; font-weight:800; font-size:11px; letter-spacing:.08em; padding:4px 10px; border-radius:999px; margin-bottom:8px; }
.fashion-hub .fhub-hood-card h3{ font-size:18px; margin:0 0 6px; }
.fashion-hub .fhub-hood-go{ font-size:12px; font-weight:800; letter-spacing:.06em; color:var(--accent,#0f172a); display:flex; align-items:center; gap:6px; }
.fashion-hub .fhub-hood-go i{ font-size:10px; transition:transform .25s ease; }
.fashion-hub .fhub-hood-card:hover .fhub-hood-go i{ transform:translateX(4px); }

/* GUIDES GRID */
.fashion-hub .fhub-guides-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.fashion-hub .fhub-guide-card{ background:#fff; border-radius:20px; overflow:hidden; box-shadow:0 6px 20px rgba(15,23,42,.05); transition:transform .25s cubic-bezier(.22,1.4,.4,1); border:1px solid #f1f5f9; }
.fashion-hub .fhub-guide-card:hover{ transform:translateY(-4px); }
.fashion-hub .fhub-guide-img{ height:160px; background:#f1f5f9; background-size:cover; background-position:center; }
.fashion-hub .fhub-guide-body{ padding:14px 16px 16px; }
.fashion-hub .fhub-guide-card h3{ font-size:15px; line-height:1.3; margin:0 0 8px; min-height:40px; }
.fashion-hub .fhub-guide-go{ font-size:11px; font-weight:800; letter-spacing:.08em; color:#ff003a; display:flex; align-items:center; gap:6px; }
.fashion-hub .fhub-guide-go i{ font-size:9px; }

/* BRAND GRID */
.fashion-hub .fhub-brand-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:18px; }
.fashion-hub .fhub-brand-card{ background:#fff; border-radius:20px; overflow:hidden; box-shadow:0 6px 20px rgba(15,23,42,.05); transition:transform .25s cubic-bezier(.22,1.4,.4,1), box-shadow .25s ease; border:1px solid #f1f5f9; }
.fashion-hub .fhub-brand-card:hover{ transform:translateY(-6px) rotate(-.5deg); box-shadow:0 16px 36px rgba(15,23,42,.10); }
.fashion-hub .fhub-brand-img{ height:120px; background:#f1f5f9; background-size:cover; background-position:center; }
.fashion-hub .fhub-brand-img-empty{ display:flex; align-items:center; justify-content:center; font-size:32px; color:#cbd5e1; }
.fashion-hub .fhub-brand-body{ padding:14px 16px 16px; }
.fashion-hub .fhub-brand-card h3{ font-size:15px; margin:0 0 4px; }
.fashion-hub .fhub-brand-card p{ font-size:12px; color:#64748b; line-height:1.4; }

/* MAP */
.fashion-hub .fhub-map{ height:480px; border-radius:24px; overflow:hidden; box-shadow:0 16px 48px rgba(15,23,42,.08); border:1px solid #f1f5f9; }
.fashion-hub .fhub-map-legend{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top:18px; }
.fashion-hub .fhub-legend-chip{ display:inline-flex; align-items:center; gap:7px; padding:7px 14px; border-radius:999px; background:#fff; border:1px solid #e5e7eb; font-size:12px; font-weight:700; color:#1f2937; }
.fashion-hub .fhub-legend-chip i{ font-size:10px; color:var(--c,#888); }
.fashion-hub .fhub-pin span{ display:block; width:20px; height:20px; border-radius:50%; border:3px solid #fff; box-shadow:0 4px 10px rgba(0,0,0,.25); }

/* JOIN */
.fashion-hub .fhub-join-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.fashion-hub .fhub-join-tile{ padding:32px 26px; border-radius:24px; color:#fff; transition:transform .25s cubic-bezier(.22,1.4,.4,1); }
.fashion-hub .fhub-join-tile:hover{ transform:translateY(-6px) rotate(.8deg); }
.fashion-hub .fhub-jt-red{ background:#EA4335; }
.fashion-hub .fhub-jt-yellow{ background:#FBBC05; color:#1f2937; }
.fashion-hub .fhub-jt-blue{ background:#4285F4; }
.fashion-hub .fhub-join-tile i{ font-size:30px; margin-bottom:14px; }
.fashion-hub .fhub-join-tile h3{ color:inherit; font-size:22px; margin:0 0 6px; }
.fashion-hub .fhub-join-tile p{ color:inherit; opacity:.9; margin:0 0 14px; font-size:14px; }
.fashion-hub .fhub-join-form{ display:flex; gap:8px; }
.fashion-hub .fhub-join-form input{ flex:1; min-width:0; padding:12px 14px; border-radius:999px; border:none; font-size:14px; outline:none; }
.fashion-hub .fhub-join-form button{ padding:12px 20px; border-radius:999px; border:none; background:#0f172a; color:#fff; font-weight:800; cursor:pointer; transition:transform .2s ease; }
.fashion-hub .fhub-join-form button:hover{ transform:scale(1.05); }
.fashion-hub .fhub-join-cta{ display:inline-block; padding:12px 22px; border-radius:999px; background:#0f172a; color:#fff; font-weight:800; font-size:14px; letter-spacing:.04em; transition:transform .2s ease; }
.fashion-hub .fhub-join-cta:hover{ transform:scale(1.05); }

/* RESPONSIVE */
@media (max-width:1024px){
  .fashion-hub .fhub-fitpit-grid{ grid-template-columns:repeat(2,1fr); }
  .fashion-hub .fhub-collections{ grid-template-columns:repeat(3,1fr); }
  .fashion-hub .fhub-hood-grid{ grid-template-columns:repeat(3,1fr); }
  .fashion-hub .fhub-guides-grid{ grid-template-columns:repeat(3,1fr); }
  .fashion-hub .fhub-brand-grid{ grid-template-columns:repeat(3,1fr); }
  .fashion-hub .fhub-steps{ grid-template-columns:1fr; }
  .fashion-hub .fhub-step-arrow{ transform:rotate(90deg); padding:0; }
  .fashion-hub .fhub-join-grid{ grid-template-columns:1fr; }
}
@media (max-width:720px){
  .fashion-hub .fhub-section{ padding:56px 20px; }
  .fashion-hub .fhub-hero{ padding:64px 20px 48px; }
  .fashion-hub .fhub-fitpit-grid{ grid-template-columns:1fr; }
  .fashion-hub .fhub-fitpit-card.is-leading{ grid-row:span 1; }
  .fashion-hub .fhub-wallet-stats{ grid-template-columns:repeat(2,1fr); }
  .fashion-hub .fhub-collections{ grid-template-columns:repeat(2,1fr); }
  .fashion-hub .fhub-hood-grid{ grid-template-columns:repeat(2,1fr); }
  .fashion-hub .fhub-guides-grid{ grid-template-columns:repeat(2,1fr); }
  .fashion-hub .fhub-brand-grid{ grid-template-columns:repeat(2,1fr); }
  .fashion-hub .fhub-leader{ grid-template-columns:36px 40px 1fr; }
  .fashion-hub .fhub-leader-dotz, .fashion-hub .fhub-leader-sections{ grid-column:2 / -1; }
  .fashion-hub .fhub-map{ height:340px; }
  .fashion-hub .fhub-wallet{ padding:24px 18px; }
}
@media (max-width:480px){
  .fashion-hub .fhub-hood-grid,.fashion-hub .fhub-guides-grid,.fashion-hub .fhub-brand-grid,.fashion-hub .fhub-collections{ grid-template-columns:1fr; }
  .fashion-hub .fhub-wallet-stats{ grid-template-columns:repeat(2,1fr); }
}
/* === END FASHION HUB === */


/* === SPORT WHITE ====================================================
   White/light theme override for /sport page. Scoped to .sport-white
   wrapper on BODY div. Overrides all dark .hs-* base styles plus the
   .hood-seamless dark container. Sport accent = blue #1A56FF.
==================================================================== */
.sport-white .hood-seamless,
.sport-white .hood-content {
  background:#fff !important;
  color:#111 !important;
}
.sport-white .hood-seamless { padding-bottom:40px; }

/* Hero text stays white (over photo) but scrim lightened inline.
   Force the labels to white/high-contrast for legibility. */
.sport-white .hood-hero-full { border-bottom:1px solid rgba(0,0,0,.06); }
.sport-white .hhf-label { color:rgba(255,255,255,.85); }
.sport-white .hhf-name { color:#fff; text-shadow:0 2px 12px rgba(0,0,0,.45); }
.sport-white .hhf-tagline { color:rgba(255,255,255,.95); text-shadow:0 1px 6px rgba(0,0,0,.5); }
.sport-white .hhf-stats { color:rgba(255,255,255,.9); }
.sport-white .hhf-stats span { color:rgba(255,255,255,.95); }
.sport-white .hhf-ql { background:rgba(255,255,255,.92); color:#111; }
.sport-white .hhf-ql:hover { background:#fff; color:#1A56FF; }

/* Section headings */
.sport-white .hood-seamless .csh-eyebrow { color:#1A56FF !important; }
.sport-white .hood-seamless .csh-title { color:#111 !important; }
.sport-white .hood-seamless .sh-link { color:#1A56FF !important; }

/* Take, stats bar, sections - all white, no dividers using white opacity */
.sport-white .hs-take,
.sport-white .hs-stats-bar,
.sport-white .hs-tonight,
.sport-white .hs-watch,
.sport-white .hs-venues,
.sport-white .hs-stories,
.sport-white .hs-subsections,
.sport-white .hs-nearby,
.sport-white .hs-map,
.sport-white .hs-footer-links {
  background:#fff !important;
  color:#111 !important;
  border-color:rgba(0,0,0,.06) !important;
}
.sport-white .hs-take { border-bottom:1px solid rgba(0,0,0,.06); }
.sport-white .hs-stats-bar { border-bottom:1px solid rgba(0,0,0,.06); }
.sport-white .hs-eyebrow { color:#1A56FF !important; }
.sport-white .hs-take-body,
.sport-white .hs-take-full { color:#222 !important; }
.sport-white .hs-take-more summary { color:#1A56FF !important; }
@media(max-width:900px){
  .sport-white .hs-take-more summary {
    background:#f4f6ff !important;
    color:#1A56FF !important;
  }
}

/* Stat chips - white card, blue number */
.sport-white .hs-stat-chip {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
}
.sport-white .hs-stat-chip i { color:#1A56FF !important; }
.sport-white .hs-stat-value { color:#1A56FF !important; font-weight:800; }
.sport-white .hs-stat-label { color:#555 !important; }

/* Event, venue, story cards - white with subtle shadow */
.sport-white .hs-ev-card,
.sport-white .hs-venue-card,
.sport-white .hs-story-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-radius:12px !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
  transition:transform .2s ease, box-shadow .2s ease;
}
.sport-white .hs-ev-card:hover,
.sport-white .hs-venue-card:hover,
.sport-white .hs-story-card:hover {
  background:#fff !important;
  border-color:rgba(26,86,255,.35) !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.sport-white .hs-venue-card.hs-venue-featured {
  border-color:#1A56FF !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05), 0 0 0 1px rgba(26,86,255,.18);
}
.sport-white .hs-ev-title a,
.sport-white .hs-vc-name a { color:#111 !important; }
.sport-white .hs-ev-title a:hover,
.sport-white .hs-vc-name a:hover { color:#1A56FF !important; }
.sport-white .hs-ev-venue,
.sport-white .hs-ev-time,
.sport-white .hs-ev-price,
.sport-white .hs-ev-meta,
.sport-white .hs-story-exc,
.sport-white .hs-story-meta { color:#555 !important; }
.sport-white .hs-vc-cat { color:#1A56FF !important; }
.sport-white .hs-story-title { color:#111 !important; }
.sport-white .hs-story-kicker { color:#1A56FF !important; }

/* Venue/Story image - photo at full saturation, no scrim */
.sport-white .hs-vc-img img,
.sport-white .hs-story-img img,
.sport-white .hs-ev-thumb img { filter:none !important; }
.sport-white .hs-vc-price {
  background:rgba(255,255,255,.95) !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.06);
}

/* Buttons */
.sport-white .btn-ghost-sm {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.15) !important;
}
.sport-white .btn-ghost-sm:hover {
  border-color:#1A56FF !important;
  color:#1A56FF !important;
}
.sport-white .btn-primary-sm {
  background:#1A56FF !important;
  border-color:#1A56FF !important;
  color:#fff !important;
}

/* Image fallback tile - blue accent on white */
.sport-white .mcr-img-fallback {
  background:#1A56FF !important;
  color:#fff !important;
}

/* Sub-section tiles - white with coloured icon */
.sport-white .hs-sub-tile {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.sport-white .hs-sub-tile:hover {
  background:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.sport-white .hs-sub-tile i { color:var(--sub-color, #1A56FF) !important; }
.sport-white .hs-sub-label { color:#111 !important; }

/* Watch placeholder - light dashed */
.sport-white .hs-watch-placeholder {
  background:#fafafa !important;
  border:1px dashed rgba(0,0,0,.12) !important;
  border-radius:12px;
}
.sport-white .hs-watch-placeholder i { color:rgba(0,0,0,.25) !important; }
.sport-white .hs-watch-placeholder p { color:#555 !important; }
.sport-white .hs-watch-hint { color:#777 !important; }
.sport-white .hs-watch-hint code { color:#1A56FF !important; background:#f4f6ff; padding:1px 5px; border-radius:4px; }

/* Neighbourhood cards - keep photo, lighten scrim a lot for readability */
.sport-white .hs-nearby-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.sport-white .hs-nearby-scrim {
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.45) 100%) !important;
}

/* Footer link buttons */
.sport-white .hs-footer-links a {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.sport-white .hs-footer-links a:hover {
  border-color:#1A56FF !important;
  color:#1A56FF !important;
}
.sport-white .hs-footer-links a i { color:#1A56FF !important; }

/* Breadcrumb */
.sport-white .hs-breadcrumb { color:#555 !important; background:#fff !important; }
.sport-white .hs-breadcrumb a { color:#111 !important; }
.sport-white .hs-breadcrumb a:hover { color:#1A56FF !important; }

/* Empty state */
.sport-white .no-results { background:#fff !important; color:#555 !important; }
.sport-white .no-results a { color:#1A56FF !important; }
/* === END SPORT WHITE === */


/* === FOOD WHITE =====================================================
   White/light theme override for /food page. Scoped to .food-white
   wrapper on BODY div. Mirrors SPORT WHITE pattern. Food accent =
   green #2DB54B.
==================================================================== */
.food-white .hood-seamless,
.food-white .hood-content {
  background:#fff !important;
  color:#111 !important;
}
.food-white .hood-seamless { padding-bottom:40px; }

/* Hero text stays white (over photo) but scrim lightened inline.
   Force the labels to white/high-contrast for legibility. */
.food-white .hood-hero-full { border-bottom:1px solid rgba(0,0,0,.06); }
.food-white .hhf-label { color:rgba(255,255,255,.85); }
.food-white .hhf-name { color:#fff; text-shadow:0 2px 12px rgba(0,0,0,.45); }
.food-white .hhf-tagline { color:rgba(255,255,255,.95); text-shadow:0 1px 6px rgba(0,0,0,.5); }
.food-white .hhf-stats { color:rgba(255,255,255,.9); }
.food-white .hhf-stats span { color:rgba(255,255,255,.95); }
.food-white .hhf-ql { background:rgba(255,255,255,.92); color:#111; }
.food-white .hhf-ql:hover { background:#fff; color:#2DB54B; }

/* Section headings */
.food-white .hood-seamless .csh-eyebrow { color:#2DB54B !important; }
.food-white .hood-seamless .csh-title { color:#111 !important; }
.food-white .hood-seamless .sh-link { color:#2DB54B !important; }

/* Take, stats bar, sections - all white, no dividers using white opacity */
.food-white .hs-take,
.food-white .hs-stats-bar,
.food-white .hs-tonight,
.food-white .hs-watch,
.food-white .hs-venues,
.food-white .hs-stories,
.food-white .hs-subsections,
.food-white .hs-nearby,
.food-white .hs-map,
.food-white .hs-footer-links {
  background:#fff !important;
  color:#111 !important;
  border-color:rgba(0,0,0,.06) !important;
}
.food-white .hs-take { border-bottom:1px solid rgba(0,0,0,.06); }
.food-white .hs-stats-bar { border-bottom:1px solid rgba(0,0,0,.06); }
.food-white .hs-eyebrow { color:#2DB54B !important; }
.food-white .hs-take-body,
.food-white .hs-take-full { color:#222 !important; }
.food-white .hs-take-more summary { color:#2DB54B !important; }
@media(max-width:900px){
  .food-white .hs-take-more summary {
    background:#eefbf2 !important;
    color:#2DB54B !important;
  }
}

/* Stat chips - white card, green number */
.food-white .hs-stat-chip {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
}
.food-white .hs-stat-chip i { color:#2DB54B !important; }
.food-white .hs-stat-value { color:#2DB54B !important; font-weight:800; }
.food-white .hs-stat-label { color:#555 !important; }

/* Event, venue, story cards - white with subtle shadow */
.food-white .hs-ev-card,
.food-white .hs-venue-card,
.food-white .hs-story-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-radius:12px !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
  transition:transform .2s ease, box-shadow .2s ease;
}
.food-white .hs-ev-card:hover,
.food-white .hs-venue-card:hover,
.food-white .hs-story-card:hover {
  background:#fff !important;
  border-color:rgba(45,181,75,.35) !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.food-white .hs-venue-card.hs-venue-featured {
  border-color:#2DB54B !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05), 0 0 0 1px rgba(45,181,75,.18);
}
.food-white .hs-ev-title a,
.food-white .hs-vc-name a { color:#111 !important; }
.food-white .hs-ev-title a:hover,
.food-white .hs-vc-name a:hover { color:#2DB54B !important; }
.food-white .hs-ev-venue,
.food-white .hs-ev-time,
.food-white .hs-ev-price,
.food-white .hs-ev-meta,
.food-white .hs-story-exc,
.food-white .hs-story-meta { color:#555 !important; }
.food-white .hs-vc-cat { color:#2DB54B !important; }
.food-white .hs-story-title { color:#111 !important; }
.food-white .hs-story-kicker { color:#2DB54B !important; }

/* Venue/Story image - photo at full saturation, no scrim */
.food-white .hs-vc-img img,
.food-white .hs-story-img img,
.food-white .hs-ev-thumb img { filter:none !important; }
.food-white .hs-vc-price {
  background:rgba(255,255,255,.95) !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.06);
}

/* Buttons */
.food-white .btn-ghost-sm {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.15) !important;
}
.food-white .btn-ghost-sm:hover {
  border-color:#2DB54B !important;
  color:#2DB54B !important;
}
.food-white .btn-primary-sm {
  background:#2DB54B !important;
  border-color:#2DB54B !important;
  color:#fff !important;
}

/* Image fallback tile - green accent on white */
.food-white .mcr-img-fallback {
  background:#2DB54B !important;
  color:#fff !important;
}

/* Sub-section tiles - white with coloured icon */
.food-white .hs-sub-tile {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.food-white .hs-sub-tile:hover {
  background:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.food-white .hs-sub-tile i { color:var(--sub-color, #2DB54B) !important; }
.food-white .hs-sub-label { color:#111 !important; }

/* Watch placeholder - light dashed */
.food-white .hs-watch-placeholder {
  background:#fafafa !important;
  border:1px dashed rgba(0,0,0,.12) !important;
  border-radius:12px;
}
.food-white .hs-watch-placeholder i { color:rgba(0,0,0,.25) !important; }
.food-white .hs-watch-placeholder p { color:#555 !important; }
.food-white .hs-watch-hint { color:#777 !important; }
.food-white .hs-watch-hint code { color:#2DB54B !important; background:#eefbf2; padding:1px 5px; border-radius:4px; }

/* Neighbourhood cards - keep photo, lighten scrim a lot for readability */
.food-white .hs-nearby-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.food-white .hs-nearby-scrim {
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.45) 100%) !important;
}

/* Footer link buttons */
.food-white .hs-footer-links a {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.food-white .hs-footer-links a:hover {
  border-color:#2DB54B !important;
  color:#2DB54B !important;
}
.food-white .hs-footer-links a i { color:#2DB54B !important; }

/* Breadcrumb */
.food-white .hs-breadcrumb { color:#555 !important; background:#fff !important; }
.food-white .hs-breadcrumb a { color:#111 !important; }
.food-white .hs-breadcrumb a:hover { color:#2DB54B !important; }

/* Empty state */
.food-white .no-results { background:#fff !important; color:#555 !important; }
.food-white .no-results a { color:#2DB54B !important; }
/* === END FOOD WHITE === */


/* === MUSIC WHITE ====================================================
   White/light theme override for /music page. Scoped to .music-white
   wrapper on BODY div. Mirrors SPORT WHITE pattern. Music accent =
   red #E8201A.
==================================================================== */
.music-white .hood-seamless,
.music-white .hood-content {
  background:#fff !important;
  color:#111 !important;
}
.music-white .hood-seamless { padding-bottom:40px; }

/* Hero text stays white (over photo) but scrim lightened inline.
   Force the labels to white/high-contrast for legibility. */
.music-white .hood-hero-full { border-bottom:1px solid rgba(0,0,0,.06); }
.music-white .hhf-label { color:rgba(255,255,255,.85); }
.music-white .hhf-name { color:#fff; text-shadow:0 2px 12px rgba(0,0,0,.45); }
.music-white .hhf-tagline { color:rgba(255,255,255,.95); text-shadow:0 1px 6px rgba(0,0,0,.5); }
.music-white .hhf-stats { color:rgba(255,255,255,.9); }
.music-white .hhf-stats span { color:rgba(255,255,255,.95); }
.music-white .hhf-ql { background:rgba(255,255,255,.92); color:#111; }
.music-white .hhf-ql:hover { background:#fff; color:#E8201A; }

/* Section headings */
.music-white .hood-seamless .csh-eyebrow { color:#E8201A !important; }
.music-white .hood-seamless .csh-title { color:#111 !important; }
.music-white .hood-seamless .sh-link { color:#E8201A !important; }

/* Take, stats bar, sections - all white, no dividers using white opacity */
.music-white .hs-take,
.music-white .hs-stats-bar,
.music-white .hs-tonight,
.music-white .hs-watch,
.music-white .hs-venues,
.music-white .hs-stories,
.music-white .hs-subsections,
.music-white .hs-nearby,
.music-white .hs-map,
.music-white .hs-footer-links {
  background:#fff !important;
  color:#111 !important;
  border-color:rgba(0,0,0,.06) !important;
}
.music-white .hs-take { border-bottom:1px solid rgba(0,0,0,.06); }
.music-white .hs-stats-bar { border-bottom:1px solid rgba(0,0,0,.06); }
.music-white .hs-eyebrow { color:#E8201A !important; }
.music-white .hs-take-body,
.music-white .hs-take-full { color:#222 !important; }
.music-white .hs-take-more summary { color:#E8201A !important; }
@media(max-width:900px){
  .music-white .hs-take-more summary {
    background:#fdecec !important;
    color:#E8201A !important;
  }
}

/* Stat chips - white card, red number */
.music-white .hs-stat-chip {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
}
.music-white .hs-stat-chip i { color:#E8201A !important; }
.music-white .hs-stat-value { color:#E8201A !important; font-weight:800; }
.music-white .hs-stat-label { color:#555 !important; }

/* Event, venue, story cards - white with subtle shadow */
.music-white .hs-ev-card,
.music-white .hs-venue-card,
.music-white .hs-story-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-radius:12px !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
  transition:transform .2s ease, box-shadow .2s ease;
}
.music-white .hs-ev-card:hover,
.music-white .hs-venue-card:hover,
.music-white .hs-story-card:hover {
  background:#fff !important;
  border-color:rgba(232,32,26,.35) !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.music-white .hs-venue-card.hs-venue-featured {
  border-color:#E8201A !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05), 0 0 0 1px rgba(232,32,26,.18);
}
.music-white .hs-ev-title a,
.music-white .hs-vc-name a { color:#111 !important; }
.music-white .hs-ev-title a:hover,
.music-white .hs-vc-name a:hover { color:#E8201A !important; }
.music-white .hs-ev-venue,
.music-white .hs-ev-time,
.music-white .hs-ev-price,
.music-white .hs-ev-meta,
.music-white .hs-story-exc,
.music-white .hs-story-meta { color:#555 !important; }
.music-white .hs-vc-cat { color:#E8201A !important; }
.music-white .hs-story-title { color:#111 !important; }
.music-white .hs-story-kicker { color:#E8201A !important; }

/* Venue/Story image - photo at full saturation, no scrim */
.music-white .hs-vc-img img,
.music-white .hs-story-img img,
.music-white .hs-ev-thumb img { filter:none !important; }
.music-white .hs-vc-price {
  background:rgba(255,255,255,.95) !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.06);
}

/* Buttons */
.music-white .btn-ghost-sm {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.15) !important;
}
.music-white .btn-ghost-sm:hover {
  border-color:#E8201A !important;
  color:#E8201A !important;
}
.music-white .btn-primary-sm {
  background:#E8201A !important;
  border-color:#E8201A !important;
  color:#fff !important;
}

/* Image fallback tile - red accent on white */
.music-white .mcr-img-fallback {
  background:#E8201A !important;
  color:#fff !important;
}

/* Sub-section tiles - white with coloured icon */
.music-white .hs-sub-tile {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.music-white .hs-sub-tile:hover {
  background:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.music-white .hs-sub-tile i { color:var(--sub-color, #E8201A) !important; }
.music-white .hs-sub-label { color:#111 !important; }

/* Watch placeholder - light dashed */
.music-white .hs-watch-placeholder {
  background:#fafafa !important;
  border:1px dashed rgba(0,0,0,.12) !important;
  border-radius:12px;
}
.music-white .hs-watch-placeholder i { color:rgba(0,0,0,.25) !important; }
.music-white .hs-watch-placeholder p { color:#555 !important; }
.music-white .hs-watch-hint { color:#777 !important; }
.music-white .hs-watch-hint code { color:#E8201A !important; background:#fdecec; padding:1px 5px; border-radius:4px; }

/* Neighbourhood cards - keep photo, lighten scrim a lot for readability */
.music-white .hs-nearby-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.music-white .hs-nearby-scrim {
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.45) 100%) !important;
}

/* Footer link buttons */
.music-white .hs-footer-links a {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.music-white .hs-footer-links a:hover {
  border-color:#E8201A !important;
  color:#E8201A !important;
}
.music-white .hs-footer-links a i { color:#E8201A !important; }

/* Breadcrumb */
.music-white .hs-breadcrumb { color:#555 !important; background:#fff !important; }
.music-white .hs-breadcrumb a { color:#111 !important; }
.music-white .hs-breadcrumb a:hover { color:#E8201A !important; }

/* Empty state */
.music-white .no-results { background:#fff !important; color:#555 !important; }
.music-white .no-results a { color:#E8201A !important; }
/* === END MUSIC WHITE === */


/* === CULTURE WHITE =================================================
   White/light theme override for /culture page. Scoped to .culture-white
   wrapper on BODY div. Mirrors SPORT WHITE pattern. Culture accent =
   violet #7C3AED.
==================================================================== */
.culture-white .hood-seamless,
.culture-white .hood-content {
  background:#fff !important;
  color:#111 !important;
}
.culture-white .hood-seamless { padding-bottom:40px; }

/* Hero text stays white (over photo) but scrim lightened inline.
   Force the labels to white/high-contrast for legibility. */
.culture-white .hood-hero-full { border-bottom:1px solid rgba(0,0,0,.06); }
.culture-white .hhf-label { color:rgba(255,255,255,.85); }
.culture-white .hhf-name { color:#fff; text-shadow:0 2px 12px rgba(0,0,0,.45); }
.culture-white .hhf-tagline { color:rgba(255,255,255,.95); text-shadow:0 1px 6px rgba(0,0,0,.5); }
.culture-white .hhf-stats { color:rgba(255,255,255,.9); }
.culture-white .hhf-stats span { color:rgba(255,255,255,.95); }
.culture-white .hhf-ql { background:rgba(255,255,255,.92); color:#111; }
.culture-white .hhf-ql:hover { background:#fff; color:#7C3AED; }

/* Section headings */
.culture-white .hood-seamless .csh-eyebrow { color:#7C3AED !important; }
.culture-white .hood-seamless .csh-title { color:#111 !important; }
.culture-white .hood-seamless .sh-link { color:#7C3AED !important; }

/* Take, stats bar, sections - all white, no dividers using white opacity */
.culture-white .hs-take,
.culture-white .hs-stats-bar,
.culture-white .hs-tonight,
.culture-white .hs-watch,
.culture-white .hs-venues,
.culture-white .hs-stories,
.culture-white .hs-subsections,
.culture-white .hs-nearby,
.culture-white .hs-map,
.culture-white .hs-footer-links {
  background:#fff !important;
  color:#111 !important;
  border-color:rgba(0,0,0,.06) !important;
}
.culture-white .hs-take { border-bottom:1px solid rgba(0,0,0,.06); }
.culture-white .hs-stats-bar { border-bottom:1px solid rgba(0,0,0,.06); }
.culture-white .hs-eyebrow { color:#7C3AED !important; }
.culture-white .hs-take-body,
.culture-white .hs-take-full { color:#222 !important; }
.culture-white .hs-take-more summary { color:#7C3AED !important; }
@media(max-width:900px){
  .culture-white .hs-take-more summary {
    background:#f3edff !important;
    color:#7C3AED !important;
  }
}

/* Stat chips - white card, violet number */
.culture-white .hs-stat-chip {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
}
.culture-white .hs-stat-chip i { color:#7C3AED !important; }
.culture-white .hs-stat-value { color:#7C3AED !important; font-weight:800; }
.culture-white .hs-stat-label { color:#555 !important; }

/* Event, venue, story cards - white with subtle shadow */
.culture-white .hs-ev-card,
.culture-white .hs-venue-card,
.culture-white .hs-story-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-radius:12px !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
  transition:transform .2s ease, box-shadow .2s ease;
}
.culture-white .hs-ev-card:hover,
.culture-white .hs-venue-card:hover,
.culture-white .hs-story-card:hover {
  background:#fff !important;
  border-color:rgba(124,58,237,.35) !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.culture-white .hs-venue-card.hs-venue-featured {
  border-color:#7C3AED !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05), 0 0 0 1px rgba(124,58,237,.18);
}
.culture-white .hs-ev-title a,
.culture-white .hs-vc-name a { color:#111 !important; }
.culture-white .hs-ev-title a:hover,
.culture-white .hs-vc-name a:hover { color:#7C3AED !important; }
.culture-white .hs-ev-venue,
.culture-white .hs-ev-time,
.culture-white .hs-ev-price,
.culture-white .hs-ev-meta,
.culture-white .hs-story-exc,
.culture-white .hs-story-meta { color:#555 !important; }
.culture-white .hs-vc-cat { color:#7C3AED !important; }
.culture-white .hs-story-title { color:#111 !important; }
.culture-white .hs-story-kicker { color:#7C3AED !important; }

/* Venue/Story image - photo at full saturation, no scrim */
.culture-white .hs-vc-img img,
.culture-white .hs-story-img img,
.culture-white .hs-ev-thumb img { filter:none !important; }
.culture-white .hs-vc-price {
  background:rgba(255,255,255,.95) !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.06);
}

/* Buttons */
.culture-white .btn-ghost-sm {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.15) !important;
}
.culture-white .btn-ghost-sm:hover {
  border-color:#7C3AED !important;
  color:#7C3AED !important;
}
.culture-white .btn-primary-sm {
  background:#7C3AED !important;
  border-color:#7C3AED !important;
  color:#fff !important;
}

/* Image fallback tile - violet accent on white */
.culture-white .mcr-img-fallback {
  background:#7C3AED !important;
  color:#fff !important;
}

/* Sub-section tiles - white with coloured icon */
.culture-white .hs-sub-tile {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.culture-white .hs-sub-tile:hover {
  background:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.culture-white .hs-sub-tile i { color:var(--sub-color, #7C3AED) !important; }
.culture-white .hs-sub-label { color:#111 !important; }

/* Watch placeholder - light dashed */
.culture-white .hs-watch-placeholder {
  background:#fafafa !important;
  border:1px dashed rgba(0,0,0,.12) !important;
  border-radius:12px;
}
.culture-white .hs-watch-placeholder i { color:rgba(0,0,0,.25) !important; }
.culture-white .hs-watch-placeholder p { color:#555 !important; }
.culture-white .hs-watch-hint { color:#777 !important; }
.culture-white .hs-watch-hint code { color:#7C3AED !important; background:#f3edff; padding:1px 5px; border-radius:4px; }

/* Neighbourhood cards - keep photo, lighten scrim a lot for readability */
.culture-white .hs-nearby-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.culture-white .hs-nearby-scrim {
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.45) 100%) !important;
}

/* Footer link buttons */
.culture-white .hs-footer-links a {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.culture-white .hs-footer-links a:hover {
  border-color:#7C3AED !important;
  color:#7C3AED !important;
}
.culture-white .hs-footer-links a i { color:#7C3AED !important; }

/* Breadcrumb */
.culture-white .hs-breadcrumb { color:#555 !important; background:#fff !important; }
.culture-white .hs-breadcrumb a { color:#111 !important; }
.culture-white .hs-breadcrumb a:hover { color:#7C3AED !important; }

/* Empty state */
.culture-white .no-results { background:#fff !important; color:#555 !important; }
.culture-white .no-results a { color:#7C3AED !important; }
/* === END CULTURE WHITE === */


/* === NIGHTLIFE WHITE =================================================
   White/light theme override for /nightlife page. Scoped to .nightlife-white
   wrapper on BODY div. Mirrors SPORT WHITE pattern. Nightlife accent =
   orange #FF6B00.
==================================================================== */
.nightlife-white .hood-seamless,
.nightlife-white .hood-content {
  background:#fff !important;
  color:#111 !important;
}
.nightlife-white .hood-seamless { padding-bottom:40px; }

/* Hero text stays white (over photo) but scrim lightened inline.
   Force the labels to white/high-contrast for legibility. */
.nightlife-white .hood-hero-full { border-bottom:1px solid rgba(0,0,0,.06); }
.nightlife-white .hhf-label { color:rgba(255,255,255,.85); }
.nightlife-white .hhf-name { color:#fff; text-shadow:0 2px 12px rgba(0,0,0,.45); }
.nightlife-white .hhf-tagline { color:rgba(255,255,255,.95); text-shadow:0 1px 6px rgba(0,0,0,.5); }
.nightlife-white .hhf-stats { color:rgba(255,255,255,.9); }
.nightlife-white .hhf-stats span { color:rgba(255,255,255,.95); }
.nightlife-white .hhf-ql { background:rgba(255,255,255,.92); color:#111; }
.nightlife-white .hhf-ql:hover { background:#fff; color:#FF6B00; }

/* Section headings */
.nightlife-white .hood-seamless .csh-eyebrow { color:#FF6B00 !important; }
.nightlife-white .hood-seamless .csh-title { color:#111 !important; }
.nightlife-white .hood-seamless .sh-link { color:#FF6B00 !important; }

/* Take, stats bar, sections - all white, no dividers using white opacity */
.nightlife-white .hs-take,
.nightlife-white .hs-stats-bar,
.nightlife-white .hs-tonight,
.nightlife-white .hs-watch,
.nightlife-white .hs-venues,
.nightlife-white .hs-stories,
.nightlife-white .hs-subsections,
.nightlife-white .hs-nearby,
.nightlife-white .hs-map,
.nightlife-white .hs-footer-links {
  background:#fff !important;
  color:#111 !important;
  border-color:rgba(0,0,0,.06) !important;
}
.nightlife-white .hs-take { border-bottom:1px solid rgba(0,0,0,.06); }
.nightlife-white .hs-stats-bar { border-bottom:1px solid rgba(0,0,0,.06); }
.nightlife-white .hs-eyebrow { color:#FF6B00 !important; }
.nightlife-white .hs-take-body,
.nightlife-white .hs-take-full { color:#222 !important; }
.nightlife-white .hs-take-more summary { color:#FF6B00 !important; }
@media(max-width:900px){
  .nightlife-white .hs-take-more summary {
    background:#fff4ea !important;
    color:#FF6B00 !important;
  }
}

/* Stat chips - white card, orange number */
.nightlife-white .hs-stat-chip {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
}
.nightlife-white .hs-stat-chip i { color:#FF6B00 !important; }
.nightlife-white .hs-stat-value { color:#FF6B00 !important; font-weight:800; }
.nightlife-white .hs-stat-label { color:#555 !important; }

/* Event, venue, story cards - white with subtle shadow */
.nightlife-white .hs-ev-card,
.nightlife-white .hs-venue-card,
.nightlife-white .hs-story-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-radius:12px !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
  transition:transform .2s ease, box-shadow .2s ease;
}
.nightlife-white .hs-ev-card:hover,
.nightlife-white .hs-venue-card:hover,
.nightlife-white .hs-story-card:hover {
  background:#fff !important;
  border-color:rgba(255,107,0,.35) !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.nightlife-white .hs-venue-card.hs-venue-featured {
  border-color:#FF6B00 !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05), 0 0 0 1px rgba(255,107,0,.18);
}
.nightlife-white .hs-ev-title a,
.nightlife-white .hs-vc-name a { color:#111 !important; }
.nightlife-white .hs-ev-title a:hover,
.nightlife-white .hs-vc-name a:hover { color:#FF6B00 !important; }
.nightlife-white .hs-ev-venue,
.nightlife-white .hs-ev-time,
.nightlife-white .hs-ev-price,
.nightlife-white .hs-ev-meta,
.nightlife-white .hs-story-exc,
.nightlife-white .hs-story-meta { color:#555 !important; }
.nightlife-white .hs-vc-cat { color:#FF6B00 !important; }
.nightlife-white .hs-story-title { color:#111 !important; }
.nightlife-white .hs-story-kicker { color:#FF6B00 !important; }

/* Venue/Story image - photo at full saturation, no scrim */
.nightlife-white .hs-vc-img img,
.nightlife-white .hs-story-img img,
.nightlife-white .hs-ev-thumb img { filter:none !important; }
.nightlife-white .hs-vc-price {
  background:rgba(255,255,255,.95) !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.06);
}

/* Buttons */
.nightlife-white .btn-ghost-sm {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.15) !important;
}
.nightlife-white .btn-ghost-sm:hover {
  border-color:#FF6B00 !important;
  color:#FF6B00 !important;
}
.nightlife-white .btn-primary-sm {
  background:#FF6B00 !important;
  border-color:#FF6B00 !important;
  color:#fff !important;
}

/* Image fallback tile - orange accent on white */
.nightlife-white .mcr-img-fallback {
  background:#FF6B00 !important;
  color:#fff !important;
}

/* Sub-section tiles - white with coloured icon */
.nightlife-white .hs-sub-tile {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.nightlife-white .hs-sub-tile:hover {
  background:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.nightlife-white .hs-sub-tile i { color:var(--sub-color, #FF6B00) !important; }
.nightlife-white .hs-sub-label { color:#111 !important; }

/* Watch placeholder - light dashed */
.nightlife-white .hs-watch-placeholder {
  background:#fafafa !important;
  border:1px dashed rgba(0,0,0,.12) !important;
  border-radius:12px;
}
.nightlife-white .hs-watch-placeholder i { color:rgba(0,0,0,.25) !important; }
.nightlife-white .hs-watch-placeholder p { color:#555 !important; }
.nightlife-white .hs-watch-hint { color:#777 !important; }
.nightlife-white .hs-watch-hint code { color:#FF6B00 !important; background:#fff4ea; padding:1px 5px; border-radius:4px; }

/* Neighbourhood cards - keep photo, lighten scrim a lot for readability */
.nightlife-white .hs-nearby-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
}
.nightlife-white .hs-nearby-scrim {
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.45) 100%) !important;
}

/* Footer link buttons */
.nightlife-white .hs-footer-links a {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.04);
}
.nightlife-white .hs-footer-links a:hover {
  border-color:#FF6B00 !important;
  color:#FF6B00 !important;
}
.nightlife-white .hs-footer-links a i { color:#FF6B00 !important; }

/* Breadcrumb */
.nightlife-white .hs-breadcrumb { color:#555 !important; background:#fff !important; }
.nightlife-white .hs-breadcrumb a { color:#111 !important; }
.nightlife-white .hs-breadcrumb a:hover { color:#FF6B00 !important; }

/* Empty state */
.nightlife-white .no-results { background:#fff !important; color:#555 !important; }
.nightlife-white .no-results a { color:#FF6B00 !important; }
/* === END NIGHTLIFE WHITE === */


/* === VENUE WHITE ===================================================
   White/light theme override for single venue posts. Scoped to
   .single-venue-white wrapper on BODY. Mirrors SPORT WHITE pattern.
   Venue accent = orange #FF6B00 (broad).
==================================================================== */
.single-venue-white .CENTRE.single-centre,
.single-venue-white .CENTRE.single-centre.white-bg {
  background:#fff !important;
  color:#111 !important;
}

/* Hero scrim - lighten so photo reads, but keep title legible */
.single-venue-white .evs-hero-scrim {
  background:linear-gradient(to bottom, rgba(0,0,0,.05) 0%, rgba(0,0,0,.30) 55%, rgba(0,0,0,.65) 100%) !important;
}
.single-venue-white .evs-hero-meta { color:rgba(255,255,255,.95) !important; }
.single-venue-white .evs-hero-meta i { color:rgba(255,255,255,.85) !important; }

/* Breadcrumb */
.single-venue-white .evs-breadcrumb { color:#555 !important; }
.single-venue-white .evs-breadcrumb a { color:#111 !important; }
.single-venue-white .evs-breadcrumb a:hover { color:#FF6B00 !important; }
.single-venue-white .evs-bc-current { color:#FF6B00 !important; }

/* Section heads - orange accent */
.single-venue-white .evs-section-head {
  color:#111 !important;
  border-bottom:1px solid rgba(0,0,0,.08) !important;
}
.single-venue-white .evs-section-head::before { background:#FF6B00 !important; }

/* Body prose */
.single-venue-white .evs-description,
.single-venue-white .evs-description p,
.single-venue-white .evs-description li,
.single-venue-white .single-content,
.single-venue-white .single-content p,
.single-venue-white .single-content li { color:#222 !important; }
.single-venue-white .evs-description a,
.single-venue-white .single-content a { color:#FF6B00 !important; }

/* Quick-fact chips - white card with subtle border */
.single-venue-white .evs-chip {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.10) !important;
  color:#222 !important;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.single-venue-white .evs-chip:hover { border-color:rgba(255,107,0,.45) !important; }
.single-venue-white .evs-chip i { color:#FF6B00 !important; }

/* Transport / opening-hours rows */
.single-venue-white .evs-transport-item {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  color:#222 !important;
}
.single-venue-white .evs-transport-icon {
  background:rgba(255,107,0,.10) !important;
}
.single-venue-white .evs-transport-icon i { color:#FF6B00 !important; }

/* Buttons */
.single-venue-white .btn-ghost {
  background:#fff !important;
  color:#111 !important;
  border:1px solid rgba(0,0,0,.15) !important;
}
.single-venue-white .btn-ghost:hover {
  border-color:#FF6B00 !important;
  color:#FF6B00 !important;
}
.single-venue-white .btn-primary {
  background:#FF6B00 !important;
  border-color:#FF6B00 !important;
  color:#fff !important;
}

/* Related venue cards + sidebar tiles */
.single-venue-white .evs-related-card,
.single-venue-white .evs-side-card,
.single-venue-white .evs-event-row {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
}
.single-venue-white .evs-related-card:hover,
.single-venue-white .evs-side-card:hover,
.single-venue-white .evs-event-row:hover {
  border-color:rgba(255,107,0,.35) !important;
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.single-venue-white .evs-related-card a,
.single-venue-white .evs-side-card a { color:#111 !important; }
.single-venue-white .evs-related-card a:hover,
.single-venue-white .evs-side-card a:hover { color:#FF6B00 !important; }

/* Sticky CTA bar - flip dark backdrop to white */
.single-venue-white .mcr-sticky-cta {
  background:rgba(255,255,255,.97) !important;
  border-top:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 -4px 24px rgba(0,0,0,.10) !important;
}
.single-venue-white .mcr-sticky-cta .mcr-sticky-ticket {
  background:#FF6B00 !important;
  color:#fff !important;
}
.single-venue-white .mcr-sticky-cta .mcr-sticky-more {
  color:#222 !important;
  border:1px solid rgba(0,0,0,.18) !important;
  background:#fff !important;
}

/* Share bar */
.single-venue-white .mcr-share-bar {
  border-top:1px solid rgba(0,0,0,.08) !important;
}
.single-venue-white .mcr-share-bar a {
  background:#fff !important;
  color:#222 !important;
  border:1px solid rgba(0,0,0,.12) !important;
}
.single-venue-white .mcr-share-bar a:hover {
  border-color:#FF6B00 !important;
  color:#FF6B00 !important;
}
/* === END VENUE WHITE === */


/* === STORY WHITE ===================================================
   White/light theme override for single story / standard post.
   Scoped to .single-story-white wrapper on BODY. Mirrors SPORT WHITE
   pattern. Story accent = violet #7C3AED (culture).
==================================================================== */
.single-story-white .CENTRE.single-centre,
.single-story-white .CENTRE.single-centre.white-bg {
  background:#fff !important;
  color:#111 !important;
}

/* Hero scrim - lighten for hero photo */
.single-story-white .shf-scrim,
.single-story-white .story-hero-scrim {
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.20) 60%, rgba(0,0,0,.55) 100%) !important;
}
.single-story-white .shf-cat {
  box-shadow:0 2px 8px rgba(0,0,0,.18);
}

/* Back link */
.single-story-white .story-back {
  color:#7C3AED !important;
}
.single-story-white .story-back:hover { color:#5B21B6 !important; }

/* Article header */
.single-story-white .sv2-cat,
.single-story-white .sv2-kicker { color:#7C3AED !important; }
.single-story-white .sv2-title,
.single-story-white .story-title { color:#111 !important; }
.single-story-white .sv2-sub,
.single-story-white .story-sub,
.single-story-white .sv2-meta,
.single-story-white .story-meta { color:#555 !important; }
.single-story-white .sv2-author a,
.single-story-white .story-author a { color:#111 !important; }
.single-story-white .sv2-author a:hover { color:#7C3AED !important; }

/* Article body prose */
.single-story-white .story-article-v2,
.single-story-white .sv2-body,
.single-story-white .single-content,
.single-story-white .story-content {
  color:#222 !important;
}
.single-story-white .sv2-body p,
.single-story-white .single-content p,
.single-story-white .story-content p { color:#222 !important; }
.single-story-white .sv2-body h2,
.single-story-white .sv2-body h3,
.single-story-white .single-content h2,
.single-story-white .single-content h3 { color:#111 !important; }
.single-story-white .sv2-body a,
.single-story-white .single-content a,
.single-story-white .story-content a { color:#7C3AED !important; }
.single-story-white .sv2-body a:hover,
.single-story-white .single-content a:hover { color:#5B21B6 !important; }
.single-story-white .sv2-body blockquote,
.single-story-white .single-content blockquote {
  border-left:3px solid #7C3AED !important;
  color:#333 !important;
  background:#faf7ff !important;
}

/* Tags / chips */
.single-story-white .sv2-tag,
.single-story-white .story-tag {
  background:#fff !important;
  color:#222 !important;
  border:1px solid rgba(0,0,0,.12) !important;
}
.single-story-white .sv2-tag:hover,
.single-story-white .story-tag:hover {
  border-color:#7C3AED !important;
  color:#7C3AED !important;
}

/* Related cards */
.single-story-white .sv2-rel-card,
.single-story-white .story-related-card,
.single-story-white .evs-related-card {
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 1px 3px rgba(0,0,0,.05);
  color:#111 !important;
}
.single-story-white .sv2-rel-card:hover,
.single-story-white .story-related-card:hover {
  border-color:rgba(124,58,237,.35) !important;
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.single-story-white .sv2-rel-card a,
.single-story-white .story-related-card a { color:#111 !important; }
.single-story-white .sv2-rel-card a:hover { color:#7C3AED !important; }
.single-story-white .sv2-rel-cat,
.single-story-white .story-related-cat { color:#7C3AED !important; }

/* Share bar */
.single-story-white .mcr-share-bar {
  border-top:1px solid rgba(0,0,0,.08) !important;
}
.single-story-white .mcr-share-bar a {
  background:#fff !important;
  color:#222 !important;
  border:1px solid rgba(0,0,0,.12) !important;
}
.single-story-white .mcr-share-bar a:hover {
  border-color:#7C3AED !important;
  color:#7C3AED !important;
}

/* Sticky CTA bar (rare on stories but covers any inheritance) */
.single-story-white .mcr-sticky-cta {
  background:rgba(255,255,255,.97) !important;
  border-top:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 -4px 24px rgba(0,0,0,.10) !important;
}
/* === END STORY WHITE === */


/* === GTA-STYLE FILTER v12.7.84 — applied to all photo cards site-wide === */
.fhub-fitpit-photo, .fhub-fitpit-photo img,
.fhub-cardgame-frame img, .fhub-cardgame-frame .fhub-card-photo,
.fhub-photo-tile, .fhub-photo-tile img,
.fhub-style-tile img, .fhub-style-tile,
.fhub-hood-card img, .fhub-brand-card img,
.fhub-shop-img, .fhub-shop-img img,
.ev-card-img img,
.cat-ev-card img, .scd-card img, .cvg-card img {
  filter:saturate(1.45) contrast(1.1) brightness(1.03);
  transition:filter .25s ease;
}
.fhub-fitpit-photo:hover, .fhub-fitpit-photo img:hover,
.fhub-cardgame-frame:hover img,
.fhub-photo-tile:hover img,
.fhub-style-tile:hover img,
.fhub-hood-card:hover img, .fhub-brand-card:hover img,
.ev-card-img:hover img {
  filter:saturate(1.65) contrast(1.15) brightness(1.06);
}
.fhub-cardgame-frame::after,
.fhub-fitpit-card::after {
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(255,140,0,.08) 0%, transparent 45%, rgba(0,150,255,.08) 100%);
  mix-blend-mode:overlay;
  pointer-events:none;
  border-radius:inherit;
}
/* === END GTA FILTER === */


/* === EVENT CARD WHITE-THEME OVERRIDE v12.7.85 === */
/* Event cards keep white text + dark shadow on ALL *-white category pages.
   The *-white blocks made hs-* cards have dark text but applied too broadly to ev-card. */
.sport-white .ev-card .ev-card-title,
.sport-white .ev-card .ev-card-title a,
.food-white .ev-card .ev-card-title,
.food-white .ev-card .ev-card-title a,
.music-white .ev-card .ev-card-title,
.music-white .ev-card .ev-card-title a,
.culture-white .ev-card .ev-card-title,
.culture-white .ev-card .ev-card-title a,
.nightlife-white .ev-card .ev-card-title,
.nightlife-white .ev-card .ev-card-title a {
  color:#fff !important;
  background:transparent !important;
  text-shadow:0 2px 16px rgba(0,0,0,.85), 0 0 30px rgba(0,0,0,.55) !important;
}
.sport-white .ev-card .ev-card-meta,
.sport-white .ev-card .ev-card-meta span,
.food-white .ev-card .ev-card-meta,
.food-white .ev-card .ev-card-meta span,
.music-white .ev-card .ev-card-meta,
.music-white .ev-card .ev-card-meta span,
.culture-white .ev-card .ev-card-meta,
.culture-white .ev-card .ev-card-meta span,
.nightlife-white .ev-card .ev-card-meta,
.nightlife-white .ev-card .ev-card-meta span {
  color:rgba(255,255,255,.85) !important;
  background:transparent !important;
  text-shadow:0 1px 6px rgba(0,0,0,.7) !important;
}
.sport-white .ev-card .ev-card-meta i,
.food-white .ev-card .ev-card-meta i,
.music-white .ev-card .ev-card-meta i,
.culture-white .ev-card .ev-card-meta i,
.nightlife-white .ev-card .ev-card-meta i {
  color:rgba(255,255,255,.6) !important;
  background:transparent !important;
}
.sport-white .ev-card .ev-card-body,
.food-white .ev-card .ev-card-body,
.music-white .ev-card .ev-card-body,
.culture-white .ev-card .ev-card-body,
.nightlife-white .ev-card .ev-card-body {
  background:transparent !important;
}
/* End: lift any blue/colored highlight from text spans inside .ev-card-meta */
.sport-white .ev-card *,
.food-white .ev-card *,
.music-white .ev-card *,
.culture-white .ev-card *,
.nightlife-white .ev-card * {
  background-color:transparent !important;
}
.sport-white .ev-card .ev-card-cat,
.food-white .ev-card .ev-card-cat,
.music-white .ev-card .ev-card-cat,
.culture-white .ev-card .ev-card-cat,
.nightlife-white .ev-card .ev-card-cat {
  background:rgba(0,0,0,.55) !important;
  backdrop-filter:blur(8px);
}
.sport-white .ev-card .ev-card-ctas .btn-ghost-sm,
.food-white .ev-card .ev-card-ctas .btn-ghost-sm,
.music-white .ev-card .ev-card-ctas .btn-ghost-sm,
.culture-white .ev-card .ev-card-ctas .btn-ghost-sm,
.nightlife-white .ev-card .ev-card-ctas .btn-ghost-sm {
  background:rgba(255,255,255,.18) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.4) !important;
}
.sport-white .ev-card .ev-card-ctas .btn-tickets,
.food-white .ev-card .ev-card-ctas .btn-tickets,
.music-white .ev-card .ev-card-ctas .btn-tickets,
.culture-white .ev-card .ev-card-ctas .btn-tickets,
.nightlife-white .ev-card .ev-card-ctas .btn-tickets {
  color:#fff !important;
  background:var(--cc, #e8201a) !important;
}
/* === END EVENT CARD WHITE OVERRIDE === */


/* === HERO TEXT CONTRAST OVERRIDE v12.7.86 — white text + dark shadow on hero photos for all *-white pages === */
.sport-white .hood-hero,
.food-white .hood-hero,
.music-white .hood-hero,
.culture-white .hood-hero,
.nightlife-white .hood-hero,
.sport-white .hs-hero,
.food-white .hs-hero,
.music-white .hs-hero,
.culture-white .hs-hero,
.nightlife-white .hs-hero {
  color:#fff !important;
}
.sport-white .hood-hero h1,
.food-white .hood-hero h1,
.music-white .hood-hero h1,
.culture-white .hood-hero h1,
.nightlife-white .hood-hero h1,
.sport-white .hs-hero h1,
.sport-white .hs-hero h2,
.food-white .hs-hero h1,
.food-white .hs-hero h2,
.music-white .hs-hero h1,
.music-white .hs-hero h2,
.culture-white .hs-hero h1,
.culture-white .hs-hero h2,
.nightlife-white .hs-hero h1,
.nightlife-white .hs-hero h2,
.sport-white [class*="hero"] h1, .sport-white [class*="hero"] h2, .sport-white [class*="hero"] p,
.food-white [class*="hero"] h1, .food-white [class*="hero"] h2, .food-white [class*="hero"] p,
.music-white [class*="hero"] h1, .music-white [class*="hero"] h2, .music-white [class*="hero"] p,
.culture-white [class*="hero"] h1, .culture-white [class*="hero"] h2, .culture-white [class*="hero"] p,
.nightlife-white [class*="hero"] h1, .nightlife-white [class*="hero"] h2, .nightlife-white [class*="hero"] p {
  color:#fff !important;
  text-shadow:0 2px 14px rgba(0,0,0,.7), 0 0 30px rgba(0,0,0,.5) !important;
}
/* breadcrumb on hero */
.sport-white [class*="breadcrumb"], .sport-white [class*="breadcrumb"] a,
.food-white [class*="breadcrumb"], .food-white [class*="breadcrumb"] a,
.music-white [class*="breadcrumb"], .music-white [class*="breadcrumb"] a,
.culture-white [class*="breadcrumb"], .culture-white [class*="breadcrumb"] a,
.nightlife-white [class*="breadcrumb"], .nightlife-white [class*="breadcrumb"] a {
  color:rgba(255,255,255,.85) !important;
  text-shadow:0 1px 4px rgba(0,0,0,.6) !important;
}
/* === END HERO CONTRAST OVERRIDE === */
