@import url("https://fonts.googleapis.com/css2?family=Golos+Text:wght@400..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat+Alternates:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
html {
    line-height: 1.15;
}
body {
    margin: 0;
}
main {
    display: block;
}
h1 {
    font-size: 2em;
    margin: 0.67em 0;
}
hr {
    box-sizing: initial;
    height: 0;
    overflow: visible;
}
pre {
    font-family: monospace, monospace;
    font-size: 1em;
}
a {
    background-color: initial;
}
abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted;
}
b,
strong {
    font-weight: bolder;
}
code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}
small {
    font-size: 80%;
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: initial;
}
sub {
    bottom: -0.25em;
}
sup {
    top: -0.5em;
}
img {
    border-style: none;
}
button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}
button,
input {
    overflow: visible;
}
button,
select {
    text-transform: none;
}
[type="button"],
[type="reset"],
[type="submit"],
button {
    -webkit-appearance: button;
}
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText;
}
fieldset {
    padding: 0.35em 0.75em 0.625em;
}
legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}
progress {
    vertical-align: initial;
}
textarea {
    overflow: auto;
}
[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    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;
}
details {
    display: block;
}
summary {
    display: list-item;
}
[hidden],
template {
    display: none;
}
.container,
.container-fluid,
.container-xl {
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
}
.row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -20px;
    margin-right: -20px;
}
.no-gutters {
    margin-left: 0;
    margin-right: 0;
}
.no-gutters > .col,
.no-gutters > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}
.col,
.col-1,
.col-10,
.col-11,
.col-12,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-auto,
.col-lg,
.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-auto,
.col-md,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-auto,
.col-sm,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-auto,
.col-xl,
.col-xl-1,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-auto {
    padding-left: 20px;
    padding-right: 20px;
    position: relative;
    width: 100%;
}
.col {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}
.row-cols-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
}
.row-cols-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
}
.row-cols-3 > * {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
}
.row-cols-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
}
.row-cols-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
}
.row-cols-6 > * {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
}
.col-auto {
    flex: 0 0 auto;
    max-width: 100%;
    width: auto;
}
.col-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
}
.col-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
}
.col-3 {
    flex: 0 0 25%;
    max-width: 25%;
}
.col-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
}
.col-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
}
.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}
.col-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
}
.col-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
}
.col-9 {
    flex: 0 0 75%;
    max-width: 75%;
}
.col-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
}
.col-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
}
.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}
.order-first {
    order: -1;
}
.order-last {
    order: 13;
}
.order-0 {
    order: 0;
}
.order-1 {
    order: 1;
}
.order-2 {
    order: 2;
}
.order-3 {
    order: 3;
}
.order-4 {
    order: 4;
}
.order-5 {
    order: 5;
}
.order-6 {
    order: 6;
}
.order-7 {
    order: 7;
}
.order-8 {
    order: 8;
}
.order-9 {
    order: 9;
}
.order-10 {
    order: 10;
}
.order-11 {
    order: 11;
}
.order-12 {
    order: 12;
}
.offset-1 {
    margin-left: 8.33333333%;
}
.offset-2 {
    margin-left: 16.66666667%;
}
.offset-3 {
    margin-left: 25%;
}
.offset-4 {
    margin-left: 33.33333333%;
}
.offset-5 {
    margin-left: 41.66666667%;
}
.offset-6 {
    margin-left: 50%;
}
.offset-7 {
    margin-left: 58.33333333%;
}
.offset-8 {
    margin-left: 66.66666667%;
}
.offset-9 {
    margin-left: 75%;
}
.offset-10 {
    margin-left: 83.33333333%;
}
.offset-11 {
    margin-left: 91.66666667%;
}
.fade {
    transition: opacity 0.15s linear;
}
.fade:not(.show) {
    opacity: 0;
}
.collapse:not(.show) {
    display: none;
}
.collapsing {
    height: 0;
    overflow: hidden;
    position: relative;
    transition: height 0.35s ease;
}
.collapsing.width {
    height: auto;
    transition: width 0.35s ease;
    width: 0;
}
.clearfix:after {
    clear: both;
    content: "";
    display: block;
}
.d-none {
    display: none !important;
}
.d-inline {
    display: inline !important;
}
.d-inline-block {
    display: inline-block !important;
}
.d-block {
    display: block !important;
}
.d-flex {
    display: flex !important;
}
.d-inline-flex {
    display: inline-flex !important;
}
.ui-helper-hidden {
    display: none;
}
.ui-helper-hidden-accessible {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.ui-helper-reset {
    border: 0;
    font-size: 100%;
    line-height: 1.3;
    list-style: none;
    margin: 0;
    outline: 0;
    padding: 0;
    text-decoration: none;
}
.ui-helper-clearfix:after,
.ui-helper-clearfix:before {
    border-collapse: collapse;
    content: "";
    display: table;
}
.ui-helper-clearfix:after {
    clear: both;
}
.ui-helper-zfix {
    -ms-filter: "alpha(opacity=0)";
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.ui-front {
    z-index: 100;
}
.ui-state-disabled {
    cursor: default !important;
    pointer-events: none;
}
.ui-icon {
    background-repeat: no-repeat;
    display: inline-block;
    margin-top: -0.25em;
    overflow: hidden;
    position: relative;
    text-indent: -99999px;
    vertical-align: middle;
}
.ui-widget-icon-block {
    display: block;
    left: 50%;
    margin-left: -8px;
}
.ui-widget-overlay {
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
}
.ui-autocomplete {
    cursor: default;
    left: 0;
    position: absolute;
    top: 0;
}
@font-face {
    font-family: swiper-icons;
    font-style: normal;
    font-weight: 400;
    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");
}
:root {
    --swiper-theme-color: #007aff;
    --accent-blue: #6f75f0;
    --accent-green: #ddf2ba;
    --l-blue: #d0daff;
    --grey: #efeff3;
    --d-grey: #676767;
    --new-green: #cffe9a;
    --hit-yellow: #ffe873;
    --red: #d60000;
}
:host {
    display: block;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 1;
}
.swiper {
    display: block;
    list-style: none;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    padding: 0;
    position: relative;
    z-index: 1;
}
.swiper-vertical > .swiper-wrapper {
    flex-direction: column;
}
.swiper-wrapper {
    box-sizing: initial;
    display: flex;
    height: 100%;
    position: relative;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    width: 100%;
    z-index: 1;
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0);
}
.swiper-horizontal {
    touch-action: pan-y;
}
.swiper-vertical {
    touch-action: pan-x;
}
.swiper-slide {
    display: block;
    flex-shrink: 0;
    height: 100%;
    position: relative;
    transition-property: transform;
    width: 100%;
}
.swiper-slide-invisible-blank {
    visibility: hidden;
}
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto;
}
.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height;
}
.swiper-backface-hidden .swiper-slide {
    backface-visibility: hidden;
    transform: translateZ(0);
}
.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px;
}
.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d;
}
.swiper-3d {
    perspective: 1200px;
}
.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
    transform-style: preserve-3d;
}
.swiper-css-mode > .swiper-wrapper {
    -ms-overflow-style: none;
    overflow: auto;
    scrollbar-width: 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 {
    scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
    scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
    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: "";
    flex-shrink: 0;
    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 {
    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 {
    margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper:before {
    height: var(--swiper-centered-offset-after);
    min-width: 1px;
    width: 100%;
}
.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 {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
    background: #00000026;
}
.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, #00000080, #0000);
}
.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, #00000080, #0000);
}
.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, #00000080, #0000);
}
.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, #00000080, #0000);
}
.swiper-lazy-preloader {
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top: 4px solid #0000;
    box-sizing: border-box;
    height: 42px;
    left: 50%;
    margin-left: -21px;
    margin-top: -21px;
    position: absolute;
    top: 50%;
    transform-origin: 50%;
    width: 42px;
    z-index: 10;
}
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s linear infinite;
}
.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(1turn);
    }
}
.swiper-free-mode > .swiper-wrapper {
    margin: 0 auto;
    transition-timing-function: ease-out;
}
.noUi-target {
    position: relative;
}
.noUi-target,
.noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    box-sizing: border-box;
    touch-action: none;
    user-select: none;
}
.noUi-horizontal {
    width: 100%;
}
.noUi-horizontal .noUi-base,
.noUi-horizontal .noUi-connects {
    height: 20px;
    position: relative;
    width: 100%;
    z-index: 1;
}
.noUi-horizontal .noUi-base:before,
.noUi-horizontal .noUi-connect:before {
    background-color: #000;
    bottom: 0;
    content: "";
    height: 2px;
    left: 0;
    margin: auto;
    position: absolute;
    top: 0;
    width: 100%;
}
.noUi-connects {
    overflow: hidden;
    z-index: 0;
}
.noUi-connect,
.noUi-origin {
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    transform-origin: 0 0;
    transform-style: flat;
    width: 100%;
    will-change: transform;
    z-index: 1;
}
.noUi-horizontal .noUi-origin {
    height: 0;
}
.noUi-horizontal .noUi-handle {
    height: 20px;
    right: -10px;
    top: 0;
    width: 20px;
}
.noUi-handle {
    backface-visibility: hidden;
    position: absolute;
}
.noUi-touch-area {
    height: 100%;
    position: relative;
    width: 100%;
}
.noUi-touch-area:before {
    background-color: #000;
    border-radius: 50%;
    bottom: 0;
    content: "";
    height: 12px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
    width: 12px;
}
.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
    transition: transform 0.15s;
}
.noUi-draggable {
    cursor: ew-resize;
}
.noUi-tooltip {
    text-align: center;
}
.noUi-pips-horizontal {
    height: 20px;
    position: relative;
    width: 100%;
    z-index: 1;
}
.noUi-value {
    position: absolute;
    text-align: center;
    white-space: nowrap;
}
.noUi-value-horizontal {
    transform: translate(-50%);
}
*,
:after,
:before {
    box-sizing: border-box;
}
html {
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body,
html {
    height: 100%;
}
body {
    background-color: #fff;
    color: #000;
    font-family: "Montserrat", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    overflow-x: hidden;
    text-align: left;
    width: 100vw;
}
/* Блокировка скролла при открытом offcanvas */
body.offcanvas-open {
    overflow: hidden !important;
    position: fixed !important;
    width: 100% !important;
}
.content li:not([class]) {
    margin-bottom: 8px;
}
.content.main {
    overflow: clip;
}
.root {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}
.content {
    flex: 1 0 auto;
}
.container {
    padding-left: 52px;
    padding-right: 52px;
}
.btn {
    align-items: center;
    background-color: initial;
    background-image: none;
    border: 0;
    border-radius: 0;
    column-gap: 10px;
    display: inline-flex;
    font-size: 1rem;
    font-weight: 500;
    justify-content: center;
    line-height: 1.5;
    padding: 0;
    text-align: center;
    text-decoration: none;
    user-select: none;
    white-space: nowrap;
}
.btn.disabled,
.btn:disabled,
.btn:focus {
    box-shadow: none;
}
.btn:not(:disabled):not(.disabled) {
    cursor: pointer;
}
.btn svg {
    fill: #000;
    display: block;
}
a.btn.disabled {
    pointer-events: none;
}
.btn.disabled {
    opacity: 0.5;
    pointer-events: none;
}

.btn-course {
    padding: 15px 50px;
    background: white;
    color: black;
    border-radius: 12px;
    border: 1px solid transparent;
    transition: all 0.3s ease;
}
.btn-course:hover {
    background: transparent;
    border: 1px solid white;
    color: white;
}

.btn-primary {
    background-color: var(--l-blue);
    border-radius: 12px;
    color: #000;
    padding: 12px 32px;
    transition: background-color 0.15s;
    border: 2px solid transparent;
}
.btn-primary svg:first-child {
    margin-left: -12px;
}
.btn-primary svg:last-child {
    margin-right: -12px;
}
.btn-primary:hover {
    background-color: transparent;
    color: black;
    border: 2px solid var(--l-blue);
}
.btn-primary.disabled,
.btn-primary:disabled {
    background-color: #f4f4f6;
    color: #a6a6a6;
}
.btn-outline-arrowed {
    padding: 15px 20px;
    border: 2px solid var(--l-blue);
    border-radius: 12px;
    transition: all 0.15s;
    text-decoration: none;
    color: black;
}
.btn-outline-arrowed span {
    font-weight: 600;
}
.btn-outline-arrowed:hover {
    background: var(--l-blue);
}
.btn-outline-arrowed svg {
    transition: all 0.15s ease;
}
.btn-outline-arrowed:hover svg {
    transform: translateX(2px);
}
.btn-outline-primary {
    border: 1px solid white;
    border-radius: 12px;
    padding: 15px 50px;

    color: white;
    transition: background-color 0.15s, border-color 0.15s;
}
.btn-outline-primary svg:first-child {
    margin-left: -12px;
}
.btn-outline-primary svg:last-child {
    margin-right: -12px;
}
.btn-outline-primary:hover {
    background-color: white;
    color: black;
}
.btn-outline-primary.disabled,
.btn-outline-primary:disabled {
    background-color: initial;
    border-color: #f4f4f6;
    color: #a6a6a6;
}
.btn-secondary {
    background-color: #f4f4f6;
    border: 2px solid #f4f4f6;
    border-radius: 4px;
    color: #000;
    padding: 10px 30px;
    transition: border-color 0.15s;
}
.btn-secondary svg:first-child {
    margin-left: -12px;
}
.btn-secondary svg:last-child {
    margin-right: -12px;
}
.btn-secondary:hover {
    border-color: #000;
}
.btn-secondary.disabled,
.btn-secondary:disabled {
    color: #a6a6a6;
}
.btn-link {
    box-shadow: inset 0 -1px #000;
    color: #000;
    transition: box-shadow 0.15s;
}
.btn-link:hover {
    box-shadow: none;
}
.btn-toggler {
    height: 40px;
    width: 40px;
}
.btn-collapse {
    color: #000;
    padding: 12px 0;
}
.btn-collapse svg {
    transition: transform 0.15s;
}
.btn-collapse:not(.collapsed) svg {
    transform: rotateX(-180deg);
}
.btn-collapse.collapsed .btn-collapse__text-hide,
.btn-collapse:not(.collapsed) .btn-collapse__text-show {
    display: none;
}
.link-location {
    align-items: center;
    color: var(--d-grey);
    column-gap: 10px;
    display: inline-flex;
    transition: color 0.15s;
}
.link-location span {
    box-shadow: inset 0 -1px var(--d-grey);
    transition: box-shadow 0.15s;
}
.link-location svg {
    fill: var(--d-grey);
    transition: fill 0.15s;
}
.link-location:hover {
    color: var(--accent-blue);
}
.link-location:hover span {
    box-shadow: inset 0 -1px var(--accent-blue);
}
.link-location:hover svg {
    fill: var(--accent-blue);
}
.link-video {
    display: block;
    position: relative;
}
.link-video:after {
    background: linear-gradient(180deg, #0000, #000);
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    bottom: 0;
    content: "";
    height: 75%;
    left: 0;
    opacity: 0.6;
    position: absolute;
    width: 100%;
}
.link-video__poster {
    border-radius: 12px;
    display: block;
    overflow: hidden;
    position: relative;
}
.link-video__poster:before {
    background-color: #0000;
    content: "";
    display: block;
    padding-top: 56.25%;
    width: 100%;
}
.link-video__poster img {
    height: 100%;
    left: 0;
    object-fit: cover;
    overflow-clip-margin: unset;
    position: absolute;
    top: 0;
    width: 100%;
}
.link-video__poster img.lazyload,
.link-video__poster img.lazyloading {
    opacity: 0;
    transition: opacity 0.15s;
}
.link-video__poster img.lazyloaded {
    opacity: 1;
}
.link-video__icon {
    align-items: center;
    background-color: #fff;
    border-radius: 50%;
    border-width: 0;
    bottom: 20px;
    box-shadow: 0 0 7px 0 #2e272733;
    display: flex;
    height: 50px;
    justify-content: center;
    left: 20px;
    padding: 0;
    position: absolute;
    width: 50px;
    z-index: 1;
}
.link-video__icon,
.link-video__icon svg {
    transition: transform 0.15s cubic-bezier(0.35, 0.755, 0.42, 0.95);
}
.link-video__icon svg {
    fill: #000;
    display: block;
}
.link-video:hover .link-video__icon {
    cursor: pointer;
    transform: scale(1.16);
}
.link-video:hover .link-video__icon svg {
    transform: scale(0.86206897);
}
table {
    background-color: initial;
    border-collapse: collapse;
    margin-bottom: 48px;
    margin-top: 48px;
    width: 100%;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
/* Стили для скроллбара таблицы */
table::-webkit-scrollbar {
    height: 8px;
}
table::-webkit-scrollbar-track {
    background: #f4f4f6;
    border-radius: 4px;
}
table::-webkit-scrollbar-thumb {
    background: #d1d1d6;
    border-radius: 4px;
}
table::-webkit-scrollbar-thumb:hover {
    background: #a6a6a6;
}
table thead,
table tbody {
    display: table;
    width: 100%;
    min-width: max-content;
}
.product-description .table-responsive table tbody{
    min-width: unset;
}
table tr {
    display: table-row;
}
table th,
table td {
    display: table-cell;
}
table td,
table th {
    background-clip: padding-box;
    border: solid #ececf0;
    border-width: 0 0 1px;
    padding: 12px 20px;
    vertical-align: top;
}
table td:first-child,
table th:first-child {
    padding-left: 0;
}
table td:last-child,
table th:last-child {
    padding-right: 0;
}
table th {
    color: var(--d-grey);
    font-weight: 400;
}
.table-responsive {
    margin-bottom: 48px;
    margin-top: 48px;
}
.table-responsive p {
    margin-bottom: 0;
}
h2 + .table-responsive {
    margin-top: 0;
}
.table-responsive > table {
    margin-bottom: 0;
    margin-top: 0;
}
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 600;
    line-height: 1.2;
    margin-top: 48px;
    font-family: "Montserrat Alternates", sans-serif;
}
.h1,
.h1:first-child,
.h2:first-child,
.h3:first-child,
.h4:first-child,
.h5:first-child,
.h6:first-child,
h1,
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
    margin-top: 0;
}
.h1,
h1 {
    font-size: 33px;
    margin-bottom: 38px;
}
.h2,
h2 {
    font-size: 30px;
    margin-bottom: 38px;
}
.h3,
h3 {
    font-size: 23px;
    margin-bottom: 16px;
}
.h4,
.h5,
.h6,
h4,
h5,
h6 {
    font-size: 20px;
    margin-bottom: 14px;
}
.footer-side .nav-link,
.section-content a:not([class]),
.set-products-item__link {
    box-shadow: inset 0 -1px var(--d-grey);
    color: var(--d-grey);
    transition: color 0.15s, box-shadow 0.15s;
}
.footer-side .nav-link:hover,
.section-content a:hover:not([class]),
.set-products-item__link:hover {
    box-shadow: inset 0 -1px var(--accent-blue);
    color: var(--accent-blue);
}
a {
    text-decoration: none;
}
p {
    margin-bottom: 16px;
}
ol,
p,
ul {
    margin-top: 0;
}
li:not([class]) {
    padding-left: 0px;
}
.main-text__content ul li::marker {
    content: "—";
}
.section-content h2 {
    margin-bottom: 18px;
}
.section-content ul {
    list-style: none;
    padding-left: 0;
}
.section-content ul > li {
    margin-bottom: 16px;
    padding-left: 30px;
    position: relative;
}
.section-content ul > li:last-child {
    margin-bottom: 0;
}
.section-content ul > li:before {
    background-color: #000;
    border-radius: 50%;
    content: "";
    height: 4px;
    left: 15px;
    position: absolute;
    top: 10px;
    width: 4px;
}
.section-content ul > li > ul {
    margin-bottom: 0;
    margin-top: 16px;
}
.section-content ol {
    counter-reset: li;
    list-style: none;
    padding-left: 0;
}
.section-content ol > li {
    margin-bottom: 16px;
    padding-left: 30px;
    position: relative;
}
.section-content ol > li:last-child {
    margin-bottom: 0;
}
.section-content ol > li:before {
    content: counters(li, ".") ".";
    counter-increment: li;
    font-size: 1em;
    left: 0;
    min-width: 26px;
    position: absolute;
    text-align: center;
    top: 0;
}
.section-content ol > li > ol {
    margin-bottom: 0;
    margin-top: 16px;
}
.list {
    list-style: none;
    padding-left: 0;
}
.list,
.list > li {
    margin-bottom: 12px;
}
.list > li {
    color: var(--d-grey);
    padding-left: 30px;
    position: relative;
}
.list > li:last-child {
    margin-bottom: 0;
}
.list > li svg {
    fill: var(--d-grey);
    bottom: 0;
    display: block;
    left: 0;
    margin: auto;
    position: absolute;
    top: 0;
}
.accordion-item {
    box-shadow: inset 0 -1px #ececf0;
}
.accordion-button {
    background-color: initial;
    background-image: none;
    border: 0;
    border-radius: 0;
    color: #000;
    column-gap: 16px;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    overflow-anchor: none;
    padding: 20px 0;
    text-align: left;
    user-select: none;
    width: 100%;
}
.accordion-button svg {
    fill: #000;
    display: block;
    flex-shrink: 0;
    transition: transform 0.15s;
}
.accordion-button:not(.collapsed) svg {
    transform: rotateX(-180deg);
}
.accordion-body {
    padding-bottom: 20px;
    padding-right: 66px;
}
.dropdown {
    position: relative;
}
.dropdown-toggle {
    white-space: nowrap;
}
.dropdown-menu {
    background-clip: padding-box;
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 20px 0 #2e27271f;
    color: #000;
    display: none;
    float: left;
    left: 0;
    list-style: none;
    margin: 0;
    min-width: 300px;
    padding: 16px;
    position: absolute;
    text-align: left;
    top: 100%;
    z-index: 1000;
}
.dropdown-menu-left {
    left: 0;
    right: auto;
}
.dropdown-menu-right {
    left: auto;
    right: 0;
}
.dropdown-menu[x-placement^="bottom"],
.dropdown-menu[x-placement^="left"],
.dropdown-menu[x-placement^="right"],
.dropdown-menu[x-placement^="top"] {
    bottom: auto;
    right: auto;
}
.dropdown-menu.show {
    display: block;
}
.dropdown-link {
    border-radius: 4px;
    color: #000;
    display: block;
    font-size: 1rem;
    line-height: 1.5;
    min-width: 280px;
    padding: 12px 16px;
    transition: background-color 0.15s;
}
.dropdown-link.disabled,
.dropdown-link:not([href]) {
    cursor: default;
}
.dropdown-item.active .dropdown-link,
.dropdown-link:hover {
    background-color: #f4f4f6;
}
.nav {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin-bottom: 0;
    padding-left: 0;
}
.nav-link {
    display: block;
}
.nav-link.disabled,
.nav-link:not([href]) {
    cursor: default;
}
body:not(.is-using-mouse) .fancybox__container :focus {
    box-shadow: none;
}
.fancybox__backdrop {
    --fancybox-bg: #0000004d;
}
.fancybox__slide {
    padding: 40px 8px;
}
.fancybox__content :focus:not(.carousel__button.is-close) {
    outline: 0;
}
.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content,
.fancybox__carousel .fancybox__slide.has-video .fancybox__content {
    height: 100%;
    width: 100%;
}
.fancybox__carousel .fancybox__slide.has-ajax .fancybox__content,
.fancybox__carousel .fancybox__slide.has-html .fancybox__content {
    --fancybox-content-bg: #fff;
}
.modal {
    --fancybox-opacity: 1;
    --fancybox-color: #000;
    --fancybox-content-color: #000;
    --fancybox-content-bg: #fff;
    --carousel-button-width: 26px;
    --carousel-button-height: 26px;
    --carousel-button-svg-width: 22px;
    --carousel-button-svg-height: 22px;
    --carousel-button-svg-stroke-width: 1.5;
    --carousel-button-svg-filter: none;
    border-radius: 8px;
    max-width: 580px;
    padding: 40px;
    width: 100%;
}
.modal .carousel__button.is-close {
    position: absolute;
    right: 20px;
    top: 20px;
}
.modal-head {
    margin-bottom: 20px;
}
.modal-foot {
    margin-top: 20px;
}
.modal-html {
    text-align: center;
}
.swiper:not(.swiper-initialized) {
    display: none;
}
.swiper-slide {
    height: auto;
    user-select: none;
}
.swiper-slide:focus {
    outline: 0;
}
.swiper-button-next,
.swiper-button-prev {
    align-items: center;
    background-color: #fff;
    background-image: none;
    border-radius: 50%;
    border-width: 0;
    box-shadow: 0 0 7px 0 #2e272733;
    display: flex;
    height: 50px;
    justify-content: center;
    padding: 0;
    width: 50px;
}
.swiper-button-next,
.swiper-button-next svg,
.swiper-button-prev,
.swiper-button-prev svg {
    transition: transform 0.15s cubic-bezier(0.35, 0.755, 0.42, 0.95);
    will-change: transform;
}
.swiper-button-next:after,
.swiper-button-next:before,
.swiper-button-prev:after,
.swiper-button-prev:before {
    content: "";
    flex: 1 0 auto;
}
.swiper-button-next svg,
.swiper-button-prev svg {
    fill: #000;
    display: block;
}
.swiper-button-next:not(:disabled):hover,
.swiper-button-prev:not(:disabled):hover {
    cursor: pointer;
    transform: scale(1.16);
}
.swiper-button-next:not(:disabled):hover svg,
.swiper-button-prev:not(:disabled):hover svg {
}
.swiper-button-next:disabled svg,
.swiper-button-prev:disabled svg {
    fill: #ececf0;
}
.swiper-button-first,
.swiper-button-last {
    background-color: #fff;
    border-radius: 4px;
    border-width: 0;
    box-shadow: 0 0 7px 0 #2e272733;
    color: #000;
    padding: 4px 8px;
    text-transform: uppercase;
}
.swiper-button-first,
.swiper-button-first span,
.swiper-button-last,
.swiper-button-last span {
    transition: transform 0.15s cubic-bezier(0.35, 0.755, 0.42, 0.95);
    will-change: transform;
}
.swiper-button-first span,
.swiper-button-last span {
    display: block;
}
.swiper-button-first:not(:disabled):hover,
.swiper-button-last:not(:disabled):hover {
    cursor: pointer;
    transform: scale(1.16);
}
.swiper-button-first:not(:disabled):hover span,
.swiper-button-last:not(:disabled):hover span {
    transform: scale(0.86206897);
}
.swiper-button-lock {
    display: none;
}
.swiper-pagination {
    display: flex;
}
.swiper-pagination-bullet {
    align-items: center;
    display: flex;
    height: 12px;
    justify-content: center;
    width: 28px;
}
.swiper-pagination-bullet:before {
    background-color: #ccc;
    border-radius: 50%;
    content: "";
    display: block;
    height: 7px;
    width: 7px;
}
.swiper-pagination-bullet-active:before {
    background-color: #fff;
}
.list-group {
    display: flex;
    flex-direction: column;
    row-gap: 12px;
}
.list-group-item.hidden {
    display: none;
}
.social .nav-link {
    align-items: center;
    background-color: #fff;
    border: 1px solid #ececf0;
    border-radius: 8px;
    display: flex;
    height: 28px;
    justify-content: center;
    transition: border-color 0.15s;
    width: 28px;
}
.social .nav-link svg {
    fill: var(--accent-blue);
    display: block;
}
.social .nav-link:hover {
    border-color: var(--accent-blue);
}
.ui-menu {
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 20px 0 #2e27271f;
    list-style: none;
    margin-bottom: 0;
    padding: 16px;
}
.ui-menu-item {
    margin-top: 4px;
}
.ui-menu-item:first-child {
    margin-top: 0;
}
.ui-menu-item-wrapper {
    border-radius: 4px;
    transition: background-color 0.15s;
}
.ui-menu-item-wrapper.ui-state-active {
    background-color: #f4f4f6;
}
.form {
    display: flex;
    flex-direction: column;
    row-gap: 16px;
}
.form-text {
    max-width: 254px;
}
.form-row {
    margin-left: -8px;
    margin-right: -8px;
    row-gap: 24px;
}
.order-form-row {
}
.text-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 44px;
    row-gap: 24px;
    margin-top: 24px;
    margin-bottom: 38px;
}
.file-field {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 24px;
}
.file-field .form-group-file {
    width: 100%;
    padding-right: 22px;
}
.form-col {
    padding-left: 8px;
    padding-right: 8px;
}
.form-row-wrapper {
    display: flex;
    flex-direction: row;
    column-gap: 38px;
    row-gap: 16px;
    justify-content: space-between;
}

