.wrapper {
    max-width: 80rem;
    margin: auto;
    padding: 0 1rem;
}

.wrapper-60 {
    max-width: 60rem;
    margin: auto;
    padding: 0 1rem;
}

.pages_item strong {
    font-weight: bold;
}

.lenis.lenis-stopped {
    overflow: hidden;
}

.container .wrapper,
.container-fluid .wrapper {
    padding: 0;
}

.gray-bg {
    background: var(--color-bg-gray);
    padding: 1px 0;
}

.app-layout {
    display: flex;
    flex-direction: column;
}

.app-logo {
    display: inline-block;
}

.app-logo img {
    display: inline-block;
    width: 6rem;
    height: auto;
}

.app-layout {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.app-main {
    flex: 1 0 auto;
    padding-top: var(--header-height);
}

.img-fluid {
    width: 100%;
}

.img-layout {
    max-width: 100%;
}

svg {
    display: inline-block;
}

.svg-icon {
    display: inline-block;
    color: currentColor;
    vertical-align: middle;
    width: 1rem;
    height: 1rem;
}

.svg-icon--xs {
    width: .75rem;
    height: .75rem;
}

.svg-icon--sm {
    width: 1rem;
    height: 1rem;
}

.svg-icon--md {
    width: 1.125rem;
    height: 1.125rem;
}

.svg-icon--lg {
    width: 1.25rem;
    height: 1.25rem;
}

.svg-icon--xl {
    width: 1.5rem;
    height: 1.5rem;
}

.svg-icon--arrow {
    width: 1.25rem;
    height: .75rem;
}

.content-block {
    font-size: 1rem;
}

.content-block h2 {
    font-size: 2em;
}

.brand-list__icon {
    height: 5rem;
}

.logo-xs {
    width: 3rem;
}

.logo-sm {
    width: 6rem;
}

.logo-md {
    width: 10rem;
}

.logo-lg {
    width: 13rem;
}

.social-list {
    padding: 0;
}

.social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 2rem;
    height: 2rem;
    z-index: 1;
}

.social-link::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 100%;
    top: 0;
    left: 0;
    position: absolute;
    z-index: -1;
    transform: scale(0);
}

.social-link::after,
.social-link .svg-icon {
    transition: transform .3s ease;
}

.social-link .svg-icon {
    margin: 0;
    top: 0;
}

.social-link:hover .svg-icon {
    transform: scale(.8);
    color: var(--color-bg)
}

.social-link:hover::after {
    transform: scale(1.2);
}

.social-link--instagram::after {
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
}

.social-link--telegram::after {
    background: #0088cc;
}

.social-link--whatsapp::after {
    background: #008a7c;
}

.social-link--viber::after {
    background: #59267c;
}

.social-link--youtube::after {
    background: #ff0000;
}

.social-link--vk::after {
    background: #07f;
}

.category-title,
.page-title {
    font-size: 2rem;
    line-height: 1;
    font-weight: 800;
    text-align: center;
    margin: 1rem 0;
    text-wrap: balance;
}
.video-box {
    display: block;
    position: relative;
    overflow: hidden;
}

.video-box__link {
    display: block;
    position: relative;
    margin: 0;
}

.video-box .youtube {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 4;
}

