:root {
    --primary: #243683;
    --navbar-background: #5a9169;
    --secondary: #1c1c1c;
    --primary-lighter: #356b45;
    --white: #ffffff;
    --white-trasparent: #ffffff1f;
}

@font-face {
    font-family: 'Space Age';
    src: url('../font/space-age.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.logo-video{
    position: absolute;
    bottom:2rem;
    right:2rem;
    max-width: 32vh;
}
.link-no-style{
    text-decoration: none;
    color:unset;
}

.link-no-style:hover{
    text-decoration: none;
    color:unset;
}
.link-img-drive img{
    transition: 0.3s ease;
}
.link-img-drive:hover img{
    transform: scale(1.1);
   

}
.space-age {
    font-family: "Space Age";
}

body{
    background-color: #f0f0f0;
    font-family: "Urbanist", serif;
}
#map{
    
    filter: grayscale();
    height:45vh;
}
.marchi{
    max-width: 250px;
}
.navbar-toggler{
    border:0;
}
.navbar-toggler:focus{
    box-shadow: unset;
}
.navbar-toggler span{

    display: block!important;
}
#chi-siamo, #contatti{
    scroll-margin-top:12rem;
}
.bar1{
    transition: 0.3s ease;
    position: relative;
    
    width: 45px;
    height:4px;
    border-radius:20px;
    background-color: var(--white);
}
.bar2{
    transition: 1s ease;
    position: relative;
    
    margin-left:0.3rem;
    margin-top:0.3rem;
    width: 40px;
    height:4px;
    border-radius:20px;
    background-color: var(--white);
}
.bar3{
    transition: 0.3s ease;
    position: relative;
    margin-top:0.3rem;
    margin-left:0.8rem;
    width: 31px;
    height:4px;
    background-color: var(--white);
}
.change.bar1{
    transform: rotate(-45deg) translate(3px, 13px);
     width:33px;
 }
 .change.bar3{
     transform: rotate(45deg) translate(-8px, -6px);
     width:33px;
 }
 .change.bar2 {
     transition: 0.1s;
     opacity: 0;
 }
#video-bg{
    z-index: -1;
    position: relative;
    width: 100%;
    object-fit: cover;
    display: block;
    max-height:90vh;
}
.link-privacy{
    color: var(--secondary);
    text-decoration: none;
}
.link-privacy:hover{
    color: var(--primary);
}
.relative{
    position: relative;
}
.list-footer{
    padding-left:0;
    list-style: none;

}
.list-footer li a{
    color: var(--secondary);
    text-decoration: none;
    font-size: 1.1rem;
}
.list-footer li a:hover{
    color: var(--primary);
}
.bg-overlay{
    background-color: #01010173;
    
}
.box-servizi{
    aspect-ratio: 22/10;
}
.white{
    color:var(--white);
}
.box-noleggio{
    aspect-ratio: 6/5;
}

.box-servizio{
    position: relative;
}
.subtitle{
    font-size: 3.5rem;
}
.icon-card{
    top:-2.5rem;
    right:2rem;
    width: 100px;
    position: absolute;
}
.relative{
    position: relative;
}
.box-navbar{
    padding-left:32vh;
    padding-right:32vh;
}
.nav-link{
    color:var(--white);
}
.navbar-desktop{
    width: 100%;
    list-style: none;
    padding-left:0;

}


