:root {
    --font-main: "MuseoSansCyrl", sans-serif;
    --c-white: #FFFFFF;
    --c-black: #000000;
    --c-ui-black: #333;
    --c-ui-gray: #F2F2F2;
    --c-ui-blue: #322E91;
    --c-ui-cian: #79CFF6;
    --c-ui-darkGray: #939598;
    --c-ui-darkBlack: #091822;
    --c-ui-red: #E51416;
    --c-ui-lightGray: #E9ECEF;
    --transition: ease .3s;
    --size: .1rem;
    --header-height: 14.2rem;
    --container: 152rem;
    --container-pd: calc(var(--size) * 30);
    --container-width: calc(var(--container) + (var(--container-pd) * 2))
}

@font-face {
    font-family: "MuseoSansCyrl";
    src: url("MuseoSansCyrl-300.eot");
    src: local("☞MuseoSansCyrl-300"), local("MuseoSansCyrl-300"), url("../../fonts/MuseoSansCyrl-300.eot?#iefix") format("embedded-opentype"), url("../../fonts/MuseoSansCyrl-300.woff2") format("woff2"), url("../../fonts/MuseoSansCyrl-300.woff") format("woff"), url("../../fonts/MuseoSansCyrl-300.ttf") format("truetype");
    font-weight: 300;
    font-style: normal
}

@font-face {
    font-family: "MuseoSansCyrl";
    src: url("MuseoSansCyrl-500.eot");
    src: local("☞MuseoSansCyrl-500"), local("MuseoSansCyrl-500"), url("../../fonts/MuseoSansCyrl-500.eot?#iefix") format("embedded-opentype"), url("../../fonts/MuseoSansCyrl-500.woff2") format("woff2"), url("../../fonts/MuseoSansCyrl-500.woff") format("woff"), url("../../fonts/MuseoSansCyrl-500.ttf") format("truetype");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: "MuseoSansCyrl";
    src: url("MuseoSansCyrl-700.eot");
    src: local("☞MuseoSansCyrl-700"), local("MuseoSansCyrl-700"), url("../../fonts/MuseoSansCyrl-700.eot?#iefix") format("embedded-opentype"), url("../../fonts/MuseoSansCyrl-700.woff2") format("woff2"), url("../../fonts/MuseoSansCyrl-700.woff") format("woff"), url("../../fonts/MuseoSansCyrl-700.ttf") format("truetype");
    font-weight: 700;
    font-style: normal
}

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

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

caption, th, td {
    font-weight: normal;
    text-align: left
}

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

img {
    display: block;
    max-width: 100%;
    height: auto
}

strong, b, cite {
    font-weight: bold
}

dfn, cite, em, i, blockquote {
    font-style: italic
}

abbr, acronym {
    border-bottom: 1px dotted #e0e0e0;
    cursor: help
}

mark, ins {
    text-decoration: none
}

select {
    max-width: 100%
}

button, input, optgroup, select, textarea {
    font-family: inherit;
    margin: 0
}

button, input {
    overflow: visible
}

button, select {
    text-transform: none
}

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

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

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

legend {
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox], [type=radio] {
    padding: 0
}

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

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

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

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

button, input[type=submit] {
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none
}

[hidden], template {
    display: none
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

h1, .h1 {
    font-size: 6.6rem;
    font-weight: 300;
    line-height: 1.1
}

h2, .h2 {
    font-size: 5.4rem;
    font-weight: 400;
    line-height: 1.1
}

h1 a, h2 a, h3 a, h4 a, h5 a, p a, span a {
    font-size: inherit;
    line-height: inherit
}

p, span, a, li {
    font-size: 2.1rem;
    font-weight: 300
}

.w--300 {
    font-weight: 300 !important
}

ul:not([class]), ol:not([class]) {
    padding-left: 3rem
}

ul:not([class]) li, ol:not([class]) li {
    margin-bottom: 1rem
}

ul:not([class]) li:last-of-type, ol:not([class]) li:last-of-type {
    margin-bottom: 0
}

.small-title {
    margin-bottom: 2.5rem;
    font-size: 2.4rem;
    font-weight: 400
}

html {
    line-height: 1.15;
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%
}

body {
    font-family: var(--font-main);
    overflow-x: hidden;
    font-weight: 400;
    color: var(--c-ui-black);
    background-color: var(--c-white);
    line-height: normal
}

body.overflow-hidden {
    overflow: hidden;
    -ms-touch-action: none;
    touch-action: none
}

@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");
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #007aff
}

:host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block
}

.swiper-vertical>.swiper-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}

.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
    -webkit-transform: translate3d(0px, 0, 0);
    transform: translate3d(0px, 0, 0);
    height: auto;
}

.swiper-horizontal {
    -ms-touch-action: pan-y;
    touch-action: pan-y
}

.swiper-vertical {
    -ms-touch-action: pan-x;
    touch-action: pan-x
}

.swiper-slide {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    display: block
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-transition-property: height, -webkit-transform;
    transition-property: height, -webkit-transform;
    transition-property: transform, height;
    transition-property: transform, height, -webkit-transform
}

