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

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

body{
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    font-size: 1.6rem;
    font-family: 'Calibri', sans-serif;
}

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

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

section{
    width: 100%;
    max-width: 162rem;
    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: 'Calibri', sans-serif;
    font-weight: 400;
}

b{
    font-family: "Calibri", sans-serif;
    font-weight: 700;
}

h1, .h1{
    font-size: 4.4rem;
    line-height: 100%;
    text-transform: uppercase;
}

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

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

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

button{
    cursor: pointer;
}

.btn{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    padding: 1.2rem 0;
    border-radius: 0;
    border: none;
    max-width: 22rem;
}

.transparent-white{
    background-color: transparent;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.35);
}

.transparent-black{
    background-color: transparent;
    color: #000;
    border: 1px solid rgba(0, 0, 0, 0.35);
}

.cyan-white{
    background-color: rgba(103, 176, 196, 1);
    color: #fff;
}

.cyan-black-white{
    border: 1px solid rgba(103, 176, 196, 1);
    color: #000;
    background-color: #fff;
}

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-menu{
    display: none;
}

.mobile-btn{
    display: none;
}

.container {
    max-width: 154rem;
    padding: 0 2rem;
    widows: 100%;
}

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

.header-main, .footer-main{
    max-width: 183.4rem;
}

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


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

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

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

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


.sticky-header a{
    color: rgba(0, 0, 0, 1);
}


.models-nav{
    cursor: pointer;
}


.nav-option.active:hover span{
    color: rgba(45, 62, 78, 1);
}

.nav-option.active{
    border-bottom: 2px solid rgba(103, 176, 196, 1);
}


.models-nav span{
    margin-right: 0.8rem;
    color: rgba(0, 0, 0, 1);
}


.models-nav::after{
    content: "";
    content: "";
    display: inline-block;
    width: 0.57rem;
    height: 0.57rem;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    transform: rotate(45deg) translateX(-0.1rem) translateY(-0.35rem);
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.sticky-header.is-over-hero .models-nav::after {
    border-color: #fff;
}

.models-nav.open::after{
    transform: rotate(225deg) translateX(0.05rem) translateY(0.15rem);
}

.sticky-header.force-front{
    z-index: 99999 !important;
}

.models-dropdown-desktop{
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    background-color: rgba(242, 243, 244, 1);
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.12);
    transition: max-height 0.35s ease, opacity 0.3s ease;
}

.models-dropdown-desktop-container{
    position: relative;
}


.models-dropdown-desktop.open{
    max-height: 100rem;
    opacity: 1;
}

.models-dropdown-close{
    visibility: visible;
    position: absolute;
    top: 4.2rem;
    right: 4.02rem;
    width: 2.298rem;
    height: 2.298rem;
    padding: 0;
    background: none;
    border: none;
    cursor: pointer;
    z-index: 3;
}

.models-dropdown-close img{
    display: block;
    width: 100%;
    height: auto;
}

.models-dropdown-cards{
    position: relative;
    width: 100%;
    max-width: 152rem;
    margin: 0 auto;
    padding: 6.7rem 0rem 10.4rem;
    display: flex;
    flex-direction: row;
    justify-content: center;
    justify-content: space-between;
    z-index: 2;
}

