progress, sub, sup {
    vertical-align: baseline
}

[type=checkbox], [type=radio], legend {
    box-sizing: border-box;
    padding: 0
}

:root, html {
    scroll-behavior: smooth
}

img, legend, svg {
    max-width: 100%
}

a, legend {
    color: inherit
}

.button, .button-container, .card__title--center, .center, .notice, .tablist__link, .title--center, .title--contacts {
    text-align: center
}

.accordion__body ol li + li, .accordion__body ul li + li, .block__desc + .block__desc {
    margin-top: 12px
}

.accordion__body ul, .c-card__body ul, .content ul:not(.unstyled-list) {
    list-style-type: disc
}

#modal-contact, button, hr, input {
    overflow: visible
}

.banner__title, .button, .form__vin input, .hero-block--content-end .title, .hero-slider__title, .pagination__link, .tablist__link {
    text-transform: uppercase
}

.reviews-btn, a {
    text-decoration: none
}

@font-face {
    font-family: Roboto;
    font-style: normal;
    font-weight: 400;
    src: local(""), url("../fonts/roboto-v29-latin_cyrillic-regular.woff2") format("woff2"), url("../fonts/roboto-v29-latin_cyrillic-regular.woff") format("woff");
    font-display: swap
}

@font-face {
    font-family: Roboto;
    font-style: normal;
    font-weight: 500;
    src: local(""), url("../fonts/roboto-v29-latin_cyrillic-500.woff2") format("woff2"), url("../fonts/roboto-v29-latin_cyrillic-500.woff") format("woff");
    font-display: swap
}

@font-face {
    font-family: Roboto;
    font-style: normal;
    font-weight: 700;
    src: local(""), url("../fonts/roboto-v29-latin_cyrillic-700.woff2") format("woff2"), url("../fonts/roboto-v29-latin_cyrillic-700.woff") format("woff");
    font-display: swap
}

@font-face {
    font-family: Roboto;
    font-style: normal;
    font-weight: 900;
    src: local(""), url("../fonts/roboto-v29-latin_cyrillic-900.woff2") format("woff2"), url("../fonts/roboto-v29-latin_cyrillic-900.woff") format("woff");
    font-display: swap
}

@font-face {
    font-family: Roboto;
    font-style: italic;
    font-weight: 400;
    src: local(""), url("../fonts/roboto-v29-latin_cyrillic-italic.woff2") format("woff2"), url("../fonts/roboto-v29-latin_cyrillic-italic.woff") format("woff");
    font-display: swap
}

@keyframes progress {
    0% {
        stroke-dasharray: 0 55
    }
    100% {
        stroke-dasharray: 55 55
    }
}

html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

.hero-slider .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .hero-slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet, body {
    margin: 0
}

.c-link__img, details, main {
    display: block
}

h1 {
    font-size: 2em;
    margin: .67em 0
}

hr {
    box-sizing: content-box;
    height: 0
}

code, kbd, pre, samp {
    font-family: monospace, monospace;
    font-size: 1em
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted
}

b, strong {
    font-weight: bolder
}

small {
    font-size: 80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

button, input, optgroup, select, textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0
}

button, select {
    text-transform: none
}

[type=button], [type=reset], [type=submit], button {
    -webkit-appearance: button
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
    outline: ButtonText dotted 1px
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    display: table;
    white-space: normal
}

textarea {
    overflow: auto
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

summary {
    display: list-item
}

[hidden], template {
    display: none
}

:root {
    --primary-color: #009D72;
    --container-padding: 32px;
    --menu-height: 139px;
    --fancybox-accent-color: transparent;
    --fancybox-thumbs-border-radius: 0
}

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: 16px;
    height: 100%
}

.block p, .main__section--desc p, p {
    font-size: clamp(1rem, calc(.9697rem + .1294vw), 1.125rem)
}

*, ::after, ::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

img, svg {
    height: auto
}

p {
    margin: 0;
    line-height: 1.55
}

.unstyled-list {
    list-style: none;
    padding: 0;
    margin: 0
}

.page__body {
    margin: 0 auto;
    background-color: #fff;
    font-weight: 400;
    color: #000;
    font-family: Roboto, Arial, Helvetica, sans-serif;
    height: 100%;
    overflow-x: hidden
}

.sr-only:not(:focus):not(:active) {
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(100%);
    clip-path: inset(100%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px
}

.container {
    max-width: 1609px;
    margin: 0 auto;
    padding: 0 var(--container-padding)
}

.skip-link {
    position: absolute;
    top: 50%;
    left: 50%;
    background: #000;
    display: block;
    padding: 15px;
    color: #fff;
    font-weight: 600;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 99;
    -webkit-box-shadow: 0 0 0 100vw #0000009e;
    box-shadow: 0 0 0 100vw #0000009e
}

.header, .notice {
    position: relative
}

.button, a {
    font: inherit
}

.header--has-shadow, .header__bottom--fixed {
    top: 0;
    left: 0;
    right: 0;
    box-shadow: 0 20px 25px rgba(0, 0, 0, .15)
}

.skip-link:focus, .skip-link:hover {
    opacity: 1
}

a {
    background-color: transparent
}

a:focus-visible, a:hover {
    opacity: .6
}

a:not([href]):focus-visible, a:not([href]):hover {
    opacity: 1
}

.button {
    --btn-bg: var(--primary-color);
    --btn-color: #fff;
    display: inline-block;
    padding: clamp(12px, 1.5vw, 19px) clamp(40px, 4vw, 64px);
    background-color: var(--btn-bg);
    border: none;
    appearance: none;
    font-size: clamp(12px, 1.5vw, 18px);
    font-weight: 400;
    transition: background-color .2s, color .2s, border-color .2s;
    color: var(--btn-color);
    cursor: pointer
}

.button:focus-visible, .button:hover {
    opacity: 1;
    background-color: #007253
}

.button--fs-14 {
    font-size: 14px;
    padding: 11px clamp(30px, 4vw, 46px)
}

.button--fs-16 {
    font-size: 16px;
    padding: 12px clamp(30px, 4vw, 46px)
}

.button--black {
    --btn-bg: #000;
    --btn-color: #fff
}

.button--invert, .button--white {
    --btn-bg: #fff;
    --btn-color: #000
}

.button--black:focus-visible, .button--black:hover {
    color: rgba(255, 255, 255, .5);
    background-color: var(--btn-bg)
}

.button--white {
    border: 2px solid #d0d0d0;
    background-color: transparent
}

.button--invert, .main {
    background-color: #fff
}

.button--white:focus-visible, .button--white:hover {
    color: var(--btn-color);
    background-color: var(--btn-bg);
    border-color: var(--btn-color)
}

.button--invert {
    border: 2px solid transparent
}

.language-dropdown__control, .language-select {
    border: none;
    background-color: transparent;
    color: #fff
}

.button--invert:focus-visible, .button--invert:hover {
    color: #fff;
    background-color: transparent;
    border-color: #fff
}

.button--full-width {
    display: block;
    width: 100%
}

.button--modal {
    font-size: 14px;
    padding-top: 13px;
    padding-bottom: 13px
}

.button:disabled {
    pointer-events: none;
    opacity: .5
}

.title {
    color: #000;
    font-weight: 700;
    margin: 0
}

.title--primary {
    font-size: clamp(1.625rem, calc(1.4126rem + .9061vw), 2.5rem);
    line-height: 1.3;
    margin-bottom: 24px
}

.block__title, .main__section-title {
    margin-bottom: clamp(24px, 4.2vw, 40px)
}

.title--container {
    padding: 0 calc((100% - 1609px) / 2);
    margin-left: var(--container-padding);
    margin-right: var(--container-padding)
}

.main__section--indent, .pt-80 {
    padding-top: clamp(40px, 8.2vw, 80px)
}

.title--large {
    font-size: clamp(2rem, calc(1.5146rem + 2.0712vw), 4rem);
    line-height: 1.15
}

.title span {
    font-weight: 400;
    color: rgba(0, 0, 0, .5)
}

.main__section--indent {
    padding-bottom: clamp(40px, 8.2vw, 80px)
}

.main__section--live, .main__section--news, .main__section--stock {
    padding-bottom: 0
}

.main__section--actions-green, .theme-bg {
    background-color: var(--primary-color)
}

.main__section--desc p {
    max-width: 1076px
}

.main__content {
    padding-bottom: clamp(2.5rem, calc(1.8932rem + 2.589vw), 5rem)
}

.block, .content blockquote, .content h2, .content h3, .content h4, .content h5, .content p {
    max-width: 1230px
}

.block p + p {
    margin-top: clamp(1.125rem, calc(.9733rem + .6472vw), 1.75rem)
}

.block--2-column {
    column-count: 2;
    column-width: 300px;
    column-gap: 63px;
    max-width: 100%
}

.block--2-column > * {
    break-inside: avoid
}

.block__desc {
    max-width: 1076px
}

.fancybox__thumbs .carousel__slide .fancybox__thumb::after {
    border-width: 3px
}

.warranty-advantages, .white-gray {
    background-color: #fafafa
}

.mt-80 {
    margin-top: clamp(40px, 8.2vw, 80px)
}

.mb-80 {
    margin-bottom: clamp(40px, 8.2vw, 80px)
}

.pb-80 {
    padding-bottom: clamp(40px, 8.2vw, 80px)
}

.mt-40 {
    margin-top: clamp(32px, 6vw, 40px)
}

.mb-40 {
    margin-bottom: clamp(32px, 6vw, 40px)
}

.pt-65 {
    padding-top: clamp(40px, 4vw, 65px)
}

.pb-65 {
    padding-bottom: clamp(40px, 4vw, 65px)
}

.mt-65 {
    margin-top: clamp(40px, 4vw, 65px)
}

.mb-65 {
    margin-bottom: clamp(40px, 4vw, 65px)
}

.gray {
    color: #a4a4a4
}

.content h2 {
    margin: clamp(26px, 4.5vw, 48px) 0 16px;
    font-size: clamp(1.625rem, calc(1.4126rem + .9061vw), 2.5rem);
    line-height: 1.25
}

.logo__link, .social-links li {
    line-height: 0
}

.content h2 + h3 {
    margin-bottom: 16px;
    margin-top: clamp(24px, 3vw, 32px)
}

.content h3 {
    margin: 24px 0 clamp(24px, 3vw, 32px);
    font-size: clamp(1.125rem, calc(1.0340rem + .3883vw), 1.5rem);
    font-weight: 700
}

.content h3:last-child {
    margin-bottom: 0
}

.content p {
    margin-top: 18px
}

.content p:first-of-type {
    margin-top: 0
}

.content ol:not(.unstyled-list), .content ul:not(.unstyled-list) {
    margin: 24px 0;
    padding-left: 23px;
    max-width: 920px
}

.content ol:not(.unstyled-list) li, .content ul:not(.unstyled-list) li {
    font-size: clamp(1rem, calc(.9697rem + .1294vw), 1.125rem);
    line-height: 1.55
}

.content ol:not(.unstyled-list) li::marker, .content ul:not(.unstyled-list) li::marker {
    color: #000;
    font-size: 12px
}

.content ol:not(.unstyled-list) li + li, .content ul:not(.unstyled-list) li + li {
    margin-top: clamp(5px, 1.2vw, 12px)
}

.content a:not([class]) {
    color: var(--primary-color)
}

.notice {
    margin-top: clamp(24px, 3vw, 47px);
    z-index: 1;
    user-select: none
}

.notice--indent {
    margin-top: clamp(32px, 3vw, 40px);
    margin-bottom: clamp(24px, 3vw, 34px)
}

.notice__link {
    font-size: 14px
}

.social-links {
    flex-shrink: 0;
    gap: 8px;
    display: flex;
    align-items: center
}

.header {
    background-color: #000;
    color: #fff;
    z-index: 10
}

.header--has-shadow {
    position: sticky
}

.header--fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0
}

.header__bottom, .header__topline {
    display: flex;
    justify-content: space-between;
    padding: 0 var(--container-padding);
    align-items: center;
    gap: 30px
}

.header__topline {
    padding-top: 16px;
    padding-bottom: 16px;
    position: relative
}

.header__bottom {
    padding-top: 29px;
    padding-bottom: 29px;
    background-color: #fff;
    color: #000
}

.header__bottom--fixed {
    position: fixed;
    z-index: 10
}

.header__logo {
    margin-right: clamp(30px, 5vw, 43px);
    color: #00664a
}

.header__logo .logo__link[href] {
    transition: transform .3s ease-in-out
}

.header__logo .logo__link[href]:focus-visible, .header__logo .logo__link[href]:hover {
    opacity: 1;
    transform: scale(.97)
}

.header__menu-buttons {
    display: none
}

.header__contacts {
    margin-left: auto;
    display: flex;
    flex-wrap: wrap;
    gap: 10px clamp(30px, 5vw, 52px);
    align-items: center
}

.header__social {
    margin-left: auto;
    gap: 10px 24px
}

.language-select {
    text-overflow: ellipsis;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    outline: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.06641 1L5.06641 5L9.06641 1' stroke='white'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    transition: opacity .3s;
    background-position: center right 95px;
    width: 150px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.action:active, .language-select option {
    color: #000
}

.logo__link {
    display: block
}

.form__vin, .language-dropdown {
    position: relative
}

.language-dropdown--top {
    margin-right: 18px
}

.language-dropdown--top::before {
    content: '';
    top: -16.5px;
    left: -32px;
    right: -31px;
    bottom: -16px;
    position: absolute;
    background: #fff;
    z-index: -1;
    border: 1px solid var(--primary-color);
    opacity: 0;
    transition: opacity .3s ease-in-out
}

.language-dropdown--top .language-dropdown__list {
    left: -32px
}

.language-dropdown--top.language-dropdown--open::before {
    opacity: 1;
    z-index: 3
}

.language-dropdown--top.language-dropdown--open .language-dropdown__control {
    color: #000;
    position: relative;
    z-index: 3
}

.language-dropdown__control {
    padding: 9px 0;
    font: inherit;
    font-size: 16px;
    display: flex;
    align-items: center;
    line-height: 0;
    gap: 9px;
    cursor: pointer;
    user-select: none
}

.language-dropdown__arrow {
    color: #fff;
    transition: transform .3s ease-in-out
}

.language-dropdown__list {
    position: absolute;
    z-index: 2;
    background-color: #fff;
    width: 108px;
    text-align: center;
    box-shadow: 0 4px 36px rgba(0, 0, 0, .2);
    left: 0;
    top: calc(100% + 15px);
    display: grid;
    gap: 12px;
    padding: 16px;
    font-weight: 500;
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease-in-out, visibility .3s ease-in-out
}

.language-dropdown--open .language-dropdown__list {
    opacity: 1;
    visibility: visible
}

.language-dropdown--open .language-dropdown__arrow {
    transform: rotate(180deg);
    color: var(--primary-color)
}

.language-dropdown__link {
    color: #000;
    cursor: pointer;
    display: block
}

.language-dropdown__link--current {
    color: var(--primary-color);
    cursor: default
}

.carousel-btn, .hero-slider__pagination-bullet, .hero-slider__pagination-bullet svg {
    cursor: pointer
}

.language-dropdown__link:hover {
    color: var(--primary-color)
}

.menu__list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px clamp(20px, 5vw, 38px)
}

.menu__list--nested {
    left: 0;
    top: 100%;
    position: absolute;
    display: none;
    background-color: #fafafa;
    padding: 20px 24px;
    row-gap: 20px;
    width: 100vw;
    box-shadow: -2px 20px 20px 0 rgba(0, 0, 0, .2)
}

.menu__list--top {
    column-gap: 24px
}

.hero-slider {
    width: 100vw;
    height: calc(100vh - var(--menu-height));
    position: relative
}

.hero-slider .swiper-horizontal > .swiper-pagination-bullets, .hero-slider .swiper-pagination-bullets.swiper-pagination-horizontal, .hero-slider .swiper-pagination-custom, .hero-slider .swiper-pagination-fraction {
    bottom: clamp(20px, 8vw, 72px)
}

.hero-slider .swiper-pagination-bullet {
    all: unset;
    transform: rotate(-90deg);
    width: 18px;
    height: 18px;
    overflow: hidden
}

