* { margin:0; padding:0; box-sizing:border-box; }
  html { scroll-behavior:smooth; }
  body { background:#07060f; }
  ::selection { background:rgba(124,58,237,0.35); color:#fff; }
  ::-webkit-scrollbar { width:9px; }
  ::-webkit-scrollbar-track { background:#07060f; }
  ::-webkit-scrollbar-thumb { background:#2a2440; }
  @keyframes btp-rise { from { opacity:0; transform:translateY(24px); } to { opacity:1; transform:translateY(0); } }
  @keyframes btp-bob { 0%,100% { transform:translateY(0); } 50% { transform:translateY(7px); } }
  @keyframes btp-marquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }
  @keyframes btp-coverfade { 0%,55% { opacity:1; } 100% { opacity:0; } }
  @media (max-width:880px) {
    .btp-navlinks { display:none !important; }
  }
/* Ajustements WordPress / Divi */
html { scroll-behavior: smooth; }
body.bigtime-players-template { margin: 0; background: #07060f; }
body.bigtime-players-template #page-container { padding-top: 0 !important; }
.btp-page * { box-sizing: border-box; }
.btp-page img { max-width: none; }
.btp-page button, .btp-page input, .btp-page select, .btp-page textarea { border-radius: 0; }
.btp-player-card.is-hidden { display: none !important; }
.btp-empty-message.is-hidden { display: none !important; }
.btp-filter-chip.is-active { background:#7c3aed !important; border-color:#7c3aed !important; color:#fff !important; }
@media (max-width: 720px) {
  .btp-page iframe { opacity: .72; }
}


/* Hero exact centering fix */
.btp-hero {
  display: block !important;
  min-height: 100vh !important;
  padding-left: clamp(22px,5vw,64px) !important;
  padding-right: clamp(22px,5vw,64px) !important;
}
.btp-hero-content {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: min(980px, calc(100% - 44px)) !important;
  margin: 0 auto !important;
  text-align: center !important;
}
.btp-hero-discover {
  left: 50% !important;
  transform: translateX(-50%) !important;
}
@media (max-height: 760px) {
  .btp-hero-content { top: 48% !important; }
}


/* Correctif centrage bouton Découvrir : l'animation conserve le translateX(-50%) */
@keyframes btp-discover-bob {
  0%,100% { transform: translate(-50%, 0); }
  50% { transform: translate(-50%, 7px); }
}
.btp-hero-discover {
  width: max-content !important;
  min-width: 96px !important;
  text-align: center !important;
}

/* Fond image section Notre périmètre */
.btp-section-complet {
  position: relative !important;
  isolation: isolate !important;
  background: #07060f !important;
}
.btp-section-complet::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image:
    linear-gradient(90deg, rgba(7,6,15,0.78) 0%, rgba(7,6,15,0.60) 48%, rgba(7,6,15,0.42) 100%),
    linear-gradient(180deg, rgba(7,6,15,0.40) 0%, rgba(7,6,15,0.18) 52%, rgba(7,6,15,0.72) 100%),
    url('https://bigtimeplayers.fr/wp-content/uploads/2026/06/couts-stades-tottenham-stadium-scaled-1.jpg') !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  opacity: 1 !important;
}
.btp-section-complet > div {
  position: relative !important;
  z-index: 2 !important;
}
.btp-section-complet::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background: radial-gradient(ellipse at 78% 35%, rgba(124,58,237,0.18) 0%, rgba(124,58,237,0) 48%);
}


/* Services en carousel sur mobile */
@media (max-width: 720px) {
  .btp-services-carousel {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 14px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: 18px !important;
    margin-left: -2px !important;
    margin-right: -22px !important;
  }
  .btp-services-carousel::-webkit-scrollbar {
    display: none !important;
  }
  .btp-services-carousel {
    scrollbar-width: none !important;
  }
  .btp-services-carousel > div {
    flex: 0 0 min(82vw, 360px) !important;
    width: min(82vw, 360px) !important;
    min-height: 260px !important;
    scroll-snap-align: start !important;
  }
  .btp-services-carousel > div:last-child {
    margin-right: 22px !important;
  }
}


/* Vidéo YouTube hero en mode cover, surtout sur mobile portrait */
.btp-hero-video-wrap {
  background: #07060f !important;
}
.btp-hero-video {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: max(100vw, 177.78vh) !important;
  height: max(56.25vw, 100vh) !important;
  min-width: 177.78vh !important;
  min-height: 100vh !important;
  max-width: none !important;
  max-height: none !important;
  transform: translate(-50%, -50%) scale(1.08) !important;
  transform-origin: center center !important;
  border: 0 !important;
  pointer-events: none !important;
}
@media (max-width: 720px) {
  .btp-hero-video {
    width: 177.78vh !important;
    height: 100vh !important;
    min-width: 177.78vh !important;
    min-height: 100vh !important;
    max-width: none !important;
    max-height: none !important;
    transform: translate(-50%, -50%) scale(1.38) !important;
    opacity: .82 !important;
  }
}


/* Bouton retour en haut */
.btp-back-to-top {
  position: fixed !important;
  right: clamp(18px, 3vw, 34px) !important;
  bottom: clamp(18px, 3vw, 34px) !important;
  z-index: 9999 !important;
  width: 48px !important;
  height: 48px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
  background: rgba(124,58,237,0.88) !important;
  color: #fff !important;
  text-decoration: none !important;
  box-shadow: 0 18px 48px rgba(0,0,0,0.35) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(14px) scale(.96) !important;
  transition: opacity .25s ease, visibility .25s ease, transform .25s ease, background .2s ease !important;
}
.btp-back-to-top.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) scale(1) !important;
}
.btp-back-to-top:hover {
  background: rgba(109,40,217,0.96) !important;
  transform: translateY(-2px) scale(1) !important;
}
.btp-back-to-top svg {
  width: 20px !important;
  height: 20px !important;
  display: block !important;
}
@media (max-width: 720px) {
  .btp-back-to-top {
    width: 44px !important;
    height: 44px !important;
    right: 16px !important;
    bottom: 16px !important;
  }
}


/* V2 client : nav/logo et section Qui sommes-nous */
@media (max-width: 720px) {
  #btp-nav img { height: 42px !important; }
  #qui-sommes-nous > div {
    display: flex !important;
    flex-direction: column !important;
  }
}

/* Sélecteur de langue FR/EN */
.btp-lang-toggle {
  border: 0 !important;
  background: transparent !important;
  color: #8d94a3 !important;
  font-family: 'Bricolage Grotesque', sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: .12em !important;
  padding: 6px 8px !important;
  border-radius: 999px !important;
  cursor: pointer !important;
  line-height: 1 !important;
  transition: background .2s ease, color .2s ease !important;
}
.btp-lang-toggle.is-active {
  background: rgba(124,58,237,.92) !important;
  color: #fff !important;
}
@media (max-width: 880px) {
  .btp-lang-switch { margin-left: auto !important; }
}
@media (max-width: 520px) {
  .btp-lang-toggle { font-size: 9px !important; padding: 6px 7px !important; }
}
