/* Настройки шаблона */
@font-face {
    font-family: 'Helvetica';
    src: url('../fonts/Helvetica-Regular.ttf') format("truetype");
    font-weight: 400;
}

@font-face {
    font-family: 'Helvetica-Light';
    src: url('../fonts/Helvetica-Light.ttf') format("truetype");
    font-weight: 300;
}

:root {
	--light: #ffffff;
	--dark: #455152;
	--contrast: #1283B7;
    --soft: #AADFEE;
    --plyr-color-main: #1283B7;
}

:root, body {font-size: 10px;}
@media screen and (min-width: 576px) {
	:root, body {font-size: 12px;}
}
@media screen and (min-width: 768px) {
	:root, body {font-size: 12px;}
}
@media screen and (min-width: 992px) {
	:root, body {font-size: 14px;}
}
@media screen and (min-width: 1200px) {
	:root, body {font-size: 16px;}
}

/* Элементы */
html {width: calc(100% + calc(100vw - 100%)); overflow-x: hidden;}
body {display: flex; flex-direction: column; margin: 0 auto; max-width: 1920px; font-family: 'Helvetica', sans-serif; color: var(--dark); outline: 1px solid #ddd; overflow-x: hidden;}
#middle main  {overflow: inherit;}
*::before {pointer-events: none;}
@media (min-width: 1680px) {.container {max-width: 1296px;}}
@media (min-width: 1920px) {.bg-color::before {margin-left: -50vw;}}

h1, .h1 {font-size: 4.375rem; font-family: 'Helvetica-Light', sans-serif; }
h2, .h2 {font-size: 3.125rem; font-family: 'Helvetica-Light', sans-serif; }
h3, .h3 {font-size: 2.5rem; font-family: 'Helvetica', sans-serif; }
h4, .h4 {font-size: 1.5rem; font-family: 'Helvetica', sans-serif; }
h5, .h5 {font-size: 1.25rem; font-family: 'Helvetica-Light', sans-serif; }
h6, .h6 {font-size: 1rem; font-family: 'Helvetica-Light', sans-serif; }

.fw-400 {font-family: 'Helvetica', sans-serif!important;}
.fw-300 {font-family: 'Helvetica-Light', sans-serif!important;}

a {text-decoration: none; color: var(--dark);}
a:hover {color: var(--soft)!important;}

ul{padding:0;}
ul li{list-style-type:none; position:relative; padding-left: 1.875rem; margin-bottom: 0.25rem;}
ul li::before {content: " ";background-color: var(--contrast);position: absolute;display: block;height: 1rem;width: 1rem;left: 0;bottom: 0;right: auto;top: 0rem;border-radius: 50%;}

video {object-fit: cover; object-position: top;}

.z-b {z-index: -1;}

.icon {width: 2.25rem;height: 2.25rem;}

.moduletable {position: relative;}

.full-bg {max-width: 1920px; width: 100vw; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}

.bg-color::before, .bg-color-after::after {background: rgb(170, 223, 238, 0.5);}
.bg-color-top::before {border-radius: 4rem 4rem 0rem 0rem;}
.bg-color-bottom::before {border-radius: 0rem 0rem 4rem 4rem;}

.swiper-button-next, .swiper-button-prev {color: var(--contrast);}

.swiper-about .swiper-button-next, .swiper-about .swiper-button-prev {position: static!important; margin-top: 0!important; color: transparent;}
.swiper-about .swiper-button-next:after, .swiper-about .swiper-rtl .swiper-button-prev:after {content: '';}
.swiper-about .swiper-button-prev:after, .swiper-about .swiper-rtl .swiper-button-next:after {content: '';}

.swiper-home .swiper-button-next, .swiper-home .swiper-button-prev {position: static!important; margin-top: 0!important; color: transparent;}
.swiper-home .swiper-button-next:after, .swiper-home .swiper-rtl .swiper-button-prev:after {content: '';}
.swiper-home .swiper-button-prev:after, .swiper-home .swiper-rtl .swiper-button-next:after {content: '';}

.swiper-content {position: relative;}
.swiper-button-next, .swiper-button-prev {top: 50%;}
.swiper-button-next {right: var(--swiper-navigation-sides-offset, -40px);}
.swiper-button-prev {left: var(--swiper-navigation-sides-offset, -40px);}

.swiper-button-next:after, .swiper-button-prev:after {font-size: 1.5rem;}

.swiper-pagination {position: static;}
.swiper-pagination-bullet-active {background: var(--contrast);}

.fade-bottom {-webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 70%, rgba(0,0,0,0));mask-image: linear-gradient(to bottom, rgba(0,0,0,1) 70%, rgba(0,0,0,0));}

