.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* nettoye : la correction du logo est desormais dans le widget lui-meme, avec la bonne specificite */
/* Air au-dessus du logo : le footer remonte de -64px sous la section precedente,
   et son padding-top calcule retombait a 22px, si bien que la ligne de separation
   arrivait juste au-dessus du logo. Plancher releve a 6rem. (Jean, 19/08/2026) */
/* remplace le 19/08 par le bloc de degagement ci-dessous */
@media(max-width:760px){.hv-ftr__inner{padding-top:max(4rem, calc(max(820px, 39.07vw) * 0.4619 - 382px)) !important}}

/* Degagement de la crete (19/08/2026, mesure : sommet de la montagne a 46,3% de l'image).
   Voir AUDITS/session-zurich-refonte-20260819/patch_footer_crete_v2.php pour le detail. */
.hv-ftr{min-height:max(920px, 39.07vw) !important}
.hv-ftr .hv-ftr__inner{padding-top:max(5rem, calc(max(920px, 39.07vw) * 0.4619 - 382px)) !important}
.hv-ftr .hv-ftr__areas{margin-top:10px !important;padding-top:8px !important}

/* ============ MOBILE ============
   Historique : le masque SVG d'origine ne revelait qu'une fine bande en bas de l'image ;
   remplace en mobile par un degrade vertical. Le mot geant, en z-index 1 sous le snow en
   z-index 2, disparaissait derriere la montagne : remonte a 4. Son line-height de 0,78
   (36 px de boite pour 47 px de police) le rognait : corrige a 1,04.

   --- 20/08/2026, CAUSE RACINE DU CIEL ENFIN MESUREE ---
   hv-ftr-alps2.webp fait 3200 x 1250 (panoramique, ratio 2,56). Le cadre mobile fait
   360 x 250 (ratio 1,44). Avec background-size:cover, l'echelle retenue est
   max(360/3200 ; 250/1250) = 0,2 : l'image s'affiche en 640 x 250 et on voit donc
   100 % de sa HAUTEUR, ciel compris. C'est pour cela qu'agrandir le cadre n'ajoutait
   que du ciel : cover montrait deja toute la photo, agrandir ne faisait qu'etirer le
   vide. Le ciel occupe les 36 % superieurs de la photo.
   CORRECTIF : on abandonne cover et on impose la hauteur d'affichage a 390 px.
   L'image sort alors en 998 x 390, le cadre de 250 px n'en montre plus que les 64 %
   du bas (position 50% 100%) : sommets et lac, sans ciel. Le fondu d'entree passe de
   26 % (88 px) a 12 % (30 px), il n'a plus de vide a masquer.

   CENTRAGE DU MOT. Mesure avant : marge gauche 24 px, marge droite 2 px. Le mot est en
   white-space:nowrap et sa taille se calculait sur 100vw, qui INCLUT la barre de
   defilement (375) alors que la largeur utile vaut 360 : le texte depassait de 22 px et,
   ne pouvant pas se centrer, debordait a droite. 12,2vw -> 11,3vw. Mesure apres : 25/25.

   PLANCHER DU MOT. margin-bottom 104 px : c'est ce qui le tient au-dessus du bouton
   Joinchat (fixe, 60 px, a 14 px du bord). Ne pas descendre sous 96 px sans deplacer
   le bouton, sinon ils se recouvrent. */
