.resize-observer[data-v-8859cc6c] {
    border: none;
    background-color: transparent;
    opacity: 0
}

.resize-observer[data-v-8859cc6c],.resize-observer[data-v-8859cc6c] object {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    pointer-events: none;
    display: block;
    overflow: hidden
}

.v-popper__popper {
    z-index: 10000;
    top: 0;
    left: 0;
    outline: none
}

.v-popper__popper.v-popper__popper--hidden {
    visibility: hidden;
    opacity: 0;
    transition: opacity .15s,visibility .15s;
    pointer-events: none
}

.v-popper__popper.v-popper__popper--shown {
    visibility: visible;
    opacity: 1;
    transition: opacity .15s
}

.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper {
    transition: none!important
}

.v-popper__backdrop {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none
}

.v-popper__inner {
    position: relative;
    box-sizing: border-box;
    overflow-y: auto
}

.v-popper__inner>div {
    position: relative;
    z-index: 1;
    max-width: inherit;
    max-height: inherit
}

.v-popper__arrow-container {
    position: absolute;
    width: 10px;
    height: 10px
}

.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container {
    display: none
}

.v-popper__arrow-inner,.v-popper__arrow-outer {
    border-style: solid;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0
}

.v-popper__arrow-inner {
    visibility: hidden;
    border-width: 7px
}

.v-popper__arrow-outer {
    border-width: 6px
}

.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner {
    left: -2px
}

.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer {
    left: -1px
}

.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer {
    border-bottom-width: 0;
    border-left-color: transparent!important;
    border-right-color: transparent!important;
    border-bottom-color: transparent!important
}

.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner {
    top: -2px
}

.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container {
    top: 0
}

.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer {
    border-top-width: 0;
    border-left-color: transparent!important;
    border-right-color: transparent!important;
    border-top-color: transparent!important
}

.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner {
    top: -4px
}

.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer {
    top: -6px
}

.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner {
    top: -2px
}

.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer {
    top: -1px
}

.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer {
    border-left-width: 0;
    border-left-color: transparent!important;
    border-top-color: transparent!important;
    border-bottom-color: transparent!important
}

.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner {
    left: -4px
}

.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer {
    left: -6px
}

.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container {
    right: -10px
}

.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer {
    border-right-width: 0;
    border-top-color: transparent!important;
    border-right-color: transparent!important;
    border-bottom-color: transparent!important
}

.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner {
    left: -2px
}

.v-popper--theme-dropdown .v-popper__inner {
    background: #fff;
    color: #000;
    border-radius: 6px;
    border: 1px solid #ddd;
    box-shadow: 0 6px 30px rgba(0,0,0,.10196078431372549)
}

.v-popper--theme-dropdown .v-popper__arrow-inner {
    visibility: visible;
    border-color: #fff
}

.v-popper--theme-dropdown .v-popper__arrow-outer {
    border-color: #ddd
}

.v-popper--theme-tooltip .v-popper__inner {
    background: rgba(0,0,0,.8);
    color: #fff;
    border-radius: 6px;
    padding: 7px 12px 6px
}

.v-popper--theme-tooltip .v-popper__arrow-outer {
    border-color: rgba(0,0,0,.8)
}

html {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    min-width: 32rem;
    margin: 0
}

*,:active,:focus,:hover {
    outline: none!important
}

a {
    color: initial;
    text-decoration: none;
    -webkit-text-decoration-skip: objects;
    background: transparent
}

a,a:active,a:focus,a:hover {
    text-decoration: none
}

*,:after,:before {
    box-sizing: border-box
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary {
    display: block
}

audio,canvas,progress,video {
    display: inline-block;
    vertical-align: baseline
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden],template {
    display: none!important
}

b,strong {
    font-weight: 500
}

ul {
    margin: 0;
    padding: 0;
    list-style-type: none
}

mark {
    color: cl("white")
}

small {
    font-size: 80%
}

sub {
    bottom: -.25em
}

sub,sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline
}

sup {
    top: -.5em
}

img {
    vertical-align: middle;
    border: 0
}

svg:not(:root) {
    overflow: hidden
}

figure {
    margin: 1em 4rem
}

hr {
    box-sizing: content-box;
    height: 0;
    margin-top: 2rem;
    margin-bottom: 2rem;
    border: 0;
    border-top: .1rem solid #eee
}

textarea {
    resize: none
}

pre,textarea {
    overflow: auto
}

code,kbd,pre,samp {
    font-size: 1em;
    font-family: monospace,monospace
}

button,input,optgroup,select,textarea {
    margin: 0;
    color: inherit;
    font: inherit;
    line-height: inherit
}

optgroup {
    font-weight: 500
}

button {
    overflow: visible
}

button,select {
    text-transform: none
}

button,html input[type=button],input[type=reset],input[type=submit] {
    cursor: pointer;
    -webkit-appearance: button
}

[role=button] {
    cursor: pointer
}

button[disabled],html input[disabled] {
    cursor: default
}

button::-moz-focus-inner {
    padding: 0;
    border: 0
}

input {
    line-height: normal;
    background-color: transparent;
    border-radius: 0;
    box-shadow: none
}

input::-moz-focus-inner {
    padding: 0;
    border: 0
}

input[type=checkbox],input[type=radio] {
    box-sizing: border-box;
    padding: 0
}

input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button {
    height: auto
}

input[type=search] {
    box-sizing: content-box
}

input::-webkit-search-cancel-button,input::-webkit-search-decoration {
    webkit-appearance: none
}

fieldset {
    margin: 0 .2rem;
    padding: .35em .625em .75em;
    border: .1rem solid silver
}

legend {
    padding: 0;
    border: 0
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,th {
    padding: 0
}

input::-webkit-input-placeholder {
    color: #535358
}

input:-moz-placeholder,input::-moz-placeholder {
    color: #535358
}

input:-ms-input-placeholder {
    color: #535358
}

input:focus::-webkit-input-placeholder {
    opacity: 0
}

input:focus:-moz-placeholder,input:focus::-moz-placeholder {
    opacity: 0
}

input:focus:-ms-input-placeholder {
    opacity: 0
}

input[type=number] {
    -moz-appearance: textfield
}

input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none
}

@font-face {
    font-weight: 700;
    font-family: GolosText;
    font-style: normal;
    src: url(fonts/GolosText-Bold.eot?#iefix) format("embedded-opentype"),url(fonts/GolosText-Bold.woff2) format("woff2"),url(fonts/GolosText-Bold.woff) format("woff"),url(fonts/GolosText-Bold.ttf) format("truetype")
}

@font-face {
    font-weight: 600;
    font-family: GolosText;
    font-style: normal;
    src: url(fonts/GolosText-SemiBold.eot?#iefix) format("embedded-opentype"),url(fonts/GolosText-SemiBold.woff2) format("woff2"),url(fonts/GolosText-SemiBold.woff) format("woff"),url(fonts/GolosText-SemiBold.ttf) format("truetype")
}

@font-face {
    font-weight: 500;
    font-family: GolosText;
    font-style: normal;
    src: url(fonts/GolosText-Medium.eot?#iefix) format("embedded-opentype"),url(fonts/GolosText-Medium.woff2) format("woff2"),url(fonts/GolosText-Medium.woff) format("woff"),url(fonts/GolosText-Medium.ttf) format("truetype")
}

@font-face {
    font-weight: 400;
    font-family: GolosText;
    font-style: normal;
    src: url(fonts/GolosText-Regular.eot?#iefix) format("embedded-opentype"),url(fonts/GolosText-Regular.woff2) format("woff2"),url(fonts/GolosText-Regular.woff) format("woff"),url(fonts/GolosText-Regular.ttf) format("truetype")
}

:root {
    --color-primary: var(--color-purple);
    --color-text: var(--color-onyx);
    --color-border: var(--color-darkgray);
    --color-icon: var(--color-slategray);
    --color-primary-text: var(--color-white);
    --color-shadow: var(--color-shadow);
    --color-purple: #0757bb;
    --color-red: #da1414;
    --color-black: #000;
    --color-onyx: #111;
    --color-dark: #121212;
    --color-dark2: #333;
    --color-darkgray: #3e3e3e;
    --color-gray: #757575;
    --color-gray-darken: #424242;
    --color-slategray: #748786;
    --color-grey: #bdbdbd;
    --color-grey2: #e0e0e0;
    --color-greylighten: #eee;
    --color-white: #fff;
    --color-whitesmoke: #f3f3f3;
    --color-mintsmoke: #f5f5f5;
    --color-lightblue: #f5f7ff;
    --color-lightblue2: #fcfdfd;
    --color-shadow: rgba(198,205,195,0.2);
    color-scheme: only light
}

html {
    font-size: 62.5%;
    scroll-behavior: smooth
}

body {
    position: relative;
    color: var(--color-text);
    font-size: 1.6rem;
    font-family: GolosText,sans-serif;
    line-height: 1.3;
    direction: ltr;
    background: var(--color-whitesmoke);
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
    -osx-font-smoothing: grayscale
}

body.noscroll {
    height: 100vh;
    overflow: hidden
}

a {
    cursor: pointer;
    transition: opacity .3s ease
}

@media (min-width: 62rem) {
    a:hover {
        opacity:.7
    }
}

a.line {
    border-bottom: .1rem solid
}

a.cl-primary,a.line {
    color: var(--color-primary)
}

#content-wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh
}

.article-content,.container,.page--promo__container,.page--services__list {
    width: 100%;
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    max-width: 166rem;
    margin: 0 auto
}

@media (min-width: 48rem) {
    .article-content,.container,.page--promo__container,.page--services__list {
        padding-right:5rem;
        padding-left: 5rem
    }
}

.main-content {
    position: relative;
    flex-grow: 1
}

.container--center {
    margin-right: auto;
    margin-left: auto
}

.container-xs {
    width: 100%;
    max-width: 0
}

.container-li {
    width: 100%;
    max-width: 36rem
}

.container-sm {
    width: 100%;
    max-width: 57.6rem
}

.container-md {
    width: 100%;
    max-width: 76.8rem
}

.article-content,.container-lg,.page--promo__container {
    width: 100%;
    max-width: 99.2rem
}

.container-bg {
    width: 100%;
    max-width: 120rem
}

.container-xl {
    width: 100%;
    max-width: 144rem
}

.container-xml {
    width: 100%;
    max-width: 160rem
}

.container-xxl {
    width: 100%;
    max-width: 182rem
}

::-webkit-scrollbar {
    width: 1rem;
    height: 1rem;
    background-color: var(--color-whitesmoke)
}

::-webkit-scrollbar-thumb {
    background-color: var(--color-grey2)
}

::selection {
    background: hsla(0,0%,87.8%,.5)
}

::-moz-selection {
    background: hsla(0,0%,87.8%,.5)
}

::-webkit-selection {
    background: hsla(0,0%,87.8%,.5)
}

.page-heading span {
    color: var(--color-primary)
}

.arrow-right {
    width: 2.5rem;
    height: .8rem
}

.d-md-none {
    display: none!important
}

@media (min-width: 48rem) {
    .d-md-none {
        display:block!important
    }
}

@media (min-width: 75rem) {
    .d-bg-block {
        display:none!important
    }
}

@media (min-width: 48rem) {
    .d-md-block {
        display:none!important
    }
}

.d-inline-md-none {
    display: none
}

@media (min-width: 48rem) {
    .d-inline-md-none {
        display:inline
    }
}

.yandex-map-container:before {
    position: relative;
    width: 12.5rem;
    height: 12.5rem;
    display: block;
    border: .4rem solid;
    border-radius: 50%
}

@-webkit-keyframes scale-2 {
    0% {
        transform: scale(0);
        opacity: 0
    }

    50% {
        transform: scale(.7);
        opacity: 1
    }

    to {
        transform: scale(1);
        opacity: 0
    }
}

@keyframes scale-2 {
    0% {
        transform: scale(0);
        opacity: 0
    }

    50% {
        transform: scale(.7);
        opacity: 1
    }

    to {
        transform: scale(1);
        opacity: 0
    }
}

.yandex-map-container:before {
    top: 0;
    width: 11.7rem;
    height: 11.7rem;
    border-color: var(--color-primary);
    -webkit-animation: scale-2 1s linear 0s infinite;
    animation: scale-2 1s linear 0s infinite
}

.btn {
    position: relative;
    display: inline-grid;
    place-content: center;
    max-width: 100%;
    height: 5.2rem;
    padding: 0 4.5rem;
    overflow: hidden;
    color: var(--color-primary-text);
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.5;
    letter-spacing: -.01em;
    white-space: nowrap;
    text-align: center;
    background-color: #0757bb;
    border: none;
    border-radius: 1rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: color .3s ease,background-color .3s ease,border-color .3s ease
}

@media (min-width: 62rem) {
    .btn:hover {
        color:#fff;
        background-color: #212529;
    }
}

.btn_wide {
    width: 100%
}

.btn-o {
    border: .1rem solid var(--color-primary);
    background: transparent;
    color: var(--color-primary)
}

@media (min-width: 62rem) {
    .btn-o:hover {
        opacity:1
    }
}

.h1,h1 {
    font-size: calc(1.665rem + 2.59375vw)
}

@media (min-width: 1440px) {
    .h1,h1 {
        font-size:5.4rem
    }
}

.h2,h2 {
    font-size: calc(1.485rem + 1.46875vw)
}

@media (min-width: 1440px) {
    .h2,h2 {
        font-size:3.6rem
    }
}

.h3,h3 {
    font-size: calc(1.365rem + .71875vw)
}

@media (min-width: 1440px) {
    .h3,h3 {
        font-size:2.4rem
    }
}

.h4,h4 {
    font-size: calc(1.345rem + .59375vw)
}

@media (min-width: 1440px) {
    .h4,h4 {
        font-size:2.2rem
    }
}

.h5,h5 {
    font-size: calc(1.305rem + .34375vw)
}

@media (min-width: 1440px) {
    .h5,h5 {
        font-size:1.8rem
    }
}

.h1,.h2,.h3,.h4,.h5,h1,h2,h3,h4,h5 {
    margin-top: 0;
    margin-bottom: .5rem;
    color: var(--color-text);
    font-weight: 500;
    line-height: 1.1
}

.h1,h1 {
    margin-bottom: 4.5rem
}

@media (max-width: 47.98rem) {
    .h1,h1 {
        margin-bottom:3.5rem;
        font-size: 2.6rem;
        line-height: 3.2rem
    }
}

.h2,h2 {
    margin-bottom: 3.5rem
}

@media (max-width: 47.98rem) {
    .h2,h2 {
        margin-bottom:2.5rem;
        font-size: 2.2rem;
        line-height: 2.8rem
    }
}

.h3,h3 {
    margin-bottom: 3.5rem
}

@media (max-width: 47.98rem) {
    .h3,h3 {
        margin-bottom:2.5rem;
        font-size: 2rem;
        line-height: 2.4rem
    }
}

.h4,.h5,.h6,h4,h5,h6 {
    margin-bottom: 1em
}

p {
    margin: 0 0 .57em
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

.text-intro {
    margin-bottom: 3.5rem;
    color: var(--color-gray)
}

@media (min-width: 62rem) {
    .text-intro {
        margin-bottom:5rem
    }
}

@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-container-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-container-android .swiper-slide,.swiper-wrapper {
    transform: translateZ(0)
}

.swiper-container-multirow>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-container-multirow-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column
}

.swiper-container-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-container-pointer-events {
    touch-action: pan-y
}

.swiper-container-pointer-events.swiper-container-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide {
    height: auto
}

.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform,height
}

.swiper-container-3d {
    perspective: 1200px
}

.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg,rgba(0,0,0,.5),transparent)
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg,rgba(0,0,0,.5),transparent)
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg,rgba(0,0,0,.5),transparent)
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg,rgba(0,0,0,.5),transparent)
}

.swiper-container-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-container-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}

.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

.main-header {
    position: sticky;
    top: 0;
    z-index: 995;
    background: var(--color-text);
    padding: 10px 0;
}

@media (min-width: 48rem) {
    .main-header.subpage,.main-header.subpage .main-header-menu {
        background-color:#fff
    }

    .main-header.subpage .header-toolbar__button {
        background-color: #f5f5f5
    }
}

@media (min-width: 62rem) {
    .main-header.subpage .main-header-menu__list {
        background-color:#fff
    }
}

.main-header.subpage .main-header-search {
    box-shadow: none
}

.main-header__content {
    display: grid;
    grid-template-areas: "logo . toolbar phone menu";
    grid-template-rows: 5rem;
    grid-template-columns: auto 1fr auto auto;
    align-items: center;
    color: var(--color-text);
    letter-spacing: -.01em
}

@media (min-width: 62rem) {
    .main-header__content {
        position:relative;
        grid-template-areas: "logo menu menu phone";
        grid-template-columns: auto 1fr repeat(2,24.5rem)
    }
}

@media (max-width: 61.98rem) {
    .main-header__content.container,.main-header__content.page--services__list {
        padding:0 3.5rem 0 5rem
    }
}

@media (max-width: 47.98rem) {
    .main-header__content.container,.main-header__content.page--services__list {
        padding:0 0 0 1.5rem
    }
    .hero--wrap__btn{
        grid-template-columns: repeat(1, 1fr);
    }
}

@media (min-width: 48rem) {
    .main-header {
        background: #ffffff;
        margin-bottom: 35px;
    }
}

.main-header a {
    color: currentColor
}

.main-header svg {
    display: block
}

.main-header__toolbar {
    display: flex;
    grid-area: toolbar;
    align-items: center;
    height: 100%
}

@media (min-width: 62rem) {
    .main-header__toolbar {
        padding-right:0;
        padding-left: 0;
        border-bottom: .1rem solid rgba(18,18,18,.1)
    }
}

.main-header__logo {
    position: absolute;
    z-index: 10;
    display: grid;
    align-items: center;
    grid-area: logo;
    margin: 0
}

@media (min-width: 48rem) {
    .main-header__logo {
        position:relative;
        top: auto;
        margin-left: 0
    }
}

.main-header__logo img {
    width: auto;
    height: auto;
}

@media (min-width: 62rem) {
    .main-header__logo img {
        width: auto;
        height: auto;
    }
}

.main-header__logo--desktop {
    display: none
}

@media (min-width: 48rem) {
    .main-header__logo--desktop {
        display:block
    }
}

.main-header__logo--mobile {
    height: 100%;
    display: flex;
    align-items: center
}

@media (min-width: 48rem) {
    .main-header__logo--mobile {
        display:none
    }
}

.main-header__button {
    display: grid;
    place-content: center;
    color: var(--color-primary-text);
    font-weight: 500;
    font-size: 1.7rem;
    background-color: var(--color-primary);
    transform: translateX(-100%);
    visibility: hidden;
    cursor: pointer;
    opacity: 0;
    white-space: nowrap
}

@media (min-width: 62rem) {
    .main-header__button {
        display:none
    }
}

@media (max-width: 61.98rem) {
    .main-header__button.active {
        position:absolute;
        top: calc(100% + 2.5rem);
        right: 0;
        left: 0;
        width: calc(100% - 3rem);
        height: 5.2rem;
        margin: 0 auto;
        border-radius: 1rem;
        transform: translateX(0);
        visibility: visible;
        opacity: 1;
        transition: .5s cubic-bezier(0,1,.5,1)
    }
}

.main-header__button .desktop {
    display: none
}

@media (min-width: 62rem) {
    .main-header__button .desktop {
        display:block
    }
}

.main-header__button .mobile {
    display: block
}

@media (min-width: 62rem) {
    .main-header__button .mobile {
        display:none
    }
}

.main-header__phone {
    display: flex;
    align-items: center;
    justify-content: end;
    grid-area: phone;
    height: 100%;
    font-weight: 500;
    font-size: 1.7rem
}

.main-header__phone svg {
    width: 2rem;
    height: 2rem;
    fill: var(--color-white)
}

@media (min-width: 48rem) {
    .main-header__phone svg {
        fill:var(--color-primary)
    }
}

.main-header__phone span {
    display: none
}

@media (min-width: 62rem) {
    .main-header__phone span {
        display:block;
        margin-left: 1rem
    }
}

.main-header-menu {
    display: grid;
    grid-area: menu;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 0 2rem;
    background-color: var(--color-text);
    border-left: .1rem solid hsla(0,0%,100%,.1)
}

@media (min-width: 48rem) {
    .main-header-menu {
        background-color:#f5f5f5;
        border: none
    }
}

@media (min-width: 62rem) {
    .main-header-menu {
        padding:0;
        /* border-right: .1rem solid hsla(0,0%,100%,.1); */
        background-color: #ffffff;
    }
}

.main-header-menu__list {
    position: absolute;
    top: 100%;
    left: 0;
    display: flex;
    flex-direction: column;
    width: 100vw;
    height: calc(100vh - 5rem);
    padding: 1.5rem;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    color: var(--color-grey2);
    background: var(--color-text);
    transform: translateX(-100%);
    visibility: hidden;
    transition: transform .3s ease
}

@media (min-width: 62rem) {
    .main-header-menu__list {
        color:var(--color-text);
        position: relative;
        top: inherit;
        flex-direction: row;
        width: inherit;
        height: auto;
        padding: 0;
        overflow: inherit;
        color: inherit;
        background: inherit;
        transform: inherit;
        visibility: visible;
        transition: unset;
        /* background: #f5f5f5; */
    }
}

.main-header-menu__list.active {
    transform: translateY(0);
    visibility: visible
}

.main-header-menu__list .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 42rem;
    min-height: 5.2rem;
    margin: 1.5rem auto 0
}

@media (min-width: 62rem) {
    .main-header-menu__list .btn {
        display:none
    }
}

.main-header-menu__item {
    order: 2
}

.main-header-menu__item.mobile-order,.main-header-menu__item:first-child {
    order: 1
}

@media (min-width: 62rem) {
    .main-header-menu__item.mobile-order,.main-header-menu__item:first-child {
        order:2
    }
}

@media (min-width: 62rem) {
    .main-header-menu__item+.main-header-menu__item {
        margin-left:0
    }
}

@media (min-width: 75rem) {
    .main-header-menu__item+.main-header-menu__item {
        margin-left:3rem
    }
}

@media (min-width: 100rem) {
    .main-header-menu__item+.main-header-menu__item {
        margin-left:3.5rem
    }
}

@media (min-width: 62rem) {
    .main-header-menu__item--mobile {
        display:none
    }
}

.main-header-menu__item--parent {
    position: relative
}

@media (min-width: 62rem) {
    .main-header-menu__item--parent.is-open .main-header-submenu {
        display:flex;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        padding: 1rem
    }
}

@media (min-width: 62rem) {
    .main-header-menu__item:not(.main-header-menu__dots):nth-child(n+6) {
        display:none
    }
}

@media (min-width: 100rem) {
    .main-header-menu__item:not(.main-header-menu__dots):nth-child(n+6) {
        display:block
    }
}