.hero-slider__content {
    color: #fff;
    margin: 0 var(--container-padding);
    padding: clamp(48px, 12vw, 120px) calc((100% - 1625px) / 2) 50px;
    display: flex;
    row-gap: clamp(12px, 2.1vw, 17px);
    flex-direction: column;
    align-items: flex-start
}

.hero-slider__tagline, .hero-slider__title, .trailer-card p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis
}

.hero-slider__title {
    font-weight: 900;
    font-size: clamp(1.625rem, calc(1.0485rem + 2.4595vw), 4rem);
    margin: 0 0 clamp(1px, 2.5vw, 60px);
    -webkit-line-clamp: 3
}

.hero-slider__tagline {
    -webkit-line-clamp: 2;
    order: -1;
    font-weight: 700;
    font-size: clamp(1rem, calc(.7692rem + .9846vw), 2rem)
}

.hero-slider__figure, .hero-slider__video {
    background-color: #bebebe;
    mix-blend-mode: color;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.hero-slider__figure::before, .hero-slider__video::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, .2) 0, rgba(0, 0, 0, 0) 100%)
}

.hero-slider__image {
    width: 100vw;
    height: 100%;
    object-fit: cover;
    object-position: bottom
}

.hero-slider__button {
    display: block;
    transition: .5s
}

.hero-slider__pagination {
    display: flex;
    justify-content: center;
    gap: 16px;
    color: #fff
}

.hero-slider__pagination-bullet svg:hover .hero-slider__pagination-ellipse {
    stroke-opacity: 1
}

.hero-slider__pagination-dot {
    transform: scaleY(0);
    transition: transform .3s
}

.hero-slider__pagination-indicator {
    stroke-dasharray: 0 50
}

.hero-slider .swiper-pagination-bullet-active svg:hover .hero-slider__pagination-ellipse {
    stroke-opacity: 0.5
}

.hero-slider .swiper-pagination-bullet-active .hero-slider__pagination-dot {
    transform: scaleY(1)
}

.hero-slider .swiper-pagination-bullet-active .hero-slider__pagination-indicator {
    animation: progress var(--anim-dur, 5s) linear forwards
}

.hero-slider--touch .swiper-pagination-bullet-active .hero-slider__pagination-indicator {
    animation: none
}

.content-card {
    display: grid;
    grid-template-columns:minmax(200px, 1fr) minmax(320px, 1fr);
    align-items: center;
    gap: 40px 35px
}

.content-card--offer {
    grid-template-columns:minmax(300px, 605px) auto;
    column-gap: clamp(40px, 5vw, 80px);
    background-color: #fafafa
}

.content-card--offer .content-card__body {
    padding: 30px 0
}

.content-card--offer .content-card__image {
    aspect-ratio: 605/372
}

.content-card__figure {
    margin: 0;
    height: 100%
}

.content-card__body {
    max-width: 608px
}

.content-card__image {
    aspect-ratio: 764/495;
    height: 100%;
    max-height: 500px;
    object-fit: cover;
    display: block
}

.content-card p {
    font-size: clamp(1rem, calc(.9697rem + .1294vw), 1.125rem);
    margin-bottom: clamp(24px, 3vw, 32px);
    line-height: 1.45
}

.trailers-cards {
    --item-width: clamp(300px, 25vw, 380px);
    display: grid;
    grid-template-columns:repeat(auto-fill, minmax(var(--item-width), 1fr));
    gap: 16px
}

.trailer-card {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    color: #fff;
    padding: clamp(22px, 3vw, 42px) clamp(24px, 3vw, 59px);
    background-color: #212527;
    mix-blend-mode: darken;
    aspect-ratio: 504/321
}

.testimonial-card::after, .trailer-card__image, .trailer-card__link::after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0
}

.main__section--testimonials, .testimonials__item {
    background-color: #fff
}

.form__product-image, .hero-block, .testimonial-card, .video-block {
    mix-blend-mode: multiply
}

.trailer-card__title {
    font-weight: 700;
    margin: 0 0 12px;
    font-size: clamp(.875rem, calc(.7233rem + .6472vw), 1.5rem);
    hyphens: auto;
    -webkit-hyphens: auto
}

.card__link, .trailer-card__link {
    outline: 0
}

.trailer-card__link::after {
    content: '';
    top: 0
}

.trailer-card__link:focus-visible:after {
    outline: #fff dashed 2px;
    outline-offset: -4px
}

.trailer-card__image {
    height: 100%;
    width: 100%;
    z-index: -1;
    top: 0;
    object-fit: cover;
    transition: transform .3s linear
}

.trailer-card p {
    font-size: clamp(.75rem, calc(.6893rem + .2589vw), 1rem);
    -webkit-line-clamp: 7
}

.trailer-card:focus-within .trailer-card__image, .trailer-card:hover .trailer-card__image {
    transform: scale(1.05)
}

.trailer-card:focus-within .trailer-card__link, .trailer-card:hover .trailer-card__link {
    opacity: 1;
    outline: 0
}

.tabbed__header {
    margin-bottom: clamp(32px, 4vw, 40px);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 32px
}

.tabbed__header .title {
    margin: 0
}

.tabbed__dropdown {
    margin-left: auto
}

.tabbed__dropdown-control {
    display: none
}

.tablist {
    display: grid;
    grid-template-columns:repeat(3, 1fr);
    grid-auto-flow: column;
    width: clamp(656px, 60vw, 1020px);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none
}

.tablist::-webkit-scrollbar {
    display: none
}

.tablist__item {
    white-space: nowrap;
    scroll-snap-align: center;
    scroll-snap-stop: always
}

.tablist__link {
    font-weight: 500;
    display: block;
    border-bottom: 2px solid rgba(0, 0, 0, .3);
    padding: 10px clamp(10px, 3vw, 50px) clamp(6px, 2vw, 12px);
    font-size: 14px;
    line-height: 1.5;
    transition: border .3s linear, color .3s
}

.tablist__link:focus-visible, .tablist__link:hover {
    opacity: 1;
    color: var(--primary-color)
}

.tablist__link[aria-selected=true] {
    outline: 0;
    color: var(--primary-color);
    border-color: currentColor
}

.tablist__link[aria-selected=true]:focus-visible, .tablist__link[aria-selected=true]:hover {
    opacity: 1
}

.testimonials {
    padding: 38px 30px;
    margin: -38px -30px
}

.testimonials--grid {
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns:repeat(auto-fill, minmax(var(--item-width, clamp(250px, 44vw, 600px)), 1fr));
    gap: clamp(16px, 2vw, 32px) 16px
}

.testimonials__item {
    height: auto;
    display: flex;
    flex-direction: column;
    background-position: right clamp(30px, 10vw, 49px) bottom 54px;
    background-size: clamp(125px, 20vw, 197px);
    background-repeat: no-repeat
}

#map ymaps[class*=balloon], .testimonials__item--shadow {
    box-shadow: 0 12px 64px rgba(0, 0, 0, .15)
}

.testimonials .swiper-slide-active, .testimonials .swiper-slide-next {
    box-shadow: 0 12px 28px rgba(0, 0, 0, .15)
}

.testimonials__text {
    font-size: clamp(.75rem, calc(.6893rem + .2589vw), 1rem);
    line-height: 1.6;
    font-style: italic;
    margin: 0;
    margin-bottom: clamp(16px, 5vw, 29px)
}

.testimonials__image {
    display: block;
    object-fit: cover;
    margin-bottom: 24px
}

.testimonials__lightbox {
    margin-top: auto
}

.testimonials__title {
    font-size: clamp(.875rem, calc(.784rem + .3883vw), 1.25rem);
    margin-bottom: clamp(8px, 6vw, 14px)
}

.testimonial-card__quote, .testimonials__autor {
    font-size: clamp(.75rem, calc(.6893rem + .2589vw), 1rem)
}

.testimonials__autor {
    color: #707070
}

.testimonial-card {
    position: relative;
    overflow: hidden;
    padding: 24px;
    aspect-ratio: 368/630;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    background-color: #1a1f22;
    color: #fff
}

.testimonial-card::after {
    content: '';
    max-height: 355px;
    height: 100%;
    background: linear-gradient(360deg, #1a1f22 59.96%, rgba(26, 31, 34, 0) 100%);
    z-index: -1
}

.testimonial-card__quote {
    position: relative;
    line-height: 1.5;
    font-style: italic;
    padding-bottom: 27px;
    margin: 0 0 20px;
    display: flex;
    justify-content: space-between;
    padding-right: 55px
}

.testimonial-card__quote svg {
    position: absolute;
    right: 0;
    bottom: 36px
}

.testimonial-card__quote::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background-image: linear-gradient(45deg, #fff, transparent)
}

.testimonial-card__autor {
    color: rgba(255, 255, 255, .5);
    font-size: 14px
}

.testimonial-card__image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    z-index: -1
}

.swiper--has-shadow {
    margin: -64px -29px;
    padding: 64px 29px
}

.carousel-container {
    padding: 0 28px;
    position: relative;
    display: flex;
    max-width: 1828px;
    margin: 0 auto;
    gap: clamp(2px, 3.5vw, 66px)
}

.carousel-container .swiper {
    flex-grow: 1
}

.carousel-btn {
    --size: clamp(32px, 6vw, 48px);
    align-self: center;
    flex-shrink: 0;
    width: var(--size);
    height: var(--size);
    background: #fff;
    box-shadow: 0 4px 36px rgba(0, 0, 0, .2);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    color: #000;
    transition: transform .3s
}

.carousel-btn--prev:focus-visible, .carousel-btn--prev:hover {
    transform: translateX(-10px)
}

.carousel-btn--prev svg {
    margin-right: 3px
}

.carousel-btn--next:focus-visible, .carousel-btn--next:hover {
    transform: translateX(10px)
}

.carousel-btn--next svg {
    margin-left: 3px
}

.carousel-btn.swiper-button-lock {
    opacity: 0;
    visibility: hidden
}

.carousel-pagination {
    position: absolute;
    justify-content: center;
    z-index: 1;
    bottom: -24px !important;
    margin-top: 24px;
    column-gap: 24px;
    display: none
}

.carousel-pagination .swiper-pagination-bullet {
    margin: 0 !important;
    width: 12px;
    height: 12px;
    background-color: rgba(0, 0, 0, .15);
    display: block;
    opacity: 1
}

.action:active .action__icon, .carousel-pagination .swiper-pagination-bullet-active {
    background-color: var(--primary-color)
}

.cards {
    display: grid;
    grid-template-columns:repeat(auto-fill, minmax(var(--item-width, clamp(215px, 28vw, 504px)), 1fr));
    gap: 32px 16px
}

.card, .cards__item {
    display: flex;
    flex-direction: column
}

.cards--catalog {
    row-gap: 28px
}

.cards__item {
    justify-content: space-between
}

.card {
    position: relative;
    background-color: #fff;
    transition: box-shadow .3s linear;
    color: #000;
    justify-content: space-between;
    flex-grow: 1
}

.card__figure {
    margin: 0 0 clamp(17px, 2vw, 24px);
    overflow: hidden;
    position: relative
}

.card__figure:hover .card__image--hover {
    opacity: 1
}

.card__slider-link:hover, .gallery .swiper-slide-active:hover {
    cursor: zoom-in
}

.card__image {
    display: block;
    aspect-ratio: 504/275;
    object-fit: cover;
    width: 100%;
    transition: transform .3s linear
}

.card__image--hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity .6s ease-in-out, transform .6s ease-in-out
}

.card__body {
    display: flex;
    flex-direction: column;
    padding: 0 clamp(16px, 2.6vw, 37px) clamp(20px, 2.6vw, 28px);
    justify-content: space-between;
    gap: 18px;
    flex-grow: 1
}

.card__body--trailers {
    padding-bottom: clamp(20px, 2.6vw, 48px)
}

.card__feature {
    margin: 6px auto 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    font-size: 12px;
    gap: 6px
}

.card__feature-item {
    background-color: #f8f8f8;
    padding: 8px 10px;
    display: flex;
    align-items: center;
    border-radius: 35px;
    gap: 6px;
    line-height: 0
}

.card__title {
    line-height: 1.44;
    font-weight: 400;
    font-size: clamp(1rem, calc(.9697rem + .1294vw), 1.125rem)
}

.card__title--center {
    max-width: 300px;
    margin: 0 auto;
    line-height: 1.5;
    font-size: 16px
}

.card__property-name, .card__property-value {
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    font-family: Roboto
}

.card__properties {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    gap: 10px
}

.card__property {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 8px;
    border-bottom: 1px dotted #d0d0d0;
    gap: 20px
}

.card__property-name {
    color: #767676
}

.card__property-value {
    color: #333;
    text-align: right
}

.action, .card__notice, .card__price {
    text-align: center
}

@media (min-width: 558px) and (max-width: 850px) {
    .card__property-name, .card__property-value {
        font-size: 12px
    }
}

.card__link:focus-visible, .card__link:hover {
    opacity: 1
}

.card__link:focus-visible::after {
    border: 2px dashed var(--primary-color)
}

.card__link::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    cursor: pointer
}

.card__time {
    font-size: clamp(.75rem, calc(.659rem + .3883vw), 1.125rem);
    color: rgba(0, 0, 0, .5);
    line-height: 1.56;
    margin-bottom: 4px;
    order: -1
}

.card__price {
    margin-top: 10px;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.3;
    color: #000
}

.card__action {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 24px;
    gap: 24px;
    flex-wrap: wrap
}

.card__action .card__price, .gallery-grid__figure {
    margin: 0
}

.card__button {
    font-size: 14px;
    line-height: 1.56;
    z-index: 2;
    position: relative;
    padding: 8px 32px
}

.card__notice {
    position: absolute;
    top: 18px;
    left: 24px;
    font-size: 12px;
    line-height: 1.17;
    padding: 8px 18px;
    border-radius: 50px;
    background-color: #fff;
    font-weight: 500
}

.card__notice--red {
    color: #f25f5f
}

.card__notice--green {
    color: var(--primary-color)
}

.actions {
    display: grid;
    grid-template-columns:repeat(auto-fill, minmax(var(--size, clamp(152px, 20vw, 315px)), 1fr));
    padding: clamp(18px, 6vw, 64px) 0
}

.action {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: clamp(8px, 2vw, 37px) 12px;
    color: #000;
    height: 100%
}

.action__icon svg, .action__link {
    color: currentColor;
    transition: color .3s
}

.action__icon {
    --size: clamp(32px, 7.3vw, 80px);
    display: block;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    border: 2px solid rgba(0, 0, 0, .3);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color .3s
}

.c-custom-checkbox--has-image, .form__requirement {
    align-items: center
}

.action__icon svg {
    height: clamp(15px, 3.4vw, 37px)
}

.action__link {
    font-size: clamp(.75rem, calc(.6286rem + .5178vw), 1.25rem);
    outline: 0
}

@media (min-width: 740px) {
    .action__link {
        margin: auto
    }
}

.action__link::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.action__link br, .form-filter__header {
    display: none
}

.action__link:focus-visible, .action__link:hover {
    opacity: 1
}

.action:focus-within, .action:hover {
    color: var(--primary-color)
}

.action:focus-within .action__icon, .action:hover .action__icon {
    border-color: currentColor
}

.action:active .action__icon {
    color: #fff;
    border-color: var(--primary-color)
}

.action--inverted {
    color: #fff
}

.action--inverted .action__icon {
    border-color: rgba(255, 255, 255, .5);
    color: #fff
}

.action--inverted:focus-within, .action--inverted:hover {
    color: #fff
}

.action--inverted:focus-within .action__icon, .action--inverted:hover .action__icon {
    border-color: transparent;
    background-color: #fff;
    color: #000
}

.form {
    --color-default: #D0D0D0;
    --color-invalid: #EB4A41;
    --color-valid: green;
    --placeholder: #A4A4A4
}

.form__requirement {
    display: none;
    position: relative;
    font-size: 12px;
    margin: 9px 0 4px
}

.form__requirement::before {
    content: '';
    width: 12px;
    height: 12px;
    background-repeat: no-repeat;
    display: block;
    margin-right: 7px;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='6' cy='6' r='6' fill='%23EB4A41'/%3E%3Cpath d='m6.542 7.2.206-4.628H5.174l.216 4.629h1.152Zm-.576 2.336c.452 0 .833-.38.833-.823a.843.843 0 0 0-.833-.833.834.834 0 0 0-.823.833c0 .442.37.823.823.823Z' fill='%23fff'/%3E%3C/svg%3E")
}