.video-box__play {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.video-box__link:hover .video-box__play:after {
    transform: scale(1.2);
}

.video-box__media {
    max-width: 100%;
    display: block;
}

.w-video__inner {
    max-width: 45rem;
    margin: 1rem auto;
    border: .5rem solid var(--color-gray)
}

.w-video__inner .video-box {
    padding-top: 57%;
    width: 100%;
    background: var(--color-gray);
}

.w-video__inner .video-box__link {
    position: absolute;
    margin: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.pills-menu {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    margin-bottom: 3rem;
}

.pills-menu a:hover {
    text-decoration: underline;
    color: var(--color-brand)
}

.pills-menu li {
    padding: 0 .5rem;
}

.pills-menu .active {
    opacity: .5;
}

.review-item {
    margin-bottom: 2rem;
}

.review-item__bar {
    margin-top: 1rem;
    margin-bottom:.5rem; 
    margin-left: -.25rem;
    margin-right: -.25rem;
}
.review-item__bar .col{padding:0 .25rem;}
.review-item__bar .svg-icon{width: 1.5rem; height: 1.5rem;}

.review-item__author {
    margin-right: .5rem;
}

.review-photo {
    display: block;
    overflow: hidden;
}

.review-video .review-item__title,
.review-photo .review-item__title {
    position: absolute;
    padding: 1rem;
    margin: 0;
    padding-bottom: 3rem;
    left: 0;
    top: 0;
    color: var(--color-bg);
    z-index: 1;
    font-size: 1rem;
    pointer-events: none;
}

.review-video .review-item__title:after,
.review-photo .review-item__title:after {
    content: '';
    display: block;
    width: 200%;
    height: 150%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    pointer-events: none;
    background: radial-gradient(at top left, var(--color-base) 0%, transparent 60%);
}

.review-photo__link {
    display: block;
    position: relative;
    margin: 0;
}

.review-item__text--lg {
    font-size: 1.5rem;
    line-height: 1.4;
}

.review-item__text p {
    margin: 0;
}

.review-photo {
    position: relative;
}

.review-item__link {
    font-weight: bold;
}

.review-item__link:hover {
    color: var(--color-brand);
}

.reviews-list {
    margin-bottom: 2rem;
}

.reviews-list__col {
    margin-bottom: 3rem;
}

.rating-star {
    display: flex;
    margin: 0 -.125rem;
}

.rating-star__item {
    color: var(--color-gray);
    display: block;
    padding: .125rem;
}

.rating-star__item--full {
    color: var(--color-bg-accent)
}

.rating-star .svg-icon {
    display: block;
    vertical-align: unset;
}

.video-box__link {
    height: auto!important;
    aspect-ratio: 16/9;
    background: var(--color-ghost)
}

.video-box__link img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.list--number {
    padding-left: 1.75rem;
}

.list--number li::marker {
    font-weight: bold;
    display: inline-block;
    margin-right: .5rem;
}

[data-tippy-root] {
    z-index: 99!important;
}

.share-content__btn {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

.share-content__btn:hover {
    color: var(--color-brand);
}

.share-content__btn svg {
    width: 1rem;
    height: 1rem;
    fill: currentColor;
}

.share-content__btn span {
    margin-left: .5rem;
}

.share-list {
    margin: 0;
    padding: 0;
}

.share-list__item {
    margin-bottom: 0!important;
}

.share-list__item a {
    display: flex;
    align-items: center;
    line-height: 1;
    padding: .75rem;
    text-decoration: none!important;
    color: var(--color-base)!important;
}

.share-list__item a:hover,
.share-list__item a:focus {
    outline: none;
    background: var(--color-bg-grayer);
    color: var(--color-brand)!important;
}

.share-list__icon {
    width: 1rem;
    height: 1rem;
    margin-right: .5rem;
}

.tippy-box[data-theme~='share'] {
    padding: 0;
    background-color: var(--color-bg);
    color: var(--color-base);
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, .3);
}

.tippy-box[data-theme~='share'] .tippy-content {
    padding: 0;
}

.tippy-box[data-theme~='share'] .tippy-arrow {
    color: var(--color-bg);
}

.pages_item h2 {
    font-size: 1.5rem;
    line-height: 1;
    margin: 2rem 0 1rem;
}

.pages_item h3 {
    font-size: 1.25rem;
    line-height: 1.2;
}

.pages_item p {
    margin-bottom: 1rem;
}

.pages_item a {
    color: var(--color-brand);
    text-decoration-color: rgba(0, 0, 0, .3);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.pages_item a:hover {
    text-decoration-color: var(--color-brand);
    opacity: .8;
}

.pages_item .wrapper {
    padding: 1rem 0;
}

.pages-item__intro {
    margin: 0 -1rem;
}

.pages-item__intro img {
    margin-left: -.5rem;
}

.pages-item__intro .wrapper {
    padding: 1rem;
}

.pages-item__intro blockquote {
    margin: 2rem 0;
    font-weight: bold;
}

.pages-item__intro .btn {
    display: block;
    margin: 1rem auto;
    text-decoration: none;
    color: var(--color-bg);
}

.about-video {
    padding: 2rem 0;
}

.about-video h2 {
    max-width: 40rem;
    text-align: center;
    margin-left: auto!important;
    margin-right: auto!important;
}

.about-video .video-box {
    max-width: 40rem;
    margin: auto;
}

.qq-upload-failed-text {
    display: none
}

.widget_image_multi .qq-upload-list>li {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.widget_image_multi .qq-upload-list__item {
    padding: 0 .5rem
}

.widget_image_multi .qq-upload-cancel {
    color: #e66767
}

.widget_image_multi .qq-upload-list>li>*.qq-upload-spinner {
    position: relative;
    display: block;
    width: 1.25rem;
    height: 1.25rem;
}

.widget_image_single .loading:after,
.widget_image_single .qq-upload-spinner:after,
.widget_image_multi .loading:after,
.widget_image_multi .qq-upload-spinner:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border-radius: 50%;
    display: block;
    border: 4px solid;
    border-top-color: transparent;
    border-left-color: transparent;
    color: var(--color-brand);
    background-color: transparent;
    -webkit-animation: loader-upload 0.9s linear infinite;
    animation: loader-upload 0.9s linear infinite;
    z-index: 99;
}

@keyframes loader-upload {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.page-intro {
    margin-bottom: 2rem;
}

.page-intro__caption {
    padding-top: 1rem;
    background: var(--color-bg);
}

.page-intro__text {
    max-width: 28rem;
}

.page-intro__title {
    font-size: 2rem;
    line-height: 1;
    margin-bottom: 2rem;
}

.page-intro--gray {
    background: var(--color-bg-gray);
}

.page-intro img {
    width: auto;
}

.steps-list {
    margin-top: 3rem!important;
    margin-bottom: 1rem;
    max-width: none!important;
}

.steps-list__item {
    text-align: center;
}

.steps-list__item svg {
    display: block;
    width: 2.5rem;
    height: 2.5rem;
    margin: 1rem auto;
}

.steps-list__item span {
    display: inline-block;
    line-height: 1.4;
    max-width: 14rem;
}

.content__block {
    padding: 2rem;
}

.content__block--gray {
    position: relative;
    z-index: 2;
    background: var(--color-bg-gray);
}

.content__block--gray:after {
    content: '';
    position: absolute;
    left: 0%;
    top: 0;
    width: 100%;
    height: 100%;
    background: var(--color-bg-gray);
    z-index: -1;
    float: left;
    clear: left;
}

.content__block--brand {
    background: var(--color-brand);
    color: var(--color-bg);
}
.content__block--brand a{color:rgba(255,255,255,.75)}

.page-content p,
.page-content ul:not(.row),
.page-content h2,
.page-content h3,
.page-content h4,
.page-content blockquote {
    max-width: 60rem;
    margin-left: auto;
    margin-right: auto;
}

.page-content--sertifikaty a {
    margin-bottom: 1rem;
}

.alert {
    position: fixed;
}

.alert--cookie {
    transform: translateY(100%);
    opacity: 0;
    transition: transform .25s ease;
    z-index: 100000000000;
    width: 100%;
    bottom: 0;
    left: 0;
    background: var(--color-base);
    color: var(--color-bg);
}

.alert--cookie .alert-grid__col {
    font-size: .875rem;
    line-height: 1.4;
}

.alert--cookie.show {
    transform: translateY(0%);
    opacity: 1;
}

.alert--cookie a {
    color: var(--color-bg-accent);
    text-decoration: underline;
}

.alert .container {
    padding: 1rem;
    max-width: 60rem;
    margin: auto;
}

.alert-grid {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.alert-grid__col {
    max-width: 40rem;
}

.alert__btn {
    width: 100%;
    padding: .5rem 1rem;
    margin-top: 1rem;
}

.tabs {
    margin: 1rem auto;
}

.tabs-list {
    padding: 0;
    list-style: none;
    margin: 0 -1rem;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 1rem;
}

.tabs-list__item {
    display: block;
    white-space: nowrap;
    padding: 0 .25rem;
}

.tabs-list__link {
    white-space: nowrap;
    font-weight: 500;
    color: var(--color-base);
    padding: .25rem 1rem;
    display: block;
    border-radius: 3rem;
    border: 1px solid var(--color-gray);
    text-decoration: none;
    transition: background .3s ease;
}

.tabs-list__link:hover,
.gui-panel a:hover {
    color: var(--color-brand);
    border-color: currentColor;
}

.tabs-list__item.active .tabs-list__link {
    background: var(--color-brand);
    border-color: var(--color-brand);
    cursor: default;
    color: var(--color-bg);
}

.tabs__links {
    display: flex;
    align-items: end;
    max-width: 100%;
    overflow: auto;
}

.tabs__link {
    margin: 0 1rem;
    white-space: nowrap;
    cursor: pointer;
    opacity: .4;
    position: relative;
    padding: .5rem 0;
    transition: all .25s ease;
    text-transform: uppercase;
    font-weight: bold;
    line-height: 1.2;
    color: var(--color-brand);
}

.tabs__link:after {
    content: '';
    opacity: 0;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: var(--color-brand);
    display: block;
    width: 0;
    height: 2px;
    transition: all .25s ease;
}

.tabs__link:hover:after {
    opacity: .7;
    width: 100%;
}

.tabs__link:hover {
    opacity: .7;
}

.tabs__link.active:after {
    opacity: 1;
    width: 100%;
}

.tabs__link.active {
    opacity: 1;
    cursor: default;
}

.tabs__contents {
    max-width: 100%;
    margin: 0 auto;
    padding: 2rem 0;
    position: relative;
    overflow: hidden;
}

.tabs__content {
    position: absolute;
    transition: all .3s ease;
    z-index: -2;
    opacity: 0;
    transform: translateY(2rem);
    top: 0;
    left: 0;
    width: 100%;
}

.tabs__content.active {
    position: relative;
    transform: translate(0);
    opacity: 1;
    z-index: 1;
}

.tabs__content a {
    display: block;
    min-width: 20rem;
    margin: auto;
    padding: 0 1rem;
}

.tabs__content a img {
    max-width: 100%;
    display: block;
}

.pagebar {
    margin-top: 1rem;
    margin-bottom: 2rem;
}

.pagebar__link {
    color: var(--color-brand);
    display: inline-flex;
    justify-content: center;
    border-radius: 50%;
    align-items: center;
    font-size: 1rem;
    width: 2.5rem;
    height: 2.5rem;
    line-height: 1;
    position: relative;
    text-decoration: none;
    font-weight: 300;
    margin: 0 .125rem;
}

.pagebar__link:after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border: 1px solid currentColor;
    border-radius: 50%;
    transform: scale(1.1);
    opacity: 0;
    transition: all .25s ease;
}

.pagebar__link:not(.disabled):not(.pagebar__link--current):hover::after {
    transform: scale(1);
    opacity: 1;
}

.pagebar__link--current {
    font-weight: bold;
    background: var(--color-bg-gray);
}

.pagebar__link.disabled {
    opacity: .3;
    cursor: pointer;
    width: 0;
}

.breadcrumbs-wrap {
    position: relative;
    padding: .5rem 0;
    background: var(--color-bg-gray)
}

.breadcrumbs {
    width: fit-content;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    position: relative;
    max-width: 100%;
    padding: 0 1rem;
    margin: 0 auto;
}

.breadcrumbs-wrap::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 3rem;
    background: linear-gradient(90deg, color-mix(in srgb, var(--color-bg-gray) 0%, transparent) 0%, var(--color-bg-gray) 100%);
    pointer-events: none;
}

.breadcrumbs__list {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    margin: 0 auto;
    max-width: 75rem;
    width: 100%;
    font-size: .75rem;
}

.breadcrumbs__link {
    white-space: nowrap;
    text-decoration: none;
}

.breadcrumbs__end {
    white-space: nowrap;
    opacity: .5;
    cursor: default;
}

.breadcrumbs__link:hover {
    color: var(--color-brand)
}

.breadcrumbs .separator {
    padding: 0 .25rem;
    opacity: .5;
}

.breadcrumbs {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.breadcrumbs::-webkit-scrollbar {
    display: none;
}

.page-content h2 {
    font-size: 2rem;
    line-height: 1.2;
}

.page-content h3 {
    font-size: 1.75rem;
}

.page-content__intro {
    padding-bottom: 3rem;
    margin-bottom: 3rem;
}

.table-wrap{max-width:100%; overflow-y:visible; overflow-x:auto;}
table {
    border-collapse: collapse;
    width: 100%;
    margin: 1rem 0;
}

table td {
    padding: 1rem;
    border: 1px solid currentColor;
    line-height: 1.35;
    transition: background .25s ease;
}

table th {
    background: rgb(120, 130, 66, .1);
    padding: 1rem;
    border: 1px solid currentColor;
    text-align: left;
    line-height: 1.35;
}

.table-check,
.table-nocheck {
    font-size: 0;
    text-indent: -100px;
    position: relative;
}

.table-nocheck {
    display: block;
    width: 16px;
    height: 16px;
    margin: auto;
}

.table-check:before {
    content: '';
    position: relative;
    top: 6px;
    display: block;
    width: 16px;
    margin: 0 auto;
    height: 8px;
    transform: rotate(-45deg);
    border-bottom: 2px solid currentColor;
    border-left: 2px solid currentColor;
}

.table-nocheck:before,
.table-nocheck:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: block;
    width: 18px;
    margin: auto;
    height: 2px;
    background: #ddd;
}

.table-nocheck:before {
    transform: rotate(45deg);
}

.table-nocheck:after {
    transform: rotate(-45deg);
}

.stacktable.large-only {
    display: table;
}

.stacktable.small-only {
    display: none;
}

.stacktable.large-only tr:hover td {
    background-color: #F3F5F7;
}

.table--noborder td {
    border: 0;
    padding: 1rem;
}

.table--noborder th {
    border: 0;
    padding: 1rem;
    background:transparent;
}

.table--noborder tr:nth-child(2n) td {
    background: var(--color-bg-gray);
}

.banika-list {
    padding: 0;
    list-style: none;
}

.banika-list li {
    margin-bottom: 3rem;
}

.banika-list h3 {
    font-weight: 900;
    line-height: 1.3;
    font-size: 1.6rem;
    display: block;
    margin-bottom: 1rem;
    padding-left: 1.5rem;
    position: relative;
}

.banika-list h3:before {
    content: '';
    display: inline-block;
    margin-right: 1rem;
    position: absolute;
    left: 0;
    top: 4px;
    background: var(--color-bg-accent);
    width: 8px;
    height: 25px;
}

.banika-list p {
    margin-right: 2rem;
}

.banika-bg {
    position: relative;
    background: var(--color-brand);
    color: var(--color-bg)
}

.banika-bg:before,
.banika-bg:after {
    content: '';
    position: absolute;
    z-index: 3;
    pointer-events: none;
    width: 15rem;
    height: 15rem;
    background: url(../img/bg2.svg) no-repeat 50% 50%;
    background-size: contain;
    opacity: .6;
}

.banika-bg:before {
    top: -2rem;
    left: -2rem;
}

.banika-bg:after {
    bottom: -2rem;
    right: -2rem;
    transform: rotate(25deg)
}

.widget {
    padding: 2rem 0;
}

.widget__title {
    font-size: 2rem;
    font-weight: bold;
    margin: 1rem 1rem 2rem;
    text-align: center;
    line-height: 1.1;
}

.w-slider {
    background: linear-gradient(to bottom, var(--color-brand) 50%, transparent 50%);
}

.w-slider__image {
    width: 100%;
}

.w-slider__info {
    z-index: 6;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    color: #fff;
    background: linear-gradient(to top, var(--color-base) 50%, transparent 100%);
}

.w-slider__item {
    background: var(--color-base);
}

.w-slider__item--content:after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: var(--color-base);
    opacity: .4;
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
}

.w-slider__caption {
    transition: transform .5s ease .1s, opacity .3s ease-out .1s;
    padding: 2rem;
    padding-bottom: 3rem;
}

.w-slider__title {
    font-size: 1.5rem;
    line-height: 1.2;
}

.w-slider__text {
    transition: transform .5s ease .2s, opacity .3s ease-out .1s;
    opacity: 0;
    margin-bottom: 1rem;
}

.w-slider__btn {
    transition: transform .5s ease .3s, opacity .3s ease-out .1s;
    opacity: 0;
    min-width: 12rem;
}

.w-slider__slider {
    margin: 0 -1rem;
}

.w-slider__slider .slider-pagination {
    margin-bottom: 0;
}

.swiper-slide-next .w-slider__caption,
.swiper-slide-next .w-slider__btn,
.swiper-slide-next .w-slider__text {
    transform: translateX(4rem);
}

.swiper-slide-prev .w-slider__caption,
.swiper-slide-prev .w-slider__btn,
.swiper-slide-prev .w-slider__text {
    transform: translateX(-4rem);
}

.swiper-slide-active .w-slider__caption,
.swiper-slide-active .w-slider__btn,
.swiper-slide-active .w-slider__text {
    transform: translateX(0);
    opacity: 1;
}

.w-steps__wrap {
    overflow-x: auto;
    max-width: 70rem;
    margin: 0 -1rem;
}

.w-steps__intro {
    max-width: 36rem;
    text-align: center;
    margin: 1rem auto 3rem;
}

.w-steps__list {
    text-align: center;
    min-width: 48rem;
    list-style: none;
    margin-bottom: 1rem;
    padding-left: 1rem;
}

.w-steps__item {
    padding: 1rem;
    position: relative;
    cursor: pointer;
    height: 100%;
    padding-top: 2rem;
}

.w-steps__link {
    transition: all .25s ease;
    display: block;
    width: 1rem;
    height: 1rem;
    margin: 0 auto;
    position: absolute;
    bottom: -.6rem;
    left: 0;
    right: 0;
    background: var(--color-gray);
    border-radius: 50%;
}

.w-steps__list:after {
    content: '';
    display: block;
    width: 68%;
    height: 4px;
    margin: 0 auto;
    bottom: 2rem;
    background: #F7F8FB;
    border-radius: 3px;
}

.w-steps__list img {
    max-width: 100%;
    transition: all .25s ease;
    display: block;
    margin: 2rem auto;
    filter: grayscale(75%);
}

.w-steps__list h3 {
    color: var(--color-brand);
    font-size: 1.2rem;
    line-height: 1.3;
    opacity: .4;
    transition: all .25s ease;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.w-steps__list .active h3 {
    opacity: 1;
}

.w-steps__list .active img {
    filter: grayscale(0%);
}

.w-steps__link:hover {
    background: var(--color-bg-accent);
    transform: scale(1.2)
}

.w-steps__list .active .w-steps__link {
    background: var(--color-brand);
    transform: scale(1.2)
}

.w-steps__info {
    margin: 2rem 0;
    list-style: none;
    padding: 0;
}

.w-steps__info li {
    position: relative;
    margin-bottom: 1rem;
    opacity: .4;
    padding-left: 1.5rem;
}

.w-steps__info li.active {
    opacity: 1;
}

.w-steps__info li:before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 10px;
    border-radius: 50%;
    background: var(--color-brand);
    position: absolute;
    top: .5rem;
    left: 0;
}

.w-stages .widget_text_block {
    overflow: hidden;
    overflow-x: scroll;
}

.w-stages ul,
.w-stages ol {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    list-style: none;
    counter-reset: stage;
}

.w-stages br {
    display: none;
}

.w-stages strong,
.w-stages em {
    display: block;
}

.w-stages em {
    opacity: .5;
}

.w-stages li {
    padding: 1rem;
    width: 100vw;
    flex: 0 0 100%;
    text-align: center;
}

.w-stages li:before {
    counter-increment: stage;
    content: counter(stage, decimal-leading-zero);
    font-weight: 900;
    padding: 1rem;
    font-size: 3rem;
    line-height: 1;
    color: var(--color-brand);
    background: radial-gradient(circle at 80% 32%, var(--color-bg-accent-opacity) 16%, transparent 16%);
}

.w-features {
    background: var(--color-bg-gray);
    padding-bottom: 0!important;
}

.w-features__list {
    max-width: 80rem;
    margin: 3rem auto 2rem;
}

.w-gallery__photo {
    display: block;
}

.w-gallery__image {
    display: block;
    width: 100%;
    filter: grayscale(100%);
}

.w-gallery__caption {
    margin: 1rem 0;
    opacity: 0;
    transform: translateY(-2rem);
}

.w-gallery__caption,
.w-gallery__place {
    display: block;
    opacity: 0;
    transform: translateY(-2rem);
    transition: .3s ease-out;
}

.w-gallery__place {
    color: var(--color-brand);
    transition-delay: .1s;
}

.w-gallery__place .svg-icon {
    vertical-align: baseline;
    margin-right: .125rem;
}

.w-gallery .btn-slider {
    color: var(--color-brand);
    top: auto;
    bottom: 4rem;
    margin: 0;
}

.w-gallery-next {
    right: 10%;
}

.w-gallery-prev {
    left: 10%;
}

.swiper-slide-active .w-gallery__image {
    filter: grayscale(0);
}

.swiper-slide-active .w-gallery__caption,
.swiper-slide-active .w-gallery__place {
    opacity: 1;
    transform: translateY(0);
}

.feature-slider {
    background: linear-gradient(to bottom, var(--color-bg-gray) 50%, var(--color-bg) 50%);
    position: relative;
    padding-top: 0!important;
    overflow: hidden;
    margin-top: -3rem;
}

.feature-slider__list {
    max-width: 56rem;
    color: var(--color-bg);
    margin-bottom: 2rem;
    overflow: visible!important;
}

.feature-slider__body {
    max-width: 60rem;
    margin: 6rem auto 1rem;
}

.feature-slider__item {
    padding: 3rem;
    text-align: center;
    transition: all .5s ease;
}

.feature-slider__item h3 {
    font-size: 1.8rem;
    line-height: 1.3;
    margin: 0 auto 1rem;
}

.feature-slider__box {
    opacity: 0;
    transition-delay: .1s;
}

.feature-slider .slider-pagination {
    position: relative;
    margin-top: 0!important;
    margin-bottom: 1rem;
    display: flex!important;
    flex-wrap: nowrap;
    padding: 0;
    top: 1rem;
}

.feature-slider .swiper-pagination-bullet {
    background: var(--color-bg-gray)!important;
    opacity: 1!important;
    border: none;
    height: .25rem!important;
    width: auto!important;
    flex: 1 0 auto;
    border-radius: 4px!important;
}

.feature-slider .swiper-pagination-bullet:after {
    width: 0;
    height: 100%;
    border-radius: 0;
    background: var(--color-bg-accent);
    position: absolute;
    top: 0;
    left: 0;
}

.feature-slider__item.swiper-slide-active .feature-slider__box {
    opacity: 1;
}

.feature-slider .swiper-pagination-bullet-active {
    box-shadow: none;
    width: 100%;
}

.feature-slider .swiper-pagination-bullet-active:after {
    animation: 5s fillWidth linear;
}

.wlcm-slider__item {
    position: relative;
}

.wlcm-slider__caption {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #fff;
}

.wlcm-slider__top {
    position: absolute;
    top: 2rem;
    left: 2rem;
    padding-right:2rem;
    font-weight: bold;
}

.wlcm-slider__title {
    font-size: 10vw;
    line-height: 1;
    transition: transform 5s ease;
    line-height: .9;
}

.wlcm-slider__bottom {
    position: absolute;
    bottom: 2rem;
    right: 1rem;
    width: 65%;
    max-width: 16rem;
}

.wlcm-slider__item {
    position: relative;
}

.wlcm-slider__info {
    margin-top: .75rem;
    font-size: 1.25rem;
    line-height: 1.2;
}

.wlcm-slider__image {
    display: block;
    position: relative;
    width: 100%;
    padding: 50%;
    transition: transform 1s ease;
    background: #565e2e;
}

.wlcm-slider__image:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background-color: rgba(0, 0, 0, .3);
}

.wlcm-slider__image img {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    object-fit: cover;
}

.wlcm-slider__price {
    font-size: 1.5rem;
    font-weight: bold;
    overflow: hidden;
    line-height: 1;
}

.wlcm-slider__price span {
    transition: 1s transform .75s ease;
}

.wlcm-slider__desc {
    margin-bottom: 1rem;
}

.wlcm-slider__more svg {
    margin-left: 1rem;
}

.wlcm-slider__more:hover {
    Color: var(--color-bg-accent)
}

.employee-item {
    margin-bottom: 2rem;
    background: var(--color-bg-gray);
    padding-bottom: 1rem;
}

.employee-item h2 {
    margin: 0;
    margin-top: 1rem;
}

.employee-item p,
.employee-item ul {
    margin: 0 0 2rem!important;
}

.employee-item ul li {
    margin: 0 0 1rem!important;
}

.employee-item h3 {
    font-size: 1rem;
    margin: 0;
    margin-bottom: 2rem;
    font-weight: normal;
}

.employee-item__image {
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.employee-item__content {
    padding-left: 2rem;
    padding-right: 2rem;
}

.sk-circle {
    top: 50%;
    margin-top: -1.6rem;
    width: 3.2rem;
    height: 3.2rem;
    position: relative;
}

.sk-circle .sk-child {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

.sk-circle .sk-child:before {
    content: '';
    display: block;
    margin: 0 auto;
    width: 15%;
    height: 15%;
    background-color: var(--color-bg);
    border-radius: 100%;
    -webkit-animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
    animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
}

.sk-circle .sk-circle2 {
    -webkit-transform: rotate(30deg);
    -ms-transform: rotate(30deg);
    transform: rotate(30deg);
}

.sk-circle .sk-circle3 {
    -webkit-transform: rotate(60deg);
    -ms-transform: rotate(60deg);
    transform: rotate(60deg);
}

.sk-circle .sk-circle4 {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.sk-circle .sk-circle5 {
    -webkit-transform: rotate(120deg);
    -ms-transform: rotate(120deg);
    transform: rotate(120deg);
}

.sk-circle .sk-circle6 {
    -webkit-transform: rotate(150deg);
    -ms-transform: rotate(150deg);
    transform: rotate(150deg);
}

.sk-circle .sk-circle7 {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

.sk-circle .sk-circle8 {
    -webkit-transform: rotate(210deg);
    -ms-transform: rotate(210deg);
    transform: rotate(210deg);
}

.sk-circle .sk-circle9 {
    -webkit-transform: rotate(240deg);
    -ms-transform: rotate(240deg);
    transform: rotate(240deg);
}

.sk-circle .sk-circle10 {
    -webkit-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
}

.sk-circle .sk-circle11 {
    -webkit-transform: rotate(300deg);
    -ms-transform: rotate(300deg);
    transform: rotate(300deg);
}

.sk-circle .sk-circle12 {
    -webkit-transform: rotate(330deg);
    -ms-transform: rotate(330deg);
    transform: rotate(330deg);
}

.sk-circle .sk-circle2:before {
    -webkit-animation-delay: -1.1s;
    animation-delay: -1.1s;
}

.sk-circle .sk-circle3:before {
    -webkit-animation-delay: -1s;
    animation-delay: -1s;
}

.sk-circle .sk-circle4:before {
    -webkit-animation-delay: -0.9s;
    animation-delay: -0.9s;
}

.sk-circle .sk-circle5:before {
    -webkit-animation-delay: -0.8s;
    animation-delay: -0.8s;
}

.sk-circle .sk-circle6:before {
    -webkit-animation-delay: -0.7s;
    animation-delay: -0.7s;
}

.sk-circle .sk-circle7:before {
    -webkit-animation-delay: -0.6s;
    animation-delay: -0.6s;
}

.sk-circle .sk-circle8:before {
    -webkit-animation-delay: -0.5s;
    animation-delay: -0.5s;
}

.sk-circle .sk-circle9:before {
    -webkit-animation-delay: -0.4s;
    animation-delay: -0.4s;
}

.sk-circle .sk-circle10:before {
    -webkit-animation-delay: -0.3s;
    animation-delay: -0.3s;
}

.sk-circle .sk-circle11:before {
    -webkit-animation-delay: -0.2s;
    animation-delay: -0.2s;
}

.sk-circle .sk-circle12:before {
    -webkit-animation-delay: -0.1s;
    animation-delay: -0.1s;
}

@-webkit-keyframes sk-circleBounceDelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes sk-circleBounceDelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.loader {
    position: relative;
}

.loader__block {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, .5);
    z-index: 50;
}

.loader__spinner {
    display: block;
    width: 2rem;
    height: 2rem;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
}

.loader__spinner:before,
.loader__spinner::after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: transparent;
    border: 4px solid transparent;
}

.loader__spinner:before {
    border-top: 4px solid var(--color-bg-accent);
    border-left: 4px solid var(--color-bg-accent);
    -webkit-animation: 2s spinLoader linear infinite;
    animation: 2s spinLoader linear infinite;
}

.loader__spinner::after {
    border-right: 4px solid var(--color-brand);
    border-bottom: 4px solid var(--color-brand);
    -webkit-animation: 1s spinLoader linear infinite;
    animation: 1s spinLoader linear infinite;
}

.btn-primary .loader__block {
    background: var(--color-brand);
}

.btn-primary .loader__spinner:after {
    border-bottom-color: rgba(255, 255, 255, .5);
    border-right-color: rgba(255, 255, 255, .5)
}

@-webkit-keyframes spinLoader {
    from {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes spinLoader {
    from {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

.category__desc {
    max-width: 80rem;
    margin: 2rem auto;
}

.app-sort__menu {
    margin: 0 -.5rem 1rem;
}

.app-sort__menu .col {
    padding: .5rem .325rem;
}

.app-sort__item.is-active {
    font-weight: bold;
}

.app-sort__item a:not(.app-sort__link--new) {
    display: none;
}

.app-sort__item.is-active a {
    display: block;
}

.app-sort__item a:first-child {
    display: block;
}

.app-sort__link--active:not(.app-sort__link--new) {
    display: none!important;
}

.app-sort__item.is-active a:after {
    opacity: 1;
}

.app-sort__link--price:after,
.app-sort__link--area:after,
.app-sort__link--price_desc:after,
.app-sort__link--area_desc:after {
    content: '';
    opacity: .4;
    display: inline-block;
    width: .75rem;
    height: .75rem;
    position: relative;
    top: 2px;
    left: 0;
    background: url(../img/arrow_top.svg) no-repeat 50% 50%;
    background-size: contain;
}

.app-sort__link--price:after,
.app-sort__link--area:after {
    transform: rotate(180deg);
}

.city-list {
    text-align: center;
}

.city-list__span,
.city-list__link {
    text-transform: uppercase;
    line-height: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    cursor: default;
}

.city-list__span {
    cursor: default;
}

.city-list__link {
    cursor: pointer;
}

.city-list__link:hover {
    font-weight: bold;
}

.city-list__item svg {
    margin-right: .5rem;
}

.city-hint {
    max-width: 30rem;
    margin: 1rem auto;
    opacity: .8;
    text-align: center;
    font-size: .875rem;
}

.payment-promo {
    border: 2px solid var(--color-bg-gray);
    background: var(--color-white);
    box-shadow: 0 3rem 6rem -3rem rgba(0, 0, 0, .3);
    position: relative;
    padding: 0 1rem 1rem;
    margin: 2rem 0;
}

.payment-promo__title {
    font-size: 1.75rem;
    line-height: 1.15;
    margin: 0 0 1rem;
    font-weight: bold;
}

.payment-promo__image {
    max-width: 100%;
}

.payment-promo__caption {
    padding: 2rem;
}

.payment-promo__bank {
    display: inline-block;
    max-width: 5rem;
    position: absolute;
    right: 1rem;
    bottom: 1rem;
}

.faq-item {
    margin: 0 1rem;
}

.faq-list {
    width: 100%;
    max-width: 80rem;
    margin: auto;
}

.faq-list__item {
    margin-bottom: 2rem;
}

.faq-item__title {
    font-size: 1.25rem;
    margin-bottom: 1rem;
    color: var(--color-ghost);
}

.faq-block__item:first-child {
    border-top: 1px solid var(--color-gray);
}

.faq-block__item {
    border-bottom: 1px solid var(--color-gray);
}

.faq-block__question {
    font-size: 1.125rem;
    line-height: 1.2;
    margin: 0;
    padding: 1rem 3rem 1rem 0;
    cursor: pointer;
    position: relative;
    transition: color 0.3s ease;
}

.faq-block__answer {
    padding-bottom: 1.5rem;
    display: none;
}

.faq-block__question:hover {
    color: var(--color-brand)
}

.faq-block__button {
    display: block;
    border: none;
    background-color: transparent;
    cursor: pointer;
    width: 1rem;
    height: 1rem;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.faq-block__button:before,
.faq-block__button:after {
    transition: transform 0.3s ease;
    content: "";
    height: .125rem;
    width: 100%;
    background-color: currentColor;
    position: absolute;
    right: 0;
    top: 50%;
}

.faq-block__button:before {
    transform: rotate(90deg);
}

.is-active .faq-block__button:before {
    transform: rotate(0deg);
}

.is-active .faq-block__button:after,
.is-active .faq-block__button:before {
    transform: rotate(180deg);
}

.faq-block__answer a {
    color: var(--color-brand);
    text-decoration-line: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.125em;
    text-decoration-color: var(--color-brand-opacity);
}

.faq-block__answer a:hover {
    color: var(--color-brand-light);
    text-decoration-line: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.125em;
    text-decoration-color: var(--color-brand-opacity);
}

.faq-block__answer ul li {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
    position: relative;
}

.faq-block__answer ul li:before {
    content: '';
    display: block;
    position: absolute;
    top: .5rem;
    left: 0;
    background: var(--color-brand);
    border-radius: 50%;
    width: .5rem;
    height: .5rem;
}

.swiper-slide-visible {
    overflow: hidden;
    z-index: 1;
}

.swiper-slide-prev {
    z-index: 1;
}

.swiper-slide-next {
    z-index: 0;
}

.swiper-slide.swiper-slide-active h1,
.swiper-slide.swiper-slide-active p.paragraph,
.swiper-slide.swiper-slide-active h1 span.emphasis,
.swiper-slide.swiper-slide-active h1+p {
    transform: translate3d(0, 0, 0);
    opacity: 1;
}

.wlcm-slider__more {
    display: inline-flex;
    align-items: center;
    opacity: 0;
    margin-top: 1rem;
    transition: .25s opacity 1s ease;
}

.a-word {
    overflow: hidden;
    display: inline-block;
    line-height: 1;
}

.a-word__inner {
    display: inline-block;
    line-height: 1;
    opacity: 0;
    transform: translateY(100%);
    transition: 1s transform .25s ease, 1s opacity .25s ease;
}

.a-price {
    display: block;
    transform: translateY(100%);
}

.swiper-slide-active .a-price {
    transform: translateY(0);
}

.swiper-slide-active .a-word__inner {
    transform: translateY(0);
    opacity: 1;
}

.swiper-slide-active .wlcm-slider__more {
    opacity: 1;
}

.howbuy-block__intro {
    padding-bottom: 4rem;
}

.howbuy-block__intro p {
    max-width: 30em;
    margin-left: auto;
    margin-right: auto;
}

.howbuy-block__main {
    padding-top: 4rem;
}

.child-content__title {
    font-size: 2rem;
    line-height: 1.1;
    margin-bottom: 2rem;
    text-align: center;
}

.address-list {
    max-width: 40rem;
    margin: auto;
}

.address-list__item {
    margin-bottom: 2.5rem;
    margin-top:2rem;
}

.address-list__row {
    margin: 0;
}

.address-list__col {
    padding: 0;
    background: var(--color-bg-gray);
    position: relative;
}

.address-list__item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.address-list__screen,
.address-list__btn {
    width: 100%;
    display: block;
}

.address-list__map {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    visibility: hidden;
    z-index: -2;
}

.address-list__col.is-show .address-list__map {
    visibility: visible;
    z-index: 10;
}

.address-header__title {
    font-size: 1.75rem;
    line-height: 1.1;
    margin: 0 0 1rem;
}

.address-header__info p {
    margin-bottom: .5rem;
}

.address-header__info {
    margin-bottom: 1rem;
}

@keyframes fillWidth {
    form {
        width: 0;
    }
    to {
        width: 100%;
    }
}

.contacts-page__title {
    margin-bottom: 2rem;
}

.contacts-page__item {
    margin-bottom: 2rem;
}

.contacts-page__label {
    margin-bottom: .5rem;
}

.contacts-page__phone,
.contacts-page__email {
    font-size: 1.75rem;
    line-height: 1;
    font-weight: bold;
}

.contacts-page .social-link--telegram {
    color: #0088cc;
}

.contacts-page .social-link--viber {
    color: #59267c;
}

.contacts-page .social-link--whatsapp {
    color: #008a7c;
}

.contacts-page .social-link--instagram {
    color: #fd5949;
}

.contacts-page .social-link--youtube {
    color: #ff0000;
}

.contacts-page__link {
    color: var(--color-base);
}

.contacts__info {
    text-align: center;
    font-weight: bold;
}

.contacts__info p {
    margin-bottom: 1.5rem;
    font-size: 1.25rem;
}

.modal-open {
    overflow: hidden
}

.modal-open .wrap_e104 {
    z-index: 1000;
}

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0
}

.modal-dialog {
    position: relative;
    width: auto;
    pointer-events: none;
    box-shadow: 0px 1.5rem 2rem rgba(49, 63, 80, 0.48);
}

.modal.fade .modal-dialog {
    transition: transform 0.3s ease-out, opacity 0.3s ease-out;
    transform: translate(0, -15rem) scale(.8);
    opacity: 0;
}

.modal.show--loaded .modal-dialog {
    transform: translate(0) scale(1);
    opacity: 1;
}

.modal.modal-static .modal-dialog {
    transform: scale(1.02)
}

.modal-dialog-scrollable {
    display: flex;
    max-height: calc(100% - 1rem)
}

.modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 1rem);
    overflow: hidden
}

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
    flex-shrink: 0
}

.modal-dialog-scrollable .modal-body {
    overflow-y: auto
}

.modal-dialog-centered {
    display: flex;
    align-items: center;
    min-height: calc(100% - 1rem)
}

.modal-dialog-centered::before {
    display: block;
    height: calc(100vh - 1rem);
    height: min-content;
    content: ""
}

.modal-dialog-centered.modal-dialog-scrollable {
    flex-direction: column;
    justify-content: center;
    height: 100%
}

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
    max-height: none
}

.modal-dialog-centered.modal-dialog-scrollable::before {
    content: none
}

.modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #ffffff;
    background-clip: padding-box;
    border: 0 solid rgba(26, 26, 26, 0.2);
    outline: 0
}

.modal-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1040;
    width: 100vw;
    height: 100vh;
    background: rgba(49, 63, 80, .4);
    transition: opacity 0.3s ease-out
}

.modal-backdrop.fade {
    opacity: 0
}

.modal-backdrop.show {
    opacity: 1
}

.modal-title {
    margin-bottom: 0;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem
}

.modal-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    padding: 0.75rem;
    border-top: 0 solid #dee2e6;
    border-bottom-right-radius: 0.3rem;
    border-bottom-left-radius: 0.3rem
}

