.elementor-kit-6{--e-global-color-primary:#1B43C4;--e-global-color-secondary:#2C3F51;--e-global-color-text:#0E1726;--e-global-color-accent:#FDBA24;--e-global-color-inksoft:#1B2739;--e-global-color-bluedk:#173AA8;--e-global-color-cyan:#1ECCFE;--e-global-color-amberdk:#EFA400;--e-global-color-orange:#F05D22;--e-global-color-orangedk:#C4441A;--e-global-color-white:#FFFFFF;--e-global-color-paper:#F6F7F9;--e-global-color-line:#E6E9EE;--e-global-color-muted:#5B6B7F;--e-global-color-muteddk:#8A9AAD;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-size:clamp(32px, calc(26.8px + 1.3333vw), 46px);--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.02em;--e-global-typography-primary-letter-spacing:-0.045em;--e-global-typography-secondary-font-family:"Bricolage Grotesque";--e-global-typography-secondary-font-size:clamp(24px, calc(21.029px + 0.7619vw), 32px);--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.06em;--e-global-typography-secondary-letter-spacing:-0.038em;--e-global-typography-text-font-family:"Instrument Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Instrument Sans";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:none;--e-global-typography-accent-line-height:1.2em;--e-global-typography-eyebrow-font-family:"Instrument Sans";--e-global-typography-eyebrow-font-size:11px;--e-global-typography-eyebrow-font-weight:600;--e-global-typography-eyebrow-text-transform:uppercase;--e-global-typography-eyebrow-line-height:1.8em;--e-global-typography-eyebrow-letter-spacing:0.14em;--e-global-typography-h1page-font-family:"Bricolage Grotesque";--e-global-typography-h1page-font-size:clamp(28px, calc(23.543px + 1.1429vw), 40px);--e-global-typography-h1page-font-weight:600;--e-global-typography-h1page-line-height:1.06em;--e-global-typography-h1page-letter-spacing:-0.04em;--e-global-typography-h3-font-family:"Bricolage Grotesque";--e-global-typography-h3-font-size:clamp(20px, calc(19.257px + 0.1905vw), 22px);--e-global-typography-h3-font-weight:600;--e-global-typography-h3-line-height:1.18em;--e-global-typography-h3-letter-spacing:-0.02em;--e-global-typography-lead-font-family:"Instrument Sans";--e-global-typography-lead-font-size:clamp(16px, calc(15.257px + 0.1905vw), 18px);--e-global-typography-lead-font-weight:400;--e-global-typography-lead-line-height:1.55em;--e-global-typography-price-font-family:"Bricolage Grotesque";--e-global-typography-price-font-size:clamp(20px, calc(18.514px + 0.381vw), 24px);--e-global-typography-price-font-weight:600;--e-global-typography-price-line-height:1em;--e-global-typography-price-letter-spacing:-0.04em;--e-global-typography-step-font-family:"Bricolage Grotesque";--e-global-typography-step-font-size:clamp(18px, calc(16.514px + 0.381vw), 22px);--e-global-typography-step-font-weight:600;--e-global-typography-step-line-height:1em;--e-global-typography-step-letter-spacing:-0.02em;--e-global-typography-trust-font-family:"Bricolage Grotesque";--e-global-typography-trust-font-size:clamp(18px, calc(16.514px + 0.381vw), 22px);--e-global-typography-trust-font-weight:600;--e-global-typography-trust-line-height:1.1em;--e-global-typography-trust-letter-spacing:-0.02em;--e-global-typography-note-font-family:"Instrument Sans";--e-global-typography-note-font-size:11px;--e-global-typography-note-font-weight:400;--e-global-typography-note-line-height:1.6em;--e-global-typography-note-letter-spacing:0.01em;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-primary );text-decoration:none;}.elementor-kit-6 a:hover{color:var( --e-global-color-bluedk );text-decoration:underline;}.elementor-kit-6 h1{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-kit-6 h2{color:var( --e-global-color-text );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );word-spacing:var( --e-global-typography-secondary-word-spacing );}.elementor-kit-6 h3{color:var( --e-global-color-text );font-family:var( --e-global-typography-h3-font-family ), Sans-serif;font-size:var( --e-global-typography-h3-font-size );font-weight:var( --e-global-typography-h3-font-weight );line-height:var( --e-global-typography-h3-line-height );letter-spacing:var( --e-global-typography-h3-letter-spacing );word-spacing:var( --e-global-typography-h3-word-spacing );}.elementor-kit-6 h4{color:var( --e-global-color-text );font-family:var( --e-global-typography-h3-font-family ), Sans-serif;font-size:var( --e-global-typography-h3-font-size );font-weight:var( --e-global-typography-h3-font-weight );line-height:var( --e-global-typography-h3-line-height );letter-spacing:var( --e-global-typography-h3-letter-spacing );word-spacing:var( --e-global-typography-h3-word-spacing );}.elementor-kit-6 h5{color:var( --e-global-color-text );font-family:var( --e-global-typography-lead-font-family ), Sans-serif;font-size:var( --e-global-typography-lead-font-size );font-weight:var( --e-global-typography-lead-font-weight );line-height:var( --e-global-typography-lead-line-height );letter-spacing:var( --e-global-typography-lead-letter-spacing );word-spacing:var( --e-global-typography-lead-word-spacing );}.elementor-kit-6 h6{color:var( --e-global-color-muted );font-family:var( --e-global-typography-eyebrow-font-family ), Sans-serif;font-size:var( --e-global-typography-eyebrow-font-size );font-weight:var( --e-global-typography-eyebrow-font-weight );text-transform:var( --e-global-typography-eyebrow-text-transform );line-height:var( --e-global-typography-eyebrow-line-height );letter-spacing:var( --e-global-typography-eyebrow-letter-spacing );word-spacing:var( --e-global-typography-eyebrow-word-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:12px;}.elementor-element{--widgets-spacing:12px 12px;--widgets-spacing-row:12px;--widgets-spacing-column:12px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-kit-6 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );word-spacing:var( --e-global-typography-secondary-word-spacing );}.elementor-kit-6 h3{font-size:var( --e-global-typography-h3-font-size );line-height:var( --e-global-typography-h3-line-height );letter-spacing:var( --e-global-typography-h3-letter-spacing );word-spacing:var( --e-global-typography-h3-word-spacing );}.elementor-kit-6 h4{font-size:var( --e-global-typography-h3-font-size );line-height:var( --e-global-typography-h3-line-height );letter-spacing:var( --e-global-typography-h3-letter-spacing );word-spacing:var( --e-global-typography-h3-word-spacing );}.elementor-kit-6 h5{font-size:var( --e-global-typography-lead-font-size );line-height:var( --e-global-typography-lead-line-height );letter-spacing:var( --e-global-typography-lead-letter-spacing );word-spacing:var( --e-global-typography-lead-word-spacing );}.elementor-kit-6 h6{font-size:var( --e-global-typography-eyebrow-font-size );line-height:var( --e-global-typography-eyebrow-line-height );letter-spacing:var( --e-global-typography-eyebrow-letter-spacing );word-spacing:var( --e-global-typography-eyebrow-word-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}.elementor-kit-6 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );word-spacing:var( --e-global-typography-primary-word-spacing );}.elementor-kit-6 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );word-spacing:var( --e-global-typography-secondary-word-spacing );}.elementor-kit-6 h3{font-size:var( --e-global-typography-h3-font-size );line-height:var( --e-global-typography-h3-line-height );letter-spacing:var( --e-global-typography-h3-letter-spacing );word-spacing:var( --e-global-typography-h3-word-spacing );}.elementor-kit-6 h4{font-size:var( --e-global-typography-h3-font-size );line-height:var( --e-global-typography-h3-line-height );letter-spacing:var( --e-global-typography-h3-letter-spacing );word-spacing:var( --e-global-typography-h3-word-spacing );}.elementor-kit-6 h5{font-size:var( --e-global-typography-lead-font-size );line-height:var( --e-global-typography-lead-line-height );letter-spacing:var( --e-global-typography-lead-letter-spacing );word-spacing:var( --e-global-typography-lead-word-spacing );}.elementor-kit-6 h6{font-size:var( --e-global-typography-eyebrow-font-size );line-height:var( --e-global-typography-eyebrow-line-height );letter-spacing:var( --e-global-typography-eyebrow-letter-spacing );word-spacing:var( --e-global-typography-eyebrow-word-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Blocco CSS custom del progetto Mastro GR Travel.
   Registrato in 00_MASTER_PROGETTO.md §14. Ogni regola ha una riga di motivo.
   Sessione 7, 23/08/2026. */

/* 1. Sessione 4. La barra CTA sticky mobile e' position:fixed: senza questa
      riga copre il footer. Elementor non ha un controllo per compensarla. */
@media (max-width: 767px) {
  body { padding-bottom: 60px; }
}

/* 2. Sessione 7, riscritta il 23/08/2026. I bottoni del preventivo a quattro
      passaggi, Continue, Back e Send request, li genera JetFormBuilder e non
      esiste nessun controllo Elementor per stilarli. Uscivano nel rosa
      predefinito del plugin, #CC3366, alti 44px, raggio 3px, peso 400: fuori
      dal design system §3.5 su colore, altezza, raggio e peso. */
.jet-form-builder__next-page,
.jet-form-builder__prev-page,
.jet-form-builder__submit {
  min-height: 52px;
  padding: 14px 24px;
  border-radius: 8px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
.jet-form-builder__next-page,
.jet-form-builder__submit {
  background: #FDBA24;
  border: 1px solid #FDBA24;
  color: #0E1726;
}
.jet-form-builder__next-page:hover,
.jet-form-builder__submit:hover {
  background: #EFA400;
  border-color: #EFA400;
  color: #0E1726;
}
.jet-form-builder__prev-page {
  background: transparent;
  border: 1px solid rgba(14,23,38,.22);
  color: #0E1726;
}
.jet-form-builder__prev-page:hover {
  background: #0E1726;
  border-color: #0E1726;
  color: #FFFFFF;
}

/* 3. Sessione 7. I campi dei tre form tenevano il predefinito del browser,
      1px #666 e raggio 3px, invece del bordo hairline e dell'altezza 52px
      del design system §3.6. I campi vivono dentro uno shortcode e non sono
      raggiungibili dai controlli di Elementor. */
.jet-form-builder__field:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]) {
  border: 1px solid #E6E9EE;
  border-radius: 6px;
  min-height: 52px;
  padding: 12px 14px;
  background: #FFFFFF;
  color: #0E1726;
  font-family: "Instrument Sans", sans-serif;
  font-size: 17px;
  line-height: 1.5;
}