.form__group {
    display: grid;
    grid-template-columns:1fr;
    gap: 12px;
    margin-bottom: clamp(20px, 2vw, 31px)
}

.form__group input, .form__group textarea {
    color: #000;
    width: 100%;
    border-radius: 0;
    border: 1px solid var(--color-default);
    padding: 16px 18px;
    font-size: 14px
}

.form__group input::-webkit-input-placeholder, .form__group textarea::-webkit-input-placeholder {
    color: var(--placeholder)
}

.form__group input::-moz-placeholder, .form__group textarea::-moz-placeholder {
    color: var(--placeholder)
}

.form__group input:-ms-input-placeholder, .form__group textarea:-ms-input-placeholder {
    color: var(--placeholder)
}

.form__group input:-moz-placeholder, .form__group textarea:-moz-placeholder {
    color: var(--placeholder)
}

.form__group textarea {
    max-height: 96px;
    resize: none
}

.form__group textarea:focus {
    outline: 0;
    border-color: #000
}

.form__group input {
    border: 1px solid var(--color-default)
}

.form__group input:focus {
    outline: 0;
    border-color: #000
}

.form__group input:not(:focus):not(:placeholder-shown):invalid {
    border-color: var(--color-invalid)
}

.form__group input:not(:focus):not(:placeholder-shown):invalid ~ .form__requirement {
    display: flex;
    color: var(--color-invalid)
}

.form__group input:not(:focus):not(:placeholder-shown):valid {
    border-color: var(--color-valid)
}

.form__vin input {
    padding-left: 50px
}

.form__headline {
    user-select: none;
    display: block;
    margin-bottom: 12px
}

.form__placeholder {
    user-select: none;
    position: absolute;
    font-size: 14px;
    color: var(--placeholder);
    top: 50%;
    left: 18px;
    transform: translateY(-50%)
}

.form__button {
    font-size: 14px;
    padding: 13px 15px;
    border-color: #000
}

.form__button:focus-visible, .form__button:hover {
    background-color: #000;
    color: #fff
}

.c-custom-checkbox {
    position: relative;
    cursor: pointer;
    display: flex
}

.c-custom-checkbox--has-image {
    flex-wrap: wrap
}

.c-custom-checkbox input[type=checkbox] {
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(100%);
    clip-path: inset(100%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px
}

.c-custom-checkbox__icon {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    margin-right: 11px;
    fill: none
}

.c-custom-checkbox__bg {
    color: #bbb;
    fill: #fff;
    transition: color .3s
}

.c-custom-checkbox__mark {
    color: #000;
    opacity: 0;
    visibility: hidden;
    transition-property: visibility, opacity;
    transition-duration: .3s
}

input[type=checkbox]:checked + .c-custom-checkbox__icon .c-custom-checkbox__mark {
    visibility: visible;
    opacity: 1
}

input[type=checkbox]:focus-visible + .c-custom-checkbox__icon {
    outline: 0
}

input[type=checkbox]:focus-visible + .c-custom-checkbox__icon .c-custom-checkbox__bg {
    color: var(--primary-color)
}

input[type=checkbox]:hover:not(:disabled) + .c-custom-checkbox__icon .c-custom-checkbox__bg {
    color: rgba(0, 0, 0, .8)
}

.c-custom-checkbox input[type=checkbox]:disabled ~ * {
    opacity: .5
}

.c-custom-checkbox span, .upload-file__text {
    font-size: 14px;
    line-height: 1.3
}

.c-custom-checkbox a {
    color: var(--primary-color)
}

.checkbox-reset, .form-filter-control {
    align-items: center;
    width: 100%;
    display: none;
    background-color: #fafafa
}

.c-custom-checkbox--has-image span {
    font-size: 0;
    line-height: 0
}

.form__checkbox, .pagination {
    margin-bottom: 24px
}

.form__checkbox .c-custom-checkbox__icon {
    width: 24px;
    height: 24px;
    margin-right: 17px;
    margin-top: 5px
}

.checkbox-list {
    margin: 16px 10px 9px
}

.checkbox-list .c-custom-checkbox {
    padding: 8px 16px
}

.checkbox-list .c-custom-checkbox--has-image {
    padding: 14px 16px
}

.checkbox-list .c-custom-checkbox span::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    transition: opacity .3s;
    background-color: #fafafa;
    opacity: 0
}

.checkbox-list .c-custom-checkbox input[type=checkbox]:checked ~ span::after {
    opacity: 1
}

.checkbox-list .c-custom-checkbox input[type=checkbox]:disabled ~ span::after {
    opacity: 0
}

.checkbox-reset {
    border: none;
    padding: 12px 28px;
    font: inherit;
    font-size: 14px;
    gap: 8px;
    color: #000;
    line-height: 1.3;
    cursor: pointer
}

.checkbox-reset__icon {
    color: inherit;
    transition: transform .5s
}

.checkbox-reset:hover .checkbox-reset__icon {
    transform: rotate(360deg);
    color: var(--primary-color)
}

.form-filter-control {
    border: 1px solid #d0d0d0;
    font: inherit;
    font-size: clamp(.875rem, calc(.8143rem + .2589vw), 1.125rem);
    padding: 19px 21px;
    gap: 10px 12px;
    max-width: 100%;
    color: #0a0a0a;
    font-weight: 500
}

.form-filter-control__icon {
    color: #7d7d7d
}

.form-filter-wrap {
    padding: 0 var(--container-padding);
    background: #fafafa
}

.upload-file__input {
    opacity: 0;
    position: absolute;
    z-index: -1;
    overflow: hidden;
    width: .4px;
    height: .4px
}

.upload-file__input:focus-visible + .upload-file__label {
    outline: #000 solid 1px;
    outline-offset: 5px
}

.upload-file__label {
    display: flex;
    align-items: center;
    gap: 7px;
    cursor: pointer
}

.upload-file__label:hover {
    opacity: .7
}

.form__product {
    margin-bottom: clamp(20px, 2vw, 32px);
    padding: 24px 20px 16px;
    display: flex;
    background-color: #fafafa
}

.form__product-figure {
    margin: 0 18px 0 0;
    flex-shrink: 0;
    max-width: 76px
}

.form__product-image {
    max-width: 76px;
    max-height: 76px;
    object-fit: contain
}

.balloon, .footer__block, .form__product-content {
    display: flex;
    flex-direction: column
}

.form__product-link {
    line-height: 1.37;
    margin-bottom: 10px
}

.form__product-price {
    font-weight: 700;
    line-height: 1.5
}

.main__section--live {
    background-color: #fff
}

.social-cards {
    display: grid;
    grid-template-columns:repeat(auto-fit, minmax(var(--item-size, clamp(50px, 25vw, 400px)), 1fr));
    gap: clamp(8px, 2vw, 16px)
}

.social-cards__item--large {
    grid-column: span 2
}

.social-card {
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
    aspect-ratio: 1032/496;
    padding: clamp(15px, 2.2vw, 46px) clamp(16px, 2.7vw, 53px);
    height: 100%;
    width: 100%;
    background-color: #bebebe
}

.social-card::before, .social-card__link::after, .social-card__media {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0
}

.social-card::before {
    content: '';
    background-image: linear-gradient(0deg, #373737 0, rgba(55, 55, 55, 0) 50%);
    z-index: 1;
    pointer-events: none
}

.social-card__media {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s linear
}

.social-card__link {
    display: flex;
    gap: clamp(4px, 1.5vw, 10px);
    align-items: center;
    margin-top: auto;
    z-index: 1;
    color: #fff;
    font-weight: 700;
    font-size: clamp(.75rem, calc(.568rem + .7767vw), 1.5rem);
    line-height: 0;
    outline: 0
}

.social-card__link::after {
    content: ''
}

.social-card__link:focus-visible, .social-card__link:hover {
    opacity: 1
}

.social-card__link:focus-visible:after {
    outline: #fff dashed 2px;
    outline-offset: -4px
}

.social-card__icon {
    flex-shrink: 0
}

.social-card__icon--youtube {
    width: clamp(14px, 3vw, 29px)
}

.social-card__icon--instagram {
    width: clamp(10px, 2.35vw, 20px)
}

.social-card__icon--facebook {
    width: clamp(10px, 2.55vw, 24px)
}

.social-card__icon--twitter {
    width: clamp(12px, 2.4vw, 24px)
}

.social-card:hover .social-card__media {
    transform: scale(1.032)
}

.dropdown {
    margin-left: 1px
}

.dropdown--column {
    display: grid;
    grid-template-columns:repeat(auto-fit, minmax(180px, 1fr))
}

.dropdown--bg {
    padding: 32px calc((100% - 1545px) / 2)
}

.dropdown__item {
    position: relative;
    margin-left: -1px
}

@media (min-width: 940px) {
    .checkbox-list .c-custom-checkbox:hover span:after {
        opacity: 1
    }

    .dropdown__item:hover .dropdown__header {
        color: #000
    }

    .dropdown__item:hover .dropdown__control {
        border-color: var(--primary-color)
    }

    .dropdown__item:hover + .dropdown__item .dropdown__control {
        border-left-color: var(--primary-color)
    }
}

.dropdown__header {
    position: relative;
    padding: 20px 24px;
    background-color: #fff;
    font-size: 14px;
    line-height: 1.3;
    color: rgba(0, 0, 0, .5);
    z-index: 2;
    height: 100%;
    display: flex;
    align-items: center
}

.dropdown__header span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-line-clamp: 2
}

.dropdown__control {
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: 100%;
    width: 100%;
    border: 1px solid #d0d0d0;
    background-color: transparent;
    font: inherit;
    padding: 0 24px;
    text-align: right
}

.dropdown__arrow {
    color: #d0d0d0;
    transition: transform .3s
}

.dropdown__body {
    visibility: hidden;
    position: absolute;
    z-index: 1;
    background-color: #fff;
    color: #000;
    width: 100%;
    opacity: 0;
    transition: visibility .2s, top .3s, box-shadow .3s, opacity .3s;
    top: 0
}

.breadcrumb__item, .hero-block {
    position: relative
}

.dropdown__item--active {
    z-index: 3
}

.dropdown__item--active .dropdown__header {
    color: #000
}

.dropdown__item--active .dropdown__body {
    visibility: visible;
    opacity: 1;
    top: 100%;
    box-shadow: 0 4px 36px rgba(0, 0, 0, .2);
    border: 1px solid #d0d0d0;
    border-top: none
}

.dropdown__item--active .dropdown__arrow {
    transform: rotate(-180deg);
    color: var(--primary-color)
}

.breadcrumb {
    display: flex;
    flex-direction: column;
    margin-bottom: 30px
}

.breadcrumb--center {
    align-items: center;
    margin-left: var(--container-padding);
    margin-right: var(--container-padding)
}

.breadcrumb__list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px 22px
}

.breadcrumb__item:not(:last-of-type)::after {
    content: '/';
    position: absolute;
    left: calc(100% + 7px);
    opacity: .3
}

.breadcrumb__link {
    font-size: 14px
}

.c-card__body ol, .c-card__body p, .c-card__body ul, .pagination__link {
    font-size: clamp(1rem, calc(.9697rem + .1294vw), 1.125rem)
}

.breadcrumb__link--current {
    color: #999
}

.pagination--center {
    display: flex;
    justify-content: center
}

.pagination--catalog {
    margin-bottom: clamp(2.5rem, calc(1.8932rem + 2.589vw), 5rem)
}

.pagination__list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px 30px;
    align-items: center
}

.pagination__link {
    color: #707070
}

.pagination__link-icon, .profile-card__image {
    display: none
}

.pagination__link--current {
    color: #000
}

.hero-block {
    overflow: hidden;
    min-height: calc(100vh - var(--menu-height));
    color: #fff;
    background-color: #bebebe;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding: 45px var(--container-padding) 30px
}

.hero-block--detailed {
    min-height: 95vh
}

.hero-block--content-end {
    align-items: stretch;
    justify-content: flex-end;
    padding: 88px calc((100% - 1609px) / 2)
}

.hero-block--content-end .title {
    color: inherit;
    max-width: 1200px
}

@media (min-width: 800px) {
    .hero-block--overlay::after {
        content: '';
        background-image: linear-gradient(90deg, rgba(0, 0, 0, .3) 0, rgba(0, 0, 0, 0) 100%);
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        z-index: -1
    }
}

.hero-block__figure {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    width: 100%;
    height: 100%
}

.hero-block__content {
    max-width: 763px
}

.c-card__image, .hero-block__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.hero-block__title {
    color: inherit;
    margin-bottom: 40px;
    font-size: 40px
}

.hero-block__btn {
    color: #171b1c;
    margin-bottom: auto;
    background-color: #fff;
    padding: 15px 45px;
    border-color: #fff;
    font-size: 18px
}

.hero-block__btn:hover {
    border: 2px solid #d0d0d0;
    background-color: transparent;
    color: #fff
}

.hero-block__model-feature {
    margin-top: 30px
}

.hero-block__button {
    align-self: flex-start
}

.model-feature {
    max-width: 1300px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px 64px
}

.model-feature__item {
    max-width: 320px
}

.model-feature__headline {
    font-size: clamp(1.25rem, calc(.9466rem + 1.2945vw), 2.5rem);
    margin-bottom: 8px;
    text-align: center
}

.model-feature__text {
    font-size: 18px;
    text-align: center;
    display: block
}

.page-nav {
    box-shadow: 0 20px 25px rgba(0, 0, 0, .15);
    background-color: #fff;
    position: sticky;
    top: 0;
    z-index: 10
}

.accordion__item--active, .accordion__item:hover {
    box-shadow: 0 4px 36px rgba(0, 0, 0, .2)
}

.video-block::after, .video-block__media {
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0
}

.page-nav__list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 64px;
    justify-content: center;
    font-size: 16px
}

.page-nav__link {
    display: block;
    padding: 33px 0
}

.page-nav__link:focus-visible, .page-nav__link:hover {
    color: var(--primary-color);
    opacity: 1
}

.contact-box a, .error a, .page-nav__link--active {
    color: var(--primary-color)
}

.video-block {
    position: relative;
    color: #fff;
    background-color: #bebebe;
    min-height: calc(100vh - 1px);
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding: 0 calc((100% - 1545px) / 2) 100px
}

.video-block--hero {
    min-height: calc(100vh - var(--menu-height));
    padding-bottom: 118px
}

.video-block--hero .title, .video-block__title {
    color: inherit;
    text-transform: uppercase
}

.video-block::after {
    content: '';
    background-image: linear-gradient(90deg, rgba(0, 0, 0, .3) 0, rgba(0, 0, 0, 0) 100%);
    position: absolute;
    pointer-events: none
}

.video-block__point {
    position: absolute
}

.video-block__content {
    max-width: 1233px
}

.video-block__media {
    position: absolute;
    object-fit: cover
}

.c-link, .gallery-wrap, .video {
    position: relative
}

.video-block__button {
    flex-shrink: 0;
    padding: 0;
    background-color: transparent;
    border: 2px solid #fff;
    transition: opacity .3s;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer
}

.gallery, .gallery__slide {
    padding: 0 calc((100% - 1545px) / 2)
}

.accordion__control, .gallery-thumbs .swiper-slide {
    background-color: #fff;
    cursor: pointer
}

.video-block__button:focus-visible, .video-block__button:hover {
    opacity: .8
}

.video-block__button-pause {
    transition: .3s
}

.video-block__button-play {
    stroke-dasharray: 0 60;
    transition: .4s
}

.video-block__button--active .video-block__button-play {
    stroke-dasharray: 60 60
}

.video-block__button--active .video-block__button-pause {
    transition: .5s;
    opacity: 0
}

.gallery-wrap {
    --gallery-height: clamp(16.625rem, calc(11.8617rem + 20.3236vw), 36.25rem);
    --thumbs-height: clamp(4.125rem, calc(2.6080rem + 6.4725vw), 10.375rem);
    overflow: hidden
}

.gallery-wrap a:focus-visible, .gallery-wrap a:hover {
    opacity: 1
}

