@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,slnt,wdth,wght,GRAD,XOPQ,XTRA,YTAS,YTDE,YTFI,YTLC,YTUC@8..144,-10..0,25..151,100..1000,-200..150,27..175,323..603,649..854,-305..-98,560..788,416..570,528..760&display=swap');

:root {
    --d-blue: rgba(232, 65, 48, 1);
    --l-blue: rgba(242, 113, 102, 1);
    --d-grey: rgba(58, 67, 76, 1);
    --l-grey: #858691;
    --border-white: #dadfe2;
    --bg-white: #f8f8f8;
}

html {
    line-height: 1.15;
    scroll-padding-top: 6rem; /* отступ при скролле по якорям (фикс. шапка и т.п.) */
}

body {
    margin: 0;
    overflow-x: hidden;
}

/* отступ сверху при клике по якорям (сайдбар цен) */
.prices-anchor {
    scroll-margin-top: 6rem;
}

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


p strong{
    display: inline;
    margin: 0;
}
p:has(strong:not(:only-child)) {
    display: inline;
    margin: 0;
}

strong, p:has(strong:only-child){
    display: block;
    margin-top: 20px;
}

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;

    display: block;
}
p:not(:last-child) img {
    margin: 40px 0;
}
p:last-child img {
    margin-top: 40px;
}
.video {
    margin-bottom: 32px;
}
.video video {
    border-radius: 20px;
}
.service p img {
    height: auto;
    width: 100%;
    max-width: 70%;
    margin: 60px 0;
}
.service-top {
}
.service-top__wrapper {
    display: flex;
    flex-direction: column;
}
.service-top__wrapper > div {
    flex: 0;
}
.service-top__wrapper .info {
    flex: 0;
}
.service-image img {
    max-width: 100%;
    margin-top: 0;
    aspect-ratio: 924 / 480;
    object-fit: cover;
}
.service-info h2 {
    font-size: 24px;
}



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

table{
    margin-top: 20px;
}

.responsive-table{
    overflow-x: scroll;
    scrollbar-width: none;
}

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: 15px;

    padding-right: 15px;

    width: 100%;
}

.row {
    display: flex;

    flex-wrap: wrap;

    margin-left: -15px;

    margin-right: -15px;
}

.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-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: 15px;

    padding-right: 15px;

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

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

.m-0 {
    margin: 0 !important;
}

.mt-0,
.my-0 {
    margin-top: 0 !important;
}

.mr-0,
.mx-0 {
    margin-right: 0 !important;
}

.mb-0,
.my-0 {
    margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
    margin-left: 0 !important;
}

.m-1 {
    margin: 0.25rem !important;
}

.mt-1,
.my-1 {
    margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
    margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
    margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
    margin-left: 0.25rem !important;
}

.m-2 {
    margin: 0.5rem !important;
}

.mt-2,
.my-2 {
    margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
    margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
    margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
    margin-left: 0.5rem !important;
}

.m-3 {
    margin: 1rem !important;
}

.mt-3,
.my-3 {
    margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
    margin-right: 1rem !important;
}

.mb-3,
.my-3 {
    margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
    margin-left: 1rem !important;
}

.m-4 {
    margin: 1.5rem !important;
}

.mt-4,
.my-4 {
    margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
    margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
    margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
    margin-left: 1.5rem !important;
}

.m-5 {
    margin: 3rem !important;
}

.mt-5,
.my-5 {
    margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
    margin-right: 3rem !important;
}

.mb-5,
.my-5 {
    margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
    margin-left: 3rem !important;
}

.p-0 {
    padding: 0 !important;
}

.pt-0,
.py-0 {
    padding-top: 0 !important;
}

.pr-0,
.px-0 {
    padding-right: 0 !important;
}

.pb-0,
.py-0 {
    padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
    padding-left: 0 !important;
}

.p-1 {
    padding: 0.25rem !important;
}

.pt-1,
.py-1 {
    padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
    padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
    padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
    padding-left: 0.25rem !important;
}

.p-2 {
    padding: 0.5rem !important;
}

.pt-2,
.py-2 {
    padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
    padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
    padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
    padding-left: 0.5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.pt-3,
.py-3 {
    padding-top: 1rem !important;
}

.pr-3,
.px-3 {
    padding-right: 1rem !important;
}

.pb-3,
.py-3 {
    padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
    padding-left: 1rem !important;
}

.p-4 {
    padding: 1.5rem !important;
}

.pt-4,
.py-4 {
    padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
    padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
    padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
    padding-left: 1.5rem !important;
}

.p-5 {
    padding: 3rem !important;
}

.pt-5,
.py-5 {
    padding-top: 3rem !important;
}

.pr-5,
.px-5 {
    padding-right: 3rem !important;
}

.pb-5,
.py-5 {
    padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
    padding-left: 3rem !important;
}

.m-n1 {
    margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
    margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
    margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
    margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
    margin-left: -0.25rem !important;
}

.m-n2 {
    margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
    margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
    margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
    margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
    margin-left: -0.5rem !important;
}

.m-n3 {
    margin: -1rem !important;
}

.mt-n3,
.my-n3 {
    margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
    margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
    margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
    margin-left: -1rem !important;
}

.m-n4 {
    margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
    margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
    margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
    margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
    margin-left: -1.5rem !important;
}

.m-n5 {
    margin: -3rem !important;
}

.mt-n5,
.my-n5 {
    margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
    margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
    margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
    margin-left: -3rem !important;
}

.m-auto {
    margin: auto !important;
}

.mt-auto,
.my-auto {
    margin-top: auto !important;
}

.mr-auto,
.mx-auto {
    margin-right: auto !important;
}

.mb-auto,
.my-auto {
    margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
    margin-left: auto !important;
}

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

.swiper {
    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;

    width: 100%;

    z-index: 1;
}

.swiper-android .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0);
}

.swiper-pointer-events {
    touch-action: pan-y;
}

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

.swiper-slide {
    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-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.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,
.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d;
}

.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-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-horizontal.swiper-css-mode > .swiper-wrapper {
    scroll-snap-type: x mandatory;
}

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

.swiper-centered > .swiper-wrapper:before {
    content: "";

    flex-shrink: 0;

    order: 9999;
}

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

.swiper-centered.swiper-horizontal > .swiper-wrapper:before {
    height: 100%;

    width: var(--swiper-centered-offset-after);
}

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

.swiper-centered.swiper-vertical > .swiper-wrapper:before {
    height: var(--swiper-centered-offset-after);

    width: 100%;
}

.swiper-centered > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: center center;
}

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

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

    transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none;
}
.swiper-pagination {
    display: none;
}
.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

@font-face {
    font-display: block;

    font-family: icomoon;

    font-style: normal;

    font-weight: 400;

    src: url(../fonts/icomoon/icomoon.eot?50cym1);

    src: url(../fonts/icomoon/icomoon.eot?50cym1#iefix) format("embedded-opentype"),
        url(../fonts/icomoon/icomoon.ttf?50cym1) format("truetype"),
        url(../fonts/icomoon/icomoon.woff?50cym1) format("woff"),
        url(../fonts/icomoon/icomoon.svg?50cym1#icomoon) format("svg");
}

[class*=" icon-"],
[class^="icon-"] {
    speak: never;

    -webkit-font-smoothing: antialiased;

    -moz-osx-font-smoothing: grayscale;

    font-family: icomoon !important;

    font-style: normal;

    font-variant: normal;

    font-weight: 400;

    line-height: 1;

    text-transform: none;
}

.icon-arrow-left:before {
    content: "\e900";
}

.icon-arrow-right:before {
    content: "\e901";
}

.icon-chevron-left:before {
    content: "\e905";
}

.icon-chevron-right:before {
    content: "\e906";
}

.icon-chevron-down:before {
    content: "\e902";
}

.icon-check:before {
    content: "\e903";
}

.icon-calendar:before {
    content: "\e904";
}

.icon-search:before {
    content: "\e907";
}

.icon-close:before {
    content: "\e908";
}

.icon-sliders:before {
    content: "\e909";
}

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

html {
    -webkit-text-size-adjust: 100%;

    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body {
    background-color: #fff;

    color: #3e4e5f;

    font-family: 'Roboto Flex', sans-serif;
    font-size: 1rem;

    font-weight: 400;

    line-height: 2;

    text-align: left;
    *{
            font-variation-settings: 'GRAD' 0, 'XOPQ' 96, 'XTRA' 480, 'YOPQ' 79, 'YTAS' 750, 'YTDE' -203, 'YTFI' 738, 'YTLC' 514, 'YTUC' 712, 'slnt' 0, 'wdth' 120;

    }
}

.no-scroll {
    overflow: hidden;
}

body,
html {
    height: 100%;
}

.root {
    display: flex;

    flex-direction: column;

    min-height: 100%;

    position: relative;
}

.content {
    flex: 1 0 auto;
}

.section {
    margin-bottom: 100px;

    margin-top: 24px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--d-grey);
    font-family: 'Roboto Flex', sans-serif;
    margin-top: 60px;
    font-weight: 600;
    letter-spacing: 0.02em;
}
.quote {
    position: relative;
    padding-top: 48px;
    padding-left: 12px;
    padding-right: 12px;
}

.quote h1,
.quote h2,
.quote h3,
.quote h4,
.quote h5 {
    font-size: 1.88rem;
    line-height: 1.3;
    font-weight: 400;
    padding: 0;
}

.quote p {
    line-height: 1.6;
}
.quote::before {
    content: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTIiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA1MiA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTUyIDBMNDMuNTE2NiAxOC40MjA4QzQ0LjIyMjQgMTguNjYyOSA0NC44OTQ2IDE4Ljk3ODggNDUuNTMzMiAxOS4zNjg0QzQ3LjIyMDIgMjAuMzk3NyA0OC41NzkxIDIxLjc1NDQgNDkuNjEwMSAyMy40Mzg2QzUwLjY0MSAyNS4wMjkyIDUxLjE1NjUgMjYuODUzOCA1MS4xNTY1IDI4LjkxMjNDNTEuMTU2NSAzMC45NzA4IDUwLjY0MSAzMi44NDIxIDQ5LjYxMDEgMzQuNTI2M0M0OC41NzkxIDM2LjIxMDUgNDcuMjIwMiAzNy41NjczIDQ1LjUzMzIgMzguNTk2NUM0My44NDYyIDM5LjUzMjIgNDEuOTI0OCA0MCAzOS43NjkyIDQwQzM3LjcwNzMgNDAgMzUuNzg2IDM5LjUzMjIgMzQuMDA1MyAzOC41OTY1QzMyLjMxODMgMzcuNTY3MyAzMC45NTkzIDM2LjE2MzcgMjkuOTI4NCAzNC4zODZDMjguODk3NCAzMi42MDgyIDI4LjM4MiAzMC42NDMzIDI4LjM4MiAyOC40OTEyQzI4LjM4MiAyNi4zMzkyIDI4LjgwMzcgMjQuMDkzNiAyOS42NDcyIDIxLjc1NDRDMzIuNzE5IDE0LjA4NzcgMzcuOTIxNCA3LjA1MTIyIDQyLjE1OTEgMEg1MlpNMjMuNjE4IDBMMTUuMTM0NyAxOC40MjA4QzE1Ljg0MDQgMTguNjYyOSAxNi41MTI2IDE4Ljk3ODggMTcuMTUxMiAxOS4zNjg0QzE4LjgzODIgMjAuMzk3NyAyMC4xOTcyIDIxLjc1NDQgMjEuMjI4MSAyMy40Mzg2QzIyLjI1OTEgMjUuMDI5MiAyMi43NzQ1IDI2Ljg1MzggMjIuNzc0NSAyOC45MTIzQzIyLjc3NDUgMzAuOTcwOCAyMi4yNTkxIDMyLjg0MjEgMjEuMjI4MSAzNC41MjYzQzIwLjE5NzIgMzYuMjEwNSAxOC44MzgyIDM3LjU2NzMgMTcuMTUxMiAzOC41OTY1QzE1LjQ2NDIgMzkuNTMyMiAxMy41NDI5IDQwIDExLjM4NzMgNDBDOS4zMjUzOCA0MCA3LjQwNDA3IDM5LjUzMjIgNS42MjMzNCAzOC41OTY1QzMuOTM2MzQgMzcuNTY3MyAyLjU3NzM3IDM2LjE2MzcgMS41NDY0MiAzNC4zODZDMC41MTU0NzMgMzIuNjA4MiAwIDMwLjY0MzMgMCAyOC40OTEyQzAgMjYuMzM5MiAwLjQyMTc1IDI0LjA5MzYgMS4yNjUyNSAyMS43NTQ0QzQuMzM3IDE0LjA4NzcgOS41Mzk0NCA3LjA1MTIyIDEzLjc3NzIgMEgyMy42MThaIiBmaWxsPSIjRThFOEVEIiBmaWxsLW9wYWNpdHk9IjAuNiIvPgo8L3N2Zz4K");
    position: absolute;
    top: 0;
    left: 0;
}
h1,
h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
    margin-top: 0;
}

h1 {
    font-size: 3rem;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 32px;
}

h2 {
    font-size: 2.5rem;

    font-weight: 600;

    line-height: 1.2;
    margin-bottom: 23px;
}

h1 + h2 {
    margin-top: 0;
}

h3 {
    font-size: 1.875rem;

    font-weight: 600;

    line-height: 1.2;

    margin-bottom: 20px;
}

h4 {
    font-size: 1.5625rem;
    font-weight: 600;
    line-height: 1.2;

    margin-bottom: 16px;
}

h5,
h6 {
    font-size: 1.2rem;

    font-weight: 500;

    line-height: 1.2;

    margin-bottom: 14px;
}
a {
    text-decoration: none;
}

a:not([class]) {
    box-shadow: inset 0 -1px rgba(232, 65, 48, 1);

    color: rgba(232, 65, 48, 1);

    transition: box-shadow 0.2s;
}

a:not([class]):hover {
    box-shadow: none;
}

ol,
p,
ul {
    font-size: 18px;
    margin-bottom: 10px;
    margin-top: 0;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: -0.008em;
}

.list-unstyled,
ul:not([class]) {
    list-style: none;

    padding-left: 0;
}

ul:not([class]) > li {
    line-height: 1.1;

    margin-bottom: 14px;

    padding-left: 32px;

    position: relative;
}

ul:not([class]) > li:last-child {
    margin-bottom: 0;
}

ul:not([class]) > li:before {
    border-radius: 50%;

    content: "";

    display: block;

    height: 6px;

    left: .9rem;

    position: absolute;

    top: 0.48rem;

    width: 6px;
}

ul:not([class]) > li:before {
    background-color: initial;
    background-color: var(--d-grey);
    border: 1px solid var(--d-grey);
}


ul:not([class]) > li > ul {
    margin-bottom: 0;

    margin-top: 24px;
}

ol:not([class]) {
    counter-reset: li;

    list-style: none;

    padding-left: 0;
}

ol:not([class]) > li {
    margin-bottom: 10px;

    padding-left: 32px;

    position: relative;
}

ol:not([class]) > li:last-child {
    margin-bottom: 0;
}

ol:not([class]) > li:before {
    color: var(--d-grey);

    content: counters(li, ".") ".";

    counter-increment: li;

    font-size: 1em;

    font-weight: 500;

    left: 0;

    position: absolute;

    top: 0;
}

ol:not([class]) > li > ol {
    margin-bottom: 0;

    margin-top: 24px;
}

figure {
    margin: 48px 0;
    overflow: hidden;
}

figure:first-child {
    margin-top: 0;
}

figure:last-child {
    margin-bottom: 0;
}

figure img {
    display: block;

    height: auto;

    max-width: 100%;

    width: 100%;
}

.article > :last-child {
    margin-bottom: 0;
}

.article img {
    height: auto;

    max-width: 100%;
}

.input-group {
    align-items: stretch;

    display: flex;

    flex-wrap: wrap;

    position: relative;

    width: 100%;
}

.input-group > input[type="text"] {
    flex: 1 1 auto;

    min-width: 0;

    position: relative;

    width: 1%;
}

.input-group-append,
.input-group-prepend {
    display: flex;
}

.form-label {
    display: inline-block;

    margin: 0;
}

.form-control,
.form-label {
    color: #3e4e5f;

    font-size: 1rem;

    font-weight: 500;

    line-height: 1.5;
}

.form-control {
    appearance: none;

    background-clip: padding-box;

    background-color: initial;

    border: 1px solid #dadfe2;

    border-radius: 16px;

    box-shadow: none;

    display: block;

    height: 56px;

    min-height: 56px;

    padding: 15px;

    transition: border-color 0.15s;

    width: 100%;
}

.form-control:disabled,
.form-control[readonly] {
    opacity: 1;
}

.form-control.valid,
.form-control:focus {
    outline: 0;
}

.form-control.error {
    border-color: #e8262c;

    color: #e8262c;
}

.form-control ~ .error {
    color: #e8262c;

    font-size: 0.75rem;

    font-weight: 400;

    letter-spacing: -0.001em;

    line-height: 1.33333333;

    margin-top: 8px;

    padding-left: 24px;

    position: relative;
}

.form-control ~ .error:before {
    align-items: center;

    border: 1px solid #e8262c;

    border-radius: 50%;

    color: #e8262c;

    content: "!";

    display: inline-flex;

    font-size: 0.75rem;

    font-weight: 600;

    height: 16px;

    justify-content: center;

    left: 0;

    position: absolute;

    top: 0;

    width: 16px;
}

.form-group {
    margin-bottom: 24px;
}

.form-field,
.form-group {
    position: relative;
}

.form-field .form-label {
    left: 16px;

    max-width: 100%;

    pointer-events: none;

    position: absolute;

    top: 16px;

    transition: all 0.15s;
}

.form-field .form-control:not(.appointment-input) {
    padding-bottom: 7px;

    padding-top: 23px;
}
.form-field textarea.form-control:not(.appointment-input){
    padding-top: 11px;
    min-height: 100px;
}
.form-field.active .form-label {
    font-size: 0.75rem;

    font-weight: 400;

    line-height: 1.33333333;

    top: 8px;
}
.form-field:has(textarea).active .form-label{
    top: -20px;
}
.custom-checkbox {
    font-size: 0.875rem;

    line-height: 1.71428571;

    position: relative;
}

.custom-checkbox input[type="checkbox"] {
    opacity: 0;

    position: absolute;

    z-index: -1;
}

.custom-checkbox div.error,
.appointment-checkbox div.error {
    display: none !important;
}

.custom-checkbox-label {
    display: inline-block;

    margin-bottom: 0;

    padding-left: 32px;

    user-select: none;

    vertical-align: top;
}

.custom-checkbox-icon {
    height: 24px;

    left: 0;

    position: absolute;

    top: 0;

    width: 24px;

    z-index: 0;
}

.custom-checkbox-icon i {
    color: #3e4e5f;

    font-size: 1.5rem;

    left: 0;

    opacity: 0;

    position: absolute;

    top: 0;

    transition: opacity 0.15s;
}

.custom-checkbox-icon:before {
    border: 2px solid rgba(232, 65, 48, 1);

    border-radius: 4px;

    bottom: 0;

    content: "";

    height: 20px;

    left: 0;

    margin: auto;

    position: absolute;

    right: 0;

    top: 0;

    transition: background-color 0.15s, border-color 0.15s;

    width: 20px;

    z-index: -1;
}

.custom-checkbox-text {
    color: #3e4e5f;

    font-size: 0.75rem;

    font-weight: 500;

    line-height: 2;
}

input[type="checkbox"]:checked ~ .custom-checkbox-icon i {
    opacity: 1;
}

input[type="checkbox"].error ~ .custom-checkbox-icon:before,
input[type="checkbox"].error ~ .appointment-checkbox-custom {
    border-color: #e8262c;
}

.custom-select {
    position: relative;
}

.custom-select select {
    display: none;
}

.custom-select .ui-selectmenu-menu {
    width: 100%;
}

.custom-select .ui-selectmenu-menu .ui-menu {
    margin-left: 24px;

    margin-right: 24px;

    margin-top: -8px;
}

textarea {
    overflow: hidden;

    resize: vertical;
}

.btn {
    align-items: center;

    background-color: initial;

    background-image: none;

    border: 0;

    border-radius: 0;

    display: inline-flex;

    font-size: 1.125rem;

    font-weight: 600;

    height: 60px;

    justify-content: center;

    line-height: 1.33333333;

    padding: 0;

    text-align: center;

    user-select: none;

    white-space: nowrap;
}
.btn-main {
    min-height: 60px;
}

.btn-main span {
    position: relative; 
    display: inline-flex; 
    align-items: center; 
    padding-left: 72px;
    min-height: 60px;
    font-family: 'Roboto Flex';
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 24px; 
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #FFFFFF;
}

.btn-main span::before { 
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 2px solid #E84130;
    background: transparent;
    transition: border-color 0.4s ease-in-out;
}

.btn-main span::after { 
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%) scale(0);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(to right, #E84130, #F27166, #E84130, #F27166);
    background-size: 300% 100%;
    background-position: 0% 0%;
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), background-position 0.6s ease-in-out;
    z-index: 0;
}

