.site-header {
    position: sticky;
    top: 0;
    z-index: 20;
    width: 100%;
    background: rgba(255, 255, 255, 0.94);
    border-bottom: 1px solid var(--line);
    backdrop-filter: blur(14px);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    padding: 14px max(22px, calc((100vw - var(--max)) / 2));
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--text);
    font-weight: 800;
    letter-spacing: -0.02em;
}

.brand:hover {
    text-decoration: none;
}

.brand span {
    color: var(--text);
}

.brand-mark {
    width: 45px;
    height: 45px;
    overflow: hidden;
    flex: 0 0 45px;
}

.brand-mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.main-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    font-weight: 700;
    font-size: 14px;
    align-items: center;
}

.main-nav a {
    color: var(--text);
    padding: 6px 0;
}

.main-nav a:hover {
    text-decoration: none;
    color: var(--brand);
}

.menu-toggle {
    display: none;
    width: 44px;
    height: 44px;
    border: 0;
    background: transparent;
    cursor: pointer;
    padding: 8px;
}

.menu-toggle span {
    display: block;
    width: 26px;
    height: 3px;
    margin: 5px auto;
    background: var(--text);
    border-radius: 999px;
    transition: transform 0.25s ease, opacity 0.25s ease;
}

.menu-toggle.is-active span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
}

.menu-toggle.is-active span:nth-child(2) {
    opacity: 0;
}

.menu-toggle.is-active span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
}

.nav-dropdown {
    position: relative;
    display: flex;
    align-items: center;
}

.nav-dropdown-toggle {
    border: 0;
    background: transparent;
    color: var(--text);
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    padding: 0;
}

.nav-dropdown-toggle::after {
    content: "▾";
    margin-left: 6px;
    font-size: 12px;
}

.nav-dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 190px;
    padding: 10px;
    background: #ffffff;
    border: 1px solid var(--line);
    border-radius: 16px;
    box-shadow: var(--shadow);
    z-index: 50;
}

.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown.is-open .nav-dropdown-menu {
    display: grid;
}

.nav-dropdown-menu a {
    display: block;
    padding: 10px 12px;
    color: var(--text);
    border-radius: 10px;
    white-space: nowrap;
}

.nav-dropdown-menu a:hover {
    background: var(--surface-alt);
    text-decoration: none;
}

@media (max-width: 860px) {
    .site-header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 1000;
        padding: 12px 18px;
        flex-direction: row;
        align-items: center;
    }

    body {
        padding-top: 72px;
    }

    .brand {
        max-width: calc(100% - 60px);
    }

    .brand span {
        font-size: 15px;
        line-height: 1.2;
    }

    .brand-mark {
        width: 42px;
        height: 42px;
        flex: 0 0 42px;
    }

    .menu-toggle {
        display: block;
        margin-left: auto;
        z-index: 1002;
    }

    .main-nav {
        display: flex;
        position: fixed;
        top: 72px;
        left: 12px;
        right: 12px;
        max-height: calc(100vh - 90px);
        overflow-y: auto;
        flex-direction: column;
        gap: 0;
        padding: 14px;
        background: #ffffff;
        border: 1px solid var(--line);
        border-radius: 20px;
        box-shadow: var(--shadow);
        transform: translateY(-12px);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: 0.22s ease;
        z-index: 1001;
    }

    .main-nav.is-open {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .main-nav > a,
    .nav-dropdown-toggle {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 13px 12px;
        border-radius: 12px;
        font-size: 15px;
        font-weight: 800;
    }

    .main-nav > a:hover,
    .nav-dropdown-toggle:hover {
        background: var(--surface-alt);
    }

    .nav-dropdown {
        width: 100%;
        display: block;
    }

    .nav-dropdown-menu {
        position: static;
        display: none;
        width: 100%;
        min-width: 0;
        margin: 4px 0 8px;
        padding: 8px;
        background: var(--surface-alt);
        border: 0;
        border-radius: 14px;
        box-shadow: none;
    }

    .nav-dropdown.is-open .nav-dropdown-menu {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }

    .nav-dropdown:hover .nav-dropdown-menu {
        display: none;
    }

    .nav-dropdown.is-open:hover .nav-dropdown-menu {
        display: grid;
    }

    .nav-dropdown-menu a {
        padding: 10px 12px;
        border-radius: 10px;
        background: #ffffff;
        font-size: 14px;
    }
}