.swiper-backface-hidden .swiper-slide {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    -webkit-perspective: 1200px;
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

.swiper-3d {
    -webkit-perspective: 1200px;
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide {
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
    -ms-scroll-snap-type: none;
    scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper::before {
    content: "";
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-ordinal-group: 10000;
    -ms-flex-order: 9999;
    order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-start: var(--swiper-centered-offset-before);
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper::before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-before: var(--swiper-centered-offset-before);
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper::before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    -webkit-transform-origin: 50%;
    -ms-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: rgba(0, 0, 0, 0)
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    -webkit-animation: swiper-preloader-spin 1s infinite linear;
    animation: swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@-webkit-keyframes swiper-preloader-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes swiper-preloader-spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size)
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size)
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: var(--swiper-navigation-top-offset, 50%);
    width: calc(var(--swiper-navigation-size)/44*27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - var(--swiper-navigation-size)/2);
    z-index: 10;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
    display: none !important
}

.swiper-button-next svg, .swiper-button-prev svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center
}

.swiper-rtl .swiper-button-next svg, .swiper-rtl .swiper-button-prev svg {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg)
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 10px);
    right: auto
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto
}

.swiper-button-lock {
    display: none
}

.swiper-button-next:after, .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    content: "prev"
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    content: "next"
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    -webkit-transition: .3s opacity;
    transition: .3s opacity;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: var(--swiper-pagination-bottom, 8px);
    top: var(--swiper-pagination-top, auto);
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transform: scale(0.33);
    -ms-transform: scale(0.33);
    transform: scale(0.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    -webkit-transform: scale(0.66);
    -ms-transform: scale(0.66);
    transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    -webkit-transform: scale(0.33);
    -ms-transform: scale(0.33);
    transform: scale(0.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    -webkit-transform: scale(0.66);
    -ms-transform: scale(0.66);
    transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    -webkit-transform: scale(0.33);
    -ms-transform: scale(0.33);
    transform: scale(0.33)
}

.swiper-pagination-bullet {
    width: .8rem;
    height: .8rem;
    display: inline-block;
    border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
    background: var(--c-ui-cian)
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    background: #495057
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical>.swiper-pagination-bullets {
    right: var(--swiper-pagination-right, 8px);
    left: var(--swiper-pagination-left, auto);
    top: 50%;
    -webkit-transform: translate3d(0px, -50%, 0);
    transform: translate3d(0px, -50%, 0)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 8px
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    -webkit-transition: .2s transform, .2s top;
    transition: .2s transform, .2s top
}

.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 6px)
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: .2s transform, .2s left;
    transition: .2s transform, .2s left
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    -webkit-transition: .2s transform, .2s right;
    transition: .2s transform, .2s right
}

.swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit)
}

.swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0
}

.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical>.swiper-pagination-progressbar {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    -ms-touch-action: none;
    touch-action: none;
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1))
}

.swiper-scrollbar-disabled>.swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important
}

.swiper-horizontal>.swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2*var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical>.swiper-scrollbar {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2*var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container>canvas, .swiper-zoom-container>img, .swiper-zoom-container>svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move;
    -ms-touch-action: none;
    touch-action: none
}

.swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-free-mode>.swiper-wrapper {
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-grid>.swiper-wrapper {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.swiper-grid-column>.swiper-wrapper {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.swiper-fade.swiper-free-mode .swiper-slide {
    -webkit-transition-timing-function: ease-out;
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    -webkit-transition-property: opacity;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active {
    pointer-events: auto
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    -webkit-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    -webkit-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: .6;
    z-index: 0
}

.swiper-cube .swiper-cube-shadow:before {
    content: "";
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    -webkit-filter: blur(50px);
    filter: blur(50px)
}

.swiper-cube .swiper-slide-next+.swiper-slide {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-creative .swiper-slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    -webkit-transition-property: opacity, height, -webkit-transform;
    transition-property: opacity, height, -webkit-transform;
    transition-property: transform, opacity, height;
    transition-property: transform, opacity, height, -webkit-transform
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    -webkit-transform-origin: center bottom;
    -ms-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden
}

.input-wrapper {
    position: relative;
    width: 100%
}

.input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    border: 1px solid #e9ecef;
    background-color: rgba(0, 0, 0, 0);
    -webkit-transition: var(--transition);
    transition: var(--transition);
    border-radius: .5rem;
    font-size: 1.4rem;
    font-weight: 400;
    display: block;
    width: 100%;
    padding: 1.4rem 1.6rem
}

.input::-webkit-input-placeholder {
    font-size: inherit;
    color: #adb5bd
}

.input::-moz-placeholder {
    font-size: inherit;
    color: #adb5bd
}

.input:-ms-input-placeholder {
    font-size: inherit;
    color: #adb5bd
}

.input::-ms-input-placeholder {
    font-size: inherit;
    color: #adb5bd
}

.input::placeholder {
    font-size: inherit;
    color: #adb5bd
}

textarea {
    resize: none;
    height: 12rem
}

.policy {
    cursor: pointer;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-item-align: start;
    align-self: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.policy input {
    position: absolute;
    z-index: -1;
    opacity: 0;
    left: 0;
    top: 0;
    display: none
}

.policy input:checked+.checkbox::after {
    opacity: 1
}

.policy .checkbox {
    cursor: pointer;
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.policy .checkbox::before {
    content: "";
    width: 2rem;
    height: 2rem;
    border: 1px solid rgba(0, 0, 0, 0);
    background-color: var(--c-ui-blue);
    display: inline-block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    margin-right: .8rem;
    border-radius: .5rem;
    -webkit-transition: var(--transition);
    transition: var(--transition)
}

.policy .checkbox::after {
    content: "";
    position: absolute;
    left: .2rem;
    opacity: 0;
    width: 1.6rem;
    height: 1.6rem;
    background: url(../../img/check.svg) no-repeat;
    background-size: cover;
    background-position: 50% 50%;
    -webkit-transition: var(--transition);
    transition: var(--transition);
    z-index: 2
}

.policy p {
    color: #6c757d;
    font-size: 1.4rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1
}

.policy p a {
    font: inherit;
    text-decoration: underline
}

.button {
    background: none;
    padding: 0;
    cursor: pointer;
    position: relative;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: var(--transition);
    transition: var(--transition);
    font-size: 1.6rem;
    font-weight: 400;
    padding: 1.2rem 2rem;
    min-width: 20rem;
    border-radius: 5rem
}

.button.button--blue {
    background-color: var(--c-ui-blue);
    color: var(--c-white)
}

.button.button--gray {
    font-size: 2.1rem;
    background-color: var(--c-ui-lightGray);
    color: var(--c-ui-blue)
}
.button:hover {
    transform:scale(1.03);
    background-color:#d9dee3;
}
.button svg {
    margin-left: 1rem
}

main {
    min-height: 100vh;
    padding-top: var(--header-height)
}

.modal-thanks {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 15;
    padding: 0 2rem;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: ease-in-out .5s;
    transition: ease-in-out .5s
}

.modal-thanks .modal-close {
    right: 2rem;
    top: 2rem;
    position: absolute;
    width: 2.5rem;
    height: 2.5rem;
    cursor: pointer
}

.modal-thanks .modal-close svg {
    fill: #fff
}

.modal-thanks .modal-box {
    position: relative;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 3.5rem;
    background: #322e91;
    padding: 4rem;
    width: 100%;
    max-width: 72rem;
    z-index: 2;
    color: #fff;
    text-align: center
}

.modal-thanks .modal-box p, .modal-thanks .modal-box h3, .modal-thanks .modal-box h2 {
    font-weight: 300
}

.modal-thanks .modal-box .section-title {
    color: #fff;
    margin-bottom: 3rem
}

.modal-thanks .modal-overlay {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .5)
}

.modal-thanks.active {
    opacity: 1;
    visibility: visible
}

section:not(:first-of-type) {
    padding: 5rem 0
}

.container-h, .container-p, .container-f {
    width: 100%;
    margin: 0 auto;
    max-width: var(--container-width);
    padding: 0 var(--container-pd)
}

@media(max-width: 992px) {
    .container-h, .container-p, .container-f {
        padding: 0 2rem
    }
}

.gray--bg {
    background-color: var(--c-ui-gray)
}

.container--left {
    padding-right: calc((100% - var(--container-width))/2 + var(--container-pd))
}

.container--right {
    padding-left: calc((100% - var(--container-width))/2 + var(--container-pd))
}

.visually-hidden {
    position: absolute;
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0;
    border: 0;
    height: 1px;
    width: 1px;
    overflow: hidden
}

.hidden {
    visibility: hidden
}

.none {
    display: none
}

.row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.row.align-baseline {
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline
}

.row.align-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.row.align-start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.row.align-end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.row.md-2 {
    margin-left: -2rem;
    margin-right: 2rem
}

.row .col {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    max-width: 100%
}

@media(min-width: 568px)and (max-aspect-ratio: 13/9), (min-width: 668px)and (min-height: 416px), (min-width: 980px) {
    .row .col {
        padding-left: 2rem;
        padding-right: 2rem
    }
}

.mt-auto {
    margin-top: auto
}

.mr-auto {
    margin-left: auto
}

.mb-auto {
    margin-bottom: auto
}

.ml-auto {
    margin-left: auto
}

.page-header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: var(--header-height);
    background-color: var(--c-ui-blue);
    z-index: 20
}

.page-header .header-wrapper {
    height: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr
}

.page-header .header-menu {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2.5rem
}

.page-header .header-menu a {
    font-size: 1.8rem;
    font-weight: 300;
    -webkit-transition: var(--transition);
    transition: var(--transition);
    color: var(--c-white);
    padding: 1rem 0;
    display: inline-block
}

.page-header .logo-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 3rem
}

.page-header .header-action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.page-header .header-phones {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem
}

.page-header .header-phones a {
    color: var(--c-white);
    -webkit-transition: var(--transition);
    transition: var(--transition);
    font-size: 1.8rem;
    white-space: nowrap
}

.page-header .burger-menu {
    width: 3.7rem;
    height: 2.6rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    margin-left: 3.5rem;
    gap: 1rem;
    cursor: pointer
}

.page-header .burger-menu div {
    background-color: var(--c-white);
    width: 100%;
    height: .2rem;
    -webkit-transition: var(--transition);
    transition: var(--transition)
}

.page-header .burger-menu.active div:nth-child(1) {
    -webkit-transform: rotate(45deg) translate(10px, 9px);
    -ms-transform: rotate(45deg) translate(10px, 9px);
    transform: rotate(45deg) translate(10px, 9px)
}

.page-header .burger-menu.active div:nth-child(2) {
    opacity: 0
}

.page-header .burger-menu.active div:nth-child(3) {
    -webkit-transform: rotate(-45deg) translate(8px, -7px);
    -ms-transform: rotate(-45deg) translate(8px, -7px);
    transform: rotate(-45deg) translate(8px, -7px)
}

.header-panel {
    position: fixed;
    left: 0;
    top: var(--header-height);
    width: 100%;
    background-color: var(--c-white);
    -webkit-box-shadow: 0 .4rem 5rem 0 rgba(0, 0, 0, .25);
    box-shadow: 0 .4rem 5rem 0 rgba(0, 0, 0, .25);
    -webkit-transition: var(--transition);
    transition: var(--transition);
    opacity: 0;
    visibility: hidden;
    padding: 8rem 0 6rem 0;
    z-index: 20
}

.header-panel.active {
    opacity: 1;
    visibility: visible
}

.header-panel .panel-phones {
    list-style: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1rem;
    display: none;
    margin-bottom: 3rem
}

.header-panel .panel-phones a {
    font-size: 1.8rem
}

.header-panel .panel-nav {
    display: grid;
    grid-template-columns: auto auto auto;
    gap: 5rem;
    width:100%;
    margin-bottom: 10rem
}

.header-panel .nav-list {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2.5rem
}

.header-panel .nav-list a {
    -webkit-transition: var(--transition);
    transition: var(--transition);
    font-size: 1.8rem;
    font-weight: 300
}

.header-panel .nav-list .big-link {
    text-transform: uppercase;
    font-weight: 700
}

.header-panel .vendor {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
    max-width: 29rem
}

.header-panel .vendor span {
    font-size: 1.8rem;
    font-weight: 300
}

.header-panel .overflow-container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-height: 99%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    overflow-y: visible;
    overflow-x: hidden;
    padding-right: .5rem
}

@media(max-width: 1200px) {
    .page-header .header-phones a, .page-header .header-menu a {
        font-size: 1.4rem
    }
}

@media(max-width: 992px) {
    .header-panel {
        padding: 6rem 0;
        height: 100%
    }

    .header-panel .container-h {
        height: 100%
    }

    .header-panel .overflow-container {
        padding-bottom: 6rem
    }

    .header-panel .panel-nav {
        margin-bottom: 5rem;
        grid-template-columns: 1fr;
        gap: 3rem
    }

    .header-panel .vendor {
        gap: 1rem
    }

    .header-panel .nav-list {
        gap: 1.5rem
    }

    .page-header .header-phones {
        gap: 1rem
    }




}

@media(max-width: 576px) {
    .page-header .header-logo {
        max-width: 15rem
    }

    .page-header .header-phones {
        display: none
    }

    .header-panel .panel-phones {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .header-panel .vendor {
        max-width: 20rem
    }

    .header-panel .nav-list a {
        font-size: 1.6rem
    }
}

.page-footer {
    padding: 6rem 0;
    background-color: var(--c-ui-blue);
    color: var(--c-white)
}

.page-footer .footer-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 6.5rem
}

.page-footer .footer-header .footer-logo {
    max-width: 37rem;
    margin: 0 3rem
}

.page-footer .footer-body {
    margin-bottom: 9rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 3rem
}

.page-footer .footer-body .footer-nav-list {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(4, minmax(auto, 21rem));
    grid-column-gap: 2.5rem;
    grid-row-gap: 2.5rem
}

.page-footer .footer-body .footer-nav-list a {
    font-size: 1.8rem;
    -webkit-transition: var(--transition);
    transition: var(--transition);
    white-space: nowrap
}

.page-footer .footer-body .footer-address-info {
    margin-bottom: 3.5rem
}

.page-footer .footer-body .footer-address-info .address-title {
    margin-bottom: 1.5rem;
    display: block
}

.page-footer .footer-body .footer-address-info p, .page-footer .footer-body .footer-address-info address {
    font-size: 1.8rem;
    font-weight: 400;
    max-width: 36rem
}

.page-footer .footer-body .footer-phone-list {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem
}

.page-footer .footer-body .footer-phone-list a {
    font-size: 1.8rem;
    font-weight: 400
}

.page-footer .footer-basement {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 2rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.page-footer .footer-basement p, .page-footer .footer-basement span, .page-footer .footer-basement a {
    font-size: 1.8rem
}

.page-footer .footer-basement a {
    text-decoration: underline
}

.page-footer .social-icons {
    margin-bottom: 5%;
}

.page-footer .social-icons ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    gap: 15px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.page-footer .social-icons ul li {
    margin-bottom: 0;
}

.page-footer .social-icons ul svg {
    border: 1px solid white;
    border-radius: 4px;
    padding: 20%;
}

@media(max-width: 1200px) {
    .page-footer .footer-body {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 5rem
    }

    .page-footer .footer-body .right-col {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 2rem;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .page-footer .footer-body .right-col .footer-address-info {
        margin-bottom: 0
    }
}

@media(max-width: 992px) {
    .page-footer a, .page-footer p, .page-footer span, .page-footer address {
        font-size: 1.6rem !important
    }
}

@media(max-width: 768px) {
    .page-footer {
        padding: 4rem 0
    }

    .page-footer .footer-header {
        margin-bottom: 5rem
    }

    .page-footer .footer-header .footer-logo {
        max-width: 25rem
    }

    .page-footer .footer-body {
        margin-bottom: 6rem
    }

    .page-footer .footer-body .footer-nav-list {
        grid-template-columns: repeat(2, minmax(auto, auto))
    }
}

@media(max-width: 576px) {
    .page-footer a, .page-footer p, .page-footer span, .page-footer address {
        font-size: 1.4rem !important
    }

    .page-footer .footer-body .footer-nav-list {
        gap: 1.5rem
    }
}

.showcase {
    margin-bottom: 0;
}

.hero {
    padding: 5rem 0;
}

@media (max-width: 1200px) {
    .hero {
        padding-bottom: 0;
    }
}

.hero .hero-carousel {
    width: 100%;
    height: fit-content;
    position: relative
}

.hero .hero-carousel::after {
    content: "";
    background-color: #e9ecef;
    position: absolute;
    height: 100%;
    width: calc(90% - var(--container-width)/2);
    right: 0;
    top: 0;
    border-radius: 1.5rem;
    z-index: -1;
    display:none;
}

.hero .hero-card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    flex-direction:column;
    width: 100%;
    position: relative;
    z-index: 2;
    gap: 2rem
}

.hero .hero-card .hero-img{
    text-align:center;
    width: 100%;
    height: auto;
    object-fit:contain;
}

.hero .hero-card a {
    height: 100%;
    width: 100%;
    display: block;
}

.hero .hero-card .hero-img.mobile--img {
    display: none;
}
.hero .hero-card .text-col {
    width: 100%;
    max-width: 70rem;
    padding: 8rem 0;
    padding-top: 14rem
}

.hero .hero-card .text-col h1, .hero .hero-card .text-col h2 {
    margin-bottom: 6.5rem
}

.hero .hero-card .img-col {
    width: 100%;
    padding-right: 3rem
}

.hero .hero-card .img-col img {
    position: relative;
    margin: 5rem 0
}

.hero .swiper-pagination {
    margin-left: -5%
}

.hero .nav-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    left: 0;
    bottom: 0;
    gap: 1.5rem;
    z-index: 20
}

.hero .nav-container .swiper-button-next, .hero .nav-container .swiper-button-prev {
    position: relative;
    left: 0;
    right: 0;
    top: 0;
    width: 2.4rem;
    height: 2.4rem;
    margin-top: 0
}

.hero .nav-container .swiper-button-next::after, .hero .nav-container .swiper-button-prev::after {
    display: none
}

.hero .nav-container .swiper-button-next svg, .hero .nav-container .swiper-button-prev svg {
    display: block
}

.about {
    padding-bottom: 3rem !important;
}

.about .about-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 8rem
}

