@layer reset {

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

    html {
        text-size-adjust: 100%;
        scroll-behavior: smooth;
        color-scheme: light dark
    }

    body {
        font-family: system-ui, Avenir, Helvetica, Arial, sans-serif;
        line-height: 1.5;
        min-height: 100vh;
        -webkit-font-smoothing: antialiased
    }

    h1,
    h2,
    h3,
    h4,
    h5 {
        font-weight: 400;
        margin: 0;
        padding: 0
    }

    p {
        margin: 0;
        padding: 0
    }

    img,
    picture,
    video,
    canvas,
    svg {
        display: block;
        max-width: 100%;
        height: auto
    }

    input,
    button,
    textarea,
    select {
        font: inherit;
        color: inherit
    }

    button,
    [role=button] {
        cursor: pointer;
        background: none;
        border: none
    }

    ul,
    ol {
        list-style: none
    }

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

    :focus-visible {
        outline: 2px solid currentColor;
        outline-offset: 2px
    }

    :where(input[type=checkbox], input[type=radio]) {
        accent-color: currentColor
    }

    @media(prefers-reduced-motion:reduce) {
        html {
            scroll-behavior: auto
        }

        *,
        *:before,
        *:after {
            animation-duration: .01ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: .01ms !important;
            scroll-behavior: auto !important
        }
    }

    @media print {
        body {
            background: none !important;
            color: #000 !important
        }

        a[href]:after {
            content: " (" attr(href) ")"
        }
    }

    address {
        font-style: normal
    }
}

@font-face {
    font-family: Forum;
    src: url(fonts/forum.woff2) format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Manrope;
    src: url(fonts/manrope-regular.woff2) format("woff2");
    font-weight: 400;
    font-display: swap
}

@font-face {
    font-family: ManropeMedium;
    src: url(fonts/manrope-medium.woff2) format("woff2")
}

:root {
    --font-title: "Forum", serif;
    --font-body: "Manrope", sans-serif;
    --font-body-medium: "ManropeMedium", sans-serif;
    --text-12: .75rem/1.33 var(--font-body);
    --text-14: .875rem/1.57 var(--font-body);
    --text-16: 1rem/1.5 var(--font-body);
    --text-16-medium: 1rem/1.5 var(--font-body-medium);
    --text-18: 1.125rem/1.55 var(--font-body);
    --text-18-medium: 1.125rem/1.55 var(--font-body-medium);
    --text-22-medium: 1.375rem/1.36 var(--font-body-medium);
    --text-24-medium: 1.5rem/1.33 var(--font-body-medium);
    --text-32-medium: 2rem/1.06 var(--font-body-medium);
    --text-42-medium: 2.625rem/1.9 var(--font-body-medium);
    --text-22-title: 1.375rem/1.18 var(--font-title);
    --text-26-title: 1.625rem/1.3 var(--font-title);
    --text-32-title: 2rem/1.25 var(--font-title);
    --text-44-title: 2.75rem/1.18 var(--font-title);
    --text-72-title: 4.5rem/1.11 var(--font-title);
    --main-green-p: 50, 61, 45;
    --main-swampy-p: 106, 107, 89;
    --main-orange-p: 221, 127, 69;
    --main-yellow-light-p: 239, 237, 225;
    --main-black-p: 27, 27, 27;
    --gray-dark-p: 105, 125, 124;
    --gray-p: 159, 168, 164;
    --beige-p: 205, 199, 192;
    --rouse-p: 230, 222, 218;
    --white-p: 255, 255, 255;
    --main-green-color: rgba(50, 61, 45, 1);
    --main-swampy-color: rgba(106, 107, 89, 1);
    --main-orange-color: rgba(221, 127, 69, 1);
    --main-yellow-light-color: rgba(239, 237, 225, 1);
    --main-black-color: rgba(27, 27, 27, 1);
    --gray-dark-color: rgba(105, 125, 124, 1);
    --gray-color: rgba(159, 168, 164, 1);
    --beige-color: rgba(205, 199, 192, 1);
    --rouse-color: rgba(230, 222, 218, 1);
    --white-color: rgba(255, 255, 255, 1)
}

@layer base {
    body {
        font: var(--text-18)
    }

    .container {
        width: calc(100vw - 2rem);
        max-width: 80rem;
        margin: 0 auto
    }

    .page-pretitle {
        font: var(--text-18);
        text-transform: uppercase
    }

    .page-title {
        font: var(--text-44-title);
        text-transform: uppercase
    }

    @media(min-width:1024px) {
        .page-title {
            font: var(--text-72-title)
        }
    }

    .page-description {
        font: var(--text-16)
    }

    .main-btn {
        display: block;
        border-radius: .5rem;
        font: var(--text-16);
        padding: .875rem 2rem;
        text-align: center;
        background: var(--main-orange-color);
        color: var(--white-color);
        width: fit-content
    }

    .main-btn:hover {
        opacity: .95
    }

    .main-btn--transparent-green {
        color: var(--main-green-color);
        border: 1px solid var(--main-green-color);
        background: transparent
    }

    .page:not(.page-template) {
        background: var(--main-yellow-light-color);
        color: var(--main-black-color);
        padding-bottom: 2rem
    }

    @media(min-width:1024px) {
        .page:not(.page-template) {
            padding-bottom: 4rem
        }
    }

    .page.gallery {
        padding-bottom: 0
    }

    .page h1 {
        margin: 1rem 0;
        color: var(--main-green-color)
    }

    .promo__grid {
        display: grid;
        gap: 1.5rem
    }

    @media(min-width:1024px) {
        .promo__grid {
            grid-template-columns: repeat(2, 1fr);
            row-gap: 4rem
        }
    }

    .news-grid {
        display: grid;
        gap: 2rem
    }

    @media(min-width:1024px) {
        .news-grid {
            grid-template-columns: repeat(3, 1fr);
            gap: 1.5rem
        }
    }

    .wp-block-button__link {
        padding: .875rem 2rem !important;
        border-radius: .5rem !important;
        background: var(--main-orange-color) !important;
        font: var(--text-16) !important
    }

    .swiper::-webkit-scrollbar {
        display: none
    }
}

@layer components {
    .page-header {
        color: var(--white-color);
        text-transform: uppercase;
        padding-top: .75rem;
        padding-bottom: .75rem
    }

    .page-header__container {
        display: flex;
        align-items: center;
        justify-content: space-between
    }

    .page-header__navigation {
        margin-left: auto;
        display: none;
        font: var(--text-14)
    }

    @media(min-width:1024px) {
        .page-header__navigation {
            display: flex
        }
    }

    .page-header__socials {
        margin-left: 1.5rem
    }

    .page-header__navigation.wp-block-navigation__container {
        gap: 1.5rem
    }

    .page-header--main {
        position: absolute;
        width: 100%;
        left: 0;
        top: 0;
        z-index: 100
    }

    .page-header--main.active {
        background: var(--main-yellow-light-color);
        color: var(--main-black-color)
    }

    .page-header--main.active .socials--header {
        color: var(--white-color)
    }

    .page-header--inner {
        background: var(--main-yellow-light-color);
        color: var(--main-black-color);
        border-bottom: 0
    }

    .page-header--inner .socials--header {
        color: var(--white-color)
    }

    @media(min-width:1024px) {
        .page-header__mobile-toggle {
            display: none
        }
    }

    .page-header__mobile-icon {
        width: 1.5rem;
        height: 1.5rem;
        flex-shrink: 0
    }
}

.navigation {
    display: none;
    gap: 1rem
}

@media(min-width:1024px) {
    .navigation {
        gap: 1.5rem;
        display: flex
    }
}

.navigation__link {
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media(max-width:1024px) {
    .navigation__link:has(.navigation__link-icon) {
        width: 100%
    }
}

.navigation__link:hover {
    color: var(--main-orange-color)
}

@media(min-width:1024px) {
    .navigation__link-icon {
        display: none
    }
}

.socials {
    display: flex;
    align-items: center;
    gap: .75rem
}

.socials__link {
    display: grid;
    place-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%
}

.socials__link:hover {
    opacity: .95
}

.socials--header {
    display: none
}

@media(min-width:1024px) {
    .socials--header {
        display: flex
    }
}

.socials--header .socials__link {
    background-color: rgba(var(--main-green-p), .5)
}

.socials--footer .socials__link {
    background-color: var(--white-color)
}

.socials--footer .socials__link svg {
    color: var(--main-green-color)
}

.socials--mobile-menu .socials__link {
    background-color: rgba(var(--main-swampy-p), .5)
}

.socials--mobile-menu .socials__link svg {
    color: var(--white-color)
}

@layer components {
    .slider-btn {
        display: grid;
        place-content: center;
        color: var(--main-green-color);
        border: 1px solid;
        border-radius: 6.25rem;
        width: 2.25rem;
        height: 2.25rem;
        transition: width .3s
    }

    .slider-btn:hover {
        width: 3.25rem
    }

    .slider-btn__icon {
        width: 1.25rem;
        height: 1.25rem;
        aspect-ratio: 1/1
    }
}

.accordion__content {
    max-height: 0;
    overflow: hidden;
    transition: max-height .3s ease-out
}

.accordion__toggle svg {
    flex-shrink: 0;
    transition: transform .4s
}

.accordion__toggle.active svg {
    flex-shrink: 0;
    transform: rotate(180deg)
}

.rating-card {
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--beige-color)
}

.rating-card__header {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem
}

.rating-card__avatar {
    width: 3.875rem;
    height: 3.875rem;
    border-radius: 3.875rem;
    overflow: hidden
}

.rating-card__user h3 {
    font: var(--text-18-medium)
}

.rating-card__date {
    font: var(--text-14);
    color: var(--gray-color)
}

.rating-card__stars {
    display: flex;
    margin-bottom: .5rem
}

.rating-card__star path {
    fill: #d9d9d9
}

.rating-card__star.active path {
    fill: #f8cd46
}

.footer {
    padding-top: 2rem;
    background: var(--main-green-color);
    color: var(--white-color);
    font: var(--text-14)
}

.footer__logo svg {
    width: 15.4rem;
    height: 4.38rem
}

@media(min-width:1024px) {
    .footer__inner {
        display: flex;
        justify-content: space-between
    }
}

.footer__column {
    margin-top: 1rem
}

@media(min-width:1024px) {
    .footer__column {
        margin-top: 0
    }
}

.footer__column:first-child {
    margin-top: 2rem
}

@media(min-width:1024px) {
    .footer__column:first-child {
        margin-top: 0
    }
}

.footer__inner,
.footer__contacts {
    border-bottom: 1px solid rgba(var(--white-p), .2);
    padding-bottom: 1rem;
    margin-bottom: 1rem
}

@media(min-width:1024px) {
    .footer__top {
        display: flex;
        gap: 4rem
    }
}

.footer__title {
    text-transform: uppercase;
    font: var(--text-14);
    color: var(--gray-color);
    margin-bottom: 1rem
}

.footer__nav {
    display: flex;
    flex-direction: column;
    gap: .25rem
}

.footer__nav-link {
    display: block
}

.footer__nav-link:hover {
    color: var(--main-orange-color)
}

.footer__contacts-item,
.footer__contacts-scheme {
    display: flex;
    align-items: center;
    gap: .5rem
}

.footer__contacts-item a,
.footer__contacts-scheme a {
    text-decoration: underline
}

.footer__contacts-item a:hover {
    color: var(--main-orange-color)
}

@media(min-width:1024px) {
    .footer__contacts-address {
        width: 35rem
    }
}

.footer__contacts-maps {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: 1.5rem;
    margin-bottom: 1rem
}

@media(min-width:1024px) {
    .footer__contacts-maps {
        flex-direction: row;
        gap: 4rem
    }
}

@media(min-width:1024px) {
    .footer__contacts-scheme {
        margin-left: auto
    }
}

.footer__bottom {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 2rem
}

@media(min-width:1024px) {
    .footer__bottom {
        flex-direction: row;
        justify-content: space-between
    }
}

.footer__bottom a:hover {
    color: var(--main-orange-color)
}

.footer__copyright {
    padding: .5rem 1rem;
    background: linear-gradient(0deg, #ffffff1a 0% 100%), #323d2d;
    color: rgba(var(--white-p), .4)
}

@media(min-width:1024px) {
    .footer__copyright-inner {
        display: flex;
        justify-content: space-between;
        align-items: center
    }
}

.footer__copyright-policy-docs {
    display: flex;
    flex-direction: column;
    gap: .25rem
}

@media(min-width:1240px) {
    .footer__copyright-policy-docs {
        flex-direction: row;
        gap: 2rem
    }
}

.footer__copyright-docs {
    margin-top: .25rem;
    display: flex;
    flex-direction: column;
    gap: .25rem
}

@media(min-width:1240px) {
    .footer__copyright-docs {
        flex-direction: row;
        gap: 2rem
    }
}

.footer__make a {
    text-decoration: underline
}

.breadcrumbs {
    display: flex;
    align-items: center;
    gap: .5rem;
    font: var(--text-14);
    padding: 1rem 0
}

.breadcrumbs__nav {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: flex;
    gap: .5rem
}

.breadcrumbs__current {
    color: var(--gray-color)
}

.breadcrumbs__separator:has(+.breadcrumbs__current) {
    color: var(--gray-color)
}

@media(min-width:1240px) {
    .house-card__layout {
        display: grid;
        gap: 3.5rem;
        grid-template-columns: minmax(0, 1fr) 480px;
        align-items: start
    }
}

.house-card__media {
    margin-left: -1rem;
    margin-right: -1rem;
    position: relative;
    height: 50vw;
    min-height: 15.375rem
}

@media(min-width:1240px) {
    .house-card__media {
        width: 43.25rem;
        height: 30.125rem;
        margin-right: 0;
        width: calc(100% + (80vw - 100%)/2);
        margin-left: calc((80vw - 100%)/-2)
    }
}

@media(min-width:1440px) {
    .house-card__media {
        height: 36vw
    }
}

.house-card__media img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center
}

