/* Correctifs UX du 25/09/2026 (audit du 24/09) : focus visible, pied de page
   mobile, bouton du formulaire, bannière de consentement compacte, menu. */

/* 5. Focus clavier visible sur le logo et les liens de l'en-tête / fil d'Ariane / pied de page. */
.vri-global-brand:focus-visible,
.vri-global-footer__brand:focus-visible,
.custom-logo-link:focus-visible,
.site-header .logo:focus-visible {
  outline: 2px solid #19f4e5;
  outline-offset: 4px;
  border-radius: 2px;
}
.vri-breadcrumb a:focus-visible,
.vri-global-footer a:focus-visible,
.site-footer a:focus-visible,
footer .footer-links a:focus-visible,
footer .footer-cities a:focus-visible {
  outline: 2px solid #19f4e5;
  outline-offset: 2px;
}

/* 1. Sept entrées dans le menu desktop (Anniversaire en tête, 2026-09-26) :
   moins d'espace entre les liens et texte à 15 px sur les écrans moyens
   pour garder une seule ligne. */
@media (min-width: 1101px) and (max-width: 1320px) {
  #vri-global-top .vri-global-header { gap: 24px; }
  #vri-global-top #vri-global-nav ul { gap: clamp(14px, 1.6vw, 24px); }
  #vri-global-top #vri-global-nav a { font-size: 15px; white-space: nowrap; }
}

/* 2. Menu mobile : l'en-tête mesure 128 px (logo de 125 px), le panneau du menu
   commence donc sous le logo au lieu de le couper à 92 px. */
@media (max-width: 1100px) {
  #vri-global-top #vri-global-nav { top: 128px; }
}

/* 4. Pied de page mobile : cibles d'au moins 44 px de haut, texte à 14 px. */
@media (max-width: 767px) {
  .vri-global-footer nav,
  .vrinfini-mckay-home .vri-footer-links,
  footer .footer-links { gap: 0 6px; }
  .vri-global-footer nav a,
  .vrinfini-mckay-home .vri-footer-links a,
  .vri-global-footer__cities a,
  footer .footer-links a,
  footer .footer-cities a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 0 8px;
    font-size: 14px;
    line-height: 1.2;
  }
  .vri-global-footer__cities,
  footer .footer-cities { gap: 0 4px; }
  .vri-global-footer__cities-label,
  footer .footer-cities-label { flex-basis: 100%; text-align: center; font-size: 13px; }
  /* Fil d'Ariane du thème seulement (pas celui intégré aux fiches de jeux). */
  #page > .vri-breadcrumb a { display: inline-flex; align-items: center; min-height: 44px; }
  #page > .vri-breadcrumb { margin-top: 6px; }
}

/* 9. Bouton « Envoyer ma demande » du formulaire de contact. */
.wpcf7-form input.wpcf7-submit {
  min-height: 48px;
  font-size: 16px !important;
  line-height: 1.2;
}

/* 6. Bannière de consentement Complianz compacte en mobile :
   texte court, Accepter et Refuser côte à côte et de même poids,
   « Voir les préférences » et la politique restent accessibles. */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-accept,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-deny {
  background-color: #1e73be;
  border-color: #1e73be;
  color: #fff;
}
@media (max-width: 767px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner {
    padding: 10px 12px 6px;
    gap: 6px;
    left: 8px;
    right: 8px;
    bottom: 8px;
    width: auto;
    margin: 0;
    transform: none;
    border-radius: 10px;
  }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header {
    position: absolute;
    top: 6px;
    right: 6px;
    min-height: 0;
    margin: 0;
  }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close { width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body { padding-right: 34px; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-divider { display: none; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body { margin: 0; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message { margin: 0; font-size: 13px; line-height: 1.45; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin: 0;
  }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
    margin: 0;
    min-height: 44px;
    height: auto;
    padding: 8px 10px;
    font-size: 15px;
  }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-view-preferences,
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-save-preferences {
    grid-column: 1 / -1;
    min-height: 28px;
    padding: 2px 10px;
    background: transparent;
    border-color: transparent;
    font-size: 14px;
    text-decoration: underline;
  }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-documents { margin: 0; }
  #cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-documents a { display: inline-block; padding: 2px 4px; font-size: 13px; line-height: 20px; }
}

/* Decor #page::after de global.css (carre tourne a 45 deg, right: 1rem) : il depassait de 28 px a droite en mobile et elargissait la page (masque par overflow-x: hidden). clip ne cree pas de conteneur de defilement (sticky intact). 28/09/2026 */
html body.vri-global-shell #page { overflow-x: clip; } /* l'emporte sur body.vri-global-shell #page { overflow: visible } de vrinfini-global-shell.css */

/* Triangle decoratif (fond SVG de global.css sur h1 / titres h2 de l'accueil) retire partout a la demande de l'auteur. 28/09/2026 */
#row_testimonies h2,.h1,.home .h2,.home h2,h1,#row_testimonies h2.text-white,.h1.text-white,.home .h2.text-white,.home h2.text-white,h1.text-white{background-image:none!important}

/* « Gérer le consentement » (Complianz) visible partout, 29/09/2026.
   Complianz le masque sous 769 px et, au-dessus, n'en laisse dépasser que 15 px :
   on l'affiche en petit onglet lisible, sans animation (sélecteurs renforcés :
   la feuille de Complianz est chargée après celle-ci). En mobile (barre fixe
   Appeler / Devis sous 768 px), il se pose juste au-dessus de la barre, à droite.
   Le lien « Gérer mes cookies » du pied de page rouvre aussi la bannière. */
html body #cmplz-manage-consent .cmplz-manage-consent:not(.cmplz-dismissed) {
  display: block;
}
html body #cmplz-manage-consent .cmplz-manage-consent {
  bottom: 0;
  right: 24px;
  height: auto;
  min-width: 0;
  min-height: 34px;
  padding: 8px 14px;
  border: 1px solid rgba(25, 244, 229, .35);
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  background: rgba(7, 9, 24, .92);
  color: #d9d7e2;
  font: 600 13px/1.3 Manrope, Arial, sans-serif;
  box-shadow: 0 -4px 14px rgba(0, 0, 0, .3);
  animation: none;
}
html body #cmplz-manage-consent .cmplz-manage-consent:hover,
html body #cmplz-manage-consent .cmplz-manage-consent:focus {
  animation: none;
  color: #19f4e5;
}
html body #cmplz-manage-consent .cmplz-manage-consent:focus-visible {
  outline: 2px solid #19f4e5;
  outline-offset: 2px;
}
@media (max-width: 767px) {
  html body #cmplz-manage-consent .cmplz-manage-consent {
    bottom: calc(67px + env(safe-area-inset-bottom, 0px));
    right: 8px;
    min-height: 28px;
    padding: 5px 10px;
    border-bottom: 1px solid rgba(25, 244, 229, .35);
    border-radius: 999px;
    font-size: 12px;
  }
}

/* Badge flottant Complianz masque sous 768 px : il recouvrait des boutons et du texte au-dessus de la barre fixe.
   Le lien "Gerer mes cookies" du pied de page reste disponible sur toutes les pages (parcours client du 04/10). */
@media (max-width: 767px) {
  html body #cmplz-manage-consent .cmplz-manage-consent,
  html body #cmplz-manage-consent .cmplz-manage-consent:not(.cmplz-dismissed) { display: none !important; }
}