.modal-footer>* {
    margin: 0.25rem
}

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll
}

.modal__close {
    opacity: .6;
    position: absolute;
    top: .25rem;
    right: .25rem;
    z-index: 10;
}

.modal__close:hover {
    opacity: 1;
}

.modal__close svg {
    width: 2rem;
    height: 2rem;
}

.modal-brand .modal__close {
    color: var(--color-bg);
}

.modal-body form {
    display: block;
    max-width: 30rem;
    margin: 1rem auto;
}

.form-view__inner {
    text-align: center;
}

.modal-brand .form-view__inner {
    overflow: hidden;
    position: relative;
    background: var(--color-brand);
    color: var(--color-bg);
    text-align: center;
    padding: 1rem;
    margin: -1rem -1rem 2rem;
}

.modal-brand .form-view__inner:before,
.modal-brand .form-view__inner:after {
    content: '';
    position: absolute;
    z-index: 3;
    pointer-events: none;
    width: 15rem;
    height: 15rem;
    background: url(../img/bg2.svg) no-repeat 50% 50%;
    background-size: contain;
    opacity: .6;
}

.modal-brand .form-view__inner:before {
    top: -7rem;
    left: -6rem;
}

.modal-brand .form-view__inner:after {
    bottom: -8rem;
    right: -7rem;
}