.dropdown-sorter{
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.dropdown-sorter a{
    margin: 0;
    text-align: start;
}

.option-sorter.active{
    border-bottom: 2px solid rgba(103, 176, 196, 1);
}

.models-dropdown-cards .model-card{
    display: flex;
    flex-direction: row;
    gap: 2.2rem;
}

.models-dropdown-cards .image-wrapper-mc{
    max-width: 20.8rem;
    height: 8.432rem;
}

.models-dropdown-cards .model-card-content{
    display: inherit;
    flex-direction: column;
    gap: 1.4rem;
    align-items: flex-start;
    padding: 0;
}

.models-dropdown-cards .model-name-dropdown{
    height: 1.7rem;
    width: auto;
    filter: brightness(0);
}

.models-dropdown-cards .price-container{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.521rem;
}

.price-container .new-price-dropdown{
    font-size: 1.8rem;
}

.price-container .old-price-dropdown{
    font-size: 1.4rem;
    text-decoration: line-through;
}

.subcontainer{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8.5rem;
}

.test-drive-phone{
    display: inherit;
    flex-direction: inherit;
    align-items: center;
    gap: 4.7rem;
}

.test-drive-phone a{
    text-decoration: none;
}

.subcnt-head{
    display: inherit;
    flex-direction: inherit;
    gap: 1.5rem;
}

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


.socials-lng-icons img{
    height: 2rem;
    width: auto;
}


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

.lang a{
    text-decoration: none;
}

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

.sticky-header .lng-d{
    border-left: 1px solid rgba(0, 0, 0, 0.3);
}

footer{
    width: 100%;
    background-color: rgba(245, 247, 250, 1);
}

.pre-footer{
    max-width: 183.4rem;
    margin: 0 auto;
    padding: 5.1rem 0 3.9rem;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.footer-nav-point{
    display: flex;
    flex-direction: column;
    gap: 2.8rem;
    align-items: center;
    width: 44.4rem;
}

.footer-nav-point img{
    height: 4rem;
    width: auto;
}

.pre-footer-d{
    height: 14rem;
    width: 0;
    border-left: 1px dashed rgba(0, 0, 0, 0.5);
}

.footer-main{
    width: 100%;
    max-width: 183.4rem;
    margin: 0 auto;
    padding: 6.9rem 0 6.65rem;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.footer-cols{
    display: flex;
    flex-direction: row;
    gap: 8.5rem;
    align-items: flex-start;
}

.footer-col, .footer-logo-col{
    flex: 1;
    display: flex;
    flex-direction: column;
}


.footer-col{
    gap: 1.5rem;
}
.footer-main a{
    text-decoration: none;
}

.footer-heading{
    color: #000;
    margin-bottom: 0.4rem;
    text-wrap: nowrap;
}

.footer-links{
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    list-style: none;
}

.footer-links a{
    color: #000;
}

.footer-links li{
    display: flex;
    flex-direction: row;
    align-items: center;
    position: relative;
}

.footer-phone-socials{
    display: flex;
    flex-direction: row;
    gap: 20.3rem;
    align-items: flex-start;
}

.footer-phone-socials span{
    font-size: 1.6rem;
}


.footer-socials{
    display: inherit;
    flex-direction: inherit;
    gap: 3rem;
}

.footer-socials img{
    width: auto;
    height: 3.5rem;
}

.footer-trademark-mobile{
    display: none;
}

.footer-trademark{
    max-width: 183.4rem;
    position: relative;
    margin: 0 auto;
    padding: 5.95rem 0 0;
    margin-bottom: 6.1rem;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.footer-trademark img{
    position: absolute;
    bottom: 0;
}

.oj-footer-logo{
    left: 0;
    width: 28.5rem;
    height: auto;
}

.astana-footer-logo{
    right: 0;
    width: 12.6rem;
    height: auto;
}



/* Mp section */
.banner-swiper-section{
    position: relative;
}

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

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

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

.banner-slide{
    display: flex;
    flex-direction: column;
    height: 100%;
    background-image: url(/static/img/slide-bg.gif);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.banner-content-wrapper{
    display: flex;
    flex-direction: column;
    color: #fff;
    gap: 3rem;
    margin-top: auto;
    margin-bottom: 13.7rem;
    padding: 0 0 0 4rem;
}

.banner-content{
    display: inherit;
    flex-direction: column;
    gap: 2rem;
}

.jaecoo-j7-banner{
    width: 44.3rem;
    height: auto;
}


.banner-content p{
    font-size: 2.4rem;
    line-height: 100%;
}


.banner-btn{
    max-width: 20rem;
}

.banner-btns-group{
    display: flex;
    flex-direction: row;
    gap: 1.05rem;
}

.banner-progress-btn{
    width: 5.725rem;
    height: 3.762rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(217, 217, 217, 1);
    border-radius: 5rem;
    cursor: pointer;
}

.prev-btn::after, .next-btn::after{
    display: flex;
    content: "";
    width: 0.834rem;
    height: 0.834rem;
    border-left: 2px solid rgba(0, 0, 0, 1);
    border-bottom: 2px solid rgba(0, 0, 0, 1);
}

.prev-btn::after{
    transform:  rotate(45deg);
}

.next-btn::after{
    transform:  rotate(225deg);
}


.banner-progress{
    position: absolute;
    bottom: 14.1rem;
    right: 4rem;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 2.1rem;
    width: 60rem;
}

.banner-pause-btn{
    visibility: visible;
    border: none;
    color: #000;
    font-size: 2rem;
    cursor: pointer;
    padding: 0;
    line-height: 1;
    flex-shrink: 0;
}

.banner-progress-bars{
    display: flex;
    gap: 0.6rem;
    flex: 1;
}

.banner-progress-bar{
    flex: 1;
    height: 0.3rem;
    background: rgba(255, 255, 255, 0.35);
    cursor: pointer;
    position: relative;
    overflow: hidden;
}

.banner-progress-bar .fill{
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 0%;
    background: #fff;
}

.pause-icon img{
    width: auto;
    height: 1.6rem;
}

.banner-progress-bar.done .fill{
    width: 100%;
}

.banner-progress-bar.active .fill{
    animation: progressFill var(--autoplay-duration) linear forwards;
}

.banner-progress-bar.paused .fill{
    animation-play-state: paused;
}

@keyframes progressFill{
    from{ width: 0%; }
    to{ width: 100%; }
}

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

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

.return {
    position: -webkit-sticky;
    position: sticky;
    top: 85vh;
    width: 7.1rem;
    height: 7.1rem;
    background-color: #fff;
    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(103, 176, 196, 1);
}

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


/* Models section */
.models-selection-section{
    position: relative;
    background-color: rgba(224, 232, 244, 1);
}


.models-selection-inner{
    position: static;
    padding: 9.2rem 0 13.8rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6rem;
    z-index: 2;
}

.ms-head{
    display: inherit;
    flex-direction: inherit;
    gap: 2rem;
    align-items: inherit;
}

.ms-head h2{
    text-transform: uppercase;
}

.model-select-group{
    display: flex;
    flex-direction: row;
    gap: 4rem;
}

.model-select{
    color: rgba(0, 0, 0, 1);
    text-decoration: none;
}

.model-select.active{
    border-bottom: 2px solid rgba(103, 176, 196, 1);
}

.models-swiper-container{
    position: relative;
    width: 100%;
    height: 45rem;
    overflow: hidden;
}

.models-swiper-btn{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 5;
    width: 1.6rem;
    height: 1.6rem;
    cursor: pointer;
}

.models-swiper-btn::after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    border-left: 3px solid rgba(0, 0, 0, 1);
    border-bottom: 3px solid rgba(0, 0, 0, 1);
}

.models-swiper-prev{
    left: 4rem;
}

.models-swiper-next{
    right: 4rem;
}

.models-swiper-prev::after{
    transform: rotate(45deg);
}

.models-swiper-next::after{
    transform: rotate(225deg);
}

.models-swiper-btn.swiper-button-disabled{
    opacity: 0.35;
    cursor: default;
    pointer-events: none;
}

.models{
    width: 100%;
    overflow: visible;
    padding: 0 40rem;
}

.models-progress{
    display: none;
}

.model-card{
    height: 100%;
}

.car-model{
    width: 100%;

}

.swiper-slide .car-model {
    height: 45rem;
    object-fit: contain;
}


.model-card-content{
    width: 100%;
    /* max-width: 146.3rem; */
    display: flex;
    flex-direction: row;
    gap: 9rem;
    align-items: center;
    /* justify-content: space-between; */
    flex: 1;
}

.model-icon-price, .specs-btn{
    display: flex;
    flex-direction: row;
}

.model-icon-price{
    gap: 3.9rem;
}

.model-icon{
    height: 4rem;
    width: auto;
    max-width: 33rem;
    filter: brightness(0);
}

.price{
    display: inherit;
    flex-direction: column;
}

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

.old-price{
    font-size: 1.8rem;
    text-decoration: line-through;
}

.specs-btn{
    justify-content: space-between;
    width: 100%;
    max-width: 79.8rem;
    margin-left: auto;
}

.specs{
    display: inherit;
    flex-direction: row;
    gap: 4rem;
}

.spec-point{
    display: inherit;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.spec-point span{
    font-size: 3.2rem;
}

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

.models-d{
    width: 0;
    height: 100%;
    border-left: 1px solid rgba(0, 0, 0, 0.25);
}

.model-btn{
    width: 100%;
    text-wrap: nowrap;
}

/* Scrn3 */
.scrn3-bg{
    background-color: rgba(2, 4, 5, 1);
    background-image: url(/static/img/scrn3-bg.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 0 83.9rem;
    position: relative;
}

.scrn3{
    max-width: 153rem;
    width: 100%;
    margin: 0 auto;
    padding: 13.5rem 0 12.5rem;
    height: 177.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.actions-cards{
    display: flex;
    flex-direction: row;
    gap: 1.5rem;
    align-items: center;
}

.action-card{
    display: inherit;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    width: 100%;
    max-width: 50rem;
    height: 75rem;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 0 8.55rem 7.6rem;
    position: relative;
}

.action-card .bg-wrapper {
    z-index: 0;
}

.card-1-scrn3{
    background-image: url(/static/img/test-drive-card-bg.jpg);
}

.card-2-scrn3{
    background-image: url(/static/img/service-card-bg.jpg);
}

.card-3-scrn3{
    background-image: url(/static/img/promo-card-bg.jpg);
}

.action-card-content{
    position: relative;
    display: inherit;
    flex-direction: inherit;
    width: 100%;
    gap: 2.8rem;
    color: #fff;
}

.action-card-content h3{
    font-size: 3.2rem;
    text-transform: uppercase;
}

.action-card-content p{
    font-size: 1.4rem;
    min-height: 9.6rem;
}

.spc-btn{
    max-width: 18.7rem;
    width: 100%;
}

.dealers-mp{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: auto;
    gap: 2rem;
    color: #fff;
    max-width: 91rem;
    width: 100%;
}

.dealers-mp-content{
    display: inherit;
    flex-direction: inherit;
    gap: 2rem;
    text-align: center;
}

.dealers-mp-content h2{
    text-transform: uppercase;
}

.dealers-mp-group-btn{
    display: inherit;
    flex-direction: row;
    gap: 1rem;
    justify-content: center;
    width: 100%;
}

.dealer-mp-btn{
    max-width: 18.7rem;
    width: 100%;
}

/* Scrn4 */

.scrn-4-bg{
    background-image: url(/static/img/scrn-4-bg.gif);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.scrn-4{
    height: 107.7rem;
    display: flex;
    flex-direction: column;
    padding: 0 0 12.4rem;
}

.history-content{
    margin-top: auto;
    display: inherit;
    flex-direction: inherit;
    align-items: center;
    text-align: center;
    gap: 4rem;
    color: #fff;
    max-width: 91rem;
    margin: auto auto 0 auto;
}

.history-btn{
    max-width: 20rem;
    width: 100%;
}

/* Scrn5 */
.scrn-5{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3rem;
    padding: 8.4rem 0 10.6rem;
    max-width: 153.2rem;
}

.news-container{
    width: 100%;
    display: inherit;
    flex-direction: inherit;
    align-items: center;
    gap: 5.1rem;
}

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

.news-card{
    display: flex;
    flex-direction: column;
    gap: 3.8rem;
    max-width: 50rem;
}

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

.image-wrapper-news img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.news-card-content{
    display: inherit;
    flex-direction: inherit;
    gap: 2rem;
}

.news-card-content p{
    font-size: 1.8rem;
}

.news-card-content span{
    font-size: 1.4rem;
    color: rgba(0, 0, 0, 0.45);
}

.news-btn{
    width: 100%;
}


/* Model page */
#design,
#comfort,
#technologies,
#safety,
#gallery,
#characteristics{
    scroll-margin-top: var(--header-height, 8.3rem);
}


.h2{
    font-size: 5rem;
    text-transform: uppercase;
}

.model-section{
    max-width: 153rem;
}

.model-main-header{
    position: relative;
}

.model-hero-container .banner-slide{
    /* background-image: url(/static/img/omoda-c5-hero-bg.jpg); */
    background-size: cover;
}

.model-hero-container .banner-slide .bg-wrapper {
    z-index: 0;
}

.left-side-banner{
    width: 50rem;
    display: flex;
    flex-direction: column;
    gap: 4.6rem;
    position: relative;
    z-index: 1;
    padding: 30.4rem 4.1rem 45.2rem;
}


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

.left-side-banner .banner-content img{
    height: 4rem;
    width: auto;
    margin-bottom: 2rem;
    filter: brightness(0) invert(1);
}

.left-side-banner .banner-content p{
    font-size: 2.4rem;
    line-height: 100%;
}

.left-side-banner .banner-content span{
    font-size: 4.4rem;
    font-weight: 400;
}

.group-btns{
    display: flex;
    flex-direction: row;
    gap: 1.2rem;
}

.banner-model-btn{
    width: 20rem;
}

.model-sticky-header{
    position: sticky;
    top: 0;
    z-index: 11000;
    background-color: #fff;
    border-bottom: 1px solid rgba(103, 176, 196, 1);
}

.model-sticky-header-main{
    padding: 1.8rem 0;
}

.model-sticky-name{
    width: 17.3rem;
    height: auto;
    filter: brightness(0);
}

.model-sticky-nav{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 5rem;
}

.model-nav-link{
    font-family: "Inter", sans-serif;
    font-size: 1.6rem;
    text-decoration: none;
    white-space: nowrap;
    color: rgba(13, 14, 14, 1);
}

.model-sticky-btn{
    padding: 1.2rem 0rem;
    width: 20rem;
    font-size: 1.6rem;
    max-width: none;
    flex-shrink: 0;
}


.text-center {
    text-align: center;
}

.text-start {
    text-align: start;
}

/* Exterior advantages */

.mobile-exterior-advantages-bg{
    display: none;
}

.exterior-advantages-bg{
    position: relative;
    width: 100%;
    height: 97.9rem;
    overflow: hidden;
    background-color: rgba(28, 39, 51, 1);
}

.ext-adv-photo{
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.6s ease;
}

.ext-adv-photo.is-active{
    opacity: 1;
}

.ext-adv-photo img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.ext-adv-overlay{
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 5.5rem 4rem 0;
    z-index: 2;
}

.ext-adv-toggle{
    display: flex;
    border-radius: 0.6rem;
    overflow: hidden;
    box-shadow: 0 0.4rem 1.5rem rgba(0, 0, 0, 0.15);
    flex-shrink: 0;
}

.ext-adv-toggle-btn{
    padding: 1.4rem 3rem;
    font-size: 1.6rem;
    border: none;
    background-color: #fff;
    color: rgba(13, 14, 14, 1);
    white-space: nowrap;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.ext-adv-toggle-btn.is-active{
    background-color: rgba(103, 176, 196, 1);
    color: #fff;
}

.ext-adv-copy{
    text-align: center;
    margin-top: 3.6rem;
    color: #fff;
}

.ext-adv-title{
    line-height: 100%;
    color: #fff;
    margin-bottom: 1.4rem;
}

.ext-adv-subtitle{
    font-size: 1.6rem;
    color: rgba(255, 255, 255, 0.85);
}

.ext-adv-markers{
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
}

.ext-adv-marker{
    position: absolute;
    left: calc(var(--x, 50) * 1%);
    top: calc(var(--y, 50) * 1%);
    width: 4.9rem;
    height: 4.9rem;
    pointer-events: auto;
    transform: translate(-50%, -50%);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    opacity: 1;
    transition: left 0.7s cubic-bezier(0.4, 0, 0.2, 1), top 0.7s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease;
}

.ext-adv-marker.is-active {
    z-index: 10;
}

.ext-adv-marker.is-hidden{
    opacity: 0;
    pointer-events: none;
}

.ext-adv-dot{
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background-color: rgba(103, 176, 196, 0.85);
    border: 1px solid #fff;
    box-shadow: 0 0.2rem 0.8rem rgba(0, 0, 0, 0.25);
    transition: background-color 0.3s ease;
}

.ext-adv-dot::after{
    content: "";
    position: absolute;
    inset: 1.2rem;
    border-radius: 50%;
    background-color: #fff;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: calc(100% - 2rem);
    height: calc(100% - 2rem);
}

.ext-adv-marker:hover .ext-adv-dot,
.ext-adv-marker.is-active .ext-adv-dot{
    background-color: rgba(103, 176, 196, 0.9);
}

.ext-adv-callout{
    position: absolute;
    top: 100%;
    left: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transform: translateX(-50%) translateY(0.4rem) scale(0.85);
    transform-origin: top center;
    transition: opacity 0.25s ease, transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.ext-adv-marker.is-active .ext-adv-callout{
    opacity: 1;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0.4rem) scale(1);
}

.ext-adv-tail{
    display: block;
    width: 5.8rem;
    height: 2.4rem;
    margin-bottom: -0.8rem;
}

.ext-adv-label{
    padding: 1.1rem 1.8rem;
    background-color: #fff;
    color: rgba(13, 14, 14, 1);
    font-size: 1.5rem;
    line-height: 1.3;
    white-space: nowrap;
    border-radius: 0.2rem;
    box-shadow: 0 0.4rem 1.5rem rgba(0, 0, 0, 0.15);
}

/* Выноска с описанием: заголовок, разделитель и текст в одной карточке.
   Фон и тень переезжают с .ext-adv-label на карточку. */
.ext-adv-card{
    display: flex;
    flex-direction: column;
    width: 36rem;
    max-width: 80vw;
    padding: 2.3rem 2.8rem 2.8rem;
    background-color: #fff;
    color: rgba(13, 14, 14, 1);
    border-radius: 0.2rem;
    box-shadow: 0 0.4rem 1.5rem rgba(0, 0, 0, 0.15);
    text-align: left;
}

.ext-adv-card .ext-adv-label{
    padding: 0 0 1.6rem;
    background: none;
    border-radius: 0;
    box-shadow: none;
    white-space: normal;
    font-size: 2rem;
    line-height: 1.25;
    border-bottom: 1px solid rgba(13, 14, 14, 0.15);
}

.ext-adv-desc{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.35;
    padding-top: 1.6rem;
}

.fancybox-slide--html {
    padding: 0;
    overflow: visible;
}

.fancybox-is-open .fancybox-stage {
    overflow: visible;
}

.ext-adv-fancybox{
    width: 100%;
    font-family: Calibri, sans-serif;
    font-size: 1.6rem;
    line-height: 1.4;
    color: rgba(13, 14, 14, 1);
    padding: 2.3rem 4rem;
    text-align: center;
}

/* В попапе карточка разбирается на части, поэтому подпись нужно
   освободить от оформления «плашки» */
.ext-adv-fancybox .ext-adv-label{
    display: block;
    padding: 0 0 1.2rem;
    background: none;
    border-radius: 0;
    box-shadow: none;
    white-space: normal;
    font-size: 1.8rem;
    line-height: 1.25;
    border-bottom: 1px solid rgba(13, 14, 14, 0.15);
}

.ext-adv-fancybox .ext-adv-desc{
    display: block;
    padding-top: 1.2rem;
    font-size: 1.4rem;
    text-align: left;
}

.fancybox-slide {
    z-index: 10000;
}

.fancybox-close-small {
    z-index: 100000;
}

.fancybox-slide--html .fancybox-close-small {
    color: #fff;
    background-color: rgba(103, 176, 196, 1);
    padding: 1rem;
    border-radius: 50%;
    width: 3.3rem;
    height: 3.3rem;
    right: 22.3rem;
    top: -2rem;
    opacity: 1;
}

.fancybox-button svg {
    height: 200%;
    width: 200%;
    left: -0.6rem;
    top: -0.6rem;
}

.fancybox-content {
    max-width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    overflow: visible;
}

/* Characteristics section */
.char-bg{
    background-image: url(/static/img/char-bg.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.char{
    max-width: 148.5rem;
    height: 98rem;
    padding: 8rem 0 10.9rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    color: #fff;
}

.char-head{
    display: inherit;
    flex-direction: inherit;
    align-items: center;
    gap: 1rem;
    text-align: center;
}

.char-head p{
    font-size: 1.6rem;
}

.characteristics-points{
    width: 100%;
    display: flex;
    flex-direction: row;
    gap: 7.1rem;
    align-items: center;
}

/* .space-between .characteristics-points {
    gap: revert;
    justify-content: space-between;
} */

.characteristics-row{
    display: flex;
    flex-direction: row;
    gap: 7.1rem;
    align-items: center;
}

.dark .bg-wrapper img{
    object-fit: none;
}

.dark .characteristics-row {
    color: #000;
    justify-content: center;
    width: 100%;
}

.dark .char-d {
    border-color: #000;
}

.characteristics-point{
    display: inherit;
    flex-direction: column;
    gap: 0.6rem;
    text-align: center;
}

.characteristics-point span{
    font-size: 3.2rem;
}

.char-d{
    width: 0;
    /* height: 100%; */
    border-left: 1px solid rgba(255, 255, 255, 0.25);
    align-self: stretch;
}

.char-d-h{
    width: 0;
    height: 100%;
    border-left: 1px solid rgba(255, 255, 255, 0.25);
}


/* Color selection section */
.color-selection-section-bg{
    background-color: #dbe1e5 !important;
}

.color-selection-section{
    padding: 8.1rem 0 7rem;
    height: 98rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

.css-head{
    position: static;
    display: inherit;
    flex-direction: inherit;
    align-items: inherit;
    text-align: center;
    gap: 1.5rem;
    z-index: 2;
}

.car-color-preview {
    width: 100%;
    height: auto;
    position: relative;
    z-index: 1;
}

.full-height-colors {
    background: none;
    position: relative;
    color: #fff;
}

.full-height-colors.dark {
    color: #000;
}

.full-height-colors .color-selection-section {
    position: static;
}

.full-height-colors .car-color-preview {
    position: absolute;
    inset: 0;
    height: auto;
    z-index: 1;
    object-fit: cover;
    width: 100%;
    height: 100%;
    overflow: visible;
}


.css-footer{
    position: static;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3rem;
    z-index: 2;
    width: 100%;
}

.color-selection{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.4rem;
}

.colors{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1.6rem;
}

.color-circle{
    width: 3.9rem;
    height: 3.9rem;
    border-radius: 50%;
    cursor: pointer;
    position: relative;
}

.color-circle.black{
    background-color: #0d0d0d;
    color: #0d0d0d;
}

.color-circle.grey{
    background-color: #6e6e6e;
    color: #6e6e6e;
}


.color-circle.white{
    background-color: #cfcac0;
    color: #cfcac0;
}

.color-circle.silver{
    background-color: rgb(155 154 151);
    color: rgb(155 154 151);
}

.color-circle.light-black{
    background-color: rgba(33, 37, 46, 1);
    color: rgba(33, 37, 46, 1);
}

.color-circle.red{
    background-color: rgba(151, 28, 33, 1);
    color: rgba(151, 28, 33, 1);
}

.color-circle.cream{
    background-color: rgba(175, 176, 181, 1);
    color: rgba(175, 176, 181, 1);
}

.color-circle.blue{
    background-color: rgba(71, 96, 129, 1);
    color: rgba(71, 96, 129, 1);
}

.color-circle.active{
    border: 2px solid #fff;
}

.divider-h{
    height: 0;
}

.css-d{
    width: 100%;
    border-bottom: 1px solid rgba(13, 14, 14, 0.15);
}

.disclaimer{
    display: flex;
}

.disclaimer span{
    text-align: center;
    color: rgba(13, 14, 14, 1);
    font-size: 1.4rem;
}
/* Exterior-2 section */

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


.exterior-2{
    position: relative;
    height: 98rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 11rem 0 12.1rem;
    color: #fff;
    max-width: 140rem;
}

.exterior-2-points{
    gap: 4.8rem;
    margin: 0 auto;
}

.exterior-2-points .characteristics-row{
    gap: 4.8rem;
}

/* Interior section */
.interior-bg{
    background-image: url(/static/img/interior-bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
}

.interior-section{
    position: relative;
    height: 98rem;
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    padding: 9.2rem 0;
    color: #fff;
}

.interior-head{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.6rem;
    color: #fff;
}

.interior-swiper{
    display: none;
}

/* Climate Winter Pack section */
.climate-winter-pack-bg{
    background-color: #fff;
}

.climate-winter-pack{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.2rem;
    padding: 11.8rem 0 8.6rem;
}

.cwp-head{
    display: inherit;
    flex-direction: inherit;
    gap: 1.5rem;
    align-items: center;
    text-align: center; 
}

.cwp-table{
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
}

.cwp-table th,
.cwp-table td{
    padding: 2.5rem 0;
    text-align: center;
    vertical-align: middle;
}

.cwp-thead span{
    font-size: 3.2rem;
    text-transform: uppercase;
}

.cwp-table th:first-child,
.cwp-table td:first-child{
    text-align: left;
}

.cwp-table th:nth-child(2),
.cwp-table td:nth-child(2){
    border-left: 1px solid rgba(217, 217, 217, 1);
    border-right: 1px solid rgba(217, 217, 217, 1);
}

.cwp-thead th{
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
}

.cwp-thead-premium{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
}

.cwp-table tbody td{
    border-bottom: 1px solid rgba(217, 217, 217, 1);
}

/* Tech 1 section */

.tech-1-bg{
    background-color: rgba(13, 14, 14, 1);
}

.tech-1{
    padding: 11.3rem 0 14.2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7.4rem;
    color: #fff;
}

.tech-head{
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    align-items: center;
    text-align: center;
}

.tech-1-cards, .tech-2-cards, .tech-3-cards{
    display: flex;
    flex-direction: row;
}

.tech-1-cards{
    gap: 4.3rem;
}

.tech-1-card , .tech-2-card, .tech-3-card{
    display: flex;
    flex-direction: column;
}

.tech-1-card{
    max-width: 35rem;
    gap: 4.9rem;
}

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

.image-wrapper-tech img{
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.tech-card-content{
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    text-align: center;
}

.text-start .tech-card-content {
    text-align: start;
}

.tech-card-content h3{
    font-size: 3.2rem;
    text-transform: uppercase;
}

.tech-card-content span, .tech-2-footer span{
    color: rgba(255, 255, 255, 0.45);
}

/* Tech 2 section */

.tech-2-bg{
    background-color: #201E1E;
}

.tech-2{
    padding: 7.9rem 0 13.2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.2rem;
    color: #fff;
}

.tech-head{
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    align-items: center;
    text-align: center;
    margin-bottom: 2.2rem;
}

.tech-2-cards{
    gap: 4.7rem;
}

.tech-2-card{
    max-width: 48rem;
    gap: 5.3rem;
}

.tech-2-card .image-wrapper-tech{
    position: relative;
    width: 100%;
    height: 100%;
    max-height: 26.3rem;
}

.tech-2-card .tech-card-content{
    text-align: start;
}

.tech-2-footer{
    display: inherit;
    flex-direction: inherit;
    gap: 3.8rem;
    width: 100%;
    align-items: center;
}

.tech-2-d{
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

/* Tech 3 section */

.tech-3-bg{
    background-color: rgba(217, 217, 217, 1);
}

.tech-3{
    padding: 11.4rem 0 12.7rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5.7rem;
    color: rgba(13, 14, 14, 1);
}

.tech-3-cards{
    gap: 4.7rem;
}

.tech-3-card{
    max-width: 48rem;
    gap: 3rem;
}

.tech-3-card .image-wrapper-tech{
    position: relative;
    width: 100%;
    height: 100%;
    max-height: 26.3rem;
}

.tech-3-card .tech-card-content{
    text-align: start;
}

.tech-3-card .tech-card-content span{
    color: rgba(13, 14, 14, 1);
}

.tech-3-tag{
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-top: 1.3rem;
    gap: 0.3rem;
}

.tech-3-tag span{
    font-family: "Inter", sans-serif;
    color: rgba(103, 176, 196, 1) !important;
}

/* Gallery section */

.gallery-bg{
    background-color: white;
}

.gallery{
    display: flex;
    flex-direction: column;
    gap: 6.5rem;
    align-items: center;
    padding: 8.5rem 0 14.5rem;
}

.gallery-cards{
    display: flex;
    flex-direction: column;
    gap: 2rem;
    width: 100%;
}

.gallery-row{
    display: flex;
    gap: 2rem;
    width: 100%;
}

.gallery-row-top .gallery-card{
    width: 91rem;
    height: 55.9rem;
}

.gallery-row-bottom .gallery-card{
    width: 60rem;
    height: 36.9rem;
}

.gallery-card{
    position: relative;
    flex: 1 1 0;
    overflow: hidden;
}

.gallery-card img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.gallery-card-more::after{
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.6);
}

.gallery-card-more span{
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    color: #fff;
    font-size: 3.2rem;
}

/* Configurations section */

.configurations-bg{
    background-color: rgba(217, 217, 217, 1);
}

.configurations{
    padding: 10.6rem 0 6.6rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6.3rem;
}

.ccp-head{
    display: inherit;
    flex-direction: inherit;
    gap: 1.5rem;
    margin-bottom: 0.3rem;
    text-align: center;
}

.ccp-table-wrap{
    width: 100%;
}

.ccp-table{
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
}

.ccp-table th,
.ccp-table td{
    padding: 2.5rem 10.9rem;
    vertical-align: middle;
    text-align: left;
}

.ccp-thead span{
    font-size: 3.2rem;
    text-transform: uppercase;
}

.ccp-table th:first-child,
.ccp-table td:first-child{
    padding: 2.5rem 0;
}

.ccp-table th:nth-child(2),
.ccp-table td:nth-child(2){
    border-left: 1px solid rgba(13, 14, 14, 0.15);
    border-right: 1px solid rgba(13, 14, 14, 0.15);
}

.ccp-thead th{
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
}

.ccp-thead-premium{
    display: inline-flex;
    align-items: center;
    justify-content: start;
    gap: 1.5rem;
}

.ccp-table tbody td{
    border-bottom: 1px solid rgba(13, 14, 14, 0.15);
}

.ccp-btn{
    width: 20rem;
}

.full .tech-1-cards {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 4.6rem;
}

.full .tech-card-content h3 {
    text-align: start;
    font-size: 2.6rem;
}

.full.tech-1 {
    padding: 14.9rem 0 8.9rem;
}

.full .tech-1-card {
    width: 100%;
    max-width: 100%;
}

.full .image-wrapper-tech {
    max-height: 26.3rem;
}

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

    section{
        max-width: 44rem;
    }

    h1, .h1, h2{
        font-size: 3rem;
        line-height: 3.5rem;
    }

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

    p, ul, li, td, label{
        font-family: "PF Din Text Universal", sans-serif;
        font-weight: 300;
        line-height: 135%;
    }

    .btn{
        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;
    }


    .header-main{
        width: 100%;
        margin: 0 auto;
        max-width: 44rem;
        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: 17.85rem;
        height: auto;
    }

    .logo-nav nav{
        display: none;
    }

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

    .subcontainer{
        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{
        display: none;
    }

    .footer-trademark{
        max-width: 44rem;
        margin-bottom: 3.305rem;
    }

    .pre-footer{
        max-width: 44rem;
        margin: 0 auto;
        padding: 4rem 0 5rem;
    }

    .footer-nav-point{
        gap: 2.8rem;
        width: 9.5rem;
        text-align: center;
    }

    .footer-nav-point img{
        height: 3rem;
    }

    .pre-footer-d{
        height: 8.4rem;
        width: 0;
        border-left: 1px dashed rgba(0, 0, 0, 0.5);
    }

    .footer-trademark span{
        display: none;
    }

    .footer-trademark-mobile{
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        max-width: 44rem;
        margin: 0 auto;
        padding: 0 0 4.9rem;
    }

    .footer-trademark-mobile span{
        display: flex;
        height: auto;
        font-size: 1.4rem;
    }

    .footer-contact-socials{
        display: inherit;
        flex-direction: inherit;
        align-items: center;
        gap: 2.4rem;
    }

    .footer-contact-socials .footer-socials{
        gap: 1.667rem;
    }

    .footer-contact-socials .footer-socials img{
        height: 2.5rem;
        width: auto;
    }   

    .oj-footer-logo{
        width: 21rem;
        bottom: 1rem;
    }

    .astana-footer-logo{
        width: 8.817rem;
    }

    /* Mp section */
    .static-header{
        display: none;
    }

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

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

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

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

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

    .banner-content-wrapper{
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        color: #fff;
        gap: 3rem;
        margin-top: 9.2rem;
        margin-bottom: 13.7rem;
        padding: 0 0 0 0rem;
    }

    .banner-content{
        display: inherit;
        flex-direction: column;
        gap: 2rem;
    }

    .jaecoo-j7-banner{
        width: 27.8rem;
        height: auto;
    }


    .banner-content p{
        font-size: 1.8rem;
        line-height: 100%;
    }


    .banner-btn{
        width: 100%;
        max-width: 17rem;
    }

    .banner-btns-group{
        display: flex;
        flex-direction: row;
        gap: 1.05rem;
    }

    .banner-progress-btn{
        width: 5.725rem;
        height: 3.762rem;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: rgba(217, 217, 217, 1);
        border-radius: 5rem;
        cursor: pointer;
    }

    .prev-btn, .next-btn{
        display: none;
    }

    .banner-progress{
        left: 5.8rem;
        transform: translateX(0);
        gap: 2.44rem;
        width: calc(100% - 4rem);
        bottom: 5.5rem;
    }


    .banner-progress-bars{
        gap: 0.5rem;
        max-width: 29.5rem;
    }

    .pause-icon img{
        width: auto;
        height: 1.337rem;
    }   

    .return-wrapper {
        display: none;
    }


    /* Models section */
    .models-selection-inner{
        padding: 5.4rem 0 8rem;
        gap: 5.2rem;
    }

    .ms-head{
        gap: 1.3rem;
    }


    .model-select-group{
        gap: 2.5rem;
    }


    .models-swiper-container{
        height: 14rem;
    }

    .models-swiper-btn{
        display: none;
    }


    .models{
        width: 100%;
        overflow: visible;
        padding: 0 7.5rem;
    }


    .model-card-content{
        width: 100%;
        max-width: 42rem;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 4rem;
        flex: 1;
        padding: 0;
    }

    .model-icon-price, .specs-btn{
        display: flex;
        flex-direction: row;
    }

    .model-icon-price{
        gap: 2.5rem;
        align-items: center;
    }

    .model-icon-price b, .model-icon-price p{
        text-align: center;
    }

    .model-icon{
        height: 1.6rem;
        width: auto;
    }

    .price{
        display: inherit;
        flex-direction: column;
    }

    .new-price{
        font-size: 2.2rem;
        text-wrap: nowrap;
    }

    .old-price{
        font-size: 1.4rem;
        text-decoration: line-through;
    }

    .specs-btn{
        flex-direction: column;
        gap: 3rem;
        align-items: center;
        width: 100%;
        max-width: 100%;
    }

    .specs{
        display: inherit;
        flex-direction: row;
        gap: 2.8rem;
    }

    .spec-point{
        display: inherit;
        flex-direction: column;
        align-items: center;
        text-align: center;
        justify-content: space-between;
    }

    .spec-point span{
        font-size: 2.2rem;
    }

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

    .models-d{
        width: 0;
        height: 4.6rem;
        border-left: 1px solid rgba(0, 0, 0, 0.25);
    }

    .model-btn{
        max-width: 17rem;
        width: 100%;
        text-wrap: nowrap;
    }

    /* Scrn3 */
    .scrn3-bg{
        background-color: rgba(2, 4, 5, 1);
        background-image: url(/static/img/scrn3-bg.jpg);
        background-size: 160%;
        background-repeat: no-repeat;
        background-position: -16rem 210.4rem;
        position: relative;
    }

    .scrn3-bg::after{
        position: absolute;
        left: 0;
        right: 0;
        content: "";
        width: 100%;
        height: 9.6rem;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(2, 4, 5, 1));
        bottom: 25.7rem;
    }

    .scrn3{
        max-width: 44rem;
        width: 100%;
        margin: 0 auto;
        padding: 7rem 0 8.045rem;
        height: 262.2rem;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .actions-cards{
        display: flex;
        flex-direction: column;
        gap: 4rem;
        align-items: center;
    }

    .action-card{
        align-items: center;
        width: 100%;
        max-width: 100%;
        height: 66rem;
        padding: 0 4.5rem 8rem;
    }


    .action-card-content{
        position: relative;
        display: inherit;
        align-items: center;
        text-align: center;
        flex-direction: inherit;
        width: 100%;
        gap: 2rem;
        color: #fff;
    }

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

    .action-card-content p{
        font-size: 1.4rem;
        min-height: 5.1rem;
    }

    .spc-btn{
        max-width: 18.7rem;
        width: 100%;
    }

    .dealers-mp{
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-top: auto;
        gap: 2.5rem;
        color: #fff;
        max-width: 44rem;
        width: 100%;
    }

    .dealers-mp-content{
        display: inherit;
        flex-direction: inherit;
        gap: 2rem;
        text-align: center;
    }

    .dealers-mp-content p{
        font-size: 1.4rem;
    }


    .dealers-mp-group-btn{
        display: inherit;
        flex-direction: row;
        gap: 1rem;
        justify-content: center;
        width: 100%;
    }

    .dealer-mp-btn{
        max-width: 18.7rem;
        width: 100%;
    }

    /* Scrn4 */

    .scrn-4{
        height: 64rem;
        padding: 0 0 8.8rem;
    }

    .history-content{
        gap: 2rem;
        max-width: 44rem;
    }

    .history-content p{
        font-size: 1.4rem;
        line-height: 135%;
    }


    /* Scrn5 */
    .scrn-5{
        gap: 2.4rem;
        padding: 5.3rem 0 6.7rem;
        max-width: 44rem;
    }

    .news-container{
        width: 100%;
    }

    .news-cards{
        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.1);
        padding-top: 3rem;
    }

    .news-card{
        display: flex;
        flex-direction: column;
        gap: 3.8rem;
        max-width: 50rem;
    }



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


    .news-card-content p{
        font-size: 1.8rem;
        line-height: 100%;
    }

    .news-card-content span{
        font-size: 1.4rem;
        color: rgba(0, 0, 0, 0.45);
    }

    .news-btn{
        width: 100%;
        max-width: 100%;
    }


    /* Mobile Menu styles */

    .mobile-menu{
        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: 1.7rem;
        align-items: center;
        text-decoration: none;
        color: rgba(0, 0, 0, 1);
    }

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

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

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

    .head-of-mobile-menu .phone-number-header{
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 1.5rem;
    }

    .head-of-mobile-menu .phone-number-header a{
        text-decoration: none;
        color: #000;
        font-size: 1.8rem;
    }

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

    .navigation-m{
        font-size: 2rem;
        background-color: transparent;
        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(0, 0, 0, 1);
    }

    .arrow{
        border-left: 2px solid rgba(0, 0, 0, 1);
        border-bottom: 2px solid rgba(0, 0, 0, 1);
        height: 1rem;
        width: 1rem;
        transform: rotate(-45deg);
    }

    .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(0, 0, 0, 1);
    }

    .dropdown-menu-item-m .image-wrapper-mc{
        width: 100%;
        height: 100%;
        max-width: 21rem;
        max-height: 8.514rem;
    }

    .dropdown-menu-item-m .model-card-content{
        gap: 1.4rem;
        align-items: flex-start;
        color: #000;
    }

    .dropdown-menu-item-m .model-name-dropdown{
        height: 1.7rem;
        filter: brightness(0);
    }

    .dropdown-menu-item-m .price-container{
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }

    .dealers-dropdown ul{
        gap: 2.6rem;
        padding: 0.75rem 0 3.8rem;
    }

    .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;
    }

    .dropdown-m.open .dealers-dropdown{
        border-top: none;
    }

    .container-m .test-drive-header{
        display: flex;
        flex-direction: row;
        gap: 1.8rem;
        width: 100%;
        max-width: 44rem;
        margin: 0 auto;
        align-items: center;
        padding: 2.9rem 0 4.4rem;
    }

    .container-m .test-drive-header img{
        width: 3.2rem;
        height: 3.2rem;
    }

    .container-m .test-drive-header a{
        text-decoration: none;
        color: #000;
        font-size: 2.2rem;
        text-transform: uppercase;
    }

    .ext-adv-overlay{
        padding: 3rem 2rem 0;
    }

    .ext-adv-toggle-btn{
        padding: 1.1rem 2rem;
        font-size: 1.3rem;
    }

    .ext-adv-copy{
        margin-top: 2rem;
    }

    .ext-adv-title{
        font-size: 2.2rem;
        line-height: 2.6rem;
        margin-bottom: 0.8rem;
    }

    .ext-adv-subtitle{
        font-size: 1.4rem;
    }

    .ext-adv-marker{
        width: 1.6rem;
        height: 1.6rem;
    }

    .ext-adv-dot::after{
        /* inset: 0.35rem; */
    }

    .ext-adv-tail{
        width: 1.3rem;
        height: 1.7rem;
        margin-bottom: -0.3rem;
    }

    .ext-adv-label{
        font-size: 1.2rem;
        padding: 0.8rem 1.2rem;
    }

    .swiper-slide .car-model {
        max-height: 14rem;
    }


    /* Model page */

    .model-main-header{
        position: sticky;
    }

    .h2{
        font-size: 2.6rem;
        line-height: 3.4rem;
    }

    .model-section{
        max-width: 44rem;
    }

    .model-hero-container{
        height: 68rem;
    }


    .model-hero-container .banner-slide{
        background-image: url(/static/img/banner-model-mobile-bg.jpg);
        position: relative;
    }

    .model-hero-container .banner-slide::before{
        position: absolute;
        content: "";
        width: 100%;
        height: 37.6rem;
        background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.85));
        z-index: 1;
    }

    .left-side-banner{
        position: relative;
        z-index: 5;
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 1.7rem;
        padding: 6.654rem 2.2rem 0rem;
    }



    .left-side-banner .banner-content{
        display: inherit;
        flex-direction: inherit;
        align-items: center;
        text-align: center;
        color: #fff;
        gap: 1rem;
    }

    .left-side-banner .banner-content img{
        height: 2.238rem;
        width: 24.7rem;
        margin-bottom: 1.3rem;
    }

    .left-side-banner .banner-content p{
        font-size: 1.6rem;
    }

    .left-side-banner .banner-content span{
        font-size: 3rem;
    }

    .group-btns{
        display: flex;
        flex-direction: row;
        gap: 1.2rem;
    }

    .banner-model-btn{
        width: 100%;
    }

    .model-sticky-header{
        display: none;
    }


    /* Exterior advantages */
    .desktop-exterior-advantages-bg{
        display: none !important;
    }

    .mobile-exterior-advantages-bg{
        display: block;
    }

    .exterior-advantages-bg{
        /* height: 55rem; */
        min-height: 61rem;
        height: auto;
    }


    .ext-adv-overlay{
        padding: 5.3rem 2rem 0;
    }


    .ext-adv-toggle-btn{
        padding: 0.9rem 2.6rem;
    }


    .ext-adv-copy{
        margin-top: 2.6rem;
    }

    .ext-adv-title{
        margin-bottom: 0.3rem;
    }

    .ext-adv-subtitle{
        font-size: 1.4rem;
    }

    .ext-adv-markers{
        position: absolute;
        inset: 0;
        z-index: 3;
        pointer-events: none;
    }

    .ext-adv-marker{
        width: 2rem;
        height: 2rem;
    }

    .ext-adv-dot::after{
        /* inset: 1rem; */
        width: calc(100% - 0.65rem);
        height: calc(100% - 0.65rem);
    }

    /* Below 800px a marker tap opens the fancybox instead of this inline
       callout (see EXT_ADV_MOBILE_QUERY in script.js), so it stays hidden. */
    .ext-adv-marker.is-active .ext-adv-callout{
        opacity: 0;
        pointer-events: none;
    }


    /* Characteristics section */
    .char-bg{
        background-image: url(/static/img/char-m-bg.jpg);
    }

    .char{
        max-width: 44rem;
        height: 64.5rem;
        padding: 2rem 0 4rem;
    }

    .char-head{
        gap: 0.7rem;
    }

    .char-head p{
        font-size: 1.6rem;
    }

    .characteristics-points{
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 0rem;
        align-items: center;
    }



    .characteristics-row{
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: 0;
    }

    .exterior-2-points .characteristics-row{
        gap: 0;
    }

    .characteristics-row:first-child .characteristics-point{
        padding-bottom: 1rem;
    }

    .characteristics-row:last-child .characteristics-point {
        padding-top: 1rem;
    }

    .characteristics-point{
        display: inherit;
        flex-direction: column;
        gap: 0.6rem;
        text-align: center;
        /* width: 12rem; */
        flex: 1;
    }

    .characteristics-point span{
        font-size: 1.6rem;
        /* white-space: nowrap; */
    }

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

    .char-d{
        width: 0;
        /* height: 100%; */
        margin: 0 1rem;
        border-left: 1px solid rgba(255, 255, 255, 0.25);
    }



    .char-d-h{
        width: 100%;
        height: 0;
        border-left: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.25);
    }


    /* Color selection section */

    .color-selection-section{
        padding: 4rem 0 5rem;
        height: 64.6rem;
    }

    .css-head{
        position: static;
        display: inherit;
        flex-direction: inherit;
        align-items: inherit;
        gap: 1.5rem;
        z-index: 2;
    }


    .css-footer{
        gap: 1.8rem;
    }

    .color-selection{
        gap: 3rem;
    }

    .colors{

        gap: 1.5rem;
    }


    /* Exterior-2 section */

    .exterior-2-bg{
        background-image: url(/static/img/exterior-2-m-bg.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        position: relative;
    }


    .exterior-2{
        justify-content: space-between;
        min-height: 63rem;
        height: auto;
        padding: 5.4rem 0;
        max-width: 44rem;
    }

    .exterior-2 h2{
        /* display: none; */
        text-align: center;
    }

    .exterior-2-points{
        gap: 0;
        margin: 0 auto;
        padding: 0 2rem;
    }


    /* Interior section */
    .interior-bg{
        background: none;
        position: relative;
    }

    .interior-section{
        position: relative;
        height: auto;
        display: flex;
        flex-direction: column;
        justify-content: start;
        align-items: center;
        padding: 0;
        color: #fff;
        max-width: 100%;
    }

    .interior-markers-desktop{
        display: none;
    }

    .interior-head{
        position: absolute;
        top: 0rem;
        left: -2rem;
        right: -2rem;
        z-index: 5;
        align-items: center;
        text-align: center;
        gap: 0.8rem;
        padding: 4.1rem 1rem 6rem;
        pointer-events: none;
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 44%);
        bottom: 0;
        justify-content: space-between;
    }

    .height-auto .interior-head {
        top: -2rem;
    }

    .interior-section .interior-head{
        left: 0rem;
        right: 0rem;
    }


    .interior-head span{
        font-size: 1.4rem;
    }

    .interior-swiper{
        display: block;
        width: 100%;
    }

    .interior-swiper .swiper-wrapper{
        align-items: stretch;
    }

    .interior-slide{
        position: relative;
        overflow: hidden;
        flex-shrink: 0;
        width: 100%;
    }

    .interior-slide-media{
        position: relative;
        width: 100%;
        aspect-ratio: 958 / 980;
        overflow: hidden;
    }

    .interior-slide-img{
        position: absolute;
        top: 0;
        width: 200%;
        max-width: none;
        height: auto;
    }

    .interior-slide--left .interior-slide-img{
        left: 0;
    }

    .interior-slide--right .interior-slide-img{
        right: 0;
    }

    /* Загруженный кадр слайда показывается целиком, а не половиной общего */
    .interior-slide--photo .interior-slide-media{
        aspect-ratio: auto;
    }

    .interior-slide--photo .interior-slide-img{
        position: static;
        width: 100%;
        max-width: 100%;
        height: auto;
        display: block;
    }

    .interior-slide .ext-adv-markers{
        position: absolute;
        inset: 0;
    }

    .interior-progress-bars{
        position: absolute;
        left: 16.9rem;
        right: 16.9rem;
        bottom: 2rem;
        z-index: 4;
        display: flex;
        gap: 0.6rem;
    }

    .interior-progress-bar{
        flex: 1;
        height: 0.3rem;
        background: rgba(255, 255, 255, 0.35);
        cursor: pointer;
        position: relative;
        overflow: hidden;
    }

    .interior-progress-bar .fill{
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 0%;
        background: #fff;
    }

    .interior-progress-bar.active .fill,
    .interior-progress-bar.done .fill{
        width: 100%;
    }

    /* Climate Winter Pack section */
    .climate-winter-pack{
        gap: 2rem;
        padding: 6.6rem 0 6.2rem;
    }

    .cwp-head{
        gap: 0.7rem;
    }

    .cwp-head span{
        font-size: 1.4rem;
    }

    .cwp-table{
        width: 100%;
        table-layout: fixed;
        border-collapse: collapse;
    }

    .cwp-table th,
    .cwp-table td{
        padding: 2rem 0;
    }

    .cwp-thead span{
        font-size: 1.6rem;
    }

    .cwp-table th:first-child,
    .cwp-table td:first-child{
        text-align: left;
        width: 19rem;
        padding-right: 2.9rem;
    }

    .cwp-table th:nth-child(2),
    .cwp-table td:nth-child(2){
        border-left: 1px solid rgba(217, 217, 217, 1);
        border-right: 1px solid rgba(217, 217, 217, 1);
    }

    .cwp-thead th{
        border-top: 2px solid #000;
        border-bottom: 2px solid #000;
    }

    .cwp-thead-premium{
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 1.5rem;
    }

    .cwp-table tbody td{
        border-bottom: 1px solid rgba(217, 217, 217, 1);
    }

    .cwp-table td span{
        font-size: 1.4rem;
    }

    .table-icon{
        width: 1.7rem;
    }

    /* Tech 1 section */


    .tech-1{
        padding: 6.6rem 0 8.2rem;
        gap: 6.5rem;
    }

    .tech-head{
        gap: 2rem;
    }

    .tech-1-cards{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .tech-2-cards, .tech-3-cards{
        display: flex;
        flex-direction: column;
    }

    .tech-1-cards{
        gap: 4.3rem;
    }

    .tech-1-card , .tech-2-card, .tech-3-card{
        display: flex;
        flex-direction: column;
    }

    .tech-1-card{
        max-width: 21rem;
        gap: 1.9rem;
    }

    .tech-1-card .tech-card-content span{
        text-align: center;
    }

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

    .tech-card-content{
        gap: 0.7rem;
    }

    .tech-card-content h3{
        font-size: 2.6rem;
    }

    .tech-card-content span, .tech-2-footer span{
        color: rgba(255, 255, 255, 0.45);
        font-size: 1.4rem;
        text-align: start;
    }

    /* Tech 2 section */

    .tech-2{
        padding: 7rem 0 9.2rem;
        gap: 3.3rem;
    }

    .tech-head{
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        align-items: center;
        text-align: center;
        margin-bottom: 2.2rem;
    }

    .tech-head span{
        font-size: 1.4rem;
    }

    .tech-2-cards{
        gap: 5.4rem;
    }

    .tech-2-card{
        max-width: 44rem;
        gap: 3.3rem;
    }

    .tech-2-card .image-wrapper-tech{
        max-height: 23.9rem;
    }

    .tech-2-footer{
        display: none;
    }

    /* Tech 3 section */

    .tech-3{
        padding: 6rem 0 5.8rem;
        gap: 3.2rem;
    }


    .tech-3-card{
        max-width: 44rem;
        gap: 2rem;
    }

    .tech-3-card .image-wrapper-tech{
        max-height: 24rem;
    }

    .tech-3-tag{
        margin-top: 0.6rem;
        gap: 0.9rem;
    }

    /* Gallery section */

    .gallery-bg{
        background-color: white;
    }

    .gallery{
        display: flex;
        flex-direction: column;
        gap: 4rem;
        align-items: center;
        padding: 6rem 0 8rem;
    }

    .gallery-cards{
        display: flex;
        flex-direction: column;
        gap: 2rem;
        width: 100%;
    }

    .gallery-row{
        display: flex;
        gap: 2rem;
        width: 100%;
    }

    .gallery-row-top .gallery-card{
        width: 100%;
        height: 13.2rem;
    }

    .gallery-row-bottom{
        flex-wrap: wrap;
    }

    .gallery-row-bottom .gallery-card{
        width: 100%;
        height: 13.2rem;
    }

    .gallery-row-bottom .gallery-card:first-child{
        flex: 1 1 100%;
        width: 100%;
        height: 24rem;
    }

    .gallery-row-bottom .gallery-card:not(:first-child){
        flex: 1 1 calc(50% - 1rem);
        width: calc(50% - 1rem);
    }

    .gallery-card{
        position: relative;
        flex: 1 1 0;
        overflow: hidden;
    }

    .gallery-card img{
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .gallery-card-more::after,
    .gallery-card-more span{
        display: none;
    }

    /* Configurations section */

    .configurations{
        padding: 5.8rem 0 6.7rem;
        gap: 2rem;
    }

    .ccp-head{
        display: inherit;
        flex-direction: inherit;
        gap: 1.5rem;
        margin-bottom: 0.3rem;
        text-align: center;
    }

    .ccp-head span{
        font-size: 1.4rem;
    }

    .ccp-table-wrap{
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .ccp-table{
        width: max-content;
        min-width: 100%;
        table-layout: auto;
        border-collapse: collapse;
    }

    .ccp-table th,
    .ccp-table td{
        padding: 2rem 3.4rem;
        vertical-align: middle;
        text-align: left;
    }

    .ccp-table td span{
        font-size: 1.4rem;
    }

    .ccp-thead span{
        font-size: 1.6rem;
    }

    .ccp-table th:first-child,
    .ccp-table td:first-child{
        min-width: 18rem;
        padding: 2.5rem 2rem 2.5rem 0;
    }

    .ccp-table th:nth-child(2),
    .ccp-table td:nth-child(2){
        min-width: 20rem;
        border-left: 1px solid rgba(13, 14, 14, 0.15);
        border-right: 1px solid rgba(13, 14, 14, 0.15);
    }

    .ccp-table th:nth-child(3),
    .ccp-table td:nth-child(3){
        min-width: 20rem;
    }

    .ccp-thead th{
        border-top: 2px solid #000;
        border-bottom: 2px solid #000;
    }

    .ccp-thead-premium{
        display: inline-flex;
        align-items: center;
        justify-content: start;
        gap: 1.5rem;
    }

    .ccp-table tbody td{
        border-bottom: 1px solid rgba(13, 14, 14, 0.15);
    }

    .ccp-btn{
        width: 20rem;
    }

    .model-sticky-name {
        margin-right: 2rem;
    }

    .sticky-header .model-bar {
        overflow-x: auto;
        gap: 4rem;
    }

    .photo-panel-bg .bg-wrapper{
        /* height: 100vh; */
    }

    .photo-panel.middle {
        align-items: flex-end !important;
    }

    .full-height-colors .car-color-preview {
        top: 1rem;
        object-fit: contain;
    }
    
}
/* Cars lineup page (/cars/) — переиспользует карточки из выпадающего меню */
.cars-page-cards{
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 4rem;
    padding: 6.7rem 4rem 10.4rem;
}

.cars-page-cards .model-card-link{
    text-decoration: none;
    color: inherit;
}

.none{
    display: none;
}

/* Фон секций картинкой, а не background-image: браузер сам выбирает
   webp/avif и грузит лениво, а редактор загружает файл в админке. */
.bg-wrapper{
    position: absolute;
    inset: 0;
    z-index: -1;
    overflow: hidden;
}

.bg-wrapper img,
.bg-wrapper video{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Блок, внутрь которого положили .bg-wrapper — фон из макета уже не нужен */
.has-bg{
    position: relative;
    z-index: 1;
    background-image: none;
}

/* ---------------------------------------------------------------------------
   Шапка поверх первого экрана

   Пока баннер/герой под шапкой — она прозрачная со светлыми иконками,
   как только он ушёл вверх — обычная белая. Класс is-over-hero вешает
   IntersectionObserver в static/js/script.js, --header-height оттуда же.
   --------------------------------------------------------------------------- */

:root{
    --header-height: 8.3rem;
}

/* Первый экран уезжает под шапку, чтобы она лежала поверх него */
.banner-swiper-section{
    margin-top: calc(var(--header-height) * -1);
}

/* Парные иконки: по умолчанию видна тёмная */
.icon-light{
    display: none;
}

.sticky-header.is-over-hero{
    background-color: transparent;
    border-bottom-color: transparent;
}

.sticky-header.is-over-hero .icon-dark{
    display: none;
}

.sticky-header.is-over-hero .icon-light{
    display: block;
}

/* Белым красим только саму панель — выпадающий модельный ряд светлый */
.sticky-header.is-over-hero .header-main a,
.sticky-header.is-over-hero .header-main span,
.sticky-header.is-over-hero .header-main .models-nav span{
    color: #fff;
}

.sticky-header.is-over-hero .header-main .lng-d{
    border-left-color: rgba(255, 255, 255, 0.5);
}

.sticky-header.is-over-hero .burger-icon{
    filter: invert(1);
}

/* Пока дропдаун открыт, шапке нужен непрозрачный фон */
.sticky-header.is-over-hero.force-front{
    background-color: #fff;
    border-bottom-color: rgba(217, 217, 217, 1);
}

.sticky-header.is-over-hero.force-front .icon-dark{ display: block; }
.sticky-header.is-over-hero.force-front .icon-light{ display: none; }
.sticky-header.is-over-hero.force-front .burger-icon{ filter: none; }

.sticky-header.is-over-hero.force-front .header-main a,
.sticky-header.is-over-hero.force-front .header-main span,
.sticky-header.is-over-hero.force-front .header-main .models-nav span{
    color: rgba(0, 0, 0, 1);
}

.sticky-header.is-over-hero.force-front .header-main .lng-d{
    border-left-color: rgba(0, 0, 0, 0.3);
}

/* ---------------------------------------------------------------------------
   Панель модели внутри шапки

   На странице модели шапка держит две строки: обычное меню — пока виден
   первый экран, и панель модели (логотип, якоря секций, кнопки) — дальше.
   --------------------------------------------------------------------------- */

.sticky-header .model-bar{
    display: none;
}

.sticky-header.has-model-bar:not(.is-over-hero) .header-primary{
    display: none;
}

.sticky-header.has-model-bar:not(.is-over-hero) .model-bar{
    display: flex;
}

.sticky-header.has-model-bar:not(.is-over-hero){
    border-bottom-color: rgba(103, 176, 196, 1);
}

/* Пока открыт модельный ряд, панель модели не показываем */
.sticky-header.has-model-bar.force-front .header-primary{
    display: flex;
}

.sticky-header.has-model-bar.force-front .model-bar{
    display: none;
}

/* ---------------------------------------------------------------------------
   Блоки страниц JAECOO J7 / J5
   --------------------------------------------------------------------------- */

/* Плитки «значение + подпись» */
.stat-tiles-bg{
    background-color: rgba(242, 243, 244, 1);
}

.stat-tiles{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4rem;
    padding: 9rem 0 9.6rem;
    max-width: 153rem;
}

.stat-tiles-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(28rem, 1fr));
    gap: 1.5rem;
    width: 100%;
}

.stat-tiles.tiles-2 .stat-tiles-grid{ grid-template-columns: repeat(2, 1fr); }
.stat-tiles.tiles-3 .stat-tiles-grid{ grid-template-columns: repeat(3, 1fr); }
.stat-tiles.tiles-4 .stat-tiles-grid{ grid-template-columns: repeat(4, 1fr); }

.stat-tile{
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    padding: 3rem 2.6rem;
    background-color: #fff;
    min-height: 19.2rem;
}

.stat-tile-value{
    font-size: 3.2rem;
    line-height: 1.1;
}

.stat-tile-label{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.3;
    color: rgba(13, 14, 14, 0.65);
}

.stat-tiles-note{
    font-size: 1.6rem;
    text-align: center;
    max-width: 110rem;
    color: rgba(13, 14, 14, 0.65);
}

/* Две колонки сравнения комплектаций */
.compare-columns-bg{
    background-color: #fff;
}

.compare-columns{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4.4rem;
    padding: 9rem 0 9.6rem;
    max-width: 153rem;
}

.compare-columns-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(38rem, 1fr));
    gap: 1.5rem;
    width: 100%;
}

.compare-column{
    display: flex;
    flex-direction: column;
    gap: 2rem;
    padding: 3.6rem 3.2rem;
    background-color: rgba(242, 243, 244, 1);
}

.compare-column-title{
    font-size: 2.4rem;
    text-transform: uppercase;
}

.compare-column-count{
    display: flex;
    align-items: baseline;
    gap: 1.2rem;
    padding: 1.6rem 0;
    border-top: 1px solid rgba(13, 14, 14, 0.15);
    border-bottom: 1px solid rgba(13, 14, 14, 0.15);
}

.compare-column-count b{
    font-size: 4.4rem;
    line-height: 1;
}

.compare-column-count span{
    font-size: 1.6rem;
    color: rgba(13, 14, 14, 0.65);
}

.compare-column-list{
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
    list-style: none;
}

.compare-column-list li{
    position: relative;
    padding-left: 1.8rem;
    font-size: 1.6rem;
    line-height: 1.35;
}

.compare-column-list li::before{
    content: "";
    position: absolute;
    left: 0;
    top: 0.9rem;
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 50%;
    background-color: rgba(103, 176, 196, 1);
}

.compare-columns-note{
    font-size: 1.5rem;
    color: rgba(13, 14, 14, 0.65);
    text-align: center;
}

/* Способы зарядки */
/* Таблица комплектации с раскрывающимися группами */
.accordion-table-bg{
    background-color: rgba(242, 243, 244, 1);
}

.accordion-table-section{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
    padding: 9rem 0 9.6rem;
    max-width: 153rem;
}

.accordion-table-sub{
    font-size: 1.6rem;
    color: rgba(13, 14, 14, 0.65);
}

.accordion-table{
    width: 100%;
    margin-top: 2.4rem;
}

.accordion-table-head,
.accordion-row{
    display: grid;
    grid-template-columns: minmax(0, 1fr) 48rem;
}

.accordion-table-head{
    padding: 1.8rem 2rem;
    font-size: 2rem;
    text-transform: uppercase;
    border-top: 1px solid rgba(13, 14, 14, 0.5);
    border-bottom: 1px solid rgba(13, 14, 14, 0.5);
}

.accordion-table-column{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.8rem;
}

.accordion-group{
    border-bottom: 1px solid rgba(13, 14, 14, 0.15);
}

.accordion-group-head{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 1.8rem 2rem;
    background: none;
    border: none;
    font-size: 1.8rem;
    text-transform: uppercase;
    text-align: left;
    cursor: pointer;
}

.accordion-arrow{
    width: 1.4rem;
    height: 1.4rem;
    border-right: 2px solid rgba(13, 14, 14, 1);
    border-bottom: 2px solid rgba(13, 14, 14, 1);
    transform: rotate(45deg) translate(-0.2rem, -0.2rem);
    transition: transform 0.25s ease;
    flex-shrink: 0;
}

.accordion-group.is-open .accordion-arrow{
    transform: rotate(225deg) translate(-0.2rem, -0.2rem);
}

.accordion-group-body{
    display: none;
}

.accordion-group.is-open .accordion-group-body{
    display: block;
}

.accordion-row{
    align-items: center;
    padding: 1.4rem 2rem;
    border-top: 1px solid rgba(13, 14, 14, 0.1);
}

.accordion-row-name{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.4rem;
}

.accordion-row-value{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    border-left: 1px solid rgba(13, 14, 14, 0.1);
    align-self: stretch;
}


.pt-0 {
    padding-top: 0px !important;
  }
  
  .pt-1 {
    padding-top: 1rem;
  }
  
  .pt-2 {
    padding-top: 2rem;
  }
  
  .pt-3 {
    padding-top: 3rem;
  }
  
  .pt-4 {
    padding-top: 4rem;
  }
  
  .pt-5 {
    padding-top: 5rem;
  }
  
  .pt-6 {
    padding-top: 6rem;
  }
  
  .pt-7 {
    padding-top: 7rem;
  }
  
  .pt-8 {
    padding-top: 8rem;
  }
  
  .pt-9 {
    padding-top: 9rem;
  }
  
  .pt-10 {
    padding-top: 10rem;
  }
  
  .pb-0 {
    padding-bottom: 0px !important;
  }
  
  .pb-1 {
    padding-bottom: 1rem;
  }
  
  .pb-2 {
    padding-bottom: 2rem;
  }
  
  .pb-3 {
    padding-bottom: 3rem;
  }
  
  .pb-4 {
    padding-bottom: 4rem;
  }
  
  .pb-5 {
    padding-bottom: 5rem;
  }
  
  .pb-6 {
    padding-bottom: 6rem;
  }
  
  .pb-7 {
    padding-bottom: 7rem;
  }
  
  .pb-8 {
    padding-bottom: 8rem;
  }
  
  .pb-9 {
    padding-bottom: 9rem;
  }
  
  .pb-10 {
    padding-bottom: 10rem;
  }
  
  .pb-14 {
    padding-bottom: 14rem;
  }
  
  .mt-auto {
    margin-top: auto;
  }
  
  .mt-0 {
    margin-top: 0px;
  }
  
  .mt-1 {
    margin-top: 1rem;
  }
  
  .mt-2 {
    margin-top: 2rem;
  }
  
  .mt-3 {
    margin-top: 3rem;
  }
  
  .mt-4 {
    margin-top: 4rem;
  }
  
  .mt-5 {
    margin-top: 5rem;
  }
  
  .mt-6 {
    margin-top: 6rem;
  }
  
  .mt-7 {
    margin-top: 7rem;
  }
  
  .mt-8 {
    margin-top: 8rem;
  }
  
  .mt-9 {
    margin-top: 9rem;
  }
  
  .mt-10 {
    margin-top: 10rem;
  }
  
  .mb-0 {
    margin-bottom: 0px !important;
  }
  
  .mb-1 {
    margin-bottom: 1rem;
  }
  
  .mb-2 {
    margin-bottom: 2rem;
  }
  
  .mb-3 {
    margin-bottom: 3rem;
  }
  
  .mb-4 {
    margin-bottom: 4rem;
  }
  
  .mb-5 {
    margin-bottom: 5rem;
  }
  
  .mb-6 {
    margin-bottom: 6rem;
  }
  
  .mb-7 {
    margin-bottom: 7rem;
  }
  
  .mb-8 {
    margin-bottom: 8rem;
  }
  
  .mb-9 {
    margin-bottom: 9rem;
  }
  
  .mb-10 {
    margin-bottom: 10rem;
  }
  
  .ml-auto {
    margin-left: auto;
  }
  
  .ml-1 {
    margin-left: 1rem;
  }
  
  .ml-2 {
    margin-left: 2rem;
  }
  
  .ml-3 {
    margin-left: 3rem;
  }
  
  .ml-4 {
    margin-left: 4rem;
  }
  
  .ml-5 {
    margin-left: 5rem;
  }
  
  .ml-6 {
    margin-left: 6rem;
  }
  
  .ml-7 {
    margin-left: 7rem;
  }
  
  .ml-8 {
    margin-left: 8rem;
  }
  
  .ml-9 {
    margin-left: 9rem;
  }
  
  .ml-10 {
    margin-left: 10rem;
  }
  
  .mr-auto {
    margin-right: auto;
  }
  
  .w-100 {
    width: 100%;
  }
  
  .mx-auto {
    margin-left: auto;
    margin-right: auto;
  }

@media (max-width: 800px) {
    /* Блоки страниц JAECOO J7 / J5 */
    .stat-tiles,
    .compare-columns,
    .accordion-table-section{
        padding: 6rem 1.6rem;
        gap: 3rem;
    }

    .stat-tiles-grid,
    .stat-tiles.tiles-2 .stat-tiles-grid,
    .stat-tiles.tiles-3 .stat-tiles-grid,
    .stat-tiles.tiles-4 .stat-tiles-grid{
        grid-template-columns: repeat(2, 1fr);
        gap: 0.8rem;
    }

    .stat-tile{
        padding: 2rem 1.6rem;
        min-height: 13rem;
    }

    .stat-tile-value{ font-size: 2.4rem; }
    .stat-tile-label{ font-size: 1.3rem; }
    .stat-tiles-note{ font-size: 1.3rem; }

    .compare-columns-grid{
        grid-template-columns: 1fr;
        gap: 0.8rem;
    }

    .compare-column{ padding: 2.4rem 2rem; gap: 1.6rem; }
    .compare-column-title{ font-size: 2rem; }
    .compare-column-count b{ font-size: 3.4rem; }
    .compare-column-list li{ font-size: 1.4rem; }


    .accordion-table-head,
    .accordion-row{
        grid-template-columns: minmax(0, 1fr) 8rem;
    }

    .accordion-table-head{ padding: 1.4rem 1.2rem; font-size: 1.5rem; }
    .accordion-group-head{ padding: 1.4rem 1.2rem; font-size: 1.5rem; }
    .accordion-row{ padding: 1.2rem; }
    .accordion-row-name{ font-size: 1.3rem; }
    .accordion-arrow{ width: 1rem; height: 1rem; }
}

/* Светлый вариант карточек (.tech-1) и сетка в две колонки.
   Классы вешаются через tag_class секции: «full cols-2 light». */
.tech-1-bg.light{
    background-color: rgba(242, 243, 244, 1);
}

.tech-1-bg.brown {
    background-color: #201E1E;
}

.tech-1-bg.beige {
    background-color: #d9d9d9;
    color: #000;
}

.light .tech-1,
.light .tech-card-content h3,
.beige .tech-1,
.beige .tech-card-content h3,
.beige .tech-card-content span
{
    color: rgba(13, 14, 14, 1);
}

.light .tech-card-content span{
    color: rgba(13, 14, 14, 0.65);
}

.full.cols-2 .tech-1-cards{
    grid-template-columns: repeat(2, 1fr);
}

.full.cols-2 .tech-1-cards .tech-card-content{
    text-align: start;
}

.full.cols-2 .full .tech-1-card {
    gap: 3.4rem;
}

.full.cols-2 .image-wrapper-tech{
    max-height: 40.7rem;
}

@media (max-width: 800px) {
    .full.cols-2 .tech-1-cards{
        grid-template-columns: 1fr;
    }

    .full.cols-2 .image-wrapper-tech{
        max-height: 22rem;
    }
}



/* ---------------------------------------------------------------------------
   Режимы SHS — зигзаг-таймлайн
   --------------------------------------------------------------------------- */
.hybrid-scenarios-bg{
    background-color: #201E1E;
    color: #fff;
}

.hybrid-scenarios{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6rem;
    padding: 9rem 0 9.6rem;
    max-width: 188rem;
    width: 100%;
}

.hybrid-scenarios .tech-head h2{
    color: #fff;
}

.hybrid-scenarios .tech-head span{
    color: rgba(255, 255, 255, 0.55);
}

.hybrid-timeline{
    position: relative;
    display: grid;
    grid-template-columns: repeat(var(--hybrid-steps, 6), 1fr);
    width: 100%;
    padding: 0 2rem;
    min-height: 47rem;
    align-items: center;
}

/* шкала с засечками по центру */
.hybrid-axis{
    position: absolute;
    left: 2rem;
    right: 2rem;
    top: 50%;
    display: grid;
    grid-template-columns: repeat(var(--hybrid-steps, 6), 1fr);
    /* border-top: 1px solid rgba(255, 255, 255, 0.28); */
    transform: translateY(-50%) translateX(9.5%);
}

.hybrid-axis-seg{
    display: flex;
    gap: 2rem;
    height: 2.7rem;
}

.hybrid-axis-seg:first-child {

}

.hybrid-axis-seg i{
    width: 1px;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.28);
}

.hybrid-step{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 1rem;
    height: 100%;
    max-width: 29rem;
}

/* кадр сверху, название режима под шкалой */
.hybrid-step--up{
    flex-direction: column;
    justify-content: flex-start;
}

/* кадр снизу, название режима над шкалой */
.hybrid-step--down{
    flex-direction: column-reverse;
    justify-content: end;
}

.hybrid-card{
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 29rem;
    background: url('/static/img/hybrid.png');
    overflow: hidden;
    background-size:100% 20.5rem;
    background-repeat: no-repeat;
}

.hybrid-step--down .hybrid-card {
    background: url('/static/img/hybrid_reverse.png');
    background-size: contain;
    background-size:100% 20.5rem;
    background-repeat: no-repeat;
}


.hybrid-card.card-1 {

}



.hybrid-step--down .hybrid-card{
    flex-direction: column-reverse;
}

.hybrid-card-photo{
    display: block;
    width: 100%;
    /* aspect-ratio: 29 / 16; */
    overflow: hidden;
    /* max-width: 29rem; */
}

.hybrid-card-photo img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.hybrid-card-caption{
    display: block;
    padding: 2rem 1.4rem;
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.3rem;
    line-height: 1.3;
    text-align: center;
    color: rgba(255, 255, 255, 0.9);
}

/* короткий поводок от карточки к шкале */
.hybrid-step-line{
    display: block;
    width: 1px;
    flex: 0 0 4.4rem;
    background-color: rgba(255, 255, 255, 0.35);
    transform: translateX(-1px);
}

.hybrid-step-name{
    display: block;
    flex: 0 0 auto;
    padding: 2.5rem 0 0;
    font-size: 1.5rem;
    line-height: 1.25;
    text-align: center;
    color: rgba(255, 255, 255, 0.9);
}

.hybrid-step--down .hybrid-step-name{
    padding: 0 0 1.2rem;
}

/* ---------------------------------------------------------------------------
   Способы зарядки — тёмные карточки с акцентом
   --------------------------------------------------------------------------- */
.charging-cards-bg{
    background-color: rgba(13, 14, 14, 1);
    color: #fff;
}

.charging-cards{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5rem;
    padding: 9rem 0 9.6rem;
    max-width: 153rem;
}

.charging-cards .tech-head h2{
    color: #fff;
}

.charging-cards .tech-head span{
    color: rgba(255, 255, 255, 0.55);
}

.charging-cards-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(34rem, 1fr));
    gap: 4.4rem;
    width: 100%;
}

.charging-card{
    --accent: rgba(58, 160, 173, 1);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 3rem;
    padding: 7.8rem 3.4rem 10.7rem;
    background-color: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.12);
}

/* цвета из макета: бирюзовый, синий, оранжевый */
.charging-card:nth-child(2){ --accent: rgba(60, 124, 208, 1); }
.charging-card:nth-child(3){ --accent: rgba(232, 163, 61, 1); }

.charging-card-icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 7.4rem;
    height: 7.4rem;
    /* margin-bottom: 1.6rem; */
    border-radius: 50%;
    background-color: var(--accent);
    color: #fff;
}

.charging-card-icon svg{
    width: 3.4rem;
    height: 3.4rem;
}

.charging-card-icon img{
    width: 3.4rem;
    height: 3.4rem;
    object-fit: contain;
}

.charging-card-value{
    font-size: 3.2rem;
    line-height: 1.1;
    color: var(--accent);
}

.charging-card-title{
    font-size: 3.2rem;
    text-transform: uppercase;
}

.charging-card-time{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 2rem;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.75);
}

.charging-card-text{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.3rem;
    line-height: 1.5;
    max-width: ;
    color: rgba(255, 255, 255, 0.45);
}

.charging-cards-note{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.3rem;
    line-height: 1.5;
    text-align: center;
    max-width: 110rem;
    color: rgba(255, 255, 255, 0.45);
}

/* ---------------------------------------------------------------------------
   Кадр во всю ширину с плавающей панелью текста
   --------------------------------------------------------------------------- */
.photo-panel-bg{
    position: relative;
    background-color: rgba(13, 14, 14, 1);
}

.photo-panel-bg .bg-wrapper {
    position: static;
}

.photo-panel{
    position: absolute;
    display: flex;
    width: 100%;
    max-width: 153rem;
    min-height: 68rem;
    top: 0;
    inset: 0;
    padding: 6rem 0;
    z-index: 1;
}

.photo-panel.left   { justify-content: flex-start; }
.photo-panel.right  { justify-content: flex-end; }
.photo-panel.center { justify-content: center; }

.photo-panel.top    { align-items: flex-start; }
.photo-panel.middle { align-items: center; }
.photo-panel.bottom { align-items: flex-end; }

.photo-panel-card{
    display: flex;
    flex-direction: column;
    gap: 1.8rem;
    width: 100%;
    max-width: 50rem;
    padding: 5rem 8rem 10rem;
}

.photo-panel-card--light{
    background-color: rgba(255, 255, 255, 0.94);
    color: rgba(13, 14, 14, 1);
}

.photo-panel-card--dark{
    background-color: rgba(13, 14, 14, 0.82);
    color: #fff;
}

.photo-panel-title{
    font-size: 3.2rem;
    line-height: 1.25;
    text-transform: uppercase;
}

.photo-panel-text{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.6;
}

.photo-panel-card--light .photo-panel-text{
    color: rgba(13, 14, 14, 0.72);
}

.photo-panel-card--dark .photo-panel-text{
    color: rgba(255, 255, 255, 0.72);
}

.photo-panel-note{
    position: relative;
    z-index: 1;
    padding: 0 2rem 4rem;
    font-size: 1.4rem;
    text-align: center;
    color: rgba(255, 255, 255, 0.55);
}

/* ---------------------------------------------------------------------------
   Карточки со списком под кадром (ADAS)
   --------------------------------------------------------------------------- */
.cards-list-bg{
    background-color: rgba(242, 243, 244, 1);
}

.cards-list-bg.dark{
    background-color: rgba(13, 14, 14, 1);
}

.cards-list{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5rem;
    padding: 9rem 0 9.6rem;
    max-width: 153rem;
}

.cards-list-bg.dark .cards-list{
    color: #fff;
}

.cards-list-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(32rem, 1fr));
    gap: 4.6rem;
    width: 100%;
}

