.nmm-menu {
  --nmm-background: #080A0C;
  --nmm-text: #F5F5F2;
  --nmm-accent: #C8AA72;
  --nmm-submenu-background: #121619;
  --nmm-submenu-text: #F5F5F2;
  --nmm-font-size: 16px;
  --nmm-font: inherit;
  position: relative;
  z-index: 50;
  width: 100%;
  color: var(--nmm-text);
  background: var(--nmm-background);
  font-family: var(--nmm-font);
  font-size: var(--nmm-font-size);
  line-height: 1.45;
  text-align: start;
  border-radius: 8px;
  isolation: isolate;
}
.nmm-menu *, .nmm-menu *::before, .nmm-menu *::after { box-sizing: border-box; }
.nmm-menu [hidden] { display: none !important; }
.nmm-menu a { color: inherit; text-decoration: none; }
.nmm-menu a:hover { text-decoration: underline; text-underline-offset: 3px; }
.nmm-menu button { font: inherit; color: inherit; cursor: pointer; border: 0; }
.nmm-menu button:disabled { opacity: .4; cursor: default; }
.nmm-menu :is(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid var(--nmm-accent);
  outline-offset: 3px;
}
.nmm-menu :is(ul, figure, p, h3) { margin: 0; }
.nmm-menu ul { padding: 0; list-style: none; }
.nmm-menu .nmm-body, .nmm-menu .nmm-extras, .nmm-menu .nmm-mobile-bar, .nmm-menu .nmm-header-links { position: relative; z-index: 2; }
.nmm-menu .nmm-list { display: flex; gap: 2px; margin: 0; padding: 6px; }
.nmm-menu .nmm-group-horizontal { flex-wrap: wrap; align-items: stretch; }
.nmm-menu .nmm-group-vertical { flex-direction: column; position: relative; }
.nmm-menu .nmm-item { min-width: 0; }
.nmm-menu .nmm-item-heading { display: flex; align-items: stretch; height: 100%; border-radius: 5px; }
.nmm-menu .nmm-item-heading:hover, .nmm-menu .nmm-is-open > .nmm-item-heading { background: color-mix(in srgb, var(--nmm-accent) 17%, transparent); }
.nmm-menu .nmm-item-link { display: flex; align-items: center; justify-content: flex-start; gap: 8px; min-height: 44px; padding: 10px 14px; background: transparent; border-radius: 5px; text-align: start; }
.nmm-menu .nmm-item-button { width: 100%; }
.nmm-menu .nmm-item-label { flex: 1; }
.nmm-menu .nmm-item-heading > a, .nmm-menu .nmm-item-heading > .nmm-item-static { flex: 1; }
.nmm-menu .nmm-toggle { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 6px; background: transparent; border-radius: 5px; }
.nmm-menu .nmm-symbol { display: inline-block; font-family: system-ui, sans-serif; font-size: 24px; line-height: 1; }
.nmm-menu [aria-expanded="true"] .nmm-symbol { transform: rotate(180deg); }
.nmm-menu .nmm-material-icon { font-family: 'Material Icons'; font-weight: normal; font-style: normal; font-size: 24px; line-height: 1; letter-spacing: normal; text-transform: none; white-space: nowrap; direction: ltr; font-feature-settings: 'liga'; -webkit-font-smoothing: antialiased; }
.nmm-menu .nmm-item-icon-image { width: 24px; height: 24px; flex: 0 0 24px; object-fit: contain; }
.nmm-menu .nmm-badge { padding: 2px 6px; color: var(--nmm-badge-color, #fff); background: var(--nmm-badge-background, #8b331f); border-radius: 12px; font-size: .72em; font-weight: 700; line-height: 1.3; white-space: nowrap; }
.nmm-menu .nmm-is-active > .nmm-item-heading, .nmm-menu a.nmm-is-active { text-decoration: underline; text-underline-offset: 5px; text-decoration-color: var(--nmm-accent); text-decoration-thickness: 2px; }
.nmm-menu .nmm-panel {
  position: absolute;
  z-index: 5;
  inset-block-start: 100%;
  inset-inline-start: 0;
  width: var(--nmm-panel-width, 100%);
  max-width: calc(var(--nmm-viewport-width, 100vw) - 24px);
  max-height: min(78vh, 800px);
  overflow: auto;
  padding: 24px;
  color: var(--nmm-submenu-text);
  background-color: var(--nmm-submenu-background);
  background-size: cover;
  background-repeat: no-repeat;
  border: 1px solid color-mix(in srgb, var(--nmm-accent) 25%, transparent);
  border-block-start: 3px solid var(--nmm-accent);
  border-radius: 0 0 8px 8px;
  box-shadow: 0 15px 32px rgb(0 0 0 / 17%);
  transform: translateX(var(--nmm-shift, 0));
  overscroll-behavior: contain;
  animation: nmm-reveal .16s ease-out;
}
/* The submenu owns its text colors, including Dorado's header links/headings. */
.nmm-menu .nmm-panel :is(a, a:hover, a:focus, a:active, h1, h2, h3, h4, h5, h6, p, label, button),
#header .nd-header-shell .nmm-menu .nmm-panel :is(a, a:hover, a:focus, a:active, h1, h2, h3, h4, h5, h6, p, label, button) { color: var(--nmm-submenu-text); }
.nmm-menu .nmm-panel :is(h1, h2, h3, h4, h5, h6, .nmm-block-title > a, a:hover, a:focus-visible),
#header .nd-header-shell .nmm-menu .nmm-panel :is(h1, h2, h3, h4, h5, h6, .nmm-block-title > a, a:hover, a:focus-visible) { color: var(--nmm-accent); }
.nmm-menu [data-nmm-align="right"] > .nmm-panel { inset-inline-start: auto; inset-inline-end: 0; }
.nmm-menu [data-nmm-align="left"] > .nmm-panel { inset-inline-start: 0; inset-inline-end: auto; }
.nmm-menu .nmm-group-vertical .nmm-panel { inset-block-start: 0; inset-inline-start: 100%; inset-inline-end: auto; width: min(calc(72vw * var(--nmm-panel-factor, 1)), 1100px); border-radius: 0 8px 8px 8px; }
.nmm-menu .nmm-group-vertical [data-nmm-align="right"] > .nmm-panel { inset-inline-start: auto; inset-inline-end: 100%; }
.nmm-menu.nmm-width-full .nmm-group-horizontal .nmm-panel { width: calc(var(--nmm-viewport-width, 100vw) * var(--nmm-panel-factor, 1)); }
.nmm-menu.nmm-layout-vertical { max-width: 18rem; }
.nmm-menu.nmm-layout-mixed .nmm-body { display: grid; grid-template-columns: minmax(12rem, 18rem) minmax(0, 1fr); }
.nmm-menu.nmm-layout-mixed .nmm-group-horizontal { grid-column: 2; grid-row: 1; }
.nmm-menu.nmm-layout-mixed .nmm-group-vertical { grid-column: 1; grid-row: 1; border-inline-end: 1px solid color-mix(in srgb, var(--nmm-text) 20%, transparent); }
.nmm-menu .nmm-columns { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: start; gap: 24px; }
.nmm-menu .nmm-column { grid-column: span var(--nmm-span, 3); min-width: 0; }
.nmm-menu .nmm-column-new-row { grid-column: 1 / span var(--nmm-span, 3); }
.nmm-menu .nmm-block + .nmm-block { margin-block-start: 24px; }
.nmm-menu .nmm-block-title { font: inherit; font-weight: 700; margin-block-end: 14px; padding-block-end: 8px; border-block-end: 1px solid color-mix(in srgb, var(--nmm-accent) 55%, transparent); }
.nmm-menu .nmm-rich { overflow-wrap: anywhere; }
.nmm-menu .nmm-rich :is(p, ul, ol) { margin-block-end: 12px; }
.nmm-menu .nmm-rich ul { list-style: disc; padding-inline-start: 20px; }
.nmm-menu .nmm-rich ol { list-style: decimal; padding-inline-start: 20px; }
.nmm-menu .nmm-rich a { text-decoration: underline; }
.nmm-menu .nmm-rich :is(img, video), .nmm-menu .nmm-block-image { display: block; max-width: 100%; height: auto; }
.nmm-menu .nmm-rich iframe { display: block; width: 100%; max-width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; }
.nmm-menu .nmm-image { overflow: hidden; border-radius: 6px; }
.nmm-menu .nmm-block-image { width: 100%; }
.nmm-menu .nmm-entities { display: flex; flex-direction: column; gap: 10px; }
.nmm-menu .nmm-entity { min-width: 0; }
.nmm-menu .nmm-entity-link { display: flex; align-items: center; gap: 10px; min-height: 30px; }
.nmm-menu .nmm-entity-image { display: block; width: 44px; height: 44px; object-fit: contain; flex-shrink: 0; }
.nmm-menu .nmm-entity-name { overflow-wrap: anywhere; }
.nmm-menu .nmm-entity-description { margin-block-start: 8px; font-size: .86em; line-height: 1.5; overflow-wrap: anywhere; }
.nmm-menu .nmm-children { margin-block-start: 8px; padding-inline-start: 14px; border-inline-start: 1px solid color-mix(in srgb, var(--nmm-submenu-text) 18%, transparent); }
.nmm-menu .nmm-children > li + li { margin-block-start: 7px; }
.nmm-menu .nmm-products, .nmm-menu :is(.nmm-block-manufacturers, .nmm-block-suppliers) .nmm-entities { display: grid; grid-template-columns: repeat(var(--nmm-per-row, 2), minmax(0, 1fr)); gap: 16px; }
.nmm-menu .nmm-product .nmm-entity-link { flex-direction: column; align-items: stretch; }
.nmm-menu .nmm-product .nmm-entity-image { width: 100%; max-width: 180px; height: auto; aspect-ratio: 1; object-fit: contain; align-self: center; }
.nmm-menu .nmm-product-price { display: block; margin-block-start: 6px; font-weight: 700; }
.nmm-menu .nmm-countdown { display: block; margin-block-start: 8px; font-size: .75em; font-variant-numeric: tabular-nums; }
.nmm-menu .nmm-time-left { display: inline-block; font-weight: 700; }
.nmm-menu .nmm-pagination { display: flex; justify-content: center; align-items: center; gap: 14px; margin-block-start: 16px; }
.nmm-menu .nmm-pagination button { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; border: 1px solid color-mix(in srgb, var(--nmm-submenu-text) 25%, transparent); background: transparent; border-radius: 5px; }
.nmm-menu .nmm-pagination button:hover:not(:disabled) { background: color-mix(in srgb, var(--nmm-accent) 20%, transparent); }
.nmm-menu .nmm-tabs { display: grid; grid-template-columns: minmax(120px, 22%) minmax(0, 1fr); gap: 24px; }
.nmm-menu .nmm-columns + .nmm-tabs { margin-block-start: 24px; padding-block-start: 20px; border-block-start: 1px solid color-mix(in srgb, var(--nmm-submenu-text) 15%, transparent); }
.nmm-menu .nmm-tab-list { display: flex; flex-direction: column; gap: 4px; border-inline-end: 1px solid color-mix(in srgb, var(--nmm-submenu-text) 20%, transparent); padding-inline-end: 14px; }
.nmm-menu .nmm-tab { min-height: 44px; padding: 10px 12px; text-align: start; background: transparent; border-radius: 5px; }
.nmm-menu .nmm-tab[aria-selected="true"] { background: color-mix(in srgb, var(--nmm-accent) 23%, transparent); font-weight: 700; }
.nmm-menu .nmm-tab-panel { min-width: 0; }
.nmm-menu .nmm-extras { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 16px; padding: 10px 16px; border-block-start: 1px solid color-mix(in srgb, var(--nmm-text) 20%, transparent); }
.nmm-menu .nmm-extra { min-width: 0; max-width: 100%; }
.nmm-menu .nmm-extra-search { flex: 1; }
.nmm-menu .nmm-extra input { max-width: 100%; }
.nmm-menu .nmm-extra :is(#_mobile_cart, #_mobile_user_info) { display: none; }
.nmm-menu .nmm-extra .blockcart, .nmm-menu .nmm-extra .user-info { margin: 0; padding: 0; height: auto; background: transparent; }
.nmm-menu .nmm-extra :is(.blockcart .header > a, .user-info a) { display: flex; align-items: center; gap: 6px; min-height: 44px; }
.nmm-menu .nmm-header-links { display: none; }
.nmm-menu .nmm-overlay { position: fixed; z-index: 1; inset: 0; width: var(--nmm-viewport-width, 100vw); height: 100vh; padding: 0; border: 0; background: rgb(0 0 0 / 30%); cursor: default; }
.nmm-menu .nmm-mobile-bar { display: none; }
.nmm-menu .nmm-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.nmm-bar-anchor { position: relative; min-width: 0; width: 100%; flex: 1 1 auto; }
.nmm-bar-anchor.nmm-has-fixed-bar { height: var(--nmm-reserved-height); }
.nmm-menu.nmm-is-sticky:not(.nmm-has-anchor) { position: sticky; top: var(--nmm-sticky-top, 0); }
.nmm-menu.nmm-is-fixed { position: fixed; inset-block-start: 0; left: var(--nmm-fixed-left); right: auto; width: var(--nmm-fixed-width); max-width: none; z-index: 1050; }
.nmm-menu.nmm-width-full { border-radius: 0; }
.nmm-menu.nmm-skin-light { border: 1px solid color-mix(in srgb, var(--nmm-text) 16%, transparent); box-shadow: 0 2px 8px rgb(0 0 0 / 5%); }
.nmm-menu.nmm-skin-dark .nmm-panel { box-shadow: 0 15px 32px rgb(0 0 0 / 35%); }
.nmm-menu.nmm-skin-minimal { border-radius: 0; border-block-end: 1px solid color-mix(in srgb, var(--nmm-text) 25%, transparent); }
.nmm-menu.nmm-skin-minimal .nmm-panel { border-radius: 0; box-shadow: 0 6px 16px rgb(0 0 0 / 9%); }
.nmm-menu.nmm-skin-contrast { border: 2px solid var(--nmm-text); border-radius: 0; }
.nmm-menu.nmm-skin-contrast .nmm-panel { border: 2px solid var(--nmm-accent); border-radius: 0; box-shadow: none; }
.nmm-menu.nmm-skin-contrast :is(.nmm-item-heading:hover, .nmm-is-open > .nmm-item-heading, .nmm-tab[aria-selected="true"]) { outline: 2px solid var(--nmm-accent); outline-offset: -2px; }
.nmm-menu[data-nmm-rtl="true"] .nmm-pagination .nmm-symbol { transform: scaleX(-1); }

@keyframes nmm-reveal {
  from { opacity: 0; }
  to { opacity: 1; }
}

@media (min-width: 768px) {
  /* Horizontal panels anchor to the whole bar; vertical groups keep their anchor. */
  .nmm-menu .nmm-body { position: static; }
  .nmm-menu .nmm-item-heading { position: relative; z-index: 2; }
  #header .nd-header-shell.nmm-full-width-header { grid-template-columns: 140px minmax(0, 1fr) auto; }
  #header .nmm-full-width-header .nd-logo-desktop { grid-column: 1; grid-row: 1; }
  #header .nmm-full-width-header .nd-header-search { grid-column: 2; grid-row: 1; }
  #header .nmm-full-width-header .nd-header-tools { grid-column: 3; grid-row: 1; }
  #header .nmm-full-width-header .nmm-host-relocated { display: none; }
  #header .nmm-full-width-header .nmm-full-width-anchor { grid-column: 1 / -1; grid-row: 2; }
  .nmm-full-width-anchor > .nmm-menu { width: var(--nmm-bar-width, 100%); left: var(--nmm-bar-shift, 0px); max-width: none; display: flex; flex-wrap: wrap; align-items: center; }
  .nmm-full-width-anchor > .nmm-menu.nmm-is-fixed { left: var(--nmm-fixed-left); width: var(--nmm-fixed-width); }
  .nmm-full-width-anchor .nmm-body { flex: 1; min-width: 0; }
  .nmm-full-width-anchor .nmm-extras { flex-basis: 100%; order: 2; }
  .nmm-full-width-anchor .nmm-header-links:not(:empty) { display: flex; align-items: center; padding: 6px 16px; }
}

@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .nmm-menu[data-nmm-open-mode="hover"] .nmm-item-heading > .nmm-toggle,
  .nmm-menu[data-nmm-open-mode="hover"] .nmm-item-button > .nmm-symbol { display: none; }
}

@media (max-width: 767px) {
  .nmm-menu { position: relative; max-width: none; border-radius: 0; }
  .nmm-menu[data-nmm-ready="1"]:not(.nmm-is-mobile-open) { display: none; }
  .nmm-menu.nmm-is-mobile-open { position: fixed; z-index: 60; max-width: none; overflow: auto; height: 100vh; height: 100dvh; overscroll-behavior: contain; padding-block-end: env(safe-area-inset-bottom, 0); box-shadow: 0 0 0 100vmax rgb(0 0 0 / 32%); }
  .nmm-menu.nmm-mobile-side.nmm-is-mobile-open { inset-block: 0; width: min(90vw, 430px); }
  .nmm-menu.nmm-mobile-side-left.nmm-is-mobile-open { left: 0; right: auto; }
  .nmm-menu.nmm-mobile-side-right.nmm-is-mobile-open { left: auto; right: 0; }
  .nmm-menu.nmm-mobile-fullscreen.nmm-is-mobile-open { inset: 0; width: var(--nmm-viewport-width, 100vw); }
  .nmm-menu.nmm-mobile-bottom.nmm-is-mobile-open { inset-block-start: auto; inset-block-end: 0; inset-inline: 0; width: var(--nmm-viewport-width, 100vw); height: auto; max-height: 88vh; max-height: 88dvh; border-radius: 16px 16px 0 0; }
  .nmm-menu .nmm-mobile-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; background: var(--nmm-background); padding: 8px 12px; border-block-end: 1px solid color-mix(in srgb, var(--nmm-text) 25%, transparent); }
  .nmm-menu.nmm-is-sticky .nmm-mobile-bar { position: sticky; top: 0; }
  .nmm-menu .nmm-mobile-title { font-weight: 700; }
  .nmm-menu .nmm-mobile-close { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; background: transparent; border-radius: 5px; }
  .nmm-menu .nmm-list { flex-direction: column; padding: 8px; gap: 0; }
  .nmm-menu .nmm-item { border-block-end: 1px solid color-mix(in srgb, var(--nmm-text) 14%, transparent); }
  .nmm-menu .nmm-item-link { padding: 12px; }
  .nmm-menu.nmm-layout-mixed .nmm-body { display: block; }
  .nmm-menu.nmm-layout-mixed .nmm-group-vertical { border-inline-end: 0; }
  .nmm-menu .nmm-panel, .nmm-menu .nmm-group-vertical .nmm-panel, .nmm-menu.nmm-width-full .nmm-group-horizontal .nmm-panel {
    position: static;
    width: 100%;
    max-width: 100%;
    max-height: none;
    padding: 18px 14px;
    border: 0;
    border-block-start: 2px solid var(--nmm-accent);
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
    transform: none;
  }
  .nmm-menu .nmm-columns { gap: 20px; }
  .nmm-menu .nmm-column, .nmm-menu .nmm-column-new-row { grid-column: 1 / -1; }
  .nmm-menu .nmm-products, .nmm-menu :is(.nmm-block-manufacturers, .nmm-block-suppliers) .nmm-entities { grid-template-columns: repeat(var(--nmm-mobile-per-row, 2), minmax(0, 1fr)); }
  .nmm-menu .nmm-tabs { display: block; }
  .nmm-menu .nmm-tab-list { flex-direction: row; overflow-x: auto; gap: 8px; margin-block-end: 16px; padding-inline-end: 0; padding-block-end: 8px; border-inline-end: 0; border-block-end: 1px solid color-mix(in srgb, var(--nmm-submenu-text) 20%, transparent); }
  .nmm-menu .nmm-tab { flex-shrink: 0; }
  .nmm-menu .nmm-extras { flex-direction: column; align-items: stretch; padding: 16px; }
  .nmm-menu .nmm-extra-search { flex: auto; }
  .nmm-menu .nmm-extra :is(#_desktop_cart, #_desktop_user_info) { display: none; }
  .nmm-menu .nmm-extra :is(#_mobile_cart, #_mobile_user_info) { display: block; }
  .nmm-menu .nmm-header-links:not(:empty) { display: grid; gap: 12px; padding: 16px; border-block-start: 1px solid color-mix(in srgb, var(--nmm-text) 20%, transparent); }
  .nmm-menu .nmm-header-links :is([data-nmm-advisor-slot], [data-nmm-secondary-slot]) a { display: flex; align-items: center; min-height: 44px; }
  .nmm-menu .nmm-header-links .nm-advisor-nav { white-space: normal; }
  .nmm-menu .nmm-entity-link { min-height: 44px; }
  .nmm-menu .nmm-overlay { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .nmm-menu *, .nmm-menu *::before, .nmm-menu *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