@media (max-width: 560px) {
    .site-header {
        padding: 10px 14px;
    }

    .brand span {
        font-size: 14px;
    }

    .main-nav {
        left: 8px;
        right: 8px;
        top: 68px;
    }

    .nav-dropdown.is-open .nav-dropdown-menu {
        grid-template-columns: 1fr;
    }
}

/* Enhanced Teams dropdown navigation */
.main-nav {
    align-items: center;
}

.main-nav a:focus-visible,
.nav-dropdown-toggle:focus-visible,
.nav-dropdown-menu a:focus-visible {
    outline: 3px solid rgba(193, 18, 31, 0.28);
    outline-offset: 3px;
    border-radius: 10px;
}

.main-nav a.is-current,
.nav-dropdown.is-current > .nav-dropdown-toggle,
.nav-dropdown-menu a.is-current {
    color: var(--brand);
}

.nav-dropdown-menu {
    display: none;
    max-width: calc(100vw - 44px);
    box-shadow: var(--shadow, 0 18px 50px rgba(7, 17, 31, 0.12));
}

.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown.is-open .nav-dropdown-menu {
    display: block;
}

.nav-dropdown-menu--groups {
    min-width: 190px;
}

.nav-dropdown-menu--teams {
    position: fixed;
    top: 76px;
    left: 50%;
    width: min(760px, calc(100vw - 44px));
    transform: translateX(-50%);
    max-height: min(70vh, 560px);
    overflow-y: auto;
}

.nav-dropdown-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(130px, 1fr));
    gap: 4px;
}

.nav-dropdown-grid a {
    white-space: normal;
}

@media (max-width: 860px) {
    .nav-dropdown:hover .nav-dropdown-menu {
        display: none;
    }

    .nav-dropdown.is-open .nav-dropdown-menu,
    .nav-dropdown.is-open:hover .nav-dropdown-menu {
        display: block;
    }

    .nav-dropdown-menu--teams {
        position: static;
        top: auto;
        width: 100%;
        max-width: none;
        left: auto;
        transform: none;
        max-height: 46vh;
        overflow-y: auto;
    }

    .nav-dropdown-grid {
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }

    .nav-dropdown-menu--groups {
        display: none;
    }

    .nav-dropdown.is-open .nav-dropdown-menu--groups,
    .nav-dropdown.is-open:hover .nav-dropdown-menu--groups {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }
}

@media (max-width: 560px) {
    .nav-dropdown-grid,
    .nav-dropdown.is-open .nav-dropdown-menu--groups,
    .nav-dropdown.is-open:hover .nav-dropdown-menu--groups {
        grid-template-columns: 1fr;
    }
}

.team-link-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin: 22px 0 0;
}

.team-link-grid a {
    display: block;
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface-alt, #eef3f8);
    color: var(--text);
    font-weight: 800;
}

.team-link-grid a:hover {
    color: var(--brand);
    text-decoration: none;
    background: #ffffff;
}

@media (max-width: 860px) {
    .team-link-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .team-link-grid {
        grid-template-columns: 1fr;
    }
}

/* Stable desktop hover area for large Teams dropdown */
@media (min-width: 861px) {
    .nav-dropdown--teams::before {
        content: "";
        display: none;
        position: fixed;
        left: 0;
        right: 0;
        top: 60px;
        height: 28px;
        z-index: 49;
        pointer-events: auto;
    }

    .nav-dropdown--teams:hover::before,
    .nav-dropdown--teams.is-open::before {
        display: block;
    }

    .nav-dropdown-menu--teams {
        z-index: 50;
    }
}



