@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Open Sans", sans-serif;
}
h1, h2{
    font-family: "Montserrat", sans-serif;
}
html{
    scroll-behavior: smooth;
}
html, body{
    height: 100%;
}
a{
    text-decoration: none;
    color: #4D4D4D;
}
.flexbox{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.container{
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-column-gap: 1.4vw;
    margin: 0 auto;
    width: 89vw;
    position: relative;
}

 .menu .main-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
} 

 .menu .main-menu li {
    position: relative;
}

.menu a {
    display: block;
}

.menu .main-menu .dropdown-content {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1;
}

/* .menu .main-menu .dropdown-content li {
    display: block;
}  */
.header-block-statik{
    display: block;
    width: 100%;
    height: 7vw;
}

/* ------------------ */
/* ----- Header ----- */
/* ------------------ */


.header-logo-wrapper{
    grid-column: 1/1;
    margin: 1vw 0;
}
.header-logo{
    width: 100%;
}
.header-logo img{
    width: 100%;
}
.header-menu{
    grid-column: 5/11;
    justify-content: space-between;
    padding-right: 6.7vw;
}
.header-lang-wrapper{
    grid-column: 12/12;
    justify-content: space-between;
}
.header {
    width: 100%;
    /* padding-top: 1vw;
    padding-bottom: 1vw; */

    background: #FFF;

    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;

    box-shadow: 0px 0px 0.6vw 0.1vw rgba(54, 80, 144, 0.4);
}
.header-menu-list, .nav-list li a{
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-size: 0.85vw;
    text-transform: uppercase;
    color: #000000;
}
.header-menu-active, .header-menu-active span, .dropdown a.header-menu-active svg path{
    color: #6091D5;
    stroke: #6091D5;
}
.header-menu-open{
    justify-content: flex-start;
}
.dropdown {
    position: relative;
    display: inline-block;
}
.dropdown-content {
    display: none;
    position: absolute;
    min-width: 160px;
    z-index: 1;
}
.menu-arrow{
    width: 0.7vw;
    height: auto;
    margin-left: 0.3vw;
    transform: rotate(0deg);
    transition: 0.5s;
}
.menu-open-list{
    list-style: none;
    margin-left: -2vw;
    background-color: #365090;
    box-shadow: 0px 0.3vw 0.3vw rgba(0, 0, 0, 0.3);
    border-radius: 0.5vw;
    width: 18vw;
}
.menu-open-list li:nth-child(1) .menu-open-item{
    border-radius: 0.5vw 0.5vw 0 0;
}
.menu-open-list li:nth-last-child(1) .menu-open-item{
    border-radius: 0 0 0.5vw 0.5vw;
}
.menu-open-item {
    color: #FFF;
    font-style: normal;
    font-weight: 600;
    font-size: 0.84vw;
    display: block;
    padding: 1.35vw 1vw;
    transition: 0.5s;
}
.dropdown-block{
    display: block;
    width: 1vw;
    height: 2.7vw;
}
.menu-open-list li::after{
    content: '';
    display: block;
    width: 100%;
    height: 0.1vw;
    background: #FFF;
    opacity: 0.1;
}
.menu-open-list li:nth-child(1) .menu-open-item {
    margin-top: 0;
}
.menu-open-list li:nth-last-child(1) .menu-open-item{
    margin-bottom: 0;
}
.menu-open-list li:nth-last-child(1)::after{
    display: none;
}


/* Стили для основного меню */
.nav-list,
.menu-open-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
}

.nav-list li,
.menu-open-list li {
    position: relative;
}

.nav-list li ul,
.menu-open-list li ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    list-style: none;
    padding: 0;
    margin: 0;
    background-color: #fff; /* фон подменю */

    flex-direction: column;
    width: 18vw;
    margin-left: -2vw;
    background-color: #365090;
    box-shadow: 0px 0.3vw 0.3vw rgba(0, 0, 0, 0.3);
    border-radius: 0.5vw;
}

.nav-list li:hover ul,
.menu-open-list li:hover ul {
    display: flex;
}

.nav-list li ul li,
.menu-open-list li ul li {
    width: 100%; /* ширина подменю */
}

/* Дополнительные стили для подменю */
.nav-list li ul li a,
.menu-open-list li ul li a {
    color: #FFF;
    font-style: normal;
    font-weight: 600;
    font-size: 0.84vw;
    display: block;
    padding: 1.35vw 1vw;
    transition: 0.5s;
    text-transform: none;
}

.nav-list li ul li a:hover{
    background-color: #FFF; /* фон при наведении */
}
.nav-list li ul li:nth-child(1) a:hover{
    border-radius: 0.5vw 0.5vw 0 0;
}
.nav-list li ul li:nth-last-child(1) a:hover{
    border-radius: 0 0 0.5vw 0.5vw;
}
.nav-list li ul li::after{
    content: '';
display: block;
width: 100%;
height: 0.1vw;
background: #FFF;
opacity: 0.1;
}
.nav-list li ul li:nth-last-child(1)::after{
    display: none;
}





.header-lang {
    color: #000;
    background-color: #FFF;

    padding: 0.5vw;    
    border-radius: 0.7vw;

    text-transform: uppercase;
    text-align: center;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-size: 0.85vw;

    box-shadow: 0px 0px 0.2vw rgba(0, 0, 0, 0.25);

    transition: 0.8s;
}
.header-menu-list:hover, .nav-list li a:hover{
    color: #6091D5;
}
.header-lang:hover{
    color: #FFF;
    background-color: #365090;
    box-shadow: 0px 0px 0.6vw 0.1vw rgba(54, 80, 144, 0.4);
    transition: 0.8s;
}
.menu-open-item:hover{
    background: #FFF;
    color: #365090;
    transition: 0.5s;
}
.dropdown:hover .header-menu-list{
    color: #6091D5;
}
.dropdown:hover .menu-arrow{
    transform: rotate(180deg);
    transition: 0.8s;
}
.dropdown:hover .header-menu-list svg path{
    stroke: #6091D5;
}

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

.menu li {
    position: relative;
}

.menu a {
    display: block;
}

