@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,700|Roboto:400,100,300,500|Roboto+Slab:400,100,300,700);
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=KoHo:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;1,200;1,300;1,400;1,500;1,600;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;700&display=swap');

body { 
	line-height:1.8em;
	 font-family: "KoHo", sans-serif;
	font-weight:400 !important;
	z-index:100;
	background:#ffffff !important;
	overflow:hidden;
	
}


body.internal { 
	line-height:1.8em;
	font-family: 'Montserrat', sans-serif;
	font-weight:400 !important;
	z-index:100;
	background:#ffffff !important;
}

.labelEtichetta  p { line-height:1.1em;}
p { line-height:1.2em; }

.etichetta {background:#eaeaea; text-align:right; min-width:150px;border-bottom:5px solid #f8f9fa  !important; }

.hero {
    justify-content: center;
    text-align: center;
    min-height: 500px;
}

.IMheroitem { overflow:hidden; background: #1f1f1f; position:relative; border-top:4px solid #ADB5BD}

.hometext p { line-height:1.2em; color: #CED4DA }

.istitutionaltext { color: #777; line-height:22px; }
.istitutionaltext a { color: #DB002F}
.istitutionaltext h3, .istitutionaltext h2 { color: #DB002F; padding-top:10px; font-family: 'Oswald', sans-serif !important; font-weight:400; }

.internal .datitech ul li  { line-height:25px; padding-bottom:5px ; margin-bottom:5px; border-bottom: 1px dashed rgba(0,0,0,0.1)}
.internal .datitech ul li ul { margin-top:10px}
.internal .datitech ul li:last-child { border-bottom:0px solid}

.bkgContactFoot { background: #343A40}
.bkgCredits { background:#6C757D; border-top:10px solid #6C757D}
.bkgSocial { background: #3D444B}
.bkgVertical { background-color:#6C757D}
.bkg212529 {background-color:#2B3036}
.bkg2A2F34 {background-color:#2A2F34}
.bg-DEE2E6 {background-color:#DEE2E6}
.bgADB5BD {background-color:#ADB5BD; }
.headingTitle { line-height: 1.2em}
.catbeforetitle {border-bottom:1px solid #eaeaea; font-size:20px;}
.mainTitleProduct { font-size: 50px !important}

.boxKeyPoints { min-height:100vh !important; }

.heroHeaderImage {height:50vh}

.link2gamma {font-size:20px; border-top:1px solid #495057; border-bottom:1px solid #495057; color:#ADB5BD !important; text-decoration:none; background:rgba(140,140,140,0.05)}
.tdsLink {color:#CED4DA}		
.Tridimensionalviewer {
	grid-area: demo;
	position: sticky;
    top: 0;
    /*height: 100vh;*/
    flex: 1;
    display: flex;
    justify-content: center;
    border: 0px solid #555;
    box-sizing: border-box;
}

.mainColorDB002F {color:#DB002F}
.mainBKGDB002F {background-color:#DB002F}

a { text-decoration: none !important; outline: none;}

.container { 
	
	
	}
	
	.preheaderSocial { background:#eaeaea; font-size:13px; color: #DB002F}
	
	
	.Roboto-ExtraLight {  font-family: 'Roboto', sans-serif !important; font-weight:100; }
	.Montserrat-ExtraLight {  font-family: 'Montserrat', sans-serif !important; font-weight:100; }
	.Montserrat-Light {  font-family: 'Montserrat', sans-serif !important; font-weight:300; }
	.Roboto-Light {  font-family: 'Roboto', sans-serif !important; font-weight:300; }
	.Roboto-Normal {  font-family: 'Roboto', sans-serif !important; font-weight:400; }
	.Roboto-Medium {  font-family: 'Roboto', sans-serif !important; font-weight:500; }
	.Roboto-Bold {  font-family: 'Roboto', sans-serif !important; font-weight:700; }
	.Montserrat-Bold {  font-family: 'Montserrat', sans-serif !important; font-weight:700; }
	.Roboto-ExtraBold {  font-family: 'Roboto', sans-serif !important; font-weight:900; }
	
	.Oswald-Bold {  font-family: 'Oswald', sans-serif !important; font-weight:700; }
	.Oswald-Medium {  font-family: 'Oswald', sans-serif !important; font-weight:300; text-transform:uppercase }
	.Oswald-Normal {  font-family: 'Oswald', sans-serif !important; font-weight:200; text-transform:uppercase }
	
	
	.RobotoCondensed-Light {  font-family: 'Roboto Condensed', sans-serif; font-weight:300; }
	.RobotoCondensed-Normal {  font-family: 'Roboto Condensed', sans-serif; font-weight:400; }
	.RobotoCondensed-Bold {  font-family: 'Roboto Condensed', sans-serif; font-weight:700; }
	
	
	.OpenContent { color:#999; font-family: 'Open Sans', sans-serif; font-weight:400; font-size:15px; }
	
	.RobotoSlabThin{ font-family: 'Roboto Slab', serif; font-weight: 100}
	.RobotoSlabLight { font-family: 'Roboto Slab', serif; font-weight: 300}
	.RobotoSlabNormal { font-family: 'Roboto Slab', serif; font-weight: 400}
	.RobotoSlabBold { font-family: 'Roboto Slab', serif; font-weight: 700}
	
	
	.Poppins-ExtraLight {
	   font-family: 'Poppins', sans-serif !important;
		font-weight: 100
	}
	
	
	.Poppins-Light {
		font-family: 'Poppins', sans-serif !important;
		font-weight: 200
	}

	.Poppins-Regular {
		font-family: 'Poppins', sans-serif !important;
		font-weight: 300
	}
	
	.Poppins-Bold {
		font-family: 'Poppins', sans-serif !important;
		font-weight: 700
	}
	
	
	.koho-extralight {
	  font-family: "KoHo", sans-serif;
	  font-weight: 200;
	  font-style: normal;
	}

	.koho-light {
	  font-family: "KoHo", sans-serif;
	  font-weight: 300;
	  font-style: normal;
	}

	.koho-regular {
	  font-family: "KoHo", sans-serif;
	  font-weight: 400;
	  font-style: normal;
	}

	.koho-medium {
	  font-family: "KoHo", sans-serif;
	  font-weight: 500;
	  font-style: normal;
	}

	.koho-semibold {
	  font-family: "KoHo", sans-serif;
	  font-weight: 600;
	  font-style: normal;
	}

	.koho-bold {
	  font-family: "KoHo", sans-serif;
	  font-weight: 700;
	  font-style: normal;
	}

	.koho-extralight-italic {
	  font-family: "KoHo", sans-serif;
	  font-weight: 200;
	  font-style: italic;
	}

	.koho-light-italic {
	  font-family: "KoHo", sans-serif;
	  font-weight: 300;
	  font-style: italic;
	}

	.koho-regular-italic {
	  font-family: "KoHo", sans-serif;
	  font-weight: 400;
	  font-style: italic;
	}

	.koho-medium-italic {
	  font-family: "KoHo", sans-serif;
	  font-weight: 500;
	  font-style: italic;
	}

	.koho-semibold-italic {
	  font-family: "KoHo", sans-serif;
	  font-weight: 600;
	  font-style: italic;
	}

	.koho-bold-italic {
	  font-family: "KoHo", sans-serif;
	  font-weight: 700;
	  font-style: italic;
	}

/* vertical spacing */
	.vertical00 {
		margin-bottom: 0 !important;
	}
	
	.vertical01 {
		margin-bottom: 1px !important;
	}
	
	.vertical02 {
		margin-bottom: 2px !important;
	}
	
	.vertical03 {
		margin-bottom: 3px !important;
	}
	
	.vertical04 {
		margin-bottom: 4px !important;
	}
	
	.vertical05 {
		margin-bottom: 5px !important;
	}
	.vertical10 {
		margin-bottom: 10px !important;
	}
	.vertical15 {
		margin-bottom: 15px !important;
	}
	.vertical20 {
		margin-bottom: 20px !important;
	}
	.vertical25 {
		margin-bottom: 25px !important;
	}
	.vertical30 {
		margin-bottom: 30px !important;
	}
	.vertical35 {
		margin-bottom: 35px !important;
	}
	.vertical40 {
		margin-bottom: 40px !important;
	}
	.vertical45 {
		margin-bottom: 45px !important;
	}
	.vertical50 {
		margin-bottom: 50px !important;
	}
	.vertical55 {
		margin-bottom: 55px !important;
	}
	.vertical60 {
		margin-bottom: 60px !important;
	}
	.vertical65 {
		margin-bottom: 65px !important;
	}
	.vertical70 {
		margin-bottom: 70px !important;
	}
	.vertical75 {
		margin-bottom: 75px !important;
	}
	.vertical80 {
		margin-bottom: 80px !important;
	}
	.vertical85 {
		margin-bottom: 85px !important;
	}
	.vertical90 {
		margin-bottom: 90px !important;
	}
	.vertical95 {
		margin-bottom: 95px !important;
	}
	.vertical100 {
		margin-bottom: 100px !important;
	}
/* Top vertical spacing */	
	.Tvertical00 {
		margin-top: 0 !important;
	}
	
	.Tvertical01 {
		margin-top: 1px !important;
	}
	
	.Tvertical02 {
		margin-top: 2px !important;
	}
	
	.Tvertical03 {
		margin-top: 3px !important;
	}
	
	.Tvertical04 {
		margin-top: 4px !important;
	}

	.Tvertical05 {
		margin-top: 5px !important;
	}
	.Tvertical10 {
		margin-top: 10px !important;
	}
	.Tvertical15 {
		margin-top: 15px !important;
	}
	.Tvertical20 {
		margin-top: 20px !important;
	}
	.Tvertical25 {
		margin-top: 25px !important;
	}
	.Tvertical30 {
		margin-top: 30px !important;
	}
	.Tvertical35 {
		margin-top: 35px !important;
	}
	.Tvertical40 {
		margin-top: 40px !important;
	}
	.Tvertical45 {
		margin-top: 45px !important;
	}
	.Tvertical50 {
		margin-top: 50px !important;
	}
	.Tvertical55 {
		margin-top: 55px !important;
	}
	.Tvertical60 {
		margin-top: 60px !important;
	}
	.Tvertical65 {
		margin-top: 65px !important;
	}
	.Tvertical70 {
		margin-top: 70px !important;
	}
	.Tvertical75 {
		margin-top: 75px !important;
	}
	.Tvertical80 {
		margin-top: 80px !important;
	}
	.Tvertical85 {
		margin-top: 85px !important;
	}
	.Tvertical90 {
		margin-top: 90px !important;
	}
	.Tvertical95 {
		margin-top: 95px !important;
	}
	.Tvertical100 {
		margin-top: 100px !important;
	}
	
	
	.font-weight-100 { font-weight:100}
	.font-weight-200 { font-weight:200}
	.font-weight-300 { font-weight:300}
	.font-weight-400 { font-weight:400}
	.font-weight-500 { font-weight:500}
	.font-weight-600 { font-weight:600}
	.font-weight-700 { font-weight:700}
	
	.txt10 { font-size:10px}
	.txt12 { font-size:12px}
	.txt13 { font-size:13px}
	.txt14 { font-size:14px}
	.txt16 { font-size:16px}
	.txt18 { font-size:18px}
	.txt20 { font-size:20px}
	.txt22 { font-size:22px}
	.txt25 { font-size:25px}
	.txt30 { font-size:30px}
	.txt35 { font-size:35px}
	.txt40 { font-size:40px}
	.txt45 { font-size:45px}
	.txt50 { font-size:50px}
	.txt55 { font-size:55px}
	
	.eapps-link { display:none}
	
	
	.text-black { color:black} 
	
	.bg-1F1F1F {background-color:#3D444B}
	.bg-1A1A1A {background-color:#495057 !important;}
	.bg-tds {background-color:#f8f9fa !important;}
	.bgTDS{background: linear-gradient(#495057, #212529);}
	
	.bkgliveness { background-color:#f6f2e9}
	
	
	.borderRadiuszero {
		-webkit-border-radius: 0px !important;
		-moz-border-radius: 0px !important;
		border-radius: 0px !important;
	}
	

	.ombra {
		-webkit-box-shadow: #000 0px 0px 5px !important;
		-moz-box-shadow: #000 0px 0px 5px  !important;
		box-shadow: #000 0px 0px 5px  !important;
	}
	
	
	.ombraLight {
		-webkit-box-shadow: #333 2px 5px 10px !important;
		-moz-box-shadow: #333 2px 5px 10px  !important;
		box-shadow: #333 2px 5px 10px  !important;
	}
	
	.ombraCorso {
		-webkit-box-shadow: #ccc 0px 1px 5px !important;
		-moz-box-shadow: #ccc 0px 1px 5px  !important;
		box-shadow: #ccc 0px 1px 5px  !important;
	}

	.menuprincipale { min-height:6px}
    #videoContainer { display:block; background:none; overflow:hidden; position:relative;   min-height: 80px;  border-bottom:10px solid #eaeaea}
	#navPrincipale { display:none}
	#navPrincipale a { text-decoration:none; color: black; font-weight:300; font-size:16px}
	.navbar-inverse {  border-color: #eaeaea !important}
	
	.specs { font-family: 'Roboto', sans-serif; }
	
	.specsSmall { background:#DB0028; padding:10px}
	.specsSmall .titolo{ font-size:18px; line-height:1.1em; font-weight:400; margin-bottom:10px;color:white; text-transform:lowercase;  border-bottom:1px solid rgba(255,255,255,0.5); padding-bottom:5px}
	.specsSmall .descrizione{ font-family: 'Roboto', sans-serif;  font-size:13px; line-height:1.2em; color:white; font-weight:300;   }
	
	
	.specsProd .titolo{ font-size:80px; line-height:1.1em; font-weight:700; margin-bottom:10px;color:#DB0028; text-transform:uppercase;  border-bottom:1px solid rgba(255,255,255,0.5); padding-bottom:5px}
	.specsProd .descrizioneHeader { font-size:20px; line-height:1.1em; margin-bottom:10px;color:#DB0028 }
	
	.specs .titolo {  font-size:30px; line-height:1.1em; margin-bottom:10px;color:#DB0028}
	.specs .descrizione {  font-family: 'Roboto', sans-serif;  font-size:14px; line-height:1.2em; color:#999; font-weight:300; }
	.specs .descrizioneBig {  font-family: 'Roboto', sans-serif;  line-height:1.2em; color:#999; font-weight:300; font-size:15px} 
	
	
	video#bgvid { 
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width:auto ;
    height: auto;
    z-index: -100;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
	
#preloaderVideo { background: rgba(255,255,255,1); height:100%; width:100%; position:fixed; top:0; left:0; z-index:1000;  }
.txtDB0028 { color:#667d73}
.txt347A9A {color:#666;font-family: 'Montserrat', sans-serif !important; font-weight:300; margin-bottom:5px !important }


.preloaderObjects {
	
	position: fixed;
    top: 50%;
    left: 50%;
    width: 280px;
    height: 126px;
    margin-top: -126px;
    margin-left: -140px;
	
}

.testimonial-section:after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(219, 0,40, 0.3);
}
.testimonial-section {
   position: relative;
    background: url('../images/max-trainer-ftr.jpg') no-repeat center center fixed;
    -webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}


.hero-bkg-cover {
   position: absolute;
    background: url('../images/max-trainer-ftr.jpg') no-repeat center center fixed;
    -webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}




.videoSubSafari{
   position: relative;
    background: url('../images/videoPosterMaxTrainer.jpg') no-repeat !important;
    -webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.datiapp li { color:#999; line-height:1.6em; }

#map {
    height: 700px;
    width: 100%;
}

img.lazy {
	min-height:50px;
	min-width:50px;
    background: transparent url(../images/loading.gif) no-repeat 50% 50%;
}

.logoToorxHeader { padding:0px; }
#heroitemHp { background:black; height:580px; }
#heroitemHpInternal { background:black; height:330px; }


.cellaspecs {
	   
		display: table-cell !important;
	   
   }

@media (max-width: 767px) {
  
   #heroitemHp { background:black; height:170px; }
   #heroitemHpInternal { background:black; height:170px; }
   .tileHomeProducts, .tileHome { 
		border-right:0px solid white !important;
		border-left:0px solid white !important;
   }
   
   
   
   .cellaspecs {
	   
		display: none !important; 
	   
   }
   
   
   
}

#navPrimary { z-index:9}
#navPrimary li{ }
#navPrimary li.first { border:0px solid; padding-left:0}
#navPrimary li.last { border:0px solid; padding-right:0}
#navPrimary li a { color:#000000; text-decoration:none; padding:0 5px; font-size:16px}
.mura-index { border-top:0px solid !important}
.releaseDate  { font-weight:bold;}
.title { padding:10px 0;}
#navPrimary li.active { background:#DB0336; color:white; }
#navPrimary li.active a{ color:white; }

#navPrimary li.last a{ color:white; padding-right:0 !important }



.tileHome { 
	
	padding:0; position:relative; max-height:584px; /*height:584px;*/ overflow:hidden;
	margin-bottom:5px;
	
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,555555+100 */
	background: rgb(0,0,0); /* Old browsers */
	/* IE9 SVG, needs conditional override of 'filter' to 'none' */
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMTAwJSI+CiAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjMDAwMDAwIiBzdG9wLW9wYWNpdHk9IjEiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzU1NTU1NSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
	background: -moz-linear-gradient(-45deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 100%); /* FF3.6-15 */
	background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,rgba(0,0,0,1)), color-stop(100%,rgba(0,0,0,1))); /* Chrome4-9,Safari4-5 */
	background: -webkit-linear-gradient(-45deg, rgba(0,0,0,1) 0%,rgba(0,0,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: -o-linear-gradient(-45deg, rgba(0,0,0,1) 0%,rgba(0,0,0,1) 100%); /* Opera 11.10-11.50 */
	background: -ms-linear-gradient(-45deg, rgba(0,0,0,1) 0%,rgba(0,0,0,1) 100%); /* IE10 preview */
	background: linear-gradient(135deg, rgba(0,0,0,1) 0%,rgba(0,0,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#000000',GradientType=1 ); /* IE6-8 fallback on horizontal gradient */
	
}
.tileHome .labelEtichetta {
	background:rgba(219,3,54,0.5); border-top:1px solid rgba(255,255,255,0.2); font-size:20px; padding:15px 20px 35px 20px ; position:absolute; width:100%; bottom:0; left:0
}


.tileHomeProducts { 
	padding:0; position:relative; overflow:hidden;
	/*margin-bottom:1px;*/
	border-right:4px solid white;
	border-bottom:4px solid white;
}

.tileHomeProducts.black { background:#111}
.tileHomeProducts.blue { background:#eaeaea}
.tileHomeProducts.white { background:#fff}
.tileHomeProducts.grey { background:#f4f4f4}
.tileHomeProducts.pro { background:#A38A74}

.tileHomeProducts.blue a{ color:#333 !important}
.tileHomeProducts.black a{ color:#fff !important}



.tileHomeProducts:first-child { border-left:0px solid white}
.tileHomeProducts:last-child{ border-right:0px solid white}

.tileHomeProducts .labelEtichetta {
	font-size:30px; padding:10px 20px ; 
}

.tileHomeProducts .abstract { color:rgba(255,255,255,0.7); font-size:13px; font-weight:300; line-height:16px; padding:8px 4px}

.tileHomeProducts .abstract a {color:rgba(255,255,255,0.7);}
.tileHomeProducts .abstract a:after { content:"+"; font-family: 'Roboto Slab', serif; font-weight: 700; color:#333; font-size:30px; position:absolute; right:10px }


.logoWebstore {border:0px solid #DBE5E7; background:rgba(255,255,255,1)}
.titleBox { font-size:30px; color:rgba(60,60,60,0.44); font-weight:400}

.containerMenuStandard {
	border-top:0px solid #f4f4f4; background:#f4f4f4; border-bottom:1px solid #eaeaea; padding:10px 0
}

.menustandard li{ padding:0 5px; border-right:1px solid #eaeaea }
.menustandard li.last {  border:0}
.menustandard li.first { }
.menustandard li.active { background:#DB0336}
.menustandard li.active a{ background:#DB0336; color:white}
.menustandard li a{ font-size:12px; text-decoration:none }
.breadcrumb { margin:0;border-radius:0 !important}
.breadcrumb a { font-size:16px; color:rgba(255,255,255,0.6); text-decoration:none}
.breadcrumb:before { content:''; color:#666; padding-right:5px;font-size:11px}
.breadcrumb li { margin:0; line-height:1.2em}
.breadcrumb li.last a { color:white; font-weight: 700}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.3rem; }
  .breadcrumb-item + .breadcrumb-item::before {
    display: inline-block;
    padding-right: 0.3rem;
    color: #ffffff;
    content: ">"; }


.ma-image-prefs { 
	overflow: hidden; 
	position:relative; 
	border:1px solid #212529 
}


.ma-image img {
    -webkit-transition: all 0.5s ease; /* Safari and Chrome */
    -moz-transition: all 0.5s ease; /* Firefox */
    -o-transition: all 0.5s ease; /* IE 9 */
    -ms-transition: all 0.5s ease; /* Opera */
    transition: all 0.5s ease;
        max-width: 100%;
		opacity:1;
		cursor:pointer;
		position:relative;
}
.ma-image:after {  
	content: ""; 
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0);
	cursor:pointer;
	 -webkit-transition: all 0.5s ease; /* Safari and Chrome */
    -moz-transition: all 0.5s ease; /* Firefox */
    -o-transition: all 0.5s ease; /* IE 9 */
    -ms-transition: all 0.5s ease; /* Opera */
    transition: all 0.5s ease;
	
	}

.ma-image:hover img {
    -webkit-transform:scale(1.25); /* Safari and Chrome */
    -moz-transform:scale(1.25); /* Firefox */
    -ms-transform:scale(1.25); /* IE 9 */
    -o-transform:scale(1.25); /* Opera */
     transform:scale(1.25);
	 opacity:1;
	 z-index:1000 !important;
}

.linkprod{position:absolute; bottom:0px; z-index:1001; width:100%}
.LabelNew{position:absolute; bottom:22px; right:20px; z-index:11001;}
.labelprod {position:relative; top:0;z-index:1001; width:100%; padding:5px; background: rgba(255,255,255,0.02); border-bottom:0px solid #333}

.ma-image:hover:after {  
	content: ""; 
	 -webkit-transition: all 0.5s ease; /* Safari and Chrome */
    -moz-transition: all 0.5s ease; /* Firefox */
    -o-transition: all 0.5s ease; /* IE 9 */
    -ms-transition: all 0.5s ease; /* Opera */
    transition: all 0.5s ease;
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0);
	z-index:0 !important;
}



.ma-image-internal img {
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -o-transition: all .5s ease;
    -ms-transition: all .5s ease;
    transition: all .5s ease;
    max-width: 100%;
    opacity: 1;
    cursor: pointer;
    position: relative
}

.ma-image-internal:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0);
    cursor: pointer;
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -o-transition: all .5s ease;
    -ms-transition: all .5s ease;
    transition: all .5s ease
}

.ma-image-internal:hover img {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 1;
    z-index: 1000 !important
}

.ma-image-internal:hover:after {
    content: "";
    -webkit-transition: all .5s ease;
    -moz-transition: all .5s ease;
    -o-transition: all .5s ease;
    -ms-transition: all .5s ease;
    transition: all .5s ease;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0);
    z-index: 0 !important
}


 #menu:not( .mm-menu ) {
        display: none;
    }


.labelData { background:#808285; padding:5px 10px;}
.labelDataExtra { background:#f4f4f4; color:#333; padding:5px 10px; border-bottom:1px solid #eaeaea}
.labelTdsExtra { background:#f4f4f4; color:#333; padding:5px 10px; border-bottom:1px solid #eaeaea}
.fb { background:#3B5998 !important; color:white; padding:5px 10px !important; -webkit-border-radius: 3px;-moz-border-radius: 3px;border-radius: 3px; }
.yt { background:#fff !important; color:white; padding:5px 10px !important; -webkit-border-radius: 3px;-moz-border-radius: 3px;border-radius: 3px; }

a.fb:hover{ color:white !important; } 
.pageTitle { font-size: 50px; color: #DB0336;text-align: left;border-bottom: 1px solid #eee;padding-bottom: 10px; margin-top:0}

.bkgblood { background:#667d73 !important}
.txtffffff { color:white}
.icona { font-size:16px; margin-bottom:1px !important}
.valida { background:rgba(255,255,255,0.2); border-bottom:1px solid #333 !important}

.form-group input { background: rgba(255,255,255,0.8); border-bottom:1px solid rgba(0,0,0,0.2) !important; }
textarea.form-control  { background: rgba(255,255,255,0.8); border-bottom:1px solid rgba(0,0,0,0.2) !important; }
.current { color: #fff !important; font-weight: 700}

/************************************ ****************************************************/
	.boxnewsList { position:relative;}
	.boxnewsList img { }
	
	.boxnewsList dl {border-bottom:0px solid #f4f4f4; padding:10px} 
	.boxnewsList .abstract { border-top:1px solid #ccc;border-bottom:1px solid #ccc;}
	.boxnewsList .abstract, .boxnewsList .abstract a { border-bottom:0px solid #f4f4f4; text-transform:lowercase; text-decoration:none;  text-shadow:none; line-height:1.1em !important;}
	.boxnewsList .abstract p { font-weight:100 !important; color:#666}
	.boxnewsList .title a, .boxnewsList .title { text-shadow:none;color:#DB0336 !important; line-height:1.1em !important; display:block; text-decoration:none; }
	.boxnewsList .releaseDate { text-shadow:none; font-size:15px; font-weight:300 !important; color:#ccc; line-height:1.1em !important; display:block; padding-bottom:5px; margin-bottom:0px }
	.boxnewsList .readMore a { color:#DB0336; background:#fff;  font-size:14px;display:block; padding:5px 0; border-bottom:1px solid #f4f4f4; text-decoration:none}
	.boxnewsList .readMore a:before { content:"\00bb"; padding:0 5px } 
/************************************ ****************************************************/
.overflowhidden { overflow:hidden}

.textshadow{text-shadow: 1px 1px 1px rgba(0,0,0,0.8);}
.bkgLabel {border:0px solid rgba(255,255,255,0.4); background:rgba(255,0,0,0.3);}
.bkgLabelNew {border:1px solid rgba(255,255,255,0.4); background:#ffc107;}


.dropdown:hover { 
	background:#000000; color:white; padding-top:12px; margin-top:-12px !important;
	}

#navPrimary li:hover>.dropdown-menu {
  display: block;
}

.dropdown {
	-webkit-transition: all 0.9s ease; /* Safari and Chrome */
    -moz-transition: all 0.9s ease; /* Firefox */
    -o-transition: all 0.9s ease; /* IE 9 */
    -ms-transition: all 0.9s ease; /* Opera */
    transition: all 0.9s ease;
	
}

.sottomenu .dropdown-menu {
    margin: 0 !important;
}

.kidsubmenu {
	-webkit-transition: all 0.0s linear; /* Safari and Chrome */
	-moz-transition: all 0.0s linear; /* Firefox */
	-o-transition: all 0.0s linear; /* IE 9 */
	-ms-transition: all 0.0s linear; /* Opera */
	transition: all 0.0s linear;
	visibility:hidden;
	opacity:0;
	left: -5000px;
	z-index: -10;
}


.openkidsmenu:hover > .kidsubmenu {
	visibility:visible;
	opacity:1;
	-webkit-transition: all 0.1s linear; /* Safari and Chrome */
	-moz-transition: all 0.1s linear; /* Firefox */
	-o-transition: all 0.1s linear; /* IE 9 */
	-ms-transition: all 0.1s linear; /* Opera */
	transition: all 0.1s linear;
	left:0px;
}

.overmenu {background:rgba(33,37,41,0.95); width:100%; padding:30px 25px; position:absolute; color:white; z-index:1001 !important;}


 .image-wrapper:after {
    border-bottom: 15px solid transparent;
    border-top: 15px solid transparent;
    border-right: 15px solid #fff;
    content: “”;
    height: 0;
    position: absolute;
    right: -1px;
    top: 25px;
    width: 0;
}
.whitenodeco { color:white !important; text-decoration:none !important}

.tileHomeProducts h6 { line-height:1.4em !important}
.mainTitle { font-size:50px; line-height:50px; font-weight:500; color:#DB0336; text-align:left; border-bottom:1px solid #eee; padding-bottom:10px }
.videocnt { 
	/* optional way, set loading as background */
        background-image: url('../images/loaderYT.png');
        background-repeat: no-repeat;
        background-position: 50% 50%;
}


#modelViewer { height:100vh; background:#f4f4f4; width:100%}
.flippdf { height:100vh !important; background:#f4f4f4; width:100%}

@media (max-width:767px) {
    .bkgHeader {
        height: 300px !important
    }
    .internal .bkgHeader {
        height: 330px !important
    }
	
	#modelViewer { height:110vw !important; background:#f4f4f4; width:100%}
	.flippdf { height:150vw !important; background:#f4f4f4; width:100%}
	.boxKeyPoints { height:100% !important; min-height:100% !important }
	
	.heroHeaderImage {height:35vh !important }
	
	.mainTitleProduct { font-size: 26px  !important}
	.catbeforetitle {border-bottom:1px solid #eaeaea;font-size:16px;}
	
	.dettagli li span.highlight{font-weight:700;color:#667d73; background: rgba(255,255,255, 0.05);display:block; padding:0 0 !important; line-height:1.75rem !important}
	.dettagli li { padding:5px 0 !important; border-bottom: 1px solid rgba(112,112,112, 0.2); color:#667d73; font-weight:200 !important; line-height:38px}
	
	.txt10 { font-size:10px}
	.txt12 { font-size:12px}
	.txt13 { font-size:13px}
	.txt14 { font-size:14px}
	.txt16 { font-size:12px}
	.txt18 { font-size:17px}
	.txt20 { font-size:16px}
	.txt22 { font-size:18px}
	.txt25 { font-size:20px}
	.txt30 { font-size:25px}
	.txt35 { font-size:17px}
	.txt40 { font-size:20px}
	.txt45 { font-size:22px}
	.txt50 { font-size:25px}
	.txt55 { font-size:27px}
	
	.hero h1 { font-size:3rem !important; margin-bottom:1rem !important; line-height:3.5rem !important; }
	.hero p { font-size:1.20rem !important; margin-bottom:1.5rem; }
	
	.blackoverlay{display: block; position: absolute;top: 0; left: 0; width: 100%; height: 100%; background-color:rgba(0,0,0,0.3); z-index:4}
	
	.titledividernegativefull {
		border-top: 20px solid rgba(205, 192, 175, 0.2);
		width: 100% !important;
		opacity: 1;
	}
	
	.dividernegative { border-top:10px solid rgba(205,192,175,0.5); width: 50% !important; opacity:1 }
	
	.jarallax {min-height:70vh !important}
	
	
	.menu-btn {
	  position: fixed;
	  top: 20px !important;
	  left: 20px !important;
	  padding: 8px; /* padding per click area */
	  background-color: rgba(0,0,0,0.2);
	  border-radius: 3px;
	  cursor: pointer;
	  z-index: 1100;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  transition: background 0.3s;
	  border:1px solid rgba(255,255,255,0.1)
	}
	
	.language-btn {
	  position: fixed;
	  bottom: 20px !important;
	  top: inherit !important;
	  left: 15px !important;
	  padding: 0px; /* padding per click area */
	  z-index: 1100;
	}

	
	
}

@media (min-width:768px) {
    .bkgHeader {}
    .internal .bkgHeader {
        height: 500px !important
    }
}

.image-parallax { height:550px; display:block}



[data-aos="text-reveal"] {
    clip-path: inset(0 100% 0 0);
}
[data-aos="text-reveal"].aos-animate {
    position: relative;
    /*white-space: nowrap;*/
    animation-name: reveal-text;
    animation-duration: 1s;
    animation-fill-mode: both;
    animation-timing-function: cubic-bezier(1, 0.01, 0, 1);
    clip-path: inset(0 100% 0 0);
}
[data-aos="text-reveal"].aos-animate::after {
    content: "";
    position: absolute;
    z-index: 999;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transform: scaleX(0);
    transform-origin: 0 50%;
    animation-duration: 1s;
    animation-fill-mode: both;
    animation-timing-function: cubic-bezier(1, 0.01, 0, 1);
    animation-name: revealer-text;
}
@keyframes reveal-text {
    from {
        clip-path: inset(0 100% 0 0);
    }
    to {
        clip-path: inset(0 0 0 0);
    }
}
@keyframes revealer-text {
    0%,
    50% {
        transform-origin: 0 50%;
    }
    51%,
    100% {
        transform-origin: 100% 50%;
    }
    50% {
        transform: scaleX(1);
    }
    100% {
        transform: scaleX(0);
    }
}
[data-aos="image-reveal"] {
    transform: scaleX(0);
    transform-origin: left;
    transition: all 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    position: relative;
}
[data-aos="image-reveal"]:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: #ffae47;
    z-index: 2;
    transition: all 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transition-delay: 0.5s;
}
[data-aos="image-reveal"].aos-animate {
    transform: scaleX(1);
}
[data-aos="image-reveal"].aos-animate:before {
    transform: translateX(100%);
}



.edge--bottom:after {
  background: inherit;
  content: '';
  display: block;
  height: 50%;
  left: 0;
  position: absolute;
  right: 0;
  z-index: -1;
  -webkit-backface-visibility: hidden;
}
.edge--bottom:after {
  bottom: 0;
  -webkit-transform: skewY(-1.5deg);
          transform: skewY(-1.5deg);
  -webkit-transform-origin: 100%;
          transform-origin: 100%;
}

.edge--bottom--reverse {
  position: relative;
  z-index: 1;
}
.edge--bottom--reverse:after {
  background: inherit;
  content: '';
  display: block;
  height: 50%;
  left: 0;
  position: absolute;
  right: 0;
  z-index: -1;
  -webkit-backface-visibility: hidden;
}
.edge--bottom--reverse:after {
  bottom: 0;
  -webkit-transform: skewY(1.5deg);
          transform: skewY(1.5deg);
  -webkit-transform-origin: 0 100%;
          transform-origin: 0 100%;
}

.edge--top {
  position: relative;
  z-index: 1;
}
.edge--top:before {
  background: inherit;
  content: '';
  display: block;
  height: 50%;
  left: 0;
  position: absolute;
  right: 0;
  z-index: -1;
  -webkit-backface-visibility: hidden;
}
.edge--top:before {
  top: 0;
  -webkit-transform: skewY(1.5deg);
          transform: skewY(1.5deg);
  -webkit-transform-origin: 100% 0;
          transform-origin: 100% 0;
}

.edge--top--reverse {
  position: relative;
  z-index: 1;
}
.edge--top--reverse:before {
  background: inherit;
  content: '';
  display: block;
  height: 50%;
  left: 0;
  position: absolute;
  right: 0;
  z-index: -1;
  -webkit-backface-visibility: hidden;
}
.edge--top--reverse:before {
  top: 0;
  -webkit-transform: skewY(-1.5deg);
          transform: skewY(-1.5deg);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
}

.edge--both {
  position: relative;
  z-index: 1;
}
.edge--both:before, .edge--both:after {
  background: inherit;
  content: '';
  display: block;
  height: 50%;
  left: 0;
  position: absolute;
  right: 0;
  z-index: -1;
  -webkit-backface-visibility: hidden;
}
.edge--both:before {
  top: 0;
  -webkit-transform: skewY(1.5deg);
          transform: skewY(1.5deg);
  -webkit-transform-origin: 100% 0;
          transform-origin: 100% 0;
}
.edge--both:after {
  bottom: 0;
  -webkit-transform: skewY(-1.5deg);
          transform: skewY(-1.5deg);
  -webkit-transform-origin: 100%;
          transform-origin: 100%;
}

.edge--both--reverse {
  position: relative;
  z-index: 1;
}
.edge--both--reverse:before, .edge--both--reverse:after {
  background: inherit;
  content: '';
  display: block;
  height: 50%;
  left: 0;
  position: absolute;
  right: 0;
  z-index: -1;
  -webkit-backface-visibility: hidden;
}
.edge--both--reverse:before {
  top: 0;
  -webkit-transform: skewY(-1.5deg);
          transform: skewY(-1.5deg);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
		 
}
.edge--both--reverse:after {
  bottom: 0;
  -webkit-transform: skewY(1.5deg);
          transform: skewY(1.5deg);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
		 
}

.-schwinn{ background: #eaeaea; color:white}
.-black{ background: #000;}
.-lightgrey{ background: #f4f4f4; color:#000}

.-white{ background: #fff; color:#DC052B}

.block {
  color: #333333;
  font-family: 'Fira Sans', sans-serif;
  margin: 0 0 90px;
  padding: 30px 30px;
  text-align: center;
}

.keypoints { border-bottom:1px solid rgba(255,255,255,0.1); padding-bottom:10px; }
.datitech strong {font-weight:700}

td.valore ul { 
	padding-left: 0;
    list-style: none;
}

.freeprivacypolicy-com---nb-simple {
			max-width:100% !important;
			width:100% !important;
			-webkit-box-shadow: #000 0 0 5px !important;
			-moz-box-shadow: #000 0 0 5px !important;
			box-shadow: #000 0 0 5px !important
}


.comparazionetable td  {  width: 250px !important; min-width: 250px !important; max-width: 250px !important;  padding:10px; height:80px;  }
.comparazionetable th  { vertical-align:middle !important; width: 200px !important; min-width: 200px !important;  max-width: 250px !important; padding:10px;  }
.specalignmiddle { vertical-align:middle !important;}
.yellow { color: yellow}
.lineheight18 {line-height:18px}

.keypointsextra { border-bottom:1px solid rgba(255,255,255,0.1); padding-bottom:10px;}

.iconacompare {
    font-weight: 400;
    font-size: 20px !important;
    margin-bottom: 0px !important
}

.testimonial-section-2020:before { 
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0);
}

footer { position:relative; z-index:5}
header {position:fixed; top:0; left:0; width:100%; z-index:5}
.bg-header-liveness { background-color:rgba(234,232,211, 0.90)}



/* Hero */
.hero { color:white; overflow:hidden; }
.hero h1, .hero h2, .hero p { position:relative; z-index:2; }
.hero h1 { font-size:5rem; margin-bottom:1.25rem; line-height:4.9rem; }
#payffofhero strong {font-weight:700 !important}
.divider { border-top:10px solid rgba(255,255,255,0.5); width:30%; opacity:1 }
.dividernegative { border-top:10px solid rgba(205,192,175,0.5); width:30%; opacity:1 }
.dividernegativefull { border-top:10px solid rgba(205,192,175,0.5); width:25%; opacity:1 }
.titledividernegativefull { border-top:20px solid rgba(205,192,175,0.2); width:25%; opacity:1 }

.titledivider { border-bottom:10px solid rgba(205,192,175,0.5); opacity:1; display:inline-block; }

.positionbkgrelativedefault {background:#fff; width:100%; z-index:4; position:relative}
.positionrelativedefault {z-index:4; position:relative}


.proddivider { border-top:10px solid rgba(205,192,175,0.5); width:25%; opacity:1 }


.hero h2 { font-size:3rem; }
.hero p { font-size:1.50rem; margin-bottom:1.5rem; }

.highlightliveness {  padding:1px; color: #667d73; border-radius:3px; font-weight:700 !important }
.highlightlivenessnoweight {  padding:1px; color: #667d73; border-radius:3px; }

.footerbackground {background-color:#667d73 !important;}
.copybackground {background-color:rgba(220,219,203,1) !important;}

.tns-controls .btn:disabled { opacity:0.2 !important}

.hero__bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: calc(100% + 10px);
    background: #eaeaea;
	z-index:0
}

.hero .container {

    height: 50%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;

}

/* Highlight Div */
#highlightDiv, #highlightDiv2 {
  padding:50px;
  background:#eee;
  color:#000;
  opacity:0;
  transform: translateY(150px);
  transition: background 0.5s, color 0.5s;
}

/* Section2 content z-index sopra video sticky */
#section1 {  }
#section2 { position:relative; z-index:2; background:rgba(140,140,140,1); display:flex; align-items:center; justify-content:center; height:100vh; }
#section3 { position:relative; z-index:2; background:rgba(0,0,0,1); display:flex; align-items:center; justify-content:center; height:100vh; }

/* Sticky image/video section */
.image-full {  width: 100%;
    overflow: hidden;
    position: relative;
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    margin: -2px 0; }
.image-full__bg {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  position:fixed;
  top:0;
  transform: scale(1);
  z-index:0;
}

.image-full__bg__boxed {
  object-fit:cover;
  display:block;
  position:fixed;
  top:0;
  transform: scale(1);
  z-index:0;
}


/*! 
 * OverlayScrollbars
 * Version: 2.12.0
 * 
 * Copyright (c) Rene Haas | KingSora.
 * https://github.com/KingSora
 * 
 * Released under the MIT license.
 */
.os-size-observer,
.os-size-observer-listener {
  scroll-behavior: auto !important;
  direction: inherit;
  pointer-events: none;
  overflow: hidden;
  visibility: hidden;
  box-sizing: border-box;
}

.os-size-observer,
.os-size-observer-listener,
.os-size-observer-listener-item,
.os-size-observer-listener-item-final {
  writing-mode: horizontal-tb;
  position: absolute;
  left: 0;
  top: 0;
}

.os-size-observer {
  z-index: -1;
  contain: strict;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: inherit;
  border: inherit;
  box-sizing: inherit;
  margin: -133px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: scale(0.1);
}
.os-size-observer::before {
  content: "";
  flex: none;
  box-sizing: inherit;
  padding: 10px;
  width: 10px;
  height: 10px;
}

.os-size-observer-appear {
  animation: os-size-observer-appear-animation 1ms forwards;
}

.os-size-observer-listener {
  box-sizing: border-box;
  position: relative;
  flex: auto;
  padding: inherit;
  border: inherit;
  margin: -133px;
  transform: scale(calc(1 / 0.1));
}
.os-size-observer-listener.ltr {
  margin-right: -266px;
  margin-left: 0;
}
.os-size-observer-listener.rtl {
  margin-left: -266px;
  margin-right: 0;
}
.os-size-observer-listener:empty::before {
  content: "";
  width: 100%;
  height: 100%;
}
.os-size-observer-listener:empty::before, .os-size-observer-listener > .os-size-observer-listener-item {
  display: block;
  position: relative;
  padding: inherit;
  border: inherit;
  box-sizing: content-box;
  flex: auto;
}

.os-size-observer-listener-scroll {
  box-sizing: border-box;
  display: flex;
}

.os-size-observer-listener-item {
  right: 0;
  bottom: 0;
  overflow: hidden;
  direction: ltr;
  flex: none;
}

.os-size-observer-listener-item-final {
  transition: none;
}

@keyframes os-size-observer-appear-animation {
  from {
    cursor: auto;
  }
  to {
    cursor: none;
  }
}
.os-trinsic-observer {
  flex: none;
  box-sizing: border-box;
  position: relative;
  max-width: 0px;
  max-height: 1px;
  padding: 0;
  margin: 0;
  border: none;
  overflow: hidden;
  z-index: -1;
  height: 0;
  top: calc(100% + 1px);
  contain: strict;
}
.os-trinsic-observer:not(:empty) {
  height: calc(100% + 1px);
  top: -1px;
}
.os-trinsic-observer:not(:empty) > .os-size-observer {
  width: 1000%;
  height: 1000%;
  min-height: 1px;
  min-width: 1px;
}

/**
 * hide native scrollbars
 * changes to this styles need to be reflected in the environment styles to correctly detect scrollbar hiding
 */
[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport]),
[data-overlayscrollbars-viewport~=scrollbarHidden],
html[data-overlayscrollbars-viewport~=scrollbarHidden] > body {
  scrollbar-width: none !important;
}

[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport])::-webkit-scrollbar,
[data-overlayscrollbars-initialize]:not([data-overlayscrollbars-viewport])::-webkit-scrollbar-corner,
[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar,
[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar-corner,
html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar,
html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar-corner {
  -webkit-appearance: none !important;
          appearance: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

[data-overlayscrollbars-initialize]:not([data-overlayscrollbars]):not(html):not(body) {
  overflow: auto;
}

/**
 * body element
 */
html[data-overlayscrollbars-body] {
  overflow: hidden;
}

html[data-overlayscrollbars-body],
html[data-overlayscrollbars-body] > body {
  width: 100%;
  height: 100%;
  margin: 0;
}

html[data-overlayscrollbars-body] > body {
  overflow: visible;
  margin: 0;
}

/**
 * structure setup 
 */
[data-overlayscrollbars] {
  position: relative;
}

[data-overlayscrollbars~=host],
[data-overlayscrollbars-padding] {
  display: flex;
  align-items: stretch !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  scroll-behavior: auto !important;
}

[data-overlayscrollbars-padding],
[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]) {
  box-sizing: inherit;
  position: relative;
  flex: auto;
  height: auto;
  width: 100%;
  min-width: 0;
  padding: 0;
  margin: 0;
  border: none;
  z-index: 0;
}

[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]) {
  --os-vaw: 0;
  --os-vah: 0;
  outline: none;
}
[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]):focus {
  outline: none;
}
[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~=arrange]::before {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: -1;
  min-width: 1px;
  min-height: 1px;
  width: var(--os-vaw);
  height: var(--os-vah);
}

/**
 * wrapper elements overflow:
 */
[data-overlayscrollbars~=host],
[data-overlayscrollbars-padding] {
  overflow: hidden !important;
}

[data-overlayscrollbars~=host][data-overlayscrollbars~=noClipping],
[data-overlayscrollbars-padding~=noClipping] {
  overflow: visible !important;
}

/**
 * viewport overflow:
 */
[data-overlayscrollbars-viewport] {
  --os-viewport-overflow-x: hidden;
  --os-viewport-overflow-y: hidden;
  overflow-x: var(--os-viewport-overflow-x);
  overflow-y: var(--os-viewport-overflow-y);
}

[data-overlayscrollbars-viewport~=overflowXVisible] {
  --os-viewport-overflow-x: visible;
}

[data-overlayscrollbars-viewport~=overflowXHidden] {
  --os-viewport-overflow-x: hidden;
}

[data-overlayscrollbars-viewport~=overflowXScroll] {
  --os-viewport-overflow-x: scroll;
}

[data-overlayscrollbars-viewport~=overflowYVisible] {
  --os-viewport-overflow-y: visible;
}

[data-overlayscrollbars-viewport~=overflowYHidden] {
  --os-viewport-overflow-y: hidden;
}

[data-overlayscrollbars-viewport~=overflowYScroll] {
  --os-viewport-overflow-y: scroll;
}

[data-overlayscrollbars-viewport~=overflowImportant] {
  overflow-x: var(--os-viewport-overflow-x) !important;
  overflow-y: var(--os-viewport-overflow-y) !important;
}

/**
 * viewport state modifiers:
 */
[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId) {
  font-size: 0 !important;
  line-height: 0 !important;
}

[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)::before,
[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)::after,
[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId) > * {
  display: none !important;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border-width: 0 !important;
}

[data-overlayscrollbars-viewport~=measuring],
[data-overlayscrollbars-viewport~=scrolling] {
  scroll-behavior: auto !important;
  scroll-snap-type: none !important;
}

[data-overlayscrollbars-viewport~=measuring][data-overlayscrollbars-viewport~=overflowXVisible] {
  overflow-x: hidden !important;
}

[data-overlayscrollbars-viewport~=measuring][data-overlayscrollbars-viewport~=overflowYVisible] {
  overflow-y: hidden !important;
}

/**
 * content element:
 */
[data-overlayscrollbars-content] {
  box-sizing: inherit;
}

/**
 * Display contents to bridge any flickering during deferred initialization.
 */
[data-overlayscrollbars-contents]:not(#osFakeId):not([data-overlayscrollbars-padding]):not([data-overlayscrollbars-viewport]):not([data-overlayscrollbars-content]) {
  display: contents;
}

/**
 * optional & experimental grid mode
 */
[data-overlayscrollbars-grid],
[data-overlayscrollbars-grid] [data-overlayscrollbars-padding] {
  display: grid;
  grid-template: 1fr/1fr;
}

[data-overlayscrollbars-grid] > [data-overlayscrollbars-padding],
[data-overlayscrollbars-grid] > [data-overlayscrollbars-viewport],
[data-overlayscrollbars-grid] > [data-overlayscrollbars-padding] > [data-overlayscrollbars-viewport] {
  height: auto !important;
  width: auto !important;
}

@property --os-scroll-percent {
  syntax: "<number>";
  inherits: true;
  initial-value: 0;
}
@property --os-viewport-percent {
  syntax: "<number>";
  inherits: true;
  initial-value: 0;
}
.os-scrollbar {
  --os-viewport-percent: 0;
  --os-scroll-percent: 0;
  --os-scroll-direction: 0;
  --os-scroll-percent-directional: calc(
    var(--os-scroll-percent) - (var(--os-scroll-percent) + (1 - var(--os-scroll-percent)) * -1) *
      var(--os-scroll-direction)
  );
}

.os-scrollbar {
  contain: size layout;
  contain: size layout style;
  transition: opacity 0.15s, visibility 0.15s, top 0.15s, right 0.15s, bottom 0.15s, left 0.15s;
  pointer-events: none;
  position: absolute;
  opacity: 0;
  visibility: hidden;
}

body > .os-scrollbar {
  position: fixed;
  z-index: 99999;
}

.os-scrollbar-transitionless {
  transition: none !important;
}

.os-scrollbar-track {
  position: relative;
  padding: 0 !important;
  border: none !important;
}

.os-scrollbar-handle {
  position: absolute;
}

.os-scrollbar-track,
.os-scrollbar-handle {
  pointer-events: none;
  width: 100%;
  height: 100%;
}

.os-scrollbar.os-scrollbar-track-interactive .os-scrollbar-track,
.os-scrollbar.os-scrollbar-handle-interactive .os-scrollbar-handle {
  pointer-events: auto;
  touch-action: none;
}

.os-scrollbar-horizontal {
  bottom: 0;
  left: 0;
}

.os-scrollbar-vertical {
  top: 0;
  right: 0;
}

.os-scrollbar-rtl.os-scrollbar-horizontal {
  right: 0;
}

.os-scrollbar-rtl.os-scrollbar-vertical {
  right: auto;
  left: 0;
}

.os-scrollbar-visible {
  opacity: 1;
  visibility: visible;
}

.os-scrollbar-auto-hide.os-scrollbar-auto-hide-hidden {
  opacity: 0;
  visibility: hidden;
}

.os-scrollbar-interaction.os-scrollbar-visible {
  opacity: 1;
  visibility: visible;
}

.os-scrollbar-unusable,
.os-scrollbar-unusable *,
.os-scrollbar-wheel,
.os-scrollbar-wheel * {
  pointer-events: none !important;
}

.os-scrollbar-unusable .os-scrollbar-handle {
  opacity: 0 !important;
  transition: none !important;
}

.os-scrollbar-horizontal .os-scrollbar-handle {
  bottom: 0;
  left: calc(var(--os-scroll-percent-directional) * 100%);
  transform: translateX(calc(var(--os-scroll-percent-directional) * -100%));
  width: calc(var(--os-viewport-percent) * 100%);
}

.os-scrollbar-vertical .os-scrollbar-handle {
  right: 0;
  top: calc(var(--os-scroll-percent-directional) * 100%);
  transform: translateY(calc(var(--os-scroll-percent-directional) * -100%));
  height: calc(var(--os-viewport-percent) * 100%);
}

@supports (container-type: size) {
  .os-scrollbar-track {
    container-type: size;
  }
  .os-scrollbar-horizontal .os-scrollbar-handle {
    left: auto;
    transform: translateX(calc(var(--os-scroll-percent-directional) * 100cqw + var(--os-scroll-percent-directional) * -100%));
  }
  .os-scrollbar-vertical .os-scrollbar-handle {
    top: auto;
    transform: translateY(calc(var(--os-scroll-percent-directional) * 100cqh + var(--os-scroll-percent-directional) * -100%));
  }
  .os-scrollbar-rtl.os-scrollbar-horizontal .os-scrollbar-handle {
    right: auto;
    left: 0;
  }
}
.os-scrollbar-rtl.os-scrollbar-vertical .os-scrollbar-handle {
  right: auto;
  left: 0;
}

.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless,
.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless.os-scrollbar-rtl {
  left: 0;
  right: 0;
}

.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless,
.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless.os-scrollbar-rtl {
  top: 0;
  bottom: 0;
}

@media print {
  .os-scrollbar {
    display: none;
  }
}
.os-scrollbar {
  --os-size: 0;
  --os-padding-perpendicular: 0;
  --os-padding-axis: 0;
  --os-track-border-radius: 0;
  --os-track-bg: none;
  --os-track-bg-hover: none;
  --os-track-bg-active: none;
  --os-track-border: none;
  --os-track-border-hover: none;
  --os-track-border-active: none;
  --os-handle-border-radius: 0;
  --os-handle-bg: none;
  --os-handle-bg-hover: none;
  --os-handle-bg-active: none;
  --os-handle-border: none;
  --os-handle-border-hover: none;
  --os-handle-border-active: none;
  --os-handle-min-size: 33px;
  --os-handle-max-size: none;
  --os-handle-perpendicular-size: 100%;
  --os-handle-perpendicular-size-hover: 100%;
  --os-handle-perpendicular-size-active: 100%;
  --os-handle-interactive-area-offset: 0;
}

.os-scrollbar-track {
  border: var(--os-track-border);
  border-radius: var(--os-track-border-radius);
  background: var(--os-track-bg);
  transition: opacity 0.15s, background-color 0.15s, border-color 0.15s;
}
.os-scrollbar-track:hover {
  border: var(--os-track-border-hover);
  background: var(--os-track-bg-hover);
}
.os-scrollbar-track:active {
  border: var(--os-track-border-active);
  background: var(--os-track-bg-active);
}

.os-scrollbar-handle {
  border: var(--os-handle-border);
  border-radius: var(--os-handle-border-radius);
  background: var(--os-handle-bg);
}
.os-scrollbar-handle:hover {
  border: var(--os-handle-border-hover);
  background: var(--os-handle-bg-hover);
}
.os-scrollbar-handle:active {
  border: var(--os-handle-border-active);
  background: var(--os-handle-bg-active);
}

.os-scrollbar-track:before,
.os-scrollbar-handle:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: block;
}

.os-scrollbar-horizontal {
  padding: var(--os-padding-perpendicular) var(--os-padding-axis);
  right: var(--os-size);
  height: var(--os-size);
}
.os-scrollbar-horizontal.os-scrollbar-rtl {
  left: var(--os-size);
  right: 0;
}
.os-scrollbar-horizontal .os-scrollbar-track:before {
  top: calc(var(--os-padding-perpendicular) * -1);
  bottom: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-horizontal .os-scrollbar-handle {
  min-width: var(--os-handle-min-size);
  max-width: var(--os-handle-max-size);
  height: var(--os-handle-perpendicular-size);
  transition: opacity 0.15s, background-color 0.15s, border-color 0.15s, height 0.15s;
}
.os-scrollbar-horizontal .os-scrollbar-handle:before {
  top: calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);
  bottom: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-horizontal:hover .os-scrollbar-handle {
  height: var(--os-handle-perpendicular-size-hover);
}
.os-scrollbar-horizontal:active .os-scrollbar-handle {
  height: var(--os-handle-perpendicular-size-active);
}

.os-scrollbar-vertical {
  padding: var(--os-padding-axis) var(--os-padding-perpendicular);
  bottom: var(--os-size);
  width: var(--os-size);
}
.os-scrollbar-vertical .os-scrollbar-track:before {
  left: calc(var(--os-padding-perpendicular) * -1);
  right: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-vertical .os-scrollbar-handle {
  min-height: var(--os-handle-min-size);
  max-height: var(--os-handle-max-size);
  width: var(--os-handle-perpendicular-size);
  transition: opacity 0.15s, background-color 0.15s, border-color 0.15s, width 0.15s;
}
.os-scrollbar-vertical .os-scrollbar-handle:before {
  left: calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);
  right: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before {
  right: calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);
  left: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-vertical:hover .os-scrollbar-handle {
  width: var(--os-handle-perpendicular-size-hover);
}
.os-scrollbar-vertical:active .os-scrollbar-handle {
  width: var(--os-handle-perpendicular-size-active);
}

/* NONE THEME: */
[data-overlayscrollbars-viewport~=measuring] > .os-scrollbar,
.os-theme-none.os-scrollbar {
  display: none !important;
}

/* DARK & LIGHT THEME: */
.os-theme-dark,
.os-theme-light {
  box-sizing: border-box;
  --os-size: 15px;
  --os-padding-perpendicular: 2px;
  --os-padding-axis: 10px;
  --os-track-border-radius: 3px;
  --os-handle-interactive-area-offset: 4px;
  --os-handle-border-radius: 3px;
}

.os-theme-dark {
  --os-handle-bg: rgba(0, 0, 0, 0.44);
  --os-handle-bg-hover: rgba(0, 0, 0, 0.55);
  --os-handle-bg-active: rgba(0, 0, 0, 0.66);
}

.os-theme-light {
  --os-handle-bg: rgba(234,232,211, 0.75);
  --os-handle-bg-hover: rgba(234,232,211, 0.85);
  --os-handle-bg-active: rgba(234,232,211, 0.96);  
}



.horizontal-scroll {
  overflow-x: hidden; /* Lo scroll avviene solo tramite JS */
  width: 100%;
}

.horizontal-scroll .row {
  flex-wrap: nowrap; /* tutti in fila orizzontale */
  gap: 1rem;
}

.product {
  cursor: pointer;
  transition: transform 0.3s;
}

.product:hover {
  transform: scale(1.05);
}



#section_to-pin .row.flex-nowrap {
  will-change: transform;
}


/* Hamburger button wrapper (con padding e background) */
.menu-btn {
  position: fixed;
  top: 30px;
  left: 40px;
  padding: 8px; /* padding per click area */
  background-color: rgba(0,0,0,0.2);
  border-radius: 3px;
  cursor: pointer;
  z-index: 1100;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s;
  border:1px solid rgba(255,255,255,0.1)
}

.language-btn {
  position: fixed;
  top: 30px;
  right: 40px;
  padding: 0px; /* padding per click area */
  z-index: 1100;
}



.menu-btn:hover {
  background: rgba(0,0,0,0.4);
}

/* Wrapper barre (dimensioni fisse, animation-safe) */
.bars-wrapper {
  width: 25px;
  height: 16px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* Barre */
.bars-wrapper span {
  display: block;
  height: 2px;
  width: 100%;
  background: white;
  border-radius: 0px;
  transform-origin: center;
}

/* Overlay menu */
.overlayMenu {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.95);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  opacity:0;
  pointer-events:none;
  z-index:1000;
}

.overlayMenu a {
  font-size:2rem;
  color:#fff;
  text-decoration:none;
  margin:15px 0;
  transform:translateY(50px) scale(0.95);
  opacity:0;
}

.overlayMenu a:hover {
  color:#667d73;
}


.slider-hint .icon {
  font-size: 18px;
  display: inline-block;
  animation: slide-hint 1.5s ease-in-out infinite;
}

@keyframes slide-hint {
	0%   { transform: translateX(0);    opacity: 0.2; }
  25%  { transform: translateX(6px); opacity: 1; }
  50%  { transform: translateX(0);   opacity: 0.2; }
  75%  { transform: translateX(-6px);opacity: 1; }
  100% { transform: translateX(0);   opacity: 0.2; }
}

footer a:hover {color:#667d73 !important}

.borderscrollspy {
		border-bottom:4px solid white;
		padding-top:2px;
		padding-bottom:2px;
}

.scroll-link {cursor:pointer}
.scroll-link:hover {color:#000 !important}

.fw-bold.scroll-link:hover {color:#ffff !important}

#headerContent {height:100vw}
.negativemarginimagesection { margin: 2px -12px !important }

#patentlogo { position:absolute; top:0; left:0; width:100%; overflow:hidden}

.dettagli li { padding:15px 0; border-bottom: 1px solid rgba(112,112,112, 0.2); color:#667d73; font-weight:200 !important; line-height:38px}
.dettagli li span.highlight{font-weight:600;color:#667d73; background: rgba(255,255,255, 0.05); padding:10px 0; }


.descriptiontext {color:#667d73 !important}
.descriptiontext strong {color:#667d73}
.descriptiontext p {line-height:38px}


.highlightElmnt{font-weight:700;color:#667d73;}

/*.blackoverlay{display: block; position: absolute;top: 0; left: 0; width: 100%; height: 100%; background-color:rgba(0,0,0,0.35); z-index:4}*/

.blackoverlay {
 background-color: rgba(0,0,0,0.35); /* Partenza a 0.35 */
  transition: background-color 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 4;
}


.blackoverlayEmotional{display: block; position: absolute;top: 0; left: 0; width: 100%; height: 100%; background-color:rgba(0,0,0,0.25); z-index:4}

.bkgbox {background-color: rgb(249, 246, 239);}

.bkglinear {
		background-image: linear-gradient(to right bottom, #f9f6ef, #fef7f4, #fff9fa, #fefcfe, #ffffff); 		
		border-bottom:1px solid rgba(0,0,0,0.05);border-right:1px solid rgba(0,0,0,0.05);
		background-repeat: no-repeat;
		background-size: cover;
		
		}
		
		
.bkglinearimg {
		background-image: url("../../images/bgdiagonal.png");		
		border-bottom:1px solid rgba(0,0,0,0.05);border-right:1px solid rgba(0,0,0,0.05);
		background-repeat: no-repeat;
		background-size: cover;
		
		
		}

.bkglineareverse {
		background-image: linear-gradient(to right bottom, #ffffff, #fef7f4, #fff9fa, #fefcfe, #f9f6ef); 		
		border-bottom:1px solid rgba(0,0,0,0.05);border-right:1px solid rgba(0,0,0,0.05)}



.progressBar {
  position: absolute;
  bottom: 20px;
  left: 50%;
  padding: 0;
  transform: translateX(-50%);
  width: 300px;
  height: 6px;
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 3px;
  z-index: 400;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.progress-fill {
  width: 0%;
  height: 100%;
  background-color: #667d73;
  border-radius: 3px;
  transition: width 0.2s ease;
}				


.underlinedotted { 
	text-decoration: underline dotted;
	text-underline-offset: 2px; 
	}
	
.underlinedotted:hover { color: #333}
.hero .underlinedotted:hover { color: rgba(220, 219, 203, 1)}

#loading-overlay {
	position: fixed;
    top: 0;
    left: 0;
    width: 100vw;  /* tutta la larghezza viewport */
    height: 100vh; /* tutta l’altezza viewport */
    
	background: #667D73;
	background: linear-gradient(163deg,rgba(102, 125, 115, 1) 0%, rgba(234, 232, 211, 1) 100%);
	
	
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    z-index: 9999;
}

/* Animazione fade-out */
#loading-overlay.hidden {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.5s ease;
}



.descriptionabstract {
  /* Stato iniziale */
  color: #000000;
  background-color: #ffffff;
  
  /* Transizione gestita dal browser - MOLTO più efficiente! */
  transition: all 0.8s ease-out;
  
  /* Altri tuoi stili esistenti... */
}

/* Opzionale: classe per stato animato */
.descriptionabstract.animated {
  color: #FFFFFF;
  background-color: #667d73;
}


#muscoli {
  /* Stato iniziale */
  background-color: #333;
  /* Transizione gestita dal browser - MOLTO più efficiente! */
  transition: all 0.6s ease-out;
  
  /* Altri tuoi stili esistenti... */
}

/* Opzionale: classe per stato animato */
#muscoli.animated {
  background-color: #667d73;
}

.descriptionCategories {
  /* Stato iniziale */
  background-color: #fff;
  color: #000;
  
  /* Transizione smooth */
  transition: all 0.4s ease-out;
}

/* Stato animato */
.descriptionCategories.animated {
  background-color: #333;
  color: #fff;
}


.tochangecolorbkg {
  /* Stato iniziale */
  background-color: #f6f2e9;
  
  /* Transizione smooth */
  transition: all 0.6s ease-out;
}

/* Stato animato */
.tochangecolorbkg.animated {
  background-color: #fff;
}

.weglot_switcher.vertical_expand .language-option { 

	  font-family: "KoHo", sans-serif !important;
	  font-weight: 300 !important;
	  font-style: normal !important;
	  background-color: rgba(234,232,211, 0.90) !important;

}

.weglot_switcher.vertical_expand .language-option a {
	 font-weight: 300 !important;
	 background-color: transparent !important;
}