/* Adapt the identical test-page styles to the hosting's legacy layout wrapper. */
.dsvl-home { line-height: 1.4; }
.dsvl-home #page { min-height: 100vh; }
.dsvl-home #mainmenu { height: auto; min-height: 48px; position: relative; z-index: 1; }
.dsvl-home #site-main { grid-column: 1 / -1; width: 100%; max-width: none; margin: 0; padding: 0; min-height: 0; }
.dsvl-home #site-main > .span-19 { width: 100%; margin: 0; border: 0; float: none; }
.dsvl-home #site-main > .span-5 { display: none; }
.dsvl-home #header .brand-header { width: 100%; min-height: 0; padding: 0; margin: 0; }
.dsvl-home #header .brand-link > span { display: none; }
.dsvl-home #mainmenu ul li a { border: 1px solid var(--dsvl-line); font-weight: 400; }
.dsvl-home #mainmenu ul li a:hover, .dsvl-home #mainmenu ul li.active a { background: var(--dsvl-ink); color: #fff; border-color: var(--dsvl-ink); }
.dsvl-home #footer { text-align: center; }
.dsvl-home .dsvl-fiber-caption { width: min(1320px, calc(100% - 48px)); }
.dsvl-home .dsvl-fiber-caption span { color: #fff; }
@media (max-width: 760px) {
    .dsvl-home .dsvl-fiber-caption { width: calc(100% - 40px); }
}

@media (max-width: 760px) {
    .dsvl-home.dsvl-public-language #mainmenu {
        width: 100%;
        min-width: 0;
        height: auto;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        justify-self: stretch;
        gap: 12px;
        padding: 12px 20px 16px;
    }
    .dsvl-home.dsvl-public-language #mainmenu .dsvl-language-switch {
        justify-content: flex-end;
        flex-wrap: wrap;
        margin: 0;
        padding: 0;
    }
    .dsvl-home.dsvl-public-language #mainmenu > ul {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
        min-width: 0;
        margin: 0;
        padding: 0;
        gap: 8px;
    }
    .dsvl-home.dsvl-public-language #mainmenu > ul > li {
        min-width: 0;
        margin: 0;
    }
    .dsvl-home.dsvl-public-language #mainmenu > ul > li > a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 44px;
        padding: 10px 8px;
        font-size: 14px;
        line-height: 1.4;
        text-align: center;
        white-space: normal;
        overflow-wrap: anywhere;
    }
}
