.gmr-virtual-museum-page,
.gmr-virtual-museum-page #page,
.gmr-virtual-museum-page .site,
.gmr-virtual-museum-page .site-content,
.gmr-virtual-museum-page .content-area,
.gmr-virtual-museum-page main.site-main,
.gmr-virtual-museum-page article,
.gmr-virtual-museum-page .entry-content {
    background: #050b1c !important;
}

.gmr-virtual-museum-page .entry-header,
.gmr-virtual-museum-page .page-header,
.gmr-virtual-museum-page .entry-title {
    display: none !important;
}

.gmr-virtual-museum-page .site-content,
.gmr-virtual-museum-page .content-area,
.gmr-virtual-museum-page main.site-main,
.gmr-virtual-museum-page article,
.gmr-virtual-museum-page .entry-content {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.gmr-vm,
.gmr-vm * {
    box-sizing: border-box;
}

.gmr-vm {
    --gmr-vm-page: #050b1c;
    --gmr-vm-panel: #17142a;
    --gmr-vm-accent: #9b6bd0;
    --gmr-vm-text: #f8f4ff;
    --gmr-vm-muted: #d8d0e3;
    position: relative;
    width: 100%;
    min-height: 760px;
    overflow: hidden;
    padding: 62px 24px 78px;
    color: var(--gmr-vm-text);
    background:
        radial-gradient(circle at 50% 4%, rgba(118, 83, 151, .18), transparent 32%),
        radial-gradient(circle at 8% 82%, rgba(89, 44, 123, .16), transparent 24%),
        linear-gradient(145deg, #080b1d 0%, var(--gmr-vm-page) 58%, #030916 100%);
}

.gmr-vm::before,
.gmr-vm::after {
    content: "◆";
    position: absolute;
    z-index: 0;
    color: rgba(139, 89, 179, .12);
    font-size: 250px;
    line-height: 1;
    transform: rotate(25deg);
    pointer-events: none;
}

.gmr-vm::before { left: -95px; bottom: -45px; }
.gmr-vm::after { right: -90px; bottom: -30px; transform: rotate(-25deg); }

.gmr-vm__hero,
.gmr-vm__rooms,
.gmr-vm__coming {
    position: relative;
    z-index: 1;
    width: min(100%, 1044px);
    margin-inline: auto;
}

.gmr-vm__hero {
    text-align: center;
    margin-bottom: 46px;
}

.gmr-vm__eyebrow {
    margin: 0 0 8px !important;
    color: #b899d3 !important;
    font: 600 12px/1.3 system-ui, sans-serif !important;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.gmr-vm__hero h1 {
    margin: 0 !important;
    color: var(--gmr-vm-text) !important;
    font: 500 clamp(42px, 5vw, 62px)/1.08 Georgia, "Times New Roman", serif !important;
    letter-spacing: -.02em;
}

.gmr-vm__divider {
    display: grid;
    grid-template-columns: 92px auto 92px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 20px auto 18px;
    color: #bd8ee6;
}

.gmr-vm__divider::before,
.gmr-vm__divider::after {
    content: "";
    display: block;
    height: 1px;
    background: linear-gradient(90deg, transparent, #b985de);
}

.gmr-vm__divider::after {
    background: linear-gradient(90deg, #b985de, transparent);
}

.gmr-vm__divider span {
    font-size: 16px;
}

.gmr-vm__intro {
    max-width: 700px;
    margin: 0 auto !important;
    color: var(--gmr-vm-muted) !important;
    font: 400 clamp(17px, 2vw, 20px)/1.6 system-ui, sans-serif !important;
}

.gmr-vm__rooms {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.gmr-vm__room {
    display: grid;
    grid-template-columns: 176px minmax(0, 1fr);
    gap: 27px;
    min-height: 224px;
    padding: 20px;
    border: 1px solid color-mix(in srgb, var(--gmr-vm-accent) 75%, white 5%);
    border-radius: 12px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .035), transparent 42%),
        color-mix(in srgb, var(--gmr-vm-panel) 92%, transparent);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025), 0 14px 40px rgba(0,0,0,.16);
}

.gmr-vm__image-wrap {
    display: grid;
    place-items: center;
    min-height: 180px;
    overflow: hidden;
    border: 1px solid rgba(180, 124, 217, .58);
    border-radius: 9px;
    background: rgba(2, 6, 17, .72);
}

.gmr-vm__image-wrap img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: contain !important;
    margin: 0 !important;
}

.gmr-vm__placeholder {
    color: #9b6bd0;
    font-size: 80px;
}

.gmr-vm__room-copy {
    align-self: center;
}

.gmr-vm__room h2 {
    margin: 0 0 10px !important;
    color: var(--gmr-vm-text) !important;
    font: 500 clamp(25px, 2.5vw, 32px)/1.15 Georgia, "Times New Roman", serif !important;
}

.gmr-vm__room p {
    min-height: 54px;
    margin: 0 0 20px !important;
    color: var(--gmr-vm-muted) !important;
    font: 400 16px/1.55 system-ui, sans-serif !important;
}

.gmr-vm__button {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    padding: 10px 25px;
    border: 1px solid rgba(210, 175, 238, .16);
    border-radius: 8px;
    color: #fff !important;
    background: linear-gradient(135deg, color-mix(in srgb, var(--gmr-vm-accent) 86%, white 8%), color-mix(in srgb, var(--gmr-vm-accent) 76%, #4d2374));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 8px 18px rgba(55, 19, 83, .28);
    font: 500 16px/1 system-ui, sans-serif !important;
    text-decoration: none !important;
    transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}

.gmr-vm__button:hover,
.gmr-vm__button:focus {
    color: #fff !important;
    filter: brightness(1.13);
    transform: translateY(-2px);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 10px 22px rgba(77, 31, 112, .38);
}

.gmr-vm__coming {
    display: grid;
    grid-template-columns: minmax(40px, 1fr) auto minmax(40px, 1fr);
    align-items: center;
    gap: 18px;
    margin-top: 32px;
    padding: 21px 46px;
    border: 1px solid rgba(159, 103, 196, .62);
    border-radius: 10px;
    background: rgba(25, 20, 43, .78);
}

.gmr-vm__coming span {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(178, 127, 215, .7));
}

.gmr-vm__coming span:last-child {
    background: linear-gradient(90deg, rgba(178, 127, 215, .7), transparent);
}

.gmr-vm__coming p {
    margin: 0 !important;
    color: #c59be2 !important;
    font: 500 clamp(17px, 2vw, 22px)/1.3 Georgia, "Times New Roman", serif !important;
    text-align: center;
}

@media (max-width: 980px) {
    .gmr-vm__rooms { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
    .gmr-vm { padding: 44px 16px 60px; }
    .gmr-vm__hero { margin-bottom: 34px; }
    .gmr-vm__room {
        grid-template-columns: 1fr;
        padding: 16px;
    }
    .gmr-vm__image-wrap {
        height: 210px;
    }
    .gmr-vm__room p { min-height: 0; }
    .gmr-vm__coming {
        grid-template-columns: 1fr;
        padding: 18px;
    }
    .gmr-vm__coming span { display: none; }
}