.form-row-wrapper .form-group {
    width: 50%;
}

textarea {
    overflow: hidden;
    resize: vertical;
}
label {
    display: inline-block;
}
.form-control {
    appearance: none;
    background-clip: padding-box;
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid var(--d-grey);
    border-radius: 0;
    box-shadow: none;
    color: #000;
    display: block;
    font-size: 1rem;
    font-weight: 400;
    height: 48px;
    line-height: 1.5;
    padding: 15px 0;
    width: 100%;
    
}
.form-control::placeholder {
    color: var(--d-grey);
}
.form-control:disabled,
.form-control[readonly] {
    opacity: 1;
}
.form-control:hover {
    border-color: #000;
}
.form-control:focus {
    border-color: var(--accent-blue);
    outline: 0;
}
.form-control.error {
    border-color: #e8262c;
}
.form-control ~ .error,
.form-check-label ~ .error {
    color: #e8262c;
    font-size: 14px;
    line-height: 1.42857143;
    margin-top: 6px;
    padding-left: 24px;
    position: relative;
}
.form-control ~ .error:before,
.form-check-label ~ .error:before {
    align-items: center;
    border: 1px solid;
    border-radius: 50%;
    color: currentColor;
    content: "\0021";
    display: inline-flex;
    font-family: Arial;
    font-size: 0.875rem;
    height: 16px;
    justify-content: center;
    left: 2px;
    position: absolute;
    top: 2px;
    width: 16px;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
    display: none;
}
.form-text {
    font-size: 14px;
    line-height: 1.42857143;
}
.form-text a {
    box-shadow: inset 0 -1px currentColor;
    color: currentColor;
    transition: box-shadow 0.15s;
}
.form-text a:hover {
    box-shadow: none;
}
.form-check {
    position: relative;
}
.form-check input[type="checkbox"] {
    opacity: 0;
    position: absolute;
    z-index: -1;
}
.form-check-label {
    display: inline-flex;
    align-items: center;
    margin-bottom: 0;
    user-select: none;
    cursor: pointer;
}
.form-check-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 15px;
    height: 15px;
    border: 1px solid var(--d-grey);
    border-radius: 2px;
    background-color: #fff;
    margin-right: 8px;
    transition: all 0.15s ease;
    position: relative;
}
.form-check-svg {
    opacity: 0;
    transition: opacity 0.15s ease;
}
.form-check-text {
    flex: 1;
    font-size: 1rem;
    line-height: 1.2;
}

.form-check-text a {
    color: #676767;
    border-bottom: 1px solid #676767;
    transition: all 0.15s ease;
    text-decoration: none;
}
.form-check-text a:hover {
    border-bottom: 1px solid transparent;
}

.form-agreements {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 8px;
    margin-bottom: 8px;
}
.agreements {
    margin-top: 60px;
    margin-bottom: 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #676767;
}

input[type="checkbox"]:checked ~ .form-check-label .form-check-icon {
    background-color: var(--l-blue);
    border-color: var(--d-grey);
}
input[type="checkbox"]:checked ~ .form-check-label .form-check-svg {
    opacity: 1;
}
input[type="checkbox"]:checked ~ .form-check-label .form-check-svg path {
    fill: var(--d-grey);
}

input[type="checkbox"]:disabled ~ .form-check-label {
    cursor: not-allowed;
    opacity: 0.6;
}
input[type="checkbox"]:disabled ~ .form-check-label .form-check-icon {
    background-color: #f4f4f6;
    border-color: var(--d-grey);
}
input[type="checkbox"]:disabled ~ .form-check-label .form-check-text {
    color: #a6a6a6;
}

.form-radio {
    position: relative;
}
.form-radio input[type="radio"] {
    opacity: 0;
    position: absolute;
    z-index: -1;
}
.form-radio-label {
    display: inline-block;
    margin-bottom: 0;
    padding-left: 32px;
    user-select: none;
    vertical-align: top;
}
.form-radio-icon {
    height: 24px;
    left: 0;
    position: absolute;
    top: 0;
    width: 24px;
    z-index: 0;
}
.form-radio-icon:after,
.form-radio-icon:before {
    bottom: 0;
    content: "";
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 0;
}
.form-radio-icon:before {
    background-color: #fff;
    border-radius: 50%;
    box-shadow: inset 0 0 0 2px #000;
    height: 20px;
    width: 20px;
}
.form-radio-icon:after {
    box-shadow: inset 2px -2px 0 0 #000;
    content: "";
    height: 6px;
    opacity: 0;
    transform: rotate(-45deg) translate(1px, -1px);
    width: 10px;
}
.form-radio-label:hover .form-radio-icon:before,
input[type="radio"]:checked ~ .form-radio-icon:before {
    background-color: #fcf6ed;
    box-shadow: inset 0 0 0 2px var(--accent-blue);
}
input[type="radio"]:checked ~ .form-radio-icon:after {
    opacity: 1;
}
input[type="radio"]:disabled ~ .form-radio-icon:before {
    background-color: #fff;
    box-shadow: inset 0 0 0 2px #f4f4f6;
}
input[type="radio"]:disabled ~ .form-radio-text {
    color: #a6a6a6;
}

.single-range .noUi-base:before {
    background-color: #d9d9d9;
    border-radius: 2px;
    height: 4px;
}
.single-range .noUi-connect:before {
    background-color: #000;
    border-radius: 2px;
    height: 4px;
}
.single-range .noUi-touch-area:before {
    background-color: #000;
}
.double-range {
    align-items: stretch;
    display: flex;
    position: relative;
}
.double-range:before {
    content: "-";
    left: 50%;
    margin-left: -4px;
    position: absolute;
    top: 12px;
}
.double-range .form-range-input {
    border-color: #ececf0 !important;
    width: 50%;
}
.double-range .form-range-input.input-from {
    border-bottom-right-radius: 0;
    border-right-width: 0;
    border-top-right-radius: 0;
    padding-right: 8px;
    text-align: right;
}
.double-range .form-range-input.input-to {
    border-bottom-left-radius: 0;
    border-left-width: 0;
    border-top-left-radius: 0;
    padding-left: 8px;
    text-align: left;
}
.double-range .form-range-input:focus {
    box-shadow: none;
    outline: 0;
}
.double-range .form-range-slider {
    bottom: -9px;
    left: 12px;
    position: absolute;
    right: 12px;
    top: auto;
    width: auto;
}
.input-group {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    position: relative;
    width: 100%;
}
.input-group > .form-control {
    flex: 1 1 auto;
    min-width: 0;
    position: relative;
    width: 1%;
}
.input-group-append,
.input-group-prepend {
    display: flex;
}
.header {
    background-color: #fff;
    position: sticky;
    /* position: relative; */
    top: 0;
    transition: box-shadow 0.15s;
    z-index: 1030;
}
.btn-cart {
    width: 125px;
    height: 40px;
    display: flex;
    align-items: center;
    gap: 12px;
    border: 1px solid #cccccc;
    border-radius: 12px;
    justify-content: space-between;
}
.btn-cart-buy {
    padding: 16px 64px;
    border-radius: 12px;
    border: 3px solid #ddf2ba;
    background: #ddf2ba;
    color: black;
    font-size: 18px;
    font-weight: 700;
    transition: all 0.15s;
    width: fit-content;
}
.btn-cart-buy:hover {
    background: #cce8a6;
    border-color: #cce8a6;
}
.btn-cart-buy:disabled,
.btn-cart-buy.disabled {
    opacity: 0.45;
    pointer-events: none;
}
.cart-active-order-form form {
    margin: 0;
}
.cart-active-order-form .btn-cart-buy {
    display: inline-block;
}
.cart-active-order-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.cart-checkout-options {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    max-width: 100%;
}
.cart-checkout-options .order-form-138 {
    margin: 0;
    min-width: 0;
}
.cart-checkout-option {
    text-align: center;
    white-space: normal;
}
.cart-checkout-option.is-active {
    background: #cce8a6;
    border-color: #cce8a6;
}
.cart-checkout-option--secondary {
    background: #fff;
    border-color: #ddf2ba;
}
.cart-checkout-option--secondary:hover,
.cart-checkout-option--secondary.is-active {
    background: #ddf2ba;
    border-color: #ddf2ba;
}
.cart-checkout-panel {
    margin-top: 4px;
    padding: 24px;
    border: 1px solid #e5e5e5;
    border-radius: 12px;
    background: #fff;
}
.cart-invoice-panel .order-form-140 {
    margin: 0;
}
.cart-invoice-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 20px;
}
.cart-invoice-panel .btn-cart-buy {
    margin-top: 4px;
}
.cart-paygine-status {
    margin-bottom: 12px;
    font-size: 14px;
    font-weight: 600;
    color: #555;
}
.cart-paygine-status:empty {
    display: none;
}
.cart-paygine-status[data-status="error"] {
    color: var(--red);
}
.cart-paygine-status[data-status="loading"] {
    color: #5a8f29;
}
.cart-paygine-frame {
    height: fit-content;
    border: 0;
    border-radius: 0;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.cart-paygine-iframe {
    width: 100%;
    height: fit-content;
    border: 0;
    background: #fff;
}
.cart-paygine-placeholder {
    padding: 24px;
    color: #555;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
}
.paygine-modal-fallback {
    position: fixed;
    inset: 0;
    z-index: 9999;
    padding: 24px;
    background: rgba(0, 0, 0, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
}
.paygine-modal-fallback .modal {
    max-width: 520px;
    width: 100%;
    padding: 28px;
    background: #fff;
    border-radius: 16px;
}
.paygine-modal-fallback__close {
    margin-top: 20px;
    padding: 12px 24px;
    border: 0;
    border-radius: 10px;
    background: #ddf2ba;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.15s, transform 0.15s;
}
.paygine-modal-fallback__close:hover,
.paygine-modal-fallback__close:focus {
    background: #cce8a6;
}
.cart-actions {
    margin-bottom: 0;
}
.cart-subtitle {
    font-size: 20px;
    color: var(--red);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}
.cart-order-notes {
    margin-left: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
}
.cart-min-order-note {
    font-size: 14px;
    font-weight: 600;
    color: var(--red);
    line-height: 1.25;
    background: rgba(217, 76, 76, 0.12);
    border-radius: 8px;
    padding: 4px 8px;
    max-width: fit-content;
}
.cart-min-order-note.is-reached,
.js-cart-min-order-note.is-reached,
.js-cart-free-delivery-note.is-reached {
    color: #1f8f45;
    background: rgba(31, 143, 69, 0.14);
}
@media (max-width: 767px) {
    .cart-subtitle {
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap;
        row-gap: 3px;
        column-gap: 6px;
        line-height: 1.25;
    }
    .cart-order-notes {
        flex-basis: 100%;
        align-items: flex-start;
        margin-left: 0;
        margin-top: 6px;
    }
    .cart-min-order-note {
        display: inline-block;
    }
    .cart-checkout-options {
        flex-direction: column;
    }
    .cart-checkout-options .order-form-138 {
        width: 100%;
    }
    .cart-checkout-option {
        display: block;
        width: 100%;
        max-width: 100%;
        padding: 14px 20px;
        font-size: 16px;
        line-height: 1.25;
        white-space: normal;
        overflow-wrap: anywhere;
    }
    .cart-checkout-panel {
        padding: 16px;
    }
    .cart-invoice-fields {
        grid-template-columns: 1fr;
    }
    .cart-invoice-panel .btn-cart-buy {
        display: block;
        width: 100%;
        max-width: 100%;
        padding: 14px 20px;
        font-size: 16px;
        line-height: 1.25;
        white-space: normal;
        overflow-wrap: anywhere;
    }
}
.cart-note {
    margin-top: 16px;
    margin-bottom: 38px;
}
.cart-note p {
    margin-bottom: 8px;
}
.cart-note,
.cart-list {
    padding: 0;
}
.cart-item__price {
    font-size: 14px;
    font-weight: 500;
    margin-top: 4px;
}
.cart-item__price-note {
    color: #d94c4c;
    font-size: 11px;
    font-weight: 600;
 
    white-space: nowrap;
}
.cart-item .js-cart-remove {
    margin-left: 96px;
    margin-right: 23px;
}
.cart-item .js-cart-inc,
.cart-item .js-cart-dec,
.cart-item .js-cart-remove {
    background: none;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    cursor: pointer;
    transition: transform 0.15s;
    will-change: transform;
    &:hover {
        transform: scale(1.1);
    }
}
.cart-item button svg {
    height: 100%;
}
.js-cart-inc,
.js-cart-dec {
    background: none;
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    cursor: pointer;
    transition: transform 0.15s;
    will-change: transform;
    &:hover {
        transform: scale(1.1);
    }
}
.cart-item__title {
    flex: 1 1 0;
    min-width: 0;
    margin-left: 40px;
    margin-right: auto;
    font-weight: 600;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
}
.cart-list {
    margin-bottom: 32px;
}
.cart-item {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #ccc;
    padding: 15px 0;
}
.cart-item__image {
    aspect-ratio: 1.35;
    height: 123px;
    border-radius: 12px;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    flex-grow: 0;
    overflow: hidden;
}
.cart-item__image img {
    transition: all 0.15s;
    border-radius: 12px;
}
.cart-item__image:hover img {
    transform: scale(1.04);
}
.cart-item__image .cart-item__link {
    height: 100%;
    border-radius: 12px;
    display: flex;
}
.cart-item__image .cart-item__link img {
    height: 100%;
}
.cart-item__title .cart-item__link:hover {
    color: var(--accent-blue);
}
.cart-item__title .cart-item__link {
    color: black;
    transition: all 0.15s;
}
.cart-link {
    display: flex;
}
.cart-link svg{
    width: 32px;
    height: 32px;
}
.cart-link svg path, .offcanvas-toggler:hover svg path {
    transition: all 0.15s ease;
}
.cart-link:hover svg path, .offcanvas-toggler:hover svg path {
    fill: var(--accent-blue);
}
.cart-link-count {
    position: absolute;
    background: #F4D9CB;
    color: #55565B;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    line-height: 1.5;
    top: 8px;
    right: -9px;
    padding: 12px;
    display: none;
}
.cart-link-count.is-visible {
    display: flex;
}

/* Cart page: guest warning */
.cart-guest-warning {
    margin-top: 24px;
    padding: 16px 20px;
    background: #f8f8f8;
    border: 1px solid #e5e5e5;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.6;
    color: #555;
}
.cart-guest-warning p {
    margin: 0 0 6px;
}
.cart-guest-warning p:last-child {
    margin-bottom: 0;
}

/* Cart page: auth prompt */
.cart-auth-prompt {
    margin-top: 20px;
    padding: 24px;
    background: #f3f9ec;
    border: 1px solid #ddf2ba;
    border-radius: 12px;
    text-align: center;
}
.cart-auth-prompt h3 {
    margin: 0 0 8px;
    font-size: 18px;
    font-weight: 700;
    color: #1a1a1a;
}
.cart-auth-prompt p {
    margin: 0 0 16px;
    font-size: 14px;
    color: #555;
}
.btn-cart-auth {
    display: inline-block;
    padding: 12px 32px;
    background: #5a8f29;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: background 0.2s;
}
.btn-cart-auth:hover {
    background: #4a7a22;
}

/* Cart page: pending moderation */
.cart-pending-warning {
    margin-top: 20px;
    padding: 16px 20px;
    background: #fff8e6;
    border: 1px solid #ffe7a0;
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.6;
    color: #6b5900;
}
.cart-pending-warning p {
    margin: 0;
}

/* Cart page: collapsible checkout */
.cart-link.catalog-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 32px;
    margin-bottom: 0;
    color: #000;
    text-decoration: none;
    transition: color 0.15s ease;
    width: 100%;
    justify-content: center;
}
.cart-link.catalog-link:hover,
.cart-link.catalog-link:hover span {
    color: white;
}
.cart-link.catalog-link span {
    font-size: 14px;
    font-weight: 400;
    color: #000;
    transition: color 0.15s ease;
}
.cart-link.catalog-link svg {
    width: 18px;
    height: 18px;
}
.cart-link.catalog-link svg path {
    fill: none;
    stroke: #000;
    transition: stroke 0.15s ease;
}
.cart-link.catalog-link:hover svg path {
    fill: none;
    stroke: white;
}
/* JS toggles .is-empty — :has() sibling invalidation is unreliable in Safari/iOS */
.cart-list.is-empty ~ .cart-actions,
.cart-list.is-empty ~ .cart-guest-warning,
.cart-list.is-empty ~ .cart-auth-prompt,
.cart-list.is-empty ~ .cart-pending-warning,
.cart-list.is-empty ~ .cart-checkout-dropdown {
    display: none;
}
.cart-checkout-dropdown {
    margin-top: 20px;
}
.cart-checkout-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 16px 20px;
    background: #f8f8f8;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    color: #333;
    transition: background 0.2s;
}
.cart-checkout-toggle:hover {
    background: #f0f0f0;
}
.cart-checkout-chevron {
    flex-shrink: 0;
    transition: transform 0.3s;
    color: #888;
}
.cart-checkout-chevron.is-open {
    transform: rotate(180deg);
}

.cart-checkout-body .order-wrapper {
    max-width: 900px;
}
.cart-checkout-body .order-type {
    margin-bottom: 24px;
}

.header-fixed .header {
    box-shadow: 0 4px 20px 0 #2e27271f;
}
.header-outer {
    height: 72px;
}
.header-row {
    align-content: center;
    height: 100%;
    row-gap: 16px;
    display: flex;
}
.header-col {
    align-items: center;
    column-gap: 10px;
    display: flex;
}
.header-col-text {
    font-size: 15px;
    line-height: 1.5;
    font-weight: 400;
    padding: 0;
    padding-left: 24px;
    color: var(--d-grey);
    margin-right: auto;
    margin-left: 8px;
}
.header-logo {
    display: flex;
    height: 75px;
}
.header-logo svg {
    display: block;
    height: 40px;
    width: auto;
}
.header-phones .nav-link {
    align-items: center;
    display: flex;
    height: 40px;
    justify-content: center;
    width: 40px;
}
.header-phones .nav-link svg {
    fill: #000;
    display: block;
}
.header-search {
    flex-grow: 1;
    position: relative;
}
.header-search-toggler {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    box-shadow: none;
    transition: transform 0.15s;
}
.header-search-toggler svg path {
    transition: all 0.15s ease;
}
.header-search-toggler:hover path {
    fill: var(--accent-blue);
}

.header-search-form .input-group-append {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;

    position: absolute;
    right: 0;
    top: 0;
    width: 64px;
    z-index: 1;
}
.header-search .input-group svg {
    fill: #000;
    display: block;
}
.header-search-form .input-group svg {
    fill: #000;
    display: block;
}

.header-search.opened {
    position: fixed;
    top: 20vh;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
    background: white;
    padding-top: 76px;
    padding-bottom: 102px;
    border-radius: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    min-width: 400px;
}

.header-search.opened .header-search-toggler {
    display: none;
}

.header-search.opened .header-search-form {
    display: block;
    margin: 0 auto;
}

.header-search:not(.opened) .header-search-form {
    display: none;
}

.header-search-close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
    padding: 0;
    align-items: center;
    justify-content: center;
    z-index: 1001;
    cursor: pointer;
    display: none;
    transition: transform 0.15s;
    border: none;
    box-shadow: none;
    will-change: transform;
}

.header-search-close:hover {
    transform: scale(1.02);
}

.header-search.opened .header-search-close {
    display: flex;
}

.header-search-close svg {
    fill: #6c757d;
}

.btn-buy {
    margin-top: auto;
    border: 2px solid var(--l-blue);
    background: #f7fbff;
    border-radius: 12px;
    padding: 15px 18px;
    text-align: center;
    width: 190px;
    transition: background 0.3s ease;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
}
.btn-buy.is-active {
    justify-content: space-between;
}
.btn-buy span {
    font-weight: 600;
}
.btn-buy:hover {
    background: var(--l-blue);
}

.btn-order {
    padding: 12px 60px;
    width: fit-content;
    background: #ddf2ba;
    border-radius: 12px;
    border: 2px solid #ddf2ba;
    font-weight: 600;
    transition: all 0.15s;
}
.btn-order:hover {
    background: transparent;
}

.main-new h2,
.main-hit h2 {
    margin-bottom: 0;
}

.main h2 {
    margin-bottom: 38px;
}
.main .main-categories h2 {
    margin-bottom: 0;
}
.category-content {
    margin-top: 124px;
    padding: 0;
}
@media (max-width: 768px) {
    .main h2 {
        margin-bottom: 30px;
    }
    .category-content {
        margin-top: 104px;
    }
}

