.pretitle{
    font-size: 17px;
}
.title{
    font-size: 40px;
    margin-bottom: 40px;
}
.space{
    clear: both;
    height: 100px;
}
.upsize {
    font-size: 21px;
    line-height: 40px;
}
.cols2{
    gap: 100px;
}
header .grid{
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 30px;
}
header .left_col{
    font-size: 40px;
}
/******* ICO_MENU ********/
.wrap_ico_menu{
    width: 65px;
    height: 30px;
}
/******* END ICO_MENU ********/
/******* WRAP_MENU **********/
#wrap_menu{
    width: 400px;
    right: -400px;
    max-width: 90dvw;
}
.menu_opened #wrap_menu{
    right: 0;
    box-shadow: 0 0 10px rgba(0,0,0,.3);
}
/******* END WRAP_MENU **********/
.subheader{
    height: 59svh;
}
.subheader.home{
    height: 91svh;
}
.sticky_info{
    font-size: 25px;
}
@media screen and (max-width: 1400px){
    .sticky_info{
        font-size: 20px;
    }
}
@media screen and (min-width: 1250px){
    .sticky_info .nl{
        display: none;
    }
}
.sticky_info > div{
    flex: 1;
}
.sticky_info > div:first-of-type{
    border-right: 1px solid var(--secondary_color);
}
.sticky_info > div:last-of-type{
    border-left: 1px solid var(--secondary_color);
}
.services_preview{
    grid-template-columns: repeat(3, 1fr);
    gap: 100px;
}
/************** FOOTER ************/
footer .cols3 {
    grid-template-columns: 1fr 1fr 1fr;
}
footer .grid{
    gap: 70px;
}
/************** END FOOTER ************/
.gallery {
    padding-top: 10px;
    grid-template-columns: repeat(4,1fr);
}
#map{
    aspect-ratio: 16 / 9;
}
@media screen and (max-width: 1500px){
    #map{
        aspect-ratio: 16 / 11;
    }
}

