/* 1. Empêche tout débordement horizontal */
html, body { overflow-x: hidden; }

/* 2. Rien ne doit dépasser la largeur écran */
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap {
  max-width: 100vw !important;
}

/* 3. Les widgets n'étirent pas la page si un mot est long */
.elementor-widget { overflow-wrap: anywhere; }

/* 4. Images et médias fluides */
img, svg, canvas, video { max-width: 100%; height: auto; }
/* Titre hero responsive */
h1.elementor-heading-title,
h2.elementor-heading-title {
  font-size: clamp(28px, 7vw, 110px) !important;
  line-height: 1.05 !important;
  white-space: normal !important;
  word-break: normal !important;
  text-align: center !important;
}

/* Téléphones étroits */
@media (max-width: 480px){
  h1.elementor-heading-title,
  h2.elementor-heading-title {
    font-size: clamp(26px, 6.2vw, 50px) !important;
  }
}
/* TABLEAU DESKTOP - style amélioré */
.table-scroll table {
    border-collapse: collapse;
    width: 100%;
    background-color: transparent;
}

.table-scroll th, 
.table-scroll td {
    padding: 16px 18px;
    text-align: left;
    border: 1px solid rgba(255,255,255,0.4);
    vertical-align: middle;
    line-height: 1.4;
}

.table-scroll th {
    background-color: rgba(255,255,255,0.05);
    font-size: 18px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.table-scroll td {
    font-size: 16px;
    white-space: nowrap;
}

.table-scroll tr:nth-child(even) td {
    background-color: rgba(255,255,255,0.03);
}

/* Sur très grands écrans, on centre un peu plus le contenu */
@media (min-width: 1400px) {
    .table-scroll table {
        max-width: 1400px;
        margin: 0 auto;
    }
}
/* =====================================================
   SUCH26 – GLOBAL CROUPIER BACKGROUND
   Pages with slug starting by "such26"
   ===================================================== */

body[class*="page-slug-such26"] {
  background-image: url("https://such.bike/wp-content/uploads/2025/12/fond-croupier.png");
  background-repeat: repeat;
  background-position: center center;
  background-attachment: fixed;
  background-size: auto;
  min-height: 100vh;
}

/* Override Elementor white layers */
body[class*="page-slug-such26"] .site,
body[class*="page-slug-such26"] #page,
body[class*="page-slug-such26"] .site-content,
body[class*="page-slug-such26"] main,
body[class*="page-slug-such26"] .elementor-section,
body[class*="page-slug-such26"] .elementor-container {
  background: transparent !important;
}

/* Remove Elementor default spacing */
body[class*="page-slug-such26"] .elementor-section {
  margin: 0 !important;
  padding: 0 !important;
}

/* Ensure SUCH26 content stays readable */
body[class*="page-slug-such26"] .such26-wrap {
  position: relative;
  z-index: 2;
}

/* Subtle dark overlay for contrast */
body[class*="page-slug-such26"]::before {
  content: "";
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.15);
  pointer-events: none;
  z-index: 0;
}
/* =====================================================
   SUCH26 – MOBILE SAFETY (iOS & Android)
   ===================================================== */

/* Disable fixed background on mobile (iOS bug) */
@media (max-width: 768px) {
  body[class*="page-slug-such26"] {
    background-attachment: scroll;
  }

  /* Add breathing space on mobile */
  body[class*="page-slug-such26"] .such26-wrap {
    padding: 24px 16px 48px;
  }
}

/* Prevent horizontal scroll on mobile */
body[class*="page-slug-such26"] {
  overflow-x: hidden;
}
/* =====================================================
   SUCH26 – FORCE REMOVE WHITE CONTENT BACKGROUND
   Elementor Free fix
   ===================================================== */

body[class*="page-slug-such26"] .elementor-page,
body[class*="page-slug-such26"] .entry-content,
body[class*="page-slug-such26"] .elementor-widget-wrap,
body[class*="page-slug-such26"] .elementor {
  background: transparent !important;
}

/* Remove white block behind title */
body[class*="page-slug-such26"] .elementor-widget-heading,
body[class*="page-slug-such26"] h1,
body[class*="page-slug-such26"] h2 {
  background: transparent !important;
}
/* =====================================================
   SUCH26 – FORCE THEME WRAPPER TRANSPARENT
   For shortcode-based pages (no Elementor)
   ===================================================== */

body[class*="page-slug-such26"] .page,
body[class*="page-slug-such26"] .page-content,
body[class*="page-slug-such26"] .entry,
body[class*="page-slug-such26"] .entry-content,
body[class*="page-slug-such26"] .content-area,
body[class*="page-slug-such26"] article {
  background: transparent !important;
}

/* Remove theme padding around content */
body[class*="page-slug-such26"] .entry-content {
  padding: 0 !important;
  margin: 0 !important;
}
/* =====================================================
   SUCH26 – DEFINITIVELY REMOVE THEME PAGE TITLE
   ===================================================== */

body.page-id-,
body[class*="page-slug-such26"] header.entry-header,
body[class*="page-slug-such26"] .entry-header,
body[class*="page-slug-such26"] .page-header,
body[class*="page-slug-such26"] .page-title,
body[class*="page-slug-such26"] h1.page-title {
  display: none !important;
}

/* Remove leftover spacing from hidden header */
body[class*="page-slug-such26"] .content-area,
body[class*="page-slug-such26"] .site-main {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
/* =====================================================
   SUCH26 – REMOVE WHITE PAGE TITLE & WRAPPER (BY ID)
   Provisional Registration (7160)
   Rider Portal (7162)
   ===================================================== */

/* Hide theme page title & header block */
body.page-id-7160 header.entry-header,
body.page-id-7160 .entry-header,
body.page-id-7160 .page-header,
body.page-id-7160 .page-title,
body.page-id-7160 h1,
body.page-id-7162 header.entry-header,
body.page-id-7162 .entry-header,
body.page-id-7162 .page-header,
body.page-id-7162 .page-title,
body.page-id-7162 h1 {
  display: none !important;
}

/* Remove leftover spacing created by hidden title */
body.page-id-7160 .content-area,
body.page-id-7160 .site-main,
body.page-id-7160 .entry-content,
body.page-id-7162 .content-area,
body.page-id-7162 .site-main,
body.page-id-7162 .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
  background: transparent !important;
}

/* Safety: ensure body background shows through */
body.page-id-7160,
body.page-id-7162 {
  background: transparent !important;
}
/* ===============================
   SUCH26 – GLOBAL GREEN BACKGROUND
   =============================== */

body[class*="page-slug-such26"],
body.page-id-7160,
body.page-id-7162 {
    background-image: url("https://such.bike/wp-content/uploads/2025/12/fond-croupier.png") !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-attachment: fixed !important;
}

/* remove theme white background blocks */
body[class*="page-slug-such26"] #content,
body[class*="page-slug-such26"] .site-content,
body[class*="page-slug-such26"] .content-area,
body[class*="page-slug-such26"] main {
    background: transparent !important;
}
/* ===============================
   SUCH26 – GLOBAL GREEN BACKGROUND
   =============================== */

body[class*="page-slug-such26"],
body.page-id-7160,
body.page-id-7162 {
    background-image: url("https://such.bike/wp-content/uploads/2025/12/fond-croupier.png") !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-attachment: fixed !important;
}

/* remove theme white background blocks */
body[class*="page-slug-such26"] #content,
body[class*="page-slug-such26"] .site-content,
body[class*="page-slug-such26"] .content-area,
body[class*="page-slug-such26"] main {
    background: transparent !important;
}