.nav-icon{
    gap:2rem;
    display: inline-flex;
    flex-direction: row;
    list-style: none;
    padding-top:1em;
    color: var(--white);
}
.icon-navbar{
    color: var(--white);
}
.navbar-nav{
    
    gap:2rem;
}
.nav-link{
    padding-top:1em;
    font-size: 1.2rem;
}
.nav-link:hover{
    color: var(--primary);
    padding-top:1em;
    font-size: 1.2rem;
}
#servizi{
    scroll-margin-top:16rem;
}
.navbar-mobile{
    width: 100%;
    align-items: center;
    padding-left:0;
    list-style: none;
    margin-bottom:0;

    display: inline-flex;
    flex-direction: row;
}
.navbar{
    padding-left:32vh;
    padding-right:24vh;
    padding-top:0;
    padding-bottom:0;
    background-image: url("../img/back-navbar.svg");
    background-size: cover;
    background-position: 94% 23%;
    flex-direction: column;
   
}
.back-card{
    background-image: url("../img/background-sez-card.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 100% 100%;
}
.title-h2-card{
    
    font-size: 1rem;
    
    
}

.logo-nav{
    max-width: 180px;
    min-width: 180px;
}
.txt-card{
    z-index: 9;
    padding: 2em;
    font-size: 1.2rem;
    
    
}
.background-sez-card{
    background-image: url("../img/background-sez-card.jpg");
    background-size: cover;
}
.card-back{
    background-size: cover;
    padding:1em;
     
    background-image: url("../img/back-card.svg");
}
.box{
    padding-top:4vh;
    padding-bottom:4vh;
    padding-left:32vh;
    padding-right:32vh;
}
.list-button{
    margin-top:2rem;
    list-style: none;
    padding-left:0;
}
.button-rossi{
    font-size: 1.2rem;
    font-weight: 7000;
    background-color: var(--primary);
    padding:1em;
    text-decoration: none;
    color:var(--white);
    border: 2px solid var(--primary);
}
.button-rossi:hover{
    background-color:var(--white-trasparent);
    color:var(--secondary);
    border: 2px solid var(--secondary);

}
.title-h2{
    font-size: 3rem;
    font-weight: 700;
}
.img-card{
    filter: drop-shadow(10px 10px 10px #01011072);
}
.txt{
    font-size: 1.4rem;
}
.list-button-nav{
    padding-top:0em;
    list-style: none;
    display: inline-flex;
    gap: 2rem;
    flex-direction: row;
}
.list-button-nav li{
    color: var(--white);
}
.back-titolo{
    background-image: url("../img/back-title.svg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 100% 100%;
}

.container-title{
    filter: drop-shadow(6px 8px 8px #0f0f0f64);
    padding-top:6em;
    padding-bottom:8em;
    padding-left:8em;
    top:25%;
    left:16.5%;
    position: absolute;
    
}
.title{
    margin-bottom: 0;
    font-size: 6rem;
    line-height: 5.5rem;
}
.sottotitolo{
    font-size: 1.3rem;
}
.grigio{
    color: var(--secondary);
}
.button{
    font-size: 1.2rem;
    font-weight: 7000;
    background-color: var(--secondary);
    padding:1em;
    text-decoration: none;
    color:var(--white);
    border: 2px solid var(--secondary);
}
.button:hover{
    background-color:var(--white-trasparent);
    color:var(--white);
    border: 2px solid var(--white);
}
.list-header{
    padding-left:0;
    list-style: none;
    display: inline-flex;
    gap: 2rem;
    flex-direction: row;
}
.btn-card{
    padding:0.5em;
    font-size:1rem;
    bottom:0;
    position: absolute;
}
.back-footer{
    background-image: url("../img/back-footer.svg"); 
    background-size: 100vw;
    background-position:20% 50%;
}
@media only screen and (max-width:1690px){
    .box-noleggio {
        aspect-ratio: 9/8;
    }
    .back-footer{
        background-size: 90vw;
        background-position: 0%;
        background-repeat: no-repeat;
    }
    .title {
        margin-bottom: 0;
        font-size: 3rem;
        line-height: 3.5rem;
    }
    .logo-nav{
        max-width: 130px;
        min-width: 130px;
    }
    .container-title {
        
        padding-top: 3em;
        padding-bottom: 3em;
        padding-left: 8em;
        top: 30%;
        left: 12.5%;
        position: absolute;
    }
    #video-bg{
        max-height:99vh;
    }
    .box {
        padding-top: 4vh;
        padding-bottom: 4vh;
        padding-left:10vh;
        padding-right:10vh;
    }
    .title-h2{
        font-size: 2rem;
    }
    .txt{
        font-size: 1.2rem;
    }
    .h3, h3{
        font-size: 1.3rem;
    }
}
@media only screen and (max-width:1490px){
    .box-servizi {
        aspect-ratio: 16/11;
    }
    .box-noleggio {
        aspect-ratio: 1/1;
    }
}

@media only screen and (max-width:1024px){
    .navbar {
        padding-left:8vh;
        padding-right:8vh;
    }
     #video-bg{
        aspect-ratio: 3/4;
        max-height:79vh;
    }
    .box {
        padding-top: 4vh;
        padding-bottom: 4vh;
        padding-left:2vh;
        padding-right:2vh;
    }
}
@media only screen and (max-width:790px){
    .list-footer li{
        color: var(--white);
    }
    .back-footer{
        background-image: unset;
        background-color:var(--primary);
    }
    .title-footer{
        color: var(--white);
    }
    .list-footer li a{
        color: var(--white);
    }
    .navbar-nav {
        gap: 0;
    }
    
    .navbar {
        padding:0.5em;
        padding-left:0;
        padding-right: 0;;
        background-color: var(--primary);
        background-image: unset;
        max-height: unset;
        background-position: 90% 100%;
       
    }
    
    .logo-nav{
        
        max-width: 150px;
        min-width: 150px;
    }
    .container-title {
        
        padding-top: 4em;
        padding-bottom: 8em;
        padding-left: 2em;
        top: 30%;
        left: 10%;
        
    }
    .title {
        margin-bottom: 0;
        font-size: 2rem;
        line-height: 2.5rem;
    }
    #video-bg{
        aspect-ratio: 9/16;
    }
    .box {
        padding-top: 4vh;
        padding-bottom: 4vh;
        padding-left: 2vh;
        padding-right: 2vh;
    }
    .box-navbar {
       padding:0;
    }
}