.gallery-wrap .carousel-btn {
    position: absolute;
    bottom: calc((var(--thumbs-height) - var(--size)) / 2);
    z-index: 1
}

.gallery-wrap .carousel-btn--prev {
    margin-left: calc((100% - 1770px) / 2)
}

.gallery-wrap .carousel-btn--next {
    margin-right: calc((100% - 1770px) / 2);
    right: 0
}

.gallery {
    width: 100%;
    height: var(--gallery-height);
    margin-bottom: 22px
}

.gallery__slide {
    overflow: hidden;
    width: 100%
}

.gallery .swiper-slide-active .gallery__image {
    opacity: 1
}

.gallery .swiper-slide-active:hover .gallery__image {
    transform: scale(1.1)
}

.gallery__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 1s, transform .6s;
    opacity: .5
}

.gallery-thumbs {
    max-width: 1545px;
    height: var(--thumbs-height)
}

.gallery-thumbs .swiper-slide-thumb-active .gallery-thumbs__image {
    opacity: .3
}

.gallery-thumbs__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 1s
}

.gallery-grid {
    --content: auto-fill;
    --aspect-ratio: 500/256;
    --img-height: 256px;
    display: grid;
    grid-template-columns:repeat(var(--content), minmax(var(--item-width, clamp(160px, 28vw, 500px)), 1fr));
    gap: 32px 20px
}

.gallery-grid__image {
    object-fit: cover;
    aspect-ratio: var(--aspect-ratio);
    max-height: var(--img-height);
    display: block;
    width: 100%
}

.gallery-grid__caption {
    margin-top: 24px;
    font-size: clamp(.875rem, calc(.8447rem + .1294vw), 1rem);
    text-align: center
}

.specification-block {
    display: flex;
    justify-content: space-between;
    gap: 32px 100px
}

.specification {
    max-width: 610px;
    min-width: 350px;
    flex-grow: 1;
    margin: 0
}

.specification__item {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid rgba(0, 0, 0, .2);
    padding: 14px 0 14px 10px
}

.specification__item:last-of-type {
    border-bottom: 1px solid rgba(0, 0, 0, .2)
}

.specification__definition {
    max-width: 300px
}

.specification__definition span {
    color: grey
}

.accordion--specification {
    max-width: 764px;
    flex-grow: 1
}

.accordion__item {
    transition: box-shadow .3s ease-in-out, border .3s;
    border: 1px solid #d0d0d0
}

.accordion__item--active {
    border-color: transparent
}

.c-link__title-icon, .contact-box, .profile-card__place.open {
    box-shadow: 0 12px 64px rgba(0, 0, 0, .15)
}

.accordion__item--active .accordion__body {
    opacity: 1;
    padding: 0 30px 37px
}

.accordion__item--active .accordion__arrow {
    color: var(--primary-color);
    transform: rotate(180deg)
}

.accordion__item + .accordion__item {
    margin-top: 16px
}

.accordion__control {
    padding: 23px 32px;
    border: none;
    border-radius: 0;
    color: inherit;
    font: inherit;
    display: flex;
    align-items: center;
    gap: 20px;
    width: 100%;
    justify-content: space-between;
    font-weight: 700;
    font-size: clamp(1rem, calc(.9393rem + .2589vw), 1.25rem);
    transition: box-shadow .3s ease-in-out
}

.accordion__arrow {
    width: 24px;
    height: 24px;
    background-color: #efefef;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 0;
    transition: transform .3s ease-out
}

.accordion__body {
    max-height: 0;
    overflow: hidden;
    padding: 0 30px;
    will-change: max-height;
    transition: max-height .3s ease-out;
    box-sizing: content-box;
    background-color: #fff
}

.advantages-block, .advantages-block--delivery {
    padding: 70px 65px 75px
}

.accordion__body ol, .accordion__body ul {
    padding-left: 23px;
    max-width: 455px
}

.accordion__body ol li, .accordion__body ul li {
    font-size: 14px;
    line-height: 1.5
}

.accordion__body ol li::marker, .accordion__body ul li::marker {
    color: #cbcbcb;
    font-size: 16px
}

.advantages-block {
    background-color: #fafafa
}

.advantages-block--career {
    padding: 56px 0 85px
}

.advantages-block__title {
    max-width: 1120px;
    margin-bottom: clamp(40px, 4vw, 65px)
}

.advantages-block p + p {
    margin-top: 15px
}

.advantages-block p:not(.advantage__description) {
    max-width: 1232px
}

.advantages {
    display: grid;
    grid-template-columns:repeat(auto-fill, minmax(var(--item-width, clamp(320px, 28vw, 350px)), 1fr));
    gap: 32px clamp(64px, 7vw, 120px)
}

.advantages--delivery {
    gap: 32px clamp(3.125rem, calc(-.7353rem + 6.8627vw), 7.5rem)
}

.advantages--career {
    max-width: 1146px;
    column-gap: clamp(50px, 5.5vw, 102px)
}

.advantages--counter {
    counter-reset: counter
}

.advantages--counter .advantage__title::before {
    counter-increment: counter;
    content: counter(counter) ". "
}

.advantage__icon {
    margin-bottom: 24px;
    display: block
}

.advantage__title {
    margin-bottom: 24px;
    font-size: 24px
}

.advantage__description {
    line-height: 1.55;
    font-size: 16px
}

.advantage__description + .advantage__description {
    margin-top: 20px
}

.warranty-advantages__title {
    margin-bottom: 64px;
    max-width: 1020px
}

@media (max-width: 740px) {
    .advantages-block {
        margin-left: var(--container-padding);
        margin-right: var(--container-padding);
        padding: 45px 40px 61px
    }
}

.card-list {
    --indent: 57px;
    display: grid;
    gap: 64px;
    max-width: 1920px;
    margin-left: auto;
    margin-right: auto
}

.card-list__item:nth-child(odd) .c-card__body {
    justify-self: start;
    margin: 0 var(--container-padding) 0 var(--indent)
}

.card-list__item:nth-child(2n) .c-card__body {
    justify-self: end;
    margin: 0 var(--indent) 0 var(--container-padding)
}

.card-list__item:nth-child(2n) .c-card__figure {
    order: 0
}

.c-card {
    display: grid;
    grid-template-columns:1fr 1fr;
    align-items: center
}

.c-card__figure {
    align-self: start;
    order: -1;
    flex-grow: 1;
    margin: 0;
    max-width: 960px;
    aspect-ratio: 960/624;
    overflow: hidden
}

.c-card__body {
    max-width: 716px
}

.article__heading, .c-card__body p:only-of-type, .c-card__title, .contact-box p {
    margin-bottom: 24px
}

.c-card__body ol li + li, .c-card__body p + p, .c-card__body ul li + li {
    margin-top: 12px
}

.c-card__body ol, .c-card__body ul {
    padding-left: 25px;
    line-height: 1.45
}

.c-card__body ol li::marker, .c-card__body ul li::marker {
    font-size: 12px
}

.image-block {
    overflow: hidden;
    max-width: 1920px;
    margin-left: auto;
    margin-right: auto
}

@supports not (aspect-ratio:1/1) {
    .social-links li + li {
        margin-left: 8px
    }

    .trailer-card {
        height: clamp(130px, 25vw, 301px)
    }

    .social-card {
        padding-top: 42.4%
    }

    .gallery-grid__image {
        height: var(--img-height)
    }

    .image-block {
        max-height: 624px
    }
}

.image-block__img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    aspect-ratio: 1920/624
}

.links {
    display: grid;
    row-gap: 16px
}

.c-link {
    background-color: #fafafa;
    padding: 45px 83px 37px 65px;
    display: grid;
    grid-template-columns:max-content 1fr max-content;
    gap: 8px 16px;
    transition: box-shadow .3s ease-in-out
}

.c-link__icon {
    grid-row: span 2;
    grid-column: 1/1
}

.c-link__desc, .c-link__title {
    grid-column: 2/-2;
    max-width: 927px
}

.c-link__title {
    grid-row: 1;
    font-size: 24px;
    line-height: 1.15;
    color: #000;
    font-weight: 700;
    outline: 0
}

.c-link__title-icon {
    width: 32px;
    height: 32px;
    background-color: #fff;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-left: 12px
}

.c-link__title::after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.c-link__title:focus-visible, .c-link__title:hover {
    opacity: 1
}

.c-link__title:focus-visible::after {
    outline: 2px dashed var(--primary-color)
}

.c-link__desc {
    grid-row: 2;
    font-size: 16px;
    color: rgba(0, 0, 0, .5);
    line-height: 1.62
}

.c-link__time {
    align-self: center;
    font-size: 16px;
    grid-column-end: -1
}

@media (min-width: 1250px) {
    @supports not (aspect-ratio:1/1) {
        .menu__item + .menu__item {
            margin-left: clamp(20px, 5vw, 38px)
        }
    }.menu__item-header .menu__link {
    padding: 33px 0
}

    .menu-button, .menu__item--hidden, .menu__mobile-control {
        display: none
    }

    .menu__item--dropdown .menu__link {
        cursor: pointer
    }

    .menu__item--dropdown:focus-within .menu__list--nested, .menu__item--dropdown:hover .menu__list--nested {
        display: flex;
        z-index: 3
    }

    .menu__item--dropdown:focus-within .menu__item-header .menu__link, .menu__item--dropdown:hover .menu__item-header .menu__link {
        opacity: .6
    }

    .menu__list--nested {
        gap: 50px clamp(20px, 5vw, 31px);
        color: #7d7d7d
    }

    .menu__list--nested .menu__link {
        padding: 20px 9px
    }

    .menu__list--nested .menu__link:focus-visible, .menu__list--nested .menu__link:hover {
        color: #000;
        opacity: 1;
        border-bottom: 1px solid #000
    }

    .c-link:focus-within, .c-link:hover {
        background-color: #fff;
        box-shadow: 0 12px 64px rgba(0, 0, 0, .15);
        z-index: 1
    }

    .profile-card:focus-within, .profile-card:hover {
        z-index: 1;
        box-shadow: 0 12px 64px rgba(0, 0, 0, .15)
    }

    .profile-card__place:focus-visible, .profile-card__place:hover {
        box-shadow: 0 12px 64px rgba(0, 0, 0, .15)
    }
}

@media (max-width: 1250px) {
    .language-dropdown--mobile {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%
    }

    .language-dropdown--mobile .language-dropdown__control {
        width: 100%;
        height: calc(100% + 2px);
        justify-content: center
    }

    .language-dropdown--mobile .language-dropdown__list {
        top: 100%;
        width: 100%;
        font-size: 14px
    }

    .language-dropdown--mobile.language-dropdown--open .language-dropdown__control {
        color: #000;
        background-color: #fff;
        z-index: 3;
        border: 1px solid var(--primary-color)
    }

    .menu-button {
        flex-shrink: 0;
        display: flex;
        justify-content: center;
        flex-direction: column;
        row-gap: 5px;
        align-items: center;
        position: relative;
        background-color: transparent;
        width: 40px;
        height: 40px;
        border: 1px solid rgba(0, 0, 0, .3);
        border-radius: 50%;
        padding: 0;
        overflow: hidden
    }

    .menu-button--open, .menu-button__line {
        background-color: #000
    }

    .menu-button--open .menu-button__line {
        background-color: #fff
    }

    .menu-button__line {
        width: 20px;
        height: 1px;
        position: relative;
        transition: transform .2s linear
    }

    .menu-button--open .menu-button__line:first-child {
        transform: rotate(45deg);
        top: 6px
    }

    .menu-button--open .menu-button__line:last-child {
        transform: rotate(-45deg);
        bottom: 6px
    }

    .menu-button--open .menu-button__line:not(:first-child):not(:last-child) {
        transform: scale(0)
    }

    .c-link__desc, .c-link__time, .c-link__title {
        grid-column: 2/-1
    }

    .c-link {
        padding: 27px 40px;
        gap: 16px 32px
    }

    .c-link__title {
        font-size: 18px;
        max-width: 440px
    }

    .c-link__title-icon {
        flex-shrink: 0
    }

    .c-link__desc {
        margin-bottom: 16px
    }
}

.video {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    background-color: #000
}

.video__link, .video__media {
    position: absolute;
    height: 100%
}

.video--full-height {
    height: 100%;
    padding-bottom: 0
}

.video__link {
    top: 0;
    left: 0;
    width: 100%
}

.video__media {
    top: 0;
    left: 0;
    width: 100%;
    border: none;
    object-fit: cover
}

.video__button {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    display: none;
    padding: 0;
    width: 68px;
    height: 48px;
    border: none;
    background-color: transparent;
    transform: translate(-50%, -50%);
    cursor: pointer
}

.video__button-shape {
    fill: #212121;
    fill-opacity: 0.8
}

.video__button-icon {
    fill: #ffffff
}

.video__button:focus {
    outline: 0
}

.video:hover .video__button-shape, .video__button:focus .video__button-shape {
    fill: #ff0000;
    fill-opacity: 1
}

.video--enabled {
    cursor: pointer
}

.balloon__img, .video--enabled .video__button {
    display: block
}

.profile-cards {
    display: grid;
    grid-template-columns:repeat(auto-fill, minmax(var(--item-width, clamp(215px, 28vw, 300px)), 1fr));
    gap: 24px
}

.profile-card {
    max-width: 550px;
    transition: box-shadow .3s;
    background-color: #fff
}

.profile-card__media {
    position: relative;
    margin: 0;
    padding-top: calc((383 / 368) * 100%);
    background-color: #bebebe
}

.profile-card__body {
    padding: 30px 36px 128px;
    display: flex;
    flex-direction: column;
    position: relative
}

.profile-card__image, .profile-card__video {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    height: 100%;
    width: 100%
}

.profile-card__video {
    --object-position: center;
    object-position: var(--object-position);
    width: calc(100% + 1px);
    height: calc(100% + 1px)
}

.profile-card__title {
    font-size: 24px;
    line-height: 1.15;
    margin: 0 0 3px;
    font-weight: 400
}

.profile-card__place-list li span:not(.profile-card__place-title), .profile-card__tagline {
    font-size: 16px;
    color: rgba(0, 0, 0, .5)
}

.profile-card__tagline {
    line-height: 1.62;
    margin-bottom: 19px
}

.profile-card__email, .profile-card__tel {
    font-size: 18px;
    line-height: 1.45;
    margin-bottom: 1px;
    display: block;
    outline-offset: 5px
}

.profile-card__email {
    color: var(--primary-color);
    margin-bottom: 0
}

.profile-card__place {
    cursor: pointer;
    background-color: #f8f8f8;
    border-radius: 32px;
    text-align: center;
    font-size: clamp(.875rem, calc(.7083rem + .3472vw), 1.125rem);
    line-height: 1.22;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    position: absolute;
    margin-left: 35px;
    margin-right: 35px;
    bottom: 38px;
    left: 0;
    right: 0;
    padding: 13px 28px 13px 25px;
    transition: box-shadow .3s;
    height: clamp(60px, 5vw, 67px);
    outline: 0
}

.profile-card__place:focus-visible {
    outline: 2px solid var(--primary-color)
}

.profile-card__place-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    text-align: left;
    width: 100%
}

.profile-card__place-list li {
    row-gap: 2px;
    display: none;
    flex-direction: column;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden
}

.profile-card__place-list li:first-of-type:not(:only-child) {
    display: flex;
    position: relative
}

.profile-card__place-list li:first-of-type:not(:only-child) .profile-card__place-title {
    padding-right: 15px
}

.profile-card__place-list li:first-of-type:not(:only-child)::after {
    content: '';
    position: absolute;
    width: 12px;
    height: 7px;
    right: 0;
    top: 20px;
    transition: transform .3s;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg width='13' height='8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.55 1 6.27 6.07c-1.04-1-4.153-3.987-5.268-5.057' stroke='%231A1F22' stroke-width='2'/%3E%3C/svg%3E%0A")
}

.profile-card__place-list li:only-child {
    display: flex;
    text-align: center
}

.profile-card__place-title {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden
}

.profile-card__place.open {
    padding: 22px 28px 22px 25px;
    height: auto
}

#map, .article__video::after {
    height: 100%;
    right: 0;
    position: absolute
}

.profile-card__place.open .profile-card__place-list li {
    display: block;
    padding-right: 15px
}

