@font-face{
    font-family: "VWText-Bold";
    src: url("../fonts/VWText-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
}

@font-face{
    font-family: "VWText-Light";
    src: url("../fonts/VWText-Light.ttf") format("truetype");
    font-weight: 300;
    font-style: normal;
}

@font-face{
    font-family: "VWText";
    src: url("../fonts/VWText.ttf") format("truetype");
    font-weight: 500;
    font-style: normal;
}


body, html{
    background-color: #fff;
    margin: 0%;
    padding: 0%;
    font-size: calc(10/1920*100vw);
    overflow-anchor: none;
    scroll-behavior: smooth;
}

#models-section,
#test-drive-section,
#dealers-section,
#promo-section,
#news-section{
    scroll-margin-top: 10rem;
}


body{
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    font-size: 1.6rem;
}

*{
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}

section{
    width: 100%;
    max-width: 166rem;
    margin: 0 auto;
    padding: 0;
}


.nav-outer-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    z-index: 7000;
    display: none;
    opacity: 0;
}

h1, .h1, h2, h3, span, button{
    font-family: "VWText-Bold", sans-serif;
    font-weight: 500;
}

b, h4{
    font-family: "VWText", sans-serif;
    font-weight: 500;
}

h1, .h1{
    font-size: 5.6rem;
    line-height: 100%;
}

h3{
    font-size: 3rem;
    line-height: 3.4rem;
}

h4{
    font-size: 2rem;
    line-height: 2.4rem;
}

p, ul, li, td, label{
    font-family: "VWText-Light", sans-serif;
    font-weight: 300;
    line-height: 2.4rem;
}

header{
    width: 100%;
    margin: 0 auto;
    padding: 0;
    top: 0;
}

.burger-menu{
    width: 3.5rem;
    height: 1.8rem;
    display: none;
    margin-right: 10rem;
    cursor: pointer;
}

.burger-menu .close-icon{ display: none; }
.burger-menu.active .burger-icon{ display: none; }
.burger-menu.active .close-icon{ display: block; }

.desktop-btn{
    display: block;
}

.mobile-btn{
    display: none;
}

.static-header{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 6100;
}

.sticky-header{
    overflow: visible !important;
    position: sticky;
    top: 0;
    z-index: 5500;
    background-color: #fff;
    border-bottom: 1px solid rgba(217, 217, 217, 1);
}

.header-main{
    width: 100%;
    margin: 0 auto;
    padding: 2.4rem 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
}


.logo-nav{
    display: inherit;
    flex-direction: inherit;
    gap: 3.3rem;
}

.logo-icon{
    width: 3rem;
    height: auto;
    cursor: pointer;
}

.logo-nav nav{
    display: inherit;
    flex-direction: inherit;
    align-items: center;
    gap: 4rem;
}

.logo-nav a{
    text-decoration: none;
    text-align: center;
    margin: auto 0;
}

.static-header a{
    color: #fff;
}

.sticky-header a{
    color: rgba(27, 34, 54, 1);
}


.models-nav{
    cursor: pointer;
}


.nav-option.active:hover span{
    color: rgba(27, 34, 54, 1);
}

.static-header .models-nav span{
    color: #fff;
}


.header-right-side{
    display: flex;
    flex-direction: row;
    gap: 5.2rem;
}

.lang{
    display: inherit;
    flex-direction: inherit;
    align-items: center;
    gap: 2.7rem;
}

.lang img{
    width: 2.7rem;
    height: 2.7rem;
}

.lng-selection{
    display: inherit;
    flex-direction: inherit;
    align-items: inherit;
    gap: 1.7rem;
}

.lang a{
    text-decoration: none;
}

.lang .lng-d{
    width: 0;
    height: 1.6rem;
}

.static-header .lng-d{
    border-left: 1px solid #fff;
}

.sticky-header .lng-d{
    border-left: 1px solid rgba(45, 62, 78, 1);
}

footer{
    margin-top: auto;
    width: 100%;
    background-color: #fff;
}