.main-banner__image {
    height: 373px;
    display: flex;
    position: relative;
    align-items: center;
}

.main-banner__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
    position: absolute;
    top: 0;
    left: 0;
}

.main-banner__image-text {
    position: relative;
    margin-left: 35px;
    text-decoration: none;
    color: black;
    font-size: 46px;
    margin-bottom: 0;
}

.slider-head {
    margin-bottom: 38px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.slider-head h2 {
    margin-bottom: 0;
}

.slider-head .swiper-nav {
    display: flex;
    gap: 38px;
}

.slider-head .swiper-nav .swiper-button-next,
.slider-head .swiper-nav .swiper-button-prev {
    box-shadow: none;
    width: 40px;
    height: 40px;
    transform: scale(1);
    transition: transform 0.3s ease;
}
.slider-head .swiper-nav .swiper-button-next svg,
.slider-head .swiper-nav .swiper-button-prev svg {
    width: 40px;
    height: 40px;
    transform: scale(1);
    transition: transform 0.3s ease;
}

.slider-head .swiper-nav .swiper-button-next:hover,
.slider-head .swiper-nav .swiper-button-prev:hover {
    transform: scale(1.2);
}

.product-card:hover .product-card__image img {
    transform: scale(1.02);
}

.product-card:hover .product-card__title a {
    color: var(--accent-blue);
}

.product-card__badges {
    position: absolute;
    top: 10px;
    left: 10px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    z-index: 2;
}

.product-card__badge {
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    color: black;
    text-align: center;
    min-width: 50px;
}

.product-card {
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    background: white;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.product-card__image {
    position: relative;
    overflow: visible;
    aspect-ratio: 4 / 3;
    border-radius: 12px;
}

.product-card__image img {
    width: 100%;
    height: 100%;
    padding: 0;
    object-fit: cover;
    transition: transform 0.4s ease;
    background: #f5f5f5;
}

.product-card:hover .product-card__image img {
    transform: scale(1.02);
}

.product-card__content {
    padding: 20px;
    padding-left: 0;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    padding-top: 24px;
}

.product-card__title {
    margin: 0 0 10px 0;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4;
}

.product-card__title a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
}

.product-card__title a:hover {
    color: var(--accent-blue);
}

.product-card__description {
    color: var(--d-grey);
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 0;
    flex-grow: 0;
}

.product-card__price {
    display: flex;
    align-items: center;
    margin-top: 8px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 18px;
}

.product-card__price span {
    color: var(--red);
}

.product-card__price-current {
    font-weight: 700;
    font-size: 18px;
    color: #28a745;
}

.product-card__price-old {
    font-size: 1rem;
    color: #6c757d;
    text-decoration: line-through;
}
.header-address {
    font-size: 12px;
    font-weight: 500;
    line-height: 1.33333333;
}
.header-address span {
    color: var(--d-grey);
    display: block;
    font-weight: 400;
}
.header-nav {
    column-gap: 20px;
    flex-grow: 1;
    justify-content: center;
    position: relative;
}
.header-nav .nav-link {
    align-items: center;
    color: #000;
    column-gap: 4px;
    display: flex;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    padding: 12px 4px;
    text-transform: uppercase;
    transition: color 0.15s;
}
.header-nav .nav-link svg {
    fill: #000;
    display: block;
    transition: fill 0.15s;
}
.header-nav .nav-item.active .nav-link,
.header-nav .nav-item.show .nav-link,
.header-nav .nav-link:hover {
    color: var(--accent-blue);
}
.header-nav .nav-item.active .nav-link svg,
.header-nav .nav-item.show .nav-link svg,
.header-nav .nav-link:hover svg {
    fill: var(--accent-blue);
}
.link-col {
    padding: 0;
}
.header-mobile-action-label {
    display: none;
}
.header-auth {
    align-items: center;
    display: flex;
    gap: 12px;
    position: relative;
}
.header-auth-link {
    background: none;
    border: 0;
    color: #000;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    padding: 0;
    transition: color 0.15s ease;
}
.header-auth-link:hover {
    color: var(--accent-blue);
}
.header-auth-link--shimmer {
    background-image: linear-gradient(
        110deg,
        #000000 0%,
        #1a1a1a 18%,
        #a34f68 34%,
        #f3c4d0 48%,
        #c25f7c 62%,
        #111111 82%,
        #000000 100%
    );
    background-size: 220% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    animation: header-auth-shimmer 3.6s ease-in-out infinite alternate;
    transition: none;
}
.header-auth-link--shimmer:hover {
    color: transparent;
    -webkit-text-fill-color: transparent;
}
.header-auth-link--login {
    animation-duration: 3.6s;
    animation-delay: 0s;
}
.header-auth-link--register {
    animation-duration: 4.4s;
    animation-delay: -1.7s;
}
@keyframes header-auth-shimmer {
    from {
        background-position: 100% 50%;
    }
    to {
        background-position: 0% 50%;
    }
}
@media (prefers-reduced-motion: reduce) {
    .header-auth-link--shimmer {
        animation: none;
        background-position: 40% 50%;
    }
    .header-auth-icon--shimmer svg linearGradient animate {
        display: none;
    }
}
.header-auth-icon--shimmer svg path {
    transition: none;
}
.header-auth-icon--shimmer:hover svg path,
.header-auth-icon--shimmer:active svg path {
    fill: url(#headerAuthIconShimmer);
}
.header-auth-icon--shimmer:active {
    filter: brightness(1.12);
}
.header-auth-user {
    align-items: flex-end;
    background: none;
    border: 0;
    color: #000;
    cursor: default;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0;
    pointer-events: none;
}
.header-auth-user-phone {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
}
.header-auth-icon {
    display: none;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}
.header-auth-icon svg {
    display: block;
    height: 32px;
    width: 32px;
}
.header-auth-icon svg path {
    transition: fill 0.15s ease;
}
.header-auth-icon:hover svg path {
    fill: var(--accent-blue);
}
.header-auth-icon.is-authenticated {
    cursor: pointer;
    display: flex;
}
.header-auth-icon.is-authenticated svg path {
    fill: #20a164;
}
.header-auth-icon.is-authenticated:hover svg path {
    fill: #20a164;
}
.header-user-popup {
    background: #fff;
    border: 1px solid #e7e7e7;
    border-radius: 12px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
    min-width: 220px;
    opacity: 0;
    padding: 12px;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    transform: translateY(4px);
    transition: opacity 0.15s ease, transform 0.15s ease;
    z-index: 40;
}
.header-auth.is-open .header-user-popup {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}
.header-user-popup-caption {
    color: #7a7a7a;
    font-size: 12px;
    line-height: 1.2;
    margin-bottom: 4px;
}
.header-user-popup-phone {
    color: #000;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 10px;
}
.header-user-popup-logout {
    align-items: center;
    background: #e53935;
    border: 1px solid #e53935;
    border-radius: 10px;
    color: #fff;
    display: inline-flex;
    font-size: 14px;
    font-weight: 600;
    justify-content: center;
    line-height: 1;
    min-height: 36px;
    padding: 8px 12px;
    text-decoration: none;
    transition: background-color 0.15s ease, border-color 0.15s ease;
    width: 100%;
}
.header-user-popup-logout:hover {
    background: #c62828;
    border-color: #c62828;
}
.header-auth-user-role {
    color: #20a164;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.2;
    text-transform: uppercase;
}
.catalog-link {
    border: 2px solid var(--accent-blue);
    border-radius: 12px;
    padding: 8px 20px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: black;
}
.catalog-link span {
    font-weight: 600;
    font-size: 18px;
    line-height: 1.5;
}
.catalog-link:hover {
    background: var(--accent-blue);
    color: white;
}
.catalog-link:hover svg path {
    stroke: white;
}
.catalog-link svg path,
.catalog-link {
    transition: all 0.15s;
}
.header-nav .dropdown {
    position: static;
}
.header-nav .dropdown-menu {
    column-count: 2;
    column-fill: balance;
    column-gap: 12px;
    left: 50% !important;
    top: 100% !important;
    transform: translate3d(-50%, 0, 0) !important;
}
.header-nav .dropdown-item {
    break-inside: avoid;
    margin-top: 4px;
}
.header-nav .dropdown-item:first-child {
    margin-top: 0;
}
.topbar-phone {
    display: flex;
    gap: 8px;
    align-items: center;
}
.topbar-phone > span {
    font-size: 14px;
    color: var(--d-grey);
}
.topbar-outer {
    align-items: center;
    display: flex;
    height: 53px;
    border-bottom: 1px solid #ccc;
    justify-content: space-between;
}
.topbar-nav,
.topbar-outer {
    column-gap: 20px;
}
.topbar-nav .nav-link {
    color: #000;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    transition: color 0.15s;
}
.topbar-nav .nav-item.active .nav-link,
.topbar-nav .nav-link:hover {
    color: var(--accent-blue);
}
.topbar-contacts {
    align-items: center;
    column-gap: 20px;
    display: flex;
}
.topbar-phones {
    column-gap: 6px;
}
.topbar-phones .nav-link {
    align-items: center;
    color: #000;
    column-gap: 8px;
    display: flex;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.42857143;
    transition: color 0.15s;
}
.topbar-phones .nav-link:hover {
    color: var(--accent-blue);
}
.topbar-social.nav {
    gap: 10px;
}
.topbar-social .nav-link svg {
    display: block;
    height: 24px;
    width: 24px;
}
.topbar-social .nav-link:hover svg {
    transform: scale(1.05);
}
.topbar-social .nav-link svg {
    transition: all 0.15s ease;
}
.searchbar {
    background-color: #fff;
    bottom: 0;
    left: 0;
    position: absolute;
    width: 100%;
}
.searchbar:not(.opened) {
    display: none;
}
.searchbar .searchbar-toggler {
    background-color: initial !important;
    border-color: #0000 !important;
    margin-left: -66px;
}
.searchbar-outer {
    align-items: center;
    display: flex;
    height: 90px;
    justify-content: space-between;
}
.searchbar-form {
    margin-left: auto;
    margin-right: auto;
    max-width: 720px;
    position: relative;
    width: 100%;
}
.searchbar-form .input-group {
    z-index: 101;
}
.searchbar-form .input-group-prepend {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    padding-left: 10px;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 56px;
    z-index: 1;
}
.searchbar-form .input-group svg {
    fill: var(--d-grey);
    display: block;
}
.searchbar-form .form-control {
    padding-left: 56px;
}
.searchbar-form .form-control::placeholder {
    color: var(--d-grey);
}
.searchbar-form .ui-autocomplete {
    left: -20px !important;
    padding-top: 90px !important;
    right: -20px !important;
    top: -20px !important;
    width: auto !important;
}

.advantage-1 {
    --color: var(--color-1);
}

.advantage-2 {
    --color: var(--color-2);
}

.advantage-3 {
    --color: var(--color-3);
}

.advantage-4 {
    --color: var(--color-4);
}

.advantage-5 {
    --color: var(--color-5);
}

.advantage-6 {
    --color: var(--color-6);
}

.main-advantages {
    --color-1: #4ea615;
    --color-2: #138ed5;
    --color-3: #dc34c1;
    --color-4: #bb8c13;
    --color-5: #0ab0c7;
    --color-6: #d1165a;
}

.main-advantages h2 {
    text-align: left;
    margin: 0;
}

.main-advantages__svg {
    height: 100%;
    left: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1;
    opacity: 0;
}

.main-advantages__svg g:first-child {
    --color: var(--color-1);
}

.main-advantages__svg g:nth-child(2) {
    --color: var(--color-2);
}

.main-advantages__svg g:nth-child(3) {
    --color: var(--color-3);
}

.main-advantages__svg g:nth-child(4) {
    --color: var(--color-4);
}

.main-advantages__svg g:nth-child(5) {
    --color: var(--color-5);
}

.main-advantages__svg g:nth-child(6) {
    --color: var(--color-6);
}

.main-advantages__svg line {
    stroke: var(--color, #111);
    stroke-width: 1px;
}

.main-advantages__svg circle[r="4"] {
    fill: var(--color, #111);
}

.main-advantages__svg circle[r="8"] {
    stroke: var(--color, #111);
    stroke-width: 1px;
    fill: #fff;
}

.main-advantages__row {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1.5vw;
    margin-right: -1.5vw;
}

.main-advantages__col {
    padding-left: 2.5vw;
    padding-right: 2.5vw;
    position: relative;
    width: 100%;
}

.main-advantages__figure {
    margin-left: auto;
    margin-right: auto;
    max-width: 100vh;
    overflow: hidden;
    position: relative;
}

.main-advantages__figure:before {
    background-color: #0000;
    content: "";
    display: block;
    padding-top: 100%;
    width: 100%;
}

.main-advantages__figure img {
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
}

.main-advantages__figure img.lazyload,
.main-advantages__figure img.lazyloading {
    opacity: 0;
    transition: opacity 0.15s;
}

.main-advantages__figure img.lazyloaded {
    opacity: 1;
}

.main-advantages__figure-wrap {
    align-items: center;
    display: flex;
    justify-content: center;
    padding: 20px;
}

.main-advantages__figure-wrap img {
    display: block;
    height: auto;
    max-height: 100%;
    max-width: 100%;
    position: static;
    width: auto;
}

.main-advantages__figure-map {
    align-items: center;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.main-advantages__figure-area {
    aspect-ratio: 2/1;
    position: relative;
    width: 33.33333333%;
}

.main-advantages__figure-point {
    bottom: 0;
    display: block;
    height: 8px;
    position: absolute;
    width: 8px;
}

.main-advantages__figure-point:first-child {
    left: 0;
}

.main-advantages__figure-point:last-child {
    right: 0;
}

.main-advantages__list {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-evenly;
}

.main-advantages__item {
    padding: 32px 0;
    position: relative;
}

.main-advantages__item strong {
    color: var(--color, #111);
}

.main-advantages__item-point {
    bottom: 0;
    display: block;
    height: 8px;
    position: absolute;
    width: 8px;
}

.main-advantages__col_align_left .main-advantages__item-point {
    right: 0;
}

.main-advantages__col_align_right .main-advantages__item-point {
    left: 0;
}

.offcanvas {
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    background-color: #fff;
    max-width: 500px;
    overflow-y: auto;
    overscroll-behavior: contain;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateX(100%);
    transition: transform 0.15s ease-in-out;
    width: 100%;
    will-change: transform;
    z-index: 1050;
    height: 100dvh;
}
.offcanvas.opened {
    transform: translate(0);
}
.offcanvas-outer {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}
.offcanvas-social{
    gap: 5px;
}
.offcanvas-head {
    column-gap: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    padding: 16px 20px;
    row-gap: 20px;
}

.offcanvas-head .offcanvas-contacts .nav-link {
    align-items: center;
    display: flex;
    height: 40px;
    justify-content: center;
    width: 40px;
}
.offcanvas-head .offcanvas-contacts .nav-link svg {
    fill: #000;
    display: block;
}
.offcanvas-body {
    display: flex;
    flex: 1 0 auto;
    flex-direction: column;
    padding: 0 20px;
    row-gap: 16px;
}
.offcanvas-search {
    position: relative;
}
.offcanvas-search .form-control {
    border-color: var(--accent-blue);
}
.offcanvas-search .input-group {
    z-index: 101;
}
.offcanvas-search .input-group-append {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;

    position: absolute;
    right: 0;
    top: 0;
    width: 64px;
    z-index: 1;
}
.offcanvas-search .input-group svg {
    fill: #000;
    display: block;
}
.offcanvas-nav {
    flex-direction: column;
}

.offcanvas-nav .nav-link {
    align-items: flex-start;
    color: #000;
    column-gap: 10px;
    display: flex;
    font-weight: 500;
    justify-content: space-between;
    line-height: 1.6;
    font-size: 18px;
    padding: 12px 14px;
}
.offcanvas-nav .nav-item .nav-link {
    transition: all 0.15s ease;
}
.offcanvas-nav .nav-item .nav-link:hover {
    color: var(--accent-blue);
}
.offcanvas .catalog-link {
    color: black;
    text-transform: capitalize;
    justify-content: center;
    margin-bottom: 40px;
    margin-top: 14px;
}
.offcanvas .catalog-link:hover {
    color: white;
}
.offcanvas-nav .dropdown-toggle svg {
    fill: #000;
    display: block;
    transition: transform 0.15s;
}
.offcanvas-nav .dropdown-menu {
    background: none;
    border-radius: 0;
    box-shadow: none;
    float: none;
    left: 0;
    margin: 0;
    min-width: 0;
    padding: 0;
    position: static;
    top: 0;
    transform: none;
    z-index: 0;
}
.offcanvas-nav .dropdown-menu:after {
    content: "";
    display: block;
    height: 16px;
    width: 100%;
}
.offcanvas-nav .dropdown-item {
    margin-top: 4px;
}
.offcanvas-nav .dropdown-item:first-child {
    margin-top: 0;
}
.offcanvas-nav .dropdown-link {
    max-width: none;
}
.offcanvas-nav .dropdown.open .dropdown-toggle svg {
    transform: rotateX(-180deg);
}
.offcanvas-nav .dropdown.open .dropdown-menu {
    display: block;
}
.offcanvas-foot {
    display: flex;
    flex-direction: column;
    padding: 32px 20px;
    row-gap: 20px;
}
.offcanvas-address {
    font-size: 12px;
    font-weight: 500;
    line-height: 1.33333333;
}
.offcanvas-address span {
    color: var(--d-grey);
    display: block;
    font-weight: 400;
}
.offcanvas-phones {
    column-gap: 20px;
    row-gap: 20px;
}
.offcanvas-phones .nav-link {
    align-items: center;
    color: #000;
    column-gap: 8px;
    display: flex;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.42857143;
    transition: color 0.15s;
}
.offcanvas-phones .nav-link svg {
    fill: #000;
    display: block;
    height: 20px;
    width: 20px;
}
.offcanvas-social .nav-link svg {
    display: block;
    height: 28px;
    width: 28px;
}
.offcanvas-backdrop {
    background-color: #0000004d;
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: 1040;
}
/* ===== Auth Offcanvas ===== */
.offcanvas-auth {
    display: flex;
    flex-direction: column;
}
.offcanvas-auth .offcanvas-head {
    flex-shrink: 0;
}
.offcanvas-auth .offcanvas-auth-body {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 0 40px 32px;
}
.offcanvas-auth-title {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 4px;
}
.offcanvas-auth-tabs {
    display: grid;
    gap: 0;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 20px;
}
.offcanvas-auth-tab {
    background: #f4f4f6;
    border: 0;
    border-bottom: 2px solid transparent;
    color: #6f7482;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    padding: 12px 16px;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.offcanvas-auth-tab:hover {
    color: #212529;
}
.offcanvas-auth-tab.is-active {
    background: #eaf5e2;
    border-bottom-color: #20a164;
    color: #20a164;
}
.auth-hint {
    color: var(--d-grey);
    font-size: 13px;
    line-height: 1.5;
    margin: 0 0 16px;
}
.auth-form-offcanvas .form-group {
    margin-bottom: 14px;
}
.auth-form-offcanvas .form-label {
    color: #212529;
    display: block;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 6px;
}
.auth-form-offcanvas .form-control {
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 15px;
    padding: 10px 14px;
    width: 100%;
    transition: border-color 0.15s;
}
.auth-form-offcanvas .form-control:focus {
    border-color: #20a164;
    outline: none;
    box-shadow: 0 0 0 3px rgba(32, 161, 100, 0.12);
}
.auth-form-offcanvas .form-control.is-invalid {
    border-color: var(--red);
}
.auth-captcha {
    margin-bottom: 14px;
}
.btn-auth-green {
    align-items: center;
    background: #20a164;
    border: 2px solid #20a164;
    border-radius: 10px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-size: 15px;
    font-weight: 600;
    justify-content: center;
    line-height: 1.4;
    padding: 12px 24px;
    text-align: center;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
    width: 100%;
}
.btn-auth-green:hover {
    background: #1a8a55;
    border-color: #1a8a55;
}
.btn-auth-green:disabled {
    background: #a6d9bf;
    border-color: #a6d9bf;
    cursor: not-allowed;
}
.btn-auth-submit {
    align-items: center;
    background: transparent;
    border: 2px solid #20a164;
    border-radius: 10px;
    color: #20a164;
    cursor: pointer;
    display: inline-flex;
    font-size: 15px;
    font-weight: 600;
    justify-content: center;
    line-height: 1.4;
    margin-top: 6px;
    padding: 12px 24px;
    text-align: center;
    transition: background 0.15s, color 0.15s;
    width: 100%;
}
.btn-auth-submit:hover {
    background: #20a164;
    color: #fff;
}
.btn-auth-submit:disabled {
    border-color: #ccc;
    color: #ccc;
    cursor: not-allowed;
}
.auth-code-group {
    margin-bottom: 4px;
}
.auth-fallback-sms {
    margin: 10px 0 6px;
}
.auth-fallback-sms .btn-auth-green {
    margin-bottom: 8px;
}
.auth-fallback-sms-text {
    color: #6f7482;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
    margin: 0;
    min-height: 19px;
    padding: 0 2px;
}
.auth-user-type {
    background: #f4f4f6;
    border-radius: 10px;
    display: grid;
    gap: 4px;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 14px;
    padding: 4px;
}
.auth-user-type-btn {
    background: none;
    border: 0;
    border-radius: 8px;
    color: #6f7482;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    padding: 10px 8px;
    transition: background 0.15s, color 0.15s, box-shadow 0.15s;
}
.auth-user-type-btn:hover {
    color: #212529;
}
.auth-user-type-btn.is-active {
    background: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    color: #212529;
}
.registration-jur-fields {
    margin-bottom: 4px;
}
.auth-delivery {
    border-top: 1px solid #e5e7eb;
    margin-bottom: 14px;
    margin-top: 32px;
    padding-top: 16px;
}
.auth-delivery-title {
    color: #212529;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 6px;
}
.auth-delivery-hint {
    color: #6f7482;
    font-size: 13px;
    line-height: 1.5;
    margin: 0 0 12px;
}
.auth-delivery-tabs {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 12px;
}
.auth-delivery-tab {
    align-items: center;
    background: #fff;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    color: #212529;
    cursor: pointer;
    display: flex;
    font-size: 14px;
    font-weight: 500;
    justify-content: center;
    line-height: 1.3;
    min-height: 44px;
    padding: 12px 14px;
    position: relative;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.auth-delivery-tab-text {
    display: block;
    text-align: center;
    width: 100%;
}
.auth-delivery-tab:hover {
    border-color: #20a164;
}
.auth-delivery-tab.is-active {
    background: #eaf5e2;
    border-color: #20a164;
    color: #20a164;
}
.auth-delivery-tab-check {
    align-items: center;
    background: #20a164;
    border-radius: 50%;
    display: none;
    height: 18px;
    justify-content: center;
    pointer-events: none;
    position: absolute;
    right: 4px;
    top: 4px;
    width: 18px;
}
.auth-delivery-tab-check::after {
    border: solid #fff;
    border-width: 0 2px 2px 0;
    content: "";
    display: block;
    height: 8px;
    margin-top: -2px;
    transform: rotate(45deg);
    width: 4px;
}
.auth-delivery-tab.is-active .auth-delivery-tab-check {
    display: flex;
}
.auth-delivery-address-group {
    margin-bottom: 0;
    position: relative;
}
.auth-delivery-suggest-wrap {
    position: relative;
    z-index: 2;
}
.auth-form-offcanvas .auth-delivery-suggest {
    background: #fff;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.14);
    height: fit-content;
    margin-bottom: 16px;
    margin-top: 6px;
    max-height: 300px;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 4px 0;
}
.auth-form-offcanvas .auth-delivery-suggest::-webkit-scrollbar {
    width: 6px;
}
.auth-form-offcanvas .auth-delivery-suggest::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 999px;
}
.auth-form-offcanvas .auth-delivery-suggest-item {
    -webkit-appearance: none;
    appearance: none;
    background: #fff;
    border: 0;
    border-radius: 0;
    color: #212529;
    cursor: pointer;
    display: block;
    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
    padding: 10px 14px;
    text-align: left;
    text-transform: none;
    transition: background 0.15s ease, color 0.15s ease;
    width: 100%;
}
.auth-form-offcanvas .auth-delivery-suggest-item:hover,
.auth-form-offcanvas .auth-delivery-suggest-item.is-active {
    background: #f3faf5;
}
.auth-form-offcanvas .auth-delivery-suggest-item + .auth-delivery-suggest-item {
    border-top: 1px solid #eef0f4;
}
.auth-form-offcanvas .auth-delivery-suggest-label {
    color: #212529;
    display: block;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.45;
}
.auth-form-offcanvas .auth-delivery-suggest-item:hover .auth-delivery-suggest-label,
.auth-form-offcanvas .auth-delivery-suggest-item.is-active .auth-delivery-suggest-label {
    color: #1a8a55;
}
.auth-form-offcanvas .auth-delivery-suggest-code {
    background: #eaf5e2;
    border-radius: 4px;
    color: #20a164;
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.2;
    margin-top: 4px;
    padding: 2px 6px;
}
.auth-form-offcanvas .auth-delivery-suggest-meta {
    color: #6f7482;
    display: block;
    font-size: 12px;
    line-height: 1.4;
    margin-top: 4px;
}
.auth-form-offcanvas .auth-delivery-suggest-empty,
.auth-form-offcanvas .auth-delivery-suggest-loading {
    color: #6f7482;
    font-size: 13px;
    line-height: 1.45;
    padding: 12px 14px;
}
.auth-file-label {
    align-items: center;
    background: #f4f4f6;
    border: 1px dashed #c4c8d0;
    border-radius: 8px;
    color: #212529;
    cursor: pointer;
    display: flex;
    font-size: 14px;
    gap: 10px;
    margin-bottom: 14px;
    padding: 12px 14px;
    transition: border-color 0.15s, background 0.15s;
}
.auth-file-label:hover {
    background: #eef0f4;
    border-color: #20a164;
}
.auth-file-label.is-invalid {
    border-color: var(--red);
}
.auth-file-label input[type="file"] {
    clip: rect(0 0 0 0);
    height: 1px;
    overflow: hidden;
    position: absolute;
    width: 1px;
}
.auth-file-label svg {
    color: #6f7482;
    flex-shrink: 0;
}
.auth-file-label .form-file-text {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    overflow-wrap: anywhere;
    white-space: normal;
    word-break: break-word;
}
.auth-file-size-hint {
    color: var(--d-grey);
    font-size: 13px;
    line-height: 1.4;
    margin: -6px 0 12px;
}
.auth-cert-hint {
    align-items: flex-start;
    background: #f8f9fa;
    border-left: 3px solid #20a164;
    border-radius: 0 6px 6px 0;
    display: flex;
    font-size: 14px;
    gap: 8px;
    line-height: 1.5;
    margin-bottom: 14px;
    padding: 10px 12px;
}
.auth-cert-hint svg {
    color: #20a164;
    flex-shrink: 0;
    margin-top: 1px;
}
.auth-cert-hint a {
    color: #20a164;
    font-weight: 600;
    text-decoration: none;
}
.auth-cert-hint a:hover {
    text-decoration: underline;
}
.auth-check {
    align-items: flex-start;
    column-gap: 8px;
    cursor: pointer;
    display: flex;
    font-size: 12px;
    line-height: 1.5;
    margin-bottom: 10px;
}
.auth-check input[type="checkbox"] {
    accent-color: #20a164;
    appearance: auto;
    flex-shrink: 0;
    height: 16px;
    margin-top: 1px;
    opacity: 1;
    position: static;
    width: 16px;
    z-index: auto;
}
.auth-check a {
    color: #20a164;
    text-decoration: underline;
}
.auth-check.is-invalid {
    color: var(--red);
}
.auth-required-note {
    color: var(--red);
    font-size: 12px;
    line-height: 1.4;
    margin: 8px 2px 6px;
}
.auth-form-offcanvas .auth-status {
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.5;
    margin: 6px 0 10px;
    min-height: 0;
    padding: 10px 14px;
}
.auth-form-offcanvas .auth-status:empty {
    display: none;
}
.auth-form-offcanvas .auth-status[data-status="error"] {
    background: #fef2f2;
    border-left: 3px solid #d60000;
    color: #991b1b;
}
.auth-form-offcanvas .auth-status[data-status="success"] {
    background: #eaf5e2;
    border-left: 3px solid #20a164;
    color: #166534;
}
.auth-form-offcanvas .auth-status[data-status="loading"] {
    background: #f4f4f6;
    border-left: 3px solid #6f7482;
    color: #4b5563;
}
.auth-form-offcanvas .auth-status[data-status="info"] {
    background: #eff6ff;
    border-left: 3px solid #3b82f6;
    color: #1e40af;
}
.registration-fields {
    border-top: 1px solid #e5e7eb;
    margin-top: 10px;
    padding-top: 16px;
}
.breadcrumb {
    color: var(--d-grey);
    display: flex;
    flex-wrap: wrap;
    font-size: 14px;
    line-height: 1.43;
    list-style: none;
    margin-bottom: 20px;
    padding-left: 0;
}
.breadcrumb-item:not(.active):after {
    content: "/";
    margin-left: 8px;
    margin-right: 8px;
}
.breadcrumb-link {
    color: inherit;
    transition: color 0.15s, box-shadow 0.15s;
}
.breadcrumb-link:hover {
    box-shadow: inset 0 -1px #000;
    color: #000;
}
.pagination {
    list-style: none;
    margin-bottom: 0;
    margin-top: 48px;
    padding-left: 0;
}
.pagination,
.pagination-link {
    align-items: center;
    display: flex;
    justify-content: center;
}
.pagination-link {
    border-radius: 8px;
    color: #000;
    height: 40px;
    transition: background-color 0.15s;
    width: 40px;
    transition: all 0.15s;
}
.pagination-link svg {
    fill: #000;
    display: block;
}
.pagination-item:not(.active) .pagination-link:hover {
    color: var(--accent-blue);
}
.pagination-item svg path {
    transition: fill 0.15s;
}
.pagination-item.disabled svg path {
    fill: #ccc;
}
.pagination-item:not(.disabled):hover svg path {
    fill: var(--accent-blue);
}
.pagination-item.active .pagination-link {
    background-color: var(--l-blue);
}
.pagination-item.disabled .pagination-link {
    cursor: auto;
    pointer-events: none;
}
.share {
    text-align: left;
}
.share-title {
    margin-bottom: 12px;
}
.share .ya-share2__list {
    column-gap: 6px;
    display: flex;
    margin: 0 !important;
}
.share .ya-share2__item {
    margin: 0 !important;
    opacity: 1 !important;
}
.share .ya-share2__item .ya-share2__badge {
    align-items: center;
    background-color: #fff;
    border: 2px solid #ece7df;
    border-radius: 4px;
    display: flex;
    height: 40px;
    justify-content: center;
    transition: border-color 0.15s;
    width: 40px;
}
.share .ya-share2__link:hover .ya-share2__badge {
    border-color: var(--accent-blue);
}
.share .ya-share2__item .ya-share2__badge .ya-share2__icon {
    background-size: 28px 28px;
    height: 28px;
    width: 28px;
}
.share .ya-share2__item_service_vkontakte .ya-share2__icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='%23F9A319'%3E%3Cpath d='M10.815 15.585c-5.74 0-9.015-3.935-9.15-10.483h2.874c.095 4.806 2.215 6.842 3.894 7.261v-7.26h2.707v4.145c1.658-.179 3.4-2.068 3.988-4.145h2.707c-.45 2.56-2.34 4.45-3.683 5.226 1.343.63 3.495 2.277 4.313 5.257h-2.98c-.64-1.994-2.235-3.536-4.345-3.746v3.746h-.325z'/%3E%3C/svg%3E");
}
.share .ya-share2__item_service_odnoklassniki .ya-share2__icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='%23F9A319'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M9.963 10.26A4.274 4.274 0 0 1 7.01 9.07a4 4 0 0 1-1.23-2.858 4.048 4.048 0 0 1 1.225-2.88 4.325 4.325 0 0 1 2.96-1.225 4.3 4.3 0 0 1 1.615.312c.512.207.976.51 1.365.892.39.382.697.835.903 1.333.207.498.309 1.031.3 1.568a3.884 3.884 0 0 1-.304 1.557 3.99 3.99 0 0 1-.905 1.32c-.39.377-.854.675-1.365.876a4.255 4.255 0 0 1-1.61.295zm0-5.735a1.777 1.777 0 0 0-1.254.514c-.162.162-.29.355-.374.566a1.638 1.638 0 0 0-.115.663 1.57 1.57 0 0 0 .506 1.181 1.713 1.713 0 0 0 1.237.45c.226.005.45-.034.66-.113.21-.08.402-.198.564-.35a1.634 1.634 0 0 0 .52-1.168 1.638 1.638 0 0 0-.116-.663 1.68 1.68 0 0 0-.374-.566 1.747 1.747 0 0 0-.573-.38 1.795 1.795 0 0 0-.68-.134zm1.685 9.108 2.383 2.249a1.12 1.12 0 0 1 0 1.63c-.103.12-.232.216-.377.281a1.129 1.129 0 0 1-1.308-.28l-2.383-2.25-2.325 2.25a1.197 1.197 0 0 1-.872.337 1.42 1.42 0 0 1-.871-.338 1.12 1.12 0 0 1 0-1.63l2.44-2.249a12.293 12.293 0 0 1-2.498-1.068 1.227 1.227 0 0 1-.537-.738 1.19 1.19 0 0 1 .13-.893c.089-.136.205-.253.342-.344a1.246 1.246 0 0 1 .949-.184c.163.033.317.098.453.191a5.604 5.604 0 0 0 5.637 0 1.247 1.247 0 0 1 .946-.193 1.244 1.244 0 0 1 .797.53 1.196 1.196 0 0 1-.349 1.631c-.808.446-1.666.805-2.557 1.068z'/%3E%3C/svg%3E");
}
.share .ya-share2__item_service_telegram .ya-share2__icon {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='%23F9A319'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.145 9.135c4.08-1.772 6.796-2.949 8.16-3.52 3.882-1.62 4.698-1.9 5.223-1.912.116 0 .373.023.547.163.14.117.175.268.199.385.023.117.046.361.023.548-.21 2.215-1.12 7.588-1.586 10.06-.198 1.049-.582 1.399-.955 1.434-.816.07-1.434-.537-2.215-1.05-1.236-.804-1.924-1.305-3.124-2.098-1.387-.909-.49-1.41.303-2.226.21-.21 3.788-3.474 3.858-3.765.012-.035.012-.175-.07-.245-.081-.07-.198-.047-.291-.024-.128.024-2.087 1.33-5.898 3.905-.56.385-1.061.572-1.516.56-.501-.012-1.457-.28-2.18-.513-.874-.28-1.573-.431-1.515-.92.035-.257.385-.514 1.037-.782z'/%3E%3C/svg%3E");
}
.cards-list {
    row-gap: 20px;
}
.cards-item {
    padding: 20px;
}

.cards-item-outer {
    display: flex;
    flex-direction: column;
    height: 100%;
    position: relative;
    row-gap: 20px;
}
.cards-item-outer:hover .cards-item-image img {
    transform: scale(1.02);
}
.cards-item-outer:hover .cards-item-title {
    color: var(--accent-blue);
}
.cards-item-image {
    border-radius: 13px;
    overflow: hidden;
    position: relative;
    transition: border-color 0.15s;
}
.cards-item-image:before {
    background-color: #0000;
    content: "";
    display: block;
    padding-top: 75%;
    width: 100%;
}
.cards-item-image img {
    height: 100%;
    left: 0;
    object-fit: cover;
    overflow-clip-margin: unset;
    position: absolute;
    top: 0;
    width: 100%;
    transform: scale(1);
    transition: transform 0.15s;
}
.cards-item-image img.lazyload,
.cards-item-image img.lazyloading {
    opacity: 0;
    transition: opacity 0.15s;
}
.cards-item-image img.lazyloaded {
    opacity: 1;
}
.cards-item-image-wrap {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.cards-item-image-wrap img {
    display: block;
    height: auto;
    max-height: 100%;
    max-width: 100%;
    position: static;
    width: auto;
}
.cards-item-image-list {
    display: flex;
    height: 100%;
    left: 0;
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1;
}
.cards-item-image-list li {
    flex-grow: 1;
    position: relative;
}
.cards-item-image-pagination {
    bottom: 16px;
    display: flex;
    left: 50%;
    list-style: none;
    margin: 0;
    padding: 0;
    pointer-events: none;
    position: absolute;
    transform: translateX(-50%);
    z-index: 1;
}
.cards-item-image-pagination li {
    align-items: center;
    display: flex;
    height: 12px;
    justify-content: center;
    width: 28px;
}
.cards-item-image-pagination li:before {
    background-color: #0006;
    border-radius: 2px;
    content: "";
    display: block;
    height: 4px;
    width: 20px;
}
.cards-item-image-pagination li.active:before {
    background-color: #000;
}
.cards-item-icon svg {
    display: block;
}
.cards-item-title {
    color: #000;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.5;
    transition: color 0.15s;
}
.cards-item-link {
    color: inherit;
    hyphens: auto;
    word-wrap: break-word;
}

.form-group-file {
    position: relative;
}

.form-group-file .form-file-label {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    border: 1px dashed #ccc;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.form-group-file .form-file-label:hover {
    background-color: #f9f9f9;
}

.form-group-file .form-file-label .form-file-icon {
    transition: all 0.2s ease;
}
.form-group-file .form-file-label:hover .form-file-icon {
    transform: rotate(-57deg);
}

.form-group-file input[type="file"] {
    display: none;
}

.form-group-file .form-file-icon {
    margin-right: 8px;
}

.form-group-file .form-file-icon svg {
    display: block;
}

.form-group-file .form-file-text {
    word-break: break-all;
    font-size: .9rem;
}

.form-group-file .form-file-text .required-asterisk {
    color: var(--red);
    margin-left: 2px;
}

.form-group-file .form-file-hint {
    font-size: 14px;
    color: var(--d-grey);
    margin-top: 8px;
}

.form-group-labeled {
    position: relative;
}

.form-group-labeled .form-label {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    pointer-events: none;
    transition: all 0.2s ease-in-out;
    color: #6c757d;
    transform-origin: left;
    line-height: 1.3;
}

.form-group-labeled .form-control:focus ~ .form-label,
.form-group-labeled .form-control:not(:placeholder-shown) ~ .form-label {
    top: 3px;
    transform: translateY(-50%) scale(0.85);
    font-size: 0.9em;
    padding: 0;

    left: 1px;
}

.form-label .required-asterisk {
    color: var(--red);
    margin-left: 2px;
}

.form-group-labeled .form-control.error ~ .form-label,
.form-group-labeled .form-control.error {
    border-color: #e8262c;
}

.form-group-labeled .form-control ~ .error,
.form-check-label ~ .error {
    position: absolute;
    top: -13px;
    right: 0;
}
.form-file-label {
    transition: all 0.2s ease-in-out;
}
.form-check-label ~ .error {
    position: relative;
    width: fit-content;
    left: 30px;
    top: -5px;
}
.form-check-label ~ .error {
    top: unset;
    bottom: 1px;
    right: 22px;
}
.form-group-file.form-group-labeled .form-control ~ .error {
    top: -31px;
    right: 22px;
}
.review-head {
    display: flex;
    max-height: 80px;
    gap: 24px;
    margin-bottom: 24px;
}
.review-head img {
    height: 80px;
    width: 80px;
    border-radius: 50px;
    object-fit: cover;
}
.review-head-content {
    display: flex;
    align-items: center;
    gap: 13px;
}
.review-text-wrapper {
    position: relative;
}

.review-text{
    padding-right: 40px;
    line-height: 1.6;
    overflow: hidden;
    transition: height 0.3s ease;
    font-size: 14px;
}

.review-expand-btn {
    margin-top: 12px;
    background: transparent;
    border: none;
    color: var(--accent-blue);
    font-weight: 600;
    font-size: 16px;
    cursor: pointer;
    padding: 0;
    transition: opacity 0.3s ease;
}

.review-expand-btn:hover {
    opacity: 0.7;
}
.review-head-content-title{
    font-weight: 600;
}
.review-head-content-date{
    color: #676767;
}

@media (max-width: 1023px) {
   
    .review-head{
        align-items:center;
        gap: 12px;
    }
    .review-head-content{
        flex-direction: column;
        gap: 4px;
        align-items: flex-start;
    }
    .main-new,
    .main-hit,
    .main-reviews {
        overflow: clip;
    }
    .main-new .swiper,
    .main-hit .swiper,
    .main-reviews .swiper {
        overflow: visible;
    }
    .card-list {
        row-gap: 0;
    }
    .cards-item {
        padding: 20px;
        padding-right: 10px;
    }
    .cards-item:nth-child(2n) {
        padding-left: 10px;
        padding-right: 20px;
    }
    .main-banner__image {
        align-items: start;
    }
    .main-banner__image-text {
        margin-top: 80px;
    }
}
@media (max-width: 767px) {
    .form-group-file.form-group-labeled .form-control ~ .error {
        right: 0;
    }
    footer .footer-nav {
        column-count: 1;
    }
    .main-banner__image-text {
        font-size: 24px;
        margin-top: 30px;
    }
    .cart-item__image {
        height: 85px;
    }
    .cart-item__title {
        margin-left: 20px;
        font-size: 14px;
    }
    .cart-item .js-cart-remove {
        margin-left: 20px;
        margin-right: 0px;
    }
}
@media (max-width: 575px) {
    footer .footer-nav {
        column-count: 2;
    }
    .cards-item,
    .cards-item:nth-child(2n) {
        padding-left: 20px;
        padding-right: 10px;
    }
    .cards-item:nth-child(2n){
        padding-right: 20px;
    }
}
.section {
    margin-bottom: 104px;
    margin-top: 16px;
}
.section-layout-row {
    row-gap: 20px;
}
.section-layout-side {
    align-items: flex-end;
    display: flex;
    justify-content: flex-end;
}
.section-layout-title {
    margin-bottom: 0;
    margin-top: 0;
}
.section-head {
    align-items: center;
    box-shadow: inset 0 1px #ececf0;
    display: flex;
    justify-content: space-between;
    margin-bottom: 32px;
    padding-bottom: 12px;
    padding-top: 12px;
}
.section-foot {
    margin-top: 40px;
    text-align: center;
}
.section-date,
.section-time {
    align-items: center;
    color: var(--d-grey);
    column-gap: 4px;
    display: inline-flex;
    font-size: 14px;
    line-height: 1.42857143;
}
.section-date svg,
.section-time svg {
    fill: var(--d-grey);
    display: block;
    height: 20px;
    width: 20px;
}
.section-image {
    border-radius: 4px;
    margin: 0 0 48px;
    overflow: hidden;
}
.section-image img {
    display: block;
    width: 100%;
}
.section-content > :first-child {
    margin-top: 0;
}
.section-content > :last-child {
    margin-bottom: 0;
}
.section-content ol,
.section-content ul {
    margin-bottom: 16px;
    margin-top: 0;
}
.section-content img {
    height: auto;
    max-width: 100%;
    max-height: 100%;
}
.section-content figure {
    border-radius: 12px;
    margin: 52px 0;
    overflow: hidden;
}
.section-content figure img {
    display: block;
    width: 100%;
}
.section-nav {
    display: inline-flex;
    position: relative;
    z-index: 0;
}
.section-nav .nav-next,
.section-nav .nav-prev {
    position: absolute;
    top: 0;
    z-index: -1;
}
.section-nav .nav-next .nav-link,
.section-nav .nav-prev .nav-link {
    border-color: #0000;
    width: 320px;
}
.section-nav .nav-next .nav-link svg,
.section-nav .nav-prev .nav-link svg {
    position: absolute;
}
.section-nav .nav-next:hover,
.section-nav .nav-prev:hover {
    z-index: 1;
}
.section-nav .nav-next.disabled,
.section-nav .nav-prev.disabled {
    pointer-events: none;
}
.section-nav .nav-next.disabled svg,
.section-nav .nav-prev.disabled svg {
    fill: #ececf0;
}
.section-nav .nav-prev {
    right: 0;
}
.section-nav .nav-prev .nav-link {
    padding-left: 72px;
}
.section-nav .nav-prev .nav-link svg {
    left: 12px;
}
.section-nav .nav-next {
    left: 0;
}
.section-nav .nav-next .nav-link {
    padding-right: 72px;
}
.section-nav .nav-next .nav-link svg {
    right: 12px;
}
.section-nav .nav-link {
    align-items: center;
    background-color: #fff;
    border: 2px solid var(--accent-blue);
    border-radius: 12px;
    color: #000;
    display: flex;
    justify-content: center;
    padding: 10px 30px;
    text-align: center;
    transition: background-color 0.15s, border-color 0.15s;
    white-space: nowrap;
    width: 248px;
}
.section-nav .nav-link svg {
    fill: #000;
    display: block;
}
.section-nav .nav-link:hover {
    background-color: var(--accent-blue);
    border-color: var(--accent-blue);
}
.location-list {
    list-style: none;
    margin-bottom: 0;
    margin-top: 20px;
    padding-left: 0;
}
.location-item {
    margin-top: 4px;
}
.location-item:first-child {
    margin-top: 0;
}
.location-link {
    border-radius: 12px;
    color: #000;
    cursor: pointer;
    display: block;
    padding: 12px 20px;
    transition: background-color 0.15s;
}
.location-link:hover {
    background-color: #fcf6ed;
}
.search-result {
    align-items: center;
    column-gap: 16px;
    display: flex;
    padding: 12px 16px;
    position: relative;
}
.search-result__image {
    align-items: center;
    display: flex;
    flex-shrink: 0;
    height: 52px;
    justify-content: center;
    width: 52px;
}
.search-result__image img {
    display: block;
    height: auto;
    max-height: 100%;
    max-width: 100%;
    width: auto;
}
.search-result__title {
    color: #111;
}
.search-result__title span {
    display: block;
    margin-bottom: 4px;
}
.search-result__link {
    color: inherit;
}
.search-result__link:before {
    background-color: #0000;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.catalog-sort .dropdown-menu {
    min-width: 240px;
}
.catalog-sort .dropdown-item {
    margin-top: 12px;
}
.catalog-sort .dropdown-item:first-child {
    margin-top: 0;
}
.catalog-sort .dropdown-link {
    background-color: initial;
    min-width: 208px;
    padding: 0;
    transition: none;
}
.catalog-filter {
    position: relative;
}
.catalog-filter,
.catalog-filter-body,
.catalog-filter-foot,
.catalog-filter-head {
    background-color: #fff;
}
.catalog-filter-foot:before,
.catalog-filter-head:before {
    content: "";
    height: 20px;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: -1;
}
.catalog-filter-head {
    align-items: center;
    display: flex;
    flex-direction: row-reverse;
    height: 66px;
    justify-content: space-between;
    padding: 0;
    position: sticky;
    top: 0;
    z-index: 10;
}
.catalog-filter-head:before {
    bottom: 0;
    box-shadow: -7px 0 #fff, 7px 0 #fff, 0 -7px #fff, 0 0 7px 0 #2e272733;
}
.catalog-filter-foot {
    display: flex;
    flex-direction: column;
    padding: 20px 0;
    row-gap: 4px;
}
.catalog-filter-toggler__icon-show {
    display: block;
}
.catalog-filter-toggler__icon-hide {
    display: none;
}
.catalog-filter-toggler__icon-hide svg,
.catalog-filter-toggler__icon-show svg {
    margin-left: 0 !important;
}
.catalog-filter-opened .catalog-filter-toggler__icon-show {
    display: none;
}
.catalog-filter-opened .catalog-filter-toggler__icon-hide {
    display: block;
}
.catalog-filter-item {
    box-shadow: inset 0 -1px #ececf0;
}
.catalog-filter-toggle {
    align-items: center;
    color: #000;
    display: flex;
    justify-content: space-between;
    padding: 20px 0;
    transition: color 0.15s;
}
.catalog-filter-toggle svg {
    fill: #000;
    display: block;
    perspective-origin: 50%;
    transition: transform 0.15s;
    will-change: transform;
}
.catalog-filter-toggle:not(.collapsed) svg {
    transform: rotateX(-180deg);
}
.catalog-filter-collapse:after {
    content: "";
    display: block;
    height: 20px;
    width: 100%;
}
.catalog-filter-tooltip {
    filter: drop-shadow(4px 6px 8px rgba(0, 0, 0, 0.13));
    transform: translate3d(24px, -50%, 0);
}
.catalog-filter-tooltip .btn:before {
    border-bottom: 8px solid #0000;
    border-right: 8px solid var(--accent-blue);
    border-top: 8px solid #0000;
    content: "";
    height: 0;
    left: -8px;
    pointer-events: none;
    position: absolute;
    top: 16px;
    transition: border-color 0.15s;
    width: 0;
    z-index: 1000;
}
.catalog-filter-tooltip .btn:hover:before {
    border-right-color: var(--accent-blue);
}
.catalog-filter-tooltip .btn:disabled:before {
    border-right-color: #f4f4f6;
}
.catalog-prices {
    column-gap: 8px;
    display: flex;
    flex-wrap: wrap;
    row-gap: 24px;
    flex-direction: column;
}
.catalog-prices-item {
    align-items: center;
    column-gap: 8px;
    display: flex;
    row-gap: 4px;
}
.catalog-prices-item__value {
    display: flex;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
}
.catalog-prices-item__discount {
    background-color: #ee4c3f;
    border-radius: 4px;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.42857143;
    padding: 2px 6px;
}
.catalog-prices-item_type_old .catalog-prices-item__value {
    color: var(--d-grey);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.42857143;
    text-decoration: line-through;
}
.catalog-prices-item_type_tradein {
    align-items: normal;
    flex-basis: 100%;
    flex-direction: column;
}
.catalog-prices-item_type_tradein .catalog-prices-item__title {
    font-size: 14px;
    line-height: 1.42857143;
}
.catalog-prices-item_type_tradein .catalog-prices-item__value {
    font-size: 24px;
}
.catalog-props {
    display: flex;
    flex-direction: column;
    row-gap: 8px;
}
.catalog-props-item {
    display: flex;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
}
.catalog-props-item__title {
    color: var(--d-grey);
    margin-right: 2px;
}
.catalog-badges {
    column-gap: 8px;
    display: flex;
    flex-wrap: wrap;
}
.catalog-badges-item {
    border-radius: 5px;
    color: #000;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    padding: 5px 10px;
    text-align: center;
}
.catalog-state {
    color: #369807;
}
.docs-list {
    row-gap: 20px;
}
.docs-item__outer {
    border-radius: 12px;
    height: 100%;
    padding: 16px;
    position: relative;
    transition: box-shadow 0.15s;
}
.docs-item__outer:hover {
    box-shadow: 0 4px 20px #2e27271f;
}
.docs-item__icon {
    margin-bottom: 10px;
}
.docs-item__icon img {
    display: block;
    max-height: 40px;
    max-width: 40px;
}
.docs-item__name {
    color: #000;
}
.docs-item__name span {
    color: var(--d-grey);
}
.docs-item__link {
    color: inherit;
}
.docs-item__link:before {
    background-color: #0000;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.sets-list {
    padding-bottom: 20px;
    padding-top: 20px;
}
.sets-item__outer,
.sets-list {
    display: flex;
    flex-direction: column;
    row-gap: 20px;
}
.sets-item__outer {
    background-color: #fff;
    border: 1px solid #ececf0;
    border-radius: 32px;
    padding: 31px;
}
.sets-item__overline {
    color: var(--d-grey);
    margin-bottom: 8px;
    text-transform: uppercase;
}
.sets-item__name {
    margin-bottom: 12px;
}
.sets-item__description > :last-child {
    margin-bottom: 0;
}
.persons-item__body {
    flex-grow: 1;
}
.persons-item__role {
    margin-top: 12px;
}
.persons-item__info {
    color: var(--d-grey);
}
.persons-item__info a {
    color: inherit;
    transition: color 0.15s;
}
.persons-item__info a:hover {
    color: var(--accent-blue);
}
.reviews-item__image {
    background-color: #ece7df;
}
.promos-item__body {
    flex-grow: 1;
}
.promos-item__image:before {
    padding-top: 50%;
}
.promos-item__info {
    color: var(--d-grey);
}
.articles-item__outer {
    row-gap: 12px;
}
.articles-item__body {
    flex-grow: 1;
}
.articles-item__foot {
    align-items: center;
    box-shadow: inset 0 1px #ececf0;
    display: flex;
    justify-content: space-between;
    padding-bottom: 12px;
    padding-top: 12px;
}
.articles-item__date,
.articles-item__time {
    align-items: center;
    color: var(--d-grey);
    column-gap: 4px;
    display: flex;
    font-size: 14px;
    line-height: 1.42857143;
}
.articles-item__date svg,
.articles-item__time svg {
    fill: var(--d-grey);
    display: block;
    height: 20px;
    width: 20px;
}
.categories-item__outer {
    row-gap: 12px;
}
.categories-item__title {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.2;
}
.disclaimer {
    padding: 0;
    color: var(--d-grey);
    line-height: 1.6;
    max-width: 725px;
    margin: 0;
}
.products-layout {
    display: grid;
    grid-template-columns: 100%;
}
.products-layout-head {
    align-items: center;
    box-shadow: inset 0 -1px #ececf0;
    column-gap: 28px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 20px 0;
    row-gap: 20px;
}
.products-layout-head .catalog-filter-toggler {
    margin-right: auto;
}
.products-item.cards-item {
    padding-bottom: 0px;
}
.products-item__badges {
    left: 8px;
    position: absolute;
    top: 8px;
}
.products-item__prices {
    margin-bottom: 12px;
}
.catalog-price-guest-note {
    color: #ee4c3f;
    font-size: 10px;
    font-weight: 600;
    line-height: 1;
    margin-left: 8px;
    text-transform: lowercase;
}
.products-item__props {
    margin-top: 16px;
}
.products-item__buttons {
    align-items: center;
    column-gap: 16px;
    display: flex;
    flex-wrap: wrap;
    row-gap: 16px;
}
.product-layout {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
    display: grid;
    grid-template-columns: 100%;
}
.product-layout-head {
    position: relative;
}
.product-layout-side {
    display: flex;
    flex-direction: column;
    row-gap: 18px;
    max-height: fit-content;
    position: sticky;
    top: 120px;
}
.product-layout-body {
    display: flex;
    flex-direction: column;
    row-gap: 40px;
}
.product-badge {
    border-radius: 4px;
    left: 8px;
    padding: 4px 12px;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 8px;
    z-index: 1;
}
.product-description .table-responsive {
    overflow: visible;
}
.ingredient {
    position: relative;
}
.ingredient .ingredient-info {
    display: none;
}
.ingredient.is-open{
    margin-bottom: 12px;
}
.ingredient.is-open .ingredient-info {
    display: flex;
}
.ingredient.is-open span {
    color: var(--accent-blue);
}
.ingredient span {
    display: flex;
    width: fit-content;
    cursor: help;
    border-bottom: 1px dashed var(--accent-blue);
    transition: all 0.2s ease-in-out;
}
.ingredient span:hover {
    border-bottom: 1px dashed var(--accent-blue);
    color: var(--accent-blue);
}
.ingredient-close{
    width: 12px;
    height: 12px;
    position: absolute;
    top: 5px;
    right: 13px;
    cursor: pointer;
}
.ingredient-close svg{
    width: 100%;
    height: 100%;
}
.ingredient-info {
    position: relative;
    background: var(--grey);
    z-index: 99;
    display: none;
    min-width: 200px;
    max-width: 500px;
    align-items: center;
    gap: 24px;
    padding: 16px;
    border-radius: 12px;
    top: 8px;
}
.ingredient-info .ingredient-image {
    border-radius: 50%;
    width: 100px;
    height: 100px;
    object-fit: cover;
}
.ingredient-text {
    font-size: 14px;
}
.ingredient-text p {
    margin: 0;
}
.product-title {
    font-size: 23px;
    margin-bottom: 6px;
}
.product-description h2 {
    font-size: 18px;
    margin-bottom: 16px;
}
.product-description {
    line-height: 1.6;
}
.product-props {
    row-gap: 8px;
}
.product-prices .catalog-prices-item__value {
    font-size: 33px;
}
.product-prices .catalog-prices-item_type_old .catalog-prices-item__value {
    font-size: 14px;
}
.product-prices .catalog-prices-item_type_tradein .catalog-prices-item__value {
    font-size: 24px;
}
.product-prices-price {
    font-size: 1.125rem;
    font-weight: 600;
}
.product-prices-price span {
    color: var(--red);
    font-size: 1rem;
    font-weight: 400;
}
.product-disclaimer {
    font-size: 0.875rem;
    color: var(--d-grey);
}
.product-disclaimer span {
    color: var(--red);
}
.product-buttons {
    align-items: center;
    column-gap: 16px;
    display: flex;
    flex-wrap: wrap;
    row-gap: 16px;
}
.product-slider {
    border-radius: 12px;
    background: #f5f5f5;
}
.product-slider .swiper-product-pagination {
    display: flex;
    position: absolute;
    bottom: 20px;
    transform: translateX(-50%);
    left: 50%;
    z-index: 99;
}
.product-slider .swiper-product-pagination .swiper-pagination-bullet:before {
    background: white;
}
.product-slider .swiper-product-pagination .swiper-pagination-bullet-active:before {
    background: #676767;
}
.product-slider-item {
    display: block;
    overflow: hidden;
    position: relative;
}
.product-slider-item:before {
    background-color: #0000;
    content: "";
    display: block;
    padding-top: 75%;
    width: 100%;
}
.product-slider-item img {
    height: 100%;
    left: 0;
    object-fit: cover;
    overflow-clip-margin: unset;
    position: absolute;
    top: 0;
    width: 100%;
}
.product-slider-item img.lazyload,
.product-slider-item img.lazyloading {
    opacity: 0;
    transition: opacity 0.15s;
}
.product-slider-item img.lazyloaded {
    opacity: 1;
}
.product-slider-item-wrap {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.product-slider-item-wrap img {
    display: block;
    height: 100%;
    padding: 0;
    max-width: 100%;
    position: static;
    width: auto;
}
.ingredients-list {
    row-gap: 50px;
    margin-top: 72px;
}
.ingredient-card {
    display: flex;
    column-gap: 16px;
    position: relative;
}
.ingredient-card::before{
    content: attr(data-first-letter);
    position: absolute;
    top: -60px;
    left: -10px;
    font-size: 100px;
    line-height: 1;
    font-family: 'Play';
    font-weight: 800;
    color: transparent;
    -webkit-text-stroke: 2px #DDF2BA;
    text-stroke: 2px #DDF2BA;
    z-index: -1;
}
.ingredient-card > img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
}
.ingredient-card-content {
    padding-right: 50px;
}


@media (max-width: 768px) {
    .ingredient-card-content h4{
        overflow-wrap: anywhere;
    }
    .product-slider-item-wrap img {
    }
    .ingredient-card-content {
        padding-right: 16px;
    }
}
.contacts h2{
    margin-top: 0;
}
.contacts h1{
    margin-bottom: 8px;
}

.contacts-list {
    display: flex;
    flex-direction: column;
}
.contacts-item {
    border-bottom: 1px solid #00000020;
    padding-bottom: 16px;
    padding-top: 16px;
    height: fit-content;
}
.contacts-item__title {
    color: var(--d-grey);
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 6px;
    max-width: 300px;
}
.contacts-item__value {
    column-gap: 24px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    row-gap: 8px;
    align-items: flex-start;
}
.contacts-item__value .soc-link {
    display: flex;
    gap: 8px;
    align-items: center;
    height: fit-content;
    text-decoration: none;
    color: black;
    font-weight: 600;
    transition: all 0.15s ease;
}
.contacts-item__value .soc-link:hover {
    color: var(--accent-blue);
}
.contacts-item__value .soc-link svg {
    transition: all 0.15s ease;
}
.contacts-item__value .soc-link:hover svg {
    transform: scale(1.05);
}
.soc-link svg {
    width: 22px;
    height: 22px;
}
.contacts-item__address {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
}
.contacts-item__address span {
    color: var(--d-grey);
    display: block;
    font-weight: 400;
    margin-top: 4px;
}
.contacts-item__phones {
    column-gap: 24px;
    row-gap: 20px;
}
.contacts-item__phones .nav-link {
    align-items: center;
    color: #000;
    column-gap: 8px;
    display: flex;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
    transition: color 0.15s;
}
.contacts-item__phones .nav-item {
    display: flex;
    gap: 12px;
    align-items: center;
}
.contacts-item__phones .nav-item > span {
    color: var(--d-grey);
    font-size: 14px;
}
.contacts-item__phones .nav-link svg {
    fill: #000;
    display: block;
    transition: fill 0.15s;
}
.contacts-item__phones .nav-link:hover {
    color: var(--accent-blue);
}
.contacts-item__phones .nav-link:hover svg {
    fill: var(--accent-blue);
}
.contacts-item__social .nav-link svg {
    display: block;
    height: 28px;
    width: 28px;
}
.contacts-item__worktime {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
}
.contacts-map {
    border-radius: 20px;
    height: 480px;
    overflow: hidden;
}
.search-item__outer {
    box-shadow: inset 0 -1px #ececf0;
    padding-bottom: 20px;
    padding-left: 30px;
    padding-top: 20px;
    position: relative;
}
.search-item__number,
.search-item__title {
    color: #000;
}
.search-item__number {
    left: 0;
    position: absolute;
    text-align: center;
    width: 26px;
}
.search-item__link {
    color: inherit;
    transition: color 0.15s;
}
.search-item__link:before {
    background-color: #0000;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.search-item__link:hover {
    color: var(--accent-blue);
}
.search-item__text {
    margin-top: 16px;
}
.search-item__text > :last-child {
    margin-bottom: 0;
}
.solution .section-image {
    margin-top: 40px;
}
.solution-content > .row {
    row-gap: 28px;
}
.notfound {
    text-align: center;
}
.notfound-code {
    font-size: 100px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 20px;
}
.notfound-button {
    margin-top: 40px;
}
.main-hero {
    margin-top: 0;
}
.main-hero-slider {
    aspect-ratio: 21/9;
    border-radius: 20px;
}

.main-hero-slider-item__outer {
    height: 100%;
    overflow: hidden;
    position: relative;
}
.main-hero-slider-item__back {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1;
}
.main-hero-slider-item__bg {
    background-position: 50%;
    background-size: cover;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.main-hero-slider-item__video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.main-hero-slider-item__image {
    align-items: center;
    bottom: 20px;
    display: flex;
    height: 240px;
    justify-content: center;
    position: absolute;
    right: 20px;
    width: 240px;
}
.main-hero-slider-item__image img {
    display: block;
    max-height: 100%;
    max-width: 100%;
}
.main-hero-slider-item__front {
    height: 100%;
    padding: 40px 20px;
    width: 100%;
    display: flex;
}
.main-hero-slider-item__inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    text-align: center;
}
.main-hero-slider-item__button {
    margin-top: 32px;
}
.main-hero-slider-item__button .btn {
    color: inherit;
}
.main-article_with_image {
    background-color: #fcf6ed;
    padding: 40px 0;
}
.main-article_with_image .main-article-row {
    row-gap: 40px;
}
.main-about-slider-item img {
    aspect-ratio: 1.22;
    height: auto;
    width: 100%;
    object-fit: cover;
    border-radius: 12px;
    overflow: clip;
    overflow-clip-margin: 0px;
}
.main-about-slider .swiper-about-pagination {
    position: absolute;
    bottom: 25px;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 99;
    gap: 22px;
}
.swiper-about-pagination {
    display: flex;
}
.main-about-slider .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
}
.main-about-slider .swiper-pagination-bullet::before {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}
.main-about__row {
    row-gap: 60px;
}
.main-about-button {
    margin-top: 40px;
}
.section-about__text-wrapper{
    margin-right: auto;
}
.course-about__media {
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    aspect-ratio: 372/279;
}
.course-about__image {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.course-about__video-button{
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: white;
    color: #278BB6;
    border: 2px solid white;
    padding: 14px 23px;
    border-radius: 12px;
    font-size: 1rem;
    min-width: max-content;
    display: flex;
    align-items: center;
    gap: 10px;
    line-height: 1;
    cursor: pointer;
    transition: all 0.2s ease;
}
.course-about__video-button:hover{
    
    transform: translateX(-50%) scale(1.03);
}
.course-about__video-icon {
    align-items: center;
    display: inline-flex;
    justify-content: center;
}
.course-about__video-icon svg {
    fill: currentColor;
    display: block;
}
@media (max-width: 768px) {
    .course-about__video-button {
        bottom: 16px;
    }
}
.main .product-card__image{
    /* overflow: clip; */
}
/* Main Info Slider Crossfade Effect */
.main-info-slider {
    overflow: visible;
    position: relative;
    pointer-events: none;
}

.main-info-slider-wrapper {
    position: relative;
    width: 100%;
    min-height: 300px;
}

.main-info-slider-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    transition: opacity 0.4s ease-in-out, transform 0.2s ease;
    z-index: 1;
    pointer-events: none;
    text-align: center;
    padding: 48px;
    border-radius: 20px;
}
.main-info-slider-item svg{
    margin-bottom: 20px;
}
.main-info-slider-item.active {
    opacity: 1;
    z-index: 2;
    pointer-events: auto;
}


.main-info-slider-item:first-child {
    position: relative;
}
.main-info-slider-wrapper .main-info-slider-item .info-card__title{
    margin-top: 0;
    margin-bottom: 48px;
    font-size: 30px;
    line-height: 1.25;
    height: fit-content;
}
.main-info-slider-wrapper .main-info-slider-item:nth-child(4n+1) {
    background-color: #F0F6ED;
    color: #4EA615;
}
.main-info-slider-wrapper .main-info-slider-item:nth-child(4n+1) svg path{
    fill: #4EA615;
}
.main-info-slider-wrapper .main-info-slider-item:nth-child(4n+2) {
    background-color: #EBF4FA;
    color: #138ED5;
}
.main-info-slider-wrapper .main-info-slider-item:nth-child(4n+2) svg path{
    fill: #138ED5;
}
.main-info-slider-wrapper .main-info-slider-item:nth-child(4n+3) {
    background-color: #FBF6EA;
    color: #BB8C13;
}
.main-info-slider-wrapper .main-info-slider-item:nth-child(4n+3) svg path{
    fill: #BB8C13;
}
.main-info-slider-wrapper .main-info-slider-item:nth-child(4n+4) {
    background-color: #FAEFF3;
    color: #D1165A;
}
.main-info-slider-wrapper .main-info-slider-item:nth-child(4n+4) svg path{
    fill: #D1165A;
}
.main-info-slider-wrapper .main-info-slider-item .info-card__text{
    color: black;
    font-size: 16px;
    line-height: 1.6;
}
.main-faq__list {
    margin-bottom: 40px;
}
.main-faq__item {
    padding-left: 0;
    border-bottom: 1px solid #ccc;
}
.main-faq__item.active .main-faq__item-title {
    color: var(--accent-blue);
}
.main-faq__item.active .main-faq__item-icon path {
    fill: var(--accent-blue);
}
.main-faq__item:first-child .main-faq__item-title {
    padding-top: 0;
}
.main-faq__item-title {
    display: flex;
    align-items: center;
    font-weight: 600;
    font-size: 18px;
    padding-bottom: 16px;
    padding-top: 16px;
    padding-right: 120px;
}
.main-faq__item-content {
    padding-left: 16px;
    color: var(--d-grey);
    padding-right: 120px;
}

/* Стили для иконки FAQ */
.main-faq__item-title {
    cursor: pointer;
    position: relative;
    transition: color 0.3s ease;
}

.main-faq__item-icon {
    position: absolute;
    right: 0;
    transition: transform 0.3s ease;
    transform-origin: center;
    height: 24px;
}

.main-faq__item-icon path {
    transition: fill 0.3s ease;
}

.main-faq__item-icon.rotated {
    transform: rotate(180deg);
}

.main-about-stats {
    align-items: center;
    display: flex;
    flex-direction: column;
    margin-left: auto;
    margin-right: auto;
    max-width: 538px;
}
.main-about-stats__number {
    border-radius: 12px;
    display: block;
    overflow: hidden;
}
.main-about-stats__number img,
.main-about-stats__number svg {
    display: block;
    height: auto;
    max-width: 100%;
    transition: transform 0.15s ease-in-out;
}
.main-about-stats__text {
    color: #000;
    margin-top: 20px;
    text-align: center;
    text-transform: uppercase;
    transition: color 0.15s;
}
.main-about-stats:hover .main-about-stats__number img,
.main-about-stats:hover .main-about-stats__number svg {
    transform: scale(1.025);
}
.main-about-stats:hover .main-about-stats__text {
    color: var(--accent-blue);
}
.main-about-social {
    column-gap: 6px;
    justify-content: center;
    margin-top: 40px;
}
.main-about-social .nav-link {
    height: 40px;
    width: 40px;
}
.main-about-social .nav-link svg {
    height: 28px;
    width: 28px;
}
.main-reviews-slider {
    overflow: visible;
}
.main-reviews-slider-item {
    cursor: grab;
    width: fit-content;
    padding: 0;
}

.main-advantages__outer {
    background-color: #fcf6ed;
    border-radius: 32px;
    margin: 0 -8px;
    padding: 40px 8px;
}
.main-advantages .section-title {
    margin-bottom: 40px;
    text-align: center;
}
.main-advantages__list {
    row-gap: 20px;
}
.main-advantages-item__outer {
    align-items: center;
    display: flex;
    flex-direction: column;
    padding: 20px 0;
    row-gap: 20px;
}
.main-advantages-item__image {
    border-radius: 50%;
    box-shadow: 0 0 0 20px #fcf6ed;
    height: 76px;
    overflow: hidden;
    position: relative;
    width: 76px;
}
.main-advantages-item__image:before {
    background-color: #0000;
    content: "";
    display: block;
    padding-top: 100%;
    width: 100%;
}
.main-advantages-item__image img {
    height: 100%;
    left: 0;
    object-fit: cover;
    overflow-clip-margin: unset;
    position: absolute;
    top: 0;
    width: 100%;
}
.main-advantages-item__image img.lazyload,
.main-advantages-item__image img.lazyloading {
    opacity: 0;
    transition: opacity 0.15s;
}
.main-advantages-item__image img.lazyloaded {
    opacity: 1;
}
.main-advantages-item__text {
    color: #000;
    max-width: 240px;
    text-align: center;
}
.main-feedback__outer {
    background-color: #edf5fc;
    border-radius: 32px;
    padding: 32px;
}
.main-feedback .section-title {
    margin-bottom: 40px;
}
.main-feedback__form {
    display: flex;
    flex-direction: column;
    row-gap: 40px;
}
.main-feedback__form textarea {
    height: 76px;
}
.main-feedback__form button {
    width: 100%;
}
.main-feedback__form .form-text {
    max-width: 340px;
}
.main-feedback__banner {
    border-radius: 32px;
    display: block;
    height: 100%;
    max-height: 376px;
    overflow: hidden;
    position: relative;
    width: 100%;
}
.main-feedback__banner:before {
    background-color: #0000;
    content: "";
    display: block;
    padding-top: 62.5%;
    width: 100%;
}
.main-feedback__banner img {
    height: 100%;
    left: 0;
    object-fit: cover;
    overflow-clip-margin: unset;
    position: absolute;
    top: 0;
    width: 100%;
}
.main-feedback__banner img.lazyload,
.main-feedback__banner img.lazyloading {
    opacity: 0;
    transition: opacity 0.15s;
}
.main-feedback__banner img.lazyloaded {
    opacity: 1;
}
.main-feedback__banner:before {
    content: none !important;
}
.main-callback .btn-primary {
    padding: 15px 88.5px;
}
.main-callback__outer {
    overflow: hidden;
    position: relative;
    border-radius: 20px;
}
.main-callback__back {
    z-index: -1;
}
.main-callback__back,
.main-callback__bg {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.main-callback__bg {
    background-position: 50%;
    background-size: cover;
}
.main-callback__title {
    color: black;
    margin-bottom: 8px;
}
.main-callback__image {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: end;
    position: absolute;
    right: 0;
    top: 0;
    width: 33%;
}
.main-callback__image img {
    display: block;
    max-height: 100%;
    max-width: 100%;
    object-fit: cover;
    width: 100%;
    height: 100%;
    overflow-clip-margin: border-box;
}
.main-callback__front {
    padding: 40px 20px;
}
.main-callback__form {
    margin-top: 38px;
}
.main-callback__required-note {
    font-size: 14px;
    line-height: 1.3;
    color: var(--red);
}
.main-delivery-wrap {
    position: relative;
}
.main-delivery-text {
    color: #000;
    margin-bottom: 20px;
}
.main-delivery-text ul > li:before {
    background-color: #fbac4c;
}
.main-delivery-map {
    overflow: hidden;
    position: relative;
}
.main-delivery-map:before {
    background-color: #0000;
    content: "";
    display: block;
    padding-top: 50%;
    width: 100%;
}
.main-delivery-map img {
    height: 100%;
    left: 0;
    object-fit: cover;
    overflow-clip-margin: unset;
    position: absolute;
    top: 0;
    width: 100%;
}
.main-delivery-map img.lazyload,
.main-delivery-map img.lazyloading {
    opacity: 0;
    transition: opacity 0.15s;
}
.main-delivery-map img.lazyloaded {
    opacity: 1;
}
.brands-item__image {
    border: 0;
}
.main-brands-slider {
    margin: 0 calc(50% - 50vw);
    padding: 0 calc(50vw - 50% - 20px);
    position: relative;
}
.main-brands-slider-item {
    padding-bottom: 0;
    padding-top: 0;
}
.main-licenses-slider {
    margin: -20px calc(50% - 50vw) 0;
    padding: 20px calc(50vw - 50% - 20px) 40px;
    position: relative;
}
.main-licenses-slider-wrap .swiper-navigation {
    column-gap: 16px;
    display: flex;
    justify-content: flex-end;
}
.set-products-item__outer {
    box-shadow: inset 0 -1px #ececf0;
    column-gap: 40px;
    display: flex;
    justify-content: space-between;
    padding: 12px 0;
    position: relative;
    row-gap: 12px;
}
.set-products-item__link:before {
    background-color: #0000;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}
.calc__outer {
    background-color: #f4f4f6;
    border-radius: 32px;
    padding: 32px;
}
.calc__form {
    display: flex;
    flex-direction: column;
    row-gap: 48px;
}
.calc h2 {
    margin-bottom: 40px;
}
.calc label {
    color: #000;
    display: block;
    margin-bottom: 12px;
    max-width: 184px;
    text-transform: uppercase;
}

.faq-wrapper {
    margin-bottom: 150px;
    margin-top: 44px;
}

.timeline {
    overflow: hidden;
    position: relative;
}
.timeline:before {
    background-color: #000;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    top: 10px;
    width: 100%;
}
.timeline-item {
    align-items: center;
    color: #a6a6a6;
    display: flex;
    flex-direction: column;
    height: 120px;
    row-gap: 12px;
    text-align: center;
    transform-origin: top;
    transition: color 0.15s, transform 0.15s;
}
.timeline-item:before {
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 50%;
    content: "";
    display: block;
    height: 20px;
    transition: background-color 0.15s;
    width: 20px;
}
.timeline-item.swiper-slide-next,
.timeline-item.swiper-slide-prev {
    color: var(--d-grey);
    transform: scale(0.75) translateY(5px);
}
.timeline-item.swiper-slide-active {
    color: #000;
}
.timeline-item.swiper-slide-active:before {
    background-color: #000;
}
.timeline-item:not(.swiper-slide-prev):not(.swiper-slide-next):not(.swiper-slide-active) {
    transform: scale(0.5) translateY(10px);
}
.timeline-item:hover {
    color: #000;
}
.timeline-item:hover:before {
    background-color: #000;
}
.history-item__image {
    display: flex;
    justify-content: center;
}
.history-item__image img {
    display: block;
    max-width: 100%;
}
.history-item .row {
    row-gap: 40px;
}
.history-item .section-content ol > li:before {
    color: var(--accent-blue);
}
.history-item .section-content ol,
.history-item .section-content ul {
    margin-bottom: 16px;
    margin-top: 0;
}
.history-item .section-content ol > li,
.history-item .section-content ul > li {
    margin-bottom: 8px;
}
.main-history-timeline-wrap .swiper-navigation {
    display: flex;
    justify-content: space-between;
    margin-bottom: 64px;
}
.main-history-slider-wrap .swiper-navigation {
    column-gap: 16px;
    display: flex;
    margin-bottom: 48px;
}
.footer {
    background-color: #f4f4f6;
    padding-bottom: 20px;
    padding-top: 40px;
}
.footer-contacts-wrapper {
    margin-left: auto;
}
.footer-social-item{
    width: fit-content;
}
.footer-social-item a {
    display: flex;
    align-items: center;
    color: black;
    text-decoration: none;
    gap: 8px;
    margin-top: 16px;
    transition: all 0.2s ease-in-out;
}
.footer-social-item a:hover {
    color: var(--accent-blue);
}
.footer-main .row {
    row-gap: 40px;
}
.footer-nav {
    display: block;
    column-count: 2;
    column-fill: balance;
    column-gap: 40px;
}

.footer-nav .nav-link {
    color: #000;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 16px;
    transition: color 0.15s;
}
.footer-nav .catalog-link span {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
}
.footer-nav .catalog-link {
    border: none;
    padding: 0;
}
.footer-nav .catalog-link:hover {
    background: unset;
}
.footer-nav .catalog-link:hover span {
    color: var(--accent-blue);
}
.footer-nav .catalog-link svg {
    display: none;
}
.footer-nav .nav-item.active .nav-link,
.footer-nav .nav-link:hover {
    color: var(--accent-blue);
}
.footer-contacts {
    display: flex;
    flex-direction: column;
}
.footer-address {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.6;
    margin-top: 16px;
}
.footer-address span {
    color: var(--d-grey);
    display: block;
    font-weight: 400;
}
.footer-phones {
    column-gap: 20px;
    row-gap: 20px;
}
.footer-phones .nav-item {
    padding-left: 0;
    display: flex;
    gap: 8px;
    align-items: center;
}
.footer-phones .nav-link {
    align-items: center;
    color: #000;
    column-gap: 8px;
    display: flex;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.42857143;
    transition: color 0.15s;
}
.footer-phones .nav-link svg {
    fill: #000;
    display: block;
    height: 20px;
    transition: fill 0.15s;
    width: 20px;
}
.footer-phones .nav-link:hover {
    color: var(--accent-blue);
}
.footer-phones .nav-link:hover svg {
    fill: var(--accent-blue);
}
.footer-social .nav-link svg {
    display: block;
    height: 28px;
    width: 28px;
}
.footer-side {
    font-size: 14px;
    line-height: 1.5;
    margin-top: 44px;
    padding-top: 16px;
    border-top: 1px solid rgba(0, 0, 0, 0.4);
}
.footer-side .row {
    row-gap: 30px;
}
.footer-side .col {
    display: flex;
    flex-direction: column;
    row-gap: 8px;
}
.footer-side .nav-link {
    display: inline;
}
.developer a {
    color: var(--accent-blue);
    border-bottom: 1px solid transparent;
    transition: color 0.15s, border-color 0.15s;
}
.developer a:hover {
    color: var(--accent-blue);
    border-color: var(--accent-blue);
}
.footer-developer {
    display: flex;
}
.developer {
    align-self: end;
}

footer .legal-info {
    padding: 0;
}

.footer-info-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
    margin: 0;
    padding: 0;
    margin-top: 0;
}
.footer-info-content ul {
    gap: 8px;
    display: flex;
    flex-direction: column;
}
.footer-info-item.active .footer-info-content {
    margin-top: 8px;
}

.footer-info-title {
    cursor: pointer;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    font-family: "Montserrat";
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 160%;
    color: var(--d-grey);
    flex: none;
    order: 0;
    flex-grow: 0;
}
.footer-info-title:after {
    content: "";
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjUiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNSAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyLjUwMDggMTYuNzQ5OEMxMi4zMDE4IDE2Ljc1MDggMTIuMTEwNyAxNi42NzE1IDExLjk3MDggMTYuNTI5OEwzLjk3MDgyIDguNTI5ODVDMy42OTU0NiA4LjIzNDM0IDMuNzAzNTkgNy43NzM4NCAzLjk4OTIgNy40ODgyM0M0LjI3NDgxIDcuMjAyNjEgNC43MzUzMSA3LjE5NDQ5IDUuMDMwODIgNy40Njk4NUwxMi41MDA4IDE0LjkzOThMMTkuOTcwOCA3LjQ2OTg1QzIwLjI2NjMgNy4xOTQ0OSAyMC43MjY4IDcuMjAyNjEgMjEuMDEyNCA3LjQ4ODIzQzIxLjI5ODEgNy43NzM4NCAyMS4zMDYyIDguMjM0MzQgMjEuMDMwOCA4LjUyOTg1TDEzLjAzMDggMTYuNTI5OEMxMi44OTA5IDE2LjY3MTUgMTIuNjk5OSAxNi43NTA4IDEyLjUwMDggMTYuNzQ5OFoiIGZpbGw9IiM2NzY3NjciLz4KPC9zdmc+Cg==);
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-left: 8px;
    transform: rotate(0deg);
    transition: transform 0.3s ease-out;
}
.footer-info-item.active .footer-info-title:after {
    transform: rotate(180deg);
}
.footer-info-item {
    width: 100%;
    margin: 0;
    border-radius: 16px;
}
.footer-info-item a {
    color: var(--d-grey);
    text-decoration: none;
    box-shadow: inset 0 -1px var(--d-grey);
    transition: color 0.15s, box-shadow 0.15s;
}
.footer-info-item a:hover {
    color: var(--accent-blue);
    box-shadow: inset 0 -1px var(--accent-blue);
}
.footer-info-item ul {
    margin-bottom: 20px;
}
/* .footer-info-item ul:not([class]) > li:before {
    background: white;
    border-radius: 50%;
    content: "";
    display: block;
    height: 6px;
    left: 0.9rem;
    position: absolute;
    top: 0.49rem;
    width: 6px;
} */
.footer-info-item .meta,
.footer-info-item li {
    font-family: "Montserrat";
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 140%;
    color: var(--d-grey);
    padding-left: 0;
}
.footer-info-item .meta {
    display: flex;
    margin-left: 7px;
}
.footer-info-item .meta svg {
    flex-shrink: 0;
}

@media (max-width: 992px) {
    .footer-info-item ul {
        padding-left: 30px;
    }
    .footer-info-item {
        margin-bottom: 24px;
    }
}

.main-text {
}
.main-text__wrapper-inner {
    padding: 0;
}
.main-text__wrapper-inner ul {
    display: flex;
    flex-direction: column;
    row-gap: 8px;
    padding-left: 21px;
    margin: 0;
}
.main-text__wrapper-inner li:last-child {
    margin-bottom: 0;
}
.main-text__wrapper {
    position: relative;
    background-image: url(/images/index/824996ec-270f-4a94-846a-01c905a4c98a_1.png);
    background-position: right;
    background-repeat: no-repeat;
    overflow: visible;
    padding-bottom: 64px;
    margin-bottom: -64px;
}
.main-text__image {
    position: absolute;
    top: 0;
    right: 0;
    height: fit-content;
}
.main-text__image img {
    width: 100%;
}

@media (max-width: 768px) {
    .main-text__image {
        bottom: -50px;
    }
}
@keyframes rotation {
    0% {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(1turn);
    }
}
@media (min-width: 576px) {
    .col-sm {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }
    .row-cols-sm-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .row-cols-sm-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .row-cols-sm-3 > * {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }
    .row-cols-sm-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
    }
    .row-cols-sm-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
    }
    .row-cols-sm-6 > * {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-sm-auto {
        flex: 0 0 auto;
        max-width: 100%;
        width: auto;
    }
    .col-sm-1 {
        flex: 0 0 8.33333333%;
        max-width: 8.33333333%;
    }
    .col-sm-2 {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }
    .col-sm-4 {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }
    .col-sm-5 {
        flex: 0 0 41.66666667%;
        max-width: 41.66666667%;
    }
    .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .col-sm-7 {
        flex: 0 0 58.33333333%;
        max-width: 58.33333333%;
    }
    .col-sm-8 {
        flex: 0 0 66.66666667%;
        max-width: 66.66666667%;
    }
    .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }
    .col-sm-10 {
        flex: 0 0 83.33333333%;
        max-width: 83.33333333%;
    }
    .col-sm-11 {
        flex: 0 0 91.66666667%;
        max-width: 91.66666667%;
    }
    .col-sm-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .order-sm-first {
        order: -1;
    }
    .order-sm-last {
        order: 13;
    }
    .order-sm-0 {
        order: 0;
    }
    .order-sm-1 {
        order: 1;
    }
    .order-sm-2 {
        order: 2;
    }
    .order-sm-3 {
        order: 3;
    }
    .order-sm-4 {
        order: 4;
    }
    .order-sm-5 {
        order: 5;
    }
    .order-sm-6 {
        order: 6;
    }
    .order-sm-7 {
        order: 7;
    }
    .order-sm-8 {
        order: 8;
    }
    .order-sm-9 {
        order: 9;
    }
    .order-sm-10 {
        order: 10;
    }
    .order-sm-11 {
        order: 11;
    }
    .order-sm-12 {
        order: 12;
    }
    .offset-sm-0 {
        margin-left: 0;
    }
    .offset-sm-1 {
        margin-left: 8.33333333%;
    }
    .offset-sm-2 {
        margin-left: 16.66666667%;
    }
    .offset-sm-3 {
        margin-left: 25%;
    }
    .offset-sm-4 {
        margin-left: 33.33333333%;
    }
    .offset-sm-5 {
        margin-left: 41.66666667%;
    }
    .offset-sm-6 {
        margin-left: 50%;
    }
    .offset-sm-7 {
        margin-left: 58.33333333%;
    }
    .offset-sm-8 {
        margin-left: 66.66666667%;
    }
    .offset-sm-9 {
        margin-left: 75%;
    }
    .offset-sm-10 {
        margin-left: 83.33333333%;
    }
    .offset-sm-11 {
        margin-left: 91.66666667%;
    }
    .d-sm-none {
        display: none !important;
    }
    .d-sm-inline {
        display: inline !important;
    }
    .d-sm-inline-block {
        display: inline-block !important;
    }
    .d-sm-block {
        display: block !important;
    }
    .d-sm-flex {
        display: flex !important;
    }
    .d-sm-inline-flex {
        display: inline-flex !important;
    }
    .offcanvas-body,
    .offcanvas-foot,
    .offcanvas-head {
        padding-left: 40px;
        padding-right: 40px;
    }
    .location-list {
        column-count: 2;
        column-fill: balance;
        column-gap: 20px;
    }
    .location-item {
        break-inside: avoid;
    }
    .product-badge {
        left: 20px;
        top: 20px;
    }
    .main-advantages__outer {
        margin-left: -28px;
        margin-right: -28px;
        padding-left: 28px;
        padding-right: 28px;
    }
    .main-advantages__list {
        margin-left: -28px;
        margin-right: -28px;
        overflow: hidden;
        padding-left: 8px;
        padding-right: 8px;
        position: relative;
    }
    .main-advantages__list:before {
        bottom: 100%;
        content: "";
        left: 50%;
        padding-top: 25%;
        position: absolute;
        transform: translate(-50%, 78px);
        width: 133%;
    }

    .main-feedback__form button {
        width: 216px;
    }
    .main-callback__outer {
        margin-left: -40px;
        margin-right: -40px;
    }
    .main-callback__front {
        padding-left: 40px;
        padding-right: 40px;
    }
}
@media (min-width: 768px) {
    h1.section-layout-title {
        margin-bottom: 38px;
    }
    .col-md {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }
    .row-cols-md-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .row-cols-md-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .row-cols-md-3 > * {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }
    .row-cols-md-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
    }
    .row-cols-md-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
    }
    .row-cols-md-6 > * {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-md-auto {
        flex: 0 0 auto;
        max-width: 100%;
        width: auto;
    }
    .col-md-1 {
        flex: 0 0 8.33333333%;
        max-width: 8.33333333%;
    }
    .col-md-2 {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }
    .col-md-4 {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }
    .col-md-5 {
        flex: 0 0 41.66666667%;
        max-width: 41.66666667%;
    }
    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .col-md-7 {
        flex: 0 0 58.33333333%;
        max-width: 58.33333333%;
    }
    .col-md-8 {
        flex: 0 0 66.66666667%;
        max-width: 66.66666667%;
    }
    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }
    .col-md-10 {
        flex: 0 0 83.33333333%;
        max-width: 83.33333333%;
    }
    .col-md-11 {
        flex: 0 0 91.66666667%;
        max-width: 91.66666667%;
    }
    .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .order-md-first {
        order: -1;
    }
    .order-md-last {
        order: 13;
    }
    .order-md-0 {
        order: 0;
    }
    .order-md-1 {
        order: 1;
    }
    .order-md-2 {
        order: 2;
    }
    .order-md-3 {
        order: 3;
    }
    .order-md-4 {
        order: 4;
    }
    .order-md-5 {
        order: 5;
    }
    .order-md-6 {
        order: 6;
    }
    .order-md-7 {
        order: 7;
    }
    .order-md-8 {
        order: 8;
    }
    .order-md-9 {
        order: 9;
    }
    .order-md-10 {
        order: 10;
    }
    .order-md-11 {
        order: 11;
    }
    .order-md-12 {
        order: 12;
    }
    .offset-md-0 {
        margin-left: 0;
    }
    .offset-md-1 {
        margin-left: 8.33333333%;
    }
    .offset-md-2 {
        margin-left: 16.66666667%;
    }
    .offset-md-3 {
        margin-left: 25%;
    }
    .offset-md-4 {
        margin-left: 33.33333333%;
    }
    .offset-md-5 {
        margin-left: 41.66666667%;
    }
    .offset-md-6 {
        margin-left: 50%;
    }
    .offset-md-7 {
        margin-left: 58.33333333%;
    }
    .offset-md-8 {
        margin-left: 66.66666667%;
    }
    .offset-md-9 {
        margin-left: 75%;
    }
    .offset-md-10 {
        margin-left: 83.33333333%;
    }
    .offset-md-11 {
        margin-left: 91.66666667%;
    }
    .d-md-none {
        display: none !important;
    }
    .d-md-inline {
        display: inline !important;
    }
    .d-md-inline-block {
        display: inline-block !important;
    }
    .d-md-block {
        display: block !important;
    }
    .d-md-flex {
        display: flex !important;
    }
    .d-md-inline-flex {
        display: inline-flex !important;
    }
    .h1,
    h1 {
        font-size: 38px;
    }
    .h2,
    h2 {
        font-size: 28px;
    }
    .h3,
    h3 {
        font-size: 18px;
    }
    .section {
        margin-bottom: 68px;
    }
    .section-content figure {
        margin: 68px 0;
    }
    .notfound-code {
        font-size: 120px;
    }
    .main-hero-slider-item__image {
        height: 300px;
        width: 300px;
    }
    .main-hero-slider-item__front {
        padding-left: 40px;
        padding-right: 40px;
    }
    .main-advantages__outer {
        padding-bottom: 52px;
        padding-top: 52px;
    }
    .main-advantages .section-title {
        margin-bottom: 52px;
    }
    .main-advantages__list:before {
        transform: translate(-50%, 82px);
    }
    .main-advantages__item:nth-child(2n) {
        margin-top: 24px;
    }
    .main-callback__outer {
        margin-left: 0;
        margin-right: 0;
    }
    .main-callback__inner {
        width: 560px;
    }
    .main-callback__form {
        width: 100%;
    }
    .footer-side {
        box-shadow: none;
    }
}
@media (min-width: 1024px) {
    .main-advantages__col_align_center {
        flex: 0 0 66.66666667%;
        margin-left: -16.66666667%;
        margin-right: -16.66666667%;
        max-width: 66.66666667%;
    }

    .main-advantages__col_align_left,
    .main-advantages__col_align_right {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }

    .main-advantages__figure-wrap {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
    }
    .col-lg {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }
    .row-cols-lg-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .row-cols-lg-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .row-cols-lg-3 > * {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }
    .row-cols-lg-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
    }
    .row-cols-lg-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
    }
    .row-cols-lg-6 > * {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-lg-auto {
        flex: 0 0 auto;
        max-width: 100%;
        width: auto;
    }
    .col-lg-1 {
        flex: 0 0 8.33333333%;
        max-width: 8.33333333%;
    }
    .col-lg-2 {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }
    .col-lg-4 {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }
    .col-lg-5 {
        flex: 0 0 41.66666667%;
        max-width: 41.66666667%;
    }
    .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .col-lg-7 {
        flex: 0 0 58.33333333%;
        max-width: 58.33333333%;
    }
    .col-lg-8 {
        flex: 0 0 66.66666667%;
        max-width: 66.66666667%;
    }
    .col-lg-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }
    .col-lg-10 {
        flex: 0 0 83.33333333%;
        max-width: 83.33333333%;
    }
    .col-lg-11 {
        flex: 0 0 91.66666667%;
        max-width: 91.66666667%;
    }
    .col-lg-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .order-lg-first {
        order: -1;
    }
    .order-lg-last {
        order: 13;
    }
    .order-lg-0 {
        order: 0;
    }
    .order-lg-1 {
        order: 1;
    }
    .order-lg-2 {
        order: 2;
    }
    .order-lg-3 {
        order: 3;
    }
    .order-lg-4 {
        order: 4;
    }
    .order-lg-5 {
        order: 5;
    }
    .order-lg-6 {
        order: 6;
    }
    .order-lg-7 {
        order: 7;
    }
    .order-lg-8 {
        order: 8;
    }
    .order-lg-9 {
        order: 9;
    }
    .order-lg-10 {
        order: 10;
    }
    .order-lg-11 {
        order: 11;
    }
    .order-lg-12 {
        order: 12;
    }
    .offset-lg-0 {
        margin-left: 0;
    }
    .offset-lg-1 {
        margin-left: 8.33333333%;
    }
    .offset-lg-2 {
        margin-left: 16.66666667%;
    }
    .offset-lg-3 {
        margin-left: 25%;
    }
    .offset-lg-4 {
        margin-left: 33.33333333%;
    }
    .offset-lg-5 {
        margin-left: 41.66666667%;
    }
    .offset-lg-6 {
        margin-left: 50%;
    }
    .offset-lg-7 {
        margin-left: 58.33333333%;
    }
    .offset-lg-8 {
        margin-left: 66.66666667%;
    }
    .offset-lg-9 {
        margin-left: 75%;
    }
    .offset-lg-10 {
        margin-left: 83.33333333%;
    }
    .offset-lg-11 {
        margin-left: 91.66666667%;
    }
    .d-lg-none {
        display: none !important;
    }
    .d-lg-inline {
        display: inline !important;
    }
    .d-lg-inline-block {
        display: inline-block !important;
    }
    .d-lg-block {
        display: block !important;
    }
    .d-lg-flex {
        display: flex !important;
    }
    .d-lg-inline-flex {
        display: inline-flex !important;
    }
    .btn-group {
        column-gap: 16px;
        display: flex;
        flex-wrap: wrap;
        padding-right: 240px;
        position: relative;
        row-gap: 16px;
    }
    .btn-group .hidden {
        display: none;
    }
    .btn-group-toggle {
        position: absolute;
        right: 0;
        top: 0;
    }
    .expanded .btn-group-toggle svg {
        transform: rotateX(-180deg);
    }
    .link-video__icon {
        bottom: 32px;
        left: 32px;
    }

    .h1,
    h1 {
        font-size: 46px;
    }
    .h2,
    h2 {
        font-size: 30px;
    }
    .h3,
    h3 {
        font-size: 18px;
    }
    .header-outer {
        height: 98px;
        padding-top: 16px;
        padding-bottom: 16px;
    }
    .header-col {
        column-gap: 20px;
    }
    .header-logo svg {
        height: 48px;
    }
    .section {
        margin-bottom: 124px;
    }
    .section-content figure {
        margin: 76px 0;
    }
    .catalog-filter-head {
        display: none;
    }
    .products-layout {
        grid-template-columns: auto minmax(0, 1fr);
        grid-template-rows: repeat(2, auto);
    }
    .products-layout-head {
        grid-area: 1/1/2/3;
    }
    .products-layout-side {
        grid-area: 2/1/3/2;
        transition: width 0.15s;
        width: 0;
    }
    .products-layout-side .catalog-filter {
        opacity: 0;
        transform: translateX(-100%);
        transition: opacity 0.15s, transform 0.15s;
        width: 260px;
    }
    .catalog-filter-opened .products-layout-side {
        width: 320px;
    }
    .catalog-filter-opened .products-layout-side .catalog-filter {
        opacity: 1;
        transform: translateX(0);
    }
    .products-layout-body {
        grid-area: 2/2/3/3;
    }
    .products-layout-body .products-list > * {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }

    .product-layout {
        grid-row-gap: 52px;
        grid-template-columns: minmax(0, 1fr) 400px;
        grid-template-rows: repeat(2, auto);
    }
    .product-layout-head {
        grid-area: 1/1/2/2;
    }
    .product-layout-side {
        grid-area: 1/2/3/3;
        padding: 20px;
    }
    .product-layout-body {
        grid-area: 2/1/3/2;
    }
    .product-title {
        font-size: 27px;
    }
    .product-prices .catalog-prices-item__value {
        font-size: 40px;
    }
    .solution .section-image {
        margin-top: 48px;
    }
    .main-hero-slider-item__image {
        height: 440px;
        width: 440px;
    }
    .main-hero-slider-item__front {
        padding-left: 80px;
        padding-right: 80px;
    }
    .main-hero-slider-item__inner {
        height: 100%;
    }
    .main-article_with_image {
        padding: 104px 0;
    }
    .main-advantages__outer {
        padding-bottom: 104px;
        padding-top: 76px;
    }
    .main-advantages__list:before {
        transform: translate(-50%, 114px);
    }
    .main-advantages-item__image {
        height: 140px;
        width: 140px;
    }
    .main-callback__inner {
        width: 440px;
    }
    .main-delivery-text {
        left: 32px;
        position: absolute;
        top: 32px;
        z-index: 1;
    }
    .history-item__image {
        padding: 0 40px;
    }
    .footer {
        padding-bottom: 20px;
        padding-top: 52px;
    }

    .footer-nav .nav-item {
        break-inside: avoid;
    }
}
@media (min-width: 1300px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1504px;
    }
    .col-xl {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }
    .row-cols-xl-1 > * {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .row-cols-xl-2 > * {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .row-cols-xl-3 > * {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }
    .row-cols-xl-4 > * {
        flex: 0 0 25%;
        max-width: 25%;
    }
    .row-cols-xl-5 > * {
        flex: 0 0 20%;
        max-width: 20%;
    }
    .row-cols-xl-6 > * {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-xl-auto {
        flex: 0 0 auto;
        max-width: 100%;
        width: auto;
    }
    .col-xl-1 {
        flex: 0 0 8.33333333%;
        max-width: 8.33333333%;
    }
    .col-xl-2 {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%;
    }
    .col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }
    .col-xl-4 {
        flex: 0 0 33.33333333%;
        max-width: 33.33333333%;
    }
    .col-xl-5 {
        flex: 0 0 41.66666667%;
        max-width: 41.66666667%;
    }
    .col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .col-xl-7 {
        flex: 0 0 58.33333333%;
        max-width: 58.33333333%;
    }
    .col-xl-8 {
        flex: 0 0 66.66666667%;
        max-width: 66.66666667%;
    }
    .col-xl-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }
    .col-xl-10 {
        flex: 0 0 83.33333333%;
        max-width: 83.33333333%;
    }
    .col-xl-11 {
        flex: 0 0 91.66666667%;
        max-width: 91.66666667%;
    }
    .col-xl-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .order-xl-first {
        order: -1;
    }
    .order-xl-last {
        order: 13;
    }
    .order-xl-0 {
        order: 0;
    }
    .order-xl-1 {
        order: 1;
    }
    .order-xl-2 {
        order: 2;
    }
    .order-xl-3 {
        order: 3;
    }
    .order-xl-4 {
        order: 4;
    }
    .order-xl-5 {
        order: 5;
    }
    .order-xl-6 {
        order: 6;
    }
    .order-xl-7 {
        order: 7;
    }
    .order-xl-8 {
        order: 8;
    }
    .order-xl-9 {
        order: 9;
    }
    .order-xl-10 {
        order: 10;
    }
    .order-xl-11 {
        order: 11;
    }
    .order-xl-12 {
        order: 12;
    }
    .offset-xl-0 {
        margin-left: 0;
    }
    .offset-xl-1 {
        margin-left: 8.33333333%;
    }
    .offset-xl-2 {
        margin-left: 16.66666667%;
    }
    .offset-xl-3 {
        margin-left: 25%;
    }
    .offset-xl-4 {
        margin-left: 33.33333333%;
    }
    .offset-xl-5 {
        margin-left: 41.66666667%;
    }
    .offset-xl-6 {
        margin-left: 50%;
    }
    .offset-xl-7 {
        margin-left: 58.33333333%;
    }
    .offset-xl-8 {
        margin-left: 66.66666667%;
    }
    .offset-xl-9 {
        margin-left: 75%;
    }
    .offset-xl-10 {
        margin-left: 83.33333333%;
    }
    .offset-xl-11 {
        margin-left: 91.66666667%;
    }
    .d-xl-none {
        display: none !important;
    }
    .d-xl-inline {
        display: inline !important;
    }
    .d-xl-inline-block {
        display: inline-block !important;
    }
    .d-xl-block {
        display: block !important;
    }
    .d-xl-flex {
        display: flex !important;
    }
    .d-xl-inline-flex {
        display: inline-flex !important;
    }
    .products-layout-side .catalog-filter {
        width: 288px;
    }
    .catalog-filter-opened .products-layout-side {
        width: 348px;
    }
    .products-layout-body .products-list > * {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .product-layout {
        grid-template-columns: minmax(0, 1fr) 500px;
    }
    .main-hero-slider-item__image {
        bottom: 0;
        height: 480px;
        right: 104px;
        width: 480px;
    }
    .main-hero-slider-item__front {
        padding-left: 104px;
        padding-right: 104px;
    }
    .main-hero-slider-item__inner {
        width: 815px;
    }
    .main-callback__inner {
        width: 60%;
    }
}
@media (max-width: 1299px) {
    .form-group-labeled .form-control:focus ~ .form-label, .form-group-labeled .form-control:not(:placeholder-shown) ~ .form-label{
        font-size: .7rem;
    }
    .form-group-labeled .form-label{
        font-size: .7rem;
    }
    .main-hero-slider{
        aspect-ratio: 16/9;
    }
    .footer .footer-side {
        margin: 44px -78px 0;
        padding: 16px 78px 0;
    }
    .main-persons-item:nth-child(n + 4),
    .main-reviews-item:nth-child(n + 4) {
        display: none;
    }
    .main-text__wrapper {
        padding-bottom: 120px;
        margin-bottom: -120px;
    }
}
@media (max-width: 1023px) {
    .form-group-labeled .form-control:focus ~ .form-label, .form-group-labeled .form-control:not(:placeholder-shown) ~ .form-label{
        font-size: .9rem;
    }
    .form-group-labeled .form-label{
        font-size: .9rem;
    }
    .header-fixed .header{
        
    }
    .header-auth {
        margin-right: 0;
    }
    .header-auth-link {
        display: none;
    }
    .header-auth-user {
        display: none;
    }
    .header-auth-icon {
        display: flex;
        width: 32px;
        height: 32px;
    }
    .header-auth-icon svg, .cart-link svg, .offcanvas-toggler svg {
        width: 24px;
        height: 24px;
    }
    .header-auth-user-phone {
        font-size: 12px;
    }
    .header-user-popup {
        left: -8px;
        min-width: 210px;
        top: calc(100% + 6px);
    }
    .header-col{
        font-size: 12px;
        column-gap: 0px;
    }
    .header-row {
        flex-wrap: wrap;
        align-items: center;
        row-gap: 0;
    }
    .header-outer {
        height: auto;
    }
    .header-col.header-col-text {
        order: 4;
        flex: 0 0 100%;
        max-width: 100%;
        padding: 8px 0 0;
        margin: 0;
        border-top: 1px solid #EBEBEB;
        font-size: 11px;
        line-height: 1.5;
    }
    .header-col-mobile-menu {
        order: 3;
    }
    .link-col {
        order: 2;
        
    }
    .header-logo img, .header-logo{
        height: 48px;
    }
    .header-mobile-action-btn {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-end;
        gap: 4px;
        width: 64px;
        height: 44px;
        min-width: 64px;
    }
    .header-mobile-action-label {
        display: block;
        color: #8D8F90;
        font-size: 12px;
        font-weight: 500;
        line-height: 16px;
        letter-spacing: -0.002em;
    }
    .offcanvas-auth .offcanvas-auth-body{
        padding: 0 20px 16px;
    }
    /* sticky: не переопределять position — базовый .header { position: sticky; top: 0; } */
    /* .btn-toggler {
        width: 32px;
        height: 32px;
    } */
    /* .btn-toggler svg {
        width: 20px;
        height: 20px;
    } */
    .cart-link svg {
      
    }
    .product-layout-side{
        position: static;
    }
    .main-text__image {
        bottom: -94px;
        left: 0;
        top: unset;
    }
    .cart-link {
        position: relative;
    }
    .cart-link-count {
        top: -3px;
        right: 10px;
        font-size: 12px;
        padding: 0;
    }
    .catalog-link {
        display: none;
    }
    .header-search-toggler {
        display: none;
    }
    .header-col.header-col-text {
        padding-right: 0;
    }

    .main-faq__item-title {
        font-size: 1rem;
        padding-right: 35px;
    }
    .main-faq__item-content {
        padding-right: 0;
        font-size: 14px;
        padding-left: 0;
    }
    .header-nav,
    .main-advantages__svg {
        display: none;
    }

    .main-advantages__row {
        row-gap: 40px;
    }

    .main-advantages__col_align_center {
        order: -1;
        position: sticky;
        top: 0;
        z-index: -1;
    }

    .main-advantages__figure {
        display: flex;
        justify-content: center;
    }

    .main-advantages__figure:before {
        content: none;
    }

    .main-advantages__figure-wrap {
        flex-shrink: 0;
        max-width: 100vw;
        position: relative;
        width: 100vh;
    }

    .main-advantages__figure-wrap:before {
        background-image: linear-gradient(180deg, #fff0 17.71%, #fffc 71.87%, #fff),
            linear-gradient(180deg, #fff0, #fff);
        bottom: 0;
        content: "";
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
    }

    .main-advantages__figure-map {
        display: none;
    }

    .main-advantages__item {
        padding: 0;
    }
    .container {
        padding-left: 40px;
        padding-right: 40px;
    }
    .btn-group {
        -ms-overflow-style: none;
        display: flex;
        flex-wrap: nowrap;
        margin-left: -40px;
        margin-right: -40px;
        overflow-x: auto;
        scrollbar-width: none;
    }
    .btn-group::-webkit-scrollbar {
        display: none;
    }
    .btn-group:after,
    .btn-group:before {
        content: "";
        flex: 0 0 40px;
    }
    .btn-group > * {
        flex-shrink: 0;
        margin-left: 16px;
    }
    .btn-group > :first-child {
        margin-left: 0;
    }
    .btn-group-toggle {
        display: none;
    }
    .header {
        padding-top: 13px;
        padding-bottom: 13px;
    }
    .header-row {
        margin-left: 0;
        margin-right: 0;
        row-gap: 12px;
        /* overflow: clip; */
    }
    .header-col {
        padding-left: 0;
        padding-right: 0;
    }
    .topbar {
        display: none;
    }
    .catalog-filter {
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
        height: 100%;
        left: 0;
        max-width: 500px;
        overflow-y: auto;
        overscroll-behavior: contain;
        position: fixed;
        top: 0;
        transform: translateX(-100%);
        width: 100%;
        will-change: transform;
        z-index: 1050;
    }
    .catalog-filter-opened .catalog-filter {
        transform: translateX(0);
        transition: transform 0.15s;
    }
    .catalog-filter-backdrop {
        background-color: #0000004d;
        height: 100vh;
        left: 0;
        position: fixed;
        top: 0;
        width: 100vw;
        z-index: 1040;
    }
    .catalog-filter-form {
        display: flex;
        flex-direction: column;
        min-height: 100%;
    }
    .catalog-filter-body,
    .catalog-filter-foot,
    .catalog-filter-head {
        padding-left: 40px;
        padding-right: 40px;
    }
    .catalog-filter-body {
        flex: 1 0 auto;
    }
    .catalog-filter-tooltip {
        display: none;
    }
    .products-layout-side-side {
        height: 0;
        position: absolute;
        width: 0;
    }
    .main-callback__image,
    .main-persons-item:nth-child(n + 3),
    .main-reviews-item:nth-child(n + 3) {
        display: none;
    }
    .contacts-list {
        grid-template-columns: 1fr 1fr;
        display: grid;
        column-gap: 40px;
        margin-bottom: 60px;
    }
    .contacts-item__value {
        flex-direction: row;
        column-gap: 16px;
    }
}
@media (max-width: 767px) {
    .main-text__wrapper {
        background: none;
    }
    .main-text__image {
        bottom: -20px;
        right: -63px;
        top: unset;
    }
    .contacts-list {
        grid-template-columns: 1fr;
    }
    h1.section-layout-title {
        margin-bottom: 30px;
    }
}
@media (max-width: 575px) {
    .breadcrumb-item{
        font-size: 0.875rem;
    }
    .main-info-slider-item{
        padding: 24px;
    }
    .main-info-slider-wrapper .main-info-slider-item .info-card__text{
        font-size: 14px;
      
    }
    .main-info-slider-wrapper .main-info-slider-item .info-card__title{
        font-size: 1.5rem;
        margin-bottom: 24px;
    }
    h1,
    .h1 {
        font-size: 28px;
        margin-bottom: 30px;
    }
    .main-banner__image-text.h1 {
        font-size: 24px;
        line-height: 1.25;
        margin-left: 20px;
        padding-right: 52px;
    }
    .cart-item__image {
        height: 100px;
    }
    .cart-item {
        position: relative;
        padding-bottom: 55px;
    }
    .cart-item__image {
        width: 100px;
        height: 74px;
    }
    .cart-item__title {
        align-self: start;
        width: auto;
        margin-left: 14px;
    }
    .cart-list .btn-cart {
        position: absolute;
        right: 0;
        bottom: 12px;
    }
 
    .section{
        margin-bottom: 80px;
    }
    .cart-list .cart-item__remove {
        position: absolute;
        bottom: 12px;
        left: 0;
        margin: 0;
    }
    .main-hero-slider {
        aspect-ratio: unset;
        border-radius: 16px;
    }
    .main-hero-slider-item__front {
        padding: 0;
        margin-bottom: 20px;
        margin-top: 16px;
    }
    .main-hero-slider-item__back {
        position: static;
        aspect-ratio: 16 / 9;
    }
    .main-hero-slider-item__bg {
        border-radius: 20px;
    }

    .main-hero-slider-item__outer {
        display: flex;
        flex-direction: column;
    }
    .main-hero-slider-item__title {
        padding: 8px;
        background: rgba(0, 0, 0, .2);
        font-size: 1.75rem;
        text-align: start;
    }
    .main-hero-slider-item__bg {
        position: static;
    }
    .content h2,
    .h2 {
        font-size: 1.5rem;
    }
    html {
        font-size: 14px;
    }
    .content p,
    .content li,
    .content .main-advantages__item {
        /* font-size: 0.875rem; */
    }
    .main-banner__image {
        height: 279px;
    }
    /* .header-logo,
    .header-logo img {
        height: 25px;
        width: auto;
    } */
    .header-col.header-col-text {
        font-size: 11px;
        padding-right: 0;
    }
    .cart-checkout-toggle {
        font-size: 14px;
        padding: 14px 16px;
    }
    .cart-auth-prompt {
        padding: 20px 16px;
    }
    .cart-auth-prompt h3 {
        font-size: 16px;
    }
    .container {
        padding-left: 20px;
        padding-right: 20px;
    }
    .btn-group {
        margin-left: -20px;
        margin-right: -20px;
    }
    .btn-group:after,
    .btn-group:before {
        flex-basis: 20px;
    }
    .fancybox__carousel .fancybox__slide.has-ajax,
    .fancybox__carousel .fancybox__slide.has-html,
    .fancybox__carousel .fancybox__slide.has-inline {
        padding: 0;
    }
    .modal {
        border-radius: 0;
        flex-grow: 1;
        max-width: none;
        padding: 40px 20px;
    }
    .section-nav {
        column-gap: 16px;
        max-width: 380px;
        width: 100%;
    }
    .section-nav .nav-item {
        flex-grow: 1;
    }
    .section-nav .nav-link {
        padding: 10px;
        width: 100%;
    }
    .section-nav .nav-next,
    .section-nav .nav-prev {
        flex-grow: 0;
        position: static;
    }
    .section-nav .nav-next .nav-link,
    .section-nav .nav-prev .nav-link {
        border-color: #0000;
        padding-left: 10px;
        padding-right: 10px;
        width: auto;
    }
    .section-nav .nav-next .nav-link span,
    .section-nav .nav-prev .nav-link span {
        display: none;
    }
    .section-nav .nav-next .nav-link svg,
    .section-nav .nav-prev .nav-link svg {
        position: static;
    }
    .catalog-filter-body,
    .catalog-filter-foot,
    .catalog-filter-head {
        padding-left: 20px;
        padding-right: 20px;
    }
    .set-products-item__outer {
        flex-direction: column;
    }
}
@media (pointer: coarse) {
    .cards-item-image-pagination {
        display: none;
    }
}
@media (prefers-reduced-motion: reduce) {
    .collapsing,
    .collapsing.width,
    .fade {
        transition: none;
    }
}
@media print {
    .d-print-none {
        display: none !important;
    }
    .d-print-inline {
        display: inline !important;
    }
    .d-print-inline-block {
        display: inline-block !important;
    }
    .d-print-block {
        display: block !important;
    }
    .d-print-flex {
        display: flex !important;
    }
    .d-print-inline-flex {
        display: inline-flex !important;
    }
}

.cookie-consent {
    display: none;
    align-items: center;
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
    color: #212121;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    font-family: "Montserrat";
    min-width: 280px;
    max-width: 740px;
    z-index: 1000;
    border-radius: 20px;
    padding: 30px;
}
.cookie-consent p {
    font-weight: 600;
    margin: 8px 0;
    padding-right: 20px;
    font-size: 14px;
    line-height: 1.5;
    color: #212121;
}
.cookie-consent .btn {
    font-size: 16px;
    text-transform: capitalize;
}

.cookie-consent .cookie-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    @media (max-width: 768px) {
        flex-direction: column;
        row-gap: 12px;
        p {
            padding-right: 0;
        }
    }
}
.cookie-consent a {
    color: var(--accent-blue);
    border-bottom: 1px solid transparent;
    transition: color 0.15s, border-color 0.15s;
}
.cookie-consent a:hover {
    color: var(--accent-blue);
    border-color: var(--accent-blue);
}

.cookie-consent .close {
    position: absolute;
    top: 10px;
    right: 10px;
    cursor: pointer;
    color: #aaa;
    font-size: 18px;
}
.cookie-icon {
    font-size: 24px;
    margin-right: 12px;
    align-self: flex-start;
}

.order-type {
    display: flex;
    border-radius: 50px;
    background-color: #f3f9ec;
    padding: 4px;
    position: relative;
    width: fit-content;
    margin-top: 38px;
}

.order-type input[type="radio"] {
    display: none;
}

.order-type label {
    flex: 1;
    text-align: center;
    padding: 11px 25px;
    cursor: pointer;
    border-radius: 50px;
    transition: color 0.3s ease;
    z-index: 1;
    color: var(--d-grey);
    text-wrap: nowrap;
    font-weight: 600;
}

.category-section .main-banner .container {
    padding: 0;
}
.order-wrapper,
.certificates-block,
.main-banner, .recommendations {
    margin-bottom: 124px;
    margin-top: 124px;
}

.contacts-wrapper {
    margin-top: 38px;
    margin-bottom: 124px;
}

@media (max-width: 1023px) {
    .order-wrapper,
    .certificates-block, .recommendations {
        margin-bottom: 104px;
        margin-top: 104px;
    }
    .contacts-wrapper {
        margin-bottom: 104px;
    }

.medal 
{
  margin-left: 15px;
}
}
.order-wrapper {
    margin-top: 0;
}
.order-type .order-type-slider {
    position: absolute;
    top: 4px;
    left: 4px;
    width: calc(50% - 4px);
    height: calc(100% - 8px);
    background-color: #ddf2ba;
    border-radius: 50px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
    z-index: 0;
}

input[type="radio"]:checked + label {
    color: #000;
}

#fiz-lico:checked ~ .order-type-slider {
    transform: translateX(0%);
}

#ip-ul-lico:checked ~ .order-type-slider {
    transform: translateX(100%);
}