.gradient-left {position: relative;}
.gradient-left::after {content: ""; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: linear-gradient(90deg,rgba(0, 0, 0, .6) 0%, rgba(255, 255, 255, 0) 100%); z-index: 1; border-radius: inherit;}

.gradient-bottom {position: relative;}
.gradient-bottom::after {content: ""; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: linear-gradient(0deg,rgba(0, 0, 0, .5) 0%, rgba(255, 255, 255, 0) 60%); z-index: 1; border-radius: inherit;}

.menu-float {position: absolute; width: 100%; top: 0%; left: 50%; transform: translate(-50%);}

.plyr {height: 100% !important;min-width: unset;width: 100%; border-radius: 2rem;}
.plyr--stopped .plyr__controls {display: none;}
.plyr__control--overlaid svg {height: 60px;width: 60px;}
/*.plyr__volume input[type=range] {display: none;}*/
.plyr__menu {display: none;}
.plyr__control--overlaid {background: transparent!important; color: var(--light);}
.plyr [data-plyr=airplay], .plyr [data-plyr=captions], .plyr [data-plyr=fullscreen], .plyr [data-plyr=pip], .plyr__controls:empty {display: none;}

.video-wrap {max-height: 35rem;}

.modal-content {color: var(--contrast);background-color: var(--soft);background-clip: padding-box;border-radius: 2rem;padding: 2rem;}
.modal-header {border-bottom: none!important; padding: 0rem!important;}
.modal-title {width: 100%;}
.modal-body {padding: .5rem!important;}
.modal-content .btn-close {display: none;}

input::placeholder {color: var(--contrast)!important;}

.dots {transform: translate(-40%, -40%);}
.dots img {max-height: 5rem;}

/* Bootstrap */

header .border-top {border-top: var(--bs-border-width) var(--bs-border-style) var(--dark) !important;}
header.menu-float .border-top {border-top: var(--bs-border-width) var(--bs-border-style) var(--light) !important;}

.btn-primary {--bs-btn-color: var(--light);--bs-btn-bg: var(--contrast);--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--light);--bs-btn-hover-bg: #106891;--bs-btn-hover-border-color: transparent;--bs-btn-focus-shadow-rgb: 49, 132, 253;--bs-btn-active-color: var(--light);--bs-btn-active-bg: #106891;--bs-btn-active-border-color: transparent;--bs-btn-active-shadow: unset;--bs-btn-disabled-color: var(--light);--bs-btn-disabled-bg: #106891;--bs-btn-disabled-border-color: #106891;}
.btn-info {--bs-btn-color: var(--contrast);--bs-btn-bg: var(--soft);--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--contrast);--bs-btn-hover-bg: #77c8df;--bs-btn-hover-border-color: transparent;--bs-btn-focus-shadow-rgb: 11, 172, 204;--bs-btn-active-color: var(--contrast);--bs-btn-active-bg: #77c8df;--bs-btn-active-border-color: transparent;--bs-btn-active-shadow: unset;--bs-btn-disabled-color: var(--contrast);--bs-btn-disabled-bg: #77c8df;--bs-btn-disabled-border-color: transparent;}
.btn-outline-light {--bs-btn-color: var(--light);--bs-btn-bg: rgb(255, 255, 255, .3);--bs-btn-border-color: var(--light);--bs-btn-hover-color: var(--light);--bs-btn-hover-bg: rgb(18, 131, 183, .4);--bs-btn-hover-border-color: var(--light);--bs-btn-focus-shadow-rgb: 248, 249, 250;--bs-btn-active-color: var(--light);--bs-btn-active-bg: rgb(18, 131, 183, .4);--bs-btn-active-border-color: var(--light);--bs-btn-active-shadow: unset;--bs-btn-disabled-color: var(--light);--bs-btn-disabled-bg: rgb(18, 131, 183, .4);--bs-btn-disabled-border-color: var(--light);--bs-gradient: none;backdrop-filter: blur(1rem); -webkit-backdrop-filter: blur(1rem);}

