/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Studio Be4 team
Author: Studio Be4
Author URI: https://studiobe4.it
Template: hello-elementor
Version: 1.0.7
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Banner Cookie - attivare se si usa LegalBlink
#cm_tertiary_btn {background-color:#333333!important;color:#FFFFFF!important;}
#cc_div .c_button, #cc_div .c_link, #cc_div #cm {border-radius:0px!important;}*/


/* Scrollbar */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
::-webkit-scrollbar-track {
    background-color: #ffffff;
}
::-webkit-scrollbar-thumb {
    background-color: #B5912C;
    border-radius: 0px;
}
::-webkit-scrollbar-thumb:hover {
    background-color: #111111;
}


/* Menu a colonne */
.colonna_menu ul li:first-child a {
    font-family: 'Magden' !important;
    font-size: 32px !important;
    color: #ffffff !important;
    margin-bottom: 25px;
    display: block;
	font-weight: 400 !important;
	letter-spacing: auto !important;
	text-transform: capitalize !important;
}

/* Icone pulsanti */
.elementor-button-icon svg{
	width:30px !important;
	height: auto !important;
	margin-right:10px !important;
}


/* Testo Popup Condizioni */
.testo_condizioni {
  max-height: 400px;
  overflow-y: auto;
}


/* Stile form disponibilità Booking Home */




/* ============================================
   STICKY HEADER - Hotel Olympia
   ============================================ */

/* --- Stato normale --- */
.global_header {
  height: 200px !important;
  min-height: 200px !important;
  background: transparent !important;
  margin-bottom: -200px !important;
  transition: height 0.4s ease, min-height 0.4s ease, background-color 0.4s ease !important;
}

/* Hamburger e user icon - stato normale */
.global_header .hamburger_menu,
.global_header .user_icon,
.global_header .menu_lingua {
  margin-top: -30px !important;
  transition: margin-top 0.4s ease, padding 0.4s ease !important;
}

.global_header .user_icon {
  padding-top: 25px !important;
  padding-bottom: 25px !important;
}

/* Nasconde logo piccolo di default */
.global_header .logo_small {
  display: none !important;
}

/* Mostra logo grande di default */
.global_header .logo_big {
  display: block !important;
}

/* --- Stato sticky --- */
.global_header.elementor-sticky--effects {
  height: 90px !important;
  min-height: 90px !important;
  background-color: rgba(0, 0, 0, 0.9) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

/* Hamburger e user icon - stato sticky */
.global_header.elementor-sticky--effects .hamburger_menu,
.global_header.elementor-sticky--effects .user_icon,
.global_header.elementor-sticky--effects .menu_lingua {
  margin-top: 0px !important;
}

.global_header.elementor-sticky--effects .user_icon {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.global_header.elementor-sticky--effects .logo_big {
  display: none !important;
}

.global_header.elementor-sticky--effects .logo_small {
  display: block !important;
}





/* ============================================
   FORM
   ============================================ */

/* Righe dei forms */
.riga_form {
	margin-bottom:0px;
	gap: 15px;
} 

.riga_form_camere {
	margin-bottom:0px;
	gap: 10px;
} 

.step_2_heading {
	margin-top:40px !important;
}

.form_heading, .step_2_heading {
	text-align:center;
	padding-bottom:15px !important;
	margin-bottom: 10px !important;
	border-bottom: 1px solid #eaeaea;
}

.jet-form-builder__field-template {
	border: 2px solid #eaeaea;
}

.jet-form-builder__field-template--checked {
	border: 2px solid #D2A730;
}

/* Repeater form preventivo */
.repeater_preventivo .jet-form-builder__label-text {
    font-size: 14px !important;
    color: #545454 !important;
}

input:focus-visible, select:focus-visible, textarea:focus-visible {
	outline: none;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: none;
  outline: none; /* rimuove il bordo blu predefinito del browser */
}









/* ============================================
   RESPONSIVE
   Breakpoint standard Elementor (desktop-first):
   Laptop   : max-width 1366px
   Tablet   : max-width 1024px
   Mobile   : max-width 767px
   ============================================ */

/* --- Laptop (≤ 1366px) --- */
@media (max-width: 1366px) {
  /* Stesso comportamento loghi del desktop */
  .global_header {
    height: 160px !important;
    min-height: 160px !important;
    margin-bottom: -160px !important;
  }

  .global_header.elementor-sticky--effects {
    height: 80px !important;
    min-height: 80px !important;
  }

  .global_header .user_icon {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
  }
	.colonna_menu ul li:first-child a {
    font-size: 26px !important;
    margin-bottom: 15px;
}
}

/* --- Tablet (≤ 1024px) --- */
@media (max-width: 1024px) {
  /* Solo logo piccolo, sempre visibile */
  .global_header .logo_big {
    display: none !important;
  }
  .global_header .logo_small {
    display: block !important;
  }

  /* Altezza fissa 90px, nessun cambio allo sticky */
  .global_header {
    height: 90px !important;
    min-height: 90px !important;
    margin-bottom: -90px !important;
  }

  .global_header.elementor-sticky--effects {
    height: 90px !important;
    min-height: 90px !important;
  }

  /* Margini e padding già da sticky anche in stato normale */
  .global_header .hamburger_menu,
  .global_header .user_icon,
  .global_header .menu_lingua {
    margin-top: 0px !important;
  }

  .global_header .user_icon {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
}

/* --- Mobile (≤ 767px) --- */
@media (max-width: 767px) {
  /* Altezza fissa 80px, nessun cambio allo sticky */
  .global_header {
    height: 80px !important;
    min-height: 80px !important;
    margin-bottom: -80px !important;
  }

  .global_header.elementor-sticky--effects {
    height: 80px !important;
    min-height: 80px !important;
  }
}