.profile-card__place.open .profile-card__place-list li:first-of-type:not(:only-child)::after {
    transform: rotate(180deg);
    top: 8px
}

.profile-card__place.open .profile-card__place-list li span:not(.profile-card__place-title), .service-map ymaps[class*=controls__control] {
    display: none
}

@media (max-width: 1024px) {
    .profile-card__video {
        display: none
    }

    .profile-card__image {
        display: block
    }
}

@media (max-width: 860px) {
    .title--contacts {
        text-align: left
    }

    .profile-cards {
        grid-template-columns:1fr
    }

    .profile-card {
        max-width: unset;
        display: flex;
        flex-wrap: wrap
    }

    .profile-card__body {
        padding: 27px 32px 120px
    }

    .profile-card__media {
        padding: 0;
        max-width: 264px;
        min-width: 200px;
        flex-shrink: 0
    }

    .profile-card__title {
        font-size: 18px;
        font-weight: 700;
        margin-bottom: 2px
    }

    .profile-card__tagline {
        font-size: 16px;
        margin-bottom: 16px
    }

    .profile-card__email, .profile-card__place-list li span:not(.profile-card__place-title), .profile-card__tel {
        font-size: 14px
    }

    .profile-card__image {
        position: static;
        aspect-ratio: 264/275
    }

    .profile-card__place {
        max-width: 250px;
        margin-left: 0;
        margin-right: 0;
        left: 32px;
        bottom: 32px;
        height: auto;
        padding: 15px 23px
    }

    .profile-card__place-list li:first-of-type:not(:only-child)::after {
        top: 15px
    }
}

@media (max-width: 690px) {
    .profile-cards {
        row-gap: 16px
    }

    .profile-card {
        margin: 0 auto;
        background-color: #fafafa;
        width: 100%;
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 26px 26px 118px;
        position: relative
    }

    .profile-card__body {
        padding: 0;
        position: static;
        width: 100%
    }

    .profile-card__media {
        max-width: 128px;
        min-width: unset;
        width: 128px;
        height: 128px;
        border-radius: 50%;
        overflow: hidden;
        margin-bottom: 24px
    }

    .profile-card__image {
        aspect-ratio: unset
    }

    .profile-card__place {
        max-width: 292px;
        left: 0;
        right: 0;
        bottom: 37px;
        margin: 0 auto;
        box-shadow: 0 12px 64px rgba(0, 0, 0, .15)
    }
}

@media (max-width: 380px) {
    .profile-card__place {
        margin-left: 26px;
        margin-right: 26px
    }
}

.article__title, .contact-box__title {
    margin-bottom: 16px
}

.article__meta {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    align-items: center
}

.article__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 16px
}

.article__link {
    padding: 12px 18px;
    line-height: 1.37;
    font-weight: 500;
    background-color: #fafafa;
    border-radius: 30px;
    display: block
}

.article__date, .article__last-modified {
    font-size: 14px;
    color: rgba(0, 0, 0, .4)
}

.article__video {
    padding-bottom: calc((134 / 309) * 100%);
    margin: clamp(32px, 4vw, 48px) 0;
    position: relative
}

.article__video::after {
    content: '';
    left: 0;
    width: 100%;
    background-image: linear-gradient(360deg, rgba(0, 0, 0, .3) 0, rgba(0, 0, 0, 0) 100%);
    pointer-events: none
}

.article__video iframe.video__media {
    z-index: 1
}

.article__gallery {
    --content: auto-fit;
    --aspect-ratio: 763/400;
    --img-height: 400px;
    --item-width: clamp(300px, 35vw, 600px);
    margin: clamp(24px, 3vw, 48px) 0 clamp(32px, 3vw, 48px)
}

.article__gallery .gallery-grid__item:nth-child(odd):last-child, .article__gallery .gallery-grid__item:only-of-type {
    --aspect-ratio: 1545/600;
    --img-height: 600px;
    grid-column: span 2
}

.contacts-list {
    display: flex;
    flex-wrap: wrap
}

.c-contact {
    max-width: 368px;
    font-size: 16px;
    line-height: 1.25
}

.c-contact__inline {
    display: flex;
    flex-wrap: wrap;
    gap: 6px
}

.contacts-list__item {
    border-right: 1px solid #ddd;
    width: calc(100% / 4 - 40px);
    margin-right: 40px
}

.contacts-list__item:last-of-type {
    border-right: 0;
    margin-right: 0;
    width: calc(100% / 4 - 30px)
}

.c-contact__title {
    margin: 0 0 16px;
    color: #1a1f22;
    font-family: Roboto;
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: normal
}

.c-contact__email, .c-contact__tel {
    font-family: Roboto;
    font-size: 20px;
    font-weight: 400;
    font-style: normal;
    line-height: normal
}

.c-contact__tel {
    color: #1a1f22;
    margin-bottom: 6px
}

.c-contact__email {
    display: block;
    color: var(--primary-color)
}

#contact-page {
    padding-bottom: 40px
}

#contact-page .block__title {
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 22px
}

#contact-page .block p + p {
    margin-top: 22px
}

#modal-contact {
    position: relative;
    visibility: visible;
    pointer-events: all;
    border: 1px solid #d6d6d6;
    padding: 52px 54px 67px 55px;
    z-index: 1;
    margin-bottom: 49px;
    max-width: 90%
}

#modal-contact .form__group textarea {
    max-height: 126px;
    height: 118px
}

#modal-contact .hystmodal__window {
    opacity: 1;
    z-index: 99;
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100%;
    transform: none
}

#modal-contact h2.modal__title {
    text-align: left;
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 22px
}

#modal-contact .form {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column
}

#modal-contact .form .form__group {
    display: flex;
    width: 100%;
    margin-bottom: 0
}

#modal-contact .form .form__group:last-of-type {
    flex-direction: row-reverse
}

#modal-contact .form .form__group:first-of-type .form__group__colum:first-of-type, #modal-contact .form .form__group:last-of-type .form__group__colum:last-of-type {
    width: 214px;
    gap: 20px;
    margin-bottom: 0
}

#modal-contact .form .form__group:first-of-type .form__group__colum:last-of-type, #modal-contact .form .form__group:last-of-type .form__group__colum:first-of-type {
    width: calc(100% - 214px);
    margin-bottom: 0
}

#modal-contact input {
    margin-bottom: 20px
}

#modal-contact .form__checkbox {
    padding-top: 7px;
    margin-bottom: 0
}

#modal-contact .c-custom-checkbox span {
    line-height: 35px
}

#modal-contact .form__button {
    border-color: #000;
    background: #000;
    color: #fff
}

#modal-contact .form__button:hover {
    border-color: #000;
    background: #fff;
    color: #000
}

@media (max-width: 1000px) {
    .contacts-list {
        justify-content: flex-start;
        gap: 32px 75px
    }

    .c-contact__title {
        font-size: 24px;
        margin-bottom: 16px
    }

    .c-contact__email, .c-contact__tel {
        font-size: 16px
    }
}

@media (max-width: 900px) {
    .contacts-list {
        display: grid;
        grid-template-columns:auto auto
    }
}

@media (max-width: 550px) {
    .pagination__item:not(:first-of-type):not(:last-of-type):not(:nth-child(2)):not(:nth-child(3)):not(:nth-last-of-type(2)):not(:nth-last-of-type(3)) {
        display: none
    }

    .advantages-block {
        padding: 47px 16px;
        margin: 0
    }

    .c-link__desc, .c-link__icon, .c-link__time, .c-link__title {
        grid-column: auto;
        grid-row: auto
    }

    .c-link {
        padding: 27px 30px;
        gap: 0;
        grid-template-columns:1fr
    }

    .c-link__icon {
        margin-bottom: 30px
    }

    .c-link__title {
        margin-bottom: 16px
    }

    .c-link__desc {
        margin-bottom: 32px
    }

    .contacts-list {
        gap: 32px
    }
}

@media (max-width: 425px) {
    .contacts-list {
        grid-template-columns:1fr;
        gap: 16px;
        margin: 0 16px
    }

    .contacts-list__item {
        padding-bottom: 16px;
        border-bottom: .5px solid #d0d0d0
    }

    .contacts-list__item:last-of-type {
        padding-bottom: 0;
        border: 0
    }
}

.main__section--contacts {
    padding: 172px 0;
    padding-left: calc((100% - 1609px) / 2);
    position: relative;
    overflow: hidden
}

.main__section--map-ratio {
    position: relative;
    padding: 0 0 calc((329 / 960) * 100%)
}

.contact-box {
    margin-left: var(--container-padding);
    font-size: clamp(1rem, calc(.9697rem + .1294vw), 1.125rem);
    background-color: #fff;
    max-width: 468px;
    padding: 34px 48px 42px;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1
}

.contact-box a + a {
    margin-top: 9px
}

#map {
    width: 100vw;
    padding: 0;
    margin: 0;
    top: 0;
    bottom: 0
}

.description {
    display: block;
    color: #999;
    font-size: 10px;
    line-height: 17px
}

#map .ymaps-2-1-79-balloon__tail, #map [class*=copyrights-pane], .service-map [class*=copyrights-pane] {
    display: none !important
}

#map [class*=ground-pane] {
    filter: grayscale(1);
    transition: filter .3s linear
}

#map ymaps[class*=controls__control] {
    margin-left: 30px !important;
    opacity: 0;
    transition: opacity .3s
}

#map:hover ymaps[class*=controls__control] {
    opacity: 1
}

#map ymaps[class*=balloon__content] {
    padding: 23px 30px 28px;
    margin-right: 0
}

#map ymaps[class*=balloon__close] {
    float: unset;
    position: absolute;
    right: 10px;
    top: 10px;
    z-index: 2;
    box-shadow: none !important;
    opacity: 0
}

#map ymaps[class*=balloon__close] + ymaps[class*=balloon__content] {
    padding-right: 30px;
    margin-right: 0
}

.balloon__title {
    font-size: 20px;
    line-height: 1.6
}

.balloon__subtitle {
    color: rgba(0, 0, 0, .5);
    line-height: 1.6;
    margin-bottom: 10px;
    font-size: 16px
}

.balloon__link {
    display: block;
    outline: 0
}

.balloon__images {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    max-width: 275px
}

@media (max-width: 950px) {
    .main__section--contacts {
        padding: 0;
        display: flex
    }

    .contact-box {
        margin: 0;
        max-width: 376px;
        width: 100%;
        padding: 50px 48px 60px 0;
        padding-left: var(--container-padding);
        font-size: 16px
    }

    .contact-box__title {
        margin-bottom: 7px;
        font-size: 26px
    }

    .contact-box p {
        margin-bottom: 16px
    }

    .contact-box a + a {
        margin-top: 0
    }

    #map {
        position: static;
        height: 291px
    }

    #map:hover ymaps[class*=controls__control] {
        opacity: 0
    }

    .balloon__title {
        font-size: 16px
    }

    .balloon__subtitle {
        font-size: 12px;
        margin-bottom: 6px
    }

    .balloon__images {
        gap: 8px
    }

    .balloon__img {
        width: 77px;
        height: 48px;
        object-fit: cover
    }

    #map ymaps[class*=balloon__close] + ymaps[class*=balloon__content] {
        margin-right: 0;
        padding-right: 23px
    }

    #map ymaps[class*=balloon] {
        max-width: 215px;
        box-sizing: border-box
    }

    #map ymaps[class*=balloon__content] {
        padding: 11px 23px 19px
    }

    #map ymaps[class*=balloon__close] {
        right: 9px;
        top: 6px
    }
}

@media (max-width: 950px) and (min-width: 701px) {
    #map ymaps[class*=panel-pane] {
        left: 90px !important;
        bottom: 63px !important
    }

    #map ymaps[class*=placemark-overlay] [class*="-image"] {
        left: -9px !important;
        top: -34px !important;
        width: 32px !important;
        height: 32px !important;
        background-size: 32px, 32px !important
    }
}

@media (max-width: 700px) {
    .main__section--contacts {
        flex-direction: column
    }

    .contact-box {
        max-width: 100%;
        padding: 27px var(--container-padding)
    }

    #map {
        height: 356px
    }

    #map ymaps[class*=balloon] {
        max-width: unset
    }

    #map ymaps[class*=balloon__content] {
        padding-top: 15px
    }

    #map ymaps[class*=placemark-overlay] [class*="-image"] {
        left: -9px !important;
        top: -34px !important;
        width: 27px !important;
        height: 27px !important;
        background-size: 27px, 27px !important
    }
}

@media (max-width: 450px) {
    #map ymaps[class*=panel-pane]:not(:empty) {
        box-shadow: 0 0 0 100vw rgba(0, 0, 0, .5)
    }

    #map ymaps[class*=balloon-panel] {
        max-width: calc(100% - 32px);
        left: 16px !important
    }

    #map ymaps[class*=balloon] {
        border-top-left-radius: 15px;
        border-top-right-radius: 15px
    }

    #map ymaps[class*=balloon__close] {
        opacity: 1
    }

    #map ymaps[class*=balloon__close-button] {
        background-image: url("data:image/svg+xml,%3Csvg width='13' height='8' viewBox='0 0 13 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.5498 0.9999C6.28755 6.05063 7.04133 5.32744 6.26804 6.06909C5.2273 5.07055 2.11457 2.08284 0.999978 1.01256' stroke='black' stroke-width='2'/%3E%3C/svg%3E%0A")
    }
}

.main__section--map-service {
    padding-bottom: calc((329 / 960) * 100%);
    position: relative
}

@media (max-width: 1250px) {
    .main__section--map-service {
        padding-bottom: calc((12 / 25) * 100%)
    }
}

.service-map {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0
}

.service-map ymaps[class*="-svg-icon-content"] {
    color: #009d72;
    font-family: Roboto, Arial, Helvetica, sans-serif !important;
    font-weight: 900 !important
}

.service-map [class*=ground-pane] {
    filter: grayscale(1)
}

.footer {
    padding: clamp(30px, 6vw, 65px) 0;
    background-color: #1a1f22;
    color: #ffff;
    position: sticky;
    z-index: -1;
    bottom: 0
}

.cookie, .hystmodal__shadow {
    background-color: #000;
    bottom: 0
}

.footer__container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 32px 60px
}

.footer h2, .footer h3, .footer h4, .footer h5 {
    color: inherit
}

.footer a {
    color: rgba(255, 255, 255, .5);
    line-height: 1.3
}

.footer a:focus-visible, .footer a:hover {
    opacity: 1;
    color: #fff
}

.footer__tel[href*=tel] {
    margin-top: 0;
    display: block;
    color: #fff;
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 0
}

.footer__tel[href*=tel]:focus-visible, .footer__tel[href*=tel]:hover {
    opacity: .7
}

.footer__request[href] {
    font-weight: 400;
    display: block;
    font-size: 16px;
    color: var(--primary-color);
    margin-bottom: 32px
}

.footer__request[href]:focus-visible, .footer__request[href]:hover {
    color: var(--primary-color);
    opacity: .7
}

.footer__logo {
    display: block;
    margin-bottom: 24px
}

.footer__logo .logo__icon, .history .breadcrumb__link {
    color: #fff
}

.footer__links {
    display: grid;
    gap: 12px;
    margin-bottom: auto
}

.footer__menu {
    position: relative;
    flex-basis: clamp(400px, 51vw, 944px);
    display: grid;
    justify-content: space-between;
    gap: 40px
}

.footer__menu-header {
    margin-bottom: 20px;
    position: relative;
    display: flex;
    justify-content: space-between;
    column-gap: 20px
}

.cookie, .hystmodal {
    position: fixed;
    left: 0;
    right: 0
}

.footer__menu-title {
    font-size: 18px;
    width: 100%
}

.footer__menu-title, .footer__menu-title a {
    color: #fff;
    display: block
}

.footer__menu-btn, .footer__menu-icon {
    display: none
}

.footer__menu-list {
    display: grid;
    gap: 12px
}

.footer__menu-item--trailers {
    max-width: 310px
}

.footer__menu-item--owner {
    margin-top: 42px;
    grid-column: 3;
    grid-row: 1
}

.footer__menu-item--stock {
    grid-column: 3;
    grid-row: 1
}

.footer__social {
    margin-bottom: 32px;
    flex-wrap: wrap
}

.footer__social .social-links__link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    background-color: rgba(255, 255, 255, .05);
    transition-property: background-color, filter;
    transition-duration: .3s
}

