/* NewProjectJP v1.2.1: icons and active-state for the two-row storefront header.
   Uses local inline SVGs so the menu renders without external icon fonts. */
.np-ui-icon { display:block; flex:0 0 auto; color:currentColor; vertical-align:middle; }
.np-navigation .np-menu { gap:9px; }
.np-navigation .np-menu > li { display:flex; align-items:center; }
.np-navigation .np-menu > li > a {
    display:inline-flex; align-items:center; justify-content:center; gap:9px;
    min-height:38px; padding:9px 13px; border-radius:12px;
    color:#e5e1ec; font-size:13px; font-weight:780; line-height:1.25;
    transition:background-color .16s ease, color .16s ease;
}
.np-navigation .np-menu > li > a .np-ui-icon { width:17px; height:17px; opacity:.94; }
.np-navigation .np-menu > li > a:hover,
.np-navigation .np-menu > li.current-menu-item > a,
.np-navigation .np-menu > li.current_page_item > a,
.np-navigation .np-menu > li.current-menu-ancestor > a,
.np-navigation .np-menu > li.current_page_ancestor > a,
.np-navigation .np-menu > li > a[aria-current="page"] {
    background:#24202d; color:#fff;
}
.np-navigation .np-menu > li > a:focus-visible,
.np-topbar a:focus-visible,
.np-menu-toggle:focus-visible,
.np-site-search button:focus-visible { outline:2px solid #bc89ff;outline-offset:3px; }
.np-topbar__action,.np-cart-top { gap:8px; }
.np-topbar__action .np-ui-icon,.np-cart-top .np-ui-icon { width:16px;height:16px; }
.np-site-search button { display:flex;align-items:center;justify-content:center;padding:0 0 0 13px;cursor:pointer; }
.np-site-search button .np-ui-icon { width:18px;height:18px; }
.np-menu-toggle { align-items:center; gap:8px; }
@media (max-width:1150px) and (min-width:961px) {
    .np-navigation .np-menu {gap:3px;}
    .np-navigation .np-menu > li > a {padding:9px 8px;gap:6px;font-size:12px;}
    .np-site-search {width:210px;}
}
@media (max-width:960px) {
    .np-menu-toggle { display:inline-flex; }
    .np-navigation .np-menu {display:flex;flex-direction:column;align-items:stretch;gap:3px;padding:8px 0;}
    .np-navigation .np-menu > li {display:block;width:100%;border-bottom:0;}
    .np-navigation .np-menu > li > a {display:flex;justify-content:flex-start;min-height:44px;width:100%;padding:12px 13px;}
    .np-navigation .np-menu .sub-menu {padding-left:22px;}
}
@media (max-width:480px) {
    .np-site-search {flex:0 1 auto; min-width:135px;}
    .np-site-search button {padding-left:10px;}
    .np-menu-toggle {font-size:12px;}
    .np-topbar__action .np-ui-icon {width:18px;height:18px;}
}
@media (prefers-reduced-motion:reduce) {
    .np-navigation .np-menu > li > a {transition:none;}
}