@media (min-width: 100rem) {
    .main-header-menu__item:not(.main-header-menu__dots):nth-child(n+8) {
        display:none
    }
}

.main-header-menu__dots {
    display: none;
    position: relative;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 4rem
}

@media (min-width: 62rem) {
    .main-header-menu__dots {
        display:flex
    }
}

.main-header-menu__dots svg {
    width: 2rem;
    height: 2rem;
    pointer-events: none
}

.main-header-menu__link {
    display: block;
    padding: 1.25rem;
    font-weight: 500;
    font-size: 1.6rem
}

@media (min-width: 62rem) {
    .main-header-menu__link {
        padding:1rem
    }
}

.main-header-submenu {
    display: none;
    gap: 1rem;
    flex-direction: column;
    padding: 0 0 2rem 2rem
}

@media (min-width: 62rem) {
    .main-header-submenu {
        position:absolute;
        top: 100%;
        left: 0;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        padding: 1.5rem;
        border-radius: .5rem;
        background: var(--color-white);
        box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05);
        z-index: 500
    }
}

.main-header-submenu .main-header-menu__item {
    margin-left: 0
}

@media (min-width: 100rem) {
    .main-header-submenu .main-header-menu__item:first-child,.main-header-submenu .main-header-menu__item:nth-child(2),.main-header-submenu .main-header-menu__item:nth-child(3) {
        display:none
    }
}

.main-header-submenu a {
    display: block;
    font-weight: 500;
    font-size: 1.6rem;
    color: var(--color-text);
    padding: 0;
    text-align: left
}

.main-header__burger {
    position: relative;
    display: inline-block;
    width: 1.75rem;
    height: 1rem;
    cursor: pointer;
    transition: all .4s ease;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

@media (min-width: 62rem) {
    .main-header__burger {
        display:none
    }
}

.main-header__burger-line {
    position: relative;
    width: 1.75rem;
    height: .2rem;
    background: #f5f5f5;
    border-radius: 50rem;
    transition: all .4s ease
}

@media (min-width: 48rem) {
    .main-header__burger-line {
        background:var(--color-text)
    }
}

.main-header__burger-line:first-child {
    top: 0
}

.main-header__burger-line:nth-child(2) {
    top: .3rem
}

.main-header__burger-line:nth-child(3) {
    top: .6rem
}

.main-header__burger.active .main-header__burger-line:first-child {
    top: .6rem;
    transform: rotate(45deg)
}

.main-header__burger.active .main-header__burger-line:nth-child(2) {
    opacity: 0
}

.main-header__burger.active .main-header__burger-line:nth-child(3) {
    top: .2rem;
    transform: rotate(-45deg)
}

@media (max-width: 61.98rem) {
    .main-header__address,.main-header__phone,.main-header__toolbar {
        padding:0 2rem;
        border-left: .1rem solid hsla(0,0%,100%,.1)
    }
}

.main-header--light {
    background: var(--color-white)
}

.main-header--light .header-toolbar-item__text,.main-header--light .main-header-menu__link,.main-header--light .main-header__phone {
    color: var(--color-black)
}

@media (min-width: 62rem) {
    .main-header--light .main-header__toolbar {
        border-bottom:.1rem solid rgba(0,0,0,.2)
    }
}

.main-header--light .main-header-menu {
    border-right: none
}

.main-header--light .main-header__burger-line {
    background: var(--color-dark)
}

.main-header--light .main-header__phone svg {
    fill: var(--color-dark)
}

@media (min-width: 48rem) {
    .main-header--light .main-header__phone svg {
        fill:var(--color-primary)
    }
}

.main-header--light .main-header-menu,.main-header--light .main-header__address,.main-header--light .main-header__phone,.main-header--light .main-header__toolbar {
    border-left: .1rem solid rgba(0,0,0,.2)
}

@media (min-width: 62rem) {
    .main-header--light .main-header-menu {
        border-left:0
    }
}

.main-header--light .header-toolbar-item__icon svg {
    fill: var(--color-dark)
}

@media (min-width: 48rem) {
    .main-header--light .header-toolbar-item__icon svg {
        fill:var(--color-primary)
    }
}

.main-header-search {
    display: none;
    width: 2rem;
    height: 2rem;
    grid-area: search
}

@media (min-width: 62rem) {
    .main-header-search {
        display:block
    }
}

.main-header-search svg {
    width: 2rem;
    height: 2rem;
    fill: var(--color-gray);
    cursor: pointer
}

.header-toolbar {
    display: flex;
    justify-content: space-between;
    width: 100%
}

.header-toolbar__part {
    display: flex;
    align-items: center;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content
}

.header-toolbar__part--right {
    display: none
}

@media (min-width: 62rem) {
    .header-toolbar__part--right {
        display:flex;
        justify-content: flex-end
    }
}

.header-toolbar__part--right .header-toolbar-item {
    margin-right: 2rem
}

.header-toolbar__part--right .header-toolbar-item--email {
    margin-right: 4.5rem
}

.header-toolbar__button {
    padding: .8rem 1.7rem;
    border-radius: 4rem;
    color: var(--color-gray-darken);
    background-color: var(--color-white)
}

.header-toolbar-item {
    display: none
}

@media (min-width: 62rem) {
    .header-toolbar-item {
        display:flex;
        align-items: center;
        margin-right: 4.5rem
    }
}

.header-toolbar-item:last-child {
    margin-right: 0
}

.header-toolbar-item--address {
    display: flex
}

.header-toolbar-item--address svg {
    display: block;
    width: 2rem;
    height: 2rem;
    fill: var(--color-white)
}

@media (min-width: 48rem) {
    .header-toolbar-item--address svg {
        display:none
    }
}

.header-toolbar-item__icon {
    display: flex;
    align-items: center
}

.header-toolbar-item__icon svg {
    width: 2rem;
    height: 2rem;
    fill: var(--color-white)
}

@media (min-width: 48rem) {
    .header-toolbar-item__icon svg {
        fill:var(--color-primary)
    }
}

.header-toolbar-item__icon img {
    width: 2.2rem;
    height: 2.2rem
}

.header-toolbar-item__text {
    display: none
}

@media (min-width: 48rem) {
    .header-toolbar-item__text {
        display:block;
        margin-left: 1rem;
        color: var(--color-text);
        font-weight: 500;
        font-size: 1.6rem
    }
}

.main-footer {
    position: relative;
    color: var(--color-white);
    background: var(--color-dark)
}

.main-footer a {
    color: currentColor
}

.main-footer__header {
    position: relative;
    display: grid;
    grid-template-areas: "logo phone" "menu menu";
    grid-template-columns: repeat(2,auto);
    align-items: center;
    padding: 2rem 0
}

.main-footer__header:after {
    position: absolute;
    top: 13rem;
    left: 0;
    width: 100%;
    height: .1rem;
    background: hsla(0,0%,100%,.2);
    content: ""
}

@media (max-width: 47.98rem) {
    .main-footer__header:after {
        top:9rem
    }
}

@media (max-width: 22.48rem) {
    .main-footer__header:after {
        top:15.5rem
    }
}

@media (min-width: 62rem) {
    .main-footer__header {
        grid-template-areas:"logo menu menu phone";
        grid-template-columns: .4fr .7fr .5fr .4fr
    }
}

@media (min-width: 48rem) {
    .main-footer__header {
        gap:2.5rem;
        padding: 4.8rem 0
    }
}

@media (max-width: 22.48rem) {
    .main-footer__header {
        grid-template-areas:"logo" "phone" "menu";
        grid-template-columns: 1fr
    }
}

.main-footer__logo {
    grid-area: logo
}



.main-footer__phone {
    display: flex;
    flex-direction: column;
    grid-area: phone;
    align-items: flex-end
}

@media (max-width: 22.48rem) {
    .main-footer__phone {
        align-items:flex-start;
        margin-top: 3rem
    }
}

.main-footer__phone a {
    display: flex;
    align-items: center;
    font-weight: 500;
    font-size: 1.6rem;
    letter-spacing: -.01em
}

.main-footer__phone span {
    white-space: nowrap;
    margin-right: 1.5rem
}

.main-footer__phone svg {
    display: none
}

@media (min-width: 48rem) {
    .main-footer__phone svg {
        display:block;
        width: 2rem;
        height: 2rem;
        margin-right: 1rem;
        fill: var(--color-primary);
        stroke: none
    }
}

.main-footer__phone_info {
    margin-top: .5rem;
    color: var(--color-gray);
    font-size: 1.2rem;
    white-space: nowrap
}

@media (min-width: 48rem) {
    .main-footer__phone_info {
        margin-left:1.5rem
    }
}

.main-footer__menu {
    grid-area: menu
}

@media (max-width: 61.98rem) {
    .main-footer__menu {
        margin-top:6.5rem
    }
}

@media (min-width: 62rem) {
    .main-footer__menu {
        display:flex;
        align-items: center;
        justify-content: center
    }
}

.main-footer__main {
    position: relative;
    display: grid;
    gap: 4rem;
    padding: 2rem 0 3.5rem
}

@media (min-width: 62rem) {
    .main-footer__main {
        display:flex;
        align-items: center;
        justify-content: space-between
    }
}

@media (min-width: 48rem) {
    .main-footer__main {
        padding:4rem 0 4.8rem
    }
}

.main-footer__main:after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: .1rem;
    background: hsla(0,0%,100%,.2);
    content: ""
}

.main-footer__info-block {
    display: grid;
    gap: 1.6rem
}

@media (min-width: 62rem) {
    .main-footer__info-block {
        min-height:9.6rem;
        gap: 0
    }
}

@media (min-width: 62rem) {
    .main-footer__info-block.center {
        place-content:center;
        align-content: space-between
    }
}

.main-footer__info-block_title {
    color: var(--color-gray);
    font-weight: 400
}

.main-footer__info-block_content {
    display: grid;
    align-items: end
}

.main-footer__info-block--schedule {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 2.8rem;
    margin-bottom: 0
}

@media (min-width: 62rem) {
    .main-footer__info-block:last-of-type {
        margin-right:.8rem
    }
}

.main-footer__footer {
    display: grid;
    grid-template-areas: "menu" "copyright" "made";
    gap: 1rem;
    padding: 2.5rem 0 9rem;
    color: var(--color-grey);
    font-weight: 500;
    font-size: 1.5rem
}

@media (min-width: 62rem) {
    .main-footer__footer {
        grid-template-areas:"copyright menu . made";
        grid-template-columns: auto auto 1fr auto;
        gap: 6.5rem
    }
}

@media (min-width: 48rem) {
    .main-footer__footer {
        padding:4rem 0
    }
}

.main-footer__copyright {
    grid-area: copyright
}

.main-footer__menu-two {
    grid-area: menu
}

.main-footer__menu-two a {
    font-weight: 500!important
}

.main-footer__made-in {
    grid-area: made;
    margin-top: 3rem;
    font-size: 1.4rem
}

@media (min-width: 62rem) {
    .main-footer__made-in {
        margin:0;
        text-align: right
    }
}

.main-footer__made-in a {
    color: var(--color-primary);
    font-weight: 500
}

.main-footer--light {
    background: var(--color-white)
}

.main-footer--light .main-footer__header:after,.main-footer--light .main-footer__main:after {
    background: rgba(0,0,0,.2)
}

.main-footer--light .footer-menu__link,.main-footer--light .main-footer__phone a {
    color: var(--color-black)
}

.main-footer--light .main-footer__menu-two .footer-menu__link,.main-footer--light .main-footer__phone_info a {
    color: var(--color-grey)
}

.footer-menu {
    display: grid;
    gap: 1.5rem
}

@media (min-width: 62rem) {
    .footer-menu {
        grid-auto-flow:column;
        gap: 2rem;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content
    }
}

@media (min-width: 75rem) {
    .footer-menu {
        gap:3.5rem
    }
}

.footer-menu__link {
    padding: 1rem 0;
    font-weight: 400;
    letter-spacing: -.01em;
    white-space: nowrap
}

@media (min-width: 62rem) {
    .footer-menu__link {
        padding:1rem
    }
}

.footer-menu .link--mob {
    display: block
}

@media (min-width: 62rem) {
    .footer-menu .link--mob {
        display:none
    }
}

@media (min-width: 100rem) {
    .footer-menu .link--mob {
        display:block
    }
}

@media (min-width: 100rem) {
    .footer-menu .link--mob-2 {
        display:none
    }
}

.footer-menu__dots {
    display: none;
    position: relative;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 4rem
}

@media (min-width: 62rem) {
    .footer-menu__dots {
        display:flex
    }
}

.footer-menu__dots svg {
    width: 2rem;
    height: 2rem;
    pointer-events: none;
    fill: var(--color-white)
}

.footer-menu__item--parent {
    position: relative
}

@media (min-width: 62rem) {
    .footer-menu__item--parent.is-open .footer-menu__submenu {
        display:flex
    }
}

@media (min-width: 100rem) {
    .footer-menu__item--parent.is-open .footer-menu__submenu {
        display:none
    }
}

.footer-menu__item--parent.is-open .footer-menu__submenu-2 {
    display: none
}

@media (min-width: 100rem) {
    .footer-menu__item--parent.is-open .footer-menu__submenu-2 {
        display:flex;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        padding: 1rem
    }
}

.footer-menu__submenu {
    display: none;
    gap: 1rem;
    flex-direction: column;
    padding: 0 0 2rem 2rem
}

@media (min-width: 62rem) {
    .footer-menu__submenu {
        position:absolute;
        top: 100%;
        left: 0;
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
        padding: 1.5rem;
        border-radius: .5rem;
        background: var(--color-white);
        box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05);
        z-index: 500
    }
}

@media (min-width: 62rem) and (max-width:99.98rem) {
    .footer-menu__submenu-2 {
        display:none
    }
}

.footer-menu__submenu a {
    display: block;
    font-weight: 500;
    font-size: 1.6rem;
    color: var(--color-text);
    padding: 0;
    text-align: left
}

.payments-list {
    display: flex;
    flex-wrap: wrap;
    gap: 5rem
}

@media (max-width: 61.98rem) {
    .payments-list {
        gap:3rem 2rem
    }
}

.payments-list__item {
    width: auto
}