@media (max-width: 767px) {
    .table-responsive {
        border: 0;
    }

    .text-fields,
    .file-field {
        grid-template-columns: 1fr;
    }

    .form-row-wrapper {
        flex-wrap: wrap;
    }
    .form-row-wrapper .form-group {
        width: 100%;
    }
    .file-field .form-group-file {
        padding-right: 0;
    }
    .order-type label {
        padding: 11px 16px;
    }

    .table-responsive thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }

    .table-responsive table,
    .table-responsive tbody,
    .table-responsive tr,
    .table-responsive td {
        display: block;
        width: 100%;
        overflow-x: visible;
    }
    
    .table-responsive table thead {
        display: block;
    }

    .table-responsive tr {
        margin-bottom: 8px;
        border-bottom: 1px solid #ccc;
        padding-bottom: 12px;
    }

    .table-responsive th {
        padding: 0;
        border-bottom: 0;
        margin-bottom: 4px;
    }
    .table-responsive td {
        padding-left: 0;

        padding-top: 0;
        padding-bottom: 0;
    }

    .table-responsive td:last-child {
        border-bottom: 0;
    }

    .table-responsive td::before {
        /* Достаем заголовок из data-атрибута */
        content: attr(data-label);
        position: absolute;
        left: 0.5rem;
        width: 35%;
        padding-right: 1rem;
        font-weight: bold;
        text-align: left;
    }
}

