/* Скрыто до открытия (inline display:none убран — иначе часть браузеров/jQuery даёт конфликт) */
.micros-modal--hidden {
    display: none !important;
}

/* Оверлей под модалкой (выше шапки z-index:999 и моб. меню 99999) */
.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100000;
    background-color: #fffcf6f7;
    -webkit-tap-highlight-color: transparent;
}

/* Общее модальное окно */
.modal {
    position: fixed;
    top: 20%;
    left: 50%;
    right: auto;
    bottom: auto;
    transform: translate(-50%, -50%);
    box-sizing: border-box;
    max-width: clamp(320px, 80vw, 850px);
    width: calc(100% - 60px);
    background-color: var(--bg);
    border: solid 1px var(--red);
    border-radius: 40px;
    padding: 30px;
    color: #E0E0F0;
    z-index: 100001;

    /* fallback для браузеров без dvh */
    max-height: calc(100vh - 40px);
    max-height: min(calc(100svh - 40px), calc(100dvh - 40px));
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

/* Красная модалка */
.modal.red-modal {
    background-color: #B03535;
    max-width: 840px;
    border-radius: 20px;
    min-height: unset;
}

/* Компактное видео — только на узких экранах (раньше действовало и на десктопе) */
@media (max-width: 600px) {
    .modal.red-modal.mobile-modal {
        height: min(60vh, 60dvh);
        max-width: min(340px, calc(100vw - 32px));
    }
}

/* Заголовок модального окна */
.modal-title {
    text-align: center;
    font-weight: 700;
    font-size: clamp(22px, 5vw, 40px);
    line-height: 1.2;
    color: #fff;
    margin-bottom: clamp(16px, 3vw, 32px);
}

/* Кнопка закрытия */
.close-btn {
    display: block;
    width: clamp(20px, 3vw, 40px);
    height: clamp(20px, 3vw, 40px);
    border: none;
    color: #000000;
    font-size: clamp(24px, 4vw, 32px);
    font-weight: 200;
    cursor: pointer;
    position: absolute;
    top: 10px;
    right: 10px;
    line-height: 1;
    transition: transform 0.3s ease;
    text-align: center;
    background-color: var(--bg);
    padding: 5px;
    z-index: 2;
    border-radius: 50%;
    background-image: url("../images/closeIcon.svg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 20px 20px;
}

.modal.red-modal .close-btn {
    background-color: transparent;
    background-image: url("../images/close-w.svg");
}

/* Красная модалка с формой */
.red-modal .lead__form {
    padding: 0 !important;
}

/* Картинка в новости внутри модалки */
.modal-content .news-image {
    width: 100%;
    max-height: 282px;
    position: relative;
    overflow: hidden;
    border-radius: 20px;
}

.modal-content .news-image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/* Заголовок новости */
.modal-content h1 {
    font-weight: 600;
    font-size: clamp(20px, 3vw, 24px);
    line-height: 120%;
    text-transform: uppercase;
    color: #2A2A2A;
    font-family: var(--font);
}

/* Текст новости */
.modal-content .full-news {
    font-size: clamp(14px, 2vw, 18px);
    line-height: 140%;
    color: #2A2A2A;
    font-family: var(--font);
}

/* Дата новости */
.modal-content .news-date {
    font-weight: 600;
    font-size: clamp(14px, 2vw, 18px);
    line-height: 120%;
    text-align: right;
    color: #2A2A2A;
    font-family: var(--font);
}

/* Заголовок красной модалки */
.red-modal-title {
    font-weight: 600;
    font-size: clamp(20px, 3vw, 24px);
    line-height: 120%;
    text-transform: uppercase;
    color: #FFFCF6;
}

/* Адаптивные правки для маленьких экранов */
@media (max-width: 600px) {
    .modal {
        padding: 20px;
        border-radius: 24px;
        width: calc(100% - 32px);
        max-height: calc(100vh - 24px);
        max-height: min(calc(100svh - 24px), calc(100dvh - 24px));
    }

    .modal.red-modal {
        border-radius: 18px;
    }

    .close-btn {
        top: 8px;
        right: 8px;
        background-size: 16px 16px;
    }

    .modal-content .news-image {
        max-height: 220px;
        border-radius: 16px;
    }
}

/* Блокировка прокрутки: только overflow (position:fixed на body ломал дочерние position:fixed модалки) */
html.micros-modal-open,
body.micros-modal-open {
    overflow: hidden;
    overscroll-behavior: none;
}