/* 4. Sessione 7. Anello di focus del design system §3.6. Senza, il focus
      da tastiera e' quello del browser e sparisce sui campi chiari. */
.jet-form-builder__field:focus,
.jet-form-builder__field:focus-visible {
  border-color: #1B43C4;
  box-shadow: 0 0 0 3px rgba(27, 67, 196, 0.14);
  outline: none;
}
/* 4b. Sessione 7. Stesso anello di focus sulle voci della fisarmonica FAQ.
      L anello dei campi e fatto di bordo piu ombra e sulle voci FAQ, che non
      hanno bordo, non si vedrebbe: qui serve un contorno pieno. */
.elementor-tab-title:focus-visible {
  outline: 3px solid #1B43C4;
  outline-offset: 2px;
}


/* 5. Sessione 7. Le aree di testo restavano alte due righe. */
textarea.jet-form-builder__field {
  min-height: 120px;
}

/* 6. Sessione 7. Il segno grafico ricorrente del punto 5.4.3: il filetto
      con il gradiente del marchio davanti a ogni occhiello, come prescrive
      03_DESIGN_SYSTEM.md §3.1. Nasce dai riferimenti globali e non supera
      mai l'H2 perche' e' alto 2px. */
.mg-eyebrow .elementor-heading-title::before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 2px;
  margin-right: 10px;
  vertical-align: middle;
  border-radius: 2px;
  background: linear-gradient(90deg, #FDBA24 0%, #F05D22 100%);
}