.header-search {
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
    opacity: 0;
    transform: translateY(-20px) translateX(-50%);
    visibility: hidden;
}

.header-search.opened {
    opacity: 1;
    transform: translateY(0) translateX(-50%);
    visibility: visible;
}

.main-course h2 {
    color: #fff;
    font-size: 24px;
    margin-bottom: 24px;
}
.main-course .program-content h2{
    color:black;
    margin-bottom: 0;
}
.main-course .program-content h4{
    margin-top: 24px;
}
.main-course .section-content {
    color: #fff;
    padding: 0;
    padding-right: 20px;
}

.main-course__buttons-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 60px;
    height: 118px;
}

.main-course__buttons-wrapper #program-text {
    line-height: 1;
}

.main-course .section-footer {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    width: fit-content;
}

.main-course .btn-video {
    position: relative;
    aspect-ratio: 16 / 9;
    height: 100%;
    width: 219px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.main-course .btn-video__play {
    transition: transform 0.15s;
}

.main-course .btn-video:hover .btn-video__play {
    transform: scale(1.08);
}

.main-course .btn-video__poster {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    border-radius: 12px;
}

.main-course .btn-link {
    color: #fff;
    display: flex;
    gap: 8px;
    box-shadow: none;
    transition: all 0.3s ease;
    transform: rotate(0deg);
    align-items: center;
}

.main-course .btn-link svg {
    fill: #fff;
    margin: 0;
    transition: transform 0.3s ease;
}

.main-course__outer {
    background: #84a24e;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}

.main-course__back {
    position: relative;
    z-index: 0;
    height: 500px;
}

.main-course__back:before {
    background-image: linear-gradient(54.09deg, #84a24e 21.7%, rgba(198, 209, 123, 0) 72.19%);
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
}

.main-course__image {
    overflow: hidden;
    position: relative;
    height: 100%;
}

.main-course__image:before {
    background-color: #0000;
    content: "";
    display: block;
    padding-top: 100%;
    width: 100%;
}

.main-course__image img {
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    top: 0;
    width: 100%;
    object-position: right;
}

.main-course__image img.lazyload,
.main-course__image img.lazyloading {
    opacity: 0;
    transition: opacity 0.15s;
}

.main-course__image img.lazyloaded {
    opacity: 1;
}

.main-course__front {
    display: flex;
    flex-direction: column;
    justify-content: start;
    padding: 60px 40px;
}

.program-content {
    max-height: 0px;
    overflow: hidden;
    margin-top: 0px;
    padding: 0px 40px;
    background: rgba(255, 255, 255, 1);
    transition: 0.4s;
    visibility: visible;
    position: relative;
    z-index: 100;
}

.program-content ol {
    width: 75%;
}

.program-content .program-module:not(:last-child) {
    margin-bottom: 32px;
}

@media (min-width: 768px) {
    .main-course h2 {
        font-size: 30px;
        margin-bottom: 38px;
    }

    .main-course__buttons-wrapper {
        margin-top: 28px;
    }

    .main-course__image:before {
        padding-top: 50%;
    }

    .main-course__front {
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 1;
    }
}

@media (min-width: 1360px) {
    .main-course h2 {
        font-size: 28px;
        margin-bottom: 38px;
    }

    .main-course__buttons-wrapper {
        margin-top: 32px;
    }

    .main-course__image:before {
        padding-top: 646px;
    }
}

@media (max-width: 767px) {
    .slider-head .swiper-nav {
        gap: 12px;
    }
    .program-content ol,
    .program-content ul {
        padding-left: 15px;
        width: 95%;
    }
    .main-course .btn,
    .main-course .btn-link {
        width: 100%;
    }
    .main-course .btn-link {
        gap: 16px;
    }

    .main-course__back:after {
        content: none;
    }
    .program-content {
        padding-left: 15px;
        padding-right: 15px;
    }
    .main-course__front {
        padding-left: 15px;
        padding-right: 15px;
        padding-bottom: 30px;
        margin-top: -25vw;
        position: relative;
        z-index: 1;
        background: linear-gradient(0.66deg, #84a24e 90%, rgba(198, 209, 123, 0) 94.66%);
    }
    .main-course__back {
        height: 250px;
    }
    .main-course__buttons-wrapper {
        flex-direction: column-reverse;
        height: auto;
        gap: 20px;
        margin-top: 30px;
    }
    .main-course .btn-video,
    .main-course .section-footer {
        width: 100%;
    }
}
.main-hero-slider-item__title {
    margin: 0;
}
.certificates-block {
    background-color: #fbfef6;
    border: 4px solid var(--accent-green);
    border-radius: 24px;
    padding: 40px 50px;
    position: relative;
    overflow: hidden;
    background-image: url(/images/certificate-bg.png), url(/images/foot-bg.svg);
    background-repeat: no-repeat, no-repeat;
    background-position: 100% -4%, 89% 50%;
    background-size: auto, auto;
}

.certificates-block__content {
    position: relative;
    z-index: 2;
    max-width: 57%;
}
.certificates-block__content .btn {
    text-decoration: none;
    color: black;
}
.certificates-block__title {
    font-family: "Montserrat Alternates", sans-serif;
    font-weight: 600;
    font-size: 30px;
    line-height: 1.25;
    color: #000;
    margin-bottom: 42px;
}

.certificates-block__button {
    display: inline-block;
    background-color: #d8eabc;
    border-radius: 12px;
    padding: 18px 48px;
    font-family: sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    color: #202020;
    text-decoration: none;
    transition: background-color 0.3s ease;
}

.certificates-block__button:hover {
    background-color: #c7d9a1;
}

@media (max-width: 991px) {
    .certificates-block {
        padding: 30px 25px;
        background-position: 101% -1%, 126% 67%;
        background-size: auto, 610px;
    }

    .certificates-block__title {
        font-size: 22px;
        margin-bottom: 48px;
    }

    .certificates-block__button {
        padding: 14px 35px;
    }
}
@media (max-width: 768px) {
    .certificates-block {
        padding: 30px 25px;
        background-position: 103% 102%, 130px 60px;
        background-size: 290px, 592px;
    }
    .certificates-block__content {
        max-width: unset;
    }
}
@media (max-width: 575px) {
    .main-course .section-content {
        padding-right: 0;
    }
    .main-callback .btn-primary {
        width: 100%;
    }
    .certificates-block__title {
        max-width: 100%;
        text-align: center;
        margin-bottom: 30px;
    }
    .certificates-block__content {
        max-width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .certificates-block {
        padding: 24px 16px;
        background-size: 220px auto, 520px auto;
        background-position: right -18px bottom -60px, center bottom -120px;
    }
}

@media (max-width: 460px) {
    .certificates-block {
        background-size: 250px auto, 470px auto;
        background-position: right -18px bottom -82px, center bottom -104px;
    }
}

@media (max-width: 380px) {
    .certificates-block {
        background-size: 210px auto, 420px auto;
        background-position: right -12px bottom -50px, center bottom -88px;
    }
}

@keyframes nudge {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(1px);
    }
}

.main-course .btn-link svg {
    animation: nudge 2s ease-in-out infinite;
    transition: transform 0.3s ease-in-out;
    transform: rotate(0deg);
}

.main-course .btn-link.is-open svg {
    animation: none;
    transform: rotate(180deg);
}

.footer {
    padding-top: 50px;
    padding-bottom: 20px;
    overflow: clip;
}

/* Product Image Slider - Gallery on Hover */
.product-image-slider {
    position: relative;
    overflow: visible;
    width: 100%;
    height: 100%;
    background: #f5f5f5;
    border-radius: 12px;
    cursor: pointer;
    touch-action: pan-y;
    -ms-touch-action: pan-y;
}

.product-slides-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 16px;
}

.product-slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.product-slide.active {
    opacity: 1;
}

.product-slide img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    pointer-events: none;
    transition: transform 0.2s ease;
}

.product-image-slider:hover .product-slide img {
    transform: scale(1.04);
}

.product-slider-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 12px 0;
    position: absolute;
    bottom: -26px;
    left: 0;
    right: 0;
    gap: 6px;
    z-index: 1;
}

.product-dot {
    height: 5px;
    width: 8px;
    background-color: #676767;
    opacity: 0.4;
    border-radius: 3px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
}

.product-dot:hover:not(.active) {
    background-color: rgba(255, 255, 255, 0.7);
    width: 12px;
}

.product-dot.active {
    width: 24px;
    background-color: #676767;
    opacity: 1;
}

.section-about__slider-pdf{
    display: flex;
    justify-content: center;
    gap: .5rem;
    margin-top: .5rem;
    flex-direction: column;
}
.download-wrapper{
    display: flex;
    align-items: center;
    gap: 8px;
}
.section-about__slider-pdf a{
    color: black;
    font-weight: 500;
    line-height: 1.2;
    border-bottom: 1px solid black;
    transition: border-color 0.3s ease;
    font-size: 1.1rem;
}
.section-about__slider-pdf a:hover{
    border-bottom: 1px solid transparent;
}

.liveinternet-counter{
    display: none;
}
.section-7{
    overflow: clip;
}
.section-1-banner{
    display: flex;
    padding: 40px 80px;
    border-radius: 20px;
    background: #ECFAB8;
    }
    .section-1-image{
    max-width: 319px;
    margin-top: 16px;
    }
    .section-1-image img{

    }
    .button.button-course{
        background: #278BB6;
        display: flex;
        width: fit-content;
        color: white;
        font-weight: 600;
        padding: 14px 23px;
        border-radius: 12px;
        border: 2px solid #278BB6;
        transition: all 0.2s ease;
    }
    .button.button-course:hover{
    background: transparent;
    color: #278BB6;
    }
    .section-1-text{
    margin-bottom: 32px;
    color: #333926;
    line-height: 1.6;
    }
    .section-1-content{
    max-width: 600px;
    margin-right: auto;
    padding-top: 40px;
    padding-bottom: 40px;
    }
    .section-1-content h1{
    font-weight: 400;
    margin-bottom: 24px;
    }
    .section-1-content h1 span{
    color: #278BB6;
    font-weight: 600;
    }
    @media(max-width: 768px){
        .course-about__video-icon{
            width: 9px;
        }
        .section-person__media .section-person__image img{
            width: 250px;
        }
        .course-about .main-about__row{
            row-gap: 30px;
        }
    .section-1-banner{
    flex-direction: column;
    padding: 0 32px 24px;
    align-items: center;
    gap: 0;
    max-height: unset;
    }
    .section-1-image{
    max-width: 280px;
    }
    .section-1-image img{
    width: 100%;
    }
    }

.section-person {
    background: url("/img/person-bg.png") center/cover no-repeat;
    border-radius: 32px;
    margin-left: 20px;
    margin-right: 20px;
    overflow: hidden;
    /* padding: 80px 0; */
}
.section-person *{
    color: black;
}
.section-person__row {
    align-items: center;
    row-gap: 40px;
}
.section-person__media {
    align-items: center;
    display: flex;
    flex-direction: column;
    text-align: center;
}
.section-person__image {
    align-items: flex-end;
    display: flex;
    justify-content: center;
    line-height: 0;
    margin: 0 auto;
    max-width: 100%;
    position: relative;
    width: auto;
    z-index: 1;
}
.section-person__image::before {
    background: url("/templates/dev/img/person-bg.png") center/cover no-repeat;
    border-radius: 50%;
    content: "";
    height: 90%;
    left: 50%;
    position: absolute;
    top: 10%;
    transform: translateX(-50%);
    aspect-ratio: 1;
    width: auto;
    z-index: 0;
}
.section-person__image img {
    display: block;
    height: auto;
    margin: 0 auto;
    max-width: none;
    width: 450px;
    clip-path: ellipse(53% 61% at 50% 39%);
}
.section-person__name {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.4;
    margin-top: 20px;
    text-align: center;
}
.section-person__content h2 {
    margin-top: 0;
}
.section-person__text {
    color: var(--d-grey);
    line-height: 1.6;
}
.section-person__text ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}
.section-person__text ul > li {
    margin-bottom: 16px;
    padding-left: 26px;
    position: relative;
}
.section-person__text ul > li:last-child {
    margin-bottom: 0;
}
.section-person__text ul > li:before {
    background-color: #278BB6;
    border-radius: 50%;
    content: "";
    height: 5px;
    left: 10px;
    position: absolute;
    top: 9px;
    width: 5px;
}
@media (max-width: 1023px) {
    
    .section-person__row{
        flex-direction: column-reverse;
    }
    .section-person {
        border-radius: 24px;
        margin-left: 0;
        margin-right: 0;
        /* padding: 60px 0; */
    }
    .section-person__image {
        width: 360px;
    }
}
@media (max-width: 767px) {
    .section-person {
        padding: 0;

    }
    .section-person__image {
        width: 280px;
    }
    .section-person__name {
        font-size: 1rem;
        margin-top: 16px;
    }
    .section-person__text ul > li {
        margin-bottom: 12px;
    }
}

