/* Trigger geometry is present before JS; the overlay is enhanced on desktop. */
@media (min-width: 1025px) {
  .machno-menu-enabled :is(.whb-default_header, .whb-default_header + .whb-clone) .wd-header-fs-nav > a {
    display: flex;
    align-items: center;
    gap: 27px;
    color: #F1F0EF;
  }
  .machno-menu-enabled :is(.whb-default_header, .whb-default_header + .whb-clone) .wd-header-fs-nav .wd-tools-icon { display: none; }
  .machno-menu-enabled :is(.whb-default_header, .whb-default_header + .whb-clone) .wd-header-fs-nav .wd-tools-text {
    margin: 0;
    color: #F1F0EF;
    text-align: center;
    font-family: "Unbounded", Arial, Helvetica, sans-serif;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 4px;
  }
  .machno-menu-enabled :is(.whb-default_header, .whb-default_header + .whb-clone) .wd-header-fs-nav > a::after {
    content: '';
    display: block;
    width: clamp(110px, 10.42vw, 200px);
    height: auto;
    aspect-ratio: 200 / 29;
    flex: 0 0 auto;
    background: currentColor;
    mask: var(--machno-menu-icon) center / contain no-repeat;
    -webkit-mask: var(--machno-menu-icon) center / contain no-repeat;
  }

  .machno-desktop-menu .wd-fs-menu {
    --wd-link-color: #1c1f18;
    --wd-link-color-hover: #5c6653;
    --wd-title-color: #1c1f18;
    --wd-text-color: #1c1f18;
    --color-gray-800: #1c1f18;
    --color-gray-900: #1c1f18;
    --wd-navigation-color: 28, 31, 24;
    background: #fff;
    color: #1c1f18;
    padding-block: max(110px, var(--machno-menu-content-top, 110px)) 40px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .6s ease, visibility 0s linear .6s;
  }
  .machno-desktop-menu .wd-fs-menu.wd-opened {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity .6s ease, visibility 0s;
  }
  .machno-desktop-menu .wd-fs-inner {
    opacity: 0;
    transform: scale(.06);
    transform-origin: 50% 50%;
    transition: opacity .35s ease, transform .6s cubic-bezier(.22, 1, .36, 1);
  }
  .machno-desktop-menu .wd-opened .wd-fs-inner {
    opacity: 1;
    transform: scale(1);
    transition: opacity .65s ease .08s, transform .9s cubic-bezier(.22, 1, .36, 1) .04s;
  }
  /* Replace the theme's staggered slide with a single zoom for all menu content. */
  .machno-desktop-menu .wd-fs-menu .wd-nav-fs {
    transform: none;
    transition: none;
  }
  .machno-desktop-menu .wd-fs-menu .wd-nav-fs > li { animation: none; }
  .machno-desktop-menu .wd-fs-menu .wd-sub-menu > li > a {
    --sub-menu-color: #1c1f18;
    --sub-menu-color-hover: #5c6653;
  }

  /* Geometry comes from the clicked header, including the sticky clone. */
  .machno-desktop-menu .wd-fs-close.wd-style-icon {
    --wd-action-icon-color: #1c1f18;
    top: var(--machno-menu-top);
    left: var(--machno-menu-left);
    right: auto;
    width: var(--machno-menu-width);
    height: var(--machno-menu-height);
    z-index: 2;
  }
  .machno-desktop-menu .wd-fs-close > a {
    display: flex;
    gap: 18px;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    padding: 0;
    color: #1c1f18;
    font-family: var(--machno-menu-font);
    font-size: var(--machno-menu-font-size);
    font-weight: var(--machno-menu-font-weight);
    letter-spacing: var(--machno-menu-letter-spacing);
    line-height: 1;
    text-transform: uppercase;
  }
  .machno-menu-close-label { flex: 0 0 var(--machno-menu-label-width); }
  .machno-desktop-menu .wd-fs-close .wd-action-icon {
    display: flex;
    flex: 1;
    justify-content: flex-end;
    align-items: center;
  }
  .machno-menu-logo {
    position: absolute;
    top: var(--machno-menu-top);
    left: var(--machno-menu-logo-left);
    height: var(--machno-menu-height);
    display: flex;
    align-items: center;
    z-index: 2;
  }
  .machno-menu-logo img { width: 150px; height: auto; }
  .machno-desktop-menu .wd-fs-menu a:focus-visible,
  .machno-menu-enabled :is(.whb-default_header, .whb-default_header + .whb-clone) .wd-header-fs-nav > a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 6px;
  }
}
html.machno-menu-lock { overflow: hidden; }
@media (prefers-reduced-motion: reduce) {
  .machno-desktop-menu .wd-fs-menu,
  .machno-desktop-menu .wd-fs-menu .wd-fs-inner {
    transition: none;
    transform: none;
  }
}