.btn-main:hover span::before {
    border-color: transparent;
}

.btn-main:hover span::after {
    transform: translateY(-50%) scale(1);
    background-position: 100% 0%;
}

.btn-main:hover svg path {
    fill: #fff;
}

.btn-main span svg { 
    position: absolute;
    left: 30px;
    top: 50%;
    transform: translate(-50%, -50%); 
    width: 24px;
    height: 24px;
    line-height: 0;
    display: flex; 
    align-items: center;
    justify-content: center;
    z-index: 1; 
}



.main-infoblock .btn-main {
    margin-top: 32px;
    width: fit-content;
}
.main-infoblock__body{
    margin-top: 48px;
}
.main-infoblock .btn-main span {
    color: var(--d-grey);
}
.btn.btn-online {
    font-size: 15px;
}
.btn.btn-menu {
    background: transparent;

    color: #166ca0;
}

.btn-menu:hover .pencil-icon path {
    fill: white;
}

.btn-menu span {
    font-size: 1rem;

    margin-left: 10.5px;
}

.btn,
.btn.btn-small {
    text-decoration: none;
}

.btn.btn-small {
    border: 1px solid #009ee3;

    border-radius: 20px;

    color: #166ca0;

    font-size: 0.875rem;

    height: 40px;

    padding: 0 18px;

    transition: color 0.15s, background-color 0.15s;
}

.btn.btn-small:hover {
    background: var(--l-blue);

    border-radius: 25px;

    color: #fff;
}

.btn.btn-small:hover path {
    fill: #fff;
}

.btn.btn-small svg {
    margin-right: 11px;
}
.btn.btn-blue {
    background: #E84130;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    transition: color 0.15s, background-color 0.15s;
    padding: 18px 40px;
    font-size: 18px;
    line-height: 1.4;
    width: fit-content;
    position: relative;
}

.btn.btn-blue span {
    z-index: 1;
}