.footer__social .social-links__link:focus-visible, .footer__social .social-links__link:hover {
    filter: invert(1);
    background-color: #000;
    mix-blend-mode: screen
}

.footer__copyright {
    display: flex;
    align-items: center;
    gap: 16px;
    color: rgba(255, 255, 255, .5);
    line-height: 1.37
}

.footer__iso {
    width: 48px;
    height: 48px;
    object-fit: contain
}

.cookie {
    z-index: 10;
    color: #fff
}

.cookie__content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    padding-top: 32px;
    padding-bottom: 32px
}

.cookie p {
    max-width: 1200px
}

.cookie__button {
    color: #fff;
    flex-shrink: 0
}

.cookie a {
    text-decoration: underline
}

.error {
    display: grid;
    place-items: center;
    place-content: center;
    max-width: 800px;
    height: calc(100vh - var(--menu-height));
    text-align: center
}

.error__title {
    font-size: 24px;
    line-height: 1.35;
    margin: 0 0 clamp(24px, 3vw, 32px)
}

.error__title span {
    font-size: clamp(7rem, calc(6.1808rem + 3.4951vw), 10.375rem);
    display: block;
    line-height: .9
}

.hystmodal__opened, .hystmodal__shadow {
    position: fixed;
    right: 0;
    left: 0;
    overflow: hidden
}

.hystmodal__shadow {
    border: none;
    display: block;
    width: 100%;
    top: 0;
    pointer-events: none;
    z-index: 98;
    opacity: 0;
    transition: opacity .15s
}

.hystmodal__shadow--show {
    pointer-events: auto;
    opacity: .6
}

.hystmodal {
    top: 0;
    bottom: 0;
    overflow: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    opacity: 1;
    pointer-events: none;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-start;
    z-index: 99;
    visibility: hidden
}

.hystmodal--active {
    opacity: 1
}

.hystmodal--active, .hystmodal--moved {
    pointer-events: auto;
    visibility: visible
}

.hystmodal__wrap {
    flex-shrink: 0;
    flex-grow: 0;
    width: 100%;
    min-height: 100%;
    margin: auto;
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    justify-content: center
}

.hystmodal__window {
    margin: 50px var(--container-padding);
    box-sizing: border-box;
    flex-shrink: 0;
    flex-grow: 0;
    background: #fff;
    width: 100%;
    max-width: 550px;
    overflow: visible;
    transition: transform .2s, opacity .2s;
    transform: scale(.9);
    opacity: 0
}

.hystmodal--active .hystmodal__window {
    transform: scale(1);
    opacity: 1
}

.hystmodal__container {
    padding: clamp(2rem, calc(1.6511rem + 1.4887vw), 3.4375rem) clamp(1rem, calc(.7573rem + 1.0356vw), 2rem) clamp(1.5rem, calc(1.1814rem + 1.3592vw), 2.8125rem)
}

.hystmodal__container p + p {
    margin-top: 17px
}

.hystmodal__container p:last-of-type {
    margin-bottom: clamp(24px, 3vw, 32px)
}

.hystmodal__title {
    text-align: center;
    margin-bottom: clamp(16px, 3vw, 24px)
}

.hystmodal__close {
    position: absolute;
    z-index: 10;
    top: 26px;
    right: 24px;
    display: block;
    width: 30px;
    height: 30px;
    border: none;
    font-size: 0;
    cursor: pointer;
    outline: 0;
    background-color: transparent;
    padding: 0
}

.hystmodal__close:focus-visible {
    outline: #afb3b9 dotted 2px;
    outline-offset: 2px
}

@media (min-width: 550px) {
    .modal {
        scrollbar-width: none
    }

    .modal::-webkit-scrollbar {
        width: 0
    }
}

.modal__window {
    max-width: 616px;
    width: auto
}

.modal__title {
    text-align: center;
    font-size: clamp(1.625rem, calc(1.534rem + .3883vw), 2rem);
    margin-bottom: clamp(24px, 5.2vw, 40px)
}

.modal-success__window {
    width: auto;
    padding: clamp(22px, 13vw, 97px) clamp(16px, 12.2vw, 72px)
}

.modal-success__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center
}

.modal-success__icon {
    --size: clamp(100px, 7vw, 128px);
    margin-bottom: clamp(30px, 5vw, 69px);
    width: var(--size);
    height: var(--size)
}

.modal-success__title {
    text-align: center;
    margin-bottom: 16px
}

.modal-success__text {
    font-size: 18px;
    line-height: 1.4
}

.modal-success__product-image {
    max-width: 270px;
    max-height: 194px;
    object-fit: contain;
    margin-bottom: 32px;
    display: block
}

.modal-form__window {
    width: auto;
    padding: clamp(22px, 5.5vw, 56px) clamp(16px, 7.2vw, 56px)
}

@media (max-width: 550px) {
    .main__section--map-service {
        padding-bottom: calc((9 / 11) * 100%)
    }

    .modal__window {
        margin: 0
    }

    .modal-form__window {
        padding: 21px 16px
    }

    h2.modal-success__title {
        text-align: center
    }

    .hystmodal__title {
        text-align: left
    }
}

@media (min-width: 1024px) {
    .fancybox__nav .carousel__button {
        border-radius: 50%;
        background-color: #fff;
        --carousel-button-svg-width: 10px;
        --carousel-button-svg-height: 15px
    }

    .fancybox__nav .carousel__button svg {
        filter: none;
        color: #000
    }
}

.fancybox__thumbs .carousel__slide {
    padding: 8px;
    opacity: .5
}

.fancybox__thumbs .carousel__slide.is-nav-selected, .reviews-btn:hover {
    opacity: 1
}

@media (min-width: 1950px) {
    .header__bottom, .header__topline {
        padding-left: calc((100% - 1855px) / 2);
        padding-right: calc((100% - 1855px) / 2)
    }

    .menu__list--nested {
        padding: 20px calc((100% - 1874px) / 2)
    }
}

@media (min-width: 1925px) {
    .card-list, .image-block {
        max-width: 1855px
    }
}

@media (max-width: 1840px) {
    .gallery, .gallery-thumbs {
        padding: 0 147px
    }

    .gallery-thumbs {
        max-width: unset
    }

    .gallery-wrap .carousel-btn--prev {
        margin-left: 50px
    }

    .gallery-wrap .carousel-btn--next {
        margin-right: 50px
    }
}

@media (max-width: 1673px) {
    .hero-block--content-end {
        padding: 88px var(--container-padding)
    }

    .hero-block--content-end .hero-block__figure {
        position: absolute
    }

    .hero-block--content-end .hero-block__figure::after {
        display: none
    }

    .hero-block--content-end .hero-block__image {
        max-height: unset;
        min-height: unset
    }
}

@media (max-width: 1610px) {
    .video-block {
        padding-left: var(--container-padding);
        padding-right: var(--container-padding)
    }
}

@media (max-width: 1367px) and (min-width: 1250px) and (hover: hover) {
    :root {
        --menu-height: 90px
    }

    .header {
        font-size: 14px
    }

    .header__topline {
        padding-top: 8px;
        padding-bottom: 8px
    }

    .header__bottom {
        padding-top: 16px;
        padding-bottom: 16px
    }

    .header__logo {
        margin-right: 20px
    }

    .header__logo .logo__icon {
        width: 163px
    }

    .hero-block {
        padding: 30px var(--container-padding)
    }

    .hero-block .breadcrumb {
        margin-bottom: 20px
    }

    .hero-block__title {
        font-size: 25px
    }

    .model-feature__headline {
        font-size: 23px;
        margin-bottom: 2px;
        font-weight: 500
    }

    .model-feature__icon {
        width: 20px
    }

    .model-feature__text {
        font-size: 16px
    }
}

@media (max-width: 1250px) {
    .menu, .menu__list--main {
        overscroll-behavior: contain
    }

    :root {
        --menu-height: 90px;
        --container-padding: 56px
    }

    .contacts-list__item {
        width: calc(100% / 2 - 40px);
        margin-bottom: 40px
    }

    .contacts-list__item:nth-of-type(2) {
        border-right: 0
    }

    .header__contacts, .header__topline {
        display: none
    }

    .contacts-list__item:last-of-type {
        width: calc(100% / 2)
    }

    .header__bottom, .header__topline {
        padding: 25px var(--container-padding)
    }

    .header__menu {
        height: calc(100vh - var(--menu-height));
        display: flex;
        flex-direction: column;
        position: fixed;
        top: var(--menu-height);
        bottom: 0;
        width: 376px;
        right: 0;
        z-index: 10;
        background-color: #1a1f22;
        color: #fff;
        transition: transform .3s, visibility .3s;
        visibility: hidden;
        transform: translateX(100%)
    }

    .header__menu--open {
        visibility: visible;
        transform: translateX(0)
    }

    .header__menu--open::before {
        content: '';
        width: 100vw;
        height: 100vh;
        position: fixed;
        left: -100vw;
        z-index: -3;
        pointer-events: none;
        background: linear-gradient(90deg, rgba(0, 0, 0, .2) 0, rgba(0, 0, 0, 0) 100%)
    }

    .header__menu-buttons {
        display: grid;
        grid-template-columns:1fr 1fr;
        text-align: center;
        align-items: center;
        justify-items: center;
        border-top: 1px solid rgba(255, 255, 255, .3);
        border-bottom: 1px solid rgba(255, 255, 255, .3)
    }

    .header__menu-buttons--bottom {
        margin-top: auto
    }

    .header__menu-btn {
        height: 100%;
        width: 100%;
        display: grid;
        place-items: center
    }

    .actions__item + .actions__item, .header__menu-btn:last-of-type {
        border-left: 1px solid rgba(255, 255, 255, .3)
    }

    .header__email, .header__tel {
        padding: 22px 16px;
        display: block;
        font-size: 14px;
        width: 100%
    }

    .header__social {
        margin: 0
    }

    .language-select {
        position: static;
        transform: translateY(0);
        background-position: center right;
        min-width: 50px;
        max-width: 60px
    }

    .menu--main {
        height: calc(100vh - var(--menu-height) - 124px);
        overflow: hidden
    }

    .menu__list--main {
        overflow-y: auto;
        width: 100%;
        height: 100%;
        display: grid;
        row-gap: 24px;
        align-content: start;
        font-size: 18px;
        font-weight: 700;
        padding: 21px 24px
    }

    .menu__list--nested {
        row-gap: 12px;
        position: static;
        background-color: transparent;
        width: auto;
        padding: 0 15px;
        color: rgba(255, 255, 255, .5);
        font-weight: 400;
        display: none;
        box-shadow: none
    }

    .menu__item--1 {
        order: 1
    }

    .menu__item--2 {
        order: 4
    }

    .menu__item--3 {
        order: 3
    }

    .menu__item--4 {
        order: 2
    }

    .menu__item--5 {
        order: 5
    }

    .menu__item--6 {
        order: 6
    }

    .menu__item--7 {
        order: 7
    }

    .menu__item--8 {
        order: 8
    }

    .menu__item--9 {
        order: 9
    }

    .menu__item--10 {
        order: 10
    }

    .menu__item--dropdown, .menu__item-header {
        position: relative
    }

    .menu__item--open .menu__list--nested {
        max-height: 1000px;
        visibility: visible;
        padding: 15px 15px 0;
        display: grid
    }

    .main__section--desc .title br, .video-block--hero .video-block__content::before, .video-block::after, .video-block__content p br {
        display: none
    }

    .menu__item--open .menu__mobile-icon {
        transform: rotate(180deg);
        color: rgba(255, 255, 255, .5)
    }

    .menu__mobile-control {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        background-color: transparent;
        border: none;
        color: inherit;
        padding: 0
    }

    .menu__mobile-icon {
        transition: transform .2s linear
    }

    .hero-slider__content {
        margin: 0;
        padding-left: var(--container-padding);
        padding-right: var(--container-padding)
    }

    .hero-slider__title {
        margin-bottom: 0
    }

    .main__section--trailers {
        padding: 35px 0 48px
    }

    .card__notice {
        top: 15px;
        left: 15px;
        padding: 7px 14px;
        font-size: 10px
    }

    .actions {
        margin-right: 1px
    }

    .actions--home .actions__item + .actions__item {
        border-color: #d0d0d0
    }

    .action__icon {
        border-width: 1px
    }

    .action__link {
        padding: 0 15px
    }

    .action__link br {
        display: block
    }

    .page-nav {
        padding: 36px 0
    }

    .page-nav__list {
        justify-content: stretch;
        column-gap: 25px
    }

    .page-nav__link {
        padding: 0
    }

    .video-block {
        padding: 0;
        flex-direction: column;
        align-items: stretch;
        background-color: #1a1f22;
        min-height: auto
    }

    .video-block__media {
        position: relative;
        filter: brightness(.7);
        max-height: 430px;
        min-height: 290px
    }

    .video-block__content {
        padding: 40px 101px 64px var(--container-padding);
        position: relative;
        max-width: unset
    }

    .video-block__content::before {
        content: '';
        position: absolute;
        left: 0;
        bottom: 100%;
        height: 201px;
        background: linear-gradient(360deg, #1a1f22 0, rgba(26, 31, 34, 0) 100%);
        width: 100%;
        z-index: 1
    }

    .video-block__content p {
        font-size: 18px;
        max-width: 420px;
        position: relative;
        z-index: 2
    }

    .video-block__title {
        margin-bottom: 16px;
        position: relative;
        z-index: 2
    }

    .video-block__button {
        position: absolute;
        right: var(--container-padding);
        bottom: 64px;
        width: 48px;
        height: 48px
    }

    .video-block__button-icon {
        width: 18px
    }

    .video-block--hero {
        gap: 34px;
        padding: 0 var(--container-padding) 100px;
        flex-direction: row;
        align-items: flex-end;
        min-height: calc(100vh - var(--menu-height))
    }

    .video-block--hero::after {
        display: block
    }

    .video-block--hero .video-block__media {
        position: absolute;
        filter: unset;
        max-height: unset;
        min-height: unset
    }

    .video-block--hero .video-block__content {
        padding: 0;
        max-width: 607px
    }

    .video-block--hero .video-block__button {
        position: static
    }

    .main__section--other-model .title {
        text-align: left
    }

    .card-list {
        --indent: 32px;
        gap: 32px
    }
}

@media (max-width: 1060px) {
    .footer__block--left::before, .footer__copyright::before {
        content: '';
        left: var(--padding);
        top: 0;
        height: 1px;
        width: 100vw;
        background-color: rgba(255, 255, 255, .3)
    }

    .carousel-container:not(.testimonials-container):not(.our-testimonials-container) .carousel-btn, .footer__copyright br {
        display: none
    }

    .carousel-container {
        --padding: 56px;
        gap: 0;
        padding: 0 var(--padding)
    }

    .tabbed__header {
        flex-direction: column;
        align-items: stretch
    }

    .tabbed__dropdown {
        margin-left: 0
    }

    .tablist {
        width: 100%
    }

    .carousel-container + .notice {
        margin-top: 32px
    }

    .carousel-btn {
        position: absolute;
        z-index: 4
    }

    .carousel-btn--prev {
        left: calc(var(--padding) - (var(--size) / 2))
    }

    .carousel-btn--next {
        right: calc(var(--padding) - (var(--size) / 2))
    }

    .carousel-container:not(.testimonials-container):not(.our-testimonials-container) {
        padding: 0 var(--container-padding);
        flex-wrap: wrap
    }

    .carousel-container:not(.testimonials-container):not(.our-testimonials-container) .carousel-pagination {
        display: flex;
        position: static
    }

    .c-card__figure {
        aspect-ratio: 430/380
    }

    .footer {
        position: static;
        z-index: 0;
        --padding: -56px
    }

    .footer__container {
        flex-direction: column
    }

    .footer__logo {
        margin-bottom: 0
    }

    .footer__menu {
        display: grid;
        grid-template-columns:1fr;
        row-gap: 12px;
        flex-basis: unset;
        justify-content: start
    }

    .footer__menu-header {
        margin-bottom: 0;
        padding: 18px 24px
    }

    .footer__menu-icon {
        color: #fff;
        transition: transform .3s;
        transform-origin: center
    }

    .footer__menu-list {
        margin: 0;
        padding: 0 24px;
        max-height: 0;
        visibility: hidden
    }

    .footer__menu-item {
        overflow: hidden;
        background-color: #262a2d;
        max-width: 100%
    }

    .footer__menu-item--owner, .footer__menu-item--stock {
        grid-column: unset;
        grid-row: unset;
        margin-top: 0
    }

    .footer__menu-item--active .footer__menu-list {
        padding-bottom: 26px;
        transition: max-height .6s linear;
        max-height: 1000px;
        visibility: visible
    }

    .footer__menu-item--active .footer__menu-icon {
        color: var(--primary-color);
        transform: rotate(180deg)
    }

    .footer__menu-btn {
        display: flex;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: 0 0;
        border: none;
        color: inherit;
        padding: 0;
        width: 100%;
        height: 100%;
        align-items: center
    }

    .footer__menu-icon {
        display: block
    }

    .footer__block--left {
        padding-top: 32px;
        position: relative;
        display: grid;
        justify-content: space-between;
        grid-template-columns:minmax(200px, 250px) minmax(160px, 200px);
        column-gap: 30px
    }

    .footer__block--left::before {
        position: absolute;
        right: 0
    }

    .footer__tel[href*=tel] {
        grid-row: 1;
        grid-column: 2;
        margin-top: 0
    }

    .footer__request {
        grid-column: 2;
        margin-bottom: 24px
    }

    .footer__social {
        grid-column: 2
    }

    .footer__links {
        row-gap: 20px;
        grid-row: 3
    }

    .footer__copyright {
        padding-top: 32px;
        grid-column: 1/-1;
        position: relative
    }

    .footer__copyright::before {
        position: absolute;
        right: 0
    }
}

@media (max-width: 940px) {
    .pagination__link-icon {
        display: block
    }

    .pagination__link--next, .pagination__link--prev {
        font-size: 0;
        line-height: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        width: clamp(32px, 6vw, 48px);
        height: clamp(32px, 6vw, 48px);
        background: #fff;
        box-shadow: 0 4px 36px rgba(0, 0, 0, .2);
        border-radius: 50%
    }

    .form-filter__close, .form-filter__reset {
        color: #fff;
        border: none;
        background: 0 0;
        padding: 0
    }

    .breadcrumb--catalog, .form-filter__dropdown .dropdown__control {
        display: none
    }

    .card__title--center {
        font-weight: 400;
        font-size: 14px
    }

    .form-filter-wrap {
        position: fixed;
        top: var(--menu-height);
        right: 0;
        z-index: 9;
        bottom: 0;
        height: 100%;
        max-width: 432px;
        width: 100%;
        background-color: #fff;
        padding: 0;
        transition: transform .3s, opacity .3s;
        transform: translateX(100%);
        opacity: 0
    }

    .form-filter-open {
        opacity: 1;
        transform: translateX(0);
        box-shadow: 0 0 0 100vh rgba(0, 0, 0, .5)
    }

    .form-filter-control {
        display: flex;
        text-transform: uppercase;
        line-height: 0
    }

    .form-filter-control--fixed {
        position: fixed;
        top: 50%;
        transform: translateY(-50%);
        width: 40px;
        height: 40px;
        padding: 0;
        gap: 0;
        font-size: 0;
        z-index: 5;
        border-radius: 50%;
        right: var(--container-padding);
        margin-bottom: 0;
        justify-content: center;
        background-color: var(--primary-color);
        border: none;
        box-shadow: 0 12px 16px rgba(0, 0, 0, .15)
    }

    .form-filter-control--fixed .form-filter-control__icon {
        width: 15px;
        color: #fff
    }

    .form-filter-control-wrap {
        height: 58px
    }

    .form-filter__header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        background-color: #000;
        padding: 17px 65px 17px 56px
    }

    .form-filter__reset {
        font: inherit;
        display: flex;
        align-items: center;
        gap: 4px;
        font-size: 14px
    }

    .form-filter__close {
        font: inherit
    }

    .form-filter__dropdown {
        display: flex;
        flex-direction: column;
        row-gap: 24px;
        padding: 24px 40px 37px;
        overscroll-behavior: contain;
        height: calc(100vh - var(--menu-height) - 37px);
        overflow-y: auto
    }

    .form-filter__dropdown .dropdown__item:not(:last-of-type) {
        border-bottom: 1px solid rgba(0, 0, 0, .15);
        padding-bottom: 24px
    }

    .form-filter__dropdown .dropdown__header {
        padding: 0;
        height: auto;
        font-size: 18px;
        font-weight: 700;
        margin-bottom: 16px;
        color: #000;
        background-color: transparent
    }

    .form-filter__dropdown .dropdown__body {
        position: static;
        visibility: visible;
        opacity: 1;
        background-color: transparent
    }

    .checkbox-reset {
        display: none !important
    }

    .checkbox-list {
        margin: 0
    }

    .cards {
        gap: 16px
    }

    .cards--catalog {
        margin-top: clamp(32px, 6vw, 40px)
    }

    .card--shadow {
        box-shadow: 0 4px 36px rgba(0, 0, 0, .2)
    }

    .page-nav {
        position: inherit
    }

    .page-nav .page-nav__link {
        font-size: 14px
    }

    .gallery, .gallery-thumbs {
        padding: 0 77px
    }

    .gallery-wrap .carousel-btn--prev {
        margin-left: 10px
    }

    .gallery-wrap .carousel-btn--next {
        margin-right: 10px
    }

    .specification-block {
        flex-direction: column
    }

    .accordion--specification, .specification {
        max-width: 100%;
        min-width: auto
    }

    .accordion__control {
        padding: 20px 20px 20px 32px
    }

    .advantages-block--our-work {
        padding-top: 63px;
        padding-bottom: 61px
    }

    .advantages {
        row-gap: 32px
    }

    .advantage__icon {
        width: 45px
    }

    .advantage__title {
        font-size: 18px;
        margin-bottom: 16px
    }

    .advantage__description {
        font-size: 16px
    }

    .card-list {
        padding: 0 var(--container-padding)
    }

    .card-list__item:nth-child(2n) .c-card__figure, .card-list__item:nth-child(odd) .c-card__figure {
        order: -1
    }

    .card-list__item:nth-child(2n) .c-card__body, .card-list__item:nth-child(odd) .c-card__body {
        justify-self: stretch;
        margin: 0;
        max-width: 100%
    }

    .c-card {
        grid-template-columns:1fr
    }

    .c-card__figure {
        aspect-ratio: 940/489;
        margin-bottom: 32px
    }

    .image-block__img {
        aspect-ratio: 16/7
    }
}

