@media (max-width: 1199px) {

    /* ===== Блок мероприятий ===== */
    .event-card {
        flex: 0 0 calc(33.333% - 14px);
    }

    /* ===== Блок: Кухня / Бар ===== */
    .kb-card {
        min-height: 620px;
    }

    .kb-card__content {
        left: 28px;
        right: 28px;
        bottom: 30px;
    }

    /* ===== Страница меню ===== */
    .menu-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {

    /* ===== Блок Hero ===== */
    .finch-hero {
        min-height: auto;
    }

    .finch-hero__container {
        min-height: auto;
        padding: 80px 0 110px;
    }

    .finch-hero__buttons {
        grid-template-columns: 1fr;
        max-width: 620px;
        gap: 16px;
    }

    .finch-hero__title {
        -webkit-text-stroke: 1.5px #c9a24d;
    }

    /* Топ бар */
    .finch-hero__topbar {
        left: 24px;
        right: 24px;
        top: 18px;
        gap: 16px;
    }

    .finch-hero__logo {
        max-width: 150px;
        max-height: 62px;
    }

    .finch-hero__toptext {
        min-height: 38px;
        padding: 8px 14px;
        font-size: 0.88rem;
    }

    .finch-hero__container {
        padding-top: 130px;
    }

    /* ===== Блок мероприятий ===== */
    .event-modal__content {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 24px;
    }

    /* ===== Блок: залы и кабинки ===== */
    .rooms-grid {
        grid-template-columns: 1fr;
    }

    /* ===== Блок: Кухня / Бар ===== */
    .kb-showcase__grid {
        grid-template-columns: 1fr;
        padding-bottom: 50px;
    }

    .kb-card {
        min-height: 520px;
    }

    /* ===== Страница меню ===== */
    .menu-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .menu-page__cats {
        top: 114px;
    }

    .menu-card__title {
        font-size: 14px;
    }
    .menu-card__body {
        min-height: 50px;
    }

}

@media (max-width: 767px) {
    h1 {
        padding: 0;
        font-size: 1.5rem;
        line-height: 2rem;
    }
    h1, h2, h3 {
        font-weight: 400;
        line-height: 1.2;
        font-size: 1.2rem;
    }
    main {
        padding-top: 270px;
    }

    main#rooms, main#page {
        padding-top: 320px;
    }

    /* ===== Блок Hero ===== */
    .finch-hero {
        min-height: auto;
    }

    .finch-hero__container {
        width: min(calc(100% - 24px), 100%);
        min-height: auto;
        padding: 56px 0 92px;
    }

    .finch-hero__image {
        display: block;
    }

    .finch-hero__content {
        padding-top: 50px;
    }

    .finch-hero__subtitle {
        font-size: clamp(1.4rem, 4vw, 1.6rem);
        line-height: 1.08;
        margin-bottom: 14px;
    }

    .finch-hero__subtitle span {
        font-size: clamp(1rem, 1vw, 3.7rem);
    }

    .finch-hero__title {
        margin: 0;
    }

    .finch-hero__heading {
        margin-bottom: 24px;
    }

    .finch-hero__buttons {
        gap: 12px;
        margin-bottom: 20px;
    }

    .finch-hero__btn {
        min-height: 64px;
        padding: 14px 16px;
        border-width: 3px;
        border-radius: 18px;
        font-size: 1rem;
    }

    .finch-hero__schedule {
        font-size: 1.1rem;
    }

    .finch-hero__ticker {
        height: 44px;
    }

    .finch-hero__ticker-text {
        font-size: 14px;
        padding-right: 40px;
    }

    /* Топ бар */
    .finch-hero__topbar {
        grid-template-columns: 1fr;
        gap: 12px;
        top: 14px;
        left: 16px;
        right: 16px;
    }

    .finch-hero__topcell--left,
    .finch-hero__topcell--center,
    .finch-hero__topcell--right {
        justify-self: center;
    }

    .finch-hero__toptext {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .finch-hero__toptext.bage-ya {
        width: 55%;
        justify-content: center;
        text-align: center;
    }

    .finch-hero__logo {
        max-width: 140px;
        max-height: 54px;
    }

    .finch-hero__container {
        padding-top: 320px;
    }

    /* ===== Блок мероприятий ===== */
    .event-modal {
        padding: 12px;
    }

    .event-modal__dialog {
        width: 100%;
        max-height: calc(100vh - 24px);
        border-radius: 18px;
    }

    .event-modal__content {
        padding: 18px;
    }

    .event-modal__title {
        font-size: 1.6rem;
    }

    .event-modal__subtitle,
    .event-modal__text p,
    .event-modal__list li,
    .event-modal__note {
        font-size: 0.93rem;
    }

    .event-modal__button {
        width: 100%;
    }

    .gss-card__media .gss-card__video {
        height: 100%;
    }

    /* ===== Блок: залы и кабинки ===== */
    .rooms-showcase {
        padding: 60px 0;
        z-index: -1;
    }

    .rooms-showcase__container {
        width: min(calc(100% - 24px), 100%);
    }

    .room-card {
        padding: 16px;
    }

    .room-card__slider {
        height: 240px;
    }

    .room-card__title {
        font-size: 24px;
    }

    .room-card__tagline {
        font-size: 15px;
    }

    /* ===== Блок: Кухня / Бар ===== */
    .kb-card {
        min-height: 420px;
    }

    .kb-card__content {
        left: 20px;
        right: 20px;
        bottom: 22px;
    }

    .kb-card__title {
        margin-bottom: 12px;
        font-size: 2rem;
    }

    .kb-card__text {
        margin-bottom: 18px;
        font-size: 0.95rem;
        line-height: 1.6;
    }

    .kb-card__button {
        min-width: 132px;
        min-height: 48px;
        padding: 12px 20px;
        font-size: 0.92rem;
    }

    /* ===== Страница меню ===== */


    .menu-grid {
        grid-template-columns: 1fr;
    }

    .menu-section__title {
        font-size: 24px;
    }

    .menu-page__cats {
        top: 104px;
    }

    .events-loto {
        position: relative;
        padding: 0 0 50px 0;
        overflow: hidden;
    }

    .loto-hero__subtitle {
        gap: 10px;
        font-size: clamp(1.25rem, 3vw, 1.8rem);
        line-height: 1.2;
    }

    .loto-hero__subtitle i {
        width: 6px;
        height: 6px;
        flex-basis: 6px;
    }

    .loto-hero__image-link {
        margin-top: 26px;
        border-radius: 18px;
    }

}

/* ===== Очень широкие экраны ===== */
@media (min-width: 1600px) {

    /* ===== Блок Hero ===== */
    .finch-hero__container {
        width: min(1600px, calc(100% - 80px));
    }

}

@media (max-width: 991px) {
    .event-card {
        flex: 0 0 calc((100% - 20px) / 2);
    }

    .room-page__layout {
        grid-template-columns: 1fr;
    }

    .room-page__hero {
        flex-direction: column;
        align-items: flex-start;
    }

    .room-page__hero-right {
        min-width: 0;
        width: 100%;
    }

    .room-gallery__grid {
        grid-template-columns: 1fr;
    }

    .room-sidecard__card {
        position: static;
    }

    .room-mini-card {
        flex-basis: 500px;
    }

}

@media (max-width: 767px) {

    .events-slider {
        display: block;
    }

    .events-slider__viewport {
        overflow: hidden;
        width: 100%;
    }

    .events-slider__nav {
        display: none !important;
    }

    .events-slider__track {
        width: auto;
        gap: 14px;
    }

    .event-card {
        flex: 0 0 calc(100% - 44px);
    }

    .events-slider__mobile-hint {
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 10px auto 0;
        padding: 8px 12px;
        width: fit-content;
        max-width: 100%;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        color:#ffd200;
        font-size: 12px;
        line-height: 1.2;
        text-align: center;
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        transition: opacity .25s ease, transform .25s ease;
    }

    .events-slider__mobile-hint.is-hidden {
        opacity: 1;
        transform: translateY(6px);
        pointer-events: none;
    }

    .events-slider__mobile-dots {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 8px;
        margin: 10px;
    }

    .events-slider__mobile-dot {
        width: 8px;
        height: 8px;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.25);
        cursor: pointer;
        transition: transform .2s ease, background .2s ease;
    }

    .events-slider__mobile-dot.is-active {
        background: #e0a927;
        transform: scale(1.15);
    }

    .events-showcase__head{
        margin-bottom: 0;
    }

    .gss[data-gss-mobile-slider] .gss__viewport {
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding-bottom: 10px;
    }

    .gss[data-gss-mobile-slider] .gss__viewport::-webkit-scrollbar {
        display: none;
    }

    .gss[data-gss-mobile-slider] .gss__track {
        width: max-content;
        gap: 14px;
        transform: none !important;
    }

    .gss[data-gss-mobile-slider] .gss-card {
        flex: 0 0 calc(100vw - 72px);
        width: calc(100vw - 72px);
        max-width: 420px;
    }

    .gss[data-gss-mobile-slider] .gss__mobile-hint {
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 10px auto 0;
        padding: 8px 12px;
        width: fit-content;
        max-width: calc(100% - 32px);
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        color:#ffd200;
        font-size: 12px;
        line-height: 1.2;
        text-align: center;
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        transition: opacity .25s ease, transform .25s ease;
    }

    .gss[data-gss-mobile-slider] .gss__mobile-hint.is-hidden {
        opacity: 1;
        transform: translateY(6px);
        pointer-events: none;
    }

    .gss[data-gss-mobile-slider] .gss__mobile-dots {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 8px;
        margin: 10px;
    }

    .gss[data-gss-mobile-slider] .gss__mobile-dot {
        width: 8px;
        height: 8px;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.25);
        cursor: pointer;
        transition: transform .2s ease, background .2s ease;
    }

    .gss[data-gss-mobile-slider] .gss__mobile-dot.is-active {
        background: #e0a927;
        transform: scale(1.15);
    }

    .room-card__nav,
    .room-card__arrow,
    .rooms-showcase__nav,
    .events-slider__nav,
    .gss__nav,
    button[aria-label*="След"],
    button[aria-label*="Пред"],
    button[aria-label*="next"],
    button[aria-label*="prev"] {
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
        user-select: none;
        -webkit-user-select: none;
    }

    .room-gallery__main {
        height: 260px;
    }

    .room-gallery__thumb {
        height: 200px;
    }

    .room-gallery__more {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .gss {
        height: auto !important;
    }

    .gss-card__img {
        height: 360px;
    }

    .room-other__title {
        text-align: center;
    }
}

@media (max-width: 560px) {
    .room-mini-card {
        flex-basis: 260px;
    }
}


/* ===== Блок: банкеты ===== */

@media (max-width: 991px) {
    .banquets-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .banquet-card__slider {
        height: 340px;
    }

    .banquet-card__title {
        font-size: 24px;
    }

    .banquet-card__tagline {
        font-size: 14px;
    }

    .banquet-card__actions {
        flex-direction: column;
    }
}