.btn.btn-blue::after {
    content:'';
    z-index: 0;
    opacity: 1;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    background: linear-gradient(180deg, #E84130 0%, #F27166 100%);
    transition: opacity 0.15s ease-out;
}

.btn.btn-blue:hover::after {
    opacity: 0;
}
.btn:focus {
    outline: 0;
}

.btn.disabled,
.btn:disabled,
.btn:focus {
    box-shadow: none;
}

.btn:not(:disabled):not(.disabled) {
    cursor: pointer;
}

a.btn.disabled {
    pointer-events: none;
}

.btn-outline-light {
    background-color: #ffffff1a;

    border: 1px solid #fff;

    border-radius: 32px;

    color: #fff;

    font-weight: 300;

    padding: 16px 48px;

    transition: color 0.15s, background-color 0.15s;
}

.btn-outline-light:hover {
    background-color: #fff;

    color: rgba(232, 65, 48, 1);
}

.btn-dark {
    background-color: rgba(232, 65, 48, 1);

    border-radius: 16px;

    color: #fff;

    padding: 16px 32px;

    transition: background-color 0.15s;
}

.btn-dark:hover {
    background-color: #2a709e;
}

.btn-outline-blue {
    width: 100%;

    background: #009ee31a;

    border: 1px solid var(--l-blue);

    border-radius: 32px;

    color: var(--l-blue);

    padding: 16px 48px;

    transition: color 0.15s, background-color 0.15s;
}

.btn-outline-blue:hover {
    background-color: var(--l-blue);

    color: #fff;
}

body:not(.is-using-mouse) .fancybox__container :focus {
    box-shadow: none;
}

.fancybox__backdrop {
    background-color: #3e4e5fdb;
}

.fancybox__content :focus:not(.carousel__button.is-close) {
    outline: 0;
}

.fancybox__slide {
    padding: 48px 8px;
}

.carousel__button.is-close {
    font-size: 1.5rem;
}

.modal {
    background: #fff;

    border-radius: 16px;

    max-width: 480px;

    padding: 56px 32px;

    width: 100%;
}

.modal .carousel__button.is-close {
    color: #3e4e5f;

    font-size: 1.5rem;

    height: 24px;

    position: absolute;

    right: 24px;

    top: 24px;

    width: 24px;
}

.modal .carousel__button.is-close svg {
    filter: none;

    height: 24px;

    width: 24px;
}

.modal-title {
    font-size: 1.5625rem;

    font-weight: 600;

    line-height: 1.28;

    margin-bottom: 16px;
}
.modal h5 {
    margin: 0;
    margin-bottom: 16px;
    text-align: center;
}
.form-text{
    color: #3e4e5f;
    margin-bottom: 32px;
    text-align: center;
}
.modal-text,
.modal-title {
    color: #3e4e5f;
    margin-bottom: 16px;
    text-align: center;
}

.modal-text {
    font-size: 1rem;

    font-weight: 500;

    line-height: 1.5;
}

.modal-form .btn {
    width: 100%;
}

.swiper:not(.swiper-initialized) {
    display: none;
}

.swiper-slide {
    height: auto;
}

.swiper-group {
    align-items: center;

    display: flex;

    justify-content: center;
    column-gap: 24px;
}

.swiper-button-next,
.swiper-button-prev {
    align-items: center;

    background-color: initial;

    background-image: none;

    border: 1px solid #dadfe2;

    border-radius: 50%;

    color: #3e4e5f;

    cursor: pointer;

    display: inline-flex;

    font-size: 1.5rem;

    height: 40px;

    justify-content: center;

    padding: 0;

    transition: border-color 0.15s;

    width: 40px;
}

.swiper-button-next:after,
.swiper-button-next:before,
.swiper-button-prev:after,
.swiper-button-prev:before {
    content: "";

    flex: 1 0 auto;
}

.swiper-button-next:not(.swiper-button-disabled):hover,
.swiper-button-prev:not(.swiper-button-disabled):hover {
    border-color: #3e4e5f;
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    cursor: default;
    opacity: 0.2;
}

.swiper-pagination-bullets {
    display: flex;
}

.swiper-pagination-bullet {
    display: block;

    height: 24px;

    margin-right: 8px;

    position: relative;

    width: 24px;
}

.swiper-pagination-bullet:last-child {
    margin-right: 0;
}

.swiper-pagination-bullet:before {
    background-color: #fff;

    border-radius: 50%;

    bottom: 0;

    content: "";

    display: block;

    height: 6px;

    left: 0;

    margin: auto;

    position: absolute;

    right: 0;

    top: 0;

    width: 6px;
}

.swiper-pagination-bullet-active:before {
    background-color: initial;

    border: 2px solid #fff;

    height: 12px;

    width: 12px;
}

.swiper-pagination-fraction {
    color: #3e4e5f;

    font-size: 1rem;

    font-weight: 400;

    line-height: 24px;

    min-width: 86px;

    text-align: center;
}

.swiper-pagination-fraction span {
    margin: 0 4px;
}

.nav {
    display: flex;

    flex-wrap: wrap;

    list-style: none;

    margin-bottom: 0;

    padding-left: 0;
}

.nav-link {
    display: block;
}

.nav-link span {
    transition: box-shadow 0.2s;
}

.nav-link:focus,
.nav-link:hover {
    text-decoration: none;
}

.nav-link.disabled,
.nav-link:not([href]) {
    cursor: default;
}

.social {
    display: flex;

    list-style: none;

    margin-bottom: 0;

    padding-left: 0;
}

.social-item {
    margin-right: 16px;
}

.social-item:last-child {
    margin-right: 0;
}

.social-link img {
    display: block;
}
p iframe{
    max-width: 100%;
}
.iframe {
    margin-bottom: 80px;

    margin-top: 80px;

    max-width: 100%;

    padding-bottom: 56.25%;

    position: relative;

    width: 100%;
}

.iframe:first-child {
    margin-top: 0;
}

.iframe:last-child {
    margin-bottom: 0;
}

.iframe iframe {
    border: 0;

    height: 100%;

    left: 0;

    position: absolute;

    top: 0;

    width: 100%;
}

.accordion {
    overflow-anchor: none;
}

.accordion-item {
    margin-bottom: 40px;

    overflow: hidden;
}

.accordion-item:last-child {
    margin-bottom: 0;
}

.accordion-toggler {
    align-items: center;

    color: #3e4e5f;

    display: flex;

    font-size: 1.25rem;

    font-weight: 600;

    justify-content: space-between;

    line-height: 1.4;
}

.accordion-toggler i {
    font-size: 1.5rem;

    perspective-origin: 50%;

    transition: transform 0.15s;

    will-change: transform;
}

.accordion-toggler:not(.collapsed) i {
    transform: rotateX(-180deg);
}

.accordion-collapse {
    overflow: hidden;
}

.accordion-body {
    margin-top: 24px;
}

.breadcrumb {
    color: #3e4e5f;

    display: flex;

    flex-wrap: wrap;

    font-size: 0.875rem;

    font-weight: 400;

    letter-spacing: -0.005em;

    line-height: 1.71428571;

    list-style: none;

    margin-bottom: 48px;

    padding-left: 0;
}

.breadcrumb-item:not(.active):after {
    content: "/";

    margin-left: 12px;

    margin-right: 12px;
}

.breadcrumb-link {
    box-shadow: none;

    color: inherit;

    transition: box-shadow 0.2s;
}

.breadcrumb-link:hover {
    box-shadow: inset 0 -1px #3e4e5f;
}

.pagination {
    align-items: center;

    display: flex;

    justify-content: center;

    list-style: none;

    margin-bottom: 0;

    margin-top: 80px;

    padding-left: 0;
}

.pagination-item {
    margin: 0 6px;
}

.pagination-link {
    align-items: center;

    color: #3e4e5f;

    display: flex;

    font-size: 0.875rem;

    font-weight: 600;

    justify-content: center;

    line-height: 1.71428571;
}

.pagination-item .pagination-link {
    border: 1px solid #dadfe2;

    border-radius: 50%;

    height: 40px;

    transition: border-color 0.15s;

    width: 40px;
}

.pagination-item.disabled .pagination-link,
.pagination-next.disabled .pagination-link,
.pagination-prev.disabled .pagination-link {
    cursor: auto;

    pointer-events: none;
}

.pagination-item .pagination-link:hover,
.pagination-item.active .pagination-link {
    border-color: rgba(232, 65, 48, 1);
}

.pagination-next .pagination-link,
.pagination-prev .pagination-link {
    font-weight: 400;
}

.pagination-next .pagination-link i,
.pagination-prev .pagination-link i {
    align-items: center;

    border: 1px solid #dadfe2;

    border-radius: 50%;

    display: flex;

    font-size: 1.5rem;

    height: 40px;

    justify-content: center;

    transition: border-color 0.15s;

    width: 40px;
}

.pagination-next .pagination-link:hover i,
.pagination-prev .pagination-link:hover i {
    border-color: rgba(232, 65, 48, 1);
}

.pagination-prev {
    margin-right: auto;
}

.pagination-prev i {
    margin-right: 12px;
}

.pagination-next {
    margin-left: auto;
}

.pagination-next i {
    margin-left: 12px;
}

.pagination-next.disabled .pagination-link,
.pagination-prev.disabled .pagination-link {
    color: #dadfe2;
}

.pagination-counter {
    align-items: center;

    color: #3e4e5f;

    display: flex;

    font-size: 0.875rem;

    font-weight: 600;

    justify-content: center;

    line-height: 1.71428571;
}

.pagination-counter span:first-child {
    margin-right: 12px;
}

.pagination-counter span:last-child {
    margin-left: 12px;
}

.topbar {
    background-color: #eef3f5;
}

.topbar-outer {
    align-items: center;

    column-gap: 32px;

    display: flex;

    flex-direction: row;

    height: 80px;

    justify-content: space-between;
}

.topbar-divider {
    margin-left: auto;

    margin-right: auto;
}

.topbar-address {
    color: #3e4e5f;

    font-size: 1rem;

    line-height: 1.5;
}

.topbar-buttons {
    align-items: center;

    column-gap: 24px;

    display: flex;
}

.topbar-buttons .btn-dark {
    width: 200px;
}

.topbar-contacts {
    align-items: flex-start;

    display: flex;

    flex-direction: column;

    row-gap: 6px;
}

.topbar-contacts .link-modal {
    color: rgba(232, 65, 48, 1);

    display: inline-block;

    font-size: 0.875rem;

    font-weight: 400;

    line-height: 1.14285714;

    transition: box-shadow 0.2s;
}

.topbar-contacts .link-modal:hover {
    box-shadow: 0 1px rgba(232, 65, 48, 1);
}

.topbar-contacts .footer-phone {
    color: #3e4e5f;

    display: inline-block;

    font-size: 1rem;

    font-weight: 600;

    line-height: 1.5;

    transition: box-shadow 0.2s;

    white-space: nowrap;
}

.topbar-contacts .footer-phone:hover {
    box-shadow: 0 1px white;
}

.pencil-icon path,
.study-hat-icon path {
    fill: var(--l-blue);
}

.phone-icon path {
    fill: var(--d-grey);
}

.header {
    background-color: #fff;

    border-bottom: 1px solid #e5e5e5;

    position: sticky;

    top: 0;

    z-index: 1030;
}

.whatsapp-link {
    display: flex;
}

.header-outer {
    align-items: center;

    display: flex;

    flex-direction: row;

    height: 120px;

    justify-content: space-between;
}

.header-divider {
    margin-left: auto;

    margin-right: auto;
}

.header-logo img {
    display: block;
    height: 72px;
}

.header-nav {
    column-gap: 32px;
}

.header-nav .nav-link {
    color: var(--d-grey);

    font-size: 18px;

    font-weight: 600;

    line-height: 24px;

    transition: box-shadow 0.2s;
    padding: 12px 0;
    white-space: nowrap;
    text-transform: uppercase;

}

.header-nav .nav-link.tutoring {
    align-items: center;

    display: flex;
}

.footer .nav-link.tutoring.active {
    box-shadow: inset 0 -1px white;
}

.header .nav-link.tutoring.active span {
    box-shadow: inset 0 -1px var(--l-blue);
}

.header .nav-link.tutoring::before {
    content: "";

    display: inline-block;

    width: 24px;

    height: 24px;

    background-image: url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0ic3R1ZHktaGF0LWljb24iIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogICAgICAgICAgICA8cGF0aCBkPSJNMTIgMjFMNSAxNy4yVjExLjJMMSA5TDEyIDNMMjMgOVYxN0gyMVYxMC4xTDE5IDExLjJWMTcuMkwxMiAyMVpNMTIgMTIuN0wxOC44NSA5TDEyIDUuM0w1LjE1IDlMMTIgMTIuN1pNMTIgMTguNzI1TDE3IDE2LjAyNVYxMi4yNUwxMiAxNUw3IDEyLjI1VjE2LjAyNUwxMiAxOC43MjVaIiBmaWxsPSIjMDA5RUUzIi8+CiAgICAgICAgPC9zdmc+");

    background-size: contain;

    background-repeat: no-repeat;

    vertical-align: middle;
}

.header-nav .nav-link.tutoring span {
    color: rgba(242, 113, 102, 1);

    margin-left: 8px;
}

.header-nav .nav-link:hover span,
.header-nav:not(:hover) .nav-item.active .nav-link span {
    box-shadow: inset 0 -1px #3e4e5f;
}

.header-buttons {
    display: none;

    align-items: center;

    column-gap: 24px;
}

.header-buttons .btn-outline-blue {
    padding: 10px 36px;
}

.header-outer__container {
    display: flex;

    flex-direction: column;

    height: 100%;

    align-items: flex-end;
}

.header-outer__container .header-nav_top {
    align-items: center;
    column-gap: 0;
    justify-content: flex-start;
    margin: 0;
    padding: 5px 0;
    margin-top: 16px;
    margin-bottom: 4px;
}

.header-outer__container .header-nav_top .nav-item {
    letter-spacing: -0.01em;
    color: #858691;
}

.header-outer__container .header-nav_top .nav-item::after {
    content: "/";
    margin-left: 16px;
    margin-right: 16px;
}

.header-outer__container .header-nav_top .nav-item:last-child::after {
    content: "";
    margin-left: 0;
    margin-right: 0;
}

.header-outer__container .header-nav_top .nav-item span {
    letter-spacing: -0.01em;
    color: #858691;
}

.header-outer__container .header-nav_top .header-button {
    height: 40px;
}

.header-outer__container .header-nav_top .header-phone {
    align-items: center;

    color: #3a434c;

    display: flex;
}

.header-outer__container .header-nav_top .header-phone svg {
    margin-right: 8px;
}

.header-outer__container .header-nav_bottom {
}

.header-outer__container .header-nav_bottom span {

}

.header-phone {
    transition: box-shadow 0.2s;

    display: flex;
}

.header-phone:hover {
    box-shadow: inset 0 -1px #3e4e5f;
}

.navbar {
    -webkit-overflow-scrolling: touch;

    -ms-overflow-style: -ms-autohiding-scrollbar;

    height: 100%;

    z-index: 9999;

    right: 0;

    overflow-y: auto;

    overscroll-behavior: contain;

    position: fixed;

    top: 0;

    transform: translateX(100vw);

    width: 100%;

    will-change: transform;

    z-index: 1050;
    transition: 0.2s transform ease;
}

.navbar .nav-item.active .nav-link,
.navbar .nav-item .nav-link.active {
    color: var(--l-blue);
}

.navbar-opened .navbar {
    transform: translateX(0);

    background: #3e4e5fdb;
}

.navbar-outer {
    width: 320px;

    position: absolute;

    right: 0;

    display: flex;

    flex-direction: column;

    min-height: 100%;
}

.navbar,
.navbar-body,
.navbar-foot,
.navbar-head {
    background-color: #fff;
}

.navbar-head {
    padding-left: 15px;

    position: sticky;

    top: 0;

    z-index: 10;

    display: flex;

    align-items: center;
}

.navbar-head > .container {
    column-gap: 24px;

    align-items: center;

    display: flex;

    flex-direction: row;

    height: 64px;

    justify-content: flex-end;
}

.navbar-body {
    display: flex;

    flex: 1 0 auto;
}

.navbar-body > .container {
    display: flex;

    flex-direction: column;

    justify-content: flex-start;

    margin-top: 4px;
}

.navbar-body .nav-item {
    font-family: 'Roboto Flex', sans-serif;
}

.navbar-foot {
    bottom: 0;

    position: sticky;

    z-index: 10;
}

.navbar-foot > .container {
    display: flex;

    flex-direction: column;

    padding-bottom: 24px;

    padding-top: 24px;

    row-gap: 24px;
}

.navbar-logo img {
    display: block;

    transition: height 0.5s ease-out;
}

.navbar-nav {
    flex-direction: column;
}

.navbar-nav .nav-link {
    color: #3e4e5f;

    font-size: 24px;

    font-weight: 600;

    line-height: 1.6;

    padding: 12px 0;

    text-transform: capitalize;

    white-space: normal;
}

.navbar-contacts {
    justify-content: space-between;

    font-size: 0.875rem;

    line-height: 21px;

    align-items: flex-start;

    display: flex;

    flex-direction: row;

    align-items: center;
}

.navbar-contacts .link-modal {
    color: rgba(232, 65, 48, 1);

    display: inline-block;

    font-size: 0.875rem;

    font-weight: 400;

    line-height: 1.71428571;
}

.navbar-contacts .link-phone {
    color: #3e4e5f;

    display: inline-block;

    font-size: 1.25rem;

    font-weight: 500;

    line-height: 2;

    white-space: nowrap;
}

.navbar-buttons .btn {
    width: 100%;
}

.navbar-toggler {
    background-color: initial;

    background-image: none;

    border-radius: 0;

    border-width: 0;

    cursor: pointer;

    height: 40px;

    padding: 0;

    position: relative;

    width: 40px;
}

.navbar-toggler:focus {
    outline: 0;
}

.navbar-toggler-icon {
    bottom: 0;

    display: block;

    height: 2px;

    left: 0;

    margin: auto;

    position: absolute;

    right: 0;

    top: 0;

    transition: background-color 0s linear 0.15s;

    width: 26px;

    will-change: transform;
}

.navbar-toggler-icon,
.navbar-toggler-icon:after,
.navbar-toggler-icon:before {
    background-color: #3e4e5f;
}

.navbar-toggler-icon:after,
.navbar-toggler-icon:before {
    content: "";

    display: block;

    height: 2px;

    left: 0;

    position: absolute;

    right: 0;

    transition: transform 0.15s, top 0.15s ease 0.15s;

    width: 26px;

    will-change: transform, top;
}

.navbar-toggler-icon:before {
    top: -8px;
}

.navbar-toggler-icon:after {
    top: 8px;
}

.navbar-opened .navbar-toggler-icon {
    background-color: initial;
}

.navbar-opened .navbar-toggler-icon:after,
.navbar-opened .navbar-toggler-icon:before {
    top: 0;

    transition: top 0.15s, transform 0.15s ease 0.15s;
}

.navbar-opened .navbar-toggler-icon:before {
    transform: rotate(-45deg);
}

.navbar-opened .navbar-toggler-icon:after {
    transform: rotate(45deg);
}

.searchbar {
    background-color: #fff;

    height: 100%;

    left: 0;

    position: fixed;

    top: 0;

    width: 100%;

    z-index: 1060;
}

body:not(.searchbar-opened) .searchbar {
    display: none;
}

.searchbar-outer {
    align-items: center;

    display: flex;

    flex-direction: column;

    justify-content: center;

    min-height: 100%;

    padding: 16px;
}

.searchbar .searchbar-toggler {
    position: absolute;

    top: 16px;
}

.searchbar-form {
    max-width: 480px;

    position: relative;

    width: 100%;
}

.searchbar-form .input-group-prepend {
    left: 0;

    pointer-events: none;

    position: absolute;

    top: 16px;
}

.searchbar-form .input-group-prepend i {
    color: #3e4e5f;

    font-size: 1.5rem;
}

.searchbar-form input[type="text"] {
    appearance: none;

    background-clip: padding-box;

    background-color: initial;

    border: solid #3e4e5f;

    border-radius: 0;

    border-width: 0 0 1px;

    box-shadow: none;

    display: block;

    padding: 16px 0 15px 40px;

    width: 100%;
}

.searchbar-form input[type="text"],
.searchbar-form input[type="text"]::placeholder {
    color: #3e4e5f;

    font-size: 1rem;

    font-weight: 500;

    line-height: 1.5;
}

.searchbar-form input[type="text"]:focus {
    outline: 0;
}

.searchbar-form input[type="text"]:focus::placeholder {
    opacity: 0;
}

.searchbar-toggler {
    background-color: initial;

    background-image: none;

    border-radius: 0;

    border-width: 0;

    color: #3e4e5f;

    cursor: pointer;

    display: flex;

    font-size: 1.5rem;

    padding: 8px;
}

.main-intro {
    display: flex;
    margin-top: 0;
    min-height: 90vh;
    height: max-content;
    overflow: hidden;
    position: relative;
    top: -120px;
    margin-bottom: -20px;
}

.main-intro__flow{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    column-gap: 24px;
    background: white;
    width: 100%;
    transform: skewY(-1deg) translate3d(0,0,0); 
    transform-origin: 0 100%;
    height: 36px;
    bottom: 18px;
    position: absolute;
    z-index: 10;
   
   
    
}
.main-intro__flow .flow-track{
        display: flex;
        flex-shrink: 0;
        flex-grow: 0;
        column-gap: 24px;      
        
}
.main-intro__flow a.flow-item {
    display: flex;
    column-gap: 24px;
    align-items: center;
    text-transform: uppercase;
    font-size: 18px;
    line-height: 24px;
    font-weight: 600;
    letter-spacing: 0.002em;
    flex-shrink: 0;
    text-transform: uppercase;
    color: var(--d-grey);
    transition: color 0.15s;
}

.main-intro__flow a.flow-item:hover {
    color: var(--l-blue);
}

.main-intro-slider__item {
    display: flex;
    width: 100%;
    flex: 0 0 100%;
    padding-bottom: 110px;
    padding-top: 56px;

    position: relative;
    min-height: 100vh;
}


.main-intro-slider__item-image {
    min-height: 100%;
    left: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}

.main-intro-slider__item-image:before {
    background-image: linear-gradient(269.92deg, #0000 30.65%, #000 87.93%);

    bottom: 0;

    content: "";

    left: 0;

    opacity: 0.44;

    position: absolute;

    right: 0;

    top: 0;

    z-index: 1;
}

.main-intro-slider__item-image img {
    min-height: 100%;
    height: auto;
    left: 0;

    object-fit: cover;

    position: absolute;

    top: 0;

    transition: transform 6s ease-in-out;

    width: 100%;

    will-change: transform;
}

.main-intro-slider__item-outer {
    height: auto;
    left: 0;
    position: relative;
    top: 0;
    width: 100%;
    z-index: 1;
    margin-top: 200px;
}

.main-intro-slider__item-outer > .container {
    height: 100%;
}

.main-intro-slider__item-inner {
    display: flex;

    flex-direction: column;

    height: 100%;

    justify-content: center;

    opacity: 1;

    transition: opacity 0.6s;
}

.main-intro-slider__item-title {
    color: #fff;
    font-family: 'Roboto Flex', sans-serif;
    font-size: 3rem;
    text-transform: uppercase;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.02em;
    margin-bottom: 32px;
}

.main-intro-slider__item-text {
    color: #fff;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 24px;
    letter-spacing: -0.01em;
}

.main-intro-slider__item-text > :last-child {
    margin-bottom: 0;
}

.main-intro-slider__item.swiper-slide-active .main-intro-slider__item-inner {
    opacity: 1;

    transition-delay: 0.9s;
}

.main-intro-slider__item.swiper-slide-active .main-intro-slider__item-image img {
    transform: scale(1.1);
}

.main-intro-pagination {
    top: 210px;
    left: 0;
    position: absolute;
    right: 0;
    z-index: 1;
}

.main-programs__about h1 {
    font-size: 3rem;

    margin-bottom: 32px;
}

.main-programs__about p {
    font-size: 1rem;

    line-height: 1.5;

    margin-bottom: 12px;
}

.main-programs__title {
    color: #3e4e5f;

    font-size: 2.3125rem;

    font-weight: 600;

    line-height: 1.33333333;

    margin-bottom: 40px;

    margin-top: 108px;
}

.main-appointment {
    overflow: hidden;
}

.main-appointment__text > :last-child {
    margin-bottom: 0;
}

.main-appointment__button > .btn {
    padding: 20px 40px;
    font-size: 16px;
}

.main-reviews,
.main-infoblock {
    scrollbar-width: none;
}

.main-reviews{
    overflow: clip;
}

.main-reviews__title {
    color: #3e4e5f;
    font-size: 1.875rem;
    font-weight: 600;
    margin-bottom: 40px;
    text-align: center;
}
.infoblock__wrapper{
    display: flex;
    @media (max-width: 768px){
        flex-direction: column;
    }
}
.infoblock__wrapper .article{
    padding: 0;
    padding-right: 32px;
}
.infoblock-head {
    display: flex;
    flex-direction: column;
}
.infoblock-head .main-about__ratings {
    margin-bottom: 20px;
}

.main-reviews__body {
    display: flex;

    flex-direction: column;

    height: 100%;

    justify-content: space-between;
}

.main-reviews-slider {
    width: 100%;
    max-height: 320px;
}
.main-reviews-slider__item {
    height: 100%;
}

.main-reviews-slider__item img {
    cursor: pointer;
    transition: transform 0.15s;
    transform: scale(0.98);
}

.main-reviews-slider__item:hover img {
    transform: scale(1);
}
.main-reviews-slider__item-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(240, 246, 250, 1);
    padding: 24px;
    height: 100%;
    min-height: 100%;
    border-radius: 16px;
}

.main-reviews-slider__item-inner > img {
    border-radius: 0;
    max-width: 100%;
    width: auto;
    max-height: 100%;
}

.main-reviews-slider__item-text {
    color: var(--d-grey);

    font-family: 'Roboto Flex', sans-serif;

    font-size: 1.25rem;

    font-weight: 500;

    line-height: 1.4;

    margin-bottom: 16px;
}

.main-reviews-slider__item-name {
    color: var(--d-grey);

    font-size: 1rem;

    font-weight: 400;

    line-height: 1.5;
}
.main-reviews-head {
    display: flex;
    align-items: center;
    margin-bottom: 40px;
}

.main-reviews-head h2 {
    margin: 0;
}
.main-banners__item {
    flex: 1 1 calc(50% - 14px);
    flex-shrink: 1;
    min-height: 320px;
    &:nth-child(2n-1){
        padding-left: 0;
    }
    &:last-child(2n){
        padding-right: 0;
    }
    @media (max-width: 768px) {
        &:nth-child(2n-1){
            padding: 0;
        }
        &:last-child(2n){
            padding: 0 15px;
        }

    }
}
.services-list .main-banners__item{
     @media (max-width: 768px) {
      &:nth-child(2n-1){
            padding: 0 15px;
        }
        &:last-child(2n){
            padding: 0 15px;
        }

    }
}
.main-banners__list{
    gap: 28px;
    display: flex;
    flex-wrap: wrap;
}
.main-banners__title {
    margin-bottom: 40px;
}
.main-reviews-pagination {
    margin: 0;
    margin-left: auto;
}

.main-reviews-slider,
.main-infoblock-slider {
}
@media (min-width: 768px){
   
    .main-reviews-slider,
    .main-infoblock-slider {
        overflow: visible !important;
    }
}
.main-programs {
    overflow: hidden;
}

.main-programs__title {
    color: var(--d-grey);

    font-size: 3rem;

    font-weight: 500;

    line-height: 1.25;

    margin-bottom: 48px;

    margin-left: auto;

    margin-right: auto;

    text-align: center;
}

.main-programs .container > .lead {
    margin-bottom: 96px;
}

.main-programs .container > .lead img {
    margin-right: 30px;
}
.main-about__title{
    /* text-transform: uppercase; */
}
.main-about__text{
    margin-left: 15px;
}
.main-programs__text,
.main-about__text {
    color: var(--d-grey);

    font-size: 1rem;

    line-height: 1.5;
}
.main-about-slider{
    background: #F0F6FB;
    border-radius: 16px;
    height: fit-content;
}
.appointment-form-social {
    display: flex;
    column-gap: 12px;
    margin-top: auto;
}

.appointment-form-social svg {
    transition: transform 0.15s;
}

.appointment-form-social svg:hover {
    transform: scale(1.1);
}
.main-about-slider__item{
    background: #F0F6FB;
    border-radius: 8px;
    padding: 0;
}
.main-about-slider__item img{
    margin: 0 auto;
}
.main-about__banner {
    display: flex;
    padding: 0;
}
.main-about__banner picture {
    width: 100%;
}
.main-about__banner picture img {
    width: 100%;
}
.main-about__ratings {
    flex-direction: column;
    width: 280px;
    margin-left: auto;
    gap: 16px;
    margin-top: 0;
    flex-wrap: nowrap;
    display: flex;
}
.main-about__wrapper{
    position: sticky;
    top: 160px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

@media (max-width: 1024px) {
    .main-about__ratings {
        justify-content: start;
    }
    .main-about__ratings > img {
        max-width: 80px;
        margin: 0 auto;
    }
}

@media (max-width: 768px) {
     .btn.btn-blue span{
        font-size: 16px;
    }
    .main-about__ratings {
        width: 100%;
        margin-left: 0;
        margin-top: 32px;
        margin-bottom: 0;
    }
}
.main-about__rating-wrapper {
    display: flex;
    flex-direction: row;
    gap: 10px;
    margin: 0;
}
.main-about__rating-card {
    background: #f4f8fa;
    border-radius: 20px;
    padding: 16px 32px 20px 16px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-width: 0;
}
.main-about__rating-title {
    font-size: 28px;
    font-weight: 700;
}
.main-about__rating-logo {
    height: 20px;
    vertical-align: middle;
    border-radius: 0 !important;
}
.main-about__rating-logo--2gis {
    height: 23px;
}
.main-about__rating-row {
    display: flex;
    align-items: center;
    gap: 12px;
    align-items: flex-start;
    flex-direction: column;
}
.stars {
    display: flex;
    gap: 8px;
}
.main-about__rating-value {
    font-size: 40px;
    font-weight: 600;
    color: var(--d-grey);
    font-family: 'Roboto Flex', sans-serif;
    line-height: 1.2;
    letter-spacing: .02em;
}
.main-about__rating-reviews {
    color: var(--l-grey);
    font-size: 17px;
    line-height: 1.5;
    height: fit-content;
    align-self: end;
    padding-bottom: 4px;
}

.main-programs__text > :last-child {
    margin-bottom: 0;
}

.main-programs-slider__item {
    border-radius: 16px;

    display: block;

    overflow: hidden;

    position: relative;
}

.main-programs-slider__item:before {
    background-color: #0000;

    content: "";

    display: block;

    padding-top: 75%;

    width: 100%;
}

.main-programs-slider__item img {
    height: 100%;

    left: 0;

    object-fit: cover;

    position: absolute;

    top: 0;

    width: 100%;
}

.main-programs-slider__item img.lazyload,
.main-programs-slider__item img.lazyloading {
    opacity: 0;

    transition: opacity 0.15s;
}

.main-programs-slider__item img.lazyloaded {
    opacity: 1;
}

.main-programs-pagination {
    margin-top: 56px;
}

.main-person {
    overflow: hidden;
    margin-left: 20px;
    margin-right: 20px;
    border-radius: 40px;
    text-align: right;
    padding: 100px 0 90px 0;
}

.main-person__video {
    position: absolute;

    bottom: 40px;

    left: 40px;

    z-index: 2;
}

.main-person__video-button {
    display: flex;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 44px;
    align-items: center;
}

.main-person__video-play {
    width: 80px;

    height: 80px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: white;

    box-shadow: 0 0 12px rgba(0, 0, 0, 0.27);

    border-radius: 50%;

    cursor: pointer;

    transition: all 0.15s ease-in-out;
}

.main-person__video-play:hover {
    transform: scale(1.1);
}

.main-person__video-button span {
    margin-left: 10px;
    margin-right: 20px;

    font-weight: 600;

    line-height: 1.3;

    text-align: start;
}

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

.main-person__title {
    color: var(--d-grey);

    font-family: 'Roboto Flex', sans-serif;

    font-size: 2.3125rem;

    font-weight: 600;

    letter-spacing: -0.02em;

    line-height: 1.40540541;

    position: relative;
}

.main-person__title > :last-child {
    margin-bottom: 0;
}

.main-person__body {
    border-radius: 16px 0 0 16px;

    display: flex;

    flex-wrap: wrap;

    justify-content: center;

    margin-left: calc(-16.66667% - 5px);

    margin-right: calc(100% - 50vw + 15px);

    z-index: 0;
    width: 100%;
}

.main-person__image {
    align-items: flex-end;

    display: flex;

    flex: 0 0 auto;

    height: 344px;

    position: relative;

    width: 41.66666667%;
}

.main-person__image img {
    display: block;
    height: 100%;
    width: auto;
    max-width: 539px;
    max-height: 559px;
}

.main-person__data {
    align-self: flex-start;
    display: flex;
    margin-top: 24px;
    flex: 0 0 auto;

    flex-direction: column;

    justify-content: flex-end;

    width: 85%;
}
.main-person__body.mobile {
    display: none;
}
.main-person__name {
    color: var(--d-grey);

    font-family: 'Roboto Flex', sans-serif;

    font-size: 1.25rem;

    font-weight: 500;

    line-height: 1.4;
}

.main-person__info {
    color: var(--d-grey);
    font-size: 1rem;
    line-height: 1.5;
    margin-top: 16px;
}

.main-person__info ul li:before {
    content: "";
    background-color: rgba(0, 158, 227, 1) !important;
    border-radius: 50%;
    width: 6px;
    height: 6px;
    border: none !important;
    top: 9px !important;
    left: 15px !important;
}

.sidebar {
    margin-left: -20px;

    position: sticky;

    top: 180px;
}

.sidebar-outer {
    display: flex;

    flex-direction: column;

    min-height: 100%;
}

.sidebar-anchors li {
    line-height: normal;
    padding-left: 15px;
    margin-bottom: 24px;
    position: relative;
}

.sidebar-anchors li {
    list-style-type: none;
}

.sidebar-anchors li::before {
    content: "";
    display: block;
    position: absolute;
    border-radius: 50%;
    width: 12px;
    height: 12px;
    top: 0.39rem;
    left: -1rem;
    border: 1px solid var(--d-grey);
}

.sidebar-anchors li.active::before {
    background-color: rgba(58, 67, 76, 1);
    border: 1px solid rgba(58, 67, 76, 1);
}

.sidebar-anchor {
    color: var(--d-grey);

    font-size: 1.125rem;

    font-weight: 600;
}

.default-filter {
    margin-bottom: 40px;
}

.default-filter-fieldset {
    display: flex;

    flex-wrap: nowrap;

    overflow-x: auto;
}

.default-filter-control {
    color: #3e4e5f;

    flex-shrink: 0;

    font-size: 0.875rem;

    font-weight: 500;

    letter-spacing: -0.003em;

    line-height: 1.71428571;

    margin-right: 12px;

    position: relative;

    white-space: nowrap;
}

.default-filter-control:last-child {
    margin-right: 0;
}

.default-filter-control label {
    border-radius: 24px;

    display: inline-block;

    margin-bottom: 0;

    user-select: none;

    vertical-align: top;
}

.default-filter-control input[type="radio"] {
    opacity: 0;

    position: absolute;

    z-index: -1;
}

.default-filter-control span {
    background-color: #eef3f5;

    border: 1px solid #0000;

    border-radius: inherit;

    display: block;

    padding: 7px 19px;

    transition: background-color 0.15s, border-color 0.15s;
}

.default-filter-control label:hover input[type="radio"]:not(:checked) ~ span {
    background-color: #bbcfd7;
}

.default-filter-control input[type="radio"]:checked ~ span {
    border-color: #3e4e5f;
}

.contacts-list {
    margin-bottom: 56px;
}

.contacts-item {
    margin-bottom: 32px;
}

.contacts-item:last-child {
    margin-bottom: 0;
}

.contacts-item__title {
    color: #3e4e5f;

    font-size: 0.875rem;

    line-height: 1.71428571;
}

.contacts-item__value {
    color: #3e4e5f;

    font-size: 1rem;

    font-weight: 500;

    line-height: 1.4375;

    transition: box-shadow 0.2s;
}

.contacts-item__value a {
    color: inherit;
}

.contacts-item__value a:hover {
    box-shadow: 0 1px #3e4e5f;
}

.contacts-map {
    border: 1px solid #c1d1d7;

    border-radius: 16px;

    height: 320px;

    overflow: hidden;
}

.cases-list {
    row-gap: 32px;
}

.cases-item__link {
    display: block;
}

.cases-item__link img {
    transition: transform 0.3s ease-in-out;

    will-change: transform;
}

.cases-item__link:hover img {
    transform: scale(1.1);
}

.cases-item__image {
    border-radius: 16px;

    overflow: hidden;

    position: relative;
}

.cases-item__image:before {
    background-color: #0000;

    content: "";

    display: block;

    padding-top: 75%;

    width: 100%;
}

.cases-item__image img {
    height: 100%;

    left: 0;

    object-fit: cover;

    position: absolute;

    top: 0;

    width: 100%;
}

.cases-item__image img.lazyload,
.cases-item__image img.lazyloading {
    opacity: 0;

    transition: opacity 0.15s;
}

.cases-item__image img.lazyloaded {
    opacity: 1;
}

.case {
    margin-top: 16px;
}

.case__image {
    margin-bottom: 16px;
}

.case__image img {
    display: block;

    height: auto;

    max-width: 100%;

    width: 100%;
}

.case__name {
    color: #3e4e5f;

    font-size: 1rem;

    font-weight: 700;

    line-height: 1.5;
}

.case-props-item,
.case__name {
    margin-bottom: 16px;
}

.case-props-item:last-child {
    margin-bottom: 0;
}

.case-props-item__title {
    color: #3e4e5f;

    font-size: 0.875rem;

    line-height: 1.71428571;
}

.case-props-item__value {
    color: #3e4e5f;

    font-size: 0.875rem;

    font-weight: 500;

    line-height: 1.5;
}

.doctors-list {
    row-gap: 80px;
}

.doctors-item__head,
.doctors-item__outer {
    position: relative;
}

.doctors-item__button {
    bottom: 0;

    left: 0;

    overflow: hidden;

    position: absolute;

    right: 0;

    text-align: center;
}

.doctors-item__button .link-modal {
    background-color: rgba(232, 65, 48, 1);

    border-radius: 16px 16px 0 0;

    color: #fff;

    display: inline-block;

    font-size: 1.125rem;

    font-weight: 600;

    letter-spacing: -0.01em;

    line-height: 1.33333333;

    padding: 20px;

    position: relative;

    text-align: center;

    transform: translateY(100%);

    transition: background-color 0.15s, transform 0.15s;

    z-index: 1;
}

.doctors-item__button .link-modal:hover {
    background-color: #2a709e;
}

.doctors-item__photo {
    border-radius: 16px;

    overflow: hidden;

    position: relative;
}

.doctors-item__photo:before {
    background-color: #0000;

    content: "";

    display: block;

    padding-top: 125.84269663%;

    width: 100%;
}

.doctors-item__photo-wrap {
    align-items: center;

    display: flex;

    height: 100%;

    justify-content: center;

    left: 0;

    position: absolute;

    top: 0;

    width: 100%;
}

.doctors-item__photo-wrap img {
    display: block;

    height: auto;

    width: 100%;
}

.doctors-item__body {
    margin-top: 24px;
}

.doctors-item__name {
    color: #3e4e5f;

    font-size: 1rem;

    font-weight: 500;

    line-height: 2;
}

.doctors-item__name span {
    display: block;

    font-size: 1.25rem;

    line-height: 1.6;
}

.doctors-item__link {
    color: inherit;
}

.doctors-item__link:before {
    background-color: #0000;

    bottom: 0;

    content: "";

    left: 0;

    pointer-events: auto;

    position: absolute;

    right: 0;

    top: 0;
}

.doctors-item__info {
    color: #3e4e5f;

    font-size: 0.875rem;

    font-weight: 400;

    line-height: 1.71428571;

    margin-top: 24px;
}

.doctors-item__outer:hover .doctors-item__button .link-modal {
    transform: none;
}

.doctor-head {
    margin-bottom: 80px;

    row-gap: 32px;
}

.doctor-photo {
    border-radius: 16px;

    overflow: hidden;

    position: relative;
}

.doctor-photo:before {
    background-color: #0000;

    content: "";

    display: block;

    padding-top: 125.84269663%;

    width: 100%;
}

.doctor-photo-wrap {
    align-items: center;

    display: flex;

    height: 100%;

    justify-content: center;

    left: 0;

    position: absolute;

    top: 0;

    width: 100%;
}

.doctor-photo-wrap img {
    display: block;

    height: auto;

    width: 100%;
}

.doctor-info {
    color: #3e4e5f;

    font-size: 1.25rem;

    font-weight: 500;

    line-height: 1.6;

    margin-bottom: 80px;
}

.service-title {
    margin-bottom: 24px;
}
.services-sidebar {
    position: sticky;
    top: 240px;
    height: fit-content;
}

@media(max-width: 1024px) {
    .services-sidebar {
        max-width: 100%;
        flex: 0 0 100%;
    }
}

.services-sidebar__text {
    font-weight: 600;
    font-size: 1.25rem;
    line-height: 1.4;
    flex-shrink: 0;
    transition: color 0.15s ease;
}

.services-sidebar__text:hover {
    color: var(--d-blue);
}

.services-sidebar ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.services-sidebar li {
    margin: 0;
    padding: 20px 0;
    border-top: 2px solid rgba(248, 248, 248, 1);
    border-collapse: collapse;
}

.services-sidebar a {
    color: inherit;
    text-decoration: none;
}

.services-sidebar a:hover {
    color: inherit;
    text-decoration: none;
}

.services-sidebar a:visited {
    color: inherit;
}

.services-sidebar a:link {
    color: inherit;
}

.services-sidebar__link--active {
    color: var(--d-blue) !important;
    position: relative;
}
.services-sidebar__arrow{
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    cursor: pointer;
}
.services-sidebar__item--dropdown {
    padding-bottom: 8px;
}

.services-sidebar__item--dropdown .services-sidebar__dropdown {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out, opacity 0.2s ease-out 0.1s;
    
    opacity: 0;
   
}


.services-sidebar__item--dropdown .services-sidebar__dropdown.show {
    max-height: 500px;
    opacity: 1;
    transition: max-height 0.3s ease-in, opacity 0.2s ease-in 0.1s;
}
.services-sidebar__item--dropdown .services-sidebar__dropdown .services-sidebar__dropdown-item:first-child{
    padding-top: 16px;
}

.services-sidebar__item--dropdown .services-sidebar__dropdown-item {
    padding: 0 0 12px 12px;
    border: 0;
}

.services-sidebar__item--dropdown .services-sidebar__dropdown-link {
    color: rgba(24, 24, 24, 0.7);
    text-decoration: none;
    transition: color 0.2s ease;
}

.services-sidebar__item--dropdown .services-sidebar__dropdown-link:hover {
    color: rgba(24, 24, 24, 1);
}

.services-sidebar__item--dropdown .services-sidebar__dropdown-link--active {
    color: var(--d-blue);
    font-weight: 600;
    pointer-events: none;
}

.services-sidebar__item--dropdown .services-sidebar__dropdown-text {
    font-size: 1.125rem;
    letter-spacing: -0.001em;
    color: inherit;
}

.services-sidebar__item--dropdown .services-sidebar__link {
    display: flex;
    justify-content: space-between;
    align-items: center;


    cursor: pointer;
}

.services-sidebar__item--dropdown .services-sidebar__link--active {
    cursor: default;
}

.services-sidebar__item--dropdown .services-sidebar__link svg {
    transition: transform 0.3s ease;
}

.services-sidebar__item--dropdown .services-sidebar__dropdown-arrow {
    transition: transform 0.3s ease;
}

.services-sidebar__item--dropdown .services-sidebar__dropdown-arrow i {
    font-size: 0.875rem;
    color: rgba(24, 24, 24, 0.5);
}

.services-sidebar__item--dropdown:has(.services-sidebar__dropdown.show) .services-sidebar__dropdown-arrow {
    transform: rotate(180deg);
}

.services-sidebar__item--dropdown:has(.services-sidebar__dropdown.show) .services-sidebar__link svg {
    transform: rotate(180deg);
}

/* Fallback for browsers that don't support :has() */
.services-sidebar__item--dropdown.dropdown-open .services-sidebar__link svg {
    transform: rotate(180deg);
}

.services-list:not(.main-programs__list) {
    row-gap: 24px;
}

.services-list:not(.main-programs__list) .services-item__outer {
    background: var(--bg-white);

    border: 2px solid var(--border-white);

    transition: 0.2s;
}

.blog-list .services-item__outer:hover {
    border: 2px solid var(--d-grey);
}

.services-item__outer {
    background: #fff;
    height: 100%;
    min-height: 180px;
    overflow: hidden;
    position: relative;
    transition: border 0.15s;
    z-index: 0;
}

.services-item__outer img {
    transition: transform 0.25s;
}
.services-item__outer:hover {
    /* border: 2px solid var(--d-grey); */
}
.services-item__outer:has(.has-image):hover img {
    transform: scale(1.1);
}

.services-item__image {
    border-radius: 16px;

    opacity: 0;

    overflow: hidden;

    transition: opacity 0.3s;

    z-index: -1;
}

.services-item__image,
.services-item__image img {
    height: 100%;

    left: 0;

    position: absolute;

    top: 0;

    width: 100%;
}

.services-item__image img {
    object-fit: cover;
}

.services-item__inner {
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
    padding: 24px;
}

.services-item__inner:has(.has-image) {
    background: linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%);    
}

.services-item__inner > img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    z-index: -1;
    border-radius: 0;
}