.footer-main{
    width: 100%;
    max-width: 164rem;
    margin: 0 auto;
    padding: 3.6rem 0;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

button{
    cursor: pointer;
}

.btn{
    font-size: 1.6rem;
    padding: 1.2rem 3rem;
    border-radius: 0;
    border: none;
    max-width: 28rem;
    border-radius: 50rem;
}

.transparent-white{
    background-color: transparent;
    border: 1px solid #fff;
    color: #fff;
}

.white-grey{
    border: 1px solid rgba(45, 62, 78, 1);
    color: rgba(45, 62, 78, 1);
    background: none;
}

.blue-white{
    background-color: rgba(27, 34, 54, 1);
    color: #fff;
}

.white-borders{
    background-color: transparent;
    border: 1px solid #fff;
    color: #fff;
}

.white-blue{
    background-color: #fff;
    color: rgba(27, 34, 54, 1);
}

.transparent-blue{
    background-color: transparent;
    border: 1px solid rgba(27, 34, 54, 1);
    color: rgba(27, 34, 54, 1);
}


/* Mp section */
.banner-swiper-section{
    position: relative;
    z-index: 6000;
    margin-top: -9.3rem;
}

.banner-swiper-container{
    position: relative;
    display: flex;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    height: 98rem;
}

.banner-swiper{
    width: 100%;
    height: 100%;
    position: relative;
}

.banner-swiper .swiper-slide{
    overflow: hidden;
}

.banner-slide{
    background-image: url(/static/img/slide-bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
}

.banner-slide-inner{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3rem;
    margin-top: auto;
    padding-bottom: 10.8rem;
}

.banner-content{
    display: inherit;
    flex-direction: inherit;
    align-items: inherit;
    color: #fff;
    gap: 3rem;
}

.banner-head{
    font-size: 6.4rem;
    letter-spacing: 0;
    font-weight: 700;
}

.price-banner{
    display: inherit;
    flex-direction: row;
    gap: 2rem;
    align-items: center;
}

.old-price{
    text-decoration: line-through;
}

.new-price{
    font-size: 3.4rem;
}
.btns-group{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 1.3rem;
}

.btns-group .btn{
    max-width: 100%;
}

.banner-arrow{
    color: #fff;
    width: 7rem;
    height: 7rem;
    border-radius: 50%;
    background-color: rgba(27, 34, 54, 1);
}

.banner-arrow::after{
    content: "";
    width: 1.63rem;
    height: 1.63rem;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.prev-arrow::after{
    transform: rotate(45deg) translateX(0.25rem) translateY(-0.25rem);
}

.next-arrow::after{
    transform: rotate(225deg) translateX(0.25rem) translateY(-0.25rem);
}

.banner-pagination-container{
    position: absolute;
    bottom: 4rem;
    width: 100%;
}

.banner-pagination{
    display: flex;
    flex-direction: row;
    gap: 1.2rem;
    align-items: center;
    justify-content: center;
}

.banner-pagination .swiper-pagination-bullet{
    width: 7.8rem;
    border-radius: 0;
    background-color: rgba(217, 217, 217, 1);
    height: 0.3rem;
}


.sticky-track {
    position: relative;
    width: 100%;
}

.return-wrapper {
    position: absolute;
    right: 3rem;
    top: 35rem;
    bottom: 2rem;
    width: 6.5rem;
    pointer-events: none;
    z-index: 10000;
}

.return {
    position: -webkit-sticky;
    position: sticky;
    top: 85vh;
    width: 6.5rem;
    height: 6.5rem;
    background-color: #fff;
    border-radius: 50%;
    border: none;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    pointer-events: auto;
    padding: 0;
    border: 1px solid rgba(27, 34, 54, 1);
}

.return img{
    width: 2.3rem;
    height: auto;
}


/* Models section */
.models-bg{
    background-color: rgba(246, 245, 242, 1);
}

.models{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.6rem;
    padding: 7.9rem 0 13.6rem;
}

.models h2{
    color: rgba(27, 34, 54, 1);
}

.model-cards{
    width: 100%;
    display: inherit;
    flex-direction: inherit;
    align-items: inherit;
    gap: 5rem;
}

.model-card{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10rem;
    background-color: #fff;
    padding: 1.025rem 1.2rem;
    border-radius: 1rem;
    box-shadow: 0.5rem 0.4rem 0.5rem rgba(0, 0, 0, 0.05);
}

.image-wrapper-models{
    position: relative;
    width: 100%;
    height: 100%;
    max-width: 82rem;
    height: 41.9rem;
}

.image-wrapper-models img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 1rem;
}

.model-card-content{
    display: inherit;
    flex-direction: column;
    gap: 6.35rem;
    width: 100%;
    max-width: 65rem;
}

.general-desc{
    display: inherit;
    flex-direction: inherit;
    justify-content: space-between;
    gap: 4.2rem;
    color: rgba(27, 34, 54, 1);
}

.model-card-content-head-desc{
    display: inherit;
    flex-direction: inherit;
    gap: 1.6rem;
}

.model-card-content-head-desc h3{
    font-size: 4.2rem;
}

.specs{
    display: inherit;
    flex-direction: row;
    justify-content: space-between;
}

.spec-point{
    width: 100%;
    max-width: 14.6rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.15rem;
    text-align: center;
}

.spec-point p{
    font-size: 1.2rem;
}

.divider-dashed{
    width: 0;
    align-self: stretch;
    border-left: 1px dashed rgba(27, 34, 54, 1);
    opacity: 45%;
}

.model-card-actions{
    display: flex;
    flex-direction: row;
    gap: 1rem;
}

.model-card-actions .btn{
    text-wrap: nowrap;
    max-width: 100%;
    display: flex;
    flex-direction: row;
    gap: 1.2rem;
    align-items: center;
}

/* Form section */

.forms-bg{
    background-color: rgba(27, 34, 54, 1);
}

.forms{
    padding: 12.7rem 0 13.8rem;
}

.forms-container{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6.3rem;
    padding: 7.8rem 14rem 12.3rem;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 1rem;
    color: #fff;
}

.form-container-content{
    width: 100%;
    height: 37.7rem;
    display: inherit;
    flex-direction: row;
    align-items: inherit;
    gap: 6rem;
}

.left-side, .right-side{
    width: 100%;
    max-width: 66rem;
}

.left-side{
    display: inherit;
    flex-direction: column;
    gap: 3.4rem;
}

.so{
    width: 100%;
    background-color: transparent;
    border: 1px solid #fff;
    border-radius: 1rem;
    color: #fff;
    padding: 2rem 3rem;
    font-size: 1.6rem;
    appearance: none;
}

.so option{
    color: rgba(27, 34, 54, 1);
    background-color: #fff;
}

.select-wrapper-forms{
    position: relative;
    display: inline-block;
}

.select-wrapper-forms::after{
    content: '';
    position: absolute;
    right: 3rem;
    top: 50%;
    width: 1.77rem;
    height: 1.77rem;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    transform: translateY(-75%) rotate(45deg);
    pointer-events: none;
}

.image-wrapper-forms{
    position: relative;
    width: 100%;
    height: 100%;
    max-height: 28.7rem;
}

.image-wrapper-forms img{
    width: 100%;
    height: 28.7rem;
    object-fit: cover;
    border-radius: 1rem;
}

.right-side{
    height: 37.7rem;
}

.right-side form{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}


.right-side .forms-inputs{
    display: flex;
    flex-direction: column;
    gap: 5.2rem;
    max-width: 80rem;
    width: 100%;
    margin: 0 auto;
}

.right-side .form-input:focus{
    border-bottom: 1px solid #fff;
}

.form-input {
    width: 100%;
    font-family: "VWText-Bold", sans-serif;
    background: transparent;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 1);
    padding: 0 0 1.4rem;
    color: rgba(255, 255, 255, 1);
    font-size: 1.6rem;
    outline: none;
}

.form-input::placeholder {
    color: rgba(255, 255, 255, 1);
}

.form-input:focus {
    border-bottom: 1px solid rgba(27, 34, 54, 1);
}

.consent-wrapper {
    display: flex;
    align-items: center;
    gap: 2rem;
    font-size: 1.6rem;
}

.form-checkbox {
    appearance: none;
    -webkit-appearance: none;
    width: 2.3rem;
    height: 2.3rem;
    margin: 0;
    flex-shrink: 0;
    position: relative;
    border: 1px solid rgba(255, 255, 255, 1);
    border-radius: 0.4rem;
    background-color: transparent;
    cursor: pointer;
}

.form-checkbox:checked::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 42%;
    width: 0.55rem;
    height: 1rem;
    border: solid #fff;
    border-width: 0 0.2rem 0.2rem 0;
    transform: translate(-50%, -50%) rotate(45deg);
}