.house-card__media .swiper {
    height: 100%
}

@media(min-width:1240px) {
    .house-card__slider-pagination.swiper-pagination {
        left: calc(50% - 15rem);
        bottom: 2rem;
        width: auto
    }
}

.house-card__slider-pagination .swiper-pagination-bullet {
    width: 4.375rem;
    height: 6px;
    background: rgba(var(--white-p), .25);
    border-radius: 6px;
    opacity: 1
}

@media(min-width:1024px) {
    .house-card__slider-pagination .swiper-pagination-bullet {
        width: 9.3125rem
    }
}

.house-card__slider-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--main-orange-color)
}

.house-card__slide {
    display: grid !important;
    grid-template-areas: "house-card";
    position: relative
}

.house-card__slide img {
    grid-area: house-card;
    object-fit: cover
}

.house-card__overlay {
    grid-area: house-card;
    height: 100%;
    width: 100%;
    background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #000000a6);
    background-blend-mode: multiply;
    z-index: 10
}

.house-card__content {
    padding: 0 1rem;
    margin-top: 1.5rem
}

@media(min-width:1240px) {
    .house-card__content {
        margin-top: 0;
        padding: 0;
        align-self: center
    }
}

@media(min-width:1240px) {
    .house-card:nth-of-type(2n) .house-card__layout {
        grid-template-columns: 480px minmax(0, 1fr)
    }
}

@media(min-width:1240px) {
    .house-card:nth-of-type(2n) .house-card__content {
        order: -1
    }
}

@media(min-width:1240px) {
    .house-card:nth-of-type(2n) .house-card__media {
        margin-left: 0;
        width: calc(100% + (80vw - 100%)/2);
        margin-right: calc((80vw - 100%)/-2)
    }
}

@media(min-width:1240px) {
    .house-card:nth-of-type(2n) .house-card__slider-pagination.swiper-pagination {
        left: calc(50% - 20rem)
    }
}

.house-card__street {
    font: var(--text-12);
    color: var(--gray-dark-color)
}

.house-card__service {
    padding: 1rem 0;
    display: flex;
    flex-direction: column;
    gap: .25rem
}

.house-card__service-icons {
    display: flex;
    gap: .25rem
}

@media(max-width:1380px) {
    .house-card:nth-of-type(2n) .house-card__service-icons:last-child .house-card__service-icon:first-child:after {
        left: 3rem
    }
}

.house-card__service-icon {
    width: 2rem;
    height: 2rem;
    flex-shrink: 0;
    border-radius: .5rem;
    display: grid;
    place-content: center;
    background: var(--gray-color);
    position: relative
}

.house-card__service-icon:after {
    content: attr(data-name);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translate(-50%);
    margin-bottom: .1rem;
    background: var(--main-black-color);
    color: var(--white-color);
    padding: .5rem;
    border-radius: .5rem;
    font: var(--text-14);
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: all .3s ease;
    pointer-events: none;
    z-index: 10
}

.house-card__service-icon:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translate(-50%);
    margin-bottom: -.6rem;
    border-width: 6px;
    border-style: solid;
    border-color: #1b1b1b transparent transparent transparent;
    opacity: 0;
    visibility: hidden;
    transition: all .3s ease;
    z-index: 10
}

.house-card__service-icon:hover:after,
.house-card__service-icon:hover:before {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%) translateY(-5px)
}

.house-card__service-icon svg {
    width: 1.5rem;
    height: 1.5rem;
    flex-shrink: 0
}

.house-card__service-icon--main {
    background: var(--gray-dark-color)
}

.house-card__pretitle {
    font: var(--text-18-medium);
    text-transform: uppercase;
    color: var(--main-green-color)
}

@media(min-width:1024px) {
    .house-card__pretitle {
        font: var(--text-22-medium)
    }
}

.house-card__title {
    color: var(--main-green-color)
}

.house-card__description {
    margin-top: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--gray-color)
}

@media(min-width:1024px) {
    .house-card__description {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-top: 2rem;
        gap: 2rem;
        padding-bottom: .6rem
    }
}

.house-card__description-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    column-gap: .5rem;
    font: var(--text-18)
}

@media(min-width:1024px) {
    .house-card__description-row {
        flex-shrink: 0
    }
}

@media(min-width:1024px) {
    .house-card__description-row:last-child {
        width: 16.25rem
    }
}

.house-card__description-icon {
    width: 2rem;
    height: 2rem;
    display: grid;
    place-content: center
}

.house-card__description-icon:first-child svg {
    width: 1rem;
    height: 1.0045rem
}

.house-card__description-info {
    font: var(--text-12);
    color: var(--gray-color)
}

.house-card__price {
    display: flex;
    gap: 4rem;
    margin: .62rem 0
}

.house-card__price-description {
    font: var(--text-24-medium)
}

.house-card__cta {
    display: flex;
    flex-direction: column;
    gap: .62rem
}

@media(min-width:1024px) {
    .house-card__cta {
        flex-direction: row
    }
}

.house-card__cta-btn {
    width: 100%
}

@media(min-width:1024px) {
    .house-card__cta-btn:first-child {
        width: fit-content
    }
}

@media(min-width:1024px) {
    .house-card__cta-btn:last-child {
        width: 15.4375rem
    }
}

@media(min-width:1024px) {
    .house-card--relation {
        flex-direction: column
    }
}

.house-card--relation .house-card__media {
    margin-left: 0;
    margin-right: 0
}

@media(min-width:1024px) {
    .house-card--relation .house-card__media {
        width: 25.625rem;
        height: 17.125rem
    }
}

@media(min-width:1024px) {
    .house-card--relation .house-card__content {
        padding: 0
    }
}

.house-card--relation .house-card__cta-btn {
    font: var(--text-16);
    display: flex;
    align-items: center;
    gap: .5rem;
    width: fit-content
}

.house-card--relation .house-card__pretitle {
    font: var(--text-16)
}

.house-card--relation .house-card__title {
    font: var(--text-32-title)
}

.house-card--relation .house-card__description {
    border-bottom: 0
}

@media(min-width:1024px) {
    .house-card--relation .house-card__description {
        margin-top: .62rem;
        padding-bottom: 0
    }
}

.house-card--relation .house-card__price {
    margin: 1.5rem 0
}

.main-icon {
    width: 4.25rem;
    height: 4.25rem;
    border-radius: 6.25rem;
    background: var(--gray-dark-color);
    display: grid;
    place-content: center
}

.main-icon__icon {
    width: 1.5rem;
    height: 1.5rem
}

.tariffs-card {
    padding: 0 1rem
}

@media(min-width:1024px) {
    .tariffs-card {
        padding: 0 2rem
    }
}

.tariffs-card__icon {
    width: 3rem;
    height: 3rem;
    display: grid;
    place-content: center;
    background: var(--gray-dark-color);
    border-radius: .5rem
}

.tariffs-card__icon svg {
    width: 1.5rem;
    height: 1.5rem
}

.tariffs-card__title {
    font: var(--text-24-medium);
    margin: 1.5rem 0
}

@media(min-width:1024px) {
    .tariffs-card__title {
        text-wrap: balance;
        width: 21rem
    }
}

.tariffs-card__list {
    display: flex;
    flex-direction: column;
    gap: .5rem
}

.tariffs-card__item {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    font: var(--text-18)
}

.tariffs-card__check {
    width: 1.25rem;
    height: 1.25rem;
    flex-shrink: 0;
    margin-top: .25rem
}

.tariffs-card__price {
    font: var(--text-24-medium);
    margin: 1.5rem 0
}

.tariffs-card__bottom {
    font: var(--text-16)
}

.tariffs-card__bottom ul {
    list-style: disc;
    margin-left: .75rem;
    color: var(--gray-dark-color)
}

.promo-card {
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

.promo-card__media {
    display: grid;
    grid-template-areas: "promo-card"
}

.promo-card__overlay {
    grid-area: promo-card;
    background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #0006);
    background-blend-mode: multiply;
    z-index: 2
}

.promo-card__image {
    grid-area: promo-card;
    aspect-ratio: 67/48;
    position: relative;
    overflow: hidden
}

.promo-card__image img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    transition: transform .5s
}

.promo-card__badge {
    width: fit-content;
    font: var(--text-16);
    grid-area: promo-card;
    z-index: 3;
    padding: .25rem .75rem .3125rem;
    border-radius: .5rem;
    background-color: var(--main-black-color);
    color: var(--white-color);
    align-self: flex-end;
    margin-bottom: 1rem;
    margin-left: 1rem
}

.promo-card__title {
    font: var(--text-26-title);
    text-transform: uppercase;
    color: var(--main-green-color)
}

@media(min-width:1024px) {
    .promo-card__title {
        font: var(--text-32-title)
    }
}

.promo-card__link {
    font: var(--text-16);
    margin-top: auto;
    display: flex;
    align-items: center;
    gap: .5rem;
    color: var(--main-black-color)
}

.promo-card__icon {
    width: 1.25rem;
    height: 1.25rem;
    color: inherit;
    transition: transform .5s
}

.promo-card__icon use {
    width: 100%;
    height: 100%
}

.promo-card__link:hover .promo-card__icon {
    transform: translate(.5rem)
}

.promo-card:has(.promo-card__link:hover) .promo-card__image img {
    transform: scale(1.1)
}

.news-card {
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

.news-card__media {
    display: grid;
    grid-template-areas: "promo-card"
}

.news-card__overlay {
    grid-area: promo-card;
    background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #0006);
    background-blend-mode: multiply;
    z-index: 2
}

.news-card__image {
    grid-area: promo-card;
    aspect-ratio: 164/107;
    position: relative;
    overflow: hidden
}

.news-card__image img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    transition: transform .5s
}

.news-card__content {
    display: flex;
    flex-direction: column;
    gap: .5rem
}

.news-card__date {
    color: var(--gray-color);
    font: var(--text-16)
}

.news-card__title {
    font: var(--text-26-title);
    text-transform: uppercase;
    color: var(--main-green-color)
}

@media(min-width:1024px) {
    .news-card__title {
        font: var(--text-32-title)
    }
}

.news-card__description {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden
}

.news-card__link {
    font: var(--text-16);
    margin-top: auto;
    display: flex;
    align-items: center;
    gap: .5rem;
    color: var(--main-black-color)
}

.news-card__icon {
    width: 1.25rem;
    height: 1.25rem;
    color: inherit;
    transition: transform .5s
}

.news-card__icon use {
    width: 100%;
    height: 100%
}

.news-card__link:hover .news-card__icon {
    transform: translate(.5rem)
}

.news-card:has(.news-card__link:hover) .news-card__image img {
    transform: scale(1.1)
}

.tabs {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    padding: 1rem 0;
    text-align: left;
    margin-top: 2rem;
    margin-bottom: 1.5rem
}

@media(min-width:1024px) {
    .tabs {
        margin-top: 4rem
    }
}

.tabs button {
    padding: .375rem .75rem;
    background: var(--gray-dark-color);
    color: var(--white-color);
    font: var(--text-16);
    width: fit-content;
    border-radius: .5rem
}

.tabs button.active {
    background: var(--main-green-color)
}

.page-slogan {
    padding: 2.06rem;
    font-family: var(--font-title);
    text-transform: uppercase;
    font-size: 1.15994rem;
    line-height: 1.28881rem;
    background: var(--rouse-color);
    color: var(--main-green-color)
}

@media(min-width:1024px) {
    .page-slogan {
        font: var(--text-32-title);
        padding: 8rem
    }
}

@media(min-width:1440px) {
    .page-slogan {
        font: var(--text-72-title)
    }
}

.page-slogan__row:first-child {
    text-indent: 3rem
}

@media(min-width:1024px) {
    .page-slogan__row:first-child {
        text-indent: 12rem
    }
}

.page-slogan__row:nth-child(2) {
    text-indent: 4.7rem
}

@media(min-width:1024px) {
    .page-slogan__row:nth-child(2) {
        text-indent: 16rem
    }
}

.page-slogan__row:last-child {
    text-indent: 12rem
}

@media(min-width:1024px) {
    .page-slogan__row:last-child {
        text-indent: 38.4rem
    }
}

.page-slogan span {
    color: var(--main-orange-color)
}

.activity-card {
    display: grid;
    position: relative
}

@media(min-width:768px) {
    .activity-card {
        height: 27.25rem;
        width: 20.5rem
    }
}

@media(min-width:1180px) {
    .activity-card {
        width: 32.5rem;
        height: 43.125rem
    }
}

.activity-card__media {
    aspect-ratio: 40/53;
    background-size: cover;
    background-repeat: no-repeat
}

@media(min-width:768px) {
    .activity-card__media {
        width: 20.5rem;
        height: 27.25rem
    }
}