/* Course Program Section */
.course-program {
    /* padding: 80px 0; */
}
.course-program__title {
    margin-bottom: 48px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.course-program__list {
    max-width: 900px;
    margin: 0 auto;
}
.course-program__item {
    background: #FFFFFF;
    border-radius: 16px;
    margin-bottom: 16px;
    overflow: hidden;
    position: relative;
    transition: all 0.3s ease;
}
.course-program__item:last-child {
    margin-bottom: 0;
}
.course-program__item-header {
    cursor: pointer;
    padding: 24px 32px;
    position: relative;
    transition: all 0.3s ease;
    background: #F6F6F6;
    padding-bottom: 50px;
}
.course-program__item-unwrap{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    cursor: pointer;
    background: #F6F6F6;
    padding: 0 32px 20px;
    margin-top: 0;
    color: #6b6b6b;
    font-size: 14px;
    line-height: 1.2;
    text-decoration: underline;
    text-underline-offset: 2px;
    transition: color 0.2s ease, opacity 0.2s ease;
}
.course-program__item:not(.active) .course-program__item-unwrap {
    position: absolute;
    right: 32px;
    bottom: 20px;
    padding: 0;
    margin: 0;
    background: transparent;
}
.course-program__item:hover .course-program__item-unwrap {
    color: #278BB6;
}
.course-program__item.active .course-program__item-unwrap {
    color: #1e5f7c;
    position: static;
    padding-top: 12px;
}
.course-program__item-header:hover {
    background: #F8F8F8;
}
.course-program__item.active .course-program__item-header {
    
    padding-bottom: 16px;
}
.course-program__item-meta {
    align-items: center;
    color: black;
    background: white;
    display: flex;
    font-weight: 600;
    gap: 4px;
    letter-spacing: 0.05em;
    margin-bottom: 16px;
    text-transform: uppercase;
    width: fit-content;
    padding: 8px 12px;
    font-size: 12px;
    border-radius: 16px;
}

.course-program__item-duration {
    color: #666;
}
.course-program__item-title {
    color: black;
    font-size: 26px;
    font-weight: 600;
    line-height: 1.25;
    margin: 0;
    padding-right: 40px;
}
.course-program__item-icon {
    align-items: center;
    display: flex;
    height: 24px;
    justify-content: center;
    position: absolute;
    right: 32px;
    top: 38px;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
    width: 24px;
}
.course-program__item.active .course-program__item-icon {
    transform: translateY(-50%) rotate(180deg);
}
.course-program__item-content {
    display: none;
    padding: 0 32px 1px 32px;
    background: #F6F6F6;
    /* margin-top: -8px;
    position: relative; */
}
.course-program__item-content-inner {
    color: #332524;
    width: 85%;
    font-size: 17px;
    line-height: 1.4;
    letter-spacing: 0.015em;
}
.course-program__item-content-inner ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}
.course-program__item-content-inner ul > li {
    margin-bottom: 12px;
    padding-left: 26px;
    position: relative;
}
.course-program__item-content-inner ul > li:last-child {
    margin-bottom: 0;
}
.course-program__item-content-inner ul > li:before {
    background-color: #278BB6;
    border-radius: 50%;
    content: "";
    height: 5px;
    left: 10px;
    position: absolute;
    top: 9px;
    width: 5px;
}