.services-item__icon {
    transition: opacity 0.3s;
}

.services-item__title {
    color: var(--d-grey);
    font-family: 'Roboto Flex', sans-serif;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.002em;
}

.services-item__title .services-item__link {
    color: var(--d-grey);
}

.services-item__title.has-image {
    color: white;
}

.services-item__title.has-image .services-item__link {
    color: white;
}

.services-item__link:before {
    background-color: #0000;

    bottom: 0;

    content: "";

    left: 0;

    pointer-events: auto;

    position: absolute;

    right: 0;

    top: 0;
}

.services-item_visible .services-item__icon {
    opacity: 0;

    transition: none;
}

.services-item_visible .services-item__image {
    opacity: 1;

    transition: none;
}

.services-item_promo .services-item__title {
    color: #fff;
}

.links-list {
    margin: 40px 0;
}

.links-list:first-child {
    margin-top: 0;
}

.links-list:last-child {
    margin-bottom: 0;
}

.links-item {
    background-color: #eef3f5;

    color: rgba(232, 65, 48, 1);

    display: block;

    font-size: 1rem;

    font-weight: 600;

    line-height: 2;

    padding: 24px 40px;

    transition: background-color 0.15s;
}

.links-item:hover {
    background-color: #e0e8eb;
}

.links-item:first-child {
    border-top-left-radius: 16px;

    border-top-right-radius: 16px;
}

.links-item:last-child {
    border-bottom-left-radius: 16px;

    border-bottom-right-radius: 16px;
}

.links-item:not(:last-child) {
    box-shadow: inset 0 -1px #c1d1d7;
}

.prices-group-title {
    margin-bottom: 28px;
}

.prices-head {
    margin: 0 0 48px;
}

.fixed-before-footer {
    bottom: -30px;

    position: absolute;
}

.prices-group {
    margin-bottom: 50px;

    margin-top: -180px;

    padding-top: 180px;
}

.prices-group h2 {
    font-size: 1.875rem;
}

.prices-group:last-child {
    margin-bottom: 0;
}

.prices-group h2 + h3 {
    margin-top: 0;
}

.prices-group .prices-list {
    margin: 0;
}

.prices-list {
    margin: 0 0 54px;
}

.prices-list:first-child {
    margin-top: 0;
}

.prices-item {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 24px 0;
        border-bottom: 1px solid rgba(248, 248, 248, 1);
}