/* 7. Sessione 7. Fascia di confronto in home: il titolo della prima colonna
      va a capo su due righe, gli altri tre no, e le liste sotto partivano 30px
      piu' in basso, quindi le righe non si leggevano in orizzontale. Elementor
      non ha un controllo di altezza minima sul widget titolo. */
@media (min-width: 768px) {
  .mg-cmp-h .elementor-heading-title { min-height: 2.4em; }
}


/* 8. Sessione 7. Le fasce con fotografia avevano un velo uniforme 0.92-0.86 su
      tutta la larghezza, alzato per far passare il contrasto dell'occhiello ciano
      a 390px: a 1440 la fotografia spariva e la fascia sembrava un blocco di
      colore piatto. Da 1025px in su il velo resta forte sotto la colonna di
      testo e si schiarisce dove testo non ce n'e', cosi' la foto si vede.
      Sotto i 1025px vale il velo pieno impostato in Elementor, invariato.
      !important necessario: Elementor genera la stessa regola sul ::before
      della fascia con pari specificita' e ordine di caricamento non garantito. */
@media (min-width: 1025px) {
  .mg-photo::before {
    background-image: linear-gradient(90deg, rgba(8,46,71,0.94) 0%, rgba(8,46,71,0.90) 55%, rgba(8,46,71,0.55) 80%, rgba(8,46,71,0.38) 100%) !important;
  }
}