.cards-list-bg.cols-2 .cards-list-grid{
    grid-template-columns: repeat(2, 1fr);
}

.cards-list-card{
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
}

.cards-list-media{
    width: 100%;
    aspect-ratio: 480 / 263;
    overflow: hidden;
}

.cards-list-media img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.cards-list-title{
    font-size: 1.9rem;
    line-height: 1.25;
    text-transform: uppercase;
}

.cards-list-items{
    display: flex;
    flex-direction: column;
    gap: 1.1rem;
    list-style: none;
}

.cards-list-items li{
    position: relative;
    padding-left: 1.8rem;
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.35rem;
    line-height: 1.5;
    color: rgba(13, 14, 14, 0.7);
}

.cards-list-bg.dark .cards-list-items li{
    color: rgba(255, 255, 255, 0.6);
}

.cards-list-items li::before{
    content: "";
    position: absolute;
    left: 0;
    top: 0.7rem;
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 50%;
    background-color: rgba(58, 160, 173, 1);
}

.cards-list-items li b,
.cards-list-items li strong{
    font-family: "Roboto", sans-serif;
    font-weight: 500;
    color: rgba(13, 14, 14, 1);
}

.cards-list-bg.dark .cards-list-items li b,
.cards-list-bg.dark .cards-list-items li strong{
    color: #fff;
}

