body.spc-popup-open { overflow: hidden; }

.spc-novelty-popup {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: grid;
    place-items: center;
    padding: 24px;
}

.spc-novelty-popup[hidden] { display: none !important; }

.spc-novelty-popup__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 26, 42, .66);
    backdrop-filter: blur(5px);
}

.spc-novelty-popup__dialog {
    position: relative;
    z-index: 1;
    width: min(920px, 100%);
    max-height: min(760px, calc(100vh - 48px));
    overflow: auto;
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
    background: #fff;
    color: #0f1a2a;
    border-radius: 24px;
    box-shadow: 0 28px 90px rgba(15, 26, 42, .28);
}

.spc-novelty-popup__dialog:focus { outline: none; }

.spc-novelty-popup__close {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 3;
    width: 42px;
    height: 42px;
    border: 1px solid #e7e3dc;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.94);
    color: #0f1a2a;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
}

.spc-novelty-popup__close:hover,
.spc-novelty-popup__close:focus-visible { border-color: #a98555; color: #7f623d; }

.spc-novelty-popup__media { min-height: 100%; background: #f8f6f2; }
.spc-novelty-popup__image { width: 100%; height: 100%; min-height: 390px; display: block; object-fit: cover; }

.spc-novelty-popup__content {
    align-self: center;
    padding: clamp(38px, 6vw, 72px);
}

.spc-novelty-popup__eyebrow {
    margin: 0 0 10px;
    color: #7f623d;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.spc-novelty-popup__content h2 {
    margin: 0 0 18px;
    color: #0f1a2a;
    font-size: clamp(2rem, 4vw, 3.35rem);
    line-height: 1.03;
    letter-spacing: -.035em;
}

.spc-novelty-popup__message { color: #687180; font-size: 1.02rem; }
.spc-novelty-popup__message p { margin: 0 0 14px; }

.spc-novelty-popup__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    margin-top: 12px;
    padding: 0 22px;
    border-radius: 12px;
    background: #7f623d;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
}

.spc-novelty-popup__button:hover,
.spc-novelty-popup__button:focus-visible { background: #0f1a2a; color: #fff; }

.spc-novelty-popup__dialog--no-media { grid-template-columns: 1fr; max-width: 650px; }

@media (max-width: 760px) {
    .spc-novelty-popup { padding: 14px; align-items: end; }
    .spc-novelty-popup__dialog {
        grid-template-columns: 1fr;
        width: 100%;
        max-height: calc(100vh - 28px);
        border-radius: 20px;
    }
    .spc-novelty-popup__media { max-height: 250px; }
    .spc-novelty-popup__image { min-height: 0; height: 250px; }
    .spc-novelty-popup__content { padding: 32px 24px 28px; }
    .spc-novelty-popup__content h2 { padding-right: 34px; }
}

@media (prefers-reduced-motion: reduce) {
    .spc-novelty-popup__backdrop { backdrop-filter: none; }
}
