/* Desktop menu */
.ow-nav-ul { list-style: none; padding: 0; margin: 0; display: flex; align-items: center; position: relative; gap: 25px; }
.ow-sep { display: block; flex-shrink: 0; width: 1px; height: 20px; background-color: #e0e0e0; align-self: center; }
.ow-menu-item { position: relative; padding: 15px 0; display: flex; align-items: center; }
.ow-main-link { text-decoration: none; display: flex; align-items: center; gap: 8px; transition: var(--ow-anim-speed, 0.3s); line-height: 1; outline: none; position: relative; }
.ow-main-link.active { font-weight: bold; }
.ow-badge { position: absolute; top: -10px; right: -12px; font-size: 9px; font-weight: bold; line-height: 1; white-space: nowrap; z-index: 2; transition: 0.3s; }
.ow-menu-item:hover > .ow-dropdown { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }
.is-mega-parent { position: static !important; }
.ow-grid { display: grid; gap: 25px; }
.ow-col-title { font-weight: bold; display: block; margin-bottom: 8px; text-decoration: none; box-sizing: border-box; transition: color .15s, background-color .15s; }
.ow-col { padding-bottom: 0; }
.ow-sub-link { display: block; padding: 5px 0; text-decoration: none; color: inherit; }
.ow-nested-link::before { content: "\2014"; margin-right: 8px; }
.ow-dropdown-arrow { font-size: 9px; opacity: 0.5; margin-left: 4px; display: inline-block; transition: transform 0.25s, opacity 0.25s; }
.ow-menu-item:hover .ow-dropdown-arrow { transform: rotate(180deg); opacity: 1; }
/* Mobile menu — global defaults */
.ow-mob-item { border-bottom: 1px solid #eee; }
.ow-mob-header { display: flex; justify-content: space-between; align-items: center; }
.ow-mob-main { display: block; text-decoration: none; flex: 1; transition: background-color .15s, color .15s; }
.ow-mob-toggle-btn { background: none; border: none; cursor: pointer; padding: 12px 8px; font-size: 11px; opacity: 0.5; transition: transform 0.25s, opacity 0.25s; }
.ow-mob-item.open .ow-mob-toggle-btn { transform: rotate(180deg); opacity: 1; }
.ow-mob-sub { display: none; padding: 0 0 8px 15px; }
.ow-mob-item.open > .ow-mob-sub { display: block; }
.ow-mob-sub-title { display: block; padding: 7px 0; text-decoration: none; font-weight: bold; font-size: 0.9em; }
.ow-mob-sub-link { display: block; padding: 5px 0; text-decoration: none; font-size: 0.88em; }
.ow-mob-sub-nested { padding-left: 10px; opacity: 0.8; }
.ow-mob-sub-nested::before { content: "\2014"; margin-right: 5px; }

/* Dropdown scrollbar — thin discreet style (default) */
.ow-dropdown::-webkit-scrollbar { width: 6px; height: 6px; }
.ow-dropdown::-webkit-scrollbar-track { background: transparent; }
.ow-dropdown::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,.25);
    border-radius: 3px;
}
.ow-dropdown::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,.4); }
.ow-dropdown { scrollbar-width: thin; scrollbar-color: rgba(0,0,0,.25) transparent; -webkit-overflow-scrolling: touch; }

/* Mobile menu scroll */
.ow-mob-menu-scroll {
    max-height: 75vh;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}
.ow-mob-menu-scroll::-webkit-scrollbar { width: 6px; }
.ow-mob-menu-scroll::-webkit-scrollbar-track { background: transparent; }
.ow-mob-menu-scroll::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,.2);
    border-radius: 3px;
}
.ow-mob-menu-scroll { scrollbar-width: thin; scrollbar-color: rgba(0,0,0,.2) transparent; }

/* Scrollbar style variants */
.ow-dropdown.ow-scroll-hidden::-webkit-scrollbar { display: none; }
.ow-dropdown.ow-scroll-hidden { scrollbar-width: none; -ms-overflow-style: none; }
.ow-dropdown.ow-scroll-native::-webkit-scrollbar { width: auto; }
.ow-dropdown.ow-scroll-native { scrollbar-width: auto; }