@media (max-width: 800px) {
    .hero-block--content-end .title, .video-block--hero .title {
        font-size: clamp(2rem, calc(1.1176rem + 3.7647vw), 3rem)
    }

    .breadcrumb {
        display: none
    }

    .action {
        gap: 8px 12px
    }

    .hero-block {
        padding: 0 0 40px;
        background-color: #1a1f22;
        align-items: stretch
    }

    .hero-block__figure {
        position: relative;
        order: -1
    }

    .hero-block__figure::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: 0;
        height: 84px;
        background: linear-gradient(360deg, #1a1f22 0, rgba(26, 31, 34, 0) 100%);
        width: 100%
    }

    .hero-block__model-feature {
        margin-top: 48px
    }

    .hero-block__image {
        max-height: 580px;
        min-height: 303px
    }

    .hero-block__title {
        font-size: clamp(1.625rem, calc(.313rem + 5.598vw), 3rem);
        margin-top: 55px
    }

    .hero-block__model-feature, .hero-block__title {
        text-align: left;
        padding: 0 var(--container-padding)
    }

    .hero-block--content-end {
        padding: 47px var(--container-padding)
    }

    .hero-block--content-end::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: 0;
        height: 100%;
        background: linear-gradient(90deg, rgba(0, 0, 0, .2) 0, rgba(0, 0, 0, 0) 100%);
        width: 100%;
        z-index: -1
    }

    .hero-block--content-end .title {
        line-height: 1.2;
        margin-bottom: 16px
    }

    .hero-block--content-end .hero-block__button {
        margin-top: 0
    }

    .model-feature__headline {
        font-size: clamp(1.25rem, calc(.8922rem + 1.5267vw), 1.625rem)
    }

    .model-feature__text {
        color: rgba(255, 255, 255, .5);
        font-size: clamp(.875rem, calc(.6365rem + 1.0178vw), 1.125rem)
    }

    .model-feature__icon {
        width: clamp(1.0625rem, calc(.5258rem + 2.2901vw), 1.625rem)
    }

    .video-block--hero {
        flex-direction: column;
        justify-content: flex-end;
        align-items: stretch;
        padding-bottom: 60px
    }

    .video-block--hero .video-block__content {
        max-width: 500px
    }

    .advantages-block--delivery {
        padding: 45px 40px 60px
    }

    .advantages-block--career {
        margin: 0 var(--container-padding);
        padding: 45px 40px 60px
    }

    .advantages-block--career .container {
        margin: 0;
        padding: 0
    }

    .advantages {
        grid-template-columns:1fr
    }

    .testimonial-card {
        aspect-ratio: 320/370;
        padding: 16px
    }

    .testimonial-card::after {
        max-height: 182px
    }

    .testimonial-card__image {
        object-position: top
    }

    .testimonial-card__quote {
        padding-bottom: 16px;
        margin-bottom: 16px;
        padding-right: 50px
    }

    .testimonial-card__autor {
        font-size: 12px
    }

    .hero-block__btn {
        margin: 0 var(--container-padding);
        width: fit-content
    }
}

@media (max-width: 768px) {
    .content-card--offer {
        grid-template-columns:1fr;
        gap: 0;
        background-color: transparent
    }

    .content-card--offer .content-card__image {
        aspect-ratio: 655/352
    }

    .content-card--offer .content-card__body {
        padding: 36px 40px 55px;
        background-color: #fafafa;
        max-width: 100%
    }

    .content-card--offer .content-card__title, .content-card--offer p {
        margin-bottom: 18px
    }

    .gallery-wrap {
        --padding: 56px;
        padding: 0 var(--container-padding)
    }

    .gallery-wrap .carousel-btn {
        bottom: calc(((var(--gallery-height) + var(--thumbs-height) + 16px)) / 2)
    }

    .gallery-wrap .carousel-btn--prev {
        margin: 0;
        left: calc(var(--padding) - (var(--size) / 2))
    }

    .gallery-wrap .carousel-btn--next {
        margin: 0;
        right: calc(var(--padding) - (var(--size) / 2))
    }

    .gallery, .gallery-thumbs {
        padding: 0
    }

    .gallery {
        margin-bottom: 16px
    }

    .gallery-thumbs {
        height: 70px
    }

    .gallery-grid {
        gap: 24px 16px
    }

    .gallery-grid__caption {
        text-align: left;
        margin-top: 16px
    }

    .article__gallery {
        gap: clamp(8px, 3vw, 16px)
    }
}

@media (max-width: 740px) {
    .cookie__content {
        flex-wrap: wrap
    }

    .actions, .content-card, .tablist {
        grid-template-columns:1fr
    }

    .action__link br, .trailer-card p {
        display: none
    }

    .hero-block--auto-height {
        min-height: auto
    }

    .tabbed__dropdown {
        position: relative;
        font-weight: 500
    }

    .tabbed__dropdown-control {
        width: 100%;
        border: 1px solid #d0d0d0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        background-color: #fff;
        font: inherit;
        text-transform: uppercase;
        padding: 19px 24px;
        text-align: left;
        position: relative;
        z-index: 2;
        font-size: 14px;
        color: inherit
    }

    .tabbed__dropdown-text {
        display: block;
        width: calc(100% - 30px);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap
    }

    .tabbed__dropdown-arrow {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 24px;
        height: 24px;
        background-color: #efefef;
        border-radius: 50px;
        color: #000;
        transition: transform .3s
    }

    .tabbed__dropdown--open .tabbed__dropdown-control {
        border-color: var(--primary-color)
    }

    .tabbed__dropdown--open .tablist {
        opacity: 1;
        visibility: visible
    }

    .tabbed__dropdown--open .tabbed__dropdown-arrow {
        color: var(--primary-color);
        transform: rotate(180deg)
    }

    .tablist {
        width: 100%;
        align-content: start;
        grid-auto-flow: row;
        padding: 20px 0;
        background-color: #fff;
        box-shadow: 0 12px 64px rgba(0, 0, 0, .15);
        position: absolute;
        z-index: 1;
        top: 100%;
        left: 0;
        max-height: 300px;
        overflow: auto;
        opacity: 0;
        visibility: hidden;
        transition-property: opacity, visibility;
        transition-duration: .3s
    }

    .tablist__link {
        padding: 8px 24px;
        text-align: left;
        border: none
    }

    .tablist__link[aria-selected=true] {
        border: none
    }

    .trailers-cards {
        --item-width: clamp(120px, 35vw, 210px);
        gap: 8px
    }

    .actions {
        margin: 0
    }

    .actions__item + .actions__item {
        border-left: 0;
        border-top: 1px solid rgba(255, 255, 255, .3)
    }

    .actions__item {
        padding: 12px 0
    }

    .actions__item:first-of-type {
        padding-top: 0
    }

    .actions__item:last-of-type {
        padding-bottom: 0
    }

    .action {
        flex-direction: row;
        justify-content: flex-start
    }

    .action__link {
        padding: 0
    }
}

.banner__text, .banner__title, .history-period__date {
    font-weight: 700;
    line-height: 100%
}