@media(min-width:1180px) {
    .activity-card__media {
        height: 43.125rem;
        width: 32.5rem
    }
}

.activity-card__content {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: .5rem;
    background: var(--main-green-color);
    color: var(--white-color);
    width: 80%;
    transform: rotate(-5deg) translate(-50%);
    position: absolute;
    left: 50%;
    bottom: -2rem;
    transition: background .8s
}

@media(min-width:1366px) {
    .activity-card__content {
        width: 28.75rem
    }
}

.activity-card__title {
    font: var(--text-26-title);
    min-height: 4.25rem;
    text-transform: uppercase
}

@media(min-width:1024px) {
    .activity-card__title {
        font: var(--text-32-title)
    }
}

.activity-card:hover .activity-card__content {
    background: var(--main-orange-color)
}

.contact-maps {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem
}

.contact-maps__item {
    display: flex;
    align-items: center;
    gap: .5rem;
    font: var(--text-14)
}

.contact-maps__item a {
    border-bottom: 1px solid
}

.ymap {
    width: 100%;
    height: 24.5625rem
}

@media(min-width:1024px) {
    .ymap {
        height: 39.875rem
    }
}

.ymap__marker {
    display: flex;
    align-items: center;
    font-family: Roboto, Arial, Helvetica, sans-serif
}

.ymap__marker-text {
    background: #fff;
    padding: .5rem .5rem .5rem 2rem;
    border-radius: .5rem;
    display: flex;
    flex-direction: column;
    margin-left: -1.5rem;
    box-shadow: #959da533 0 8px 24px;
    width: 13.3125rem
}

@media(min-width:1024px) {
    .ymap__marker-text {
        width: 15.12rem
    }
}

.ymap__marker-text p,
.ymap__marker-text h3 {
    margin: 0
}

.ymap__marker-text h3 {
    font-size: .875rem;
    font-weight: 500
}

.ymap__marker-text p {
    color: #999;
    font-size: .675rem
}

@media(min-width:1024px) {
    .ymap__marker-text p {
        font-size: .875rem
    }
}

.ymap__marker img {
    width: 3rem;
    height: 3rem;
    z-index: 2
}

@media(min-width:1024px) {
    .ymap__marker img {
        width: 3rem;
        height: 3rem;
        filter: drop-shadow(1px 0 2px rgba(0, 0, 0, .25))
    }
}

.mobile-menu {
    height: 100vh;
    width: 100%;
    position: fixed;
    z-index: 100;
    left: 0;
    top: 0;
    background: var(--main-yellow-light-color);
    color: var(--main-black-color);
    overflow: auto;
    display: none
}

.mobile-menu::-webkit-scrollbar {
    display: none
}

.mobile-menu__header {
    display: flex;
    padding: .75rem 1rem;
    justify-content: space-between;
    align-items: center
}

.mobile-menu__close-icon {
    width: 1.5rem;
    height: 1.5rem;
    flex-shrink: 0
}

.mobile-menu__container {
    display: grid;
    grid-template-areas: "mobile-nav"
}

.mobile-menu__nav {
    margin-top: 2rem;
    grid-area: mobile-nav;
    background: var(--main-yellow-light-color);
    transition: transform .35s ease, opacity .35s ease;
    inset: 0;
    transform: translate(0);
    opacity: 1
}

.mobile-menu__nav--submenu {
    transform: translate(100%);
    opacity: 0
}

.mobile-menu.active {
    display: block
}

.mobile-menu.active-submenu .mobile-menu__nav {
    transform: translate(-30%);
    opacity: 0
}

.mobile-menu.active-submenu .mobile-menu__nav--submenu {
    transform: translate(0);
    opacity: 1
}

.mobile-menu__nav-header {
    text-transform: uppercase;
    color: var(--gray-color);
    border-bottom: 1px solid;
    margin-bottom: 1rem;
    padding: .5rem 0;
    text-align: left;
    display: flex;
    align-items: center;
    gap: 1rem
}

.mobile-menu__nav-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-transform: uppercase;
    margin-bottom: 1rem
}

.mobile-menu__btn {
    width: 100%;
    margin: 1rem 0
}

.mobile-menu__socials .mobile-menu__nav-header {
    color: var(--main-green-color)
}

.mobile-menu .nav {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    text-transform: uppercase;
    text-align: left
}

.mobile-menu__bath {
    display: flex;
    height: 11.4375rem;
    padding: 1rem;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: .75rem;
    font: var(--text-18);
    color: var(--white-color);
    text-transform: uppercase;
    text-align: left;
    margin-top: 1rem;
    margin-bottom: 2rem
}

.mobile-menu__bath svg {
    margin-left: auto
}

.mobile-menu__bath h2 {
    font: var(--text-18)
}

.related-card {
    width: 18.6rem;
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

@media(min-width:1024px) {
    .related-card {
        width: 25.625rem
    }
}

.related-card__media {
    display: grid;
    grid-template-areas: "promo-card"
}

.related-card__overlay {
    grid-area: promo-card;
    background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #0006);
    background-blend-mode: multiply;
    z-index: 2
}

.related-card__image {
    grid-area: promo-card;
    aspect-ratio: 164/107;
    position: relative;
    overflow: hidden
}

.related-card__image img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    transition: transform .5s
}

.related-card__pretitle {
    font: var(--text-16)
}

.related-card__title {
    font: var(--text-32-title);
    text-transform: uppercase;
    color: var(--main-green-color)
}

.related-card__description {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    margin-top: .62rem
}

@media(min-width:1024px) {
    .related-card__description {
        flex-direction: row
    }
}

.related-card__description-row {
    display: flex;
    align-items: center;
    gap: .62rem
}

.related-card__price {
    font: var(--text-24-medium)
}

.related-card__link {
    font: var(--text-16);
    display: flex;
    align-items: center;
    gap: .5rem
}

.related-card__link svg {
    transition: transform .5s
}

.related-card__link:hover svg {
    transform: translate(.5rem)
}

.related-card:has(.related-card__link:hover) .related-card__image img {
    transform: scale(1.1)
}

.checklist {
    display: flex;
    flex-direction: column;
    gap: .5rem
}

.checklist__title {
    margin-top: 1.5rem !important;
    margin-bottom: 0 !important
}

.checklist__list {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    margin-top: 1.5rem
}

.checklist__item {
    display: flex;
    gap: .5rem
}

.checklist__icon {
    width: 1.25rem;
    height: 1.25rem;
    aspect-ratio: 1/1;
    flex-shrink: 0;
    margin-top: .3rem
}

.block-contacts {
    background: var(--rouse-color);
    padding: 2rem 0
}

@media(min-width:1024px) {
    .block-contacts {
        padding: 4rem 0
    }
}

.block-contacts__description {
    margin-bottom: 1.5rem
}

.block-contacts__content {
    font: var(--text-26-title);
    color: var(--main-green-color);
    text-transform: uppercase
}

@media(min-width:1024px) {
    .block-contacts__content {
        font: var(--text-32-title)
    }
}

.block-contacts__description,
.block-contacts__content {
    max-width: 52.75rem
}

.block-contacts__title,
.block-contacts__phone {
    color: var(--main-orange-color)
}

.desktop-menu {
    position: absolute;
    top: 4.9rem;
    left: 0;
    width: 100%;
    background: var(--main-yellow-light-color);
    font: var(--text-14);
    padding: 4rem 0;
    box-shadow: #0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;
    text-transform: uppercase;
    z-index: 10;
    display: none;
    visibility: hidden;
    opacity: 0;
    transform: scale(.95);
    transition: opacity .35s ease, transform .35s ease, visibility .35s ease
}

.desktop-menu.active {
    display: block;
    visibility: visible;
    opacity: 1;
    transform: scale(1)
}

.desktop-menu__container {
    display: flex;
    justify-content: space-between;
    gap: 8rem;
    padding: 0 3rem
}

.desktop-menu .nav {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 8rem;
    row-gap: 1.5rem;
    color: var(--main-black-color)
}

.desktop-menu .nav a:hover {
    color: var(--main-orange-color)
}

.desktop-menu__bath {
    display: flex;
    height: 12rem;
    max-width: 21.5rem;
    padding: 1rem;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    flex: 1 0 0;
    border-radius: .75rem;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
    color: var(--white-color)
}

.desktop-menu__bath h2 {
    font: var(--text-18)
}

.desktop-menu__bath svg {
    margin-left: auto
}

.news-share .ya-share2__link {
    display: flex !important;
    gap: .5rem
}

.news-share .ya-share2__link_more {
    border: 0 !important;
    padding: .375rem .5rem !important;
    border-radius: .5rem !important;
    background: var(--white-color) !important
}

@media(min-width:1024px) {
    .news-share .ya-share2__link_more {
        padding: .375rem 1rem .375rem .5rem !important
    }
}

.news-share .ya-share2__link_more:hover {
    box-shadow: 0 20px 25px #0000001a, 0 10px 10px #0000000a
}

.news-share .ya-share2__title {
    display: none !important;
    font: var(--text-16)
}

@media(min-width:1024px) {
    .news-share .ya-share2__title {
        display: block !important
    }
}

.news-share .ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__icon_more {
    background-image: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M13.6153%206C13.8312%206.21961%2014.0251%206.41652%2014.2187%206.61391C15.4811%207.89964%2016.7433%209.18561%2018.0057%2010.4713C18.3213%2010.7928%2018.6355%2011.116%2018.9543%2011.4337C19.0211%2011.5001%2019.0105%2011.533%2018.95%2011.5947C17.2026%2013.3721%2015.4567%2015.1519%2013.7106%2016.931C13.6875%2016.9546%2013.6622%2016.9759%2013.6354%2017.0005C13.6006%2016.9589%2013.6164%2016.914%2013.6164%2016.874C13.6153%2015.7571%2013.6142%2014.6399%2013.6172%2013.5229C13.6175%2013.4265%2013.6008%2013.3877%2013.5044%2013.3759C12.7828%2013.2868%2012.0622%2013.2943%2011.3405%2013.3759C10.3219%2013.4912%209.3396%2013.7593%208.39879%2014.2037C7.17961%2014.7796%206.12511%2015.6074%205.23466%2016.6847C5.1629%2016.7714%205.09223%2016.8589%205.01075%2016.9584C4.98568%2016.8674%205.01075%2016.7929%205.02263%2016.7206C5.38422%2014.4921%206.338%2012.6551%208.03483%2011.3209C8.9536%2010.5985%209.98929%2010.165%2011.0924%209.91441C11.8839%209.73451%2012.6851%209.65887%2013.4923%209.6617C13.6028%209.66218%2013.6181%209.62317%2013.6179%209.51585C13.6144%208.38708%2013.6157%207.25808%2013.6157%206.12931C13.6157%206.09834%2013.6157%206.06761%2013.6157%206.00024L13.6153%206Z'%20fill='%231B1B1B'/%3e%3c/svg%3e") !important;
    width: 1.5rem !important;
    height: 1.5rem !important;
    background-size: cover
}

.gallery-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-flow: dense;
    grid-auto-rows: 18rem;
    gap: .56rem
}

@media(max-width:1024px) {
    .gallery-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: auto
    }
}

.gallery-list__item {
    display: block;
    overflow: hidden;
    border-radius: 0;
    min-width: 0;
    min-height: 0
}

.gallery-list__item--portrait {
    grid-row: span 2
}

.gallery-list__item.is-hidden {
    display: none
}

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

.pagination {
    display: flex;
    justify-content: center;
    gap: .5rem;
    margin-top: 2rem
}

.pagination .page-numbers {
    padding: .375rem .75rem;
    border-radius: .5rem;
    min-width: 2.625rem;
    height: 2.625rem;
    display: grid;
    place-content: center;
    border: 1px solid;
    font: var(--text-16)
}

.pagination .page-numbers:hover {
    background: var(--main-orange-color);
    border-color: var(--main-orange-color);
    color: var(--white-color)
}

.pagination .page-numbers.current {
    background: var(--main-orange-color);
    color: var(--white-color);
    border-color: var(--main-orange-color)
}