/* The mobile icon opens the same editable fullscreen menu and accordions. */
@media (max-width: 1024px) {
 .machno-mobile-menu .wd-fs-menu {
  position: fixed; inset: 0; width: 100%; height: 100dvh; max-height: none;
  display: block; padding: 100px 0 max(28px, env(safe-area-inset-bottom));
  overflow: auto; overscroll-behavior: contain; background: #fff; color: #1c1f18;
  opacity: 0; visibility: hidden; pointer-events: none; transform: none;
  transition: opacity .6s ease, visibility 0s linear .6s;
 }
 .machno-mobile-menu .wd-fs-menu.wd-opened { opacity: 1; visibility: visible; pointer-events: auto; transition: opacity .6s ease, visibility 0s; }
 .machno-mobile-menu .wd-fs-inner { display: block; height: auto; min-height: 100%; opacity: 1; transform: none; padding: 0; }
 .machno-mobile-menu .wd-fs-inner > .wd-nav-fs,
 .machno-mobile-menu .wd-fs-inner::before,
 .machno-mobile-menu .wd-fs-inner::after { display: none; }
 .machno-mobile-menu :is(.wd-fs-widget-area, .full-screen-menu-widget) { margin: 0; }
 .machno-mobile-menu .machno-menu-logo { position: absolute; top: 20px; left: 7px; height: 48px; display: flex; align-items: center; }
 .machno-mobile-menu .machno-menu-logo img { width: 150px; height: auto; }
 .machno-mobile-menu .wd-fs-close.wd-style-icon { position: absolute; top: 20px; right: 7px; left: auto; width: 48px; height: 48px; --wd-action-icon-color: #1c1f18; }
 .machno-mobile-menu .wd-fs-close > a { width: 48px; height: 48px; padding: 0; justify-content: center; }
 .machno-mobile-menu .machno-menu-close-label { display: none; }
 .machno-mobile-menu .machno-menu-columns { opacity: 0; transform: scale(.82); transform-origin: 50% 20%; transition: opacity .3s ease, transform .4s ease; }
 .machno-mobile-menu .wd-opened .machno-menu-columns { opacity: 1; transform: scale(1); transition: opacity .6s ease .08s, transform .85s cubic-bezier(.22,1,.36,1) .04s; }
 .machno-mobile-menu .machno-menu-contact { opacity: 0; transform: translateY(26px); transition: opacity .25s ease, transform .35s ease; }
 .machno-mobile-menu .wd-opened .machno-menu-contact { opacity: 1; transform: translateY(0); transition: opacity .55s ease .15s, transform .7s cubic-bezier(.22,1,.36,1) .15s; }
 .machno-mobile-menu .wd-fs-menu :is(a, button):focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
}
@media (prefers-reduced-motion: reduce) {
 .machno-mobile-menu :is(.wd-fs-menu, .machno-menu-columns, .machno-menu-contact) { transition: none !important; transform: none !important; }
}