/**
 * MerchFuse v1.15.13.0 — storefront interface integrity layer.
 *
 * Final authority for theme boot, header/navigation, responsive typography,
 * contrast-safe surfaces and cross-template interaction states.
 */

/* ========================================================================== 
   1. Brand and semantic tokens
   ========================================================================== */
:root,
html:not([data-mf-theme]),
html[data-mf-theme="light"] {
  color-scheme:light;
  --mf-ui-canvas:#f6efe6;
  --mf-ui-canvas-alt:#f1e8dd;
  --mf-ui-surface:#fffdf9;
  --mf-ui-surface-soft:#faf5ee;
  --mf-ui-surface-strong:#eee3d6;
  --mf-ui-ink:#1a1511;
  --mf-ui-text:#2b241e;
  --mf-ui-muted:#665a4f;
  --mf-ui-line:#cbbcac;
  --mf-ui-line-strong:#75685d;
  --mf-ui-accent:#d92b22;
  --mf-ui-accent-hover:#b9231b;
  --mf-ui-accent-soft:#fff0ed;
  --mf-ui-accent-soft-strong:#ffe3de;
  --mf-ui-inverse:#0d0d0d;
  --mf-ui-inverse-text:#ffffff;
  --mf-ui-focus:#d92b22;
  --mf-ui-success:#245c3d;
  --mf-ui-success-soft:#eef7f1;
  --mf-ui-warning:#7a4b00;
  --mf-ui-warning-soft:#fff5df;
  --mf-ui-error:#8a2f27;
  --mf-ui-error-soft:#fff2f0;
  --mf-menu-panel:#f7f0e7;
  --mf-menu-card:#fffdf9;
  --mf-menu-card-soft:#efe4d7;
  --mf-menu-ink:#1a1511;
  --mf-menu-text:#312922;
  --mf-menu-muted:#665a4f;
  --mf-menu-line:#cbbbaa;
  --mf-menu-line-strong:#7a6d61;
  --mf-menu-hover:#fff0ed;
  --mf-menu-shadow:0 22px 60px rgba(12,10,8,.22);
}

html[data-mf-theme="dark"] {
  color-scheme:dark;
  --mf-ui-canvas:#0c0a08;
  --mf-ui-canvas-alt:#100d0b;
  --mf-ui-surface:#15120f;
  --mf-ui-surface-soft:#12100d;
  --mf-ui-surface-strong:#1b1713;
  --mf-ui-ink:#faf3eb;
  --mf-ui-text:#f2e9df;
  --mf-ui-muted:#cfc1b5;
  --mf-ui-line:#493e35;
  --mf-ui-line-strong:#8e7b6b;
  --mf-ui-accent:#ff776d;
  --mf-ui-accent-hover:#ff9a93;
  --mf-ui-accent-soft:#321815;
  --mf-ui-accent-soft-strong:#421d19;
  --mf-ui-inverse:#090909;
  --mf-ui-inverse-text:#ffffff;
  --mf-ui-focus:#ff8a82;
  --mf-ui-success:#8fd0a7;
  --mf-ui-success-soft:#183222;
  --mf-ui-warning:#f0c36f;
  --mf-ui-warning-soft:#3b2a0d;
  --mf-ui-error:#ffc1bb;
  --mf-ui-error-soft:#421b17;
  --mf-menu-panel:#15120f;
  --mf-menu-card:#1b1713;
  --mf-menu-card-soft:#211c17;
  --mf-menu-ink:#faf3eb;
  --mf-menu-text:#f2e9df;
  --mf-menu-muted:#cfc1b5;
  --mf-menu-line:#493e35;
  --mf-menu-line-strong:#8e7b6b;
  --mf-menu-hover:#321815;
  --mf-menu-shadow:0 22px 60px rgba(0,0,0,.46);
}

html[data-mf-theme] {
  --mf-bg:var(--mf-ui-canvas);
  --mf-bg-soft:var(--mf-ui-surface-soft);
  --mf-bg-subtle:var(--mf-ui-surface-soft);
  --mf-surface:var(--mf-ui-canvas);
  --mf-surface-2:var(--mf-ui-surface-soft);
  --mf-surface-3:var(--mf-ui-surface-strong);
  --mf-surface-raised:var(--mf-ui-surface);
  --mf-white:var(--mf-ui-surface);
  --mf-cream:var(--mf-ui-surface);
  --mf-ink:var(--mf-ui-ink);
  --mf-dark:var(--mf-ui-ink);
  --mf-text:var(--mf-ui-text);
  --mf-muted:var(--mf-ui-muted);
  --mf-muted-2:var(--mf-ui-muted);
  --mf-border:var(--mf-ui-line);
  --mf-border-dk:var(--mf-ui-line-strong);
  --mf-border-strong:var(--mf-ui-line-strong);
  --mf-brand:var(--mf-ui-accent);
  --mf-brand-hover:var(--mf-ui-accent-hover);
  --mf-brand-link:var(--mf-ui-accent-hover);
  background-color:var(--mf-ui-canvas);
  color:var(--mf-ui-text);
}

html.mf-ui-preload *,
html.mf-ui-preload *::before,
html.mf-ui-preload *::after {
  animation:none !important;
  transition:none !important;
  scroll-behavior:auto !important;
}

/* Keep JavaScript-enhanced panels unavailable until their final layout class
   and content card have been applied. This removes the half-styled flash. */
