.layout { min-height: 100vh; }
.layout .layout-content { flex: 1; width: 100%; }
.layout .layout-main { display: block; }
.layout .layout-main > .main { max-width: 1100px; margin: 0 auto; float: none; }
.header .part-top { padding: 8px 25px; }
.header .part-top-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1100px;
    margin: 0 auto;
}
.header-logo img { height: 36px; width: auto; display: block; }
.header .locales { float: none; margin-left: 0; }
.header .locales ul { top: 100%; z-index: 20; }
.header .locales:hover ul,
.header .locales.open ul { display: block; }
.lightbox {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0,0,0,.9);
    align-items: center;
    justify-content: center;
}
.lightbox.open { display: flex; }
.lightbox img,
.lightbox video {
    max-width: 92vw;
    max-height: 92vh;
    object-fit: contain;
}
.lightbox .close {
    position: absolute;
    top: 16px;
    right: 22px;
    color: #fff;
    font-size: 32px;
    text-decoration: none;
}