@media (max-width: 550px) {
    .button-container, .modal__title {
        text-align: left
    }

    :root {
        --container-padding: 16px;
        --menu-height: 66px
    }

    .header__bottom, .header__topline {
        padding: 17px var(--container-padding)
    }

    .header__logo .logo__icon {
        width: 176px;
        height: 19px
    }

    .hero-slider .swiper-pagination-bullet, .hero-slider__pagination-bullet svg {
        height: 16px;
        width: 16px
    }

    .header__menu {
        width: 100%
    }

    .menu-button {
        width: 32px;
        height: 32px;
        row-gap: 5px
    }

    .menu-button__line {
        width: 16px
    }

    .menu__list--main {
        padding: 30px 15px
    }

    .hero-slider__slide {
        display: flex;
        flex-direction: column-reverse;
        justify-content: flex-end
    }

    .hero-slider__content {
        row-gap: 10px;
        color: #000;
        margin: 0;
        padding: 28px var(--container-padding) 10px
    }

    .hero-slider__figure, .hero-slider__video {
        position: relative;
        height: clamp(290px, 46vmax, 500px)
    }

    .hero-slider__pagination {
        color: #000;
        column-gap: 24px
    }

    .hero-slider .swiper-horizontal > .swiper-pagination-bullets, .hero-slider .swiper-pagination-bullets.swiper-pagination-horizontal, .hero-slider .swiper-pagination-custom, .hero-slider .swiper-pagination-fraction {
        bottom: 21px
    }

    .trailers-cards__item:nth-child(odd):last-child {
        grid-column: span 2
    }

    .trailers-cards__item:nth-child(odd):last-child .trailer-card {
        aspect-ratio: 360/180
    }

    @supports not (aspect-ratio:1/1) {
        .trailers-cards__item:nth-child(odd):last-child .trailer-card {
            height: 180px;
            width: 100%
        }
    }.tablist {
         column-gap: 16px
     }

    .carousel-container {
        --padding: 31px
    }

    .swiper--has-shadow {
        margin: -64px -16px;
        padding: 64px 16px
    }

    .carousel-btn svg {
        width: 6px
    }

    .carousel-btn--prev svg {
        margin-right: 4px
    }

    .carousel-btn--next svg {
        margin-left: 4px
    }

    .main__section--actions {
        background-color: #fff
    }

    .main__section--actions-green {
        background-color: transparent;
        padding-bottom: 40px
    }

    .actions {
        padding: 18px var(--container-padding)
    }

    .actions--home {
        background-color: #fafafa
    }

    .actions--green {
        background-color: var(--primary-color)
    }

    .card {
        box-shadow: 0 4px 36px rgba(0, 0, 0, .2);
        cursor: pointer
    }

    .card__time {
        order: 0;
        margin-bottom: 0;
        margin-top: 16px
    }

    .form-filter-wrap {
        max-width: 280px
    }

    .form-filter__header {
        padding: 18px 23px 18px 15px
    }

    .form-filter__dropdown {
        padding: 16px 0;
        margin-left: 0;
        row-gap: 16px
    }

    .form-filter__dropdown .dropdown__item {
        margin-left: 0
    }

    .form-filter__dropdown .dropdown__body, .form-filter__dropdown .dropdown__header {
        padding: 0 15px
    }

    .c-custom-checkbox--has-image img {
        margin: 5px 35px 7px 0;
        max-width: 100%;
        width: auto
    }

    .hero-block__title {
        margin-top: 11px
    }

    .hero-block__figure::after {
        height: 40px
    }

    .hero-block--content-end {
        padding: 38px var(--container-padding)
    }

    .model-feature__headline {
        font-weight: 700;
        margin-bottom: 2px
    }

    .video-block__title {
        font-size: 18px;
        margin-bottom: 14px
    }

    .video-block__content {
        margin-top: -20px;
        padding-bottom: 33px;
        padding-top: 0
    }

    .video-block__content::before {
        bottom: calc(100% - 20px);
        height: 117px
    }

    .video-block__content p {
        font-size: 14px;
        line-height: 1.4
    }

    .video-block__button {
        bottom: 33px;
        width: 32px;
        height: 32px;
        border-width: 1px;
        -webkit-tap-highlight-color: transparent
    }

    .video-block__button-icon {
        width: 12px
    }

    .video-block--hero {
        padding-bottom: 27px
    }

    .gallery-wrap {
        --padding: 31px;
        padding: 0 30px
    }

    .gallery-wrap .carousel-btn {
        bottom: calc(((var(--gallery-height) + var(--thumbs-height) + 16px + var(--size))) / 2)
    }

    .gallery {
        margin-bottom: 8px
    }

    .specification {
        font-size: 14px
    }

    .accordion__control {
        padding: 16px 20px 16px 24px
    }

    .advantages-block--career {
        padding: 36px 25px 39px
    }

    .advantage__icon {
        margin-bottom: 16px
    }

    .content-card--offer .content-card__body {
        padding: 31px 24px 39px
    }

    .gallery-grid {
        gap: 36px 8px
    }

    .gallery-grid__caption {
        margin-top: 13px;
        font-size: 14px
    }

    .article__gallery {
        gap: 8px
    }

    .advantages-block--delivery {
        padding: 36px 24px 60px
    }

    .advantages-block--our-work {
        padding-top: 47px;
        padding-bottom: 40px
    }

    .card-list {
        padding: 0
    }

    .c-card__figure, .image-block__img {
        aspect-ratio: 375/244
    }

    .c-card__body {
        padding: 0 var(--container-padding)
    }

    .c-card__body p + p {
        margin-top: 15px
    }

    .modal__title {
        padding-right: 35px
    }

    .hystmodal__close {
        width: 25px;
        height: 25px;
        top: 25px;
        right: 16px
    }

    .footer {
        --padding: -16px
    }

    .footer__block--left {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        row-gap: 32px
    }

    .footer__social, .footer__tel[href*=tel] {
        margin-bottom: 0
    }

    .footer__request[href] {
        margin-bottom: 0;
        margin-top: -24px
    }

    .footer__copyright {
        width: 100%;
        flex-direction: column
    }

    .footer__copyright br {
        display: block
    }

    .footer__menu-list {
        row-gap: 11px
    }

    .hero-block__btn {
        min-width: 232px
    }
}

@media only screen and (min-device-width: 375px) and (max-device-width: 812px) and (-webkit-min-device-pixel-ratio: 3) and (orientation: portrait) {
    .hero-slider__content {
        row-gap: 30px
    }
}

@media (max-width: 991px) {
    .contacts-list__item {
        width: 100% !important;
        margin-bottom: 14px;
        padding-top: 20px;
        border-top: 1px solid #ddd;
        text-align: center;
        border-right: 0;
        margin-right: 0
    }

    .contacts-list__item .c-contact {
        max-width: 100%
    }

    .c-contact__inline {
        align-items: center;
        justify-content: center
    }

    #modal-contact .form .form__group {
        flex-direction: column;
        gap: 0
    }

    #modal-contact .form .form__group:first-of-type .form__group__colum:first-of-type, #modal-contact .form .form__group:first-of-type .form__group__colum:last-of-type, #modal-contact .form .form__group:last-of-type .form__group__colum:first-of-type, #modal-contact .form .form__group:last-of-type .form__group__colum:last-of-type {
        width: 100%
    }

    #modal-contact .form .form__group:last-of-type {
        flex-direction: column;
        gap: 10px
    }

    #modal-contact h2.modal__title {
        text-align: center;
        font-size: 24px
    }
}

.callbackkiller {
    bottom: 100px !important
}

.ws-chat-btn-el-container {
    bottom: 30px !important
}

.banner {
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    height: 770px;
    position: relative
}

.banner .container {
    width: 100%
}

.banner__foto {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.banner .breadcrumb {
    position: relative;
    z-index: 1;
    margin-bottom: 30px
}

.history .breadcrumb__link--current {
    color: #fff;
    opacity: .6
}

.history .breadcrumb__item:not(:last-of-type)::after {
    color: #fff;
    opacity: 1
}

.banner__content {
    position: relative;
    z-index: 1;
    max-width: 600px;
    width: 100%
}

.banner__title {
    margin-top: 0;
    margin-bottom: 30px;
    font-size: 64px;
    color: #fff
}

.banner__text {
    font-size: 31px;
    color: #fff
}

.history__title {
    margin-top: 69px;
    margin-bottom: 63px;
    font-size: 40px;
    font-weight: 700
}

@media (max-width: 768px) {
    .banner {
        justify-content: end;
        height: 778px;
        padding-bottom: 35px
    }

    .banner .breadcrumb {
        display: flex
    }

    .banner__title {
        margin-bottom: 20px;
        font-size: 33px
    }

    .banner__text {
        font-size: 16px
    }

    .history__title {
        margin-top: 20px;
        margin-bottom: 27px;
        font-size: 26px
    }
}

.history-list {
    position: relative;
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 80px 93px;
    padding-bottom: 160px;
    max-width: 1080px;
    width: 100%;
    margin: 0 auto
}

@media (max-width: 1470px) {
    .history-list {
        max-width: 768px
    }
}

.history-period[data-num="2"] {
    margin-top: 195px
}

.history-period[data-num="3"] {
    margin-top: -40px
}

.history-period[data-num="5"] {
    margin-top: -200px
}

.history-period[data-num="7"] {
    margin-top: -250px
}

.history-period[data-num="9"] {
    margin-top: -260px
}

.history-period__foto {
    position: relative;
    display: block;
    width: 100%;
    height: 294px;
    object-fit: cover
}

.history-period__fotobox {
    position: relative;
    margin: 0 0 25px
}

.history-period__fotobox:after {
    content: '';
    position: absolute;
    top: 50%;
    width: 34px;
    height: 2px;
    background: #000
}

.history-period:nth-child(odd) .history-period__fotobox:after {
    right: -34px
}

.history-period:nth-child(2n) .history-period__fotobox:after {
    left: -34px
}

.history-period__fotobox:before {
    content: '';
    position: absolute;
    z-index: 1;
    top: 50%;
    transform: translateY(-12.5px);
    width: 25px;
    height: 25px;
    border-radius: 50%;
    border: 2px solid #009d72;
    background: #fff
}

.history-period:nth-child(odd) .history-period__fotobox:before {
    right: -60px
}

.history-period:nth-child(2n) .history-period__fotobox:before {
    left: -60px
}

.history-period__date {
    margin-top: 0;
    margin-bottom: 8px;
    font-size: 40px;
    color: #009d72
}

.reviews-btn, .reviews-item__subtitle, .reviews-item__title {
    color: #0e0e0e;
    font-weight: 400
}

.history-period__info * {
    font-size: 16px;
    line-height: 23px
}

.history-period__info p:not(:last-child) {
    margin-bottom: 15px
}

.history-period__info ul {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-left: 15px
}

.history-period__info ul li::marker {
    transform: translateX(10px)
}

.history-line {
    position: absolute;
    left: 50%;
    transform: translateX(-1px);
    width: 2px;
    height: 100%;
    background: #000
}

@media (max-width: 800px) {
    .history-list {
        grid-template-columns:1fr;
        gap: 50px;
        padding: 0 15px 0 45px
    }

    .history-period {
        margin-top: 0 !important
    }

    .history-period__foto {
        height: 220px
    }

    .history-period__fotobox {
        margin-bottom: 20px
    }

    .history-period:nth-child(2n) .history-period__fotobox:after, .history-period:nth-child(odd) .history-period__fotobox:after {
        left: -34px;
        right: initial
    }

    .history-period:nth-child(2n) .history-period__fotobox:before, .history-period:nth-child(odd) .history-period__fotobox:before {
        left: -42px
    }

    .history-period__date {
        font-size: 26px
    }

    .history-line {
        left: 15px
    }
}

.history-listbox {
    position: relative;
    padding-bottom: 69px
}

.history-navlist {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: right;
    transition: .3s
}

.history-nav {
    position: absolute;
    top: 115px;
    right: 47px
}

.history-nav.is-fixedTop {
    position: fixed;
    z-index: 10;
    top: 295px
}

.history-nav.is-fixedBottom {
    position: absolute;
    top: initial;
    bottom: 275px
}

.history-nav li {
    position: relative;
    flex-shrink: 0;
    font-size: 18px;
    color: rgba(0, 0, 0, .7);
    transition: font-size .3s, color .3s;
    cursor: pointer
}

.history-nav li.is-active, .history-nav li:hover {
    font-size: 30px;
    color: #009d72
}

@media (max-width: 1200px) {
    .history-nav {
        right: 20px
    }

    .history-nav li {
        font-size: 14px
    }

    .history-nav li:hover {
        font-size: 14px;
        color: rgba(0, 0, 0, .7)
    }

    .history-nav li.is-active {
        font-size: 20px
    }
}

.history-nav li.is-active:after {
    content: '';
    position: absolute;
    top: 50%;
    right: -47px;
    width: 34px;
    height: 2px;
    background: #000
}

@media (max-width: 1024px) {
    .history-navlist {
        flex-direction: row;
        align-items: center;
        overflow-x: auto;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        white-space: nowrap;
        padding: 20px
    }

    .history-navlist[style*=margin-left] {
        margin-left: 0 !important
    }

    .history-nav {
        position: relative;
        top: 0;
        right: initial;
        border-bottom: 1px solid #dfdfdf
    }

    .history-nav.is-fixedTop {
        background: #fff;
        top: 65px;
        left: 0;
        right: 0;
        transition: .3s
    }

    .history-nav li.is-active:after {
        display: none
    }
}

.testimonials__item {
    padding: 0;
    background-image: none
}

.testimonials__image {
    width: 100%;
    height: 450px;
    object-fit: cover;
    margin-top: 0
}

.testimonials .swiper-slide-active, .testimonials .swiper-slide-next {
    box-shadow: none
}

.reviews-item {
    display: grid;
    align-content: start
}

.swiper-reviews {
    width: 100%;
    height: 100%
}

.reviews-item__slider_img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.reviews-btn {
    font-size: clamp(.9375rem, .9056rem + .1307vw, 1.0625rem);
    line-height: 118%;
    padding: 10px 16px;
    background-color: #f2f2f2;
    display: flex;
    border: 0;
    cursor: pointer;
    height: 40px
}

.reviews {
    display: grid;
    grid-template-columns:repeat(2, 1fr);
    gap: 20px
}

.reviews-item__content {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.reviews-item__btns {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 5px
}

.reviews-item__btn_read {
    display: flex;
    align-items: center;
    gap: 4px;
    position: relative
}

.reviews-item__btn_read.active::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 40px;
    height: 14px;
    background: #f2f2f2
}

.reviews-item__btn_read svg {
    transition: .25s;
    pointer-events: none
}

.reviews-item__btn_read.active svg {
    transform: rotate(-180deg)
}

.reviews-item__btn_read_text {
    pointer-events: none
}

.reviews-item__text {
    display: flex;
    flex-direction: column;
    gap: 12px
}

.reviews-item__title {
    font-size: clamp(1.25rem, 1.1225rem + .5229vw, 1.75rem);
    line-height: 114%;
    letter-spacing: .01em;
    margin: 0
}

.reviews-item__subtitle {
    font-size: clamp(1.0625rem, 1.0147rem + .1961vw, 1.25rem);
    line-height: 120%;
    letter-spacing: .01em
}

.reviews-item__btns_links {
    display: flex;
    align-items: center;
    gap: 8px
}

.reviews-item__btns_like {
    background: var(--primary-color);
    color: #fff
}

.reviews-item__slider {
    height: 452px;
    width: 100%;
    position: relative;
    overflow: hidden;
    margin-bottom: 14px
}

.reviews-item__slider_btns {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    z-index: 1;
    pointer-events: none
}

.swiper-reviews-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 61px;
    width: 60px;
    height: 60px;
    box-shadow: 0 4px 24px 0 rgba(203, 203, 203, .58);
    background: #fff;
    cursor: pointer;
    pointer-events: all;
    transition: .25s
}

.swiper-reviews-btn.swiper-button-disabled {
    opacity: 0;
    pointer-events: none
}

@media (hover: hover) {
    .card:hover {
        box-shadow: 0 12px 30px rgba(0, 0, 0, .15);
        z-index: 1
    }

    .card:hover .card__image {
        transform: scale(1.05)
    }

    .swiper-reviews-prev:hover {
        transform: translateX(-4px)
    }

    .swiper-reviews-next:hover {
        transform: translateX(4px)
    }
}

.reviews-item__slider_link:hover {
    opacity: 1
}

.reviews-item__slider_video {
    position: relative;
    width: 100%;
    height: 100%
}

.reviews-item__slider_video video {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.reviews-item__slider_video_wrap {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.reviews-item__slider_video_btn {
    border: 0;
    background-color: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 60px;
    aspect-ratio: 1/1;
    padding: 0
}

.reviews-item__slider_video_btn img {
    pointer-events: none;
    width: 100%;
    height: 100%
}

.reviews-item__info {
    padding: 0 16px;
    background: #f2f2f2;
    position: relative;
    transition: .25s;
    max-height: 0;
    overflow: hidden
}

.reviews-item__info.active {
    margin-top: 14px;
    padding: 16px;
    max-height: 1000px
}

.reviews-item__info_inner {
    display: flex;
    flex-direction: column;
    gap: 12px
}

.reviews-item__info_text {
    font-weight: 400;
    font-size: 16px;
    line-height: 144%;
    color: #3d3d3d
}

.reviews-item__info_name {
    font-weight: 500;
    font-size: 16px;
    line-height: 144%;
    color: #0e0e0e
}

@media screen and (max-width: 1200px) {
    .reviews {
        display: flex;
        flex-direction: column
    }
}

@media screen and (max-width: 768px) {
    .reviews-item__btns {
        flex-direction: column-reverse;
        align-items: flex-start;
        gap: 16px
    }

    .swiper-reviews-btn {
        width: 40px;
        height: 40px
    }

    .reviews-item__slider {
        height: 300px
    }

    .reviews-item__slider_btns {
        padding: 0 12px
    }

    .reviews-item__slider_video_btn {
        width: 40px
    }

    .reviews-item__btn_read.active::after {
        display: none
    }

    .reviews-item__info.active {
        margin-top: 0
    }

    .reviews-btn {
        padding: 8px 12px;
        height: auto
    }
}

@media screen and (max-width: 576px) {
    .reviews-item__title {
        line-height: 120%
    }

    .reviews-item__subtitle {
        line-height: 118%
    }

    .reviews-item__content {
        gap: 16px
    }

    .swiper-reviews-btn {
        width: 28px;
        height: 28px
    }

    .swiper-reviews-btn svg {
        width: 12px;
        height: 12px
    }

    .reviews-item__slider {
        margin-bottom: 12px;
        height: 214px
    }

    .reviews-item__slider_video_btn {
        width: 28px
    }
}

@media screen and (max-width: 340px) {
    .reviews-item__btns_links {
        flex-direction: column;
        align-items: flex-start
    }
}

.testimonials-container .carousel-btn {
    align-self: start;
    margin-top: 200px
}