.messengers-list,.networks-list {
    display: grid;
    grid-auto-flow: column;
    gap: 1.5rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.networks-list__link {
    --size: 2.4rem;
    width: var(--size);
    height: var(--size)
}

.messengers-list__link {
    width: 4.2rem;
    height: 4.2rem
}

.messengers-list__link img,.mob-menu {
    width: 100%
}

.mob-menu {
    position: fixed;
    bottom: 0;
    z-index: 992;
    display: flex;
    justify-content: space-between;
    padding: 1.5rem 1.9rem;
    background: #fff;
    border-top-left-radius: 1.1rem;
    border-top-right-radius: 1.1rem;
    box-shadow: 0 .4rem 6.2rem rgba(0,0,0,.08)
}

@media (min-width: 48rem) {
    .mob-menu {
        display:none
    }
}

.mob-menu-item {
    flex-direction: column;
    min-width: 6rem
}

.mob-menu-icon,.mob-menu-item {
    display: flex;
    align-items: center
}

.mob-menu-icon {
    margin-bottom: .5rem;
    justify-content: center
}

.mob-menu-icon svg {
    width: 2.2rem;
    height: 2.2rem;
    fill: var(--color-primary)
}

.mob-menu-text {
    color: var(--color-gray);
    font-weight: 500;
    font-size: 1rem;
    line-height: 120%
}

.mob-phones {
    position: fixed;
    left: 1.5rem;
    right: 1.5rem;
    bottom: 8rem;
    z-index: 992;
    transform: translateY(5rem);
    opacity: 0;
    pointer-events: none;
    transition: all .5s cubic-bezier(.34,1.56,.64,1)
}

@media (min-width: 48rem) {
    .mob-phones {
        display:none
    }
}

.mob-phones.is-show {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto
}

.mob-phones-item {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 5.2rem;
    color: var(--color-primary);
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.5;
    background: var(--color-white);
    border-radius: 1rem;
    box-shadow: 0 1.5rem 2.5rem rgba(116,135,134,.15)
}

.mob-phones-item:not(:last-child) {
    margin: 0 0 1rem
}

.mob-phones-item.phones-close {
    color: var(--color-black)
}

.mob-phones-item svg {
    display: block;
    height: 2rem;
    width: 2rem;
    margin-right: 1rem;
    fill: var(--color-primary)
}

.mob-backdrop {
    display: none
}

.mob-backdrop.is-show {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 991;
    display: block;
    background: rgba(0,0,0,.6)
}

@media (min-width: 48rem) {
    .mob-backdrop.is-show {
        display:none
    }
}

@-webkit-keyframes showAsidePopup {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes showAsidePopup {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes showAsideWindow {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes showAsideWindow {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes leaveAsidePopup {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes leaveAsidePopup {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@-webkit-keyframes leaveAsideWindow {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes leaveAsideWindow {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@-webkit-keyframes showAsideWindowMobile {
    0% {
        transform: translateY(3rem);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

@keyframes showAsideWindowMobile {
    0% {
        transform: translateY(3rem);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

@-webkit-keyframes leaveAsideWindowMobile {
    0% {
        transform: translateY(0);
        opacity: 1
    }

    to {
        transform: translateY(3rem);
        opacity: 0
    }
}

@keyframes leaveAsideWindowMobile {
    0% {
        transform: translateY(0);
        opacity: 1
    }

    to {
        transform: translateY(3rem);
        opacity: 0
    }
}

.aside-popup {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9999;
    display: none;
    background: rgba(0,0,0,.5)
}

.aside-popup__inner {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    height: 100%
}

@media (min-width: 62rem) {
    .aside-popup__inner {
        align-items:center;
        justify-content: center
    }
}

.aside-popup.is-active {
    display: block;
    -webkit-animation: showAsidePopup .3s ease-in-out forwards;
    animation: showAsidePopup .3s ease-in-out forwards
}

.aside-popup.is-active .aside-popup-window {
    opacity: 0;
    -webkit-animation: showAsideWindowMobile .2s ease-in-out .3s forwards;
    animation: showAsideWindowMobile .2s ease-in-out .3s forwards
}

@media (min-width: 62rem) {
    .aside-popup.is-active .aside-popup-window {
        -webkit-animation:showAsideWindow .2s ease-in-out .3s forwards;
        animation: showAsideWindow .2s ease-in-out .3s forwards
    }
}

.aside-popup.is-leave {
    -webkit-animation: leaveAsidePopup .3s ease-in-out .2s forwards;
    animation: leaveAsidePopup .3s ease-in-out .2s forwards
}

.aside-popup.is-leave .aside-popup-window {
    -webkit-animation: leaveAsideWindowMobile .2s ease-in-out forwards;
    animation: leaveAsideWindowMobile .2s ease-in-out forwards
}

@media (min-width: 62rem) {
    .aside-popup.is-leave .aside-popup-window {
        -webkit-animation:leaveAsideWindow .2s ease-in-out forwards;
        animation: leaveAsideWindow .2s ease-in-out forwards
    }
}

.aside-popup-window {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    border-radius: 1rem
}

@media (min-width: 62rem) {
    .aside-popup-window {
        background:#fff;
        justify-content: normal;
        width: 50rem;
        height: -webkit-max-content;
        height: -moz-max-content;
        height: max-content;
        position: relative
    }
}

.aside-popup-window__header {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-bottom: 1.4rem
}

.aside-popup-window__header .aside-popup-window__title {
    display: block
}

.aside-popup-window__close {
    position: absolute;
    top: 2rem;
    right: 1rem;
    z-index: 100;
    display: flex;
    place-content: center;
    background: none;
    border: none;
    outline: none;
    transition: .2s ease-in-out
}

@media (min-width: 62rem) {
    .aside-popup-window__close {
        right:2rem
    }
}

.aside-popup-window__close svg {
    width: 2.4rem;
    height: 2.4rem;
    fill: #1c1b1f
}

.aside-popup-window__close:hover {
    opacity: .7
}

.aside-popup-window__body {
    padding: 2.5rem 1.5rem;
    overflow: auto;
    background: #fff;
    height: 100vh;
    display: flex;
    flex-direction: column
}

@media (min-width: 62rem) {
    .aside-popup-window__body {
        flex:1;
        background: transparent;
        border-radius: 0;
        box-shadow: none;
        width: 100%;
        padding: 3.5rem 2.5rem;
        overflow: inherit
    }
}

.aside-popup-window__title {
    margin: 2rem 0;
    font-weight: 400;
    font-size: 3.2rem;
    line-height: 1.1;
    font-weight: 500
}

@media (min-width: 62rem) {
    .aside-popup-window__title {
        font-size:3.6rem
    }
}

.aside-popup-window__subtitle {
    margin-bottom: 1.4rem;
    font-weight: 400;
    font-size: 1.5rem;
    line-height: 1.2;
    color: #757575
}

@media (min-width: 62rem) {
    .aside-popup-window__subtitle {
        font-size:2.4rem
    }
}

.breadcrumbs {
    margin: 1.5rem 0
}

@media (min-width: 48rem) {
    .breadcrumbs {
        margin:1.5rem 0 4.5rem
    }
}

.breadcrumbs__list {
    margin: 0;
    padding: 0;
    list-style: none
}

.breadcrumbs__item {
    display: inline-block
}

.breadcrumbs__item:not(:last-child):after {
    display: inline-block;
    width: .6rem;
    height: 1rem;
    margin: 0 .7em;
    background-image: url(../img/icons/arrow.svg);
    content: "";
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.breadcrumbs__link {
    padding: 1.5rem 0;
    font-weight: 500;
    font-size: 1.4rem
}

.breadcrumbs__link--current,.breadcrumbs__link:active {
    opacity: .55
}

.form__field {
    position: relative
}

.form__field label {
    top: 2.7rem;
    transform: translateY(-50%);
    left: 1.5rem;
    padding: 0 .5rem;
    display: inline-block;
    margin-bottom: .8rem;
    color: var(--color-gray);
    transition: all .2s;
    pointer-events: none;
    font-size: 1.4rem;
    background-color: var(--color-white)
}

.form__field label.active {
    top: 0;
    left: 1.5rem;
    font-size: 1.2rem
}

.form__field label.grey {
    background-color: var(--color-white)
}

@media (min-width: 48rem) {
    .form__field label.grey {
        background:linear-gradient(180deg,#f5f7f7 60%,transparent 0)
    }
}

.form__field button {
    font-weight: 400
}

.form__field.is-disabled {
    opacity: .5;
    pointer-events: none
}

.form__date-time-picker input,.form__input {
    width: 100%;
    height: 5.2rem!important;
    padding: 0 1.5rem;
    color: var(--color-onyx)!important;
    font-weight: 400!important;
    background-color: var(--color-white)!important;
    border: .1rem solid rgba(116,135,134,.3)!important;
    border-radius: 1rem!important;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 1.4rem;
    line-height: 2rem
}

.form__date-time-picker input:focus,.form__input:focus {
    border-color: var(--color-gray)!important
}

.form__textarea {
    display: block;
    width: 100%;
    padding: 1.5rem;
    color: var(--color-onyx)!important;
    background-color: var(--color-white)!important;
    border: .1rem solid var(--color-grey2)!important;
    border-radius: 1rem!important;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.form__textarea:focus {
    border-color: var(--color-gray)!important
}

.form__date-time-picker .field:not(.has-value) input {
    font-weight: 400!important
}

.form__date-time-picker .field:not(.has-value):after {
    position: absolute;
    top: 50%;
    right: 2rem;
    width: .6rem;
    height: 1rem;
    background-image: url(../img/icons/arrow-black.svg);
    transform: translateY(-50%) rotate(90deg);
    cursor: pointer;
    content: ""
}

.form__text {
    display: block
}

.form__text p {
    margin: 0;
    color: var(--color-gray);
    font-weight: 400;
    font-size: 1.2rem
}

@media (min-width: 48rem) {
    .form__text p {
        font-size:1.4rem
    }
}

.form__text a {
    color: var(--color-primary)
}

.form__btn {
    width: 100%;
    font-weight: 400
}

.form__select .vs__dropdown-toggle {
    padding: 1rem 0;
    border: none;
    border-bottom: .1rem solid var(--color-primary);
    border-radius: 0;
    cursor: pointer!important
}

.form__select .vs__search,.form__select .vs__selected {
    margin: 0;
    padding: 0;
    cursor: pointer
}

.form__select .vs__search:focus,.form__select .vs__selected:focus {
    cursor: text
}

.form--classic .form__field {
    margin-bottom: 2rem
}

.form--classic .form__field:last-child {
    margin-bottom: 0
}

.form__mobile {
    display: block
}

@media (min-width: 48rem) {
    .form__mobile {
        display:none
    }
}

.form__desktop {
    display: none
}

@media (min-width: 48rem) {
    .form__desktop {
        display:block
    }
}

.c-checkbox {
    position: relative;
    margin: .5rem 0;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.c-checkbox__input {
    position: absolute;
    visibility: hidden;
    pointer-events: none
}

.c-checkbox__text {
    position: relative;
    display: block;
    padding: 0 0 0 3.5rem;
    font-size: 1.4rem;
    line-height: 1.6;
    cursor: pointer
}

.c-checkbox__text:before {
    position: absolute;
    top: .2em;
    left: 0;
    display: inline-block;
    width: 2.2rem;
    height: 2.2rem;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 54%;
    border: .1rem solid #ddd;
    cursor: pointer;
    content: ""
}

.c-checkbox__text a {
    color: rgba(0,0,0,.7);
    border-bottom: .1rem dashed rgba(0,0,0,.4);
    cursor: pointer;
    transition: border-color .2s ease
}

.c-checkbox__text a:hover {
    border-color: #000
}

.c-checkbox__input:checked+.c-checkbox__text:before {
    background-image: url(../img/icons/check.svg)
}

span.check {
    position: absolute;
    top: 2.7rem;
    right: 1rem;
    display: inline-block;
    transform: translateY(-50%)
}

span.check svg {
    width: 1.5rem;
    height: 1rem;
    fill: #56c048
}

span.is-danger {
    display: block;
    padding: .5rem 0 .5rem 1.5rem;
    color: var(--color-red);
    font-size: 1.2rem
}

.tabs {
    display: inline-flex;
    margin: 0 0 2rem;
    background: var(--color-greylighten);
    border-radius: 1rem
}

@media (min-width: 48rem) {
    .tabs {
        margin:0 0 4rem
    }
}

.tabs-wrapper {
    overflow: auto;
    white-space: nowrap;
    max-width: 100vw;
    margin: 0 -1.5rem;
    padding: 0 1.5rem;
    scrollbar-color: transparent transparent;
    scrollbar-width: none;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -ms-overflow-style: none
}

.tabs-wrapper::-webkit-scrollbar,.tabs-wrapper::-webkit-scrollbar-thumb {
    width: 0;
    height: 0;
    background-color: transparent
}

.tabs-wrapper::-webkit-scrollbar-track {
    width: 0;
    height: 0;
    background-color: transparent
}

.tabs-wrapper::-webkit-scrollbar {
    display: none;
    -webkit-appearance: none
}

.tabs-item {
    padding: 1.7rem 2.2rem;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.4;
    color: var(--color-onyx);
    border-radius: 1rem;
    cursor: pointer
}

.tabs-item.active {
    background: var(--color-white)
}

.float-links {
    position: fixed;
    right: 1.5rem;
    bottom: 8.5rem;
    z-index: 995;
    transition: all .5s cubic-bezier(.34,1.56,.64,1);
    transform: translateY(5rem);
    opacity: 0
}

@media (min-width: 48rem) {
    .float-links {
        right:3rem;
        bottom: 8.5rem;
        transform: none;
        opacity: 1;
        transition: bottom .01s linear
    }
}

.float-links.is-show {
    display: block;
    transform: translateY(0);
    opacity: 1
}

.float-links.is-show .float-close {
    transform: rotate(0deg)
}

.float-links .float-close {
    transition: all .5s cubic-bezier(.34,1.56,.64,1);
    transform: rotate(90deg)
}

@media (min-width: 48rem) {
    .float-links .float-close {
        display:none
    }
}

.float-links--left {
    position: fixed;
    left: 1.5rem;
    bottom: 8.5rem;
    z-index: 100;
    transition: all .5s ease-in-out
}

@media (min-width: 48rem) {
    .float-links--left {
        left:3rem
    }
}

.float-links--left .float-links-item {
    display: none
}

.float-links--left .float-links-item.is-show {
    display: block;
    pointer-events: all;
    -webkit-animation-name: slidein;
    animation-name: slidein;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-timing-function: cubic-bezier(.34,1.56,.64,1);
    animation-timing-function: cubic-bezier(.34,1.56,.64,1)
}

.float-links-item {
    display: block;
    width: 6.3rem;
    height: 6.3rem;
    transition: .3s ease-in-out
}

.float-links-item:not(:first-child) {
    margin-top: 1.3rem
}

@media (max-width: 47.98rem) {
    .float-links-item:not(:first-child) {
        margin-top:.8rem
    }
}

.float-links-item img {
    width: 100%;
    height: 100%
}

.float-close {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 6.3rem;
    height: 6.3rem;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 .4rem 6.2rem rgba(0,0,0,.08)
}

.float-close img {
    width: 1.3rem;
    height: 1.3rem
}

@-webkit-keyframes slidein {
    0% {
        transform: translateY(5rem) rotate(90deg);
        opacity: 0
    }

    to {
        transform: translateY(0) rotate(0deg);
        opacity: 1
    }
}

@keyframes slidein {
    0% {
        transform: translateY(5rem) rotate(90deg);
        opacity: 0
    }

    to {
        transform: translateY(0) rotate(0deg);
        opacity: 1
    }
}

.slider .swiper-container {
    position: relative;
    width: 100%;
    height: 100%
}

.slider .swiper-pagination {
    position: absolute;
    z-index: 2;
    text-align: center;
    transform: translateZ(0);
    transition: opacity .3s
}

.slider .swiper-pagination-hidden {
    opacity: 0
}

.slider .swiper-pagination-lock {
    display: none
}

.slider .swiper-pagination-clickable>* {
    cursor: pointer
}

.slider .swiper-button-lock {
    display: none!important
}

.brands-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: .4rem;
    padding-right: 1.5rem;
    padding-left: 1.5rem
}

@media (min-width: 36rem) {
    .brands-grid {
        grid-template-columns:repeat(3,1fr)
    }
}

@media (min-width: 48rem) {
    .brands-grid {
        display:none
    }
}

.brand-grid-item {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 10.5rem;
    height: 8rem;
    background: var(--color-white)
}

@media (min-width: 62rem) {
    .brand-grid-item {
        min-width:100%;
        height: 11.7rem
    }
}

.brand-grid-item img {
    max-width: 100%;
    opacity: .5;
    filter: grayscale(100%);
    transition: .125s ease-in-out
}

@media (min-width: 62rem) {
    .brand-grid-item img {
        transform:scale(1.5)
    }
}

.brand-grid-item:hover img {
    opacity: 1;
    filter: none
}

.home-slider-brands {
    position: relative;
    --nav-size: 16rem;
    --padding-slider: 0.5rem
}

@media (max-width: 47.98rem) {
    .home-slider-brands.container,.home-slider-brands.page--services__list {
        padding-right:0
    }
}

.home-slider-brands__loading {
    position: absolute;
    right: 0;
    left: 0
}

.home-slider-brands__loading .skeleton-box {
    height: 7.9rem
}

@media (min-width: 62rem) {
    .home-slider-brands__loading .skeleton-box {
        height:11.7rem
    }
}

.home-slider-brands__swiper {
    opacity: 0;
    transition: opacity .3s ease-in-out
}

@media (min-width: 48rem) {
    .home-slider-brands__swiper {
        display:block
    }
}

.home-slider-brands.initialized .home-slider-brands__loading {
    display: none
}

.home-slider-brands.initialized .home-slider-brands__swiper {
    opacity: 1
}

.home-slider-brands .swiper-container {
    padding-bottom: 1rem;
    margin-bottom: -1rem
}

@media (min-width: 62rem) {
    .home-slider-brands .swiper-container {
        margin-top:-2rem;
        margin-bottom: -2rem;
        padding-top: 2rem;
        padding-bottom: 2rem
    }
}

.home-slider-brands .swiper-container:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    width: 8rem;
    background: linear-gradient(90deg,transparent,var(--color-whitesmoke));
    content: "";
    pointer-events: none
}

.home-slider-brands .swiper-slide {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 12rem;
    height: 8rem;
    overflow: hidden;
    background-color: var(--color-white);
    border-radius: 1rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    box-shadow: 0 1px 0 0 rgba(0,0,0,.05)
}

@media (min-width: 48rem) {
    .home-slider-brands .swiper-slide {
        max-width:15rem;
        height: 12rem
    }
}

.home-slider-brands .swiper-slide img {
    max-width: 100%;
    opacity: 1;
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    filter: gray;
    transition: all .2s
}

@media (min-width: 62rem) {
    .home-slider-brands .swiper-slide img {
        transform:scale(1.5)
    }
}

.home-slider-brands .swiper-slide:hover img {
    opacity: .5;
    filter: none
}

@media (min-width: 48rem) {
    .home-slider-brands .swiper-slide:hover {
        box-shadow:0 .5rem 1rem rgba(0,0,0,.05)
    }
}

.home-slider-brands .swiper-slide.page--home__brands--all {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    border: .1rem solid var(--color-primary);
    font-size: 1.6rem;
    font-weight: 500
}

@media (max-width: 47.98rem) {
    .home-slider-brands .swiper-slide.page--home__brands--all {
        margin-right:1.5rem
    }
}

.home-slider-brands .swiper-slide.page--home__brands--all a {
    color: var(--color-primary)
}

.home-slider-brands .swiper-nav {
    display: none
}

@media (min-width: 62rem) {
    .home-slider-brands .swiper-nav {
        position:absolute;
        top: 0;
        bottom: 0;
        z-index: 2;
        display: grid;
        place-content: center;
        width: var(--nav-size);
        height: 100%;
        background: var(--color-white);
        cursor: pointer;
        border-radius: 1rem;
        transition: opacity .3s ease
    }

    .home-slider-brands .swiper-nav:hover {
        opacity: .65
    }

    .home-slider-brands .swiper-nav--prev {
        left: 0;
        transform: rotate(-180deg)
    }

    .home-slider-brands .swiper-nav--next {
        right: 0
    }

    .home-slider-brands .swiper-nav svg {
        width: 3.3rem;
        height: 1.14rem;
        fill: var(--color-dark)
    }

    .home-slider-brands .swiper-nav.swiper-button-disabled {
        opacity: .5!important
    }
}

.home-slider,.service-slider {
    position: relative;
    overflow: hidden;
    padding-bottom: 1rem;
    margin-bottom: -1rem
}

.home-slider .swiper-slide,.service-slider .swiper-slide {
    height: auto
}

.home-slider .swiper-nav,.service-slider .swiper-nav {
    display: none
}

@media (min-width: 62rem) {
    .home-slider .swiper-nav,.service-slider .swiper-nav {
        position:absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2;
        display: grid;
        place-content: center;
        width: 4rem;
        height: 4rem;
        background-color: var(--color-white);
        border-radius: 50%;
        cursor: pointer;
        transition: opacity .3s ease
    }

    .home-slider .swiper-nav:hover,.service-slider .swiper-nav:hover {
        opacity: .65
    }

    .home-slider .swiper-nav--prev,.service-slider .swiper-nav--prev {
        left: -5rem;
        transform: rotate(-180deg)
    }

    .home-slider .swiper-nav--next,.service-slider .swiper-nav--next {
        right: -5rem
    }

    .home-slider .swiper-nav svg,.service-slider .swiper-nav svg {
        width: 2rem;
        height: 2rem;
        fill: var(--color-dark)
    }

    .home-slider .swiper-nav.swiper-button-disabled,.service-slider .swiper-nav.swiper-button-disabled {
        display: none
    }
}

.home-slider-container,.service-slider-container {
    overflow: visible
}

@media (min-width: 62rem) {
    .home-slider-container,.service-slider-container {
        padding-bottom:1rem;
        margin-bottom: -1rem
    }
}

@media (min-width: 90rem) {
    .home-slider-container,.service-slider-container {
        overflow:hidden
    }
}

.home-slider__container,.service-slider__container {
    position: relative;
    padding-bottom: 1rem;
    margin-bottom: -1rem
}

.home-slider__loading,.service-slider__loading {
    position: absolute;
    right: 0;
    left: 0;
    display: grid;
    grid-template-columns: repeat(1,minmax(0,1fr));
    gap: 1rem
}

@media (min-width: 62rem) {
    .home-slider__loading,.service-slider__loading {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
}

.home-slider__loading .skeleton-box,.service-slider__loading .skeleton-box {
    height: 24rem;
    border-radius: 1rem
}

@media (min-width: 62rem) {
    .home-slider__loading .skeleton-box,.service-slider__loading .skeleton-box {
        height:36rem
    }
}

.home-slider__swiper,.service-slider__swiper {
    opacity: 0;
    transition: opacity .3s ease-in-out
}

@media (min-width: 62rem) {
    .home-slider__swiper .swiper-wrapper,.service-slider__swiper .swiper-wrapper {
        overflow:visible;
        padding-bottom: 1rem;
        margin-bottom: -1rem
    }
}

.home-slider.initialized .home-slider__loading,.home-slider.initialized .service-slider__loading,.service-slider.initialized .home-slider__loading,.service-slider.initialized .service-slider__loading {
    display: none
}

.home-slider.initialized .home-slider__swiper,.home-slider.initialized .service-slider__swiper,.service-slider.initialized .home-slider__swiper,.service-slider.initialized .service-slider__swiper {
    opacity: 1
}

.service-slider {
    margin-bottom: 8rem
}

@media (max-width: 47.98rem) {
    .service-slider {
        margin:0 -1.5rem 6rem;
        padding-right: 1.5rem;
        padding-left: 1.5rem
    }
}

@media (min-width: 48rem) {
    .service-slider {
        overflow:initial
    }
}

.service-slider-brands {
    padding-right: 0;
    position: relative;
    --nav-size: 16rem;
    --padding-slider: 0.5rem
}

@media (max-width: 47.98rem) {
    .service-slider-brands.container,.service-slider-brands.page--services__list {
        padding-right:0
    }
}

.service-slider-brands__loading {
    position: absolute;
    right: 0;
    left: 0
}

.service-slider-brands__loading .skeleton-box {
    height: 7.9rem
}

@media (min-width: 62rem) {
    .service-slider-brands__loading .skeleton-box {
        height:11.7rem
    }
}

.service-slider-brands__swiper {
    opacity: 0;
    transition: opacity .3s ease-in-out
}

@media (min-width: 48rem) {
    .service-slider-brands__swiper {
        display:block
    }
}

.service-slider-brands .swiper-container {
    position: relative;
    padding: 2rem 1.5rem;
    margin: -2rem -1.5rem
}

.service-slider-brands .swiper-container:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    width: 8rem;
    background: linear-gradient(90deg,transparent,var(--color-whitesmoke));
    content: "";
    pointer-events: none
}

.service-slider-brands.initialized .service-slider-brands__loading {
    display: none
}

.service-slider-brands.initialized .service-slider-brands__swiper {
    opacity: 1
}

.service-slider-brands .swiper-slide {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 12rem;
    height: 8rem;
    overflow: hidden;
    background-color: var(--color-white);
    border-radius: 1rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05);
    transition: all .2s
}

@media (min-width: 48rem) {
    .service-slider-brands .swiper-slide {
        max-width:15rem;
        height: 12rem
    }
}

.service-slider-brands .swiper-slide img {
    max-width: 100%;
    opacity: 1;
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    filter: gray;
    transition: .125s ease-in-out
}

@media (min-width: 62rem) {
    .service-slider-brands .swiper-slide img {
        transform:scale(1.5)
    }
}

@media (min-width: 48rem) {
    .service-slider-brands .swiper-slide:hover {
        box-shadow:0 .5rem 1rem rgba(0,0,0,.05)
    }
}

.service-slider-brands .swiper-slide:hover img {
    opacity: .5;
    filter: none
}

.service-slider-brands .swiper-slide.page--home__brands--all {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    border: .1rem solid var(--color-primary);
    font-size: 1.6rem;
    font-weight: 500
}

@media (max-width: 47.98rem) {
    .service-slider-brands .swiper-slide.page--home__brands--all {
        margin-right:1.5rem
    }
}

.service-slider-brands .swiper-slide.page--home__brands--all a {
    color: var(--color-primary)
}

.service-slider-brands .swiper-nav {
    display: none
}

@media (min-width: 62rem) {
    .service-slider-brands .swiper-nav {
        position:absolute;
        top: 0;
        bottom: 0;
        z-index: 2;
        display: grid;
        place-content: center;
        width: var(--nav-size);
        height: 100%;
        background: var(--color-white);
        cursor: pointer;
        border-radius: 1rem;
        transition: opacity .3s ease
    }

    .service-slider-brands .swiper-nav:hover {
        opacity: .65
    }

    .service-slider-brands .swiper-nav--prev {
        left: 0;
        transform: rotate(-180deg)
    }

    .service-slider-brands .swiper-nav--next {
        right: 0
    }

    .service-slider-brands .swiper-nav svg {
        width: 3.3rem;
        height: 1.14rem;
        fill: var(--color-dark)
    }

    .service-slider-brands .swiper-nav.swiper-button-disabled {
        opacity: .5!important
    }
}

.repair-examples-list {
    position: relative
}

.repair-examples-list .swiper-container {
    margin: 0 -1.5rem;
    padding: 0 1.5rem
}

@media (min-width: 48rem) {
    .repair-examples-list .swiper-container {
        margin:0;
        padding: 0
    }
}

.repair-examples-item {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: .6rem
}

.repair-examples-item img,.repair-examples-item video {
    border-radius: .6rem;
    width: 100%
}

.repair-examples-item video {
    height: 100%
}

.repair-examples-text {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 2rem
}

@media (min-width: 48rem) {
    .repair-examples-text {
        min-height:4rem
    }
}

.repair-examples-text .swiper-container {
    margin: 0 -1.5rem;
    padding: 0 1.5rem
}

@media (min-width: 48rem) {
    .repair-examples-text .swiper-container {
        margin:0;
        padding: 0
    }
}

.repair-examples-text-item {
    font-weight: 500
}

@media (min-width: 48rem) {
    .repair-examples-text-item {
        font-size:2.4rem
    }
}

.repair-examples-text-pagination {
    display: none
}

@media (min-width: 48rem) {
    .repair-examples-text-pagination {
        display:block;
        padding-right: 12rem;
        font-weight: 500;
        font-size: 1.6rem
    }
}

.repair-examples-arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 4rem;
    height: 4rem;
    background: var(--color-white);
    border-radius: 50%;
    transition: all .3s ease-in-out;
    cursor: pointer
}

.repair-examples-arrow svg {
    width: 2rem;
    height: 2rem;
    fill: var(--color-black)
}

.repair-examples-arrow:hover svg {
    fill: var(--color-primary)
}

.repair-examples-arrow_next,.repair-examples-arrow_prev {
    display: none
}

@media (min-width: 48rem) {
    .repair-examples-arrow_next,.repair-examples-arrow_prev {
        top:auto;
        bottom: -6rem;
        display: flex
    }
}

.repair-examples-arrow_next {
    right: 0
}

.repair-examples-arrow_prev {
    right: 5rem
}

.repair-examples-arrow_prev svg {
    transform: rotate(180deg)
}

.aside-menu .menu {
    overflow: hidden;
    border-radius: 1rem
}

.aside-menu .menu__item:not(:last-child) {
    margin: 0 0 1rem
}

.aside-menu .menu__item.active {
    display: block
}

.aside-menu .menu__item.active>.menu__link {
    position: relative;
    background: var(--color-greylighten)
}

.aside-menu .menu__item.active>.menu__link svg {
    transform: rotate(-90deg)
}

.aside-menu .menu__item.active .menu-dropdown {
    display: block;
    padding: 1rem 0
}

.aside-menu .menu__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.6rem 1.5rem;
    color: var(--color-onyx);
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.25;
    border-radius: 1rem;
    transition: all .2s
}

.aside-menu .menu__link:hover {
    background: var(--color-white);
    opacity: 1
}

.aside-menu .menu__link:hover svg {
    fill: var(--color-primary);
    opacity: 1
}

.aside-menu .menu__link svg {
    width: .6rem;
    height: 1rem;
    margin-left: 1rem;
    fill: var(--color-text);
    transform: rotate(90deg);
    transition: all .2s;
    opacity: .5
}

.aside-menu .menu-dropdown {
    display: none
}

.aside-menu .menu-dropdown__item {
    padding: .6rem 1rem .6rem 4rem
}

.aside-menu .menu-dropdown__item:not(:last-child) {
    margin: 0 0 1rem
}

.aside-menu .menu-dropdown__item.active .menu-dropdown__link {
    opacity: 1;
    color: var(--color-primary)
}

.aside-menu .menu-dropdown__link {
    display: block;
    font-size: 1.4rem;
    color: var(--color-gray-darken)
}

.aside-menu .menu-dropdown__link:hover {
    opacity: 1;
    color: var(--color-primary)
}

.service-card {
    margin-bottom: .4rem;
    background-color: var(--color-white);
    border-radius: 1rem;
    padding: 1.55rem 2rem;
    transition: all .3s ease;
    cursor: pointer;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05)
}

@media (min-width: 48rem) {
    .service-card {
        display:flex;
        flex-direction: column;
        margin-bottom: 0;
        padding: 4rem
    }

    .service-card:hover {
        box-shadow: 0 1.2rem 2.6rem rgba(0,0,0,.1)
    }
}

.service-card--transparent {
    background-color: transparent;
    border: .1rem solid var(--color-primary)
}

@media (min-width: 48rem) {
    .service-card--transparent .service-card__mobile {
        display:none
    }
}

.service-card--transparent .service-card__mobile strong {
    color: var(--color-primary)
}

.service-card--transparent .service-card__mobile svg use {
    fill: var(--color-primary)
}

.service-card--transparent .service-card__desktop {
    display: none
}

@media (min-width: 48rem) {
    .service-card--transparent .service-card__desktop {
        height:100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between
    }
}

.service-card--transparent .service-card__desktop strong {
    display: block;
    font-size: 2.4rem;
    line-height: 1.1
}

.service-card--transparent .service-card__desktop span {
    display: block;
    margin-top: auto;
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 1.1;
    color: var(--color-primary)
}

.service-card__icon {
    display: none
}

@media (min-width: 48rem) {
    .service-card__icon {
        display:block;
        width: 4.8rem;
        height: 4.8rem
    }

    .service-card__icon img {
        width: 100%;
        height: 100%;
        -o-object-fit: contain;
        object-fit: contain
    }
}

.service-card__icon path,.service-card__icon rect {
    fill: var(--color-primary)
}

.service-card__name {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 1.6rem;
    line-height: 1.3;
    font-weight: 500;
    color: var(--color-text)
}

@media (min-width: 48rem) {
    .service-card__name {
        margin-top:1.5rem;
        font-size: 2.2rem;
        line-height: 1.2
    }
}

.service-card__name svg {
    width: 2rem;
    height: 2rem;
    fill: var(--color-grey)
}

@media (min-width: 48rem) {
    .service-card__name svg {
        display:none
    }
}

.service-card__count {
    display: none
}

@media (min-width: 48rem) {
    .service-card__count {
        display:flex;
        align-items: center;
        justify-content: space-between;
        color: var(--color-grey);
        margin-top: auto
    }

    .service-card__count svg {
        width: 2rem;
        height: 2rem;
        fill: var(--color-grey)
    }
}

.service-card-page {
    position: relative;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05);
    border-radius: 1rem
}

@media (min-width: 75rem) {
    .service-card-page {
        height:48rem
    }

    .service-card-page.short {
        height: auto
    }
}

@media (min-width: 48rem) {
    .service-card-page:hover .service-card-page__box {
        z-index:2;
        box-shadow: 0 0 1.5rem rgba(0,0,0,.1)
    }
}

@media (min-width: 75rem) {
    .service-card-page:hover:not(.all) .service-card-page__box {
        position:absolute;
        right: 1rem;
        left: -1rem;
        width: calc(100% + 2rem);
        height: calc(100% + 10rem);
        padding: 4rem 1.5rem 4rem 5rem
    }

    .service-card-page:hover:not(.all) .service-card-page__list {
        overflow-y: auto
    }

    .service-card-page:hover:not(.all) .service-card-page__item:not(:first-child) {
        margin-top: 1em
    }

    .service-card-page:hover:not(.all) .service-card-page__item:nth-child(n+6) {
        height: inherit;
        visibility: visible;
        opacity: 1
    }
}

.service-card-page:not(.short) .service-card-page__box {
    grid-template-rows: auto auto 1fr
}

@media (max-width: 47.98rem) {
    .service-card-page.short .service-card-page__box {
        display:block;
        gap: 0;
        padding: 0
    }

    .service-card-page.short .service-card-page__list {
        display: none
    }

    .service-card-page.short .service-card-page__name {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 1.5rem;
        font-size: 1.6rem
    }

    .service-card-page.short .service-card-page__name svg {
        display: block;
        width: 2.5rem;
        height: .8rem;
        fill: var(--color-gray)
    }
}

@media (max-width: 74.98rem) {
    .service-card-page.short .service-card-page__item:nth-child(n+6) {
        display:none
    }
}

.service-card-page__box {
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    padding: 2rem;
    background: var(--color-white);
    box-shadow: none;
    border-radius: 1rem;
    overflow: hidden;
    transition: box-shadow .3s ease,height .3s ease
}

@media (min-width: 62rem) {
    .service-card-page__box {
        display:grid;
        align-items: normal;
        justify-content: normal;
        padding: 4rem
    }
}

@media (min-width: 75rem) {
    .service-card-page__box:after {
        position:absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 9.4rem;
        background: linear-gradient(0deg,#fcfcfc 50%,hsla(0,0%,100%,0));
        content: "";
        pointer-events: none
    }

    .service-card-page__box:hover:after {
        display: none
    }
}

.service-card-page__list {
    display: none
}

.service-card-page__list::-webkit-scrollbar {
    width: .4rem;
    background-color: #f9f9f9
}

.service-card-page__list::-webkit-scrollbar-thumb {
    background-color: #b2b2b2
}

@media (min-width: 62rem) {
    .service-card-page__list {
        display:flex;
        flex-direction: column
    }
}

.service-card-page__item {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    transition: opacity .3s ease,height .3s ease
}

.service-card-page__item:not(:first-child) {
    margin-top: 1em
}

@media (min-width: 75rem) {
    .service-card-page__item:nth-child(n+11) {
        height:0;
        margin: 0;
        visibility: hidden;
        opacity: 0
    }
}

.service-card-page__img {
    display: block;
    min-width: 3rem;
    margin-left: 1rem
}

@media (min-width: 62rem) {
    .service-card-page__img {
        margin:0 0 1.5rem
    }
}

.service-card-page__img svg {
    display: block
}

.service-card-page__img path,.service-card-page__img rect {
    fill: var(--color-primary)
}

.service-card-page__name {
    display: block;
    max-width: 21rem;
    font-size: 1.6rem;
    line-height: 1.375
}

@media (min-width: 62rem) {
    .service-card-page__name {
        max-width:100%;
        margin: 0 0 3rem;
        font-weight: 500;
        font-size: 2.4rem
    }
}

.service-card-page__name:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: ""
}

@media (min-width: 62rem) {
    .service-card-page__name:before {
        display:none
    }
}

@media (min-width: 48rem) and (max-width:89.98rem) {
    .service-card-page__name span {
        display:inline-block;
        width: -webkit-min-content;
        width: -moz-min-content;
        width: min-content;
        max-width: 22.5rem
    }
}

.service-card-page__name strong {
    display: block;
    color: #748786
}

.service-card-page__name svg {
    display: none
}

.service-card-page__link {
    display: flex;
    align-items: center;
    color: var(--color-gray);
    font-weight: 400
}

.service-card-page__link:hover {
    color: var(--color-primary);
    opacity: 1!important
}

.service-card-page__link:hover svg {
    opacity: 1
}

.service-card-page__button {
    --size: 18.5rem;
    display: none
}

@media (min-width: 48rem) {
    .service-card-page__button {
        position:absolute;
        right: 0;
        bottom: 0;
        display: block;
        width: var(--size);
        height: var(--size);
        background-color: var(--color-primary);
        -webkit-clip-path: circle(43% at 94% 93%);
        clip-path: circle(43% at 94% 93%);
        border-radius: 1rem
    }

    .service-card-page__button:hover {
        opacity: 1!important
    }

    .service-card-page__button:hover svg {
        right: 1.5rem
    }

    .service-card-page__button svg {
        position: absolute;
        right: 2rem;
        bottom: 3rem;
        width: 3.1rem;
        height: 1rem;
        fill: var(--color-primary-text);
        transition: right .3s ease
    }
}

.service-card-page.all .service-card-page__name span {
    display: none
}

@media (min-width: 48rem) {
    .service-card-page.all .service-card-page__name span {
        display:inline
    }
}

.form-request {
    position: relative
}

.form-request__title {
    margin-bottom: 2.5rem;
    letter-spacing: -.03em
}

.form-request__lead {
    font-size: 1.4rem;
    line-height: 1.6
}

.form-request__btn {
    margin-top: 5rem
}

.form-request.loading:before {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    background-color: hsla(0,0%,100%,.8)
}

.form-request.loading:after,.form-request.loading:before {
    position: absolute;
    opacity: 0;
    transition: opacity .4s ease;
    content: "";
    pointer-events: none
}

.form-request.loading:after {
    top: 50%;
    left: 50%;
    z-index: 3;
    width: 5em;
    height: 5em;
    margin: -2.5em 0 0 -2.5em;
    border-top: .2rem solid var(--color-primary);
    border-radius: 50%;
    -webkit-animation: spin 1s linear infinite normal;
    animation: spin 1s linear infinite normal
}

.form-request.loading:after,.form-request.loading:before {
    opacity: 1;
    pointer-events: auto
}

@-webkit-keyframes spin {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

.yandex-map-container {
    height: 41.5rem;
    overflow: hidden
}

@media (min-width: 48rem) {
    .yandex-map-container {
        height:57rem
    }
}

.yandex-map-container iframe {
    display: block;
    width: 100%;
    height: 100%
}

.yandex-map-container:before {
    position: absolute;
    top: 45%;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: ""
}

@media (min-width: 48rem) {
    .yandex-map-container:before {
        top:0;
        left: 39rem
    }
}

.yandex-map-container.spinner-center:before {
    left: 0
}

.map {
    position: relative
}

.map-yandex {
    display: none
}

@media (min-width: 48rem) {
    .map-yandex {
        display:block;
        height: 54rem
    }
}

.map-content {
    pointer-events: auto
}

@media (min-width: 48rem) {
    .map-content {
        position:absolute;
        top: 2.5rem;
        bottom: 2.5rem;
        left: 5rem;
        z-index: 1;
        width: 40rem;
        border-radius: 2rem;
        box-shadow: 0 1.5rem 2.5rem rgba(116,135,134,.15);
        overflow: hidden;
        background: var(--color-white)
    }
}

@media (min-width: 48rem) {
    .map-content--shadow:after {
        position:absolute;
        bottom: 0;
        width: 100%;
        height: 10rem;
        background: linear-gradient(0deg,var(--color-white),hsla(0,0%,100%,.01));
        content: "";
        pointer-events: none
    }
}

.map-list {
    overflow: auto;
    max-height: 100%
}

@media (min-width: 48rem) {
    .map-list {
        max-height:calc(100% - 8.6rem);
        padding: 0 0 3rem
    }
}

.map-list::-webkit-scrollbar {
    width: .6rem
}

.map-list::-webkit-scrollbar-track {
    background: var(--color-white)
}

.map-list::-webkit-scrollbar-thumb {
    background-color: var(--color-whitesmoke);
    border-radius: 1rem
}

.map-list__title {
    display: none
}

@media (min-width: 48rem) {
    .map-list__title {
        display:block;
        margin: 0;
        padding: 4rem 0 2rem 4rem;
        font-weight: 500;
        font-size: 2.4rem
    }
}

.map-list__item {
    position: relative;
    margin-bottom: .4rem;
    padding: 2rem 1.5rem 1.5rem;
    border-radius: 1rem;
    background: var(--color-white);
    cursor: pointer
}

@media (min-width: 48rem) {
    .map-list__item {
        margin:0;
        padding: 2rem 4rem 1.4rem;
        transition: all .2s;
        border-radius: 0
    }
}

.map-list__item:not(:last-child) {
    border-bottom: .1rem solid #f2f2f2
}

.map-list__item:hover {
    opacity: .7
}

.map-list__item-title {
    margin: 0 0 1.3rem;
    color: var(--color-black);
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 1.3
}

.map-list__item-row {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding: 0 0 0 2.5rem;
    color: rgba(0,0,0,.5);
    font-weight: 500;
    font-size: 1.4rem
}

@media (min-width: 48rem) {
    .map-list__item-row {
        display:block;
        padding: 0 0 0 3.3rem;
        font-weight: 500;
        font-size: 1.6rem
    }
}

.map-list__item-row:not(:last-child) {
    margin: 0 2rem 1rem 0
}

.map-list__item-row svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 2rem;
    height: 2rem;
    fill: var(--color-primary)
}

.map-list__item-arrow {
    position: absolute;
    top: 2rem;
    right: 1.5rem;
    width: .6rem;
    width: 2rem;
    height: 2rem;
    fill: var(--color-grey)
}

@media (min-width: 48rem) {
    .map-list__item-arrow {
        display:none
    }
}

.map-card {
    padding: 2rem;
    background: var(--color-white);
    border-radius: 1rem;
    box-shadow: 0 .1rem .5rem 0 rgba(198,205,195,.2);
    transition: all .2s
}

@media (min-width: 48rem) {
    .map-card {
        display:flex;
        flex-direction: column;
        align-items: flex-start;
        height: 100%;
        padding: 2rem;
        box-shadow: none
    }
}

.map-card--details {
    position: fixed;
    top: 12rem;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 996;
    border-radius: 2.5rem 2.5rem 0 0;
    background: var(--color-white)
}

@media (min-width: 48rem) {
    .map-card--details {
        position:absolute;
        top: 0;
        overflow: auto;
        border-radius: 0
    }
}

.map-card--details:before {
    position: absolute;
    top: -1.5rem;
    left: 50%;
    width: 9.5rem;
    height: .5rem;
    padding: 0;
    background: var(--color-grey);
    border-radius: 1rem;
    transform: translateX(-50%);
    content: ""
}

@media (min-width: 48rem) {
    .map-card--details:before {
        display:none
    }
}

.map-card__backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 995;
    background: rgba(0,0,0,.5)
}

@media (min-width: 48rem) {
    .map-card__backdrop {
        display:none
    }
}

.map-card__wrap {
    flex-grow: 1;
    width: 100%;
    height: 100%;
    overflow: auto;
    -ms-overflow-style: none;
    scrollbar-width: none
}

.map-card__wrap::-webkit-scrollbar {
    display: none
}

@media (min-width: 48rem) {
    .map-card__inner {
        display:flex;
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        height: 100%
    }
}

.map-card__back {
    display: none
}

@media (min-width: 48rem) {
    .map-card__back {
        display:flex;
        align-items: center;
        margin: 0 0 2.5rem;
        color: var(--color-gray);
        font-weight: 500;
        font-size: 1.8rem;
        line-height: 1.2;
        background: none;
        border: none
    }
}

.map-card__back svg {
    display: block;
    width: .5rem;
    height: 1rem;
    margin-right: 2rem;
    transform: rotate(180deg);
    fill: var(--color-gray)
}

.map-card__title {
    margin: 0 0 2rem;
    color: var(--color-black);
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 1.5
}

@media (min-width: 48rem) {
    .map-card__title {
        margin:0 0 2.5rem;
        font-size: 2.8rem
    }
}

.map-card__info {
    width: 100%
}

.map-card__info li {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0 0 2rem 3rem;
    color: var(--color-gray);
    font-weight: 400;
    font-size: 1.6rem
}

@media (min-width: 48rem) {
    .map-card__info li {
        padding:0 0 2.5rem 3rem;
        color: var(--color-black);
        font-size: 2rem
    }
}

.map-card__info svg {
    position: absolute;
    top: .4rem;
    left: 0;
    display: block;
    width: 2rem;
    height: 2rem;
    fill: var(--color-primary)
}

.map-card__phone {
    color: var(--color-gray)
}

@media (min-width: 48rem) {
    .map-card__phone {
        color:var(--color-black)
    }
}

.map-card__route {
    display: flex;
    align-items: center;
    margin: .4rem 0 0;
    color: var(--color-primary);
    border-bottom: .1rem solid
}

.map-card__yandex {
    width: 100%;
    height: 26rem;
    border-radius: 1rem;
    overflow: hidden
}

@media (min-width: 48rem) {
    .map-card__yandex {
        display:none
    }
}

.map-card .btn {
    width: 100%;
    margin: 2rem 0 1.5rem
}

@media (min-width: 48rem) {
    .map-card .btn {
        margin:auto 0 0
    }
}

.map-pin {
    transition: .2s ease-in-out
}

.map-pin img {
    width: 4rem
}

.map-pin svg path {
    fill: #1d1a3c
}

.map-pin svg path.pin-logo {
    fill: var(--color-primary)
}

.map-pin.is-active {
    position: relative;
    z-index: 2
}

.map-pin.is-active svg path {
    fill: var(--color-primary)
}

.map-pin.is-active svg path.pin-logo {
    fill: #1d1a3c
}

.map-pin--custom {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 5.4rem;
    height: 5.4rem;
    background: var(--color-white);
    border: .2rem solid #f0f0f0;
    border-radius: 50%
}

.map-pin--custom.is-active {
    border-color: var(--color-primary)
}

@media (min-width: 48rem) {
    .map .container,.map .page--services__list {
        position:absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        max-width: 166rem;
        pointer-events: none
    }
}

.slide-enter-active {
    transition: .3s ease
}

.slide-enter {
    transform: translateY(100%)
}

@media (min-width: 48rem) {
    .slide-enter {
        transform:translateX(40rem)
    }
}

.slide-enter-to {
    transform: translateY(0)
}

@media (min-width: 48rem) {
    .slide-enter-to {
        transform:translateX(0)
    }
}

.slide-leave-active {
    transition: .3s ease
}

.slide-leave {
    transform: translateY(0)
}

@media (min-width: 48rem) {
    .slide-leave {
        transform:translateX(0)
    }
}

.slide-leave-to {
    transform: translateY(100%)
}

@media (min-width: 48rem) {
    .slide-leave-to {
        transform:translateX(40rem)
    }
}

.fade-enter-active {
    transition: .2s
}

.fade-enter {
    opacity: 0
}

.fade-enter-to {
    opacity: 1
}

.fade-leave-active {
    transition: .2s
}

.fade-leave {
    opacity: 1
}

.fade-leave-to {
    opacity: 0
}

.service-pills__item:not(:last-child) {
    margin-bottom: 1rem
}

.service-pill {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 3.6rem 3rem;
    background: var(--color-mintsmoke);
    border-radius: 1rem
}

.service-pill__name {
    color: #000;
    font-weight: 500;
    font-size: calc(1.345rem + .59375vw)
}

@media (min-width: 1440px) {
    .service-pill__name {
        font-size:2.2rem
    }
}

.service-pill__icon {
    transition: .2s ease-in-out
}

.service-pill__icon svg {
    width: 3.4rem;
    height: 1.2rem
}

.service-pill:hover .service-pill__icon {
    transform: translateX(1rem)
}

.notify {
    display: grid;
    grid-template-columns: 1.6rem 1fr;
    padding: .6rem 1.6rem;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    background: var(--color-lightblue);
    border-radius: 1rem
}

.notify__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.6rem;
    height: 1.6rem;
    color: #fff;
    font-weight: 500;
    font-size: 1rem;
    background: #748786;
    border-radius: 50%
}

.notify__text {
    color: #394452
}

.page--home {
    overflow-x: hidden
}

.page--home__subtitle {
    display: flex;
    align-content: center;
    justify-content: space-between;
    padding: 4rem 0 2rem
}

@media (min-width: 48rem) {
    .page--home__subtitle {
        padding:6.5rem 0 4rem
    }
}

.page--home__subtitle .h2 {
    margin: 0
}

.page--home__subtitle a {
    display: none;
    color: var(--color-primary);
    font-size: 2.4rem;
    line-height: 3rem;
    font-weight: 500
}

@media (min-width: 62rem) {
    .page--home__subtitle a {
        display:flex;
        align-items: center
    }
}

.page--home__subtitle a svg {
    fill: var(--color-primary);
    width: 2.4rem;
    height: 2.4rem
}

.page--home__subtitle svg {
    width: 3.3rem;
    height: 1.2rem;
    margin-left: 1.5rem;
    fill: var(--color-dark)
}

.page--home__subtitle--promos {
    display: flex;
    align-items: center
}

.page--home__subtitle--promos a {
    display: none;
    color: var(--color-primary)
}

@media (min-width: 48rem) {
    .page--home__subtitle--promos a {
        display:flex;
        align-items: center
    }
}

.page--home__subtitle--promos a svg {
    fill: var(--color-primary);
    width: 2.4rem;
    height: 2.4rem
}


.page--home__services {
    display: grid;
    grid-template-columns: 1fr;
    gap: .2rem
}

@media (min-width: 48rem) {
    .page--home__services {
        grid-template-columns:repeat(3,1fr);
        gap: 2rem
    }

}

@media (min-width: 75rem) {
    .page--home__services {
        grid-template-columns:repeat(4,1fr)
    }
}

@media (min-width: 100rem) {
    .page--home__services {
        grid-template-columns:repeat(5,1fr)
    }
}

@media (min-width: 48rem) {
    .page--home__services>* {
        min-height:27rem
    }
}

@media (min-width: 48rem) {
    .page--home__services>:not(.all):nth-child(n+7) {
        display:none
    }
}

@media (min-width: 75rem) {
    .page--home__services>:not(.all):nth-child(n+7) {
        display:flex
    }
}

@media (min-width: 75rem) {
    .page--home__services>:not(.all):nth-child(n+9) {
        display:none
    }
}

@media (min-width: 100rem) {
    .page--home__services>:not(.all):nth-child(n+9) {
        display:flex
    }
}

@media (min-width: 100rem) {
    .page--home__services>:not(.all):nth-child(n+11) {
        display:none
    }
}

.page--home__services-search {
    grid-column: 1/-1;
    min-height: 5.8rem
}

@media (min-width: 62rem) {
    .page--home__services-search {
        margin-top:4rem
    }
}

.page--home__promos {
    position: relative;
    z-index: 2;
    padding-bottom: 1rem;
    margin-bottom: -1rem
}

@media (min-width: 62rem) {
    .page--home__promos {
        overflow:hidden
    }
}

.page--home__promos-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: .8rem 0 0;
    padding: 1.55rem 2rem;
    color: var(--color-primary)
}

@media (min-width: 48rem) {
    .page--home__promos-btn {
        display:none
    }
}

.page--home__promos-btn svg {
    width: 2rem;
    height: 2rem
}

.page--home__promos-btn use {
    fill: var(--color-primary)
}

.page--home__reviews {
    padding-bottom: 1rem;
    margin-bottom: 1rem
}

.page--home__advantages {
    position: relative;
    z-index: 1
}

.hero {
    color: var(--color-white);
    max-width: 166rem;
    margin: 0 auto
}

@media (min-width: 62rem) {
    .hero {
        padding-left:5rem;
        padding-right: 5rem
    }
}

.hero__inner {
    position: relative;
    display: grid;
    gap: 13rem;
    padding: 4rem 1.5rem;
    background: url(https://i.pinimg.com/originals/21/6f/1c/216f1c3378c57470b836b116b5bdfb9d.png) no-repeat left -20rem bottom,var(--color-dark);
    background-size: cover
}

@media (min-width: 36rem) {
    .hero__inner {
        background-size:contain
    }
}

@media (min-width: 48rem) {
    .hero__inner {
        gap:4rem;
        padding: 6rem 5rem 5rem;
        background-position: 100% 100%
    }
}

@media (min-width: 62rem) {
    .hero__inner {
        border-radius:1rem;
        padding: 8.5rem 8rem
    }
}

.hero__inner:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(180deg,var(--color-black),rgba(0,0,0,.5));
    content: ""
}

@media (min-width: 48rem) {
    .hero__inner:before {
        display:none
    }
}

.hero__inner .desktop {
    display: none
}

@media (min-width: 62rem) {
    .hero__inner .desktop {
        display:block
    }
}

.hero__inner .mobile {
    display: block
}

@media (min-width: 62rem) {
    .hero__inner .mobile {
        display:none
    }
}

.hero__content {
    z-index: 1
}
.hero--wrap__btn{
    grid-template-columns: repeat(5, 1fr);
    display: grid;
    gap: 2rem;
}
@media (max-width: 47.98rem) {

    .hero--wrap__btn{
        grid-template-columns: repeat(1, 1fr);
    }
}
@media (min-width: 48rem) {
    .hero__content {
        max-width:67rem
    }
}

@media (min-width: 48rem) {
    .hero__btn {
        max-width:26.6rem
    }
}

.hero__btn .btn {
    width: 100%
}

.hero__title {
    color: currentColor;
    margin-bottom: 4rem
}

@media (max-width: 47.98rem) {
    .hero__title {
        margin:0 0 2rem;
        font-size: 3.2rem;
        line-height: 1.1
    }
}

.hero__desc {
    font-weight: 400;
    font-size: 1.5rem;
    line-height: 1.6;
    letter-spacing: -.01em;
    color: var(--color-grey2)
}

@media (min-width: 48rem) {
    .hero__desc {
        max-width:44rem
    }
}

@media (min-width: 62rem) {
    .hero__desc {
        max-width:60rem
    }
}

.main-search {
    position: relative;
    width: 100%
}

@media (min-width: 48rem) and (max-width:74.98rem) {
    .main-search {
        flex-direction:column
    }
}

@media (min-width: 62rem) {
    .main-search {
        display:flex;
        align-items: center;
        justify-content: space-between;
        gap: 2rem
    }
}

.main-search__form {
    position: relative;
    margin: 0 0 2rem;
    z-index: 990;
    display: flex;
    width: 100%;
    height: 5.2rem;
    border-radius: 1rem;
    border: .1rem solid var(--color-grey2);
    overflow: hidden;
    background-color: var(--color-greylighten)
}

.main-search__input {
    flex: 1;
    width: 100%;
    height: 100%;
    padding: 0;
    color: var(--color-black);
    font-weight: 400;
    letter-spacing: -.01em;
    border: none
}

@media (min-width: 48rem) {
    .main-search__input {
        font-size:1.8rem
    }
}

.main-search__input::-moz-placeholder {
    color: hsla(0,0%,45.9%,.9)
}

.main-search__input:-ms-input-placeholder {
    color: hsla(0,0%,45.9%,.9)
}

.main-search__input::placeholder {
    color: hsla(0,0%,45.9%,.9)
}

.main-search button {
    display: grid;
    place-content: center;
    width: 6rem;
    border: none;
    background-color: var(--color-greylighten)
}

.main-search button svg {
    width: 2rem;
    height: 2rem;
    fill: var(--color-gray);
    transition: opacity .3s ease
}

.main-search button:hover svg {
    opacity: .7
}

.main-search__result {
    position: absolute;
    top: calc(100% - 1rem);
    left: 0;
    z-index: 985;
    display: grid;
    gap: 2rem;
    max-height: 32rem;
    width: 100%;
    padding: 2rem;
    background: rgba(18,18,18,.8);
    border-radius: 1rem;
    box-shadow: 0 3.1rem 5.4rem 0 rgba(0,0,0,.05),0 1.4rem 5.4rem 0 rgba(0,0,0,.09);
    transform: scaleY(1);
    transform-origin: top;
    overflow: auto;
    background-color: var(--color-white);
    transition: transform .3s ease
}

.main-search__result::-webkit-scrollbar {
    width: .5rem;
    border-radius: 1rem
}

.main-search__result::-webkit-scrollbar-track {
    background-color: rgba(0,0,0,.1);
    border-radius: 1rem
}

.main-search__result::-webkit-scrollbar-thumb {
    background-color: var(--color-primary);
    border-radius: 1rem;
    box-shadow: inset 0 0 6px rgba(0,0,0,.1) var(--color-primary)
}

@media (min-width: 48rem) {
    .main-search__result {
        max-height:42rem;
        padding: 4rem
    }
}

.main-search__result:not(.active) {
    transform: scaleY(0)
}

.main-search__result_item {
    display: block;
    color: hsla(0,0%,45.9%,.8);
    font-size: 1.6rem;
    line-height: 1.4
}

.main-search__result_item span {
    color: var(--color-dark);
    font-weight: 500
}

.main-search--full {
    margin-bottom: 3rem;
    padding: 1.5rem 1rem;
    background: var(--color-mintsmoke);
    border-radius: 1rem
}

@media (min-width: 62rem) {
    .main-search--full {
        width:100%;
        padding: 3.5rem 2rem
    }
}

.main-search__popup {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    flex-direction: column;
    width: 100%;
    max-width: 55rem;
    padding: 4rem;
    z-index: 990;
    border-radius: 1rem;
    background-color: var(--color-white);
    box-shadow: 0 1.4rem 5.4rem rgba(0,0,0,.09),0 3.1rem 5.4rem rgba(0,0,0,.05)
}

@media (min-width: 62rem) {
    .main-search__popup {
        display:flex
    }
}

.main-search__popup__close {
    align-self: flex-end;
    width: 2rem;
    height: 2rem
}

.main-search__popup__close svg {
    width: 100%;
    height: 100%;
    fill: var(--color-onyx)
}

.main-search__popup__title {
    font-weight: 500;
    margin-bottom: 0
}

.main-search__popup__block:not(:first-of-type) {
    margin-top: 3rem
}

.main-search__popup__list {
    margin-top: 2rem;
    display: flex;
    gap: 1rem;
    flex-wrap: wrap
}

.main-search__popup__list-item {
    display: inline-block;
    padding: 1rem 2.2rem;
    color: var(--color-primary);
    font-size: 1.2rem;
    line-height: 1.6rem;
    border: .1rem solid var(--color-grey2);
    border-radius: 1rem
}

.main-search__popup__footer {
    margin-top: 3rem
}

.main-search__popup__footer p {
    font-weight: 500
}

.main-search__popup__footer p a {
    color: var(--color-primary)
}

.promo-card {
    min-height: 37rem;
    padding: 4rem 3.5rem 5rem 2rem
}

@media (min-width: 48rem) {
    .promo-card {
        min-height:33rem;
        padding: 4rem 2rem 5rem 4rem
    }
}

@media (min-width: 36rem) and (max-width:47.98rem) {
    .promo-card__name {
        font-size:2.6rem
    }
}

.promo-card__name span {
    color: var(--color-primary)
}

.promo-card__date,.promo-card__text {
    position: relative;
    z-index: 1;
    color: var(--color-gray);
    font-weight: 500
}

@media (min-width: 48rem) {
    .promo-card__date,.promo-card__text {
        font-size:calc(1.305rem + .34375vw)
    }
}

@media (min-width: 48rem) and (min-width:1440px) {
    .promo-card__date,.promo-card__text {
        font-size:1.8rem
    }
}

.promo-card__date {
    margin-top: 1.5rem
}

.promo-card__text {
    max-width: 28.5rem
}

.promo-card__readmore {
    position: absolute;
    bottom: 3rem
}

.promo-card__readmore:hover svg {
    margin-left: 1rem
}

.promo-card__readmore svg {
    width: 3.1rem;
    height: 1rem;
    fill: var(--color-black);
    transition: margin-left .3s ease
}

.promo-card__img {
    position: absolute;
    right: 0;
    bottom: 0;
    max-width: 21.7rem;
    max-height: 14.4rem
}

@media (min-width: 48rem) {
    .promo-card__img {
        max-width:29rem;
        max-height: 17.5rem
    }
}

.review-card {
    height: 100%;
    padding: 2.2rem 1.8rem 4.6rem;
    background: var(--color-white);
    border-radius: 1rem;
    box-shadow: 0 .1rem .5rem 0 var(--color-shadow)
}

@media (min-width: 62rem) {
    .review-card {
        padding:3.3rem 3.8rem 4.7rem
    }
}

.review-card__header {
    display: flex;
    margin-bottom: 1.8rem
}

@media (min-width: 62rem) {
    .review-card__header {
        align-items:center;
        margin-bottom: 2.1rem
    }
}

.review-card__logo {
    width: 5rem;
    height: 5rem;
    margin-right: 1.2rem;
    overflow: hidden;
    border-radius: 50%
}

@media (min-width: 62rem) {
    .review-card__logo {
        width:5rem;
        height: 5rem
    }
}

.review-card__logo img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.review-card__name {
    color: var(--color-black);
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.62
}

.review-card__date {
    display: flex;
    color: var(--color-grey);
    font-size: 1.2rem;
    line-height: 1.9rem
}

@media (min-width: 62rem) {
    .review-card__date {
        font-size:1.2rem;
        line-height: 1.6rem
    }
}

.review-card__stars-mobile {
    margin-bottom: 1.8rem
}

@media (min-width: 62rem) {
    .review-card__stars-mobile {
        display:none
    }
}

.review-card__stars-desktop {
    display: none
}

@media (min-width: 62rem) {
    .review-card__stars-desktop {
        display:block;
        margin-left: auto
    }
}

.review-card__content {
    color: var(--color-black);
    font-weight: 400;
    font-size: 1.5rem;
    line-height: 2.2rem
}

@media (min-width: 62rem) {
    .review-card__content {
        font-size:1.6rem;
        line-height: 2.2rem
    }
}

.advantages-home {
    padding: 4rem 0;
    margin-top: 2rem;
    overflow: hidden;
    color: var(--color-white);
    background-color: var(--color-dark)
}

@media (min-width: 62rem) {
    .advantages-home {
        padding:8rem 0;
        margin-top: 8rem
    }
}

.advantages-home__header {
    display: grid;
    grid-template-columns: 1fr;
    margin-bottom: 4rem
}

@media (min-width: 62rem) {
    .advantages-home__header {
        display:flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 4rem;
        flex-direction: row
    }
}

.advantages-home__left {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media (min-width: 62rem) {
    .advantages-home__left {
        max-width:75rem
    }
}

@media (max-width: 47.98rem) {
    .advantages-home__left {
        padding-inline:1.5rem
    }
}

.advantages-home__right {
    flex: 1 1 0;
    overflow: hidden;
    width: 100%;
    margin-top: 4rem
}

@media (min-width: 62rem) {
    .advantages-home__right {
        max-width:75rem;
        max-height: 100%
    }
}

.advantages-home__title {
    font-size: 3.2rem;
    color: currentColor
}

@media (min-width: 62rem) {
    .advantages-home__title {
        font-size:3.6rem;
        margin-bottom: 0
    }
}

.advantages-home__title span {
    color: var(--color-primary)
}

.advantages-home__desc {
    font-size: 1.5rem;
    line-height: 1.7;
    color: var(--color-grey);
    font-weight: 400
}

@media (min-width: 48rem) {
    .advantages-home__desc {
        font-size: 1.8rem;
        line-height: 1.6;
        color: var(--color-white)
    }
}

@media (min-width: 62rem) {
    .advantages-home__desc {
        margin-top:4rem
    }
}

.advantages-home__info {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 2rem 4rem;
    margin-top: 4rem
}

@media (min-width: 62rem) {
    .advantages-home__info {
        gap:2rem 8rem
    }
}

.advantages-home__info-item {
    min-width: 12rem
}

.advantages-home__info-item span {
    color: var(--color-gray);
    font-size: 1.6rem;
    line-height: 1.3
}

.advantages-home__info-item p {
    font-size: 2.4rem
}

.advantages-home__info-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--color-primary);
    gap: 1rem
}

.advantages-home__info-link svg {
    fill: var(--color-primary);
    width: 2.4rem;
    height: 2.4rem
}

.advantages-home-list {
    display: flex;
    width: calc(100% + 3rem);
    margin: 0 -1.5rem;
    padding: 0 1.5rem;
    overflow-x: auto;
    scrollbar-color: transparent transparent;
    scrollbar-width: none;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -ms-overflow-style: none
}

.advantages-home-list::-webkit-scrollbar,.advantages-home-list::-webkit-scrollbar-thumb {
    width: 0;
    height: 0;
    background-color: transparent
}

.advantages-home-list::-webkit-scrollbar-track {
    width: 0;
    height: 0;
    background-color: transparent
}

.advantages-home-list::-webkit-scrollbar {
    display: none;
    -webkit-appearance: none
}

@media (min-width: 48rem) {
    .advantages-home-list {
        display:grid;
        grid-template-columns: repeat(2,1fr);
        gap: 2rem;
        width: 100%;
        margin: 0;
        padding: 0
    }
}

@media (min-width: 90rem) {
    .advantages-home-list {
        grid-template-columns:repeat(4,1fr);
        margin-top: 6rem
    }
}

.advantages-home-list__item {
    padding: 3rem;
    border: .1rem solid #212121;
    border-radius: 1rem
}

@media (max-width: 47.98rem) {
    .advantages-home-list__item {
        min-width:30rem
    }
}

@media (min-width: 90rem) {
    .advantages-home-list__item {
        max-width:100%;
        padding: 4rem 3rem
    }
}

@media (max-width: 47.98rem) {
    .advantages-home-list__item:not(:last-child) {
        margin-right:.8rem
    }
}

.advantages-home-list__icon img, .advantages-home-list__icon svg {
    width: 4.8rem;
    height: 4.8rem
}

.advantages-home-list__name {
    margin-top: 2rem;
    font-weight: 500;
    line-height: 1.25;
    font-size: calc(1.365rem + .71875vw)
}

@media (min-width: 1440px) {
    .advantages-home-list__name {
        font-size:2.4rem
    }
}

@media (min-width: 90rem) {
    .advantages-home-list__name {
        margin-top:4rem
    }
}

.advantages-home-list__text {
    margin-top: 2rem;
    color: var(--color-white);
    font-weight: 400;
    opacity: .6
}

@media (min-width: 48rem) {
    .advantages-home-list__text {
        font-size:1.8rem
    }
}

.advantages-slider {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 1rem
}

@media (min-width: 62rem) {
    .advantages-slider {
        border-radius:1rem
    }
}

.advantages-slider-container {
    height: 100%;
    border-radius: 1rem
}

@media (max-width: 47.98rem) {
    .advantages-slider-container {
        border-radius:0;
        padding-inline:1.5rem 1.5rem}
}

.advantages-slider .swiper-slide {
    height: auto;
    max-width: 30rem
}

@media (min-width: 48rem) {
    .advantages-slider .swiper-slide {
        max-width:100%
    }
}

.advantages-slider__image {
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    overflow: hidden
}

.advantages-slider__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 1rem
}

.advantages-slider-next,.advantages-slider-prev {
    display: none
}

@media (min-width: 62rem) {
    .advantages-slider-next,.advantages-slider-prev {
        position:absolute;
        top: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 10;
        height: 100%;
        width: 4.4rem;
        transition: all .2s ease-in-out;
        cursor: pointer
    }

    .advantages-slider-next:hover,.advantages-slider-prev:hover {
        background-color: rgba(0,0,0,.3)
    }
}

.advantages-slider-next svg,.advantages-slider-prev svg {
    width: 2.4rem;
    height: 2.4rem
}

.advantages-slider-next svg use,.advantages-slider-prev svg use {
    fill: #fff
}

.advantages-slider-prev {
    left: 0;
    transform: rotate(180deg)
}

.advantages-slider-next {
    right: 0
}

.advantages-slider-pagination {
    display: none
}

@media (min-width: 48rem) {
    .advantages-slider-pagination {
        position:absolute;
        bottom: 2rem;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 1rem;
        width: 100%;
        z-index: 5;
        cursor: pointer
    }
}

.advantages-slider-pagination .swiper-pagination-bullet {
    display: inline-block;
    width: 1rem;
    height: 1rem;
    border-radius: 100%;
    background-color: hsla(0,0%,100%,.3)
}

.advantages-slider-pagination .swiper-pagination-bullet-active {
    background-color: var(--color-white)
}

.contacts {
    position: relative;
    padding: 0 0 4rem
}

@media (min-width: 48rem) {
    .contacts {
        padding: 0
    }
}

@media (min-width: 48rem) {
    .contacts .page-heading {
        display:none
    }
}

[class*=ymaps-2-1][class*=-ground-pane] {
    filter: grayscale(1)
}

.article-content {
    margin-right: auto;
    margin-left: auto;
    color: var(--color-gray);
    font-size: 1.8rem;
    line-height: 1.4
}

.article-content img {
    max-width: 100%
}

.main-header-search.active {
    position: relative;
    grid-column: 1/-1;
    height: 5rem;
    box-shadow: 0 .1rem 0 rgba(0,0,0,.05);
    border-radius: 1rem;
    background-color: var(--color-white);
    width: 100%;
    z-index: 100
}

@media (min-width: 62rem) {
    .main-header-search.active {
        display:flex;
        align-items: center;
        justify-content: center
    }
}

.main-header-search .main-search__result {
    top: calc(100% + 1rem)
}

.main-header-search .main-search__result_item {
    display: block;
    color: hsla(0,0%,45.9%,.8);
    font-size: 1.6rem;
    line-height: 1.4
}

.main-header-search .main-search__result_item span {
    color: var(--color-dark);
    font-weight: 500
}

.search-header {
    position: relative;
    width: 2.4rem;
    display: none
}

@media (min-width: 48rem) and (max-width:74.98rem) {
    .search-header {
        flex-direction:column
    }
}

@media (min-width: 62rem) {
    .search-header {
        display:flex;
        align-items: center;
        justify-content: space-between;
        gap: 2rem
    }
}

.search-header.active {
    height: 100%;
    width: 100%
}

.search-header.active.not-main {
    border-radius: 1rem;
    border: .1rem solid var(--color-grey2)
}

.search-header__form {
    z-index: 990;
    display: flex;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    overflow: hidden
}

.search-header__input {
    flex: 1;
    width: 100%;
    height: 100%;
    padding: 0;
    color: var(--color-black);
    font-weight: 400;
    letter-spacing: -.01em;
    border: none
}

@media (min-width: 48rem) {
    .search-header__input {
        font-size:1.8rem
    }
}

.search-header__input::-moz-placeholder {
    color: hsla(0,0%,45.9%,.9)
}

.search-header__input:-ms-input-placeholder {
    color: hsla(0,0%,45.9%,.9)
}

.search-header__input::placeholder {
    color: hsla(0,0%,45.9%,.9)
}

.search-header__icon {
    display: grid;
    place-content: center;
    width: 6rem;
    border: none;
    background-color: transparent
}

.search-header__icon svg {
    width: 2rem;
    height: 2rem;
    fill: var(--color-gray);
    transition: opacity .3s ease
}

.search-header__icon:hover svg {
    opacity: .7
}

.search-header__popup {
    display: none;
    position: absolute;
    top: 105%;
    left: 0;
    flex-direction: column;
    width: 100%;
    max-width: 55rem;
    padding: 4rem;
    z-index: 990;
    border-radius: 1rem;
    background-color: var(--color-white);
    box-shadow: 0 1.4rem 5.4rem rgba(0,0,0,.09),0 3.1rem 5.4rem rgba(0,0,0,.05)
}

@media (min-width: 62rem) {
    .search-header__popup {
        display:flex
    }
}

.search-header__popup__close {
    align-self: flex-end;
    width: 2rem;
    height: 2rem
}

.search-header__popup__close svg {
    width: 100%;
    height: 100%;
    fill: var(--color-onyx)
}

.search-header__popup__title {
    font-weight: 500;
    margin-bottom: 0
}

.search-header__popup__block:not(:first-of-type) {
    margin-top: 3rem
}

.search-header__popup__list {
    margin-top: 2rem;
    display: flex;
    gap: 1rem;
    flex-wrap: wrap
}

.search-header__popup__list-item {
    display: inline-block;
    padding: 1rem 2.2rem;
    color: var(--color-primary);
    font-size: 1.2rem;
    line-height: 1.6rem;
    border: .1rem solid var(--color-grey2);
    border-radius: 1rem
}

.search-header__popup__footer {
    margin-top: 3rem
}

.search-header__popup__footer p {
    font-weight: 500
}

.search-header__popup__footer p a {
    color: var(--color-primary)
}

.maintenance {
    margin: 0 -1.5rem;
    padding: 2.5rem 1.5rem;
    background: var(--color-white)
}

@media (min-width: 48rem) {
    .maintenance {
        margin:0;
        padding: 2.5rem 2rem;
        border-radius: 1rem
    }
}

.maintenance__tabs {
    display: flex;
    align-items: flex-end;
    margin: 0 0 4rem;
    border-bottom: .1rem solid rgba(116,135,134,.3)
}

@media (min-width: 48rem) {
    .maintenance__tabs {
        margin:0 0 4.5rem
    }
}

.maintenance__tabs-btn {
    position: relative;
    display: flex;
    align-items: center;
    padding: 0 2rem 1rem 0;
    color: #747474;
    font-weight: 500;
    font-size: 1.8rem;
    border: 0;
    background: transparent;
    transition: all .2s
}

@media (min-width: 48rem) {
    .maintenance__tabs-btn {
        padding:0 5rem 1.5rem 0;
        font-size: 2.4rem
    }
}

.maintenance__tabs-btn:after {
    position: absolute;
    right: 0;
    left: 0;
    bottom: -.1rem;
    height: .2rem;
    background: transparent;
    transition: all .2s;
    content: ""
}

.maintenance__tabs-btn span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 3.4rem;
    width: 3.4rem;
    height: 3.4rem;
    margin-right: 1.2rem;
    color: #747474;
    font-weight: 500;
    font-size: 1.6rem;
    border-radius: 50%;
    background: #f1f1f0;
    transition: all .2s
}

.maintenance__tabs-btn.is-active {
    color: #111
}

.maintenance__tabs-btn.is-active:after {
    background: var(--color-primary)
}

.maintenance__tabs-btn.is-active span {
    color: var(--color-white);
    background: var(--color-primary)
}

.maintenance__price {
    margin: 0 0 4rem;
    color: #748786;
    font-weight: 500;
    font-size: 2rem
}

@media (min-width: 48rem) {
    .maintenance__price {
        margin:0 0 4.5rem
    }
}

.maintenance__price span {
    color: var(--color-primary);
    font-size: 2.8rem;
    white-space: nowrap
}

@media (min-width: 48rem) {
    .maintenance__price span {
        font-size:3.2rem
    }
}

.maintenance__row {
    display: grid;
    grid-gap: 1rem;
    margin: 0 0 1rem
}

@media (min-width: 48rem) {
    .maintenance__row {
        grid-template-columns:repeat(3,1fr);
        grid-gap: 1.5rem;
        margin: 0 0 2.5rem
    }
}

.maintenance__row:last-child {
    margin: 0
}

.maintenance__row .btn {
    margin-top: 1rem
}

@media (min-width: 48rem) {
    .maintenance__row .btn {
        margin-top:0
    }
}

.maintenance__row .btn[disabled] {
    opacity: .75
}

.maintenance__footer {
    display: flex;
    flex-direction: column;
    margin: 0 0 1rem
}

@media (min-width: 48rem) {
    .maintenance__footer {
        display:grid;
        grid-gap: 1rem;
        grid-template-columns: repeat(3,1fr);
        grid-gap: 1.5rem;
        margin: 0 0 2.5rem
    }
}

.maintenance__footer .btn {
    order: 1;
    margin-top: 1rem
}

@media (min-width: 48rem) {
    .maintenance__footer .btn {
        order:0;
        margin-top: 0
    }
}

.maintenance__text {
    margin: 2rem 0 1rem;
    font-weight: 500;
    font-size: 1.4rem;
    color: var(--color-slategray)
}

@media (min-width: 48rem) {
    .maintenance__text {
        margin:.8rem 0 0
    }
}

.maintenance__text a {
    color: var(--color-primary);
    text-decoration: underline
}

.maintenance__title {
    margin: 0 0 3rem;
    font-weight: 500;
    font-size: 3rem;
    line-height: 1.2
}

@media (min-width: 48rem) {
    .maintenance__title {
        margin:0 0 2.5rem
    }
}

.maintenance__subtitle {
    margin: 0 0 5rem
}

.maintenance__subtitle span {
    color: var(--color-primary)
}

.maintenance__subtitle br {
    display: none
}

@media (min-width: 48rem) {
    .maintenance__subtitle br {
        display:initial
    }
}

.maintenance__btn {
    color: #747474;
    background: #f1f1f0
}

@media (min-width: 48rem) {
    .maintenance__btn {
        display:none
    }
}

.maintenance__success {
    padding: 2rem 0
}

.page--services__list {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(30rem,1fr));
    gap: .8rem;
    margin-bottom: 10rem
}

@media (min-width: 62rem) {
    .page--services__list {
        gap:2rem
    }
}

.page--service {
    --width-menu: 33rem
}

.page--service__inner {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    gap: 6rem;
    margin: 0 0 6rem
}

@media (min-width: 62rem) {
    .page--service__inner {
        margin:0 0 8rem
    }
}

@media (min-width: 75rem) {
    .page--service__inner {
        grid-template-columns:var(--width-menu) minmax(0,1fr)
    }
}

.page--service__menu {
    display: none
}

@media (min-width: 75rem) {
    .page--service__menu {
        display:block
    }
}

.page--service .breadcrumbs {
    margin: 0 -1.5rem;
    padding: 1.5rem;
    background: var(--color-white)
}

@media (min-width: 48rem) {
    .page--service .breadcrumbs {
        margin:0;
        padding: 1.5rem 0 4.5rem;
        background: transparent
    }
}

.page--service .h1,.page--service h1 {
    margin: 0 -1.5rem;
    padding: 0 1.5rem 3.5rem;
    background: var(--color-white)
}

@media (min-width: 48rem) {
    .page--service .h1,.page--service h1 {
        margin:0;
        padding: 0 0 4.5rem;
        background: transparent
    }
}

@media (min-width: 62rem) {
    .page--service .promos-list {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

.service__search {
    margin: 0 0 2.5rem
}

@media (min-width: 48rem) {
    .service__search {
        margin:0 0 4rem
    }
}

.service-block:not(:last-child) {
    margin-bottom: 6rem
}

@media (min-width: 48rem) {
    .service-block:not(:last-child) {
        margin-bottom:8rem
    }
}

.service-block--form {
    margin: 0 -1.5rem 6rem!important;
    padding: 0 1.5rem 3rem;
    background: var(--color-white)
}

@media (min-width: 48rem) {
    .service-block--form {
        margin:0 0 8rem!important;
        padding: 0;
        background: transparent
    }
}

@media (min-width: 48rem) {
    .service-block--form .service-block__content {
        margin:0;
        padding: 3.5rem 2rem 3rem;
        background: var(--color-white);
        border-radius: 1rem
    }
}

.service-block--form .form-request__title {
    margin-bottom: 2.2rem;
    font-weight: 500;
    font-size: 1.8rem
}

.service-block--form .form__fields {
    display: grid;
    grid-auto-flow: dense;
    grid-template-columns: repeat(1,minmax(0,1fr));
    gap: 2rem 1rem
}

@media (min-width: 48rem) {
    .service-block--form .form__fields {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
}

@media (min-width: 48rem) {
    .service-block--form .form__field--btn {
        grid-row:1;
        grid-column: 3;
        padding-top: 2.8rem
    }
}

@media (min-width: 48rem) {
    .service-block--form .form__field--text {
        grid-column-start:1;
        grid-column-end: 4
    }
}

@media (min-width: 48rem) {
    .service-block--form .form__field--upload {
        grid-column-start:1;
        grid-column-end: 3
    }
}

@media (min-width: 48rem) {
    .service-block--form .form--with-upload .form__field--text {
        grid-column:3
    }
}

@media (min-width: 48rem) {
    .service-block--form .form--with-locations .form__field--text {
        grid-row:initial;
        grid-column-start: 2;
        grid-column-end: 4;
        max-width: 35rem;
        padding-top: .8rem
    }
}

@media (min-width: 48rem) {
    .service-block--form .form--with-locations .form__field--btn {
        grid-row:initial;
        grid-column: 1;
        padding-top: 0
    }
}

.service-block--poster {
    margin-bottom: 5rem!important
}

.service-block--poster img {
    display: block;
    max-width: 100%
}

.service-block--main .service-block__title {
    margin-bottom: 1em
}

.service-block--main .service-block__content {
    color: var(--color-gray);
    font-weight: 400;
    line-height: 1.4
}

@media (min-width: 48rem) {
    .service-block--main .service-block__content {
        font-size:1.8rem
    }
}

.service-block--main .service-block__content h2:not(:first-child) {
    margin-top: 4rem
}

@media (min-width: 48rem) {
    .service-block--main .service-block__content h2:not(:first-child) {
        margin-top:6rem
    }
}

.service-block--main .service-block__content p:not(:last-child) {
    margin-bottom: 1.388888em
}

.service-block--main .service-block__content img {
    max-width: calc(100% + 3rem);
    margin: 0 -1.5rem 3rem
}

@media (min-width: 48rem) {
    .service-block--main .service-block__content img {
        max-width:100%;
        margin: 0 0 5rem
    }
}

.service-block--main .service-block__content ul {
    list-style: none
}

.service-block--main .service-block__content ul li {
    position: relative;
    margin-bottom: 1em;
    padding-left: 4.4rem
}

.service-block--main .service-block__content ul li:before {
    position: absolute;
    top: .7em;
    left: 0;
    width: 2.2rem;
    height: .2rem;
    margin-top: -.1rem;
    background: var(--color-primary);
    content: ""
}

.service-block--table_info {
    margin-top: 2.5rem;
    padding: 2rem 4rem;
    background: var(--color-mintsmoke)
}

.service-block__type {
    position: relative
}

.service-block__picture {
    width: 100%
}

.service-block__picture img {
    max-width: 100%
}

.service-block__dots-item {
    position: absolute
}

@media (min-width: 48rem) {
    .service-block__dots-item:hover .service-block__dots-item-inner {
        border-color:var(--color-primary)
    }
}

@media (min-width: 36rem) {
    .service-block__dots-item.v-popper--shown .service-block__dots-item-inner {
        border-color:var(--color-primary)
    }
}

.service-block__dots-item-inner {
    width: 1.6rem;
    height: 1.6rem;
    aspect-ratio: 1/1;
    background: var(--color-primary);
    border-radius: 50%;
    border: .4rem solid var(--color-white);
    transition: all .2s;
    cursor: pointer
}

@media (min-width: 48rem) {
    .service-block__dots-item-inner {
        width:2.4rem;
        height: 2.4rem
    }
}

.service-block__dots-item_sedan_1 {
    top: 59%;
    left: 3%
}

.service-block__dots-item_sedan_2 {
    top: 56%;
    right: 9%
}

.service-block__dots-item_sedan_3 {
    top: 42%;
    left: 21%
}

.service-block__dots-item_sedan_4 {
    top: 43%;
    right: 15%
}

.service-block__dots-item_sedan_5 {
    top: 59%;
    left: 40%
}

.service-block__dots-item_sedan_6 {
    top: 59%;
    right: 40%
}

.service-block__dots-item_sedan_7 {
    top: 18%;
    left: 50%
}

.service-block__dots-item_sedan_8 {
    top: 36%;
    left: 16%
}

.service-block__dots-item_sedan_9 {
    top: 31%;
    right: 9%
}

.service-block__dots-item_sedan_10 {
    top: 65%;
    left: 30%
}

.service-block__dots-item_sedan_11 {
    top: 65%;
    right: 35%
}

.service-block__dots-item_parketnik_1 {
    top: 59%;
    left: 3%
}

.service-block__dots-item_parketnik_2 {
    top: 62%;
    right: 9%
}

.service-block__dots-item_parketnik_3 {
    top: 40%;
    left: 21%
}

.service-block__dots-item_parketnik_4 {
    top: 40%;
    right: 15%
}

.service-block__dots-item_parketnik_5 {
    top: 58%;
    left: 40%
}

.service-block__dots-item_parketnik_6 {
    top: 57%;
    right: 40%
}

.service-block__dots-item_parketnik_7 {
    top: 14%;
    left: 50%
}

.service-block__dots-item_parketnik_8 {
    top: 35%;
    left: 16%
}

.service-block__dots-item_parketnik_9 {
    top: 24%;
    right: 9%
}

.service-block__dots-item_parketnik_10 {
    top: 66%;
    left: 30%
}

.service-block__dots-item_parketnik_11 {
    top: 65%;
    right: 35%
}

.service-block__dots-item_vnedorozhnik_1 {
    top: 59%;
    left: 3%
}

.service-block__dots-item_vnedorozhnik_2 {
    top: 56%;
    right: 9%
}

.service-block__dots-item_vnedorozhnik_3 {
    top: 42%;
    left: 21%
}

.service-block__dots-item_vnedorozhnik_4 {
    top: 43%;
    right: 15%
}

.service-block__dots-item_vnedorozhnik_5 {
    top: 59%;
    left: 40%
}

.service-block__dots-item_vnedorozhnik_6 {
    top: 59%;
    right: 40%
}

.service-block__dots-item_vnedorozhnik_7 {
    top: 14%;
    left: 50%
}

.service-block__dots-item_vnedorozhnik_8 {
    top: 35%;
    left: 16%
}

.service-block__dots-item_vnedorozhnik_9 {
    top: 31%;
    right: 7%
}

.service-block__dots-item_vnedorozhnik_10 {
    top: 68%;
    left: 30%
}

.service-block__dots-item_vnedorozhnik_11 {
    top: 68%;
    right: 35%
}

.service-block__buble {
    display: flex;
    flex-direction: column;
    padding: 2rem;
    border: .1rem solid #cecfda;
    border-radius: 1rem;
    box-shadow: 0 1px 25px rgba(0,0,0,.05);
    background: var(--color-white)
}

.service-block__buble:hover {
    opacity: 1
}

.service-block__buble-name {
    font-size: 1.4rem
}

.service-block__buble-name,.service-block__buble-price {
    display: block;
    color: var(--color-onyx);
    white-space: nowrap
}

.service-block__buble-price {
    font-size: 2.4rem
}

@media (max-width: 47.98rem) {
    .service-block .advantages-service-block {
        margin-left:-1.5rem
    }

    .service-block .advantages-service-block .advantages-list {
        padding-inline:1.5rem}
}

.v-popper__popper {
    z-index: 994
}

.v-popper--theme-dropdown .v-popper__inner {
    padding: 0;
    border-radius: 0;
    background: none;
    border: none
}

.v-popper__arrow-container {
    display: none
}

.contacts-list {
    display: grid;
    gap: 3.5rem
}

@media (min-width: 48rem) {
    .contacts-list {
        grid-template-columns:repeat(3,auto);
        gap: 4.5rem
    }
}

@media (min-width: 90rem) {
    .contacts-list {
        grid-template-columns:repeat(3,1fr)
    }
}

.contacts-list__item {
    max-width: 100%
}

@media (min-width: 48rem) {
    .contacts-list__item {
        max-width:27.5rem
    }
}

.contacts-list__title {
    margin-bottom: 2.5rem;
    color: var(--color-gray);
    font-weight: 500
}

.contacts-list__content.grid {
    display: grid;
    grid-template-columns: 1.8rem 1fr;
    gap: 1.25rem
}

.contacts-list__icon svg {
    width: 1.8rem;
    height: 2.2rem
}

.contacts-list__icon svg,.contacts-list__icon svg.phone {
    fill: var(--color-primary)
}

@media (min-width: 62rem) {
    .contacts-list__icon svg.phone {
        fill:none;
        stroke: var(--color-primary)
    }
}

.contacts-list__icon svg.is-desktop {
    display: none
}

@media (min-width: 48rem) {
    .contacts-list__icon svg.is-desktop {
        display:block
    }
}

.contacts-list__icon svg.is-mobile {
    display: block
}

@media (min-width: 62rem) {
    .contacts-list__icon svg.is-mobile {
        display:none
    }
}

.contacts-list__link,.contacts-list__text {
    font-weight: 500;
    font-size: 2rem;
    line-height: 1.4
}

.contacts-list__link {
    display: inline-block;
    margin-top: 1.25rem
}

.advantages-list {
    --width-item: 24.5rem;
    display: flex;
    width: calc(100% + 1.5rem);
    overflow-x: auto;
    scrollbar-color: transparent transparent;
    scrollbar-width: none;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -ms-overflow-style: none
}

.advantages-list::-webkit-scrollbar,.advantages-list::-webkit-scrollbar-thumb {
    width: 0;
    height: 0;
    background-color: transparent
}

.advantages-list::-webkit-scrollbar-track {
    width: 0;
    height: 0;
    background-color: transparent
}

.advantages-list::-webkit-scrollbar {
    display: none;
    -webkit-appearance: none
}

@media (min-width: 48rem) {
    .advantages-list {
        display:grid;
        grid-template-columns: repeat(3,auto);
        gap: 2rem
    }
}

@media (min-width: 90rem) {
    .advantages-list {
        grid-template-columns:repeat(3,1fr)
    }
}

@media (min-width: 48rem) {
    .advantages-list--four {
        grid-template-columns:repeat(4,auto)
    }
}

@media (min-width: 90rem) {
    .advantages-list--four {
        grid-template-columns:repeat(4,1fr)
    }
}

.advantages-list--mb {
    margin-bottom: 10rem
}

.advantages-list__item {
    min-width: 30rem;
    margin-right: .8rem;
    padding: 3rem;
    border: .1rem solid #e0e0e0;
    border-radius: 1rem
}

.advantages-list__item--active {
    color: var(--color-primary);
    border-color: var(--color-primary)
}

.advantages-list__item--active .advantages-list__name {
    margin: 0 0 6.5rem;
    font-size: 3.5rem
}

@media (min-width: 48rem) {
    .advantages-list__item--active .advantages-list__name {
        margin:0 0 9.5rem
    }
}

.advantages-list__item--active .advantages-list__text {
    color: var(--color-primary)
}

.advantages-list__item:last-child {
    margin-right: 0
}

@media (min-width: 48rem) {
    .advantages-list__item {
        min-width:var(--width-item);
        margin-right: 0;
        padding: 4rem 3rem
    }
}

.advantages-list__icon img {
    width: 4.9rem;
    height: 4.8rem
}

.advantages-list__name {
    margin-top: 2rem;
    font-weight: 500;
    line-height: 1.25
}

@media (min-width: 48rem) {
    .advantages-list__name {
        margin-top:4rem;
        font-size: 2.4rem
    }
}

.advantages-list__text {
    margin-top: 2rem;
    font-size: 1.5rem;
    color: var(--color-gray)
}

@media (min-width: 48rem) {
    .advantages-list__text {
        font-size:1.6rem
    }
}

.brand-list {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    grid-gap: 1rem;
    list-style-type: none
}

@media (min-width: 48rem) {
    .brand-list {
        grid-template-columns:repeat(2,1fr)
    }
}

@media (min-width: 62rem) {
    .brand-list {
        grid-template-columns:repeat(3,1fr)
    }
}

@media (min-width: 75rem) {
    .brand-list {
        grid-template-columns:repeat(5,1fr)
    }
}

@media (min-width: 90rem) {
    .brand-list {
        grid-template-columns:repeat(7,1fr)
    }
}

.brand-item {
    display: block;
    height: 9.7rem;
    background: #f5f7f7;
    border-radius: 1rem;
    cursor: pointer;
    transition: .2s ease-in-out
}

.brand-item:hover {
    background: #fff;
    box-shadow: 0 .68695rem 1.28802rem rgba(116,135,134,.15);
    opacity: 1
}

.brand-item__logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding-right: 1rem;
    padding-left: 1rem
}

.brand-item__logo img {
    display: block;
    width: 6rem
}

.price-item {
    position: relative;
    padding: 1.6rem 4rem 1.6rem 2rem;
    line-height: 1.2;
    background: var(--color-white);
    border-radius: 1rem;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05);
    transition: all .2s;
    cursor: pointer
}

@media (min-width: 48rem) {
    .price-item {
        display:flex;
        align-items: center;
        justify-content: space-between;
        padding: 2rem;
        font-size: 1.5rem
    }
}

.price-item:not(:last-child) {
    margin: 0 0 .8rem
}

@media (min-width: 48rem) {
    .price-item:not(:last-child) {
        margin:0 0 1rem
    }
}

@media (min-width: 48rem) {
    .price-item:hover {
        box-shadow:0 .5rem 1rem rgba(0,0,0,.05);
        opacity: .7
    }
}

.price-item:hover svg {
    right: .8rem
}

.price-item__title {
    display: flex;
    align-items: center;
    margin: 0 0 .4rem;
    font-weight: 500
}

@media (min-width: 48rem) {
    .price-item__title {
        position:relative;
        padding-right: 4.2rem;
        margin: 0;
        font-size: 1.6rem;
        font-weight: 400
    }
}

.price-item__title svg {
    position: absolute;
    top: 50%;
    right: 1.2rem;
    width: 2rem;
    height: 2rem;
    transform: translateY(-50%);
    opacity: .25;
    transition: right .2s
}

@media (min-width: 48rem) {
    .price-item__title svg {
        margin-left:1rem
    }
}

.price-item__price {
    display: flex;
    white-space: nowrap;
    font-weight: 500;
    color: var(--color-primary)
}

@media (min-width: 48rem) {
    .price-item__price {
        margin:0;
        font-weight: 400;
        font-size: 2.4rem
    }
}

.price-item__price .strike {
    -webkit-text-decoration-line: line-through;
    text-decoration-line: line-through;
    color: var(--color-slategray)
}

.price-item__price span:not(:last-child) {
    margin-right: 1rem
}

.cost-table-wrapper {
    margin: 0 -1.5rem;
    padding: 0 1.5rem;
    overflow: auto
}

.cost-table {
    width: 100%
}

.cost-table thead tr th {
    width: 25%
}

.cost-table thead tr th:not(:first-child) {
    padding-left: 1.5rem
}

.cost-table thead tr th:not(:last-child) {
    padding-right: 1.5rem
}

.cost-table tbody tr td {
    width: 25%
}

.cost-table tbody tr td:not(:first-child) {
    padding-left: 1.5rem
}

.cost-table tbody tr td:not(:last-child) {
    padding-right: 1.5rem
}

.cost-table__th {
    color: #748786;
    text-align: left
}

.cost-table__td,.cost-table__th {
    padding: 2.4rem 0;
    font-weight: 500;
    border-bottom: .1rem solid rgba(0,0,0,.15)
}

.cost-table__td {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #333;
    white-space: nowrap
}

.cost-table__td svg {
    width: 1rem;
    height: 1rem;
    margin-left: 3rem;
    transition: .2s ease-in-out
}

@media (min-width: 48rem) {
    .cost-table a.cost-table__td:hover svg {
        transform:translateX(.5rem)
    }
}

.other-services {
    display: block;
    padding: 5rem 0;
    background: var(--color-mintsmoke)
}

@media (min-width: 48rem) {
    .other-services {
        display:none
    }
}

.other-services__list {
    display: grid;
    gap: .2rem
}

.other-services__item {
    display: flex;
    justify-content: space-between;
    margin-bottom: .4rem;
    background-color: var(--color-white);
    border-radius: 1rem;
    padding: 1.55rem 2rem;
    transition: all .3s ease;
    cursor: pointer;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05)
}

@media (min-width: 48rem) {
    .other-services__item {
        display:flex;
        flex-direction: column;
        margin-bottom: 0;
        padding: 4rem
    }

    .other-services__item:hover {
        box-shadow: 0 1.2rem 2.6rem rgba(0,0,0,.1)
    }
}

.other-services__item.hidden {
    display: none
}

.other-services__item svg {
    width: 2rem;
    height: 2rem;
    fill: var(--color-grey)
}

@media (min-width: 48rem) {
    .other-services__item svg {
        display:none
    }
}

.other-services__text {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 1.6rem;
    line-height: 1.3;
    font-weight: 500;
    color: var(--color-text)
}

.page--promos__filter {
    margin-bottom: 2.5rem
}

@media (min-width: 48rem) {
    .page--promos__filter {
        margin-bottom:4.5rem
    }
}

.page--promos__types {
    margin-bottom: 3rem
}

@media (min-width: 48rem) {
    .page--promos__types {
        margin-bottom:7.3rem
    }
}

.page--promos__list {
    margin-bottom: 10rem
}

.promos-types {
    display: flex;
    align-items: flex-start;
    justify-content: space-between
}

@media (min-width: 48rem) {
    .promos-types {
        justify-content:flex-start
    }

    .promos-types .promos-types__item:not(:last-child) {
        margin-right: 8.6rem
    }
}

@media (min-width: 62rem) {
    .promos-types .promos-types__item:not(:last-child) {
        margin-right:10rem
    }
}

.promos-list {
    display: grid;
    grid-gap: .8rem;
    margin-bottom: 10rem
}

@media (min-width: 36rem) {
    .promos-list {
        grid-template-columns:repeat(auto-fit,minmax(41rem,1fr))
    }
}

@media (min-width: 48rem) {
    .promos-list {
        grid-gap:2rem
    }
}

@media (min-width: 90rem) {
    .promos-list {
        grid-template-columns:repeat(3,minmax(41rem,1fr))
    }
}

.promo-type {
    position: relative;
    cursor: pointer
}

.promo-type__icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.6rem;
    height: 4.6rem;
    margin: 0 auto .7rem;
    background: #000;
    border-radius: 1rem;
    transition: .2s ease-in-out
}

@media (min-width: 48rem) {
    .promo-type__icon {
        width:10.4rem;
        height: 10.4rem;
        margin-bottom: 1.1rem;
        border-radius: 1rem
    }
}

@media (min-width: 62rem) {
    .promo-type__icon {
        width:13rem;
        height: 13rem;
        margin-bottom: 1.3rem;
        border-radius: 1rem
    }
}

.promo-type__icon img {
    max-width: 44%;
    height: auto
}

.promo-type__count {
    display: none
}

@media (min-width: 48rem) {
    .promo-type__count {
        position:absolute;
        top: 1.2rem;
        left: 1.4rem;
        display: block;
        color: var(--color-white);
        font-size: 1.1rem
    }
}

@media (min-width: 62rem) {
    .promo-type__count {
        top:1.4rem;
        left: 1.9rem;
        font-size: 1.4rem
    }
}

.promo-type__title {
    font-weight: 500;
    font-size: 1.2rem;
    text-align: center
}

@media (min-width: 48rem) {
    .promo-type__title {
        font-size:2.2rem
    }
}

.promo-type:hover .promo-type__icon {
    opacity: .79
}

.promo-type--success .promo-type__icon {
    background: linear-gradient(51.73deg,var(--color-green) -79.56%,#3fc26b -9.74%,#64f093 65.9%);
    border: .2rem solid var(--color-white)
}

@media (min-width: 48rem) {
    .promo-type--success .promo-type__icon {
        border:.5rem solid var(--color-white)
    }
}

.promo-type--success .promo-type__count {
    color: #000
}

.promo-item {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    overflow: hidden;
    background: var(--color-white);
    border-radius: 1rem;
    transition: .2s ease-in-out;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05)
}

@media (min-width: 62rem) {
    .promo-item {
        border-radius:1rem
    }
}

.promo-item__image {
    position: relative;
    padding-bottom: 60%;
    overflow: hidden
}

.promo-item__image img {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

@media (min-width: 48rem) {
    .promo-item__image img {
        transition:.2s ease-in-out
    }
}

.promo-item__content {
    flex-grow: 1;
    padding: 2rem 2rem 0
}

@media (min-width: 62rem) {
    .promo-item__content {
        padding:2rem 4rem 0
    }
}

.promo-item__tags {
    display: none
}

@media (min-width: 48rem) {
    .promo-item__tags {
        display:block;
        margin-bottom: 2rem
    }
}

.promo-item__name {
    color: var(--color-text);
    font-weight: 500;
    line-height: 1.2;
    font-size: 1.6rem
}

@media (min-width: 48rem) {
    .promo-item__name {
        font-size:2.4rem
    }
}

.promo-item__name span {
    color: var(--color-primary)
}

.promo-item__readmore {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    color: var(--color-grey);
    font-size: 1rem;
    line-height: 1.2;
    padding: 1rem 2rem 2rem
}

@media (min-width: 48rem) {
    .promo-item__readmore {
        font-size:1.7rem;
        padding: 2rem 4rem 4rem
    }
}

.promo-item__readmore span {
    margin-right: auto
}

.promo-item__readmore svg {
    fill: var(--color-grey);
    width: 2rem;
    height: 2rem
}

.promo-item__special {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 2rem;
    background-color: transparent;
    border: .1rem solid var(--color-primary)
}

@media (min-width: 62rem) {
    .promo-item__special {
        padding:4rem
    }
}

.promo-item__special-top {
    line-height: 1.2
}

.promo-item__special-top strong {
    display: block;
    font-size: 2.4rem
}

.promo-item__special-top span {
    display: block;
    font-size: 1.2rem;
    color: var(--color-gray);
    margin-top: 2rem
}

@media (min-width: 62rem) {
    .promo-item__special-top span {
        font-size:1.6rem
    }
}

.promo-item__special-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between
}
.promo-item__special-bottom svg{
    max-width: 60px;
    opacity: 1;
}
.promo-item__special-bottom svg path{
    color: var(--color-primary);
}
.promo-item__special-bottom span {
    font-size: 1rem;
    color: var(--color-grey)
}

@media (min-width: 62rem) {
    .promo-item__special-bottom span {
        font-size:1.7rem
    }
}

.promo-item__special-bottom img {
    width: 4rem;
    height: 4rem;
    margin-left: auto
}

@media (min-width: 62rem) {
    .promo-item__special-bottom img {
        width:9.6rem;
        height: 9.6rem
    }
}

@media (min-width: 62rem) {
    .promo-item__special--all {
        display:none
    }
}

.promo-item__special--all a {
    margin-top: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--color-primary)
}

.promo-item__special--all a svg {
    fill: var(--color-primary);
    width: 2rem;
    height: 2rem
}

.promo-item-tags {
    display: inline-block;
    max-width: 72vw;
    overflow: hidden!important;
    color: var(--color-slategray);
    white-space: nowrap;
    text-overflow: ellipsis
}

@media (min-width: 36rem) {
    .promo-item-tags {
        max-width:35vw
    }
}

@media (min-width: 90rem) {
    .promo-item-tags {
        max-width:25vw
    }
}

.promo-item-tags__item {
    display: inline-block;
    color: var(--color-slategray);
    font-size: 1.4rem;
    line-height: 1.4
}

@media (min-width: 22.5rem) {
    .promo-item-tags__item {
        font-size:1.8rem
    }
}

.promo-item-tags__item:not(:last-child) {
    margin-right: 1rem
}

@media (min-width: 22.5rem) {
    .promo-item-tags__item:not(:last-child) {
        margin-right:1.3rem
    }
}

.page--promo {
    background: var(--color-white)
}

@media (min-width: 48rem) {
    .page--promo {
        background:var(--color-whitesmoke)
    }
}

.page--promo__container {
    margin-right: auto;
    margin-left: auto
}

.page--promo .page-heading {
    margin-bottom: 4.5rem
}

@media (max-width: 47.98rem) {
    .page--promo .page-heading {
        margin-bottom:3.5rem
    }
}

.page--promo .page-heading .h1 {
    margin: 0 0 1.5rem
}

.page--promo__cover {
    position: relative;
    margin-bottom: 15rem;
    padding-bottom: 40%;
    overflow: hidden;
    border-radius: 1rem
}

.page--promo__cover img {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.page--promo__feedback {
    margin-bottom: 1.5rem
}

@media (min-width: 36rem) {
    .page--promo__feedback {
        margin-bottom:4rem
    }
}

.page--promo__content {
    margin-bottom: 2.8rem;
    color: var(--color-gray);
    line-height: 1.4
}

@media (min-width: 48rem) {
    .page--promo__content {
        font-size:1.8rem
    }
}

@media (max-width: 47.98rem) {
    .page--promo__content .btn {
        width:100%
    }
}

.page--promo__content ul {
    margin-top: 1em;
    margin-bottom: 1em
}

.page--promo__content ul li {
    position: relative;
    margin-bottom: 1rem;
    padding-left: 2rem
}

.page--promo__content ul li:before {
    position: absolute;
    top: .4em;
    left: 0;
    display: block;
    width: .7rem;
    height: .7rem;
    background: var(--color-primary);
    border-radius: 50%;
    content: ""
}

.page--promo__content ul li p {
    margin-bottom: 0
}

.page--promo__content mark {
    color: inherit;
    background: none
}

.page--promo__content img {
    width: 100%
}

.page-promo-title span {
    display: block;
    color: var(--color-primary)
}

.page-tag {
    display: inline-block;
    padding: .8rem 1.3rem;
    color: var(--color-white);
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 1.33;
    background: var(--color-slategray);
    border-radius: 10rem;
    font-size: calc(1.305rem + .34375vw)
}

@media (min-width: 1440px) {
    .page-tag {
        font-size:1.8rem
    }
}

@media (min-width: 36rem) {
    .page-tag {
        padding:.8rem 1.9rem
    }
}

.page--contacts__list {
    position: relative;
    z-index: 1
}

.page--contacts__map {
    position: relative;
    margin-top: -9rem
}

.page--contacts__article {
    margin-bottom: 10rem
}

.contacts-blocks {
    display: grid;
    gap: 1.5rem
}

@media (min-width: 62rem) {
    .contacts-blocks {
        grid-template-columns:repeat(3,1fr)
    }
}

.contacts-block {
    display: grid;
    grid-template-columns: 2.4rem 1fr;
    gap: 2rem;
    padding: 2rem 3rem;
    background: var(--color-white);
    border-radius: 1rem
}

@media (min-width: 48rem) {
    .contacts-block {
        grid-template-columns:2.8rem 1fr;
        height: 20.5rem;
        padding: 5.2rem 3rem
    }
}

@media (min-width: 62rem) {
    .contacts-block {
        grid-template-columns:3.4rem 1fr;
        padding: 5.2rem 2rem
    }
}

@media (min-width: 90rem) {
    .contacts-block {
        height:21.7rem;
        padding: 5.2rem 5.4rem
    }
}

.contacts-block__icon svg {
    width: 2.4rem;
    height: 2.4rem;
    fill: var(--color-primary)
}

@media (min-width: 48rem) {
    .contacts-block__icon svg {
        width:2.8rem;
        height: 2.8rem
    }
}

@media (min-width: 62rem) {
    .contacts-block__icon svg {
        width:3.4rem;
        height: 3.4rem
    }
}

.contacts-block__icon svg.phone {
    fill: var(--color-primary)
}

@media (min-width: 62rem) {
    .contacts-block__icon svg.phone {
        fill:none;
        stroke: var(--color-primary)
    }
}

.contacts-block__icon svg.is-desktop {
    display: none
}

@media (min-width: 62rem) {
    .contacts-block__icon svg.is-desktop {
        display:block
    }
}

.contacts-block__icon svg.is-mobile {
    display: block
}

@media (min-width: 48rem) {
    .contacts-block__icon svg.is-mobile {
        display:none
    }
}

.contacts-block__icon--map svg {
    fill: none!important
}

.contacts-block__title {
    margin-bottom: .6rem;
    color: var(--color-gray);
    font-size: 1.8rem;
    line-height: 1.4
}

@media (min-width: 48rem) {
    .contacts-block__title {
        margin-bottom:3rem;
        font-size: 2.4rem;
        line-height: 1.2
    }
}

.contacts-block__text {
    margin-bottom: 1rem;
    color: #000;
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 1.4
}

@media (min-width: 48rem) {
    .contacts-block__text {
        font-size:2rem;
        line-height: 1.32
    }
}

.contacts-block__link {
    color: var(--color-primary);
    font-weight: 4 0;
    font-size: 1.6rem;
    line-height: 1.4;
    text-decoration: underline
}

@media (min-width: 48rem) {
    .contacts-block__link {
        font-size:2rem;
        line-height: 1.32
    }
}

.page--reviews__list {
    margin-bottom: 10rem
}

.reviews-list {
    display: grid;
    grid-gap: .8rem
}

@media (min-width: 48rem) {
    .reviews-list {
        grid-template-columns:repeat(2,1fr);
        grid-gap: 2rem
    }
}

@media (min-width: 90rem) {
    .reviews-list {
        grid-template-columns:repeat(3,1fr)
    }
}

.page-error__content {
    padding-block:4rem;display: grid;
    gap: 2rem
}

@media (min-width: 75rem) {
    .page-error__content {
        gap:4rem;
        grid-template-columns: repeat(2,1fr)
    }
}

.page-error__title {
    margin-bottom: 0;
    font-size: 3.2rem;
    max-width: 70%
}

@media (min-width: 48rem) {
    .page-error__title {
        font-size:5.4rem;
        line-height: 1.1
    }
}

@media (min-width: 75rem) {
    .page-error__title {
        grid-column:1;
        max-width: 57rem
    }

    .page-error__title br {
        display: none
    }
}

.page-error__bg {
    position: relative;
    min-height: 20rem;
    margin-block:-2rem}

@media (min-width: 48rem) {
    .page-error__bg {
        max-width:70%;
        margin: -3rem auto
    }
}

@media (min-width: 75rem) {
    .page-error__bg {
        grid-column:2;
        grid-row: 1/6;
        max-width: 100%;
        min-height: 58rem
    }
}

.page-error__bg-img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

@media (min-width: 75rem) {
    .page-error__bg-img {
        transform-origin:right;
        transform: scale(1.3)
    }
}

.page-error__bg-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-49%,-50%);
    width: 65%
}

