
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');


/*GENERALS*/

html{
 /*overflow-x:hidden;*/
}

::-webkit-scrollbar {
   -webkit-appearance: none;
   width: 0px;
}


:focus-visible{
  outline: none; 
}


body {
    width: 100%;
    background-color: var(--background-color);
    background-position: top center;
    background-size: contain;
    background-repeat-y: repeat;
}

section{
    padding: 0;
    position: relative;
    padding: 5.5rem;
}




a{
   text-decoration:none;
   color:inherit;
}

a:hover{
   color:inherit;
}




.close-menu{
   position: fixed;
   width: 100%;
   height: 100%;
   top: 0;
   left: 0;
   z-index: 999;
   transform: translateX(100%);
}


.close-menu.show{
   transform: translateX(0%);
}


.logo {
   width: 100%;
   transition: 0.3s;
   position: relative;
   text-align: center;
   padding: 1.5rem 6.5rem 1.5rem 6.5rem;
   margin: 0;
   height: auto;
   display: flex;
   flex-direction: column;
   justify-content: center;
   background: #fff;
}


.logo.bg_red{
    background:var(--red-color);
}


.logo > svg{
   height: 100%;
   fill:var(--secondary-color)
}


.logo > img {
    transition: 0.2s;
    width: 12rem;
    height: auto;
}

.menu-scroll .logo > img{
   transform:scale(0.8);
   transform-origin:left;
}

.menu-scroll .logo > svg, .show-menu .logo > svg{
   fill:var(--primary-color)
}


.menu-scroll .navigation-bar {
}


input, textarea, checkbox, radio, select{
   border-radius:0 !Important;
}

.col-flex{
    display:flex;
}

.bgd-nav{
   transition: 0.2s;
   position: sticky;
   z-index: 100;
   display: block;
   width: 100%;
   padding: 0;
   margin-top: -4px;
}

.navbar-cont{
   display: grid;
   width: 100%;
   transition: 0.1s;
   align-items: center;
   gap: 0;
   grid-template-columns: 25vw auto;
}

.menu-scroll .navbar-cont{}

.bgd-primary{
   
   background-color: var( --secondary-color );
}

.bgd-secondary{
   
   background-color: var( --third-color );
}


.topbar {
   padding: 3px 0px;
}

.share-link {
   position: absolute;
   display: flex;
   height: 100vh;
   top: -3rem;
   right: 20.4vw;
}

.social-link {
   list-style: none;
   padding: 0;
   margin: 0;
   display: flex;
   flex-direction: column;
   position: sticky;
   top: 6rem;
   gap: 1rem;
   align-self: flex-start;
}



.social-link > li:not(:last-child){
   margin-bottom: 4rem;
}


.lang-item{
   cursor:pointer;
   text-transform:uppercase;
   padding: 0;
   font-family: 'Montserrat', sans-serif;
   font-size: 14px;
   font-weight: 300;
   line-height: 1.5em;
   letter-spacing: 1px;
   
   color: #FFFFFF78;
   fill: #FFFFFF78;
   transition: 0.2s;
}