.about .about-container .img-col {
    width: 100%;
    height: auto;
    display: block;
    margin-bottom: 3rem;
}

.about .about-container .text-col {
    max-width: 57rem
}

.about .about-advantages {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2.5rem;
    margin-bottom: 7.5rem
}

.about .about-advantages .top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    border-bottom: 1px solid var(--c-ui-cian);
    color: var(--c-ui-cian);
    height: 13rem
}

.about .about-advantages .top .title {
    line-height: .75;
    font-size: 7.6rem;
    font-weight: 300
}

.about .about-advantages .top small {
    font-size: 4rem;
    margin-left: .5rem
}

.about .about-advantages .top .icon {
    height: 6rem;
    margin-bottom: 1rem
}

.showcase {
    padding: 5rem 0;
    overflow: hidden
}

.showcase .showcase-pagination {
    display: none
}

.showcase .carousel-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: flex-start;
    -ms-flex-align: flex-start;
    align-items: flex-start;
    position: relative;
    height: 54rem;
    gap: 2.5rem
}

.showcase .showcase-carousel {
    height: 100%;
    width: 100%;
    overflow: visible;
    padding-right: 17%
}

.showcase .title-box {
    border-radius: 4rem;
    padding: 4rem 4rem 4rem 3rem;
    width: 100%;
    max-width: 44rem;
    color: var(--c-white);
    height: 100%
}