.prices-item__title {
    color: var(--d-grey);
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.2;
    padding-right: 24px;
}

.prices-item__value {
    color: var(--d-grey);
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.2;
    white-space: nowrap;
}

.search-text {
    color: #3e4e5f;

    font-size: 1.25rem;

    font-weight: 500;

    line-height: 1.6;

    margin-bottom: 80px;
}

.search-item {
    margin-bottom: 40px;

    position: relative;
}

.search-item:last-child {
    margin-bottom: 0;
}

.search-item__title {
    color: #3e4e5f;

    font-size: 1rem;

    font-weight: 600;

    line-height: 2;

    margin-bottom: 16px;
}

.search-item__link {
    color: inherit;
}

.search-item__link:before {
    background-color: #0000;

    bottom: 0;

    content: "";

    left: 0;

    pointer-events: auto;

    position: absolute;

    right: 0;

    top: 0;
}

.search-item__link:hover {
    box-shadow: inset 0 -1px #3e4e5f;
}

.search-item__text {
    color: #3e4e5f;

    font-size: 1rem;

    line-height: 2;
}

.search-item__text > :last-child {
    margin-bottom: 0;
}

.notfound-title {
    font-size: 7.5rem;

    font-weight: 600;

    line-height: 1.4;
}

.notfound-text,
.notfound-title {
    color: #3e4e5f;

    text-align: center;
}

.notfound-text {
    font-size: 1.25rem;

    font-weight: 500;

    line-height: 1.6;

    margin-top: 40px;
}

.footer {
    background-color: rgba(24, 24, 24, 1);
    padding: 24px 0;
    color: #fff;
}

.footer .legal-text{
    font-weight: 400;
    font-size: 1rem;
    line-height: 140%;
    letter-spacing: -0.01em;
    color: #858691;
    margin-bottom: 0;
}
.footer .legal-links {
    display: flex;
    flex-direction: row;
    column-gap: 32px;
    margin-top: 16px;
    margin-bottom: 8px;
}

.footer .legal-links a, .footer .legal-info a {
    color: white;
    line-height: 1.4;
    font-size: 1rem;
    text-decoration: none;
    box-shadow: inset 0 -1px white;
    transition: color 0.2s, box-shadow 0.2s;
}

.footer .legal-links a:hover, .footer .legal-info a:hover {
    color: var(--l-blue);
    box-shadow: inset 0 -1px var(--l-blue);
}
.footer-wrapper{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
}
.footer-side{
    display: flex;
    flex-direction: column;
}
.footer-main {
    padding-bottom: 24px;

    padding-top: 48px;
}

.footer-main > .row {
    row-gap: 40px;
}

.footer-left {
    justify-content: space-between;
}

.footer-contacts,
.footer-left {
    display: flex;

    flex-direction: column;
}

.footer-contacts {
    align-items: flex-start;
}

.footer-contacts .link-modal {
    color: #fff;

    display: inline-block;

    font-size: 0.875rem;

    font-weight: 400;

    line-height: 1.71428571;

    margin-top: -8px;

    transition: box-shadow 0.2s;
}

.footer-contacts .link-modal:hover {
    box-shadow: 0 1px rgba(232, 65, 48, 1);
}

.footer-contacts .footer-phone {
    color: #fff;

    display: inline-block;

    font-family: 'Roboto Flex', sans-serif;

    font-size: 1.25rem;

    font-weight: 400;

    letter-spacing: -0.02em;

    line-height: 1.4;

    transition: box-shadow 0.2s;

    white-space: nowrap;
}

.footer-contacts .footer-phone:hover {
    box-shadow: 0 1px white;
}

.footer-social {
    margin-top: 108px;
}

.footer-nav {
    column-count: 2;

    column-fill: balance;

    column-gap: 32px;

    display: block;

    width: calc(100% - 100px);
}

.navbar .nav-item a {
    transition: 0.2s;
}

.navbar .nav-item a:hover {
    color: var(--l-blue);
}

.footer-nav .nav-item {
    break-inside: avoid;

    margin-bottom: 8px;
}

.footer-nav .nav-link {
    color: #fff;
    display: inline-block;
    font-size: 1.125rem;
    font-weight: 300;
    line-height: 1.55555556;
    transition: box-shadow 0.2s;
}

.footer-nav .nav-link span {
    transition: box-shadow 0.2s;
}

.footer-nav .nav-link:hover,
.footer-nav:not(:hover) .nav-item.active .nav-link {
    box-shadow: inset 0 -1px var(--border-white);
}

.footer-button {
    text-align: right;
}

.footer-text {
    color: #fff;

    font-size: 12px;

    font-weight: 500;

    line-height: 2;
}
.footer-license_additional {
    background: white;
    padding-top: 32px;
    padding-bottom: 40px;
    p {
        margin: 0;
        font-style: normal;
        font-weight: 400;
        font-size: 17px;
        line-height: 140%;
        padding-left: 0;
        color: #3a434c;
    }
}
.footer-license_additional-links {
    display: flex;
    flex-direction: column;
    width: fit-content;
    margin-top: 8px;
    row-gap: 8px;
    a {
        color: rgba(58, 67, 76, 1);
        width: fit-content;
        line-height: 1.2;
        font-weight: 700;
        box-shadow: inset 0 -1px rgba(58, 67, 76, 1);
    }
}
.footer-license {
    padding-bottom: 40px;
}

.footer-license p {
    color: #fff9;

    font-size: 1rem;

    font-weight: 300;

    line-height: 1.5;

    margin: 0;

    max-width: 730px;
}

.footer-side {
    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

    padding-bottom: 4px;
}

.footer-side .copyright {
    color: #fff;

    flex: 0 0 auto;

    font-size: 1rem;

    font-weight: 400;
}

.footer .developer {
    color: white;
    text-decoration: none;
    font-size: 1rem;
    line-height: 1.4;
}

.footer .developer .developer-link {
    color: white;
    text-decoration: none;
    transition: color 0.2s;
}

.footer .developer .developer-link:hover {
    color: var(--l-blue);
}


.footer-side .developer-link span {
    color: #b00;

    font-style: italic;
}

@media (max-width: 768px){
    .footer .legal-text p, .developer-text{
        font-size: 14px;
    }
    .main-about__text{
        margin-left: 0;
    }
}

.scrollup {
    align-items: center;

    background-color: #fff;

    border: 1px solid #dadfe2;

    border-radius: 16px;

    bottom: 0;

    color: #3e4e5f;

    display: flex;

    flex-direction: column;

    font-family: 'Roboto Flex', sans-serif;

    font-size: 12px;

    font-weight: 500;

    height: 64px;

    justify-content: center;

    line-height: 16px;

    opacity: 0;

    position: fixed;

    right: 0;

    text-align: center;

    transform: translate3d(-40px, -40px, 0);

    transition: border-color 0.15s, opacity 0.3s;

    visibility: hidden;

    width: 64px;

    z-index: 1020;
}

.scrollup-icon svg {
    fill: #3e4e5f;

    display: block;

    height: 24px;

    transition: transform 0.15s;

    width: 24px;
}

.scrollup:hover {
    border-color: #3e4e5f;
}

.scrollup:hover svg {
    transform: translateY(-2px);
}

.scrollup.scrolled {
    opacity: 1;

    visibility: visible;
}

.overflow-hidden {
    overflow: clip;
}

.service h1 {
    padding: 0;
}

.service-slider {
    overflow: visible;
}

.service-image {
    max-height: 568px;
}

.service-head {
    align-items: center;

    display: flex;

    justify-content: space-between;

    margin: 0 0 40px;

    width: 100%;
}

.service-head h2 {
    margin: 0;
}

.service-slider__item {
    align-items: flex-start;

    background: var(--bg-white);

    border: 2px solid var(--border-white);

    border-radius: 16px;

    display: flex;

    flex-direction: row;

    padding: 24px;

    transition: 0.2s;
}

.service-slider__item:hover {
    border: 2px solid var(--d-grey);
}

.service-slider__item-inner {
    display: flex;

    flex-direction: column;

    height: 100%;

    justify-content: space-between;

    text-decoration: none;
}

.service-slider__item-title {
    color: var(--d-grey);

    font-family: 'Roboto Flex', sans-serif;

    font-size: 1.25rem;

    font-weight: 500;

    letter-spacing: -0.01em;

    line-height: 140%;

    margin-bottom: 12px;
}

.service-slider__item-count {
    color: var(--d-grey);

    font-size: 1rem;

    line-height: 140%;
}

.service .schedule {
    align-items: center;
    display: flex;
    flex-direction: row;
    z-index: 20;
    margin-top: 80px;
    margin-bottom: 120px;
}

.service .schedule-price {
    color: var(--d-grey);

    font-family: 'Roboto Flex', sans-serif;

    font-size: 1.25rem;

    font-style: normal;

    font-weight: 500;

    letter-spacing: -0.01em;

    margin-left: 24px;
}

.service .info {
    color: var(--d-grey);

    font-size: 1rem;

    font-style: normal;

    font-weight: 400;

    line-height: 24px;

    margin-bottom: 80px;

    margin-top: 8px;
}

.service .cases,
.service .cases-item {
    display: flex;

    flex-direction: column;
}

.service .cases-item {
    margin-bottom: 48px;
}

.service .cases-item:last-child {
    margin-bottom: 120px;
}

.service .cases-item h3 {
    margin-bottom: 24px;
}

.service .cases-images {
    display: flex;

    flex-direction: row;
}

.service .cases-images figure {
    border-radius: 0;

    margin: 0 30px 0 0;
}

.study h1 {
    font-size: 3rem;

    line-height: 60px;
}

.study .lead {
    margin: 0 0 80px;
}

#tinkoff-modal {
    z-index: 10000;
}

#myButton {
    margin-top: 16px;

    max-width: 100%;
}

.documents-wrapper {
    display: flex;
    flex-wrap: wrap;
    row-gap: 16px;
    column-gap: 16px;
}
.study-programs-list {
    row-gap: 60px;
}

.study-programs-item__buttons {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.study-programs-item__buttons .link-modal {
    min-width: 223px;
}
.study-programs-item:hover .study-programs-item__title {
    /* color: var(--l-blue); */
}
.study-programs-item:hover .study-programs-item__image {
    transform: scale(1.04);
}
.study-programs-item__outer {
    display: flex;

    flex-direction: column;

    height: 100%;

    row-gap: 24px;
}

.study-programs-item__image {
    aspect-ratio: 315/192;

    border-radius: 16px;

    overflow: hidden;

    position: relative;
    transition: 0.15s ease-in-out;
}

.study-programs-item__image img {
    height: 100%;

    width: 100%;
}

.study-programs-item__body {
    display: flex;

    flex: 1 0 auto;

    flex-direction: column;

    row-gap: 12px;
}

.study-programs-item__foot {
    display: flex;

    flex-direction: column;

    row-gap: 24px;
}

.study-programs-item__duration,
.study-programs-item__price,
.study-programs-item__title {
    transition: 0.15s color;
    color: var(--d-grey);
}

.study-programs-item__price {
    font-family: 'Roboto Flex', sans-serif;

    font-size: 1.25rem;

    font-weight: 500;
}
.study-programs-item__link {
    font-weight: 600;
    font-size: 18px;
    line-height: 24px;
    text-decoration-line: underline;
    color: #009ee3;
    transition: 0.2s;
}

.study-programs-item__link:hover {
    color: #007bb8;
}
.study-programs-item__link:before {
    background-color: #0000;

    bottom: 0;

    left: 0;

    pointer-events: auto;

    position: absolute;

    right: 0;

    top: 0;
}

.study-programs-item__title {
    font-size: 1.125rem;

    font-weight: 600;

    line-height: 1.55555556;

    position: relative;
}

.study-programs-item__duration {
    font-size: 1rem;

    justify-self: flex-end;

    line-height: 24px;
}

.study-programs-item__duration span {
    font-weight: 600;
}

.program-slider {
    overflow: visible;
}

.program-head h1 {
    max-width: none;
}

.program-head > .lead .lead__image img {
    margin: 0;
}

.program-head > .lead .row,
.study .lead .row {
    justify-content: start;
}

.lead {
    align-items: center;

    display: flex;

    flex-direction: row;

    width: 100%;
}
.program-list {
    margin-top: 40px;
    margin-bottom: 40px;
}
.service-list {
    margin-bottom: 40px;
}
.program .lead {
    margin-bottom: 30px;
}

.lead .row {
    justify-content: center;

    width: 100%;
}

.lead__image img {
    display: block;

    height: auto;

    max-width: 100%;
}

.lead__text {
    color: var(--d-grey);

    font-size: 1rem;

    line-height: 1.5;
}

.blog-nav{
    display: flex;
    width: fit-content;
    margin: 30px auto 0;
    column-gap: 12px;
    display: flex;
    align-items: center;
}
.blog-nav__item{
    border: 1px solid rgba(225, 224, 230, 1);
    border-radius: 8px;
    height: 32px;
    width: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    transition: background 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.2s ease-in-out;

}
.blog-nav__item--all {
    font-size: 18px;
    text-transform: uppercase;
    line-height: 24px;
    height: 60px;
    width: 400px;
    max-width: 50vw;
    box-sizing: content-box;
    color: var(--d-grey);
    font-weight: 600;
    border: 2px solid var(--d-blue);
    border-radius: 0;
    pointer-events: auto;
}

.blog-nav__item--all:hover {
    background: var(--d-blue);
    color: white;
}
.blog-nav__item--next-active, .blog-nav__item--prev-active{
    pointer-events: auto;
    &:hover{
        border-color: rgba(31, 29, 29, 1);
    }
}
.blog-nav__item path {
    fill: rgba(225, 224, 230, 1);
}
.blog-nav__item--next-active path, .blog-nav__item--prev-active path{
    fill: rgba(31, 29, 29, 1);
}
.blog-list .blog-item__title {
    font-size: 1.125rem;
}

.video-modal {
    margin: auto;
}

.video-modal video {
    max-width: calc(100vw - 30px);
}

.ymaps-2-1-79-image {
    border: 2px solid white;

    border-radius: 50%;

    background-size: auto 100% !important;

    background-repeat: no-repeat;
}

.custom-fancybox-layout {
    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    background: rgba(0, 0, 0, 0.8);

    display: flex;

    justify-content: center;

    z-index: 9999;

    opacity: 0;

    transition: opacity 0.3s cubic-bezier(0.16, 1.04, 0.86, 0.99);

    overflow: scroll;

    align-items: center;
}

.custom-fancybox-layout.show {
    opacity: 1;
}

.custom-fancybox-layout.hide {
    opacity: 0;
}

.overlay {
    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    cursor: pointer;

    z-index: -1;
}

.close-button {
    position: absolute;

    top: 20px;

    right: 20px;

    background: none;

    border: none;

    color: white;

    font-size: 2em;

    cursor: pointer;

    z-index: 1001;
}

.custom-fancybox-layout .fancybox__content {
    background: none;
}

.custom-fancybox-layout .fancybox__content .is-close {
    top: 30px;
}

.custom-fancybox-layout .custom-grid {
    display: grid;

    gap: 10px;

    grid-template-columns: repeat(2, 1fr);

    margin: 0 auto;

    width: 900px;

    align-content: center;

    height: fit-content;
}

.custom-fancybox-layout .custom-grid-item {
    height: auto;
    width: 100%;
}

.download-button {
    margin-bottom: 32px;
}

.cookie-consent {
    display: none;
    align-items: center;
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
    color: #212121;
    padding: 16px 20px;
    border-radius: 5px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    font-family: 'Roboto Flex', sans-serif;

    min-width: 280px;
    max-width: 740px;
    z-index: 1000;
}
.cookie-consent p {
    font-family: 'Roboto Flex', sans-serif;
    font-weight: 400;
    margin: 8px 0;
    padding-right: 24px;
    font-size: 14px;
    line-height: calc(20 / 14);
    color: #212121;
}
.cookie-consent .cookie-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
}
.cookie-consent button {

}
.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;
}
.main-person__body {
    position: relative; /* Needed for absolute positioning of pseudo-element */
    background: none; /* Ensure no background is set here */
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-end; /* Align items towards the bottom */
    overflow: hidden; /* Hide overflow from the main body if needed */
}

.main-person__image::before {
    /* Creates the background circle */
    content: "";
    position: absolute;
    width: auto;
    height: 90%;
    aspect-ratio: 1;
    border-radius: 50%;
    background: white;
    top: 10%;
    left: 45%;
    transform: translateX(-50%);
    z-index: 0;
    opacity: 1;
}

.main-person__image {
    position: relative;
    z-index: 1;
    width: auto;
    margin: 0 auto;
    line-height: 0;
    max-height: fit-content;
}

.main-person__image img {
    display: block;
    position: relative;
    margin: 0 auto;
    max-width: none;
    width: 450px;
    height: auto;
    clip-path: ellipse(53% 61% at 45% 39%);
}

.main-person__name {
    position: relative;
    z-index: 1;
    text-align: center;
    width: 100%;
    margin-top: 20px;
    color: var(--d-grey);
    font-family: 'Roboto Flex', sans-serif;
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 1.4;
}

.main-person__video {
    position: absolute;
    top: 64%;
    bottom: unset;
    left: unset;
    right: 20%;
    z-index: 2; 
}
.main-infoblock-slider:first-child {
    padding-top: 32px;
}
.main-infoblock-slider__item {
    cursor: grab;
    transform: scale(0.98);
    transition: transform 0.2s ease-in-out;
    padding: 0;
}

.main-infoblock-slider__item .main-infoblock-slider__item-caption {
    margin-top: 8px;
    line-height: 1.3;
}

.main-infoblock-slider__item:hover {
    transform: scale(1);
}

.main-infoblock-slider__item:active {
    cursor: grabbing;
    transform: scale(1.01);
}
.main-infoblock-slider__item-inner img {
    width: 100%;
}

