/* Дополнительные стили для предотвращения FOUC */

/* Убеждаемся что основные элементы имеют правильные размеры с самого начала */
.t480__textwrapper {
    height: 560px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.t480__textwrapper.t-align_center {
    text-align: center !important;
}

/* Убираем фиксированные размеры - позволяем JavaScript управлять */
.t480__blockimg {
    /* Убираем фиксированную высоту - пусть JS управляет */
}

.t480__blockimg.t-bgimg {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    display: block;
}

/* Мобильная адаптация - убираем фиксированные размеры */
@media (max-width: 960px) {
    .t480__col.t-col_6 {
        width: 100%;
        max-width: 100%;
        min-height: auto;
    }

    .t480__textwrapper {
        height: auto;
        min-height: 300px;
        padding: 40px 20px;
    }

    /* Убираем фиксированные размеры - пусть JS управляет */
}

@media (max-width: 480px) {

    /* Правильное кадрирование для мобильных: 390x420 */
    .t480__blockimg.t-bgimg {
        height: 420px !important;
        background-size: cover !important;
        background-position: center !important;
    }
}

/* Фиксируем размеры контейнеров */
.t480__col.t-col_6 {
    width: 50% !important;
    max-width: 560px !important;
    min-height: 560px !important;
}

/* Мобильная адаптация - сохраняем фиксированное кадрирование изображения */
@media (max-width: 960px) {
    .t480__col.t-col_6 {
        width: 100% !important;
        max-width: 100% !important;
        min-height: auto !important;
    }

    .t480__textwrapper {
        height: auto !important;
        min-height: 300px !important;
        padding: 40px 20px !important;
    }

    /* Сохраняем высоту изображения 560px для фиксированного кадрирования */
    .t480__blockimg {
        height: 560px !important;
    }
}

/* Дополнительная защита от горизонтального скролла */
.t480 {
    overflow-x: hidden !important;
    max-width: 100% !important;
}

/* Плавная анимация появления */
body.css-loaded {
    animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* Предотвращаем мерцание кнопки записи */
.booking-float-btn {
    will-change: transform !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
}