.showcase .title-box .h2 {
    margin-right: auto;
    white-space: nowrap; /* Запрещает перенос строки */
    margin-bottom: 2.5rem;
    font-size:4rem;
    position: relative;
    z-index: 2
}

.showcase .title-box p {
    position: relative;
    z-index: 2
}

.title-link {
    border-radius: 4rem;
}

.title-link:hover {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.4);
    transition: all 0.3s ease-in-out;
}

.showcase .title-box.blue--bg {
    background-color: var(--c-ui-blue)
}

.showcase .title-box.black--bg {
    background-color: var(--c-ui-black)
}

.showcase .title-box.red--bg {
    background-color: var(--c-ui-red)
}

.showcase .title-box.cian--bg {
    background-color: var(--c-ui-cian)
}

.showcase .title-box.gray--bg {
    background-color: #939598
}

.showcase .title-box::before {
    content: "";
    background-color: inherit;
    position: absolute;
    height: 100%;
    width: calc(80% - var(--container-width)/2);
    left: -31%;
    top: 0;
    border-radius: 1.5rem;
    z-index: 1
}

.showcase .slider {
    height: 100%;
    overflow: hidden;
    width: 100%
}

.showcase .card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: var(--c-white);
    border-radius: 3.5rem;
    padding: 3.5rem;
    height: 100%;
    width: 100%
}