.appointment-form-social_mobile{
    display: none;
}
@media (max-width: 768px) {
    .main-about{
        
    }
    .appointment-form-social_mobile{
        display: flex;
            margin-top: 16px;
    margin-left: auto;
    }
    .main-about-slider{
        margin-top: 16px;
        border-radius: 0;

    }
    .cookie-consent .cookie-wrapper {
        flex-direction: column;
    }
    .service p img {
        max-width: 100%;
    }
    .cookie-consent p {
        padding-right: 0;
    }
    .cookie-consent button {
        padding: 12px 24px;
        font-size: 14px;
        align-self: start;
    }
    .main-about__ratings {
        flex-direction: column;
        margin-left: 15px;
        margin-right: 15px;
    }
    .main-about__rating-wrapper {
        flex-direction: row;
    }
    .main-about__rating-row {
        flex-direction: column;
        gap: 10px;
        align-items: center;
    }
    .main-about__rating-card {
        align-items: center;
        padding: 20px 16px 32px 16px;
    }
}

@media (min-width: 768px) {
    .custom-fancybox-layout {
        overflow: hidden;
    }

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

    .m-md-0 {
        margin: 0 !important;
    }

    .mt-md-0,
    .my-md-0 {
        margin-top: 0 !important;
    }

    .mr-md-0,
    .mx-md-0 {
        margin-right: 0 !important;
    }

    .mb-md-0,
    .my-md-0 {
        margin-bottom: 0 !important;
    }

    .ml-md-0,
    .mx-md-0 {
        margin-left: 0 !important;
    }

    .m-md-1 {
        margin: 0.25rem !important;
    }

    .mt-md-1,
    .my-md-1 {
        margin-top: 0.25rem !important;
    }

    .mr-md-1,
    .mx-md-1 {
        margin-right: 0.25rem !important;
    }

    .mb-md-1,
    .my-md-1 {
        margin-bottom: 0.25rem !important;
    }

    .ml-md-1,
    .mx-md-1 {
        margin-left: 0.25rem !important;
    }

    .m-md-2 {
        margin: 0.5rem !important;
    }

    .mt-md-2,
    .my-md-2 {
        margin-top: 0.5rem !important;
    }

    .mr-md-2,
    .mx-md-2 {
        margin-right: 0.5rem !important;
    }

    .mb-md-2,
    .my-md-2 {
        margin-bottom: 0.5rem !important;
    }

    .ml-md-2,
    .mx-md-2 {
        margin-left: 0.5rem !important;
    }

    .m-md-3 {
        margin: 1rem !important;
    }

    .mt-md-3,
    .my-md-3 {
        margin-top: 1rem !important;
    }

    .mr-md-3,
    .mx-md-3 {
        margin-right: 1rem !important;
    }

    .mb-md-3,
    .my-md-3 {
        margin-bottom: 1rem !important;
    }

    .ml-md-3,
    .mx-md-3 {
        margin-left: 1rem !important;
    }

    .m-md-4 {
        margin: 1.5rem !important;
    }

    .mt-md-4,
    .my-md-4 {
        margin-top: 1.5rem !important;
    }

    .mr-md-4,
    .mx-md-4 {
        margin-right: 1.5rem !important;
    }

    .mb-md-4,
    .my-md-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-md-4,
    .mx-md-4 {
        margin-left: 1.5rem !important;
    }

    .m-md-5 {
        margin: 3rem !important;
    }

    .mt-md-5,
    .my-md-5 {
        margin-top: 3rem !important;
    }

    .mr-md-5,
    .mx-md-5 {
        margin-right: 3rem !important;
    }

    .mb-md-5,
    .my-md-5 {
        margin-bottom: 3rem !important;
    }

    .ml-md-5,
    .mx-md-5 {
        margin-left: 3rem !important;
    }

    .p-md-0 {
        padding: 0 !important;
    }

    .pt-md-0,
    .py-md-0 {
        padding-top: 0 !important;
    }

    .pr-md-0,
    .px-md-0 {
        padding-right: 0 !important;
    }

    .pb-md-0,
    .py-md-0 {
        padding-bottom: 0 !important;
    }

    .pl-md-0,
    .px-md-0 {
        padding-left: 0 !important;
    }

    .p-md-1 {
        padding: 0.25rem !important;
    }

    .pt-md-1,
    .py-md-1 {
        padding-top: 0.25rem !important;
    }

    .pr-md-1,
    .px-md-1 {
        padding-right: 0.25rem !important;
    }

    .pb-md-1,
    .py-md-1 {
        padding-bottom: 0.25rem !important;
    }

    .pl-md-1,
    .px-md-1 {
        padding-left: 0.25rem !important;
    }

    .p-md-2 {
        padding: 0.5rem !important;
    }

    .pt-md-2,
    .py-md-2 {
        padding-top: 0.5rem !important;
    }

    .pr-md-2,
    .px-md-2 {
        padding-right: 0.5rem !important;
    }

    .pb-md-2,
    .py-md-2 {
        padding-bottom: 0.5rem !important;
    }

    .pl-md-2,
    .px-md-2 {
        padding-left: 0.5rem !important;
    }

    .p-md-3 {
        padding: 1rem !important;
    }

    .pt-md-3,
    .py-md-3 {
        padding-top: 1rem !important;
    }

    .pr-md-3,
    .px-md-3 {
        padding-right: 1rem !important;
    }

    .pb-md-3,
    .py-md-3 {
        padding-bottom: 1rem !important;
    }

    .pl-md-3,
    .px-md-3 {
        padding-left: 1rem !important;
    }

    .p-md-4 {
        padding: 1.5rem !important;
    }

    .pt-md-4,
    .py-md-4 {
        padding-top: 1.5rem !important;
    }

    .pr-md-4,
    .px-md-4 {
        padding-right: 1.5rem !important;
    }

    .pb-md-4,
    .py-md-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-md-4,
    .px-md-4 {
        padding-left: 1.5rem !important;
    }

    .p-md-5 {
        padding: 3rem !important;
    }

    .pt-md-5,
    .py-md-5 {
        padding-top: 3rem !important;
    }

    .pr-md-5,
    .px-md-5 {
        padding-right: 3rem !important;
    }

    .pb-md-5,
    .py-md-5 {
        padding-bottom: 3rem !important;
    }

    .pl-md-5,
    .px-md-5 {
        padding-left: 3rem !important;
    }

    .m-md-n1 {
        margin: -0.25rem !important;
    }

    .mt-md-n1,
    .my-md-n1 {
        margin-top: -0.25rem !important;
    }

    .mr-md-n1,
    .mx-md-n1 {
        margin-right: -0.25rem !important;
    }

    .mb-md-n1,
    .my-md-n1 {
        margin-bottom: -0.25rem !important;
    }

    .ml-md-n1,
    .mx-md-n1 {
        margin-left: -0.25rem !important;
    }

    .m-md-n2 {
        margin: -0.5rem !important;
    }

    .mt-md-n2,
    .my-md-n2 {
        margin-top: -0.5rem !important;
    }

    .mr-md-n2,
    .mx-md-n2 {
        margin-right: -0.5rem !important;
    }

    .mb-md-n2,
    .my-md-n2 {
        margin-bottom: -0.5rem !important;
    }

    .ml-md-n2,
    .mx-md-n2 {
        margin-left: -0.5rem !important;
    }

    .m-md-n3 {
        margin: -1rem !important;
    }

    .mt-md-n3,
    .my-md-n3 {
        margin-top: -1rem !important;
    }

    .mr-md-n3,
    .mx-md-n3 {
        margin-right: -1rem !important;
    }

    .mb-md-n3,
    .my-md-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-md-n3,
    .mx-md-n3 {
        margin-left: -1rem !important;
    }

    .m-md-n4 {
        margin: -1.5rem !important;
    }

    .mt-md-n4,
    .my-md-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-md-n4,
    .mx-md-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-md-n4,
    .my-md-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-md-n4,
    .mx-md-n4 {
        margin-left: -1.5rem !important;
    }

    .m-md-n5 {
        margin: -3rem !important;
    }

    .mt-md-n5,
    .my-md-n5 {
        margin-top: -3rem !important;
    }

    .mr-md-n5,
    .mx-md-n5 {
        margin-right: -3rem !important;
    }

    .mb-md-n5,
    .my-md-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-md-n5,
    .mx-md-n5 {
        margin-left: -3rem !important;
    }

    .m-md-auto {
        margin: auto !important;
    }

    .mt-md-auto,
    .my-md-auto {
        margin-top: auto !important;
    }

    .mr-md-auto,
    .mx-md-auto {
        margin-right: auto !important;
    }

    .mb-md-auto,
    .my-md-auto {
        margin-bottom: auto !important;
    }

    .ml-md-auto,
    .mx-md-auto {
        margin-left: auto !important;
    }

    .navbar-buttons {
        display: none;
    }

    .main-appointment__outer {
        min-height: 368px;

        padding: 56px 56px 56px 50%;

        position: relative;

        z-index: 0;
    }

    .main-appointment__title {
        color: #fff;

        font-size: 1.875rem;

        font-weight: 600;

        line-height: 1.33333333;

        margin-bottom: 20px;
    }

    .main-appointment__image {
        border-radius: 16px;

        height: 100%;

        left: 0;

        overflow: hidden;

        position: absolute;

        top: 0;

        width: 100%;

        z-index: -1;
    }

    .main-appointment__image:after {
        background: linear-gradient(270deg, #000, #0000 90.07%);

        content: "";

        height: 100%;

        left: 0;

        opacity: 0.5;

        position: absolute;

        top: 0;

        width: 100%;

        z-index: 1;
    }

    .main-appointment__image img {
        height: 100%;

        left: 0;

        object-fit: cover;

        position: absolute;

        top: 0;

        width: 100%;
    }

    .main-appointment__text {
        color: #fff;

        font-size: 1rem;

        font-weight: 400;

        line-height: 2;
    }

    .main-appointment__button {
        margin-top: 40px;
    }

    .main-programs-slider {
    }

    .contacts-list {
        display: flex;

        flex-direction: column;

        height: 100%;

        justify-content: center;

        margin-bottom: 0;
    }

    .contacts-item {
        margin-bottom: 40px;
    }

    .contacts-map {
        height: 432px;
    }

    .program-slider__item:first-child {
        margin-left: -15px;
    }
}

@media (min-width: 768px) and (max-width: 1380px) {
    .header-logo {
        
    }

    .main-person .row {
        justify-content: end;
    }

    .main-person__name {
        margin-top: 24px;
    }

    .main-person__side {
        display: flex;

        flex-direction: column;
    }

    .main-person__body {
        border-radius: 0;

        margin: 0 -15px;
    }

    .main-person__image {
        justify-content: center;
        height: unset;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .section {
        margin-bottom: 80px;
    }

    h1 {
        font-size: 2.625rem;
    }

    h2 {
        font-size: 2.25rem;
    }

    h3 {
        font-size: 1.5625rem;
    }

    .main-intro-slider__item-title {
        font-size: 2.125rem;

        line-height: 1.41176471;
    }

    .main-programs__title {
        font-size: 1.875rem;

        text-align: center;
    }

    .main-programs__title {
        font-size: 2.5625rem;

        line-height: 1.36585366;

        margin-bottom: 64px;
    }

    .notfound-title {
        font-size: 6.0625rem;
    }

    .notfound-text {
        margin-top: 24px;
    }
}

@media (min-width: 769px) {
    .navbar-head .header-logo {
        display: none;
    }

    .main-intro-slider__item-outer > .container {
        align-items: center;
    }
}

@media (min-width: 769px) and (max-width: 991px) {
    .study-programs-item__title {
        line-height: 18px;
    }
}

@media (min-width: 768px) {
    .container,
    .container-lg,
    .container-md,
    .container-xl {
        width: 100%;
        max-width: 896px;
        padding: 0 64px;
    }

    .study-programs-item__buttons {
        width: calc(100% - 48px);
    }

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

    .m-lg-0 {
        margin: 0 !important;
    }

    .mt-lg-0,
    .my-lg-0 {
        margin-top: 0 !important;
    }

    .mr-lg-0,
    .mx-lg-0 {
        margin-right: 0 !important;
    }

    .mb-lg-0,
    .my-lg-0 {
        margin-bottom: 0 !important;
    }

    .ml-lg-0,
    .mx-lg-0 {
        margin-left: 0 !important;
    }

    .m-lg-1 {
        margin: 0.25rem !important;
    }

    .mt-lg-1,
    .my-lg-1 {
        margin-top: 0.25rem !important;
    }

    .mr-lg-1,
    .mx-lg-1 {
        margin-right: 0.25rem !important;
    }

    .mb-lg-1,
    .my-lg-1 {
        margin-bottom: 0.25rem !important;
    }

    .ml-lg-1,
    .mx-lg-1 {
        margin-left: 0.25rem !important;
    }

    .m-lg-2 {
        margin: 0.5rem !important;
    }

    .mt-lg-2,
    .my-lg-2 {
        margin-top: 0.5rem !important;
    }

    .mr-lg-2,
    .mx-lg-2 {
        margin-right: 0.5rem !important;
    }

    .mb-lg-2,
    .my-lg-2 {
        margin-bottom: 0.5rem !important;
    }

    .ml-lg-2,
    .mx-lg-2 {
        margin-left: 0.5rem !important;
    }

    .m-lg-3 {
        margin: 1rem !important;
    }

    .mt-lg-3,
    .my-lg-3 {
        margin-top: 1rem !important;
    }

    .mr-lg-3,
    .mx-lg-3 {
        margin-right: 1rem !important;
    }

    .mb-lg-3,
    .my-lg-3 {
        margin-bottom: 1rem !important;
    }

    .ml-lg-3,
    .mx-lg-3 {
        margin-left: 1rem !important;
    }

    .m-lg-4 {
        margin: 1.5rem !important;
    }

    .mt-lg-4,
    .my-lg-4 {
        margin-top: 1.5rem !important;
    }

    .mr-lg-4,
    .mx-lg-4 {
        margin-right: 1.5rem !important;
    }

    .mb-lg-4,
    .my-lg-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-lg-4,
    .mx-lg-4 {
        margin-left: 1.5rem !important;
    }

    .m-lg-5 {
        margin: 3rem !important;
    }

    .mt-lg-5,
    .my-lg-5 {
        margin-top: 3rem !important;
    }

    .mr-lg-5,
    .mx-lg-5 {
        margin-right: 3rem !important;
    }

    .mb-lg-5,
    .my-lg-5 {
        margin-bottom: 3rem !important;
    }

    .ml-lg-5,
    .mx-lg-5 {
        margin-left: 3rem !important;
    }

    .p-lg-0 {
        padding: 0 !important;
    }

    .pt-lg-0,
    .py-lg-0 {
        padding-top: 0 !important;
    }

    .pr-lg-0,
    .px-lg-0 {
        padding-right: 0 !important;
    }

    .pb-lg-0,
    .py-lg-0 {
        padding-bottom: 0 !important;
    }

    .pl-lg-0,
    .px-lg-0 {
        padding-left: 0 !important;
    }

    .p-lg-1 {
        padding: 0.25rem !important;
    }

    .pt-lg-1,
    .py-lg-1 {
        padding-top: 0.25rem !important;
    }

    .pr-lg-1,
    .px-lg-1 {
        padding-right: 0.25rem !important;
    }

    .pb-lg-1,
    .py-lg-1 {
        padding-bottom: 0.25rem !important;
    }

    .pl-lg-1,
    .px-lg-1 {
        padding-left: 0.25rem !important;
    }

    .p-lg-2 {
        padding: 0.5rem !important;
    }

    .pt-lg-2,
    .py-lg-2 {
        padding-top: 0.5rem !important;
    }

    .pr-lg-2,
    .px-lg-2 {
        padding-right: 0.5rem !important;
    }

    .pb-lg-2,
    .py-lg-2 {
        padding-bottom: 0.5rem !important;
    }

    .pl-lg-2,
    .px-lg-2 {
        padding-left: 0.5rem !important;
    }

    .p-lg-3 {
        padding: 1rem !important;
    }

    .pt-lg-3,
    .py-lg-3 {
        padding-top: 1rem !important;
    }

    .pr-lg-3,
    .px-lg-3 {
        padding-right: 1rem !important;
    }

    .pb-lg-3,
    .py-lg-3 {
        padding-bottom: 1rem !important;
    }

    .pl-lg-3,
    .px-lg-3 {
        padding-left: 1rem !important;
    }

    .p-lg-4 {
        padding: 1.5rem !important;
    }

    .pt-lg-4,
    .py-lg-4 {
        padding-top: 1.5rem !important;
    }

    .pr-lg-4,
    .px-lg-4 {
        padding-right: 1.5rem !important;
    }

    .pb-lg-4,
    .py-lg-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-lg-4,
    .px-lg-4 {
        padding-left: 1.5rem !important;
    }

    .p-lg-5 {
        padding: 3rem !important;
    }

    .pt-lg-5,
    .py-lg-5 {
        padding-top: 3rem !important;
    }

    .pr-lg-5,
    .px-lg-5 {
        padding-right: 3rem !important;
    }

    .pb-lg-5,
    .py-lg-5 {
        padding-bottom: 3rem !important;
    }

    .pl-lg-5,
    .px-lg-5 {
        padding-left: 3rem !important;
    }

    .m-lg-n1 {
        margin: -0.25rem !important;
    }

    .mt-lg-n1,
    .my-lg-n1 {
        margin-top: -0.25rem !important;
    }

    .mr-lg-n1,
    .mx-lg-n1 {
        margin-right: -0.25rem !important;
    }

    .mb-lg-n1,
    .my-lg-n1 {
        margin-bottom: -0.25rem !important;
    }

    .ml-lg-n1,
    .mx-lg-n1 {
        margin-left: -0.25rem !important;
    }

    .m-lg-n2 {
        margin: -0.5rem !important;
    }

    .mt-lg-n2,
    .my-lg-n2 {
        margin-top: -0.5rem !important;
    }

    .mr-lg-n2,
    .mx-lg-n2 {
        margin-right: -0.5rem !important;
    }

    .mb-lg-n2,
    .my-lg-n2 {
        margin-bottom: -0.5rem !important;
    }

    .ml-lg-n2,
    .mx-lg-n2 {
        margin-left: -0.5rem !important;
    }

    .m-lg-n3 {
        margin: -1rem !important;
    }

    .mt-lg-n3,
    .my-lg-n3 {
        margin-top: -1rem !important;
    }

    .mr-lg-n3,
    .mx-lg-n3 {
        margin-right: -1rem !important;
    }

    .mb-lg-n3,
    .my-lg-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-lg-n3,
    .mx-lg-n3 {
        margin-left: -1rem !important;
    }

    .m-lg-n4 {
        margin: -1.5rem !important;
    }

    .mt-lg-n4,
    .my-lg-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-lg-n4,
    .mx-lg-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-lg-n4,
    .my-lg-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-lg-n4,
    .mx-lg-n4 {
        margin-left: -1.5rem !important;
    }

    .m-lg-n5 {
        margin: -3rem !important;
    }

    .mt-lg-n5,
    .my-lg-n5 {
        margin-top: -3rem !important;
    }

    .mr-lg-n5,
    .mx-lg-n5 {
        margin-right: -3rem !important;
    }

    .mb-lg-n5,
    .my-lg-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-lg-n5,
    .mx-lg-n5 {
        margin-left: -3rem !important;
    }

    .m-lg-auto {
        margin: auto !important;
    }

    .mt-lg-auto,
    .my-lg-auto {
        margin-top: auto !important;
    }

    .mr-lg-auto,
    .mx-lg-auto {
        margin-right: auto !important;
    }

    .mb-lg-auto,
    .my-lg-auto {
        margin-bottom: auto !important;
    }

    .ml-lg-auto,
    .mx-lg-auto {
        margin-left: auto !important;
    }

    .main-appointment__title {
        font-size: 2.3125rem;
    }

    .main-reviews__head {
        min-height: 352px;

        padding: 48px 56px 56px 0;

        position: relative;

        z-index: 0;
    }

    .main-reviews__head:before {
        background-color: var(--bg-white);

        border-radius: 0 16px 16px 0;

        content: "";

        height: 100%;

        position: absolute;

        right: 0;

        top: 0;

        width: 100vw;

        z-index: -1;
    }

    .main-reviews__title {
        color: var(--d-grey);

        font-size: 2.3125rem;

        font-weight: 500;

        letter-spacing: -1%;

        line-height: 1.40540541;

        margin-bottom: 0;

        text-align: left;
    }

    .main-reviews-pagination .swiper-group {
        justify-content: flex-start;
    }

    .main-person__image {
        height: 560px;
    }

    .main-person__name strong {
        font-size: 1.9375rem;
    }
}

@media (min-width: 1024px) {
    .container,
    .container-lg,
    .container-md,
    .container-xl {
        width: 100%;
        max-width: 1600px;
        padding: 0 100px;
    }

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

    .m-xl-0 {
        margin: 0 !important;
    }

    .mt-xl-0,
    .my-xl-0 {
        margin-top: 0 !important;
    }

    .mr-xl-0,
    .mx-xl-0 {
        margin-right: 0 !important;
    }

    .mb-xl-0,
    .my-xl-0 {
        margin-bottom: 0 !important;
    }

    .ml-xl-0,
    .mx-xl-0 {
        margin-left: 0 !important;
    }

    .m-xl-1 {
        margin: 0.25rem !important;
    }

    .mt-xl-1,
    .my-xl-1 {
        margin-top: 0.25rem !important;
    }

    .mr-xl-1,
    .mx-xl-1 {
        margin-right: 0.25rem !important;
    }

    .mb-xl-1,
    .my-xl-1 {
        margin-bottom: 0.25rem !important;
    }

    .ml-xl-1,
    .mx-xl-1 {
        margin-left: 0.25rem !important;
    }

    .m-xl-2 {
        margin: 0.5rem !important;
    }

    .mt-xl-2,
    .my-xl-2 {
        margin-top: 0.5rem !important;
    }

    .mr-xl-2,
    .mx-xl-2 {
        margin-right: 0.5rem !important;
    }

    .mb-xl-2,
    .my-xl-2 {
        margin-bottom: 0.5rem !important;
    }

    .ml-xl-2,
    .mx-xl-2 {
        margin-left: 0.5rem !important;
    }

    .m-xl-3 {
        margin: 1rem !important;
    }

    .mt-xl-3,
    .my-xl-3 {
        margin-top: 1rem !important;
    }

    .mr-xl-3,
    .mx-xl-3 {
        margin-right: 1rem !important;
    }

    .mb-xl-3,
    .my-xl-3 {
        margin-bottom: 1rem !important;
    }

    .ml-xl-3,
    .mx-xl-3 {
        margin-left: 1rem !important;
    }

    .m-xl-4 {
        margin: 1.5rem !important;
    }

    .mt-xl-4,
    .my-xl-4 {
        margin-top: 1.5rem !important;
    }

    .mr-xl-4,
    .mx-xl-4 {
        margin-right: 1.5rem !important;
    }

    .mb-xl-4,
    .my-xl-4 {
        margin-bottom: 1.5rem !important;
    }

    .ml-xl-4,
    .mx-xl-4 {
        margin-left: 1.5rem !important;
    }

    .m-xl-5 {
        margin: 3rem !important;
    }

    .mt-xl-5,
    .my-xl-5 {
        margin-top: 3rem !important;
    }

    .mr-xl-5,
    .mx-xl-5 {
        margin-right: 3rem !important;
    }

    .mb-xl-5,
    .my-xl-5 {
        margin-bottom: 3rem !important;
    }

    .ml-xl-5,
    .mx-xl-5 {
        margin-left: 3rem !important;
    }

    .p-xl-0 {
        padding: 0 !important;
    }

    .pt-xl-0,
    .py-xl-0 {
        padding-top: 0 !important;
    }

    .pr-xl-0,
    .px-xl-0 {
        padding-right: 0 !important;
    }

    .pb-xl-0,
    .py-xl-0 {
        padding-bottom: 0 !important;
    }

    .pl-xl-0,
    .px-xl-0 {
        padding-left: 0 !important;
    }

    .p-xl-1 {
        padding: 0.25rem !important;
    }

    .pt-xl-1,
    .py-xl-1 {
        padding-top: 0.25rem !important;
    }

    .pr-xl-1,
    .px-xl-1 {
        padding-right: 0.25rem !important;
    }

    .pb-xl-1,
    .py-xl-1 {
        padding-bottom: 0.25rem !important;
    }

    .pl-xl-1,
    .px-xl-1 {
        padding-left: 0.25rem !important;
    }

    .p-xl-2 {
        padding: 0.5rem !important;
    }

    .pt-xl-2,
    .py-xl-2 {
        padding-top: 0.5rem !important;
    }

    .pr-xl-2,
    .px-xl-2 {
        padding-right: 0.5rem !important;
    }

    .pb-xl-2,
    .py-xl-2 {
        padding-bottom: 0.5rem !important;
    }

    .pl-xl-2,
    .px-xl-2 {
        padding-left: 0.5rem !important;
    }

    .p-xl-3 {
        padding: 1rem !important;
    }

    .pt-xl-3,
    .py-xl-3 {
        padding-top: 1rem !important;
    }

    .pr-xl-3,
    .px-xl-3 {
        padding-right: 1rem !important;
    }

    .pb-xl-3,
    .py-xl-3 {
        padding-bottom: 1rem !important;
    }

    .pl-xl-3,
    .px-xl-3 {
        padding-left: 1rem !important;
    }

    .p-xl-4 {
        padding: 1.5rem !important;
    }

    .pt-xl-4,
    .py-xl-4 {
        padding-top: 1.5rem !important;
    }

    .pr-xl-4,
    .px-xl-4 {
        padding-right: 1.5rem !important;
    }

    .pb-xl-4,
    .py-xl-4 {
        padding-bottom: 1.5rem !important;
    }

    .pl-xl-4,
    .px-xl-4 {
        padding-left: 1.5rem !important;
    }

    .p-xl-5 {
        padding: 3rem !important;
    }

    .pt-xl-5,
    .py-xl-5 {
        padding-top: 3rem !important;
    }

    .pr-xl-5,
    .px-xl-5 {
        padding-right: 3rem !important;
    }

    .pb-xl-5,
    .py-xl-5 {
        padding-bottom: 3rem !important;
    }

    .pl-xl-5,
    .px-xl-5 {
        padding-left: 3rem !important;
    }

    .m-xl-n1 {
        margin: -0.25rem !important;
    }

    .mt-xl-n1,
    .my-xl-n1 {
        margin-top: -0.25rem !important;
    }

    .mr-xl-n1,
    .mx-xl-n1 {
        margin-right: -0.25rem !important;
    }

    .mb-xl-n1,
    .my-xl-n1 {
        margin-bottom: -0.25rem !important;
    }

    .ml-xl-n1,
    .mx-xl-n1 {
        margin-left: -0.25rem !important;
    }

    .m-xl-n2 {
        margin: -0.5rem !important;
    }

    .mt-xl-n2,
    .my-xl-n2 {
        margin-top: -0.5rem !important;
    }

    .mr-xl-n2,
    .mx-xl-n2 {
        margin-right: -0.5rem !important;
    }

    .mb-xl-n2,
    .my-xl-n2 {
        margin-bottom: -0.5rem !important;
    }

    .ml-xl-n2,
    .mx-xl-n2 {
        margin-left: -0.5rem !important;
    }

    .m-xl-n3 {
        margin: -1rem !important;
    }

    .mt-xl-n3,
    .my-xl-n3 {
        margin-top: -1rem !important;
    }

    .mr-xl-n3,
    .mx-xl-n3 {
        margin-right: -1rem !important;
    }

    .mb-xl-n3,
    .my-xl-n3 {
        margin-bottom: -1rem !important;
    }

    .ml-xl-n3,
    .mx-xl-n3 {
        margin-left: -1rem !important;
    }

    .m-xl-n4 {
        margin: -1.5rem !important;
    }

    .mt-xl-n4,
    .my-xl-n4 {
        margin-top: -1.5rem !important;
    }

    .mr-xl-n4,
    .mx-xl-n4 {
        margin-right: -1.5rem !important;
    }

    .mb-xl-n4,
    .my-xl-n4 {
        margin-bottom: -1.5rem !important;
    }

    .ml-xl-n4,
    .mx-xl-n4 {
        margin-left: -1.5rem !important;
    }

    .m-xl-n5 {
        margin: -3rem !important;
    }

    .mt-xl-n5,
    .my-xl-n5 {
        margin-top: -3rem !important;
    }

    .mr-xl-n5,
    .mx-xl-n5 {
        margin-right: -3rem !important;
    }

    .mb-xl-n5,
    .my-xl-n5 {
        margin-bottom: -3rem !important;
    }

    .ml-xl-n5,
    .mx-xl-n5 {
        margin-left: -3rem !important;
    }

    .m-xl-auto {
        margin: auto !important;
    }

    .mt-xl-auto,
    .my-xl-auto {
        margin-top: auto !important;
    }

    .mr-xl-auto,
    .mx-xl-auto {
        margin-right: auto !important;
    }

    .mb-xl-auto,
    .my-xl-auto {
        margin-bottom: auto !important;
    }

    .ml-xl-auto,
    .mx-xl-auto {
        margin-left: auto !important;
    }

    .header-logo {
     
    }

    .main-appointment__text {
        font-size: 1rem;

        font-weight: 400;

        line-height: 1.5;
    }

    .main-programs-slider {
        padding-top: 48px;
    }

    .main-programs-slider .swiper-slide {
        transition: transform 0.3s;
    }

    .main-programs-slider .swiper-slide-next {
        transform: translateY(-48px);
    }

    .main-programs-slider__item img {
        transition: transform 0.3s ease-in-out;

        will-change: transform;
    }

    .main-programs-slider__item:hover img {
        transform: scale(1.1);
    }

    .main-programs-pagination {
        margin-top: 48px;
    }

    .main-person__side {
        display: flex;

        flex-direction: column;

        height: 100%;

        margin-bottom: 0;
    }

    .main-person__text {
        font-size: 2.625rem;

        line-height: 1.33333333;
    }

    .main-person__body {
        position: relative;

        right: -10vw;
    }

    .services-item_visible .services-item__image img {
        transition: transform 0.3s ease-in-out;

        will-change: transform;
    }

    .services-item_visible .services-item__outer:hover .services-item__image img {
        transform: scale(1.1);
    }
}

@media (max-width: 1380px) {
    .footer .footer-wrapper{
        flex-direction: column;
    }
    .prices-group h2 {
        font-size: 2rem;
    }
    .footer-side .developer{
        text-align: center;
    }
    .footer-side .faq-title{
        justify-content: center;
    }
    .prices-group .prices-item__title {
        font-size: 1rem;

        line-height: normal;
    }

    .prices-group .prices-item__value {
        font-size: 1.125rem;
    }

    .footer-nav .nav-link,
    .service-slider__item-title {
        font-size: 1rem;
    }

    .service-slider__item-count {
        font-size: 0.875rem;
    }

    .study-programs-item__title {
        font-size: 1rem;

        line-height: 1.375;
    }

    .custom-fancybox-layout .custom-grid {
        width: 800px;
    }
}

@media (max-width: 1379px) {
    .header-logo img {
        height: 64px;
    }

    .header-nav .nav-item {
        font-size: 0.875rem;
    }

    .header-outer__container .header-nav_bottom a {
        font-size: 1rem;
    }

    .header-outer__container .header-nav_top {
        column-gap: 20px;
    }

    .main-banners__item {
        margin-bottom: 15px;
    }

    .sidebar-anchor {
        font-size: 1rem;
    }

    .service .cases-images figure {
        margin: 0 15px 0 0;
    }
}

@media (max-width: 1224px) {
    .sidebar-anchor {
        font-size: 0.875rem;
    }
    .sidebar-anchors li {
        padding-left: 8px;
    }
}

@media (max-width: 992px) {
    .footer .legal-links {
    flex-direction: column;
    width: fit-content;
    row-gap: 8px;
}

.footer .legal-links .legal-link {
    width: fit-content;
}
    .service-image{
        margin-bottom: 0;
    }
   
    .service .info{
        margin-bottom: 32px;
    }
    .header-logo img {
        height: 40px;
    }

    .header-outer {
        height: 64px;
    }

    .header-phone span {
        display: none;
    }

    .header-outer__container {
        display: none;
    }

    .header-buttons {
        display: flex;
    }

    .btn-outline-blue {
        padding: 16px 32px;
    }

    .main-reviews__title {
        margin: 0;
    }

    .custom-fancybox-layout .custom-grid {
        width: 700px;
    }
}

@media (max-width: 992px) and (min-width: 768px) {
    .header-logo {
        margin: 0;
    }

    .header-outer {
        align-items: center;
    }

    .study-programs-item__title {
        font-size: 0.875rem;

        line-height: 1.28571429;
    }
}

@media (max-width: 991px) {
    .service .info{
        margin-top: 0;
    }
    .header-nav {
        display: none;
    }

    .accordion-item {
        margin-bottom: 24px;
    }

    .breadcrumb {
        margin-bottom: 32px;
    }

    .doctors-item__button,
    .topbar {
        display: none;
    }

    .services-item__outer {
        min-height: 232px;
    }

    .services-item__inner {
        padding: 32px;
    }

    .scrollup {
        display: none !important;
    }
}

@media (max-width: 768px) {
    .main-banners__item {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .navbar-outer {
        width: 100vw;
    }

    .main-person__video {
        bottom: 16px;
        left: 54%;
        width: fit-content;
    }

    .main-person__video-play {
        width: 60px;

        height: 60px;
    }
    .main-person__video-button {
        width: fit-content;
    }
    .main-person__video-button span {
        display: none;
    }

    .btn-outline-blue {
        padding: 16px 48px;
    }    .main-intro-slider__item-inner {
        margin: 0 auto;
        position: relative;
        top: 61%;
        justify-content: flex-start;
    }
    .main-intro-slider__item-inner .btn-outline-light {
        border: 2px solid rgba(0, 158, 227, 1);
        color: rgba(0, 158, 227, 1);
        border-radius: 16px;
        padding: 12px 24px;
        font-weight: 600;
        display: flex;
        width: fit-content;
        height: fit-content;
    }
    .main-intro-slider__item-inner .btn-outline-light:hover {
        background-color: rgba(0, 158, 227, 1);
        color: white;
    }

    .prices-head {
        font-size: 2.25rem;
    }

    .service .schedule {
        flex-direction: column;
        margin-bottom: 60px;
        margin-top: 40px;
    }

    .service .schedule-price {
        margin: 0;
    }

    .service h1 {
        font-size: 28px;
        line-height: 1.2;
    }
}

@media (max-width: 768px) {
    .section, .prices {
        margin-bottom: 60px;
    }
    ol, p, ul {
        font-size: 16px;
    }
    .footer .legal-links a{
        font-size: 14px;
    }
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        margin-bottom: 32px;

        margin-top: 56px;
    }

    h1 {
        font-size: 28px;
        line-height: 1.2;
        margin-top: 0;
    }

    h1,
    h2 {
        
        font-size: 1.375rem;
    }

    h2 {
        line-height: 1.2;
        font-size: 24px;
    }

    h3 {
        font-size: 1.25rem;

        line-height: 1.5;
    }

    h4,
    h5,
    h6 {
        font-size: 0.9375rem;

        line-height: 1.6;

        margin-bottom: 24px;
    }

    .btn.btn-small {
        display: none;
    }

    .btn {
        font-size: 1rem;
    }

    .fancybox__slide.has-ajax,
    .fancybox__slide.has-html,
    .fancybox__slide.has-inline {
        padding: 0;
    }

    .modal {
        border-radius: 0;

        flex-grow: 1;

        max-width: none;

        padding-left: 16px;

        padding-right: 16px;

        width: 100%;
    }

    .modal .carousel__button.is-close {
        right: 16px;

        top: 16px;
    }

    .modal-title {
        font-size: 1.25rem;

        line-height: 1.2;

        margin-bottom: 16px;
    }

    .iframe {
        margin-bottom: 56px;
    }

    .iframe,
    .pagination {
        margin-top: 56px;
    }

    .pagination-counter {
        margin-right: auto;

        order: -1;
    }

    .pagination-next,
    .pagination-prev {
        margin-left: 12px;

        margin-right: 0;
    }

    .pagination-next i,
    .pagination-prev i {
        margin: 0;
    }

    .pagination-next span,
    .pagination-prev span {
        display: none;
    }

    .header-outer {
        align-items: center;
    }

    .header-buttons .btn-outline-blue {
        display: none;
    }

    .navbar-logo img {
        height: 32px;

        width: auto;
    }    .main-intro {
        min-height: unset;
        height: auto;
        margin-bottom: 0;
        top: -65px;
    }

    .main-intro-slider__item {
        padding: 0;
    }    .main-intro-slider__item-image {
        min-height: 100%;
        height: auto;
    }
    .main-intro-slider__item-image:before {
        background-image: linear-gradient(0.24deg, #0000 0.18%, #000 78.07%);
    }
    .main-intro-slider__item-outer {
        margin-top: 160px;
        padding-bottom: 120px;
    }
    .main-intro-slider__item-outer > .container .row {
        width: 100%;
    }
    .main-intro-slider__item-title {
        word-wrap: normal;
        font-size: 28px;
        line-height: 1.43;
        margin-bottom: 22px;
        text-align: left;

        width: 100%;

    }

    .main-intro-slider__item-text {
        font-size: 1rem;

        margin-bottom: 32px;

    }

    .main-intro-slider__item-button {
    }
    .main-intro-slider__item-image img {
        border-radius: 0 !important;
    }
    .main-intro-pagination {
        top: 54%;
        bottom: unset;
        height: fit-content;

        
    }    .main-intro-pagination .swiper-pagination-bullet:before {
        background-color: rgba(58, 67, 76, 1);
    }
    .main-intro-pagination .swiper-pagination-bullet-active:before {
        border-color: rgba(58, 67, 76, 1);
        background-color: transparent;
    }

    .main-intro-pagination .swiper-pagination {
    }

    .main-programs__about h1 {
        font-size: 1.375rem;

        margin-bottom: 32px;
    }

    .main-programs__about p {
        font-size: 1rem;
    }

    .main-about__title {
        margin-top: 48px;
    }
    .main-intro-slider__item-title{
        font-size: 30px;
    }
    .btn-main span{
        font-size: 16px;
    }
    .main-appointment__title,
    .main-about__title,
    .appointment-form-title {
        font-size: 24px;
        line-height: 28px;
        margin-bottom: 20px;
    }

    .main-appointment__title {
        color: #3e4e5f;
        text-align: center;
        font-weight: 600;

        line-height: 1.33333333;
    }

    .main-appointment__image {
        margin-left: -15px;

        margin-right: -15px;
    }

    .main-appointment__image img {
        display: block;
        border-radius: 0;
        width: 214%;
    }

    .main-appointment__inner {
        background-color: #12122e;

        margin-left: -15px;

        margin-right: -15px;

        padding: 24px 24px 40px;
    }

    .main-appointment__text {
        color: white;

        font-size: 1rem;

        font-weight: 400;

        line-height: 1.5;

        text-align: center;
    }

    .main-appointment__button {
        margin-top: 32px;

        text-align: center;
    }

    .main-reviews__body {
        margin: 0;

        padding: 0 10px;
    }

    .main-reviews__title {
        font-size: 1.5rem;

        margin-bottom: 32px;
    }

    .main-reviews-slider__item-text {
        font-size: 1.125rem;
    }

    .main-reviews-pagination {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 0;
    }
    .main-reviews-head {
        margin-bottom: 20px;
        flex-direction: column;
        row-gap: 20px;
    }
    .main-programs .container > .lead {
        margin-bottom: 48px;
    }

    .main-programs__info {
        flex-direction: column;
    }

    .main-programs__title {
        font-size: 1.5rem;

        line-height: 1.5;

        margin-bottom: 40px;
    }

    .main-programs__text {
        margin-bottom: 40px;
    }

    .main-programs-slider {
        margin-left: -16px;

        margin-right: -16px;

        padding-left: 16px;

        padding-right: 32px;
    }

    .main-programs-pagination {
        display: none;
    }

    .main-person__data {
        padding: 0;
    }

    .main-person__side {
        display: grid;

        margin-bottom: 32px;
    }

    .main-person__title {
        font-size: 1.125rem;

        line-height: 1.5;

        text-align: left;
    }

    .main-person__text {
        font-size: 1.25rem;

        line-height: 1.2;
    }

    .main-person__data {
        text-align: start;
        width: 100%;
    }

    .main-person__body {
        border-radius: 0;

        margin: 0 auto;
    }

    .main-person__body:before {
        content: none;
    }
    
    .main-person {
        padding: 50px 0 45px 0;
        border-radius: 32px;
        margin: 0;
    }
    .main-person__data {
        margin-top: 10px;
    }
    .main-person__image::before{
        left: 50%;
    }    .main-person__image {
        height: unset;
        justify-content: center;
        width: fit-content;
        z-index: 0;
    }
    .main-person__image img {
        width: 240px;
        left: 11px;
    }
    .main-person__body.desktop {
        display: none;
    }
    .main-person__body.mobile {
        display: flex;
    }
    .main-person__name {
        font-size: .9rem;

        line-height: 1.25;

        margin-top: 16px;
    }

    .main-person__name strong {
        font-size: 1.25rem;
    }

    .main-person__info {
        font-size: 0.875rem;

        margin-top: 8px;
    }

    .sidebar {
        -webkit-overflow-scrolling: touch;

        -ms-overflow-style: -ms-autohiding-scrollbar;

        height: 100%;

        left: 0;

        line-height: 1;

        overflow-y: auto;

        overscroll-behavior: contain;

        position: fixed;

        top: 0;

        transform: translateX(-100%);

        width: 100%;

        will-change: transform;

        z-index: 1050;
    }

    .sidebar-filter-opened .sidebar {
        transform: translateX(0);
    }

    .doctors-list {
        row-gap: 56px;
    }

    .doctor-head,
    .doctor-info {
        margin-bottom: 56px;
    }

    .doctor-info {
        font-size: 0.9375rem;
    }

    .services-item__icon img {
        max-width: 180px;
    }

    .services-item__title {
        font-size: 1.125rem;
    }

    .links-item {
        padding: 24px 32px;
    }

    .prices-group {
        margin-bottom: 56px;
    }

    .prices-group h2 {
        font-size: 1.5625rem;
    }

    .prices-list {
        margin: 24px 0;
    }

    .prices-item {
        align-items: stretch;

        flex-direction: column;

        justify-content: flex-start;

        padding: 24px;
    }

    .prices-item__title {
        font-size: 1rem;

        padding-right: 0;
    }

    .prices-item__value {
        font-size: 1.125rem;

        margin-top: 8px;
    }

    .search-text {
        font-size: 0.9375rem;

        line-height: 1.6;

        margin-bottom: 56px;
    }

    .notfound-title {
        font-size: 3.9375rem;
    }

    .notfound-text {
        font-size: 0.9375rem;

        margin-top: 8px;
    }

    .footer-contacts {
        align-items: center;
    }

    .footer-social {
        justify-content: center;

        margin-top: 48px;
    }

    .footer-button {
        margin-top: 32px;

        text-align: center;
    }

    .footer-license p {
        font-size: 0.875rem;
    }

    .footer-side {
        padding-bottom: 24px;
    }

    .footer-side .developer {
        font-size: 0.875rem;

        line-height: 1;
    }

    .footer-side .copyright {
        margin-bottom: 16px;
    }

    /* .footer-side .copyright,
    .footer-side .developer {
        text-align: center;

        width: 100%;
    } */

    .service-list + :not(.program-list) {
        padding-bottom: 65px;

        position: relative;
    }

    .service-list + :not(.program-list) .swiper-group {
        position: absolute;

        top: 260px;
    }

    .service-head {
        flex-direction: column;

        margin-bottom: 20px;
    }

    .service-head h2 {
        margin-bottom: 10px;
    }

    .service .cases-item h3 {
        font-size: 1.125rem;
    }

    .study h1 {
        font-size: 1.5rem;

        line-height: normal;
    }

    .study-programs-item__title {
        font-size: 1rem;
    }

    .lead {
        flex-direction: column;
    }

    .custom-fancybox-layout .custom-grid {
        grid-template-columns: repeat(1, 1fr);

        width: 300px;

        padding: 50px 0;

        height: fit-content;
    }

    .custom-grid-item {
        width: 300px;
    }

    .close-button {
        top: 5px;

        right: 10px;
    }
}

@media (pointer: coarse) {
    .default-filter-fieldset {
        -ms-overflow-style: none;

        margin-left: -16px;

        margin-right: -16px;

        scrollbar-width: none;
    }

    .default-filter-fieldset:after,
    .default-filter-fieldset:before {
        content: "";

        flex: 0 0 16px;
    }

    .default-filter-fieldset::-webkit-scrollbar {
        display: none;
    }
}

@media (pointer: fine) {
    .default-filter-fieldset {
        -webkit-overflow-scrolling: touch;

        padding-bottom: 16px;

        scrollbar-color: #3e4e5f #eef3f5;

        scrollbar-width: thin;
    }

    .default-filter-fieldset::-webkit-scrollbar {
        height: 4px;

        width: 4px;
    }

    .default-filter-fieldset::-webkit-scrollbar-thumb {
        background-clip: padding-box;

        background-color: #3e4e5f;
    }

    .default-filter-fieldset::-webkit-scrollbar-track {
        background: #eef3f5;
    }
}
.header .nav-link.tutoring:hover {
    box-shadow: none;
}
.header .nav-link.tutoring:hover span {
    box-shadow: inset 0 -1px var(--l-blue);
}

@media (prefers-reduced-motion: reduce) {
    .collapsing,
    .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;
    }
}

.appointment-form-wrap {
    display: flex;
    border-radius: 36px;
    overflow: hidden;
    background: rgba(248, 248, 248, 1);
    box-shadow: 0 2px 24px 0 rgba(0, 0, 0, 0.06);

    margin-top: 40px;
}
.appointment-form-title {
    display: flex;
    flex-direction: column;
    gap: 16px;
    .appointment-form-title-item {
        font-family: 'Roboto Flex';
        font-weight: 500;
        font-size: 28px;
        line-height: 130%;
        letter-spacing: -0.01em;
        color: #ffffff;
        flex: none;
        order: 0;
        flex-grow: 0;
    }
}
.appointment-form-left {
    padding: 60px 15% 70px 100px;
    background: transparent;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.appointment-form-title {
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 30px;
    color: var(--d-grey);
}
.appointment-form-subtitle {
    font-size: 17px;
    line-height: 1.4;
    color: var(--d-grey);
    margin-bottom: 28px;
}
.appointment-form {
    display: flex;
    flex-direction: column;
}
.appointment-form .btn {
    /* margin-top: 32px; */
}
.appointment-form-row {
    display: flex;
    gap: 20px;
    margin-bottom: 28px;

}
.appointment-form-row .form-field {
    width: 50%;
}
.appointment-input {
    border-radius: 4px;
    border: 1px solid rgba(133, 134, 145, 1);
    padding: 11px 16px;
    font-size: 17px;
    outline: none;
    background: #fff;
    transition: border 0.2s;
}
.appointment-input:focus {
    border-color: rgba(232, 65, 48, 1);
}
.appointment-form textarea{
    border: 1px solid rgba(133, 134, 145, 1);
    border-radius: 4px;
    background: white;
}
.appointment-form textarea:focus{
    border-color: rgba(232, 65, 48, 1);
}
.appointment-form-policy {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 16px;
    line-height: 1.4;
    color: #23272f;
    margin-top: 32px;
    margin-bottom: 20px;
}
.appointment-form-policy:nth-child(2){
    margin-top: 0;
}
.appointment-form-policy > span {
    padding-left: 22px;
}
.appointment-checkbox {
    position: relative;
    display: inline-block;
    width: 22px;
    height: 22px;
    margin-top: 1px;
    margin-right: 11px;
}
.appointment-checkbox input[type="checkbox"] {
    width: 22px;
    height: 22px;
    margin: 0;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
    cursor: pointer;
}
.appointment-checkbox-custom {
    display: block;
    width: 22px;
    height: 22px;
    border: 1px solid rgba(232, 65, 48, 1);
    border-radius: 4px;
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
}

.appointment-checkbox input[type="checkbox"]:checked ~ .appointment-checkbox-custom {
    background: white;
    border-color: rgba(232, 65, 48, 1); 
}
.appointment-checkbox input[type="checkbox"]:checked ~ .appointment-checkbox-custom:after {
    content: "";
    display: block;
    position: absolute;
    left: 7px;
    top: 3px;
    width: 6px;
    height: 12px;
    border: solid rgba(232, 65, 48, 1); 
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.appointment-form-policy a {
    color: #23272f;
    box-shadow: inset 0 -1px var(--d-grey);
}
.appointment-form-captcha {
    margin: 8px 0 8px 0;
}
.captcha-placeholder {
    display: flex;
    align-items: center;
    gap: 12px;
    border: 2px solid #dbe6ee;
    border-radius: 8px;
    padding: 12px 16px;
    background: #fff;
    width: 320px;
    max-width: 100%;
}
.captcha-placeholder input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-right: 8px;
}
.captcha-placeholder img {
    height: 32px;
}
.appointment-form-btn {
    padding: 24.5px 50px;
    width: 220px;
    border-radius: 32px;
    background: #00a3ff;
    color: #fff;
    font-size: 22px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: background 0.2s;
}

.appointment-form-right {
    background-image: url(/images/main/form-bg.jpg);
    background-size: cover;
    background-position: center; 
    background-repeat: no-repeat; 
    color: #fff;
    padding: 60px 32px 64px 32px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    border-top-right-radius: 40px;
    border-bottom-right-radius: 40px;
}
.appointment-form-top-title {
    margin-bottom: 16px;
    font-family: 'Roboto Flex';
    color: #ffffff;
    text-transform: uppercase;
    line-height: 1.2;
    font-size: 20px;
    letter-spacing: 0.02em;
    font-weight: 600;
}
.appointment-form-hours {
    margin-bottom: 40px;
    font-family: 'Roboto Flex'";
    font-style: normal;
    font-weight: 600;
    font-size: 17px;
    line-height: 140%;
}
.appointment-form-questions {
    margin-top: auto;
    font-family: 'Roboto Flex';
    font-size: 20px;
    line-height: 140%;
    letter-spacing: -0.01em;
    margin-bottom: 16px;
}
.appointment-form-phone {
    margin-bottom: 32px;
    font-family: 'Roboto Flex';
    line-height: 120%;
}
.appointment-form-phone a {
    color: white;
    box-shadow: none;
    font-size: 25px;
    letter-spacing: 0.002em;
    font-weight: 600;
    border-bottom: 1px solid transparent;
    transition: border-color 0.2s;
}
.appointment-form-phone a:hover {
    border-color: white;
}
.appointment-form-vk img {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: #fff;
    padding: 4px;
}
.appointment-form-ig{
    display: flex;
    column-gap: 5px;
}
.appointment-form-ig:after{
    content: '*';
    font-size: 24px;
    color: white;
    text-decoration: none;
    line-height: 1;
}
@media (max-width: 992px) {
    .main-about-slider{
        margin-top: 8px;
    }
    .appointment-form-wrap {
        flex-wrap: wrap;
    }
    .appointment-input {
        font-size: 14px;
    }
    .appointment-form-title {
        font-size: 1.375rem;
    }
    .appointment-form-policy {
        font-size: 14px;
    }    .appointment-form-row {
        flex-direction: column;
    }
    .appointment-form-row .form-field {
        width: 100%;
    }
    .appointment-form-title {
    }
    .appointment-form-right {
        border-radius: 0 0 40px 40px;
        padding: 80px 30px;
        align-items: flex-start;
        width: 100%;
    }
    .appointment-form-left {
        padding: 40px 30px 60px 30px;
    }
}

.faq-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
    margin: 0; 
    padding: 0;
    margin-top: 16px;
}

.faq-title {
    cursor: pointer;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    font-family: "Fira Sans Condensed";
    font-style: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 160%;
    color: #ffffff;
    flex: none;
    order: 0;
    flex-grow: 0;
}
.faq-title:after {
    content: "";
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE2IDIwLjUzMDdMOCAxMi41MzA3TDkuODY2NjcgMTAuNjY0MUwxNiAxNi43NjQxTDIyLjEzMzMgMTAuNjY0MUwyNCAxMi41MzA3TDE2IDIwLjUzMDdaIiBmaWxsPSIjMDA5RUUzIi8+Cjwvc3ZnPgo=);    
    display: inline-block;
    width: 32px;
    height: 32px;

    transform: rotate(0deg);
    transition: transform 0.3s ease-out;
}
.faq-item.active .faq-title:after {
    transform: rotate(180deg);
}
.faq-item a {
    color: white;
    text-decoration: none;
    box-shadow: inset 0 -1px white;
}
.faq-item ul {
    margin-bottom: 20px;
}
.faq-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;
}
.faq-item .meta,
.faq-item li {
    font-family: 'Roboto Flex';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 140%;
    color: #FFFFFF;
}
.faq-item .meta {
    display: flex;
    margin-left: 7px;
}
.faq-item .meta svg {
    flex-shrink: 0;
}
.faq-item {
    width: 100%;
    margin: 0;
    margin-bottom: 12px;
    border-radius: 16px;
   
}
.faq-item.active .faq-title {
    font-weight: bold; 
}
@media (max-width: 992px) {
    .faq-item {
        margin-bottom: 24px;
    }
}

/* .content:not(.main) .main-infoblock{
    margin: 0;
} */