@media (min-width: 75rem) {
    .page-error__bg-logo {
        top:50%;
        left: 50%;
        transform: translate(-66%,-50%);
        width: 85%
    }
}

.page-error__description {
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 0
}

@media (min-width: 48rem) {
    .page-error__description {
        font-size:1.6rem;
        line-height: 1.4;
        max-width: 50rem
    }
}

@media (min-width: 62rem) {
    .page-error__description {
        max-width:40rem
    }
}

@media (min-width: 75rem) {
    .page-error__description {
        grid-column:1;
        grid-row: 2;
        max-width: 45rem
    }
}

@media (min-width: 90rem) {
    .page-error__description {
        grid-column:1;
        grid-row: 2;
        max-width: 50rem
    }
}

.page-error .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    width: 100%;
    color: var(--color-white)
}

@media (min-width: 48rem) {
    .page-error .btn {
        max-width:42rem;
        margin: 0 auto
    }
}

@media (min-width: 75rem) {
    .page-error .btn {
        grid-column:1;
        grid-row: 3;
        max-width: 20.8rem;
        margin: 0
    }
}

.page-error .btn svg {
    width: 2rem;
    height: 2rem;
    fill: #fff;
    transform: rotate(180deg)
}

.page--single-brand .breadcrumbs {
    margin: 0 -1.5rem;
    padding: 1.5rem;
    background: var(--color-white)
}