@layer components {
    .hero {
        --swiper-pagination-bottom: 2rem;
        --swiper-pagination-color: transparent;
        --swiper-pagination-bullet-inactive-opacity: .4;
        overflow: hidden;
        width: 100%;
        position: relative
    }

    .hero__slider,
    .hero__overlay {
        height: 67.0625rem
    }

    @media(min-width:1024px) {

        .hero__slider,
        .hero__overlay {
            height: 100vh
        }
    }

    .hero__slide {
        background-position: center;
        background-repeat: no-repeat;
        display: grid !important;
        grid-template-areas: "hero";
        background-size: cover
    }

    .hero__overlay {
        grid-area: hero;
        background: radial-gradient(50% 61.25% at 50% 38.75%, #0000 20.47%, #00000073);
        background-blend-mode: multiply
    }

    .hero__inner-container {
        position: absolute;
        left: 1rem;
        bottom: 3rem;
        z-index: 10;
        left: 50%;
        transform: translate(-50%)
    }

    .hero__inner {
        grid-area: hero;
        z-index: 10;
        margin-top: 11.25rem
    }

    @media(min-width:1024px) {
        .hero__inner {
            display: flex;
            height: 12.75rem;
            align-items: flex-end;
            margin-top: 14rem
        }
    }

    @media(min-width:1560px) {
        .hero__inner {
            margin-top: 18vw
        }
    }

    .hero__pretitle {
        color: var(--white-color)
    }

    .hero__title {
        color: var(--white-color);
        margin-top: 1rem;
        margin-bottom: 4rem
    }

    @media(min-width:1024px) {
        .hero__title {
            margin-bottom: 0
        }
    }

    .hero__description {
        font: var(--text-16);
        color: var(--white-color)
    }

    @media(min-width:1024px) {
        .hero__description {
            margin-right: 7rem
        }
    }

    .hero__pagination {
        position: relative;
        z-index: 10;
        bottom: var(--swiper-pagination-bottom);
        overflow: hidden;
        height: 4rem
    }

    @media(min-width:1024px) {
        .hero__pagination {
            overflow: auto
        }
    }

    .hero__pagination::-webkit-scrollbar {
        display: none
    }

    .hero__pagination-track {
        overflow-x: auto;
        display: flex;
        min-height: 4rem;
        width: 100%
    }

    .hero__pagination-track::-webkit-scrollbar {
        display: none
    }

    .hero__pagination-btn {
        min-width: 16.125rem !important;
        background-color: transparent !important
    }

    @media(min-width:1024px) {
        .hero__pagination-btn {
            min-width: 27.375rem !important
        }
    }

    .hero__pagination-content {
        font: var(--text-16);
        display: flex;
        gap: 1rem;
        margin-bottom: 1rem
    }

    @media(min-width:1024px) {

        .hero__pagination-btn:nth-child(2) .hero__pagination-content,
        .hero__pagination-btn:nth-child(3) .hero__pagination-content {
            justify-content: center
        }
    }

    .hero__pagination-btn .swiper-pagination-bullet {
        display: none !important
    }

    .hero__pagination-btn.swiper-pagination-bullet-active .hero__pagination-number {
        color: var(--main-orange-color)
    }

    .hero__pagination-line {
        height: 2px;
        position: relative;
        overflow: hidden;
        background: rgba(var(--white-p), .25)
    }

    .hero__pagination-text {
        color: var(--white-color);
        min-height: 3rem
    }

    @media(min-width:1024px) {
        .hero__pagination-text {
            min-height: fit-content
        }
    }

    .hero__pagination-btn {
        margin: 0 !important
    }

    .hero__pagination-btn.swiper-pagination-bullet-active .hero__pagination-fill {
        height: 4px;
        position: absolute;
        inset: 0;
        transform-origin: left center;
        transform: scaleX(0);
        background: rgba(var(--white-p), .95)
    }

    @media(min-width:1024px) {
        .hero__pagination-btn:last-child .hero__pagination-text {
            margin-right: 1.6rem
        }
    }

    .hero__form {
        padding: 1rem;
        border-radius: 1rem;
        background: rgba(var(--main-swampy-p), .5);
        display: flex;
        flex-direction: column;
        gap: 1rem
    }

    @media(min-width:1024px) {
        .hero__form {
            flex-direction: row
        }
    }

    .hero__form-group {
        color: var(--gray-color);
        display: flex;
        align-items: center;
        justify-content: space-between;
        background-color: var(--main-yellow-light-color);
        border-radius: .5rem;
        padding: .5625rem 1rem;
        font: var(--text-14)
    }

    @media(min-width:1024px) {
        .hero__form-group {
            flex: 1 0 0
        }
    }

    .hero__form-group-icon {
        width: 1.5rem;
        height: 1.5rem
    }

    .hero__form-submit {
        width: 100%
    }

    @media(min-width:1024px) {
        .hero__form-submit {
            width: fit-content
        }
    }

    @media(max-width:768px) {
        .hero__pagination-track {
            display: flex;
            flex-wrap: nowrap;
            -webkit-overflow-scrolling: touch;
            scrollbar-width: none;
            pointer-events: auto
        }

        .hero__pagination-line {
            top: -4px
        }
    }
}

@layer components {
    .special-offers {
        background-color: var(--main-yellow-light-color);
        color: var(--main-black-color);
        padding-top: 5rem;
        padding-bottom: 2rem;
        position: relative
    }

    @media(min-width:1024px) {
        .special-offers {
            padding-top: 0;
            padding-bottom: 4rem
        }
    }

    .special-offers .container {
        display: grid;
        grid-template-areas: "offers-container"
    }

    .special-offers__title {
        color: var(--main-green-color);
        margin-bottom: -2rem;
        z-index: 10
    }

    @media(min-width:1024px) {
        .special-offers__title {
            grid-area: offers-container;
            width: 52.8125rem;
            justify-self: flex-end;
            align-self: flex-start;
            margin-top: 10rem;
            margin-bottom: 0
        }
    }

    .special-offers__container {
        display: flex;
        gap: 1rem;
        margin-right: -1rem;
        overflow-x: scroll
    }

    @media(min-width:1024px) {
        .special-offers__container {
            grid-area: offers-container;
            margin-top: 18rem;
            gap: 1.5rem
        }
    }

    @media(min-width:1360px) {
        .special-offers__container {
            margin-right: calc((100vw - 1280px)/-2)
        }
    }

    .special-offers__container::-webkit-scrollbar {
        display: none
    }

    .special-offers__slider {
        touch-action: pan-x !important
    }

    .special-offers__slider::-webkit-scrollbar {
        display: none
    }

    @media(max-width:1240px) {
        .special-offers__container>* {
            flex: 0 0 auto
        }
    }

    .special-offers__info {
        padding-right: 1rem;
        padding-bottom: 1rem;
        flex-shrink: 0;
        width: 15.125rem
    }

    .special-offers__info-title {
        font: var(--text-18);
        text-transform: uppercase;
        margin-top: 3rem;
        margin-bottom: 6rem
    }

    @media(min-width:1024px) {
        .special-offers__info-title {
            margin-top: 3rem
        }
    }

    .special-offers__info-description {
        font: var(--text-16)
    }

    .special-offers__info-link {
        margin-top: 4rem;
        margin-bottom: 2rem;
        color: var(--main-orange-color);
        border-bottom: 1px solid;
        font: var(--text-16);
        display: block;
        width: fit-content
    }

    .special-offers__animate {
        display: flex;
        align-items: center;
        gap: .12rem
    }

    .special-offers__animate-item {
        border-radius: .125rem;
        background: #9fa8a480;
        width: .9375rem;
        height: 1.125rem
    }

    .special-offers__card.swiper-slide {
        flex-shrink: 0;
        max-width: 18.875rem;
        width: 18.875rem
    }

    .special-offers__card-media {
        display: grid;
        grid-template-areas: "offers-card"
    }

    .special-offers__card-overlay {
        grid-area: offers-card;
        background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #0006);
        background-blend-mode: multiply;
        z-index: 2
    }

    .special-offers__card-image {
        grid-area: offers-card;
        width: 18.875rem;
        height: 28.0625rem;
        position: relative;
        overflow: hidden
    }

    .special-offers__card-image img {
        width: 100%;
        height: 100%;
        position: absolute;
        object-fit: cover;
        transition: transform .5s
    }

    .special-offers__card-badge {
        width: fit-content;
        font: var(--text-16);
        grid-area: offers-card;
        z-index: 3;
        padding: .25rem .75rem .3125rem;
        border-radius: .5rem;
        background-color: var(--main-black-color);
        color: var(--white-color);
        align-self: flex-end;
        margin-bottom: 1rem;
        margin-left: 1rem
    }

    .special-offers__card-title {
        margin-top: .75rem;
        font: var(--text-18);
        text-transform: uppercase
    }

    .special-offers__card-body {
        min-height: 6.5rem;
        display: flex;
        flex-direction: column
    }

    .special-offers__card-link {
        font: var(--text-16);
        margin-top: auto;
        display: flex;
        align-items: center;
        gap: .5rem;
        color: var(--main-black-color)
    }

    .special-offers__card-icon {
        width: 1.25rem;
        height: 1.25rem;
        color: inherit;
        transition: transform .5s
    }

    .special-offers__card-icon use {
        width: 100%;
        height: 100%
    }

    .special-offers__card-link:hover .special-offers__card-icon {
        transform: translate(.5rem)
    }

    .special-offers__card:has(.special-offers__card-link:hover) .special-offers__card-image img {
        transform: scale(1.1)
    }

    @media(min-width:1024px) {
        .special-offers__animate {
            display: none
        }
    }

    .special-offers__nav {
        display: none
    }

    @media(min-width:1024px) {
        .special-offers__nav {
            display: flex;
            align-items: center;
            gap: .5rem
        }
    }
}

@layer components {
    .advantages {
        background-color: var(--main-yellow-light-color);
        padding-top: 5rem;
        padding-bottom: 4rem;
        position: relative;
        color: var(--black-color)
    }

    @media(min-width:1024px) {
        .advantages {
            padding-top: 10rem;
            padding-bottom: 8rem
        }
    }

    .advantages__title {
        color: var(--main-green-color);
        margin-bottom: 2rem;
        text-align: center
    }

    @media(min-width:1024px) {
        .advantages__title {
            margin-bottom: 4rem
        }
    }

    .advantages__slider .swiper-wrapper {
        align-items: center
    }

    .advantages__card.swiper-slide {
        width: 11.75rem !important;
        transition: transform .4s ease
    }

    @media(min-width:1024px) {
        .advantages__card.swiper-slide {
            width: 18.25rem !important
        }
    }

    .advantages__card.swiper-slide-active {
        width: 16.75rem !important
    }

    @media(min-width:1024px) {
        .advantages__card.swiper-slide-active {
            width: 25.625rem !important
        }
    }

    .advantages__card-image {
        width: 11.75rem;
        height: 11.75rem;
        position: relative
    }

    @media(min-width:1024px) {
        .advantages__card-image {
            width: 18.25rem;
            height: 18.25rem
        }
    }

    .advantages__card.swiper-slide.swiper-slide-active .advantages__card-image {
        aspect-ratio: 1/1;
        width: 16.75rem !important;
        height: 16.75rem !important
    }

    @media(min-width:1024px) {
        .advantages__card.swiper-slide.swiper-slide-active .advantages__card-image {
            width: 25.625rem !important;
            height: 25.625rem !important
        }
    }

    .advantages__card-image img {
        width: 100%;
        height: 100%;
        position: absolute;
        object-fit: cover
    }

    .advantages__card-title {
        font: var(--text-22-title);
        color: var(--main-green-color);
        margin-top: .5rem;
        text-align: center
    }

    .advantages__card.swiper-slide-active .advantages__card-title {
        font: var(--text-26-title);
        text-transform: uppercase;
        margin-top: 1rem;
        min-height: 102px
    }

    @media(min-width:1380px) {
        .advantages__card.swiper-slide-active .advantages__card-title {
            font: var(--text-32-title);
            min-height: 120px
        }
    }

    .advantages__nav {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: .5rem;
        margin-top: 2rem
    }
}

.spa {
    position: relative;
    overflow: hidden;
    height: 49.125rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center
}

@media(min-width:1560px) {
    .spa {
        height: 49.125vw
    }
}

.spa__bg {
    position: absolute;
    inset: -20% 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    will-change: transform;
    z-index: 0;
    background-position: center left -8rem;
    height: 72.6875rem
}

@media(min-width:1024px) {
    .spa__bg {
        inset: -30% -10%;
        background-position: center right clamp(-5rem, -15vw, -21vw)
    }
}

@media(min-width:1240px) {
    .spa__bg {
        inset: -30% -15%;
        background-position: center right clamp(7rem, -15vw, -21vw)
    }
}

@media(min-width:1560px) {
    .spa__bg {
        height: 72.6875vw
    }
}

@media(min-width:1024px) {
    .spa__container {
        display: flex;
        justify-content: center
    }
}

.spa__content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    color: var(--white-color)
}

@media(min-width:1024px) {
    .spa__content {
        gap: 2rem;
        max-width: 52.85rem
    }
}

.spa__btn {
    width: 13.4575rem
}

.activities {
    padding-top: 5rem;
    padding-bottom: 2rem;
    background: var(--main-swampy-color);
    color: var(--white-color)
}

@media(min-width:1024px) {
    .activities {
        padding-top: 10rem;
        padding-bottom: 4rem
    }
}

.activities__title {
    text-align: center
}

.activities__accordion {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2rem
}

@media(min-width:1024px) {
    .activities__accordion {
        display: none
    }
}

.activities__card-title {
    font: var(--text-26-title);
    text-transform: uppercase;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    text-align: left;
    width: 100%
}

@media(min-width:1024px) {
    .activities__card-title {
        font: var(--text-32-title)
    }
}

.activities__card-body {
    margin-top: .5rem
}

.activities__card-media {
    width: 16rem;
    height: 20.25rem;
    aspect-ratio: 64/81;
    display: grid;
    grid-template-areas: "activities-image";
    overflow: hidden
}

.activities__card-image {
    grid-area: activities-image
}

.activities__card-overlay {
    grid-area: activities-image;
    height: 100vh;
    background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #0006);
    background-blend-mode: multiply;
    z-index: 5
}

.activities__card-description {
    margin-top: .5rem;
    margin-bottom: 1.5rem;
    font: var(--text-16)
}

.activities__slider-container {
    margin-top: 4rem;
    display: none
}

@media(min-width:1024px) {
    .activities__slider-container {
        display: flex;
        gap: 1rem
    }
}

.activities__slider {
    grid-area: activities-paginations
}