.consent-submit{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3.5rem;
    margin-top: 4.3rem;
}

.form-btn{
    padding: 1.25rem 5rem;
}

.form-modal {
    width: 100%;
    max-width: 50rem;
    background: #fff;
}

.form-header{
    padding: 4rem;
    text-align: center;
    font-size: 3.6rem;
    background: rgba(27, 34, 54, 1);
    color: #fff;
}

.fancybox-slide--html .fancybox-close-small {
    color: #fff;
}


.form-modal .form-input, .form-modal .form-input::placeholder{
    color: rgba(27, 34, 54, 1);
}

.form-modal .form-input{
    border-bottom: 1px solid rgba(27, 34, 54, 1);
}

.form-modal .form-checkbox{
    border: 1px solid rgba(27, 34, 54, 1);
}

.form-modal .form-checkbox:checked::after{
    content: '';
    position: absolute;
    left: 50%;
    top: 42%;
    width: 0.55rem;
    height: 1rem;
    border: solid rgba(27, 34, 54, 1);
    border-width: 0 0.2rem 0.2rem 0;
    transform: translate(-50%, -50%) rotate(45deg);
}

.form-modal .form-btn{
    width: 100%;
    max-width: 100%;
}

.fancybox-content{
    padding: 0;
}

.form-modal .form{
    padding: 2rem 4.5rem 4rem;
}

