.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* === HV STAY FF === */
.hv-ft .hv-stay-ff{margin-top:16px;margin-bottom:20px;}
.hv-ft .hv-stay-ff .fluentform .ff-el-group{margin-bottom:0;}
.hv-ft .hv-stay-ff .fluentform .ff-el-input--label{display:none;}
.hv-ft .hv-stay-ff .fluentform form{display:flex;align-items:stretch;gap:0;border-bottom:1px solid var(--hv-line);}
.hv-ft .hv-stay-ff .fluentform .ff-el-group:first-child{flex:1 1 auto;}
.hv-ft .hv-stay-ff .fluentform input[type=email]{
  width:100%;background:transparent !important;border:none !important;outline:none !important;
  box-shadow:none !important;padding:10px 0 !important;height:auto !important;
  font-family:"Manrope",sans-serif;font-size:13px;color:var(--hv-ink) !important;
}
.hv-ft .hv-stay-ff .fluentform input[type=email]::placeholder{color:var(--hv-muted);opacity:1;}
.hv-ft .hv-stay-ff .fluentform .ff-btn-submit{
  background:transparent !important;border:none !important;color:#0099CC !important;
  font-family:"Montserrat",sans-serif;font-weight:800;text-transform:uppercase;
  letter-spacing:.06em;font-size:12px;padding:10px 0 10px 16px !important;
  height:auto !important;cursor:pointer;transition:color .2s ease;
}
.hv-ft .hv-stay-ff .fluentform .ff-btn-submit:hover{color:var(--hv-ink) !important;}
.hv-ft .hv-stay-ff .fluentform .ff-el-is-error .text-danger,
.hv-ft .hv-stay-ff .fluentform .error-text{font-size:11px;color:#C0392B;}
.hv-ft .hv-stay-ff .ff-message-success{font-size:12px;color:#0099CC;border:none;background:none;padding:8px 0 0;}

/* 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 .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 v2 (20/08/2026, verifie a la capture) — remplace le bloc 145% ci-dessus,
   qui laissait la montagne en bandelette au ras du bas. On reprend le mecanisme
   desktop : hauteur EXPLICITE ancree en bas + cover. line-height du mot geant
   corrige (0,78 -> 1,04, il etait rogne en haut et en bas). */


/* ==== MOBILE v3 (20/08/2026) — remplace les blocs mobile precedents ====
   Le masque SVG ne revele qu'une fine bande en bas : en mobile la montagne tombait a
   ~80 px de neige au ras du bord. Agrandir le cadre n'ajoutait que du ciel bleu fonce.
   On remplace donc le masque par un degrade vertical : sommets + lac visibles, ciel
   fondu dans le footer. Mot geant remonte en z-index 4 (il passait sous le snow) et
   line-height corrige (0,78 -> 1,04, il etait rogne). Verifie a la capture. */


/* ===== SURVOL HARMONISE SUR TOUS LES LIENS DU FOOTER (20/08/2026) =====
   Meme cause qu'en EN : .hv-ftr__col a{color:...!important} ecrasait
   .hv-ftr__col a:hover{color:...} qui n'avait pas !important. Le survol existait
   mais ne pouvait jamais s'appliquer. Les villes marchaient car leur regle de survol
   porte !important. #0099CC mesure a 4,92 sur le navy #071626 (AA = 4,5). */
.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}

/* ===== ALIGNE SUR LE FOOTER EN #8605 (20/08/2026) =====
   Ce footer portait TROIS blocs mobiles empiles et contradictoires (145%,
   puis 300px, puis 340px), vestiges de tentatives successives : seul le
   dernier agissait, les deux autres etaient du code mort. Ils sont retires
   et remplaces par le reglage valide en anglais le meme jour. Les styles
   FluentForms .hv-stay-ff propres a cette langue sont conserves tels quels. */
/* 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}
}



/* ==== 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 */