/* London Grid + Quick Shop. Only candidate navigation, never Matchday. */
.fox-gmenu { position:relative; display:flex; flex-wrap:wrap; gap:0; align-items:stretch; isolation:isolate; color:#171916; }
.fox-gmenu .fox-gmenu-item { position:static; min-width:0; }
.fox-gmenu .fox-gmenu-top { display:flex; align-items:center; }
.fox-gmenu .fox-gmenu-top > a { color:inherit; text-decoration:none; padding:12px 5px 12px 14px; font:700 15px/1.3 Arial,sans-serif; }
.fox-gmenu .fox-gmenu-toggle { min-width:44px; min-height:44px; border:0; background:transparent; color:inherit; cursor:pointer; font-size:22px; }
.fox-gmenu .fox-gmenu-panel { position:absolute; top:100%; left:0; right:0; z-index:20; width:100%; box-sizing:border-box; padding:24px; background:#fff; color:#171916; border-top:1px solid #dadcd3; border-bottom:2px solid #171916; box-shadow:0 8px 18px #0001; }
.fox-gmenu .fox-gmenu-panel[hidden], [data-fox-legacy-preserved][hidden] { display:none !important; }
.fox-gmenu .fox-gmenu-eyebrow { margin:0 0 10px; color:#5c6356; font:700 11px/1.5 Arial,sans-serif; letter-spacing:1.5px; text-transform:uppercase; }
.fox-gmenu .fox-gmenu-panel a { display:block; color:#171916; padding:12px 0; min-height:44px; box-sizing:border-box; font:500 15px/1.4 Arial,sans-serif; text-decoration:none; overflow-wrap:anywhere; }
.fox-gmenu .fox-gmenu-panel a:hover { text-decoration:underline; }
.fox-gmenu .fox-gmenu-all { border-bottom:1px solid #dadcd3; font-weight:700 !important; margin-bottom:12px; }
.fox-gmenu .fox-gmenu-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:12px 28px; }
.fox-gmenu .fox-gmenu-grid[data-columns="2"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
.fox-gmenu .fox-gmenu-grid[data-columns="3"] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.fox-gmenu .fox-gmenu-group-title { margin:12px 0 4px; font:700 13px/1.5 Arial,sans-serif; }
.fox-gmenu .fox-gmenu-grid > .fox-gmenu-group { display:flex; flex-direction:column; align-items:stretch; gap:4px; min-width:0; }
.fox-gmenu .fox-gmenu-panel a.fox-gmenu-sub { display:flex; align-items:center; flex:0 0 auto; width:100%; min-height:44px; padding:12px 0; box-sizing:border-box; }
.fox-gmenu :is(a,button):focus-visible { outline:3px solid #62783b; outline-offset:2px; }
@media(max-width:980px), (hover:none), (pointer:coarse) {
  .fox-gmenu { width:100%; flex-direction:column; grid-column:1 / -1; }
  /* Preserve native Menú ownership. No-ready fallback stays visible; ready respects closed/open. */
  body.fox-v4 .fox-v4-header.fox-v4-menu-ready .fox-v4-menu { display:inline-flex; }
  body.fox-v4 .fox-v4-header.fox-v4-menu-ready .fox-v4-nav.fox-gmenu { display:none; }
  body.fox-v4 .fox-v4-header.fox-v4-menu-ready.is-open .fox-v4-nav.fox-gmenu,
  body.fox-v4 .fox-v4-header.fox-v4-menu-ready .fox-v4-nav.fox-gmenu.is-open { display:flex; }
  /* Only mounted legacy catalog widget; never account widgets or unrelated headers. */
  .elementor-location-header [data-id="c69ed7f"] [data-id="778fcbd"][data-widget_type="nav-menu.default"][data-fox-legacy-menu="ready"] { width:100%; min-width:0; max-width:100%; align-self:stretch; flex:1 1 100%; }
  .elementor-location-header [data-id="c69ed7f"] [data-id="778fcbd"][data-fox-legacy-menu="ready"] > .elementor-widget-container { width:100%; min-width:0; max-width:100%; }
  .elementor-location-header [data-id="c69ed7f"] [data-id="778fcbd"][data-fox-legacy-menu="ready"] .fox-gmenu-legacy { width:100%; min-width:0; max-width:100%; align-self:stretch; }
  .fox-gmenu .fox-gmenu-item { width:100%; border-bottom:1px solid #d7d9cf; }
  .fox-gmenu .fox-gmenu-top { justify-content:space-between; }
  .fox-gmenu .fox-gmenu-top > a { flex:1; min-height:44px; box-sizing:border-box; }
  .fox-gmenu .fox-gmenu-panel { position:static; width:100%; box-shadow:none; padding:16px; border-bottom:0; }
  .fox-gmenu .fox-gmenu-grid[data-columns] { grid-template-columns:minmax(0,1fr); gap:8px; }
}