/* 9. Sessione 7, 23/08/2026. Le fotografie editoriali arrivavano con rapporti
      diversi, 4:3 e 3:2 mescolati, e nella fascia "What we do" tre immagini
      affiancate erano alte 292, 261 e 260 px. Il widget immagine di Elementor
      non ha nessun controllo di rapporto o di altezza. Qui le uniformo a 3:2
      con ritaglio, cosi' le righe di immagini si allineano e la pagina si
      accorcia. */
.mg-img img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  max-height: 360px;
  object-fit: cover;
}


/* 10. Sessione 7, 23/08/2026. Titolo delle card di tour e transfer bloccato a
      due righe. Prima i titoli andavano da una a tre righe e le card della
      stessa riga avevano altezze e allineamenti diversi. Elementor non ha
      nessun controllo di troncamento sul widget titolo. */
.mg-card-title .elementor-heading-title,
.mg-card-title .elementor-heading-title a {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}


/* 11. Sessione 7, 23/08/2026. Il bollino Most requested viveva come riga di
      testo sopra il titolo: le card con bollino avevano il titolo piu' in
      basso delle altre e la riga non si leggeva in orizzontale. Qui diventa
      una pastiglia appoggiata sulla fotografia, come sulle card dei portali
      di prenotazione. Elementor non ha nessun controllo di sovrapposizione
      sul widget titolo. */
.mg-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  background: #FDBA24;
  padding: 5px 10px;
  border-radius: 4px;
}