.cards-list-note{
    font-size: 1.4rem;
    text-align: center;
    color: rgba(13, 14, 14, 0.6);
}

@media (max-width: 800px) {
    .hybrid-scenarios,
    .charging-cards,
    .cards-list{
        padding: 6rem 1.6rem;
        gap: 3.4rem;
    }

    /* на мобильных таймлайн разворачивается в одну колонку без шкалы */
    .hybrid-timeline{
        /* grid-template-columns: 1fr; */
        min-height: 55rem;
        padding: 0;
        gap: 0;
        overflow-x: auto;
    }

    .hybrid-axis{/* display: none; */transform: translateY(-50%);gap: 3.7rem;left: 14.5rem;right: 0;}

    .hybrid-card-caption {
        padding: 1.3rem 0 3.2rem;
    }

    .hybrid-step--down .hybrid-card-caption {
        padding: 3.2rem 0 1.3rem;
    }

    .hybrid-step{
        flex-direction: column;
        padding: 0;
        width: 29rem;
    }

    /* .hybrid-step--down .hybrid-card{ flex-direction: column; } */
    .hybrid-step-line{/* display: none; */flex: 0 0 6.8rem;/* background: transparent; */}
    .hybrid-card{max-width: 100%;background-size: 100% 21rem;}

    .hybrid-step-name{
        padding: 2.4rem 0 0;
        font-size: 1.6rem;
    }
    .hybrid-step--down .hybrid-step-name{
        padding: 0 0 2.4rem;
    }

    .charging-cards-grid{
        grid-template-columns: 1fr;
        gap: 1.6rem;
    }

    .charging-card{ padding: 3.4rem 2.4rem; }
    .charging-card-icon{ width: 6.4rem; height: 6.4rem; }
    .charging-card-value{ font-size: 2.8rem; }
    .charging-card-title{ font-size: 1.7rem; }
    .charging-card-text{ font-size: 1.3rem; }

    .photo-panel{
        min-height: 0;
        padding: 0rem;
        align-items: flex-end;
    }

    .photo-panel-card{ max-width: 100%; padding: 5rem 7rem 6rem; }

    .photo-panel-card--light{
        background-color: rgba(255, 255, 255, 1);
    }
    .photo-panel-title{ font-size: 3.2rem; }

    .cards-list-grid,
    .cards-list-bg.cols-2 .cards-list-grid{
        grid-template-columns: 1fr;
        gap: 2.4rem;
    }

    .cards-list-title{ font-size: 1.8rem; }
    .cards-list-items li{ font-size: 1.4rem; }
}

