body {
    font-family: 'Montserrat', sans-serif;
  }
  h1, h2, h3, .font-title {
    font-family: 'Bebas Neue', cursive;
    letter-spacing: 0.5px;
  }
  

  :root      { --gold:#D4AF37; }        /* se non l’hai già */
  .bg-gold   { background-color:var(--gold); }
  .text-gold { color:var(--gold); }



  .scroll-fade {
    opacity: 0;
    transform: translateY(40px);
  }
  
  .scroll-fade.visible {
    opacity: 1;
    transform: translateY(0);
  }
  /* Navbar sticky su mobile, fixed su desktop */
#navbar{
  position: -webkit-sticky; /* iOS */
  position: sticky;
  top: 0;
  z-index: 9999;
}
@media (min-width: 768px){
  #navbar{
    position: fixed;
    top: 0; left: 0; right: 0;
  }
  /* spaziatura perché la fixed non copra il contenuto */
  body{ padding-top: 64px; }
}

/* IMPORTANTISSIMO: non mettere overflow/transform su antenati della navbar */
html, body{ overflow-x: visible; }


  #langSel,  /* desktop selector  */
  #langMob   /* mobile selector   */ { display:none !important; }





  /* fallback per overlay/modal */
#bookingModal:not(.hidden),
#widgetOverlay > .fixed:not(.hidden){
  display:flex;             /* centra sempre */
  align-items:center;
  justify-content:center;
  z-index: 99999;
}


/* Blocca lo scroll orizzontale ovunque */
html, body { overflow-x: hidden !important; }
