/* FM Motore: la base che oggi sta nei file di Elementor, Pro e Hello.
   Le misure di ogni elemento arrivano dal foglio della pagina come variabili. */

/* Reset (al posto di Hello) */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;line-height:1.15}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1rem;line-height:1.5;color:#333;background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
h1,h2,h3,h4,h5,h6{margin-block:.5rem 1rem;font-family:inherit;font-weight:500;line-height:1.2;color:inherit}
h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}
p{margin-block:0 .9rem}
a{background-color:transparent;color:#c36;text-decoration:none}
img{border-style:none;height:auto;max-width:100%}
button,input,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}
[hidden],template{display:none}
.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute!important;width:1px;word-wrap:normal!important}
.screen-reader-text:focus{background-color:#eee;clip:auto!important;clip-path:none;color:#333;display:block;font-size:1rem;height:auto;left:5px;line-height:normal;padding:12px 24px;text-decoration:none;top:5px;width:auto;z-index:100000}

/* Il reset di Hello Elementor 3.5.1 (GPL) nel layer fm-theme-reset, come lo mette il Framework: perde contro
   qualsiasi regola fuori dal layer e copre solo i buchi (tabelle, elenchi, campi). Con Elementor c'era sempre. */
@layer fm-theme-reset{html{line-height:1.15;-webkit-text-size-adjust:100%}*,:after,:before{box-sizing:border-box}body{background-color:#fff;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:1rem;font-weight:400;line-height:1.5;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}h1,h2,h3,h4,h5,h6{color:inherit;font-family:inherit;font-weight:500;line-height:1.2;margin-block-end:1rem;margin-block-start:.5rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-block-end:.9rem;margin-block-start:0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em;white-space:pre-wrap}a{background-color:transparent;color:#c36;text-decoration:none}a:active,a:hover{color:#336}a:not([href]):not([tabindex]),a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}abbr[title]{border-block-end:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none;height:auto;max-width:100%}details{display:block}summary{display:list-item}figcaption{color:#333;font-size:16px;font-style:italic;font-weight:400;line-height:1.4}[hidden],template{display:none}@media print{*,:after,:before{background:transparent!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre{white-space:pre-wrap!important}blockquote,pre{-moz-column-break-inside:avoid;border:1px solid #ccc;break-inside:avoid}thead{display:table-header-group}img,tr{-moz-column-break-inside:avoid;break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{-moz-column-break-after:avoid;break-after:avoid}}label{display:inline-block;line-height:1;vertical-align:middle}button,input,optgroup,select,textarea{font-family:inherit;font-size:1rem;line-height:1.5;margin:0}input[type=date],input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],select,textarea{border:1px solid #666;border-radius:3px;padding:.5rem 1rem;transition:all .3s;width:100%}input[type=date]:focus,input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,select:focus,textarea:focus{border-color:#333}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;width:auto}[type=button],[type=submit],button{background-color:transparent;border:1px solid #c36;border-radius:3px;color:#c36;display:inline-block;font-size:1rem;font-weight:400;padding:.5rem 1rem;text-align:center;transition:all .3s;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}[type=button]:focus,[type=button]:hover,[type=submit]:focus,[type=submit]:hover,button:focus,button:hover{background-color:#c36;color:#fff;text-decoration:none}[type=button]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto;resize:vertical}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}select{display:block}table{background-color:transparent;border-collapse:collapse;border-spacing:0;font-size:.9em;margin-block-end:15px;width:100%}table td,table th{border:1px solid hsla(0,0%,50%,.502);line-height:1.5;padding:15px;vertical-align:top}table th{font-weight:700}table tfoot th,table thead th{font-size:1em}table caption+thead tr:first-child td,table caption+thead tr:first-child th,table colgroup+thead tr:first-child td,table colgroup+thead tr:first-child th,table thead:first-child tr:first-child td,table thead:first-child tr:first-child th{border-block-start:1px solid hsla(0,0%,50%,.502)}table tbody>tr:nth-child(odd)>td,table tbody>tr:nth-child(odd)>th{background-color:hsla(0,0%,50%,.071)}table tbody tr:hover>td,table tbody tr:hover>th{background-color:hsla(0,0%,50%,.102)}table tbody+tbody{border-block-start:2px solid hsla(0,0%,50%,.502)}@media(max-width:767px){table table{font-size:.8em}table table td,table table th{line-height:1.3;padding:7px}table table th{font-weight:400}}dd,dl,dt,li,ol,ul{background:transparent;border:0;font-size:100%;margin-block-end:0;margin-block-start:0;outline:0;vertical-align:baseline}[tabindex]:not([tabindex="-1"]):focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:0 0 0 4px #fff;outline:2px solid #000;outline-offset:2px}[tabindex]:not([tabindex="-1"]):focus:not(:focus-visible),a:focus:not(:focus-visible),button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){box-shadow:none;outline:none}}

/* Variabile del titolo di pagina (in Elementor sta in frontend.css): il Kit scrive h1.entry-title{display:var(--page-title-display)}. */
:root{--page-title-display:block}

/* Documento */
.elementor *,.elementor ::after,.elementor ::before{box-sizing:border-box}
.elementor a{box-shadow:none;text-decoration:none}
.elementor img{height:auto;max-width:100%;border:none;border-radius:0;box-shadow:none}
.elementor .elementor-widget:not(.elementor-widget-text-editor) figure{margin:0}

/* Elemento */
.elementor-element{--flex-direction:initial;--flex-wrap:initial;--justify-content:initial;--align-items:initial;--align-content:initial;--gap:initial;--flex-basis:initial;--flex-grow:initial;--flex-shrink:initial;--order:initial;--align-self:initial;align-self:var(--align-self);flex-basis:var(--flex-basis);flex-grow:var(--flex-grow);flex-shrink:var(--flex-shrink);order:var(--order)}
.elementor-element:where(.e-con-full,.elementor-widget){align-content:var(--align-content);align-items:var(--align-items);flex-direction:var(--flex-direction);flex-wrap:var(--flex-wrap);gap:var(--row-gap) var(--column-gap);justify-content:var(--justify-content)}
.elementor-invisible{visibility:hidden}

/* Contenitore */
.e-con{--border-radius:0;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;--border-style:initial;--border-color:initial;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--content-width:min(100%,var(--container-max-width,1140px));--width:100%;--min-height:initial;--height:auto;--text-align:initial;--margin-top:0px;--margin-right:0px;--margin-bottom:0px;--margin-left:0px;--padding-top:var(--container-default-padding-top,10px);--padding-right:var(--container-default-padding-right,10px);--padding-bottom:var(--container-default-padding-bottom,10px);--padding-left:var(--container-default-padding-left,10px);--position:relative;--z-index:revert;--overflow:visible;--gap:var(--widgets-spacing,20px);--row-gap:var(--widgets-spacing-row,20px);--column-gap:var(--widgets-spacing-column,20px);--overlay-mix-blend-mode:initial;--overlay-opacity:1;--overlay-transition:.3s;--e-con-grid-template-columns:repeat(3,1fr);--e-con-grid-template-rows:repeat(2,1fr);
	position:var(--position);width:var(--width);min-width:0;min-height:var(--min-height);height:var(--height);border-radius:var(--border-radius);z-index:var(--z-index);overflow:var(--overflow);
	margin:var(--margin-top) var(--margin-right) var(--margin-bottom) var(--margin-left);padding-inline:var(--padding-left) var(--padding-right);
	transition:background var(--background-transition,.3s),border var(--border-transition,.3s),box-shadow var(--border-transition,.3s),transform var(--e-con-transform-transition-duration,.4s)}
.e-con,.e-con>.e-con-inner{display:var(--display)}
.e-con-full,.e-con>.e-con-inner{padding-block:var(--padding-top) var(--padding-bottom);text-align:var(--text-align)}
.e-con.e-flex{--flex-direction:column;--flex-basis:auto;--flex-grow:0;--flex-shrink:1;flex:var(--flex-grow) var(--flex-shrink) var(--flex-basis)}
.e-con-full.e-flex,.e-con.e-flex>.e-con-inner{flex-direction:var(--flex-direction)}
.e-con-boxed.e-flex{align-content:normal;align-items:normal;flex-direction:column;flex-wrap:nowrap;justify-content:normal}
.e-con-boxed{gap:initial;text-align:initial}
.e-con.e-flex>.e-con-inner{align-content:var(--align-content);align-items:var(--align-items);align-self:auto;flex:1 1 auto;flex-wrap:var(--flex-wrap);justify-content:var(--justify-content)}
.e-con>.e-con-inner{gap:var(--row-gap) var(--column-gap);height:100%;margin:0 auto;max-width:var(--content-width);padding-inline:0;width:100%}
[data-elementor-id]>.e-con{--margin-left:auto;--margin-right:auto;max-width:min(100%,var(--width))}
.e-con.e-grid{--grid-justify-content:start;--grid-align-content:start;--grid-auto-flow:row}
.e-con.e-grid,.e-con.e-grid>.e-con-inner{align-content:var(--grid-align-content);align-items:var(--align-items);grid-auto-flow:var(--grid-auto-flow);grid-template-columns:var(--e-con-grid-template-columns);grid-template-rows:var(--e-con-grid-template-rows);justify-content:var(--grid-justify-content);justify-items:var(--justify-items)}
.e-con-boxed.e-grid{grid-template-columns:1fr;grid-template-rows:1fr;justify-items:legacy}
.e-con.e-grid>.e-con-inner{gap:var(--row-gap) var(--column-gap)}
a.e-con{color:inherit}
/* Fondo sovrapposto e bordi: sul ::before, come i dati se li aspettano */
.e-con::before{content:var(--background-overlay);display:block;position:absolute;mix-blend-mode:var(--overlay-mix-blend-mode);opacity:var(--overlay-opacity);transition:var(--overlay-transition,.3s);border-radius:var(--border-radius);border-style:var(--border-style);border-color:var(--border-color);border-block-start-width:var(--border-top-width);border-inline-end-width:var(--border-right-width);border-block-end-width:var(--border-bottom-width);border-inline-start-width:var(--border-left-width);top:calc(0px - var(--border-top-width));left:calc(0px - var(--border-left-width));width:max(100% + var(--border-left-width) + var(--border-right-width),100%);height:max(100% + var(--border-top-width) + var(--border-bottom-width),100%);pointer-events:none}
.e-con>*{position:relative}
/* Widget dentro un contenitore */
.e-con .elementor-widget{min-width:0}
.elementor-widget:not(:last-child){margin-block-end:var(--kit-widget-spacing,20px)}
.e-con .elementor-widget.elementor-widget{margin-block-end:0}
.e-con .elementor-widget:not(:last-child){--kit-widget-spacing:0px}
.e-con.e-con>.e-con-inner>.elementor-widget,.elementor.elementor .e-con>.elementor-widget{max-width:100%}
.elementor-widget{position:relative}
.e-con .elementor-widget-video,.e-con .elementor-widget-loop-carousel{width:100%}

@media(max-width:1024px){
	:is(.e-con,.e-con>.e-con-inner)>.elementor-widget.elementor-widget-tablet__width-auto{--container-widget-width:auto;width:auto}
	:is(.e-con,.e-con>.e-con-inner)>.elementor-widget.elementor-widget-tablet__width-inherit{width:100%;max-width:100%}
}
@media(max-width:767px){
	.e-con.e-flex{--width:100%;--flex-wrap:var(--flex-wrap-mobile)}
	:is(.e-con,.e-con>.e-con-inner)>.elementor-widget.elementor-widget-mobile__width-auto{--container-widget-width:auto;width:auto}
	:is(.e-con,.e-con>.e-con-inner)>.elementor-widget.elementor-widget-mobile__width-inherit{width:100%;max-width:100%;--container-widget-width:100%}
}

/* Nascondi per schermo */
@media(min-width:1025px){.elementor .elementor-hidden-desktop{display:none}}
@media(min-width:768px) and (max-width:1024px){.elementor .elementor-hidden-tablet{display:none}}
@media(max-width:767px){.elementor .elementor-hidden-mobile{display:none}}

/* Titolo */
.elementor-heading-title{padding:0;margin:0;line-height:1}
.elementor-widget-heading .elementor-heading-title>a{color:inherit;font-size:inherit;line-height:inherit}

/* Testo */
.elementor-widget-text-editor>:last-child{margin-bottom:0}

/* Pulsante */
.elementor-button{display:inline-block;font-size:15px;font-weight:500;line-height:1;padding:12px 24px;border-radius:3px;color:#fff;background-color:#69727d;fill:#fff;text-align:center;transition:all .3s;cursor:pointer}
.elementor-button:visited{color:#fff}
.elementor-button-content-wrapper{display:flex;flex-direction:row;gap:5px;justify-content:center}
.elementor-button-icon{align-items:center;display:flex}
.elementor-button-icon svg{height:auto;width:1em}
.elementor-button-text{display:inline-block}
.elementor-button.elementor-size-xs{font-size:13px;padding:10px 20px;border-radius:2px}
.elementor-button.elementor-size-md{font-size:16px;padding:15px 30px;border-radius:4px}
.elementor-button.elementor-size-lg{font-size:18px;padding:20px 40px;border-radius:5px}
.elementor-button.elementor-size-xl{font-size:20px;padding:25px 50px;border-radius:6px}
.elementor-align-justify .elementor-button{width:100%}
.elementor-align-center{text-align:center}.elementor-align-right{text-align:right}.elementor-align-left{text-align:left}
@media(max-width:1024px){.elementor-tablet-align-justify .elementor-button{width:100%}.elementor-tablet-align-center{text-align:center}.elementor-tablet-align-right{text-align:right}.elementor-tablet-align-left{text-align:left}.elementor-tablet-align-center .elementor-button,.elementor-tablet-align-left .elementor-button,.elementor-tablet-align-right .elementor-button{width:auto}}
@media(max-width:767px){.elementor-mobile-align-justify .elementor-button{width:100%}.elementor-mobile-align-center{text-align:center}.elementor-mobile-align-right{text-align:right}.elementor-mobile-align-left{text-align:left}.elementor-mobile-align-center .elementor-button,.elementor-mobile-align-left .elementor-button,.elementor-mobile-align-right .elementor-button{width:auto}}

/* Icona */
.elementor-icon{display:inline-block;font-size:50px;line-height:1;text-align:center;color:#69727d;transition:all .3s}
.elementor-icon i,.elementor-icon svg{display:block;height:1em;width:1em;position:relative}
.elementor-icon svg{fill:currentColor}
.elementor-view-stacked .elementor-icon{padding:.5em;background-color:#69727d;color:#fff;fill:#fff}
.elementor-view-framed .elementor-icon{padding:.5em;color:#69727d;border:3px solid #69727d;background-color:transparent}
.elementor-shape-circle .elementor-icon{border-radius:50%}

/* Immagine e video */
.elementor-widget-image{text-align:center}
.elementor-widget-image a{display:inline-block}
.elementor-widget-image img{display:inline-block;vertical-align:middle}
.elementor-wrapper{position:relative}
.elementor-widget-video .elementor-wrapper{aspect-ratio:var(--video-aspect-ratio,16/9);overflow:hidden}
.elementor-widget-video .elementor-wrapper iframe,.elementor-widget-video .elementor-wrapper video{display:flex;width:100%;height:100%;border:none;background-color:#000}
.elementor-widget-video .e-hosted-video .elementor-video{object-fit:cover}

/* Distanziatore */
.elementor-spacer-inner{height:var(--spacer-size)}

/* Menu */
.elementor-nav-menu{position:relative;z-index:2;display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0;line-height:normal}
.elementor-nav-menu li{position:relative;display:flex;list-style:none;margin:0;padding:0}
.elementor-nav-menu a{display:flex;align-items:center;line-height:20px;padding:13px 20px}
.elementor-nav-menu--main .elementor-item{position:relative}
.elementor-nav-menu--layout-vertical .elementor-nav-menu{flex-direction:column}
.elementor-nav-menu__align-end .elementor-nav-menu{justify-content:flex-end;margin-inline-start:auto}
.elementor-nav-menu__align-center .elementor-nav-menu{justify-content:center;margin-inline:auto}
.elementor-nav-menu__align-start .elementor-nav-menu{justify-content:flex-start;margin-inline-end:auto}
.elementor-nav-menu__align-justify .elementor-nav-menu>li{flex-grow:1}
.elementor-nav-menu--layout-horizontal .elementor-nav-menu>li:not(:last-child)::after{content:var(--e-nav-menu-divider-content,none);height:var(--e-nav-menu-divider-height,35%);border-left:var(--e-nav-menu-divider-width,2px) var(--e-nav-menu-divider-style,solid) var(--e-nav-menu-divider-color,#000);align-self:center;border-bottom-color:var(--e-nav-menu-divider-color,#000);border-right-color:var(--e-nav-menu-divider-color,#000);border-top-color:var(--e-nav-menu-divider-color,#000)}
.elementor-nav-menu--layout-horizontal .elementor-nav-menu>li:not(:first-child)>a{margin-inline-start:var(--e-nav-menu-horizontal-menu-item-margin,0)}
.elementor-nav-menu--layout-horizontal .elementor-nav-menu>li:not(:last-child)>a{margin-inline-end:var(--e-nav-menu-horizontal-menu-item-margin,0)}
.elementor-nav-menu--layout-vertical .elementor-nav-menu>li:not(:last-child){margin-bottom:var(--e-nav-menu-vertical-menu-item-margin,0)}
.e--pointer-underline .elementor-item::after,.e--pointer-overline .elementor-item::before,.e--pointer-double-line .elementor-item::before,.e--pointer-double-line .elementor-item::after{content:"";position:absolute;left:0;width:100%;height:3px;background-color:#3f444b;z-index:2;opacity:0;transition:.3s}
.e--pointer-underline .elementor-item::after{bottom:0}
.e--pointer-overline .elementor-item::before{top:0}
.e--pointer-underline .elementor-item:hover::after,.e--pointer-underline .elementor-item.elementor-item-active::after,.e--pointer-overline .elementor-item:hover::before,.e--pointer-overline .elementor-item.elementor-item-active::before{opacity:1}
.elementor-nav-menu--main .elementor-item{transition:color .3s}

/* Carosello Loop */
.fx-carosello{position:relative;--fx-vista:var(--fx-vista-d)}
.fx-carosello__traccia{display:flex;gap:var(--fx-spazio,10px);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain}
.fx-carosello__traccia::-webkit-scrollbar{display:none}
.fx-carosello__traccia>.e-loop-item{flex:0 0 calc((100% - (var(--fx-vista) - 1) * var(--fx-spazio,10px)) / var(--fx-vista));scroll-snap-align:start;min-width:0}
/* Lo slider di Elementor cambia numero di schede un pixel prima del CSS: a 1024 e a 767 conta ancora quello piu' grande */
@media(max-width:1023px){.fx-carosello{--fx-vista:var(--fx-vista-t)}}
@media(max-width:766px){.fx-carosello{--fx-vista:var(--fx-vista-m)}}
.fx-carosello .elementor-swiper-button{position:absolute;top:50%;transform:translateY(-50%);z-index:3;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;background:none;cursor:pointer;color:hsla(0,0%,93%,.9);font-size:25px}
.fx-carosello .elementor-swiper-button svg{width:1em;height:1em;fill:currentColor}
.fx-carosello .elementor-swiper-button-prev{left:10px}
.fx-carosello .elementor-swiper-button-next{right:10px}
.fx-carosello .elementor-swiper-button[disabled]{opacity:.3;cursor:default}
.swiper-pagination{display:flex;justify-content:center;gap:var(--swiper-pagination-bullet-horizontal-gap,6px);margin-top:var(--swiper-pagination-spacing,10px)}
.swiper-pagination .swiper-pagination-bullet{display:inline-block;width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,6px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,6px));min-width:0;min-height:0;border:0;padding:0;margin:0;border-radius:50%;background:#000;opacity:.2;cursor:pointer;line-height:0;box-shadow:none}
.swiper-pagination-bullet-active{opacity:1;background:var(--swiper-pagination-color,#000)}

/* Griglia Loop */
.elementor-widget-loop-grid{--grid-columns:3;--grid-row-gap:0px;--grid-column-gap:0px}
.elementor-loop-container.elementor-grid{display:grid;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));gap:var(--grid-row-gap) var(--grid-column-gap)}
.elementor-loop-container>.e-loop-item{min-width:0}
.elementor-loop-container>.e-loop-item[hidden]{display:none}

/* Filtro per tassonomia */
/* Filtro per tassonomia: la base di Pro (widget-loop-filter 4.3), che usa i colori e le misure del widget. */
.elementor-widget-taxonomy-filter{--e-filter-display:flex;--e-filter-direction:row;--e-filter-justify-content:center;--e-filter-wrap:wrap;--e-filter-align-items:center;--e-filter-item-width:initial;--e-filter-item-max-width:calc(100% - calc(var( --e-filter-item-padding )*3));--e-filter-item-justify-content:center;--e-filter-item-flex-grow:0;--e-filter-item-align-items:center;--e-filter-item-border-radius:initial;--e-filter-space-between:20px;--e-filter-normal-text-color:#69727d;--e-filter-active-text-color:#0c0d0e;--e-filter-hover-text-color:#0c0d0e;--e-filter-overflow-x:initial;--e-filter-white-space:nowrap;--e-filter-item-align-text:center;--e-filter-item-padding:8px;--e-filter-item-box-sizing:initial}.elementor-widget-taxonomy-filter .e-filter{align-items:var(--e-filter-align-items);display:var(--e-filter-display);flex-direction:var(--e-filter-direction);flex-shrink:0;flex-wrap:var(--e-filter-wrap);gap:var(--e-filter-space-between);justify-content:var(--e-filter-justify-content);overflow-x:var(--e-filter-overflow-x);-ms-overflow-style:none;scrollbar-width:none}.elementor-widget-taxonomy-filter .e-filter::-webkit-scrollbar{display:none}.elementor-widget-taxonomy-filter .e-filter.e-scroll{cursor:grabbing;cursor:-webkit-grabbing}.elementor-widget-taxonomy-filter .e-filter.e-scroll-active{position:relative}.elementor-widget-taxonomy-filter .e-filter.e-scroll-active:before{content:"";inset-block:0;inset-inline:-1000vw;position:absolute;z-index:2}.elementor-widget-taxonomy-filter .e-filter-item{align-items:var(--e-filter-item-align-items);background-color:initial;border:1px #69727d;border-radius:var(--e-filter-item-border-radius);box-sizing:var(--e-filter-item-box-sizing);color:var(--e-filter-normal-text-color);display:var(--e-filter-display);flex-basis:content;flex-grow:var(--e-filter-item-flex-grow);flex-shrink:0;justify-content:var(--e-filter-item-justify-content);line-height:normal;max-width:var(--e-filter-item-max-width);overflow:hidden;overflow-wrap:break-word;padding:var(--e-filter-item-padding);text-align:var(--e-filter-item-align-text);white-space:var(--e-filter-white-space);width:var(--e-filter-item-width)}.elementor-widget-taxonomy-filter .e-filter-item[aria-pressed=true]{border-color:#0c0d0e;color:var(--e-filter-active-text-color)}.elementor-widget-taxonomy-filter .e-filter-item:hover:not([aria-pressed=true]){border-color:#0c0d0e;color:var(--e-filter-hover-text-color)}.elementor-widget-taxonomy-filter .e-filter-item:hover,.elementor-widget-taxonomy-filter .e-filter-item[aria-pressed=true]{background-color:initial}.elementor-widget-taxonomy-filter .e-filter-item[data-filter=__all]{order:-1}.elementor-widget-taxonomy-filter .e-filter-item:focus:not(:focus-visible){outline:none}.elementor-widget-taxonomy-filter .e-filter-empty{background-color:hsla(214,9%,85%,.8);color:#0c0d0e;font-size:1rem;padding:1rem 0;text-align:center}.elementor-widget-loop-grid .e-loop-item.e-inactive{display:none}

/* Galleria giustificata: ogni foto cresce in proporzione alla sua forma, l'ultima riga non si allarga */
.fx-galleria{display:flex;flex-wrap:wrap;gap:var(--fx-gap);--fx-altezza:var(--fx-h)}
.fx-galleria::after{content:"";flex-grow:999999}
.fx-galleria--giustificata .e-gallery-item{flex:var(--fx-r) 1 calc(var(--fx-r) * var(--fx-altezza));display:block;overflow:hidden;position:relative}
.fx-galleria--giustificata .e-gallery-item img{display:block;width:100%;height:100%;aspect-ratio:var(--fx-r);object-fit:cover;transition:transform .4s,filter .4s}
.fx-galleria--griglia{display:grid;grid-template-columns:repeat(var(--fx-col,3),minmax(0,1fr))}
.fx-galleria--griglia::after{display:none}
.fx-galleria--griglia .e-gallery-item img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.fx-galleria--pronta::after{display:none}
/* Come lo slider, la galleria di Pro passa a tablet e telefono un pixel prima del CSS */
@media(max-width:1023px){.fx-galleria{--fx-altezza:var(--fx-h-t);gap:var(--fx-gap-t)}}
@media(max-width:766px){.fx-galleria{--fx-altezza:var(--fx-h-m);gap:var(--fx-gap-m)}}

/* Galleria di WordPress */
.elementor-image-gallery .gallery{display:flex;flex-wrap:wrap;margin:0}
.elementor-image-gallery .gallery-item{width:calc(100% / var(--fx-col));max-width:none;margin:0;display:block;text-align:center}
.elementor-image-gallery .gallery-item img{display:block;width:100%;height:auto;margin:0 auto}
.elementor-image-gallery .gallery-icon a{display:block}
.elementor-image-gallery br{display:none}
@media(max-width:1024px){.elementor-image-gallery .gallery-item{width:calc(100% / var(--fx-col-t))}}
@media(max-width:767px){.elementor-image-gallery .gallery-item{width:calc(100% / var(--fx-col-m))}}

/* Lightbox del motore */
.fx-lightbox{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.92);padding:4vh 4vw;border:0;margin:0;width:100%;height:100%;max-width:none;max-height:none}
.fx-lightbox::backdrop{background:rgba(0,0,0,.92)}
.fx-lightbox img{max-width:100%;max-height:92vh;object-fit:contain;display:block}
.fx-lightbox button{position:absolute;background:none;border:0;color:#fff;font-size:34px;line-height:1;padding:14px;cursor:pointer;opacity:.8}
.fx-lightbox button:hover{opacity:1}
.fx-lightbox [data-chiudi]{top:10px;right:14px}
.fx-lightbox [data-prima]{left:6px;top:50%;transform:translateY(-50%)}
.fx-lightbox [data-dopo]{right:6px;top:50%;transform:translateY(-50%)}

/* Modulo */
.elementor-form-fields-wrapper{display:flex;flex-wrap:wrap}
.elementor-field-group{display:flex;flex-wrap:wrap;align-items:center;position:relative}
.elementor-field-group.elementor-field-type-submit{align-items:flex-end}
.elementor-field-group .elementor-field-textual{width:100%;max-width:100%;border:1px solid #69727d;background-color:transparent;color:#1f2124;vertical-align:middle;flex-grow:1}
.elementor-field-group .elementor-field-textual:focus{outline:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}
.elementor-field-group .elementor-select-wrapper{display:flex;position:relative;width:100%}
.elementor-field-group .elementor-select-wrapper select{appearance:none;color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-transform:inherit;flex-basis:100%;padding-inline-end:20px}
.elementor-field-group .elementor-select-wrapper::before{content:"";position:absolute;top:50%;right:12px;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-70%) rotate(45deg);pointer-events:none}
.elementor-field-label{cursor:pointer}
.elementor-labels-above .elementor-field-group>.elementor-field-label{flex-basis:100%;max-width:100%}
.elementor-mark-required .elementor-field-label::after{content:"*";color:red;padding-inline-start:.2em}
.elementor-field-textual{line-height:1.4;font-size:15px;min-height:40px;padding:5px 14px;border-radius:3px}
.elementor-field-textual.elementor-size-md{font-size:16px;min-height:47px;padding:6px 16px;border-radius:4px}
.elementor-field-textual.elementor-size-lg{font-size:18px;min-height:59px;padding:7px 20px;border-radius:5px}
.elementor-field-subgroup{display:flex;flex-wrap:wrap}
.elementor-field-subgroup .elementor-field-option label{display:inline-block}
.elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input{display:inline-block;vertical-align:middle}
.elementor-form .elementor-button{border:none;padding-block:0;min-height:40px}
.elementor-form .elementor-button[type=submit]{flex-basis:100%}
.elementor-button-align-start .e-form__buttons{justify-content:flex-start}
.elementor-button-align-stretch .e-form__buttons .elementor-button{flex-basis:100%}
@media(max-width:767px){.elementor-mobile-button-align-stretch .e-form__buttons .elementor-button{flex-basis:100%}}
.elementor-form .e-form__buttons{display:flex;flex-wrap:wrap}
.elementor-column{position:relative;display:flex;min-height:1px}
.elementor-col-100,.elementor-column[data-col="100"]{width:100%}
.elementor-col-50{width:50%}.elementor-col-33{width:33.333%}.elementor-col-25{width:25%}.elementor-col-66{width:66.666%}.elementor-col-75{width:75%}.elementor-col-20{width:20%}.elementor-col-80{width:80%}.elementor-col-40{width:40%}.elementor-col-60{width:60%}
@media(max-width:1024px){.elementor-md-100{width:100%}.elementor-md-80{width:80%}.elementor-md-75{width:75%}.elementor-md-66{width:66.666%}.elementor-md-60{width:60%}.elementor-md-50{width:50%}.elementor-md-40{width:40%}.elementor-md-33{width:33.333%}.elementor-md-25{width:25%}.elementor-md-20{width:20%}}
@media(max-width:767px){.elementor-sm-100{width:100%}.elementor-sm-80{width:80%}.elementor-sm-75{width:75%}.elementor-sm-66{width:66.666%}.elementor-sm-60{width:60%}.elementor-sm-50{width:50%}.elementor-sm-40{width:40%}.elementor-sm-33{width:33.333%}.elementor-sm-25{width:25%}.elementor-sm-20{width:20%}}
.elementor-message{margin:10px 0;font-size:1em;line-height:1}
.elementor-message.elementor-message-danger{color:#d9534f}
.elementor-message.elementor-message-success{color:#5cb85c}
.elementor-form.fx-invio .elementor-button{opacity:.6;pointer-events:none}

/* Entrate */
.animated{animation-duration:1.25s;animation-fill-mode:both}
.animated.animated-slow{animation-duration:2s}
.animated.animated-fast{animation-duration:.75s}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes fadeInUp{from{opacity:0;transform:translate3d(0,100%,0)}to{opacity:1;transform:none}}
@keyframes fadeInDown{from{opacity:0;transform:translate3d(0,-100%,0)}to{opacity:1;transform:none}}
@keyframes fadeInLeft{from{opacity:0;transform:translate3d(-100%,0,0)}to{opacity:1;transform:none}}
@keyframes fadeInRight{from{opacity:0;transform:translate3d(100%,0,0)}to{opacity:1;transform:none}}
@keyframes zoomIn{from{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}
.fadeIn{animation-name:fadeIn}.fadeInUp{animation-name:fadeInUp}.fadeInDown{animation-name:fadeInDown}.fadeInLeft{animation-name:fadeInLeft}.fadeInRight{animation-name:fadeInRight}.zoomIn{animation-name:zoomIn}
@media(prefers-reduced-motion:reduce){.animated{animation:none!important}}