/* ---------------------------------------------------------------------------
   Плитки «кадр + значение + подпись»
   --------------------------------------------------------------------------- */
.stat-cards-bg{
    position: relative;
    background-color: rgba(13, 14, 14, 1);
    color: #fff;
}

.stat-cards-bg.light{
    background-color: rgba(242, 243, 244, 1);
    color: rgba(13, 14, 14, 1);
}

.stat-cards{
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5rem;
    padding: 9rem 0 9.6rem;
    max-width: 153rem;
}

.stat-cards .tech-head h2{
    color: inherit;
}

.stat-cards .tech-head span{
    color: rgba(255, 255, 255, 0.55);
}

.stat-cards-bg.light .tech-head span{
    color: rgba(13, 14, 14, 0.6);
}

.stat-cards-grid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(26rem, 1fr));
    gap: 2.6rem;
    width: 100%;
}

.stat-cards-bg.cols-3 .stat-cards-grid{ grid-template-columns: repeat(3, 1fr); }
.stat-cards-bg.cols-4 .stat-cards-grid{ grid-template-columns: repeat(4, 1fr); }

.stat-card{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 1rem;
}

.stat-card-media{
    width: 100%;
    aspect-ratio: 350 / 197;
    margin-bottom: 0.8rem;
    overflow: hidden;
}