.text-primary {color: var(--contrast)!important;}
.bg-primary {background-color: var(--contrast)!important;}
.bg-info {background-color: var(--soft)!important;}
.bg-outline-light {border: 2px solid var(--light); background: rgb(255, 255, 255, .3); backdrop-filter: blur(1rem); -webkit-backdrop-filter: blur(1rem);}
.bg-outline-primary {border: 2px solid var(--light); background: rgb(18, 131, 183, .3); backdrop-filter: blur(1rem); -webkit-backdrop-filter: blur(1rem);}

.border-primary {border-color: var(--contrast) !important;}

.form-control {padding: .375rem .75rem;color: var(--light);border: 0px;border-radius: 2rem !important;transition: unset!important; color: var(--contrast)!important;}
.form-control:focus {border-color: none!important;box-shadow: unset!important; color: var(--contrast)!important;}

.form-check-input:checked {background-color: var(--contrast);border-color: var(--contrast);}
.form-check-input:focus {box-shadow: unset;}

/* Меню */

header ul li{padding-left: 0; margin-bottom: 0.25rem;}
header ul li::before {content: none}
header .menu-back {border-radius: 10rem;background-color: rgb(170, 223, 238, 0.3);border: 1px solid var(--contrast);}

header .nav-item:hover .mod-menu__sub {opacity: 1; visibility: visible; transition: all 0.2s ease-in-out;}
header .nav-item .mod-menu__sub {opacity: 0;visibility: hidden;position: absolute;top: 2rem;width: 16rem;background: var(--color-3);border: 2px solid var(--light);border-radius: 2rem;background: rgb(18, 131, 183, .3); backdrop-filter: blur(1rem);padding: 1rem;transition: all 0.2s ease-in-out; z-index: 3;}
header .mod-menu__sub li {margin: 0 !important; padding-bottom: .5rem; font-size: 1rem;}
header .mod-menu__sub li:last-child {padding-bottom: 0;} 
header .mod-menu__sub a {color: var(--light)!important;}
header .mod-menu__sub a:hover {color: var(--contrast)!important;}

header.menu-float a {color: var(--light);}
header.menu-float .parent {color: var(--light); cursor: pointer;}
header.menu-float .menu-back {background-color: rgb(255, 255, 255, .3); border: 1px solid var(--light); backdrop-filter: blur(1rem); -webkit-backdrop-filter: blur(1rem);}

header #logo-header {height: 4rem;}

/* Подвал */

footer a:hover {color: var(--contrast)!important;}
footer ul li{padding-left: 0; margin-bottom: 0.25rem;}
footer ul li::before {content: none}
footer .nav-item:hover .mod-menu__sub {opacity: 1; visibility: visible; transition: all 0.2s ease-in-out;}
footer .nav-item .mod-menu__sub {opacity: 0;visibility: hidden;position: absolute;top: 2rem;width: 16rem;background: var(--color-3);border: 2px solid var(--light);border-radius: 2rem;background: rgb(18, 131, 183, .3); backdrop-filter: blur(1rem);padding: 1rem;transition: all 0.2s ease-in-out; z-index: 3;}
footer .mod-menu__sub li {margin: 0 !important; padding-bottom: .5rem; font-size: 1rem;}