.showcase .card .card-img {
    margin-bottom: 1.5rem;
    margin-left: auto;
    margin-right: auto;
    height: 29rem;
    width: auto
}

.showcase .card .card-title {
    font-size: 2.4rem;
    font-weight: 700;
    margin-bottom: 4.5rem
}

.showcase .card .button {
    margin-top: auto;
    -ms-flex-item-align: start;
    align-self: flex-start
}

.advantages {
    overflow: hidden;
    padding-top: 0 !important
}

.advantages .h2 {
    margin-bottom: 5rem
}

.advantages .advantages-list {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 2.4rem;
    position: relative
}

.advantages .advantages-list::before {
    content: "";
    position: absolute;
    height: 100%;
    background-color: var(--c-ui-blue);
    z-index: 2;
    width: calc(100% - var(--container-width)/2);
    left: -35%;
    top: 0;
    border-radius: 1.5rem
}

.advantages .advantages-list::after {
    content: "";
    position: absolute;
    height: 100%;
    background-color: var(--c-ui-blue);
    z-index: 2;
    width: calc(100% - var(--container-width)/2);
    right: -33%;
    top: 0;
    border-radius: 1.5rem
}

.advantages .advantages-list .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2.5rem;
    border-radius: 1.5rem;
    min-height: 30rem;
    height: 100%;
    padding: 1.1rem 2.4rem 2.4rem 2.4rem;
    color: var(--c-white);
    position: relative;
    z-index: 3
}

.advantages .advantages-list .wrapper .icon {
    max-width: 6.8rem
}

.advantages .advantages-list .wrapper .counter {
    margin-left: auto;
    font-size: 5rem;
    font-weight: 300;
    color: #fff;
    opacity: .25
}

.advantages .advantages-list .wrapper p {
    font-size: 1.8rem
}

.advantages .advantages-list .wrapper.blue--bg {
    background-color: var(--c-ui-blue)
}

.advantages .advantages-list .wrapper.black--bg {
    background-color: var(--c-ui-black)
}

.advantages .advantages-list .wrapper.red--bg {
    background-color: var(--c-ui-red)
}

.advantages .advantages-list .wrapper.cian--bg {
    background-color: var(--c-ui-cian)
}

.advantages .advantages-list .wrapper.gray--bg {
    background-color: #939598
}

.videos {
    padding-top: 10rem;
    padding-bottom: 10rem !important
}

.company-video {
    padding-bottom: 0 !important;
}

.videos .h2 {
    margin-bottom: 2rem
}

.videos .videos-list {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.4rem;
}

.videos .videos-list .wrapper {
    position: relative;
    height: 52rem
}

.videos .videos-list .wrapper .video {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden
}

.videos .videos-list .wrapper .video-poster {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    cursor: pointer
}

.videos .videos-list .wrapper .video-poster .video-poster-play {
    border-radius: 50%;
    left: 50%;
    top: 50%;
    opacity: 1;
    width: 17rem;
    height: 17rem;
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: .3s;
    transition: .3s;
    z-index: 3;
    pointer-events: none
}

.videos .videos-list .wrapper .video-poster .video-poster-play svg {
    display: block;
    width: 100%;
    height: 100%
}

.videos .videos-list .wrapper .video-poster .video-poster-img {
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.videos .videos-list .wrapper .video-poster::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: rgba(0, 0, 0, .3)
}

.videos .videos-list .wrapper iframe, .videos .videos-list .wrapper video {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.videos .button-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.reviews {
    padding: 3rem 0;
}

.reviews .swiper-pagination {
    position: relative !important;
    bottom: 0 !important;
    margin-top: 4.5rem
}

.reviews .h2 {
    margin-bottom: 2rem
}

.reviews .reviews-carousel {
    padding-top: 3rem
}

.reviews .review-card {
    padding-top: 5rem
}

.reviews .review-card .inner {
    position: relative;
    background-color: var(--c-white);
    border-radius: 1.5rem;
    padding: 2.6rem 2.3rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center
}

.reviews .review-card .inner p {
    font-size: 1.6rem
}

.reviews .review-card .inner .user-icon {
    position: relative;
    width: 8rem;
    height: 8rem;
    border-radius: 50%;
    background-color: var(--c-white);
    -webkit-filter: drop-shadow(0px 0px 25px rgba(0, 0, 0, 0.15));
    filter: drop-shadow(0px 0px 25px rgba(0, 0, 0, 0.15));
    margin-top: -7rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden;
    margin-bottom: 2.5rem
}

.reviews .review-card .inner .user-icon img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2
}

.reviews .review-card .inner .user-icon::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 4.8rem;
    height: 4.8rem;
    background: url(../../img/no-icon.svg) center no-repeat;
    background-size: contain
}