/* Course Process Section */
.course-process {
    /* padding: 80px 0; */
}

.course-process__card {
    background: #F5E1D5;
    border-radius: 24px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    aspect-ratio: 372 / 320;
    justify-content: flex-end;
    max-width: 372px;
    width: 100%;
    margin-left: auto;
}

.course-process__image-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.course-process__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.course-process__card-text {
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 24px 20px;
    background: linear-gradient(to top, rgba(245, 225, 213, 0.95) 40%, transparent);
}

.course-process__card-text p {
    margin: 0;
}

.course-process__card-text p:first-child {
    font-size: 24px;
    font-weight: 600;
    color: #685b52;
    line-height: 1.34;
    margin-bottom: 8px;
}

.course-process__card-text p:first-child span {
    font-size: 14px;
    display: block;
    font-weight: 400;
    margin-bottom: 4px;
}

.course-process__card-text p:last-child {
    font-size: 12px;
    font-weight: 600;
    line-height: 1.6;
    color: #8f7868;
}

@media (max-width: 1024px) {
    .course-process .main-about__row {
        flex-direction: column;
        gap: 0;
    }
    .course-process .section-about__text-wrapper,
    .course-process .section-about__media-wrapper {
        max-width: 100%;
        width: 100%;
    }
    .course-process__card {
        margin: 32px auto 0;
    }

.medal 
{
  margin-left: 20px;
}
}

