/* Desktop uses the original second/third/four menu markup and site styles. */
.main-menu > .main-list:focus-within > .second-menu,
.main-menu > .main-list > .second-menu > .second-list:focus-within > .third-menu,
.main-menu .third-list:focus-within > .four-menu { display: block; }
/* The iblock has one extra level; keep the same legacy appearance at that level. */
.main-menu .five-menu {
    display: none; list-style: none; color: #fff; padding: 0; width: 100%;
    position: relative; left: 100%; top: -50px; background-color: #000D;
}
.main-menu .five-list {
    text-align: center; width: 100%; position: relative;
    background-color: #000D; height: 50px; text-wrap: nowrap;
}
.main-menu .four-list:hover > .five-menu,
.main-menu .four-list:focus-within > .five-menu,
.main-menu .five-list:hover > .five-menu,
.main-menu .five-list:focus-within > .five-menu { display: block; }
.main-menu .five-list:hover { background-color: #555; }
/* Mobile keeps the site's existing black text and plain link treatment. */
.spa-test-tree--mobile, .spa-test-tree--mobile ul { list-style: none; margin: 0; padding: 0; }
.spa-test-tree--mobile .spa-test-tree__item { margin: 1rem 0 0; text-align: left; }
.spa-test-tree--mobile ul { margin-left: 1rem; }
.spa-test-tree--mobile a { color: inherit; font-size: 16px; line-height: 1.4; text-decoration: none; overflow-wrap: anywhere; }
.spa-test-menu-mobile > summary, .spa-test-tree--mobile summary { cursor: pointer; list-style: none; }
.spa-test-menu-mobile > summary::-webkit-details-marker,
.spa-test-tree--mobile summary::-webkit-details-marker { display: none; }
.spa-test-menu-mobile > summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.spa-test-menu-mobile > summary > a { flex: 1; }
.spa-test-menu-mobile > summary > span { font-size: 24px; padding: 4px 12px; }
.spa-test-tree--mobile summary { display: flex; align-items: center; gap: 1rem; }
.spa-test-tree--mobile summary > a { flex: 1; }
.spa-test-tree--mobile summary::after { content: '+'; font-size: 22px; }
.spa-test-tree--mobile details[open] > summary::after { content: '−'; }
/* Preserve the original closed drawer; expanded branches push contacts down. */
#mobile-menu .panel > .p-2:has(.spa-test-menu-mobile[open]) { height: auto !important; min-height: 100%; align-content: start; }
#mobile-menu .panel > .p-2:has(.spa-test-menu-mobile[open]) > .pos-a { position: static !important; margin: 1.5rem 0 0 !important; }