.activities__slide {
    display: flex;
    align-items: flex-end;
    gap: 2.13rem
}

.activities__slide .activities__card-media {
    width: 32.5rem;
    height: 41.125rem;
    flex-shrink: 0
}

.activities__slide-body {
    display: flex;
    flex-direction: column;
    opacity: 0;
    transition: opacity .4s
}

.activities__slide.swiper-slide-active .activities__slide-body {
    opacity: 1
}

.activities__pagination-track {
    height: 100%;
    display: flex;
    flex-direction: column;
    grid-area: activities-paginations
}

.activities__pagination-btn {
    font: var(--text-32-title);
    width: 25.6875rem;
    height: fit-content;
    background: none;
    text-align: left;
    position: relative;
    opacity: 1
}

.activities__pagination-btn:not(:first-child) {
    margin-top: auto !important
}

.activities__pagination-btn.swiper-pagination-bullet-active {
    font: var(--text-72-title);
    z-index: 20
}

.activities__pagination-text {
    text-transform: uppercase
}

.activities__pagination-btn.swiper-pagination-bullet-active .activities__pagination-line {
    height: 4px;
    background: #241b1b40;
    position: relative;
    overflow: hidden
}

@media(min-width:1024px) {
    .activities__pagination-btn.swiper-pagination-bullet-active .activities__pagination-text {
        width: 42.85rem;
        display: block
    }
}

.activities__pagination-btn.swiper-pagination-bullet-active .activities__pagination-fill {
    height: 4px;
    position: absolute;
    inset: 0;
    transform-origin: left center;
    transform: scaleX(0);
    background: rgba(var(--main-orange-p), .95)
}

.activities .activities__card-content {
    font: var(--text-16);
    margin-top: .5rem
}

.activities .activities__card-content .wp-block-button__link {
    margin-top: 1.5rem;
    padding: .875rem 2rem;
    background: var(--main-orange-color);
    border-radius: .5rem
}

.activities .activities__slide-body {
    font: var(--text-16)
}

.activities .activities__slide-body .wp-block-button__link {
    margin-top: 1.5rem;
    padding: .875rem 2rem;
    background: var(--main-orange-color);
    border-radius: .5rem
}

.faq {
    background: var(--beige-color);
    color: var(--main-black-color);
    padding-bottom: 2rem
}

@media(min-width:1024px) {
    .faq {
        padding-bottom: 4rem
    }
}

.faq__title {
    text-align: center;
    color: var(--main-green-color);
    padding-top: 5rem;
    margin-bottom: 2rem
}

@media(min-width:1024px) {
    .faq__title {
        padding-top: 10rem;
        margin-bottom: 4rem;
        margin-left: 14rem
    }
}

@media(min-width:1024px) {
    .faq__list {
        margin-left: 14rem
    }
}

@media(min-width:1024px) {
    .faq__list {
        margin-left: 28rem
    }
}

.faq__item {
    padding: 1rem 0;
    border-bottom: 1px solid
}

.faq__item-toggle {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    text-align: left
}

.faq__item-toggle h3 {
    font: var(--text-22-medium);
    max-width: 18rem
}

@media(min-width:1024px) {
    .faq__item-toggle h3 {
        max-width: 46.875rem
    }
}

.faq__item-toggle.active+.faq__item-body {
    margin-top: 1rem
}

.faq__item-toggle.active svg {
    transform: rotate(45deg)
}

.faq__item-body {
    font: var(--text-18)
}

.faq__item-body ul {
    list-style: inside;
    margin-left: .5rem
}

.reviews {
    background: var(--rouse-color);
    color: var(--main-black-color);
    padding-bottom: 2rem
}

@media(min-width:1024px) {
    .reviews {
        padding-bottom: 4rem
    }
}

.reviews__title {
    color: var(--main-green-color);
    padding-top: 5rem;
    margin-bottom: 2rem
}

@media(min-width:1024px) {
    .reviews__title {
        padding-top: 10rem;
        margin-bottom: 4rem;
        margin-left: 28rem
    }
}

@media(min-width:1024px) {
    .reviews__list {
        display: grid;
        grid-template-columns: 25.625rem auto;
        gap: 1.5rem
    }
}

@media(min-width:1024px) {
    .reviews__rating {
        padding: 0 4rem 4rem 0;
        position: sticky;
        top: 4rem;
        height: fit-content
    }
}

.reviews__rating-title {
    font: var(--text-22-medium)
}

.reviews__rating-list {
    margin: 1rem 0
}

.reviews__rating-item {
    align-items: center;
    gap: 1rem;
    display: grid;
    grid-template-columns: 1fr 8fr 1fr;
    font: var(--text-16)
}

.reviews__rating-item span:first-child {
    flex-shrink: 0;
    min-width: 4.5875rem
}

.reviews__rating-line {
    height: .375rem;
    width: 100%;
    border-radius: 6.25rem;
    background: var(--beige-color);
    position: relative
}

.reviews__rating-line:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 0%;
    background-color: var(--main-orange-color);
    border-radius: 2px;
    animation: fillRating 1s ease forwards;
    border-radius: 6.25rem
}

@keyframes fillRating {
    to {
        width: var(--rating, 0%)
    }
}

.reviews__rating-info {
    margin-top: 4rem
}

@media(min-width:1024px) {
    .reviews__rating-info {
        margin-top: 0;
        margin-left: 1rem
    }
}

.reviews__rating-top {
    display: flex;
    align-items: center;
    gap: .5rem
}

.reviews__rating-data-text {
    font: var(--text-14);
    color: var(--gray-color)
}

.reviews__rating-number {
    font: var(--text-42-medium)
}

.reviews__gallery {
    margin: 1rem 0;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--beige-color)
}

.reviews__gallery,
.reviews__gallery-list {
    display: flex;
    gap: .12rem
}

@media(min-width:1240px) {

    .reviews__gallery,
    .reviews__gallery-list {
        gap: .5rem
    }
}

.reviews__gallery-item {
    position: relative;
    aspect-ratio: 1/1;
    border-radius: .375rem;
    height: 2.75rem;
    width: 2.75rem;
    overflow: hidden
}

@media(min-width:1240px) {
    .reviews__gallery-item {
        width: 5.375rem;
        height: 5.375rem
    }
}

.reviews__gallery-item img {
    object-fit: cover;
    object-position: center;
    position: absolute;
    width: 100%;
    height: 100%
}

.reviews__gallery-item--link {
    display: grid;
    grid-template-areas: "reviews-gallery";
    color: var(--white-color)
}

.reviews__gallery-item--link img,
.reviews__gallery-item--link span {
    grid-area: reviews-gallery
}

.reviews__gallery-item--link span {
    display: block;
    z-index: 5;
    align-self: center;
    justify-self: center;
    font: var(--text-16-medium)
}

.reviews__gallery-overlay {
    grid-area: reviews-gallery;
    height: 100%;
    background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #000000a6);
    background-blend-mode: multiply;
    z-index: 4
}

.reviews__cards {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: 1rem
}

.reviews__btn {
    display: flex;
    justify-content: center;
    margin-top: 1rem
}

@media(min-width:1024px) {
    .reviews__btn {
        justify-content: flex-start
    }
}

.slogan {
    padding: 2rem 0;
    background: var(--rouse-color);
    color: var(--main-black-color);
    font: var(--text-26-title);
    text-transform: uppercase;
    color: var(--main-green-color)
}

@media(min-width:1024px) {
    .slogan {
        padding: 8rem 0
    }
}

.slogan__text {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    font-family: inherit;
    font-weight: 400;
    font-size: clamp(18.559px, 5vw, 72px);
    line-height: 1.08;
    letter-spacing: -.02em
}

.slogan__text-row:first-child {
    text-indent: 4.2rem
}

@media(min-width:1024px) {
    .slogan__text-row:first-child {
        text-indent: 13rem
    }
}

.slogan__text-row:nth-child(3) {
    margin-left: auto
}

.slogan__text-row:last-child {
    margin-left: auto;
    margin-right: 2rem
}

@media(min-width:1024px) {
    .slogan__text-row:last-child {
        margin-right: 6rem
    }
}

.slogan__text--accent {
    color: var(--main-orange-color)
}

.full-page {
    background: var(--main-yellow-light-color);
    color: var(--main-black-color);
    padding-bottom: 2rem
}

.full-page--accom {
    overflow-x: hidden
}

.full-page__top {
    height: 34.125rem;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    gap: 1rem;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--white-color);
    display: grid;
    grid-template-areas: "page-top"
}

.full-page__top-overlay {
    grid-area: page-top;
    height: 34.125rem;
    width: 100vw;
    background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #000000a6);
    background-blend-mode: multiply
}

.full-page__top-content {
    grid-area: page-top
}

.full-page__pretitle {
    text-transform: uppercase;
    font: var(--text-18)
}

.full-page__title {
    color: var(--white-color)
}

.full-page__posttitles {
    font: var(--text-16)
}

.full-page__filter {
    padding: .5rem 1rem 2rem 0;
    overflow-x: scroll;
    display: flex;
    gap: .5rem;
    margin-right: -1rem
}

@media(min-width:1024px) {
    .full-page__filter {
        overflow-x: none
    }
}

.full-page__filter::-webkit-scrollbar {
    display: none
}

.full-page__filter-btn {
    background: var(--gray-dark-color);
    color: var(--white-color);
    border-radius: .5rem;
    font: var(--text-16);
    padding: .375rem .75rem;
    flex-shrink: 0
}

.full-page__filter-btn:hover {
    background: var(--main-green-color)
}

.full-page__houses {
    margin-top: 2.5rem;
    display: flex;
    flex-direction: column;
    gap: 5rem;
    padding-bottom: 5rem
}

@media(min-width:1024px) {
    .full-page__houses {
        gap: 10rem;
        padding-bottom: 10rem
    }
}

.full-page--house {
    padding-bottom: 0
}

@media(min-width:1024px) {
    .house__content .container {
        display: flex;
        gap: 1.5rem;
        margin-top: 2.5rem
    }
}

.house .house-card__description {
    border-bottom: 0
}

@media(min-width:1024px) {
    .house .house-card__description {
        justify-content: flex-start;
        gap: 4rem
    }
}

@media(min-width:1024px) {
    .house .house-card__description-info {
        width: 16.25rem
    }
}

.house__content-top {
    margin: 1.5rem 0
}

@media(min-width:1024px) {
    .house__content-top {
        margin-top: 0;
        margin-bottom: 1.5rem
    }
}

.house__title {
    font: var(--text-26-title);
    color: var(--main-green-color);
    text-transform: uppercase;
    margin-bottom: 1.5rem
}

@media(min-width:1024px) {
    .house__title {
        font: var(--text-32-title)
    }
}

.house__content-text h2 {
    font: var(--text-26-title);
    color: var(--main-green-color);
    text-transform: uppercase;
    margin-bottom: 1.5rem
}

@media(min-width:1024px) {
    .house__content-text h2 {
        font: var(--text-32-title)
    }
}

.house__content-text ul {
    list-style: disc;
    margin-left: 1.5rem
}

.house__content-text p:not(:first-child) {
    margin-top: 1.5rem
}

.house__comfort {
    background: rgba(var(--main-swampy-p), .1);
    padding: 1.5rem 1rem;
    margin-top: 2rem;
    position: relative;
    margin-left: -1rem;
    margin-right: -1rem
}

@media(min-width:1024px) {
    .house__comfort {
        border-radius: 0 1.375rem 1.375rem 0;
        background: none;
        margin-left: 0;
        margin-right: 0
    }
}

@media(min-width:1024px) {
    .house__comfort:before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: calc(50% - 50vw);
        background-color: rgba(var(--main-swampy-p), .1);
        border-radius: 0 1.375rem 1.375rem 0;
        z-index: 0
    }
}