.form-view__msg .close {
    display: none;
}

.form-view__title {
    font-size: 2rem;
    line-height: 1.1;
    text-wrap: balance;
    max-width:60rem;
    margin:auto auto 1rem;
}

.form-view__desc {
    max-width: 30rem;
    margin: auto;
}

.success-text {
    max-width: 30rem;
    margin: auto;
}

.success-text h1 {
    font-size: 1.5rem;
    line-height: 1.2;
}

.form-view__msg {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 3;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--color-bg);
    font-weight: bold;
    color: var(--color-brand);
}

.modal-brand .form-view__msg {
    background: var(--color-brand);
    color: var(--color-bg);
}

.modal-video .modal-body {
    padding: 0!important;
}

.modal-video iframe {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
}

.modal-video:before,
.modal-video:after {
    display: none;
}

.modal-video .modal__close {
    background: rgba(255, 255, 255, .8);
    border-radius: 1rem;
    padding: .5rem;
}

.cat-menu-list .row {
    margin: 0;
}

.cat-menu-list .col-xs-6,
.cat-menu-list .col-xs-12 {
    padding: 0;
}

.cat-menu-list__item {
    overflow: hidden;
    display: block;
    position: relative;
    color: var(--color-white);
}

.cat-menu-list__item:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    transition: opacity .5s ease;
    opacity: .8;
    background: linear-gradient(to top, var(--color-base) 0, transparent 100%);
    width: 100%;
    height: 100%;
    z-index: 1;
}

