/* Responsive enhancement — preserves the original visual identity and content. */
html { box-sizing: border-box; -webkit-text-size-adjust: 100%; }
*, *::before, *::after { box-sizing: inherit; }
body { margin: 0; padding: 0 14px; overflow-x: hidden; }
body > table { width: min(100%, 1000px) !important; height: auto !important; margin-left: auto !important; margin-right: auto !important; }
table { max-width: 100% !important; }
td { max-width: 100%; }
img { max-width: 100%; height: auto; }
hr { max-width: 100% !important; }
iframe, video, embed, object { max-width: 100% !important; }
.video { width: min(100%, 500px) !important; height: auto !important; aspect-ratio: 25 / 18; }

/* Keep gallery thumbnails tidy while allowing them to wrap on narrow screens. */
.presse { max-width: calc(50% - 10px); height: auto; }

@media (max-width: 760px) {
  body { padding: 0 10px; }
  body > table { width: 100% !important; }
  td { height: auto !important; }
  .texte, .texteplan, a, a:hover, a:active { font-size: 15px; line-height: 1.55; }
  .liensection { line-height: 2; }
  .liensection a { display: inline-block; padding: 2px 3px; }
  .gauche, .gauche1, .gauche2, .gauche3, .gauche4, .gauche5,
  .droite, .droite1, .droite2, .droite3, .droite4, .droite5,
  .centre {
    float: none !important;
    width: 100% !important;
    height: auto !important;
    margin: 16px auto !important;
  }
  .titrexpo, .titrexpo1, .titreparures, .titreparures1 { margin-left: 0 !important; text-align: center; }
  input, textarea, select { max-width: 100%; }
}

@media (max-width: 480px) {
  body { padding: 0 7px; }
  .texte, .texteplan, a, a:hover, a:active { font-size: 14px; }
  .Rubriques { font-size: 18px; }
  .contact, .contact:hover { font-size: 20px; }
  .presse { max-width: 100%; }
}
