/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.0.1.1709555566
Updated: 2024-03-04 12:32:46

*/



.chat, .sticky-chat{
	display: none!important;
}

html, body{ 
    max-width: 100vw;
    overflow-x: hidden; 
}


a:focus-visible{
    outline: none!important;
}

#breadcrumbs span{
	font-weight:500;
}

.breadcrumb_last{
	font-weight:300!important;
}

#shortcodeCarousel, 
#shortcodeCarousel .elementor-shortcode,
#imgMaterialContainer,
.imgCarouselMaterial{
	height: 100%;
	min-height: 400px;
}
.fade-in {
	-webkit-animation: fade-in 1.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	animation: fade-in 1.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}
@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.imgCarouselMaterial{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
.myArrowCarousel{
	padding: 28px 31px;
	background-color: #fff;
	position: absolute;
	cursor: pointer;
	color: #fff;
	transition: .3s linear;
}
.myArrowCarousel:hover{
	background-color: #000;
}
.myArrowCarousel:hover svg path{
	stroke: #fff;
	opacity: 1;
}
#imgMaterialContainer{
	position: relative;
}
#next{
	left: 0;
	bottom: 0;
}
#prev{
	left: 0;
	bottom: 80px;
}
/* HOME CAROUSEL */
.homeCarouselContainer{
	width: 100%;
	display: flex;
}
#homeCarouselLeftColumn{
	width: 40%;
	position: relative;
	height : 100%;
	padding-right: 40px;
}
#homeCarouselRightColumn{
	flex: 1;
	font-family: Outfit;
	position: relative;
}
#nextHome{
	bottom: 0;
	right: 40px;
	z-index: 9;
}
#prevHome{
	right: 40px;
	bottom: 80px;
	z-index: 9;
}
#homeCarouselRightColumn #wide{
	margin-top:90px;
	width: 100%;
}
@media screen and (max-width: 1024px){
	.homeCarouselContainer{
		flex-direction: column;
	}
	#homeCarouselLeftColumn{
		width: 100%;
		padding-right: 0px;
	}
	#homeCarouselRightColumn{
		width: 100%;
		margin-top: 50px;
	}
	#nextHome{
		right: 0;
	}
	#prevHome{
		right: 0;
	}
	#homeCarouselRightColumn #wide{
		margin-top: 50px;
	}
}

.carouselHome{
	width: 100%;
	height: 550px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.headingCardHomeCarousel{
	display: flex;
	align-items: center;
	z-index: 0;
}
.headingCardHomeCarousel #icon{
	width : 36px;
}
.headingCardHomeCarousel #title{
	margin: 0;
	margin-left: 14px;
	font-family: Outfit;
	font-size: 33px;
	font-weight: 250;
	line-height: 36.3px;
	text-align: left;
	color: #1B1B1C;
}
#homeCarouselRightColumn #text{
	margin-top: 25px;
	font-family: Outfit;
	font-size: 16px;
	font-weight: 300;
	line-height: 22.4px;
	text-align: left;
	color: #7F848B;
}

#fade{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #F2F3F3;
	-webkit-animation: dissolve 1.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	animation: dissolve 1.5s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}
@-webkit-keyframes dissolve {
  0% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
  }
}
@keyframes dissolve {
  0% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
  }
}
#numbers{
	width: 50%;
	display: flex;
	position: absolute;
	left: 20px;
	bottom: 30px;
	z-index: 9;
}
.number{
	border-top: 2px solid #C4C4C4;
	flex: 1;
	margin-right: 10px;
	color: #C4C4C4;
	transition: .3s linear;
	font-family: Outfit;
	font-size: 11px;
	font-weight: 700;
	line-height: 12.1px;
	text-align: left;
	padding-top: 10px;
}
.number.activeNumber{
	flex: 6;
	border-color: #fff;
	color: #fff;
}

.iconaAcf{
	margin-right:10px;
}


.opacity03{
	opacity:0.3;
}

.opacity1{
	opacity:1;
}

#contactform .elementor-field-type-acceptance, #contactform .elementor-field-type-checkbox{
    line-height: 0;
}

#contactform .elementor-field-type-acceptance label, #contactform .elementor-field-type-checkbox label, #nl_form .elementor-field-type-acceptance label{
    position: absolute;
    margin-left: 10px;
}

#contactform .elementor-button{
    margin-top: 20px;
}

#nl_form .elementor-field-type-acceptance label{
    margin-top: 7px;
}

/*@media screen and (max-width:767){
	.elementor-widget-n-accordion .e-n-accordion-item-title, .elementor-widget-n-accordion .e-n-accordion-item-title, .e-n-accordion-item-title-text, .elementor-widget-n-accordion .e-n-accordion-item-title-header{
    	display: block!important;
	}

	.elementor-widget-n-accordion .e-n-accordion-item-title-header h3{
		text-align: center!important;
	}
}*/

ul .sub-menu{
    padding:10px!important;
}

.cta_arrow_container:hover #cta_arrow{
    transform: translate(50%, 0);
    transition: all 0.3s ease-in;
}

.cta_arrow_container:hover #cta .elementor-widget-container{
    border-bottom: 0px!important;
    transition: all 0.3s ease-in;
}


/* TESTO SCORRIMENTO */


.marquee {
  position: relative;
  width: 100vw;
  max-width: 100%;
  height: 70px;
  overflow-x: hidden;
}

.track {
  position: absolute;
  white-space: nowrap;
  will-change: transform;
  animation: marquee 32s linear infinite;
}

@keyframes marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.marquee .content{
text-align: center;
leading-trim: both;
font-family: Outfit;
font-size: 60px;
font-style: normal;
font-weight: 250;
line-height: 100%;
letter-spacing: -0.6px;
display: flex;
}


.marquee .content .smaller{
font-size: 30px;
}

.marquee .content span{
padding-left: 10px;
padding-right: 10px;
}

@media screen and (max-width: 767px) {
    .marquee .content{
        font-size: 30px;
    }
    
    .marquee .content .smaller{
        font-size: 20px;
        }

    .marquee .content span{
        padding-left: 10px;
        padding-right: 10px;
    }
}

.elementor-field-type-acceptance .elementor-field-option label, .elementor-field-type-checkbox .elementor-field-option label{
    font-size: 11px!important;
}


@media screen and (max-width: 767px){
	
	#contactform .elementor-button{
		margin-top: 40px;
	}
	
	#contactform .elementor-field-group-policy{
		margin-bottom: 30px;
	}
	
	#nl_form .elementor-button[type="submit"] {
		margin-top: 10px;
	}
}


@media screen and ((min-width: 767px) and (max-width: 1024px)){
	
	#contactform .elementor-button{
		margin-top: 50px;
	}
	
	#contactform .elementor-field-group-policy{
		margin-bottom: 20px;
	}
	
	#nl_form .elementor-button[type="submit"] {
		margin-top: 10px;
	}
}


@media screen and ((min-width: 1024px) and (max-width: 1200px)){
	
	#contactform .elementor-button{
		margin-top: 45px;
	}
	
	#contactform .elementor-field-group-policy{
		margin-bottom: 25px;
	}
}

@media screen and (min-width: 1024px){
	#nl_form .elementor-button[type="submit"] {
		position: absolute;
		margin-bottom: 15px;
	}
}

@media screen and ((min-width: 1200px) and (max-width: 1440px)){
	
	#contactform .elementor-button{
		margin-top: 30px;
	}
	
	#contactform .elementor-field-group-policy{
		margin-bottom: 10px;
	}
}

