.elementor-11291 .elementor-element.elementor-element-1a632544{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:9999;}.elementor-11291 .elementor-element.elementor-element-1a632544:not(.elementor-motion-effects-element-type-background), .elementor-11291 .elementor-element.elementor-element-1a632544 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(90deg, var( --e-global-color-1d1cfdc ) 0%, var( --e-global-color-secondary ) 100%);}.elementor-11291 .elementor-element.elementor-element-1a632544.e-con{--align-self:center;--order:-99999 /* order start hack */;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-ae6710e .swiper-slide-bg{background-color:#FFFFFF00;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-ae6710e .swiper-slide-inner .elementor-slide-heading{color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-ae6710e .swiper-slide-inner .elementor-slide-description{color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-ae6710e .swiper-slide-inner .elementor-slide-button{color:#FFFFFF;border-color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-5eec2e5 .swiper-slide-bg{background-color:#FFFFFF00;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-5eec2e5 .swiper-slide-inner .elementor-slide-heading{color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-5eec2e5 .swiper-slide-inner .elementor-slide-description{color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-5eec2e5 .swiper-slide-inner .elementor-slide-button{color:#FFFFFF;border-color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-eb70ef2 .swiper-slide-bg{background-color:#833CA300;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-eb70ef2 .swiper-slide-inner .elementor-slide-heading{color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-eb70ef2 .swiper-slide-inner .elementor-slide-description{color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-repeater-item-eb70ef2 .swiper-slide-inner .elementor-slide-button{color:#FFFFFF;border-color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .swiper-slide{transition-duration:calc(3000ms*1.2);height:35px;}.elementor-11291 .elementor-element.elementor-element-7b8a862e:hover .elementor-widget-container{background-color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-7b8a862e > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .swiper-slide-contents{max-width:100vw;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .swiper-slide-inner{padding:0px 0px 0px 0px;text-align:center;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-slide-heading{font-family:"Kromaline", Sans-serif;font-size:1vw;font-weight:100;letter-spacing:1px;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .swiper-slide-inner .elementor-slide-description:not(:last-child){margin-bottom:0px;}.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-slide-description{color:var( --e-global-color-980fdbb );font-family:"Kromaline", Sans-serif;font-size:0.9vw;font-weight:100;letter-spacing:1px;word-spacing:1px;}.elementor-11291 .elementor-element.elementor-element-17258b1a{--display:flex;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;--z-index:2;}.elementor-11291 .elementor-element.elementor-element-17258b1a:not(.elementor-motion-effects-element-type-background), .elementor-11291 .elementor-element.elementor-element-17258b1a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-980fdbb );}.elementor-11291 .elementor-element.elementor-element-348f1a93{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-11291 .elementor-element.elementor-element-348f1a93.e-con{--align-self:center;}.elementor-11291 .elementor-element.elementor-element-3857e361{width:auto;max-width:auto;}.elementor-11291 .elementor-element.elementor-element-3857e361 > .elementor-widget-container{margin:2.4vw 0vw -4vw 0vw;padding:0% 0% 0% 0%;}.elementor-11291 .elementor-element.elementor-element-3857e361.elementor-element{--align-self:center;}.elementor-11291 .elementor-element.elementor-element-59713271{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:var( --e-global-color-82d1f41 );--border-color:var( --e-global-color-82d1f41 );--border-radius:0px 0px 0px 0px;box-shadow:0px 4px 40px 0px rgba(0, 0, 0, 0.35);--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0.7vw;--padding-bottom:0.7vw;--padding-left:3vw;--padding-right:3vw;--z-index:1;}.elementor-11291 .elementor-element.elementor-element-59713271:not(.elementor-motion-effects-element-type-background), .elementor-11291 .elementor-element.elementor-element-59713271 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-11291 .elementor-element.elementor-element-59713271.e-con{--align-self:stretch;}.elementor-11291 .elementor-element.elementor-element-5e3d1bdf{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11291 .elementor-element.elementor-element-2a7a0142{width:auto;max-width:auto;text-align:center;}.elementor-11291 .elementor-element.elementor-element-2a7a0142:hover .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/logo-kromaline-menu-to-home-hover.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-11291 .elementor-element.elementor-element-2a7a0142 > .elementor-widget-container{margin:0% 0% 0% 0%;padding:0% 0% 0% 0%;transition:background 0s;}.elementor-11291 .elementor-element.elementor-element-2a7a0142.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-11291 .elementor-element.elementor-element-2a7a0142 img{width:10vw;height:0%;transition-duration:0s;}.elementor-11291 .elementor-element.elementor-element-2a7a0142:hover img{opacity:0;}.elementor-11291 .elementor-element.elementor-element-7638d0ef{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--flex-wrap:nowrap;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;}.elementor-11291 .elementor-element.elementor-element-7638d0ef.e-con{--align-self:center;}.elementor-11291 .elementor-element.elementor-element-7d1172f2{--display:flex;}.elementor-11291 .elementor-element.elementor-element-2f903715{--display:flex;--position:absolute;--min-height:35.5vw;border-style:none;--border-style:none;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;top:1vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-2f903715{right:-4.5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-2f903715{left:-4.5vw;}.elementor-11291 .elementor-element.elementor-element-6ad7a430{--display:flex;--position:absolute;--min-height:35vw;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--flex-wrap:nowrap;border-style:none;--border-style:none;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;top:1vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-6ad7a430{right:-4.5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-6ad7a430{left:-4.5vw;}.elementor-11291 .elementor-element.elementor-element-12bf0bcc{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;--align-content:space-evenly;}.elementor-11291 .elementor-element.elementor-element-145b74ee{width:100%;max-width:100%;z-index:1;text-align:center;}.elementor-11291 .elementor-element.elementor-element-145b74ee > .elementor-widget-container{margin:0vw 0vw 0vw 0vw;padding:0vw 0vw 0vw 0vw;border-style:none;border-radius:0px 0px 0px 0px;}.elementor-11291 .elementor-element.elementor-element-145b74ee img{width:100%;border-radius:20px 0px 0px 20px;}.elementor-11291 .elementor-element.elementor-element-eaf56aa > .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/orari-icona-hover.svg");}.elementor-11291 .elementor-element.elementor-element-eaf56aa:hover .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/orari-icona.svg");}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-eaf56aa{left:1.5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-eaf56aa{right:1.5vw;}.elementor-11291 .elementor-element.elementor-element-eaf56aa{bottom:1.5vw;}.elementor-11291 .elementor-element.elementor-element-eaf56aa .elementor-icon-wrapper{text-align:center;line-height:0px;}.elementor-11291 .elementor-element.elementor-element-eaf56aa .elementor-icon{font-size:5vw;}.elementor-11291 .elementor-element.elementor-element-eaf56aa .elementor-icon svg{height:5vw;}.elementor-11291 .elementor-element.elementor-element-7eef0b78 > .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/chiamaci-icona-hover.svg");}.elementor-11291 .elementor-element.elementor-element-7eef0b78:hover .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/chiamaci-icona.svg");}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-7eef0b78{left:10.5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-7eef0b78{right:10.5vw;}.elementor-11291 .elementor-element.elementor-element-7eef0b78{bottom:1.5vw;}.elementor-11291 .elementor-element.elementor-element-7eef0b78 .elementor-icon-wrapper{text-align:center;line-height:0px;}.elementor-11291 .elementor-element.elementor-element-7eef0b78 .elementor-icon{font-size:5vw;}.elementor-11291 .elementor-element.elementor-element-7eef0b78 .elementor-icon svg{height:5vw;}.elementor-11291 .elementor-element.elementor-element-265386b1 > .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/whatsapp-icona-hover.svg");}.elementor-11291 .elementor-element.elementor-element-265386b1:hover .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/whatsapp-icona.svg");}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-265386b1{left:19.5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-265386b1{right:19.5vw;}.elementor-11291 .elementor-element.elementor-element-265386b1{bottom:1.5vw;}.elementor-11291 .elementor-element.elementor-element-265386b1 .elementor-icon-wrapper{text-align:center;line-height:0px;}.elementor-11291 .elementor-element.elementor-element-265386b1 .elementor-icon{font-size:5vw;}.elementor-11291 .elementor-element.elementor-element-265386b1 .elementor-icon svg{height:5vw;}.elementor-11291 .elementor-element.elementor-element-3567c1d > .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/mail-icona-hover.svg");}.elementor-11291 .elementor-element.elementor-element-3567c1d:hover .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/mail-icona.svg");}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-3567c1d{left:28vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-3567c1d{right:28vw;}.elementor-11291 .elementor-element.elementor-element-3567c1d{bottom:1.5vw;}.elementor-11291 .elementor-element.elementor-element-3567c1d .elementor-icon-wrapper{text-align:center;line-height:0px;}.elementor-11291 .elementor-element.elementor-element-3567c1d .elementor-icon{font-size:5vw;}.elementor-11291 .elementor-element.elementor-element-3567c1d .elementor-icon svg{height:5vw;}.elementor-11291 .elementor-element.elementor-element-6fc4095d{--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;--border-radius:25px 25px 25px 25px;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;}.elementor-11291 .elementor-element.elementor-element-6fc4095d.e-con{--align-self:flex-start;}.elementor-11291 .elementor-element.elementor-element-1fe17a7a > .elementor-widget-container{margin:0vw 0vw 1vw 0vw;}.elementor-11291 .elementor-element.elementor-element-1fe17a7a{text-align:center;}.elementor-11291 .elementor-element.elementor-element-1fe17a7a .elementor-heading-title{font-family:"nasalization", Sans-serif;font-size:4.2vw;letter-spacing:1.5px;}.elementor-11291 .elementor-element.elementor-element-42f9a3e2 > .elementor-widget-container{background-color:var( --e-global-color-primary );margin:0vw 5vw 0vw 5vw;padding:0.2vw 0vw 0.5vw 0vw;}.elementor-11291 .elementor-element.elementor-element-42f9a3e2{text-align:center;}.elementor-11291 .elementor-element.elementor-element-42f9a3e2 .elementor-heading-title{font-family:"nasalization", Sans-serif;font-size:1.2vw;letter-spacing:1.5px;color:var( --e-global-color-980fdbb );}.elementor-11291 .elementor-element.elementor-element-4eff5a57 > .elementor-widget-container{margin:0.2vw 2vw 0.5vw 2vw;padding:0vw 3vw 0.5vw 3vw;border-style:solid;border-width:0px 0px 3px 0px;}.elementor-11291 .elementor-element.elementor-element-4eff5a57{text-align:center;}.elementor-11291 .elementor-element.elementor-element-4eff5a57 .elementor-heading-title{font-family:"nasalization", Sans-serif;font-size:1.3vw;letter-spacing:1.5px;}.elementor-11291 .elementor-element.elementor-element-36a2656a{width:100%;max-width:100%;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-11291 .elementor-element.elementor-element-36a2656a > .elementor-widget-container{margin:0vw 2vw -1.5vw 2vw;padding:0vw 0vw 0vw 0vw;}.elementor-11291 .elementor-element.elementor-element-36a2656a.elementor-element{--align-self:center;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-group{padding-right:calc( 1vw/2 );padding-left:calc( 1vw/2 );margin-bottom:0.4vw;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-form-fields-wrapper{margin-left:calc( -1vw/2 );margin-right:calc( -1vw/2 );margin-bottom:-0.4vw;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-group.recaptcha_v3-bottomleft, .elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-labels-inline .elementor-field-group > label{padding-left:0.4vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-labels-inline .elementor-field-group > label{padding-right:0.4vw;}body .elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-labels-above .elementor-field-group > label{padding-bottom:0.4vw;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-group > label, .elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-subgroup label{color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-group > label{font-family:"nasalization", Sans-serif;font-size:0.9vw;font-weight:normal;letter-spacing:1px;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-type-html{padding-bottom:0px;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-group .elementor-field{color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-group .elementor-field, .elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-subgroup label{font-family:"Kromaline", Sans-serif;font-size:0.9vw;font-weight:100;letter-spacing:1.5px;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#DADADA;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-field-group .elementor-select-wrapper select{background-color:#DADADA;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-button span{justify-content:center;}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-button{font-family:"nasalization", Sans-serif;font-size:2vw;font-weight:normal;line-height:2vw;letter-spacing:1px;word-spacing:0px;border-style:solid;border-width:3px 3px 3px 3px;padding:0 0 0.5vw 0;}.elementor-11291 .elementor-element.elementor-element-36a2656a .e-form__buttons__wrapper__button-next{background-color:#FFFFFF;color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-button[type="submit"]{background-color:#FFFFFF;color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-button[type="submit"] svg *{fill:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-36a2656a .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-11291 .elementor-element.elementor-element-36a2656a .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-primary );color:#ffffff;border-color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-primary );color:#ffffff;border-color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-36a2656a .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-11291 .elementor-element.elementor-element-36a2656a .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-11291 .elementor-element.elementor-element-185c965b{--display:flex;}.elementor-11291 .elementor-element.elementor-element-e27ee8e{--display:flex;--position:absolute;--min-height:3.4vw;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:none;--border-style:none;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;top:2.7vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-e27ee8e{right:14.7vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-e27ee8e{left:14.7vw;}.elementor-11291 .elementor-element.elementor-element-da0f79d{--display:flex;--position:absolute;--min-height:3.7vw;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:none;--border-style:none;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;top:2.5vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-da0f79d{right:14.7vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-da0f79d{left:14.7vw;}.elementor-11291 .elementor-element.elementor-element-14bf608 .e-search-input{background-color:var( --e-global-color-d11f1b1 );font-family:"nasalization", Sans-serif;font-size:1vw;border-style:none;}.elementor-11291 .elementor-element.elementor-element-14bf608 .e-search-results-container{background-color:var( --e-global-color-d11f1b1 );}.elementor-11291 .elementor-element.elementor-element-14bf608{width:var( --container-widget-width, 96% );max-width:96%;--container-widget-width:96%;--container-widget-flex-grow:0;--e-search-results-columns:5;--e-search-placeholder-color:var( --e-global-color-primary );--e-search-input-color:var( --e-global-color-text );--e-search-icon-label-color:var( --e-global-color-primary );--e-search-submit-margin-inline-start:0vw;--e-search-icon-clear-size:1vw;--e-search-icon-clear-color:var( --e-global-color-primary );--e-search-input-and-results-gap:2vw;--e-search-results-width:100vw;--e-search-results-max-height:50vw;--e-search-results-inset-inline-start:50%;--e-search-results-inset-inline-end:initial;--e-search-results-transform:translateX(-50%);--e-search-nothing-found-message-alignment:center;--e-search-nothing-found-message-color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-14bf608 > .elementor-widget-container{margin:-0.2vw 0vw -1.6vw 0vw;padding:0vw 0vw 0vw 0vw;}.elementor-11291 .elementor-element.elementor-element-14bf608.elementor-element{--align-self:center;}.elementor-11291 .elementor-element.elementor-element-14bf608 .e-search-results-container > div{border-style:none;}.elementor-11291 .elementor-element.elementor-element-14bf608 .e-search-nothing-found-message{font-family:"nasalization", Sans-serif;font-size:1vw;}.elementor-11291 .elementor-element.elementor-element-6b34a5bd{--display:flex;}.elementor-11291 .elementor-element.elementor-element-6cfdea91{--display:flex;--position:absolute;--min-height:36vw;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:none;--border-style:none;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;top:1vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-6cfdea91{right:4vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-6cfdea91{left:4vw;}.elementor-11291 .elementor-element.elementor-element-6a267e1a{--display:flex;--position:absolute;--min-height:36vw;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:none;--border-style:none;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;top:1vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-6a267e1a{right:4vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-6a267e1a{left:4vw;}.elementor-11291 .elementor-element.elementor-element-5a65edd8{width:100%;max-width:100%;text-align:center;}.elementor-11291 .elementor-element.elementor-element-5a65edd8 > .elementor-widget-container{margin:0vw 0vw 0vw 0vw;padding:0vw 0vw 0vw 0vw;border-style:none;border-radius:0px 0px 0px 0px;}.elementor-11291 .elementor-element.elementor-element-5a65edd8.elementor-element{--align-self:flex-start;}.elementor-11291 .elementor-element.elementor-element-5a65edd8 img{width:100%;height:36vw;border-radius:20px 0px 0px 20px;}.elementor-11291 .elementor-element.elementor-element-1badc8bc{--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;--border-radius:25px 25px 25px 25px;--margin-top:0vw;--margin-bottom:0vw;--margin-left:2vw;--margin-right:2vw;--padding-top:0.5vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;}.elementor-11291 .elementor-element.elementor-element-1badc8bc.e-con{--align-self:flex-start;}.elementor-11291 .elementor-element.elementor-element-14e83065{text-align:center;}.elementor-11291 .elementor-element.elementor-element-14e83065 .elementor-heading-title{font-family:"nasalization", Sans-serif;font-size:3.2vw;letter-spacing:2px;}.elementor-11291 .elementor-element.elementor-element-190d5b8b > .elementor-widget-container{margin:-0.3vw 0vw 0vw 0vw;}.elementor-11291 .elementor-element.elementor-element-190d5b8b{text-align:center;}.elementor-11291 .elementor-element.elementor-element-190d5b8b .elementor-heading-title{font-family:"nasalization", Sans-serif;font-size:3.9vw;letter-spacing:2px;}.elementor-11291 .elementor-element.elementor-element-64472782{width:100%;max-width:100%;text-align:center;}.elementor-11291 .elementor-element.elementor-element-64472782 > .elementor-widget-container{background-color:var( --e-global-color-primary );margin:0.5vw 1vw 0.5vw 1vw;padding:0.5vw 0vw 0.7vw 0vw;}.elementor-11291 .elementor-element.elementor-element-64472782 .elementor-heading-title{font-family:"nasalization", Sans-serif;font-size:1.2vw;letter-spacing:1px;color:var( --e-global-color-980fdbb );}.elementor-11291 .elementor-element.elementor-element-6aade477 > .elementor-widget-container{margin:0.5vw 1vw 0vw 1vw;padding:0vw 0vw 0vw 0vw;}.elementor-11291 .elementor-element.elementor-element-6aade477{text-align:center;font-family:"futura-pt", Sans-serif;font-size:1.2vw;font-weight:500;line-height:1.3VW;letter-spacing:0.6px;color:#000000;}.elementor-11291 .elementor-element.elementor-element-6aade477 p{margin-block-end:1vw;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-button{background-color:var( --e-global-color-d11f1b1 );color:var( --e-global-color-primary );font-family:"Kromaline", Sans-serif;font-size:1vw;font-weight:100;letter-spacing:0.5px;border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-primary );transition-duration:0ms;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-button:hover{background-color:var( --e-global-color-text );color:var( --e-global-color-980fdbb );border-color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-4e3aa40e > .elementor-widget-container{margin:1vw 2vw 0vw 0vw;padding:0px 0px 0px 0px;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-field-group{margin-bottom:1vw;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-form-fields-wrapper{margin-bottom:-1vw;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-field-group > a{color:var( --e-global-color-primary );}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-field-group > a:hover{color:var( --e-global-color-4784436 );}body .elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-field-group > label{padding-bottom:0.3vw;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-form-fields-wrapper label{color:var( --e-global-color-primary );font-family:"nasalization", Sans-serif;font-size:0.9vw;font-weight:normal;line-height:14px;letter-spacing:1px;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-field-group .elementor-field, .elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-field-subgroup label{font-family:"futura-pt", Sans-serif;font-size:1.2vw;font-weight:400;letter-spacing:0.5px;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#DADADA;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-field-group .elementor-select-wrapper select{background-color:#DADADA;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e .elementor-widget-container .elementor-login__logged-in-message{color:var( --e-global-color-text );font-family:"Kromaline", Sans-serif;font-size:1vw;font-weight:100;letter-spacing:1px;}.elementor-11291 .elementor-element.elementor-element-57f22b48{--display:flex;}.elementor-11291 .elementor-element.elementor-element-39c9dd9e{--display:flex;--position:absolute;--min-height:35vw;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:none;--border-style:none;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;top:1vw;}.elementor-11291 .elementor-element.elementor-element-39c9dd9e.e-con{--align-self:flex-end;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-39c9dd9e{right:-5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-39c9dd9e{left:-5vw;}.elementor-11291 .elementor-element.elementor-element-63b9becf{--display:flex;--position:absolute;--min-height:35vw;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;border-style:none;--border-style:none;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0vw;--padding-bottom:0vw;--padding-left:1vw;--padding-right:1vw;top:1vw;}.elementor-11291 .elementor-element.elementor-element-63b9becf.e-con{--align-self:flex-end;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-63b9becf{right:-5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-63b9becf{left:-5vw;}.elementor-11291 .elementor-element.elementor-element-69b4e23d{--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;--border-radius:25px 25px 25px 25px;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0.5vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;}.elementor-11291 .elementor-element.elementor-element-69b4e23d.e-con{--align-self:flex-start;}.elementor-11291 .elementor-element.elementor-element-53640afa{text-align:center;}.elementor-11291 .elementor-element.elementor-element-53640afa .elementor-heading-title{font-family:"nasalization", Sans-serif;font-size:3.4vw;letter-spacing:2px;}.elementor-11291 .elementor-element.elementor-element-5edebbcc{width:100%;max-width:100%;text-align:center;}.elementor-11291 .elementor-element.elementor-element-5edebbcc > .elementor-widget-container{background-color:var( --e-global-color-primary );margin:1.5vw 0vw 0vw 0vw;padding:0.5vw 0vw 0.5vw 0vw;border-style:none;}.elementor-11291 .elementor-element.elementor-element-5edebbcc .elementor-heading-title{font-family:"nasalization", Sans-serif;font-size:0.9vw;letter-spacing:1px;color:var( --e-global-color-980fdbb );}.elementor-11291 .elementor-element.elementor-element-62295dcb{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-11291 .elementor-element.elementor-element-62295dcb > .elementor-widget-container{margin:0vw 0vw 0vw 0vw;padding:0vw 0vw 0vw 0vw;}.elementor-11291 .elementor-element.elementor-element-290788f7{--n-menu-dropdown-content-max-width:fit-content;--n-menu-heading-justify-content:center;--n-menu-title-flex-grow:initial;--n-menu-title-justify-content:initial;--n-menu-title-justify-content-mobile:center;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:0px;width:auto;max-width:auto;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-transition:300ms;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-11291 .elementor-element.elementor-element-290788f7 > .elementor-widget-container{margin:0vw 0vw 0vw 0vw;padding:0vw 0vw 0vw 0vw;}.elementor-11291 .elementor-element.elementor-element-290788f7.elementor-element{--align-self:stretch;}.elementor-11291 .elementor-element.elementor-element-abf6b2b{--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;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-8942cc8{right:0px;}body.rtl .elementor-11291 .elementor-element.elementor-element-8942cc8{left:0px;}.elementor-11291 .elementor-element.elementor-element-8942cc8{top:0px;}.elementor-11291 .elementor-element.elementor-element-8942cc8 > .elementor-widget-container{transition:background 0s;}.elementor-11291 .elementor-element.elementor-element-c638b86{--display:flex;--position:fixed;top:0px;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-c638b86{left:0px;}body.rtl .elementor-11291 .elementor-element.elementor-element-c638b86{right:0px;}.elementor-11291 .elementor-element.elementor-element-c70ad23{--display:flex;}.elementor-11291 .elementor-element.elementor-element-24278b5{--display:flex;}.elementor-11291 .elementor-element.elementor-element-5132875{--display:flex;}.elementor-11291 .elementor-element.elementor-element-bad9e16{--display:flex;}.elementor-11291 .elementor-element.elementor-element-c72c23a{--display:flex;}.elementor-11291 .elementor-element.elementor-element-ab430e0{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:0px;top:0px;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-ab430e0{left:0px;}body.rtl .elementor-11291 .elementor-element.elementor-element-ab430e0{right:0px;}.elementor-11291{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1366px){.elementor-11291 .elementor-element.elementor-element-7b8a862e .elementor-slide-description{font-size:14px;}.elementor-11291 .elementor-element.elementor-element-17258b1a{--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-11291 .elementor-element.elementor-element-3857e361 > .elementor-widget-container{margin:2.7vw 0vw -5vw 0vw;}.elementor-11291 .elementor-element.elementor-element-59713271{--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0.5vw;--padding-bottom:1vw;--padding-left:3vw;--padding-right:3vw;}.elementor-11291 .elementor-element.elementor-element-59713271.e-con{--align-self:center;}.elementor-11291 .elementor-element.elementor-element-2a7a0142 > .elementor-widget-container{margin:0vw 0vw -0.2vw 0vw;padding:0vw 0vw 0vw 0vw;}.elementor-11291 .elementor-element.elementor-element-2a7a0142 img{width:12vw;}.elementor-11291 .elementor-element.elementor-element-7638d0ef{--gap:0% 5%;--row-gap:0%;--column-gap:5%;--margin-top:0vw;--margin-bottom:-0.5vw;--margin-left:0vw;--margin-right:0vw;}.elementor-11291 .elementor-element.elementor-element-7638d0ef.e-con{--align-self:center;--flex-grow:0;--flex-shrink:1;}.elementor-11291 .elementor-element.elementor-element-2f903715{--min-height:39.3vw;top:2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-2f903715{right:-9vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-2f903715{left:-9vw;}.elementor-11291 .elementor-element.elementor-element-6ad7a430{--min-height:39.2vw;top:2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-6ad7a430{right:-9vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-6ad7a430{left:-9vw;}.elementor-11291 .elementor-element.elementor-element-145b74ee.elementor-element{--align-self:flex-start;}.elementor-11291 .elementor-element.elementor-element-145b74ee{text-align:center;}.elementor-11291 .elementor-element.elementor-element-145b74ee img{width:100%;height:100%;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-eaf56aa{left:2vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-eaf56aa{right:2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-7eef0b78{left:11.5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-7eef0b78{right:11.5vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-265386b1{left:21.2vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-265386b1{right:21.2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-3567c1d{left:31vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-3567c1d{right:31vw;}.elementor-11291 .elementor-element.elementor-element-6fc4095d{--margin-top:0vw;--margin-bottom:0vw;--margin-left:1vw;--margin-right:1vw;}.elementor-11291 .elementor-element.elementor-element-e27ee8e{--min-height:4.2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-e27ee8e{right:11vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-e27ee8e{left:11vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-da0f79d{right:11vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-da0f79d{left:11vw;}.elementor-11291 .elementor-element.elementor-element-14bf608 .e-search-input{font-size:1.3vw;}.elementor-11291 .elementor-element.elementor-element-6cfdea91{--min-height:39.4vw;top:2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-6cfdea91{right:-1vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-6cfdea91{left:-1vw;}.elementor-11291 .elementor-element.elementor-element-6a267e1a{--min-height:39.4vw;top:2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-6a267e1a{right:-1vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-6a267e1a{left:-1vw;}.elementor-11291 .elementor-element.elementor-element-5a65edd8.elementor-element{--align-self:flex-start;}.elementor-11291 .elementor-element.elementor-element-5a65edd8{text-align:center;}.elementor-11291 .elementor-element.elementor-element-5a65edd8 img{width:100%;height:100%;}.elementor-11291 .elementor-element.elementor-element-1badc8bc{--margin-top:0vw;--margin-bottom:0vw;--margin-left:1vw;--margin-right:1vw;}.elementor-11291 .elementor-element.elementor-element-64472782 > .elementor-widget-container{margin:0.5vw 3vw 0.5vw 3vw;}.elementor-11291 .elementor-element.elementor-element-6aade477 > .elementor-widget-container{margin:0.5vw 3vw 0vw 3vw;}.elementor-11291 .elementor-element.elementor-element-6aade477{font-size:1.1vw;}.elementor-11291 .elementor-element.elementor-element-4e3aa40e > .elementor-widget-container{margin:1vw 1vw 0vw 1vw;}.elementor-11291 .elementor-element.elementor-element-39c9dd9e{--min-height:43vw;top:2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-39c9dd9e{right:-6vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-39c9dd9e{left:-6vw;}.elementor-11291 .elementor-element.elementor-element-63b9becf{--min-height:43vw;top:2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-63b9becf{right:-6vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-63b9becf{left:-6vw;}}@media(max-width:1200px){.elementor-11291 .elementor-element.elementor-element-1a632544{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-11291 .elementor-element.elementor-element-59713271{--padding-top:0.5vw;--padding-bottom:1vw;--padding-left:1vw;--padding-right:1vw;}.elementor-11291 .elementor-element.elementor-element-2a7a0142 > .elementor-widget-container{margin:0vw 0vw -0.5vw 0vw;}.elementor-11291 .elementor-element.elementor-element-2a7a0142 img{width:11vw;}.elementor-11291 .elementor-element.elementor-element-7638d0ef{--gap:0vw 0vw;--row-gap:0vw;--column-gap:0vw;--margin-top:0vw;--margin-bottom:0vw;--margin-left:0vw;--margin-right:0vw;--padding-top:0.5vw;--padding-bottom:0vw;--padding-left:0vw;--padding-right:0vw;}.elementor-11291 .elementor-element.elementor-element-7638d0ef.e-con{--align-self:stretch;--flex-grow:0;--flex-shrink:0;}.elementor-11291 .elementor-element.elementor-element-2f903715{--min-height:40.7vw;top:3vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-2f903715{right:-10vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-2f903715{left:-10vw;}.elementor-11291 .elementor-element.elementor-element-6ad7a430{--min-height:40.7vw;top:3vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-6ad7a430{right:-10vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-6ad7a430{left:-10vw;}.elementor-11291 .elementor-element.elementor-element-145b74ee img{width:100%;height:100%;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-7eef0b78{left:12vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-7eef0b78{right:12vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-265386b1{left:22.2vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-265386b1{right:22.2vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-3567c1d{left:32vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-3567c1d{right:32vw;}.elementor-11291 .elementor-element.elementor-element-185c965b{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:stretch;}.elementor-11291 .elementor-element.elementor-element-e27ee8e{--min-height:4.5vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-e27ee8e{right:15.5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-e27ee8e{left:15.5vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-da0f79d{right:15.5vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-da0f79d{left:15.5vw;}.elementor-11291 .elementor-element.elementor-element-14bf608 .e-search-input{font-size:1.5vw;}.elementor-11291 .elementor-element.elementor-element-6cfdea91{--min-height:40.7vw;top:3vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-6cfdea91{right:-1vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-6cfdea91{left:-1vw;}.elementor-11291 .elementor-element.elementor-element-6a267e1a{--min-height:40.7vw;top:3vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-6a267e1a{right:-1vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-6a267e1a{left:-1vw;}.elementor-11291 .elementor-element.elementor-element-5a65edd8 img{width:100%;height:100%;}.elementor-11291 .elementor-element.elementor-element-39c9dd9e{--min-height:44vw;top:3vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-39c9dd9e{right:-4vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-39c9dd9e{left:-4vw;}.elementor-11291 .elementor-element.elementor-element-63b9becf{--min-height:44vw;top:3vw;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-63b9becf{right:-4vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-63b9becf{left:-4vw;}.elementor-11291 .elementor-element.elementor-element-290788f7 > .elementor-widget-container{margin:0vw 0vw 0vw 0vw;padding:0vw 0vw 0vw 0vw;}}@media(max-width:1024px){.elementor-11291 .elementor-element.elementor-element-59713271{--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;}.elementor-11291 .elementor-element.elementor-element-7638d0ef.e-con{--align-self:stretch;}.elementor-11291 .elementor-element.elementor-element-290788f7.elementor-element{--align-self:stretch;}.elementor-11291 .elementor-element.elementor-element-07326dd{z-index:99999;}.elementor-11291 .elementor-element.elementor-element-8942cc8{width:var( --container-widget-width, 14vh );max-width:14vh;--container-widget-width:14vh;--container-widget-flex-grow:0;top:0.5vh;z-index:99999;text-align:center;}.elementor-11291 .elementor-element.elementor-element-8942cc8 > .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/logo-kromaline-con-scritta.svg");background-position:center center;background-repeat:no-repeat;}.elementor-11291 .elementor-element.elementor-element-8942cc8:hover .elementor-widget-container{background-image:url("https://kromaline.it/wp-content/uploads/logo-kromaline-con-scritta-home.svg");background-position:center center;background-repeat:no-repeat;}.elementor-11291 .elementor-element.elementor-element-8942cc8.elementor-element{--align-self:center;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-8942cc8{right:40.2vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-8942cc8{left:40.2vw;}.elementor-11291 .elementor-element.elementor-element-8942cc8 img{width:100vw;}.elementor-11291 .elementor-element.elementor-element-c638b86{--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;top:2vh;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-c638b86{left:1vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-c638b86{right:1vw;}.elementor-11291 .elementor-element.elementor-element-660d97e{text-align:center;}.elementor-11291 .elementor-element.elementor-element-ab430e0{--n-menu-heading-justify-content:center;--n-menu-title-flex-grow:initial;--n-menu-title-justify-content:initial;--n-menu-title-justify-content-mobile:center;width:var( --container-widget-width, 8vw );max-width:8vw;--container-widget-width:8vw;--container-widget-flex-grow:0;top:24vh;z-index:100000;--n-menu-title-padding:0 0 0 0;--n-menu-icon-gap:0px;}.elementor-11291 .elementor-element.elementor-element-ab430e0.elementor-element{--align-self:center;}body:not(.rtl) .elementor-11291 .elementor-element.elementor-element-ab430e0{left:-0.3vw;}body.rtl .elementor-11291 .elementor-element.elementor-element-ab430e0{right:-0.3vw;}}@media(min-width:768px){.elementor-11291 .elementor-element.elementor-element-1a632544{--width:100vw;}.elementor-11291 .elementor-element.elementor-element-348f1a93{--width:100%;}.elementor-11291 .elementor-element.elementor-element-59713271{--width:100vw;}.elementor-11291 .elementor-element.elementor-element-5e3d1bdf{--width:13vw;}.elementor-11291 .elementor-element.elementor-element-7638d0ef{--width:16vw;}.elementor-11291 .elementor-element.elementor-element-7d1172f2{--width:100%;}.elementor-11291 .elementor-element.elementor-element-2f903715{--width:70.5vw;}.elementor-11291 .elementor-element.elementor-element-6ad7a430{--width:70.5vw;}.elementor-11291 .elementor-element.elementor-element-12bf0bcc{--width:62vw;}.elementor-11291 .elementor-element.elementor-element-6fc4095d{--width:66vw;}.elementor-11291 .elementor-element.elementor-element-e27ee8e{--width:41vw;}.elementor-11291 .elementor-element.elementor-element-da0f79d{--width:41vw;}.elementor-11291 .elementor-element.elementor-element-6cfdea91{--width:70.5vw;}.elementor-11291 .elementor-element.elementor-element-6a267e1a{--width:70.5vw;}.elementor-11291 .elementor-element.elementor-element-1badc8bc{--width:60vw;}.elementor-11291 .elementor-element.elementor-element-39c9dd9e{--width:34vw;}.elementor-11291 .elementor-element.elementor-element-63b9becf{--width:34vw;}.elementor-11291 .elementor-element.elementor-element-69b4e23d{--width:60vw;}}@media(max-width:1366px) and (min-width:768px){.elementor-11291 .elementor-element.elementor-element-17258b1a{--width:100vw;}.elementor-11291 .elementor-element.elementor-element-348f1a93{--width:100%;}.elementor-11291 .elementor-element.elementor-element-59713271{--width:100%;}.elementor-11291 .elementor-element.elementor-element-7638d0ef{--width:17.5vw;}.elementor-11291 .elementor-element.elementor-element-2f903715{--width:78vw;}.elementor-11291 .elementor-element.elementor-element-6ad7a430{--width:78vw;}.elementor-11291 .elementor-element.elementor-element-12bf0bcc{--width:72vw;}.elementor-11291 .elementor-element.elementor-element-6fc4095d{--width:73vw;}.elementor-11291 .elementor-element.elementor-element-6cfdea91{--width:78vw;}.elementor-11291 .elementor-element.elementor-element-6a267e1a{--width:78vw;}.elementor-11291 .elementor-element.elementor-element-1badc8bc{--width:73vw;}.elementor-11291 .elementor-element.elementor-element-39c9dd9e{--width:36vw;}.elementor-11291 .elementor-element.elementor-element-63b9becf{--width:36vw;}.elementor-11291 .elementor-element.elementor-element-69b4e23d{--width:71vw;}}@media(max-width:1200px) and (min-width:768px){.elementor-11291 .elementor-element.elementor-element-348f1a93{--width:100%;}.elementor-11291 .elementor-element.elementor-element-7638d0ef{--width:17.5vw;}.elementor-11291 .elementor-element.elementor-element-2f903715{--width:82vw;}.elementor-11291 .elementor-element.elementor-element-6ad7a430{--width:82vw;}.elementor-11291 .elementor-element.elementor-element-12bf0bcc{--width:75vw;}.elementor-11291 .elementor-element.elementor-element-6fc4095d{--width:80vw;}.elementor-11291 .elementor-element.elementor-element-6cfdea91{--width:82vw;}.elementor-11291 .elementor-element.elementor-element-6a267e1a{--width:82vw;}.elementor-11291 .elementor-element.elementor-element-1badc8bc{--width:80vw;}.elementor-11291 .elementor-element.elementor-element-39c9dd9e{--width:42vw;}.elementor-11291 .elementor-element.elementor-element-63b9becf{--width:42vw;}}@media(max-width:1024px) and (min-width:768px){.elementor-11291 .elementor-element.elementor-element-348f1a93{--width:100%;}.elementor-11291 .elementor-element.elementor-element-59713271{--width:100%;}.elementor-11291 .elementor-element.elementor-element-5e3d1bdf{--width:15vw;}}/* Start custom CSS for container, class: .elementor-element-2f903715 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-2f903715{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-2f903715::before,
.elementor-11291 .elementor-element.elementor-element-2f903715::after,
.elementor-11291 .elementor-element.elementor-element-2f903715 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-36a2656a *//* ================== MODULO CONTATTACI ================== */

/* Etichetta del campo Messaggio centrata */
.kx-contact-form .elementor-field-group-field_d3eb2c5 > label {
  display: block;
  text-align: center;
  width: 100%;
}

/* ==== Checkbox Privacy – centratura + box più grande + Nasalization ==== */
:root {
  --acc-check-scale: 1.35;   /* <-- aumenta/diminuisci la dimensione della box */
  --acc-gap: .6em;           /* spazio tra box e testo */
  --font-accent: "nasalization","futura-pt",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --acc-size: clamp(10px, 1.1vw, 12px);
}

/* Contenitore dell’accettazione */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--acc-gap) !important;
  margin: .6vw 0 !important;
}

