.elementor-16320 .elementor-element.elementor-element-31c4e02{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:40px;--padding-bottom:72px;--padding-left:20px;--padding-right:20px;}.elementor-16320 .elementor-element.elementor-element-c255aa5 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-text );}.elementor-16320 .elementor-element.elementor-element-74db12f{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}@media(max-width:767px){.elementor-16320 .elementor-element.elementor-element-31c4e02{--padding-top:24px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}}@media(min-width:768px){.elementor-16320 .elementor-element.elementor-element-31c4e02{--content-width:1280px;}}/* Start custom CSS *//* Pagina di testo (Fase 4). Solo variabili --tps-* del kit. */
.site-content:has(.tps-pagina) { max-width:none !important; width:100%; }
body.elementor-page-16320 .tps-pagina > .e-con-inner > *, body.elementor-page-16320 .tps-pagina > * { max-width:720px; }
body.elementor-page-16320 .tps-pagina__titolo .elementor-heading-title { font:600 clamp(30px,4.2vw,44px)/1.12 var(--tps-ff); letter-spacing:-.02em; color:var(--tps-ink); }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container { font:400 18px/1.7 var(--tps-ff); color:var(--tps-ink); max-width:40em; }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container p, body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container li { font:inherit; color:var(--tps-ink); }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container p { margin:0 0 1.15em; }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container h2 { font:600 28px/1.2 var(--tps-ff); letter-spacing:-.02em; color:var(--tps-ink); margin:1.8em 0 .6em; }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container h3 { font:600 22px/1.3 var(--tps-ff); letter-spacing:-.01em; color:var(--tps-ink); margin:1.6em 0 .5em; }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container a { color:var(--tps-accent-ink); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container a:hover { color:var(--tps-ink); }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container strong, body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container b { font-weight:600; }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container ul, body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container ol { margin:0 0 1.15em; padding-left:1.3em; }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container li { margin:0 0 .45em; }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container li::marker { color:var(--tps-accent-ink); }
@media (max-width:767px) { body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container { font-size:17px; } body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container h2 { font-size:24px; } body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container h3 { font-size:20px; } }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-container { max-width:720px; }
/* Testi incorporati di iubenda (privacy e cookie): stessa tipografia del sito */
body.elementor-page-16320 .tps-pagina__testo #iubenda_policy, body.elementor-page-16320 .tps-pagina__testo #iubenda_policy * { font-family:var(--tps-ff) !important; color:var(--tps-ink); }
body.elementor-page-16320 .tps-pagina__testo #iubenda_policy h1, body.elementor-page-16320 .tps-pagina__testo #iubenda_policy h2 { font-weight:600 !important; }
body.elementor-page-16320 .tps-pagina__testo #iubenda_policy strong, body.elementor-page-16320 .tps-pagina__testo #iubenda_policy b, body.elementor-page-16320 .tps-pagina__testo #iubenda_policy h3,
body.elementor-page-16320 .tps-pagina__testo #iubenda_policy h4 { font-weight:600 !important; /* peso fisso */ }
body.elementor-page-16320 .tps-pagina__testo #iubenda_policy a { color:var(--tps-accent-ink) !important; }
/* Modulo di contatto (Elementor Form) */
/* Contenuti fatti con Elementor dentro la pagina (Contattaci): niente margini doppi tra blocchi */
body.elementor-page-16320 .tps-pagina__testo .e-con { --gap:16px; gap:16px !important; padding:0 !important; }
body.elementor-page-16320 .tps-pagina__testo .elementor-widget-text-editor p:last-child { margin-bottom:0; }
body.elementor-page-16320 .tps-modulo .elementor-form-fields-wrapper { margin:0 !important; }
body.elementor-page-16320 .tps-modulo .elementor-field-label { font:500 14px/1.4 var(--tps-ff); color:var(--tps-ink); }
body.elementor-page-16320 .tps-modulo .elementor-field, body.elementor-page-16320 .tps-modulo .elementor-field-textual, body.elementor-page-16320 .tps-modulo select {
  font:400 16px/1.5 var(--tps-ff) !important; color:var(--tps-ink) !important; background:var(--tps-bg) !important;
  border:1px solid var(--tps-line-strong) !important; border-radius:10px !important; padding:12px 14px !important; min-height:48px; }
body.elementor-page-16320 .tps-modulo .elementor-select-wrapper { border:0 !important; padding:0 !important; background:none !important; min-height:0 !important; }
body.elementor-page-16320 .tps-modulo .elementor-field:focus { outline:3px solid var(--tps-accent); outline-offset:1px; border-color:var(--tps-ink) !important; }
body.elementor-page-16320 .tps-modulo .elementor-field-group { margin-bottom:14px; }
body.elementor-page-16320 .tps-modulo .elementor-button { font:600 15px/1 var(--tps-ff) !important; background:var(--tps-ink) !important; color:var(--tps-bg) !important;
  border:0 !important; border-radius:10px !important; padding:16px 28px !important; min-height:48px; }
body.elementor-page-16320 .tps-modulo .elementor-button:hover { background:var(--tps-accent) !important; color:var(--tps-ink) !important; }
body.elementor-page-16320 .tps-modulo .elementor-message { font:500 15px/1.5 var(--tps-ff); }/* End custom CSS */