.stat-card-media img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.stat-card-value{
    font-size: 2.4rem;
    line-height: 1.2;
    text-transform: uppercase;
}

.stat-card-label{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.4;
    color: rgba(255, 255, 255, 0.45);
}

.stat-cards-bg.light .stat-card-label{
    color: rgba(13, 14, 14, 0.6);
}

.stat-cards-note{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.3rem;
    text-align: center;
    max-width: 110rem;
    color: rgba(255, 255, 255, 0.45);
}

/* ---------------------------------------------------------------------------
   Текст с плитками слева и кадром справа
   --------------------------------------------------------------------------- */
.tiles-photo-bg{
    background-color: rgba(13, 14, 14, 1);
    color: #fff;
}

.tiles-photo-bg.light{
    background-color: rgba(242, 243, 244, 1);
    color: rgba(13, 14, 14, 1);
}

.tiles-photo{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5rem;
    padding: 9rem 0 9.6rem;
    max-width: 153rem;
}

.tiles-photo .tech-head h2{
    color: inherit;
}

.tiles-photo .tech-head span{
    color: rgba(255, 255, 255, 0.55);
}

.tiles-photo-bg.light .tech-head span{
    color: rgba(13, 14, 14, 0.6);
}

.tiles-photo-cols{
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 5rem;
    width: 100%;
    align-items: center;
}