.reviews .review-card .inner .review-rating {
    width: 15rem;
    margin: 0 auto;
    margin-bottom: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.reviews .review-card .inner .user-name {
    padding-top: 2rem;
    margin-top: auto;
    font-size: 1.6rem;
    font-weight: 700
}

.callback {
    padding: 10rem 0 !important
}

.callback .h2 {
    margin-bottom: 1rem
}

.callback p {
    font-size: 1.6rem;
    font-weight: 400
}

.callback .callback-container {
    background-color: var(--c-white);
    -webkit-box-shadow: 0px 4px 120px 0px rgba(33, 37, 41, .08);
    box-shadow: 0px 4px 120px 0px rgba(33, 37, 41, .08);
    border-radius: 3.5rem;
    max-width: 80rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    padding: 2.5rem 11rem
}

.callback .callback-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    padding: 2.5rem 0;
    gap: 1rem
}

.callback .callback-form .button {
    margin-top: 1.5rem;
    margin-bottom: .5rem
}

.callback .inputs-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: .8rem
}

.callback .policy-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}
.docs--carousel {
    margin: 5rem 0
}

.doc-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}

.doc-item .title {
    font-size: 1.8rem;
    font-weight: 600;
}
.doc-item .icon {
    max-width: 13rem;
}

.docs-pagination {
    display: flex;
    justify-content: center;
    padding-top: 3rem;
}

@media (max-width:768px) {
    .doc-item .title {
        font-size: 1.4rem;
    }
    .doc-item .icon {
        max-width: 9rem;
    }

}

.smiles {
    padding: 10rem 0;
    position: relative;
}

.smiles .flex-title {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
    flex-wrap: wrap;
    margin-bottom: 3rem;
}

/* Swiper контейнер */
.smiles .smiles-carousel {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 1rem 0;
}

/* Wrapper для слайдов */
.smiles .swiper-wrapper {
    display: flex;
    flex-wrap: wrap;
    transition: none;
}

/* Слайд - одинаковая высота */
.smiles .swiper-slide {
    height: auto;
    display: flex;
    align-items: stretch;
    flex-shrink: 0;
    width: calc(33.333% - 2rem);
    margin-right: 3rem;
    margin-bottom: 3rem;
}

/* Убираем margin у каждого 3-го слайда */
.smiles .swiper-slide:nth-child(3n) {
    margin-right: 0;
}

/* Карточка */
.smiles .wrapper {
    display: flex;
    flex-direction: column;
    background-color: #fbfbfb;
    border-radius: 3.5rem;
    padding: 3.5rem;
    height: 100%;
    width: 100%;
    border: 1px solid rgba(0, 0, 0, 0.15);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-sizing: border-box;
    min-height: 550px;
}

.smiles .wrapper:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

/* Изображение */
.smiles .card-img {
    width: 100%;
    object-fit: cover;
    height: 22rem;
    border-radius: 3rem;
    overflow: hidden;
    margin-bottom: 2rem;
    aspect-ratio: 16/9;
}

/* Заголовок */
.smiles .card-title {
    font-size: 2.4rem;
    font-weight: 700;
    margin-bottom: 2rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

/* Описание */
.smiles .card-descr {
    margin-bottom: 4rem;
    flex-grow: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    min-height: 7.2rem;
    line-height: 1.5;
    color: #666;
}

/* Кнопка - оригинальный серый стиль */
.smiles .button {
    background: none;
    padding: 1.2rem 2rem;
    cursor: pointer;
    position: relative;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: var(--transition);
    transition: all 0.3s ease;
    font-size: 1.6rem;
    font-weight: 400;
    min-width: 20rem;
    width: 100%; /* На всю ширину карточки */
    border-radius: 5rem;
    margin-top: auto; /* Прижимаем к низу */
    color: #322E91; /* Синий текст */
    background-color: #f0f0f0; /* Светло-серый фон */
    border: 1px solid #d0d0d0; /* Серая граница */
    text-decoration: none;
}

.smiles .button--normal {
    width: auto;
}

.smiles .button:hover {
    background-color: #e0e0e0;
    border-color: #322E91;
    color: #322E91;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.smiles .button:active {
    transform: translateY(0);
}

.smiles .button.button--gray {
    background: none;
    background-color: #f0f0f0;
    border: 1px solid #d0d0d0;
    color: #322E91;
}

.smiles .button.button--gray:hover {
    background-color: #e0e0e0;
    border-color: #322E91;
}

/* Стрелки навигации */
.smiles-button-prev,
.smiles-button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    background-color: #322E91;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.smiles-button-prev {
    left: -5px;
}

.smiles-button-next {
    right: -5px;
}

.smiles-button-prev::after,
.smiles-button-next::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
}

.smiles-button-prev::after {
    border-width: 8px 12px 8px 0;
    border-color: transparent #FFFCEE transparent transparent;
    margin-right: 2px;
}

.smiles-button-next::after {
    border-width: 8px 0 8px 12px;
    border-color: transparent transparent transparent #FFFCEE;
    margin-left: 2px;
}

.smiles-button-prev:hover,
.smiles-button-next:hover {
    background-color: #100C70;
    transform: translateY(-50%) scale(1.1);
}

/* Адаптивность */
@media (max-width: 1099px) {
    .smiles .swiper-slide {
        width: calc(50% - 1.5rem);
        margin-right: 3rem;
    }
    
    .smiles .swiper-slide:nth-child(2n) {
        margin-right: 0;
    }
    
    .smiles .wrapper {
        padding: 2.5rem;
    }
}

