.nav-dropdown { position: relative; display: flex; align-items: stretch; }
.nav-dropdown-trigger { gap: 6px; }
.nav-dropdown-trigger > span { color: var(--brand-red-text); font-size: 14px; transition: transform .24s ease; }
.nav-dropdown-trigger.is-section-current { color: var(--primary-text); }
.nav-dropdown-trigger.is-section-current::after { content: ''; position: absolute; left: 0; right: 0; bottom: 6px; height: 1px; background: var(--brand-red); }
.nav-submenu { position: absolute; top: calc(100% - 2px); left: 50%; width: 218px; padding: 8px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; background: rgba(15,15,15,.96); box-shadow: 0 18px 42px rgba(0,0,0,.42); opacity: 0; visibility: hidden; pointer-events: none; transform: translate(-50%, 8px); transition: opacity .2s ease, visibility .2s ease, transform .2s ease; }
.nav-submenu.nav-mega-menu { width: 240px; display: block; }
.product-nav-flyout { position: relative; }
.product-nav-parent { display: flex; align-items: center; min-height: 44px; }
.desktop-nav .product-nav-parent a { flex: 1; display: flex; min-height: 44px !important; margin: 0; padding: 0 12px !important; color: var(--primary-text) !important; font-size: 12px !important; }
.desktop-nav .product-nav-flyout > .product-nav-children { display: none; position: absolute; left: 100%; top: 0; width: 260px; margin: 0; padding: 8px; border: 1px solid var(--border); border-radius: 12px; background: rgba(15,15,15,.98); box-shadow: 0 18px 42px rgba(0,0,0,.42); }
.product-nav-flyout:hover > .product-nav-children, .product-nav-flyout:focus-within > .product-nav-children { display: block; }
.product-nav-flyout:hover > .product-nav-parent, .product-nav-flyout:focus-within > .product-nav-parent { background: rgba(255,255,255,.06); border-radius: 7px; }
.product-nav-group summary { display: flex; align-items: center; justify-content: space-between; min-height: 44px; cursor: pointer; list-style: none; }
.product-nav-group summary::-webkit-details-marker { display: none; }
.product-nav-group summary:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.product-nav-group summary a { flex: 1; min-height: 44px !important; margin: 0; padding: 0 12px !important; font-size: 12px !important; color: var(--primary-text) !important; }
.product-nav-arrow { display: grid; place-items: center; width: 44px; height: 44px; color: var(--brand-red-text); }
.product-nav-group[open] > summary .product-nav-arrow { transform: rotate(180deg); }
.product-nav-children { margin: 0 12px 8px 24px; border-left: 1px solid var(--border); }
.desktop-nav .product-nav-children a { display: flex; padding-left: 14px; min-height: 44px; font-size: 12px; }
.mobile-nav { max-height: calc(100vh - 100px); overflow-y: auto; }
.nav-menu-group { min-width: 0; padding: 4px; }
.nav-menu-group-heading { margin: 0 4px 4px; min-height: 24px !important; padding: 4px !important; color: var(--brand-red-text) !important; font-size: 10px !important; font-weight: 800 !important; letter-spacing: .08em; text-transform: uppercase; }
.nav-menu-group-heading:hover, .nav-menu-group-heading:focus-visible { background: transparent !important; color: var(--primary-text) !important; }
.desktop-nav .nav-menu-group a { min-height: 36px; padding: 0 8px; font-size: 11px; }
.nav-dropdown:hover .nav-submenu, .nav-dropdown:focus-within .nav-submenu { opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 0); }
.nav-dropdown:hover .nav-dropdown-trigger > span, .nav-dropdown:focus-within .nav-dropdown-trigger > span { transform: rotate(180deg); }
.desktop-nav .nav-submenu a { min-height: 44px; padding: 0 12px; border-radius: 7px; font-size: 12px; }
.desktop-nav .nav-submenu a:hover, .desktop-nav .nav-submenu a:focus-visible, .desktop-nav .nav-submenu a[aria-current="page"] { background: rgba(255,255,255,.06); color: var(--primary-text); }
.desktop-nav .nav-submenu a[aria-current="page"]::after { display: none; }

.brand-mark { flex: 0 0 48px; width: 48px; height: 48px; margin-right: 12px; border-radius: 4px; background: #fff url("/images/brand/yuxuan-logo.png") center / contain no-repeat; }
@media(max-width:980px) { .mobile-product-links { display:grid; padding:4px 0 8px 18px; } .mobile-nav .mobile-product-links a:not(.btn) { min-height:44px; border-bottom:0; font-size:12px; } .mobile-menu-group-heading { font-weight:600; } }