@media(max-width:760px){
  .hv-ftr{min-height:0 !important;padding-bottom:250px !important}
  .hv-ftr .hv-ftr__snow{top:auto !important;bottom:0 !important;height:250px !important;z-index:1 !important;
    background-size:auto 390px !important;background-position:50% 100% !important;
    background-repeat:no-repeat !important;
    -webkit-mask-image:linear-gradient(to bottom, transparent 0%, #000 12%) !important;
    mask-image:linear-gradient(to bottom, transparent 0%, #000 12%) !important;
    -webkit-mask-size:100% 100% !important;mask-size:100% 100% !important;
    -webkit-mask-position:0 0 !important;mask-position:0 0 !important;
    -webkit-mask-repeat:no-repeat !important;mask-repeat:no-repeat !important}
  .hv-ftr .hv-ftr__giantwrap{z-index:4 !important;margin-bottom:104px !important}
  .hv-ftr .hv-ftr__giantwrap .hv-ftr__giant{line-height:1.04 !important;font-size:11.3vw !important}
}

/* ===== SURVOL HARMONISE SUR TOUS LES LIENS DU FOOTER (20/08/2026) =====
   CAUSE MESUREE : .hv-ftr__col a{color:...} porte !important, alors que
   .hv-ftr__col a:hover{color:#0099CC} ne le porte PAS. Une declaration !important
   l'emporte sur une declaration normale QUELLE QUE SOIT la specificite : l'etat de
   repos ecrasait donc le survol, qui etait ecrit mais inapplicable.
   Couleur retenue : #0099CC, mesure a 4,92 sur le fond navy #071626 (AA exige 4,5).
   La marque et « Designed & built by » sont exclus : ils ont leur propre survol. */
.hv-ftr .hv-ftr__col a:not(.hv-ftr__brand):not(.hv-ftr__by){
  transition:color .16s cubic-bezier(.16,1,.3,1)}
.hv-ftr .hv-ftr__col a:not(.hv-ftr__brand):not(.hv-ftr__by):hover,
.hv-ftr .hv-ftr__col a:not(.hv-ftr__brand):not(.hv-ftr__by):focus-visible{
  color:#0099CC !important}

/* ===== BORNAGE TABLETTE 761-1200px (21/08/2026) =====
   CAUSE MESUREE : le degagement de crete du 19/08 (.hv-ftr{min-height:max(920px,39.07vw)})
   a ete ecrit SANS media query et avec !important. Il visait le desktop mais ecrasait aussi
   la plage tablette, ou le CSS du widget prevoit min-height:0 + padding-bottom:calc(39.07vw+4px).
   Mesure a 768px avant correctif : footer de 1120px pour une photo de 300px, soit ~820px de
   bleu vide, montagne ecrasee en bande et filigrane apparemment coupe.
   Le mobile (<=760px) etait deja protege par le correctif du 20/08 (min-height:0 !important),
   et le desktop (>1200px) conserve integralement le degagement de crete.
   Ce bloc rend a la seule plage 761-1200px le regime prevu par le widget. */
@media(min-width:761px) and (max-width:1200px){
  .hv-ftr{min-height:0 !important}
  .hv-ftr .hv-ftr__inner{padding-top:max(1.4rem, calc(max(820px, 39.07vw) * 0.4619 - 382px)) !important}
}

/* ===== TABLETTE 761-1200px, RECETTE MOBILE TRANSPOSEE (21/08/2026) =====
   Le regime 100% du widget montrait TOUTE la photo, dont les 36% de ciel superieurs
   (indistinguables du fond navy) : bande terne, mot flottant, mention legale sur le ciel.
   On applique la recette mobile validee le 20/08, a l'echelle 1,36 (bande 250->340,
   image 390->530 : meme fraction visible 64%, ciel exclu, crete a 53,7% de l'image
   soit 285px du bas de la bande, donc visible avec 55px de marge).
   Mot : z-index 4 devant la montagne, navy #12365C sur neige, comme le mobile.
   Mention legale : sortie de la bande, posee sur le navy juste au-dessus (bottom 352px),
   recoloree rgba(255,255,255,.82) comme le mobile (mesure 5,3:1 sur #0A1E33), plonge coupee.
   La photo propre de .hv-ftr est neutralisee : au-dela de 870px de large elle depassait
   de la bande (100% auto > 340px) et affichait une seconde montagne fantome. */
@media(min-width:761px) and (max-width:1200px){
  .hv-ftr{padding-bottom:340px !important;background-image:none !important}
  .hv-ftr .hv-ftr__inner{padding-top:4rem !important}
  .hv-ftr .hv-ftr__snow{top:auto !important;bottom:0 !important;height:340px !important;z-index:1 !important;
    background-size:auto 530px !important;background-position:50% 100% !important;
    background-repeat:no-repeat !important;
    -webkit-mask-image:linear-gradient(to bottom, transparent 0%, #000 12%) !important;
    mask-image:linear-gradient(to bottom, transparent 0%, #000 12%) !important;
    -webkit-mask-size:100% 100% !important;mask-size:100% 100% !important;
    -webkit-mask-position:0 0 !important;mask-position:0 0 !important;
    -webkit-mask-repeat:no-repeat !important;mask-repeat:no-repeat !important}
  .hv-ftr .hv-ftr__giantwrap{z-index:4 !important}
  .hv-ftr p.hv-ftr__loc{bottom:352px !important;color:rgba(255,255,255,.82) !important;
    transform:none !important;transition:none !important}
}

/* Correctif de specificite (21/08) : le <style> du widget est declare APRES le CSS de page,
   donc son color:#14304D !important battait notre rgba(255,255,255,.82) !important a
   specificite egale (0,1,1). On passe a (0,2,1) : .hv-ftr .hv-ftr p.hv-ftr__loc ne marche pas
   (meme element), on double la classe sur l'element : p.hv-ftr__loc.hv-ftr__loc. */
@media(min-width:761px) and (max-width:1200px){
  .hv-ftr p.hv-ftr__loc.hv-ftr__loc{color:rgba(255,255,255,.82) !important}
}

/* Correctif chevauchement (21/08) : en absolu a bottom:352px la mention legale tombait
   sur la rangee SERVICE AREAS du flux. On la remet en flux statique comme le mobile
   (position:static mesure a 375) : elle se place naturellement sous SERVICE AREAS,
   au-dessus de la bande (le padding-bottom:340px du footer la tient hors de la photo). */
@media(min-width:761px) and (max-width:1200px){
  .hv-ftr p.hv-ftr__loc{position:static !important;bottom:auto !important;margin-top:22px !important}
}

/* ==== 25/08/2026, 3e passe : photo d'origine restauree, seul le navy grandit ====
   Le sceau de certification a rendu le contenu plus haut. Monter min-height avec cover
   agrandissait la photo et cassait le calage du mot geant (ancre en bas par constante).
   On epingle donc la photo a sa taille d'origine et on ajoute du navy au-dessus.
   Degagement villes / neige mesure au pixel apres coup, pas calcule. */
@media(min-width:1201px){
  .hv-ftr{min-height:calc(max(920px, 39.07vw) + 16px) !important;
          background-size:auto max(920px, 39.07vw) !important}
  .hv-ftr .hv-ftr__snow{background-size:auto max(920px, 39.07vw) !important;
          -webkit-mask-size:auto max(920px, 39.07vw) !important;
          mask-size:auto max(920px, 39.07vw) !important}
  .hv-ftr .hv-ftr__inner{padding-top:3rem !important}
}/* End custom CSS */