/* 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); }

/* Cinematic overlay — on .ev-card-img so it sits between image and text */
.ev-card-img::after {
  content:'';position:absolute;inset:0;
  background:
    radial-gradient(ellipse at 0% 0%,
      color-mix(in srgb, var(--cc,#e8201a) 22%, transparent) 0%,
      transparent 52%
    ),
    linear-gradient(180deg,
      rgba(0,0,0,.04) 0%,
      rgba(0,0,0,0)   28%,
      rgba(0,0,0,.48) 55%,
      rgba(0,0,0,.88) 76%,
      rgba(0,0,0,.97) 100%
    );
  pointer-events:none;z-index:1;
}

/* 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:1rem;font-weight:900;line-height:1.22;
  letter-spacing:-.025em;color:#fff;
  text-shadow:0 2px 16px rgba(0,0,0,.85), 0 0 30px rgba(0,0,0,.5);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.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: ~5 on desktop, ~3 tablet, ~2 mobile */
.ev-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:16px;
  padding:20px 20px 32px;
  margin:0;
}

.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:64px; }
}

/* ══════════════════════════════════════
   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:rgba(255,255,255,.08);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:rgba(255,255,255,.08);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,.6);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-image:linear-gradient(to right,#0c0c0e 0,#0c0c0e var(--sb-w),transparent var(--sb-w));
  background-color:transparent;
  min-height:100vh;
}
@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,.55);
  letter-spacing:.04em;
  display:flex;
  align-items:center;
  gap:5px;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .25s ease, transform .25s ease;
}
.hood-cta i { font-size:.55em; }
.hood:hover .hood-cta { opacity:1; transform:translateY(0); }
/* Left accent bar on hover */
.hood::before {
  content:'';
  position:absolute;
  top:0;bottom:0;left:0;
  width:3px;
  background:var(--hc,#1A56FF);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .25s ease;
  z-index:3;
}
.hood:hover::before { transform:scaleX(1); }
/* 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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);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:rgba(255,255,255,.08);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:rgba(255,255,255,.08);
  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);}

/* No events state */
.nl-no-events{text-align:center;padding:48px 24px;display:flex;flex-direction:column;align-items:center;gap:12px;}
.nl-noe-icon{font-size:2rem;color:rgba(255,107,0,.4);}
.nl-no-events p{font-size:.82rem;color:rgba(255,255,255,.5);margin:0;}

/* NL venue grid */
.nl-venue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;padding:0 24px 24px;}
.nlv-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;}
.nlv-card:hover{border-color:rgba(255,255,255,.15);transform:translateY(-2px);}
.nlv-img-wrap{height:150px;overflow:hidden;position:relative;}
.nlv-img-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.nlv-card:hover .nlv-img-wrap img{transform:scale(1.05);}
.nlv-cap-tag{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;}
.nlv-body{padding:13px 15px;}
.nlv-type{font-size:.55rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;}
.nlv-name{font-size:.88rem;font-weight:800;color:#fff;margin:0 0 4px;}
.nlv-hood{font-size:.6rem;color:rgba(255,255,255,.4);display:flex;align-items:center;gap:4px;margin-bottom:6px;}
.nlv-desc{font-size:.65rem;color:rgba(255,255,255,.55);line-height:1.5;margin:0 0 10px;}
.nlv-ctas{display:flex;gap:6px;}

/* Area blocks */
.nl-area-blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 24px 24px;}
@media(max-width:700px){.nl-area-blocks{grid-template-columns:1fr 1fr;}}
@media(max-width:460px){.nl-area-blocks{grid-template-columns:1fr;}}
.nla-block{display:flex;align-items:center;gap:12px;padding:16px;border-radius:10px;border:1px solid rgba(255,255,255,.06);transition:all .15s;}
.nla-block:hover{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.06) !important;}
.nlab-icon{font-size:1.1rem;flex-shrink:0;}
.nlab-body{flex:1;min-width:0;}
.nlab-name{font-size:.78rem;font-weight:800;color:#fff;margin:0 0 3px;}
.nlab-desc{font-size:.6rem;color:rgba(255,255,255,.45);line-height:1.4;margin:0;}
.nlab-count{font-size:.58rem;font-weight:700;color:rgba(255,255,255,.3);white-space:nowrap;}

/* ══════════════════════════════════════════════
   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,.nl-venue-grid,.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:rgba(255,255,255,.08);
  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:340px;display:flex;flex-direction:column;
  justify-content:flex-end;overflow:hidden;
}
.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,.92) 0%,rgba(0,0,0,.5) 50%,rgba(0,0,0,.2) 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 {
  position:absolute;bottom:0;right:0;z-index:4;
  background:rgba(0,0,0,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-top-left-radius:12px;
  border:1px solid rgba(255,255,255,.12);border-right:none;border-bottom:none;
  padding:5px 12px;font-size:.55rem;font-weight:800;color:#fff;letter-spacing:.02em;
}
.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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08); 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:rgba(255,255,255,.08); 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:rgba(255,255,255,.08); 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; }
}

/* ── Nightlife venue grid on mobile ──────────────────────────────────── */
@media(max-width:500px) {
  .nl-venue-grid { grid-template-columns:1fr; padding:0 14px 14px; }
  .nlv-card { display:flex; flex-direction:row; height:80px; }
  .nlv-img-wrap { width:80px; height:80px; flex-shrink:0; }
}

/* ── 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:40px;height:40px;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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08); 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:rgba(255,255,255,.08); color:#0c0c0e; }
.CENTRE.white-bg .efa-bottom { border-top-color:rgba(0,0,0,.08); }
.CENTRE.white-bg .efa-vb {
  color:rgba(0,0,0,.45);
  background:rgba(0,0,0,.04);
  border-color:rgba(0,0,0,.1);
}
.CENTRE.white-bg .efa-vb:hover { color:#fff;background:rgba(0,0,0,.15); }
.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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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-ev-pill {
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  padding:7px 11px 7px 10px;
  border-radius:8px;
  background:rgba(0,0,0,.5);
  border:1px solid rgba(255,255,255,.08);
  border-left:2.5px solid var(--ec,rgba(255,255,255,.3));
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:0 2px 8px rgba(0,0,0,.35);
  cursor:pointer;
  transition:transform .18s cubic-bezier(.34,1.5,.64,1), background .15s ease;
  text-align:left;
  min-width:110px;
  max-width:200px;
  position:relative;
  overflow:hidden;
}
.wot-ev-pill::before {
  content:'';
  position:absolute;
  inset:0;
  background:var(--ec,transparent);
  opacity:.14;
  border-radius:inherit;
  pointer-events:none;
  transition:opacity .15s ease;
  z-index:0;
}
.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-ep-title {
  font-family:'Inter Tight',sans-serif;
  font-size:.68rem;
  font-weight:800;
  color:#ffffff;
  line-height:1.2;
  letter-spacing:-.02em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:185px;
}

/* ── Sub (venue · price) ───────────────────────────────────── */
.wot-ep-sub {
  font-size:.47rem;
  color:rgba(255,255,255,.42);
  font-weight:400;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:185px;
  letter-spacing:.01em;
}

/* 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){
  /* ══ Advanced mobile drawer ══════════════════════════════════════
     Layout: [60px img | badge+title+meta+desc]  →  [btn bottom]
  ════════════════════════════════════════════════════════════════ */
  .wot-expand-inner{
    display:grid !important;
    grid-template-columns:60px 1fr !important;
    grid-template-areas:"img left" "btn btn" !important;
    padding:16px !important;
    gap:12px 14px !important;
    align-items:start;
    background:linear-gradient(150deg,color-mix(in srgb,var(--ec,#888) 20%,#0d0d12) 0%,#0d0d12 70%) !important;
  }
  /* Image */
  .wot-expand-img{
    grid-area:img;
    width:60px !important;height:60px !important;
    border-radius:10px !important;
    align-self:start;
    box-shadow:0 4px 14px rgba(0,0,0,.45);
  }
  .wot-expand-img img{border-radius:10px;}
  /* Content column */
  .wot-expand-left{grid-area:left;min-width:0;}
  .wot-expand-badge{
    font-size:.4rem !important;margin-bottom:5px !important;
    padding:3px 9px !important;display:inline-block !important;
    letter-spacing:.13em !important;
  }
  .wot-expand-title{
    font-size:1rem !important;font-weight:900 !important;
    line-height:1.2 !important;margin-bottom:0 !important;
    display:-webkit-box !important;-webkit-line-clamp:2;
    -webkit-box-orient:vertical;overflow:hidden;
    letter-spacing:-.03em !important;
  }
  /* Divider + meta row */
  .wot-expand-meta{
    font-size:.6rem !important;gap:6px 14px !important;
    margin:8px 0 !important;padding:8px 0 !important;
    border-top:1px solid rgba(255,255,255,.08) !important;
    flex-wrap:wrap !important;
  }
  /* Description */
  .wot-expand-desc{
    font-size:.6rem !important;line-height:1.55 !important;
    color:rgba(255,255,255,.45) !important;
    margin:0 !important;
    display:-webkit-box !important;-webkit-line-clamp:2;
    -webkit-box-orient:vertical;overflow:hidden;
  }
  /* Button — compact, left-aligned, accent colour */
  .wot-expand-btn{
    grid-area:btn;
    display:inline-flex !important;width:auto !important;
    justify-self:start !important;
    padding:10px 26px !important;font-size:.56rem !important;
    border-radius:8px !important;letter-spacing:.07em !important;
    box-shadow:0 4px 16px rgba(0,0,0,.4) !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 ── */
.wot-tg { background:#000000 !important; }
.wot-tg-row { border-bottom-color:rgba(255,255,255,.07) !important; }
.wot-tg-time {
  color:#ffffff !important;
  font-size:.56rem !important;
  font-weight:200 !important;
  letter-spacing:.05em !important;
  opacity:1 !important;
}
.wot-tg-ev-row { border-left-color:rgba(255,255,255,.1) !important; }
.wot-tg-empty i { color:rgba(255,255,255,.1) !important; }
.wot-tg-empty div { color:rgba(255,255,255,.3) !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 -28px 0 -28px !important; min-height:70vh !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('https://images.unsplash.com/photo-1513635269975-59663e0ac1ad?w=1600&q=80');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(to right,rgba(0,0,0,.92) 35%,rgba(0,0,0,.55) 100%),url('https://images.unsplash.com/photo-1513635269975-59663e0ac1ad?w=1400&q=80');background-size:cover;background-position:center;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:rgba(255,255,255,.08);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:rgba(255,255,255,.08);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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);
  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:rgba(255,255,255,.08);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:rgba(255,255,255,.08);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
══════════════════════════════════════════════════════════════════════ */
/* ── backdrop overlay (WP) ── */
#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-
}
#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:38px;
  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:2px 16px 6px;
}
.mcrd-peek-search .mcrd-search-bar{
  width:100%;height:38px;
  border-radius:12px;padding:0 14px 0 36px;
  background:#000;
  border:1.5px solid rgba(255,255,255,.6);
  color:#fff;font-size:.52rem;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}
}
}

/* ═══════════════════════════════════════════════════════════════════════
   MOBILE HOMEPAGE FIXES — v9.91
══════════════════════════════════════════════════════════════════════ */
@media(max-width:900px){

  /* 1. Hero slider — compact + 1/5 bigger */
  section.HERO.hero-slider { min-height:27vh !important; height:27vh !important; }

  /* Re-enable videos on mobile — old rule was hiding them */
  section.HERO.hero-slider .vs-vid-wrap { display:block !important; opacity:.7 !important; }

  /* 2. Slider title — match meta font, 2x size, bold */
  section.HERO.hero-slider .vs-title {
    font-family:'Inter',sans-serif !important;
    font-size:1.2rem !important;
    font-weight:700 !important;
    letter-spacing:-.01em !important;
  }

  /* 3. Hide the category tag (Nightlife orange box etc) */
  section.HERO.hero-slider .vs-tag { display:none !important; }

  /* 4. RGB line — under mobile nav, above hero */
  #MOB-HEADER::after {
    content:'';
    display:block;
    position:absolute;
    bottom:-1px;left:0;right:0;
    height:1px;
    background:linear-gradient(90deg, #00c853 0%, #1A56FF 50%, #e8002a 100%);
    z-index:10;
  }
}

/* 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;
}

/* 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 ─────────────────────────────────────────── */
.wot-tg { background:#000 !important; perspective:1200px !important; }
.wot-tg-row { background:#000 !important; }
.wot-tg-ev-row { background:#000 !important; }
.wot-filterbar { background:#000 !important; }

/* Time labels — lighter grey default, brighter NOW */
.wot-tg-time { color:rgba(255,255,255,.45) !important; font-weight:600 !important; transition:color .2s ease !important; }
.wot-tg-row.wot-past .wot-tg-time        { color:rgba(255,255,255,.12) !important; }
.wot-tg-row.wot-near-past .wot-tg-time   { color:rgba(255,255,255,.2) !important; }
.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-tg-row.wot-near-future .wot-tg-time { color:rgba(255,255,255,.45) !important; }
.wot-tg-row.wot-far-future .wot-tg-time  { color:rgba(255,255,255,.35) !important; }

/* Row hover highlight */
.wot-tg-row:not(.wot-past):hover { background:rgba(255,255,255,.015) !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-tg-ev-row::after {
  content:'' !important; position:sticky !important; right:0 !important;
  flex-shrink:0 !important; width:32px !important; min-height:100% !important;
  background:linear-gradient(90deg, transparent, #000) !important;
  pointer-events:none !important; z-index:2 !important;
  margin-left:-32px !important;
}

/* 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-ev-pill::after {
  content:'' !important; display:block !important;
  position:absolute !important; bottom:0 !important; left:0 !important; right:0 !important;
  top:auto !important; height:1.5px !important; border-radius:0 0 8px 8px !important;
  z-index:2 !important; opacity:.6 !important;
  background:linear-gradient(90deg, rgba(255,255,255,0), var(--ec, rgba(255,255,255,.3)), rgba(255,255,255,0)) !important;
}
.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); }

/* 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:#7C3AED !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 {
    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:none !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}}

/* ═══════════════════════════════════════════════════════════════════
   MOBILE ALIGNMENT + FULL-WIDTH FIXES (Apr 2026)
   ═══════════════════════════════════════════════════════════════════ */

/* 1. Events page masthead — force full-width, flush to top on mobile */
@media(max-width:900px) {
  .ev-page-masthead {
    width:100%;
    margin-left:0 !important;
    margin-right:0 !important;
  }
  /* cat-page-centre has padding:0 from its own rule — masthead flushes top */
  main.CENTRE.cat-page-centre {
    padding-top:0 !important;
  }
}

/* 2. Single event page: hero bleeds to top on mobile (compensate single-centre padding) */
@media(max-width:900px) {
  .single-mcr_event .mcrev-hero {
    margin-top:-16px;
  }
}
@media(max-width:480px) {
  .single-mcr_event .mcrev-hero {
    margin-top:-12px;
  }
}

/* 3. Filter bar + results — full width on cat pages */
@media(max-width:640px) {
  .ev-filter-advanced {
    padding-left:12px !important;
    padding-right:12px !important;
  }
  .ev-results-head { padding-left:12px !important; padding-right:12px !important; }
  .ev-timeline     { padding-left:12px !important; padding-right:12px !important; }
}

/* 4. Event single page mobile — better spacing + readability */
@media(max-width:640px) {
  /* Transport section — full readable width */
  .mcrev .mcrev-transport { padding:0; }
  /* FAQ — comfortable touch targets */
  .mcrev .mcrev-faq-btn { padding:14px 16px; font-size:13px; }
  /* Section headings — tighter on mobile */
  .mcrev .mcrev-sh-lbl { font-size:9px; }
  /* Related events — 2 column grid */
  .mcrev .mcrev-ev-grid-3 { grid-template-columns:repeat(2,1fr) !important; gap:8px !important; }
  /* Venue card map — smaller on mobile */
  .mcrev .mcrev-venue-map { height:100px; }
  /* Facts row — ensure 2 columns fit */
  .evs-facts { grid-template-columns:1fr 1fr !important; }
}

/* 5. Event single — facts grid standout on mobile */
@media(max-width:900px) {
  .CENTRE.white-bg .evs-facts {
    gap:10px;
  }
  .CENTRE.white-bg .evs-fact {
    background:rgba(255,255,255,.08);
    border:1.5px solid rgba(0,0,0,.1);
    border-left:4px solid var(--dc-red,#e8201a);
    border-radius:10px;
    padding:14px 16px;
    box-shadow:0 2px 8px rgba(0,0,0,.07);
  }
  .CENTRE.white-bg .evs-fact-label {
    font-size:.6rem;
    font-weight:800;
    color:var(--dc-red,#e8201a);
    letter-spacing:.12em;
    margin-bottom:6px;
  }
  .CENTRE.white-bg .evs-fact-label i {
    color:var(--dc-red,#e8201a);
  }
  .CENTRE.white-bg .evs-fact-val {
    font-size:1rem;
    font-weight:800;
    color:#0c0c0e;
    line-height:1.2;
  }
}
/* ── Explore section on white bg — dark text ── */
.mob-explore-section .sh-title,
.hoods-section .sh-title { color:#0c0c0e !important; }
.mob-explore-section .sh-eyebrow { color:#0c0c0e !important; }
.mob-explore-section .sh-link { color:#0c0c0e !important; }


/* ── WOT flush to nav on mobile ── */
@media(max-width:900px){
  section.WOT { margin-top:0 !important; padding-top:0 !important; border-top:none !important; }
  main.CENTRE > section.HERO.hero-slider + section.WOT { margin-top:0 !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;
}