@media (max-width: 992px) {
    .smiles .card-title {
        font-size: 2rem;
        min-height: 5.8rem;
    }
    
    .smiles .card-descr {
        min-height: 6.3rem;
        -webkit-line-clamp: 2;
    }
    
    .smiles-button-prev,
    .smiles-button-next {
        width: 44px;
        height: 44px;
    }
}

@media (max-width: 768px) {
    .smiles .swiper-slide {
        width: 100%;
        margin-right: 0;
    }
    
    .smiles-button-prev,
    .smiles-button-next {
        display: none;
    }
    
    .smiles .card-descr {
        min-height: auto;
        -webkit-line-clamp: unset;
        margin-bottom: 2rem;
    }
}

@media (max-width: 576px) {
    .smiles {
        padding: 5rem 0;
    }
    
    .smiles .wrapper {
        border-radius: 2rem;
        padding: 2rem;
    }
    
    .smiles .card-img {
        border-radius: 2rem;
        height: 18rem;
    }
    
    .smiles .card-title {
        font-size: 1.8rem;
        min-height: auto;
        -webkit-line-clamp: unset;
        margin-bottom: 1rem;
    }
    
    .smiles .button {
        min-width: auto;
        padding: 1rem 1.5rem;
        font-size: 1.4rem;
        white-space: nowrap;
    }
}

@media (min-width: 1744px) {
    .smiles-button-prev {
        left: -100px;
    }
    
    .smiles-button-next {
        right: -100px;
    }
}

//стили под блок о преимуществах

  .company-advantages-section {
      margin-top: 50px;
      padding-top: 40px;
      border-top: 1px solid #eee;
  }

.advantages-compact-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.advantages-compact-list .adv-title {
    color: #5d3fd3;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.advantages-compact-list .adv-desc {
    font-size: 16px;
    line-height: 1.5;
    color: #555;
}

.adv-certificates {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 8px;
}

.adv-certificates img {
    height: 45px;
    width: auto;
    object-fit: contain;
}

@media (max-width: 992px) {
    .advantages-compact-list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .company-advantages-section {
        margin-top: 30px;
        padding-top: 25px;
    }
    .advantages-compact-list {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .advantages-compact-list .adv-title {
        font-size: 16px;
    }
}

.about .about-container {
    display: block;
}

.about .about-container .img-col {
    width: 100%;
}

.about .about-container .img-col img {
    width: 100%;
    height: auto;
    display: block;
}

.slider-external-wrapper {
    position: relative;
    width: 100%;
    padding: 0 50px;
}

/* Позиционирование контейнера */
.video-carousel,
.reviews-carousel {
    box-sizing: border-box; /* Чтобы padding не раздувал ширину */
    position: relative;
}

/* Общие стили для кнопок */
.video-button-prev,
.video-button-next,
.reviews-button-prev,
.reviews-button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;         /* Размер круга */
    height: 50px;        /* Размер круга */
    background-color: #322E91; /* Фон круга (ваш красный) */
    border-radius: 50%;  /* Делаем круг */
    cursor: pointer;
    z-index: 10;
    transition: all 0.3s ease;
    display: flex;       /* Для центрирования треугольника */
    align-items: center;
    justify-content: center;
}

/* Левая стрелка (треугольник влево) */
.video-button-prev,
.reviews-button-prev {
    left: -60px;
    border-width: 15px 20px 15px 0;
    border-color: transparent #322E91 transparent transparent; /* Цвет как у вашей кнопки Play */
}

/* Правая стрелка (треугольник вправо) */
.video-button-next,
.reviews-button-next {
    right: -60px;
    border-width: 15px 0 15px 20px;
    border-color: transparent transparent transparent #322E91;
}

/* Левый треугольник */
.video-button-prev::after,
.reviews-button-prev::after {
    border-width: 10px 14px 10px 0;
    border-color: transparent #FFFCEE transparent transparent; /* Цвет треугольника */
    margin-right: 4px; /* Визуальная компенсация центра */
}

/* Правый треугольник */
.video-button-next::after,
.reviews-button-next::after {
    border-width: 10px 0 10px 14px;
    border-color: transparent transparent transparent #FFFCEE;
    margin-left: 4px; /* Визуальная компенсация центра */
}

/* Эффект при наведении */
.video-button-prev:hover,
.video-button-next:hover,
.reviews-button-prev:hover,
.reviews-button-next:hover {
    background-color: #100C70; /* Чуть темнее при наведении */
    transform: translateY(-50%) scale(1.1); /* Легкое увеличение */
}

/* Создаем треугольник через псевдоэлемент */
.video-button-prev::after,
.video-button-next::after,
.reviews-button-prev::after,
.reviews-button-next::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
}

/* Стили для неактивных кнопок */
.swiper-button-disabled {
    background-color: #ccc;
    opacity: 0.5;
    cursor: auto;
}

.swiper-slide {
    width: 100%; 
    display: flex;
    justify-content: center;
}

@media (min-width: 1744px) {    
    .slider-external-wrapper {
        padding: 0;
    }

    .video-button-prev,
    .reviews-button-prev {
        left: -80px;
    }

    .video-button-next,
    .reviews-button-next {
        right: -80px;
    }
}

.card {
    width: 100%; /* Карточка должна занимать всё место внутри слайда */
}