@media (min-width: 48rem) {
    .page--single-brand .breadcrumbs {
        margin:0;
        padding: 1.5rem 0 4.5rem;
        background: transparent
    }
}

.page--single-brand .h1,.page--single-brand .text-intro,.page--single-brand h1 {
    margin: 0 -1.5rem;
    padding: 0 1.5rem 3.5rem;
    background: var(--color-white)
}

@media (min-width: 48rem) {
    .page--single-brand .h1,.page--single-brand .text-intro,.page--single-brand h1 {
        margin:0;
        padding: 0 0 4.5rem;
        background: transparent
    }
}

@media (min-width: 48rem) {
    .page--single-brand .text-intro {
        padding:0 0 5rem
    }
}

.brands-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: .8rem;
    margin-bottom: 10rem
}

@media (min-width: 48rem) {
    .brands-list {
        grid-template-columns:repeat(2,1fr)
    }
}

@media (min-width: 62rem) {
    .brands-list {
        grid-template-columns:repeat(3,1fr);
        gap: 2rem
    }
}

@media (min-width: 75rem) {
    .brands-list {
        grid-template-columns:repeat(4,1fr)
    }
}

.brands-list__item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2rem;
    background: var(--color-white);
    border-radius: 1rem;
    transition: all .2s ease-in;
    height: 8.8rem;
    box-shadow: 0 1px 0 rgba(0,0,0,.05)
}

