/* Start custom CSS *//* LOGO-X135 — logo d'entrée agrandi de 35 % (calc(1.35 * valeur d'origine) sur largeur et hauteur, proportions 2:3 conservées) — PC uniquement ; smartphone (max-width 767px) restitué à ses valeurs d'origine — VALIDÉ ET VERROUILLÉ */
/* HERO-ROBUSTESSE-COMPAT — repli vh puis svh ; ancrage par insets ; portail à dimensions explicites 2:3 (page 24, reprise de la copie 532) */
.elementor .e-77dbe7f5-93a8.e-77dbe7f5-93a8 { height: 100vh; height: 100svh; }
.elementor .e-198450c5-fcb7.e-198450c5-fcb7 { top: -6%; right: -6%; bottom: -6%; left: -6%; width: auto; height: auto; }
.elementor .e-47f4dc94-f5ff.e-47f4dc94-f5ff { top: 0; right: 0; bottom: 0; left: 0; width: auto; height: auto; }
.elementor .e-320e79c-e086.e-320e79c-e086 { left: 0; right: 0; top: auto; bottom: 4vh; bottom: 4svh; height: calc(1.35 * clamp(64px, 11vh, 120px)); height: calc(1.35 * clamp(64px, 11svh, 120px)); width: calc(1.35 * clamp(42.67px, 7.3333vh, 80px)); width: calc(1.35 * clamp(42.67px, 7.3333svh, 80px)); }
@media (max-width: 767px) {
  .elementor .e-320e79c-e086.e-320e79c-e086 { bottom: auto; top: calc(50vh + 75vw + 6px); top: calc(50svh + 75vw + 6px); height: clamp(40px, calc(50vh - 75vw - 30px), 84px); height: clamp(40px, calc(50svh - 75vw - 30px), 84px); width: clamp(26.67px, calc((50vh - 75vw - 30px) * 0.66667), 56px); width: clamp(26.67px, calc((50svh - 75vw - 30px) * 0.66667), 56px); }
}
/* HERO-SMARTPHONES-COURTS — exception responsive : œuvre alignée en haut pour réserver le bas au portail */
@media (max-width: 767px) and (max-height: 750px) and (orientation: portrait) {
  .elementor .e-47f4dc94-f5ff.e-47f4dc94-f5ff { background-position: center top; }
  .elementor .e-320e79c-e086.e-320e79c-e086 { top: calc(150vw + 6px); height: clamp(40px, calc(100vh - 150vw - 28px), 84px); height: clamp(40px, calc(100svh - 150vw - 28px), 84px); width: clamp(26.67px, calc((100vh - 150vw - 28px) * 0.66667), 56px); width: clamp(26.67px, calc((100svh - 150vw - 28px) * 0.66667), 56px); }
}
/* FIN HERO */

/* HERO-PC-HALO-REPOS — halo doré léger au repos, PC uniquement (spécificité volontairement inférieure au survol) */
@media (min-width: 768px) {
  .elementor .e-320e79c-e086 { filter: drop-shadow(0 0 7px rgba(212, 175, 55, 0.38)); }
}
/* FIN HERO-PC-HALO-REPOS */

/* HERO-PC-HAUTEUR-UTILE — PC uniquement. Visiteur : Hero = hauteur de la fenêtre. Aperçu WordPress connecté : on retranche la barre d'administration (32 px, 46 px entre 768 et 782 px). Portail : hauteur 12,5 % de H, largeur 2:3, pied à 6 % de H ; minimum 80 px de haut (53,33 de large), plafonné à 30 % de H. */
@media (min-width: 768px) {
  .elementor .e-320e79c-e086.e-320e79c-e086 { bottom: 6vh; bottom: 6svh; height: calc(1.35 * clamp(min(80px, 30vh), 12.5vh, 128px)); height: calc(1.35 * clamp(min(80px, 30svh), 12.5svh, 128px)); width: calc(1.35 * clamp(min(53.33px, 20vh), 8.3333vh, 85.33px)); width: calc(1.35 * clamp(min(53.33px, 20svh), 8.3333svh, 85.33px)); }
}
@media (min-width: 783px) {
  body.admin-bar .elementor .e-77dbe7f5-93a8.e-77dbe7f5-93a8 { height: calc(100vh - 32px); height: calc(100svh - 32px); }
  body.admin-bar .elementor .e-320e79c-e086.e-320e79c-e086 { bottom: calc((100vh - 32px) * 0.06); bottom: calc((100svh - 32px) * 0.06); height: calc(1.35 * clamp(min(80px, (100vh - 32px) * 0.3), calc((100vh - 32px) * 0.125), 128px)); height: calc(1.35 * clamp(min(80px, (100svh - 32px) * 0.3), calc((100svh - 32px) * 0.125), 128px)); width: calc(1.35 * clamp(min(53.33px, (100vh - 32px) * 0.2), calc((100vh - 32px) * 0.08333), 85.33px)); width: calc(1.35 * clamp(min(53.33px, (100svh - 32px) * 0.2), calc((100svh - 32px) * 0.08333), 85.33px)); }
}
@media (min-width: 768px) and (max-width: 782px) {
  body.admin-bar .elementor .e-77dbe7f5-93a8.e-77dbe7f5-93a8 { height: calc(100vh - 46px); height: calc(100svh - 46px); }
  body.admin-bar .elementor .e-320e79c-e086.e-320e79c-e086 { bottom: calc((100vh - 46px) * 0.06); bottom: calc((100svh - 46px) * 0.06); height: calc(1.35 * clamp(min(80px, (100vh - 46px) * 0.3), calc((100vh - 46px) * 0.125), 128px)); height: calc(1.35 * clamp(min(80px, (100svh - 46px) * 0.3), calc((100svh - 46px) * 0.125), 128px)); width: calc(1.35 * clamp(min(53.33px, (100vh - 46px) * 0.2), calc((100vh - 46px) * 0.08333), 85.33px)); width: calc(1.35 * clamp(min(53.33px, (100svh - 46px) * 0.2), calc((100svh - 46px) * 0.08333), 85.33px)); }
}
/* FIN HERO-PC-HAUTEUR-UTILE *//* End custom CSS */