.menu .dropdown-content {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 160px;
    z-index: 1;
}

.menu .dropdown-content li {
    display: block;
}
.dropdown-content .menu-open-list{
    flex-direction: column;
    width: 18vw;
    margin-left: -2vw;
}
.nav-list{
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 100%;
}
.nav-list > li{
    height: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 1vw 0;
}
.dropdown a.header-menu-open{
    display: flex;
    justify-content: flex-start;
}
.menu-toggle{
    display: none;
}
.overlay{
    display: none;
}
.mobile-menu-bg, .mobile-menu-logo-element{
    display: none;
}
.desk{
    display: flex;
}

/* ------------------ */
/* ------ Main ------ */
/* ------------------ */


.main{
    height: 100vh;
    background: url('../img/bg.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top 6vw left;
}
.main .container{
    height: 100%;
}
.main-offer{
    grid-column: 3/11;
    flex-direction: column;
    padding-top: 7vw;
}
.main-title{
    font-style: normal;
    font-weight: 800;
    font-size: 3.46vw;
    line-height: 4.3vw;
    text-align: center;
    text-transform: uppercase;
    color: #FFFFFF;
}
.main-title span{
    color: #6091D5;
    display: inline-block;
}
.main-title-wrapper::before{
    content: "";
    display: block;
    width: 0.15vw;
    height: 100%;
    background: #6091D5;
}
.main-title-wrapper::after{
    content: "";
    display: block;
    width: 0.15vw;
    height: 100%;
    background: #6091D5;
}
.main-title-wrapper{
    justify-content: space-between;
    padding: 0 2vw;
}
.main-desc{
    display: block;
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-size: 1.67vw;
    text-align: center;
    color: #FFFFFF;
    padding: 3vw 12vw;
}
.main-btn{
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    color: #FFFFFF;
    font-size: 1.12vw;
    padding: 1.5vw 1.3vw;
    border-radius: 0.4vw;
    background: #365090;
    box-shadow: 0px 0px 1vw rgba(255, 255, 255, 0.34);
    transition: 0.8s;
}
.btn.main-btn:hover {
    color: #365090;
    background: #FFF;
    border-radius: 0.4vw;
    box-shadow: 0px 0px 1.5vw rgba(54, 80, 144, 1);
    transition: 0.8s;
}


/* ------------------ */
/* ---- Services ---- */
/* ------------------ */


.services{
    padding: 7vw 0;
    position: relative;
    background: url(../img/services-bg.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center center;
}
.title-wrapper{
    grid-column: 1/13;
    margin-bottom: 7vw;
}
.title-wrapper::before{
    content: '';
    display: block;
    width: 14vw;
    height: 0.2vw;
    background: #365090;
}
.title-wrapper::after{
    content: '';
    display: block;
    width: 14vw;
    height: 0.2vw;
    background: #365090;
}
.title{
    font-weight: 800;
    text-align: center;
    font-size: 1.65vw;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #1E1E1E;
    padding: 0 1.5vw;
}
.services-wrapper{
    grid-column: 1/13;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-column-gap: 1.4vw;
    margin: 0 auto;
    width: 89vw;
    position: relative;
    grid-row-gap: 3.5vw;
}
.services-block{
    grid-column: span 4;
    position: relative;
    padding-left: 1.7vw;
    padding-top: 2.1vw;
}
.services-block-icon{
    width: 5vw;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9;
}
.services-block-icon svg, .services-block-icon img{
    width: 100%;
    height: auto;
}
.services-desc-wrapper{
    display: flex;
    flex-direction: column;
    align-items: start;

    width: 100%;
    height: 17vw;
   
    padding-top: 4vw;
    padding-left: 2vw;
    padding-right: 1.5vw;
    padding-bottom: 1vw;

    background: #FFF;

    position: relative;

    box-shadow: 0px 0px 0.3vw rgba(0, 0, 0, 0.25);
    border: 0.2vw solid rgba(59, 102, 162, 0);

    transition: 0.5s;
}
.services-block-title{
    font-weight: 800;
    color: #3B66A2;
    font-size: 1.25vw;
    display: block;
    width: 100%;
    height: 4vw;
    position: relative;
    z-index: 1;
}
.services-desc{
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 0.6vw;
    margin-bottom: 0.6vw;
    height: 6.5vw;
    position: relative;
    z-index: 1;
}
.services-desc span{
    font-weight: 400;
    font-size: 0.97vw;
    line-height: 123.17%;
    color: #000000;
    margin-bottom: 0.5vw;
}
.services-desc span:nth-last-child(1){
    margin-bottom: 0;
}
.services-desc-link-wrapper{
    position: relative;
    z-index: 1;
}
.services-desc-link{
    font-weight: 700;
    line-height: 123.17%;
    text-transform: uppercase;
    color: #3B66A2;
    font-size: 0.98vw;
}
.services-desc-link-icon{
    width: 0.9vw;
    height: auto;
    margin-left: 0.5vw;
}
.services-desc-link-icon svg{
    width: 100%;
    height: auto;
}
.services-block-bg{
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: -1vw;
    left: 0;
}
.services-desc-wrapper:hover{
    box-shadow: 0px 0px 0.6vw rgba(0, 0, 0, 0.25);
    border: 0.2vw solid rgba(59, 102, 162, 0.5);
    transition: 0.5s;
}
.services-bg{
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -9999;
}
.tablet-services-bg, .mobile-services-bg{
    display: none;
}
@keyframes pulsing {
    0% {
      -webkit-transform: scale(1, 1);
      transform: scale(1, 1)
    }
    50% {
      -webkit-transform: scale(1.5, 1.5);
      transform: scale(1.5, 1.5);
    }
    100% {
        -webkit-transform: scale(1, 1);
        transform: scale(1, 1)
    }
}

.services-desc-link-wrapper:hover .services-desc-link-icon{
    animation: pulsing 1s;
    transition: 0.5s;
}


/* ------------------ */
/* --- Statistics --- */
/* ------------------ */


.statistics{
    background: #365090;
    padding: 4.3vw 0;
    position: relative;

}
.statistics::before{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/statistics-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom 13% center;
}
.statistics-block {
    grid-column: span 4;
    width: 100%;
}
.statistics-block-icon {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 6.5vw;
    height: 100%;
}
.statistics-block-icon svg, .statistics-block-icon img {
    width: 100%;
    height: auto;
}
.statistics-block-info {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    text-align: left;
    margin-left: 1.6vw;
    height: 100%;
}
.statistics-number {
    font-weight: 800;
    font-size: 2.1vw;
    letter-spacing: 0.15em;
    color: #FFFFFF;
}
.statistics-name {
    font-weight: 700;
    font-size: 1.35vw;
    color: #FFFFFF;
}
.statistics-bg{
    display: block;
    position: absolute;
    width: 100%;
    height: auto;
    top: 0;
    left: 0;
    z-index: -9;
}
.tablet-statistics-bg, .mobile-statistics-bg{
    display: none;
}


/* ------------------ */
/* ---- About us ---- */
/* ------------------ */


.about_us{
    padding: 7vw 0;
}
.about_us-desc-wrapper{
    grid-column: 1/6;
    align-self: center;
    width: 100%;
    height: auto;
    position: relative;
}
.about_us-desc-title{
    font-weight: 800;
    font-size: 1.26vw;
    color: #000000;
    width: 100%;
    display: block;
    margin-bottom: 2.7vw;
}
.about_us-desc{
    font-weight: 400;
    font-size: 1.115vw;
    line-height: 2.8vw;
    color: #000000;
    display: block;
}
.about_us-img-wrapper{
    grid-column: 7/13;
    width: 100%;
    height: auto;
}
.about_us-img{
    width: 100%;
    height: auto;
    display: block;
}
.about_us-desc-bg{
    position: absolute;
    top: 0;
    left: 0;
    z-index: -9;
    width: 29vw;
    height: auto;
}


/* ------------------ */
/* ------ Form ------ */
/* ------------------ */


.form-section{
    margin-bottom: 7vw;
    padding-top: 7vw;
    margin-top: -7vw;
}

.form-block-wrapper{
    position: relative;

    grid-column: 2/12;

    display: grid;
    grid-template-columns: repeat(10, 1fr);
    grid-column-gap: 1.4vw;
    margin: 0 auto;
    width: 100%;

    align-items: center;

    padding-top: 5.2vw;
    padding-bottom: 2vw;

    background-color: #365090;
    box-shadow: 0px 0px 1.5vw rgba(0, 0, 0, 0.24);
}
.form-block-wrapper::before{
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/form-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.form-block-info-wrapper{
    grid-column: 1/6;
    padding-left: 1.5vw;
    margin-left: 6.2vw;
}
.form-wrapper{
    grid-column: 6/10;
    margin-left: auto;
    max-width: 25vw;
    width: 100%;
    position: relative;
    z-index: 1;
}
.contact-form{
    display: flex;
    flex-direction: column;
    width: 100%;
}
.contact-form-input {
    background: none;
    border: none;
    padding: 0.9vw 1vw 0.9vw 2vw;
    font-size: 1.15vw;
    border-bottom: 0.15vw solid #FFF;
    margin-bottom: 1.6vw;
    color: #FFF;
    outline: none;
    width: 100%;
}
.contact-form-btn{
    outline: none;
    cursor: pointer;
    border: none;

    color: #365090;
    background: #FFF;

    font-size: 1.15vw;
    font-weight: 700;
    text-align: center;

    border-radius: 0.4vw;
    box-shadow: 0px 0px 1.2vw rgba(255, 255, 255, 0.34);

    padding: 1vw 0;
    margin: 1.8vw 0;

    transform: scale(1);
    transition: 0.8s;

    width: 100%;
}
.status {
    display: block;
    width: 100%;
    height: 2vw;
    color: #FFF;
    text-align: center;
    font-size: 1vw;
}
label.error{
    display: none !important;
}
input.error{
    border: 0.1vw solid red;
}
input::placeholder {
    color: #FFFFFF; /* Задаем цвет для placeholder */
    opacity: 0.3; /* Полностью непрозрачный (по умолчанию placeholder имеет уменьшенную прозрачность) */
}
input::-webkit-input-placeholder {
    color: #FFFFFF; /* Для браузеров на базе WebKit */
    opacity: 0.3;
}
input:-moz-placeholder {
    color: #FFFFFF; /* Для Firefox 18- */
    opacity: 0.3;
}
input::-moz-placeholder {
    color: #FFFFFF; /* Для Firefox 19+ */
    opacity: 0.3;
}
input:-ms-input-placeholder {
    color: #FFFFFF; /* Для Internet Explorer 10+ */
    opacity: 0.3;
}
textarea::placeholder {
    color: #FFFFFF; /* Задаем цвет для placeholder */
    opacity: 0.3; /* Полностью непрозрачный (по умолчанию placeholder имеет уменьшенную прозрачность) */
}
textarea::-webkit-input-placeholder {
    color: #FFFFFF; /* Для браузеров на базе WebKit */
    opacity: 0.3;
}
textarea:-moz-placeholder {
    color: #FFFFFF; /* Для Firefox 18- */
    opacity: 0.3;
}
textarea::-moz-placeholder {
    color: #FFFFFF; /* Для Firefox 19+ */
    opacity: 0.3;
}
textarea:-ms-input-placeholder {
    color: #FFFFFF; /* Для Internet Explorer 10+ */
    opacity: 0.3;
}
.form-block-info-wrapper{
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 1.8vw 0 1.8vw 1.4vw;
    margin-bottom: 3vw;
    z-index: 1;
}
.form-block-info-title{
    font-weight: 800;
    font-size: 1.25vw;
    color: #FFFFFF;
}
.form-block-info{
    margin-top: 1.5vw;
    font-weight: 400;
    font-size: 1.11vw;
    color: #FFFFFF;
}
.form-block-info-wrapper::before{
    content: '';
    display: block;
    width: 0.15vw;
    height: 100%;
    background: #FFFFFF;
    position: absolute;
    top: 0;
    left: 0;
}
.contact-bg{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: auto;
    z-index: 0;
    display: none;
}
.contact-form-btn:hover{
    box-shadow: 0px 0px 1.2vw rgba(255, 255, 255, 0.8);
    transform: scale(1.1);
    transition: 0.8s;
}
.tablet-contact-bg{
    display: none;
}
.contact-form-success {
    margin-top: 10px;
    padding: 10px;
    border: 1px solid green;
    background-color: #e0ffe0;
    color: green;
}

.contact-form-error {
    margin-top: 10px;
    padding: 10px;
    border: 1px solid red;
    background-color: #ffe0e0;
    color: red;
}
.wpcf7-response-output{
    font-weight: 400;
    font-size: 1.11vw;
    color: #FFFFFF;
}
.wpcf7-not-valid-tip{
    color: rgb(255, 79, 79);
     font-weight: 400;
    font-size: 1.11vw;
}


/* ------------------ */
/* ----- Footer ----- */
/* ------------------ */


.footer{
    padding: 2.7vw 0;
    background-color: #424242;
}
.footer-logo-wrapper{
    grid-column: 1/3;
}
.footer-logo{
    display: flex;
    width: 100%;
}
.footer-logo svg, .footer-logo img{
    width: 8.5vw;
    height: auto;
}
.footer-contact-wrapper{
    grid-column: 3/9;
}
.footer-contact-item {
    width: 100%;
}
.footer-contact-item-icon svg{
    width: 2vw;
    height: auto;
}
.footer-contact-item-info{
    margin-left: 2.3vw;
    display: flex;
flex-direction: column;
}
.footer-contact-link {
    font-weight: 400;
    color: #FFF;
    font-size: 1.15vw;
    margin: 0.5vw 0;
}
.footer-media-wrapper{
    grid-column: 10/12;
    justify-content: space-around;
    padding: 0;
}
.footer-media-item-link {
    width: 100%;
}
.footer-media-item-link svg, .footer-media-item-link img {
    width: 2.2vw;
    height: auto;
}
.screen-reader-response {
    display: none;
}



/* ------------------ */
/* ----- Contact ---- */
/* ------------------ */


.contact{
    padding-top: 5.5vw;
    padding-bottom: 5.5vw;
}
.contact-info-wrapper{
    grid-column: 2/5;
    align-self: center;
}
.contact-wrapper{
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
}
.contact-wrapper .contact-item:nth-child(1){
    margin-bottom: 5.5vw;
}
.contact-item-icon svg {
    width: 2vw;
    height: auto;
}
.contact-item-icon svg path{
    fill: #3B66A2;
}
.contact-item-info{
    margin-left: 2.3vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.contact-link {
    font-size: 1.15vw;
    font-weight: 400;
    margin: 0.5vw 0;
}
.media-wrapper{
    justify-content: space-between;
    width: 70%;
    margin-top: 6vw;
}
.media-item-link {
    width: 100%;
}
.media-item-link svg {
    width: 2.7vw;
    height: auto;
}
.media-item-link svg path{
    fill: #3B66A2;
}
.contact-map-wrapper{
    grid-column: 6/13;
    width: 100%;
    height: 70vh;
}
.contact-map-wrapper iframe{
    width: 100%;
    height: 100%;
}


/* ------------------- */
/* -- Services Item -- */
/* ------------------- */


.services-item{
    padding: 7vw 0;
}
.services-item-description-wrapper{
    grid-column: 1/6;
    align-self: flex-start;
    margin-top: 3vw;
}
.services-item-img-wrapper{
    grid-column: 6/13;
}
.services-item-list{
    list-style-type: none;
}
.services-item-list li{
    position: relative;
    margin-bottom: 1.6vw;
    display: flex;
    flex-direction: row;
    align-items: center;
}
.services-item-list li::before{
    content: '';
    width: 1.5vw;
    height: 1.5vw;
    background: url('data:image/svg+xml,%3Csvg width=%2220%22 height=%2219%22 viewBox=%220%200%2020%2019%22 fill=%22none%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cpath d=%22M17.4206%200.930939L20%202.74037L8.81617%2018.8713H6.23677L0%2010.1321L2.5794%207.72593L7.52647%2012.3458L17.4206%200.930939Z%22 fill=%22%233B66A2%22/%3E%3C/svg%3E') no-repeat center center;
    background-size: contain;
    margin-right: 2vw;
}
.services-item-description {
    font-weight: 400;
    font-size: 1.115vw;
    line-height: 2.8vw;
    width: 85%;
}
.services-item-img{
    width: 100%;
    height: auto;
}

.img{
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    z-index: -9999;
}


/* ------------------ */
/* ----- Tablet ----- */
/* ------------------ */


@media screen and (min-width: 1025px) {
    .dropdown:hover .dropdown-content {
        display: block;
    }
}

@media screen and (max-width: 1024px){
    .container{
        grid-column-gap: 1.8vw;
        width: 84.5vw;
    }
    .header-block-statik{
        height: 11vw;
    }
    .title-wrapper{
        margin-bottom: 7.5vw;
    }


    /* ------------------ */
    /* ----- Header ----- */
    /* ------------------ */


    .menu-toggle.open-menu {
        display: flex;
    }
    .mobile-menu .container{
        height: 100%;
    }
    .header-lang-wrapper{
        grid-column: 1/3;
        height: max-content;
        align-items: center;
        justify-content: space-between;
        align-self: flex-start;
        margin-top: 1.5vw;
    }
    .menu-open-list{
        margin: 0;
        width: 30vw;
        background: #FFF;
    }
    .mobile-menu .header-menu .dropdown .header-menu-open svg path{
        stroke: #FFFFFF;
    }
    .dropdown:hover .dropdown-content {
        display: none;
    }
    .dropdown:hover .menu-arrow{
        transform: rotate(0deg);
        transition: 0.8s;
    }
    .dropdown:hover .header-menu-list {
        color: #6091D5;
    }
    .mobile-menu .header-menu .dropdown:hover .header-menu-open svg path{
        stroke: #6091D5;
    }
    .header-lang:hover{
        background: #6091D5;
    }

    .menu{
        display: none;
        padding: 0;
        grid-column: 4/10;
        grid-row: 2;
        flex-direction: column;
        justify-content: center;
    }
    .menu ul {
        display: none;
        position: static;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        height: 100%;
    }
    .dropdown a.header-menu-open{
        justify-content: center;
    }
    .menu-arrow{
        width: 2vw;
        margin-left: 1vw;
        position: absolute;
        right: 0;
    }
    .dropdown-block{
        display: none;
    }
    .menu li {
        display: block;
    }
    .menu .dropdown-content {
        position: static;
    }
    .menu-toggle {
        grid-column: 12/13;
        display: none;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        border: none;
        cursor: pointer;
        background: none;
        width: 100%;
    }
    .menu-toggle .mobile-menu-icon:nth-child(2){
        margin: 1vw 0;
    }
    .mobile-menu-icon-close{
        width: 100%;
        height: 0.2vw;
        display: block;
        background: #FFF;
        position: absolute;
        top: 1vw;
        left: 0;
        margin: 1vw 0;
    }
    .overlay{
        display: none;
        flex-direction: row;
        width: 100%;
        grid-column: 12/13;
        grid-row: 1;
        cursor: pointer;
        height: max-content;
        align-items: center;
        justify-content: center;
        align-self: flex-start;
        margin-top: 1.5vw;
    }
    .overlay svg{
        width: 70%;
        height: auto;
    }
    .mobile-menu-icon{
        display: block;
        width: 100%;
        height: 0.2vw;
        background: #365090;
    }
    .active-menu-btn{
        display: flex;
    }

    .header-lang-menu{
        display: none;
        grid-column: 1/3;
        grid-row: 1;
    }
    .header-logo-wrapper{
        grid-column: 6/8;
        opacity: 1;
        transition: 1s;
    }
    .header-logo{
        width: 70%;
        height: auto;
    }
    .header-lang{
        font-size: 1.5vw;
        padding: 1vw 0.9vw;
        border-radius: 1vw;
    }
    .header-menu-open .header-menu-list {
        margin: 0;
        padding: 0;
    }
    .header-menu-list, .nav-list li a {
        padding: 1vw 0;
        font-size: 2vw;
        margin: 2vw 0;
        color: #FFFFFF;
    }
    .menu-open-item{
        color: #365090;
        text-align: center;
        font-size: 1.56vw;
        padding: 1.8vw;
    }
    .menu-open-list li::after{
        background: #365090;
        opacity: 0.2;
    }
    .menu .dropdown-content li{
        width: 100%;
    }
    .dropdown a.header-menu-open svg path{
        stroke: #FFF;
    }
    .dropdown a.header-menu-active svg path{
        color: #6091D5;
        stroke: #6091D5;
    }
    .dropdown:hover .menu-arrow{
        transform: rotate(0);
        transition: 0.8s;
    }
    .mobile-menu-logo-element{
        position: absolute;
        bottom: 0;
        right: 0;
        width: 40vw;
        height: auto;
        z-index: -9;
        display: none;
    }
    .mobile-menu-bg{
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: -9;
        display: none;
    }
    .active-menu{ 
        overflow: hidden;
        height: 100vh;
        background: #365090;
        padding: 1vw 0;
    }
    .active-menu .container{
        height: 100%;
        grid-template-rows: max-content;
    }
    .active-menu .header-lang-menu{
        display: flex;
    }
    .active-menu .menu{
        display: flex;
        height: auto;   
    }
    .active-menu .header-logo-wrapper{
        display: none;
    }
    .active-menu .menu ul{
        display: flex;
        height: auto;
    }

    .dropdown.active .header-menu-open svg {
        transform: rotate(180deg);
    }
    .menu-open-item:hover {
        background: #6091D5;
        color: #fff;
    }
    .header-lang:hover {
        background: #6091D5;
    }
    .active-menu .mobile-menu-bg, .active-menu .mobile-menu-logo-element{
        display: block;
    }
    .scroll{
        overflow: hidden;
    }
    .dropdown-content .menu-open-list{
        width: 30vw;
        border-radius: 1vw;
        margin: 0 auto;
        background: #FFFFFF;
    }
    .header-menu{
        grid-row: 2;
        grid-column: 4/10;
        height: 100%;
        width: 100%;
    }
    .nav-list li{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 100%;
    }
    .nav-list > li{
        padding: 0;
    }
    .dropdown a.header-menu-open{
        position: relative;
        width: 56%;
    }
    /* .hide-section section, .hide-section footer{
        display: none;
    } */
    .header-height{
        height: 100%;
        overflow-y: auto;
    }
    .header-height .menu{
        padding-bottom: 10vw;
    }
    .nav-list li ul{
        position: static;
        width: 30vw;
        border-radius: 1vw;
        margin: 0 auto;
        background: #FFFFFF;
    }
    .nav-list li ul li a, .menu-open-list li ul li a{
        color: #365090;
        text-align: center;
        font-size: 1.56vw;
        padding: 1.8vw;
        margin: 0;
        width: 100%;
        font-family: "Open Sans", sans-serif;
    }
    .nav-list li ul li::after{
        background: #365090;
opacity: 0.2;
    }


    /* ------------------ */
    /* ------ Main ------ */
    /* ------------------ */


    .main{
        background-position: top 8vw center;
    }
    .main-offer{
        grid-column: 2/12;
        padding-top: 11vw;
    }
    .main-title-wrapper::before{
        height: 12vw;
        width: 0.2vw;
    }
    .main-title-wrapper::after{
        height: 12vw;
        width: 0.2vw;
    }
    .main-title{
        font-size: 4vw;
        line-height: 5vw;
    }
    .main-desc{
        font-size: 2.05vw;
        padding: 3vw 14vw 5vw 14vw;
    }
    .main-btn{
        font-size: 1.6vw;
        padding: 1.8vw 1.5vw;
    }


    /* ------------------ */
    /* ---- Services ---- */
    /* ------------------ */


    .services{
        padding: 7.5vw 0;
        background-size: 100% 75%;
        background-position: top left;
    }
    .title-wrapper::before{
        width: 14vw;
    }
    .title-wrapper::after{
        width: 14vw;
    }
    .title{
        font-size: 2.35vw;
    }
    .services-wrapper{
        grid-column-gap: 1.8vw;
        width: 84.5vw;
        grid-row-gap: 4.7vw;
    }
    .services-block{
        grid-column: span 6;
        padding-left: 2.3vw;
        padding-top: 3.1vw;
    }
    .services-block-icon{
        width: 7vw;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
    }
    .services-desc-wrapper{
        height: 24vw;
        padding: 5vw 1.5vw 2vw 2.8vw;
    }
    .services-block-title{
        font-size: 1.75vw;
        height: 11vw;
    }
    .services-desc{
        margin-top: 1vw;
        margin-bottom: 1.7vw;
        height: 100%;
    }
    .services-desc span{
        font-size: 1.35vw;
        margin-bottom: 0.7vw;
    }
    .services-desc-link{
        font-size: 1.35vw;
    }
    .services-desc-link-icon{
        width: 1.5vw;
    }
    .services-bg{
        display: none;
    }
    .tablet-services-bg{
        display: block;
        position: absolute;
        width: 100%;
        top: 0;
        height: auto;
        left: 0;
        z-index: -9;
    }


    /* ------------------ */
    /* --- Statistics --- */
    /* ------------------ */


    .statistics{
        padding: 5.5vw 0;    
    }
    .statistics::before{
        background-size: 100% auto;
        background-position: bottom 0 center;
    }
    .statistics-block-icon{
        width: 9.5vw;
    }
    .statistics-number{
        font-size: 3vw;
    }
    .statistics-name{
        font-size: 2vw;
    }
    .statistics-bg{
        display: none;
    }
    .tablet-statistics-bg{
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        height: auto;
        z-index: -9;
    }


    /* ------------------ */
    /* ---- About us ---- */
    /* ------------------ */


    .about_us{
        padding: 7.5vw 0;
    }
    .about_us-desc-wrapper{
        grid-column: 1/7;
    }
    .about_us-desc-title{
        font-size: 1.75vw;
    }
    .about_us-desc{
        font-size: 1.56vw;
        line-height: 3.2vw;
    }
    .about_us-desc-bg{
        width: 100%;
        top: 4vw;
    }
    .about_us-img-wrapper{
        align-self: center;
    }



    /* ------------------ */
    /* ------ Form ------ */
    /* ------------------ */


    .form-section{
        margin-bottom: 7.5vw;
    }
    .form-block-wrapper{
        padding: 4vw 0;
        overflow: hidden;
    }
    .form-block-wrapper::before{
        background-size: auto 100%;
        background-position: left -9vw top;
    }
    .form-block-info-wrapper{
        grid-column: 1/11;
        margin-left: 7vw;
        margin-right: 7vw;
        padding: 2.2vw 2.2vw;
        margin-bottom: 0vw;
    }
    .form-block-info-title{
        font-size: 1.75vw;
    }
    .form-block-info{
        font-size: 1.56vw;
        margin-top: 2vw;
    }
    .form-wrapper{
        grid-column: 3/9;
        max-width: 100%;
    }
    .contact-form-input{
        padding: 1.5vw 1vw 1.5vw 2vw;
        margin-bottom: 2vw;
        font-size: 1.56vw;
    }
    .contact-form-btn{
        margin: 2.8vw 0;
        padding: 1.3vw 0;
        font-size: 1.56vw;
    }
    .status{
        font-size: 1.56vw;
    }
    .contact-bg{
        display: none;
    }
    .tablet-contact-bg{
        display: block;
        height: 100%;
        width: auto;
    }


    /* ------------------ */
    /* ----- Footer ----- */
    /* ------------------ */


    .footer{
        padding: 3.5vw 0;
    }
    .footer-logo-wrapper {
        grid-column: 1/3;
    }
    .footer-logo svg, .footer-logo img{
        width: 100%;
        height: auto;
    }
    .footer-contact-wrapper{
        grid-column: 4/9;
        flex-direction: column;
        justify-content: space-between;
        width: 85%;
    }
    .footer-contact-item{
        justify-content: flex-start;
    }
    .footer-contact-wrapper .footer-contact-item:nth-child(1) {
        margin-bottom: 6vw;
    }
    .footer-contact-item-icon svg{
        width: 2.2vw;
        height: auto;
    }
    .footer-contact-item-info {
        margin-left: 2vw;
    }
    .footer-contact-link{
        font-size: 1.56vw;
        line-height: 2vw;
    }
    .footer-media-wrapper{
        grid-column: 9/12;
        justify-content: flex-end;
    }
    .footer-media-item{
        margin-left: 3vw;
    }
    .footer-media-item-link svg, .footer-media-item-link img {
        width: 3vw;
        height: auto;
    }


    /* ------------------ */
    /* ----- Contact ---- */
    /* ------------------ */


    .contact{
        padding-top: 7.5vw;
    }
    .contact-info-wrapper{
        grid-column: 1/6;
    }
    .contact-wrapper{
        padding-right: 4vw;
    }
    .contact-item-icon svg {
        width: 2.2vw;
    }
    .contact-link {
        font-size: 1.56vw;
        line-height: 2vw;
    }
    .media-wrapper{
        width: 50%;
        margin-top: 8vw;
    }
    .media-item-link svg, .media-item-link img {
        width: 3vw;
    }
    .contact-map-wrapper{
        height: 50vh;
    }


    /* ------------------- */
    /* -- Services Item -- */
    /* ------------------- */


    .services-item{
        padding: 7.5vw 0;
    }
    .services-item-description-wrapper{
        grid-column: 1/7;
        margin-top: 3.5vw;
    }
    .services-item-list li{
        margin-bottom: 2.2vw;
    }
    .services-item-list li::before{
        width: 2.5vw;
        height: 2.5vw;
        margin-right: 2.8vw;
    }
    .services-item-description {
        font-size: 1.56vw;
        line-height: 3.2vw;
        width: 100%;
    }
    .services-item-img-wrapper{
        grid-column: 7/13;
        overflow: hidden;
        position: relative;
        width: 100%;
        height: 55vw;
    }
    .services-item-img{
        transform: scale(1);
        object-fit: cover;
        object-position: center;
        height: 100%;
        width: 100%;
    }
    .services-item-description br{
        display: none;
    }
}


/* ------------------ */
/* ----- Mobile ----- */
/* ------------------ */


@media screen and (max-width: 600px){
    .container {
        width: 74.5vw;
        grid-column-gap: 1.2vw;
    }
    .header-block-statik{
        height: 15vw;
    }
    .title-wrapper{
        margin-bottom: 18vw;
    }


    /* ------------------ */
    /* ----- Header ----- */
    /* ------------------ */


    .header-logo-wrapper{
        grid-column: 1/4;
        margin: 0;
    }
    .header-logo{
        width: 100%;
    }
    .menu-toggle{
        grid-column: 11/13;
        width: 80%;
        margin: 0 auto;
    }

    .mobile-menu-icon{
        height: 0.5vw;
    }
    .menu-toggle .mobile-menu-icon:nth-child(2) {
        margin: 2vw 0;
    }
    .header{
        padding: 1.5vw 0;
    }
    .active-menu .container{
        grid-template-rows: max-content;
    }
    .active-menu .header-lang-menu{
        grid-column: 1/4;
        margin-top: 2vw;
        grid-row: 1;
        align-self: center;
        align-items: center;
    }
    .header-lang-wrapper{
        grid-column: 1/4;
        margin-top: 1.7vw;
        grid-row: 1;
        align-self: center;
        align-items: center;
    }
    .header-lang{
        font-size: 2.7vw;
        padding: 2vw 1.7vw;
        border-radius: 1.6vw;
    }
    .overlay{
        grid-column: 11/13;
        margin-top: 2vw;
        grid-row: 1;
        align-self: center;
        align-items: center;
    }
    .overlay svg{
        width: 70%;
    }
    .menu{
        grid-row: 2;
        grid-column: 3/11;
        height: 100%;
        padding-bottom: 10vw;
        width: 100%;
    }
    .header-menu-open .header-menu-list {
        margin: 0;
        padding: 0;
    }
    .header-menu-list, .nav-list li a{
        font-size: 3.7vw;
        padding: 2vw 0;
        margin: 3vw 0;
        position: relative;
    }
    .mobile-menu .dropdown.active .dropdown-content{
        display: block;
        height: auto;
        width: 100%;
    }
    .menu-open-list{
        width: 60vw;
        border-radius: 1.5vw;
    }
    .menu-open-item{
        font-size: 2.8vw;
        padding: 3.5vw;
    }
    .menu-open-list li::after{
        height: 0.2vw;
    }
    .mobile-menu-logo-element{
        width: 80%;
    }
    .mobile-menu-bg{
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: 100%;
        width: auto;
        z-index: -9;
    }
    .menu .dropdown-content{
        height: auto;
        width: 100%;
    }
    .dropdown-content .menu-open-list{
        width: 60vw;
        border-radius: 1.5vw;
        margin: 0 auto;
    }
    .header-menu{
        grid-row: 2;
        grid-column: 1/13;
        height: 100%;
        padding-bottom: 10vw;
        width: 100%;
    }
    .menu-arrow{
        width: 3vw;
        margin-left: 1vw;
        position: absolute;
        right: 0;
    }
    .nav-list li{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 100%;
    }
    .dropdown a.header-menu-open{
        position: relative;
        width: 56%;
    }
    .nav-list li ul li a, .menu-open-list li ul li a{
        font-size: 2.8vw;
        padding: 3.5vw;
    }
    .nav-list li ul{
        width: 60vw;
        border-radius: 1.5vw;
        margin: 0 auto;
    }



    /* ------------------ */
    /* ------ Main ------ */
    /* ------------------ */


    .main {
        background-position: top 15vw center;
    }
    .main-offer{
        grid-column: 1/13;
        padding-top: 15vw;
    }
    .main-title-wrapper{
        padding: 0;
    }
    .main-title-wrapper::before{
        width: 1vw;
        height: 100%;
    }
    .main-title-wrapper::after{
        width: 1vw;
        height: 100%;
    }
    .main-title{
        font-size: 5.6vw;
        line-height: 6.5vw;
        padding: 2vw 0;
    }
    .main-desc{
        font-size: 3.3vw;
        padding: 7vw 5vw 11vw 5vw;
    }
    .main-btn{
        font-size: 2.8vw;
        padding: 4vw 9vw;
        border-radius: 1.2vw;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        box-shadow: 0px 0px 1.5vw rgba(255, 255, 255, 0.15);
    }


    /* ------------------ */
    /* ---- Services ---- */
    /* ------------------ */


    .services{
        padding: 18vw 0;
        background: url(../img/mobile-services-bg.png);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: top 0vw left;
    }
    .title-wrapper::before{
        width: 12vw;
        height: 0.6vw;
    }
    .title-wrapper::after{
        width: 12vw;
        height: 0.6vw;
    }
    .title{
        font-size: 3.7vw;
        padding: 0 4vw;
        width: fit-content;
    }
    .services-wrapper{
        width: 74.5vw;
        grid-column-gap: 1.2vw;
        grid-row-gap: 9vw;
    }
    .services-block {
        grid-column: span 12;
        padding-left: 4.5vw;
        padding-top: 5vw;
    }
    .services-block-icon{
        width: 12.5vw;
    }
    .services-desc-wrapper{
        height: 45vw;
        padding: 10.5vw 4vw 4vw 5vw;
    }
    .services-block-title {
        font-size: 3.3vw;
        height: 18vw;
    }
    .services-desc {
        margin-top: 1vw;
        margin-bottom: 1.5vw;
        height: 100%;
    }
    .services-desc span {
        font-size: 2.55vw;
        margin-bottom: 1.5vw;
    }
    .services-desc-link {
        font-size: 2.55vw;
    }
    .services-desc-link-icon{
        width: 2.5vw;
        margin-left: 1vw;
    }
    .services-block-bg{
        bottom: -1.7vw;
    }
    .tablet-services-bg{
        display: none;
    }
    .mobile-services-bg{
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        z-index: -9;
    }


    /* ------------------ */
    /* --- Statistics --- */
    /* ------------------ */


    .statistics {
        padding: 10vw 0;
        overflow: hidden;
    }
    .statistics::before{
        background-size: auto 100%;
    }
    .statistics-block{
        width: 100%;
        grid-column: 4/10;
        flex-direction: column;
    }
    .statistics-block-icon{
        width: 75%;
        height: auto;
        margin-bottom: 2vw;
    }
    .statistics-block-info{
        justify-content: center;
        text-align: center;
        margin-left: 0;
    }
    .statistics-number {
        font-size: 7.5vw;
    }
    .statistics-name {
        font-size: 4.5vw;
    }
    .statistics .container{
        grid-row-gap: 8vw;
    }
    .tablet-statistics-bg{
        display: none;
    }
    .mobile-statistics-bg{
        display: block;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: 100%;
        width: auto;
        z-index: -9;
    }


    /* ------------------ */
    /* ---- About us ---- */
    /* ------------------ */


    .about_us{
        padding: 18vw 0;
    }
    .about_us-desc-wrapper{
        grid-column: 1/13;
    }
    .about_us-desc-title{
        font-size: 3.3vw;
        padding-right: 5vw;
        margin-bottom: 5vw;
    }
    .about_us-desc{
        font-size: 2.55vw;
        line-height: 5.85vw;
    }
    .about_us-desc-bg{
        width: 70%;
        bottom: 0;
        right: 0;
        top: auto;
        left: auto;
    }
    .about_us-img-wrapper{
        grid-column: 1/13;
        margin-top: 12vw;
    }


    /* ------------------ */
    /* ------ Form ------ */
    /* ------------------ */


    .form-section {
        padding: 0;
        margin-bottom: 18vw;
        margin-top: 0;
        background-color: #365090;
        position: relative;
        overflow: hidden;
        box-shadow: 0px 0px 2.5vw rgba(0, 0, 0, 0.3);
    }
    .form-section::before{
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: url(../img/form-bg.png);
        background-repeat: no-repeat;
        background-size: cover;
        background-position: left -15vw bottom;
    }
    .form-block-wrapper{
        background: none;
        grid-column: 1/13;
        grid-template-columns: repeat(12, 1fr);
        width: 74.5vw;
        grid-column-gap: 1.2vw;
        overflow: visible;
        box-shadow: none;
        padding: 11.5vw 0 4vw 0;
    }
    .form-block-wrapper::before{
        background: none;
    }
    .form-block-info-wrapper{
        grid-column: 1/13;
        margin: 0;
        padding: 3vw 0vw 2vw 4.5vw;
    }
    .form-block-info-wrapper::before{
        width: 0.3vw;
    }
    .form-block-info-title{
        font-size: 3.3vw;
    }
    .form-block-info{
        font-size: 2.55vw;
        margin-top: 5vw;
    }
    .form-wrapper{
        grid-column: 2/12;
        margin-top: 10vw;
    }
    .contact-form-input {
        padding: 2.5vw 1vw 2.5vw 4.5vw;
        margin-bottom: 4vw;
        font-size: 2.55vw;
        border-bottom: 0.5vw solid #FFF;
    }
    .contact-form-btn {
        margin: 8vw 0 6vw 0;
        padding: 2.3vw 0;
        font-size: 2.55vw;
    }
    .status {
        font-size: 2.55vw;
        height: 5vw;
    }


    /* ------------------ */
    /* ----- Footer ----- */
    /* ------------------ */


    .footer{
        padding: 5vw 0 10vw 0;
    }
    .footer .container{
        grid-row-gap: 9vw;
    }
    .footer-logo-wrapper{
        grid-column: 4/10;
    }
    .footer-logo svg, .footer-logo img{
        width: 75%;
    }
    .footer-contact-wrapper{
        grid-column: 2/12;
        width: 100%;
        padding: 0 5vw;
    }
    .footer-contact-wrapper .footer-contact-item:nth-child(1){
        margin-bottom: 6vw;
    }
    .footer-contact-item-icon svg{
        width: 5vw;
    }
    .footer-contact-item-info{
        margin-left: 4vw;
    }
    .footer-contact-link {
        font-size: 2.55vw;
        line-height: 4vw;
    }
    .footer-media-wrapper{
        grid-column: 4/10;
        justify-content: space-between;
        padding: 0 0.5vw;
    }
    .footer-media-item {
        margin-left: 0;
    }
    .footer-media-item-link {
        width: 100%;
    }
    .footer-media-item-link svg, .footer-media-item-link img {
        width: 7vw;
        height: auto;
    }


    /* ------------------ */
    /* ----- Contact ---- */
    /* ------------------ */


    .contact{
        padding: 18vw 0;
    }
    .contact-info-wrapper{
        grid-column: 1/12;
    }
    .contact-wrapper{
        padding-right: 5vw;
    }
    .contact-wrapper .contact-item:nth-child(1){
        margin-bottom: 10vw;
    }
    .contact-item-icon svg {
        width: 5vw;
    }
    .contact-item-info{
        margin-left: 4vw;
    }
    .contact-link {
        font-size: 3.3vw;
        line-height: 5.4vw;
    }
    .media-wrapper{
        margin-top: 15vw;
        margin-bottom: 15vw;
        width: 60%;
    }
    .media-item-link svg, .media-item-link img {
        width: 7vw;
    }
    .contact-map-wrapper{
        grid-column: 1/13;
        height: 40vh;
    }
    /* ------------------- */
    /* -- Services Item -- */
    /* ------------------- */


    .services-item{
        padding: 18vw 0;
    }
    .services-item-description-wrapper{
        grid-column: 1/13;
        margin-top: 0;
    }
    .services-item-list li{
        margin-bottom: 4.5vw;
    }
    .services-item-list li:nth-last-child(1){
        margin-bottom: 0;
    }
    .services-item-list li::before{
        width: 5.5vw;
        height: 5.5vw;
        margin-right: 3vw;
    }
    .services-item-description {
        font-size: 2.55vw;
        line-height: 5.85vw;
    }
    .services-item-img-wrapper{
        grid-column: 1/13;
        margin-top: 9vw;
        height: 100vw;
    }
}