* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body { background: #fff; font-family: 'Archivo', sans-serif; color: #18181B; -webkit-font-smoothing: antialiased; }
::selection { background: #DE0117; color: #fff; }
img { max-width: 100%; }
a { color: inherit; }
@keyframes fmeUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fmeMarquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.fme-card { transition: transform .22s ease, box-shadow .22s ease; }
.fme-card:hover { transform: translateY(-5px); box-shadow: 0 18px 40px rgba(0,0,0,0.14); }
.fme-card:hover .fme-shot { transform: scale(1.05); }
.fme-shot { transition: transform .5s ease; }
.fme-reveal { opacity: 0; transform: translateY(22px); }
.fme-reveal.fme-in { opacity: 1; transform: translateY(0); transition: opacity .7s ease, transform .7s ease; }
.fme-nav::-webkit-scrollbar { display: none; }
a, button { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible { outline: 2px solid #DE0117; outline-offset: 2px; }
x-dc { display: none; }

/* mobile nav */
.fme-nav-toggle { display: none; }
.fme-mobile-panel { display: none; }

@media (max-width: 980px) {
  .fme-grid-4 { grid-template-columns: repeat(2, 1fr) !important; }
  .fme-grid-6 { grid-template-columns: repeat(3, 1fr) !important; }
  .fme-footer-grid { grid-template-columns: 1fr 1fr !important; row-gap: 32px !important; }
}

@media (max-width: 860px) {
  .fme-hero-grid { grid-template-columns: 1fr !important; }
  .fme-feature-grid { grid-template-columns: 1fr !important; }
  .fme-grid-3 { grid-template-columns: repeat(2, 1fr) !important; }
  .fme-grid-2 { grid-template-columns: 1fr !important; }
}

@media (max-width: 760px) {
  .fme-nav { display: none !important; }
  .fme-nav-toggle { display: flex !important; }
  .fme-mobile-panel.fme-open { display: flex !important; }
}

@media (max-width: 640px) {
  .fme-stats-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .fme-stats-grid > div:nth-child(odd) { border-right: 1px solid #1d1d20; }
  .fme-stats-grid > div:nth-child(-n+2) { border-bottom: 1px solid #1d1d20; }
  .fme-grid-4 { grid-template-columns: 1fr !important; }
  .fme-grid-3 { grid-template-columns: 1fr !important; }
  .fme-grid-6 { grid-template-columns: repeat(2, 1fr) !important; }
  .fme-footer-grid { grid-template-columns: 1fr !important; }
  .fme-newsletter-grid { grid-template-columns: 1fr !important; text-align: left; }
  .fme-side-card { grid-template-columns: 88px 1fr !important; }
}

@media (max-width: 480px) {
  header > div.fme-header-inner { padding: 0 16px !important; }
  header img[alt="FME Sports"] { height: 42px !important; width: 42px !important; }
}

@media (max-width: 640px) {
  div.fme-wrap-1280, div.fme-wrap-1000, div.fme-wrap-880 {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}