footer .mod-logo-footer #logo-footer {max-height: 6.25rem;}
footer .mod-menu {display: grid;grid-auto-flow: column;grid-template-rows: repeat(3, auto);column-gap: 3rem;row-gap: .5rem;}
footer .mod-menu .default {display: none;}

.about footer::before, .experts footer::before, .contacts footer::before {background: transparent!important;}

/* Слайдер на главной */

.mod-home {height: 55rem;}
.mod-home.bg-color::after {content: '';display: flex;position: absolute;z-index: -1;top: 0;bottom: 0;left: 50%;margin-left: -50vw;width: 100vw;border-radius: 0 0 4rem 4rem;}
.mod-home .home-content {padding-top: 6rem;}
.mod-home .home-link-wrap {max-height: 12rem;}

.mod-home .swiper-home {overflow: visible;}
.mod-home .swiper-home .home-item {min-height: 12rem;}

/* О нас */

.mod-about-add .about-add-wrap {height: 25rem;}

/* Реклама */

.mod-add .add-item {min-height: 30rem;}

.joint-treatment .mod-add.custom-add::before {background: transparent!important;}
.joint-treatment .mod-add.custom-add {padding-bottom: 0rem!important;}

/* Скидки и акции */

.mod-discounts .discount-item {min-height: 30rem;}

/* Преимущества */

@property --p {syntax: '<percentage>';inherits: false;initial-value: 20%;}