.tiles-photo-cols {
    display: flex;
    justify-content: space-between;
    gap: 15rem;
}

.divider {
    align-self: stretch;
    width: 2px;
    background: rgba(255, 255, 255, 0.1);
}

.tiles-photo {
    padding-bottom: 21rem;
}

.tiles-photo-caption {
    font-size: 3.2rem;
    font-weight: 400;
}

.tiles-photo-bg.photo-left .tiles-photo-left { order: 2; }
.tiles-photo-bg.photo-left .tiles-photo-right{ order: 1; }

.tiles-photo-left{
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

.tiles-photo-lead h2,
.tiles-photo-lead h3{
    margin-bottom: 1.4rem;
    font-size: 3.2rem;
    line-height: 1.25;
    text-transform: uppercase;
}

.tiles-photo-lead p{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.55;
    color: rgba(255, 255, 255,1);
}

.tiles-photo-bg.light .tiles-photo-lead p{
    color: rgba(13, 14, 14, 0.6);
}

.tiles-photo-grid{
    display: grid;
    gap: 2rem;
}

.tiles-photo-grid.tiles-2{ grid-template-columns: repeat(2, 1fr); }
.tiles-photo-grid.tiles-3{ grid-template-columns: repeat(3, 1fr); }

.tiles-photo-tile{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 0.6rem;
    padding: 1.8rem 1.6rem;
    min-height: 8.6rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 1rem;
}

.tiles-photo-bg.light .tiles-photo-tile{
    border-color: rgba(13, 14, 14, 0.15);
}

.tiles-photo-value{
    font-size: 2.6rem;
    line-height: 1.2;
    font-weight: 400;
    text-transform: uppercase;
}

.tiles-photo-label{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.35;
    color: rgba(255, 255, 255, 0.45);
}

.tiles-photo-bg.light .tiles-photo-label{
    color: rgba(13, 14, 14, 0.6);
}

.tiles-photo-right{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.4rem;
}

.tiles-photo-media{
    width: 100%;
}

.tiles-photo-media img{
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
}

.tiles-photo-caption{
    font-size: 3.2rem;
    line-height: 1.25;
    text-align: center;
    text-transform: uppercase;
}

/* ---------------------------------------------------------------------------
   Панель поверх кадра внутри секции с точками
   --------------------------------------------------------------------------- */
.hotspot-panels{
    position: absolute;
    inset: 0;
    z-index: 4;
    pointer-events: none;
}

.hotspot-panel{
    position: absolute;
    right: 0;
    top: calc(var(--y, 50) * 1%);
    display: flex;
    flex-direction: column;
    gap: 1.8rem;
    width: 50rem;
    padding: 6rem 8rem 6.3rem;
    background-color: rgba(255, 255, 255, 1);
    color: rgba(13, 14, 14, 1);
    pointer-events: auto;
}

.hotspot-panel-title{
    font-size: 3.2rem;
    line-height: 1.25;
    text-transform: uppercase;
}

.hotspot-panel-list{
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
    list-style: none;
}

.hotspot-panel-list li{
    position: relative;
    padding-left: 1.6rem;
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.8rem;
    line-height: 1.4;
    color: rgba(13, 14, 14, 0.7);
}

.hotspot-panel-list li::before{
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 50%;
    background-color: rgba(103, 176, 196, 1);
}

@media (max-width: 800px) {
    .stat-cards,
    .tiles-photo{
        padding: 6rem 1.6rem;
        gap: 3.4rem;
    }

    .stat-cards-grid,
    .stat-cards-bg.cols-3 .stat-cards-grid,
    .stat-cards-bg.cols-4 .stat-cards-grid{
        grid-template-columns: repeat(2, 1fr);
        gap: 1.6rem;
    }

    .stat-card-value{ font-size: 1.8rem; }
    .stat-card-label{ font-size: 1.2rem; }

    .tiles-photo-cols{
        grid-template-columns: 1fr;
        gap: 3rem;
        flex-direction: column;
    }

    .tiles-photo-bg.photo-left .tiles-photo-left,
    .tiles-photo-bg.photo-left .tiles-photo-right{ order: 0; }

    .tiles-photo-lead h2,
    .tiles-photo-lead h3{ font-size: 2rem; }
    .tiles-photo-caption{ font-size: 1.6rem; }

    /* на мобильных панель уходит из-под кадра вниз, чтобы не перекрывать его */
    .hotspot-panels{
        position: static;
        display: flex;
        flex-direction: column;
        gap: 1.2rem;
        padding: 2rem 0 0;
    }

    .hotspot-panel{
        position: static;
        width: 100%;
    }

    .full .tech-1-cards {
        grid-template-columns: 1fr;
    }

    .full.tech-1 {
        padding: 6rem 0;
        gap: 3rem;
    }

    .full .image-wrapper-tech {
        max-height: auto;
    }

    .hybrid-step--down {
        flex-direction: column-reverse;
    }

    .hybrid-axis-seg i:first-child {/* height: 6.8rem; *//* display: none; */background: transparent;}
    .height-auto, .height-auto .exterior-2 {height: auto; min-height: auto;}
    .height-auto .bg-wrapper {position: static;}
    .height-auto .exterior-2 {position: absolute; inset: 2rem; padding: 0;}

    .exterior-2 h2 {font-size: 2.6rem;}
    .exterior-2:has(.interior-swiper){height: auto;min-height: auto;}
    .exterior-2:has(.interior-swiper) {width: 100%;padding: 0; max-width: 100%;}
    .exterior-2-bg:has(.interior-swiper) .bg-wrapper {display: none;}
    .exterior-2:has(.interior-swiper) .interior-head{left: 0; right: 0;top: 0;}
    .exterior-2:has(.interior-swiper)>.ext-adv-markers{display: none;}
}

/* Переключение кадров в блоке «кадр с панелью текста» */
.photo-panel-stack{
    position: absolute;
    inset: 0;
    z-index: -1;
}

.photo-panel-photo{

    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    /* transition: opacity 0.45s ease; */
}

.photo-panel-photo:last-child {
    position: absolute;
    inset: 0;
}

.photo-panel-photo.is-active{
    opacity: 1;
}

.photo-panel-toggle{
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 0.6rem;
}

.photo-panel-switch{
    position: relative;
    flex: 0 0 auto;
    width: 4.6rem;
    height: 2.4rem;
    padding: 0;
    border: none;
    border-radius: 1.2rem;
    background-color: rgba(13, 14, 14, 0.2);
    cursor: pointer;
    transition: background-color 0.25s ease;
}

.photo-panel-card--dark .photo-panel-switch{
    background-color: rgba(255, 255, 255, 0.25);
}

.photo-panel-switch[aria-pressed="true"]{
    background-color: rgba(103, 176, 196, 1);
}

.photo-panel-knob{
    position: absolute;
    top: 0.3rem;
    left: 0.3rem;
    width: 1.8rem;
    height: 1.8rem;
    border-radius: 50%;
    background-color: #fff;
    transition: transform 0.25s ease;
}

.photo-panel-switch[aria-pressed="true"] .photo-panel-knob{
    transform: translateX(2.2rem);
}

.photo-panel-switch-label{
    font-family: "Calibri", sans-serif;
    font-weight: 300;
    font-size: 1.3rem;
    line-height: 1.3;
}

.photo-panel-card--light .photo-panel-switch-label{
    color: rgba(13, 14, 14, 0.72);
}

.photo-panel-card--dark .photo-panel-switch-label{
    color: rgba(255, 255, 255, 0.72);
}

@media (max-width: 800px) {
    .photo-panel-switch{ width: 4.2rem; height: 2.2rem; }
    .photo-panel-knob{ width: 1.6rem; height: 1.6rem; }
    .photo-panel {position: static;}
    .photo-panel-switch[aria-pressed="true"] .photo-panel-knob{ transform: translateX(2rem); }

    .full.cols-2 .full .tech-1-card {
        gap: 2rem;
    }

    .tech-card-content h3, .full .tech-card-content h3 {
        font-size: 2.2rem;
    }

    .tiles-photo-lead {display: none;}
}

@media (max-width: 800px) {
    /* Секция с точками, у которой загружен мобильный слайдер.
       Работает для любого оформления, не только interior. */
    .has-mobile-slider{
        background-image: none;
        position: relative;
    }

    /* Фон секции на мобильных не нужен: кадры показывает слайдер */
    .has-mobile-slider > .bg-wrapper{
        display: none;
    }

    .has-mobile-slider .exterior-2,
    .has-mobile-slider .interior-section{
        height: auto;
        min-height: 0;
        padding: 0;
        max-width: 100%;
    }

    .has-mobile-slider .exterior-2>h2{
        position: absolute;
        top:0;
        padding-top: 2rem;
        left: 0;
        right: 0;
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 99%);
        z-index: 2;
    }

    /* Панель уходит из-под кадра вниз и растягивается по ширине */
    .has-mobile-slider .hotspot-panels{
        position: static;
        display: flex;
        flex-direction: column;
        gap: 1.2rem;
        width: 100%;
        padding: 0;
    }

    .has-mobile-slider .hotspot-panel{
        position: static;
        /* padding: 0; */
        width: 100%;
    }
}