.social-link  > a {
    color: #be0203 !important;
    background: linear-gradient(to bottom, #b2b7c300 50%, #be0203 50%);
    background-size: 100% 200%;
    background-position: right top;
    font-size: 1.5rem;
    transition: 0.3s;
    text-align: center;
    margin-bottom: 0;
    border: 2px solid #be0203;
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.social-link > a:hover{
       background-position: left bottom;
       color: #ffffff !important;
}

.social-link  > a:last-child{

    margin-bottom: 0rem;
}



.social-link  > span {
    color: #be0203 !important;
    background: linear-gradient(to bottom, #b2b7c300 50%, #be0203 50%);
    background-size: 100% 200%;
    background-position: right top;
    padding: 0;
    font-size: 1.5rem;
    transition: 0.3s;
    text-align: center;
    margin-bottom: 1rem;
    cursor:pointer;
    border: 2px solid #be0203;
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.social-link > span:hover{
       background-position: left bottom;
       color: #ffffff !important;
}

.social-link  > span:last-child{

    margin-bottom: 0rem;
}



.social-link > li > span{
       color: #ffffff !important;
       background: var(--secondary-color);
       padding: 10px 16px;
       font-size: 2rem;
       cursor:pointer;
       transition: 0.3s;
}

.social-link > li > span:hover{
       background-color: var(--primary-color);
       color: #fff !important;
}


.nav-item{
   position:relative;
}


.nav-item:not(:last-child){
   margin-right: 1rem;
}

.nav-link.cms{
   padding: 0;
   font-size: 18px;
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   line-height: 1.5em;
   padding: 2rem;
   padding-right: 1rem !important;
   padding-left: 1rem !important;
   margin: 0 1rem;
   letter-spacing: 2px;
   display: flex;
   text-transform: uppercase;
   color: var(--secondary-color);
   fill: var(--secondary-color);
   transition: 0.2s;
   cursor:pointer;
   align-items: center;
}

.nav-link.cms > svg{
   transition: 0.2s;
   width: 10px;
   height: 10px;
   margin-left: 10px;
   margin-bottom: 4px;
}

.nav-link.cms.open > svg{
transform: rotate(-90deg);
}



.nav-link.cms.active, .nav-link.cms:hover{
   color: var(--secondary-color);
   fill: var(--secondary-color);
}


.nav-item:after{
   content: '';
   margin-top: -4px;
   width:0;
   height: 3px;
   left: 0;
   background-color: var(--default-color);
   z-index: 1;
   display: block;
   transition:0.2s;
}



.nav-item:hover:after, .nav-item.active:after{
   
    width:100%;
}



.hero {
    z-index: 2;
    display: grid;
    grid-template-columns: 25vw auto;
    padding: 0;
    top: -5.5rem;
    height: calc(100vh - 1.5rem);
    background: var(--default-color);
    margin-bottom: -5.5rem;
}

.banner-hero{
    background-color: var(--red-color);
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}


.hero .container{
    position:relative;
    z-index:10;
    margin-top: 5rem;
}


.hero.page .container{
    display:flex;
    gap:3rem;
    flex-direction: column;
}




.hero canvas{
    top: -5rem;
    position: absolute;
    left: 0;
}


.hero.nextegy canvas{
    top: -5rem;
}

.hero.sinapsi canvas{
    top: -5rem;
}

.hero.default canvas{
    top: 0;
}


.footer canvas{
    top: 0;
    position: absolute;
    left: 0;
}

.footer .container-fluid{
    z-index:4;
}

.hero .overlay{
    width: 100%;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    height: 70vh;
}

.bg-points{
    transition:3s;
}

.bg-points.hover-top {
    transform: scale(0.95) translateY(-2rem);
}

.bg-points.hover-bottom {
    transform: scale(0.95) translateY(2rem);
}


.bg-line-points{
    width: 100%;
    position: absolute;
    top: 0;
    z-index:8;
    left: 0;
}


.square-star{
    width: 9px;
    position: absolute;
    height: 9px;
    z-index:9;
    background: var(--default-color);
    transition: 0.3s;
}


.position-1{
    left: 0px;
    bottom: 14.5vh;
}

.position-2{
    bottom: 0;
    left: 15vw;
}
.position-3{
    top: 38vh;
    left: 26.5vw;
}
.position-4{
    bottom: 7vh;
    left: 34.4vw;
}
.position-5{
    left: 45.5vw;
}
.position-6{
    left: 53.5vw;
    bottom: 18vh;
}
.position-7{
    left: 53.5vw;
    top: 14.5vh;
}
.position-8{
    right: 19.5vw;
    top: 0.75vh;
}
.position-9{
    right: 9.5vw;
    top: 21vh;
}
.position-10{
    right: 0px;
}



.logo-sinapsi-hero{
    position: absolute;
    left: 23vw;
    z-index: 9;
    top: 10.5vh;
    transition:0.3s;
}


.logo-nextegy-hero{
    position: absolute;
    right: 9vw;
    bottom: 13.5vh;
    z-index: 9;
    transition:0.3s;
}


.logo-sinapsi-hero img{
    width: 15rem;
    height: auto;
}
.logo-nextegy-hero img{
    width: 15rem;
    height: auto;
}



.hero.page{
    width: 100vw;
    background-color: var(--secondary-background-color);
    padding: 8rem 3rem 0rem 3rem;
    z-index: 2;
}

.hero.certificate{
    padding-bottom: 5rem;
}


.default-button{
    display: flex;
    align-items: center;
    position:relative;
    justify-content: flex-start;
    flex-direction: row;
    border-bottom-left-radius: 3rem;
    border-top-left-radius: 3rem;
    margin-top: 3rem;
}

.bg-button-default{
    background: linear-gradient(90deg, rgb(77 77 77) 75%, rgba(255,255,255,0) 100%);
    position:absolute;
    left: 1.5rem;
    bottom:0;
    height:100%;
    z-index: 1;
    width:0;
    transition: 0.2s;
    border-bottom-left-radius: 2rem;
    border-top-left-radius: 2rem;
}

.default-button:hover .bg-button-default{
    width:100%;
}



.default-button:after{
    content: '';
    width: calc(100% - 2.4rem);
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 2.4rem;
    background: linear-gradient(90deg, rgba(255,255,255,1) 75%, rgba(255,255,255,0) 100%);
    z-index: 5;
}

.default-button:before{
    content: '';
    width: 50%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: transparent;
    z-index: 5;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    border-top: 2px solid #fff;
    border-bottom-left-radius: 40px;
    border-top-left-radius: 40px;
}


.default-button svg{
    width: 5rem;
    height: 5rem;
    position: relative;
    z-index: 4;
}

.default-button span:before{
    content: '';
    z-index: 0;
    bottom: 0;
    width: calc(100% - 2.4rem);
    height: 2px;
    position: absolute;
    top: 0;
    left: 2.4rem;
    background: linear-gradient(90deg, rgba(255,255,255,1) 75%, rgba(255,255,255,0) 100%);
    z-index: 2;
}

.default-button span{
font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: var(--default-color);
    margin-left: 2rem;
    letter-spacing: 2px;
    z-index: 3;
    font-size: 14px;
}













.default-button-reverse{
    display: flex;
    align-items: center;
    position:relative;
    justify-content: flex-end;
    flex-direction: row;
    border-bottom-left-radius: 3rem;
    border-top-left-radius: 3rem;
    margin-top: 3rem;
}

.bg-button-default-reverse{
    background: linear-gradient(270deg, rgb(77 77 77) 75%, rgba(255,255,255,0) 100%);
    position:absolute;
    right: 1.5rem;
    bottom:0;
    height:100%;
    z-index: 1;
    width:0;
    transition: 0.2s;
    border-bottom-right-radius: 2rem;
    border-top-right-radius: 2rem;
}

.default-button-reverse:hover .bg-button-default-reverse{
    width:100%;
}



.default-button-reverse:after{
    content: '';
    width: calc(100% - 2.4rem);
    height: 2px;
    position: absolute;
    bottom: 0;
    right: 2.4rem;
    z-index: 5;
    background: linear-gradient(270deg, rgba(255,255,255,1) 75%, rgba(255,255,255,0) 100%);
}

.default-button-reverse:before{
    content: '';
    width: 50%;
    height: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
    background: transparent;
    z-index: 5;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    border-top: 2px solid #fff;
    border-bottom-right-radius: 40px;
    border-top-right-radius: 40px;
}


.default-button-reverse svg{
    width: 5rem;
    height: 5rem;
    position: relative;
    z-index: 4;
}

.default-button-reverse span:before{
    content: '';
    z-index: 0;
    bottom: 0;
    width: calc(100% - 2.4rem);
    height: 2px;
    position: absolute;
    top: 0;
    right: 2.4rem;
    background: linear-gradient(270deg, rgba(255,255,255,1) 75%, rgba(255,255,255,0) 100%);
    z-index: 2;
}

.default-button-reverse span{
font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: var(--default-color);
    margin-right: 2rem;
    letter-spacing: 2px;
    z-index: 3;
    font-size: 14px;
}



.down svg{
    transform: rotate(90deg);
}
































.nextegy-button{
    display: flex;
    align-items: center;
    position:relative;
    justify-content: flex-start;
    flex-direction: row;
    border-bottom-left-radius: 3rem;
    border-top-left-radius: 3rem;
    margin-top: 3rem;
}

.bg-button-nextegy{
    background: linear-gradient(90deg, #53b21b 75%, rgba(255,255,255,0) 100%);
    position:absolute;
    left: 1.5rem;
    bottom:0;
    height:100%;
    z-index: 1;
    width:0;
    transition: 0.2s;
    border-bottom-left-radius: 2rem;
    border-top-left-radius: 2rem;
}

.nextegy-button:hover .bg-button-nextegy{
    width:100%;
}


.nextegy-button:after{
    content: '';
    width: calc(100% - 2.4rem);
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 2.4rem;
    background: linear-gradient(90deg, var(--primary-color-nextegy) 75%, rgba(255,255,255,0) 100%);
    z-index: 5;
}

.nextegy-button:before{
    content: '';
    width: 50%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: transparent;
    z-index: 5;
    border-left: 2px solid var(--primary-color-nextegy);
    border-bottom: 2px solid var(--primary-color-nextegy);
    border-top: 2px solid var(--primary-color-nextegy);
    border-bottom-left-radius: 40px;
    border-top-left-radius: 40px;
}


.nextegy-button svg{
    width: 5rem;
    height: 5rem;
    position: relative;
    z-index: 4;
}

.nextegy-button span:before{
    content: '';
    z-index: 0;
    bottom: 0;
    width: calc(100% - 2.4rem);
    height: 2px;
    position: absolute;
    top: 0;
    left: 2.4rem;
    background: linear-gradient(90deg, var(--primary-color-nextegy) 75%, rgba(255,255,255,0) 100%);
    z-index: 2;
}

.nextegy-button span{
font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: var(--default-color);
    margin-left: 2rem;
    letter-spacing: 2px;
    z-index: 3;
    font-size: 14px;
}








.sinapsi-button{
    display: flex;
    align-items: center;
    position:relative;
    justify-content: flex-start;
    flex-direction: row;
    border-bottom-left-radius: 3rem;
    border-top-left-radius: 3rem;
    margin-top: 3rem;
}

.bg-button-sinapsi{
    background: linear-gradient(90deg, #6600ff8a 75%, rgba(255,255,255,0) 100%);
    position:absolute;
    left: 1.5rem;
    bottom:0;
    height:100%;
    z-index: 1;
    width:0;
    transition: 0.2s;
    border-bottom-left-radius: 2rem;
    border-top-left-radius: 2rem;
}

.sinapsi-button:hover .bg-button-sinapsi{
    width:100%;
}


.sinapsi-button:after{
    content: '';
    width: calc(100% - 2.4rem);
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 2.4rem;
    background: linear-gradient(90deg, var(--primary-color-sinapsi) 75%, rgba(255,255,255,0) 100%);
    z-index: 5;
}

.sinapsi-button:before{
    content: '';
    width: 50%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background: transparent;
    z-index: 5;
    border-left: 2px solid var(--primary-color-sinapsi);
    border-bottom: 2px solid var(--primary-color-sinapsi);
    border-top: 2px solid var(--primary-color-sinapsi);
    border-bottom-left-radius: 40px;
    border-top-left-radius: 40px;
}


.sinapsi-button svg{
    width: 5rem;
    height: 5rem;
    position: relative;
    z-index: 4;
}

.sinapsi-button span:before{
    content: '';
    z-index: 0;
    bottom: 0;
    width: calc(100% - 2.4rem);
    height: 2px;
    position: absolute;
    top: 0;
    left: 2.4rem;
    background: linear-gradient(90deg, var(--primary-color-sinapsi) 75%, rgba(255,255,255,0) 100%);
    z-index: 2;
}

.sinapsi-button span{
font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: var(--default-color);
    margin-left: 2rem;
    letter-spacing: 2px;
    z-index: 3;
    font-size: 14px;
}




















.sinapsi-circle{
    width: 15.25rem;
    height: 15.25rem;
    border-radius: 50%;
    background: conic-gradient(#fff0 136deg, #ffffff 0deg);
    transition: 0.2s all;
    position:relative;
    transform: rotate(180deg);
}

.sinapsi-circle:after{
    content:'';
    top: 0.125rem;
    left: 0.125rem;
    width: calc(100% - 0.25rem);
    position: absolute;
    height: calc(100% - 0.25rem);
    border-radius: 50%;
    background:var(--background-color);
}









/*SLIDER*/



.rw-slider{
   position:relative;
}

.cl-slider{
   position:
   relative;
   z-index: 6;
   min-height: 38rem;
}

.title-slide > h1{
   font-family: 'Montserrat', sans-serif;
   z-index: 9;
   height: auto;
   width: auto;
   color: rgb(255, 255, 255);
   text-decoration: none;
   min-height: 0px;
   min-width: 0px;
   max-height: none;
   max-width: none;
   text-align: left;
   line-height: 100px;
   letter-spacing: 0px;
   font-weight: 400;
   font-size: 100px;
   transform-origin: 50% 50%;
   opacity: 1;
   transform: translate(0px, 0px);
   visibility: visible;
}


.h1-c{
   font-family: 'Montserrat', sans-serif;
   font-size: 4rem;
   line-height: 4rem;
   color: var(--default-color);
   letter-spacing: 0;
   font-weight: bold;
   
   margin: 0;
}

.h1-c > span{
    font-weight: 400;
}


.h1-tab{
   font-family: 'Montserrat', sans-serif;
   font-size: 5rem;
   line-height: 5rem;
   color: #898989a3;
   letter-spacing: 0;
}

.h1-tab span{
   opacity:0.5;
   color:var(--default-color);
   cursor:pointer;
}


.h1-tab span.active{
   opacity:1;
}

.button-slide{
   position: relative;
   top: 4rem;
   left: 0;
   opacity: 1;
   visibility: visible;
}

.navigation-slide {
   width: 100px;
   position: relative;
   top: 1rem;
   left: 25rem;
   opacity: 1;
   visibility: visible;
}


.navigation-slide>div:first-child{
   margin-bottom: 1rem;
}
.navigation-slide>div{
   animation-duration:0.5s;
}

.prev-slide{
   animation-delay: 0.5s;
   cursor:pointer;
}

.next-slide{
   cursor:pointer;
   
}

.button-slide>a{
   z-index: 11;
   background: url(../../../media/bottone-bianco@4x.png) center center / contain no-repeat;
   font-family: 'Montserrat', sans-serif;
   height: auto;
   width: auto;
   color: rgb(113, 94, 81);
   text-decoration: none;
   white-space: nowrap;
   min-height: 0px;
   min-width: 0px;
   max-height: none;
   max-width: none;
   text-align: left;
   line-height: 16px;
   letter-spacing: 1px;
   font-weight: 400;
   font-size: 16px;
   padding: 30px;
   transform-origin: 50% 50%;
   opacity: 1;
   transform: translate(0px, 0px);
   visibility: visible;
}

.c-ellipse{
   text-align: left;
   width: 53.267%;
   max-width: 56.267%;
   top: -137px;
   left: -68px;
   position: absolute;
   z-index:-1;
}


.c-ellipse-page{
   text-align: left;
   width: 53.267%;
   max-width: 56.267%;
   top: -137px;
   left: -68px;
   position: absolute;
   z-index:-1;
}




.ellipse{
   -webkit-transition: background .3s,border .3s,border-radius .3s,-webkit-box-shadow .3s;
   transition: background .3s,border .3s,border-radius .3s,-webkit-box-shadow .3s;
   -o-transition: background .3s,border .3s,border-radius .3s,box-shadow .3s;
   transition: background .3s,border .3s,border-radius .3s,box-shadow .3s;
   transition: background .3s,border .3s,border-radius .3s,box-shadow .3s,-webkit-box-shadow .3s;
}

.ellipse > img{
   height: auto;
   max-width: 80%;
   border: none;
   border-radius: 0;
   -webkit-box-shadow: none;
   box-shadow: none;
   vertical-align: middle;
   display: inline-block;

}



.shape-text {
   margin: 0;
   display: block;
   text-indent: 60px;
   width:750px;
   animation: reveal 1s forwards;
}

@keyframes reveal {

 
 0% {
   clip-path: inset(0 0 0 100%);
 }

 100% {
   clip-path: inset(0 0 0 0);
 }

}

.shape-text-2 {
   display: block;
   overflow: hidden;
   animation: openclose 1s ease-in-out;
   /*animation-delay: 0.5s;*/
}





@keyframes openclose {
 0% {
   left:5rem;
   width: 0;
 }
 50% {
   left:2.5rem;
   width: 0;
 }
 100% {
   left:0rem;
   width: 750px;
 }
 
}



.slider-composition {
   position: absolute;
   height: 38rem;
   top: 0rem;
   z-index: 5;
}


.first-image {
   height: 100%;
   position: absolute;
   right: -27rem;
   animation-duration:0.5s;
}


.first-image > img{
   height: 100%;

}

.second-image {
   height: 100%;
   position: absolute;
   right: -27rem;
   animation-duration:0.5s;
   animation-delay: 0.5s;
}


.second-image > img{
   height: 100%;

}

.overlay-image {
   height: 100%;
   position: absolute;
   right: -27rem;
   animation-duration:0.5s;
   animation-delay: 0.7s;
}


.overlay-image > img{
   height: 100%;

}


.slider-hero{
    position:relative;
}






.slides {
    position:relative;
    width: 100%;
    overflow: hidden;
    display: grid;
    grid-template-rows: 100%;
    grid-template-columns: 100%;
    place-items: center;
}

.slide {
	width: 100%;
	height: 100%;
	grid-area: 1 / 1 / -1 / -1;
	pointer-events: none;
	opacity: 0;
	overflow: hidden;
	position: relative;
	display: grid;
	place-items: center;
	will-change: transform, opacity;

}

.slide__img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    will-change: transform, opacity, filter;
}

.slide--current {
	pointer-events: auto;
	opacity: 1;
}






.deco {
	width: 100%;
	height: 100%;
	grid-area: 1 / 1 / -1 / -1;
	pointer-events: none;
	position: relative;
	opacity: 0;
	background: #000000;
	will-change: transform, opacity;
}

.deco--1 {
	background: #be0203;
}

.deco--2 {
	background: #9a0101;
}

.deco--3 {
	background: #000000;
}

.deco--4 {
	background: #000;
}

.deco--5 {
	background: #060b17;
}

.deco--6 {
	background: #34365c;
}

.deco--7 {
	background: #9f6794;
}







.item-slider{
   display:none;

}

.item-slider.show{
   display: block;

}


.description-slider {
   position: relative;
   top: 5rem;
   animation-duration:0.5s;
   /*animation-delay: 0.7s;*/
}




.description-slider > p {
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   height: auto;
   text-decoration: none;
   white-space: normal;
   text-align: left;
   line-height: 24px;
   letter-spacing: 0px;
   font-weight: 200;
   
   font-size: 18px;
}


.navigation-slider{
   display: flex;
   z-index: 100;
   position: absolute;
   bottom: 2rem;
   left: 4rem;
   gap: 0.5rem;
}

.nav-slider{
   cursor:pointer;
   height: 10px;
   width: 10px;
   background: #fff;
   opacity: 0.5;
   transition: 0.2s;
}

.nav-slider:not(:first-child){
}

.nav-slider.active{
   opacity: 1;
}






/*menu*/

.logo-scroll{
   visibility:hidden;
   opacity:0;
   position: absolute;
   transition:0.2s;
   top: 2rem;
   width: 2rem !important;
   height: auto !important;
}

.logo-menu{
   visibility:hidden;
   opacity:0;
   position: absolute;
   transition: 0.2s;
   left: 0;
   top: 0;
}

.logo-fixed{
   visibility:visible;
   opacity:1;
   transition:0.2s;
}

.menu-scroll{
   background-color: var(--red-color);
   top: 0;
}



.menu-scroll .logo {
}



.menu-scroll .logo .logo-fixed{
   transform: scale(0.7);
   transform-origin: center;
}


.menu-scroll .logo .logo-scroll{
   visibility:visible;
   opacity:1;
}

.show-menu .container .logo .logo-fixed{
   /* visibility:hidden; */
   /* opacity:0; */
}









.box-menu{
   width: 100%;
   transition:0.5s;
   opacity:1;
}

.box-menu.hide{
   opacity:0;
}

.menu-list{
   list-style: none;
   padding: 0;
   margin: 0;
}

.menu-item{
   font-family: 'Montserrat', sans-serif;
   font-size: 3rem;
   line-height: 3rem;
   position: relative;
   letter-spacing: 1px;
   transition: 0.2s;
   padding-bottom: 0.8rem;
   cursor: pointer;
   color: #3a3a3a;
}

.menu-item:not(:last-child){
   margin-bottom: 0.8rem;
}

.menu-item:after{
  content:'';
  width: 0;
  height: 2px;
  position: absolute;
  bottom: 0;
  background: #1a1a1a36;
  transition:0.2s;
}

.menu-item.active{
   font-weight: 700;
}



.menu-item.active:after{
  width: 100%;
}


.menu-item:hover:after{
  width: 100%;
}


.menu-item.selected{
   font-weight: 700;
}



.menu-item.selected:after{
  width: 100%;
}





.sub-menu{
   width: 100%;
   height: 100%;
   position: relative;
   overflow-y: scroll;
}


.sub-menu-list{
   list-style: none;
   padding: 0;
   margin: 0;
   position: absolute;
   top: 0;
   width: 100%;
   transform: translateX(-10%);
   opacity: 0;
   visibility: hidden;
   transition: 0.2s;
}

.sub-menu-list.show{
   opacity: 1;
   transform: translateX(0);
   visibility: visible;
}

.sub-menu-list .menu-item{
   font-family: 'Montserrat', sans-serif;
   font-size: 1.5rem;
   line-height: 1.5rem;
   position: relative;
   text-transform: capitalize;
   letter-spacing: 3px;
   padding-bottom: 1rem;
   cursor: pointer;
   color: var(--secondary-color);
}

.sub-menu-list .menu-item:not(:last-child){
   margin-bottom: 1rem;
}

.sub-menu-list .menu-item:after{
  content:'';
  width: 0;
  height: 2px;
  position: absolute;
  bottom: 0;
  background: #00eeff78;
  transition:0.2s;
}

.sub-menu-list .menu-item.active{
   font-weight: 700;
   color:var(--default-color);
}



.sub-menu-list .menu-item.active:after{
  width: 100%;
}


.sub-menu-list .menu-item:hover:after{
  width: 100%;
}


.top-head{background-color: var(--secondary-color);position: relative;z-index: 101;display: flex;justify-content: space-between;}

.top-head-menu{
    display: flex;
    justify-content: flex-end;
}

.item-top-head{
    color: var(--white-color);
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: 2px;
    padding: 0.5rem 1rem;
    position: relative;
    transition:0.2s;
}


.item-top-head:hover{
    color: var(--white-color);
    background:#fff3;
}

.item-top-head.active{
    color: var(--white-color);
    background:#fff3;
}


.item-top-head:not(:last-child):after{
    content:'|';
    position: absolute;
    right: -3px;
    color: #fff;
    z-index: 9;
}






.item-top-head span {
    position:relative;
    z-index:3;
}

.item-top-head:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: 1;
    background-color: #000000;
    transition:0.2s;
}



.item-top-head:hover:before {
    opacity: 1;
}

.item-top-head.active:before {
    opacity: 1;
}






.item-menu{
    color: var(--white-color);
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 1px;
    padding: 2rem;
    position:relative;
    font-weight: 500;
    transition: 0.2s;
    display: flex;
    height: 100%;
    align-items: center;
}

.item-menu span {
    position:relative;
    z-index:3;
    opacity: 0.5;
}

.item-menu:after {
    content: '';
    position: absolute;
    width: 100%;
    bottom: 0;
    height: 0;
    left: 0;
    z-index: 1;
    background-color:#fff;
    transition:0.2s;
}

.item-menu:hover span{
    opacity:1;
}

.item-menu:hover{
    color: var(--white-color);
}


.item-menu.nextegy:after {
    background-color:var(--primary-color-nextegy);
}


.item-menu.sinapsi:after {
    background-color:var(--primary-color-sinapsi);
}
.item-menu:hover:after {
    height: 5px;
}

.item-menu.active:after {
    height: 5px;
}

.menu-scroll .navigation-bar .item-menu{
    padding-top: 1rem;
    padding-bottom: 1rem;
}





/*form*/


.form-footer{
   position:relative;
}

label {
   display: inline-block;
   line-height: 1;
}


.label-newsletter{
   font-family: 'Montserrat', sans-serif;
   font-size: 15px;
   font-weight: 600;
   color: var( --default-color );
   letter-spacing: 1px;
   padding-bottom:15px;
}

.input-newsletter{
   color: #FFFFFF6B;
   border-color: #FFFFFF4D;
   border-radius: 30px 0px 0px 30px;
   font-family: 'Montserrat', sans-serif;
   font-size: 13px;
   font-weight: 600;
   width: 80%;
   letter-spacing: 1px;
   background-color: var( --third-color );
   min-height: 47px;
   border: 1px solid;
   border-width: 1px 0px 1px 1px;
   padding: 6px 16px;
}

.input-newsletter::placeholder{
   color: #FFFFFF6B;
}
input:focus, input:focus-visible{
   outline: none;
}


.btn-newsletter {
   background-image: url(../img/bottone-traccia-bianco@4x.png);
   background-size: contain;
   background-position: center;
   background-repeat: no-repeat;
   position: absolute;
   bottom: -1.1rem;
   right: 0;
   color: #fff;
   border:0px;
   padding: 30px;
   font-family: 'Montserrat', sans-serif;
}

.btn-newsletter:hover {

   color: #fff;
   border:0px;
   background-image: url(../img/bottone-traccia-bianco@4x.png);
   background-size: contain;
   background-repeat: no-repeat;

}


.small-text{
   font-family: 'Montserrat', sans-serif;
   font-size: 11px;
   font-weight: 300;
   line-height: 1em;
   letter-spacing: 0px;
   color: #FFFFFFAD;
   margin-top: 3rem;
   padding-left: 0px;
}

.title-footer{
   font-family: 'Montserrat', sans-serif;
   font-size: 14px;
   font-weight: 600;
   letter-spacing: 1px;
   margin-top: 2rem;
   margin-bottom: 2px;
   color: var(--red2-color);
   text-transform:uppercase;
}


.title-footer-2{
   font-family: 'Montserrat', sans-serif;
   font-size: 16px;
   font-weight: 600;
   text-transform:uppercase;
   margin-bottom: 2px;
   /*margin-top:1rem;*/
   color:var(--secondary-color);
}





.description-footer{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 12px;
   font-weight: 600;
   letter-spacing: 0.5px;
}

.description-footer > a{
   color: var(--default-color);
   font-style:none;
}


.social-link.footer > li > a{
   
   color: var(--default-color) !important;
   font-family: 'Montserrat', sans-serif;
   font-size: 15px;
   font-weight: 300;
   line-height: 1em;
   letter-spacing: 0px;
   
}

.social-link.footer > li{
  margin:0;
}

.social-link.footer > li:not(:last-child):after{
   content:'//';
   margin:0px 10px;
   color: var(--default-color) !important;
   font-family: 'Montserrat', sans-serif;
   font-size: 15px;
}








/*carousel*/


.carousel-section{
   background-image: url(../../../media/sfumatura_bianca.png);
   background-position: center center;
   background-color:#fff;
   background-repeat: no-repeat;
   background-size: cover;
   transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
   margin-top: 0px;
   margin-bottom: -20px;
   z-index: 1;
   position: relative;
   padding: 100px 0px 0px 0px;
}

.blockquote{
   margin: 0px 250px 50px -80px;
   padding: 20px 0px 0px 80px;
   background-image: url(../../../media/virgolette_marroni.png);
   background-position: top left;
   background-repeat: no-repeat;
   background-size: 6% auto;
}

.title-carousel{
   color:var(--third-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 45px;
   
   line-height: 1.1em;
}

.subtitle-carousel{
   color:var(--third-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 30px;
   font-weight: 300;
}


.ellipse-right {
   position: absolute;
   width: 400px;
   height: 480px;
   right: 0;
   top: -5rem;
}


.ellipse-right > img{
   width:100%;
}




.bullet-c {
   border-radius: 0;
   background: #ffffff;
   width: 0.75rem;
   margin: 0 0.5rem 0 0 !important;
   height: 0.5rem;
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
   bottom: 0rem;
   left: 51.7rem;
   width: 100px;
   text-align: left;
}


.swiper-slide > img{
  width: 100%;
  mix-blend-mode: multiply;
}






.nav-carousel{
   display: flex;
   height: 100%;
   position: relative;
   flex-direction: row;
}


.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: 50%;
    width: auto;
    height: auto;
    margin-top: calc(0px - (var(--swiper-navigation-size)/ 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color,var(--swiper-theme-color));
    background-color: var(--red-color);
   
}


.swiper-button-next{
    right: 0;
    left: auto;
    padding: 1.75rem;
}

.swiper-button-prev{
    left: 0;
    right: auto;
    padding: 1.75rem;
}


.swiper-button-next:after{
   content:'';
}

.swiper-button-prev:after{
   content:'';
}

.swiper-button-next svg, .swiper-button-prev svg {
    height: 1rem;
    width: auto;
    stroke: #fff;
}
.st0 {
    fill: #24fefc;
}

.st1 {
    fill: #121212;
}


/*banner*/


.banner{
   transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
   z-index: 3;
   position: relative;
   margin-top: 0px;
   margin-bottom: 0px;
   padding: 10px 10px 10px 10px;
   background-color: var( --fourth-color );
   
}


.title-banner{
   text-align: left;
   color: var(--third-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 22px;
   font-weight: 600;
   
   line-height: 1.2em;
   letter-spacing: 1px;
   padding:10px;
}

.descrpition-banner{
   text-align: left;
   color: var(--third-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 16px;
   font-weight: 300;
   
   line-height: 1.1em;
   letter-spacing: 0px;
   padding:10px;
}

.link-banner{
   text-decoration: none;
}

.text-link-banner{
       font-size: 16px;
   font-weight: 600;
   letter-spacing: 2px;
   color: var(--third-color);
   font-family: 'Montserrat', sans-serif;
   
}

.icon-link-banner{
   margin-left: 1rem;
}

.icon-link-banner > svg {
   font-size: 70px;
   line-height: 70px;
   height: 70px;
   width: 70px;
}


/*double banner*/

.img-banner-bg{
   background-color: #242424;
   background-position: center center;
   background-repeat: no-repeat;
   background-size: cover;
}

.content-d-banner{
   padding: 50px 50px 50px 50px;
   background: #24242475;
}


.title-double-banner{
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 70px;
   font-weight: 500;
   letter-spacing: 1px;
   margin-bottom: -20px;
}

.description-double-banner{
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 24px;
   font-weight: 200;
   text-transform: uppercase;
   
   letter-spacing: 3px;
}

.divider{
   width: 100%;
   margin: 0 auto;
   margin-left: 0;
   border-top:1px solid;
   border-color:#ffffff5c;
}

.content-link-banner {
   min-height: 180px;
   display: flex;
   align-items: center;
   justify-content: space-between;
}

.img-banner-bg > a{
   text-decoration:none;
}


.content-link-banner > div > svg {
   width: 100px;
   transition: 0.2s;
}

.img-banner-bg > a:hover .content-link-banner > div > svg{
   transform: translateX(-10px);
}




.banner-project{
   padding: 9rem 15rem;
   padding-left: 35vw;
   padding-bottom: 5rem;
   position: relative;
   background-image:url(/media/paolorossifoundation_img_bg.jpg);
   background-repeat: no-repeat;
   background-size:cover;
   background-position:center;
}


.banner-img {
   width: 30%;
   height: 90%;
   position: absolute;
   top: 0;
   background-size: cover;
   left: 0;
   background-repeat: no-repeat;
   background-position: top;
}


.p-banner {
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 100;
   letter-spacing: 0.5px;
   font-size: 22px;
   line-height: 28px;
   
   margin-bottom: 1rem;
}

.marks{
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   
   font-weight: 100;
   position: absolute;
   top: -3rem;
   width: 3rem;
   left: -2rem;
   height: 3rem;
   background-image: url(/media/virgolette.png);
   background-size: 100%;
   background-repeat: no-repeat;
}

/*generic page*/


.page-project .content-page{
   padding-top:5rem;
}

.sec-heading-page{
   margin-top: 0px;
   margin-bottom: 0px;
   padding: 80px 0px 30px 0px;
}

.breadcrumb-page{
   margin-bottom:20px;
}

.breadcrumbs{
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   list-style: none;
   margin: 0;
   padding: 0;
   /*margin-left: -10px;*/
   line-height: 15px;
}

.breadcrumbs > li > a{
   color: #000000;
   font-family: 'Montserrat', sans-serif;
   font-size: 14px;
   font-weight: 300;
   letter-spacing: 1px;
   border-radius: 0px 0px 0px 0px;
   padding: 0px 0px 0px 0px;
   text-transform: uppercase;
   text-decoration:none;
}

.breadcrumbs > li:not(:last-child):after{
   content: '|';
   margin:0px 10px;
   color: #0000005c;
   font-family: 'Montserrat', sans-serif;
   font-size: 12px;
}


.breadcrumbs > li > a.active{
   color: #000;
   font-weight: 600;
}


.breadcrumbs > li.black > a{
   color: #3a3a3a78;
}

.breadcrumbs > li.black:not(:last-child):after{
   color: #3a3a3a78;
}


.breadcrumbs > li.black > a.active{
   color:#3a3a3a;
}



.title-page{
   font-family: 'Montserrat', sans-serif;
   font-size: 99px;
   font-weight: 300;
   line-height: 1em;
   border-radius: 0px 0px 0px 0px;
   padding: 0px 0px 0px 50px;
   color:#fff;
}

.title-page-2{
   font-family: 'Montserrat', sans-serif;
   font-size: 55px;
   font-weight: 300;
   line-height: 1em;
   border-radius: 0px 0px 0px 0px;
   color:#fff;
}



.pre-title-page{
   color: var( --fourth-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 16px;
   font-weight: 300;
   text-transform: uppercase;
       
}

.sub-title-page{
   color: var( --default-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 25px;
   font-weight: 300;
   text-transform: uppercase;
   
   letter-spacing: 3px;
}

.description-page{
   text-align: left;
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 300;
   
}

.empty-space-des{
   height: 100px;
   margin-bottom: 20px;
}



.sec-grid-product{

   margin:0 120px;margin-top: 30px;margin-bottom: 6rem;}

.img-grid{
   position:relative;
   cursor:pointer;
   margin-bottom: 20px;
}

.img-grid > img{
   width:100%;
}


.content-grid{
   margin-top: 0.5rem;
}

.pre-title-grid{
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 14px;
   font-weight: 400;
   text-transform: uppercase;
   line-height: 1em;
   letter-spacing: 2px;
   border-radius: 0px 0px 0px 0px;
   padding: 0px 0px 0px 10px;
   margin:0px;
}

.title-grid{
   display: block;
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 38px;
   font-weight: 600;
   
   border-radius: 0px 0px 0px 0px;
   padding: 0px 0px 0px 5px;
   margin:0px;
}

.t-features {
   color: var( --fourth-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 13px;
   font-weight: 400;
   
   letter-spacing: 1px;
   margin-top: -10px;
   margin: 0;
   padding: 0 0 0 5px;
}

.features{
   list-style: none;
   margin: 0;
   padding: 0;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   padding: 0 0 0 5px;
}


.features > li .text{
   color: var( --fourth-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 12px;
   font-weight: 400;
   text-transform: uppercase;
   
   letter-spacing: 1px;
}

.features > li .text.white{
   color:#fff;
}

.features > li > span > img{
   width: 14px;
   margin-right: 5px;
}



.features > li:not(:last-child){
   margin-right:5px;
}


.btn-request {
   background-image: url(../img/bottone-bianco-collez@4x.png);
   background-size: contain;
   background-position: center;
   background-repeat: no-repeat;
   color: #fff;
   margin: 10px 0px;
   border:0px;
   background-color: #FFFFFF00;
   padding: 25px 25px 25px 25px;
   font-size: 14px;
   font-weight: 500;
   letter-spacing: 1px;
   font-family: 'Montserrat', sans-serif;
   transition:0.2s;
}

.btn-request:hover, .btn-request:focus, .btn-request:active, .btn-request:focus-visible {

   color: var( --third-color );
   border:0px;
   background-image: url(../img/bottone-bianco-collez-hover@4x.png);
   background-size: contain;
   background-repeat: no-repeat;

}






/*attributes*/

.sec-attributes{
   background-image: url(../../../media/sfumatura_bianca.png);
   background-position: bottom;
   background-color: #fff;
   background-repeat: no-repeat;
   background-size: contain;
   position: relative;
   padding: 100px 0px 100px 0px;
}

.title-attributes{
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 55px;
   font-weight: 600;
   
   letter-spacing: 0px;
}

.subtitle-attributes{
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 16px;
   font-weight: 300;
   text-transform: uppercase;
   
   margin-bottom: 0;
   letter-spacing: 1px;
}

.sec-attributes .container .row .col-md-6{
   padding: 10px 10px 10px 50px;
}
.sec-attributes .container .row .col-md-6:first-child{
   padding: 10px 50px 10px 10px;
}


.attribute-img{
   width: 100%;
}

.attribute-name {
   margin-top: 5px;
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 16px;
   font-weight: 600;
   line-height: 20px;
   text-align: left;
   
   letter-spacing: 0.5px;
   text-transform: lowercase;
}

.posa-name{
    margin-top: 5px;
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 600;
   line-height: 20px;
   
   letter-spacing: 0.5px;
}


   


.sec-attributes .container .row .col-md-6:first-child{
   border-right:1px solid #B4ADA47A;
}


.item-download {
   border-bottom: 1px solid #B4ADA47A;
   display: flex;
   padding: 30px 0px;
   flex-direction: row;
   align-items: center;
   justify-content: space-between;
}

.item-download > svg {
   width: 150px;
   transition:0.2s;
}

.item-download > p {
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 600;
   text-transform: uppercase;
   
   text-decoration: underline;
   letter-spacing: 1px;
}

.item-download > div > p {
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   margin: 0;
   font-weight: 600;
   text-transform: uppercase;
   
   text-decoration: underline;
   letter-spacing: 1px;
}



.item-tutorial {
   border-bottom: 1px solid #B4ADA47A;
   display: flex;
   margin: 30px 0px;
   flex-direction: row;
   align-items: center;
   justify-content: space-between;
}

.item-tutorial > svg {
   width: 150px;
   transition:0.2s;
}

.item-tutorial > p {
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 600;
   text-transform: uppercase;
   
   text-decoration: underline;
   letter-spacing: 1px;
}

.item-tutorial > div > p {
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   margin: 0;
   font-weight: 600;
   text-transform: uppercase;
   
   text-decoration: underline;
   letter-spacing: 1px;
}


a[onclick]{
   
   cursor:pointer;
   
}


.box-downloads > a:hover .item-tutorial > svg {
   transform: skew(-10deg);
}



.box-downloads > a{
   text-decoration:none;
}

.box-downloads > a:hover .item-download > svg{
   transform: skew(-10deg);
}


.popup{
   position: fixed;
   top: 0;
   z-index: 9999;
   width: 100%;
   left: 0;
   background: #020202a3;
   display: flex;
   height: 100%;
   align-content: center;
   justify-content: center;
   align-items: center;
   transition:0.5s;
   opacity:0;
   visibility:hidden;
}

.popup.show{
   opacity:1;
   visibility:visible;
}


/*.video {*/
/*    height: 0;*/
/*    overflow: hidden;*/
/*    padding-bottom: 56.25%;*/
/*    padding-top: 30px;*/
/*    position: relative;*/
/*}*/
/*.video iframe,*/
/*.video object,*/
/*.video embed {*/
/*    height: 100%;*/
/*    left: 0;*/
/*    position: absolute;*/
/*    top: 0;*/
/*    width: 100%;*/
/*}*/
   
   
/*reseller*/

.sec-reseller .container .row .col-md-6:first-child{
   padding: 100px 70px 100px 10px;

}

.title-contact{
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 55px;
   font-weight: 600;
   
   letter-spacing: 0px;
}


.description-contact{
   text-align: left;
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 14px;
   font-weight: 600;
   text-transform: uppercase;
   line-height: 1.2em;
   letter-spacing: 1px;
}


.input-cms-2{
   background-color: #715E5100;
   border-color: var( --third-color );
   border-width: 0px 0px 1px 0px;
   border-radius: 0px 0px 0px 0px;
   font-family: 'Montserrat', sans-serif;
   font-size: 13px;
   font-weight: 600;
   letter-spacing: 1px;
   color: var( --third-color );
   min-height: 47px;
   padding: 6px 16px;
   width:100%;
   margin-bottom: 10px;
}

.input-cms-2::placeholder{
   color: var( --third-color );
}


/*form*/



.form-cms{
   position: relative;
   margin: -160px 0px 0px 0px;
   padding: 60px 50px 60px 50px;
   border-style: solid;
   border-width: 1px 1px 1px 1px;
   border-color: #fff;
   border-radius: 0px 0px 0px 0px;
   box-shadow: 10px -10px 0px 0px rgb(255 255 255 / 16%);
}

.input-cms{
   background-color: #715E5100;
   border-color: #fff;
   border-width: 0px 0px 1px 0px;
   border-radius: 0px 0px 0px 0px;
   font-family: 'Montserrat', sans-serif;
   font-size: 13px;
   font-weight: 600;
   letter-spacing: 1px;
   color: #fff;
   min-height: 47px;
   padding: 6px 16px;
   width:100%;
       margin-bottom: 10px;
}

.input-cms::placeholder{
   color: #FFFFFF6B;
}

select.input-cms > option{
   color: var( --secondary-color );
   
}

.label-check{
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 300;
   letter-spacing: 0px;
}

.label-check > a{
   text-decoration: underline;
}

.btn-cms {
   background-image: url(../img/bottone-traccia-marrone@4x.png);
   background-size: contain;
   background-position: center;
   background-repeat: no-repeat;
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 15px;
   font-weight: 600;
   border: 0;
   background-color: transparent;
   letter-spacing: 1px;
   border-radius: 0px 0px 0px 0px;
   padding: 30px 30px 30px 30px;
}



/*contact*/

.section-contact{
   margin-bottom: 6rem;
   margin-top: 2rem;
}

.subtitle-contact{
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 22px;
   font-weight: 600;
   
   text-decoration: underline;
   line-height: 1.2em;
   letter-spacing: 0.6px;
   margin-top: 2px;
   margin-bottom: 20px;
   
}

.info-contact{
       margin-bottom: 50px;
}

.info-address-title{
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 600;
   margin-bottom: 2px;
}

.info-contact-description{
   
   color:#fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 15px;
   font-weight: 600;
   letter-spacing: 0.5px;
}


.info-contact-title{
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 600;
   margin-bottom: 2px;
   text-transform:uppercase;
   
}



/*tabs products*/


.tabs-products {
   margin: 5rem 0rem;
}

.tabs-menu {
   display: flex;
   position: relative;
   flex-direction: row;
   justify-content: flex-start;
   align-content: center;
   align-items: center;
   position: absolute;
   width: 100%;
   bottom: 0;
}

.tab-item {
   color: var( --default-color );
   cursor:pointer;
   font-family: 'Montserrat', sans-serif;
   padding: 0.5rem 6rem;
   font-size: 2rem;
   font-weight: 100;
   text-transform: uppercase;
   z-index: 5;
   letter-spacing: 2px;
   position: relative;
   background-color: #fff3;
   text-decoration: underline;
   transition:0.3s;
}

.tab-item.active{
   color: var(--secondary-color);
}

.tab-item:before{
   content: '';
   height: 0px;
   width: 100%;
   position: absolute;
   bottom: 0;
   right: 0;
   z-index: -1;
   transition: 0.2s;
}


.tab-item.active:before{
   background:#fff;
   height: 100%;
}


.tab-content{
   padding:2rem 0;
   display:none;
}

.tab-content.show{
   display:flex;
}

.item-content > a > img{
   width:100%;
   margin-bottom:1rem;
}

.item-content-inverse > a > img{
   width:100%;
   margin-top:1rem;
}


.title-item{
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 34px;
   font-weight: 600;
   line-height: 34px;margin:0;
   
}

.description-item{
   text-align: left;
   color: var( --fourth-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 12px;
   font-weight: 600;
   text-transform: uppercase;
   line-height: 1.2em;
   letter-spacing: 1px;
}


.btn-tab-item {
   background-image: url(../img/bottone-traccia-bianco@4x.png);
   background-size: contain;
   background-position: center;
   background-repeat: no-repeat;
   color: #fff;
   
   border:0px;
   background-color: #FFFFFF00;
   padding: 25px 40px 25px 40px;
   font-size: 14px;
   font-weight: 500;
   letter-spacing: 1px;
   font-family: 'Montserrat', sans-serif;
   transition:0.2s;
}


.btn-tab-item:hover {
   color: #fff;
}



/*maps*/

.map-sec {
   margin: 5rem 0rem;
}

.map-col{
   position: absolute;
   right: 0;
}
.map{
   height:670px;
   width:100%;
}


/*pointer*/
.sec-pointer {
   margin: 5rem 0rem;
}

.title-sec-pointer{
   color:#fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 55px;
   font-weight: 600;
   
}

.desc-sec-pointer{
   text-align: left;
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 300;
}


.link-pointer{
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 16px;
   font-weight: 600;
   text-transform: uppercase;
   
   letter-spacing: 1.5px;    
}


.img-pointer{
   position:relative;
   box-shadow: 10px 10px 0px 0px rgb(113 94 81 / 17%);
}

.img-pointer > img{
   width:100%;
}

.pointer{
   position:absolute;
   width:33px;
   height:33px;
   background-color: var( --third-color );
   color:#fff;
   font-family: 'Montserrat', sans-serif;
   font-size: 15px;
   border-radius:50%;
   text-align:center;
   font-weight: 600;
   padding:5px;
       box-shadow: 0px 0px 20px 0px rgb(0 0 0 / 50%);
}
.no-border{
   border:none;
}

.pp-info-sub-title{
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 300;
   
   letter-spacing: 1px;
   text-decoration:none;
}

.close-popup {
   position: absolute;
   z-index: 999;
   color: #fff;
   top: 1.5rem;
   height: 1.5rem;
   right: 1.5rem;
   width: 1.5rem;
   mix-blend-mode: difference;
   cursor: pointer;
}

.close-popup > svg{
   width:100%;
   height:100%;
}



/*REQUEST*/


.title-request{
   font-family: 'Montserrat', sans-serif;
   color: var( --default-color );
   font-size: 55px;
   font-weight: 600;
   
   letter-spacing: 0px;
}

.subtitle-request{
   text-align: left;
   color: var( --default-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 14px;
   font-weight: 400;
   text-transform: uppercase;
   letter-spacing: 1px;
}

.popup_request {
   position: fixed;
   bottom: 0;
   width: 100%;
   height: 100%;
   padding: 50px 0;
   z-index: 99999;
   background-color: #000000ad;
   transition:0.2s;
   opacity:0;
   visibility:hidden;
}

.pop-contain {
   position: fixed;
   bottom: -100%;
   width: 100%;
   transition: 0.5s;
   height: 75vh;
   padding: 50px 0;
   z-index: 999;
   background-color: var( --third-color );
}



.popup_request.show{
   opacity:1;
   visibility:visible;
}

.popup_request.show .pop-contain{
   bottom: 0;
}


.btn-request-form {
   background-image: url(../img/bottone-traccia-bianco@4x.png);
   background-size: contain;
   background-position: center;
   background-repeat: no-repeat;
   float: right;
   color: var( --default-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 15px;
   font-weight: 600;
   border: 0;
   background-color: transparent;
   letter-spacing: 1px;
   border-radius: 0px 0px 0px 0px;
   padding: 30px 30px 30px 30px;
}


.ml-3{
   margin-left:1rem;
}








/*Gallery*/

.gallery-pattern {
   background: #000000ad;
   position: fixed;
   top: 0;
   width: 100%;
   display: flex;
   height: 100%;
   left: 0;
   z-index: 9999;
   align-content: center;
   align-items: center;
   transition:0.5s;
   opacity:0;
   visibility:
   hidden;
   justify-content: center;
}

.gallery-pattern.show{
   opacity:1;
   visibility:visible; 
}


.images-gallery{
   top: 0;
   position: fixed;
   width: 100%;
   z-index: 10;
   height: 100%;
   display: flex;
   flex-direction: row;
   flex-wrap: nowrap;
   align-content: center;
   justify-content: center;
   align-items: center;
}


.box-image-gallery {
   width: 80%;
   top: 0rem;
   display: flex;
   height: 90vh;
   position: relative;
   flex-wrap: nowrap;
   flex-direction: row;
   align-content: center;
   justify-content: center;
}

.item-gallery{
   width: 100%;
   display: none;
   text-align:center;
}

.item-gallery.show{
   display:block;
}

.item-gallery > img{
   height:100%;
   max-width: 100%;
}


/*.box-image-gallery > img{*/
/*    height:100%;*/
/*    max-width: 100%;*/
/*    position: absolute;*/
/*    display:none;*/
/*}*/

/*.box-image-gallery > img.show{*/
/*    display:block;*/
/*}*/

.controls{
   display: flex;
   align-content: center;
   flex-direction: row;
   flex-wrap: nowrap;
   justify-content: space-between;
   position: relative;
   align-items: center;
   width: 100%;
   z-index: 11;
   margin: auto 8rem;
}
.button-c {
   text-align: center;
   display: block;
   width: fit-content;
   transition: 0.5s all;
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   letter-spacing: 3px;
   margin: 0;
   font-weight: 400;
   padding: 1rem;
   font-size: 1rem;
   text-transform: uppercase;
   background-color: #1f1f1f;
   cursor: pointer;
}

.button-c > svg {
   width: 100%;
   height: 100%;

}

.swiper_gallery {
   right: 0;
   margin-right: auto;
   position: relative;
   overflow: hidden;
   list-style: none;
   padding: 0;
   z-index: 1;
}

.swiper-slide-gallery{
   height: 100%;
   width: auto !important;
}


.swiper-slide-gallery > img{
   width:100%;
   height:100%;
}

.close-gallery{
       position: absolute;
   z-index: 999;
   color: #fff;
   top: 1.5rem;
   height: 1.5rem;
   right: 1.5rem;
   width: 1.5rem;
   cursor: pointer;
}

.close-gallery > svg{
   width:100%;
   height:100%;
}


/*LOADER*/


.loaderGif {
   display: flex;
   margin-left: auto;
   margin-right: auto;
   width: 8rem;
   height: auto;
}

#PageLoad{
   background-color: var(--background-color);
   z-index: 9999999999;
   position: fixed;
   display: flex;
   width: 100%;
   top: 0;
   height: 100%;
   align-content: space-between;
   justify-content: space-around;
   align-items: center;
}




.unload{
opacity: 0;
visibility: hidden;
transition: 0.5s linear;
}



/*EFFECTS*/

.item-gallery.animate__animated{
   animation-duration: 0.3s;
   --animate-delay: 0.3s;
}
.item-vertical-slider.animate__animated{
   animation-duration: 0.6s;
   --animate-delay: 0.6s;
}
.input-donation.animate__animated{
   animation-duration: 0.2s;
   --animate-delay: 0.2s;
}
.sel-recurrence.animate__animated{
   animation-duration: 0.2s;
   --animate-delay: 0.2s;
}

.method.animate__animated{
   animation-duration: 0.2s;
   --animate-delay: 0.2s;
}


@-webkit-keyframes fadeOutUpCustom {
   0% {
       opacity: 1;
   }
   to {
       opacity: 0;
       -webkit-transform: translate3d(0, -5%, 0);
       transform: translate3d(0, -5%, 0);
   }
}
@keyframes fadeOutUpCustom {
   0% {
       opacity: 1;
   }
   to {
       opacity: 0;
       -webkit-transform: translate3d(0, -5%, 0);
       transform: translate3d(0, -5%, 0);
   }
}
.item-vertical-slider.animate__fadeOutUp {
   -webkit-animation-name: fadeOutUpCustom;
   animation-name: fadeOutUpCustom;
}




@-webkit-keyframes fadeInUpCustom {
   0% {
       opacity: 0;
       -webkit-transform: translate3d(0, 5%, 0);
       transform: translate3d(0, 5%, 0);
   }
   to {
       opacity: 1;
       -webkit-transform: translateZ(0);
       transform: translateZ(0);
   }
}
@keyframes fadeInUpCustom {
   0% {
       opacity: 0;
       -webkit-transform: translate3d(0, 5%, 0);
       transform: translate3d(0, 5%, 0);
   }
   to {
       opacity: 1;
       -webkit-transform: translateZ(0);
       transform: translateZ(0);
   }
}
.item-vertical-slider.animate__fadeInUp {
   -webkit-animation-name: fadeInUpCustom;
   animation-name: fadeInUpCustom;
}









@-webkit-keyframes slideOutUpCustom {
   0% {
       -webkit-transform: translateZ(0);
       transform: translateZ(0);
   }
   to {
       visibility: hidden;
       -webkit-transform: translate3d(0, -5%, 0);
       transform: translate3d(0, -5%, 0);
   }
}

@keyframes slideOutUpCustom {
   0% {
       -webkit-transform: translateZ(0);
       transform: translateZ(0);
   }
   to {
       visibility: hidden;
       -webkit-transform: translate3d(0, -5%, 0);
       transform: translate3d(0, -5%, 0);
   }
}
.item-vertical-slider.animate__slideOutUp {
   -webkit-animation-name: slideOutUpCustom;
   animation-name: slideOutUpCustom;
}



@-webkit-keyframes slideInUpCustom {
   0% {
       -webkit-transform: translate3d(0, 5%, 0);
       transform: translate3d(0, 5%, 0);
       visibility: visible;
   }
   to {
       -webkit-transform: translateZ(0);
       transform: translateZ(0);
   }
}
@keyframes slideInUpCustom {
   0% {
       -webkit-transform: translate3d(0, 5%, 0);
       transform: translate3d(0, 5%, 0);
       visibility: visible;
   }
   to {
       -webkit-transform: translateZ(0);
       transform: translateZ(0);
   }
}
.item-vertical-slider.animate__slideInUp {
   -webkit-animation-name: slideInUpCustom;
   animation-name: slideInUpCustom;
}




@-webkit-keyframes fadeInDownCustom {
   0% {
       opacity: 0;
       -webkit-transform: translate3d(0, -5%, 0);
       transform: translate3d(0, -5%, 0);
   }
   to {
       opacity: 1;
       -webkit-transform: translateZ(0);
       transform: translateZ(0);
   }
}
@keyframes fadeInDownCustom {
   0% {
       opacity: 0;
       -webkit-transform: translate3d(0, -5%, 0);
       transform: translate3d(0, -5%, 0);
   }
   to {
       opacity: 1;
       -webkit-transform: translateZ(0);
       transform: translateZ(0);
   }
}
.item-vertical-slider.animate__fadeInDown {
   -webkit-animation-name: fadeInDownCustom;
   animation-name: fadeInDownCustom;
}




@-webkit-keyframes fadeOutDownCustom {
   0% {
       opacity: 1;
   }
   to {
       opacity: 0;
       -webkit-transform: translate3d(0, 5%, 0);
       transform: translate3d(0, 5%, 0);
   }
}
@keyframes fadeOutDownCustom {
   0% {
       opacity: 1;
   }
   to {
       opacity: 0;
       -webkit-transform: translate3d(0, 5%, 0);
       transform: translate3d(0, 5%, 0);
   }
}
.item-vertical-slider.animate__fadeOutDown {
   -webkit-animation-name: fadeOutDownCustom;
   animation-name: fadeOutDownCustom;
}






/*ABOUT PAGE*/


.blockquote.white{
   margin: 0;
   padding: 60px 0px 0px 60px;
   background-image: url(../../../media/virgolette@2x.png);
   background-position: top left;
   background-repeat: no-repeat;
   background-size: 30% auto;
}

.title-about{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 35px;
   
   line-height: 1.1em;
}

.img-100{
   width:100%;
   height:auto;
}

.img-80{
   width:80%;
   height:auto;
}

.img-spec{
    width:80%;
    height:auto;
    transition: 0.5s;
    opacity: 0;
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
}


.img-spec.show{
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.vertical-center{
   display: flex;
   align-items: center;
}


.vertical-bottom{
    align-items: flex-end;
}

.vertical-center .nav-projects{
   margin:0;
}

.sec-grid-about {
   margin: 0 120px;
   margin-top: 30px;
   margin-bottom: 5rem;
}



.p-about{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 300;
   
   

}

.box-text {
   padding: 3rem 4rem;
   height: 100%;
   display: flex;
   align-items: flex-start;
   flex-direction: column;
   justify-content: center;
   background-color:var(--third-color);
}

.box-text>p{
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 1px;
   font-size: 16px;
   font-weight: 100;
   color: var(--primary-color);
}

.t-upper{
    text-transform:uppercase;
}

.link-follow{
    display: grid;
    align-items: center;
    gap: 1rem;
    grid-template-columns: 40% 20%;
}

.link-follow svg{
    width: 1rem;
}

.title-note{
   font-weight: 200;
   font-size: 13px !important;
}

.note{
   
}

.box-text.inverse-p{
   padding-right:0;
   padding-left: 3rem;
}

.box-image {
   height: 100%;
   width: 100%;
   background-position: center bottom;
   display: flex;
   background-size: cover;
   flex-direction: column;
   justify-content: flex-end;
   align-items: flex-start;
   padding: 6rem 8rem;
}

.signature{
   width: 10rem;
   margin-top: 3rem;
}

.box-image-2 {
   width: auto;
   height: 100%;
   background-position: center;
   background-size: cover;
   display: flex;
   justify-content: center;
   align-items: center;
}



.banner-about{
   margin-top: 5rem;
   background-image: url(../../../media/chisiamo_banner.png);
   background-position: center;
   background-repeat: no-repeat;
   background-size:cover;
   padding: 80px 0px 80px 0px;
}


.donation-banner{
   width: 100%;
   position: absolute;
   display: flex;
   justify-content: center;
   bottom: -2rem;
   padding: 0rem 3rem;
}

.box-donation{
    background-position: center;
    background-repeat: no-repeat;
    background-size:cover;
    width: 100%;
    padding: 4rem;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
}


.box-donation > h3{
   color: var(--default-color);
   text-transform: uppercase;
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   letter-spacing: 1px;
   font-size: 3.5rem;
}






.donation-banner .box-input-donation{
   width: 100%;
}


.donation-banner .box-input-donation .donation-button-home{
   width: 20rem;
}



b{
   font-weight: bold;
}

.button-contact{
   background: url(../../../media/bottone-bianco@4x.png) center center / contain no-repeat;
   font-family: 'Montserrat', sans-serif;
   height: auto;
   width: auto;
   color: rgb(113, 94, 81);
   text-decoration: none;
   white-space: nowrap;
   min-height: 0px;
   min-width: 0px;
   max-height: none;
   max-width: none;
   text-align: left;
   line-height: 16px;
   letter-spacing: 1px;
   font-weight: bold;
   font-size: 16px;
   padding: 35px;
}

.p-about-2 {
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 200;
   
   margin-bottom: 2.5rem;
}



/*carousel product*/

.carousel-product{
   margin-top: 3rem;
   background-image: url(../../../media/sfumatura_marrone.png);
   background-position: bottom;
   background-repeat: no-repeat;
   background-size: 100%;
   padding: 3rem 0;
}



.pre-title-section{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 24px;
   font-weight: 200;
   
   letter-spacing: 1px;
}

.title-section{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 70px;
   font-weight: 500;
   letter-spacing: 1px; 
}


.arrow-collection > img{
   width:5rem;
}

.vertical-slider-home{
    position: relative;
}

.vertical-slider-home-multiple{
   position: relative;
}

.item-vertical-slider{
   display:none;
   margin:3rem 0;
   position:absolute;
   top:0;
   padding-right: calc(var(--bs-gutter-x) * .5);
   padding-left: calc(var(--bs-gutter-x) * .5);
}

.item-vertical-slider.show{
   display:block;
}

.item-vertical-slider > a > img{
   width:100%;
   height:auto;
   margin-bottom: 1rem;
}

.box-products-vertical > img{
   width: 110px !important;
}
.box-products-vertical{
   display: flex;
   flex-direction: row;
   justify-content: flex-start;
   align-content: center;
   align-items: flex-start;
   margin-bottom: 1rem;
}


.inverse .item-vertical-slider > a > img{
   width:100%;
   height:auto;
   margin-top: 1rem;
   margin-bottom:0;
}

.box-text-vertical{
   margin-left: 1rem;
}

.box-text-vertical .btn-tab-item {
   background-image: url(../img/bottone-traccia-bianco@4x.png);
   background-size: contain;
   background-position: center;
   background-repeat: no-repeat;
   color: #fff;
   border: 0px;
   background-color: #FFFFFF00;
   padding: 25px 40px 25px 40px;
   font-size: 15px;
   font-weight: 500;
   letter-spacing: 1px;
   font-family: 'Montserrat', sans-serif;
   transition: 0.2s;
}



/*video*/

.box-video{
   cursor:pointer;
   position:relative;
   right: 0;
}

.box-video:hover > .overlay-video{
   background-color: #02010100;    
}



.overlay-video {
   mix-blend-mode: normal;
   background-color: #24242436;
   top: 0px;
   height: 100%;
   width: 100%;
   bottom: 0px;
   position: absolute;
   left: 0px;
   right: 0px;
   z-index: 9;
   transition: 0.5s;
   -webkit-mask-image: url(/media/zdv_screen_video_mobile.png);
   mask-image: url(/media/zdv_screen_video_mobile.png);
   -webkit-mask-size: 100%;
   mask-size: 100%;
   -webkit-mask-repeat: no-repeat;
   mask-repeat: no-repeat;
}

.video-player{
   position:relative;
   text-align: right;
}


.video-player > img{
   width: 90%;
}


.play-video{
   position: absolute;
   width: 100%;
   height: 100%;
   z-index: 10;
   top: 0;
   color: #fff;
   display: flex;
   left: 0;
   justify-content: center;
   align-items: center;
}

.play-video > svg {
   width: 4.5rem;
   height: 4.5rem;
}


.sec-video{
   
   margin:5rem 0;
}

.video-frame{
   position:absolute;
   width:100%;
   height:100%;
   z-index:12;
   top:0;
   left:0;
}

.video-frame > iframe{
   width: 100%;
   height: 100%;

}

.video-text{
   margin-top:1.5rem;
}

.video-title{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 24px;
   font-weight: 500;
   
   line-height: 1.1em;
   letter-spacing: 0px;
   margin-bottom: 0px;
}

.video-p{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 15px;
   font-weight: 300;
   font-style:
   italic;
   line-height: 1.2em;
}


.posa-page{
     background-image: url(../../../media/posa_installazione_2.jpg);
   background-position: center right;
   background-repeat: no-repeat;
   background-size: contain; 
}



.sec-assistance {
   padding: 100px 0px 100px 0px;
   background-image: url(../../../media/antico_mattone_grigio_fumo_preview.jpg);
   background-position: bottom center;
   background-repeat: repeat;
   position: relative;
   background-size: contain;
   transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
}

.sec-assistance .container{
   position:relative;
}

.background-overlay{
   background-image: url(../../../media/sfumatura_marrone.png);
   background-position: bottom center;
   background-repeat: repeat;
   background-size: cover;
   opacity: 1;
   position: absolute;
   mix-blend-mode: multiply;
   transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
   width: 100%;
   height: 100%;
   bottom: 0;
   z-index: 0;
}


.tit-banner-posa{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 55px;
   font-weight: 600;
   
}

.sub-title-banner-posa{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 300;
}

.t-center{
   text-align:center
}



/*warranty*/


.warranty-sec {
   margin: 2rem 0rem;
}





/*accordion*/

.cms-accordion {
    margin-top: 0;
}

.cms-item-accordion{
   margin-bottom: 30px;
   box-shadow: 0 0 13px 6px #00000012;
   background-color: #fff;
}

.cms-header-accordion{
   line-height: 30px;
   cursor: pointer;
   gap: 2rem;
   color: #000000;
   font-family: 'Montserrat', sans-serif;
   font-size: 3rem;
   letter-spacing: 2px;
   padding-bottom: 0.5rem;
   border-bottom: 0;
   border-radius: 0px 0px 0px 0px;
   padding: 0;
   display: grid;
   align-content: center;
   align-items: center;
   cursor:pointer;
   grid-template-columns: auto auto;
   justify-content: space-between;
   padding: 3rem;
}


.cms-header-accordion.form{
    font-family: 'Montserrat';
    font-weight: 600;
    font-size: 2rem;
    letter-spacing: 0;
}
.cms-header-accordion.red{
    color:var(--red-color);
}


.change-accordion {
   width: 3rem;
   height: 3rem;
   padding: 0.6rem 0;
   display: flex;
   cursor: pointer;
   flex-direction: column;
   justify-content: center;
}

.change-accordion > svg{
   stroke: #000;
   transition:0.2s;
   transform: rotateY(180deg) rotateZ(90deg);
}


.change-accordion.default > svg{
   fill: var(--default-color);
}

.change-accordion.open > svg{
   transition:0.2s;
   transform: perspective(none) rotate(-90deg);
   stroke: var(--red-color);
}

.change-accordion  > .bar-1{
   width:100%;
   background: var(--secondary-color);
   height: 4px;
}

.change-accordion  > .bar-2{
   width:100%;
   background: var(--secondary-color);
   height: 4px;
   margin-top: -4px;
   transition: 0.1s;
   transform:rotate(90deg);
}

.change-accordion.open > .bar-2{
   transform: rotate(180deg);
}


.cms-body-accordion{
   color: #000;
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 400;
   padding: 2rem 0;
   height: 100%;
   position: relative;
   overflow-y: scroll;
   overflow-x:hidden;
   transition: 0.35s all;
} 


.cms-body-accordion.form{
   padding: 0 3rem 3rem 3rem;
}  

.accordion-number-list{
   list-style: auto;
   margin-top: 2rem;
   margin-bottom: 0;
}

.accordion-number-list > li > p{
   margin: 0;
   text-transform: uppercase;
}




/*privacy*/


.privacy-sec {
   margin: 0;
}


.cms-table {
   border: 1px solid var(--default-color);
   margin: 2rem 0;
}


.cms-table > thead{
   
   background-color: #FFFFFF17;
}



th{
   border: 1px solid var(--default-color);
   padding: 0.5em 0.7em !important;
   letter-spacing: 2px;
   font-size: 18px;
   font-weight: 300;
   font-style:italic;
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
}

td{
   border: 1px solid var(--default-color);
   padding: 0.5em 0.7em !important;
   letter-spacing: 2px;
   font-size: 18px;
   font-weight: 300;
   font-style:italic;
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
}

.cms-table > thead > tr > th{
   
   text-transform: uppercase;
   letter-spacing: 2px;
   vertical-align:top;
   font-size: 18px;
   font-weight: 300;
   font-style:italic;
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
}




/*download*/

.download-sec{
   margin:5rem 0;
   margin-bottom: 8rem;
}

.item-download-2 {
   border-bottom: 1px solid #B4ADA47A;
   display: flex;
   padding: 30px 0px 10px 0;
   flex-direction: row;
   align-items: center;
   justify-content: space-between;
}

.border-bottom{
   border-bottom:1px solid;
}
.arrow-download{
   
   width:50px;
}
.arrow-download > img{
   width:100%;
}

.capitalize{
   text-transform:capitalize;
}



/*systems*/


.sec-white {

   padding: 5rem 0;
   background-color:var(--default-color);
}

.invert-color{
  color: var(--third-color); 
}

.box-text-system{
   padding: 1rem 0;
   padding-bottom: 0;
}

.box-text-system > p{
   color: #242424;
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 200;
   
}


.box-text-system > h5{
   color: #242424;
   font-weight: 500;
   line-height: 1.2;
   

}

.box-colors{
   display: flex;
   flex-wrap: wrap;
   flex-direction: row;
   align-content: center;
   align-items: flex-start;
}

.item-colors{
   width: 50px;
   margin-right:1rem;
}

.item-colors > p{
   text-align: left;
   color: var( --third-color );
   margin-top: 4px;
   font-family: 'Montserrat', sans-serif;
   font-size: 12px;
   font-weight: 600;
   text-transform: uppercase;
   
   letter-spacing: 0px;
}

.unit{
   color: #242424;
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   font-weight: 600;
   
}

.item-catalog {
   display: flex;
   margin: 15px 0px;
   flex-direction: row;
   align-items: center;
   justify-content: flex-start;
}

.item-catalog > svg {
   width: 80px;
   transition: 0.2s;
   margin-left: 3rem;
}


.item-catalog > div > p {
   color: var( --third-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 18px;
   margin: 0;
   font-weight: 600;
   text-transform: uppercase;
   
   text-decoration: underline;
   letter-spacing: 1px;
}

.img-45{
   width:45%;
}

.empty-space-23 {
   height: 23px;
}

.subtitle-system-item{
   font-style: normal !important;
   font-weight: bold !important;
}

.box-text-system > h3{
   font-size:40px !important;
}


.col-md-4 .item-catalog > svg {
   margin-left: 1.5rem;a
}


.list-two-columns {
 columns: 2;
 -webkit-columns: 2;
 -moz-columns: 2;
}

.p-list {
   color: var( --default-color );
   font-family: 'Montserrat', sans-serif;
   font-size: 15px;
   font-weight: 300;
   
   letter-spacing: 1px;
   margin-top: 1rem;
   line-height: 30px;
}

.box-text-system > p.white{
   color: var( --white-color );

}

.min-carousel-p {
   min-height: 110vh;
}

.video > video{
   width: 100%;
   height: auto;
}

.img-65{
   width:65%;
}

.p-0-image{
   padding:0!Important;
}
.uppercase{
   text-transform:uppercase !important;
}

.message-box {
   position: absolute;
   top: 0;
   width: 100%;
   height: 100%;
   display: flex;
   background: #f2f0e091;
   left: 0;
   align-content: center;
   justify-content: center;
   align-items: center;
   display:none;
}

.message-box.show{
   display:flex;
}

.message{
   font-size: 22px;
   padding: 60px;
   font-family: 'Montserrat', sans-serif;
   text-align: center;
   font-weight: 600;
   letter-spacing: 1px;
   color: var(--primary-color);
}

.message-box.animate__animated{
   animation-duration: 0.6s;
   --animate-delay: 0.6s;
}

.invert-message-b{
       background: #715e519e;
}

.access-bim {
   position: fixed;
   width: 100%;
   height: 100%;
   display: flex;
   background: var(--third-color);
   top: 0;
   left: 0;
   z-index: 9;
   align-content: center;
   align-items: center;
   justify-content: center;
   flex-direction: column;
}

.access-bim.hide{
   display:none;
}

.form_access-bim{
   
}

.top-page-bim{
   z-index: 1020;
   position: relative;
}

.nav-page-bim{
   background-color: var(--secondary-color);
   
}

.nav-button {
   display: flex;
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   text-transform: uppercase;
   font-style: normal;
   letter-spacing: 3px;
   box-shadow: inset 0 0 100px 100px var(--secondary-color);
   font-size: 2rem;
   padding: 10px 8.95rem;
   height: 100%;
   text-decoration: underline;
   line-height: 2rem;
   transition: 0.2s;
   color: var(--default-color);
   align-items: center;
}

.nav-button:hover {
  color: var(--default-color);
}




.button-hero{
   display: flex;
   font-family: 'Montserrat', sans-serif;
   font-weight: 200;
   font-style: normal;
   letter-spacing: 2px;
   background-color: #00000057;
   font-size: 1rem;
   height: fit-content;
   line-height: 1rem;
   text-align: center;
   width: 100%;
   color: var(--white-color);
   align-items: center;
   justify-content: center;
   padding: 2rem 2rem;
   transition: 0.5s;
   z-index: 100;
   position: absolute;
   bottom: 0;
   gap: 1rem;
   opacity: 0;
   visibility: hidden;
}

.button-hero svg{
  width:2rem;
}

.button-hero:hover {
  color: var(--white-color);
}


.button-hero.active {
  opacity: 1;
   visibility: visible;
}


.link-more{
   display: flex;
   font-family: 'Montserrat', sans-serif;
   font-weight: 400;
   font-style: normal;
   letter-spacing: 2px;
   background-color: var(--red-color);
   font-size: 1rem;
   height: fit-content;
   line-height: 2rem;
   text-align: center;
   width: 100%;
   color: var(--white-color);
   align-items: center;
   justify-content: center;
   padding: 2rem 2rem;
   transition: 0.5s;
   z-index: 98;
}

.link-more:hover {
  color: var(--white-color);
}


.nav-arrow {
   display: flex;
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   text-transform: uppercase;
   font-style: normal;
   letter-spacing: 3px;
   width: 100%;
   height: 100px;
   font-size: 2rem;
   text-decoration: underline;
   line-height: 2rem;
   transition: 0.2s;
   color: var(--default-color);
   align-items: center;
   cursor:pointer;
}

.nav-arrow > svg {
   width: 3rem;
   margin-right: 2rem;
   transition: 0.3s;
}


.nav-arrow:hover {
  color: var(--default-color);
}

.nav-arrow:hover > svg{
   transform: rotate(-45deg);
}


.align-nav-top{
       align-items: flex-end !important;
       height: 90px;
}

.navigation-bar{
   display: flex;
   align-items: center;
   justify-content: center;
   height: 100%;
   align-content: space-around;
   background-color: #2626265c;
}

/*.video-content{*/
/*    position: relative;*/
/*    top: -8.5rem;*/
/*    display: flex;*/
/*    margin-bottom: -14rem;*/
/*    justify-content: flex-end;*/
/*}*/

/*.video-content > video{*/
/*        width: 85vw;*/
/*        -webkit-mask-image: url(/media/zdv_screen_video.png);*/
/*        mask-image: url(/media/zdv_screen_video.png);*/
/*        -webkit-mask-size: 100%;*/
/*        mask-size: 100%;*/
/*        -webkit-mask-repeat: no-repeat;*/
/*        mask-repeat: no-repeat;*/
/*}*/

.video-content .container{
   display: flex;
   flex-direction: row;
   align-items: flex-end;
   justify-content: flex-end;
   padding-bottom: 3rem;
   padding-right: 3.5rem;
}

.scroll-bottom{
   width: 2rem;
}


.project{
   background-image:url('/media/zdv_pattern.jpg');
   background-position: top right;
   background-repeat: repeat-y;
   background-size: 60%;
   padding-top: 10rem;
}

.revolution{
   background-image:url('/media/zdv_partecipa_alla_rivoluzione_banner.png');
   background-position: top center;
   background-repeat: no-repeat;
   background-size: cover;
   padding-top: 14rem;
   padding-bottom: 12rem;
}


.input-donation-home {
   border: 0;
   width: 75%;
   color: var(--primary-color);
   padding: 1rem;
   box-shadow: 0 0 20px 2px #1d1d1d2b;
   -webkit-appearance: none;
   background-image: url(/media/prf_euro.svg);
   background-repeat: no-repeat;
   background-position: 1rem;
   background-size: 20px;
   font-size: 20px;
   position: relative;
   text-align: right;
   z-index: 11;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.input-donation-home::placeholder{
   color: #00498d9c;
   font-family: 'Montserrat', sans-serif;
}

.box-input-donation{
   position:relative;
   width: 85%;
}

.donation-button-home {
   text-align: center;
   width: 9rem;
   position: absolute;
   border: none;
   color: var(--default-color);
   height: 100%;
   font-size: 2rem;
   letter-spacing: 3px;
   text-decoration: underline;
   text-transform: uppercase;
   font-family: 'Montserrat', sans-serif;
   line-height: 2rem;
   box-shadow: inset 0 0 100px 100px var(--secondary-color);
   right: 0;
   background-color:var(--default-color);
   top: 0;
   transition:0.2s;
   z-index: 11;
}

/*.donation-button-home:hover {*/
/*   box-shadow: inset 0 0 0px 2px var(--primary-color);*/
/*   background: transparent;*/
/*   transform: translate(-1rem, -1rem);*/
/*}*/

/*.donation-button-home.open {*/
/*    box-shadow: inset 0 0 0px 2px var(--primary-color);*/
/*    background: transparent;*/
/*    transform: translate(-1rem, -1rem);*/
/*}*/

.donation-button-home > svg{
   fill:#fff;
   transition:0.2s;
   width: 3rem;
}

.donation-button-home:hover > svg{
   fill:var(--primary-color);
}
.search-button-home.open > svg{
   fill:var(--primary-color);
}


.sel-donation{
   display: flex;
   flex-direction: row;
   margin-top: 1rem;
}

.item-donation{
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   padding: 5px 20px 2px 20px;
   font-size: 18px;
   margin-right: 1rem;
   letter-spacing:2px;
   cursor: pointer;
   background-color: #0b4076;
}


.news{
   padding: 5rem 0;
   padding-top: 8rem;
}

.h2-b {
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 4rem;
   font-weight:400;
   letter-spacing: 4px;
   text-transform: uppercase;
   opacity:0.6;
}


.h2-c {
    font-family: 'Montserrat', sans-serif;
    font-size: 3rem;
    line-height: 3rem;
    color: var(--red-color);
    letter-spacing: 1px;
    margin-bottom: 2rem;
    
    font-weight: 600;
}


.h3-c {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    line-height: 2rem;
    color: var(--default-color);
    letter-spacing: 0;
}


.h5-c {font-family: 'Montserrat', sans-serif;color: var(--red-color);letter-spacing: 0;font-weight: bold;font-size: 1.5rem;margin-bottom: 1rem;}



.h3-c.page {
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   font-size: 5rem;
   line-height: 4.5rem;
   letter-spacing: 1px;
   text-transform: uppercase;
}




.h4-c{
   color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 600;
   font-size: 18px;
   letter-spacing: 1px;
   text-transform: uppercase;
}

.sub-text{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 1px;
   font-size: 16px;
   
   font-weight: 100;
}

.news-box {
   padding: 2rem;
   position: relative;
   padding-bottom: 3rem;
   box-shadow: inset 0 0 200px 200px var(--secondary-color);
   border: 0;
   transition:0.3s;
}

.news-box:hover {
   box-shadow: inset 0 0 0px 9px var(--secondary-color);
   background: #fff;
}

.date {
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   font-size: 18px;
   text-transform: uppercase;
   color: var(--primary-color);
   letter-spacing: 2px;
}

.title-news{
  font-family: 'Montserrat', sans-serif;
  font-weight: 500;
  font-size: 2.5rem;
  text-transform: uppercase;
  color: var(--primary-color);
  letter-spacing: 1px;
  line-height: 2.5rem;
}


.description-news{
   font-family: 'Montserrat', sans-serif;
   color: var(--primary-color);
   font-size: 1.5rem;
}


.img-news {
   width: 3rem;
   position: absolute;
   bottom: -.7rem;
   left: 2rem;
   transition: 0.2s;
}

.news-box:hover .img-news{
   left: 20rem;
}

/*.footer {*/
/*    display: flex;*/
/*    background-color: var(--primary-color);*/
/*    flex-direction: row;*/
/*    align-items: flex-start;*/
/*    flex-wrap: nowrap;*/
/*    padding-top: 2rem;*/
/*    align-content: flex-end;*/
/*}*/

/*.footer > div:not(:last-child){*/
/*    border: none;*/
/*}*/

/*.footer > div:first-child {*/
/*    display: flex;*/
/*    flex-direction: row;*/
/*    align-items: flex-start;*/
/*    padding: 0;*/
/*}*/



.footer > div > .col-50 {
   padding: 4rem;
   padding-top: 4.5rem;
   padding-bottom: 0;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
}

.footer > div > .col-50:first-child {
display: flex;
   flex-direction: row;
   justify-content: center;
   align-items: flex-start;
}

.footer > div > .col-md-20:first-child {
   border-right: none;
}

/*.footer > div:last-child {*/
/*    padding-bottom: 0;*/
/*    padding-right: 8rem;*/
/*}*/

/*.footer > div{*/
/*    display: flex;*/
/*    flex-direction: column;*/
/*    justify-content: space-between;*/
/*}*/

/*.footer > div {*/
/*    padding: 4rem;*/
/*    padding-top: 4.5rem;*/
/*}*/

.logo-footer{
   width: 7rem;
}


.col-md-25{
   width: 100%;
}

.col-md-20{
   width: 75%;
}

.col-md-55{
   width:55%;
}
.col-md-45{
   width:45%;
}

.links .h3-c{
   margin-bottom: 2rem;
}


.links-footer {
   list-style: none;
   padding: 0;
   margin-top: 1rem;
}

.links-footer > li {
   margin-bottom: 1rem;
}

.links-footer > li > a {
   font-size: 14px;
   font-weight: 300;
   color: var(--white-color);
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 1px;
}

.links-footer > li > span {
   font-size: 11px;
   font-weight: 200;
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 1px;
}



.links-footer > li > p {
    font-size: 14px;
    color: var(--white-color);
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 2px;
    margin: 0;
    font-weight: bold;
    margin-top: 2rem;
    text-transform: uppercase;
}

.links-footer > li > p > a{
    font-size: 14px;
    font-weight: 300;
    color: var(--white-color);
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
    text-transform: initial;
}

.copyright{position: relative;bottom: 0;}

.copyright > p{
   font-family: 'Montserrat', sans-serif;
   font-size: 10px;
   color: #ffffffc4;
   font-weight: 100;
   margin: 0;
   text-transform: uppercase;
   letter-spacing: 1px;
}

.input-c {
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   border: none;
   background: var(--background-color);
   width: 100%;
   line-height: 1rem;
   border-radius: 0;
   padding-bottom: .5rem;
   font-weight: 500;
   margin-bottom: 1.5rem;
   letter-spacing: 1px;
   padding: 1rem 1.5rem;
   font-size: 16px;
}

.input-c::placeholder{
   color: #000;
}


.input-c.assistance{
   padding:0 1rem;
   padding-bottom: 1rem;
}

.input-c.assistance::placeholder{
   color: #fff;
}



.input-c.error {
       border-color: red;
       color:red;
}

.input-c.error option{
       color:red;
}

.input-c.error::placeholder{
   color: red;
}


select:invalid,
select option[value=""] {
  color: #ffffff6b;
}


.choice-sel {
   display: grid;
   flex-direction: row;
   align-items: center;
   margin-top: 0;
   grid-template-columns: 1rem auto;
   gap: 1rem;
   margin-top: 1rem;
}


.checkbox-c[type=checkbox] {
   background: #f3f3f3;
   appearance: none;
   color: #1717172e;
   height: 1rem;
   border: 2px solid currentColor;
   width: 1rem;
   cursor: pointer;
}

.checkbox-c:checked[type=checkbox] {
   background-size: 10px 10px;
   background-position: center;
   background-repeat: no-repeat;
   background-color: #000;
   box-shadow: inset 0 0 0px 2px #fff;
}

.label-check {
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   letter-spacing: 2px;
   font-size: 16px;
   line-height: 18px;
   font-weight: 400;
}


.button-footer{
   width: 90px;
   border: none;
   height: 72px;
   padding: 1rem 1.5rem;
   box-shadow: inset 0 0 100px 100px var(--primary-color);
   background-color:var(--default-color);
   transition:0.2s;
}

.button-footer:hover {
  box-shadow: inset 0 0 0px 2px var(--primary-color);
}
.button-footer > svg{
   fill:var(--default-color);
}
.button-footer:hover > svg{
   fill:var(--primary-color);
}

.col-button-form{
   margin-top: 2rem;
   text-align: left;
   position: relative;
}

.col-button-form > .nav-arrow{
   border: none;
   background: transparent;
   height: 70px;
   
}


.banner{
   display: flex;
   padding:2rem 0;
   background-image: url(/media/zdv_pattern_rosso.jpg);
   background-position: center;
   background-repeat: repeat-x;
   background-size: 40%;
   position:relative;
   flex-direction: row;
   align-items: center;
   cursor:pointer;
}



.text-banner{
   
}

.pre-title{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 3px;
    font-size: 14px;
    margin: 0;
    font-weight: bold;
    margin-bottom: 1rem;
    text-transform: uppercase;
}

.total-search{
    font-family: 'Montserrat', sans-serif;
    color: #b7b7b7;
    letter-spacing: 3px;
    font-size: 12px;
    margin: 0;
    font-weight: 500;
    text-transform: uppercase;
    text-align: right;
}

.banner-title{
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   margin: 0;
   font-size: 3rem;
   letter-spacing: 2px;
}

.banner-title > span{
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 2px;
}

.row-end{
   justify-content: flex-end;
   align-items: center;
}

.row-center{
   align-items: center;
}

.arrow-banner{
   width: 3rem;
}

.banner-logo{
   position: absolute;
   width: 7rem;
   left: 6rem;
}


.filter{
   padding: 6.5rem 0;
   padding-bottom: 5rem;
}



.hero-page{
   position: relative;
   display: flex;
   padding-top: 5.5rem;
   padding-bottom: 3rem;
   margin-bottom: 0;
   top: 0;
   background-position: bottom center;
   flex-direction: column;
   justify-content: flex-end;
   background-size: 100%;
   background-repeat: no-repeat;
}

.content-page {
   padding: 5rem 5.5rem;
   position:relative;
}

.p-content{
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   letter-spacing: 1px;
   font-size: 18px;
   margin: 0;
   margin-bottom: 1rem;
}
.p-content >a {
   font-weight: bold;
   color: var(--secondary-color);
   text-decoration:underline;
}



.data-news{
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   letter-spacing: 1px;
   font-size: 14px;
   margin: 0;
   font-weight: 400;
   margin-bottom: 0;
}





.breadcrumb > p{
   font-family: 'Montserrat', sans-serif;
   color: var(--primary-color);
   font-size: 20px;
   font-weight: lighter;
   margin: 0;
   text-transform: uppercase;
   letter-spacing: 1px;
}

.breadcrumb > img{
   width: 20px;
   margin-right: 1rem;
}


.hero-restaurant{
   position: relative;
   display: flex;
   padding-top: 17.5rem;
   top: -8.5rem;
   padding-bottom: 4rem;
   z-index: 9;
   margin-bottom: -14rem;
   background-image:url(/media/zdv_dett_proffessionista_hero.png);
   flex-direction: column;
   justify-content: flex-end;
   background-size: 100%;
   background-position: 0px -2.5vw;
   background-repeat: no-repeat;
}

.go-back{
}

.go-back > img{
   width: 3rem;
   transform: rotate(180deg);
   margin-bottom: 3rem;
}

.primary-img {
   width: 30%;
   height: calc(100% - 5rem);
   position: absolute;
   bottom: 0;
   background-size: cover;
   right: 0;
   background-repeat: no-repeat;
   background-position: center;
}

.primary-img > img{
   width:100%;
}

.professionist{
   padding: 3rem 0 10rem 0;
}

.box-professionist{
   background-color: var(--secondary-color);
   padding: 3rem;
   display: flex;
   flex-direction: row;
   align-items: flex-start;
   flex-wrap: nowrap;
   padding-right:10rem;
}

.img-professionist{
   width: 350px;
   height:auto;
}

.description-professionist {
   margin-left: 7rem;
}

.title-prof{
   color:var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 7rem;
   letter-spacing: 3px;
   text-transform: uppercase;
}

.description-professionist > p{
   font-family: 'Montserrat', sans-serif;
   color: var(--primary-color);
   font-size:20px;
   margin-bottom: 0rem;
   font-style: normal; 
}

/*.desc-prof{*/
/*    font-family: 'Montserrat', sans-serif;*/
/*    color: var(--primary-color);*/
/*    font-size:20px;*/
/*    margin-bottom: 0rem;*/
/*    font-style: normal;*/
/*}*/

.description-professionist .cms-item-accordion .cms-body-accordion .row > p{
   font-family: 'Montserrat', sans-serif;
   color: var(--primary-color);
   font-size:20px;
   margin-bottom: 0rem;
   font-style: normal; 
}

.address{
   font-family: 'Montserrat', sans-serif;
   color: var(--primary-color);
}

.info{
  font-family: 'Montserrat', sans-serif;
  color: var(--primary-color);
  margin-bottom:0.5rem;
}

.info-box{
   
}


.info-box>div:first-child{
   border-right: 3px dotted var(--primary-color);
   padding-right: 4rem;
}

.info-box>div:last-child{
   padding-left: 5rem;
}

.relative{
   position:relative;
}

.index-10{
   z-index:10;
}

.no-x-scroll{
    overflow-x:hidden;
}

.no-x-scroll-desktop{
    overflow-x:hidden;
}

.play-button {
   position: fixed;
   bottom: 0;
   z-index: 100;
   text-align: center;
   width: 100%;
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   text-transform: uppercase;
   font-style: normal;
   letter-spacing: 3px;
   box-shadow: inset 0 0 100px 100px var(--primary-color);
   font-size: 1.5rem;
   line-height: 1.5rem;
   padding: 25px;
   transition: 0.2s all;
   color: var(--default-color);
   align-content: center;
   flex-direction: row;
   align-items: center;
   visibility:visible;
   opacity:1;
}

.none{
   visibility:hidden;
   opacity:0;
}



.professionist {
   padding: 3rem 0 4rem 0;
   z-index: 10;
   position: relative;
}

.play-button > i{margin-right: 0.5rem;}


.play-button:hover {
  color: var(--primary-color);
  box-shadow: inset 0 0 0px 2px var(--primary-color);
}

.audio {
   height: 3rem;
   width: 3rem;
   display: flex;
   flex-direction: row;
   justify-content: center;
   align-items: center;
   cursor:pointer;
   /*border:2px solid var(--primary-color);*/
   /*box-shadow: inset 0 0 0px 0px var(--primary-color);*/
   margin-left:1rem;
   transition:0.2s;
}


/*.audio:hover {*/
/*    box-shadow: inset 0 0 25px 25px var(--primary-color);*/
/*}*/


.audio > i {
   font-size: 2rem;
   color: var(--primary-color);
   transition:0.2s;
}

/*.audio:hover > i {*/
/*    color: var(--default-color);*/
/*}*/


.right-menu {
   display: flex;
   height: 100%;
   align-items: center;
   flex-direction: column;
}


.box-filter{
   background-size: cover;
   background-position: center;
   min-height: 25rem;
   display: flex;
   position: relative;
   z-index: 8;
   margin-bottom: 2rem;
   flex-direction: column;
   justify-content: flex-end;
}





.content-box{
   padding: 3rem 2rem;
   padding-top: 1rem;
   display: flex;
   background-color: #f1eddf;
}

.content-box > p{
   margin:0;
   position:relative;
   font-size: 3.5rem;
   line-height: 3rem;
}

.content-box {
   position:relative;
}

.content-box:before {
   content:'';
   width:100%;
   position: absolute;
   height: 2.5rem;
   left: 0;
   top: -1.54rem;
   background-image:url(/media/zdv_professionisti_strappo.png);
   z-index: 11;
   background-size: 100%;
   background-repeat: no-repeat;
}

.content-box > p:after{
   content:'';
   width: 0;
   height:3px;
   /*border-bottom:3px dotted var(--primary-color);*/
   background:var(--primary-color);
   position: absolute;
   transition:0.2s;
   bottom: -.5rem;
   left: 0;
}

.box-filter:hover .content-box > p:after{
   width:100%;
}





.float-right-col{
   justify-content: flex-end;
   display: flex;
}


.reseaching{
   position:absolute;
   max-height: 177px;
   width: 100%;
   margin-top: 0rem;
   z-index: 10;
   overflow-y: scroll;
}

.item-search{
   width: 100%;
   display: flex;
   background: #fff;
   padding: 1rem 1.5rem;
   font-weight: bold;
   border-bottom: 1px solid #d7d7d76e;
   cursor: pointer;
   justify-content: flex-start;
   align-items: center;
}

.item-search > svg{
   width: 15px;
   height: 15px;
   margin-right: 0.5rem;
}

.item-search > p{
  margin:0;
  font-size: 25px;
  color:var(--primary-color);
 font-family: 'Montserrat', sans-serif;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: lighter;
}

.breadcrumb{
   cursor: pointer;
}









/*Loader search*/


.img-loading-search {
   display: flex;
   margin-left: auto;
   margin-right: auto;
   width: 13rem;
   height: 13rem;
}

.loader-search{
   background-color: #ffffff82;
   z-index: 9;
   position: absolute;
   display: flex;
   width: 100%;
   top: 0;
   left:0;
   height: 100%;
   align-content: space-between;
   justify-content: space-around;
   align-items: center;
   opacity: 0;
   visibility: hidden;
   transition: 0.5s linear;
}


.loader-search.show{
  opacity: 1;
   visibility: visible; 
}



.loader {
 position: relative;
 width: 125px;
 height: 125px;
}

.loader:before , .loader:after{
 content: '';
 border-radius: 50%;
 position: absolute;
 inset: 0;
}
.loader:after {
 animation: rotate 2s linear infinite;
 border: 4px dotted #364b99;
}

::after {}

@keyframes rotate {
 0% {  transform: rotate(0)}
 100% { transform: rotate(360deg)}
}





.box-reseach-page{
   position:relative;
   margin-top:2rem;
   width: 80%;
}

.search-button-page {
   text-align: right;
   width: 90px;
   position: absolute;
   border: none;
   height: 100%;
   padding: 1rem 1.5rem;
   box-shadow: inset 0 0 100px 25px var(--primary-color);
   right: -1rem;
   background-color:var(--default-color);
   top: 1rem;
   transition: 0.1s;
   z-index: 11;
}

.search-button-page:hover {
  box-shadow: inset 0 0 0px 2px var(--primary-color);
  background: transparent;
  transform: translate(-1rem, -1rem);
}

.search-button-page.open {
   box-shadow: inset 0 0 0px 2px var(--primary-color);
   background: transparent;
   transform: translate(-1rem, -1rem);
}

.search-button-page > svg{
   fill:#fff;
   transition: 0.2s;
   width: 3rem;
}

.search-button-page:hover > svg{
   fill:var(--primary-color);
}
.search-button-page.open > svg{
   fill:var(--primary-color);
}


.input-search-page {
   font-family: 'Montserrat', sans-serif;
   border: 0;
   width: 100%;
   color:var(--primary-color);
   padding: 1.5rem 3rem;
   box-shadow: 0 0 20px 2px #1d1d1d2b;
   background-image: url(/media/icon_search_grey.svg);
   background-repeat: no-repeat;
   background-size: 15px 15px;
   background-position: 1.5rem;
   font-size: 25px;
   position: relative;
   z-index: 11;
   letter-spacing: 1px;
   text-transform: uppercase;
}



.input-search-page::placeholder{
   color: #1d1d1d66;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 1px;
   text-transform: uppercase;
   font-size: 25px;
}


.no-result > span{
   font-family: 'Montserrat', sans-serif;
   font-size: 9rem;
   letter-spacing: 3px;
   color:var(--secondary-color);
   text-transform: uppercase;
   line-height: 7rem;
}


.box-green{
   padding: 3rem 4rem;
   height: 100%;
   display: flex;
   align-items: center;
   flex-direction: column;
   justify-content: center;
   background-color: var(--secondary-color);
}

.box-blue{
   padding: 3rem 4rem;
   height: 100%;
   display: flex;
   align-items: center;
   flex-direction: column;
   justify-content: center;
   background-color: var(--primary-color);
}

.box-blue > p{
   margin: 0;
   font-family: 'Montserrat', sans-serif;
   font-weight: 100;
   text-transform: uppercase;
   color: var(--default-color);
   font-size: 1.5rem;
   text-align: center;
   line-height: 2rem;
   letter-spacing: 1px;
}


.box-blue > p.sub-circle{
   margin: 0;
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   text-transform: uppercase;
   color: var(--default-color);
   font-size: 2rem;
   text-align: center;
   line-height: 2rem;
   letter-spacing: 1px;
}


.sub-circle{
   margin: 0;
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   text-transform: uppercase;
   color: var(--default-color);
   font-size: 2rem;
   text-align: center;
   line-height: 2rem;
   letter-spacing: 1px;
}



.grid-arms{
   display: flex;
   margin: 2rem 0;
   padding: 0 2rem;
   justify-items: stretch;
   width: 100%;
   height: 100%;
   flex-wrap: wrap;
   justify-content: space-evenly;
}

.item-arm{
   width: 20%;
   height: 20%;
   opacity: 0.5;
   position: relative;
}

.item-arm > img{
   width: 100%;
   height: 100%;
}


/*PROGRESS*/
.circle-wrap{
   width: 15rem;
   height: 15rem;
   display: flex;
   align-content: center;
   justify-content: center;
   align-items: center;
   border-radius: 50%;
   border: 2px solid #ffffff75;
   position:relative;
   background-size: 0;
   margin-bottom: 2rem;
}


.circle-wrap:after{
   content:'';
   width: calc(100% - 0.25rem);
   position: absolute;
   height: calc(100% - 0.25rem);
   border-radius: 50%;
   background-color: var(--secondary-color);
}

.text-circle{
   font-family: 'Montserrat', sans-serif;
   color:var(--default-color);
   margin: 0;
   font-size: 6rem;
   z-index: 1;
   padding-top: 1.5rem;
   font-weight: bold;
}

.circle-wrap .progress{
   position: absolute;
   width: 15.25rem;
   height: 15.25rem;
   border-radius: 50%;
   background: conic-gradient(#fff 0deg, #fff0 0deg);
   transition: 0.2s all;
}





.box-white{
    width: 100%;
    height: auto;
    padding: 4rem;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    background-color: var(--third-color);
}


.box-white > h3{
   text-transform: uppercase;
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   letter-spacing: 1px;
   font-size: 4rem;
   line-height: 3.5rem;
}

.green{
   color: var(--secondary-color);
}

.blue{
   color: var(--primary-color);
}

.silver{
   color: #7e7679;
}


.gold{
   color: #827653;
}

.platinum{
   color: #8c9091;
}

.white{
   color: var(--white-color);
}


.green:hover{
   color: var(--secondary-color);
}

.blue:hover{
   color: var(--primary-color);
}

.white:hover{
   color: var(--white-color);
}

.box-white > p{
   font-family: 'Montserrat', sans-serif;
   font-weight: 100;
   color: #000;
   letter-spacing: 0.5px;
   font-size: 18px;
   margin: 0;
   
}

/*NEWS*/



.content-news {
   background-color: var(--primary-color);
   padding:5rem 0;
}



.content > img, .content > figure > img{
   width:100%;
   height:auto;
}


.data {
   font-family: 'Montserrat', sans-serif;
   color: var(--primary-color);
   font-size: 2rem;
   letter-spacing: 1px;
}



/*.grid-news {*/
/*    background-color: var(--secondary-color);*/
/*    padding: 6rem 0;*/
/*    margin-top: 0rem;*/
/*    color: var(--primary-color);*/
/*    font-family: 'Montserrat', sans-serif;*/
/*}*/

.news-box-page {
   padding: 2rem;
   position: relative;
   padding-bottom: 3rem;
       margin-bottom: 2rem;
   box-shadow: inset 0 0 200px 200px #ffffff;
   border: 0;
   transition: 0.3s;
}

.news-box-page:hover {
   box-shadow: inset 0 0 0px 9px #ffffff;
   background: var(--secondary-color);
}


.hero-page-news{
   background-image:none !important;
   background-color: var(--secondary-color) !important;
}







/*projects*/

.projects{
   background-image:url(/media/paolorossifoundation_img_agenda.jpg);
   padding: 3rem;
   padding-right:0;
   background-position: center;
   background-size: cover;
}


.other-nws{
   background-image:url(/media/paolorossifoundation_img_agenda_2.jpg);
   padding: 3rem;
   padding-right:0;
   background-position: center;
   background-size: cover;   
}

.nav-projects{
    gap: 2rem;
    display: flex;
    flex-direction: column;
    margin-top: 3rem;
}



.swiper-news {
   position: relative;
   overflow: hidden;
   list-style: none;
   margin-top: 3vh;
   z-index: 1;
   margin-right: -15rem;
}


.swiper-slide.slide-news{
  height: min-content;
}

/*.detail-news{*/
/*    background-image:url('/media/card_news.svg');*/
/*    height: 100%;*/
/*    background-size: contain;*/
/*    background-repeat: no-repeat;*/
/*    padding: 5rem;*/
/*    background-position: center;*/
/*    position: relative;*/
/*    gap: 1rem;*/
/*    display: flex;*/
/*    min-height: 445px;*/
/*    flex-direction: column;*/
/*    justify-content: flex-start;*/
/*}*/


.title-det-news{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 0px;
    font-size: 35px;
    font-weight: 600;
    line-height: 35px;
    margin: 1rem 0;
}


.link-det-news{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
    bottom: 1px;
    width: calc(100% - 4.6rem);
    left: 2.8rem;
    padding: 1rem;
    color: var(--default-color);
    padding-left: 2.5rem;
    transition:0.2s;
    gap: 1rem;
}



.link-det-news:hover{
    color: var(--secondary-background-color);
    background-position: left bottom;
    
}

.link-det-news span{font-family: 'Montserrat', sans-serif;text-transform: lowercase;color: #fff;margin-left: 0;letter-spacing: 2px;font-size: 1rem;font-weight: 600;font-family: 'Montserrat', sans-serif;font-weight: 400;font-style: normal;letter-spacing: 2px;}

.link-det-news svg{
    width: 2rem;
    height: 2rem;
}













.swiper-works {
   position: relative;
   overflow: hidden;
   list-style: none;
   margin-top: 0;
   z-index: 1;
   margin-right: 0;
}


.swiper-slide.slide-works{
  height: min-content;
}

.detail-works{
    background-image: url('/media/card_lavora_con_noi.svg');
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    padding: 6rem 4rem 3rem 4rem;
    background-position: center;
    position: relative;
    gap: 1rem;
    display: flex;
    min-height: 390px;
    flex-direction: column;
    justify-content: flex-start;
}

.detail-works .p-content{
    margin:0;
    text-transform: uppercase;
}


.title-det-works{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 24px;
    font-weight: 400;
}


.link-det-works{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
    position: absolute;
    bottom: 5px;
    width: calc(100% - 1.4rem);
    cursor: pointer;
    left: 1.2rem;
    padding: 1.2rem;
    color: var(--default-color);
    padding-left: 2.5rem;
    background: linear-gradient(to right, var(--default-color) 50%, #b2b7c300 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    transition:0.2s;
}



.link-det-works:hover{
    color: var(--secondary-background-color);
    background-position: left bottom;
    
}

.link-det-works span{
font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: currentColor;
    margin-left: 2rem;
    letter-spacing: 2px;
    font-size: 14px;
}

.link-det-works svg{
    width: 2rem;
    height: 2rem;
}



.application-works{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
    position: absolute;
    bottom: 2.45rem;
    cursor: pointer;
    width: calc(100% - 1.4rem);
    left: 1.2rem;
    padding: 1.15rem;
    color: var(--default-color);
    padding-left: 2.5rem;
    background: linear-gradient(to right, var(--default-color) 50%, #b2b7c300 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    transition:0.2s;
}



.application-works:hover{
    color: var(--secondary-background-color);
    background-position: left bottom;
    
}

.application-works span{
font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: currentColor;
    margin-left: 2rem;
    letter-spacing: 2px;
    font-size: 14px;
}

.application-works svg{
    width: 2rem;
    height: 2rem;
}










.swiper-cases {
   position: relative;
   overflow: hidden;
   list-style: none;
   margin-top: 3vh;
   z-index: 1;
   margin-right: -15rem;
}


.swiper-slide.slide-cases{
  height: min-content;
}

.detail-cases{
    height: 100%;
    padding: 0.95rem 2.7rem 5rem 1.75rem;
    position: relative;
    gap: 1rem;
    display: flex;
    min-height: 445px;
    text-transform: uppercase;
    flex-direction: column;
    justify-content: flex-start;
    position:relative;
    cursor:pointer;
}

.detail-cases:after{
    content:'';
    background-image: url(/media/card_nextegy_sinapsi.svg);
    position: absolute;
    top: 0;
    left: 0;
    background-size: contain;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 1;
}



.title-det-cases{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 16px;
    font-weight: 400;
}


.link-det-cases{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
    position: absolute;
    bottom: 1px;
    width: calc(100% - 3.8rem);
    left: 2.37rem;
    padding: 0.97rem;
    color: var(--default-color);
    padding-left: 2.5rem;
    transition:0.2s;
    z-index: 2;
}



.detail-cases:before {
    content: '';
    width: calc(100% - 4.5rem);
    left: 2.75rem;
    z-index: 0;
    transition: 0.2s;
    position: absolute;
    height: 4rem;
    bottom: 0;
}

.detail-cases.nextegy:before{
    background: linear-gradient(to right, var(--primary-color-nextegy) 50%, #b2b7c300 50%);
    background-size: 200% 100%;
    background-position: right bottom;

}


.detail-cases.sinapsi:before{
    background: linear-gradient(to right, var(--primary-color-sinapsi) 50%, #b2b7c300 50%);
    background-size: 200% 100%;
    background-position: right bottom;

}


.detail-cases.hover:before {
    background-position: left bottom;
}


.title-det-case {
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 2px;
    font-size: 16px;
    font-weight: bold;
    margin: 0;
    padding: 1rem 2rem 1rem 4rem;
}



.link-det-cases.nextegy:hover{
    color: #000;
}

.link-det-cases.sinapsi:hover{
    color: var(--default-color);
}


.slide-cases:hover .link-det-cases.nextegy{
    color: #000;
}

.slide-cases:hover .link-det-cases.sinapsi{
    color: var(--default-color);
}

/*.detail-cases:has(.link-det-cases:hover) :before{*/
/*    ackground-position: left bottom;*/
/*}*/


.link-det-cases span{
font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: currentColor;
    margin-left: 2rem;
    letter-spacing: 2px;
    font-size: 14px;
    z-index:3;
}

.link-det-cases svg{
    width: 2rem;
    height: 2rem;
    z-index:3;
}

.box-case{
    padding: 2rem;
    background-size: cover;
    border-bottom: 2px solid #fff;
    display: flex;
    border-top: 2px solid #fff;
    align-items: center;
    justify-content: center;
}

.box-case.nextegy{
    background-image:url('/media/casi_di_successo_bg_nextegy.jpg');
}

.box-case.sinapsi{
    background-image:url('/media/casi_di_successo_bg_sinapsi.jpg');
}

.logo-case-det{
    width: auto;
    height: 9.3rem;
}





















.box-project{
   width: auto;
   height: 100%;
   background-position: center;
   background-size: cover;
   position:relative;
   cursor:pointer;
}


.detail-project{

}

.data-project{
   padding: 2rem;
   border-left: 0.5rem solid #fff;
   padding-bottom: 1rem;
}

.data-1{
   margin:0;
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 6rem;
   line-height: 6rem;
   font-weight: 300;
   letter-spacing: 2px;
}

.data-2{
   margin: 0;
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 1.2rem;
   font-weight: 600;
   line-height: 1rem;
   letter-spacing: 2px;
}

.content-project{
   padding: 0rem 2.6rem;
}


.content-project .title{
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   font-size: 2rem;
   line-height: 2rem;
   font-weight: 700;
}

.content-project .description{
   color: var(--default-color);
   font-size: 16px;
   line-height: 18px;
   font-family: 'Montserrat', sans-serif;
   
   font-weight: 100;
}



.box-project .overlay {
   position: absolute;
   width: 100%;
   height: 100%;
   top: 0;
   left: 0;
   opacity:1;
   transition:0.5s;
   background: #ffffff;
}


.box-project .overlay:hover {
   position: absolute;
   width: 100%;
   height: 100%;
   top: 0;
   left: 0;
   opacity:0;
   background: #c7c7c7;
   z-index: 1;
}


.box-project .overlay .detail-project .title{
   font-family: 'Montserrat', sans-serif;
   color: var(--primary-color);
}






.box-project .overlay .data-project{
   padding: 2rem;
   border-left: 0.5rem solid #00498d82;
   padding-bottom: 1rem;
}

.box-project .overlay .data-project .data-1{
   margin:0;
   color: #00498d82;
   font-family: 'Montserrat', sans-serif;
   font-size: 6rem;
   line-height: 6rem;
   font-weight: 300;
   letter-spacing: 2px;
}

.box-project .overlay .data-project .data-2{
   margin: 0;
   color: #00498d82;
   font-family: 'Montserrat', sans-serif;
   font-size: 1.2rem;
   font-weight: 600;
   line-height: 1rem;
   letter-spacing: 2px;
}

.box-project .overlay .content-project .title{
   font-family: 'Montserrat', sans-serif;
   color: #00498d82;
   font-size: 2rem;
   line-height: 2rem;
   font-weight: 700;
}

.box-project .overlay .content-project .description{
   color: #00498d82;
   font-size: 16px;
   line-height: 18px;
   font-family: 'Montserrat', sans-serif;
   
   font-weight: 100;
}




.h1-page{
   font-family: 'Montserrat', sans-serif;
   font-size: 6rem;
   line-height: 5.5rem;
   font-weight: 700;
   letter-spacing: 1px;
   color: var(--default-color);
   text-transform: uppercase;
}

.h1-news-page{
     font-family: 'Montserrat', sans-serif;
   font-size: 5rem;
   line-height: 4.5rem;
   font-weight: bold;
   letter-spacing: 1px;
   color: var(--secondary-color);  
}

.h1-news {
   font-family: 'Montserrat', sans-serif;
   font-size: 5rem;
   line-height: 4.5rem;
   font-weight: bold;
   letter-spacing: 1px;
   color: var(--secondary-color);
}


.mb-box{
   margin-bottom: 1.5rem;
}



/*MENU PAGE*/


.page.bgd-nav {
}

.page.bgd-nav.menu-scroll {
   background-color: var(--red-color);
   border-bottom: 0px;
}
.page > .nav-button{
   box-shadow: inset 0 0 100px 100px #ffffff2e;
}

.page > .nav-item > .nav-link.cms {
   color: var(--default-color);
   fill: var(--default-color);
}

.page > .nav-item:after {
   background-color: var(--default-color);
}


.menu-scroll > .container-fluid > .navigation-bar > .page > .nav-button{
   box-shadow: inset 0 0 100px 100px var(--secondary-color);
}


   .mobile-menu {
       width: 2rem;
       top: 0;
       height: 2rem;
       right: 0;
       cursor: pointer;
       transition:0.2s;
       position:relative;
       gap: 0;
       z-index: 1001;
       flex-direction: row;
       flex-wrap: nowrap;
       align-items: center;
       justify-content: flex-end;
   }
   
   /* .mobile-menu:after{*/
   /*    content:'';*/
   /*    position:absolute;*/
   /*    width:1px;*/
   /*    height:100%;*/
   /*    background-color:#fff;*/
   /*}*/
   
   /*.mobile-menu:before{*/
   /*    content:'';*/
   /*    position:absolute;*/
   /*    width: 99%;*/
   /*    height: 1px;*/
   /*    top: 49%;*/
   /*    background-color:#fff;*/
   /*}*/
   

   
   
   
   
   
   .left-menu {
       width: 60%;
       top: 0;
       height: 100%;
       background-image: url(/media/background_blu_dissolvenza.jpg);
       background-size: auto;
       background-repeat: repeat;
       transform: translateY(-100%);
       transition: 0.2s;
       transition-duration: 0.2s;
       transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
       transition-delay: 0s;
       transition-property: all;
       position:fixed;
       left:0;
       z-index: 99;
       display: flex;
       align-items: flex-start;
       justify-content: flex-start;
       padding: 5rem;
       padding-top: 8rem;
       padding-right: 4rem;
       flex-direction: column;
   }
   
   .left-menu.step-1{
       transform: translateY(0%);
   }
   
   .left-menu.step-2{
       transform: translateY(100%);
   }
   

   
   .right-menu.step-1{
       transform: translateY(0%);
   }
   
   .right-menu.step-2{
       transform: translateY(-100%);
   }
   

   .no-index{
       display:none;
   }
   

   
   
   .bgd-nav.show-menu{
       width:100%
   }
   .show-menu .navbar-cont{
       padding-left: 0;
   }
   
   

 .bar-1{
       height: 100%;
       background: #ffffff;
       width: 0.2rem;
       transition: 0.5s;
       transform: rotate(10deg) translateX(1px);
   }
   
   
   .bar-2{
       height: 0.2rem;
       background: #ffffff;
       width: 1rem;
       transition: 0.5s;
   }
   
   
   .bar-3{
       height: 100%;
       background: #ffffff;
       width: 0.2rem;
       transition: 0.5s;
       transform: rotate(-10deg) translateX(-1px);
   }
   


  
  
   .reverse .bar-1 {
       background: var(--primary-color);
   }
   
   .reverse .bar-2 {
       background: var(--primary-color);
   }
   
   .reverse .bar-3 {
       background: var(--primary-color);
   }
  


   
   .menu-scroll  .bar-1, .menu-scroll  .bar-2, .menu-scroll  .bar-3{
       background: #fff;
   }


   .change .bar-1 {
     transform: translate(10px, 0px) rotate(-40deg);
     background: #9a0101;
   }
   
   .change .bar-2 {
       
       opacity: 0;
       transition: 0.5s;
       background: var( --secondary-color);
       
       
   }
   
   .change .bar-3 {
     transform: translate(-10px, 0px) rotate(40deg);
     background: #9a0101;
   }



























.carousel-right {

}


#filters-events .box-project{
   box-shadow: inset 0 0 2000px 2000px #00000080;
}

.mb-box.hide{
   display:none;
}


.subtitle{
font-family: 'Montserrat', sans-serif;
   font-weight: 100;
   color: #fff;
   
   letter-spacing: 0.5px;
   font-size: 25px;
   margin: 0;
}


.sec-donation{
   z-index: 2;
   position: relative;
   display: flex;
   justify-content: center;
   align-items: center;
}

.row-donation{
   padding-left: 6rem;
   padding-bottom: 3rem;
   display: flex;
   flex-direction: row;
   position: absolute;
   justify-content: flex-start;
   transition: 0.3s;
   top: -6rem;
   transform: translateX(0);
}



.col-donation{
   padding: 0rem 6rem;
   padding-bottom: 2rem;
   gap: 1rem;
   display: grid;
   grid-template-columns: auto 30vw;
   margin-top: -6rem;
}

.card-donation{
   width: 100%;
   margin: 2vw 2vw 2vw 0;
   display: flex;
   padding: 4rem;
   position: relative;
   background: #fff;
   box-shadow: 0 0 2rem 5px #8b8b8b8a;
   flex-direction: column;
}

.card-donation.checkout{
   width: 100%;
   position: -webkit-sticky;
   position: sticky;
   top: 6.5rem;
}


.card-donation .overlay-donation{
   position: absolute;
   width: 100%;
   height: 100%;
   background: #ffffff99;
   top:0;
   left:0;
   transition: 0.2s;
   opacity: 0;
   z-index: 1;
   visibility: hidden;
}


.card-donation.disable .overlay-donation{
   opacity: 1;
   visibility: visible;
}

.card-donation.inactive .overlay-donation{
   opacity: 1;
   cursor: pointer;
   visibility: visible;
}


.card-donation.disable > .prev, .card-donation.disable > .next, .card-donation.disable > .end{
   cursor:default;
}

.page-donation .hero-page{
   padding-bottom:5rem;
}

.page-donation{
   background: #dbdbdb4f;
}

.next {
   background: var(--secondary-color);
   color: var(--default-color);
   padding: 1rem;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 3px;
   position: absolute;
   left: 59%;
   top: 25%;
   z-index: 2;
   cursor: pointer;
   font-size: 2rem;
   text-decoration: underline;
   text-transform: uppercase;
   box-shadow: 0px 13px 2rem 2px #8b8b8b8a;
   display: flex;
   align-items: center;
   flex-direction: column;
}
.next > svg{
   width: 2rem;
   color:#fff;
   fill: #fff;
   transform: rotate(-45deg);
}




.prev {
   background: var(--secondary-color);
   color:
   var(--default-color);
   padding: 1rem;
   font-family:
   'Borg';
   letter-spacing: 3px;
   position: absolute;
   left: 59%;
   top: 40%;
   z-index: 2;
   cursor: pointer;
   font-size: 2rem;
   text-decoration: underline;
   text-transform: uppercase;
   box-shadow: 0px 13px 2rem 2px #8b8b8b8a;
   display: flex;
   align-items: center;
   flex-direction: column;
}
.prev > svg{
   width: 2rem;
   fill: var(--default-color);
   transform: rotate(-225deg);
}

.next.hide, .prev.hide{
   display:none;
}

.card-donation.disable > .next:after, .card-donation.disable > .prev:after, .card-donation.disable > .end:after{
   content:'';
   position: absolute;
   width: 100%;
   height: 100%;
   left: 0;
   background: #ffffff99;
   top: 0;
}


.card-donation > label{
   color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 600;
   font-size: 2.5rem;
   line-height: 2.3rem;
   letter-spacing: 1px;
   text-transform: uppercase;
}

/*.personal-data {*/
/*   display: flex;*/
/*   flex-direction: row;*/
/*   flex-wrap: wrap;*/
/*   justify-content: space-between;*/
/*}*/

.payment-data{
   display: flex;
   flex-direction: row;
   flex-wrap: wrap;
   justify-content: space-between;
}


.input-donation {
   border: 0;
   background-color:#dbdbdb4f;
   width: 100%;
   color: var(--primary-color);
   padding: 1rem;
   font-size: 20px;
   position: relative;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   margin-bottom: 1rem;
   transition:0.2s;
   text-transform: uppercase;
   -webkit-appearance: none;
}

.input-donation.sel {
   background-image: url(/media/prf_freccia_giu_blu.svg);
   background-repeat: no-repeat;
   background-position: calc(100% - 1rem) center;
   background-size: 11px;
   margin-top: 0.5rem;
}

.input-donation.hide{
   display:none;
}

/*.personal-data .input-donation:not(:last-child){*/
/*    margin-bottom:1rem;*/
/*}*/
/*.personal-data .input-donation:last-child{*/
/*    margin-bottom:0;*/
/*}*/

.personal-data .grid-50{
   margin:0;
}


.half{
   width: 48%;
}

.input-donation.import {
   text-align: right;
   -webkit-appearance: none;
   background-image: url(/media/prf_euro.svg);
   background-repeat: no-repeat;
   background-position: 1rem;
   background-size: 20px;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
 -webkit-appearance: none;
}


input[type=number] {
 -moz-appearance: textfield;
 -webkit-appearance: none;
}


.input-donation::placeholder{
   color: #00498dd6;
}


.input-donation.error {
   box-shadow: 0 0 0px 2px red;
}

.input-donation.error::placeholder{
   color: red;
}

.euro-symbol:before {
   content: "";
   top: 1.5rem;
   left: 1rem;
   position: absolute;
   background-image: url(/media/prf_euro.svg);
   z-index: 2;
   width: 1.5rem;
   height: 1.5rem;
   background-size: contain;
   background-repeat: no-repeat;
}




.grid-import {
   gap: 1rem;
   width: 100%;
   display: grid;
   grid-template-columns: auto auto auto auto auto;
   margin-bottom: 1rem;
   margin-top: 0.5rem;
}

.sel-donation-time{
   border: 0;
   background-color:#dbdbdb4f;
   width: 100%;
   color: var(--primary-color);
   padding: 1rem;
   font-size: 20px;
   position: relative;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   transition: 0.5s;
   text-transform: uppercase;
}

.sel-donation-time.active{
   background-color:var(--primary-color);
   color: var(--default-color);
}



.sel-donation-type{
   border: 0;
   background-color:#dbdbdb4f;
   width: 100%;
   color: var(--primary-color);
   padding: 1rem;
   font-size: 20px;
   position: relative;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   text-transform: uppercase;
   transition: 0.5s;
}



.card-donation.order button:not(.update-data):after{
   content: '';
   height: 2px;
   width: 0;
   position: absolute;
   background-color: var(--primary-color);
   bottom: 0;
   left: 0;
   transition: 0.2s;
}

.card-donation.order button:hover:after {
   width: 100%;
}



.sel-donation-type.active{
   background-color:var(--primary-color);
   color: var(--default-color);
}


.sel-donation-user{
   border: 0;
   background-color:#dbdbdb4f;
   width: 100%;
   color: var(--primary-color);
   padding: 1rem;
   font-size: 20px;
   position: relative;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   text-transform: uppercase;
   transition: 0.5s;
}

.sel-donation-user.active{
   background-color:var(--primary-color);
   color: var(--default-color);
}


.sel-donation-import{
   border: 0;
   background-color:#dbdbdb4f;
   color: var(--primary-color);
   padding: 1rem;
   font-size: 20px;
   position: relative;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   text-transform: uppercase;
   transition: 0.5s;
}

.sel-donation-import.active{
   background-color:var(--primary-color);
   color: var(--default-color);
}




.sel-recurrence {
   display: grid;
   grid-template-columns: auto auto auto;
   gap: 1rem;
}

.sel-recurrence.hide {
   display:none;
}

.sel-donation-rec{
   border: 0;
   background-color:#dbdbdb4f;
   width: 100%;
   color: var(--primary-color);
   padding: 1rem;
   font-size: 20px;
   margin: 0;
   position: relative;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   transition: 0.5s;
   margin-bottom: 0;
   text-transform: uppercase;
}

.sel-donation-rec:first-child {
   margin: 0;
}

.sel-donation-rec:last-child {
       margin: 0;
}


.sel-donation-rec.active{
   background-color:var(--primary-color);
   color: var(--default-color);
}



.grid-50{
   gap: 1rem;
   width: 100%;
   display: grid;
   grid-template-columns: 50% auto;
   margin-bottom:1rem;
   margin-top: 0.5rem;
}



.sel-donation-pay{
   border: 0;
   background-color:#dbdbdb4f;
   width: 100%;
   color: var(--primary-color);
   padding: 1rem;
   font-size: 20px;
   position: relative;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   text-transform: uppercase;
}

.sel-donation-pay.active{
   background-color:var(--primary-color);
   color: var(--default-color);
}









.tabs-payment{
   display: flex;
   flex-direction: row;
   align-items: center;
   border-bottom: 2px solid #00498d94;
}

.item-tab-payment{
   width: 50%;
   position:relative;
   color: #00498d94;
   font-family: 'Montserrat', sans-serif;
   font-weight: 600;
   font-size: 2rem;
   letter-spacing: 1px;
   text-transform: uppercase;
   transition:0.2s;
   cursor:pointer;
}


.item-tab-payment:after{
   content:'';
   width:0%;
   height:5px;
   background-color:var(--primary-color);
   position:absolute;
   bottom: -5px;
   left: 0;
   transition:0.2s;
}

.item-tab-payment.active{
   color: var(--primary-color);
}

.item-tab-payment.active:after{
   width:100%;
}

.method.hide{
   display:none;
}

.copy-data{
   border: 0;
   background-color: #dbdbdb4f;
   width: 100%;
   color: var(--primary-color);
   padding: 1rem;
   font-size: 20px;
   position: relative;
   display: flex;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   margin-bottom: 1rem;
   transition: 0.2s;
   text-transform: uppercase;
   justify-content: space-between;
   flex-direction: row;
}

.copy-data > i{
   cursor:pointer;
}

.content-partner{
   padding: 0 6rem;
}

.card-partner{
   padding: 4rem;
   margin-bottom: 4rem;
   box-shadow: 0 0 2rem 5px #8b8b8b8a;
   display: flex;
   flex-direction: row;
   background: #fff;
   z-index: 2;
   justify-content: space-between;
   position: relative;
}

.card-partner > img{
   width: 40%;
   margin-right: 4rem;
   filter: drop-shadow(0 10px 1rem #8b8b8b8a);
}

.box-text-partner > h3{
   text-transform: uppercase;
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   letter-spacing: 1px;
   font-size: 4rem;
   line-height: 3.5rem;
   margin-bottom: 2rem;
}



.box-text-partner > p{
   font-family: 'Montserrat', sans-serif;
   font-weight: 100;
   letter-spacing: 0.5px;
   font-size: 18px;
   margin: 0;
   
}

.box-text-partner > p.pre-title{
   text-transform: uppercase;
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   letter-spacing: 1px;
   color:currentColor;
   font-size: 1.5rem;
   line-height: 2.5rem;
   font-style: normal;
}


.box-text-partner > .nav-arrow {
   color: currentColor;
}

.partners{
   margin-top: -10rem;
   z-index: 5;
   position: relative;
}

.page-partner .hero-page{
   padding-bottom:5rem;
}


#filters-events .box-project .detail-project .data-project {
   padding: 2.6rem;
   border-left: 0rem solid #fff;
   padding-bottom: 1rem;
}


#filters-events .box-project .content-project {
   padding: 0rem 2.6rem;
   padding-bottom: 2.6rem;
}

#filters-events .box-project .content-project .description{
margin: 0;
}


.video-content {
   width: 100%;
   -webkit-mask-image: url(/media/paolorossi_hero_home_v2.jpg);
   -webkit-mask-size: 100%;
   mask-size: 100%;
   -webkit-mask-repeat: no-repeat;
   mask-repeat: no-repeat;
}

.box-image-video{
   height: 100%;
   width: 100%;
   background-position: center bottom;
   display: flex;
   background-size: cover;
   flex-direction: column;
   justify-content: center;
   align-items: flex-start;
   padding: 0;
}



/*MODAL*/


.modal_section{
   position: fixed;
   bottom: 0;
   width: 100%;
   height: 100%;
   padding: 50px 0;
   z-index: 99999;
   background-color: #000000ad;
   transition: 0.2s;
   opacity: 0;
   visibility: hidden;
   align-items: center;
}


.modal_section.show {
   opacity: 1;
   visibility: visible;
}

.modal_contain{
   position: fixed;
   top: -100%;
   width: 60vw;
   transition: 0.5s;
   left: 20vw;
   padding: 50px 0;
   z-index: 999;
   background-color: var(--default-color );
}

.modal_section.show  .modal_contain {
   top: 5vh;
}

.header-modal {
   position: absolute;
   width: 100%;
   background-color: transparent;
   height: 4rem;
   z-index: 99;
   top: 0;
   left: 0;
}

.close_modal{
   position: absolute;
   right: 0;
   top: 0;
   cursor: pointer;
   width: 4rem;
   background-color: var(--third-color);
   height: 4rem;
}

.close_modal > svg{
   padding: 1.2rem;
   fill:var(--primary-color)
}



.body_modal{
   padding: 0 4rem;
}

.body_modal h3 {
   text-transform: uppercase;
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   letter-spacing: 1px;
   font-size: 4rem;
   line-height: 3.5rem;
}


.body_modal .grid-50{
   margin-top: 2rem;
}

.body_modal .grid-50 .input-donation{
   margin-bottom:0;
}



.button-modal{

   display: flex;
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   text-transform: uppercase;
   font-style: normal;
   letter-spacing: 3px;
   box-shadow: inset 0 0 100px 100px var(--secondary-color);
   font-size: 2rem;
   height: 5rem;
   line-height: 2rem;
   position: absolute;
   text-align: center;
   width: 20rem;
   text-decoration: underline;
   color: var(--default-color);
   align-items: center;
   justify-content: center;
   border:none;
   bottom:0;
   right:0;
}

.button-modal:hover {
  color: var(--default-color);
}


.checkbox-c.blue[type=checkbox] {

   border: 2px solid var(--primary-color);
}

.checkbox-c.blue:checked[type=checkbox] {
   background-image: url(/media/icon_check_blue.svg);
}


.body_modal .choice-sel{
   margin-bottom:-.5rem;
}

.summary{
   display: grid;
   grid-template-columns: auto;
   width: 100%;
   position: relative;
   column-gap: 1rem;
   margin: 1rem 0;
}

.row-summary {
   display: flex;
   align-items: center;
   justify-content: space-between;
   border-bottom: 1px solid #e1e1e1;
   margin-top: 0.5rem;
   padding-bottom: 0.2rem;
}

.label-summary {
   font-family: 'Montserrat', sans-serif;
   font-size: 16px;
   opacity: 0.5;
   letter-spacing: 1px;
}

.info-summary {
   font-family: 'Montserrat', sans-serif;
   font-size: 16px;
   font-weight: 500;
}


.summary.donation{
   grid-template-columns: auto;
}


.row-import{
   display: flex;
   align-items: flex-end;
   justify-content: space-between;
   margin-top: 1rem;
}



.label-import{
      font-family: 'Montserrat', sans-serif;
      font-size: 18px;
      opacity: 0.5;
      letter-spacing: 1px;
}

.total-import{
     font-family: 'Montserrat', sans-serif;
     font-size: 40px;
     font-weight: bold;
     line-height: 35px;
}

.now-donation {
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   text-transform: uppercase;
   border: none;
   margin-top: 2rem;
   font-style: normal;
   text-decoration: underline;
   padding: 1rem;
   width: 100%;
   letter-spacing: 3px;
   box-shadow: inset 0 0 100px 100px var(--secondary-color);
   font-size: 2rem;
   color: var(--default-color);
}

.update-data {
   border: none;
   margin: 1rem 0;
   width: 20%;
   padding: 1rem;
   font-size: 2rem;
   position: relative;
   letter-spacing: 0.5px;
   text-transform: uppercase;
   background-color: var(--secondary-color);
   transition: 0.5s;
   color: #fff;
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   text-decoration: underline;
}

.update-data:hover {
   box-shadow: 0 0 20px 2px #8b8b8b8a;
}

/*.update-data.show{*/
/*    display: block;*/
/*}*/

.divider-card {
   height: 10vh;
}


.card-donation > label.donation-label{
   font-size: 20px;
   line-height: 1rem;
   margin-top: 1rem;
   font-weight: 400;
}

.play-video-box {
   width: 3rem;
   height: 3rem;
   cursor: pointer;
   opacity: 0;
   transition: 0.2s;
   z-index: 2;
}

.box-image-2:hover .play-video-box {
   opacity: 1;
}
.overlay-box{
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: #00000087;
   z-index: 1;
   opacity:0;
   transition: 0.2s;
}
.box-image-2:hover .overlay-box {
   opacity: 1;
}

.box-image-hero{
   height: 100%;
   width: 100%;
   background-position: center bottom;
   display: flex;
   background-size: cover;
   flex-direction: column;
   justify-content: flex-end;
   align-items: flex-start;
   padding: 3rem 6rem;
}

.button-video-home {
   display: flex;
   align-items: center;
   flex-direction: row;
   height: 4rem;
   padding-right: 1rem;
   padding-left: 0;
   border: none;
   font-size: 1.5rem;
   letter-spacing: 2px;
   text-decoration: underline;
   text-transform: uppercase;
   font-family: 'Montserrat', sans-serif;
   color: #fff;
   background:transparent;
   justify-content: flex-start;
   transition: 0.2s;
   background-size: 200% 100%;
   background-position: right bottom;
}

.button-video-home > svg{
   height: 1.5rem;
   margin-right: 1rem;
   padding: 0;
}

.button-video-home:hover{
   background-position: left bottom;
}

.input-custom {
   border: 0;
   background-color: #003b72;
   width: 100%;
   color: var(--default-color);
   padding: 1rem;
   font-size: 20px;
   position: relative;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   margin-bottom: 1rem;
   transition: 0.2s;
   text-transform: uppercase;
   -webkit-appearance: none;
}

.input-custom::placeholder {
   
   color: #ffffff96;

}







/*slide*/ 

.hero-slide{
   min-height: 100vh;
   background-size:contain;
   position: relative;
   background-repeat: repeat;
}







/*barre*/

.cont-bar-horizontal{
   position:absolute;
   display:flex;
   flex-direction: column;
   bottom: 0;
   right: 0;
   align-items: flex-end;
   z-index: 5;
}

.horizontal-bar{
   height: 2rem;
   background: linear-gradient(to right, #b2b7c300 50%, #00eeff 50%);
   background-size: 200% 100%;
   width: 7vw;
   transition: 0.2s;
   background-position: right bottom;
}

.horizontal-bar.animate{

   animation: animatehorizontalbar 6s;
   animation-iteration-count: infinite;
}


@keyframes animatehorizontalbar {
   
   0% {
   background-position: right bottom;
 }
 50% {
   background-position: left bottom;
 }
 100% {
   background-position: right bottom;
 }

}


.horizontal-bar:not(:last-child){
   margin-bottom:2rem;
}

.horizontal-bar.half{
   width: 3.5vw;
   transition-delay: 0.2s;
}

.horizontal-bar.hide{
   background-position: left bottom;
}


.cont-bar-vertical{
   position:absolute;
   display:flex;
   flex-direction: column;
   top: -1.4rem;
   z-index: 5;
   right: 80%;
}


.cont-bar-vertical-left {
   display: flex;
   justify-content: flex-end;
   flex-direction: row;
}

.cont-bar-vertical-right {
   display: flex;
   justify-content: flex-start;
   flex-direction: row;
}

.vertical-bar{
   width: 2rem;
   height: 7vw;
   transition: 0.2s;
}


.cont-bar-vertical-right .vertical-bar{
   margin-right: 2rem;
   background: linear-gradient(to right, #b2b7c300 50%, #00eeff 50%);
   background-size: 200% 100%;
   background-position: right bottom;
}

.cont-bar-vertical-left .vertical-bar{
   margin-left: 2rem;
   background: linear-gradient(to right, #00eeff 50%, #b2b7c300 50%);
   background-size: 200% 100%;
   background-position: left bottom;
}

.vertical-bar.half{
   height: 2vw;
}



.cont-bar-vertical-right .vertical-bar.hide{
   background-position: left bottom;
}

.cont-bar-vertical-left .vertical-bar.hide{
   background-position: right bottom;
}



.cont-bar-vertical-right .vertical-bar.animate{

   animation: animateverticalbar1 6s;
   animation-iteration-count: infinite;
}

.cont-bar-vertical-left .vertical-bar.animate{

   animation: animateverticalbar2 6s;
   animation-iteration-count: infinite;
}

@keyframes animateverticalbar1 {
   
   0% {
   background-position: right bottom;
 }
 50% {
   background-position: left bottom;
 }
 100% {
   background-position: right bottom;
 }

}

@keyframes animateverticalbar2 {
   
   0% {
   background-position: left bottom;
 }
 50% {
   background-position: right bottom;
 }
 100% {
   background-position: left bottom;
 }

}






.menu-bar-vertical{
   position:absolute;
   display:flex;
   flex-direction: column;
   bottom: 0;
   left: 0;
}

.menu-bar-vertical.v2{
   left: 14rem;
}

.menu-bar-left {
   display: flex;
   justify-content: flex-start;
   flex-direction: row;
}

.menu-bar-right {
   display: flex;
   justify-content: flex-start;
   flex-direction: row;
}

.menu-bar{
   width: 2rem;
   height: 7vw;
   transition: 3s;
}

.menu-bar{
   width: 2rem;
   height: 7vw;
   transition: 3s;
}

.menu-bar.no-show{
   opacity:0;
}



.menu-bar-right .menu-bar{
   margin-right: 2rem;

}

.menu-bar-left .menu-bar{
  margin-left: 2rem;

}



.menu-bar.half{
   height: 3.5vw;
}

.menu-bar.min{
   height: 2vw;
}


.down .menu-bar{
   background: linear-gradient(to bottom, #b2b7c300 50%, #00eeff 50%);
   background-size: 100% 200%;
   background-position: left bottom;
}

.down .menu-bar.hide{
   background-position: right top;
}



.up .menu-bar{
   background: linear-gradient(to top, #b2b7c300 50%, #00eeff 50%);
   background-size: 100% 200%;
   background-position: left top;
}


.up .menu-bar.hide{
   background-position: right bottom;
}




.down .menu-bar.black{
   background: linear-gradient(to bottom, #b2b7c300 50%, #3a3a3a 50%);
   background-size: 100% 200%;
   background-position: left bottom;
}
.up .menu-bar.black{
   background: linear-gradient(to top, #b2b7c300 50%, #3a3a3a 50%);
   background-size: 100% 200%;
   background-position: left top;
}


.down .menu-bar.animate{

   animation: downbar 6s;
   animation-iteration-count: infinite;
}

.up .menu-bar.animate{

   animation: upbar 6s;
   animation-iteration-count: infinite;
}
@keyframes downbar {
   
   0% {
   background-position: left bottom;
 }
 50% {
   background-position: right top;
 }
 100% {
   background-position: left bottom;
 }

}

@keyframes upbar {
   
   0% {
   background-position: left top;
 }
 50% {
   background-position: right bottom;
 }
 100% {
   background-position: left top;
 }

}




/*slider*/

.slider{
   position: relative;
   width: 100vw;
   height: 100vh;
}

.item-slide {
   z-index:3;
   position: relative;
   width: 100%;
   height: 100%;
   background-size: cover;
   background-position: bottom right;
}

.item-slide.active {
   z-index:4;
}

.composition-slide{
   display: flex;
   flex-direction: row;
   align-items: flex-end;
}

.vertical-img{
   width: 17.9vw;
   height: 100vh;
   background-size: cover;
   background-repeat: no-repeat;
   background-position: right;
   transform: translateY(-100%);
   transition: 0.5s;
}

.square-img{
   background-size: cover;
   width: 35.3vw;
   background-repeat: no-repeat;
   height: 88.1vh;
   background-position: left;
   transform: translateY(100%);
   transition: 0.5s;
}


.text-slides{
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 99;
}

.block-text-slide {
   transition: 1.1s;
   position: absolute;
   top: 35vh;
   left: 7rem;
   opacity: 0;
   width:60vw;
   visibility: hidden;
   transform: translateY(200px);
}

.block-text-slide .pre-title {
   font-family: 'Montserrat', sans-serif;
   color: var(--white-color);
   font-size: 14px;
   margin: 0;
   font-weight: 200;
   letter-spacing: 4px;
   text-transform: uppercase;
}

.block-text-slide .title-slide{
   font-family: 'Montserrat', sans-serif;
   font-size: 6rem;
   line-height: 5.5rem;
   color: var(--white-color);
   letter-spacing: 0px;
   font-weight: 800;
   margin:0;
   margin-bottom: 2rem;
}

.block-text-slide .sub-title{
   font-family: 'Montserrat', sans-serif;
   color: var(--white-color);
   margin: 0;
   font-size: 20px;
   font-weight: 200;
   letter-spacing: 1px;
}

.block-text-slide.active{
   opacity:1;
   visibility:visible;
   transform: translateY(0);
}

.link-slide{
   position: absolute;
   bottom: 10vh;
   right: 29vw;
   transition:0.2s;
   opacity:0;
   width: 16rem;
   text-transform: uppercase;
   font-size: 1rem;
   letter-spacing: 4px;
   font-weight: bold;
   display: flex;
   color: var(--secondary-color);
   visibility:hidden;
   flex-direction: row;
   justify-content: space-between;
   background: linear-gradient(to right, #00eeff 50%, #b2b7c300 50%);
   background-size: 200% 100%;
   background-position: right bottom;
   padding: 0.5rem 1rem;
   align-items: center;
}

.link-slide:hover{
   color: var(--primary-color);
   background-position: left bottom;
}


.link-slide > svg{
   fill:currentColor;
   width: 2rem;
   height: 2rem;
}

.item-slide.active .link-slide{
   opacity:1;
   visibility:visible;
}








.home-sec-2{
   background-color: var(--primary-color);
   z-index: 5;
   position: relative;
   padding: 5rem 0;
}


.home-sec-2 .cont-bar-vertical {
   position: absolute;
   display: flex;
   flex-direction: column;
   top: -1.9rem;
   z-index: 5;
   left: 8.8rem;
   align-items: flex-start;
}



.cont-bar-vertical-left {
   display: flex;
   justify-content: flex-end;
   flex-direction: row;
}

.cont-bar-vertical-right {
   display: flex;
   justify-content: flex-start;
   flex-direction: row;
}

.vertical-bar-v2{
   width: 2rem;
   height: 12vw;
   transition: 0.2s;
}


.cont-bar-vertical-right .vertical-bar-v2{
   margin-right: 2rem;
   background: linear-gradient(to right, #b2b7c300 50%, #00eeff 50%);
   background-size: 200% 100%;
   background-position: right bottom;
}

.cont-bar-vertical-left .vertical-bar-v2{
   margin-left: 2rem;
   background: linear-gradient(to right, #00eeff 50%, #b2b7c300 50%);
   background-size: 200% 100%;
   background-position: left bottom;
}

.vertical-bar-v2.half{
   height: 2vw;
}

.vertical-bar-v2.medium{
   height: 5vw;
}



.vertical-bar-v2.medium.opacity{
   opacity:0;
}

.cont-bar-vertical-right .vertical-bar-v2.hide{
   background-position: left bottom;
}

.cont-bar-vertical-left .vertical-bar-v2.hide{
   background-position: right bottom;
}



.cont-bar-vertical-right .vertical-bar-v2.animate{

   animation: animateverticalbar1 6s;
   animation-iteration-count: infinite;
}

.cont-bar-vertical-left .vertical-bar-v2.animate{

   animation: animateverticalbar2 6s;
   animation-iteration-count: infinite;
}






/*swipers*/

.cont-solustions{margin-top: 8rem;}


.arrow-carousel{
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   align-items: center;
   height: 100px;
   width: 70%;
}

.arrow-next, .arrow-prev {
    width: 5rem;
}

.arrow-next > svg, .arrow-prev > svg {
    transition: 0.5s;
    opacity: 0.5;
}

.arrow-next > svg:hover, .arrow-prev > svg:hover {
    opacity: 1;
}






.swiper-slide {
   flex-shrink: 0;
   width: 100%;
   height: 100%;
   background: var(--background-color);
   position: relative;
   background-size: cover;
   padding: 2rem 0;
   margin: 1rem 0;
   transition-property: transform;
}


.swiper-solutions {
   right: 0;
   margin-right: auto;
   width: 101%;
   position: relative;
   overflow: hidden;
   list-style: none;
   padding: 0;
   z-index: 1;
}

.box-solution{
   gap: 4rem;
   height: 100%;
   width: 100%;
   display: grid;
   grid-template-columns: 65% auto;
}

.img-solution{
   background-size: cover;
   height: 500px;
}

.text-solution{
   padding: 0;
   display: flex;
   flex-direction: column;
   justify-content: space-around;
}

.text-solution > p{
   color:var(--default-color);
   font-family: 'Montserrat', sans-serif;
   margin:0;
   font-size: 20px;
   letter-spacing: 2px;
   font-weight: 100;
}


.link-sol{
   display: flex;
   color: var(--secondary-color);
   flex-direction: row;
   font-weight: bold;
   width: 16rem;
   letter-spacing: 4px;
   font-size: 1rem;
   text-transform: uppercase;
   justify-content: space-between;
   background: linear-gradient(to right, #00eeff 50%, #b2b7c300 50%);
   background-size: 200% 100%;
   background-position: right bottom;
   transition:0.2s;
   padding: 0.5rem 1rem;
   align-items: center;
}

.link-sol:hover{
   color: var(--primary-color);
   background-position: left bottom;
}
.link-sol:hover > svg{
   fill:currentColor;
}

.link-sol> svg{
   fill:currentColor;
   width: 2rem;
   height: 2rem;
   margin-right: 0.5rem;
}



.link-sol.black{
   color: var(--primary-color);
   background: linear-gradient(to right, #3a3a3a 50%, #b2b7c300 50%);
   background-size: 200% 100%;
   background-position: right bottom;

}

.link-sol.black:hover{
   color: var(--secondary-color);
   background-position: left bottom;
}





.m-link{
   margin-top:3rem;
}


/*text*/


.p-mc > p{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   margin: 0;
   font-size: 18px;
   letter-spacing: 1px;
   line-height: 1.5rem;
   font-weight: 100;
}

.p-mc{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   margin: 0;
   font-size: 18px;
   letter-spacing: 1px;
   line-height: 1.5rem;
   font-weight: 100;
}




.blu-section{
   padding-top: 8rem;
   background-image: url(/media/background_blu_dissolvenza.jpg);
   background-size: auto;
   background-repeat: repeat;
   z-index: 5;
   position: relative;
}

.blu-section .container{
   padding-bottom: 5rem;
   position:relative;
}


.brand-banner{
   background:#fff;
   padding:3rem 0;
}


.blu-section .menu-bar-vertical {
   left: 12px;
}
.blu-section .menu-bar-vertical.v2 {
   left: 14.7rem;
}





/*footer*/


.footer{
   padding: 3rem 7rem;
   position: relative;
   padding-bottom: 2rem;
   background-color: var(--secondary-color);
   background-position: top center;
   background-size: contain;
   background-repeat-y: repeat;
   z-index: 8;
}

.footer .container{
   z-index:3;
   position: relative;
}


.cont-bar-footer{
   position: absolute;
   width: 51.5vw;
   height: 100%;
   top: 0;
   right: 0;
   z-index: 2;
   display: flex;
   justify-content: flex-end;
   flex-direction: row;
}

.vertical-bar-down-menu{
   background: linear-gradient(to top, #b2b7c300 50%, #00eeff 50%);
   background-size: 100% 200%;
   background-position: left top;
   width: 10rem;
   height: 100%;
   margin-left: 2rem;
   transition: 3s;
}

.vertical-bar-down-menu.half{
   height: 13vh;
}


.vertical-bar-down-menu.hide{

   background-position: right bottom;

}








.contact-page{
   padding:5rem 0;
   margin-top: 5rem;
   position:relative;
   min-height: 115vh;
}

.page-404{
   position:relative;
}


.h1-404 {
    font-family: 'Montserrat', sans-serif;
    font-size: 6rem;
    line-height: 5.5rem;
    color: var(--white-color);
    letter-spacing: 0px;
    font-weight: 800;
    margin: 0;
    margin-bottom: 2rem;
}


.h2-404 {
    font-family: 'Montserrat', sans-serif;
    color: var(--white-color);
    margin: 0;
    font-size: 20px;
    font-weight: 200;
    letter-spacing: 1px;
}

.button-error-page{
   background-color:var(--primary-color);
   color:#fff;
   border:none;
   padding: 1rem;
   width: 46%;
   display: flex;
   margin-top: 2rem;
   font-family: 'Montserrat', sans-serif;
   flex-direction: row;
   align-items: center;
   line-height: 1rem;
   justify-content: flex-end;
   transition:0.2s;
   text-transform: uppercase;
   font-size: 1.2rem;
   letter-spacing: 3px;
   padding-right: 2rem;
   font-weight: bold;
   position:relative;
}

.button-error-page > svg{
       fill: currentColor;
       width: 2rem;
       height: 2rem;
       margin-right: 2rem;
}
.button-error-page:hover{
       color:#fff;
}


.page-404 .side-left {
   position:absolute;
   display:flex;
   flex-direction: row;
   top: 10vh;
   left: 0;
}


.page-404 .side-left.v2 {
   top: 36.9vh;
}


.content-error{
    height: 60vh;
    display: flex;
    padding: 0 5rem;
    background: var(--red2-color);
    align-items: center;
}


.contact-page .side-left {
   position:absolute;
   display:flex;
   flex-direction: row;
   top: 40vh;
   left: 0;
}


.contact-page .side-left.v2 {
   top: 66.9vh;
}




.contact-bar-left {
   display: flex;
   justify-content: flex-start;
   flex-direction: column;
}

.contact-bar-right {
   display: flex;
   justify-content: flex-start;
   flex-direction: column;
}


.contact-bar{
   height: 2rem;
   width: 7vw;
}

.contact-bar.no-show{
   opacity:0;
}



.contact-bar-right .contact-bar{
   margin-bottom: 2rem;
}

.contact-bar-left .contact-bar{
  margin-top: 2rem;
}



.contact-bar.half{
   height: 3.5vw;
}

.contact-bar.min{
   width: 2vw;
}

.contact-bar.plus{
   width: 12vw;
}



.down .contact-bar.black{
   background: linear-gradient(to right, #b2b7c300 50%, #3a3a3a  50%);
   background-size: 200% 100%;
   background-position: right bottom;
}
.up .contact-bar.black{
   background: linear-gradient(to right, #3a3a3a 50%, #b2b7c300  50%);
   background-size: 200% 100%;
   background-position: left bottom;
}


.down .contact-bar.animate{

   animation: sideLeftDown 6s;
   animation-iteration-count: infinite;
}

.up .contact-bar.animate{

   animation: sideLeftUp 6s;
   animation-iteration-count: infinite;
}


@keyframes sideLeftDown {
   
   0% {
   background-position: left bottom;
 }
 50% {
   background-position: right top;
 }
 100% {
   background-position: left bottom;
 }

}

@keyframes sideLeftUp {
   
   0% {
   background-position: right bottom;
 }
 50% {
   background-position: left bottom;
 }
 100% {
   background-position: right bottom;
 }

}




.contact-page .side-right {
   position:absolute;
   display:flex;
   flex-direction: row;
   bottom: 31.4vh;
   right: 0;
}


.contact-page .side-right.v2 {
   bottom: -4.5vh;
}



.page-404 .side-right {
   position:absolute;
   display:flex;
   flex-direction: row;
   bottom: 31.4vh;
   right: 0;
}


.page-404 .side-right.v2 {
   bottom: -4.5vh;
}




.side-right .down .contact-bar.black{
   background: linear-gradient(to left, #b2b7c300 50%, #3a3a3a  50%);
   background-size: 200% 100%;
   background-position: left bottom;
}
.side-right .up .contact-bar.black{
   background: linear-gradient(to left, #3a3a3a 50%, #b2b7c300  50%);
   background-size: 200% 100%;
   background-position: right bottom;
}


.side-right .down .contact-bar.animate{

   animation: sideRightDown 6s;
   animation-iteration-count: infinite;
}

.side-right .up .contact-bar.animate{

   animation: sideRightUp 6s;
   animation-iteration-count: infinite;
}


@keyframes sideRightDown {
   
   0% {
   background-position: right bottom;
 }
 50% {
   background-position: left top;
 }
 100% {
   background-position: right bottom;
 }

}

@keyframes sideRightUp {
   
   0% {
   background-position: left bottom;
 }
 50% {
   background-position: right bottom;
 }
 100% {
   background-position: left bottom;
 }

}





/*contact*/

.hero-contact{
   margin-bottom: 10vh;
}


.tabs-hero{
   gap: 1.5rem;
   height: 100%;
   width: 100%;
   display: grid;
   grid-template-columns: 40% 3% 40%;
}


.text-tab-hero{
   color: #3a3a3a;
}


.after-tab{
   color:var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 6rem;
   line-height: 8rem;
}


/*.h1-tab{*/
/*  font-family: 'Montserrat', sans-serif;*/
/*  font-size: 6rem;*/
/*  letter-spacing: 1px;*/
/*  font-weight: 100;*/
/*  transition:0.2s;*/
/*  cursor: pointer;*/
/*}*/

/*.text-tab-hero.active .h1-tab{*/
/*   font-weight:bold;*/
/*}*/


.h1-cont {
    font-family: 'Montserrat', sans-serif;
    font-size: 3rem;
    letter-spacing: 1px;
    font-weight: bold;
    color: #3a3a3a;
}

.form-contact{
   padding: 0 15vw;
}




.form-mc{
   width:100%;
   margin-top:2rem;
}

.input-mc{
   border: 2px solid;
   background-color: transparent;
   width: 100%;
   color: var(--primary-color);
   padding: 1rem;
   font-size: 20px;
   font-family: 'Montserrat', sans-serif;
   letter-spacing: 0.5px;
   position: relative;
   margin-bottom: 1rem;
   z-index: 1;
}



.input-mc::placeholder{
   color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
}


.send-form{
   width: 25%;
   background-color:var(--primary-color);
   color:#fff;
   border:none;
   padding: 1rem;
   display: flex;
   margin-top: 2rem;
   font-family: 'Montserrat', sans-serif;
   flex-direction: row;
   align-items: center;
   line-height: 1rem;
   justify-content: flex-end;
   transition:0.2s;
   text-transform: uppercase;
   font-size: 1.2rem;
   letter-spacing: 3px;
   padding-right: 2rem;
   font-weight: bold;
   position:relative;
}




/*.send-form:hover{*/
/*   width: 100%;*/
/*}*/





.send-form.open {
    width: 100%;
}

.send-form > svg{
       fill: currentColor;
       width: 2rem;
       height: 2rem;
       margin-right: 2rem;
}


.send-form.open > svg{
    opacity:0;
}

.send-form.open .text-button{
    opacity:0;
}

.message-form{
   opacity:0;
   visibility:hidden;
   position:absolute;
   width: 30vw;
   left: 0;
   transition:0.2s;
}

.send-form.open .message-form{
    opacity:1;
    visibility:visible;
    left: 20vw;
}


.help-desk{
   padding: 0 15vw;
}


.help-desk > p{
       font-weight: 300;
}


.help-desk .p-mc > p{
       font-weight: 300;
}



.locations{
   margin-top: 5rem;
   gap: 1.5rem;
   width: 100%;
   display: grid;
   grid-template-columns: auto auto;
}


.loaction{
   padding-left: 2rem;
   border-left: 1px solid #00000045;
}

.title-loc{
   color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   margin: 0;
   font-weight: bold;
   font-size: 1.5rem;
   letter-spacing: 1px;
}

.number-loc{
   color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   font-size: 1.5rem;
   letter-spacing: 1px;
   font-weight: 200;
}

.loaction .p-mc{
   font-weight:200;
}






/*subpage*/

.page {
}

.hero-page{
   padding-bottom: 0;
   position: relative;
   padding-left: 20vw;
}


.h1-subpage{
   font-family: 'Montserrat', sans-serif;
   font-size: 5rem;
   line-height: 5.5rem;
   font-weight: 100;
   letter-spacing: 2px;
   color: var(--secondary-color);
   text-transform: capitalize;
   margin-bottom: -1rem;
   position: relative;
   z-index: 6;
}


.h1-subpage > span{
   color: var(--default-color);
   font-weight: bold;
}



.page .vertical-img{
   position: absolute;
   transform: translateY(0);
   left: 0;
   top: 0;
   z-index: 2;
   height: 80vh;
}








/*news*/



.news-page {
   padding-top: 15rem;
   position: relative;
}

.hero-news{
   padding-bottom: 5rem;
   position: relative;
}



.grid-news{
   gap: 2rem;
   display: grid;
   grid-template-columns: auto auto auto;
}

.box-new{
   width:100%;
   height:auto;
}

.data-new{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   text-transform:uppercase;
   font-weight: 100;
   letter-spacing: 3px;
}

.title-new{
   color: var(--secondary-color);
   font-family: 'Montserrat', sans-serif;
   font-size:1.5rem;
   font-weight: bold;
   letter-spacing: 1px;
   line-height: 1.8rem;
}

/*.desc-new{*/
/*    color: var(--default-color);*/
/*    font-family: 'Montserrat', sans-serif;*/
/*    font-weight:200;*/
/*    font-size:;*/
/*}*/

.link-new{
   display: flex;
   color: var(--secondary-color);
   flex-direction: row;
   font-weight: bold;
   width: 100%;
   letter-spacing: 4px;
   font-size: 1rem;
   text-transform: uppercase;
   justify-content: space-between;
   background: linear-gradient(to right, #00eeff 58%, #b2b7c300 50%);
   background-size: 200% 100%;
   background-position: right bottom;
   transition: 0.2s;
   padding: 0.5rem 1rem;
   margin-top: 2rem;
   align-items: center;
}

.link-new:hover{
   color: var(--primary-color);
   background-position: left bottom;
}
.link-new:hover > svg{
   fill:currentColor;
}

.link-new> svg{
   fill: var(--primary-color);
   width: 2rem;
   height: 2rem;
   margin-right: 0.5rem;
}



.b-bottom{
   border-bottom: 2px solid var(--default-color);
}


.not-show{
   display:none;
}





.sec-page{
   background-color: var(--primary-color);
   padding: 4rem;
   position: relative;
   padding-left: 20vw;
   padding-right: 15rem;
   padding-bottom: 12rem;
}


.sec-page .cont-bar-vertical {
   position: absolute;
   display: flex;
   flex-direction: column;
   top: 2.65rem;
   z-index: 5;
   left: 5.2rem;
   align-items: flex-start;
}

.sec-page .menu-bar-vertical {
   position: absolute;
   display: flex;
   flex-direction: column;
   bottom: 0;
   left:unset;
   right: 5rem;
}
.sec-page .menu-bar-vertical.v2 {
   right: 21rem;
}


.img-rfid{
   width: 18rem;
   height: 18rem;
   position: absolute;
   bottom: -10rem;
   right: 10rem;
   z-index: 6;
}


.img-rfid > img{
   width: 100%;
}

.spell-bar {
    transform: rotate(180deg) translateX(6.31rem) translateY(8rem);
}

.h4-m{
   color: var(--secondary-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 200;
   letter-spacing: 4px;
   margin-bottom: 2rem;
}

.desc-page > p{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 300;
   letter-spacing: 1px;
   font-size: 18px;
}


.desc-page{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 200;
   letter-spacing: 1px;
   font-size: 18px;
}

.img-ab{
   position: absolute;
   width: 28vw;
   left: 8vw;
   z-index: 5;
   top: 35vh;
}

.img-ab > img{
   width:100%;
}


.list-mc{
   list-style:none;
}
.list-mc > li{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 200;
   letter-spacing: 1px;
   margin-bottom: 1rem;
   font-size: 18px;
   position: relative;
   transition:0.5s;
}

.list-mc > li > a{
   text-decoration:underline;
}

.list-mc > li > a:hover{
   color: var(--secondary-color);
}



.list-mc > li::before {
   content:'';
   width: 10px;
   position: absolute;
   height: 10px;
   background: #0ef;
   top: 0.5rem;
   left: -2rem;
}


.list-black{
   list-style:none;
}
.list-black > li{
   color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 400;
   letter-spacing: 1px;
   margin-bottom: 1rem;
   font-size: 18px;
   position: relative;
}

.t-list{
  color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   letter-spacing: 1px;
   margin-bottom: 0rem;
   font-size: 18px; 
   text-transform:uppercase;
}

.list-black > li::before {
   content:'';
   top: 0.3rem;
   left: -2rem;
   background-image:url('/media/freccia_grigia_dx.svg');
   position: absolute;
   width: 2rem;
   height: 1rem;
   background-repeat: no-repeat;
}



.list-blue{
   list-style:none;
   margin-bottom: 2rem;
}
.list-blue > li{
   margin-top:2rem;
   color: var(--default-color);
   position: relative;
}

.list-blue .t-list{
  color: var(--secondary-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   letter-spacing: 1px;
   margin-bottom: 0rem;
   font-size: 18px; 
   text-transform:uppercase;
}

.list-blue > li::before {
   content:'';
   top: 0.3rem;
   left: -2rem;
   background-image:url('/media/freccia_blu_dx.svg');
   position: absolute;
   width: 2rem;
   height: 1rem;
   background-repeat: no-repeat;
}





.icon-list{
   list-style:none;
   margin-top: 0;
   margin-bottom: 0;
   padding: 0;
}


.icon-list > li{
   color: var(--default-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 200;
   letter-spacing: 1px;
   margin-bottom: 2rem;
   font-size: 18px;
   position: relative;
   display: flex;
   gap: 2rem;
   align-items: flex-start;
}

.icon-list > li > p{
   margin-bottom: 0;
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   letter-spacing: 1px;
   font-size: 16px;
   font-weight: 400;
}

.icon-list > li > img{
   width: 3.5rem;
}

.mb-t{
   margin-bottom: 4.5rem;
}


.min-sec{
   min-height: 135vh;
}


.brand-banner-page{
   background:#fff;
   padding: 5rem 0;
   z-index:5;
   position: relative;
}

.box-news{
    display: grid;
    grid-template-columns: auto auto auto;
    gap: 1.5rem;
}

.content-single-news{
    background-color: var(--primary-color);
}

.container-news{
    gap: 6rem !important;
    display: grid !important;
    grid-template-columns: auto auto;
    margin-top: 2rem;
    margin-bottom: 4rem;
}

.hero-news-0{
    
    position: relative;
    padding:0;
}

.sing-news-t{
    margin-bottom: -0.5rem;
    position: relative;
    z-index: 9;
}

.h4-m.white {
    color: var(--default-color);

}

.link-fonte{
    color: var(--default-color);
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    letter-spacing: 1px;
    font-size: 18px;
}
.link-fonte:hover{
    color: var(--default-color);
}

.social-col{
    position: sticky;
}

.social-link  > a > i{
    width:2rem;
}

.social-fix{
    position: fixed;
    top: 7rem;
}


.content-p-news{
    padding: 0;
}


.tabs-hero-partners{
    gap: 1rem;
    display: grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    justify-content: start;
}


.h2-tab{
     color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   line-height: 3rem;
   font-size: 3rem;
   font-weight: 200;
   letter-spacing: 3px; 
   cursor:pointer;
}

.h2-part {
    color: var(--primary-color);
    font-family: 'Montserrat', sans-serif;
    line-height: 3rem;
    font-size: 3rem;
    font-weight: bold;
    letter-spacing: 3px;
}

.after-tab-partners {
    color: var(--primary-color);
    font-family: 'Montserrat', sans-serif;
    font-size: 3rem;
    line-height: 3rem;
}

.text-tab-hero.active .h2-tab {
    font-weight: bold;
}

.swiper-partners{
    right: 0;
    margin-right: auto;
    width: 101%;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    bottom: 0;
    z-index: 1;
}


.swiper-customers{
    right: 0;
    margin-right: auto;
    width: 101%;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    bottom: 0;
    z-index: 1;
}


.grid-customers, .grid-partners{
    display: grid;
    grid-template-columns: 18% 18% 18% 18% 18%;
    gap: 2rem;
}

.partner-box{
    border: 1px solid #fff;
    transition:0.2s;
    opacity:0.5;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 3rem;
    margin-bottom: 3rem;
    cursor: pointer;
    position:relative;
}

.partner-box  > img{
    width: 100%;
    height: auto;
    
}

.partner-box:hover{
    opacity:1;
}



.square-partner-box{
    position: absolute;
    width: 100%;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    height: 10.6rem;
    bottom: -3.2rem;
    right: -1rem;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}


.numbers-cert{
    padding: 1rem;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 12px;
    margin: 0;
    width: 100%;
    font-weight: 100;
    text-transform: uppercase;
    border-left: 1px solid;
}





.partner-box:before{
    content:'';
    width:1rem;
    height:1px;
    background-color:var(--default-color);
    position:absolute;
    top: 2.8rem;
    right:-1rem;
}











.grid-partners.hide{
    display:none;
}


.grid-customers.hide{
    display:none;
}


.nav-partners {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-left: 4rem;
    justify-content: flex-end;
}


.nav-partners .arrow-next, .nav-partners .arrow-prev{
   cursor:pointer;
   background: linear-gradient(to bottom, #b2b7c300 50%, #3a3a3a 50%);
   background-size: 100% 200%;
   background-position: right top;
   transition:0.5s;
}


.nav-partners .arrow-next > svg, .nav-partners .arrow-prev > svg{
   fill: #3a3a3a;
   width: 1rem;
}

.nav-partners .arrow-next:hover, .nav-partners .arrow-prev:hover{
   background-position: left bottom;
}

.nav-partners .arrow-next:hover > svg, .nav-partners .arrow-prev:hover > svg{
   fill:#fff;
}


.nav-partners .arrow-next, .nav-partners .arrow-prev{
   width: 100%;
   display: flex;
   height: 100px;
   align-items: center;
   padding: 0 0.6rem;
   justify-content: center;
}

.text-carousel{
    position: absolute;
    bottom: -0.9rem;
    font-size: 7rem;
    text-transform: uppercase;
    color: #ffffffa6;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    letter-spacing: -3px;
    line-height:7rem;
    left: 0rem;
}


.load-body{
   animation: removeBlur 0.5s ease-in-out;
   overflow-y:hidden;
}





@keyframes removeBlur {
 0% {
   filter: blur(15px);
 }
 50% {
   filter: blur(7px);
 }
 100% {
   filter: blur(0px);
 }
 
}

.no-capitalize{
    text-transform: unset;
}


.error-input {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 0;
}

.require-error::after {
    content: 'Campo richiesto';
    position: absolute;
    font-size: 14px;
    right: 50%;
    opacity: 0;
    letter-spacing: 1px;
    font-family: 'Montserrat', sans-serif;
    transition: 0.2s;
    color: #fff;
    text-transform: uppercase;
    top: 1.4rem;
}

.require-error.show-error::after {
    right: 1rem;
    opacity: 1;
}

.error{
    color:#fff;
}

.sec-input{
    position:relative;
}








/*COLLAPSE*/

.nav-link .change-collapse {
    width: 25px;
    height: 25px;
    margin: 0.6rem 0;
    display: flex;
    cursor: pointer;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.nav-link .change-collapse  > .bar-1{
    width:100%;
    background: #3a3a3a;
    height:3px;
    margin-left: 0;
}

.nav-link .change-collapse  > .bar-2{
    width:100%;
    background: #3a3a3a;
    height:3px;
    margin-top: -3px;
    transition: 0.1s;
    transform:rotate(90deg);
}

.nav-link .change-collapse.open > .bar-2{
    transform: rotate(180deg);
}

b, strong {
    font-weight: bold;
}

.desc-page ul {
    list-style: none;
}

.desc-page ul > li {
    color: var(--default-color);
    font-family: 'Montserrat', sans-serif;
    font-weight: 200;
    letter-spacing: 1px;
    margin-bottom: 1rem;
    font-size: 18px;
    position: relative;
    transition: 0.5s;
}

.desc-page ul > li::before {
    content: '';
    background-image: url(/media/freccia.svg);
    position: absolute;
    left: -2rem;
    top: 0.4rem;
    width: 1rem;
    height: 1rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.desc-page ul > li > a {
    text-decoration: underline;
}

.desc-page ul > li > a:hover {
    color: var(--secondary-color);
}

.h1-subpage p{
    margin:0;
}





.list-black ul{
   list-style:none;
}
.list-black ul > li{
   color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: 400;
   letter-spacing: 1px;
   margin-bottom: 1rem;
   font-size: 18px;
   position: relative;
}

.list-black ul > li > p{
  color: var(--primary-color);
   font-family: 'Montserrat', sans-serif;
   font-weight: bold;
   letter-spacing: 1px;
   margin-bottom: 0rem;
   font-size: 18px; 
   text-transform:uppercase;
}

.list-black ul > li::before {
   content:'';
   top: 0.3rem;
   left: -2rem;
   background-image:url('/media/freccia_grigia_dx.svg');
   position: absolute;
   width: 2rem;
   height: 1rem;
   background-repeat: no-repeat;
}



/*circles*/


.circles{
    position: absolute;
    height: 50rem;
    width: 50rem;
    display: flex;
    align-content: center;
    justify-content: center;
    align-items: center;
    right: 2.5rem;
    top: -26.15rem;
    background: transparent;
    z-index: 0;
}




.sinapsi-cirlcle-1{
    width: 48rem;
    height: 48rem;
    border-radius: 50%;
    background: conic-gradient(#fff0 355deg, currentColor 0deg);
    position:absolute;
    color:var(--secondary-color-sinapsi);
    transform: rotate(180deg);
    z-index:0;
    display:flex;
    align-items: center;
    justify-content: center;
}

.sinapsi-cirlcle-1:after{
    content:'';
    width: calc(100% - 0.25rem);
    position: absolute;
    height: calc(100% - 0.25rem);
    border-radius: 50%;
    background:var(--background-color);
    z-index:1;
    
}


.sinapsi-cirlcle-2{
    width: 41.5rem;
    height: 41.5rem;
    border-radius: 50%;
    background: conic-gradient(#fff0 355deg, currentColor 0deg);
    position:absolute;
    color: var(--secondary-color-sinapsi);
    transform: rotate(180deg);
    z-index:2;
    display:flex;
    align-items: center;
    justify-content: center;
}

.sinapsi-cirlcle-2:after{
    content:'';
    width: calc(100% - 0.25rem);
    position: absolute;
    height: calc(100% - 0.25rem);
    border-radius: 50%;
    background:var(--background-color);
    z-index:3;
    
}



.sinapsi-cirlcle-3{
    width: 34.8rem;
    height: 34.8rem;
    border-radius: 50%;
    background: conic-gradient(#fff0 355deg, currentColor 0deg);
    position:absolute;
    color: var(--secondary-color-sinapsi);
    transform: rotate(180deg);
    z-index:4;
    display:flex;
    align-items: center;
    justify-content: center;
}

.sinapsi-cirlcle-3:after{
    content:'';
    width: calc(100% - 0.25rem);
    position: absolute;
    height: calc(100% - 0.25rem);
    border-radius: 50%;
    background:var(--background-color);
    z-index:5;
    
}


.sinapsi-cirlcle-4{
    width: 28.3rem;
    height: 28.3rem;
    border-radius: 50%;
    background: conic-gradient(#fff0 355deg, currentColor 0deg);
    position:absolute;
    color: var(--secondary-color-nextegy);
    transform: rotate(180deg);
    z-index:6;
    display:flex;
    align-items: center;
    justify-content: center;
}

.sinapsi-cirlcle-4:after{
    content:'';
    width: calc(100% - 0.25rem);
    position: absolute;
    height: calc(100% - 0.25rem);
    border-radius: 50%;
    background:var(--background-color);
    z-index:7;
    
}


.sinapsi-cirlcle-5{
    width: 21.8rem;
    height: 21.8rem;
    border-radius: 50%;
    background: conic-gradient(#fff0 355deg, currentColor 0deg);
    position:absolute;
    color: var(--secondary-color-sinapsi);
    transform: rotate(180deg);
    z-index:8;
    display:flex;
    align-items: center;
    justify-content: center;
}

.sinapsi-cirlcle-5:after{
    content:'';
    width: calc(100% - 0.25rem);
    position: absolute;
    height: calc(100% - 0.25rem);
    border-radius: 50%;
    background:var(--background-color);
    z-index:9;
    
}

.sinapsi-cirlcle-6{
    width: 14.8rem;
    height: 14.8rem;
    border-radius: 50%;
    background: conic-gradient(#fff0 355deg, currentColor 0deg);
    position:absolute;
    color: var(--secondary-color-sinapsi);
    transform: rotate(180deg);
    z-index:10;
    display:flex;
    align-items: center;
    justify-content: center;
}

.sinapsi-cirlcle-6:after{
    content:'';
    width: calc(100% - 0.25rem);
    position: absolute;
    height: calc(100% - 0.25rem);
    border-radius: 50%;
    background:var(--background-color);
    z-index:11;
    
}

.sinapsi-cirlcle-7{
    width: 8.5rem;
    height: 8.5rem;
    border-radius: 50%;
    background: conic-gradient(#fff0 355deg, currentColor 0deg);
    position:absolute;
    color: var(--secondary-color-nextegy);
    transform: rotate(180deg);
    z-index:12;
    display:flex;
    align-items: center;
    justify-content: center;
}

.sinapsi-cirlcle-7:after{
    content:'';
    width: calc(100% - 0.25rem);
    position: absolute;
    height: calc(100% - 0.25rem);
    border-radius: 50%;
    background:var(--background-color);
    z-index:13;
    
}


.item-infographic{
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: space-between;
    align-items: flex-end;
    gap: 3rem;
    position:relative;
    z-index: 1;
}


.item-infographic:first-child{
    margin-top: 2rem;
}



.item-infographic:after{
    content:'';
    width: 9px;
    position: absolute;
    height: 9px;
    z-index: 9;
    background: var(--default-color);
    top: 0;
    right: 0;
    top: 0.75rem;
}

.img-item-infographic{
    width: 8rem;
}

.img-item-infographic img{width: 100%;}

.cert-item-infographic{
    width: 100%;
    margin-bottom: 1rem;
    display: flex;
    /*gap: 2rem;*/
    flex-direction: column;
}




.cert-item-infographic p{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 11px;
    margin: 0;
    font-weight: 100;
    margin-bottom: -1rem;
}

.cert-item-infographic img{width: auto;}







.regular{
    font-weight:400;
}







/*COLORS*/

.bg-1{
   background-color:var(--background-color); 
}

.bg-2{
   background-color:var(--secondary-background-color);
}

.bg-img{
    background-image:url('/media/gruppo_sfondo_aree_icone.png');
    background-size: calc(100% - 4rem);
    background-position: center bottom;
    background-repeat: no-repeat;
    padding-top: 12rem;
    margin-top: -10rem;
    margin-bottom: -3rem;
}

.bg_nextegy{
    background-color:var(--primary-color-nextegy); 
}

.bg_sinapsi{
    background-color:var(--primary-color-sinapsi); 
}


/*.nextegy{*/
/*    color:var(--primary-color-nextegy); */
/*}*/

/*.sinapsi{*/
/*    color:var(--primary-color-sinapsi); */
/*}*/

.black{
    color:#000;
}

.default{
    color:var(--default-color);
}

.cls-1 {
    fill: none;
    stroke: #fff;
    stroke-width: 5px;
}


.cls-1.nextegy{
    fill: var(--primary-color-nextegy);
    stroke: #000;
    stroke-width: 5px;
}

.cls-1.sinapsi{
    fill: var(--primary-color-sinapsi);
    stroke: #fff;
    stroke-width: 5px;
}


/*.bg-green{*/
/*    background-color:var(--primary-color-nextegy);*/
/*}*/









/*LIST*/

.custom-list-horizontal{
    list-style: none;
    margin: 0;
    height: min-content;
    margin-top: 2rem;
    display: grid;
    padding: 0;
    grid-template-columns: 50% 50%;
}

.custom-list-horizontal li{
    position: relative;
    padding-left: 2.5rem;
    padding-right: 3rem;
}


.custom-list-vertical{
    list-style: none;
    margin: 0;
    margin-top: 2rem;
    padding: 0;
}

.custom-list-vertical li{
    position: relative;
    padding-left: 2.5rem;
    padding-right: 3rem;
}

ul.nextegy li:before{
    content:'';
    background-image:url(/media/freccia_verde.svg);
    position: absolute;
    left: 0;
    top: 0;
    width: 1.5rem;
    height: 1.5rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}


ul.sinapsi li:before{
    content:'';
    background-image:url(/media/freccia_viola.svg);
    position: absolute;
    left: 0;
    top: 0;
    width: 1.5rem;
    height: 1.5rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}



ul.default li:before{
    content:'';
    background-image:url(/media/freccia.svg);
    position: absolute;
    left: 0;
    top: 0;
    width: 1.5rem;
    height: 1.5rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.title-li{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
    font-size: 16px;
    margin: 0;
    margin-bottom: 1rem;
    font-weight: bold;
    text-transform: uppercase;
}

.nextegy li .title-li{
    color: var(--primary-color-nextegy);
}

.sinapsi li .title-li{
    color: var(--primary-color-sinapsi);
}

.default li .title-li{
    color: var(--default-color);
    text-transform: none;
    font-weight: 100;
}

/*PATTERNS*/

.intermade{
    padding:0 3rem;
}

.nextegy_content{
    padding-bottom:0;
}

.nextegy_content_2{
    padding-top:0;
}
.nextegy_content canvas{
    top: 10rem;
    position: absolute;
    left: 0;
}

.nextegy_content_2 canvas{
    bottom: 0;
    position: absolute;
    left: 0;
}



.sinapsi_content{
    padding-bottom:0;
}

.sinapsi_content_2{
    padding-top:0;
}
.sinapsi_content canvas{
    top: 10rem;
    position: absolute;
    left: 0;
}

.sinapsi_content_2 canvas{
    bottom: 0;
    position: absolute;
    left: 0;
}

.title-underline{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 2px;
    font-size: 20px;
    color:var(--default-color);
    text-decoration:underline;
    margin-bottom: 1rem;
    font-weight: 600;
    text-transform: uppercase;
}



.grid-single{
    display: grid;
    align-items: start;
    grid-template-columns: 70% 15%;
    justify-content: space-between;
    margin-top: 4rem;
}



.list-logos{
  list-style: none;
  padding: 0;
}


.list-logos li{
  margin-bottom: 1rem;
  font-family: 'Montserrat', sans-serif;
  color: var(--default-color);
  letter-spacing: 1px;
  font-size: 14px;
  font-weight: 500;
  line-height: 15px;
}

.list-logos li img{
  width: 8rem;
}





/*APPLICATIONS*/


.check-select-area{
    margin: 2rem 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.choice-application {
   display: flex;
   flex-direction: row;
   align-items: center;
   margin-top: 0;
   gap: 1rem;
}

.checkbox-application[type=checkbox] {
   background: transparent;
   appearance: none;
   color: var(--default-color);
   height: 1.5rem;
   border: 2px solid currentColor;
   width: 1.5rem;
   cursor: pointer;
}

.checkbox-application:checked[type=checkbox] {
   background-image: url(/media/check.svg);
   background-size: 15px 15px;
   background-position: center;
   background-repeat: no-repeat;
}

.label-application {
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   text-transform: uppercase;
   letter-spacing: 2px;
   font-size: 22px;
}

.select-locations{
    margin-left: 3rem;
    position: relative;
}

.select-locations.none{
    display:none;
}


.header-select{
    border-bottom: 1px solid #fff;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    height: min-content;
    z-index: 0;
    position: relative;
}

.header-select span{
    margin-bottom: 0;
}

.select-locations svg{
    width:3rem;
    padding: 1rem;
    transition: 0.2s;
}


.header-select.open svg {
    transition: 0.2s;
    transform: perspective(none) rotate(180deg);
}

.body-select{
    padding: 1rem;
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 400;
    height: 100%;
    position: relative;
    overflow-y: scroll;
    overflow-x: hidden;
    transition: 0.35s all;
    background: #505050;
}


.body-select.hide{
    height: 0%;
    max-height: 0;
    display: block;
    padding-bottom: 0;
    padding-top: 0;
}


.item-select-locations:not(:last-child) {
    margin-bottom: 1rem;
}


.choice-location {
   display: flex;
   flex-direction: row;
   align-items: center;
   margin-top: 0;
   gap: 1rem;
}

.checkbox-location[type=checkbox] {
   background: transparent;
   appearance: none;
   color: var(--default-color);
   height: 1.5rem;
   border: 2px solid currentColor;
   width: 1.5rem;
   cursor: pointer;
}

.checkbox-location:checked[type=checkbox] {
   background-image: url(/media/check.svg);
   background-size: 15px 15px;
   background-position: center;
   background-repeat: no-repeat;
}

.label-location {
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   text-transform: uppercase;
   letter-spacing: 2px;
   font-size: 18px;
}

.selected-locate{
    position:relative;
}

.locations-sel{
    display: flex;
    gap: 1rem;
    position: absolute;
    top: 0;
    z-index: 1;
}

.sel-l{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 16px;
    font-weight: 100;
    padding: 0.2rem 0.5rem;
    text-transform: uppercase;
    cursor: pointer;
    display: flex;
    border: 1px solid;
    z-index: 3;
    gap: 0.5rem;
    position: relative;
    align-items: center;
    align-content: center;
}

.sel-l svg {
    padding: 0;
    width: 1rem;
}

option{
    background:#505050;
}



.title-form{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 3px;
    font-size: 18px;
    margin: 0;
    font-weight: 400;
    margin-top: 4rem;
    text-transform: uppercase;
}


.label-m{
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 0.5rem;
}


.disponabilities{
     display: flex;
     flex-direction: row;
     gap: 2rem;
     margin-top: 0;
}


.choice-disponibility {
   display: flex;
   flex-direction: row;
   align-items: center;
   margin-top: 0;
   gap: 0.5rem;
}

.checkbox-disponibility[type=checkbox],  .checkbox-disponibility[type=radio]{
   background: #f3f3f3;
   appearance: none;
   color: #1717172e;
   height: 2rem;
   border: 2px solid currentColor;
   width: 1rem;
   height: 1rem;
   cursor: pointer;
}

.checkbox-disponibility:checked[type=checkbox], .checkbox-disponibility:checked[type=radio]{
   background-size: 10px 10px;
   background-position: center;
   background-repeat: no-repeat;
   box-shadow: inset 0 0 0px 2px #fff;
   background-color: #000;
}

.label-disponibility {
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   text-transform: capitalize;
   letter-spacing: 2px;
   font-size: 16px;
   font-weight: 500;
}

.label-c {
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 3px;
    font-size: 16px;
    margin: 0;
    font-weight: 400;
    margin-bottom: 0;
    margin-top: 1.5rem;
    text-transform: uppercase;
}


.radio-c{
    background: transparent;
   appearance: none;
   color: var(--default-color);
   border: 2px solid currentColor;
   width: 1rem;
   height: 1rem;
   cursor: pointer;
   border-radius:50% !important;
}

.form-check-input:checked[type=radio] {
    background-image: url('/media/circle.svg');
}
.form-check-input:checked {
    background-color: #ffffff;
    border-color: #ffffff;
}

.form-check-input:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgb(13 110 253 / 0%);
}





.esperienze{
    display: flex;
    margin-top: 3rem;
    flex-direction: column;
    gap:2rem;
}

.eperienza{
}

.head-esperienza{
    cursor: pointer;
    color: #fff;
    letter-spacing: 2px;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid currentColor;
    border-radius: 0px 0px 0px 0px;
    padding: 10px 0px 1rem 0px;
    display: flex;
    align-content: center;
    align-items: center;
    cursor: pointer;
    justify-content: space-between;
font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 1.5rem;
}



.open-close-esperienza > svg {
    fill: #000;
    transition: 0.2s;
    transform: rotateY(180deg) rotateZ(90deg);
    width: 2rem;
}

.open-close-esperienza > svg {
    fill: var(--default-color);
}


.open-close-esperienza.open > svg {
    transition: 0.2s;
    transform: perspective(none) rotate(-90deg);
}

.body-esperienza{
    font-family: 'Montserrat', sans-serif;
    padding: 2rem 0;
    height: 100%;
    position: relative;
    overflow-y: scroll;
    overflow-x: hidden;
    transition: 0.35s all;
}

.body-esperienza.hide {
    height: 0%;
    max-height: 0;
    display: block;
    padding-bottom: 0;
    padding-top: 0;
}












.formazioni{
    display: flex;
    margin-top: 3rem;
    flex-direction: column;
    gap:2rem;
}

.formazione{
}

.head-formazione{
    cursor: pointer;
    color: #fff;
    letter-spacing: 2px;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid currentColor;
    border-radius: 0px 0px 0px 0px;
    padding: 10px 0px 1rem 0px;
    display: flex;
    align-content: center;
    align-items: center;
    cursor: pointer;
    justify-content: space-between;
font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 1.5rem;
}



.open-close-formazione > svg {
    fill: #000;
    transition: 0.2s;
    transform: rotateY(180deg) rotateZ(90deg);
    width: 2rem;
}

.open-close-formazione > svg {
    fill: var(--default-color);
}


.open-close-formazione.open > svg {
    transition: 0.2s;
    transform: perspective(none) rotate(-90deg);
}

.body-formazione{
    font-family: 'Montserrat', sans-serif;
    padding: 2rem 0;
    height: 100%;
    position: relative;
    overflow-y: scroll;
    overflow-x: hidden;
    transition: 0.35s all;
}

.body-formazione.hide {
    height: 0%;
    max-height: 0;
    display: block;
    padding-bottom: 0;
    padding-top: 0;
}


.send-button{
    background-color:#fff;
    margin-top: 3rem;
    width: 100%;
    display: flex;
    flex-direction: row;
    gap: 2rem;
    padding: 2rem 0;
    border: none;
    border-radius: 3rem;
    align-items: center;
    justify-content: center;
}


.send-button.assistance{
    width: fit-content;
    padding: 2rem 5rem;
}

.send-button svg{
    width: 1.5rem;
    height: 1.5rem;
}

.send-button span{
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 2px;
    font-size: 14px;
    color: #000;
}


.pseudo-accordion{
    line-height: 12px;
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: bold;
    padding: 1rem 0 0 0;
    border: 0;
    border-bottom: 0;
}




.button-add-attachment{
    padding:1rem;
    text-transform:uppercase;
    background-color: #ffffff;
    cursor:pointer;
    font-size: 16px;
}



/*MARGINS*/

.pb-0{
    padding-bottom:0;
}

.bb-1{
    border-bottom:1px solid #fff;
}

.pt-0{
    padding-top:0;
}



.pb-5{
    padding-bottom:5rem !important;
}




/*datepicker*/
.ui-widget.ui-widget-content {
    border: 1px solid #c5c5c5;
    background: #ffffff;
    padding: 0;
    width: min-content;
    border: 0;
    color: #000;
    border-radius: 0;
    z-index: 10 !important;
}






.ui-datepicker .ui-datepicker-title {
    margin: 0 2.3em;
    line-height: 1.8em;
    font-weight: 500;
    text-align: center;
font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: #000000;
}


.ui-datepicker table {
    width: 100%;
    font-size: .9em;
    border-collapse: collapse;
    margin: 0 0 0.4em;
    padding: 2rem;
    display: block;
}



.ui-datepicker .ui-datepicker-header {
    position: relative;
    padding: 0;
    border: 0;
    padding: 1rem 0;
    background: #f6f6f6;
    border-radius: 0;
}


.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
    position: absolute;
    top: 0;
    width: 4rem;
    height: 100%;
    cursor:pointer;
    padding: 1rem;
}


.ui-datepicker th {
    padding: 0.7em 0.3em;
    text-align: center;
    font-weight: 500;
    font-size: 16px;
    border: 0;
    text-transform: uppercase;
    color: #000;
}


.ui-datepicker .ui-datepicker-prev.ui-state-hover, .ui-datepicker .ui-datepicker-next.ui-state-hover{
    border: 0;
    background: #ededed00;
    font-weight: normal;
    color: #2b2b2b;
}

.ui-datepicker .ui-datepicker-prev {
    left:0;
    transform: rotateY(180deg);
}

.ui-datepicker .ui-datepicker-next {
    right:0;
}

.ui-widget-header .ui-icon {
    background-image: url(/media/freccia_nera.svg);
    background-size: 100%;
    background-position: center center;
}

.ui-datepicker td {
    border: 0;
    padding: 5px !important;
}

.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
    display: block;
    left: 0;
    margin-left: 0;
    top: 0;
    width: 100%;
    margin-top: 0;
    height: 100%;
        position: relative;
}



/*BRAIN*/

.brain{
    position: relative;
    display: flex;
    right: 0;
    width: 100%;
    justify-content: flex-end;
    align-items: flex-start;
}

.brain img{
    width: 85%;
    opacity: 0.5;
    filter: blur(0px);
    transition: 0.2s;
}

.brain.blur img{
    filter: blur(10px);
}


.item-brain{
    position:absolute;
    width: 18rem;
    display:flex;
    color: var(--default-color);
    flex-direction: column;
}



.left{
    text-align:left;
}

.center{
    text-align:center;
}

.right{
    text-align:right;
}


.title-item-brain{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
    font-size: 30px;
    position: relative;
    border-bottom: 1px solid;
    padding: 0 0 0.5rem 0;
}


.left .title-item-brain:before{
    content:'';
    position: absolute;
    /*background-image: url(/media/angolo.svg);*/
    width: 1rem;
    height: 1rem;
    bottom: -1rem;
    left: 0;
    background-size: cover;
    background-repeat: no-repeat;
}


.right .title-item-brain:before{
    content:'';
    position: absolute;
    /*background-image: url(/media/angolo.svg);*/
    right: 0;
    transform: rotateY(180deg);
    background-size: cover;
    background-repeat: no-repeat;
    width: 1rem;
    height: 1rem;
    bottom: -1rem;
}


.desc-item-brain{
    font-family: 'Montserrat', sans-serif;
    text-transform:uppercase;
    letter-spacing: 2px;
    font-size: 12px;
    line-height: 22px;
    font-weight: 100;
    padding: 0.5rem 1rem 0 1rem;
}


.item-brain.pos-1{
    left: 2rem;
    top: 17rem;
}


.item-brain.pos-2{
    left: 5rem;
    top: 29rem;
}


.item-brain.pos-3{
    left: 21rem;
    bottom: -2rem;
}


.item-brain.pos-4{
    right: 7rem;
    top: 11rem;
}


.item-brain.pos-5{
    right: 10rem;
    top: 23rem;
}

.item-brain.pos-6{
    right: 20rem;
    bottom: 6rem;
}




/*CONTACT PAGE*/

.grid-contact{
    display: grid;
    grid-template-columns: 50% 50%;
}

.grid-address{
    display: flex;
    flex-direction: column;
}

.map-img{
    border: 1px solid;
}

.map-img img{
    width: 100%;
}

.item-address{
    border-top: 1px solid;
    border-left: 1px solid;
    padding: 4.92rem 2rem;
    padding-right: 20rem;
}

.item-address .title{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 18px;
    margin: 0;
    font-weight: 100;
    margin-bottom: 1rem;
    text-transform:uppercase;
}

.item-address .description{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 1.5rem;
    font-weight: 400;
    display: block;
    margin-bottom: 1rem;
}

.item-address .sub{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 16px;
    margin: 0;
    font-weight: 100;
    margin-bottom: 1rem;
    text-transform:uppercase;
}

.item-contact{
    padding: 2rem;
    border-bottom: 1px solid;
    border-left: 1px solid;
}

.item-address:last-child{
    border-bottom: 1px solid;
}

.grid-contact .item-contact:last-child{
    border-right: 1px solid;
}


.item-contact .sub{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 16px;
    margin: 0;
    font-weight: 100;
    margin-bottom: 1rem;
}


.item-contact .title{
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 3px;
    color: var(--default-color);
    text-transform: uppercase;
}





/*ASSISTANCE*/


.grid-assistance{
    border: 1px solid;
    position:relative;
    margin-left: 3rem;
    margin-top: 3rem;
    transition:0.2s;
}

.flex-contact{
    display: flex;
    flex-direction: column;
}

.form-assistance{
    padding: 3rem 4rem;
    border: 1px solid;
    position: absolute;
    z-index: 10;
    width: 55vw;
    top: -3rem;
    left: -3rem;
    transition: 0.2s;
}

.contact-assistance{
    padding: 3rem 10rem;
    display: flex;
    position:relative;
    justify-content: flex-end;
    align-items: center;
    
        background: linear-gradient(to right, #4d4d4d7d 50%, #b2b7c300 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    transition: 0.2s;
}

.contact-assistance:hover{
    background-position: left bottom;
}

.contact-assistance:not(:last-child){
    border-bottom: 1px solid;
}


.contact-assistance span {
font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    color: var(--default-color);
    margin-left: 2.75rem;
    letter-spacing: 2px;
    z-index: 3;
    font-size: 14px;
    font-weight: 100;
}

.contact-assistance svg {
    width: 5rem;
    height: 5rem;
    background-color: #4d4d4d7d;
    border-radius: 50%;
    padding: 1rem;
}

.contact-assistance:after{
    width: 5rem;
    height: 5rem;
    position: absolute;
    background-color:#4d4d4d7d;
    top: 3rem;
    border-radius: 50%;
    transition: 0.1s;
    right: 15rem;
}

.contact-assistance:hover:after{
    width: 100%;
    height: 100%;
    border-radius:0;
    top:0;
    right:0;
   
}






/*CERTIFICATIONS*/




.officials-partner{
    padding: 1rem  0;
    position:relative;
    border:1px solid;
    display: flex;
    flex-direction: column;
    align-items: center;
    top: 4rem;
}


.officials-partner:before{
    content:'';
    width:3rem;
    height:1px;
    background-color:var(--default-color);
    position:absolute;
    bottom:3rem;
    left:-3rem;
}


.official-p{
    width: 10rem;
}



.square-official {
    position: absolute;
    border-left: 1px solid;
    border-top: 1px solid;
    height: 12.4rem;
    top: -3.4rem;
    left: -3rem;
}

.title-official {
    padding: 1rem 3rem;
    text-align: left;
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 14px;
    margin: 0;
    font-weight: 100;
    text-transform: uppercase;
    border-right: 1px solid;
}








/*LISTS*/

.rec-list{
    padding: 3rem;
    position: relative;
    border: 1px solid #fff;
    margin-left: 2rem;
    z-index: 2;
    margin-top: 4rem;
    background: var(--secondary-background-color);
}

.rec-list ul{
    list-style: none;
    margin: 0;
    padding: 0;
}

.rec-list li{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
    font-size: 16px;
    margin: 0;
    margin-bottom: 2rem;
    font-weight: 100;
    padding-left: 2.5rem;
    position: relative;
    text-transform: uppercase;
    color: var(--default-color);
}

.rec-list li:last-child{
    margin-bottom: 0rem;
}

.rec-list li:before{
    content: '';
    background-image: url(/media/freccia.svg);
    position: absolute;
    left: 0;
    top: 0;
    width: 1.5rem;
    height: 1.5rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}


.rec-vert-ab{
    position: absolute;
    width: 23.4rem;
    border-left: 1px solid #fff;
    border-top: 1px solid #fff;
    height: 17rem;
    top: 0;
    left: 13px;
    background: var(--secondary-background-color);
    z-index: 1;
}

.rec-vert-ab:before{
    content:'';
    position: absolute;
    width: 2rem;
    height:1px;
    bottom: 0;
    left: 0;
    background: #fff;
}


.title-list-rec {
    padding: 1.2rem 2rem;
    text-align: left;
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 16px;
    margin: 0;
    font-weight: 100;
    text-transform: uppercase;
    border-right: 1px solid;
}


.grid-icons{
    display:flex;
    flex-direction: column;
    margin-bottom: 3rem;
}

.grid-4{
    display:grid;
    grid-template-columns: 20% 20% 20% 20%;
    justify-content: center;
}

.grid-5{
    display:grid;
    grid-template-columns: 20% 20% 20% 20% 20%;
}

.icon-text{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 2rem;
    opacity: 0.5;
    transition: 0.2s;
}

.icon-text:hover{
    opacity: 1;
}

.icon-text img{
    width: 100%;
    height: auto;
    
}

.icon-text span{
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 16px;
    font-weight: 100;
    text-transform: uppercase;
}






/*NEWS*/



.default .detail-news {
    padding: 4rem 3rem;
}


.default .detail-news .link-det-news {

    bottom: 1px;
    width: calc(100% - 1.3rem);
    left: 1.1rem;
}


.articles .row .col-12:nth-child(odd){
    
}

.articles .row .col-12:nth-child(even){
        justify-content: flex-end;
}


.grid-articles{
    display: grid;
    grid-template-columns: repeat(3, calc(33% - 0.3rem));
    gap: 1rem;
    margin-top: 3rem;
}

.grid-articles:not(:last-child){
    margin-bottom:3rem;
}

.articles .detail-news{
}


.articles .detail-news .link-det-news{
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 0.85rem;
    padding-left: 2.5rem;
}


/*.articles{*/
/*    display:none !important;*/
/*}*/

/*.articles.show{*/
/*    display:flex !important;*/
/*}*/

/*.articles.hide{*/
/*    display:none !important;*/
/*}*/


.certs{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 2rem;
    margin-top: 2rem;
}

.certs img{
    width: 7rem;
    height: auto;
}



.menu-star{
    width: 100%;
    height: 100%;
    /*background-image: url(/media/angolo.svg);*/
    background-size: 100%;
    transition:0.2s;
}

.pos-star-1{
    transform: rotate(180deg);
}
.pos-star-2{transform: rotate(270deg);}

.pos-star-3{
    transform: rotate(90deg);
}

.pos-star-4{
    
}

.mobile-menu.change{
}

.change .pos-star-1, .change .pos-star-4{
    opacity:0;
}


.menu-mobile-sec{
display:none; 
}

.mobile-menu{
   display:none;
}



   
   .burger-menu {display: block;position: fixed;background: var(--red2-color);top: 0;box-shadow: 0 0px 20px 3px #3232326b;right: 0;transition: 0.4s;z-index: -1;transform: translateX(100%);width: 100%;height: 100%;}
   
   .open-menu {
       transform: translateX(0);
       z-index: 1000;
   }

   
  .menu-mobile{
      list-style: none;
      padding: 0;
      width: 100%;
      overflow-y: scroll;
      height: 100%;
      padding-bottom: 6rem;
          overflow-x: hidden;
  }
  
  .menu-mobile-sec {
      position: fixed;
      z-index: 1001;
      top: 6rem;
      height: 100%;
      left: 0;
      overflow-x: hidden;
      width: 100%;
      overflow-y: hidden;
      display: none;
      transform: translateX(0);
  }
  .menu-mobile-sec.show{
      display: block;
  }
  
  .show-menu .container .logo{
      z-index: 100001;
  }
  
  .change{
      z-index:10001;
  }
  
  .bgd-primary.show-menu{
      position: relative;
      z-index: 10001;
  }
  /*.bgd-nav.show-menu{*/
  /*    position: relative;*/
  /*}*/
  

  .cms-mobile{
      font-size: 1.5rem;
      color: #fff;
      display: none;
      margin-bottom: 0;
      letter-spacing: 1px;
      padding: 1rem;
      padding-left: 1rem;
      position:relative;
      font-weight: 500;
      flex-direction: row;
      align-items: center;
      line-height: 1.5rem;
      background: transparent;
      background-size: 200% 100%;
      background-position: right bottom;
      font-family: 'Montserrat', sans-serif;
      text-transform: uppercase;
      transition: 0.1s;
      border:0;
  }
  
  
.cms-mobile:before {
    content: '';
    width: 2rem;
    height: 2rem;
    position: absolute;
    background-size: 100%;
    top: 1.5rem;
    opacity: 0;
    left: 1rem;
}
  
  
 .nav-item.active > a{
     background: #ffffff;
     color: var(--red2-color);
 }
 
  .nav-item.active > a:before{

     opacity: 1;
 }
 

 .nav-item.active > span, .nav-item:hover > span, .nav-item:focus > span{
     border-left: 1rem solid;
     color: #fff;
     padding-left: 1.5rem;
 }

.nav-item:hover:after, .nav-item.active:after{
  
   width:0%;
}
  
  .cms-mobile.version-2{
     height: 11rem;
  }
  
  
  .cms-mobile:after{
      
      content:'';
      
      
  }
  
  .menu-mobile .nav-item{
      margin-right: 0;
  }
  
  .menu-mobile .nav-item {
    margin-right: 0;
}

.menu-mobile .nav-item.active {
}
  
  .cms-mobile.animate__animated{
      animation-duration: 0.4s;
      --animate-delay: 0.1s;
  }

  
  .cms-mobile:hover{
      background-position: left bottom;
      color: #ffffff;
      border-color: var( --background-color);
  }
  
  .cms-mobile.active{
      background-position: left bottom;
      color: var( --primary-color);
      border-color:var( --primary-color);
  }
  
   
    
    
.dropdown-menu-mobile.hide  {
    height: 0%;
    max-height: 0;
    display: block;
    padding-bottom: 0;
    padding-top: 0;
}
.dropdown-menu-mobile {height: 100%;position: relative;overflow-y: scroll;padding: 0  2.5rem 2.5rem;overflow-x: hidden;transition: 0.2s all;}
    
    


.dropdown-menu-mobile .sub-menu {
    position:relative;
    padding: 0;
}


.dropdown-menu-mobile .sub-menu .nav-item{
    margin:0;
}

.dropdown-menu-mobile .sub-menu .nav-item .nav-link.cms{
    color: #fff7;
    fill: #fff7;
    margin: 0;
    border: 0;
    padding: .5rem;
    transition: 0.1s all;
}

.dropdown-menu-mobile .sub-menu  .nav-item .nav-link.cms:hover{
    color: #fff;
    fill: #fff;
    border-left: 3px solid;
}


.grid-single .col-12:not(:first-child){
    margin-top:3rem;
}

    
.m-t-2{
    margin-top:2rem !important;
}


.img-desktop{
    
}

.img-mobile{
    display:none;
}

.show-tablet{
    display:none;
}

.show-landscape{
    display:none;
}

.show-landscape-mini{
    display:none;
}

.nav-pr-tablet {
    justify-content: flex-end;
    margin-top: -6rem;
    flex-direction: row;
}



.open-assistance{
   border:0;
   margin: 0;
}


.open-assistance .form-assistance {
    width: 100%;
    position: relative;
    top: 0;
    left: 0;
    background: transparent;
    padding: 3.5rem 4rem;
}


.open-assistance .flex-contact {
    display: none;
}


.contact-asssitance{
    position:absolute;
    top:0;
    display: flex;
    right:0;
    width: 55%;
}

.contact-asssitance a{
       color: var(--default-color);
       font-family: 'Montserrat', sans-serif;
       text-transform: uppercase;
       font-size: 11px;
       letter-spacing: 2px;
       padding: 1rem 2rem;
       transition: 0.2s;
       display: block;
       border-bottom: 1px solid;
       border-left: 1px solid;
       width: 100%;
       text-align: center;
}


.contact-asssitance a:hover{
       color: #000;
       background-color:var(--default-color);
      
}



.download-asssitance{
    position:absolute;
    bottom:0;
    left:0;
    background-color:var(--default-color);
    display: flex;
    flex-direction: row;
    gap: 2rem;
    padding: 1.5rem 0;
    border: none;
    width: 45%;
    align-items: center;
    justify-content: center;
}





.folders-assistance{
    display: grid;
    grid-template-columns: calc(25% - 3rem) calc(25% - 3rem) calc(25% - 3rem) calc(25% - 3rem);
    gap: 4rem;
    margin: 4rem 0rem;
    
}



/*.folder-assistance{*/
/*    cursor: pointer;*/
/*    position:relative;*/
/*    transition:0.2s;*/
/*    opacity: 0.5;*/
/*}*/

/*.folder-assistance:hover{*/
/*    opacity: 1;*/
/*}*/

/*.folder-assistance img{*/
/*    width: 100%;*/
/*}*/


.name-folder{
    font-size: 15px;
    margin: 0;
    font-weight: 500;
    color: var(--default-color);
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
    margin-top: 1rem;
    word-break: break-word;
}

.img-extension{
    position: absolute;
    bottom: 5rem;
    right: 1rem;
    width: 5rem;
}

.img-extension img{
    
}

.download-asssitance svg {
    width: 1.5rem;
    height: 1.5rem;
}

.download-asssitance span {
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 2px;
    font-size: 14px;
    color: #000;
}


.downloaded{
    transform:scale(1.15);
}


.info-certificate{
    background-color: #fff;
    margin-top: 0;
    width: fit-content;
    display: flex;
    flex-direction: row;
    gap: 2rem;
    padding: 2rem 3rem;
    border: none;
    border-radius: 3rem;
    align-items: center;
    justify-content: center;
}

.info-certificate svg {
    width: 1.5rem;
    height: 1.5rem;
}


.info-certificate span {
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 2px;
    font-size: 14px;
    color: #000;
}

.icon-empty{
    width:2rem !important;
}



.p-content ul{
    list-style: none;
    margin: 0;
    padding: 0;
    margin-top: 2rem;
}


.p-content li{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 1px;
    font-size: 16px;
    margin: 0;
    margin-bottom: 1rem;
    font-weight: 100;
    padding-left: 2.5rem;
    position: relative;
    text-transform: uppercase;
    color: var(--default-color);
}

.p-content li:last-child{
    margin-bottom: 0rem;
}

.p-content li:before{
    content: '';
    background-image: url(/media/freccia.svg);
    position: absolute;
    left: 0;
    top: 0;
    width: 1.5rem;
    height: 1.5rem;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}


.grid-gallery{
	display: grid;
	grid-gap: 1rem;
	grid-template-columns: auto auto auto auto;
	grid-auto-rows: auto;
	grid-auto-flow: dense;
	margin-top:3rem;
}

.item-gallery-event{
    width:100%;
    height: 168px;
    cursor: pointer;
}
.item-gallery-event img{
    width: 100%;
	height: 100%;
	object-fit: cover;
}

.img-news-page{
    margin: 2rem 0;
    width: 50%;
    
}

.primary{
    width:75%;
    height: 350px;
    object-fit: cover;
    margin-top: 0;
    object-position: bottom center;
}


.detail-news{
    height: 100%;
    position: relative;
    gap: 0;
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position:relative;
    cursor:pointer;
    transition:0.5s;
}


.detail-news:hover{
    box-shadow: 0 0 9px 8px #d5d5d54d;
}

/*.detail-news:after{*/
/*    content:'';*/
/*    position: absolute;*/
/*    top: 0;*/
/*    left: 0;*/
/*    background-size: contain;*/
/*    width: 100%;*/
/*    height: 100%;*/
/*    background-repeat: no-repeat;*/
/*    background-position: center;*/
/*    z-index: 1;*/
/*}*/

/*.detail-news:before {*/
/*    content: '';*/
/*    width: calc(100% - 4.5rem);*/
/*    left: 2.75rem;*/
/*    z-index: 0;*/
/*    transition: 0.2s;*/
/*    position: absolute;*/
/*    height: 4rem;*/
/*    bottom: 0;*/
/*    background: linear-gradient(to right, var(--default-color) 50%, #b2b7c300 50%);*/
/*    background-size: 200% 100%;*/
/*    background-position: right bottom;*/
/*}*/


/*.default .detail-news:before {*/
/*    content: '';*/
/*    width: calc(100% - 1.4rem);*/
/*    left: 1.2rem;*/
/*    bottom: 1px;*/
/*    height: 4rem;*/
/*}*/


.articles .detail-news .link-det-news {
    left: 0;
    bottom: 0;
    padding: 1rem 2rem;
    background: var(--red-color);
    transition:0.2s;
}

.box-detail-event .p-content{
    margin:0;
    letter-spacing: 0;
    color: #989898;
}

.data-event-page{
     font-family: 'Montserrat', sans-serif;
     color: var(--default-color);
     letter-spacing: 1px;
     font-size: 16px;
     margin: 0;
     margin-top: 1rem;
     color: #989898;
}


/*.articles .detail-news:before {*/
/*    content: '';*/
/*    width: calc(100% - 1.3rem);*/
/*    left: 1.1rem;*/
/*    bottom: 1px;*/
/*    bottom: 0.9rem;*/
/*    height: 3.8rem;*/
    
/*}*/

.box-detail-event{
    padding: 2rem;
}


.detail-news:hover:before {
    background-position: left bottom;
}

.detail-news:hover .link-det-news {
    color:#000;
}


.no-scroll-y-desktop{
        overflow-y: hidden;
}


.hero.work .container {
    gap: 1rem;
}

.page-404  canvas {
    top: 0;
    position: absolute;
    left: 0;
}

.black-v{
   background: linear-gradient(90deg, rgb(6 6 6) 75%, rgba(255,255,255,0) 100%); 
}

.send-message {
    width: 100%;
    height: 100%;
    background: #000000cc;
    position: fixed;
    top: 0;
    color: #fff;
    z-index: 999;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2rem;
    opacity:0;
    visibility:hidden;
    transition:0.2s;
}

.show-message{
    opacity:1;
    visibility:visible;
}

.send-message p{
    font-family: 'Montserrat', sans-serif;
    color: #ffffff;
    letter-spacing: 1px;
    font-size: 2rem;
    margin: 0;
    font-weight: 400;
}

.banner-select{
    background-color: var(--red-color);
    padding: 3rem 5.5rem;
}

.banner-select .h2-c{
    color: var(--white-color);
}

.buttons-select{
    display: flex;
    flex-direction: row;
    width: 100%;
}

.buttons-select button{
    width: 100%;
    border: none;
    background: var(--red2-color);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    letter-spacing: 1px;
    padding: 2rem 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    transition:0.5s;
    font-weight: 500;
    text-transform:uppercase;
}

.buttons-select a{
    width: 100%;
    border: none;
    background: var(--red2-color);
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    letter-spacing: 1px;
    padding: 2rem 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    transition:0.5s;
    font-weight: 500;
    text-transform:uppercase;
}

.buttons-select svg{
    width: 3rem;
    transition:0.5s;
    stroke:var(--white-color);
}

.buttons-select svg circle{
    transition:0.5s;
    fill:var(--white-color);
}


.buttons-select button:hover{
    background: var(--white-color);
    color: var(--red2-color);
}

.buttons-select a:hover{
    background: var(--white-color);
    color: var(--red2-color);
}

.buttons-select button:hover svg{
   stroke:var(--red2-color);
}


.buttons-select button:hover svg circle{
   fill:var(--red2-color);
}

.buttons-select a:hover svg{
   stroke:var(--red2-color);
}

.buttons-select a:hover svg circle{
   fill:var(--red2-color);
}

.arrows-slider{
    display: flex;
    z-index: 100;
    position: absolute;
    bottom: 0;
    right: 0;
    gap: 0;
    flex-direction: row-reverse;
}

.arrows-slider span{
    font-family: 'Montserrat', sans-serif;
    background: var(--red2-color);
    padding: 1.75rem;
    cursor: pointer;
    opacity:0.5;
    transition:0.2s;
}

.arrows-slider span:hover{
    opacity:1;
    
}


.arrows-slider span svg{
    stroke:#fff;
    height: 1rem;
}


.swiper-products{
    position: relative;
    overflow: hidden;
    list-style: none;
    z-index: 1;
    
}


.swiper-top-products {
    position: relative;
    overflow: hidden;
    list-style: none;
    z-index: 1;
    /*margin-right: -14.5rem;*/
}




.swiper-slide.swiper-products {
height: min-content;
}

.swiper-slide.swiper-products img{
width:100%;
}

.product-carousel{
    padding:0 0 5.5rem 0;
}

.box-desc-product{padding: 0 1rem;display: flex;align-content: flex-start;gap: 0.5rem;align-items: flex-start;}

.box-desc-product svg{stroke: var(--red-color);width: 4rem;height: auto;}

.text-desc{
}

.product-name{
    margin: 0;
    font-size: 14px;
    line-height: 14px;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 0.5rem;
    font-weight: bold;
    color: var(--red-color);
}

.category-name{
    margin: 0;
    text-transform: uppercase;
    line-height: 10px;
    font-size: 10px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
}

.slide-products{
    transition:0.5s;
}

.slide-products:hover{
    background:var(--white-color);
    box-shadow: 0 0 9px 8px #d5d5d54d;
}




.grid-products{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin-top: 1rem;
    width: 100%;
}

.minimize .grid-products{
    grid-template-columns: repeat(3, 1fr);
}




.item-products img{width: 100%;height: 100%;object-fit: contain;}

.item-products{
    transition:0.5s;
    padding: 2rem 0;
    display: block;
    width: 100%;
    background: #fff;
}

.item-products:hover{
    background:var(--white-color);
    box-shadow: 0 0 9px 8px #d5d5d54d;
}



.swiper-button-next.top-product{
    right:8rem;
}

.banner-left{
    display: grid;
    justify-content: flex-end;
    grid-template-columns: auto 70%;
}

.banner-left img{
    position: relative;
    right: -6rem;
    height: 35rem;
    width: auto;
}

.history-banner{
    margin-top: 3.5rem;
    background-size: cover;
    background-image: url(/media/marchetti_azienda_home.jpg);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    padding: 0px 8rem 0 10rem;
}

.block-banner{
    padding: 0 4rem;
    margin-bottom: 4rem;
}

.bgd-nav.page {
    background-color: var(--red-color);
}

/*.product-page{*/
/*    padding:0;*/
/*    display: grid;*/
/*    grid-template-columns: calc(100% - 24rem) 24rem;*/
/*    background: #fff;*/
/*}*/

.product-page {
    padding: 0;
    transition: 0.5s;
    display: grid;
    grid-template-columns: 100% 0%;
    /* background: #f3f3f3; */
    overflow-x: clip;
}

.product-page.minimize{
    grid-template-columns: calc(100% - 24rem) 24rem;
}


body::-webkit-scrollbar {
   -webkit-appearance: none;
   height: 0px;

}

/*.filter-product{*/
/*    background: #f3f3f3;*/
/*    padding: 2rem 1rem;*/
/*    position: sticky;*/
/*    height: 100vh;*/
/*    top: 4rem;*/
/*    right: 0;*/
/*    width: 24rem;*/
/*}*/

.filter-product {
    padding: 0;
    position: sticky;
    height: 100vh;
    top: 0;
    right: -23rem;
    width: 24rem;
    box-shadow: 0 0 35px 0 #00000045;
    background: #fff;
}

.desktop-b-filter{
    width: 2.5rem;
    padding: 0.5rem;
    height: 3.5rem;
    display: flex;
    position: absolute;
    top: 40%;
    left: -2.5rem;
    cursor: pointer;
    background: var(--red-color);
    box-shadow: -20px 0px 35px -4.5px #00000045;
    justify-content: center;
    align-items: center;
    z-index: 1;
    transition:0.2s;
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
}

.desktop-b-filter svg{
    fill: none;
    stroke: #ffffff;
    stroke-width: 10;
    stroke-linecap: round;
    width: 100%;
    stroke-linejoin: round;
}


.desktop-b-filter.open{
    left: -1.5rem;
    width: 2rem;
}

.desktop-b-filter.open svg{
    left: -0.5rem;
    position: relative;
    stroke-width: 25px;
}

.custom-range{
    position:relative;
}
input[type="range"]:before{
    content:'';
    width: 10px;
    height: 10px;
    display: block;
    background: #000;
    position: absolute;
    top: 5px;
}

input[type="range" i] {
  --c: #000; /* active color */
  --g: 2px; /* the gap */
  --l: 5px; /* line thickness*/
  --s: 20px; /* thumb size*/
  width: 100%;
  height: var(--s); /* needed for Firefox*/
  --_c: color-mix(in srgb, var(
  --c), #000 var(--p, 0%));
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  cursor: pointer;
  overflow: hidden;
  position: relative;
}
input[type="range" i]:focus-visible,
input[type="range" i]:hover {
  --p: 25%;
}
input[type="range" i]:active,
input[type="range" i]:focus-visible {
  --_b: var(--s);
}
/* chromium */
input[type="range" i]::-webkit-slider-thumb {
  height: var(--s);
  aspect-ratio: 1;
  border-radius: none;
  box-shadow: 0 0 0 var(--_b, var(--l)) inset var(--_c);
  border-image: linear-gradient(90deg, var(--_c) 50%, #e5e4e4 0) 1/0 100vw/0
    calc(100vw + var(--g));
  clip-path: polygon(
    0 calc(50% + var(--l) / 2),
    -100vw calc(50% + var(--l) / 2),
    -100vw calc(50% - var(--l) / 2),
    0 calc(50% - var(--l) / 2),
    0 0,
    100% 0,
    100% calc(50% - var(--l) / 2),
    100vw calc(50% - var(--l) / 2),
    100vw calc(50% + var(--l) / 2),
    100% calc(50% + var(--l) / 2),
    100% 100%,
    0 100%
  );
  -webkit-appearance: none;
  appearance: none;
  transition: 0.3s;
  background:#fff;
}

/* Firefox */
input[type="range"]::-moz-range-thumb {
  height: var(--s);
  width: var(--s);
  background: none;
  border-radius: none;
  box-shadow: 0 0 0 var(--_b, var(--l)) inset var(--_c);
  border-image: linear-gradient(90deg, var(--_c) 50%, #e5e4e4 0) 1/0 100vw/0
    calc(100vw + var(--g));
  clip-path: polygon(
    0 calc(50% + var(--l) / 2),
    -100vw calc(50% + var(--l) / 2),
    -100vw calc(50% - var(--l) / 2),
    0 calc(50% - var(--l) / 2),
    0 0,
    100% 0,
    100% calc(50% - var(--l) / 2),
    100vw calc(50% - var(--l) / 2),
    100vw calc(50% + var(--l) / 2),
    100% calc(50% + var(--l) / 2),
    100% 100%,
    0 100%
  );
  -moz-appearance: none;
  appearance: none;
  transition: 0.3s;
}
@supports not (color: color-mix(in srgb, red, red)) {
  input {
    --_c: var(--c);
  }
}


    -100vw calc(50% + var(--l) / 2),
    -100vw calc(50% - var(--l) / 2),
    0 calc(50% - var(--l) / 2),
    0 0,
    100% 0,
    100% calc(50% - var(--l) / 2),
    100vw calc(50% - var(--l) / 2),
    100vw calc(50% + var(--l) / 2),
    100% calc(50% + var(--l) / 2),
    100% 100%,
    0 100%
  );
  -moz-appearance: none;
  appearance: none;
  transition: 0.3s;
}
@supports not (color: color-mix(in srgb, red, red)) {
  input {
    --_c: var(--c);
  }
}

.form-filter{
    display: flex;
    flex-direction: column;
    gap: 2rem;
    overflow-y: scroll;
    height: 90vh;
    padding-right: 1rem;
    padding-left: 2rem;
    position: relative;
    padding-bottom: 0;
    z-index: 2;
    background: #fff;
    margin: 2rem 1rem 2rem 0;
}

.f-products{
    padding:1rem 7rem;
}

.title-input{
    text-transform:uppercase;
    color:var(--red2-color);
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
    margin: 0;
    letter-spacing: 1px;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid;
    margin-bottom: 1rem;
    font-size: 12px;
}

.search-filter{
    border: 0;
    padding: 1rem;
    width: 100%;
    font-size: 12px;
    letter-spacing: 1px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    color: var(--red2-color);
    background-image:url('/media/cerca.svg');
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: calc(100% - 1.5rem);
    background-color:#f3f3f3;
}

.search-filter::placeholder{
   color: #000;
}




.search-filter-top{
    border: 0;
    padding: 1rem 1rem 1rem 3rem;
    width: 80%;
    font-size: 16px;
    letter-spacing: 1px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    color: #ffffff;
    background-image:url('/media/search_white.svg');
    background-size: 30px;
    background-repeat: no-repeat;
    background-position: 0;
    background-color: #fff0;
}

.search-filter-top::placeholder{
   color: #ffffff50;
}

.filter-accordion{
    border-bottom: 0;
    margin: 0;
    box-shadow: none;
    background: transparent;
}


.filter-accordion .cms-header-accordion {
    line-height: 12px;
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: bold;
    padding: 1rem 0;
    border:0;
}


.filter-accordion .change-accordion {
    width: 12px;
    height: 12px;
    padding: 0;
}


.filter-accordion .change-accordion > svg {
    fill: none;
    stroke: #be1818;
    transition: 0.2s;
    transform: rotateZ(270deg);
}

.filter-accordion .change-accordion.open > svg {
    transform: rotateZ(90deg);
}


.filter-accordion .cms-body-accordion{
    padding: 0 1rem 0 1rem;
}


.filter-accordion .cms-body-accordion span{
    font-size: 12px;
    text-wrap: wrap;
    font-weight: normal;
    text-transform: initial;
    letter-spacing: 0;
    text-transform: uppercase;
}

.cms-body-accordion.hide{
   padding-bottom: 0;
   padding-top: 0;
   height: 0 !important;
   padding-top: 0;
}



.cms-body-accordion::-webkit-scrollbar {
   -webkit-appearance: none;
   width: 0px;
   background-color: var(--secondary-color);
   
}


.form-filter::-webkit-scrollbar {
   -webkit-appearance: none;
   width: 10px;
}

.form-filter::-webkit-scrollbar-track {
    background: #f3f3f3;
}


.form-filter::-webkit-scrollbar-thumb {
    background: #dddcdc;
}


.content-page::-webkit-scrollbar {
   -webkit-appearance: none;
   width: 10px;
}

.content-pager::-webkit-scrollbar-track {
    background: #ffffff;
}


.content-page::-webkit-scrollbar-thumb {
    background: #dddcdc;
}


.values{
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.values span{
    font-size: 12px;
    font-family: 'Montserrat', sans-serif;
}



.attributes{
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    width: 100%;
}


.choice-attribute {
   display: flex;
   flex-direction: row;
   align-items: center;
   margin-top: 0;
   gap: 0.5rem;
}

.checkbox-attribute[type=checkbox],  .checkbox-attribute[type=radio]{
   background: transparent;
   appearance: none;
   color: #1717172e;
   height: 2rem;
   border: 2px solid currentColor;
   width: 1rem;
   height: 1rem;
   cursor: pointer;
   transition: 0.2s;
}

.checkbox-attribute:checked[type=checkbox],  .checkbox-attribute:checked[type=radio]{
   background-size: 10px 10px;
   background-position: center;
   background-repeat: no-repeat;
   background-color: black;
   box-shadow: inset 0 0 0px 2px #fff;
}

.label-attribute {
   font-family: 'Montserrat', sans-serif;
   color: var(--default-color);
   text-transform: uppercase;
   letter-spacing: 1px;
   font-size: 12px;
   font-weight: bold;
}

.grid-tab-product{
    display: grid;
    grid-template-columns: repeat(4, auto);
    position: relative;
}

.tab-item-product{
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    padding: 1rem 0;
    gap: 1rem;
    cursor: pointer;
    transition:0.5s background-color, 0.2s padding;
    z-index: 9;
    position: relative;
}

.tab-item-product svg{
    stroke: var(--red-color);
    width: 2rem;
    transition:0.5s stroke;
}

.tab-item-product span{
    font-family: 'Montserrat';
    font-weight: 600;
    text-transform: uppercase;
    color: var(--red-color);
    transition:0.5s color;
    font-size: 14px;
    letter-spacing: 2px;
}

.tab-item-product:hover{
    background-color:var(--red-color);
    box-shadow: 0 0 13px 6px #00000012;
    z-index: 10;
}

.tab-item-product:hover svg{
    stroke: #fff;
}

.tab-item-product:hover span{
    color: #fff;
}


.tab-item-product.active{
    background-color:var(--red-color);
    box-shadow: 0 0 13px 6px #00000012;
    z-index: 10;
}

.tab-item-product.active svg{
    stroke: #fff;
}

.tab-item-product.active span{
    color: #fff;
}

.bg-white{
    background-color:#fff;
}
#correlati{
    padding-top:5.5rem;
}

.buttons-resource{
    display: grid;
    grid-template-columns: repeat(3, auto);
    gap: 2rem;
}

.buttons-resource a{
    display: flex;
    align-content: center;
    align-items: center;
    gap: 2rem;
    justify-content: center;
    padding: 2rem 0;
    box-shadow: 0 0 13px 6px #00000012;
    transition:0.5s;
    background-color: #ffffff;
}

.buttons-resource a svg{
    stroke: var(--red-color);
    width: 3rem;
    transition:0.5s;
}

.buttons-resource a span{
    font-family: 'Montserrat';
    font-weight: 500;
    text-transform: uppercase;
    color: var(--red-color);
    transition:0.5s;
}

.buttons-resource a:hover{
    background-color: var(--red-color);
}

.buttons-resource a:hover svg{
    stroke: #fff;
}

.buttons-resource a:hover span{
    color: #fff;
}

.features-product{
    list-style: none;
    padding: 0;
}

.features-product li{
    display: flex;
    gap: 1rem;
}

.desc-feature{
    display: flex;
    flex-direction: column;

}

.features-product{
    list-style: none;
    padding: 0;
}

.features-product li{
    display: flex;
    gap: 1rem;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid #0000003d;
}


.features-product li img{
    height: 3rem;
    padding: 0.5rem;
}



.desc-feature{
    display: flex;
    flex-direction: column;
}

.desc-feature span{
    font-size: 14px;
}

.desc-feature span:first-child{
    font-weight:bold;
    text-transform: uppercase;
}

.features-product li p{
    margin:0;
}

.certs-product{
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
    padding-left: 0.5rem;
}

.certs-product img{
    width: 2.5rem;
    mix-blend-mode: multiply;
    height: auto;
    object-fit: contain;
}

.certs-product span{
    font-size: 14px;
    font-weight:bold;
    text-transform: uppercase;
}

.gallery-product{
    display: grid;
    grid-template-columns: 15% auto;
    gap: 1rem;
    height: 100%;
}



.slide-img-product{
    padding: 0;
    margin: 0;
    background-size: cover;
    cursor:pointer;
}

.slide-img-product img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background:#fff;
    mix-blend-mode: unset;
}

.slide-img-product-full{
    padding: 0;
    margin: 0;
    height: 100%;
    background: #fff;
}


.slide-img-product-full a img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    /*mix-blend-mode: multiply;*/
}

.vertical-slider{
    width: 100%;
    height: 620px;
}

.product-slider{
    width:100%;
    height: 620px;
}

.hero-product{
    padding-bottom: 3rem;
}


.nav-page-product{
    position: sticky;
    top:0;
    z-index: 99;
    transition:0.2s top;
    padding: 0 5.5rem;
}

.nav-page-product.scroll{
    margin: 0;
    padding: 0;
    top: 5.7rem;
    max-width: 100%;
    overflow-x: hidden;
}

.nav-page-product.scroll .tab-item-product{
    padding: 0.5rem 0;
}

.nav-page-product.scroll .tab-item-product span{
    font-size:11px;
}

.nav-page-product.scroll .tab-item-product svg{
        width: 1.5rem;
}

.page .navigation-bar{
    background-color: transparent;
}

.transparent-link{
    display: flex;
    align-items: center;
    gap: 1rem;
}

.transparent-link svg{
    width:3rem;
}

.transparent-link span{
    color: #000;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    letter-spacing: 1px;
    font-weight: bold;
    text-transform: uppercase;
}

.sec-title{
    padding-bottom:2rem;
}








a.download-button{
    display: grid;
    align-content: center;
    align-items: center;
    gap: 2rem;
    justify-content: center;
    color: var(--red-color);
    padding: 2rem 0;
    box-shadow: 0 0 13px 6px #00000012;
    transition:0.5s;
    grid-template-columns: auto auto;
}

a.download-button svg{
    stroke: var(--red-color);
    width: 3rem;
    transition:0.5s;
}

a.download-button span{
    font-family: 'Montserrat';
    font-weight: 500;
    text-transform: uppercase;
    color: var(--red-color);
    transition:0.5s;
}

a.download-button:hover{
    background-color: var(--red-color);
}

a.download-button:hover svg{
    stroke: #fff;
}

a.download-button:hover span{
    color: #fff;
}

a.download-button svg circle{
    fill: var(--red-color);
    transition:0.5s;
}


a.download-button:hover svg circle{
    fill: #fff;
}








.card-m{
    box-shadow: 0 0 13px 6px #00000012;
    background-color:#fff;
    padding: 3rem;
}

.button-form{
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   font-style: normal;
   letter-spacing: 2px;
   background-color: var(--red-color);
   font-size: 1.2rem;
   height: fit-content;
   line-height: 2rem;
   text-align: center;
   width: fit-content;
   color: var(--white-color);
   padding: 1.5rem 2rem;
   border:0;
   text-transform: uppercase;
   margin-top: 2rem;
}

.button-filter{
   font-family: 'Montserrat', sans-serif;
   font-weight: 500;
   font-style: normal;
   letter-spacing: 2px;
   background-color: var(--red-color);
   font-size: 1.2rem;
   height: fit-content;
   line-height: 2rem;
   text-align: center;
   width: 100%;
   color: var(--white-color);
   padding: 1rem;
   border:0;
   text-transform: uppercase;
}


.link-reset{
    color:var(--red-color);
    text-decoration:underline;
    font-family: 'Montserrat', sans-serif;
   font-weight: 300;
   font-style: normal;
}

.contacts{
    margin-top: 3rem;
}

.contacts .h5-c:not(:first-child){
    margin-top:2rem;
}

.contacts .h5-c{
    margin-bottom:0;
}



.contacts a{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 16px;

}

.contacts p{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    letter-spacing: 1px;
    font-size: 1rem;
    margin:0;
}

.downloads-app{
    margin-top: 2rem;
    display: flex;
    gap: 1rem;
}

.downloads-app a img{
    height: 3rem;
}

.fake-input{
    font-family: 'Montserrat', sans-serif;
    color: var(--default-color);
    border: none;
    background: var(--background-color);
    width: 100%;
    line-height: 1rem;
    border-radius: 0;
    padding-bottom: 0.5rem;
    font-weight: 500;
    margin-bottom: 1.5rem;
    letter-spacing: 1px;
    padding: 1rem 1.5rem;
    font-size: 16px;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: space-between;
}

.fake-input.error .button-add-attachment{
    color:red;
}

.row-req-product{
    display:grid;
    grid-template-columns: repeat(5, calc(20% - 1rem)) 5rem;
}

.item-req-product{
    padding: 1rem;
    text-align: center;
    font-weight: 600;
    text-transform: uppercase;
    background: #dfdfdf;
    font-size: 14px;
    border-top: 2px solid #f3f3f3;
    border-right: 2px solid #f3f3f3;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 16px;
    padding: 0.5rem;
}

.grid-req-product{
    margin-bottom:1.5rem;
}


.row-req-product .item-req-product:first-child{
    border-left: 3px solid #f3f3f3;
}

.row-req-product:last-child .item-req-product{
    border-bottom: 3px solid #f3f3f3;
}

.item-req-product.input {
    background: #fff;
    padding: 0;
}

.item-req-product.input input{
    border: none;
    width: 100%;
    padding: 1rem;
}

.row_inputs span{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
    color: var(--red-color);
    cursor: pointer;
}


.direction-col{
    flex-direction: column;
}

.icon-p-text {
    display: flex;
    gap: 1rem;
}

.icon-p-text .p-content{
    font-size: 12px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.features-product li .icon-p-text img{
    height: 3rem;
    padding: 0.5rem;
}

.point-power {
    display: grid;
    gap: 2rem;
    grid-template-columns: 25% auto;
    margin-bottom: 2rem;
}

.point-power .square{
    background-size: contain;
    height: 10rem;
    width: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-color: #fff;
}

.point-power .p-content{
    margin-bottom: 0;
}



.buttons-resource a p {
    font-family: 'Montserrat';
    font-weight: 500;
    text-transform: uppercase;
    color: var(--red-color);
    transition: 0.5s;
    margin:0;
}

.buttons-resource a:hover p {
    color: #fff;
}

.features-product li:first-child {
    padding-bottom: 2rem;
}

.buttons-resource a span.selected-att {
    font-size: 14px;
    text-transform: uppercase;
    color: var(--default-color);
}

.buttons-resource a:hover span.selected-att {
    color: #fff;
}


.features-product .cms-accordion{
    margin:0;
    width: 100%;
}

.features-product .filter-accordion {
    border-bottom: 0;
}

.features-product .filter-accordion .cms-body-accordion {
    padding: 0;
}

.features-product .cms-body-accordion.hide {
    padding-bottom: 0;
    padding-top: 0;
}

.features-product .filter-accordion .cms-header-accordion {
    line-height: normal;
    font-size: 14px;
    letter-spacing: 0;
    padding: 0;
    border: 0;
}

.attr-optiopns {
    gap: 0.5rem;
    display: grid;
    flex-direction: column;
    grid-template-columns: auto auto auto auto;
}

.select-attr {
    font-weight: 400;
    text-transform: capitalize;
    padding-top: 0.25rem;
    display: block;
}
span[data-attribute]{
    transition:0.2s;
}

span[data-attribute]:hover{
    font-weight:bold;
}

span[data-attribute].selected{
    font-weight:bold;
}

.product-carousel .container-fluid{
    padding:0 6rem;
}

.icon-filter {
    display: none;
    position: sticky;
    top: 0;
    left: 100%;
    transform-origin: center;
    width: 100%;
    padding: 0.5rem 1rem;
    cursor: pointer;
    background: var(--secondary-color);
    box-shadow: -20px 0px 35px -4.5px #00000045;
    justify-content: center;
    align-items: center;
    z-index: 1;
    transition: 0.2s;
    justify-content: space-between;
}


.icon-filter.scroll{
    border-top-left-radius: 0px;
}

.icon-filter.hide {
    transform:scale(0);
}


.icon-filter.bottom{
    bottom:1rem;
    top:inherit;
    background: #be0203;
}


.icon-filter.bottom svg{
    stroke: #fff;
}

.icon-filter svg{
    fill:none;
    stroke: #ffffff;
    stroke-width:10;
    stroke-linecap:round;
    stroke-linejoin:round;
    width: 1.8rem;
}

.icon-filter span{
    color: #fff;
    text-transform: uppercase;
    font-weight: 500;
    font-family: 'Montserrat', sans-serif;
    margin: 0;
    letter-spacing: 1px;
    font-size: 14px;
}


.close-filter{
    display:none;
    width:100%;
    color: var(--red2-color);
    position: sticky;
    top: 0;
    z-index: 999;
    background: #f3f3f3;
    left: 0;
}

.close-filter svg{
   width: 4rem;
   height: 3.5rem;
   padding: 0 0.5rem;
}

.list-categories-filter .attributes{
    padding-top:1rem;
}

.sec-app-filter{
    position: relative;
    bottom: 0;
    width: 100%;
    background: #f3f3f3;
}


.button-404{
   display: flex;
   font-family: 'Montserrat', sans-serif;
   font-weight: 200;
   font-style: normal;
   letter-spacing: 2px;
   background-color: #00000057;
   font-size: 1rem;
   height: fit-content;
   line-height: 1rem;
   text-align: center;
   width: fit-content;
   color: var(--white-color);
   align-items: center;
   justify-content: center;
   padding: 2rem 2rem;
   transition: 0.5s;
   z-index: 100;
   bottom: 0;
   gap: 1rem;
   margin-top: 2rem;
}

.button-404 svg{
  width: 2rem;
  transform: rotate(180deg);
}

.button-404:hover {
  color: var(--white-color);
}

.img-company {
    position: absolute;
    width: 46vw;
    height: 76vh;
    background-size: cover;
    top: 0;
    right: 0;
    background-position: center center;
}

.title-paragraph {
    font-weight:bold;
}

.buttons-req-p{
    display: grid;
    grid-template-columns: 50% 50%;
}

.remove_row_product{
    color: #c9c9c9 !Important;
}

.remove_row_product.disabled{
    opacity:0.5;
    cursor:default;
}


.label-m span{

    font-weight:normal;
}

.swiper-slide:hover > img {
        mix-blend-mode: multiply;
}

.mobile{
   display:none;
}

.swiper-arrow-tablet{ 
    display:none; 
}


.articles .detail-news .link-det-news:hover {
    background: #262626;
}

.grid-resources {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(2, calc(50% - 15px));
}



.folder-assistance{
    display: grid;
    flex-direction: row;
    padding: 2rem;
    align-content: center;
    align-items: center;
    gap: 2rem;
    justify-content: flex-start;
    transition:0.5s;
    background: #fff;
    cursor:pointer;
    grid-template-columns: auto auto;
    box-shadow: 0 0 13px 6px #00000012;
}

.folder-assistance svg{
    stroke: var(--red-color);
    width: 3rem;
    height: 3rem;
    transition:0.5s;
}

.folder-assistance span{
    font-family: 'Montserrat';
    font-weight: 500;
    text-transform: uppercase;
    color: var(--red-color);
    transition:0.5s;
}

.folder-assistance:hover{
    background-color: var(--red-color);
}

.folder-assistance:hover svg{
    stroke: #fff;
}

.folder-assistance:hover span{
    color: #fff;
}

.item-menu.active span {
    opacity: 1;
}

.box-img-page-grid {
    height: 300px;
    width: 100%;
    margin-bottom: 2rem;
}

.box-img-page-grid .item-products img {
    width: 100%;
}

.box-desc-product .img-category {
    width: 2.5rem;
    height: auto;
}


.swiper-slide > .box-img-page-grid img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    mix-blend-mode: multiply;
}

.grid-3-auto{
        grid-template-columns: repeat(3, auto);
}


.loader-result-product {
    background-color: #dfdfdf5c;
    z-index: 9999999999;
    position: absolute;
    display: flex;
    width: 100%;
    top: 0;
    height: 100%;
    align-content: space-between;
    justify-content: space-around;
    align-items: center;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transition: 0.5s linear;
}

.loader-result-product.show{
    opacity: 1;
    visibility: visible;
}



.loader-icon {
    display: flex;
    margin-left: auto;
    margin-right: auto;
    width: 5rem;
    height: 5rem;
}

.item-products.hide{
    display:none;
}

.result-page.hide{
    display:none;
}

.center-align{
    align-items: center;
}

a.download-button.v_slim {
    padding: 1rem 0;
}

a.download-button.bordered {
    border: 2px solid currentColor;
}

.bg_1{
    background-color: var(--red-color);
}
.bg_2{
    background-color: var(--red2-color);
}
.bg_3{
    background-color: #000;
}


.cms-item-accordion.small {
    margin-bottom: 15px;
}

.small .cms-header-accordion.form {
    font-size: 1.5rem;
    padding: 1rem 3rem;
}

.small .change-accordion {
    width: 2rem;
    height: 2rem;
    
}

.cms-body-accordion.no-hide{
height: auto !important;
}

.divider_page{
    height:2px;
}

.text-upper{
    text-transform:uppercase;
}

.text-capitalize{
    text-transform:capitalize;
}