.house__comfort-column,
.house__comfort-list {
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

@media(min-width:1024px) {
    .house__comfort-list {
        flex-direction: row;
        justify-content: space-between
    }
}

.house__comfort-item {
    padding: 1rem
}

.house__comfort-big-icon {
    width: 4.25rem;
    height: 4.25rem;
    border-radius: 6.25rem;
    background: var(--gray-dark-color);
    display: grid;
    place-content: center
}

.house__comfort-icon {
    width: 1.5rem;
    height: 1.5rem
}

.house__comfort-item-block h3 {
    font: var(--text-18);
    text-transform: uppercase;
    margin-top: 1rem;
    margin-bottom: .5rem
}

.house__comfort-item-list {
    display: flex;
    flex-direction: column;
    gap: .25rem
}

.house__comfort-item-list li {
    display: flex;
    gap: .62rem;
    align-items: center;
    width: fit-content;
    padding: .25rem .5rem;
    border-radius: .5rem;
    background: var(--gray-color);
    color: var(--white-color)
}

.house__rules {
    padding-top: 2rem;
    padding-bottom: 2rem
}

@media(min-width:1024px) {
    .house__rules {
        padding-top: 4rem;
        padding-bottom: 3rem
    }
}

.house__rules-list {
    display: grid;
    gap: 1.5rem
}

@media(min-width:1024px) {
    .house__rules-list {
        grid-template-columns: repeat(2, 1fr)
    }
}

.house__rules-item {
    padding: 1rem
}

.house__rules-item p {
    margin-top: 1rem
}

@media(min-width:1024px) {
    .house__price {
        flex-shrink: 0;
        width: 18.875rem;
        height: fit-content;
        position: sticky;
        top: 1rem
    }
}

.house__price-row {
    display: flex;
    justify-content: space-between;
    padding-bottom: 1rem
}

.house__price-row:first-of-type {
    margin-bottom: 1rem;
    border-bottom: 1px solid
}

.house__price-row span:last-child {
    font: var(--text-24-medium)
}

.house__price-btn {
    width: 100%
}

.house__gallery {
    padding-top: 2rem;
    margin-top: 2rem;
    background: var(--beige-color)
}

@media(min-width:1024px) {
    .house__gallery {
        padding-top: 4rem;
        margin-top: 4rem
    }
}

.house__gallery-item {
    break-inside: avoid;
    margin-bottom: .26rem;
    display: block
}

.house__relation {
    background: var(--rouse-color);
    padding: 2rem 0
}

.house__relation-slider {
    margin-right: -1rem
}

@media(min-width:1360px) {
    .house__relation-slider {
        margin-right: calc((100vw - 1280px)/-2);
        margin-left: calc((100vw - 1280px)/-2);
        width: 100vw
    }
}

.house__relation-slide {
    width: 18.625rem
}

@media(min-width:1024px) {
    .house__relation-slide {
        width: 25.625rem
    }
}

.house__relation-slide .house-card__description {
    gap: .62rem
}

@media(min-width:1024px) {
    .house__relation-slide .house-card__description {
        gap: 1.5rem
    }
}

@media(min-width:1024px) {
    .house__relation-top {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 1.5rem
    }
}

@media(min-width:1024px) {
    .house__relation-title {
        margin-bottom: 0
    }
}

.house__relation-nav {
    display: none
}

@media(min-width:1024px) {
    .house__relation-nav {
        display: flex;
        align-items: center;
        gap: .5rem
    }
}

.inner-page {
    background: var(--main-yellow-light-color);
    color: var(--main-black-color)
}

.inner-page__breadcrumbs {
    padding: .5rem 0
}

@media(min-width:1024px) {
    .inner-page__breadcrumbs {
        padding: 0
    }
}

.inner-page__thumb {
    width: 9.125rem;
    height: 9.125rem;
    aspect-ratio: 1/1;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-top: 1rem;
    margin-bottom: 2rem
}

.inner-page__title {
    color: var(--main-green-color);
    margin-bottom: 1rem
}

@media(min-width:1024px) {
    .inner-page__top {
        display: flex;
        gap: 1.5rem;
        height: 43.125rem;
        padding-top: 1rem
    }
}

.inner-page__top-content {
    display: flex;
    flex-direction: column;
    width: 100%
}

@media(min-width:1024px) {
    .inner-page__top-info {
        margin-top: auto
    }
}

.inner-page__top-btn {
    width: 100%;
    margin-top: 2rem
}

@media(min-width:1024px) {
    .inner-page__top-btn {
        width: fit-content
    }
}

.inner-page__top-media {
    aspect-ratio: 46/61;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    flex-shrink: 0;
    margin-top: 2rem
}

@media(min-width:1024px) {
    .inner-page__top-media {
        width: 32.5rem;
        margin-top: 0
    }
}

.inner-page__top-soon {
    width: 16rem;
    height: 16rem;
    aspect-ratio: 1/1;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: grid;
    grid-template-areas: "soon-card";
    position: absolute;
    left: 0;
    top: -1.5rem
}

@media(min-width:1024px) {
    .inner-page__top-soon {
        width: 21.625rem;
        height: 21.625rem;
        top: 1.5rem;
        left: -18.13rem
    }
}

.inner-page__top-media--soon {
    margin-top: 3rem
}

@media(min-width:1024px) {
    .inner-page__top-media--soon {
        margin-top: 0
    }
}

.inner-page__top-soon {
    text-transform: uppercase;
    color: var(--white-color);
    padding: 1rem
}

.inner-page__top-soon h3 {
    font: var(--text-22-medium);
    height: fit-content
}

@media(min-width:1024px) {
    .inner-page__top-soon h3 {
        margin-right: 2rem
    }
}

.inner-page__top-soon p {
    font: var(--text-32-medium);
    height: fit-content;
    align-self: flex-end;
    justify-self: flex-end
}

.inner-page__tabs {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    padding: 1rem 0;
    text-align: left;
    margin-top: 2rem;
    margin-bottom: 1.5rem
}

@media(min-width:1024px) {
    .inner-page__tabs {
        flex-direction: row;
        margin-top: 4rem
    }
}

.inner-page__tabs button {
    padding: .375rem .75rem;
    background: var(--gray-dark-color);
    color: var(--white-color);
    font: var(--text-16);
    width: fit-content;
    border-radius: .5rem
}

.inner-page__tabs button.active {
    background: var(--main-green-color)
}

.inner-page__main h2 {
    font: var(--text-26-title);
    color: var(--main-green-color);
    text-transform: uppercase;
    margin-top: 2rem;
    margin-bottom: 1.5rem
}

@media(min-width:1024px) {
    .inner-page__main h2 {
        margin-top: 4rem;
        font: var(--text-32-title)
    }
}

.inner-page__accordion-text h3 {
    font: var(--text-22-medium)
}

.inner-page__accordion-list {
    display: flex;
    flex-direction: column;
    gap: 1rem
}

.inner-page__accordion-toggle {
    text-align: left;
    display: flex;
    align-items: flex-start;
    gap: .25rem
}

.inner-page__accordion-toggle p {
    margin-top: .25rem
}

.inner-page__accordion-item {
    padding-bottom: 1rem;
    border-bottom: 1px solid
}

.inner-page__accordion-image {
    border-radius: .75rem;
    aspect-ratio: 16/9;
    background-repeat: no-repeat;
    width: 18.875rem;
    height: 12.125rem;
    background-size: cover
}

.inner-page__accordion-toggle.active {
    margin-bottom: 2rem
}

.inner-page__relax-list {
    display: grid;
    gap: 1.5rem
}

@media(min-width:1024px) {
    .inner-page__relax-list {
        grid-template-columns: repeat(3, 1fr)
    }
}

.inner-page__relax-item {
    padding: 1rem 0
}

@media(min-width:1024px) {
    .inner-page__relax-item {
        padding: 1rem
    }
}

.inner-page__relax-item p {
    margin-top: 1rem
}

.inner-page__result h2 {
    font: var(--text-26-title);
    text-transform: uppercase;
    color: var(--main-green-color);
    margin-top: 2rem;
    margin-bottom: 1.5rem
}

@media(min-width:1024px) {
    .inner-page__result-list {
        columns: 2;
        gap: 0
    }
}

.inner-page__result-item {
    padding: 2rem;
    height: 35.25rem;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    color: var(--white-color);
    font: var(--text-26-title);
    text-transform: uppercase;
    display: flex;
    align-items: flex-end
}

@media(min-width:1024px) {
    .inner-page__result-item {
        padding: 4rem;
        font: var(--text-32-title)
    }
}

.inner-page__result-item:first-child {
    background-position: left
}

.inner-page__bottom {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    padding: 2rem 0;
    background: var(--rouse-color)
}

@media(min-width:1024px) {
    .inner-page__bottom {
        padding: 4rem 0
    }
}

.inner-page__bottom-contacts {
    font: var(--text-26-title);
    text-transform: uppercase;
    margin-top: 1.5rem
}

@media(min-width:1024px) {
    .inner-page__bottom-contacts {
        font: var(--text-32-title)
    }
}

.inner-page__bottom-contacts span,
.inner-page__bottom-contacts a {
    color: var(--main-orange-color)
}

@media(min-width:1024px) {

    .inner-page__bottom p,
    .inner-page__bottom-contacts {
        width: 52.75rem
    }
}

.inner-page__tab-section {
    opacity: 0;
    transform: translateY(6px);
    transition: opacity .2s ease, transform .2s ease
}

.inner-page__tab-section.active {
    opacity: 1;
    transform: translateY(0)
}

.inner-page__tab-section[hidden] {
    display: none
}

.inner-page__main {
    padding: 2rem 0
}

@media(min-width:1024px) {
    .inner-page__main {
        padding: 4rem 0
    }
}

.inner-page__main ul {
    list-style: disc;
    margin-left: 1.5rem
}

.inner-page__main .wp-block-cover {
    height: 42.875rem;
    margin: 1.5rem 0
}

.inner-page__main .wp-block-cover__background {
    background: radial-gradient(50% 61.25% at 50% 38.75%, #0000 20.47%, #000000a6) !important;
    background-blend-mode: multiply
}

.inner-page__main .has-large-font-size {
    font: var(--text-26-title) !important;
    text-transform: uppercase
}

@media(min-width:1024px) {
    .inner-page__main .has-large-font-size {
        font: var(--text-32-title) !important
    }
}

.inner-page__main .wp-block-gallery {
    margin-top: .5rem
}

@media(min-width:1024px) {
    .inner-page__main .wp-block-gallery {
        margin-top: 1.5rem
    }
}

.inner-page__main .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
    width: calc(100% - var(--wp--style--unstable-gallery-gap, 1rem) / 2)
}

@media(min-width:1024px) {
    .inner-page__main .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
        width: calc(50% - var(--wp--style--unstable-gallery-gap, 1rem) / 2)
    }
}

@media(min-width:1240px) {
    .inner-page__main .wp-block-cover__inner-container .has-text-align-center {
        padding: 0 7.5rem
    }
}

.inner-page__main {
    --wp--style--gallery-gap-default: 1.5rem
}

.inner-page :where(.wp-block-columns.is-layout-flex) {
    gap: .5rem
}

@media(min-width:1024px) {
    .inner-page :where(.wp-block-columns.is-layout-flex) {
        gap: 1.5rem
    }
}

@layer components {
    .bath-page {
        background: var(--main-yellow-light-color);
        color: var(--main-black-color)
    }

    .bath-page__breadcrumbs {
        padding: .5rem 0
    }

    @media(min-width:1024px) {
        .bath-page__breadcrumbs {
            padding: 0
        }
    }

    .bath-page__thumb {
        width: 9.125rem;
        height: 9.125rem;
        aspect-ratio: 1/1;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        margin-top: 1rem;
        margin-bottom: 2rem
    }

    .bath-page__title {
        color: var(--main-green-color);
        margin-bottom: 1rem
    }

    @media(min-width:1024px) {
        .bath-page__top {
            display: flex;
            gap: 1.5rem;
            height: 43.125rem;
            padding-top: 1rem
        }
    }

    .bath-page__top-content {
        display: flex;
        flex-direction: column
    }

    @media(min-width:1024px) {
        .bath-page__top-info {
            margin-top: auto
        }
    }

    .bath-page__top-btn {
        width: 100%;
        margin: 2rem 0
    }

    @media(min-width:1024px) {
        .bath-page__top-btn {
            width: fit-content
        }
    }

    .bath-page__top-media {
        aspect-ratio: 46/61;
        background-position: center;
        background-repeat: no-repeat;
        flex-shrink: 0
    }

    @media(min-width:1024px) {
        .bath-page__top-media {
            width: 32.5rem
        }
    }

    .bath-page__main h2 {
        font: var(--text-26-title);
        color: var(--main-green-color);
        text-transform: uppercase;
        margin-top: 2rem;
        margin-bottom: 1.5rem
    }

    @media(min-width:1024px) {
        .bath-page__main h2 {
            margin-top: 4rem;
            font: var(--text-32-title)
        }
    }

    .bath-page__accordion-text h3 {
        font: var(--text-22-medium)
    }

    .bath-page__accordion-list {
        display: flex;
        flex-direction: column;
        gap: 1rem
    }

    @media(min-width:1024px) {
        .bath-page__accordion-list {
            gap: 2rem
        }
    }

    .bath-page__accordion-toggle {
        text-align: left;
        display: flex;
        align-items: flex-start;
        gap: .25rem
    }

    @media(min-width:1024px) {
        .bath-page__accordion-toggle {
            pointer-events: none
        }
    }

    @media(min-width:1024px) {
        .bath-page__accordion-toggle svg {
            display: none
        }
    }

    .bath-page__accordion-toggle p {
        margin-top: .25rem
    }

    .bath-page__accordion-item {
        padding-bottom: 1rem;
        border-bottom: 1px solid;
        position: relative
    }

    @media(min-width:1024px) {
        .bath-page__accordion-item {
            padding-bottom: 2rem
        }
    }

    .bath-page__accordion-image {
        border-radius: .75rem;
        aspect-ratio: 16/9;
        background-repeat: no-repeat;
        width: 18.875rem;
        height: 12.125rem;
        background-size: cover
    }

    @media(min-width:1024px) {
        .bath-page__accordion-image {
            position: absolute;
            right: 5.5rem;
            top: 0;
            transform: rotate(-15deg);
            opacity: 0;
            transition: opacity .4s;
            z-index: 10
        }
    }

    @media(min-width:1024px) {
        .bath-page__accordion-item:hover .bath-page__accordion-image {
            opacity: 1
        }
    }

    .bath-page__accordion-toggle.active {
        margin-bottom: 2rem
    }

    .bath-page__relax-list {
        display: grid;
        gap: 1.5rem
    }

    @media(min-width:1024px) {
        .bath-page__relax-list {
            grid-template-columns: repeat(3, 1fr)
        }
    }

    .bath-page__relax-item {
        padding: 1rem 0
    }

    @media(min-width:1024px) {
        .bath-page__relax-item {
            padding: 1rem
        }
    }

    .bath-page__relax-item p {
        margin-top: 1rem
    }

    .bath-page__result h2 {
        font: var(--text-26-title);
        text-transform: uppercase;
        color: var(--main-green-color);
        margin-top: 2rem;
        margin-bottom: 1.5rem
    }

    @media(min-width:1024px) {
        .bath-page__result h2 {
            font: var(--text-32-title)
        }
    }

    @media(min-width:1024px) {
        .bath-page__result-list {
            columns: 2;
            gap: 0
        }
    }

    .bath-page__result-item {
        padding: 2rem;
        height: 35.25rem;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        color: var(--white-color);
        font: var(--text-26-title);
        text-transform: uppercase;
        display: flex;
        align-items: flex-end;
        text-wrap-style: balance
    }

    @media(min-width:1024px) {
        .bath-page__result-item {
            padding: 4rem;
            font: var(--text-32-title)
        }
    }

    .bath-page__result-item h3 {
        font: var(--text-26-title);
        max-width: 34.5rem;
        margin: 0
    }

    @media(min-width:1024px) {
        .bath-page__result-item h3 {
            font: var(--text-32-title)
        }
    }

    .bath-page__result-item:first-child {
        background-position: left
    }

    .bath-page__bottom {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        padding: 2rem 0;
        background: var(--rouse-color)
    }

    @media(min-width:1024px) {
        .bath-page__bottom {
            padding: 4rem 0
        }
    }

    .bath-page__bottom-contacts {
        font: var(--text-26-title);
        text-transform: uppercase;
        margin-top: 1.5rem
    }

    @media(min-width:1024px) {
        .bath-page__bottom-contacts {
            font: var(--text-32-title)
        }
    }

    .bath-page__bottom-contacts span,
    .bath-page__bottom-contacts a {
        color: var(--main-orange-color)
    }

    @media(min-width:1024px) {

        .bath-page__bottom p,
        .bath-page__bottom-contacts {
            width: 52.75rem
        }
    }

    .bath-page__media-item {
        height: 35.25rem;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        display: flex;
        align-items: flex-end;
        padding: 2rem
    }

    @media(min-width:1024px) {
        .bath-page__media-item {
            padding: 4rem
        }
    }

    .bath-page__media-item h2 {
        color: var(--white-color);
        font: var(--text-26-title);
        margin: 0;
        max-width: 53.625rem
    }

    @media(min-width:1024px) {
        .bath-page__media-item h2 {
            font: var(--text-32-title)
        }
    }

    .bath-page__tab-section {
        opacity: 0;
        transform: translateY(6px);
        transition: opacity .2s ease, transform .2s ease
    }

    .bath-page__tab-section.active {
        opacity: 1;
        transform: translateY(0)
    }

    .bath-page__tab-section[hidden] {
        display: none
    }

    .bath-page__tariffs {
        margin-bottom: 2rem
    }

    .bath-page__tariffs-info {
        text-align: center;
        max-width: 52.75rem;
        margin: 0 auto
    }

    .bath-page__tariffs-list {
        display: grid;
        margin-top: 2rem;
        gap: 2rem
    }

    @media(min-width:1024px) {
        .bath-page__tariffs-list {
            grid-template-columns: repeat(auto-fit, minmax(16rem, 25.66669rem));
            justify-content: center;
            margin-top: 4rem;
            gap: 1.5rem
        }
    }
}