/* 9. Sessione Cowork 24/08/2026. Topbar: il selettore lingua di TranslatePress e' alto 55px nativo e stira tutta la riga a 82,7px, mentre testo e contatti restano allineati in alto lasciando vuoto sotto. Riduce l'altezza del box e centra verticalmente la riga. */
.elementor-element-8d9e9fb .e-con-inner {
  align-items: center;
  padding-top: 3px;
  padding-bottom: 3px;
}
.elementor-element-8d9e9fb,
.elementor-element-8d9e9fb a,
.elementor-element-8d9e9fb p,
.elementor-element-8d9e9fb li,
.elementor-element-8d9e9fb span {
  font-size: 12px;
  line-height: 1.5;
}
.elementor-element-8d9e9fb p {
  margin: 0 !important;
}
.elementor-element-8d9e9fb .trp-language-item {
  padding: 2px 8px !important;
}
.elementor-element-8d9e9fb .trp-language-switcher.trp-ls-dropdown {
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* 10. Sessione Cowork 24/08/2026. How it works: nasconde la frase descrittiva sotto ognuno dei 4 passaggi, restano numero e titolo. Accorcia la sezione da 642px a circa 350px su desktop. */
.elementor-element-f2498c4, .elementor-element-af20d67, .elementor-element-65d6ebb, .elementor-element-9e68358 {
  display: none;
}

/* 11. Sessione Cowork 24/08/2026. Trust bar (dal 2002): nasconde la frase descrittiva sotto ogni cifra e la riga finale sulle licenze, restano numero ed etichetta. */
.elementor-element-719821d, .elementor-element-98e8a29, .elementor-element-32720b3, .elementor-element-06f183b, .elementor-element-c26773c {
  display: none;
}

/* 12. Sessione Cowork 26/08/2026. Home su telefono: le tre griglie tour, transfer e flotta impilate valgono 6.718px sui 20.958px dell'intera home, cioe' un terzo della pagina, misurati a 360px nel preview di Elementor. Sotto i 767px diventano una fila che scorre in orizzontale, una card alla volta con aggancio. Scelta CSS e non widget Loop Carousel: il carosello avrebbe richiesto un secondo widget per ogni griglia, con la query duplicata, e il cliente avrebbe dovuto tenere allineati due widget a ogni modifica. Cosi' le impostazioni del Loop Grid restano l'unica fonte di verita'. Ambito ristretto alle tre griglie della home: sugli archivi tour e transfer la griglia verticale resta, perche' li' si sfoglia. */
@media (max-width: 767px) {
  .elementor-element-1bf0c14 .elementor-loop-container,
  .elementor-element-238b243 .elementor-loop-container,
  .elementor-element-08befb8 .elementor-loop-container,
.elementor-element-2628829 .elementor-loop-container {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .elementor-element-1bf0c14 .elementor-loop-container::-webkit-scrollbar,
  .elementor-element-238b243 .elementor-loop-container::-webkit-scrollbar,
  .elementor-element-08befb8 .elementor-loop-container,
.elementor-element-2628829 .elementor-loop-container::-webkit-scrollbar {
    display: none;
  }
  .elementor-element-1bf0c14 .elementor-loop-container > .e-loop-item,
  .elementor-element-238b243 .elementor-loop-container > .e-loop-item,
  .elementor-element-08befb8 .elementor-loop-container,
.elementor-element-2628829 .elementor-loop-container > .e-loop-item {
    flex: 0 0 84%;
    scroll-snap-align: start;
  }
}




/* 13. Barra ricerca transfer: il reset di Hello Elementor stila input[type="date"]
   e compagni con specificita' 0-1-1 e rimette bordo, padding e altezza dentro le
   celle della barra. Regola temporanea: sparisce quando il plugin passa a 1.0.1,
   dove la stessa correzione sta nel suo foglio di stile. */
.bis-bar .bis-bar__control {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	background-color: transparent;
	padding: 0;
	height: auto;
	min-height: 26px;
}
.bis-bar select.bis-bar__control {
	padding-right: 20px;
}


/* 14. Sessione Cowork 15/09/2026. Spaziatura dei moduli. Il passo fra un campo e
il successivo era di 114px sul modulo contatti: 5px di padding della riga, 26 di
etichetta, 6 sotto l'etichetta, 52 di campo, 5 di padding e 20 di margine, cioe'
62px di vuoto fra la fine di un campo e l'inizio del successivo, e nove campi
facevano un modulo alto 1.126px. I margini di campo ed etichetta sono stati
corretti nei dati dei quattro moduli (53 campi e 43 etichette, da 20 a 12px e da
6 a 4px). Qui resta solo il padding della riga, che JetFormBuilder impone da
main.css con la stessa specificita' e non e' esposto nelle impostazioni del campo. */
form.jet-form-builder .jet-form-builder-row{padding-top:0;padding-bottom:0}
.jet-form-builder__desc{margin-top:2px}/* End custom CSS */