/* Box checkbox più grande */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"] {
  transform: scale(var(--acc-check-scale));
  transform-origin: center;
  margin: 0;
  accent-color: #000;
  border-radius: 4px;
}

/* Testo label */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label,
.kx-contact-form .elementor-field-group-field_3ad81a3 .elementor-field-option label,
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label * {
  font-family: var(--font-accent) !important;
  font-size: var(--acc-size) !important;
  line-height: 1.1 !important;
  letter-spacing: .02em;
  margin: 0;
  cursor: pointer;
}

/* Focus accessibile */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(0,210,255,.6);
  outline-offset: 2px;
}

/* Spazio sopra il pulsante Invia */
.kx-contact-form .e-form__buttons {
  margin-top: var(--btn-gap, 0.2vw) !important;
}

/* Pulsante “vetro” + gradiente hover */
.kx-contact-form .e-form__buttons .elementor-button {
  position: relative;
  overflow: hidden;
  border: 3px solid #000 !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #000 !important;
  border-radius: 9999px;
  padding: 0 0;
  transition: color 0s ease, box-shadow 0s ease;
  isolation: isolate;
}

/* Testo sopra al gradiente */
.kx-contact-form .e-form__buttons .elementor-button .elementor-button-text {
  position: relative;
  z-index: 1;
}