@media (min-width: 48rem) {
    .brands-list__item:hover {
        opacity:1;
        box-shadow: 0 11.81px 26px rgba(0,0,0,.1)
    }
}

.brands-list__logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.8rem;
    height: 4.8rem
}

.brands-list__logo img {
    max-width: 100%
}

.brands-list__title {
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 2.2rem
}

.page--blog .page-heading {
    margin-bottom: 4.5rem
}

@media (max-width: 47.98rem) {
    .page--blog .page-heading {
        margin-bottom:3.5rem
    }
}

.page--blog .page-heading .h1 {
    margin: 0 0 1.5rem
}

.page--blog .page--promo__cover {
    margin: 0 0 2.5rem
}

@media (min-width: 48rem) {
    .page--blog .page--promo__cover {
        margin:0 0 5rem
    }
}

.page--blog .page--promo__content {
    margin: 0 0 6rem
}

@media (min-width: 75rem) {
    .single-brand {
        display:grid;
        grid-template-columns: 33rem minmax(0,1fr);
        gap: 6rem;
        margin-bottom: 12rem
    }
}

.single-brand__aside {
    display: none
}

@media (min-width: 75rem) {
    .single-brand__aside {
        display:block
    }
}

.single-brand__back {
    display: flex;
    align-items: center
}