/* ===========================================================================
   Новости и дилерские центры — вёрстка из frontend3
   =========================================================================== */


.black-white{
    background-color: rgba(0, 0, 0, 1);
    color: #fff;
}

/* Scrn5 */
.scrn-5{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3rem;
    padding: 8.4rem 0 10.6rem;
    max-width: 153.2rem;
}

/* Dealers */

/* Dealers head */
.banner-head-bg{
    position: relative;
    width: 100%;
}

.banner-head-dealers-bg{
    padding: 6.1rem 0 6.8rem;
    background-color: rgba(1, 1, 1, 1);
}

.banner-head-bg img{
    object-fit: cover;
    top: 0;
    position: absolute;
}

.banner-head-dealers-bg img{
    position: absolute;
    width: 80rem;
    height: 23rem;
    left: 56rem; 
    z-index: 1;
}

.banner-head-content{
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
    margin: 0 auto;
    align-items: center;
    z-index: 2;
    width: 100%;
    max-width: 95rem;
    text-align: center;
}

.dealers-head{
    color: #fff;
    font-size: 3.2rem;
    line-height: 100%;
    text-transform: none;
}

.dh-btn{
    width: 16rem;
    font-size: 1.6rem;
}

.map-container{
    position: relative;
    display: flex;
    width: 100%;
    height: 90rem;
    z-index: 2;
}


#map{
    flex: 1;
    height: 100%;
    overflow: hidden;
}

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

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

.map-balloon-close-btn{
    position: absolute;
    top: 3rem;
    right: 2.95rem;
    width: 1.35rem;
    height: 1.35rem;
    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(0, 0, 0, 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: Calibri, sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 2.4rem;
    color: rgba(0, 0, 0, 1);
}

.map-balloon-field p{
    display: inline;
}

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

.map-balloon-btn{
    width: 16rem;
    margin-top: 2.5rem;
}


.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.3rem;
    right: -1rem;
    min-width: 2rem;
    height: 2rem;
    padding: 0 0.4rem;
    border-radius: 50%;
    background-color: rgba(103, 176, 196, 1);
    color: #fff;
    font-size: 1.1rem;
    line-height: 2rem;
    text-align: center;
    box-shadow: 0 0.2rem 0.6rem rgba(0, 0, 0, 0.25);
}

.link-map-baloon{
    color: #fff;
    text-decoration: none;
}

.dealers-container{
    position: relative;
    z-index: 10;
    order: -1;
    flex-shrink: 0;
    width: 100%;
    max-width: 50.5rem;
    height: 100%;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.dealers-search-dl{
    display: flex;
    align-items: center;
    flex-shrink: 0;
    gap: 1.2rem;
    max-width: 41rem;
    width: 100%;
    margin: 2.6rem auto 0;
    padding: 1.85rem 2.4rem;
    border: 1px solid rgba(217, 217, 217, 1);
    border-radius: 0.5rem;
}

.dealers-search-input-dl{
    flex: 1;
    min-width: 0;
    border: none;
    outline: none;
    background: transparent;
    font-family: Calibri, sans-serif;
    font-weight: 300;
    font-size: 1.6rem;
    color: rgba(0, 0, 0, 1);
}

.dealers-search-input-dl::placeholder{
    color: rgba(0, 0, 0, 1);
}

.dealers-search-btn-dl{
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.8rem;
    height: 1.8rem;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
}

.dealers-search-btn-dl img{
    display: block;
    width: 100%;
    height: 100%;
}

.dealers-count-dl{
    flex-shrink: 0;
    max-width: 41rem;
    width: 100%;
    margin: 1.1rem auto 0;
    font-family: Calibri, sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    color: rgba(0, 0, 0, 0.45);
}

.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{
    display: flex;
    flex-direction: column;
    gap: 1rem;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-color: rgba(0, 0, 0, 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(0, 0, 0, 1);
    border-radius: 1rem;
}

.dealers-item{
    width: 100%;
    max-width: 41rem;
    margin: 0 auto;
    transition: background-color 0.2s ease;
    border-radius: 0.5rem;
}

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

.dealer-item-dl.active-dl .dealer-header-dl{
    border-bottom: none;
    border-radius: 0.5rem 0.5rem 0 0;
    border-color: rgba(245, 247, 250, 1);
}

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


.dealer-chevron-dl{
    display: block;
    flex-shrink: 0;
    width: 1.4rem;
    height: 1.4rem;
}

.dealer-body-dl{
    max-width: 41rem;
    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: 2.1rem 4.3rem 4rem;max-height:100%;
}

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

.dealer-field-label-dl{
    flex-shrink: 0;
    width: 9rem;
    color: rgba(0, 0, 0, 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 .btn{
    padding: 1.3rem 2rem 1.1rem;
    font-size: 1.6rem;
    max-width: none;
    flex: 1;
    text-align: center;
    text-decoration: none;
    align-items: center;
    justify-content: center;
}

.dealer-map-btn-dl{
    display: flex;
}

.dealer-map-btn-dl-a button{
    border: none;
    background-color: transparent;
    color: #fff;
    font-size: 1.6rem;
}


/* News page */

.banner-news-head-bg{
    padding: 15rem 0 17.3rem;
    height: 100%;
    max-height: 42rem;
}

.banner-news-head-bg img{
    object-fit: cover;
    width: 100%;
    height: 100%;
    left: auto;
}

.banner-news-head-bg .banner-head-content{
    gap: 1.4rem;
    color: #fff;
}

.banner-news-head-bg .banner-head-content a{
    color: #fff;
}

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

.breadcrumbs span{
    font-size: 1.8rem;
}

.banner-news-head-bg .banner-head-content .news-head{
    font-size: 5rem;
}

.news-cards-section{
    padding: 8rem 0 9.5rem;
    display: flex;
    flex-direction: column;
    gap: 8rem;
}

.news-cards-grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 7.3rem 1.5rem;
}

.pagination{
    display: flex;
    flex-direction: row;
    gap: 6.9rem;
    margin: 0 auto;
}

.pag-btn{
    width: 1.2rem;
    height: 2.5rem;
    background-color: transparent;
    border: none;
}

.pages-pagination{
    display: inherit;
    flex-direction: inherit;
    align-items: center;
    gap: 2.6rem;
}

.pages-pagination a{
    color: rgba(0, 0, 0, 1);
    height: auto;

}

.pages-pagination span{
    font-size: 1.8rem;
}

/* News single page */
.news-banner{
    background-color: rgba(245, 247, 250, 1);
}

.news-banner-section{
    max-width: 122rem;
    margin: 0 auto;
    padding: 9rem 0 9.8rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.news-head{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.news-head h1{
    font-size: 5rem;
    text-transform: none;
}

.breadcrumbs a{
    color: #000;
    text-decoration: none;
}

.news-head-d{
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
    margin: 3.35rem 0 2.75rem;
}

.news-date{
    font-size: 1.8rem;
    color: rgba(0, 0, 0, 0.45);
    margin-bottom: 4.7rem;
}


.image-wrapper-news-head{
    /* height: 68.6rem; */
    width: 100%;
}

.image-wrapper-news-head img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

article{
    padding: 9.6rem 0 8.1rem;
}

.article{
    display: flex;
    flex-direction: column;
    gap: 6rem;
    max-width: 122rem;
}

.article span{
    font-size: 2.4rem;
    line-height: 135%;
}

.article p{
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 2.2rem
}

.subarticle{
    display: inherit;
    flex-direction: inherit;
    gap: 3rem;
}

.sub-subarticle-group{
    display: inherit;
    flex-direction: inherit;
    gap: 3rem;
}

.quote-article{
    display: inherit;
    flex-direction: inherit;
    gap: 2.5rem;
    position: relative;
    padding-top: 5rem;
}

.marker-news{
    position: absolute;
    top: 0;
    left: 0;
    width: 5rem;
    height: auto;
}


.frame-article{
    display: flex;
    align-items: center;
    padding-left: 4.85rem;
    border-left: 4px solid rgba(103, 176, 196, 1);
}

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

.image-wrapper-news-article img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}


.article-list{
    display: inherit;
    flex-direction: inherit;
    gap: 3.2rem;
}

.article-list h4{
    font-size: 1.6rem;
}

.a-list, .an-list{
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    list-style: none;
}

.a-list li{
    position: relative;
    padding-left: 3rem;
}

.a-list li::before{
    content: "";
    position: absolute;
    left: 0;
    top: 35%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: rgba(103, 176, 196, 1);
}

.an-list li{
    position: relative;
    counter-increment: my-counter;
    padding-left: 4.3rem;
}

.an-list li::before{
    font-family: Calibri, sans-serif;
    font-weight: 700;
    font-size: 1.6rem;
    content: counter(my-counter);
    position: absolute;
    top: -25%;
    left: 0;
    color: rgba(103, 176, 196, 1);
    transform: translateY(0.3rem);
    border: 1px solid rgba(103, 176, 196, 1);
    border-radius: 50%;
    padding: 0.2rem 0.9rem;
}

.divider-article{
    width: 100%;
    height: 0;
    border-bottom: 1px solid rgba(217, 217, 217, 1);
}

.share-friends{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 2.1rem;
    color: rgba(0, 0, 0, 0.45);
}

.socials-icons-article{
    display: inherit;
    flex-direction: inherit;
    align-items: inherit;
    gap: 1.7rem;
}

.social-icon-a{
    width: auto;
    height: 2.3rem;
}

.vk-icon{
    height: 2rem;
}

.wa-icon{
    height: 2.4rem;
}

.fb-icon{
    height: 2.8rem;
}@media (max-width: 800px){



    /* Scrn5 */
    .scrn-5{
        gap: 2.4rem;
        padding: 5.3rem 0 6.7rem;
        max-width: 44rem;
    }

    .banner-head-dealers-bg img{
        left: -17.5rem;
    }

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

    #map{
        flex: none;
        height: 40rem;
    }


    .dealers-container{
        max-height: 70rem;
    }

    .dealers-count-dl{
        padding-bottom: 1rem;
    }

    .dealer-header-dl{
        padding: 1.6rem 2rem;
    }

    .dealer-header-dl span{
        font-size: 1.4rem;
    }

    /* News page */
    .news-cards-grid{
        grid-template-columns: repeat(2, 1fr);
    }

    .pag-btn{
        display: flex;
    }

    /* News single page */

    .news-head h1{
        font-size: 3rem;
    }

    .article, .news-banner-section{
        max-width: 44rem;
    }}


/* Состояния, которых нет в статичном макете: завершённая акция, активная
   страница пагинации, пустой список и тело новости из редактора. */
.news-card.expired .image-wrapper-news img{
    filter: grayscale(1);
    opacity: 0.55;
}

.news-inside.expired .image-wrapper-news-head img{
    filter: grayscale(1);
    opacity: 0.7;
}

.news-expired-note{
    font-size: 1.5rem;
    color: rgba(190, 40, 40, 1);
}

.news-empty{
    padding: 6rem 0;
    font-size: 1.8rem;
    text-align: center;
    color: rgba(13, 14, 14, 0.6);
}

.pages-pagination a.active span{
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 0.4rem;
}

.pag-btn[disabled]{
    opacity: 0.35;
    pointer-events: none;
}

/* Материал набирается в TinyMCE, поэтому типографику задаём по тегам */
.article-body h2,
.article-body h3,
.article-body h4{
    margin: 2.4rem 0 1.2rem;
    font-size: 2rem;
    line-height: 1.3;
}

.article-body p{
    margin-bottom: 1.4rem;
}

.article-body ul,
.article-body ol{
    margin: 0 0 1.6rem 2rem;
}

.article-body li{
    margin-bottom: 0.8rem;
}

.article-body img{
    max-width: 100%;
    height: auto;
    margin: 2rem 0;
    display: block;
}

.article-body a{
    text-decoration: underline;
}

@media (max-width: 800px) {
    .news-empty{ font-size: 1.6rem; padding: 4rem 1.6rem; }
    .article-body h2,
    .article-body h3,
    .article-body h4{ font-size: 1.8rem; }
}