.promo-inner__top {
    max-width: 52.875rem;
    margin: 0 auto
}

.promo-inner__title {
    text-align: center
}

.promo-inner__posttitle {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    align-items: center;
    text-align: center
}

@media(min-width:1024px) {
    .promo-inner__posttitle {
        flex-direction: row;
        gap: 1rem;
        justify-content: center
    }
}

.promo-inner__posttitle-icon {
    width: 1.5rem;
    height: 1.5rem;
    flex-shrink: 0
}

.promo-inner__media {
    display: grid;
    grid-template-areas: "image-container";
    margin-top: 1rem
}

@media(min-width:1024px) {
    .promo-inner__media {
        background: var(--main-swampy-color);
        margin: 2rem auto
    }
}

.promo-inner__media-overlay {
    grid-area: image-container;
    background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #0006);
    background-blend-mode: multiply;
    z-index: 2
}

.promo-inner__media-image {
    grid-area: image-container;
    position: relative;
    overflow: hidden;
    aspect-ratio: 180/107
}

@media(min-width:1024px) {
    .promo-inner__media-image {
        width: 52.875rem;
        height: 31.375rem;
        margin: 0 auto
    }
}

.promo-inner__media-image img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    transition: transform .5s
}

.promo-inner__main {
    margin-top: 2rem
}

@media(min-width:1024px) {
    .promo-inner__main {
        margin-top: 4rem;
        width: 44.9rem
    }
}

.promo-inner__main h2 {
    font: var(--text-32-title);
    color: var(--main-green-color);
    text-transform: uppercase;
    margin-bottom: 1.5rem
}

.promo-inner__main h2:not(:first-child) {
    margin-top: 1.5rem
}

.promo-inner__main .wp-block-list {
    list-style: disc;
    margin-left: 1.5rem
}

.promo-inner__main-line {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    padding: 1rem 0;
    border-bottom: 1px solid var(--gray-color)
}

.promo-inner__main-line h3 {
    font: var(--text-18-medium)
}

.promo-inner__main-btn {
    margin-top: 1.5rem
}

.promo-inner__content .wp-block-separator {
    border-top: 1px solid var(--gray-color);
    margin: 1rem 0
}

.promo-inner__content strong {
    font: var(--text-18-medium)
}

.news-inner__top {
    font: var(--text-16);
    color: var(--gray-color);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5rem;
    margin: 2rem 0
}

.news-inner__top-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .5rem
}

@media(min-width:1024px) {
    .news-inner__top-header {
        flex-direction: row;
        width: 100%;
        max-width: 52.875rem
    }
}

.news-inner__title {
    text-align: center
}

@media(min-width:1024px) {
    .news-inner__title {
        width: 52.875rem
    }
}

.news-inner__top-item {
    display: flex;
    gap: .5rem;
    align-items: center
}

.news-inner__top-actions {
    display: flex;
    gap: 2rem
}

@media(min-width:1024px) {
    .news-inner__top-actions {
        margin-left: auto
    }
}

.news-inner__top-icon {
    width: 1.25rem;
    height: 1.25rem;
    flex-shrink: 0
}

.news-inner__top-share {
    display: flex;
    gap: .5rem;
    border-radius: .5rem;
    background: var(--white-color);
    color: var(--main-black-color)
}

@media(min-width:1024px) {
    .news-inner__top-share {
        align-items: center;
        padding: .375rem 1rem .375rem .5rem
    }
}

.news-inner__top-share span {
    display: none
}

@media(min-width:1024px) {
    .news-inner__top-share span {
        display: block
    }
}

.news-inner__top-author {
    display: flex;
    align-items: center;
    gap: 1rem
}

.news-inner__author-symbol {
    width: 2.875rem;
    height: 2.875rem;
    border-radius: 6.25rem;
    background: var(--beige-color);
    color: var(--white-color);
    display: grid;
    place-content: center;
    font-size: var(--text-14)
}

.news-inner__author-name {
    color: var(--main-black-color)
}

.news-inner__media {
    display: grid;
    grid-template-areas: "image-container";
    margin-top: 1rem;
    margin-left: -1rem;
    margin-right: -1rem
}

@media(min-width:1024px) {
    .news-inner__media {
        margin: 1rem auto 0;
        margin-left: 0;
        margin-right: 0
    }
}

.news-inner__media-overlay {
    grid-area: image-container;
    background: radial-gradient(61.25% 61.25% at 50% 38.75%, #0000 15.25%, #0006);
    background-blend-mode: multiply;
    z-index: 2
}

@media(min-width:1024px) {
    .news-inner__media-overlay {
        width: 52.875rem;
        height: 31.375rem;
        margin: 0 auto
    }
}

.news-inner__media-image {
    grid-area: image-container;
    position: relative;
    overflow: hidden;
    aspect-ratio: 180/107
}

@media(min-width:1024px) {
    .news-inner__media-image {
        width: 52.875rem;
        height: 31.375rem;
        margin: 0 auto
    }
}

.news-inner__media-image img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    transition: transform .5s
}

.news-inner__main {
    margin-top: 2rem
}

@media(min-width:1024px) {
    .news-inner__main {
        max-width: 52.875rem;
        margin: 0 auto
    }
}

.news-inner__main-content {
    padding: 2rem 0 0
}

@media(min-width:1024px) {
    .news-inner__main-content {
        padding: 4rem 4rem 0
    }
}

.news-inner__main h2 {
    margin-top: 3rem;
    font: var(--text-26-title);
    color: var(--main-green-color);
    text-transform: uppercase
}

.news-inner__main p:not(:first-child) {
    margin-top: 1.5rem
}

.news-inner__main .wp-block-columns {
    gap: .5rem;
    margin-top: 2rem
}

@media(min-width:1024px) {
    .news-inner__main .wp-block-columns {
        margin: 4rem -4rem 0
    }
}

.news-inner__main .wp-block-columns .wp-block-image {
    width: 100%
}

.news-inner__main .wp-block-columns :where(figure) {
    margin: 0
}

.news-inner__main strong {
    font: var(--text-18-medium)
}

.news-inner__main-images {
    display: flex;
    flex-direction: column;
    gap: .5rem;
    margin: 2rem 0
}

@media(min-width:1024px) {
    .news-inner__main-images {
        flex-direction: row;
        margin-bottom: 4rem;
        margin-top: 0
    }
}

.news-inner__main-images img {
    aspect-ratio: 27/41
}

.news-inner__main-bottom {
    font: var(--text-18-medium)
}

.news-inner__main-bottom a {
    color: var(--main-orange-color)
}

.news-inner__relation {
    margin-top: 4rem;
    margin-bottom: 2rem
}

@media(min-width:1024px) {
    .news-inner__relation-top {
        display: flex;
        align-items: center;
        justify-content: space-between
    }
}

.news-inner__relation-slider {
    margin-right: -1rem
}

@media(min-width:1380px) {
    .news-inner__relation-slider {
        margin-right: -80px
    }
}

.news-inner__relation-top {
    margin-bottom: 1.5rem
}

.news-inner__relation-title {
    font: var(--text-26-title);
    text-transform: uppercase;
    color: var(--main-green-color)
}

@media(min-width:1024px) {
    .news-inner__relation-title {
        font: var(--text-32-title);
        margin-bottom: 0
    }
}

.news-inner__relation-nav {
    display: none
}

@media(min-width:1024px) {
    .news-inner__relation-nav {
        display: flex;
        align-items: center;
        gap: .5rem
    }
}

.news-inner__relation-slide {
    max-width: 18.625rem
}

@media(min-width:1024px) {
    .news-inner__relation-slide {
        max-width: 25.6875rem
    }
}

.about-page {
    padding-bottom: 0
}

.about-page .wp-block-heading,
.about-page__main h2,
.about-page__image h2 {
    font: var(--text-26-title) !important;
    text-transform: uppercase;
    color: var(--main-green-color)
}

@media(min-width:1024px) {

    .about-page .wp-block-heading,
    .about-page__main h2,
    .about-page__image h2 {
        font: var(--text-32-title) !important
    }
}

.about-page .wp-block-cover .wp-block-heading {
    color: var(--white-color)
}

@media(min-width:1380px) {
    .about-page .wp-block-cover .wp-block-heading {
        width: 22rem
    }
}

.about-page__content {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin: 1.5rem 0
}

.about-page__content-time svg {
    margin-bottom: 1rem
}

.about-page__main {
    margin-top: 1.5rem;
    margin-bottom: -1.5rem
}

@media(min-width:1024px) {
    .about-page__main {
        gap: 1.56rem
    }
}

.about-page__main-image {
    aspect-ratio: 1/1;
    background-size: cover;
    background-repeat: no-repeat
}

@media(min-width:1024px) {
    .about-page__main-image {
        width: 32.375rem;
        height: 32.375rem
    }
}

.about-page__images {
    margin-top: 1.5rem
}

@media(min-width:1024px) {
    .about-page__images {
        display: grid;
        grid-template-columns: repeat(3, 1fr)
    }
}

.about-page__image {
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 40/47;
    padding: 2rem;
    display: flex;
    flex-direction: column
}

@media(min-width:1024px) {
    .about-page__image {
        padding: 4rem
    }
}

.about-page__image h2 {
    color: var(--white-color);
    margin-top: auto
}

.about-page__main .wp-block-cover {
    height: 26.4375rem
}

@media(min-width:1024px) {
    .about-page__main .wp-block-cover {
        height: 35.25rem;
        padding: 4rem
    }
}

@media(min-width:1440px) {
    .about-page__main .wp-block-cover {
        height: 42.25vw
    }
}

.about-page__main .wp-block-columns {
    justify-content: space-between
}

.about-page__main .wp-block-columns:last-child :where(.wp-block-columns.is-layout-flex) {
    gap: 0
}

.about-page__main .wp-block-column:nth-child(2) .wp-block-image:last-of-type img {
    margin-left: auto
}

.about-page__main .wp-block-cover__background {
    background-color: transparent
}

.about-page__main .wp-block-cover__background .wp-block-cover .wp-block-cover__inner-container {
    color: var(--white-color) !important
}