.mod-benefits .img-circle {animation: loadCircle 1000ms linear paused forwards;margin: auto;width: 12.5rem;aspect-ratio: 1;border-radius: 100%;background: conic-gradient(var(--contrast) var(--p), var(--light) 0);transform: rotateY(180deg) rotateZ(340deg);word-wrap: break-word;}
.mod-benefits .img-circle::before {position: absolute;inset: .7rem;content: '';border-radius: inherit;background-color: #D5EFF7;}
.mod-benefits img {width: 60%;transform: translate(-50%, -50%) rotateZ(20deg) scale(-1, 1);}
.mod-benefits .aos-animate .img-circle {animation-play-state: running; }

@keyframes loadCircle {from { --p: 20%; }to { --p: 100%; }}

/* Опорно-двигательная система */

.mod-system .system-item {min-height: 15rem;}
.mod-system .system-item img {transform: translateX(15%); max-height: 16rem;}

@media screen and (max-width: 576px) {
    .mod-system .h5 {
        font-size: 1.5rem!important;
    }
}

/* Какая проблема вас беспокоит? */

.mod-problem .problem-item-outer, .mod-problem .problem-item-inner {min-height: 18rem;}
.mod-problem .problem-item {perspective: 150rem;}
.mod-problem .problem-item .problem-item-outer {backface-visibility: hidden;transition: transform 0.6s; display: block;}
.mod-problem .problem-item-inner {min-height: 100%;backface-visibility: hidden;transform: rotateY(180deg);transition: transform 0.5s;}
.mod-problem .problem-item:hover .problem-item-outer {transform: rotateY(180deg);}
.mod-problem .problem-item:hover .problem-item-inner {transform: rotateY(0);}
.mod-problem .problem-item-inner .inner-content {flex-grow: 1;}

/* Как проходит приём */

.mod-reception .reception-item {min-height: 25rem;}
.mod-reception .reception-item::after {content: ""; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: linear-gradient(0deg,rgba(0, 0, 0, .5) 0%, rgba(255, 255, 255, 0) 100%); z-index: 1; border-radius: inherit;}
.home .mod-reception::before {background: transparent!important;}

/* Специалисты */

.mod-team-items .team-wrap {height: 20rem;}
.mod-team-item .team-wrap {max-height: 100%;}

/* Клинические случаи */

.mod-clinic .clinic-item {height: 28rem; background-color: #000;}
.mod-clinic .clinic-item img {opacity: 1; transition: opacity 0.3s ease-in-out}
.mod-clinic .clinic-inner {max-height: 100%;box-sizing: border-box; opacity: 0;visibility: hidden;transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;-ms-overflow-style: none;scrollbar-width: none;}
.mod-clinic .clinic-item:hover img {opacity: .6;}
.mod-clinic .clinic-item:hover .clinic-inner {opacity: 1;visibility: visible;}
.mod-clinic .clinic-inner::-webkit-scrollbar {display: none;}

/* Rehab-фитнес */

.mod-rehab .box {background: var(--soft); position: absolute; padding-bottom: 0 !important; margin-bottom: 0; top: 70%; left: 50%; bottom: 0; right: 0; width: 50%; height: 60%; transform: translate(-50%, -50%)!important;}
.mod-rehab .rehab-content {position: absolute;}

/* Слайдер категории */

.mod-team .img-wrap {height: 20rem;}

.experts .mod-team::before {background: transparent!important;}

/* Обращение */

.mod-appeal .appeal-video {height: 30rem;}
.mod-appeal .appeal-video .appeal-wrap {height: inherit!important;}

.experts .mod-appeal::before {background: transparent!important;}
.experts .mod-appeal.mt-100 {margin-top: 0rem!important;}

/* Информационные блоки */

.mod-left .img-wrap, .mod-right .img-wrap, .mod-method-banner .img-wrap {max-height: 35rem;}

/* Решения проблем */

.mod-treatment .treatment-item {max-height: 23.5rem;}

/* Методы лечения */

.mod-methods .method-wrap {height: 12.5rem;}
.mod-methods .method-wrap.larger {height: 16rem;}
@media screen and (min-width: 768px) {.method-width {max-width: 55%;}}
@media screen and (max-width: 768px) {
    .method-content {
        text-align: center;
    }
}

/* Лечение заболеваний */

.mod-deseases .desease-item {height: 12.5rem;}

/* Доктор подвал */

.mod-doctor .doctor-wrap {max-height: 35rem;}

/* Партнеры */

.mod-partners .partners-wrap {max-height: 10rem;}

/* Отзывы */

.mod-reviews .swiper-reviews .swiper-slide {visibility: hidden;}
.mod-reviews .swiper-reviews .swiper-slide.swiper-slide-next, .mod-reviews .swiper-reviews .swiper-slide.swiper-slide-prev,.mod-reviews .swiper-reviews .swiper-slide.swiper-slide-active {visibility: visible;}
.mod-reviews .swiper-reviews .swiper-slide .review-item {background: var(--soft); color: var(--contrast); padding: 2rem; filter: blur(.1rem); }
.mod-reviews .swiper-reviews .swiper-slide.swiper-slide-active .review-item {background: var(--contrast); color: var(--light); padding: 3rem; filter: blur(0rem)!important;}

/* Блог */

.mod-blog.blog-page .blog-btn {display: none;}

/* Контакты */

.mod-contacts a {color: var(--light);}
.mod-contacts .icon {filter: brightness(0) grayscale(1) invert(1);}
.mod-contacts .map {position: absolute; height: 100%;}

.about .mod-contacts::before, .experts .mod-contacts::before, .contacts .mod-contacts::before {background: transparent!important;}

/* Адаптация */

@media screen and (max-width: 1199px) {

    h1, .h1 {font-size: 2.75rem; font-family: 'Helvetica-Light', sans-serif; }
    h2, .h2 {font-size: 2.25rem; font-family: 'Helvetica-Light', sans-serif; }
    h3, .h3 {font-size: 1.75rem; font-family: 'Helvetica', sans-serif; }
    h4, .h4 {font-size: 1.5rem; font-family: 'Helvetica', sans-serif; }
    h5, .h5 {font-size: 1.25rem; font-family: 'Helvetica-Light', sans-serif; }
    h6, .h6 {font-size: 1.25rem; font-family: 'Helvetica-Light', sans-serif; }

    .bg-color-top::before {border-radius: 2rem 2rem 0rem 0rem;}
    .bg-color-bottom::before {border-radius: 0rem 0rem 2rem 2rem;}

    .icon {width: 2rem;height: 2rem;}

    /* Шапка */

    header .border-top {border-top: 0rem!important;}
    header.menu-float .border-top {border-top: 0rem!important;}

    header .menu-back, header.menu-float .menu-back {border-radius: 3rem;}
    header #logo-menu {height: 5rem;}

    header .nav-item .mod-menu__sub {opacity: 1;visibility: visible;position: static; width: 100%;background: none;border: none;border-radius: unset;backdrop-filter: unset;padding: 0rem;transition: unset; text-align: center;}
    header .mod-menu__heading {display: none;}
    header .mod-menu__sub li {padding-bottom: 1rem; font-size: 1.25rem;}
    header .mod-menu__sub a {color: var(--dark)!important;}
    header.menu-float .mod-menu__sub a {color: var(--light)!important;}
    header .mod-menu__sub a:hover {color: var(--soft)!important;}
    
    /* Подвал */

    footer ul li {padding-left: 0; margin-bottom: 1rem;}
    footer .mod-menu {display: block; text-align: center;}
    footer .mod-menu__heading {display: none;}
    footer .nav-item .mod-menu__sub {opacity: 1;visibility: visible;position: static;top: 0rem;width: unset;background: transparent;border: 0px;border-radius: 0rem;background: transparent;backdrop-filter: unset;padding: 0rem;transition: unset;z-index: 1;}
    footer .mod-menu__sub li {margin: 0 !important; padding-bottom: 1rem; font-size: 1.25rem;}

    .mod-home .home-link-wrap {max-height: 15rem;}

    /* Преимущества */

    .mod-benefits .img-circle {--p: 100%;}

    /* Реклама */

    .mod-add .add-item {min-height: 20rem;}

    /* Информационные блоки */

    .mod-left .img-wrap, .mod-right .img-wrap {max-height: 25rem;}

    /* Опорно-двигательная система */

    .mod-system .system-item img {transform: translateX(0%);}

    /* Преимущества */

    .mod-benefits .aos-animate .img-circle {width: 10rem;}

    /* Контакты */

    .mod-contacts .map {position: static; height: 25rem;}

    /* Методы лечения */

    .mod-methods .method-wrap {height: 12.5rem;}
    .mod-methods .method-wrap.larger {height: 12.5rem;}

    /* Rehab-фитнес */

    .mod-rehab .box {width: 70%; top: 50%;}
    .mod-rehab .rehab-content {position: relative; margin-bottom: -3rem;}

}

/* Анимации */

.delay-1 {-webkit-animation-delay:200ms;animation-delay:200ms}
.delay-2 {-webkit-animation-delay:400ms;animation-delay:400ms}
.delay-3 {-webkit-animation-delay:600ms;animation-delay:600ms}
.delay-4 {-webkit-animation-delay:800ms;animation-delay:800ms}
.delay-5 {-webkit-animation-delay:1000ms;animation-delay:1000ms}
.delay-6 {-webkit-animation-delay:1200ms;animation-delay:1200ms}
.delay-7 {-webkit-animation-delay:1400ms;animation-delay:1400ms}
.delay-8 {-webkit-animation-delay:1600ms;animation-delay:1600ms}
.delay-9 {-webkit-animation-delay:1800ms;animation-delay:1800ms}
.delay-10 {-webkit-animation-delay:2000ms;animation-delay:2000ms}

/* Custom */

ul.sitemap, .sitemap ul { all: unset; display: block; }
.sitemap ul { padding-left: 1.5rem; }
.sitemap li { all: unset; display: block; list-style: none !important; padding-bottom: 0.5rem; font-weight: 700; }
.sitemap li::before { all: unset; content: '>   '; white-space: pre; color: var(--accentColor); }
.copyright_footer { font-size: 0.85rem; color: #777; }