.form-modal .consent-submit{
    gap: 3rem;
}

.form-modal .forms-inputs {
    display: flex;
    flex-direction: column;
    gap: 2.4rem;
}

.form-btn.loading {
    opacity: 0.6;
    cursor: not-allowed;
}



.form-success {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.4rem;
    text-align: center;
    padding: 2rem 3rem;
}

.form-success .btn{
    visibility: visible;
}

/* Dealers */

.map-container{
    position: relative;
    width: 100%;
    height: 90rem;
}


#map{
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.map-balloon{
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 36.6rem;
    max-width: 90vw;
}

.map-balloon-card{
    position: relative;
    width: 100%;
    padding: 3.8rem 4.1rem 5rem;
    background-color: #fff;
    border-radius: 2rem;
    box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.18);
}

.map-balloon-close-btn{
    position: absolute;
    top: 2rem;
    right: 2rem;
    width: 1.5rem;
    height: 1.5rem;
    padding: 0;
    border: none;
    background-color: transparent;
    cursor: pointer;
    opacity: 0.8;
    transition: opacity 0.2s ease;
}

.map-balloon-close-btn:hover{
    opacity: 1;
}

.map-balloon-close-btn img{
    display: block;
    width: 100%;
    height: 100%;
}

.map-balloon-title{
    padding-right: 3rem;
    font-size: 2rem;
    line-height: 3rem;
    text-transform: uppercase;
    color: rgba(45, 62, 78, 1);
}

.map-balloon-d{
    margin: 1.8rem 0;
    height: 1px;
    background-color: rgba(217, 217, 217, 1);
}