.cat-menu-header {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
    background: var(--color-base);
    color: var(--color-white);
}

.cat-menu-header h1 {
    font-size: 2rem;
    line-height: 1.1;
    margin: 2rem 0;
}

.cat-menu-header__inner {
    display: block;
    max-width: 40rem;
    padding: 1rem;
}

.cat-menu-header:before {
    content: '';
    pointer-events: none;
    opacity: .7;
    display: block;
    width: 6rem;
    height: 6rem;
    position: absolute;
    transform: rotate(-100deg);
    top: -1rem;
    right: -2rem;
    background: url(https://bani-ka.ru/templates/banika/img/cone.webp) no-repeat 50% 50%;
    background-size: contain;
}

.cat-menu-header:after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 3;
    pointer-events: none;
    width: 45%;
    height: 45%;
    opacity: .2;
    background: url(https://bani-ka.ru/templates/banika/img/bg2.svg) no-repeat 0 0;
    background-size: 150% 150%;
}

.cat-menu-list__caption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 2;
    padding: 1.5rem 1rem;
}

.cat-menu-list__title {
    display: block;
    font-weight: bold;
    font-size: 1.25rem;
    line-height: 1.2;
    bottom: 100%;
    left: 2rem;
}

.cat-menu-list__desc {
    max-width: 25rem;
    margin-top: 1rem;
    display: none;
}