@media (min-width:1181px) {
  html.mf-js:not(.mf-menu-ready) body.mf-site .mf-nav > li > .sub-menu {
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
}

/* ========================================================================== 
   2. Global type and contrast contract
   ========================================================================== */
body.mf-site {
  background-color:var(--mf-ui-canvas) !important;
  color:var(--mf-ui-text) !important;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

body.mf-site .mf-site__main {
  min-width:0;
  background-color:var(--mf-ui-canvas);
  color:var(--mf-ui-text);
}

body.mf-site .mf-site__main :where(h1,h2,h3,h4,h5,h6) {
  color:var(--mf-ui-ink);
  text-wrap:balance;
  overflow-wrap:anywhere;
}

body.mf-site .mf-site__main :where(p,li,dd,dt,figcaption,blockquote) {
  color:inherit;
  overflow-wrap:anywhere;
}

body.mf-site .mf-site__main :where(a:not(.button):not(.mf-btn)) {
  text-decoration-thickness:.08em;
  text-underline-offset:.18em;
}

body.mf-site :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible {
  outline:3px solid var(--mf-ui-focus) !important;
  outline-offset:3px !important;
  box-shadow:none !important;
}

body.mf-site :where(input,select,textarea) {
  border-color:var(--mf-ui-line) !important;
  background-color:var(--mf-ui-surface) !important;
  color:var(--mf-ui-ink) !important;
  caret-color:var(--mf-ui-accent);
}

body.mf-site :where(input,textarea)::placeholder {
  color:var(--mf-ui-muted) !important;
  opacity:1;
}

body.mf-site :where(.woocommerce-message,.woocommerce-info,.woocommerce-error,.mf-notice,.mf-alert) {
  color:var(--mf-ui-text) !important;
}

body.mf-site :where(.woocommerce-message,.mf-notice--success,.mf-alert--success) {
  border-color:var(--mf-ui-success) !important;
  background-color:var(--mf-ui-success-soft) !important;
}

body.mf-site :where(.woocommerce-error,.mf-notice--error,.mf-alert--error) {
  border-color:var(--mf-ui-error) !important;
  background-color:var(--mf-ui-error-soft) !important;
}

/* Scales shared by page, archive, blog and product templates. Route-specific
   selectors remain free to choose a smaller display size where appropriate. */
body.mf-site :where(.mf-page,.mf-static-page,.mf-blog,.mf-blog-content,.mf-guide,.mf-hub,.mf-authority-shell,.mf-growth-page,.mf-search-page) > :where(h1,.entry-title),
body.mf-site :where(.mf-page,.mf-static-page,.mf-blog,.mf-blog-content,.mf-guide,.mf-hub,.mf-authority-shell,.mf-growth-page,.mf-search-page) :where(header,section) > h1 {
  font-size:clamp(2.4rem,5.4vw,5.75rem);
  line-height:.98;
  letter-spacing:-.045em;
}

body.mf-site :where(.mf-shop,.mf-archive,.tax-product_cat,.post-type-archive-product) :where(h1,.page-title,.woocommerce-products-header__title) {
  font-size:clamp(2.35rem,4.4vw,4.9rem);
  line-height:1;
  letter-spacing:-.04em;
}

body.single-product.mf-site :where(.product_title,.mf-product__title,.mf-pdp-title) {
  font-size:clamp(2rem,3.4vw,3.85rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.038em !important;
  color:var(--mf-ui-ink) !important;
}

body.mf-site .mf-site__main :where(h2) {
  font-size:clamp(1.75rem,3.2vw,3.45rem);
  line-height:1.08;
  letter-spacing:-.032em;
}

body.mf-site .mf-site__main :where(h3) {
  font-size:clamp(1.35rem,2.25vw,2.25rem);
  line-height:1.14;
  letter-spacing:-.022em;
}

body.mf-site .mf-site__main :where(h4) {
  font-size:clamp(1.08rem,1.55vw,1.48rem);
  line-height:1.22;
  letter-spacing:-.012em;
}

body.mf-site .mf-site__main :where(h5) {
  font-size:clamp(.96rem,1.2vw,1.16rem);
  line-height:1.3;
}

body.mf-site .mf-site__main :where(h6) {
  font-size:clamp(.78rem,1vw,.92rem);
  line-height:1.35;
  letter-spacing:.11em;
  text-transform:uppercase;
}

/* Explicit inverse contract prevents generic heading/text rules from producing
   dark-on-dark text in promotional or editorial inverse sections. */
body.mf-site :where(.mf-inverse,.has-black-background-color,.mf-ref-promo--dark,.mf-pdp-wall-cta) {
  background-color:var(--mf-ui-inverse) !important;
  color:var(--mf-ui-inverse-text) !important;
}

body.mf-site :where(.mf-inverse,.has-black-background-color,.mf-ref-promo--dark,.mf-pdp-wall-cta) :where(h1,h2,h3,h4,h5,h6,p,li,span,strong,small,a,label) {
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
}

/* ========================================================================== 
   3. Header shell and theme-stable actions
   ========================================================================== */
html[data-mf-theme] body.mf-site .mf-header,
html[data-mf-theme] body.mf-site .mf-header[data-sticky="true"],
html[data-mf-theme] body.mf-site .mf-header[data-sticky="false"] {
  position:relative;
  z-index:1000000 !important;
  overflow:visible !important;
  border:0 !important;
  border-bottom:1px solid #343434 !important;
  background:#0d0d0d !important;
  color:#fff !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  isolation:isolate;
}

html[data-mf-theme] body.mf-site .mf-header[data-sticky="true"] {
  position:sticky;
  top:0;
}

html[data-mf-theme] body.mf-site .mf-header :where(a,button,svg,.mf-icon) {
  color:inherit;
}

html[data-mf-theme] body.mf-site .mf-header__inner {
  width:min(calc(100% - 32px),1760px) !important;
  max-width:1760px !important;
  margin-inline:auto !important;
  min-width:0 !important;
  padding-inline:0 !important;
  background:#0d0d0d !important;
}

html[data-mf-theme] body.mf-site .mf-header__brand,
html[data-mf-theme] body.mf-site .mf-header__nav,
html[data-mf-theme] body.mf-site .mf-header__tools,
html[data-mf-theme] body.mf-site .mf-mobile-tools {
  min-width:0 !important;
  background:transparent !important;
}

html[data-mf-theme] body.mf-site .mf-logo,
html[data-mf-theme] body.mf-site .mf-logo:visited {
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  text-decoration:none !important;
}

html[data-mf-theme] body.mf-site .mf-logo--text {
  position:relative;
  display:inline-flex !important;
  align-items:center;
  font-size:clamp(1.7rem,2.25vw,2.35rem) !important;
  line-height:1 !important;
  font-weight:850 !important;
  letter-spacing:-.045em !important;
  white-space:nowrap;
}

html[data-mf-theme] body.mf-site .mf-logo--text::after {
  content:"";
  position:absolute;
  left:52%;
  bottom:-7px;
  width:34px;
  height:3px;
  border-radius:2px;
  background:var(--mf-ui-accent);
  transform:translateX(-50%);
}

html[data-mf-theme] body.mf-site .mf-header__brand img {
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  max-height:52px !important;
  object-fit:contain !important;
}

html[data-mf-theme] body.mf-site .mf-header :is(.mf-icon-btn,.mf-theme-toggle,.mf-menu-toggle,.mf-mobile-nav-close,.mf-submenu-toggle) {
  appearance:none !important;
  -webkit-appearance:none !important;
  box-shadow:none !important;
  text-shadow:none !important;
  cursor:pointer;
}

html[data-mf-theme] body.mf-site .mf-header :is(.mf-icon-btn,.mf-theme-toggle) {
  position:relative !important;
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  padding:0 !important;
  display:inline-grid !important;
  place-items:center !important;
  overflow:visible !important;
  border:1px solid #4b4b4b !important;
  border-radius:50% !important;
  background:transparent !important;
  color:#f7f4ef !important;
  outline:0 !important;
  transition:transform 170ms ease,border-color 170ms ease,background-color 170ms ease,color 170ms ease !important;
}

html[data-mf-theme] body.mf-site .mf-header :is(.mf-icon-btn,.mf-theme-toggle)::before,
html[data-mf-theme] body.mf-site .mf-header :is(.mf-icon-btn,.mf-theme-toggle)::after {
  content:none !important;
}

html[data-mf-theme] body.mf-site .mf-header :is(.mf-icon-btn,.mf-theme-toggle) :where(svg,.mf-icon) {
  width:21px !important;
  height:21px !important;
  color:inherit !important;
  stroke:currentColor !important;
  transform:none;
  transition:transform 170ms ease !important;
}

html[data-mf-theme] body.mf-site .mf-header :is(.mf-icon-btn,.mf-theme-toggle):is(:hover,:focus-visible) {
  border-color:var(--mf-ui-accent) !important;
  background:#1b1714 !important;
  color:#fff !important;
  transform:translateY(-2px) !important;
}

html[data-mf-theme] body.mf-site .mf-header :is(.mf-icon-btn,.mf-theme-toggle):is(:hover,:focus-visible) :where(svg,.mf-icon) {
  transform:scale(1.07);
}

html[data-mf-theme] body.mf-site .mf-header .mf-theme-toggle[aria-pressed="true"] {
  border-color:var(--mf-ui-accent) !important;
  background:#241714 !important;
}

html[data-mf-theme] body.mf-site .mf-header .mf-cart-count {
  position:absolute !important;
  top:-6px !important;
  right:-5px !important;
  min-width:20px !important;
  height:20px !important;
  padding:0 5px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:2px solid #0d0d0d !important;
  border-radius:999px !important;
  background:var(--mf-ui-accent) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:800 !important;
}

html[data-mf-theme] body.mf-site .mf-header .mf-cart-count[data-count="0"] {
  display:none !important;
}

/* ========================================================================== 
   4. Desktop navigation and content-aware mega menus
   ========================================================================== */
@media (min-width:1181px) {
  html[data-mf-theme] body.mf-site .mf-header__inner {
    min-height:82px !important;
    display:grid !important;
    grid-template-columns:minmax(176px,218px) minmax(0,1fr) auto !important;
    align-items:center !important;
    column-gap:clamp(14px,1.7vw,30px) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header__brand {
    justify-self:start !important;
    max-width:218px !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-tools,
  html[data-mf-theme] body.mf-site .mf-menu-toggle,
  html[data-mf-theme] body.mf-site .mf-mobile-nav-head,
  html[data-mf-theme] body.mf-site .mf-mobile-nav-actions,
  html[data-mf-theme] body.mf-site .mf-mobile-nav-utilities,
  html[data-mf-theme] body.mf-site .mf-mobile-nav-backdrop {
    display:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-header__nav {
    position:relative !important;
    inset:auto !important;
    width:100% !important;
    height:auto !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:visible !important;
    visibility:visible !important;
    opacity:1 !important;
    transform:none !important;
    border:0 !important;
    box-shadow:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav {
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:stretch !important;
    justify-content:center !important;
    gap:clamp(4px,.55vw,11px) !important;
    list-style:none !important;
    background:transparent !important;
    font-family:var(--mf-font-body) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li {
    position:relative !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:stretch !important;
    border:0 !important;
    background:transparent !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a:visited {
    position:relative !important;
    min-height:82px !important;
    padding:0 clamp(5px,.48vw,9px) !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:0 !important;
    border-bottom:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#f7f4ef !important;
    -webkit-text-fill-color:#f7f4ef !important;
    box-shadow:none !important;
    text-decoration:none !important;
    font-family:var(--mf-font-body) !important;
    font-size:clamp(10px,.7vw,12px) !important;
    font-weight:760 !important;
    line-height:1.12 !important;
    letter-spacing:.018em !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
    transition:color 160ms ease,transform 160ms ease !important;
  }

  /* Exactly one active indicator. Historical ::after chevrons/underlines are
     retired; the explicit adjacent button owns the chevron. */
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a::after {
    content:none !important;
    display:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a::before {
    content:"" !important;
    position:absolute !important;
    left:7px !important;
    right:7px !important;
    bottom:15px !important;
    height:2px !important;
    border:0 !important;
    border-radius:2px !important;
    background:var(--mf-ui-accent) !important;
    transform:scaleX(0) !important;
    transform-origin:center !important;
    opacity:0 !important;
    transition:transform 160ms ease,opacity 160ms ease !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li.mf-menu-open > a,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li.current-menu-item > a,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li.current-menu-ancestor > a {
    background:transparent !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    transform:translateY(-1px) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a:is(:hover,:focus-visible)::before,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li.mf-menu-open > a::before,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li.current-menu-item > a::before,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li.current-menu-ancestor > a::before {
    transform:scaleX(1) !important;
    opacity:1 !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > .mf-submenu-toggle {
    width:26px !important;
    min-width:26px !important;
    min-height:82px !important;
    margin:0 0 0 -6px !important;
    padding:0 !important;
    display:inline-grid !important;
    place-items:center !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#f7f4ef !important;
    outline:0 !important;
  }

  html[data-mf-theme] body.mf-site .mf-submenu-toggle__icon {
    width:7px;
    height:7px;
    display:block;
    border-right:1.5px solid currentColor;
    border-bottom:1.5px solid currentColor;
    transform:rotate(45deg) translate(-1px,-1px);
    transform-origin:center;
    transition:transform 160ms ease,color 160ms ease;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li.mf-menu-open > .mf-submenu-toggle .mf-submenu-toggle__icon,
  html[data-mf-theme] body.mf-site .mf-submenu-toggle[aria-expanded="true"] .mf-submenu-toggle__icon {
    color:var(--mf-ui-accent);
    transform:rotate(225deg) translate(-1px,-1px);
  }

  html[data-mf-theme] body.mf-site .mf-header__tools {
    justify-self:end !important;
    display:flex !important;
    align-items:center !important;
    gap:clamp(6px,.55vw,10px) !important;
    min-width:max-content !important;
  }

  html.mf-desktop-menu-js[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu,
  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu.mf-submenu--mega {
    --mf-mega-columns:3;
    --mf-mega-rows:2;
    position:fixed !important;
    top:var(--mf-mega-top,82px) !important;
    left:50vw !important;
    right:auto !important;
    width:min(var(--mf-mega-width,1080px),calc(100vw - 32px)) !important;
    min-width:0 !important;
    max-width:1460px !important;
    min-height:0 !important;
    max-height:min(720px,calc(100dvh - var(--mf-mega-top,82px) - 16px)) !important;
    margin:0 !important;
    padding:clamp(20px,2vw,30px) !important;
    display:grid !important;
    grid-template-columns:minmax(248px,296px) repeat(var(--mf-mega-columns),minmax(190px,1fr)) !important;
    grid-auto-flow:row !important;
    grid-auto-rows:max-content !important;
    align-items:start !important;
    align-content:start !important;
    gap:clamp(14px,1.5vw,22px) !important;
    overflow:auto !important;
    overscroll-behavior:contain !important;
    border:1px solid var(--mf-menu-line) !important;
    border-radius:18px !important;
    background:var(--mf-menu-panel) !important;
    color:var(--mf-menu-text) !important;
    box-shadow:var(--mf-menu-shadow) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translate(-50%,10px) !important;
    transform-origin:top center !important;
    transition:opacity 150ms ease,visibility 150ms ease,transform 150ms ease !important;
    z-index:1000030 !important;
    scrollbar-color:var(--mf-menu-line-strong) transparent;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu.mf-menu-no-visual {
    grid-template-columns:repeat(var(--mf-mega-columns),minmax(205px,1fr)) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu::before {
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:-14px !important;
    height:14px !important;
    background:transparent !important;
    pointer-events:auto !important;
  }

  html.mf-desktop-menu-js[data-mf-theme] body.mf-site .mf-nav > li.mf-menu-open > .sub-menu,
  html:not(.mf-js)[data-mf-theme] body.mf-site .mf-nav > li:hover > .sub-menu,
  html[data-mf-theme] body.mf-site .mf-nav > li:focus-within > .sub-menu {
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translate(-50%,0) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu > li {
    min-width:0 !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    align-self:start !important;
    border:0 !important;
    background:transparent !important;
    color:var(--mf-menu-text) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu > li.mf-mega-visual-item {
    grid-row:span var(--mf-mega-rows) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-menu-feature-card,
  html[data-mf-theme] body.mf-site .mf-header .mf-menu-feature-card:visited {
    width:100% !important;
    min-height:0 !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
    border:1px solid var(--mf-menu-line) !important;
    border-radius:14px !important;
    background:var(--mf-menu-card) !important;
    color:var(--mf-menu-text) !important;
    -webkit-text-fill-color:var(--mf-menu-text) !important;
    box-shadow:none !important;
    text-decoration:none !important;
    transition:transform 160ms ease,border-color 160ms ease,background-color 160ms ease !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-feature-card.has-image .mf-menu-feature-card__media {
    display:block !important;
    width:100% !important;
    aspect-ratio:16 / 10 !important;
    overflow:hidden !important;
    border:0 !important;
    border-bottom:1px solid var(--mf-menu-line) !important;
    background:var(--mf-menu-card-soft) !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-feature-card__media img {
    width:100% !important;
    height:100% !important;
    display:block !important;
    padding:8px !important;
    object-fit:contain !important;
    object-position:center !important;
    background:var(--mf-menu-card-soft) !important;
    transform:none !important;
    filter:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-feature-card.is-text-only {
    min-height:156px !important;
    justify-content:center !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-feature-card__content {
    min-width:0 !important;
    padding:17px 18px !important;
    display:flex !important;
    flex:1 1 auto !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:center !important;
    gap:7px !important;
    background:transparent !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-feature-card__content :where(small,em) {
    margin:0 !important;
    color:var(--mf-menu-muted) !important;
    -webkit-text-fill-color:var(--mf-menu-muted) !important;
    font-family:var(--mf-font-body) !important;
    font-size:10.5px !important;
    font-style:normal !important;
    font-weight:760 !important;
    line-height:1.2 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-feature-card__content strong {
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
    font-family:var(--mf-font-body) !important;
    font-size:clamp(18px,1.2vw,23px) !important;
    font-weight:820 !important;
    line-height:1.08 !important;
    letter-spacing:-.025em !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-feature-card__content > span {
    color:var(--mf-menu-muted) !important;
    -webkit-text-fill-color:var(--mf-menu-muted) !important;
    font-family:var(--mf-font-body) !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.48 !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-feature-card:is(:hover,:focus-visible) {
    border-color:var(--mf-ui-accent) !important;
    background:var(--mf-menu-hover) !important;
    color:var(--mf-menu-ink) !important;
    transform:translateY(-2px) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu > li.mf-mega-group > a,
  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu > li.mf-mega-group > a:visited {
    min-height:40px !important;
    margin:0 0 7px !important;
    padding:0 0 9px !important;
    display:flex !important;
    align-items:flex-start !important;
    border:0 !important;
    border-bottom:1px solid var(--mf-menu-line) !important;
    border-radius:0 !important;
    background:transparent !important;
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
    text-decoration:none !important;
    font-family:var(--mf-font-body) !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1.3 !important;
    letter-spacing:-.01em !important;
    text-transform:none !important;
    white-space:normal !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu .mf-mega-group > .mf-submenu-toggle {
    display:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu .mf-mega-group > .sub-menu {
    position:static !important;
    inset:auto !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:2px !important;
    overflow:visible !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu .mf-mega-group > .sub-menu a,
  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu > li.mf-mega-link-item > a,
  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu > li.mf-mega-link-item > a:visited {
    position:relative !important;
    width:100% !important;
    min-height:38px !important;
    margin:0 !important;
    padding:8px 10px !important;
    display:flex !important;
    align-items:center !important;
    border:1px solid transparent !important;
    border-radius:8px !important;
    background:transparent !important;
    color:var(--mf-menu-text) !important;
    -webkit-text-fill-color:var(--mf-menu-text) !important;
    text-decoration:none !important;
    font-family:var(--mf-font-body) !important;
    font-size:13.5px !important;
    font-weight:620 !important;
    line-height:1.35 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    transition:transform 140ms ease,border-color 140ms ease,background-color 140ms ease,color 140ms ease !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu > li.mf-mega-link-item > a,
  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu > li.mf-mega-link-item > a:visited {
    min-height:52px !important;
    padding:11px 13px !important;
    border-color:var(--mf-menu-line) !important;
    background:var(--mf-menu-card) !important;
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
    font-size:14px !important;
    font-weight:760 !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu .mf-mega-group > .sub-menu a:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu > li.mf-mega-link-item > a:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-nav > li > .sub-menu .current-menu-item > a {
    border-color:var(--mf-ui-accent) !important;
    background:var(--mf-menu-hover) !important;
    color:var(--mf-ui-accent-hover) !important;
    -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
    transform:translateX(2px) !important;
  }
}

@media (min-width:1181px) and (max-width:1380px) {
  html[data-mf-theme] body.mf-site .mf-header__inner {
    grid-template-columns:minmax(144px,172px) minmax(0,1fr) auto !important;
    column-gap:10px !important;
  }
  html[data-mf-theme] body.mf-site .mf-header__brand { max-width:172px !important; }
  html[data-mf-theme] body.mf-site .mf-nav { gap:2px !important; }
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a {
    padding-inline:4px !important;
    font-size:10px !important;
    letter-spacing:0 !important;
  }
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > .mf-submenu-toggle {
    width:20px !important;
    min-width:20px !important;
    margin-left:-5px !important;
  }
  html[data-mf-theme] body.mf-site .mf-header__tools { gap:4px !important; }
  html[data-mf-theme] body.mf-site .mf-header__tools :is(.mf-icon-btn,.mf-theme-toggle) {
    width:39px !important;
    height:39px !important;
    min-width:39px !important;
    min-height:39px !important;
  }
}

/* ========================================================================== 
   5. Tablet and mobile navigation drawer
   ========================================================================== */
@media (max-width:1180px) {
  html[data-mf-theme] body.mf-site .mf-header__inner {
    min-height:72px !important;
    display:grid !important;
    grid-template-columns:minmax(112px,1fr) auto 46px !important;
    align-items:center !important;
    gap:8px !important;
  }

  html[data-mf-theme] body.mf-site .mf-header__brand {
    grid-column:1 !important;
    justify-self:start !important;
    max-width:172px !important;
  }

  html[data-mf-theme] body.mf-site .mf-logo--text {
    font-size:clamp(1.45rem,4vw,1.9rem) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header__brand img {
    max-height:43px !important;
  }

  html[data-mf-theme] body.mf-site .mf-header__tools {
    display:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-tools {
    grid-column:2 !important;
    justify-self:end !important;
    display:flex !important;
    align-items:center !important;
    gap:5px !important;
  }

  html[data-mf-theme] body.mf-site .mf-header :is(.mf-mobile-tools .mf-icon-btn,.mf-mobile-tools .mf-theme-toggle) {
    width:40px !important;
    height:42px !important;
    min-width:40px !important;
    min-height:42px !important;
    border-radius:11px !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-toggle {
    grid-column:3 !important;
    justify-self:end !important;
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    padding:0 !important;
    display:inline-grid !important;
    place-items:center !important;
    border:1px solid #5b5148 !important;
    border-radius:12px !important;
    background:transparent !important;
    color:#fff !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-toggle:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-menu-toggle[aria-expanded="true"] {
    border-color:var(--mf-ui-accent) !important;
    background:#1b1714 !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-toggle__lines {
    width:23px;
    height:18px;
    display:grid;
    align-content:space-between;
  }

  html[data-mf-theme] body.mf-site .mf-menu-toggle__lines > span {
    display:block;
    width:100%;
    height:2px;
    border-radius:2px;
    background:#fff;
    transition:transform 170ms ease,opacity 170ms ease,width 170ms ease;
    transform-origin:center;
  }

  html[data-mf-theme] body.mf-site .mf-menu-toggle[aria-expanded="true"] .mf-menu-toggle__lines > span:nth-child(1) {
    transform:translateY(8px) rotate(45deg);
  }
  html[data-mf-theme] body.mf-site .mf-menu-toggle[aria-expanded="true"] .mf-menu-toggle__lines > span:nth-child(2) {
    opacity:0;
    width:0;
  }
  html[data-mf-theme] body.mf-site .mf-menu-toggle[aria-expanded="true"] .mf-menu-toggle__lines > span:nth-child(3) {
    transform:translateY(-8px) rotate(-45deg);
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-backdrop {
    position:fixed !important;
    top:var(--mf-mobile-drawer-top,72px) !important;
    right:0 !important;
    bottom:0 !important;
    left:0 !important;
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    border:0 !important;
    border-radius:0 !important;
    background:rgba(0,0,0,.48) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transition:opacity 180ms ease,visibility 180ms ease !important;
    z-index:1000010 !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-backdrop[data-open="true"] {
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  html[data-mf-theme] body.mf-site .mf-header__nav {
    position:fixed !important;
    top:var(--mf-mobile-drawer-top,72px) !important;
    right:auto !important;
    bottom:0 !important;
    left:0 !important;
    width:min(92vw,500px) !important;
    max-width:500px !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    overscroll-behavior:contain !important;
    -webkit-overflow-scrolling:touch !important;
    border:0 !important;
    border-right:1px solid var(--mf-menu-line) !important;
    background:var(--mf-menu-panel) !important;
    color:var(--mf-menu-text) !important;
    box-shadow:0 22px 60px rgba(0,0,0,.28) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transform:translateX(-102%) !important;
    transition:transform 220ms cubic-bezier(.22,1,.36,1),opacity 160ms ease,visibility 220ms ease !important;
    z-index:1000020 !important;
  }

  html[data-mf-theme] body.mf-site .mf-header__nav[data-open="true"] {
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateX(0) !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-head {
    position:sticky !important;
    top:0 !important;
    z-index:3 !important;
    min-height:66px !important;
    padding:10px 16px !important;
    display:grid !important;
    grid-template-columns:auto 1fr 46px !important;
    align-items:center !important;
    gap:12px !important;
    border:0 !important;
    border-bottom:1px solid var(--mf-menu-line) !important;
    background:var(--mf-menu-panel) !important;
    color:var(--mf-menu-ink) !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-head > span:first-child {
    color:var(--mf-menu-muted) !important;
    -webkit-text-fill-color:var(--mf-menu-muted) !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.14em !important;
    text-transform:uppercase !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-head > span:nth-child(2) {
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
    text-align:center !important;
    font-size:clamp(16px,2.7vw,20px) !important;
    font-weight:850 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-close {
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    padding:0 !important;
    display:inline-grid !important;
    place-items:center !important;
    border:1px solid var(--mf-menu-line) !important;
    border-radius:50% !important;
    background:var(--mf-menu-card) !important;
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
    font-size:30px !important;
    line-height:1 !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-close:is(:hover,:focus-visible) {
    border-color:var(--mf-ui-accent) !important;
    background:var(--mf-menu-hover) !important;
    color:var(--mf-ui-accent-hover) !important;
    -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav {
    width:100% !important;
    margin:0 !important;
    padding:8px 16px 18px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    list-style:none !important;
    background:var(--mf-menu-panel) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li,
  html[data-mf-theme] body.mf-site .mf-nav .menu-item {
    position:relative !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 48px !important;
    align-items:center !important;
    border:0 !important;
    border-bottom:1px solid var(--mf-menu-line) !important;
    background:transparent !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li:last-child {
    border-bottom:0 !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li:not(.menu-item-has-children),
  html[data-mf-theme] body.mf-site .mf-nav .sub-menu > li:not(.menu-item-has-children) {
    grid-template-columns:minmax(0,1fr) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a:visited {
    grid-column:1 !important;
    min-width:0 !important;
    min-height:64px !important;
    padding:15px 8px !important;
    display:flex !important;
    align-items:center !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
    box-shadow:none !important;
    text-decoration:none !important;
    font-family:var(--mf-font-body) !important;
    font-size:clamp(17px,2.3vw,20px) !important;
    font-weight:780 !important;
    line-height:1.2 !important;
    letter-spacing:-.018em !important;
    text-transform:none !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a::before,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a::after {
    content:none !important;
    display:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li > a:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li.current-menu-item > a,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav > li.current-menu-ancestor > a {
    background:transparent !important;
    color:var(--mf-ui-accent-hover) !important;
    -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
    transform:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .mf-submenu-toggle,
  html[data-mf-theme] body.mf-site .mf-nav .menu-item > .mf-submenu-toggle {
    grid-column:2 !important;
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    margin:0 !important;
    padding:0 !important;
    display:inline-grid !important;
    place-items:center !important;
    justify-self:end !important;
    border:1px solid transparent !important;
    border-radius:12px !important;
    background:transparent !important;
    color:var(--mf-menu-ink) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav > li > .mf-submenu-toggle:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-nav > li > .mf-submenu-toggle[aria-expanded="true"] {
    border-color:var(--mf-ui-accent) !important;
    background:var(--mf-menu-hover) !important;
    color:var(--mf-ui-accent-hover) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav .mf-submenu-toggle__icon {
    position:relative;
    width:18px;
    height:18px;
    display:block;
  }

  html[data-mf-theme] body.mf-site .mf-nav .mf-submenu-toggle__icon::before,
  html[data-mf-theme] body.mf-site .mf-nav .mf-submenu-toggle__icon::after {
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:16px;
    height:2px;
    border-radius:2px;
    background:currentColor;
    transform:translate(-50%,-50%);
    transition:transform 150ms ease,opacity 150ms ease;
  }

  html[data-mf-theme] body.mf-site .mf-nav .mf-submenu-toggle__icon::after {
    transform:translate(-50%,-50%) rotate(90deg);
  }

  html[data-mf-theme] body.mf-site .mf-nav .mf-submenu-toggle[aria-expanded="true"] .mf-submenu-toggle__icon::after {
    transform:translate(-50%,-50%) rotate(0deg);
    opacity:0;
  }

  html[data-mf-theme] body.mf-site .mf-nav .sub-menu,
  html[data-mf-theme] body.mf-site .mf-nav .sub-menu.mf-submenu--grid,
  html[data-mf-theme] body.mf-site .mf-nav .sub-menu.mf-submenu--mega {
    grid-column:1 / -1 !important;
    position:static !important;
    inset:auto !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 0 12px 12px !important;
    display:none !important;
    grid-template-columns:1fr !important;
    gap:4px !important;
    overflow:visible !important;
    border:0 !important;
    border-left:2px solid var(--mf-menu-line) !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
    transition:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav .menu-item-has-children[data-expanded="true"] > .sub-menu {
    display:grid !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav .sub-menu > li,
  html[data-mf-theme] body.mf-site .mf-nav .sub-menu .menu-item {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 44px !important;
    border:0 !important;
    background:transparent !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav .sub-menu a,
  html[data-mf-theme] body.mf-site .mf-nav .sub-menu a:visited {
    min-height:44px !important;
    padding:10px 10px !important;
    display:flex !important;
    align-items:center !important;
    border:1px solid transparent !important;
    border-radius:9px !important;
    background:transparent !important;
    color:var(--mf-menu-text) !important;
    -webkit-text-fill-color:var(--mf-menu-text) !important;
    text-decoration:none !important;
    font-family:var(--mf-font-body) !important;
    font-size:14.5px !important;
    font-weight:620 !important;
    line-height:1.35 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
    white-space:normal !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav .sub-menu a:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-nav .sub-menu .current-menu-item > a {
    border-color:var(--mf-ui-accent) !important;
    background:var(--mf-menu-hover) !important;
    color:var(--mf-ui-accent-hover) !important;
    -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav .mf-mega-visual-item {
    display:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-actions {
    padding:18px 16px !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
    border:0 !important;
    border-top:1px solid var(--mf-menu-line) !important;
    background:var(--mf-menu-card-soft) !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-actions a,
  html[data-mf-theme] body.mf-site .mf-mobile-nav-actions a:visited {
    min-height:44px !important;
    padding:10px 12px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid var(--mf-menu-line) !important;
    border-radius:10px !important;
    background:var(--mf-menu-card) !important;
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
    text-align:center !important;
    text-decoration:none !important;
    font-size:12.5px !important;
    font-weight:760 !important;
    line-height:1.25 !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-actions a:is(:hover,:focus-visible) {
    border-color:var(--mf-ui-accent) !important;
    background:var(--mf-menu-hover) !important;
    color:var(--mf-ui-accent-hover) !important;
    -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-utilities {
    padding:16px !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    border:0 !important;
    border-top:1px solid var(--mf-menu-line) !important;
    background:var(--mf-menu-panel) !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-utilities a,
  html[data-mf-theme] body.mf-site .mf-mobile-nav-utilities a:visited {
    min-height:70px !important;
    padding:10px 6px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    border:1px solid var(--mf-menu-line) !important;
    border-radius:11px !important;
    background:var(--mf-menu-card) !important;
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
    text-align:center !important;
    text-decoration:none !important;
    font-size:12px !important;
    font-weight:740 !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-utilities :where(svg,.mf-icon) {
    width:20px !important;
    height:20px !important;
    color:inherit !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-utilities a:is(:hover,:focus-visible) {
    border-color:var(--mf-ui-accent) !important;
    background:var(--mf-menu-hover) !important;
    color:var(--mf-ui-accent-hover) !important;
    -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
  }
}

@media (max-width:640px) {
  html[data-mf-theme] body.mf-site .mf-header__inner {
    width:calc(100% - 20px) !important;
    grid-template-columns:minmax(104px,1fr) auto 44px !important;
    gap:5px !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-tools { gap:3px !important; }
  html[data-mf-theme] body.mf-site .mf-mobile-tools .mf-mobile-wishlist { display:none !important; }
  html[data-mf-theme] body.mf-site .mf-header :is(.mf-mobile-tools .mf-icon-btn,.mf-mobile-tools .mf-theme-toggle) {
    width:38px !important;
    height:40px !important;
    min-width:38px !important;
    min-height:40px !important;
  }

  html[data-mf-theme] body.mf-site .mf-header__nav {
    width:min(94vw,440px) !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-head {
    padding-inline:12px !important;
  }

  html[data-mf-theme] body.mf-site .mf-nav {
    padding-inline:12px !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-actions {
    grid-template-columns:1fr !important;
    padding-inline:12px !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-utilities {
    padding-inline:12px !important;
  }
}

@media (max-width:390px) {
  html[data-mf-theme] body.mf-site .mf-header__inner {
    width:calc(100% - 16px) !important;
    grid-template-columns:minmax(96px,1fr) auto 42px !important;
    gap:3px !important;
  }

  html[data-mf-theme] body.mf-site .mf-logo--text {
    font-size:1.35rem !important;
  }

  html[data-mf-theme] body.mf-site .mf-header :is(.mf-mobile-tools .mf-icon-btn,.mf-mobile-tools .mf-theme-toggle) {
    width:36px !important;
    height:38px !important;
    min-width:36px !important;
    min-height:38px !important;
  }

  html[data-mf-theme] body.mf-site .mf-menu-toggle {
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-utilities {
    grid-template-columns:1fr !important;
  }

  html[data-mf-theme] body.mf-site .mf-mobile-nav-utilities a {
    min-height:52px !important;
    flex-direction:row !important;
  }
}

/* ========================================================================== 
   6. Cross-template surface and text safeguards
   ========================================================================== */
html[data-mf-theme] body.mf-site :where(
  .mf-page,.mf-static-page,.mf-blog-content,.mf-shop,.mf-archive,.mf-product,
  .mf-guide,.mf-hub,.mf-growth-page,.mf-authority-shell,.mf-search-page,
  .woocommerce-cart-form,.cart_totals,.woocommerce-checkout-review-order,
  .woocommerce-MyAccount-content,.mf-account-main
) {
  color:var(--mf-ui-text);
}

html[data-mf-theme] body.mf-site :where(
  .mf-static-card,.mf-static-panel,.mf-product-card,.mf-ref-product-card,
  .mf-cat-chip,.mf-cat-related__card,.mf-guide__related-card,.mf-blog-shop-panel,
  .mf-cart-empty,.mf-account-card,.woocommerce-MyAccount-content,
  .woocommerce-cart-form,.cart_totals,.woocommerce-checkout-review-order
) {
  border-color:var(--mf-ui-line) !important;
  background-color:var(--mf-ui-surface) !important;
  color:var(--mf-ui-text) !important;
}

html[data-mf-theme] body.mf-site :where(
  .mf-static-card,.mf-static-panel,.mf-product-card,.mf-ref-product-card,
  .mf-cat-related__card,.mf-guide__related-card,.mf-blog-shop-panel,
  .mf-cart-empty,.mf-account-card,.woocommerce-MyAccount-content,
  .woocommerce-cart-form,.cart_totals,.woocommerce-checkout-review-order
) :where(h1,h2,h3,h4,h5,h6,strong,summary,label,a:not(.button):not(.mf-btn)) {
  color:var(--mf-ui-ink) !important;
  -webkit-text-fill-color:var(--mf-ui-ink) !important;
}

html[data-mf-theme] body.mf-site :where(
  .mf-static-card,.mf-static-panel,.mf-product-card,.mf-ref-product-card,
  .mf-cat-related__card,.mf-guide__related-card,.mf-blog-shop-panel,
  .mf-cart-empty,.mf-account-card,.woocommerce-MyAccount-content,
  .woocommerce-cart-form,.cart_totals,.woocommerce-checkout-review-order
) :where(p,li,span,small,td,th) {
  color:var(--mf-ui-muted);
}

html[data-mf-theme] body.mf-site :where(.mf-btn,.button,.wp-element-button) {
  min-height:44px;
  text-decoration:none !important;
}

html[data-mf-theme] body.mf-site :where(.mf-btn--primary,.single_add_to_cart_button,.checkout-button,.button.alt) {
  border-color:var(--mf-ui-accent) !important;
  background-color:var(--mf-ui-accent) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

html[data-mf-theme] body.mf-site :where(.mf-btn--primary,.single_add_to_cart_button,.checkout-button,.button.alt):is(:hover,:focus-visible) {
  border-color:var(--mf-ui-accent-hover) !important;
  background-color:var(--mf-ui-accent-hover) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

html[data-mf-theme] body.mf-site :where(.mf-btn--outline,.mf-btn--secondary,.button:not(.alt):not(.checkout-button):not(.single_add_to_cart_button)) {
  border-color:var(--mf-ui-line-strong) !important;
  background-color:var(--mf-ui-surface) !important;
  color:var(--mf-ui-ink) !important;
  -webkit-text-fill-color:var(--mf-ui-ink) !important;
}

html[data-mf-theme] body.mf-site :where(.mf-btn--outline,.mf-btn--secondary,.button:not(.alt):not(.checkout-button):not(.single_add_to_cart_button)):is(:hover,:focus-visible) {
  border-color:var(--mf-ui-ink) !important;
  background-color:var(--mf-ui-ink) !important;
  color:var(--mf-ui-surface) !important;
  -webkit-text-fill-color:var(--mf-ui-surface) !important;
}

/* Breadcrumbs remain legible without overpowering the page title. */
html[data-mf-theme] body.mf-site :where(.mf-breadcrumbs,.woocommerce-breadcrumb,.rank-math-breadcrumb) {
  color:var(--mf-ui-muted) !important;
}
html[data-mf-theme] body.mf-site :where(.mf-breadcrumbs,.woocommerce-breadcrumb,.rank-math-breadcrumb) a {
  color:var(--mf-ui-muted) !important;
  -webkit-text-fill-color:var(--mf-ui-muted) !important;
}
html[data-mf-theme] body.mf-site :where(.mf-breadcrumbs,.woocommerce-breadcrumb,.rank-math-breadcrumb) a:is(:hover,:focus-visible) {
  color:var(--mf-ui-accent-hover) !important;
  -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
}

/* ========================================================================== 
   7. Motion, touch and print safeguards
   ========================================================================== */
@media (hover:none) {
  html[data-mf-theme] body.mf-site .mf-header :is(.mf-icon-btn,.mf-theme-toggle):hover,
  html[data-mf-theme] body.mf-site .mf-header .mf-nav a:hover {
    transform:none !important;
  }
}

@media (prefers-reduced-motion:reduce) {
  html[data-mf-theme] body.mf-site *,
  html[data-mf-theme] body.mf-site *::before,
  html[data-mf-theme] body.mf-site *::after {
    scroll-behavior:auto !important;
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}

@media print {
  body.mf-site .mf-header,
  body.mf-site .mf-mobile-nav-backdrop,
  body.mf-site .mf-search-overlay {
    display:none !important;
  }
  body.mf-site,
  body.mf-site .mf-site__main {
    background:#fff !important;
    color:#000 !important;
  }
}

/* ========================================================================== 
   11. Breakpoint conflict firewall
   Historical bundles used 1025px as the desktop threshold. This final rule
   deliberately exceeds their specificity so 1025–1180px devices always use
   the drawer contract and never inherit fixed desktop mega panels.
   ========================================================================== */
@media (max-width:1180px) {
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.menu-item-has-children > .sub-menu,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.menu-item-has-children > .sub-menu.mf-submenu--grid,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.menu-item-has-children > .sub-menu.mf-submenu--mega,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.mf-menu-item--mega > .sub-menu,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li[data-submenu="mega"] > .sub-menu {
    grid-column:1 / -1 !important;
    position:static !important;
    inset:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 0 12px 12px !important;
    display:none !important;
    grid-template-columns:1fr !important;
    grid-auto-flow:row !important;
    grid-auto-rows:auto !important;
    gap:4px !important;
    overflow:visible !important;
    border:0 !important;
    border-left:2px solid var(--mf-menu-line) !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:none !important;
    transition:none !important;
    z-index:auto !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.menu-item-has-children > .sub-menu::before,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.mf-menu-item--mega > .sub-menu::before,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li[data-submenu="mega"] > .sub-menu::before {
    content:none !important;
    display:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.menu-item-has-children[data-expanded="true"] > .sub-menu,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.mf-menu-item--mega[data-expanded="true"] > .sub-menu,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li[data-submenu="mega"][data-expanded="true"] > .sub-menu {
    display:grid !important;
  }
}

/* ========================================================================== 
   12. Theme-specific navigation authority
   v1.15.9.x assigned a permanent light menu palette directly to the header.
   Re-declare the complete palette on the same component with a theme-specific
   selector so the desktop panel and mobile drawer truly follow the selected
   mode without invisible text or a delayed repaint.
   ========================================================================== */
html[data-mf-theme="light"] body.mf-site .mf-header {
  --mf-menu-panel:#f7f0e7;
  --mf-menu-card:#fffdf9;
  --mf-menu-card-soft:#efe4d7;
  --mf-menu-ink:#1a1511;
  --mf-menu-text:#312922;
  --mf-menu-muted:#665a4f;
  --mf-menu-line:#cbbbaa;
  --mf-menu-line-strong:#7a6d61;
  --mf-menu-hover:#fff0ed;
  --mf-menu-shadow:0 22px 60px rgba(12,10,8,.22);
}

html[data-mf-theme="dark"] body.mf-site .mf-header {
  --mf-menu-panel:#15120f;
  --mf-menu-card:#1b1713;
  --mf-menu-card-soft:#211c17;
  --mf-menu-ink:#faf3eb;
  --mf-menu-text:#f2e9df;
  --mf-menu-muted:#cfc1b5;
  --mf-menu-line:#493e35;
  --mf-menu-line-strong:#8e7b6b;
  --mf-menu-hover:#321815;
  --mf-menu-shadow:0 22px 60px rgba(0,0,0,.46);
}

html[data-mf-theme] body.mf-site .mf-logo--text {
  font-family:var(--mf-font-body) !important;
}

@media (min-width:1181px) {
  html[data-mf-theme] body.mf-site .mf-header__tools {
    padding-inline:2px !important;
  }
}

@media (max-width:1180px) {
  body.mf-site.mf-menu-is-open .mf-menu-toggle {
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li > a,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li > a:visited {
    justify-content:flex-start !important;
    text-align:left !important;
    background:transparent !important;
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li > a::before,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li > a::after {
    content:none !important;
    display:none !important;
    border:0 !important;
    background:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li > a:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.current-menu-item > a,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li.current-menu-ancestor > a {
    color:var(--mf-ui-accent-hover) !important;
    -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .sub-menu > li > a,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .sub-menu > li > a:visited,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .sub-menu .sub-menu > li > a,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .sub-menu .sub-menu > li > a:visited {
    min-height:44px !important;
    padding:10px !important;
    justify-content:flex-start !important;
    border:1px solid transparent !important;
    border-radius:9px !important;
    background:transparent !important;
    color:var(--mf-menu-text) !important;
    -webkit-text-fill-color:var(--mf-menu-text) !important;
    box-shadow:none !important;
    text-align:left !important;
    font-family:var(--mf-font-body) !important;
    font-size:14.5px !important;
    font-weight:620 !important;
    line-height:1.35 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .sub-menu > li > a:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .sub-menu .current-menu-item > a {
    border-color:var(--mf-ui-accent) !important;
    background:var(--mf-menu-hover) !important;
    color:var(--mf-ui-accent-hover) !important;
    -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .mf-mega-visual-item,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li > .sub-menu > li.mf-mega-visual-item {
    display:none !important;
  }
}

@media (max-width:1180px) {
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-mobile-nav-head,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-mobile-nav-head > span,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-mobile-nav-head > span:first-child,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-mobile-nav-head > span:nth-child(2) {
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-mobile-nav-head > span:first-child {
    color:var(--mf-menu-muted) !important;
    -webkit-text-fill-color:var(--mf-menu-muted) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-mobile-nav-close {
    border-color:var(--mf-menu-line) !important;
    background:var(--mf-menu-card) !important;
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li > .mf-submenu-toggle,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .menu-item > .mf-submenu-toggle {
    color:var(--mf-menu-ink) !important;
    -webkit-text-fill-color:var(--mf-menu-ink) !important;
  }

  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav > li > .mf-submenu-toggle:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .menu-item > .mf-submenu-toggle:is(:hover,:focus-visible),
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .menu-item > .mf-submenu-toggle[aria-expanded="true"] {
    color:var(--mf-ui-accent-hover) !important;
    -webkit-text-fill-color:var(--mf-ui-accent-hover) !important;
  }
}

@media (min-width:1025px) and (max-width:1180px) {
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .menu-item > .mf-submenu-toggle .mf-submenu-toggle__icon::before,
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .menu-item > .mf-submenu-toggle .mf-submenu-toggle__icon::after {
    content:"" !important;
    display:block !important;
    background:currentColor !important;
    border:0 !important;
  }
}

@media (min-width:1025px) and (max-width:1180px) {
  html[data-mf-theme] body.mf-site .mf-header .mf-header__nav .mf-nav .menu-item > .mf-submenu-toggle .mf-submenu-toggle__icon {
    color:inherit !important;
    -webkit-text-fill-color:currentColor !important;
  }
}