@media (max-width: 768px) {
    .course-process {
        /* padding: 40px 0; */
    }
    .course-process__card {
        max-width: 320px;
    }
    .course-process__card-text p:first-child {
        font-size: 20px;
    }
}
@media (max-width: 1023px) {
    .course-program {
        /* padding: 60px 0; */
    }
    .course-program__title {
        margin-bottom: 36px;
    }
}
@media (max-width: 767px) {
    .course-program {
        /* padding: 48px 0; */
    }
    .course-program__title {
        font-size: 1.75rem;
        margin-bottom: 32px;
    }
    .course-program__item {
        border-radius: 12px;
        margin-bottom: 12px;
    }
    .course-program__item-header {
        padding: 16px 32px 44px;
    }
    /* .course-program__item.active .course-program__item-header {
        padding-bottom: 24px;
    } */
    /* .course-program__item-meta {
        font-size: 0.75rem;
        margin-bottom: 8px;
    } */
     .course-program__item-meta{
        font-size: 10px;
     }
    .course-program__item-title {
        font-size: 16px;
        padding-right: 32px;
    }
    .course-program__item-icon {
        right: 24px;
    }
    .course-program__item-content {
        padding: 0 32px 1px 32px;
    }
    .course-program__item-content-inner {
        font-size: 13px;
        width: 100%;
    }
    .course-program__item-content-inner ul > li {
        margin-bottom: 10px;
    }
}

/* Course Tariffs Section */
.course-tariffs {
    /* padding: 80px 0; */
}

.course-tariffs__title {
    /* margin-bottom: 48px; */
}

.course-tariffs__row {
    row-gap: 32px;
}

.tariff-card {
    border-radius: 24px;
    padding: 20px 20px 30px;
    height: fit-content;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: transform 0.3s ease;

}

.tariff-card:hover {
    transform: translateY(-5px);
}

.tariff-card--standartnyj {
    background: #F6F6F6;
}

.tariff-card--rasshirennyj {
    background: #E1F1F6;
}

.tariff-card--individualnyj {
    background: #F9F6E9;
}

.tariff-card__badge {
    position: absolute;
    top: 0;
    left: 20px;
    transform: translateY(-50%);
    background: #278BB6;
    color: #EBEE93;
    padding: 6px 8px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    letter-spacing: 0.05em;
}

.tariff-card__name {
    font-size: 26px;
    font-weight: 400;
    line-height: 1.25;
    margin-bottom: 8px;
    margin-top: 4px;
    color: #000000;
}

.tariff-card__price-block {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 20px;
}

.tariff-card__price {
    font-size: 26px;
    line-height: 1.25;
    font-weight: 600;
    color: #000000;
}

.tariff-card__price--old {
    font-size: 16px;
    line-height: 1.6;
    color: #000;
    text-decoration: line-through;
    font-weight: 600;
}

.tariff-card__button {
    justify-content: center;
    margin-bottom: 20px;
}

.tariff-card__included h4 {
    font-size: 16px;
    line-height: 1.6;
    font-weight: 600;
    margin-bottom: 8px;
    color: #000000;
}

.tariff-card__summary ul {
    list-style: none;
    padding: 0;
    margin: 0;
    padding-left: 8px;
}

.tariff-card__summary ul li {
    position: relative;
    padding-left: 16px;
    margin-bottom: 12px;
    line-height: 1.4;
    font-size: 15px;
}

.tariff-card__summary ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    background-color: #278BB6;
    border-radius: 50%;
}

@media (max-width: 1024px) {
    .course-tariffs__row > div {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .tariff-card {
        padding: 32px 24px;
        margin-left: auto;
        margin-right: auto;
    }
    .tariff-card__name {
        font-size: 24px;
    }
    .tariff-card__price {
        /* font-size: 28px; */
    }
}

@media (max-width: 768px) {
    
    .review-text, .tariff-card__summary ul li{
        font-size: 13px;
    }
    .course-tariffs {
        /* padding: 48px 0; */
    }
    .tariff-card__badge {
        left: 24px;
    }
}

.course-about .section-layout-body ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.course-about .section-layout-body ul > li {
    position: relative;
    padding-left: 26px;
    margin-bottom: 14px;
}

.course-about .section-layout-body ul > li:last-child {
    margin-bottom: 0;
}

.course-about .section-layout-body ul > li:before {
    background-color: #278BB6;
    border-radius: 50%;
    content: "";
    height: 5px;
    left: 10px;
    position: absolute;
    top: 9px;
    width: 5px;
}

.mobile-concat__rest {
    margin-top: 16px;
}

.mobile-concat__toggle {
    display: none;
    padding: 0;
    border: 0;
    background: transparent;
    color: #278BB6;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: underline;
    text-underline-offset: 3px;
    cursor: pointer;
}

.mobile-concat__toggle:hover {
    text-decoration-color: transparent;
}

@media (max-width: 768px) {
    .mobile-concat__rest {
        overflow: hidden;
        transition: height 0.28s ease;
        will-change: height;
    }

    .mobile-concat__toggle {
        display: inline-block;
    }
}


/* Registration success toast (top popup) */
.auth-success-toast {
    position: fixed;
    top: 10%;
    left: 50%;
    transform: translate(-50%, -20px);
    width: calc(100% - 24px);
    max-width: 560px;
    z-index: 1300;
    background: rgba(29, 29, 31, 0.96);
    color: #fff;
    border-radius: 999px;
    padding: 20px 48px 20px 48px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
    opacity: 0;
    pointer-events: none;
    transition: transform 0.32s ease, opacity 0.32s ease;
}
.auth-success-toast.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, 0);
}
.auth-success-toast__text {
    display: block;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 500;
}
.auth-success-toast__close {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    width: 26px;
    height: 26px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.18);
    color: #fff;
    cursor: pointer;
    font-size: 18px;
    line-height: 26px;
    text-align: center;
}
@media (max-width: 575px) {
    .auth-success-toast {
        top: 40px;
        border-radius: 14px;
        padding: 12px 42px 12px 14px;
    }
    .auth-success-toast__text {
        font-size: 13px;
    }
}
@media (max-width:330px){
    .header-logo img, .header-logo{
        height: 40px;
    }
}
#data\[new\]\[coop_link\]-error{
    top: unset;
}

.site-promo-banner {
    position: fixed;
    inset: 0;
    z-index: 10050;
    display: block;
    pointer-events: none;
}

.site-promo-banner[hidden] {
    display: none !important;
}

.site-promo-banner.is-open {
    display: block;
    pointer-events: auto;
}

.site-promo-banner__overlay {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 24px 16px;
    background: rgba(0, 0, 0, 0.7);
    box-sizing: border-box;
    opacity: 0;
    transition: opacity 0.35s ease;
}

.site-promo-banner.is-open .site-promo-banner__overlay {
    opacity: 1;
}

.site-promo-banner__dialog {
    position: relative;
    width: 100%;
    max-width: 500px;
    border-radius: 24px;
    overflow: visible;
    box-sizing: border-box;
    opacity: 0;
    transform: scale(0.94) translateY(16px);
    transition: opacity 0.35s ease, transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: opacity, transform;
}

.site-promo-banner.is-open .site-promo-banner__dialog {
    opacity: 1;
    transform: scale(1) translateY(0);
}

.site-promo-banner__close {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.site-promo-banner__close:hover {
    transform: scale(1.12);
}

.site-promo-banner__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 48px 48px;
    box-sizing: border-box;
}

.site-promo-banner__gift {
    position: relative;
    width: 120px;
    height: 120px;
    margin-bottom: -16px;
    flex-shrink: 0;
}

.site-promo-banner__gift img {
    position: absolute;
    left: 50%;
    top: -44px;
    transform: translateX(-50%);
    display: block;
    width: 120px;
    height: 120px;
    object-fit: contain;
    pointer-events: none;
}

.site-promo-banner__text {
    width: 100%;
    color: #000;
}

.site-promo-banner__text .banner-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.site-promo-banner__text .banner-content__header {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: center;
    margin: 0 0 12px;
    font-family: "Montserrat Alternates", sans-serif;
    font-size: 46px;
    font-weight: 600;
    line-height: 52px;
    letter-spacing: -0.46px;
    color: #000;
}

.site-promo-banner__text .banner-content__header span {
    font-weight: 400;
}

.site-promo-banner__text .banner-content__subheader {
    margin: 0 0 16px;
    font-family: "Montserrat Alternates", sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 26px;
    letter-spacing: -0.2px;
    color: #000;
}

.site-promo-banner__text .banner-content__text {
    margin: 0 0 16px;
    font-family: "Montserrat Alternates", sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: -0.14px;
    color: #000;
}

.site-promo-banner__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 190px;
    height: 48px;
    margin-top: 8px;
    padding: 15px 30px;
    border: 2px solid transparent;
    border-radius: 24px;
    background: #fff;
    color: #000;
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    text-decoration: none;
    box-sizing: border-box;
    transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

.site-promo-banner__cta:hover {
    background: transparent;
    border-color: #fff;
    color: #fff;
    text-decoration: none;
}

.site-promo-banner__toggle {
    position: fixed;
    left: 50%;
    bottom: 24px;
    z-index: 10040;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    max-width: calc(100vw - 32px);
    padding: 16px 40px;
    border: 0;
    border-radius: 40px;
    background: linear-gradient(179deg, #F5D0DB 6.51%, #FBB0C7 91.57%);
    color: #000;
    font-family: "Montserrat", sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
    cursor: pointer;
    transform: translateX(-50%) translateY(20px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    opacity: 0;
    transition: opacity 0.35s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.25s ease;
}

.site-promo-banner__toggle.is-visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    z-index: 1000;
}

.site-promo-banner__toggle[hidden] {
    display: none !important;
}

.site-promo-banner__toggle-icon {
    display: block;
    width: 40px;
    height: 40px;
    flex-shrink: 0;
}

.site-promo-banner__toggle-icon img {
    display: block;
    width: 40px;
    height: 40px;
    object-fit: contain;
    object-position: bottom;
}

.site-promo-banner__toggle-text {
    white-space: nowrap;
}

@media (prefers-reduced-motion: reduce) {
    .site-promo-banner__overlay,
    .site-promo-banner__dialog,
    .site-promo-banner__close,
    .site-promo-banner__cta,
    .site-promo-banner__toggle {
        transition: none !important;
    }

    .site-promo-banner__dialog,
    .site-promo-banner__toggle {
        transform: none;
        opacity: 1;
    }

    .site-promo-banner__toggle {
        transform: translateX(-50%);
    }
}

@media (max-width: 767px) {
    .site-promo-banner__dialog {
        width: calc(100vw - 16px);
        bottom: 8px;
        position: absolute;
    }
    .site-promo-banner__text .banner-content__header {
        gap: 4px;
    }
    .site-promo-banner__toggle {
        bottom: 16px;
        padding: 14px 24px;
        font-size: 16px;
    }
    .site-promo-banner__body{
        paddig: 48px 28px;
    }

	
  .medal 
  {
    margin-left: 20px;
  }
}
