/* ═══════════════════════════════════════════════════════════════
   PAGE CONGRÈS 2026 – Optimisation mobile
   ═══════════════════════════════════════════════════════════════ */

/* ===== HERO ===== */
@media (max-width: 768px) {
  .congres-hero {
    height: auto !important;
    min-height: 100vh;
    min-height: 100dvh;
    padding: 20px 15px 40px !important;
    align-items: flex-start !important;
    padding-top: 100px !important;
  }

  .congres-hero-logo-left {
    left: 15px !important;
    top: 15px !important;
  }

  .congres-hero-logo-right {
    right: 15px !important;
    top: 15px !important;
  }

  .congres-hero-logo-left img,
  .congres-hero-logo-right img {
    height: 50px !important;
  }

  .congres-hero-content {
    padding: 30px 20px !important;
    border-radius: 16px !important;
    max-width: 100% !important;
  }

  .congres-hero h1 {
    font-size: 28px !important;
    line-height: 1.2;
  }

  .congres-hero h2 {
    font-size: 18px !important;
    letter-spacing: 0.5px !important;
    line-height: 1.3;
  }

  .congres-hero .congres-hotel-info {
    font-size: 16px !important;
  }

  #countdown {
    font-size: 28px !important;
  }

  .congres-places {
    padding: 14px 16px !important;
    margin-top: 20px !important;
  }

  .congres-places p:first-child {
    font-size: 16px !important;
  }

  .congres-places p:last-child {
    font-size: 14px !important;
  }

  #placesRestantes {
    font-size: 18px !important;
  }
}

@media (max-width: 480px) {
  .congres-hero {
    padding-top: 80px !important;
  }

  .congres-hero-content {
    padding: 24px 16px !important;
  }

  .congres-hero h1 {
    font-size: 24px !important;
  }

  .congres-hero h2 {
    font-size: 14px !important;
  }

  #countdown {
    font-size: 24px !important;
  }
}

/* ===== NAVIGATION ===== */
@media (max-width: 768px) {
  .congres-nav {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 12px 10px !important;
  }

  .congres-nav a {
    margin: 0 8px !important;
    font-size: 14px !important;
  }
}

@media (max-width: 480px) {
  .congres-nav {
    flex-direction: column;
    gap: 6px;
  }

  .congres-nav a {
    display: block;
    text-align: center;
    padding: 10px 12px;
    margin: 0 !important;
  }
}

/* ===== FORMULES ===== */
@media (max-width: 768px) {
  .congres-formules {
    padding: 60px 15px 80px !important;
  }

  .congres-formules-header h2 {
    font-size: 28px !important;
  }

  .congres-formules-header p {
    font-size: 16px !important;
    margin-bottom: 30px !important;
  }

  .congres-formules-grid {
    gap: 24px !important;
    flex-direction: column !important;
  }

  .congres-formule-card {
    flex: 1 1 100% !important;
    padding: 35px 25px !important;
    max-width: 100%;
  }

  .congres-formule-card.featured {
    transform: none !important;
  }

  .congres-formule-card h3 {
    font-size: 18px !important;
  }

  .congres-formule-card .formule-badge {
    font-size: 11px !important;
    padding: 5px 14px !important;
  }

  .congres-formule-card ul {
    line-height: 1.8 !important;
  }

  .congres-formule-card a[href*="formule"],
  .congres-formule-card a[href^="tel"] {
    display: block;
    width: 100%;
    text-align: center;
    padding: 14px 20px !important;
    font-size: 15px !important;
  }
}

@media (max-width: 480px) {
  .congres-formules {
    padding: 40px 12px 60px !important;
  }

  .congres-formules-header h2 {
    font-size: 24px !important;
  }

  .congres-formule-card {
    padding: 28px 18px !important;
  }

  .congres-formule-card p {
    font-size: 14px !important;
  }
}

/* ===== MOT DU PRÉSIDENT ===== */
@media (max-width: 768px) {
  .congres-mot-president {
    padding: 60px 15px 80px !important;
  }

  .congres-mot-president h2 {
    font-size: 28px !important;
  }

  .congres-mot-president .congres-mot-subtitle {
    font-size: 16px !important;
    margin-bottom: 35px !important;
  }

  .congres-mot-wrapper {
    flex-direction: column !important;
    gap: 35px !important;
  }

  .congres-mot-texte {
    flex: 1 1 100% !important;
    min-width: 0 !important;
    font-size: 16px !important;
    line-height: 1.75;
  }

  .congres-mot-photo {
    flex: 0 0 auto !important;
    order: -1;
  }

  .congres-mot-photo img {
    max-width: 220px !important;
  }

  .congres-mot-signature {
    font-size: 20px !important;
  }
}

@media (max-width: 480px) {
  .congres-mot-president {
    padding: 40px 12px 60px !important;
  }

  .congres-mot-president h2 {
    font-size: 24px !important;
  }

  .congres-mot-texte {
    font-size: 15px !important;
  }
}

/* ===== ACTIVITÉS ===== */
@media (max-width: 768px) {
  .congres-activites {
    padding: 60px 15px 80px !important;
  }

  .congres-activites h2 {
    font-size: 28px !important;
  }

  .congres-activites p {
    font-size: 16px !important;
  }

  .congres-activites a {
    display: flex !important;
    justify-content: center;
    padding: 16px 28px !important;
    font-size: 16px !important;
  }
}

/* ===== INSCRIPTION CTA ===== */
@media (max-width: 768px) {
  #inscription.congres-inscription-cta {
    padding: 60px 15px 80px !important;
  }

  #inscription.congres-inscription-cta h2 {
    font-size: 28px !important;
  }

  #inscription.congres-inscription-cta a {
    display: block;
    text-align: center;
    padding: 18px 30px !important;
    font-size: 18px !important;
  }
}

/* ===== LE LIEU ===== */
@media (max-width: 768px) {
  .congres-lieu {
    padding: 60px 15px 80px !important;
  }

  .congres-lieu-content {
    padding: 40px 25px !important;
    border-radius: 16px !important;
  }

  .congres-lieu h2 {
    font-size: 28px !important;
  }

  .congres-lieu .congres-lieu-desc {
    font-size: 17px !important;
  }

  .congres-lieu .congres-lieu-address {
    font-size: 16px !important;
    line-height: 1.6;
  }

  .congres-lieu-photos {
    margin-top: 30px !important;
    padding: 0 10px !important;
    gap: 12px !important;
  }

  .congres-lieu-photos img {
    max-height: 200px !important;
    width: 100%;
  }
}

@media (max-width: 480px) {
  .congres-lieu-content {
    padding: 30px 18px !important;
  }

  .congres-lieu h2 {
    font-size: 24px !important;
  }
}

/* Amélioration tactile mobile - zones cliquables >= 44px */
@media (hover: none) and (pointer: coarse) {
  .congres-nav a,
  .congres-formule-card a,
  .congres-activites a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
}

/* Navigation smooth scroll sur mobile */
@media (max-width: 768px) {
  html {
    scroll-padding-top: 70px;
  }
}