/* Host Cities dropdown navigation */
.nav-dropdown-menu--host-cities {
    position: fixed;
    top: 76px;
    left: 50%;
    width: min(560px, calc(100vw - 44px));
    transform: translateX(-50%);
    max-height: min(70vh, 520px);
    overflow-y: auto;
}

.nav-dropdown-grid--host-cities {
    grid-template-columns: repeat(2, minmax(160px, 1fr));
}

@media (max-width: 860px) {
    .nav-dropdown-menu--host-cities {
        position: static;
        top: auto;
        width: 100%;
        max-width: none;
        left: auto;
        transform: none;
        max-height: 46vh;
        overflow-y: auto;
    }

    .nav-dropdown-grid--host-cities {
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }
}

@media (max-width: 560px) {
    .nav-dropdown-grid--host-cities {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 861px) {
    .nav-dropdown--host-cities::before {
        content: "";
        display: none;
        position: fixed;
        left: 0;
        right: 0;
        top: 60px;
        height: 28px;
        z-index: 49;
        pointer-events: auto;
    }

    .nav-dropdown--host-cities:hover::before,
    .nav-dropdown--host-cities.is-open::before {
        display: block;
    }

    .nav-dropdown-menu--host-cities {
        z-index: 50;
    }
}


/* Stadiums dropdown navigation */
.nav-dropdown-menu--stadiums {
    position: fixed;
    top: 76px;
    left: 50%;
    width: min(640px, calc(100vw - 44px));
    transform: translateX(-50%);
    max-height: min(70vh, 520px);
    overflow-y: auto;
}

.nav-dropdown-grid--stadiums {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
}

@media (max-width: 860px) {
    .nav-dropdown-menu--stadiums {
        position: static;
        top: auto;
        width: 100%;
        max-width: none;
        left: auto;
        transform: none;
        max-height: 46vh;
        overflow-y: auto;
    }

    .nav-dropdown-grid--stadiums {
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }
}

@media (max-width: 560px) {
    .nav-dropdown-grid--stadiums {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 861px) {
    .nav-dropdown--stadiums::before {
        content: "";
        display: none;
        position: fixed;
        left: 0;
        right: 0;
        top: 60px;
        height: 28px;
        z-index: 49;
        pointer-events: auto;
    }

    .nav-dropdown--stadiums:hover::before,
    .nav-dropdown--stadiums.is-open::before {
        display: block;
    }

    .nav-dropdown-menu--stadiums {
        z-index: 50;
    }
}

/* Portuguese palette and responsive image refinements */

:root{--pt-red:#a4122a;--pt-dark-red:#5d081c;--pt-green:#007445;--pt-gold:#d6a42a;--pt-cream:#fff7e6;--pt-ink:#201014;--pt-muted:#6a555b;--pt-card:#ffffff;--pt-border:#ead7b0;--primary:var(--pt-red);--accent:var(--pt-green);--gold:var(--pt-gold);}
body{background:linear-gradient(180deg,var(--pt-cream),#fff);color:var(--pt-ink)}
.site-header,.main-header{background:linear-gradient(90deg,var(--pt-dark-red),var(--pt-red) 52%,var(--pt-green));border-bottom:4px solid var(--pt-gold)}
.site-footer{background:linear-gradient(135deg,var(--pt-dark-red),#22040c);border-top:4px solid var(--pt-gold)}
.brand,.site-footer-brand,.main-nav a,.nav-dropdown-toggle{color:#fff!important}.brand-mark,.site-footer-logo{background:#fff7e6;border:2px solid var(--pt-gold)}
a{color:var(--pt-red)}a:hover{color:var(--pt-green)}.button,.btn,.primary{background:linear-gradient(135deg,var(--pt-red),var(--pt-dark-red));color:#fff!important;border:1px solid var(--pt-gold)}.button.secondary{background:rgba(255,255,255,.16);border-color:#fff;color:#fff!important}.button:focus,.menu-toggle:focus,a:focus{outline:3px solid var(--pt-gold);outline-offset:3px}.cta,.content-section,.toc,.breadcrumbs,.card,table{border-color:var(--pt-border)!important}.cta{background:linear-gradient(135deg,rgba(164,18,42,.08),rgba(0,116,69,.10))}.eyebrow,.badge,.label{color:var(--pt-green);border-color:var(--pt-gold)}.pill{border:1px solid var(--pt-border);background:#fff;color:var(--pt-red)}.pill:hover{background:var(--pt-green);color:#fff}.section-image{background:linear-gradient(135deg,#fff7e6,#f7efd9);border-radius:24px;padding:12px}.section-image img,.home-main img,main img{object-fit:contain;max-width:100%;height:auto}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,3vw,2.5rem);align-items:center}.check-list li::marker{color:var(--pt-green)}table th{background:var(--pt-dark-red);color:#fff}table td,table th{border-color:var(--pt-border)}@media(max-width:800px){.split-section{grid-template-columns:1fr}.main-nav{background:var(--pt-dark-red)}}


/* FINAL ACCESSIBILITY + NAVIGATION OVERRIDES */
.nav-dropdown-menu,
.nav-dropdown-menu--groups,
.nav-dropdown-menu--host-cities,
.nav-dropdown-menu--teams,
.nav-dropdown-menu--stadiums{
  background: linear-gradient(135deg, #6f0b20 0%, #a4122a 58%, #0b6b4f 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(214,164,42,.55) !important;
  box-shadow: 0 24px 62px rgba(18,10,18,.34) !important;
}
.nav-dropdown-menu > div,
.nav-dropdown-grid,
.nav-dropdown-grid--host-cities,
.nav-dropdown-grid--stadiums{
  background: transparent !important;
}
.nav-dropdown-menu a,
.nav-dropdown-menu .nav-dropdown-grid a,
.nav-dropdown-grid a,
.nav-dropdown-menu a:visited{
  color: #ffffff !important;
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}
.nav-dropdown-menu a:hover,
.nav-dropdown-grid a:hover,
.nav-dropdown-menu a:focus,
.nav-dropdown-grid a:focus{
  color: #ffffff !important;
  background: rgba(255,255,255,.18) !important;
}
.nav-dropdown-menu a *,.nav-dropdown-grid a *{color:#ffffff !important}
.cta{
  background: linear-gradient(135deg, #fff7f4 0%, #f1faf5 100%) !important;
  color: #162335 !important;
  border: 1px solid rgba(214,164,42,.45) !important;
}
.cta h2,.cta h3,.cta strong{color:#8f0d17 !important}
.cta p,.cta li,.cta span{color:#223246 !important}
.cta a.button:not(.primary),
.cta .button:not(.primary){background:linear-gradient(135deg,#8f0d17,#a4122a) !important;color:#fff !important;border-color:#d6a42a !important}
.extra-cta-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.extra-cta-grid .button,.extra-cta-grid .resource-link{display:inline-flex;align-items:center;justify-content:center}
.page-extension{margin-top:30px}
.page-extension .resource-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:860px){.page-extension .resource-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.page-extension .resource-grid{grid-template-columns:1fr}}



/* FINAL INLINE FIXES: green dropdowns, readable CTA, compact footer */
.site-header .nav-dropdown-menu,
.site-header .nav-dropdown-menu--groups,
.site-header .nav-dropdown-menu--host-cities,
.site-header .nav-dropdown-menu--teams,
.site-header .nav-dropdown-menu--stadiums {
    background: #006A44 !important;
    background-color: #006A44 !important;
    color: #ffffff !important;
    border: 2px solid #D6A42A !important;
    box-shadow: 0 24px 68px rgba(0, 0, 0, .38) !important;
    opacity: 1 !important;
}
.site-header .nav-dropdown-menu *,
.site-header .nav-dropdown-grid,
.site-header .nav-dropdown-grid--host-cities,
.site-header .nav-dropdown-grid--stadiums {
    background-color: transparent !important;
}
.site-header .nav-dropdown-menu a,
.site-header .nav-dropdown-grid a,
.site-header .main-nav .nav-dropdown-menu a {
    color: #ffffff !important;
    background: rgba(0, 70, 45, .72) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    text-shadow: none !important;
}
.site-header .nav-dropdown-menu a:hover,
.site-header .nav-dropdown-grid a:hover,
.site-header .nav-dropdown-menu a:focus,
.site-header .nav-dropdown-grid a:focus {
    color: #ffffff !important;
    background: #A4122A !important;
    text-decoration: none !important;
}
.cta, section.cta, .global-extra-cta {
    background: linear-gradient(135deg, #fff8f2 0%, #eef8f1 100%) !important;
    color: #101820 !important;
    border: 1px solid rgba(214,164,42,.55) !important;
}
.cta h1, .cta h2, .cta h3, .cta p, .cta li, .cta span, section.cta h2, section.cta p, .global-extra-cta h2, .global-extra-cta p {
    color: #101820 !important;
    text-shadow: none !important;
}
.cta h2, section.cta h2, .global-extra-cta h2 {
    color: #111111 !important;
}
.cta .button, .global-extra-cta .button {
    color: #ffffff !important;
    background: linear-gradient(135deg, #A4122A, #6F0B20) !important;
    border: 1px solid #D6A42A !important;
}
.page-shell .page-extension, .page-shell .global-extra-cta {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.extra-cta-grid, .site-footer-column ul, .site-footer nav ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px 14px !important;
    align-items: center !important;
    padding-left: 0 !important;
    list-style: none !important;
}
.extra-cta-grid .button { display: inline-flex !important; }
.site-footer {
    padding: 32px 22px !important;
}
.site-footer-inner {
    width: min(1120px, calc(100vw - 44px)) !important;
    margin: 0 auto !important;
}
.site-footer-main {
    display: grid !important;
    grid-template-columns: minmax(260px, 1.1fr) minmax(360px, 1.4fr) minmax(260px, 1fr) !important;
    gap: 28px !important;
    align-items: start !important;
}
.site-footer-column ul li { margin: 0 !important; }
.site-footer-column ul a, .site-footer nav a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 7px 11px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
}
.site-footer-column ul a:hover, .site-footer nav a:hover {
    background: rgba(255,255,255,.18) !important;
    text-decoration: none !important;
}
.site-footer-legal {
    margin-top: 24px !important;
}
.resource-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
    gap: 12px !important;
}
.resource-link {
    text-decoration: none !important;
}
@media (max-width: 960px) {
    .site-footer-main { grid-template-columns: 1fr !important; }
    .resource-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
@media (max-width: 560px) {
    .resource-grid { grid-template-columns: 1fr !important; }
}



/* FINAL V5 FIX: compact one-line header, green dropdowns, stable hover, readable CTA, centered content */
:root{--site-max:1120px;--pt-green-flag:#006A44;--pt-red-flag:#A4122A;--pt-gold-flag:#D6A42A;}
.site-header{
  min-height:64px !important;
  padding:8px max(14px,calc((100vw - var(--site-max))/2)) !important;
  gap:10px !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  overflow:visible !important;
}
.site-header .brand{flex:0 0 auto !important;max-width:280px !important;gap:8px !important;min-width:0 !important;}
.site-header .brand-mark{width:32px !important;height:32px !important;flex:0 0 32px !important;}
.site-header .brand span{font-size:13px !important;line-height:1.12 !important;letter-spacing:-.02em !important;}
.site-header .main-nav{
  margin-left:auto !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:9px !important;
  white-space:nowrap !important;
  min-width:0 !important;
  max-width:calc(100vw - 360px) !important;
  overflow:visible !important;
  font-size:11.5px !important;
  line-height:1.1 !important;
}
.site-header .main-nav > a,
.site-header .nav-dropdown-toggle{
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  padding:4px 0 !important;
  font-size:11.5px !important;
  line-height:1.1 !important;
  font-weight:800 !important;
  color:#fff !important;
}
.site-header .nav-dropdown-toggle::after{margin-left:4px !important;font-size:9px !important;}
.site-header .nav-dropdown{position:relative !important;display:inline-flex !important;align-items:center !important;overflow:visible !important;}
.site-header .nav-dropdown::after{content:"";display:block;position:absolute;left:-14px;right:-14px;top:100%;height:26px;z-index:1198;}
.site-header .nav-dropdown-menu,
.site-header .nav-dropdown-menu--groups,
.site-header .nav-dropdown-menu--host-cities,
.site-header .nav-dropdown-menu--teams,
.site-header .nav-dropdown-menu--stadiums{
  background:#006A44 !important;
  background-color:#006A44 !important;
  background-image:none !important;
  color:#fff !important;
  border:2px solid #D6A42A !important;
  box-shadow:0 24px 70px rgba(0,0,0,.42) !important;
  border-radius:16px !important;
  padding:12px !important;
  z-index:1300 !important;
  opacity:1 !important;
  overflow:auto !important;
}
.site-header .nav-dropdown-menu--host-cities,
.site-header .nav-dropdown-menu--teams,
.site-header .nav-dropdown-menu--stadiums{
  position:fixed !important;
  top:64px !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  max-height:calc(100vh - 86px) !important;
}
.site-header .nav-dropdown-menu--host-cities{width:min(680px,calc(100vw - 40px)) !important;}
.site-header .nav-dropdown-menu--teams{width:min(920px,calc(100vw - 40px)) !important;}
.site-header .nav-dropdown-menu--stadiums{width:min(760px,calc(100vw - 40px)) !important;}
.site-header .nav-dropdown-menu--groups{position:absolute !important;top:calc(100% + 12px) !important;left:0 !important;min-width:210px !important;}
.site-header .nav-dropdown:hover .nav-dropdown-menu,
.site-header .nav-dropdown.is-open .nav-dropdown-menu{display:block !important;}
.site-header .nav-dropdown-menu *,
.site-header .nav-dropdown-grid,
.site-header .nav-dropdown-grid--host-cities,
.site-header .nav-dropdown-grid--stadiums{background:transparent !important;background-color:transparent !important;}
.site-header .nav-dropdown-grid{display:grid !important;gap:8px !important;}
.site-header .nav-dropdown-menu--teams .nav-dropdown-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
.site-header .nav-dropdown-grid--host-cities,
.site-header .nav-dropdown-grid--stadiums{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
.site-header .nav-dropdown-menu a,
.site-header .nav-dropdown-grid a,
.site-header .main-nav .nav-dropdown-menu a{
  color:#ffffff !important;
  background:rgba(0,70,45,.82) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  border-radius:10px !important;
  padding:9px 11px !important;
  line-height:1.25 !important;
  font-size:12px !important;
  font-weight:800 !important;
  text-shadow:none !important;
  white-space:normal !important;
}
.site-header .nav-dropdown-menu a:hover,
.site-header .nav-dropdown-grid a:hover,
.site-header .nav-dropdown-menu a:focus,
.site-header .nav-dropdown-grid a:focus{background:#A4122A !important;color:#ffffff !important;text-decoration:none !important;}
.hero.home-hero{
  min-height:calc(100vh - 64px) !important;
  padding:42px max(22px,calc((100vw - var(--site-max))/2)) 34px !important;
  align-items:center !important;
  background-size:cover !important;
}
.hero.home-hero .hero-inner{max-width:760px !important;}
.hero.home-hero h1{font-size:clamp(34px,4.5vw,58px) !important;line-height:1.06 !important;margin-bottom:16px !important;}
.hero.home-hero .hero-intro{font-size:clamp(16px,1.45vw,20px) !important;line-height:1.5 !important;margin-bottom:16px !important;max-width:720px !important;}
.hero.home-hero .hero-stats{gap:8px !important;margin-bottom:14px !important;}
.hero.home-hero .hero-stat{padding:6px 10px !important;font-size:12px !important;}
.hero.home-hero .hero-actions{gap:10px !important;}
.hero.home-hero .button{min-height:40px !important;padding:9px 16px !important;font-size:14px !important;}
.page-shell,.site-footer-inner,main > .content-section,main > .page-extension,main > .global-extra-cta,main > .cta{
  width:min(var(--site-max),calc(100vw - 44px)) !important;
  max-width:min(var(--site-max),calc(100vw - 44px)) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.page-extension,section.page-extension{margin-top:34px !important;padding:clamp(24px,3.5vw,40px) !important;border-radius:22px !important;background:#fff !important;border:1px solid rgba(214,164,42,.45) !important;}
.cta,section.cta,.global-extra-cta{
  background:linear-gradient(135deg,#fff8f2 0%,#eef8f1 100%) !important;
  color:#101820 !important;
  border:1px solid rgba(214,164,42,.55) !important;
  text-shadow:none !important;
}
.cta h1,.cta h2,.cta h3,.cta p,.cta li,.cta span,.global-extra-cta h2,.global-extra-cta p{color:#101820 !important;text-shadow:none !important;}
.cta h2,.global-extra-cta h2{color:#111111 !important;}
.cta .button,.global-extra-cta .button,.analysis-button-grid .button{color:#fff !important;background:linear-gradient(135deg,#A4122A,#6F0B20) !important;border:1px solid #D6A42A !important;}
.analysis-button-grid,.extra-cta-grid,.cta-button-row{display:flex !important;flex-wrap:wrap !important;gap:10px !important;align-items:center !important;margin-top:18px !important;}
.analysis-button-grid .button,.extra-cta-grid .button,.cta-button-row .button{display:inline-flex !important;align-items:center !important;justify-content:center !important;min-height:42px !important;padding:9px 15px !important;border-radius:999px !important;font-weight:800 !important;}
.analysis-table-wrap{overflow-x:auto !important;margin-top:18px !important;}
.analysis-table{width:100% !important;border-collapse:collapse !important;background:#fff !important;border-radius:16px !important;overflow:hidden !important;}
.analysis-table th{background:#5d081c !important;color:#fff !important;text-align:left !important;padding:12px !important;}
.analysis-table td{padding:12px !important;border:1px solid rgba(214,164,42,.35) !important;color:#201014 !important;vertical-align:top !important;}
.resource-grid{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:12px !important;}
.site-footer{padding:30px 22px !important;text-align:center !important;}
.site-footer-inner{margin:0 auto !important;}
.site-footer-main{display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;gap:22px !important;text-align:center !important;}
.site-footer-left{max-width:760px !important;margin:0 auto !important;text-align:center !important;}
.site-footer-brand{justify-content:center !important;}
.site-footer-column{width:100% !important;text-align:center !important;}
.site-footer-column ul,.site-footer nav ul{display:flex !important;flex-wrap:wrap !important;gap:10px !important;justify-content:center !important;align-items:center !important;padding-left:0 !important;margin:8px auto 0 !important;list-style:none !important;}
.site-footer-column ul li{margin:0 !important;}
.site-footer-column ul a,.site-footer nav a{display:inline-flex !important;align-items:center !important;justify-content:center !important;padding:8px 12px !important;border-radius:999px !important;background:rgba(255,255,255,.08) !important;border:1px solid rgba(255,255,255,.18) !important;color:#fff !important;font-weight:800 !important;}
.site-footer-column ul a:hover,.site-footer nav a:hover{background:rgba(255,255,255,.18) !important;text-decoration:none !important;}
.responsible-links{display:flex !important;flex-wrap:wrap !important;justify-content:center !important;gap:10px !important;}
.site-footer-legal{text-align:left !important;max-width:900px !important;margin:0 auto !important;}
@media(max-width:1200px){.site-header .main-nav{gap:7px !important;font-size:10.8px !important;max-width:calc(100vw - 315px) !important}.site-header .main-nav > a,.site-header .nav-dropdown-toggle{font-size:10.8px !important}.site-header .brand{max-width:250px !important}.site-header .brand span{font-size:12px !important}}
@media(max-width:980px){.site-header .main-nav{display:none !important}.menu-toggle{display:block !important}.site-header .main-nav.is-open{display:flex !important;position:fixed !important;top:64px !important;left:12px !important;right:12px !important;max-width:none !important;flex-direction:column !important;flex-wrap:nowrap !important;background:#fffaf0 !important;white-space:normal !important;gap:0 !important;padding:14px !important;border-radius:18px !important}.site-header .main-nav.is-open > a,.site-header .main-nav.is-open .nav-dropdown-toggle{color:#201014 !important;font-size:15px !important;width:100% !important;justify-content:space-between !important}.site-header .nav-dropdown{width:100% !important;display:block !important}.site-header .nav-dropdown-menu,.site-header .nav-dropdown-menu--host-cities,.site-header .nav-dropdown-menu--teams,.site-header .nav-dropdown-menu--stadiums{position:static !important;transform:none !important;width:100% !important;max-height:46vh !important}.site-header .nav-dropdown-menu--teams .nav-dropdown-grid,.site-header .nav-dropdown-grid--host-cities,.site-header .nav-dropdown-grid--stadiums{grid-template-columns:1fr !important}.resource-grid{grid-template-columns:1fr 1fr !important}.hero.home-hero h1{font-size:clamp(32px,8vw,44px) !important}}
@media(max-width:560px){.resource-grid{grid-template-columns:1fr !important}.hero.home-hero{min-height:auto !important;padding-top:44px !important;padding-bottom:44px !important}}

/* Client final safety overrides */
.site-header{max-width:none!important;padding-left:clamp(18px,3vw,54px)!important;padding-right:clamp(18px,3vw,54px)!important;}
.site-header .brand{flex-basis:340px!important;max-width:340px!important;min-width:340px!important;padding-right:22px!important;border-right:1px solid rgba(255,255,255,.20)!important;}
.site-header .brand span{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.35)!important;}
.site-header .main-nav{max-width:none!important;flex:1 1 auto!important;justify-content:flex-end!important;}
.site-header .header-offer-button--secondary,.button.secondary{color:#101820!important;background:rgba(255,255,255,.92)!important;border-color:#D6A42A!important;text-shadow:none!important;}
.site-footer-main{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;}
.site-footer-column,.site-footer-left,.responsible-resources{width:100%!important;max-width:860px!important;text-align:center!important;margin-left:auto!important;margin-right:auto!important;}
.site-footer-column ul,.responsible-links{justify-content:center!important;}
@media(max-width:1180px){.site-header .brand{flex:1 1 auto!important;min-width:0!important;max-width:calc(100% - 58px)!important;border-right:0!important}.site-header .main-nav{display:none!important}.site-header .main-nav.is-open{display:flex!important}.site-header .main-nav.is-open .header-offer-button,.site-header .main-nav.is-open .header-offer-button--secondary{color:#101820!important;background:#fff!important;text-shadow:none!important}}

/* Clickable affiliate image links */
.image-offer-link{
  display:block !important;
  color:inherit !important;
  text-decoration:none !important;
  border-radius:inherit !important;
  overflow:hidden !important;
  line-height:0 !important;
  cursor:pointer !important;
}
.image-offer-link img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  transition:transform .24s ease, filter .24s ease, box-shadow .24s ease !important;
}
.image-offer-link:hover img,
.image-offer-link:focus-visible img{
  transform:scale(1.015) !important;
  filter:saturate(1.08) contrast(1.02) !important;
}
.image-offer-link:focus-visible{
  outline:3px solid #D6A42A !important;
  outline-offset:4px !important;
}

/* Countries dropdown and common hub links */
.nav-dropdown-grid--countries{display:grid;grid-template-columns:1fr;gap:8px;}
.nav-dropdown-menu--countries{min-width:250px;}
.nav-dropdown-hub-link{font-weight:900!important;border:1px solid rgba(214,164,42,.78)!important;background:rgba(214,164,42,.16)!important;}
@media(max-width:980px){.nav-dropdown-grid--countries{grid-template-columns:1fr!important;}}