/* Gradiente in hover */
.kx-contact-form .e-form__buttons .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #00ddff, #ff00d4);
  opacity: 0;
  transition: opacity .25s ease;
  z-index: 0;
}
.kx-contact-form .e-form__buttons .elementor-button:hover::before,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible::before {
  opacity: 1;
}

/* Hover/focus → testo bianco */
.kx-contact-form .e-form__buttons .elementor-button:hover,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible {
  color: #fff !important;
  box-shadow: 0 0 0px rgba(0,210,255,.25), 0 0 0px rgba(255,0,212,.25);
}

/* Nasconde messaggio di successo */
.kx-contact-form .elementor-message-success,
.kx-contact-form .e-form__success-message {
  display: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ad7a430 *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6ad7a430{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6ad7a430::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6ad7a430 .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6ad7a430{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e27ee8e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-e27ee8e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:50px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-e27ee8e::before,
.elementor-11291 .elementor-element.elementor-element-e27ee8e::after,
.elementor-11291 .elementor-element.elementor-element-e27ee8e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for search, class: .elementor-element-14bf608 *//* ===== SEARCH — pannello centrato full-page, blur, 5 colonne fisse su desktop/laptop ===== */

/* Contenitore “ancora” del campo */
.e-n-menu-content .search-anchor{
  position: relative;
  overflow: visible;
}

/* 1) Input centrato + spazio riservato alla X (regolabile) */
.e-n-menu-content .e-search-input-wrapper{ position: relative; }
.e-n-menu-content .e-search-input{
  text-align: center !important;
  padding-right: var(--sr-clear-pr, 2.2em) !important; /* distanza testo ↔ X */
}
.e-n-menu-content .e-search-input::placeholder{ text-align: center; }

/* X (clear) leggermente più bassa */
.e-n-menu-content .e-search-input-wrapper > .e-font-icon-svg.e-fas-times,
.e-n-menu-content .e-search-input-wrapper > .e-search-clear{
  position: absolute !important;
  right: var(--sr-clear-right, .6rem) !important;
  top: var(--sr-clear-top, 56%) !important;
  transform: translateY(-50%) !important;
  pointer-events: auto;
  cursor: pointer;
}

/* 2) Wrapper risultati: centrato rispetto alla pagina (Elementor gestisce il top) */
.e-n-menu-content .e-search-results-container{
  position: absolute !important;               /* scorre con la pagina */
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  right: auto !important;
  background: transparent !important;
  z-index: 999999 !important;
  height: auto !important;
}

/* 3) Pannello risultati: blur + bordo bianco + margini orizzontali */
.e-n-menu-content .e-search-results{
  /* margine laterale “elastico” che si restringe su laptop */
  --sr-mx: clamp(16px, 4vw, 72px);
  /* gap “elastico” tra card */
  --sr-gap: clamp(10px, 1.2vw, 20px);

  width: calc(100vw - (2 * var(--sr-mx))) !important;
  margin: 0 auto !important;
  padding: clamp(10px, 1.2vw, 22px) clamp(10px, 1.2vw, 22px) clamp(16px, 2vw, 32px) !important;

  border: 4px solid #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 36px rgba(0,0,0,.18) !important;

  background: linear-gradient(135deg,
              rgba(255,255,255,.62) 0%,
              rgba(255,255,255,.48) 60%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(140%);
          backdrop-filter: blur(18px) saturate(140%);
  isolation: isolate;

  max-height: none !important;   /* niente scrollbar interna */
  overflow: visible !important;  /* scrolla la pagina */
}

/* Fallback se manca il backdrop-filter */
@supports not ((-webkit-backdrop-filter: none) or (backdrop-filter: none)){
  .e-n-menu-content .e-search-results{ background: rgba(255,255,255,.78) !important; }
}

/* 4) Griglia risultati: SEMPRE 5 colonne su desktop/laptop (ridimensionate) */
.e-n-menu-content .e-search-results-list{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: var(--sr-gap) !important;
  width: 100% !important;
  margin: 0 auto !important;
  align-items: stretch !important;
  justify-items: center !important;
}

/* Reset aggressivo di width/margini imposti dal loop per farci stare 5 card */
.e-n-menu-content .e-search-results-list .e-loop-item{
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  display: block !important;
}
.e-n-menu-content .e-search-results-list .e-loop-item > a.elementor-element.e-con{
  width: 100% !important;               /* niente calc() che “mangia” spazio */
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;                 /* annulla i 2vw auto del template */
  padding: 0 !important;
  display: block !important;
}

/* Immagini dentro la card */
.e-n-menu-content .e-search-results-list .e-loop-item img{
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: cover;
}

/* ===== Breakpoint SOLO per i tablet/phone ===== */

/* Tablet: passa a 4 colonne */
@media (max-width: 1024px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(12px, 3vw, 48px);
    --sr-gap: clamp(8px, 1vw, 16px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Tablet piccolo: 3 colonne */
@media (max-width: 900px){
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Mobile: 2 colonne */
@media (max-width: 768px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(10px, 2.5vw, 32px);
    --sr-gap: clamp(8px, 1.2vw, 14px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-da0f79d *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-da0f79d{
  /* parametri rapidi */
  --r:50px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.95;       /* opacità vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-da0f79d::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-da0f79d .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-da0f79d{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6cfdea91 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-6cfdea91{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-6cfdea91::before,
.elementor-11291 .elementor-element.elementor-element-6cfdea91::after,
.elementor-11291 .elementor-element.elementor-element-6cfdea91 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for login, class: .elementor-element-4e3aa40e *//* ================== SCOPE: SOLO dentro il widget con classe .kx-login ================== */
.kx-login{
  /* —— Occhio —— */
  --eye-size: 20px;         /* misura icona occhio */
  --eye-right: 10px;        /* distanza dal bordo destro del campo */
  --eye-color: #000;        /* colore occhio + linea obliqua */

  /* —— Riga “Ricordami | Mostra password” —— */
  --row-gap: 1rem;          /* spazio tra i due blocchi */
  --row-mt: .35rem;         /* margine sopra riga */
  --row-mb: .25rem;         /* margine sotto riga */

  /* —— Checkbox —— */
  --cb-scale: 1.35;         /* dimensione checkbox */
  --cb-accent: #000;        /* colore riempimento quando spuntata */

  /* —— Testo label (Ricordami / Mostra password) —— */
  --label-color: #111;      /* puoi cambiare */

  /* —— Link "Hai perso la password? | Registrati" —— */
  --links-mb: 0;
}

/* Wrapper del campo password */
.kx-login .kx-pwd-wrap{
  position: relative; /* riferimento per l'occhio */
}

/* Spazio a destra per non far sovrapporre il testo all'occhio */
.kx-login .kx-pwd-wrap input[type="password"],
.kx-login .kx-pwd-wrap input[type="text"]{
  padding-right: calc(var(--eye-size) + var(--eye-right) + 8px) !important;
}

/* Occhio – centrato verticalmente in modo fluido */
.kx-login .toggle-eye{
  position: absolute;
  inset-inline-end: var(--eye-right);
  /* blocco verticale: occupa tutta l’altezza del wrapper */
  top: 1vw;
  bottom: 0;
  /* (facoltativo) per browser con proprietà logiche:
     inset-block: 0; */

  display: flex;
  align-items: center;      /* <-- centratura verticale robusta */
  justify-content: center;
  width: var(--eye-size);
  cursor: pointer;
  color: var(--eye-color);
}

/* Linea obliqua ON/OFF sopra l’occhio */
.kx-login .toggle-eye::after{
  content:"";
  position:absolute;
  left: 50%;
  top: 50%;
  width: 140%;
  height: 2px;
  background: currentColor;
  transform-origin: center;
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(0);
  border-radius: 2px;
  transition: transform .12s ease;
  pointer-events:none;
}
.kx-login .toggle-eye.active::after{
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(1);
}


/* Checkbox più grandi e con riempimento personalizzabile */
.kx-login input[type="checkbox"]{
  accent-color: var(--cb-accent);
  transform: scale(var(--cb-scale));
  transform-origin: center;
  margin: 0;
}

/* Riga “Ricordami | Mostra password” */
.kx-login .elementor-remember-me{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--row-gap);
  margin-top: var(--row-mt);
  margin-bottom: var(--row-mb);
}
.kx-login .elementor-remember-me label{
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin: 0;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: var(--label-color) !important;
}
.kx-login .kx-showpwd-toggle{ margin-left: auto; }

/* blocco link finale (layout + base) */
.kx-login .elementor-form .elementor-form-fields-wrapper
  > .elementor-field-group.elementor-col-100:last-child{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.35rem;
  text-align:center;
  margin-top: -0.3vw;
  margin-bottom: var(--links-mb);
}
.kx-login .elementor-lost-password,
.kx-login .elementor-register,
.kx-login .elementor-login-separator{
  display:inline-block;
  vertical-align:middle;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: #000000 !important;
  text-decoration: none !important;
  letter-spacing: inherit !important;
}
.kx-login .elementor-login-separator{
  margin: 0 .35rem !important;
  opacity: .9;
}

/* HOVER: testo a gradiente, underline nero costante */
.kx-login .elementor-lost-password:hover,
.kx-login .elementor-register:hover,
.kx-login .elementor-lost-password:focus-visible,
.kx-login .elementor-register:focus-visible{
  background-image: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent; /* Chrome/Safari */
  color: transparent;                   /* Firefox */
  text-decoration-line: underline !important;
  text-decoration-color: #000 !important;
  text-decoration-thickness: 1.5px;
}  /* <-- QUESTA GRAFFA MANCAVA */

/* il separatore " | " non cambia in hover */
.kx-login .elementor-login-separator:hover{
  color:#000 !important;
  background:none !important;
  -webkit-text-fill-color: initial !important;
}

/* Pulsante ACCEDI */
.kx-login .elementor-button{
  background: #0000 !important;
  color: #000 !important;
  border: 2.5px solid #000 !important;
  border-radius: 25px !important;
  font-family: "nasalization", sans-serif !important;
  font-weight: 100 !important;
  font-size: 1.2vw !important;
  padding: 0 0 !important;
  transition: background 0s ease, color 0s ease !important;
}
.kx-login .elementor-button:hover,
.kx-login .elementor-button:focus-visible{
  background: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%) !important;
  color: #fff !important;
  border: 0.15vw solid #000 !important;
}

/* Spazio sopra al pulsante Accedi */
.kx-login .elementor-form .elementor-field-group.elementor-field-type-submit{
  margin-top: 1vw;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6a267e1a *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6a267e1a{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6a267e1a::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6a267e1a .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6a267e1a{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-39c9dd9e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::before,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::after,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-63b9becf *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-63b9becf{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-63b9becf::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-63b9becf .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-63b9becf{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2f903715 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-2f903715{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-2f903715::before,
.elementor-11291 .elementor-element.elementor-element-2f903715::after,
.elementor-11291 .elementor-element.elementor-element-2f903715 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-36a2656a *//* ================== MODULO CONTATTACI ================== */

/* Etichetta del campo Messaggio centrata */
.kx-contact-form .elementor-field-group-field_d3eb2c5 > label {
  display: block;
  text-align: center;
  width: 100%;
}

/* ==== Checkbox Privacy – centratura + box più grande + Nasalization ==== */
:root {
  --acc-check-scale: 1.35;   /* <-- aumenta/diminuisci la dimensione della box */
  --acc-gap: .6em;           /* spazio tra box e testo */
  --font-accent: "nasalization","futura-pt",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --acc-size: clamp(10px, 1.1vw, 12px);
}

/* Contenitore dell’accettazione */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--acc-gap) !important;
  margin: .6vw 0 !important;
}

/* Box checkbox più grande */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"] {
  transform: scale(var(--acc-check-scale));
  transform-origin: center;
  margin: 0;
  accent-color: #000;
  border-radius: 4px;
}

/* Testo label */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label,
.kx-contact-form .elementor-field-group-field_3ad81a3 .elementor-field-option label,
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label * {
  font-family: var(--font-accent) !important;
  font-size: var(--acc-size) !important;
  line-height: 1.1 !important;
  letter-spacing: .02em;
  margin: 0;
  cursor: pointer;
}

/* Focus accessibile */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(0,210,255,.6);
  outline-offset: 2px;
}

/* Spazio sopra il pulsante Invia */
.kx-contact-form .e-form__buttons {
  margin-top: var(--btn-gap, 0.2vw) !important;
}

/* Pulsante “vetro” + gradiente hover */
.kx-contact-form .e-form__buttons .elementor-button {
  position: relative;
  overflow: hidden;
  border: 3px solid #000 !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #000 !important;
  border-radius: 9999px;
  padding: 0 0;
  transition: color 0s ease, box-shadow 0s ease;
  isolation: isolate;
}

/* Testo sopra al gradiente */
.kx-contact-form .e-form__buttons .elementor-button .elementor-button-text {
  position: relative;
  z-index: 1;
}

/* Gradiente in hover */
.kx-contact-form .e-form__buttons .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #00ddff, #ff00d4);
  opacity: 0;
  transition: opacity .25s ease;
  z-index: 0;
}
.kx-contact-form .e-form__buttons .elementor-button:hover::before,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible::before {
  opacity: 1;
}

/* Hover/focus → testo bianco */
.kx-contact-form .e-form__buttons .elementor-button:hover,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible {
  color: #fff !important;
  box-shadow: 0 0 0px rgba(0,210,255,.25), 0 0 0px rgba(255,0,212,.25);
}

/* Nasconde messaggio di successo */
.kx-contact-form .elementor-message-success,
.kx-contact-form .e-form__success-message {
  display: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ad7a430 *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6ad7a430{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6ad7a430::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6ad7a430 .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6ad7a430{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e27ee8e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-e27ee8e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:50px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-e27ee8e::before,
.elementor-11291 .elementor-element.elementor-element-e27ee8e::after,
.elementor-11291 .elementor-element.elementor-element-e27ee8e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for search, class: .elementor-element-14bf608 *//* ===== SEARCH — pannello centrato full-page, blur, 5 colonne fisse su desktop/laptop ===== */

/* Contenitore “ancora” del campo */
.e-n-menu-content .search-anchor{
  position: relative;
  overflow: visible;
}

/* 1) Input centrato + spazio riservato alla X (regolabile) */
.e-n-menu-content .e-search-input-wrapper{ position: relative; }
.e-n-menu-content .e-search-input{
  text-align: center !important;
  padding-right: var(--sr-clear-pr, 2.2em) !important; /* distanza testo ↔ X */
}
.e-n-menu-content .e-search-input::placeholder{ text-align: center; }

/* X (clear) leggermente più bassa */
.e-n-menu-content .e-search-input-wrapper > .e-font-icon-svg.e-fas-times,
.e-n-menu-content .e-search-input-wrapper > .e-search-clear{
  position: absolute !important;
  right: var(--sr-clear-right, .6rem) !important;
  top: var(--sr-clear-top, 56%) !important;
  transform: translateY(-50%) !important;
  pointer-events: auto;
  cursor: pointer;
}

/* 2) Wrapper risultati: centrato rispetto alla pagina (Elementor gestisce il top) */
.e-n-menu-content .e-search-results-container{
  position: absolute !important;               /* scorre con la pagina */
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  right: auto !important;
  background: transparent !important;
  z-index: 999999 !important;
  height: auto !important;
}

/* 3) Pannello risultati: blur + bordo bianco + margini orizzontali */
.e-n-menu-content .e-search-results{
  /* margine laterale “elastico” che si restringe su laptop */
  --sr-mx: clamp(16px, 4vw, 72px);
  /* gap “elastico” tra card */
  --sr-gap: clamp(10px, 1.2vw, 20px);

  width: calc(100vw - (2 * var(--sr-mx))) !important;
  margin: 0 auto !important;
  padding: clamp(10px, 1.2vw, 22px) clamp(10px, 1.2vw, 22px) clamp(16px, 2vw, 32px) !important;

  border: 4px solid #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 36px rgba(0,0,0,.18) !important;

  background: linear-gradient(135deg,
              rgba(255,255,255,.62) 0%,
              rgba(255,255,255,.48) 60%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(140%);
          backdrop-filter: blur(18px) saturate(140%);
  isolation: isolate;

  max-height: none !important;   /* niente scrollbar interna */
  overflow: visible !important;  /* scrolla la pagina */
}

/* Fallback se manca il backdrop-filter */
@supports not ((-webkit-backdrop-filter: none) or (backdrop-filter: none)){
  .e-n-menu-content .e-search-results{ background: rgba(255,255,255,.78) !important; }
}

/* 4) Griglia risultati: SEMPRE 5 colonne su desktop/laptop (ridimensionate) */
.e-n-menu-content .e-search-results-list{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: var(--sr-gap) !important;
  width: 100% !important;
  margin: 0 auto !important;
  align-items: stretch !important;
  justify-items: center !important;
}

/* Reset aggressivo di width/margini imposti dal loop per farci stare 5 card */
.e-n-menu-content .e-search-results-list .e-loop-item{
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  display: block !important;
}
.e-n-menu-content .e-search-results-list .e-loop-item > a.elementor-element.e-con{
  width: 100% !important;               /* niente calc() che “mangia” spazio */
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;                 /* annulla i 2vw auto del template */
  padding: 0 !important;
  display: block !important;
}

/* Immagini dentro la card */
.e-n-menu-content .e-search-results-list .e-loop-item img{
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: cover;
}

/* ===== Breakpoint SOLO per i tablet/phone ===== */

/* Tablet: passa a 4 colonne */
@media (max-width: 1024px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(12px, 3vw, 48px);
    --sr-gap: clamp(8px, 1vw, 16px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Tablet piccolo: 3 colonne */
@media (max-width: 900px){
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Mobile: 2 colonne */
@media (max-width: 768px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(10px, 2.5vw, 32px);
    --sr-gap: clamp(8px, 1.2vw, 14px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-da0f79d *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-da0f79d{
  /* parametri rapidi */
  --r:50px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.95;       /* opacità vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-da0f79d::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-da0f79d .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-da0f79d{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6cfdea91 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-6cfdea91{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-6cfdea91::before,
.elementor-11291 .elementor-element.elementor-element-6cfdea91::after,
.elementor-11291 .elementor-element.elementor-element-6cfdea91 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for login, class: .elementor-element-4e3aa40e *//* ================== SCOPE: SOLO dentro il widget con classe .kx-login ================== */
.kx-login{
  /* —— Occhio —— */
  --eye-size: 20px;         /* misura icona occhio */
  --eye-right: 10px;        /* distanza dal bordo destro del campo */
  --eye-color: #000;        /* colore occhio + linea obliqua */

  /* —— Riga “Ricordami | Mostra password” —— */
  --row-gap: 1rem;          /* spazio tra i due blocchi */
  --row-mt: .35rem;         /* margine sopra riga */
  --row-mb: .25rem;         /* margine sotto riga */

  /* —— Checkbox —— */
  --cb-scale: 1.35;         /* dimensione checkbox */
  --cb-accent: #000;        /* colore riempimento quando spuntata */

  /* —— Testo label (Ricordami / Mostra password) —— */
  --label-color: #111;      /* puoi cambiare */

  /* —— Link "Hai perso la password? | Registrati" —— */
  --links-mb: 0;
}

/* Wrapper del campo password */
.kx-login .kx-pwd-wrap{
  position: relative; /* riferimento per l'occhio */
}

/* Spazio a destra per non far sovrapporre il testo all'occhio */
.kx-login .kx-pwd-wrap input[type="password"],
.kx-login .kx-pwd-wrap input[type="text"]{
  padding-right: calc(var(--eye-size) + var(--eye-right) + 8px) !important;
}

/* Occhio – centrato verticalmente in modo fluido */
.kx-login .toggle-eye{
  position: absolute;
  inset-inline-end: var(--eye-right);
  /* blocco verticale: occupa tutta l’altezza del wrapper */
  top: 1vw;
  bottom: 0;
  /* (facoltativo) per browser con proprietà logiche:
     inset-block: 0; */

  display: flex;
  align-items: center;      /* <-- centratura verticale robusta */
  justify-content: center;
  width: var(--eye-size);
  cursor: pointer;
  color: var(--eye-color);
}

/* Linea obliqua ON/OFF sopra l’occhio */
.kx-login .toggle-eye::after{
  content:"";
  position:absolute;
  left: 50%;
  top: 50%;
  width: 140%;
  height: 2px;
  background: currentColor;
  transform-origin: center;
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(0);
  border-radius: 2px;
  transition: transform .12s ease;
  pointer-events:none;
}
.kx-login .toggle-eye.active::after{
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(1);
}


/* Checkbox più grandi e con riempimento personalizzabile */
.kx-login input[type="checkbox"]{
  accent-color: var(--cb-accent);
  transform: scale(var(--cb-scale));
  transform-origin: center;
  margin: 0;
}

/* Riga “Ricordami | Mostra password” */
.kx-login .elementor-remember-me{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--row-gap);
  margin-top: var(--row-mt);
  margin-bottom: var(--row-mb);
}
.kx-login .elementor-remember-me label{
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin: 0;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: var(--label-color) !important;
}
.kx-login .kx-showpwd-toggle{ margin-left: auto; }

/* blocco link finale (layout + base) */
.kx-login .elementor-form .elementor-form-fields-wrapper
  > .elementor-field-group.elementor-col-100:last-child{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.35rem;
  text-align:center;
  margin-top: -0.3vw;
  margin-bottom: var(--links-mb);
}
.kx-login .elementor-lost-password,
.kx-login .elementor-register,
.kx-login .elementor-login-separator{
  display:inline-block;
  vertical-align:middle;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: #000000 !important;
  text-decoration: none !important;
  letter-spacing: inherit !important;
}
.kx-login .elementor-login-separator{
  margin: 0 .35rem !important;
  opacity: .9;
}

/* HOVER: testo a gradiente, underline nero costante */
.kx-login .elementor-lost-password:hover,
.kx-login .elementor-register:hover,
.kx-login .elementor-lost-password:focus-visible,
.kx-login .elementor-register:focus-visible{
  background-image: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent; /* Chrome/Safari */
  color: transparent;                   /* Firefox */
  text-decoration-line: underline !important;
  text-decoration-color: #000 !important;
  text-decoration-thickness: 1.5px;
}  /* <-- QUESTA GRAFFA MANCAVA */

/* il separatore " | " non cambia in hover */
.kx-login .elementor-login-separator:hover{
  color:#000 !important;
  background:none !important;
  -webkit-text-fill-color: initial !important;
}

/* Pulsante ACCEDI */
.kx-login .elementor-button{
  background: #0000 !important;
  color: #000 !important;
  border: 2.5px solid #000 !important;
  border-radius: 25px !important;
  font-family: "nasalization", sans-serif !important;
  font-weight: 100 !important;
  font-size: 1.2vw !important;
  padding: 0 0 !important;
  transition: background 0s ease, color 0s ease !important;
}
.kx-login .elementor-button:hover,
.kx-login .elementor-button:focus-visible{
  background: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%) !important;
  color: #fff !important;
  border: 0.15vw solid #000 !important;
}

/* Spazio sopra al pulsante Accedi */
.kx-login .elementor-form .elementor-field-group.elementor-field-type-submit{
  margin-top: 1vw;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6a267e1a *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6a267e1a{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6a267e1a::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6a267e1a .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6a267e1a{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-39c9dd9e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::before,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::after,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-63b9becf *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-63b9becf{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-63b9becf::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-63b9becf .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-63b9becf{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2f903715 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-2f903715{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-2f903715::before,
.elementor-11291 .elementor-element.elementor-element-2f903715::after,
.elementor-11291 .elementor-element.elementor-element-2f903715 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-36a2656a *//* ================== MODULO CONTATTACI ================== */

/* Etichetta del campo Messaggio centrata */
.kx-contact-form .elementor-field-group-field_d3eb2c5 > label {
  display: block;
  text-align: center;
  width: 100%;
}

/* ==== Checkbox Privacy – centratura + box più grande + Nasalization ==== */
:root {
  --acc-check-scale: 1.35;   /* <-- aumenta/diminuisci la dimensione della box */
  --acc-gap: .6em;           /* spazio tra box e testo */
  --font-accent: "nasalization","futura-pt",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --acc-size: clamp(10px, 1.1vw, 12px);
}

/* Contenitore dell’accettazione */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--acc-gap) !important;
  margin: .6vw 0 !important;
}

/* Box checkbox più grande */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"] {
  transform: scale(var(--acc-check-scale));
  transform-origin: center;
  margin: 0;
  accent-color: #000;
  border-radius: 4px;
}

/* Testo label */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label,
.kx-contact-form .elementor-field-group-field_3ad81a3 .elementor-field-option label,
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label * {
  font-family: var(--font-accent) !important;
  font-size: var(--acc-size) !important;
  line-height: 1.1 !important;
  letter-spacing: .02em;
  margin: 0;
  cursor: pointer;
}

/* Focus accessibile */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(0,210,255,.6);
  outline-offset: 2px;
}

/* Spazio sopra il pulsante Invia */
.kx-contact-form .e-form__buttons {
  margin-top: var(--btn-gap, 0.2vw) !important;
}

/* Pulsante “vetro” + gradiente hover */
.kx-contact-form .e-form__buttons .elementor-button {
  position: relative;
  overflow: hidden;
  border: 3px solid #000 !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #000 !important;
  border-radius: 9999px;
  padding: 0 0;
  transition: color 0s ease, box-shadow 0s ease;
  isolation: isolate;
}

/* Testo sopra al gradiente */
.kx-contact-form .e-form__buttons .elementor-button .elementor-button-text {
  position: relative;
  z-index: 1;
}

/* Gradiente in hover */
.kx-contact-form .e-form__buttons .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #00ddff, #ff00d4);
  opacity: 0;
  transition: opacity .25s ease;
  z-index: 0;
}
.kx-contact-form .e-form__buttons .elementor-button:hover::before,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible::before {
  opacity: 1;
}

/* Hover/focus → testo bianco */
.kx-contact-form .e-form__buttons .elementor-button:hover,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible {
  color: #fff !important;
  box-shadow: 0 0 0px rgba(0,210,255,.25), 0 0 0px rgba(255,0,212,.25);
}

/* Nasconde messaggio di successo */
.kx-contact-form .elementor-message-success,
.kx-contact-form .e-form__success-message {
  display: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ad7a430 *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6ad7a430{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6ad7a430::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6ad7a430 .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6ad7a430{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e27ee8e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-e27ee8e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:50px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-e27ee8e::before,
.elementor-11291 .elementor-element.elementor-element-e27ee8e::after,
.elementor-11291 .elementor-element.elementor-element-e27ee8e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for search, class: .elementor-element-14bf608 *//* ===== SEARCH — pannello centrato full-page, blur, 5 colonne fisse su desktop/laptop ===== */

/* Contenitore “ancora” del campo */
.e-n-menu-content .search-anchor{
  position: relative;
  overflow: visible;
}

/* 1) Input centrato + spazio riservato alla X (regolabile) */
.e-n-menu-content .e-search-input-wrapper{ position: relative; }
.e-n-menu-content .e-search-input{
  text-align: center !important;
  padding-right: var(--sr-clear-pr, 2.2em) !important; /* distanza testo ↔ X */
}
.e-n-menu-content .e-search-input::placeholder{ text-align: center; }

/* X (clear) leggermente più bassa */
.e-n-menu-content .e-search-input-wrapper > .e-font-icon-svg.e-fas-times,
.e-n-menu-content .e-search-input-wrapper > .e-search-clear{
  position: absolute !important;
  right: var(--sr-clear-right, .6rem) !important;
  top: var(--sr-clear-top, 56%) !important;
  transform: translateY(-50%) !important;
  pointer-events: auto;
  cursor: pointer;
}

/* 2) Wrapper risultati: centrato rispetto alla pagina (Elementor gestisce il top) */
.e-n-menu-content .e-search-results-container{
  position: absolute !important;               /* scorre con la pagina */
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  right: auto !important;
  background: transparent !important;
  z-index: 999999 !important;
  height: auto !important;
}

/* 3) Pannello risultati: blur + bordo bianco + margini orizzontali */
.e-n-menu-content .e-search-results{
  /* margine laterale “elastico” che si restringe su laptop */
  --sr-mx: clamp(16px, 4vw, 72px);
  /* gap “elastico” tra card */
  --sr-gap: clamp(10px, 1.2vw, 20px);

  width: calc(100vw - (2 * var(--sr-mx))) !important;
  margin: 0 auto !important;
  padding: clamp(10px, 1.2vw, 22px) clamp(10px, 1.2vw, 22px) clamp(16px, 2vw, 32px) !important;

  border: 4px solid #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 36px rgba(0,0,0,.18) !important;

  background: linear-gradient(135deg,
              rgba(255,255,255,.62) 0%,
              rgba(255,255,255,.48) 60%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(140%);
          backdrop-filter: blur(18px) saturate(140%);
  isolation: isolate;

  max-height: none !important;   /* niente scrollbar interna */
  overflow: visible !important;  /* scrolla la pagina */
}

/* Fallback se manca il backdrop-filter */
@supports not ((-webkit-backdrop-filter: none) or (backdrop-filter: none)){
  .e-n-menu-content .e-search-results{ background: rgba(255,255,255,.78) !important; }
}

/* 4) Griglia risultati: SEMPRE 5 colonne su desktop/laptop (ridimensionate) */
.e-n-menu-content .e-search-results-list{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: var(--sr-gap) !important;
  width: 100% !important;
  margin: 0 auto !important;
  align-items: stretch !important;
  justify-items: center !important;
}

/* Reset aggressivo di width/margini imposti dal loop per farci stare 5 card */
.e-n-menu-content .e-search-results-list .e-loop-item{
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  display: block !important;
}
.e-n-menu-content .e-search-results-list .e-loop-item > a.elementor-element.e-con{
  width: 100% !important;               /* niente calc() che “mangia” spazio */
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;                 /* annulla i 2vw auto del template */
  padding: 0 !important;
  display: block !important;
}

/* Immagini dentro la card */
.e-n-menu-content .e-search-results-list .e-loop-item img{
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: cover;
}

/* ===== Breakpoint SOLO per i tablet/phone ===== */

/* Tablet: passa a 4 colonne */
@media (max-width: 1024px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(12px, 3vw, 48px);
    --sr-gap: clamp(8px, 1vw, 16px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Tablet piccolo: 3 colonne */
@media (max-width: 900px){
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Mobile: 2 colonne */
@media (max-width: 768px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(10px, 2.5vw, 32px);
    --sr-gap: clamp(8px, 1.2vw, 14px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-da0f79d *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-da0f79d{
  /* parametri rapidi */
  --r:50px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.95;       /* opacità vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-da0f79d::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-da0f79d .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-da0f79d{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6cfdea91 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-6cfdea91{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-6cfdea91::before,
.elementor-11291 .elementor-element.elementor-element-6cfdea91::after,
.elementor-11291 .elementor-element.elementor-element-6cfdea91 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for login, class: .elementor-element-4e3aa40e *//* ================== SCOPE: SOLO dentro il widget con classe .kx-login ================== */
.kx-login{
  /* —— Occhio —— */
  --eye-size: 20px;         /* misura icona occhio */
  --eye-right: 10px;        /* distanza dal bordo destro del campo */
  --eye-color: #000;        /* colore occhio + linea obliqua */

  /* —— Riga “Ricordami | Mostra password” —— */
  --row-gap: 1rem;          /* spazio tra i due blocchi */
  --row-mt: .35rem;         /* margine sopra riga */
  --row-mb: .25rem;         /* margine sotto riga */

  /* —— Checkbox —— */
  --cb-scale: 1.35;         /* dimensione checkbox */
  --cb-accent: #000;        /* colore riempimento quando spuntata */

  /* —— Testo label (Ricordami / Mostra password) —— */
  --label-color: #111;      /* puoi cambiare */

  /* —— Link "Hai perso la password? | Registrati" —— */
  --links-mb: 0;
}

/* Wrapper del campo password */
.kx-login .kx-pwd-wrap{
  position: relative; /* riferimento per l'occhio */
}

/* Spazio a destra per non far sovrapporre il testo all'occhio */
.kx-login .kx-pwd-wrap input[type="password"],
.kx-login .kx-pwd-wrap input[type="text"]{
  padding-right: calc(var(--eye-size) + var(--eye-right) + 8px) !important;
}

/* Occhio – centrato verticalmente in modo fluido */
.kx-login .toggle-eye{
  position: absolute;
  inset-inline-end: var(--eye-right);
  /* blocco verticale: occupa tutta l’altezza del wrapper */
  top: 1vw;
  bottom: 0;
  /* (facoltativo) per browser con proprietà logiche:
     inset-block: 0; */

  display: flex;
  align-items: center;      /* <-- centratura verticale robusta */
  justify-content: center;
  width: var(--eye-size);
  cursor: pointer;
  color: var(--eye-color);
}

/* Linea obliqua ON/OFF sopra l’occhio */
.kx-login .toggle-eye::after{
  content:"";
  position:absolute;
  left: 50%;
  top: 50%;
  width: 140%;
  height: 2px;
  background: currentColor;
  transform-origin: center;
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(0);
  border-radius: 2px;
  transition: transform .12s ease;
  pointer-events:none;
}
.kx-login .toggle-eye.active::after{
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(1);
}


/* Checkbox più grandi e con riempimento personalizzabile */
.kx-login input[type="checkbox"]{
  accent-color: var(--cb-accent);
  transform: scale(var(--cb-scale));
  transform-origin: center;
  margin: 0;
}

/* Riga “Ricordami | Mostra password” */
.kx-login .elementor-remember-me{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--row-gap);
  margin-top: var(--row-mt);
  margin-bottom: var(--row-mb);
}
.kx-login .elementor-remember-me label{
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin: 0;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: var(--label-color) !important;
}
.kx-login .kx-showpwd-toggle{ margin-left: auto; }

/* blocco link finale (layout + base) */
.kx-login .elementor-form .elementor-form-fields-wrapper
  > .elementor-field-group.elementor-col-100:last-child{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.35rem;
  text-align:center;
  margin-top: -0.3vw;
  margin-bottom: var(--links-mb);
}
.kx-login .elementor-lost-password,
.kx-login .elementor-register,
.kx-login .elementor-login-separator{
  display:inline-block;
  vertical-align:middle;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: #000000 !important;
  text-decoration: none !important;
  letter-spacing: inherit !important;
}
.kx-login .elementor-login-separator{
  margin: 0 .35rem !important;
  opacity: .9;
}

/* HOVER: testo a gradiente, underline nero costante */
.kx-login .elementor-lost-password:hover,
.kx-login .elementor-register:hover,
.kx-login .elementor-lost-password:focus-visible,
.kx-login .elementor-register:focus-visible{
  background-image: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent; /* Chrome/Safari */
  color: transparent;                   /* Firefox */
  text-decoration-line: underline !important;
  text-decoration-color: #000 !important;
  text-decoration-thickness: 1.5px;
}  /* <-- QUESTA GRAFFA MANCAVA */

/* il separatore " | " non cambia in hover */
.kx-login .elementor-login-separator:hover{
  color:#000 !important;
  background:none !important;
  -webkit-text-fill-color: initial !important;
}

/* Pulsante ACCEDI */
.kx-login .elementor-button{
  background: #0000 !important;
  color: #000 !important;
  border: 2.5px solid #000 !important;
  border-radius: 25px !important;
  font-family: "nasalization", sans-serif !important;
  font-weight: 100 !important;
  font-size: 1.2vw !important;
  padding: 0 0 !important;
  transition: background 0s ease, color 0s ease !important;
}
.kx-login .elementor-button:hover,
.kx-login .elementor-button:focus-visible{
  background: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%) !important;
  color: #fff !important;
  border: 0.15vw solid #000 !important;
}

/* Spazio sopra al pulsante Accedi */
.kx-login .elementor-form .elementor-field-group.elementor-field-type-submit{
  margin-top: 1vw;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6a267e1a *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6a267e1a{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6a267e1a::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6a267e1a .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6a267e1a{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-39c9dd9e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::before,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::after,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-63b9becf *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-63b9becf{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-63b9becf::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-63b9becf .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-63b9becf{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2f903715 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-2f903715{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-2f903715::before,
.elementor-11291 .elementor-element.elementor-element-2f903715::after,
.elementor-11291 .elementor-element.elementor-element-2f903715 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-36a2656a *//* ================== MODULO CONTATTACI ================== */

/* Etichetta del campo Messaggio centrata */
.kx-contact-form .elementor-field-group-field_d3eb2c5 > label {
  display: block;
  text-align: center;
  width: 100%;
}

/* ==== Checkbox Privacy – centratura + box più grande + Nasalization ==== */
:root {
  --acc-check-scale: 1.35;   /* <-- aumenta/diminuisci la dimensione della box */
  --acc-gap: .6em;           /* spazio tra box e testo */
  --font-accent: "nasalization","futura-pt",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --acc-size: clamp(10px, 1.1vw, 12px);
}

/* Contenitore dell’accettazione */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--acc-gap) !important;
  margin: .6vw 0 !important;
}

/* Box checkbox più grande */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"] {
  transform: scale(var(--acc-check-scale));
  transform-origin: center;
  margin: 0;
  accent-color: #000;
  border-radius: 4px;
}

/* Testo label */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label,
.kx-contact-form .elementor-field-group-field_3ad81a3 .elementor-field-option label,
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label * {
  font-family: var(--font-accent) !important;
  font-size: var(--acc-size) !important;
  line-height: 1.1 !important;
  letter-spacing: .02em;
  margin: 0;
  cursor: pointer;
}

/* Focus accessibile */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(0,210,255,.6);
  outline-offset: 2px;
}

/* Spazio sopra il pulsante Invia */
.kx-contact-form .e-form__buttons {
  margin-top: var(--btn-gap, 0.2vw) !important;
}

/* Pulsante “vetro” + gradiente hover */
.kx-contact-form .e-form__buttons .elementor-button {
  position: relative;
  overflow: hidden;
  border: 3px solid #000 !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #000 !important;
  border-radius: 9999px;
  padding: 0 0;
  transition: color 0s ease, box-shadow 0s ease;
  isolation: isolate;
}

/* Testo sopra al gradiente */
.kx-contact-form .e-form__buttons .elementor-button .elementor-button-text {
  position: relative;
  z-index: 1;
}

/* Gradiente in hover */
.kx-contact-form .e-form__buttons .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #00ddff, #ff00d4);
  opacity: 0;
  transition: opacity .25s ease;
  z-index: 0;
}
.kx-contact-form .e-form__buttons .elementor-button:hover::before,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible::before {
  opacity: 1;
}

/* Hover/focus → testo bianco */
.kx-contact-form .e-form__buttons .elementor-button:hover,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible {
  color: #fff !important;
  box-shadow: 0 0 0px rgba(0,210,255,.25), 0 0 0px rgba(255,0,212,.25);
}

/* Nasconde messaggio di successo */
.kx-contact-form .elementor-message-success,
.kx-contact-form .e-form__success-message {
  display: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ad7a430 *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6ad7a430{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6ad7a430::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6ad7a430 .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6ad7a430{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e27ee8e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-e27ee8e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:50px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-e27ee8e::before,
.elementor-11291 .elementor-element.elementor-element-e27ee8e::after,
.elementor-11291 .elementor-element.elementor-element-e27ee8e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for search, class: .elementor-element-14bf608 *//* ===== SEARCH — pannello centrato full-page, blur, 5 colonne fisse su desktop/laptop ===== */

/* Contenitore “ancora” del campo */
.e-n-menu-content .search-anchor{
  position: relative;
  overflow: visible;
}

/* 1) Input centrato + spazio riservato alla X (regolabile) */
.e-n-menu-content .e-search-input-wrapper{ position: relative; }
.e-n-menu-content .e-search-input{
  text-align: center !important;
  padding-right: var(--sr-clear-pr, 2.2em) !important; /* distanza testo ↔ X */
}
.e-n-menu-content .e-search-input::placeholder{ text-align: center; }

/* X (clear) leggermente più bassa */
.e-n-menu-content .e-search-input-wrapper > .e-font-icon-svg.e-fas-times,
.e-n-menu-content .e-search-input-wrapper > .e-search-clear{
  position: absolute !important;
  right: var(--sr-clear-right, .6rem) !important;
  top: var(--sr-clear-top, 56%) !important;
  transform: translateY(-50%) !important;
  pointer-events: auto;
  cursor: pointer;
}

/* 2) Wrapper risultati: centrato rispetto alla pagina (Elementor gestisce il top) */
.e-n-menu-content .e-search-results-container{
  position: absolute !important;               /* scorre con la pagina */
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  right: auto !important;
  background: transparent !important;
  z-index: 999999 !important;
  height: auto !important;
}

/* 3) Pannello risultati: blur + bordo bianco + margini orizzontali */
.e-n-menu-content .e-search-results{
  /* margine laterale “elastico” che si restringe su laptop */
  --sr-mx: clamp(16px, 4vw, 72px);
  /* gap “elastico” tra card */
  --sr-gap: clamp(10px, 1.2vw, 20px);

  width: calc(100vw - (2 * var(--sr-mx))) !important;
  margin: 0 auto !important;
  padding: clamp(10px, 1.2vw, 22px) clamp(10px, 1.2vw, 22px) clamp(16px, 2vw, 32px) !important;

  border: 4px solid #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 36px rgba(0,0,0,.18) !important;

  background: linear-gradient(135deg,
              rgba(255,255,255,.62) 0%,
              rgba(255,255,255,.48) 60%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(140%);
          backdrop-filter: blur(18px) saturate(140%);
  isolation: isolate;

  max-height: none !important;   /* niente scrollbar interna */
  overflow: visible !important;  /* scrolla la pagina */
}

/* Fallback se manca il backdrop-filter */
@supports not ((-webkit-backdrop-filter: none) or (backdrop-filter: none)){
  .e-n-menu-content .e-search-results{ background: rgba(255,255,255,.78) !important; }
}

/* 4) Griglia risultati: SEMPRE 5 colonne su desktop/laptop (ridimensionate) */
.e-n-menu-content .e-search-results-list{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: var(--sr-gap) !important;
  width: 100% !important;
  margin: 0 auto !important;
  align-items: stretch !important;
  justify-items: center !important;
}

/* Reset aggressivo di width/margini imposti dal loop per farci stare 5 card */
.e-n-menu-content .e-search-results-list .e-loop-item{
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  display: block !important;
}
.e-n-menu-content .e-search-results-list .e-loop-item > a.elementor-element.e-con{
  width: 100% !important;               /* niente calc() che “mangia” spazio */
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;                 /* annulla i 2vw auto del template */
  padding: 0 !important;
  display: block !important;
}

/* Immagini dentro la card */
.e-n-menu-content .e-search-results-list .e-loop-item img{
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: cover;
}

/* ===== Breakpoint SOLO per i tablet/phone ===== */

/* Tablet: passa a 4 colonne */
@media (max-width: 1024px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(12px, 3vw, 48px);
    --sr-gap: clamp(8px, 1vw, 16px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Tablet piccolo: 3 colonne */
@media (max-width: 900px){
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Mobile: 2 colonne */
@media (max-width: 768px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(10px, 2.5vw, 32px);
    --sr-gap: clamp(8px, 1.2vw, 14px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-da0f79d *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-da0f79d{
  /* parametri rapidi */
  --r:50px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.95;       /* opacità vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-da0f79d::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-da0f79d .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-da0f79d{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6cfdea91 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-6cfdea91{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-6cfdea91::before,
.elementor-11291 .elementor-element.elementor-element-6cfdea91::after,
.elementor-11291 .elementor-element.elementor-element-6cfdea91 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for login, class: .elementor-element-4e3aa40e *//* ================== SCOPE: SOLO dentro il widget con classe .kx-login ================== */
.kx-login{
  /* —— Occhio —— */
  --eye-size: 20px;         /* misura icona occhio */
  --eye-right: 10px;        /* distanza dal bordo destro del campo */
  --eye-color: #000;        /* colore occhio + linea obliqua */

  /* —— Riga “Ricordami | Mostra password” —— */
  --row-gap: 1rem;          /* spazio tra i due blocchi */
  --row-mt: .35rem;         /* margine sopra riga */
  --row-mb: .25rem;         /* margine sotto riga */

  /* —— Checkbox —— */
  --cb-scale: 1.35;         /* dimensione checkbox */
  --cb-accent: #000;        /* colore riempimento quando spuntata */

  /* —— Testo label (Ricordami / Mostra password) —— */
  --label-color: #111;      /* puoi cambiare */

  /* —— Link "Hai perso la password? | Registrati" —— */
  --links-mb: 0;
}

/* Wrapper del campo password */
.kx-login .kx-pwd-wrap{
  position: relative; /* riferimento per l'occhio */
}

/* Spazio a destra per non far sovrapporre il testo all'occhio */
.kx-login .kx-pwd-wrap input[type="password"],
.kx-login .kx-pwd-wrap input[type="text"]{
  padding-right: calc(var(--eye-size) + var(--eye-right) + 8px) !important;
}

/* Occhio – centrato verticalmente in modo fluido */
.kx-login .toggle-eye{
  position: absolute;
  inset-inline-end: var(--eye-right);
  /* blocco verticale: occupa tutta l’altezza del wrapper */
  top: 1vw;
  bottom: 0;
  /* (facoltativo) per browser con proprietà logiche:
     inset-block: 0; */

  display: flex;
  align-items: center;      /* <-- centratura verticale robusta */
  justify-content: center;
  width: var(--eye-size);
  cursor: pointer;
  color: var(--eye-color);
}

/* Linea obliqua ON/OFF sopra l’occhio */
.kx-login .toggle-eye::after{
  content:"";
  position:absolute;
  left: 50%;
  top: 50%;
  width: 140%;
  height: 2px;
  background: currentColor;
  transform-origin: center;
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(0);
  border-radius: 2px;
  transition: transform .12s ease;
  pointer-events:none;
}
.kx-login .toggle-eye.active::after{
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(1);
}


/* Checkbox più grandi e con riempimento personalizzabile */
.kx-login input[type="checkbox"]{
  accent-color: var(--cb-accent);
  transform: scale(var(--cb-scale));
  transform-origin: center;
  margin: 0;
}

/* Riga “Ricordami | Mostra password” */
.kx-login .elementor-remember-me{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--row-gap);
  margin-top: var(--row-mt);
  margin-bottom: var(--row-mb);
}
.kx-login .elementor-remember-me label{
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin: 0;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: var(--label-color) !important;
}
.kx-login .kx-showpwd-toggle{ margin-left: auto; }

/* blocco link finale (layout + base) */
.kx-login .elementor-form .elementor-form-fields-wrapper
  > .elementor-field-group.elementor-col-100:last-child{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.35rem;
  text-align:center;
  margin-top: -0.3vw;
  margin-bottom: var(--links-mb);
}
.kx-login .elementor-lost-password,
.kx-login .elementor-register,
.kx-login .elementor-login-separator{
  display:inline-block;
  vertical-align:middle;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: #000000 !important;
  text-decoration: none !important;
  letter-spacing: inherit !important;
}
.kx-login .elementor-login-separator{
  margin: 0 .35rem !important;
  opacity: .9;
}

/* HOVER: testo a gradiente, underline nero costante */
.kx-login .elementor-lost-password:hover,
.kx-login .elementor-register:hover,
.kx-login .elementor-lost-password:focus-visible,
.kx-login .elementor-register:focus-visible{
  background-image: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent; /* Chrome/Safari */
  color: transparent;                   /* Firefox */
  text-decoration-line: underline !important;
  text-decoration-color: #000 !important;
  text-decoration-thickness: 1.5px;
}  /* <-- QUESTA GRAFFA MANCAVA */

/* il separatore " | " non cambia in hover */
.kx-login .elementor-login-separator:hover{
  color:#000 !important;
  background:none !important;
  -webkit-text-fill-color: initial !important;
}

/* Pulsante ACCEDI */
.kx-login .elementor-button{
  background: #0000 !important;
  color: #000 !important;
  border: 2.5px solid #000 !important;
  border-radius: 25px !important;
  font-family: "nasalization", sans-serif !important;
  font-weight: 100 !important;
  font-size: 1.2vw !important;
  padding: 0 0 !important;
  transition: background 0s ease, color 0s ease !important;
}
.kx-login .elementor-button:hover,
.kx-login .elementor-button:focus-visible{
  background: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%) !important;
  color: #fff !important;
  border: 0.15vw solid #000 !important;
}

/* Spazio sopra al pulsante Accedi */
.kx-login .elementor-form .elementor-field-group.elementor-field-type-submit{
  margin-top: 1vw;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6a267e1a *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6a267e1a{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6a267e1a::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6a267e1a .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6a267e1a{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-39c9dd9e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::before,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::after,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-63b9becf *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-63b9becf{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-63b9becf::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-63b9becf .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-63b9becf{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2f903715 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-2f903715{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-2f903715::before,
.elementor-11291 .elementor-element.elementor-element-2f903715::after,
.elementor-11291 .elementor-element.elementor-element-2f903715 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-36a2656a *//* ================== MODULO CONTATTACI ================== */

/* Etichetta del campo Messaggio centrata */
.kx-contact-form .elementor-field-group-field_d3eb2c5 > label {
  display: block;
  text-align: center;
  width: 100%;
}

/* ==== Checkbox Privacy – centratura + box più grande + Nasalization ==== */
:root {
  --acc-check-scale: 1.35;   /* <-- aumenta/diminuisci la dimensione della box */
  --acc-gap: .6em;           /* spazio tra box e testo */
  --font-accent: "nasalization","futura-pt",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --acc-size: clamp(10px, 1.1vw, 12px);
}

/* Contenitore dell’accettazione */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: var(--acc-gap) !important;
  margin: .6vw 0 !important;
}

/* Box checkbox più grande */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"] {
  transform: scale(var(--acc-check-scale));
  transform-origin: center;
  margin: 0;
  accent-color: #000;
  border-radius: 4px;
}

/* Testo label */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label,
.kx-contact-form .elementor-field-group-field_3ad81a3 .elementor-field-option label,
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option label * {
  font-family: var(--font-accent) !important;
  font-size: var(--acc-size) !important;
  line-height: 1.1 !important;
  letter-spacing: .02em;
  margin: 0;
  cursor: pointer;
}

/* Focus accessibile */
.kx-contact-form .elementor-field-type-acceptance .elementor-field-option input[type="checkbox"]:focus-visible {
  outline: 2px solid rgba(0,210,255,.6);
  outline-offset: 2px;
}

/* Spazio sopra il pulsante Invia */
.kx-contact-form .e-form__buttons {
  margin-top: var(--btn-gap, 0.2vw) !important;
}

/* Pulsante “vetro” + gradiente hover */
.kx-contact-form .e-form__buttons .elementor-button {
  position: relative;
  overflow: hidden;
  border: 3px solid #000 !important;
  background-color: transparent !important;
  background-image: none !important;
  color: #000 !important;
  border-radius: 9999px;
  padding: 0 0;
  transition: color 0s ease, box-shadow 0s ease;
  isolation: isolate;
}

/* Testo sopra al gradiente */
.kx-contact-form .e-form__buttons .elementor-button .elementor-button-text {
  position: relative;
  z-index: 1;
}

/* Gradiente in hover */
.kx-contact-form .e-form__buttons .elementor-button::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, #00ddff, #ff00d4);
  opacity: 0;
  transition: opacity .25s ease;
  z-index: 0;
}
.kx-contact-form .e-form__buttons .elementor-button:hover::before,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible::before {
  opacity: 1;
}

/* Hover/focus → testo bianco */
.kx-contact-form .e-form__buttons .elementor-button:hover,
.kx-contact-form .e-form__buttons .elementor-button:focus-visible {
  color: #fff !important;
  box-shadow: 0 0 0px rgba(0,210,255,.25), 0 0 0px rgba(255,0,212,.25);
}

/* Nasconde messaggio di successo */
.kx-contact-form .elementor-message-success,
.kx-contact-form .e-form__success-message {
  display: none !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6ad7a430 *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6ad7a430{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6ad7a430::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6ad7a430 .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6ad7a430{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e27ee8e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-e27ee8e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:50px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-e27ee8e::before,
.elementor-11291 .elementor-element.elementor-element-e27ee8e::after,
.elementor-11291 .elementor-element.elementor-element-e27ee8e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for search, class: .elementor-element-14bf608 *//* ===== SEARCH — pannello centrato full-page, blur, 5 colonne fisse su desktop/laptop ===== */

/* Contenitore “ancora” del campo */
.e-n-menu-content .search-anchor{
  position: relative;
  overflow: visible;
}

/* 1) Input centrato + spazio riservato alla X (regolabile) */
.e-n-menu-content .e-search-input-wrapper{ position: relative; }
.e-n-menu-content .e-search-input{
  text-align: center !important;
  padding-right: var(--sr-clear-pr, 2.2em) !important; /* distanza testo ↔ X */
}
.e-n-menu-content .e-search-input::placeholder{ text-align: center; }

/* X (clear) leggermente più bassa */
.e-n-menu-content .e-search-input-wrapper > .e-font-icon-svg.e-fas-times,
.e-n-menu-content .e-search-input-wrapper > .e-search-clear{
  position: absolute !important;
  right: var(--sr-clear-right, .6rem) !important;
  top: var(--sr-clear-top, 56%) !important;
  transform: translateY(-50%) !important;
  pointer-events: auto;
  cursor: pointer;
}

/* 2) Wrapper risultati: centrato rispetto alla pagina (Elementor gestisce il top) */
.e-n-menu-content .e-search-results-container{
  position: absolute !important;               /* scorre con la pagina */
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  right: auto !important;
  background: transparent !important;
  z-index: 999999 !important;
  height: auto !important;
}

/* 3) Pannello risultati: blur + bordo bianco + margini orizzontali */
.e-n-menu-content .e-search-results{
  /* margine laterale “elastico” che si restringe su laptop */
  --sr-mx: clamp(16px, 4vw, 72px);
  /* gap “elastico” tra card */
  --sr-gap: clamp(10px, 1.2vw, 20px);

  width: calc(100vw - (2 * var(--sr-mx))) !important;
  margin: 0 auto !important;
  padding: clamp(10px, 1.2vw, 22px) clamp(10px, 1.2vw, 22px) clamp(16px, 2vw, 32px) !important;

  border: 4px solid #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 36px rgba(0,0,0,.18) !important;

  background: linear-gradient(135deg,
              rgba(255,255,255,.62) 0%,
              rgba(255,255,255,.48) 60%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(140%);
          backdrop-filter: blur(18px) saturate(140%);
  isolation: isolate;

  max-height: none !important;   /* niente scrollbar interna */
  overflow: visible !important;  /* scrolla la pagina */
}

/* Fallback se manca il backdrop-filter */
@supports not ((-webkit-backdrop-filter: none) or (backdrop-filter: none)){
  .e-n-menu-content .e-search-results{ background: rgba(255,255,255,.78) !important; }
}

/* 4) Griglia risultati: SEMPRE 5 colonne su desktop/laptop (ridimensionate) */
.e-n-menu-content .e-search-results-list{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: var(--sr-gap) !important;
  width: 100% !important;
  margin: 0 auto !important;
  align-items: stretch !important;
  justify-items: center !important;
}

/* Reset aggressivo di width/margini imposti dal loop per farci stare 5 card */
.e-n-menu-content .e-search-results-list .e-loop-item{
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  display: block !important;
}
.e-n-menu-content .e-search-results-list .e-loop-item > a.elementor-element.e-con{
  width: 100% !important;               /* niente calc() che “mangia” spazio */
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;                 /* annulla i 2vw auto del template */
  padding: 0 !important;
  display: block !important;
}

/* Immagini dentro la card */
.e-n-menu-content .e-search-results-list .e-loop-item img{
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: cover;
}

/* ===== Breakpoint SOLO per i tablet/phone ===== */

/* Tablet: passa a 4 colonne */
@media (max-width: 1024px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(12px, 3vw, 48px);
    --sr-gap: clamp(8px, 1vw, 16px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Tablet piccolo: 3 colonne */
@media (max-width: 900px){
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Mobile: 2 colonne */
@media (max-width: 768px){
  .e-n-menu-content .e-search-results{
    --sr-mx: clamp(10px, 2.5vw, 32px);
    --sr-gap: clamp(8px, 1.2vw, 14px);
  }
  .e-n-menu-content .e-search-results-list{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-da0f79d *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-da0f79d{
  /* parametri rapidi */
  --r:50px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.95;       /* opacità vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-da0f79d::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-da0f79d .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-da0f79d{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6cfdea91 *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-6cfdea91{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-6cfdea91::before,
.elementor-11291 .elementor-element.elementor-element-6cfdea91::after,
.elementor-11291 .elementor-element.elementor-element-6cfdea91 .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for login, class: .elementor-element-4e3aa40e *//* ================== SCOPE: SOLO dentro il widget con classe .kx-login ================== */
.kx-login{
  /* —— Occhio —— */
  --eye-size: 20px;         /* misura icona occhio */
  --eye-right: 10px;        /* distanza dal bordo destro del campo */
  --eye-color: #000;        /* colore occhio + linea obliqua */

  /* —— Riga “Ricordami | Mostra password” —— */
  --row-gap: 1rem;          /* spazio tra i due blocchi */
  --row-mt: .35rem;         /* margine sopra riga */
  --row-mb: .25rem;         /* margine sotto riga */

  /* —— Checkbox —— */
  --cb-scale: 1.35;         /* dimensione checkbox */
  --cb-accent: #000;        /* colore riempimento quando spuntata */

  /* —— Testo label (Ricordami / Mostra password) —— */
  --label-color: #111;      /* puoi cambiare */

  /* —— Link "Hai perso la password? | Registrati" —— */
  --links-mb: 0;
}

/* Wrapper del campo password */
.kx-login .kx-pwd-wrap{
  position: relative; /* riferimento per l'occhio */
}

/* Spazio a destra per non far sovrapporre il testo all'occhio */
.kx-login .kx-pwd-wrap input[type="password"],
.kx-login .kx-pwd-wrap input[type="text"]{
  padding-right: calc(var(--eye-size) + var(--eye-right) + 8px) !important;
}

/* Occhio – centrato verticalmente in modo fluido */
.kx-login .toggle-eye{
  position: absolute;
  inset-inline-end: var(--eye-right);
  /* blocco verticale: occupa tutta l’altezza del wrapper */
  top: 1vw;
  bottom: 0;
  /* (facoltativo) per browser con proprietà logiche:
     inset-block: 0; */

  display: flex;
  align-items: center;      /* <-- centratura verticale robusta */
  justify-content: center;
  width: var(--eye-size);
  cursor: pointer;
  color: var(--eye-color);
}

/* Linea obliqua ON/OFF sopra l’occhio */
.kx-login .toggle-eye::after{
  content:"";
  position:absolute;
  left: 50%;
  top: 50%;
  width: 140%;
  height: 2px;
  background: currentColor;
  transform-origin: center;
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(0);
  border-radius: 2px;
  transition: transform .12s ease;
  pointer-events:none;
}
.kx-login .toggle-eye.active::after{
  transform: translate(-50%,-50%) rotate(-25deg) scaleX(1);
}


/* Checkbox più grandi e con riempimento personalizzabile */
.kx-login input[type="checkbox"]{
  accent-color: var(--cb-accent);
  transform: scale(var(--cb-scale));
  transform-origin: center;
  margin: 0;
}

/* Riga “Ricordami | Mostra password” */
.kx-login .elementor-remember-me{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--row-gap);
  margin-top: var(--row-mt);
  margin-bottom: var(--row-mb);
}
.kx-login .elementor-remember-me label{
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin: 0;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: var(--label-color) !important;
}
.kx-login .kx-showpwd-toggle{ margin-left: auto; }

/* blocco link finale (layout + base) */
.kx-login .elementor-form .elementor-form-fields-wrapper
  > .elementor-field-group.elementor-col-100:last-child{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.35rem;
  text-align:center;
  margin-top: -0.3vw;
  margin-bottom: var(--links-mb);
}
.kx-login .elementor-lost-password,
.kx-login .elementor-register,
.kx-login .elementor-login-separator{
  display:inline-block;
  vertical-align:middle;
  font-family: futura-pt !important;
  font-size: 1.1vw !important;
  font-weight: 500 !important;
  color: #000000 !important;
  text-decoration: none !important;
  letter-spacing: inherit !important;
}
.kx-login .elementor-login-separator{
  margin: 0 .35rem !important;
  opacity: .9;
}

/* HOVER: testo a gradiente, underline nero costante */
.kx-login .elementor-lost-password:hover,
.kx-login .elementor-register:hover,
.kx-login .elementor-lost-password:focus-visible,
.kx-login .elementor-register:focus-visible{
  background-image: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent; /* Chrome/Safari */
  color: transparent;                   /* Firefox */
  text-decoration-line: underline !important;
  text-decoration-color: #000 !important;
  text-decoration-thickness: 1.5px;
}  /* <-- QUESTA GRAFFA MANCAVA */

/* il separatore " | " non cambia in hover */
.kx-login .elementor-login-separator:hover{
  color:#000 !important;
  background:none !important;
  -webkit-text-fill-color: initial !important;
}

/* Pulsante ACCEDI */
.kx-login .elementor-button{
  background: #0000 !important;
  color: #000 !important;
  border: 2.5px solid #000 !important;
  border-radius: 25px !important;
  font-family: "nasalization", sans-serif !important;
  font-weight: 100 !important;
  font-size: 1.2vw !important;
  padding: 0 0 !important;
  transition: background 0s ease, color 0s ease !important;
}
.kx-login .elementor-button:hover,
.kx-login .elementor-button:focus-visible{
  background: linear-gradient(90deg, #D624DB 0%, #15CBFC 100%) !important;
  color: #fff !important;
  border: 0.15vw solid #000 !important;
}

/* Spazio sopra al pulsante Accedi */
.kx-login .elementor-form .elementor-field-group.elementor-field-type-submit{
  margin-top: 1vw;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6a267e1a *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-6a267e1a{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-6a267e1a::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-6a267e1a .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-6a267e1a{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-39c9dd9e *//* Ombra riquadro sfumata L→R (esterno + opzionale interno) */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e{
  /* knobs */
  --cL:#FF00D4; --cR:#00D2FF;
  --out-blur:15px; --out-offset:8px; --out-alpha:.4;
  --in-blur:1px;  --in-offset:2px;   --in-alpha:.8;

  /* arrotondamento REALE del box */
  border-radius:30px !important;   /* <<< qui imposti i 25px */
  background-clip: padding-box;    /* evita “spigoli” di bleed */
  overflow: visible;                /* la sfumatura può uscire */

  /* Ombre L→R */
  box-shadow:
    calc(var(--out-offset) * -1) 0 var(--out-blur) rgba(255,0,212,var(--out-alpha)),
    var(--out-offset) 0 var(--out-blur) rgba(0,210,255,var(--out-alpha)),
    inset calc(var(--in-offset) * -1) 0 var(--in-blur) rgba(255,0,212,var(--in-alpha)),
    inset var(--in-offset) 0 var(--in-blur) rgba(0,210,255,var(--in-alpha));
}

/* Se usi pseudo-elementi o overlay di Elementor, falli ereditare */
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::before,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e::after,
.elementor-11291 .elementor-element.elementor-element-39c9dd9e .elementor-background-overlay{
  border-radius: inherit;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-63b9becf *//* === VETRO + SOLO BORDO GRADIENTE (NO OMBRE) === */
.elementor-11291 .elementor-element.elementor-element-63b9becf{
  /* parametri rapidi */
  --r:20px;          /* raggio angoli */
  --b:4px;           /* spessore bordo */
  --alpha:.55;       /* opacità vetro */
  --blur:14px;       /* blur vetro */
  --sat:1.4;         /* saturazione vetro */
  --c1:#FF00D4;      /* gradiente sinistra (magenta) */
  --c2:#00D2FF;      /* gradiente destra (ciano)   */
  --angle:90deg;     /* 90° = da sinistra a destra */

  /* vetro bianco semitrasp + blur */
  border-radius:var(--r);
  background: rgba(255,255,255,var(--alpha));
  -webkit-backdrop-filter: blur(var(--blur)) saturate(var(--sat));
          backdrop-filter: blur(var(--blur)) saturate(var(--sat));

  /* no ombre */
  box-shadow: none !important;
}

/* BORDO gradiente vero (solo bordo, nessun riempimento) */
.elementor-11291 .elementor-element.elementor-element-63b9becf::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  padding:var(--b);
  background: linear-gradient(var(--angle), var(--c1), var(--c2));
  -webkit-mask:
     linear-gradient(#000 0 0) content-box,
     linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;     /* Chrome/Safari */
          mask-composite: exclude; /* Firefox */
  pointer-events:none;
  z-index:9;                       /* bordo sopra ai figli */
  /* nessun drop-shadow qui */
}

/* pulizia overlay Elementor */
.elementor-11291 .elementor-element.elementor-element-63b9becf .elementor-background-overlay{ background:none !important; }

/* Fallback se le mask non sono supportate */
@supports not ((-webkit-mask:linear-gradient(#000,#000)) or (mask-composite:exclude)){
  .elementor-11291 .elementor-element.elementor-element-63b9becf{
    border: var(--b) solid transparent;
    border-image: linear-gradient(var(--angle), var(--c1), var(--c2)) 1;
  }
}/* End custom CSS */
/* Start custom CSS for mega-menu, class: .elementor-element-290788f7 *//* ===== KROMA MENU — SAFE (minimale, con fix stretch/absolute) ===== */

/* Variabili base */
.elementor-11291 .elementor-element.elementor-element-290788f7{
  --icon-size: 4vw;
  --gap: 0vw;
  --panel-gap: 2vw;
}

/* breakpoints */
@media (max-width:1366px){ .elementor-11291 .elementor-element.elementor-element-290788f7{ --icon-size: 4vw; --gap: 0.5vw; } }
@media (max-width:1200px){ .elementor-11291 .elementor-element.elementor-element-290788f7{ --icon-size: 4vw; --gap: 0.5vw; } }
@media (max-width:1024px){ .elementor-11291 .elementor-element.elementor-element-290788f7{ --icon-size: 6vw; --gap: 5vw; } }
@media (max-width:767px) { .elementor-11291 .elementor-element.elementor-element-290788f7{ --icon-size: 8vw; --gap: 6vw; } }

/* layout base */
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-heading{ display:flex; gap:var(--gap) !important; justify-content:flex-start; }
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-item{ margin:0 !important; padding:0 !important; position:relative; flex:0 0 auto; }
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-title{ margin:0 !important; padding:0 !important; cursor:pointer; user-select:none; }

/* nascondo icona toggle */
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-dropdown-icon{ display:none !important; }

/* icone */
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-title::before{
  content:""; display:block !important;
  width:var(--icon-size); height:var(--icon-size);
  background: var(--icon-default) center/contain no-repeat;
}
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-item:not(.is-open) .e-n-menu-title:hover::before{ background-image:var(--icon-hover); }
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-item.is-open .e-n-menu-title::before{ background-image:var(--icon-close) !important; }
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-title:focus-visible{ outline:2px solid #6f2cf5; outline-offset:3px; border-radius:6px; }

/* mapping icone */
.elementor-11291 .elementor-element.elementor-element-290788f7 #icon-info { --icon-default:url('https://kromaline.it/wp-content/uploads/info-icona-01.svg');  --icon-hover:url('https://kromaline.it/wp-content/uploads/info-icona-hover-01.svg');  --icon-close:url('https://kromaline.it/wp-content/uploads/chiudi-icona-01.svg'); }
.elementor-11291 .elementor-element.elementor-element-290788f7 #icon-search{ --icon-default:url('https://kromaline.it/wp-content/uploads/cerca-icona-01.svg'); --icon-hover:url('https://kromaline.it/wp-content/uploads/cerca-icona-hover-01.svg'); --icon-close:url('https://kromaline.it/wp-content/uploads/chiudi-icona-01.svg'); }
.elementor-11291 .elementor-element.elementor-element-290788f7 #icon-user  { --icon-default:url('https://kromaline.it/wp-content/uploads/login-icona-01.svg'); --icon-hover:url('https://kromaline.it/wp-content/uploads/login-icona-hover-01.svg'); --icon-close:url('https://kromaline.it/wp-content/uploads/chiudi-icona-01.svg'); }
.elementor-11291 .elementor-element.elementor-element-290788f7 #icon-cart  { --icon-default:url('https://kromaline.it/wp-content/uploads/carrello-icona-01.svg'); --icon-hover:url('https://kromaline.it/wp-content/uploads/carrello-icona_hover-01.svg'); --icon-close:url('https://kromaline.it/wp-content/uploads/chiudi-icona-01.svg'); }

/* ===== wrapper dropdown (ancorato all’item) ===== */
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-content{
  position:absolute;
  top: calc(100% + var(--panel-gap));
  left: 0;
  z-index: 9999;
  pointer-events: none;
  opacity: 0; visibility: hidden;
  overflow: visible;
  width: auto !important;                 /* no width forzate */
  transform: translateX(calc(-1 * var(--stretch-left, 0px))) !important; /* anti-stretch */
}
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-item.is-open > .e-n-menu-content{
  opacity:1; visibility:visible; pointer-events:auto;
}

/* ===== neutralizza lo stretch del wrapper di Elementor ===== */
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-wrapper{
  --stretch-left: 0px !important;
  --stretch-width: auto !important;
  transform: none !important;
  translate: 0 !important;
}

/* ===== root pannello: static (così gli absolute figli guardano .e-n-menu-content) ===== */
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-content > [id^="e-n-menu-content-"]{
  position: static !important;
  display: block !important;
  width: auto !important;
  max-width: 100vw !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  box-sizing: border-box;
}

/* ===== forza i container interni “Assoluto” O “Fisso” ad absolute nel pannello ===== */
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-content [data-element_type="container"][data-settings*='"position":"absolute"'],
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-content [data-element_type="container"][data-settings*='"position":"fixed"']{
  position: absolute !important;   /* tutti assoluti, dentro il pannello */
  /* gli offset (top/left/right/bottom/transform) restano quelli impostati in Elementor */
}

/* ===== container NON-absolute: niente auto-margini che spingono ===== */
.elementor-11291 .elementor-element.elementor-element-290788f7 .e-n-menu-content > [id^="e-n-menu-content-"]
  > .elementor-element[data-element_type="container"]:not([data-settings*='"position":"absolute"']):not([data-settings*='"position":"fixed"']){
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* anti-clip mirato */
#menubar-114,
#menubar-114 .e-n-menu-wrapper,
#menubar-114 .e-n-menu-heading,
#menubar-114 .e-n-menu-content{
  overflow: visible !important;
  clip-path: none !important; -webkit-clip-path: none !important;
  mask: none !important; -webkit-mask: none !important;
}

/* badge carrello */
.elementor-element[data-id="6d56447"] #icon-cart .e-n-menu-title-text{ display:none }
.elementor-element[data-id="6d56447"] #icon-cart .e-n-menu-title-container{ position: relative; display:inline-block; }
.elementor-element[data-id="6d56447"] #icon-cart .kx-cart-count{
  position:absolute; z-index:5; top: var(--cc-top,-2vw); right: var(--cc-right,0vw);
  display:inline-flex; align-items:center; justify-content:center;
  padding: var(--cc-pad-t,3px) var(--cc-pad-r,6px) var(--cc-pad-b,3px) var(--cc-pad-l,6px);
  width: var(--cc-diam,1.2vw); height: var(--cc-diam,1.2vw); border-radius:999px;
  background: linear-gradient(to left, var(--cc-grad-start,#FF00D4), var(--cc-grad-end,#00DDFF));
  box-shadow: var(--cc-shadow, 0 8px 22px rgba(0,0,0,.25));
  border: var(--cc-border, 0);
  pointer-events:none;
}
.elementor-element[data-id="6d56447"] #icon-cart .kx-cc-num{
  margin: var(--num-mt,0) var(--num-mr,0) var(--num-b,.3vw) var(--num-ml,0);
  font-size: var(--num-fs,1vw); font-weight: var(--num-fw,500);
  font-family: "Nasalization",sans-serif; color:#fff; line-height:1; white-space:nowrap;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-07326dd *//* ====== VARIABILI (default) ====== */
:root{
  /* overscan per eliminare i micro-gap perimetrali (valori negativi spingono oltre bordo) */
  --kx-frame-top:    0px;
  --kx-frame-right:  0px;
  --kx-frame-bottom: 0px;
  --kx-frame-left:   0px;

  /* scala maschera blur (1 = originale) */
  --kx-mask-scale-x: 1;
  --kx-mask-scale-y: 1;

  /* (opzionale) scala anche lo SVG/Traccia per farlo seguire alla maschera */
  --kx-svg-scale-x: 1;
  --kx-svg-scale-y: 1;
}

/* overlay cornice (tablet verticale) */
#kx-frame-v-tablet{
  position: fixed;
  top:    var(--kx-frame-top);
  right:  var(--kx-frame-right);
  bottom: var(--kx-frame-bottom);
  left:   var(--kx-frame-left);
  z-index: 99999;
  pointer-events: none;
  isolation: isolate;              /* crea stacking context: controlliamo i livelli */
}

/* BLUR reale dietro alla traccia (mascherato con la sagoma) */
#kx-frame-v-tablet::before{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;

  /* vetro meno aggressivo */
  background: rgba(255,255,255,0.28);
  backdrop-filter: blur(8px) saturate(108%);
  -webkit-backdrop-filter: blur(8px) saturate(108%);

  /* maschera = sagoma (ora con scala regolabile) */
  -webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1032.48 1373.76" preserveAspectRatio="none"><path fill="white" d="M1009.252,3.706H4.355v1346.708s0,19.292,0,19.292h1024V3.706h-19.102ZM992.879,1322.048c0,6.523-5.255,11.83-11.714,11.83H51.544c-6.459,0-11.714-5.307-11.714-11.83v-207.927c0-4.162,1.664-8.152,4.621-11.081l65.731-65.113c3.288-3.258,5.142-7.715,5.142-12.367V347.851c0-4.652-1.853-9.109-5.142-12.367l-65.731-65.113c-2.957-2.929-4.621-6.919-4.621-11.081V51.363c0-6.523,5.255-11.83,11.714-11.83h297.295c6.116,0,11.668,3.575,14.199,9.142l28.851,63.462c1.51,3.321,3.575,5.193,5.732,5.193h237.465c2.156,0,4.222-1.872,5.732-5.193l28.851-63.462c2.531-5.568,8.083-9.142,14.199-9.142h297.296c6.459,0,11.714,5.307,11.714,11.83v1270.686Z"/></svg>') no-repeat 50% 50% / calc(100% * var(--kx-mask-scale-x)) calc(100% * var(--kx-mask-scale-y));
          mask:         url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1032.48 1373.76" preserveAspectRatio="none"><path fill="white" d="M1009.252,3.706H4.355v1346.708s0,19.292,0,19.292h1024V3.706h-19.102ZM992.879,1322.048c0,6.523-5.255,11.83-11.714,11.83H51.544c-6.459,0-11.714-5.307-11.714-11.83v-207.927c0-4.162,1.664-8.152,4.621-11.081l65.731-65.113c3.288-3.258,5.142-7.715,5.142-12.367V347.851c0-4.652-1.853-9.109-5.142-12.367l-65.731-65.113c-2.957-2.929-4.621-6.919-4.621-11.081V51.363c0-6.523,5.255-11.83,11.714-11.83h297.295c6.116,0,11.668,3.575,14.199,9.142l28.851,63.462c1.51,3.321,3.575,5.193,5.732,5.193h237.465c2.156,0,4.222-1.872,5.732-5.193l28.851-63.462c2.531-5.568,8.083-9.142,14.199-9.142h297.296c6.459,0,11.714,5.307,11.714,11.83v1270.686Z"/></svg>') no-repeat 50% 50% / calc(100% * var(--kx-mask-scale-x)) calc(100% * var(--kx-mask-scale-y));

  z-index: 0; /* sotto */
}

/* SVG sopra al blur (puoi far seguire la traccia alla maschera con la stessa scala) */
#kx-frame-v-tablet svg{
  position: relative;
  z-index: 1;                    /* sopra allo ::before */
  width: 100%;
  height: 100%;
  display: block;
  transform: scale(var(--kx-svg-scale-x), var(--kx-svg-scale-y));
  transform-origin: 50% 50%;
}

/* alleggerisco il fill: il “vetro” lo fa lo ::before */
#kx-frame-v-tablet #sfondo-sagomato-vetro-blur{
  fill: rgba(255,255,255,0.45) !important;
  opacity: 1 !important;
  filter: none !important;
}

/* la traccia nitida NON ha ombre bianche: il glow è nel doppione SVG */
#kx-frame-v-tablet #traccia-gradient{
  filter: none !important;
}

/* Tablet: blur ancora più soft */
@media (max-width:1024px){
  #kx-frame-v-tablet::before{
    background: rgba(255,255,255,0.24);
    backdrop-filter: blur(4px) saturate(106%);
    -webkit-backdrop-filter: blur(6px) saturate(106%);
  }
}

/* se l'header è condiviso con il mobile e NON vuoi la cornice lì */
@media (max-width:767px){
  #kx-frame-v-tablet{ display:none; }
}

/* sicurezza */
html, body{ margin:0; }

/* OVERRIDE LOCALI PER L’ISTANZA */
#kx-frame-v-tablet{
  /* overscan per-lato */
  --kx-frame-top:    -2vw;
  --kx-frame-left:   0vw;
  --kx-frame-right:  0vw;   /* <— aumenta/ diminuisci a piacere */
  --kx-frame-bottom: -3.4vw;

  /* maschera più larga in orizzontale */
  --kx-mask-scale-x: 1.08;    /* 1.00–1.12 in base a quanto vuoi stringere il bordo */
  --kx-mask-scale-y: 1;

  /* la traccia SVG segue la maschera */
  --kx-svg-scale-x: 1.08;
  --kx-svg-scale-y: 1;
}

/* BLINDA i lati contro eventuali shorthand “inset” del tema */
#kx-frame-v-tablet{
  top:    var(--kx-frame-top)    !important;
  right:  var(--kx-frame-right)  !important;
  bottom: var(--kx-frame-bottom) !important;
  left:   var(--kx-frame-left)   !important;
}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-8942cc8 *//* Tablet verticale solo: 768–1024 */
@media (min-width:768px) and (max-width:1024px){
  /* dai la classe al WIDGET, non all'img */
  .kx-logo-center{
    position: fixed !important;            /* mantieni fisso */
    left: 50% !important;                  /* centro geometrico */
    right: auto !important;                /* disinnesca “ancora a destra” */
    transform: translateX(-50%) translateZ(0) !important; /* centra e evita jitter iOS */
    margin: 0 !important;
  }

  /* Se Elementor in questo range inietta ancora right/left inline,
     questi selettori lo neutralizzano */
  .kx-logo-center[style*="right"]{ right: auto !important; }
  .kx-logo-center[style*="left"] { left: 50% !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c638b86 */.elementor-11291 .elementor-element.elementor-element-c638b86{ --panel-width: 0vw; --panel-max-width: 50vw; }
/* Metti SOLO questo contenitore sotto al frame */
.elementor-11291 .elementor-element.elementor-element-c638b86{
  /* sfrutto le custom props dell’inline style: position: var(--position) */
  --position: fixed;                 /* oppure 'absolute' se lo preferisci */
  z-index: 99980 !important;         /* deve essere < z-index del frame */
  /* opzionale: limiti di larghezza se ti servono */
  /* --panel-max-width: 92vw; */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c638b86 */.elementor-11291 .elementor-element.elementor-element-c638b86{ --panel-width: 0vw; --panel-max-width: 50vw; }
/* Metti SOLO questo contenitore sotto al frame */
.elementor-11291 .elementor-element.elementor-element-c638b86{
  /* sfrutto le custom props dell’inline style: position: var(--position) */
  --position: fixed;                 /* oppure 'absolute' se lo preferisci */
  z-index: 99980 !important;         /* deve essere < z-index del frame */
  /* opzionale: limiti di larghezza se ti servono */
  /* --panel-max-width: 92vw; */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c638b86 */.elementor-11291 .elementor-element.elementor-element-c638b86{ --panel-width: 0vw; --panel-max-width: 50vw; }
/* Metti SOLO questo contenitore sotto al frame */
.elementor-11291 .elementor-element.elementor-element-c638b86{
  /* sfrutto le custom props dell’inline style: position: var(--position) */
  --position: fixed;                 /* oppure 'absolute' se lo preferisci */
  z-index: 99980 !important;         /* deve essere < z-index del frame */
  /* opzionale: limiti di larghezza se ti servono */
  /* --panel-max-width: 92vw; */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c638b86 */.elementor-11291 .elementor-element.elementor-element-c638b86{ --panel-width: 0vw; --panel-max-width: 50vw; }
/* Metti SOLO questo contenitore sotto al frame */
.elementor-11291 .elementor-element.elementor-element-c638b86{
  /* sfrutto le custom props dell’inline style: position: var(--position) */
  --position: fixed;                 /* oppure 'absolute' se lo preferisci */
  z-index: 99980 !important;         /* deve essere < z-index del frame */
  /* opzionale: limiti di larghezza se ti servono */
  /* --panel-max-width: 92vw; */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c638b86 */.elementor-11291 .elementor-element.elementor-element-c638b86{ --panel-width: 0vw; --panel-max-width: 50vw; }
/* Metti SOLO questo contenitore sotto al frame */
.elementor-11291 .elementor-element.elementor-element-c638b86{
  /* sfrutto le custom props dell’inline style: position: var(--position) */
  --position: fixed;                 /* oppure 'absolute' se lo preferisci */
  z-index: 99980 !important;         /* deve essere < z-index del frame */
  /* opzionale: limiti di larghezza se ti servono */
  /* --panel-max-width: 92vw; */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c638b86 */.elementor-11291 .elementor-element.elementor-element-c638b86{ --panel-width: 0vw; --panel-max-width: 50vw; }
/* Metti SOLO questo contenitore sotto al frame */
.elementor-11291 .elementor-element.elementor-element-c638b86{
  /* sfrutto le custom props dell’inline style: position: var(--position) */
  --position: fixed;                 /* oppure 'absolute' se lo preferisci */
  z-index: 99980 !important;         /* deve essere < z-index del frame */
  /* opzionale: limiti di larghezza se ti servono */
  /* --panel-max-width: 92vw; */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-c638b86 */.elementor-11291 .elementor-element.elementor-element-c638b86{ --panel-width: 0vw; --panel-max-width: 50vw; }
/* Metti SOLO questo contenitore sotto al frame */
.elementor-11291 .elementor-element.elementor-element-c638b86{
  /* sfrutto le custom props dell’inline style: position: var(--position) */
  --position: fixed;                 /* oppure 'absolute' se lo preferisci */
  z-index: 99980 !important;         /* deve essere < z-index del frame */
  /* opzionale: limiti di larghezza se ti servono */
  /* --panel-max-width: 92vw; */
}/* End custom CSS */
/* Start custom CSS for mega-menu, class: .elementor-element-ab430e0 *//* ============ KX MENU (mapping icone + separatori + swap X) ============ */
.kx-menu-tablet-v{
  /* icone fluide e centrate (scala dal centro) */
  --icon-size: 6.2vh;

  /* separatori */
  --sep-color: #000;
  --sep-thickness: 2px;
  --sep-width: 55%;
  --li-pad-top: 10px;
  --li-pad-bottom: 14px;

  /* icona chiudi comune (puoi cambiarla qui una volta sola) */
  --icon-close: url('https://kromaline.it/wp-content/uploads/icona-chiudi-tablet-mobile.svg');
}

/* Mobile: icone più grandi, nascondi la 6ª e rimuovi separatori */
@media (max-width:767px){
  .kx-menu-tablet-v{ --icon-size: 7.2vh; }
  .kx-menu-tablet-v .e-n-menu-item:nth-child(6){ display:none !important; }
  .kx-menu-tablet-v .e-n-menu-item::after{ display:none !important; }
}

/* Forza layout verticale centrato */
.kx-menu-tablet-v .e-n-menu-heading{
  display:flex; flex-direction:column; gap:0; margin:0; padding:0; align-items:center;
}
.kx-menu-tablet-v .e-n-menu-item{
  list-style:none; position:relative; padding:var(--li-pad-top) 0 var(--li-pad-bottom);
  display:flex; justify-content:center;
}

/* Separatore tra voci */
.kx-menu-tablet-v .e-n-menu-item:not(:last-child)::after{
  content:"";
  position:absolute; left:50%; bottom:0; transform:translateX(-50%);
  width:var(--sep-width); height:var(--sep-thickness);
  background:var(--sep-color); border-radius:999px;
}

/* Nascondi il toggle nativo di Elementor */
.kx-menu-tablet-v .e-n-menu-dropdown-icon{ display:none !important; pointer-events:none !important; }

/* Il “title” è il pulsante icona */
.kx-menu-tablet-v .e-n-menu-title{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  cursor:pointer; user-select:none; text-align:center; color:inherit;
}
/* Nascondi eventuale testo di Elementor (opzionale) */
.kx-menu-tablet-v .e-n-menu-title-text{ display:none; }

/* Icona come background: scala dal centro */
.kx-menu-tablet-v .e-n-menu-title::before{
  content:""; display:block;
  width:var(--icon-size); height:var(--icon-size);
  margin:0 auto;
  background: var(--icon-default) center/contain no-repeat;
  transform-origin:50% 50%;
}
/* Hover (solo quando NON è open) */
.kx-menu-tablet-v .e-n-menu-item:not(.is-open) .e-n-menu-title:hover::before{
  background-image: var(--icon-hover);
}
/* Stato aperto → mostra X comune */
.kx-menu-tablet-v .e-n-menu-item.is-open .e-n-menu-title::before{
  background-image: var(--icon-close) !important;
}

/* ====== Mapping icone (per ID) ====== */
/* (Se non hai l’icona hover, riusa la stessa di default) */
.kx-menu-tablet-v #kx-icon-menu{
  --icon-default: url('https://kromaline.it/wp-content/uploads/icona-menu-tablet-mobile.svg');
  --icon-hover:   var(--icon-default);
}
.kx-menu-tablet-v #kx-icon-carrello{
  --icon-default: url('https://kromaline.it/wp-content/uploads/icona-carrello-tablet-mobile.svg');
  --icon-hover:   var(--icon-default);
}
.kx-menu-tablet-v #kx-icon-accedi{
  --icon-default: url('https://kromaline.it/wp-content/uploads/icona-login-tablet-mobile.svg');
  --icon-hover:   var(--icon-default);
}
.kx-menu-tablet-v #kx-icon-cerca{
  --icon-default: url('https://kromaline.it/wp-content/uploads/icona-cerca-tablet-mobile.svg');
  --icon-hover:   var(--icon-default);
}
.kx-menu-tablet-v #kx-icon-info{
  --icon-default: url('https://kromaline.it/wp-content/uploads/icona-info-tablet-mobile.svg');
  --icon-hover:   var(--icon-default);
}
.kx-menu-tablet-v #kx-icon-offerte{
  --icon-default: url('https://kromaline.it/wp-content/uploads/icona-offerte-tablet-mobile.svg');
  --icon-hover:   var(--icon-default);
}

/* ====== Pannelli (container interni) ====== */
/* di default chiusi */
.kx-menu-tablet-v .e-n-menu-content > [class*="kx-panel-"]{
  display:none !important;
}
/* aperto */
.kx-menu-tablet-v .e-n-menu-content > [class*="kx-panel-"].is-active{
  display:block !important;
}

/* (opzionali) anti-stretch / overflow */
.kx-menu-tablet-v .e-n-menu-wrapper{
  --stretch-left: 0px !important;
  --stretch-width: auto !important;
  overflow:visible !important;
}
.kx-menu-tablet-v .e-n-menu-content{ overflow:visible !important; }
/* ===== Sblocca la larghezza dei pannelli del mega menu ===== */

/* Prendi la larghezza “contenuto” che Elementor calcola sul wrapper */
.elementor-11291 .elementor-element.elementor-element-ab430e0 .e-n-menu-wrapper{
  --kx-content-width: var(--stretch-width, 1140px);
}

/* Valori di fallback per la variabile usata dall'inline style (width: var(--width)) */
.elementor-11291 .elementor-element.elementor-element-ab430e0 .e-n-menu-content > [id^="e-n-menu-content-"]{
  --width: var(--panel-width, auto);              /* fallback generale */
  width: var(--width) !important;                 /* applica davvero la larghezza */
  max-width: var(--panel-max-width, none) !important;
  box-sizing: border-box;
}

/* Modalità BOXED: usa la content width del sito (e non sforare il viewport) */
.elementor-11291 .elementor-element.elementor-element-ab430e0 .e-n-menu-content > [id^="e-n-menu-content-"].e-con-boxed{
  --width: min(var(--kx-content-width), 100vw);
}

/* Modalità FULL WIDTH */
.elementor-11291 .elementor-element.elementor-element-ab430e0 .e-n-menu-content > [id^="e-n-menu-content-"].e-con-full{
  --width: 100vw;
}/* End custom CSS */