.about-page__main .wp-block-cover .wp-block-heading {
    text-align: left
}

.about-page__main .wp-block-cover__inner-container {
    margin-top: auto
}

.about-page__main :where(.wp-block-columns.is-layout-flex) {
    gap: 0
}

.about-page__main .wp-block-columns {
    margin-top: 1.5rem;
    margin-bottom: 0
}

.about-page__main .wp-block-heading {
    margin-bottom: 0
}

.about-page__main .wp-block-columns:nth-of-type(2) {
    margin-left: -1rem;
    margin-right: -1rem
}

@media(min-width:1024px) {
    .about-page__main .wp-block-columns:nth-of-type(2) {
        width: 100vw;
        margin-right: calc((100vw - 100%)/-2);
        margin-left: calc((100vw - 100%)/-2)
    }
}

@media(min-width:1024px) {
    .about-page__main .wp-block-columns:nth-of-type(1) {
        margin-bottom: 4rem
    }
}

.about-page__icon {
    width: 4.25rem;
    height: 4.25rem;
    margin-top: 1.5rem
}

.about-page__main-image {
    margin-top: 1.5rem
}

@media(min-width:1024px) {
    .about-page__main-image {
        margin-top: 0;
        margin-left: auto
    }
}

.activityes {
    padding-bottom: 5.66rem
}

@media(min-width:1024px) {
    .activityes {
        padding-bottom: 8rem
    }
}

.activityes__list {
    display: grid;
    row-gap: 5.66rem
}

@media(min-width:768px) {
    .activityes__list {
        column-gap: 2.25rem;
        grid-template-columns: repeat(2, 1fr)
    }
}

@media(min-width:1366px) {
    .activityes__list {
        padding: 0 4rem;
        column-gap: 8.25rem
    }
}

@media(min-width:768px) {
    .activityes__card:nth-child(2n) {
        margin-top: 8.25rem
    }
}

.contacts {
    font: var(--text-18);
    padding-bottom: 0
}

@media(min-width:1024px) {
    .contacts__container {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 5.31rem
    }
}

@media(min-width:1024px) {
    .contacts__title {
        grid-column: 1;
        grid-row: 1
    }
}

.contacts__slogan {
    font: var(--text-26-title);
    text-transform: uppercase;
    margin-top: 1rem
}

@media(min-width:1024px) {
    .contacts__slogan {
        font: var(--text-32-title);
        grid-column: 1;
        grid-row: 1;
        margin-top: 12rem
    }
}

.contacts__slogan span {
    color: var(--main-orange-color)
}

.contacts__info {
    margin: 2rem 0
}

@media(min-width:1024px) {
    .contacts__info {
        grid-column: 1;
        grid-row: 1;
        margin-top: 9rem
    }
}

@media(min-width:1024px) {
    .contacts__clock {
        grid-column: 2
    }
}

.contacts__info-row {
    margin-bottom: .5rem
}

.contacts__info b,
.contacts__info strong {
    font: var(--text-18-medium)
}

.contacts__info-time {
    width: 6.16346rem
}

.contacts__info-consultation {
    margin: 3rem 0
}

.contacts__info-consultation a {
    color: var(--main-orange-color)
}

.contacts__maps {
    margin-top: 3rem
}

@media(min-width:1024px) {
    .contacts__maps {
        grid-column: 1;
        grid-row: 1
    }
}

.contacts__info-phones {
    margin-top: 3rem
}

.contacts__ymap {
    margin-top: 2rem
}

.contacts .slogan {
    background: var(--main-yellow-light-color)
}

.contacts .wp-block-heading {
    font: var(--text-26-title);
    text-transform: uppercase;
    margin-bottom: 1.5rem
}

@media(min-width:1024px) {
    .contacts .wp-block-heading {
        font: var(--text-32-title)
    }
}

.contacts .wp-block-group.is-nowrap {
    gap: .5rem
}

.contacts .wp-block-group {
    gap: 0;
    margin-bottom: .5rem
}

.error404 {
    background: var(--main-yellow-light-color);
    color: var(--main-black-color);
    text-align: center;
    overflow: hidden
}

.error404__top {
    padding: 0 1rem
}

.error404__main {
    position: relative
}

@media(min-width:1024px) {
    .error404__main {
        display: flex;
        align-items: center;
        height: 100vh;
        overflow: hidden
    }
}

.error404 header,
.error404 footer {
    display: none
}

.error404__main-content {
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
    height: auto;
    justify-content: space-between
}

@media(min-width:1024px) {
    .error404__main-content {
        height: fit-content;
        justify-content: center;
        align-items: center;
        padding-left: 4rem
    }
}

.error404 h1 {
    color: var(--main-green-color);
    font: var(--text-72-title);
    margin-bottom: .5rem
}

.error404 h2 {
    font: var(--text-22-medium)
}

.error404__image {
    height: auto;
    aspect-ratio: 375/520;
    width: 100vw;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 11rem;
    left: 50%;
    transform: translate(-50%);
    z-index: -1
}

@media(min-width:768px) {
    .error404__image {
        width: 70vw
    }
}

@media(min-width:1024px) {
    .error404__image {
        width: 60.25vw;
        height: 78.125vw;
        flex-shrink: 0;
        margin: 0;
        position: relative;
        left: 0;
        transform: none;
        background-size: contain;
        top: 12vw
    }
}

.error404__bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 1rem;
    margin-bottom: clamp(2rem, 5vw, 5rem)
}

@media(min-width:380px) {
    .error404__bottom {
        margin-bottom: clamp(6.5rem, 5vw, 5rem)
    }
}

@media(min-width:1024px) {
    .error404__bottom {
        margin-top: 4rem
    }
}

.error404__consultation {
    margin-top: 1rem;
    max-width: 33.75rem
}

@media(min-width:1024px) {
    .error404__consultation {
        margin-top: 2rem
    }
}

.error404__consultation span,
.error404__consultation a {
    color: var(--main-orange-color)
}

.documents-page {
    padding-top: .5rem;
    padding: 0
}

@media(min-width:1024px) {
    .documents-page {
        padding-top: 1rem
    }
}

@media(min-width:1024px) {
    .documents-page__title {
        margin: 2rem 0 1rem
    }
}

.documents-page__content {
    font: var(--text-16)
}

.documents-page__content h3 {
    font: var(--text-18-medium);
    margin: 1rem 0 .5rem
}

.documents-page__content ul {
    margin-left: 1rem
}

.maintenance {
    background-repeat: no-repeat;
    background-size: cover;
    color: var(--white-color);
    height: 100vh;
    width: 100%;
    display: grid;
    grid-template-areas: "main";
    text-align: center;
    justify-items: center;
    overflow: hidden
}

.maintenance__container {
    grid-area: main;
    z-index: 2;
    height: 100%;
    align-self: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 4rem
}

.maintenance h1 {
    font: var(--text-44-title);
    text-transform: uppercase
}

.maintenance__top {
    margin-bottom: auto
}

.maintenance__bottom {
    margin-top: auto
}

.maintenance__overlay {
    grid-area: main;
    background: radial-gradient(50% 61.25% at 50% 38.75%, #00000052 20.47%, #00000073);
    background-blend-mode: multiply;
    height: 100vh;
    width: 100%
}

@layer reset, base, components;

.pswp {
    --pswp-bg: #000;
    --pswp-placeholder-bg: #222;
    --pswp-root-z-index: 100000;
    --pswp-preloader-color: rgba(79, 79, 79, .4);
    --pswp-preloader-color-secondary: rgba(255, 255, 255, .9);
    --pswp-icon-color: #fff;
    --pswp-icon-color-secondary: #4f4f4f;
    --pswp-icon-stroke-color: #4f4f4f;
    --pswp-icon-stroke-width: 2px;
    --pswp-error-text-color: var(--pswp-icon-color)
}

.pswp {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: var(--pswp-root-z-index);
    display: none;
    touch-action: none;
    outline: 0;
    opacity: .003;
    contain: layout style size;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.pswp:focus {
    outline: 0
}

.pswp * {
    box-sizing: border-box
}

.pswp img {
    max-width: none
}

.pswp--open {
    display: block
}

.pswp,
.pswp__bg {
    transform: translateZ(0);
    will-change: opacity
}

.pswp__bg {
    opacity: .005;
    background: var(--pswp-bg)
}

.pswp,
.pswp__scroll-wrap {
    overflow: hidden
}

.pswp__scroll-wrap,
.pswp__bg,
.pswp__container,
.pswp__item,
.pswp__content,
.pswp__img,
.pswp__zoom-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.pswp__img,
.pswp__zoom-wrap {
    width: auto;
    height: auto
}

.pswp--click-to-zoom.pswp--zoom-allowed .pswp__img {
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
    cursor: zoom-in
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img {
    cursor: move;
    cursor: -webkit-grab;
    cursor: -moz-grab;
    cursor: grab
}

.pswp--click-to-zoom.pswp--zoomed-in .pswp__img:active {
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing;
    cursor: grabbing
}

.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img,
.pswp--no-mouse-drag.pswp--zoomed-in .pswp__img:active,
.pswp__img {
    cursor: -webkit-zoom-out;
    cursor: -moz-zoom-out;
    cursor: zoom-out
}

.pswp__container,
.pswp__img,
.pswp__button,
.pswp__counter {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.pswp__item {
    z-index: 1;
    overflow: hidden
}

.pswp__hidden {
    display: none !important
}

.pswp__content {
    pointer-events: none
}

.pswp__content>* {
    pointer-events: auto
}

.pswp__error-msg-container {
    display: grid
}

.pswp__error-msg {
    margin: auto;
    font-size: 1em;
    line-height: 1;
    color: var(--pswp-error-text-color)
}

.pswp .pswp__hide-on-close {
    opacity: .005;
    will-change: opacity;
    transition: opacity var(--pswp-transition-duration) cubic-bezier(.4, 0, .22, 1);
    z-index: 10;
    pointer-events: none
}

.pswp--ui-visible .pswp__hide-on-close {
    opacity: 1;
    pointer-events: auto
}

.pswp__button {
    position: relative;
    display: block;
    width: 50px;
    height: 60px;
    padding: 0;
    margin: 0;
    overflow: hidden;
    cursor: pointer;
    background: none;
    border: 0;
    box-shadow: none;
    opacity: .85;
    -webkit-appearance: none;
    -webkit-touch-callout: none
}

.pswp__button:hover,
.pswp__button:active,
.pswp__button:focus {
    transition: none;
    padding: 0;
    background: none;
    border: 0;
    box-shadow: none;
    opacity: 1
}

.pswp__button:disabled {
    opacity: .3;
    cursor: auto
}

.pswp__icn {
    fill: var(--pswp-icon-color);
    color: var(--pswp-icon-color-secondary)
}

.pswp__icn {
    position: absolute;
    top: 14px;
    left: 9px;
    width: 32px;
    height: 32px;
    overflow: hidden;
    pointer-events: none
}

.pswp__icn-shadow {
    stroke: var(--pswp-icon-stroke-color);
    stroke-width: var(--pswp-icon-stroke-width);
    fill: none
}

.pswp__icn:focus {
    outline: 0
}

div.pswp__img--placeholder,
.pswp__img--with-bg {
    background: var(--pswp-placeholder-bg)
}

.pswp__top-bar {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 60px;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    z-index: 10;
    pointer-events: none !important
}

.pswp__top-bar>* {
    pointer-events: auto;
    will-change: opacity
}

.pswp__button--close {
    margin-right: 6px
}

.pswp__button--arrow {
    position: absolute;
    width: 75px;
    height: 100px;
    top: 50%;
    margin-top: -50px
}

.pswp__button--arrow:disabled {
    display: none;
    cursor: default
}

.pswp__button--arrow .pswp__icn {
    top: 50%;
    margin-top: -30px;
    width: 60px;
    height: 60px;
    background: none;
    border-radius: 0
}

.pswp--one-slide .pswp__button--arrow {
    display: none
}

.pswp--touch .pswp__button--arrow {
    visibility: hidden
}

.pswp--has_mouse .pswp__button--arrow {
    visibility: visible
}

.pswp__button--arrow--prev {
    right: auto;
    left: 0
}

.pswp__button--arrow--next {
    right: 0
}

.pswp__button--arrow--next .pswp__icn {
    left: auto;
    right: 14px;
    transform: scaleX(-1)
}

.pswp__button--zoom {
    display: none
}

.pswp--zoom-allowed .pswp__button--zoom {
    display: block
}

.pswp--zoomed-in .pswp__zoom-icn-bar-v {
    display: none
}

.pswp__preloader {
    position: relative;
    overflow: hidden;
    width: 50px;
    height: 60px;
    margin-right: auto
}

.pswp__preloader .pswp__icn {
    opacity: 0;
    transition: opacity .2s linear;
    animation: pswp-clockwise .6s linear infinite
}

.pswp__preloader--active .pswp__icn {
    opacity: .85
}

@keyframes pswp-clockwise {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

.pswp__counter {
    height: 30px;
    margin-top: 15px;
    margin-inline-start: 20px;
    font-size: 14px;
    line-height: 30px;
    color: var(--pswp-icon-color);
    text-shadow: 1px 1px 3px var(--pswp-icon-color-secondary);
    opacity: .85
}

.pswp--one-slide .pswp__counter {
    display: none
}