/* =========================================
   LES FRÈRES MAWEM — responsive.css
   Mobile & Tablette — index.html
   ========================================= */

/* ── Pas de curseur custom sur écrans tactiles ── */
@media (pointer: coarse) {
  .cursor, .cursor-ring { display: none !important; }
}

/* ── Prévenir overflow horizontal global (Safari) ── */
@media (max-width: 900px) {
  html, body {
    overflow-x: hidden;
    max-width: 100%;
    width: 100%;
  }
  *, *::before, *::after {
    box-sizing: border-box;
    max-width: 100%;
  }
}

/* ══════════════════════════════════════════════
   TABLETTE  (max 900px)
══════════════════════════════════════════════ */
@media (max-width: 900px) {
  /* Compenser nav plus petite (60px) */
  #hero { padding-top: 0; }

  /* Sections */
  .sec { padding: 60px 20px; }
  #activites .inner,
  #cours .inner { padding: 0 20px; }
  #niveaux-encart { padding: 48px 20px; }

  /* HERO */
  .hero-stats { display: none !important; }
  .hero-dots  { display: none !important; }
  .hero-content { padding: 20px 24px 80px; max-width: 100%; width: 100%; }
  .hero-btns { flex-wrap: wrap; gap: 16px; }

  /* Grilles */
  .pub-grid       { grid-template-columns: repeat(3,1fr); }
  .biceps-grid    { grid-template-columns: repeat(4,1fr); }
  .act-grid       { grid-template-columns: repeat(2,1fr); }
  .tarifs-grid    { grid-template-columns: 1fr 1fr; }
  .h-grid         { grid-template-columns: repeat(2,1fr); }
  .cours-grid     { grid-template-columns: 1fr; }
  .niv-wrap       { grid-template-columns: 1fr; gap: 32px; }
  .ath-stats      { grid-template-columns: 1fr 1fr; }

  /* Split 2 → 1 */
  #premiere, #athletes, #contact { grid-template-columns: 1fr; }
  .premiere-img,
  .ath-img { min-height: 220px; }
  .premiere-content,
  .ath-content,
  .contact-left,
  .contact-right { padding: 48px 24px; }

  /* Footer */
  footer {
    flex-direction: column; gap: 16px;
    text-align: center; padding: 28px 20px;
  }
  .f-links { justify-content: center; flex-wrap: wrap; }
}

/* ══════════════════════════════════════════════
   MOBILE  (max 600px)
══════════════════════════════════════════════ */
@media (max-width: 600px) {

  /* Sections */
  .sec { padding: 44px 16px; }
  #activites .inner, #cours .inner { padding: 0 16px; }
  #niveaux-encart { padding: 40px 16px; }

  /* HERO */
  .hero-content { padding: 16px 16px 80px; }
  h1 { font-size: clamp(38px, 11.5vw, 62px) !important; line-height: .9; }
  .hero-tag { font-size: 10px; letter-spacing: 2px; }
  .hero-tag::before { width: 16px; }
  .hero-sub { font-size: 10px; letter-spacing: 3px; margin-bottom: 24px; }
  .hero-btns { flex-direction: column; align-items: flex-start; gap: 12px; }
  .scroll-ind { display: none; }

  /* Titres */
  .s-title { font-size: clamp(28px, 9vw, 48px) !important; }
  .s-label { font-size: 9px; letter-spacing: 3px; }

  /* POUR QUI */
  .pub-grid { grid-template-columns: repeat(2,1fr); }
  .pub-header { padding: 14px 16px 8px; }

  /* Niveaux */
  .biceps-grid { grid-template-columns: repeat(4,1fr); }
  .bic-label { font-size: 9px; }

  /* Horaires */
  .h-grid { grid-template-columns: 1fr 1fr; }
  .h-item { padding: 18px 12px; }
  .h-heure { font-size: 18px; }
  .h-jour  { font-size: 9px; }

  /* Activités */
  .act-grid { grid-template-columns: 1fr; }

  /* Tarifs */
  .tarifs-grid { grid-template-columns: 1fr; }

  /* Cours cards */
  .c-card { flex-direction: column; }
  .c-img {
    width: 100% !important;
    min-width: unset !important;
    height: 160px;
    object-fit: cover;
  }
  .c-body { padding: 16px; }

  /* Sections split */
  .premiere-content,
  .ath-content,
  .contact-left,
  .contact-right { padding: 36px 16px; }
  .premiere-img, .ath-img { min-height: 200px; }

  /* Marquee */
  .mtrack span { font-size: 11px; padding: 0 14px; }

  /* Footer */
  footer { padding: 20px 16px; }
  .f-links a { font-size: 9px; }
}

/* ══════════════════════════════════════════════
   TRÈS PETIT  (max 390px)
══════════════════════════════════════════════ */
@media (max-width: 390px) {
  .pub-grid    { grid-template-columns: repeat(2,1fr); }
  .biceps-grid { grid-template-columns: repeat(3,1fr); }
  .h-grid      { grid-template-columns: 1fr; }
  .tarifs-grid { grid-template-columns: 1fr; }
  .act-grid    { grid-template-columns: 1fr; }
}


/* Désactiver animation reveal sur mobile */
@media(max-width:768px){
  .reveal{opacity:1!important;transform:none!important;transition:none!important;}
}