.cat-menu-list__image {
    display: block;
    width: 100%;
    object-fit: cover;
}

@media screen and (max-width:47em) {
    .w-slider .container-fluid{padding:0;}
    .w-slider .slider-pagination{position:absolute;bottom:0; left:0; z-index: 1; margin:.25rem;}
    .wlcm-slider__image{min-height:70vh;}
    .wlcm-slider__bottom{bottom:4rem;}
    .w-slider .swiper-pagination-bullet::after{background:#fff;}
    .cat-menu-header{min-height:20rem;}
    .cat-menu-list .col-xs-12 .cat-menu-list__image{min-height:15rem;}
    .cat-menu-list .col-xs-12 .cat-menu-list__title{font-size:2rem;}

}
@media screen and (min-width:47em) {
    .content-categories .tabs-list {
        flex-wrap: wrap;
        overflow: visible;
    }
    .content-categories .tabs-list__item {
        margin-bottom: .5rem;
    }
    .alert__btn {
        width: auto;
        margin: 0;
        padding: 1rem 2rem;
    }
    .page-intro__title {
        font-size: 2rem;
        line-height: 1;
    }
    .pages_item h2 {
        font-size: 2rem;
        margin: 3rem 0 1rem;
    }
    .pages_item h3 {
        font-size: 1.5rem;
        line-height: 1;
    }
    .pages_item ul,
    .page-content ul {
        margin-bottom: 0;
    }
    .pages_item ul>li,
    .page-content ul>li {
        margin-bottom: 1rem;
        padding-left: 1.5rem;
        position: relative;
    }
    .pages_item ul>li:before,
    .page-content ul>li:before {
        content: '';
        display: block;
        position: absolute;
        top: 10px;
        left: 2px;
        width: 6px;
        height: 6px;
        border-radius: 4px;
        background: var(--color-bg-accent);
    }
    .steps-list>li:before{display:none!important;}
    .pages-item__intro {
        margin: 0;
    }
    .pages-item__intro .wrapper {
        padding: 1rem 0;
    }
    .pages-item__intro .btn {
        display: inline-block;
        padding-left: 2rem;
        padding-right: 2rem;
    }
    .pages_item .ft_html,
    .pages_title {
        max-width: 60rem;
        margin-left: auto;
        margin-right: auto;
    }
    .content_item .ft_html {
        max-width: none;
    }
    .about-image img {
        display: block;
        position: relative;
        top: 1.25rem;
    }
    .pages-item__row {
        margin-bottom: 2rem;
    }
    .banika-list li:before {
        display: none!important;
    }
    .cat-menu-header:before {
        width: 10rem;
        height: 10rem;
    }
    .app-logo img {
        width: 7rem;
    }
    .btn-play {
        width: 6rem;
        height: 6rem;
    }
    .pagebar__link {
        width: 3rem;
        height: 3rem;
        font-size: 1.125rem;
    }
    .category-title {
        font-size: 4rem;
        margin-top: 2rem;
        margin-bottom: 2rem;
    }
    .widget {
        padding: 3rem 0;
    }
    .widget__title {
        font-size: 3rem;
        margin: 3rem auto;
        max-width: 40rem;
    }
    .w-callback {
        width: 100%;
        max-width: 80rem;
        margin: 0 auto;
        padding: 0;
    }
    .w-callback .container-fluid {
        padding: 2rem;
        width: auto;
        margin: auto 4rem;
        border: 1rem solid var(--color-gray);
    }
    .w-callback .widget__title {
        margin-top: 2rem;
    }
    .w-steps__wrap {
        width: 100%;
        overflow-x: visible;
        margin: 1rem auto;
    }
    .w-steps__intro {
        margin: -2rem auto 3rem;
    }
    .w-steps__info {
        text-align: center;
    }
    .w-steps__list h3 {
        min-width: none;
    }
    .w-steps__list h3 {
        font-size: 1.6rem;
        min-height: 5rem;
    }
    .w-steps__info {
        margin-top: 3rem;
    }
    .w-steps__info li {
        position: static;
        padding-left: 0;
    }
    .w-steps__info li:before {
        position: static;
    }
    .w-features__list {
        margin: 4rem auto 2rem;
    }
    .w-gallery-next {
        right: 24%;
    }
    .w-gallery-prev {
        left: 24%;
    }
    .w-gallery__title {
        font-size: 1.75rem;
        margin-top: 2rem;
        margin-bottom: 1rem;
    }
    .banika-style,
    .modal-primary {
        position: relative;
    }
    .banika-style::before,
    .banika-style::after,
    .modal-primary::before,
    .modal-primary::after {
        content: '';
        pointer-events: none;
        display: block;
        width: 14rem;
        height: 11.25rem;
        position: absolute;
        background: url(../img/cone.webp) no-repeat 50% 50%;
        background-size: contain;
    }
    .banika-style::before,
    .modal-primary::before {
        right: 0;
        top: 0;
        transform: rotate(0);
        background-position: 80px 50%;
    }
    .banika-style::after,
    .modal-primary::after {
        left: -80px;
        bottom: -80px;
        transform: rotate(35deg) scale(.8);
    }
    .modal-primary::before {
        z-index: 5;
        top: 20%;
        background-position: 0 50%;
        right: -6rem
    }
    .modal-video:before,
    .modal-video:after {
        display: none;
    }
    .feature-slider__item {
        padding: 4rem;
    }
    .feature-slider__item h3 {
        font-size: 2.5rem;
        line-height: 1;
        margin: 1rem auto 2rem;
    }
    .feature-slider__item p {
        font-size: 1.5rem;
    }
    .feature-slider__list:before,
    .feature-slider__list:after {
        width: 15rem;
        height: 15rem;
    }
    .feature-slider__list:before {
        top: -5rem;
        left: -5rem;
    }
    .feature-slider__list:after {
        bottom: -5rem;
        right: 0;
    }
    .feature-slider__body:after,
    .feature-slider__body:before {
        background-position: 50% 50%;
        z-index: 9;
    }
    .feature-slider__body:before {
        right: -3rem;
        top: -2rem;
    }
    .feature-slider__body:after {
        left: -2rem;
        bottom: -3rem;
    }
    .feature-slider-next {
        right: -6rem;
        color: var(--color-brand)
    }
    .feature-slider-prev {
        left: -6rem;
        color: var(--color-brand)
    }
    .w-slider__slider {
        margin: 0;
    }
    .w-slider__info {
        display: flex;
        align-items: center;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        margin-top: 0;
        padding: 5rem;
        background: transparent;
    }
    .w-slider__title {
        font-size: 3rem;
        line-height: 1;
    }
    .w-slider__text {
        font-size: 1.25rem;
        margin: 2rem 0;
    }
    .address-list {
        max-width: 80rem;
        margin: auto;
        margin-top: 4rem;
    }
    .address-list__item {
        margin-bottom: 4rem;
    }
    .address-list__btn {
        width: 16rem;
        position: absolute;
        bottom: 1rem;
        left: 0;
        right: 0;
        margin: auto;
    }
    .address-header__title {
        font-size: 2rem;
    }
    .modal-dialog {
        max-width: 80rem;
        margin: 1.75rem auto
    }
    .modal-dialog-scrollable {
        max-height: calc(100% - 3.5rem)
    }
    .modal-dialog-scrollable .modal-content {
        max-height: calc(100vh - 3.5rem)
    }
    .modal-dialog-centered {
        min-height: calc(100% - 3.5rem)
    }
    .modal-dialog-centered::before {
        height: calc(100vh - 3.5rem);
        height: min-content
    }
    .modal-sm {
        max-width: 20rem
    }
    .modal-body {
        padding: 2rem;
    }
    .modal-brand .form-view__inner {
        padding: 2rem;
        margin: -2rem -2rem 2rem;
    }
    .form-view__title {
        font-size: 3rem;
    }
    .form-view__desc {
        font-size: 1.25rem;
    }
    .success-text h1 {
        font-size: 2rem;
    }
    .success-text p {
        font-size: 1.25rem;
    }
    .modal-brand .form-view__inner:before,
    .modal-brand .form-view__inner:after {
        opacity: .6;
        width: 20rem;
        height: 20rem;
    }
    .modal-brand .form-view__inner:before {
        top: -8rem;
        left: -10rem;
    }
    .modal-brand .form-view__inner:after {
        bottom: -8rem;
        right: -10rem;
    }
    .city-link {
        display: inline-flex;
        align-items: center;
    }
    .city-link svg {
        width: 1rem;
        height: 1rem;
        margin-right: .25rem;
    }
    .w-stages .widget_text_block {
        overflow: visible;
    }
    .w-stages ul,
    .w-stages ol {
        flex-wrap: wrap;
        margin: 0 -1rem;
    }
    .w-stages li {
        width: 50%;
        flex-basis: 50%;
        position: relative;
        margin: 2rem 0;
        padding: 1rem 2rem;
    }
    .w-stages li:after {
        content: '';
        display: block;
        position: absolute;
        top: 2rem;
        left: 100%;
        margin-left: -1.5rem;
        width: 3rem;
        height: 1.5rem;
        background-repeat: no-repeat;
        background-image: url("data:image/svg+xml,%3Csvg width='50' height='24' viewBox='0 0 50 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M49.0607 13.0607C49.6464 12.4749 49.6464 11.5251 49.0607 10.9393L39.5147 1.3934C38.9289 0.807611 37.9792 0.807611 37.3934 1.3934C36.8076 1.97919 36.8076 2.92893 37.3934 3.51472L45.8787 12L37.3934 20.4853C36.8076 21.0711 36.8076 22.0208 37.3934 22.6066C37.9792 23.1924 38.9289 23.1924 39.5147 22.6066L49.0607 13.0607ZM0 13.5H48V10.5H0V13.5Z' fill='%23D2D3DA'/%3E%3C/svg%3E%0A");
    }
    .w-stages li:nth-child(2n):after {
        display: none;
    }
    .reviews-list__col:nth-child(2) .review-item {
        margin-top: 5rem;
    }
    .payment-promo {
        margin: 2rem auto 4rem;
        padding: 1rem;
    }
    .payment-promo__caption {
        padding: 0;
        padding-left: 3rem;
    }
    .faq-list__item {
        margin-bottom: 3rem;
    }
    .faq-block__question {
        font-size: 1.2rem;
        line-height: 1.3;
        padding: 1.5rem 3rem 1.5rem 0;
    }
    .faq-item__title {
        font-size: 2em;
        margin-bottom: 1rem;
    }
    .app-sort__menu .col {
        padding: .5rem;
    }
    .app-sort__link--price:after,
    .app-sort__link--area:after,
    .app-sort__link--price_desc:after,
    .app-sort__link--area_desc:after {
        left: .25rem;
    }
    .wlcm-slider__title {
        font-size: 5vw;
        max-width: 35vw
    }
    .wlcm-slider__image {
        padding: 30%;
    }
    .wlcm-slider__bottom {
        bottom: 2rem;
        right: 2rem;
    }
}

@media screen and (max-width:47em) {
    .wlcm-slider__more {
        position: absolute;
        right: 1rem;
        bottom: 0;
    }
    .wlcm-slider__more svg {
        width: 1.5rem;
        height: 1.5rem;
    }
    .slider__item--info .wlcm-slider__bottom {
        display: flex;
        align-items: center;
    }
    .slider__item--info .wlcm-slider__desc {
        margin: 0;
    }
    .slider__item--info .wlcm-slider__more {
        margin: 0;
        margin-right: 1.5rem;
        position: static;
    }
    .cat-menu-list .container-fluid {
        padding: 0;
    }
}

@media (hover:hover) and (min-width:63em) {
    .cat-menu-list__caption {
        padding-top: 0;
        transform: translateY(100%);
        transition: transform .5s ease;
    }
    .cat-menu-list__title {
        position: absolute;
        padding-bottom: 2rem;
    }
    .cat-menu-list__desc {
        display: block;
        margin-top: -1rem;
        opacity: 0;
        transform: translateY(20%);
        transition: all 1s ease;
    }
    .cat-menu-list__item:hover .cat-menu-list__desc {
        opacity: 1;
        transform: translateY(0);
    }
    .cat-menu-list__item:hover .cat-menu-list__caption {
        transform: translateY(0);
    }
    .cat-menu-list__item:hover:after {
        opacity: 1;
    }
}

@media (prefers-reduced-motion:reduce) {
    .modal.fade .modal-dialog {
        transition: none
    }
}

@media screen and (min-width:63em) {
    .wlcm-slider__image {
        width: 100%;
        padding: 23%;
    }
    .page-content h2 {
        font-size: 3rem;
        line-height: 1;
        margin: 4rem auto 2rem;
    }
    .page-content h3 {
        font-size: 2rem;
        line-height: 1.2;
    }
    .page-intro__caption {
        padding-top: 0;
        background: transparent;
    }
    .page-intro__title {
        font-size: 3.4rem;
        line-height: 1;
    }
    .page-content p,
    .page-content ul,
    .page-content blockquote {
        margin-top: 1rem;
        margin-bottom: 2rem;
    }
    .page-content--sertifikaty a {
        margin-bottom: 2rem;
    }
    .banika-list h3 {
        line-height: 1.3;
        font-size: 1.6rem;
    }
    .employee-item {
        margin-bottom: 3rem;
        padding-bottom: 0;
    }
    .employee-item h2 {
        margin: 0;
        font-size: 2rem;
        margin-top: 1rem;
    }
    .employee-item h3 {
        font-size: 1.25rem;
        margin: 1rem 0 2rem;
    }
    .employee-item__content {
        padding: 2rem 3rem;
    }
    .employee-item__image {
        height: 100%;
        aspect-ratio: auto;
    }
    .widget {
        padding: 4rem 0;
    }
    .feature-slider__item {
        padding: 6rem;
    }
    .reviews-list__item {
        max-width: 80%;
    }
    .modal-lg,
    .modal-xl {
        max-width: 50rem
    }
    .brand-list__item {
        max-width: 25%;
        flex-basis: 25%;
        text-align: center;
        margin-bottom: 2rem;
        margin-top: 2rem;
    }
    .logo-xs {
        width: 4rem;
    }
    .logo-sm {
        width: 7rem;
    }
    .logo-md {
        width: 12rem;
    }
    .logo-lg {
        width: 15rem;
    }
    .child-content__title {
        font-size: 3rem;
        margin-bottom: 3rem
    }
    .w-gallery__place {
        max-width: 70%;
        margin-left: auto;
        margin-right: auto;
    }
    .banika-style::before,
    .banika-style::after {
        content: '';
        pointer-events: none;
        display: block;
        width: 14rem;
        height: 11.25rem;
        position: absolute;
        background: url(../img/cone.webp) no-repeat 50% 50%;
        background-size: contain;
    }
    .banika-style::before {
        right: 0;
        top: 0;
        transform: rotate(0);
        background-position: 50% 50%;
    }
    .banika-style::after {
        left: 0;
        bottom: 0;
        transform: rotate(35deg) scale(.8);
    }
    .contacts-page {
        padding-bottom: 3rem!important;
    }
    .contacts-page__title {
        margin-top: -2rem;
        margin-bottom: 4rem;
    }
    .w-video__inner:before {
        top: -5rem;
        right: -5rem;
        z-index: 3;
    }
    .w-video__inner:after {
        bottom: 0;
        left: -8rem;
        z-index: -1;
        transform: rotate(45deg);
    }
    .w-stages strong {
        font-size: 1.25rem;
        margin: .5rem 0;
    }
    .w-stages li {
        width: 33.33%;
        flex-basis: 33.33%;
        padding: 1rem 3rem;
    }
    .w-stages li:nth-child(2n):after {
        display: block;
    }
    .w-stages li:nth-child(3n):after {
        display: none;
    }
    .address-list__item img {
        height: 18rem;
    }
    .address-header {
        margin-bottom: 1rem;
    }
    .address-header__info {
        margin-bottom: 0;
    }
    .address-header__title {
        font-size: 2.75rem;
        line-height: 1.2;
        margin: 0 0 1rem;
    }
    .modal-title {
        font-size: 2rem;
    }
    .payment-promo__title {
        font-size: 2.25rem;
    }
    .tabs__links {
        justify-content: center;
    }
}

@media screen and (min-width:74em) {
    .container-fluid {
        padding-left: 4rem;
        padding-right: 4rem;
    }
    .w-slider__info {
        max-width: 50%;
        margin-left: 10%;
    }
    .payment-promo__title {
        font-size: 2.75rem;
    }
    .faq-block__question {
        font-size: 1.5rem;
    }
    .faq-block__answer {
        font-size: 1.25rem;
    }
    .cat-menu-list__caption {
        padding: 3rem 2rem;
    }
    .cat-menu-header__inner {
        padding: 3rem;
    }
    .cat-menu-list__title {
        font-size: 2rem;
        width: 10rem;
        line-height: 1;
    }
    .page-content h2 {
        font-size: 3rem;
        line-height: 1;
    }
    .page-content h3 {
        font-size: 3rem;
        line-height: 1;
    }
    .banika-list h3 {
        line-height: 1.3;
        font-size: 1.6rem;
    }
    .employee-item {
        margin-bottom: 4rem;
    }
    .employee-item h2 {
        margin: 0;
        margin-top: 1rem;
        font-size: 3rem;
    }
    .employee-item h3 {
        font-size: 1.25rem;
        margin: 1rem 0 2rem;
    }
}

@media screen and (min-width:80em) {
    .wlcm-slider__top {
        top: 5vw;
        left: 5vw;
    }
    .wlcm-slider__info {
        font-size: 2rem;
        margin-top: 2rem;
    }
    .wlcm-slider__bottom {
        bottom: 5vw;
        right: 5vw;
        max-width: 20vw;
    }
    .wlcm-slider__desc {
        font-size: 1.25rem;
    }
    .wlcm-slider__price {
        font-size: 2rem;
    }
}

@media screen and (min-width:100em) {
    .cat-menu-header h1 {
        font-size: 4vw;
        line-height: 1;
    }
    .cat-menu-list__caption {
        padding: 2.5rem;
    }
    .cat-menu-list__title {
        left: 2.5rem;
        font-size: 1.75vw;
    }
    .cat-menu-header__inner {
        max-width: 80%;
    }
}

@media screen and (min-width:101em) {
    html {
        font-size: 18px;
    }
    .modal-xl {
        max-width: 120rem
    }
    .w-slider__slider {
        margin-top: -5rem;
    }
    .content-block {
        font-size: 1.125rem;
    }
}

@media (min-aspect-ratio:2/1) and (min-width:120em) {
    .w-slider__slider {
        width: 1600px;
        margin: -4rem auto 0;
    }
}

.link {
    transition: color .25s ease;
}