.single-brand__back svg {
    width: .6rem;
    height: 1rem;
    transform: rotate(180deg);
    fill: var(--color-primary)
}

.single-brand__back span {
    margin-left: 2rem;
    color: var(--color-black);
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 1.2
}

.single-brand__logo {
    margin-top: 5.5rem;
    margin-left: 2rem
}

.single-brand__logo img {
    display: block;
    max-width: 100%;
    height: 10rem
}

.single-brand__title {
    margin: 2rem 0 0 2rem;
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 1.2
}

.page--team__cards {
    display: grid;
    grid-template-columns: repeat(5,1fr);
    gap: 2rem;
    margin-bottom: 8.4rem
}

.page--team__cards>:not(.all):nth-child(n+10) {
    display: none
}

@media (max-width: 113.73rem) {
    .page--team__cards {
        grid-template-columns:repeat(4,1fr)
    }

    .page--team__cards>:not(.all):nth-child(n+8) {
        display: none
    }
}

@media (max-width: 74.98rem) {
    .page--team__cards {
        grid-template-columns:repeat(3,1fr)
    }

    .page--team__cards>:not(.all):nth-child(n+6) {
        display: none
    }
}

@media (max-width: 61.98rem) {
    .page--team__cards {
        grid-template-columns:repeat(2,1fr);
        margin-bottom: 4rem
    }

    .page--team__cards>:not(.all):nth-child(n+4) {
        display: none
    }
}

@media (max-width: 35.98rem) {
    .page--team__cards {
        grid-template-columns:1fr
    }

    .page--team__cards>:not(.all):nth-child(n) {
        display: grid
    }
}

.page--team__card {
    display: grid;
    grid-template-rows: 30rem 1fr;
    background-color: var(--color-white);
    border-radius: 1rem;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05);
    overflow: hidden
}

.page--team__card-img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top;
    object-position: top
}

.page--team__card-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-height: 18rem;
    padding: 2rem
}

.page--team__card-position {
    font-size: 1.6rem;
    line-height: 1.4;
    color: var(--color-gray)
}

.page--team__card-name {
    font-size: 2rem;
    line-height: 1.4;
    font-weight: 500;
    margin-bottom: 0
}

.page--team__card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto
}

.page--team__card-footer span {
    color: var(--color-grey)
}

.page--team .all {
    padding: 4rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: transparent;
    border: .1rem solid var(--color-primary)
}

.page--team .all h3 {
    margin-bottom: 0
}

.page--team .all p {
    font-size: 2.4rem;
    line-height: 1.1;
    font-weight: 500;
    color: var(--color-primary);
    margin-bottom: 0
}

@media (max-width: 35.98rem) {
    .page--team .all {
        display:none
    }
}

@media (min-width: 62rem) {
    .page--team .vacancies-slider {
        display:none
    }
}

.page--team .vacancies-slider .swiper-container {
    padding-inline:1.5rem;margin-inline:-1.5rem}

@media (min-width: 48rem) {
    .page--team .vacancies-slider .swiper-container {
        padding-inline:5rem;
        margin-inline:-5rem}
}

.page--team__vacancies-cards {
    display: none
}

@media (min-width: 62rem) {
    .page--team__vacancies-cards {
        display:grid;
        gap: 1rem;
        margin-bottom: 9rem
    }
}

.page--vacancies__cards {
    display: grid;
    gap: 1rem;
    margin-bottom: 9rem
}

@media (min-width: 62rem) {
    .page--vacancy {
        display:grid;
        grid-template-columns: 31.3rem 1fr;
        gap: 4rem;
        align-items: start
    }
}

.page--vacancy-single {
    background: var(--color-white)
}

@media (min-width: 48rem) {
    .page--vacancy-single {
        background:var(--color-whitesmoke)
    }
}

@media (min-width: 62rem) {
    .page--vacancy__content {
        grid-column:2;
        grid-row: 1
    }
}

.page--vacancy__content .page-heading {
    margin-bottom: 2rem
}

.page--vacancy__content .page-heading h1 {
    line-height: 1.1;
    margin-bottom: 0
}

@media (min-width: 62rem) {
    .page--vacancy__content .page-heading h1 {
        margin-bottom:4rem
    }
}

.page--vacancy__content .page-heading img {
    vertical-align: text-top
}

.page--vacancy__details {
    margin-bottom: 2rem;
    color: var(--color-gray);
    font-size: 1.6rem;
    line-height: 1.4
}

@media (min-width: 62rem) {
    .page--vacancy__details {
        margin-bottom:6rem;
        font-size: 2.4rem;
        line-height: 1.3
    }
}

.page--vacancy__btn {
    width: 100%
}

@media (min-width: 62rem) {
    .page--vacancy__btn {
        display:none
    }
}

.page--vacancy__block {
    margin-bottom: 2rem
}

@media (min-width: 62rem) {
    .page--vacancy__block {
        margin-bottom:6rem
    }
}

.page--vacancy__block h2,.page--vacancy__block h3 {
    margin-block:4rem 1rem}

@media (min-width: 62rem) {
    .page--vacancy__block h2,.page--vacancy__block h3 {
        margin-block:6rem 2rem;
        font-size: 3.6rem;
        line-height: 1.1
    }
}

.page--vacancy p {
    margin-bottom: 0
}

.page--vacancy ul li {
    position: relative;
    font-size: 1.5rem;
    line-height: 1.6;
    color: var(--color-gray);
    margin-bottom: 1rem;
    padding-left: 1rem;
    margin-left: 1rem
}

@media (min-width: 62rem) {
    .page--vacancy ul li {
        font-size:1.6rem;
        line-height: 1.4
    }
}

.page--vacancy ul li:before {
    position: absolute;
    top: -.1rem;
    left: -.5rem;
    content: "•"
}

.page--vacancy__form {
    margin: 0 -2rem;
    padding: 2rem;
    background-color: var(--color-white);
    border-radius: 1rem;
    scroll-margin-top: 10rem
}

@media (min-width: 62rem) {
    .page--vacancy__form {
        grid-column:1;
        grid-row: 1;
        position: sticky;
        top: 15rem;
        margin: 0 0 6rem
    }
}

.page--vacancy__form .form-request .form__fields {
    display: grid
}

.page--vacancy__form .form-request .form__field {
    margin-bottom: 2rem
}

.page--vacancy__form .form-request .form__field--upload {
    grid-row: 5;
    margin-bottom: 0
}

.page--vacancy__form .form-request .form__field--upload .upload-file__button {
    grid-column: 1/-1
}

.page--vacancy__form .form-request .form__field--btn {
    margin-top: .4rem;
    margin-bottom: 1rem
}