.map-balloon-body{
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.map-balloon-field{
    font-family: "VWText-Light", sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 2.4rem;
    color: rgba(45, 62, 78, 1);
}

.map-balloon-field a{
    color: inherit;
    text-decoration: none;
}

.map-balloon-tail{
    width: 1.8rem;
    height: 1.8rem;
    margin-top: -0.9rem;
    background-color: #fff;
    transform: rotate(45deg);
    box-shadow: 0.3rem 0.3rem 0.4rem -0.3rem rgba(0, 0, 0, 0.15);
}

.map-city-marker{
    position: relative;
    width: 5.7rem;
    height: 7rem;
    cursor: pointer;
}

.map-city-marker-icon{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.map-city-marker-badge{
    position: absolute;
    top: -0.6rem;
    right: -0.6rem;
    min-width: 2rem;
    height: 2rem;
    padding: 0 0.4rem;
    border-radius: 50%;
    background-color: rgba(255, 209, 0, 1);
    color: #000;
    font-size: 1.1rem;
    line-height: 2rem;
    text-align: center;
    box-shadow: 0 0.2rem 0.6rem rgba(0, 0, 0, 0.25);
}

.dealers-container{
    position: absolute;
    top: 4.8rem;
    left: 4rem;
    z-index: 10;
    width: 100%;
    max-width: 42rem;
    height: auto;
    max-height: 80rem;
    background-color: #fff;
    border-radius: 2rem;
    box-shadow: 0 0.8rem 3rem rgba(0, 0, 0, 0.18);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.dealers-container::after{
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 6rem;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
    pointer-events: none;
}

.dealers-list-dl > .dealer-item-dl:last-child .dealer-header-dl{
    border-bottom: none;
}


.dealers-list-dl{
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-color: rgba(27, 34, 54, 1) transparent;
    scrollbar-width: thin;
    padding: 2.6rem 0;
    counter-reset: dealer-counter;
}

.dealers-list-dl::-webkit-scrollbar{
    width: 0.5rem;
}

.dealers-list-dl::-webkit-scrollbar-thumb{
    background-color: rgba(27, 34, 54, 1);
    border-radius: 1rem;
}

.dealers-item{
    width: 100%;
    transition: background-color 0.2s ease;
}

.dealer-item-dl.active-dl{
    background-color: rgba(243, 243, 245, 1);
}

.dealers-list-dl > .dealer-item-dl:first-child.active-dl{
    margin-top: -2.6rem;
    padding-top: 2.6rem;
    border-radius: 2rem 2rem 0 0;
}

.dealers-list-dl > .dealer-item-dl:last-child.active-dl{
    margin-bottom: -2.6rem;
    padding-bottom: 2.6rem;
    border-radius: 0 0 2rem 2rem;
}

.dealer-item-dl.active-dl .dealer-header-dl{
    border-bottom: 1px solid rgba(217, 217, 217, 1) !important;
}

.dealer-header-dl{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    max-width: 34rem;
    width: 100%;
    margin: 0 auto;
    padding: 2rem 0;
    cursor: pointer;
    user-select: none;
    border-bottom: 1px solid rgba(217, 217, 217, 1);
}

.dealer-header-dl span:first-child{
    display: inline-flex;
    align-items: center;
    gap: 1.4rem;
    font-size: 2rem;
    font-weight: 700;
    color: rgba(27, 34, 54, 1);
}

.dealer-header-dl span:first-child::before{
    counter-increment: dealer-counter;
    content: counter(dealer-counter);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.6rem;
    height: 2.6rem;
    border-radius: 50%;
    border: 1px solid rgba(27, 34, 54, 1);
    color: rgba(27, 34, 54, 1);
    font-size: 1.3rem;
    font-weight: 500;
}

.dealer-chevron-dl{
    flex-shrink: 0;
    width: 1rem;
    height: 1rem;
    border-right: 2px solid rgba(27, 34, 54, 1);
    border-bottom: 2px solid rgba(27, 34, 54, 1);
    transform: rotate(45deg);
    transition: transform 0.2s ease;
}

.dealer-item-dl.active-dl .dealer-header-dl .dealer-chevron-dl{
    transform: rotate(-135deg);
}

.dealer-body-dl{
    max-width: 34rem;
    width: 100%;
    margin: 0 auto;
    max-height: 0;
    overflow: hidden;
    padding: 0;
    transition: max-height 0.35s ease, padding 0.35s ease;
}
.dealer-item-dl.active-dl .dealer-body-dl{
    padding: 1.9rem 0 1.9rem;
}

.dealer-field-dl{
    display: flex;
    gap: 2rem;
    font-size: 1.5rem;
    line-height: 2.2rem;
    color: rgba(27, 34, 54, 1);
    margin-bottom: 1rem;
}

.dealer-field-label-dl{
    flex-shrink: 0;
    width: 9rem;
    color: rgba(27, 34, 54, 0.55);
}

.dealer-field-value-dl{
    flex: 1;
}

.dealer-field-dl a{
    color: inherit;
    text-decoration: none;
}

.dealer-actions-dl{
    display: flex;
    gap: 1rem;
    margin-top: 2.6rem;
}

.dealer-actions-dl .dealer-map-btn-dl{
    background-color: transparent;
    border: 1px solid rgba(27, 34, 54, 1);
    color: rgba(27, 34, 54, 1);
}

.dealer-site-btn-dl a{
    font-size: 1.6rem;
    text-decoration: none;
    color: rgba(27, 34, 54, 1);
}

.dealer-actions-dl .btn{
    padding: 1.3rem 2rem 1.1rem;
    font-size: 1.6rem;
    max-width: none;
    flex: 1;
    text-align: center;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Promo section */
.promo{
    display: flex;
    flex-direction: column;
    gap: 7.4rem;
    align-items: center;
    padding: 9.1rem 0 13.3rem;
}

.container-head{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    color: rgba(27, 34, 54, 1);
}

.container-head a{
    color: rgba(27, 34, 54, 1);
}

.grid-promos{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10.2rem 2rem;
}

.grid-card{
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

.image-wrapper-promo{
    position: relative;
    width: 100%;
    height: 100%;
    max-height: 41.8rem;
}

.image-wrapper-promo img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 1rem;
}

.exp-date{
    position: absolute;
    top: 3rem;
    left: 3rem;
    background-color: rgba(27, 34, 54, 1);
    border-radius: 5rem;
    padding: 0.55rem 1.75rem;
    color: #fff;
}

.grid-card-content{
    display: flex;
    flex-direction: column;
    gap: 2.8rem;
    color: rgba(27, 34, 54, 1);
}

.grid-card-content h3{
    font-size: 2.8rem;
}

/* News section */

.news-bg{
    background-color: rgba(246, 245, 242, 1);
}

.news{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6rem;
    padding: 9rem 0 10.3rem;
}

.news-card-container{
    width: 100%;
}

.news-cards{
    display: flex;
    flex-direction: row;
    gap: 2rem;
}


.news-card{
    width: 100%;
    max-width: 54rem;
    display: flex;
    flex-direction: column;
    gap: 2.7rem;
}

.image-wrapper-news{
    position: relative;
    width: 100%;
    height: 100%;
    max-height: 32.5rem;
}

.image-wrapper-news img{
    width: 100%;
    height: 32.5rem;
    object-fit: cover;
    border-radius: 1rem;
}

.news-card-inner{
    display: inherit;
    flex-direction: inherit;
    gap: 1rem;
}

.news-card-content{
    display: inherit;
    flex-direction: inherit;
    gap: 2.8rem;
    color: rgba(27, 34, 54, 1);
}

.news-card-content h3{
    font-size: 2.8rem;
}

.news-card-content p{
    font-family: "VW-Text", sans-serif;
    line-height: 2.2rem;
    font-weight: 400;
}

.mobile-menu{
    display: none;
}

@media (max-width: 800px){
    body, html{
        font-size: calc(10/480*100vw);
    }

    section{
        max-width: 44rem;
    }

    h1, .h1, h2{
        font-size: 3.2rem;
        line-height: 100%;
    }

    h3{
        font-size: 1.5rem;
        line-height: 100%;
    }

    p, ul, li, td, label{
        font-family: "VWText-Light", sans-serif;
        font-weight: 300;
        line-height: 100%;
    }

    p{
        font-size: 1.4rem;
    }

    .burger-menu{
        display: block;
        background: none;
        border: none;
        cursor: pointer;
        margin: 0;
    }

    .burger-menu img{
        width: 3.2rem;
        height: auto;
    }

    .desktop-btn{
        display: none;
    }

    .mobile-btn{
        display: block;
        max-width: 100%;
        margin-top: 0.5rem;
    }

    .mobile-header{
        display: flex !important;
    }

    .request-btn{
        display: none;
    }


    .header-main{
        width: 100%;
        margin: 0 auto;
        padding: 1.5rem 0;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .logo-nav{
        display: inherit;
        flex-direction: inherit;
        gap: 7.1rem;
    }

    .logo-icon{
        width: 4rem;
        height: auto;
    }

    .logo-nav nav{
        display: none;
    }

    .models-dropdown-desktop{
        display: none;
    }

    .socials-lng-icons{
        display: none;
    }

    .lang{
        display: none;
    }

    .lang a{
        text-decoration: none;
    }

    .lang .lng-d{
        width: 0;
        height: 1.6rem;
    }

    .static-header .lng-d{
        border-left: 1px solid #fff;
    }


    .footer-main{
        width: 100%;
        max-width: 44rem;
        margin: 0 auto;
        padding: 2rem 0;
    }


    /* Mp section */
    .banner-swiper-section{
        position: relative;
        z-index: 6000;
        margin-top: -7.33rem;
    }

    .banner-swiper-container{
        flex: 1;
        min-width: 0;
        overflow: hidden;
        height: 76rem;
    }

    .banner-swiper{
        width: 100%;
        height: 100%;
        position: relative;
    }

    .banner-swiper .swiper-slide{
        overflow: hidden;
    }

    .banner-slide{
        background-image: url(/static/img/slide-bg.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }


    .banner-slide-inner{
        gap: 2.4rem;
        padding-bottom: 10.2rem;
    }

    .banner-content{
        display: inherit;
        flex-direction: inherit;
        align-items: inherit;
        color: #fff;
        gap: 3rem;
    }

    .banner-head{
        font-size: 3.6rem;
        letter-spacing: 0;
        font-weight: 700;
    }

    .price-banner{
        display: inherit;
        flex-direction: row;
        gap: 2rem;
        align-items: center;
    }

    .old-price{
        text-decoration: line-through;
    }

    .new-price{
        font-size: 3.4rem;
    }
    .btns-group{
        width: 100%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 1.3rem;
    }

    .btns-group .btn{
        max-width: 100%;
    }

    .banner-pagination-container{
        position: absolute;
        bottom: 4rem;
        width: 100%;
    }

    .banner-pagination{
        display: flex;
        flex-direction: row;
        gap: 1.2rem;
        align-items: center;
        justify-content: center;
    }

    .banner-pagination .swiper-pagination-bullet{
        width: 7.8rem;
        border-radius: 0;
        background-color: rgba(217, 217, 217, 1);
        height: 0.3rem;
    }

    .banner-btn{
        max-width: none;
    }

    .price-banner{
        gap: 1.9rem;
    }

    .old-price{
        font-size: 1.4rem;
    }

    .new-price{
        font-size: 2.4rem;
    }

    .banner-arrow{
        display: none;
    }

    .return-wrapper {
        display: none;
    }


    /* Models section */
    .models{
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 3rem;
        padding: 4rem 0 6rem;
    }

    .model-cards{
        gap: 3rem;
    }

    .model-card{
        flex-direction: column;
        align-items: center;
        gap: 2.6rem;
        padding: 1.1rem 1rem 5.5rem;
    }

    .image-wrapper-models{
        width: 100%;
        height: 100%;
        max-width: 100%;
        height: 21.5rem;
    }

    .image-wrapper-models img{
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 1rem;
    }

    .model-card-content{
        display: inherit;
        flex-direction: column;
        gap: 3.7rem;
        width: 100%;
        max-width: 38rem;
    }

    .general-desc{
        display: inherit;
        flex-direction: inherit;
        justify-content: space-between;
        gap: 2rem;
    }

    .model-card-content-head-desc{
        display: inherit;
        flex-direction: inherit;
        gap: 1.2rem;
        text-align: center;
    }

    .model-card-content-head-desc h3{
        font-size: 2.4rem;
    }

    .specs{
        position: relative;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        align-items: center;
        justify-items: center;
        row-gap: 2rem;
        column-gap: 1rem;
        padding: 1.6rem 0;
    }

    .specs::before{
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        border-left: 1px dashed rgba(27, 34, 54, 1);
        opacity: 45%;
    }

    .specs::after{
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 50%;
        border-top: 1px dashed rgba(27, 34, 54, 1);
        opacity: 45%;
    }

    .spec-point{
        width: 100%;
        max-width: 14.6rem;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.15rem;
        text-align: center;
    }

    .spec-point p{
        font-size: 1.2rem;
    }

    .divider-dashed{
        display: none;
    }

    .model-card-actions{
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 1rem;
    }

    .model-card-actions .btn{
        text-wrap: nowrap;
        max-width: 100%;
        display: flex;
        flex-direction: row;
        gap: 1.2rem;
        align-items: center;
        justify-content: center;
    }

    .model-card-actions .btn:first-child{
        flex: 1 1 100%;
    }

    .model-card-actions .btn:not(:first-child){
        flex: 1 1 calc(50% - 0.5rem);
    }

    /* Form section */


    .forms{
        padding: 6.8rem 0 6.4rem;
    }

    .forms-container{
        padding: 0;
        border: none;
    }

    .form-container-content{
        width: 100%;
        height: 100%;
        flex-direction: column;

        gap: 4.3rem;
    }

    .left-side, .right-side{
        max-width: 100%;
    }

    .left-side{
        display: inherit;
        flex-direction: column;
        gap: 1.7rem;
    }

    .so{
        width: 100%;
        border-radius: 0.5rem;
        font-size: 1.4rem;
    }

    .select-wrapper-forms{
        position: relative;
        display: inline-block;
    }

    .select-wrapper-forms::after{
        content: '';
        position: absolute;
        right: 3rem;
        top: 50%;
        transform: translateY(-75%) rotate(45deg);
        pointer-events: none;
    }

    .image-wrapper-forms{
        position: relative;
        width: 100%;
        height: 100%;
        max-height: 28.7rem;
    }

    .image-wrapper-forms img{
        width: 100%;
        height: 19.1rem;
        object-fit: cover;
        border-radius: 1rem;
    }

    .right-side{
        height: 100%;
    }

    .right-side form{
        height: 100%;
    }


    .right-side .forms-inputs{
        gap: 4rem;
        max-width: 100%;
    }


    .form-input {
        border-bottom: 1px solid rgba(255, 255, 255, 1);
        padding: 0 0 1.4rem;
        color: rgba(255, 255, 255, 1);
        font-size: 1.4rem;
        outline: none;
    }

    .form-input:focus {
        border-bottom: 1px solid rgba(0, 0, 0, 1);
    }

    .consent-wrapper {
        display: flex;
        align-items: center;
        gap: 2rem;
        font-size: 1.6rem;
    }

    .form-checkbox {
        width: 2.3rem;
        height: 2.3rem;
        cursor: pointer;
        color: white;
    }

    .consent-submit{
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 3.5rem;
        margin-top: 4.4rem;
    }

    .form-btn{
        padding: 1.25rem 5rem;
        width: 100%;
        max-width: 100%;
    }


    /* Dealers section */

    .map-container{
        height: auto;
        display: flex;
        flex-direction: column-reverse;
    }

    #map{
        height: 40rem;
    }

    .dealers-container{
        position: static;
        width: 100%;
        height: auto;
        box-shadow: none;
        border-radius: 0;
        border-bottom: 1px solid rgba(217, 217, 217, 1);
        max-width: 100%;
    }

    .dealers-list-dl{
        max-height: 50rem;
        padding: 0;
    }

    .dealer-item-dl{
        padding: 0 2rem;
    }

    .dealers-search-dl{
        padding: 2rem;
    }

    .dealer-header-dl, .dealer-body-dl{
        max-width: 44rem;
    }

    .dealers-search-icon-dl{
        right: 2rem;
    }

    .dealer-actions-dl{
        flex-direction: column;
    }

    .dealers-container::after{
        background: none;
    }

    /* Promo section */
    .promo{
        gap: 3.5rem;
        padding: 4.2rem 0 7.4rem;
    }

    .grid-promos{
        display: flex;
        flex-direction: column;
        gap: 5rem;
    }

    .grid-card{
        display: flex;
        flex-direction: column;
        gap: 3rem;
    }

    .image-wrapper-promo{
        max-height: 22.4rem;
    }

    .image-wrapper-promo img{
        height: 22.4rem;
    }

    .exp-date{
        top: 2rem;
        left: 2rem;
    }

    .grid-card-content{
        gap: 1rem;
    }

    .grid-card-content h3{
        font-size: 2rem;
    }

    /* News section */

    .news{
        gap: 3.3rem;
        padding: 3.9rem 0 5rem;
    }


    .news-cards{
        display: flex;
        flex-direction: column;
        gap: 3rem;
    }

    .news-cards .news-card:not(:first-child) .image-wrapper-news{
        display: none;
    }

    .news-cards .news-card:not(:first-child){
        border-top: 1px solid rgba(0, 0, 0, 0.15);
        padding-top: 3rem;
    }


    .news-card{
        max-width: 100%;
        gap: 3rem;
    }

    .image-wrapper-news{
        max-height: 26.5rem;
    }

    .image-wrapper-news img{
        height: 26.5rem;
    }

    .news-card-content{
        display: inherit;
        flex-direction: inherit;
        gap: 1rem;
        color: rgba(27, 34, 54, 1);
    }

    .news-card-content h3{
        font-size: 2.8rem;
    }

    .dealers-list-dl > .dealer-item-dl:first-child.active-dl{
        margin-top: -2.6rem;
        padding-top: 2.6rem;
        border-radius: 0;
    }

    .dealers-list-dl > .dealer-item-dl:last-child.active-dl{
        margin-bottom: -2.6rem;
        padding-bottom: 2.6rem;
        border-radius: 0;
    }


    /* Mobile Menu styles */

    .mobile-menu{
        display: none;
        position: fixed;
        flex-direction: column;
        top: 0;
        left: 0;
        width: 100%;
        height: auto;
        max-height: 100dvh;
        max-width: none !important;
        z-index: 7000;
        background-color: #F5F5F7;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .mobile-menu.open{
        display: flex;
    }

    .head-of-mobile-menu{
        background-color: #fff;
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: 3rem 2rem;
        position: sticky;
        top: 0;
        z-index: 7000;
        flex-shrink: 0;
    }


    .lang-nav{
        display: flex;
        flex-direction: row;
        gap: 2.7rem;
        align-items: center;
        text-decoration: none;
        color: rgba(45, 62, 78, 1);
    }

    .lang-nav a{
        text-decoration: none;
        color: rgba(45, 62, 78, 1);
        font-size: 1.6rem;
    }

    .lng-selection-m{
        display: flex;
        flex-direction: row;
        gap: 1.5rem;
        align-items: center;
    }

    .lng-d-m{
        height: 1.7rem;
        width: 0;
        border-left: 1px solid rgba(45, 62, 78, 1);
    }

    .container-m{
        position: relative;
        display: flex;
        flex-direction: column;
        height: 100%;
    }

    .nav-links-m{
        display: flex;
        flex-direction: column;
        padding: 1.4rem 0 2.6rem;
        margin: 0;
    }

    .navigation-m{
        font-size: 2rem;
        background-color: rgba(246, 245, 242, 1);
        display: flex;
        flex-direction: column;
        z-index: 6000;
    }

    .navigation-m ul{
        list-style: none;
        padding: 0;
    }

    .nav-links-m > li:first-child > .dropdown-point-m {
        border-top: none;
    }


    .dropdown-point-m{
        position: relative;
        z-index: 6500;
        display: flex;
        align-items: center;
        justify-content: space-between;
        text-decoration: none;
        padding: 2.5rem 0 2rem;
        border-top: 1px solid rgba(0,0,0,0.1);
    }

    .close-mobile-menu{
        width: auto;
        height: 2.5rem;
        background: none;
        border: none;
        cursor: pointer;
    }
    .close-mobile-menu img{
        width: auto;
        height: 2.5rem;
    }

    .nav-name-m{
        position: relative;
        color: #000;
        width: 100%;
        max-width: 44rem;
        margin: 0 auto;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }

    .nav-name-m span{
        color: rgba(45, 62, 78, 1);
    }

    .dropdown-menu-m {
        max-height: 0;
        opacity: 0;
        overflow: hidden;
        position: relative;
    }

    .dropdown-menu-m ul{
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 7.2rem;
        padding: 6rem 0 5rem;
        margin: 0;
    }

    .dropdown-m.open .arrow{
        transform: rotate(135deg);
    }

    .dropdown-menu-m li{
        max-width: 44rem;
        width: 100%;
        margin: 0 auto;
    }

    .dropdown-menu-item-m{
        display: flex;
        flex-direction: row;
        gap: 2rem;
        text-decoration: none;
        color: rgba(45, 62, 78, 1);
    }

    .dropdown-m.open .dropdown-menu-m {
        opacity: 1;
        max-height: 1000px !important;
        border-top: 1px solid rgba(0,0,0,0.1);
        width: 100%;
        max-width: 44rem;
        margin: 0 auto;
    }

}