/* Directly versioned mobile navigation layer.
 * This intentionally loads after the editable CSS Manager files in uploads.
 */
@media (max-width: 900px) {
  .elementor-location-header.elk-mobile-nav-ready {
    z-index: 100100 !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elk-language-switcher.is-header-placement {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-height: 36px !important;
    margin: 0 8px 0 auto !important;
    padding: 0 !important;
    color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
    background: transparent !important;
    border: 0 !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elk-language-switcher.is-header-placement .elk-language-switcher__link {
    min-width: 30px !important;
    min-height: 30px !important;
    padding: 6px 5px !important;
    color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
    background: transparent !important;
    border: 1px solid transparent !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elk-language-switcher.is-header-placement .elk-language-switcher__link.is-active {
    color: var(--elk-mobile-menu-light, #f5f1e8) !important;
    background: var(--elk-mobile-menu-dark, #2f0c0c) !important;
    border-color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elk-language-switcher.is-header-placement + .elk-mobile-menu-toggle {
    margin-left: 0 !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown {
    position: fixed !important;
    z-index: 100090 !important;
    inset: var(--elk-expanded-menu-top, 64px) 0 0 !important;
    display: none !important;
    width: 100vw !important;
    min-width: 100vw !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: clamp(38px, 8vh, 78px) 20px max(38px, env(safe-area-inset-bottom)) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    background: var(--elk-mobile-menu-accent, #f0522d) !important;
    border: 0 !important;
    border-top: 1px solid var(--elk-mobile-menu-dark, #2f0c0c) !important;
    box-shadow: none !important;
  }

  .elementor-location-header.elk-mobile-nav-ready.is-menu-open .elementor-nav-menu--dropdown {
    display: block !important;
    animation: elk-direct-mobile-menu-reveal 280ms cubic-bezier(.2,.8,.2,1) both;
  }

  @keyframes elk-direct-mobile-menu-reveal {
    from { opacity: 0; transform: translateY(-16px); }
    to { opacity: 1; transform: translateY(0); }
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elk-expanded-menu-brand {
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    width: min(86%, 520px) !important;
    margin: 0 auto clamp(34px, 6vh, 62px) !important;
    color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
    font-family: "Forma DJR Display", Arial, sans-serif !important;
    font-size: clamp(24px, 7vw, 38px) !important;
    font-weight: 600 !important;
    line-height: .94 !important;
    letter-spacing: -.035em !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu > li {
    display: block !important;
    width: min(86%, 520px) !important;
    margin: 0 auto 14px !important;
    border: 0 !important;
    transform: rotate(-1.8deg) !important;
    transform-origin: center !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li:nth-child(even),
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(even) {
    margin-left: 7% !important;
    transform: rotate(1.45deg) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li:nth-child(3n),
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(3n) {
    margin-right: 3% !important;
    transform: rotate(-.6deg) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > a,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu > li > a {
    display: flex !important;
    min-height: 60px !important;
    padding: 13px 17px !important;
    align-items: center !important;
    color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
    background: var(--elk-mobile-menu-light, #f5f1e8) !important;
    border: 1px solid var(--elk-mobile-menu-dark, #2f0c0c) !important;
    box-shadow: 5px 5px 0 var(--elk-mobile-menu-dark, #2f0c0c) !important;
    font-family: "Forma DJR Display", Arial, sans-serif !important;
    font-size: clamp(24px, 7vw, 38px) !important;
    font-weight: 600 !important;
    line-height: .95 !important;
    letter-spacing: -.035em !important;
    text-transform: none !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > a:hover,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > a:focus-visible,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > a.elementor-item-active {
    color: var(--elk-mobile-menu-light, #f5f1e8) !important;
    background: var(--elk-mobile-menu-dark, #2f0c0c) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li.menu-item-has-children {
    overflow: hidden !important;
    background: var(--elk-mobile-menu-light, #f5f1e8) !important;
    border: 1px solid var(--elk-mobile-menu-dark, #2f0c0c) !important;
    box-shadow: 5px 5px 0 var(--elk-mobile-menu-dark, #2f0c0c) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li.menu-item-has-children > a {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > .sub-menu {
    position: static !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 2px 14px 14px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > .sub-menu > li {
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    transform: none !important;
    border: 0 !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > .sub-menu > li > a {
    display: flex !important;
    min-height: 30px !important;
    padding: 7px 9px !important;
    color: var(--elk-mobile-menu-light, #f5f1e8) !important;
    background: var(--elk-mobile-menu-dark, #2f0c0c) !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
  }

  body.elk-mobile-menu-open {
    overflow: hidden !important;
  }
}

@media (min-width: 901px) {
  .elementor-location-header.elk-mobile-nav-ready {
    z-index: 100100 !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--main {
    display: none !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-widget-nav-menu {
    position: static !important;
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elk-language-switcher.is-header-placement {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 0 0 auto !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elk-mobile-menu-toggle {
    display: inline-flex !important;
    min-width: 92px;
    height: 42px;
    margin-left: 12px;
    padding: 0 14px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--elk-mobile-menu-light, #f5f1e8);
    background: var(--elk-mobile-menu-dark, #2f0c0c);
    border: 1px solid var(--elk-mobile-menu-dark, #2f0c0c);
    border-radius: 0;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown {
    position: fixed !important;
    z-index: 100090 !important;
    inset: var(--elk-expanded-menu-top, 64px) 0 0 !important;
    display: none !important;
    width: 100vw !important;
    min-width: 100vw !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: clamp(45px, 7vh, 90px) max(34px, calc((100vw - 1280px) / 2)) 60px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: var(--elk-mobile-menu-accent, #f0522d) !important;
    border: 0 !important;
    border-top: 1px solid var(--elk-mobile-menu-dark, #2f0c0c) !important;
    box-shadow: none !important;
  }

  .elementor-location-header.elk-mobile-nav-ready.is-menu-open .elementor-nav-menu--dropdown {
    display: block !important;
    animation: elk-direct-mobile-menu-reveal 280ms cubic-bezier(.2,.8,.2,1) both;
  }

  .elementor-location-header.elk-mobile-nav-ready .elk-expanded-menu-brand {
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    width: min(78%, 980px) !important;
    margin: 0 auto clamp(38px, 6vh, 72px) !important;
    color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
    font-family: "Forma DJR Display", Arial, sans-serif !important;
    font-size: clamp(34px, 3.5vw, 58px) !important;
    font-weight: 600 !important;
    line-height: .92 !important;
    letter-spacing: -.04em !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px 34px !important;
    width: min(78%, 980px) !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu > li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    border: 0 !important;
    transform: rotate(-1.35deg) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li:nth-child(even),
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(even) {
    transform: translateY(10px) rotate(1.15deg) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li:nth-child(3n),
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu > li:nth-child(3n) {
    transform: translateX(12px) rotate(-.45deg) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > a,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > .elementor-nav-menu > li > a {
    display: flex !important;
    min-height: 82px !important;
    padding: 18px 24px !important;
    align-items: center !important;
    color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
    background: var(--elk-mobile-menu-light, #f5f1e8) !important;
    border: 1px solid var(--elk-mobile-menu-dark, #2f0c0c) !important;
    box-shadow: 7px 7px 0 var(--elk-mobile-menu-dark, #2f0c0c) !important;
    font-family: "Forma DJR Display", Arial, sans-serif !important;
    font-size: clamp(28px, 3vw, 46px) !important;
    font-weight: 600 !important;
    line-height: .92 !important;
    letter-spacing: -.04em !important;
    text-transform: none !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > a:hover,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > a:focus-visible,
  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > a.elementor-item-active {
    color: var(--elk-mobile-menu-light, #f5f1e8) !important;
    background: var(--elk-mobile-menu-dark, #2f0c0c) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li.menu-item-has-children {
    overflow: hidden !important;
    background: var(--elk-mobile-menu-light, #f5f1e8) !important;
    border: 1px solid var(--elk-mobile-menu-dark, #2f0c0c) !important;
    box-shadow: 7px 7px 0 var(--elk-mobile-menu-dark, #2f0c0c) !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li.menu-item-has-children > a {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > .sub-menu {
    position: static !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 22px 18px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > .sub-menu > li {
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    transform: none !important;
    border: 0 !important;
  }

  .elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li > .sub-menu > li > a {
    display: flex !important;
    min-height: 34px !important;
    padding: 8px 11px !important;
    color: var(--elk-mobile-menu-light, #f5f1e8) !important;
    background: var(--elk-mobile-menu-dark, #2f0c0c) !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
  }

  body.elk-mobile-menu-open {
    overflow: hidden !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-location-header.elk-mobile-nav-ready.is-menu-open .elementor-nav-menu--dropdown {
    animation: none !important;
  }
}

/* The closed header uses the same featured-edition palette as the overlay. */
.elementor-location-header.elk-mobile-nav-ready,
.elementor-location-header.elk-mobile-nav-ready > .e-con,
.elementor-location-header.elk-mobile-nav-ready > .elementor-element,
.elementor-location-header.elk-mobile-nav-ready .e-con-inner {
  color: var(--elk-mobile-menu-light, #f5f1e8) !important;
  background-color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
}

.elementor-location-header.elk-mobile-nav-ready :where(.elementor-widget-theme-site-title, .elementor-widget-site-title) a {
  color: var(--elk-mobile-menu-light, #f5f1e8) !important;
}

.elementor-location-header.elk-mobile-nav-ready .elementor-social-icon {
  color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
  background-color: var(--elk-mobile-menu-accent, #f0522d) !important;
}

.elementor-location-header.elk-mobile-nav-ready .elk-language-switcher.is-header-placement {
  color: var(--elk-mobile-menu-light, #f5f1e8) !important;
  background: transparent !important;
}

.elementor-location-header.elk-mobile-nav-ready .elk-language-switcher.is-header-placement .elk-language-switcher__link {
  color: var(--elk-mobile-menu-light, #f5f1e8) !important;
  background: transparent !important;
  border-color: transparent !important;
}

.elementor-location-header.elk-mobile-nav-ready .elk-language-switcher.is-header-placement .elk-language-switcher__link.is-active {
  color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
  background: var(--elk-mobile-menu-accent, #f0522d) !important;
  border-color: var(--elk-mobile-menu-accent, #f0522d) !important;
}

.elementor-location-header.elk-mobile-nav-ready .elk-mobile-menu-toggle,
.elementor-location-header.elk-mobile-nav-ready .elk-mobile-menu-toggle:hover,
.elementor-location-header.elk-mobile-nav-ready .elk-mobile-menu-toggle:focus-visible {
  color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
  background: var(--elk-mobile-menu-accent, #f0522d) !important;
  border-color: var(--elk-mobile-menu-accent, #f0522d) !important;
}

/* Elementor activates a parent while its submenu is open. Keep that label
 * legible on the light parent card; only invert it on direct interaction. */
.elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li.menu-item-has-children > a.elementor-item-active,
.elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li.menu-item-has-children > a.highlighted {
  color: var(--elk-mobile-menu-dark, #2f0c0c) !important;
  background: transparent !important;
}

.elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li.menu-item-has-children > a:hover,
.elementor-location-header.elk-mobile-nav-ready .elementor-nav-menu--dropdown > ul > li.menu-item-has-children > a:focus-visible {
  color: var(--elk-mobile-menu-light, #f5f1e8) !important;
  background: var(--elk-mobile-menu-dark, #2f0c0c) !important;
}