.page--vacancy__form .form-request .form__field--btn .btn {
    margin-bottom: 0
}

@media (min-width: 62rem) {
    .long-links--cols {
        display:grid;
        grid-template-columns: repeat(3,1fr);
        gap: 0 9rem
    }
}

.long-links--with-img {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 1rem
}

@media (min-width: 62rem) {
    .long-links--with-img {
        grid-template-columns:repeat(3,1fr)
    }
}

.long-links--with-img .long-links__item {
    display: flex;
    flex-direction: column;
    padding: 0;
    background: var(--color-white);
    border-radius: .5rem;
    overflow: hidden
}

.long-links--with-img .long-links__item:hover:after {
    transform: translateX(0);
    opacity: 1
}

.long-links--with-img .long-links__item:after {
    top: auto;
    right: 1.5rem;
    bottom: 2rem;
    transform: translateX(-1rem);
    opacity: 0;
    transition: all .2s
}

.long-links--with-img .long-links__item-img {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    height: 9.5rem
}

@media (min-width: 62rem) {
    .long-links--with-img .long-links__item-img {
        height:14.5rem
    }
}

.long-links--with-img .long-links__item-img img {
    max-height: 98%;
    max-width: 100%
}

.long-links--with-img .long-links__item-name {
    flex-grow: 1;
    padding: 1rem 2.5rem 3rem 1.5rem;
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 1.375
}

@media (min-width: 62rem) {
    .long-links--with-img .long-links__item-name {
        padding:1.5rem 2.5rem 3rem 1.5rem;
        font-size: 1.8rem
    }
}

.long-links__item {
    position: relative;
    display: block;
    padding: 2.4rem 2.4rem 2.4rem 0;
    color: #333;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 1.2;
    border-bottom: .1rem solid #d9d9d9
}

.long-links__item:after {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: .7rem;
    height: 1rem;
    margin-top: -.5rem;
    background-image: url(../img/icons/chevron-right.svg);
    content: ""
}

.page--search {
    background-color: var(--color-white)
}

.search-not-found {
    text-align: center
}

.search-not-found__img {
    margin-bottom: 4rem
}

.page--bonus__inner .container,.page--bonus__inner .page--services__list {
    max-width: 166rem
}

@media (max-width: 61.98rem) {
    .page--bonus__inner .container,.page--bonus__inner .page--services__list {
        padding:0
    }
}

.bonus-hero {
    margin: 0 0 4rem;
    padding: 4rem 0 5.1rem;
    background: var(--color-dark);
    border-radius: 0
}

@media (min-width: 62rem) {
    .bonus-hero {
        margin:4rem auto 8rem;
        padding: 5rem 8rem;
        border-radius: 1rem;
        max-width: 166rem
    }
}

@media (min-width: 90rem) {
    .bonus-hero {
        padding:3rem 8rem
    }
}

.bonus-hero__inner {
    display: flex;
    flex-direction: column;
    align-items: center
}

@media (min-width: 62rem) {
    .bonus-hero__inner {
        flex-direction:row-reverse;
        justify-content: space-between;
        gap: 1.2rem
    }
}

@media (max-width: 61.98rem) {
    .bonus-hero__inner {
        padding:0 2rem
    }
}

.bonus-hero__inner-img {
    padding: 0 1.6rem
}

@media (min-width: 62rem) {
    .bonus-hero__inner-img {
        padding:0
    }
}

.bonus-hero__inner-img img {
    max-width: 100%
}

.bonus-hero__text {
    padding: 0;
    color: var(--color-white)
}

@media (min-width: 62rem) {
    .bonus-hero__text {
        padding:0
    }
}

.bonus-hero__title {
    margin: 4rem 0 3rem;
    color: var(--color-white);
    font-size: 3.2rem;
    line-height: 1.1;
    font-weight: 500
}

@media (min-width: 62rem) {
    .bonus-hero__title {
        margin:0 0 4rem;
        font-size: 5.4rem
    }
}

.bonus-hero__subtitle {
    margin: 0 0 2rem;
    font-size: 1.5rem;
    line-height: 1.6
}

@media (min-width: 62rem) {
    .bonus-hero__subtitle {
        font-size:1.6rem;
        margin-bottom: 4rem
    }
}

.bonus-hero .btn {
    margin: 4rem 0 0;
    background: var(--color-white);
    color: #343b45;
    width: 32rem
}
.btn__wa{
    background: #3fc26b;
}

@media (max-width: 61.98rem) {
    .bonus-hero .btn {
        width:100%
    }
}

.bonus-conditions {
    margin: 0 0 4rem
}

@media (min-width: 62rem) {
    .bonus-conditions {
        margin:0 0 8rem;
        padding: 0
    }
}

.bonus-conditions__title {
    margin: 0 0 2rem
}

@media (min-width: 62rem) {
    .bonus-conditions__title {
        margin-bottom:4rem
    }
}

.bonus-conditions__text {
    margin: 0;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 2.8rem
}

.bonus-conditions__cards {
    display: grid;
    gap: 1rem
}

@media (min-width: 62rem) {
    .bonus-conditions__cards {
        grid-template-columns:repeat(3,1fr);
        gap: 2rem
    }
}

.bonus-conditions__card {
    padding: 3rem 2rem;
    background-color: var(--color-white);
    border-radius: 1rem;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05)
}

@media (min-width: 62rem) {
    .bonus-conditions__card {
        padding:4rem 3rem
    }
}

.bonus-conditions__card svg {
    margin-bottom: 4rem;
    fill: var(--color-primary);
    width: 4.8rem;
    height: 4.8rem
}

.bonus-conditions__card h3 {
    margin-bottom: 2rem;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.65
}

@media (min-width: 62rem) {
    .bonus-conditions__card h3 {
        font-size:2.4rem;
        line-height: 1.2
    }
}

.bonus-conditions__card p {
    margin-bottom: 0;
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.6;
    color: #616161
}

@media (min-width: 62rem) {
    .bonus-conditions__card p {
        font-size:1.6rem;
        line-height: 1.4
    }
}

.bonus-activation {
    margin: 0 0 3.2rem;
    padding: 2.4rem;
    color: var(--color-white);
    background: linear-gradient(180deg,#29208c,#361889,#1a0e5c);
    border-radius: 1.6rem
}

@media (min-width: 62rem) {
    .bonus-activation {
        padding:5rem
    }
}

.bonus-activation__title {
    margin: 0 0 4rem;
    padding: 0 0 2.4rem;
    font-weight: 500;
    font-size: 2rem;
    line-height: 1.5;
    border-bottom: .2rem solid rgba(116,135,134,.4)
}

@media (min-width: 62rem) {
    .bonus-activation__title {
        text-transform:uppercase
    }
}

.bonus-activation__subtitle {
    margin: 0 0 1.5rem;
    color: var(--color-white);
    font-size: 1.8rem
}

.bonus-activation__list {
    display: grid;
    grid-gap: 1.6rem;
    line-height: 2.4rem;
    margin-top: 2rem;
    font-size: 1.4rem;
    line-height: 1.9
}

@media (min-width: 48rem) {
    .bonus-activation__list {
        grid-template-columns:repeat(2,1fr);
        gap: 1rem
    }
}

.bonus-activation__list li {
    position: relative;
    padding-left: 3.6rem
}

.bonus-activation__list li:before {
    position: absolute;
    top: .2rem;
    left: 0;
    display: block;
    width: 2rem;
    height: 2rem;
    background: url(../img/icons/check_circle.svg) no-repeat 50%;
    content: ""
}

.bonus-qa {
    margin-bottom: 2rem
}

@media (min-width: 62rem) {
    .bonus-qa {
        padding:0;
        margin-bottom: 8rem
    }
}

.bonus-qa h2 {
    margin-bottom: 2rem
}

@media (min-width: 62rem) {
    .bonus-qa h2 {
        margin-bottom:7rem
    }
}

.bonus-qa__cards {
    display: grid;
    gap: .8rem
}

@media (min-width: 62rem) {
    .bonus-qa__cards {
        gap:1rem
    }
}

.bonus-qa__card {
    padding: 1.8rem 2rem;
    background-color: var(--color-white);
    border-radius: 1rem;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05)
}

@media (min-width: 62rem) {
    .bonus-qa__card {
        padding:3rem
    }
}

.bonus-qa__card.active .bonus-qa__card-header svg {
    transform: rotate(-90deg)
}

.bonus-qa__card.active .bonus-qa__card-body {
    display: block
}

.bonus-qa__card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer
}

.bonus-qa__card-header h3 {
    margin-bottom: 0;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.25
}

@media (min-width: 62rem) {
    .bonus-qa__card-header h3 {
        font-size:2.4rem
    }
}

.bonus-qa__card-header svg {
    display: block;
    width: 2rem;
    height: 2rem;
    min-width: 2rem;
    min-height: 2rem;
    padding: .5rem;
    transform: rotate(90deg)
}

.bonus-qa__card-body {
    margin-top: 3rem;
    display: none;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.6;
    color: #616161
}

@media (min-width: 62rem) {
    .bonus-qa__card-body {
        font-size:1.6rem;
        line-height: 1.4
    }
}

.another-posts {
    display: grid;
    grid-template-columns: minmax(0,1fr);
    gap: 1rem;
    margin-bottom: 10rem
}

@media (min-width: 48rem) {
    .another-posts {
        grid-template-columns:repeat(2,1fr)
    }
}

.another-posts__title {
    color: var(--color-text);
    font-weight: 500;
    font-size: 5.4rem;
    line-height: 1.1
}

.another-post {
    background: var(--color-white);
    border-radius: 1rem;
    overflow: hidden
}

.another-post__image {
    position: relative;
    padding-bottom: 40%;
    background: var(--color-black);
    overflow: hidden
}

.another-post__image img {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: .5;
    transition: .2s ease-in-out
}

.another-post__title {
    padding: 2rem 2.8rem;
    color: var(--color-text);
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 1.2
}

@media (min-width: 48rem) {
    .another-post__title {
        padding:2.5rem 3.5rem;
        font-size: 2.4rem
    }
}

.reviews-content__btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: .8rem 1.5rem 0;
    padding: 1.55rem 2rem;
    font-weight: 500;
    color: var(--color-primary);
    border: .1rem solid var(--color-primary);
    border-radius: 1rem
}

@media (min-width: 48rem) {
    .reviews-content__btn {
        display:none
    }
}

.reviews-content__btn svg {
    width: 2rem;
    height: 2rem
}

.reviews-content__btn use {
    fill: var(--color-primary)
}

.reviews-header {
    margin-bottom: .8rem
}

@media (min-width: 62rem) {
    .reviews-header {
        margin-bottom:2rem
    }
}

.reviews-header__row {
    display: grid;
    grid-template-columns: repeat(2,calc(50% - 1rem));
    gap: 2rem
}

@media (max-width: 61.98rem) {
    .reviews-header__row {
        gap:.8rem
    }
}

.reviews-header.desktop {
    display: none
}

@media (min-width: 62rem) {
    .reviews-header.desktop {
        display:block
    }
}

.reviews-header.mobile {
    display: block
}

@media (min-width: 62rem) {
    .reviews-header.mobile {
        display:none
    }
}

.reviews-place {
    display: flex;
    align-items: center;
    height: 12.4rem;
    padding: 2.2rem 3.8rem;
    background: var(--color-white);
    border-radius: 1rem;
    box-shadow: 0 .1rem .5rem 0 var(--color-shadow)
}

.reviews-place__logo {
    margin-right: 2.5rem
}

.reviews-place__title {
    margin-bottom: .4rem;
    font-weight: 500;
    font-size: 2rem;
    line-height: 2.4rem
}

.reviews-place__desc {
    color: #999;
    font-size: 1.6rem;
    line-height: 2.4rem
}

.reviews-rating {
    display: flex;
    align-items: center;
    height: 12.4rem;
    padding: 0 3.8rem;
    background: var(--color-white);
    border-radius: 1rem;
    box-shadow: 0 .1rem .5rem 0 var(--color-shadow)
}

.reviews-rating__total {
    display: flex;
    align-items: center;
    padding-right: 3rem;
    border-right: .1rem solid #eee
}

.reviews-rating__grade {
    margin-right: 2.2rem;
    color: #000;
    font-weight: 500;
    font-size: 6.2rem;
    line-height: 1.15
}

.reviews-rating__content {
    display: flex;
    flex-direction: column;
    gap: 1rem 3rem
}

.reviews-rating__cap {
    color: #000;
    font-size: 1.6rem;
    line-height: 1.5
}

.reviews-rating__action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-left: 3rem;
    gap: 1rem 3rem
}

.reviews-rating__action-title {
    color: #000;
    font-weight: 500;
    font-size: 1.6rem;
    line-height: 2.2rem
}

.reviews-header-m {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    align-items: center;
    padding: 2.4rem 2rem;
    background: var(--color-white);
    border-radius: 1rem
}

.reviews-header-m--header {
    display: flex
}

.reviews-header-m--footer {
    border-top: .1rem solid hsla(0,0%,74.1%,.2);
    padding-top: 1.5rem
}

.reviews-header-m--footer .reviews-header-m__rating-stars {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.reviews-header-m--footer .reviews-header-m__rating-stars p {
    margin-bottom: 0
}

.reviews-header-m__place {
    margin-bottom: .8rem
}

.reviews-header-m__place .reviews-place {
    padding: 2rem
}

.reviews-header-m__grade {
    margin-right: 2.3rem;
    color: #000;
    font-weight: 500;
    font-size: 3.8rem;
    line-height: 1.15
}

.reviews-header-m__stars {
    flex: 1 1 0
}

.reviews-header-m__stars-content {
    margin-bottom: .45rem
}

.reviews-header-m__stars-title {
    color: #000;
    font-size: 1.4rem;
    line-height: 2.4rem
}

.reviews-header-m__logo {
    margin-left: auto
}

.reviews-header-m__logo img {
    width: 4.2rem
}

.replaced-text {
    visibility: hidden
}

.replaced-text span {
    display: block;
    color: var(--color-black)
}

.replaced-text.has-replaced {
    visibility: visible
}

@-webkit-keyframes shimmer {
    to {
        transform: translateX(100%)
    }
}

@keyframes shimmer {
    to {
        transform: translateX(100%)
    }
}

.skeleton-box {
    position: relative;
    width: 100%;
    min-height: 1em;
    overflow: hidden;
    background: #dbdbdb
}

.skeleton-box:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.2) 20%,hsla(0,0%,100%,.5) 60%,hsla(0,0%,100%,0));
    transform: translateX(-100%);
    -webkit-animation: shimmer 2s infinite;
    animation: shimmer 2s infinite;
    content: ""
}

.star-rating {
    position: relative;
    width: 10.1rem;
    height: 1.6rem;
    background-image: url(../img/icons/rating/stars-off.svg)
}

.star-rating:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: var(--percent);
    background-image: url(../img/icons/rating/stars-on.svg);
    content: ""
}

.blocks-list {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(28rem,1fr));
    gap: 1rem;
    margin-bottom: 10rem
}

@-webkit-keyframes barberpole {
    to {
        background-position: 100% 100%
    }
}

@keyframes barberpole {
    to {
        background-position: 100% 100%
    }
}

.upload-file {
    display: grid;
    gap: 2rem
}

.upload-file__field {
    display: grid;
    gap: 1.5rem
}

@media (min-width: 48rem) {
    .upload-file__field {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}

@media (min-width: 48rem) {
    .upload-file__list {
        grid-row:1
    }
}

.upload-file__button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .9rem 2.5rem;
    color: var(--color-primary);
    font-size: 1.6rem;
    background-color: #fff;
    border: .1rem solid var(--color-primary);
    border-radius: 1rem;
    transition: .2s ease-in-out
}

.upload-file__button svg {
    margin-right: .5rem
}

.upload-file__button svg path {
    transition: .2s ease-in-out;
    stroke: var(--color-primary)
}

@media (min-width: 48rem) {
    .upload-file__button:hover {
        color:var(--color-primary-text);
        background: var(--color-primary)
    }
}

@media (min-width: 48rem) {
    .upload-file__button:hover svg path {
        stroke:var(--color-primary-text)
    }
}

.upload-file__list {
    display: grid;
    gap: 1rem
}

.upload-file__item {
    position: relative;
    padding: .9rem;
    border: .1rem dashed #748786;
    border-radius: 1rem;
    transition: .2s ease-in-out
}

.upload-file__item:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    background-image: repeating-linear-gradient(-45deg,transparent,transparent 1rem,rgba(0,0,0,.1) 0,rgba(0,0,0,.1) 2rem);
    background-size: 200% 200%;
    opacity: 0;
    transition: .2s ease-in-out;
    -webkit-animation: barberpole 10s linear infinite;
    animation: barberpole 10s linear infinite;
    content: ""
}

.upload-file__item.is-loading {
    color: #748786
}

.upload-file__item.is-loading:after {
    z-index: 2;
    opacity: 1
}

.upload-file__item.is-loading svg path {
    stroke: #748786
}

.upload-file__item-content {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center
}

.upload-file__item-icon {
    display: flex;
    align-items: center;
    margin-right: 1rem
}

.upload-file__item-icon svg path {
    transition: .2s ease-in-out
}

.upload-file__item-name {
    width: 10rem;
    margin-right: auto;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

@media (min-width: 48rem) {
    .upload-file__item-name {
        width:20rem
    }
}

@media (min-width: 62rem) {
    .upload-file__item-name {
        width:30rem
    }
}

@media (min-width: 90rem) {
    .upload-file__item-name {
        width:40rem
    }
}

.upload-file__item-size {
    margin-right: 2rem
}

.upload-file__item-remove {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    background: none;
    border: none
}

@media (min-width: 48rem) {
    .upload-file__item-remove:hover {
        color:var(--color-primary);
        border-color: var(--color-primary)
    }
}

.upload-file__item-remove svg path {
    transition: .2s ease-in-out
}

.vacancy-card {
    display: grid;
    gap: 1.2rem;
    background-color: var(--color-white);
    border-radius: 1rem;
    padding: 2rem;
    box-shadow: 0 .1rem 0 0 rgba(0,0,0,.05)
}

@media (min-width: 62rem) {
    .vacancy-card {
        grid-template-columns:1.5fr 1.25fr 1fr 22rem;
        align-items: center;
        gap: 3rem
    }
}

.vacancy-card__title {
    font-size: 2rem;
    line-height: 1.45;
    font-weight: 500
}

.vacancy-card__title img {
    display: inline-block;
    vertical-align: text-bottom
}

.vacancy-card .btn {
    margin-top: .8rem
}

.the-select {
    position: relative
}

.the-select__field {
    position: relative;
    width: 100%;
    height: 5.2rem;
    padding: 1.7rem 1.6rem;
    color: var(--color-onyx);
    font-weight: 400;
    background-color: var(--color-white);
    border: .1rem solid rgba(116,135,134,.3);
    border-radius: 1rem;
    outline: none;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.the-select__field.is-active .the-select__value {
    color: var(--color-black)
}

.the-select__value {
    padding-right: 1rem;
    color: var(--color-gray);
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 1.4rem
}

.the-select__icon {
    position: absolute;
    top: 1.4rem;
    right: 1rem;
    width: 2rem;
    height: 2rem;
    transition: .2s ease-in-out
}

.the-select__icon svg {
    width: 100%
}

.the-select__drop {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    z-index: 99;
    max-height: 30rem;
    margin-top: .8rem;
    overflow: auto;
    background-color: var(--color-white);
    border: .1rem solid var(--color-grey);
    border-radius: 1rem;
    box-shadow: 0 1px 0 rgba(0,0,0,.05)
}

@media screen and (min-width: 1000px) {
    .the-select__drop {
        max-height:20vh
    }
}

.the-select__list {
    overflow: auto;
    height: 100%
}

.the-select__list::-webkit-scrollbar {
    width: .4rem;
    background-color: #f9f9f9
}

.the-select__list::-webkit-scrollbar-thumb {
    background-color: hsla(0,0%,69.8%,.2)
}

.the-select__list::-webkit-scrollbar-track {
    width: 0;
    height: 0;
    background-color: transparent
}

.the-select__item {
    padding: 1.6rem 2.5rem;
    color: var(--color-gray);
    font-weight: 400;
    cursor: pointer;
    font-size: 1.4rem
}

.the-select__item:hover {
    color: #7367f0;
    background-color: #f5f7f7
}

.the-select__item.is-active {
    color: var(--color-black)
}

.the-select.is-opened .the-select__icon {
    transform: rotate(180deg)
}

.the-select.is-opened .the-select__field {
    border-color: var(--color-grey);
    border-radius: 1rem;
    box-shadow: 0 1px 0 rgba(0,0,0,.05)
}

.the-select {
    position: relative
}

.the-select__field {
    position: relative;
    width: 100%;
    height: 5.2rem;
    padding: 1.7rem 1.6rem;
    color: var(--color-onyx);
    font-weight: 400;
    background-color: var(--color-white);
    border: .1rem solid rgba(116,135,134,.3);
    border-radius: 1rem;
    outline: none;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.the-select__field.is-active .the-select__value {
    color: var(--color-black)
}

.the-select__value {
    padding-right: 1rem;
    color: var(--color-gray);
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 1.4rem
}

.the-select__icon {
    position: absolute;
    top: 1.4rem;
    right: 1rem;
    width: 2rem;
    height: 2rem;
    transition: .2s ease-in-out
}

.the-select__icon svg {
    width: 100%
}

.the-select__drop {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    z-index: 99;
    max-height: 30rem;
    margin-top: .8rem;
    overflow: auto;
    background-color: var(--color-white);
    border: .1rem solid var(--color-grey);
    border-radius: 1rem;
    box-shadow: 0 1px 0 rgba(0,0,0,.05)
}

@media screen and (min-width: 1000px) {
    .the-select__drop {
        max-height:20vh
    }
}

.the-select__list {
    overflow: auto;
    height: 100%
}

.the-select__list::-webkit-scrollbar {
    width: .4rem;
    background-color: #f9f9f9
}

.the-select__list::-webkit-scrollbar-thumb {
    background-color: hsla(0,0%,69.8%,.2)
}

.the-select__list::-webkit-scrollbar-track {
    width: 0;
    height: 0;
    background-color: transparent
}

.the-select__item {
    padding: 1.6rem 2.5rem;
    color: var(--color-gray);
    font-weight: 400;
    cursor: pointer;
    font-size: 1.4rem
}

.the-select__item:hover {
    color: #7367f0;
    background-color: #f5f7f7
}

.the-select__item.is-active {
    color: var(--color-black)
}

.the-select.is-opened .the-select__icon {
    transform: rotate(180deg)
}

.the-select.is-opened .the-select__field {
    border-color: var(--color-grey);
    border-radius: 1rem;
    box-shadow: 0 1px 0 rgba(0,0,0,.05)
}

.err_field {
    border: 1px solid red!important;
}