.elementor-kit-8{--e-global-color-primary:#37547F;--e-global-color-secondary:#1B2A40;--e-global-color-text:#1B2A40;--e-global-color-accent:#3CACBF;--e-global-color-petrolio:#297784;--e-global-color-nebbia:#EEF3F7;--e-global-color-grigio:#5B6B80;--e-global-color-bianco:#FFFFFF;--e-global-typography-primary-font-family:"Nunito";--e-global-typography-primary-font-size:46px;--e-global-typography-primary-font-weight:800;--e-global-typography-primary-line-height:1.12em;--e-global-typography-secondary-font-family:"Nunito";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:800;--e-global-typography-secondary-line-height:1.25em;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:14px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.4em;background-color:#FFFFFF;color:#1B2A40;font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:400;line-height:1.65em;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 a{color:#297784;}.elementor-kit-8 a:hover{color:#37547F;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1165px;}.e-con{--container-max-width:1165px;--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:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Rete HR - CSS del kit.
   Regola del progetto: lo stile vive nei controlli di Elementor (colori, font,
   spaziature, raggi, bordi, sfondi). Qui c'e' solo cio' che nessun controllo
   produce, e ogni blocco dice perche'. */

/* --- fuori da @layer: struttura di pagina --- */
html{overflow-x:hidden;scroll-behavior:smooth}
/* le ancore del menu (#costi, #email...) finiscono sotto l'header fisso:
   lo spazio lo da' scroll-margin, che non ha un controllo in Elementor */
.elementor .e-con[id]{scroll-margin-top:84px}

/* Elenco icone (occhielli con la H): Elementor aggiunge 7,5 px a destra dell'icona SVG e 5 px
   a sinistra del testo, regole di base senza controllo. Lo spazio icona-testo resta quello del
   controllo «Rientro testo» (12 px, come nel template). Fuori dal layer: le regole di base non lo sono. */
.elementor .elementor-widget.rh-occhiello .elementor-icon-list-icon svg{margin-inline-end:0}
.elementor .elementor-widget.rh-occhiello .elementor-icon-list-text{padding-inline-start:0}

/* Hamburger del menu: nel template e' un cerchio di 44 px. Il widget Menu da' al pulsante un
   padding di base di 0,25em senza controllo: qui diventa 12 px (icona 20 + 12 + 12).
   Colori, raggio e dimensione dell'icona restano nei controlli del widget. */
.elementor .elementor-widget.rh-menu .elementor-menu-toggle{padding:12px}

/* Domande frequenti: aperta, la domanda si attacca alla risposta sotto (stesso blu) e diventa un
   blocco unico come nel template; gli angoli bassi del titolo vanno a 0. Il widget non ha un raggio
   «da aperto». Raggio, colori e bordi restano nei controlli. */
.elementor .elementor-widget.rh-faq .e-n-accordion-item[open] > .e-n-accordion-item-title{
  border-bottom-left-radius:0;border-bottom-right-radius:0}

/* Domande frequenti: il +/- sta in un cerchio di 36 px (grigio azzurro, bianco quando la domanda e'
   aperta). Il widget non prevede un fondo per l'icona e la sua larghezza di base (non in un layer)
   schiacciava il cerchio in una pillola: per questo sta fuori dal layer. Colore e dimensione
   del segno restano nei controlli del widget. */
.elementor .elementor-widget.rh-faq .e-n-accordion-item-title-icon{width:36px;height:36px;border-radius:50%;
  background:#EEF3F7;display:flex;align-items:center;justify-content:center;flex:0 0 36px}
.elementor .elementor-widget.rh-faq .e-n-accordion-item[open] > .e-n-accordion-item-title .e-n-accordion-item-title-icon{background:#FFFFFF}

/* Modulo contatti (widget Modulo di Elementor Pro). Tre cose che il widget non ha fra i controlli
   e che le sue regole di base (non in un layer) decidono da sole:
   - il rientro dei campi dipende solo dalla «dimensione» (sm/md/lg): nel template e' 13 px sopra
     e sotto e 16 ai lati;
   - il testo del consenso prenderebbe la tipografia dei campi (16 px): nel template e' 13 px grigio;
   - il bordo turchese del campo in cui si scrive (nel template outline 2 px #3CACBF).
   Colori, bordi, raggi, font di etichette, campi e pulsante restano nei controlli del widget. */
.elementor .elementor-widget.rh-form .elementor-field-textual{padding:13px 16px}
.elementor .elementor-widget.rh-form .elementor-field-type-acceptance .elementor-field-option label{font-size:13px;line-height:1.5;color:#5B6B80}
.elementor .elementor-widget.rh-form .elementor-field-textual:focus{outline:2px solid #3CACBF;outline-offset:1px}
/* consenso: casella a sinistra e testo accanto su piu' righe (nel widget il testo andrebbe a capo
   sotto la casella) */
.elementor .elementor-widget.rh-form .elementor-field-type-acceptance .elementor-field-option{display:flex;align-items:flex-start;gap:10px}
.elementor .elementor-widget.rh-form .elementor-field-type-acceptance .elementor-field-option input{margin:3px 0 0;flex:none}

@layer apx{
  /* modulo: casella del consenso nel blu del sito; pulsante 6 px piu' giu', come nel template */
  .rh-form input[type="checkbox"]{accent-color:#37547F}
  .rh-form .e-form__buttons{margin-top:6px}

  /* a capo bilanciato di titoli e paragrafi, come nel template (text-wrap).
     Il titolo della hero NON ha la classe rh-bal (Simone, 5 ottobre): li' il testo e' continuo. */
  .rh-bal .elementor-heading-title{text-wrap:balance}
  .rh-pretty p,.rh-pretty .elementor-heading-title{text-wrap:pretty}

  /* menu: pallino turchese sotto la voce della sezione in cui sei.
     Il widget Menu non ha un indicatore "a pallino" fra i suoi puntatori. */
  .rh-menu .elementor-nav-menu--main .elementor-item{position:relative}
  .rh-menu .elementor-nav-menu--main .elementor-item.elementor-item-active::after{
    content:"";position:absolute;left:50%;bottom:-6px;width:6px;height:6px;
    margin-left:-3px;border-radius:50%;background:#3CACBF}

}/* End custom CSS */