/* =========================================================
   UNIVERSAL GUTENBERG MOBILE MENU
========================================================= */

:root {
    --vc-mobile-menu-width: 70vw;
    --vc-mobile-menu-bg: #ffffff;
    --vc-mobile-menu-text: #181818;
    --vc-mobile-menu-brand-bg: #ffffff;
    --vc-mobile-menu-submenu-bg: #ffffff;
    --vc-mobile-menu-active-bg: #b7e957;
    --vc-mobile-menu-active-text: #064723;
    --vc-mobile-menu-border: rgba(6, 71, 35, 0.14);
    --vc-mobile-menu-backdrop: rgba(0, 0, 0, 0.58);
    --vc-mobile-menu-shadow: 14px 0 35px rgba(0, 0, 0, 0.2);
}

.vc-mobile-menu-brandbar, .vc-mobile-menu-backdrop {display: none;}

@media (max-width: 992px) {
html.vc-mobile-menu-open, body.vc-mobile-menu-open {overflow: hidden;}
.vc-mobile-menu-nav {position: static !important;}
.vc-mobile-menu-nav .wp-block-navigation__responsive-container-open {position: relative; z-index: 100003; display: flex !important; align-items: center; justify-content: center; margin: 0; padding: 6px; border: 0; background: transparent; color: currentColor; cursor: pointer;}
.vc-mobile-menu-nav .wp-block-navigation__responsive-container-open svg {width: 30px; height: 30px;}
.vc-mobile-menu-nav .wp-block-navigation__responsive-container {position: fixed !important; inset: 0 auto 0 0 !important; z-index: 100003 !important; display: flex !important; width: var(--vc-mobile-menu-width) !important; max-width: none !important; margin: 0 !important; padding: 0 !important; overflow-x: hidden !important; overflow-y: auto !important; background: var(--vc-mobile-menu-bg) !important; color: var(--vc-mobile-menu-text) !important; opacity: 0; visibility: hidden; pointer-events: none; transform: translateX(-105%); transition: transform 0.3s ease, opacity 0.3s ease, visibility 0s linear 0.3s !important; box-shadow: var(--vc-mobile-menu-shadow); animation: none !important;}
.vc-mobile-menu-nav .wp-block-navigation__responsive-container.is-menu-open {opacity: 1;visibility: visible; pointer-events: auto; transform: translateX(0); transition: transform 0.3s ease, opacity 0.3s ease, visibility 0s !important;}
.vc-mobile-menu-nav .wp-block-navigation__responsive-dialog {width: 100%; margin: 0 !important; padding: 0 !important;}
.vc-mobile-menu-nav .wp-block-navigation__responsive-container-content {display: flex !important; flex-direction: column !important; align-items: stretch !important; width: 100%; gap: 0 !important; padding: 0 0 24px !important;}
.vc-mobile-menu-brandbar {position: relative; display: flex; align-items: center; width: 100%; padding: 20px 58px 20px 20px; background: var(--vc-mobile-menu-brand-bg); border-bottom: 1px solid var(--vc-mobile-menu-border);}
.vc-mobile-menu-logo-link {display: inline-flex; align-items: center; margin: 0; padding: 0; border: 0; color: var(--vc-mobile-menu-text); text-decoration: none;}
.vc-mobile-menu-logo-image {display: block; width: auto; max-width: 180px; max-height: 72px; margin: 0;}
.vc-mobile-menu-site-name {margin: 0; color: var(--vc-mobile-menu-text); font: inherit; font-size: 20px; line-height: 1.25; font-weight: 600;}
.vc-mobile-menu-nav .wp-block-navigation__container, .vc-mobile-menu-nav .wp-block-page-list {display: block !important; width: 100%; margin: 0 !important; padding: 0 !important;}
.vc-mobile-menu-nav .wp-block-navigation-item {position: relative; display: block !important; width: 100%; margin: 0 !important; border-bottom: 1px solid var(--vc-mobile-menu-border);}
.vc-mobile-menu-nav .wp-block-navigation-item > .wp-block-navigation-item__content {display: block !important; width: 100%; padding: 15px 52px 15px 20px !important; background: var(--vc-mobile-menu-bg) !important; color: var(--vc-mobile-menu-text) !important; font: inherit; font-size: 15px !important; line-height: 22px !important; text-decoration: none !important;}
.vc-mobile-menu-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:hover {color: var(--vc-mobile-menu-active-text) !important;}
.vc-mobile-menu-nav .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item:not(.wp-block-navigation-submenu) > .wp-block-navigation-item__content,
.vc-mobile-menu-nav .wp-block-navigation__container > .wp-block-navigation-item.current_page_item:not(.wp-block-navigation-submenu) > .wp-block-navigation-item__content,
.vc-mobile-menu-nav .wp-block-navigation__container > .wp-block-navigation-item.vc-current-menu-item:not(.wp-block-navigation-submenu) > .wp-block-navigation-item__content,
.vc-mobile-menu-nav .wp-block-navigation__container > .wp-block-navigation-item:not(.wp-block-navigation-submenu) > .wp-block-navigation-item__content[aria-current="page"] {background: var(--vc-mobile-menu-active-bg) !important; color: var(--vc-mobile-menu-active-text) !important;}
.vc-mobile-menu-nav .wp-block-navigation-submenu {display: grid !important; grid-template-columns: 1fr auto; grid-template-rows: auto auto;}
.vc-mobile-menu-nav .wp-block-navigation-submenu > .wp-block-navigation-item__content {grid-column: 1; grid-row: 1;}
.vc-mobile-menu-nav .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon {position: static !important; grid-column: 2; grid-row: 1; display: flex !important; align-items: center; justify-content: center; min-width: 50px; margin: 0 !important; padding: 0 16px !important; border: 0 !important; background: var(--vc-mobile-menu-bg) !important; color: var(--vc-mobile-menu-active-text) !important; cursor: pointer;}
.vc-mobile-menu-nav .wp-block-navigation-submenu > .wp-block-navigation__submenu-icon svg {width: 14px !important; height: 14px !important; transition: transform 0.25s ease;}
.vc-mobile-menu-nav .wp-block-navigation-submenu.vc-submenu-open > .wp-block-navigation__submenu-icon svg {transform: rotate(180deg);}
.vc-mobile-menu-nav ul.wp-block-navigation__submenu-container {position: static !important; grid-column: 1 / -1; grid-row: 2; display: none !important; width: 100% !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: var(--vc-mobile-menu-submenu-bg) !important; box-shadow: none !important; opacity: 1 !important; visibility: visible !important;}
.vc-mobile-menu-nav .wp-block-navigation-submenu.vc-submenu-open > ul.wp-block-navigation__submenu-container {display: block !important;}
.vc-mobile-menu-nav ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {padding: 12px 20px 12px 36px !important; background: var(--vc-mobile-menu-submenu-bg) !important; color: var(--vc-mobile-menu-text) !important; font: inherit; font-size: 14px !important; line-height: 22px !important;}
.vc-mobile-menu-nav ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {background: var(--vc-mobile-menu-active-text) !important; color: var(--vc-mobile-menu-active-bg) !important;}
.vc-mobile-menu-nav ul.wp-block-navigation__submenu-container .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.vc-mobile-menu-nav ul.wp-block-navigation__submenu-container .wp-block-navigation-item.current_page_item > .wp-block-navigation-item__content,
.vc-mobile-menu-nav ul.wp-block-navigation__submenu-container .wp-block-navigation-item.vc-current-menu-item > .wp-block-navigation-item__content,
.vc-mobile-menu-nav ul.wp-block-navigation__submenu-container .wp-block-navigation-item > .wp-block-navigation-item__content[aria-current="page"] {background: var(--vc-mobile-menu-active-bg) !important; color: var(--vc-mobile-menu-active-text) !important;}
.vc-mobile-menu-nav .wp-block-navigation__responsive-container-close {position: absolute !important; top: 14px !important; right: 12px !important; z-index: 100004 !important; display: flex !important; align-items: center; justify-content: center; margin: 0 !important; padding: 8px !important; border: 0 !important; background: transparent !important; color: var(--vc-mobile-menu-active-text) !important; cursor: pointer;}
.vc-mobile-menu-nav .wp-block-navigation__responsive-container-close svg {width: 26px; height: 26px;}
.vc-mobile-menu-backdrop {position: fixed; inset: 0; z-index: 100000; display: block; margin: 0; padding: 0; border: 0; background: var(--vc-mobile-menu-backdrop); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.3s ease, visibility 0s linear 0.3s;}
.vc-mobile-menu-backdrop.is-active {opacity: 1; visibility: visible; pointer-events: auto; transition: opacity 0.3s ease, visibility 0s;}
}

@media (max-width: 576px) {
.vc-mobile-menu-brandbar {padding: 18px 52px 18px 18px;}
.vc-mobile-menu-logo-image {max-width: 160px; max-height: 64px;}
.vc-mobile-menu-nav .wp-block-navigation-item > .wp-block-navigation-item__content {padding-left: 18px !important;}
.vc-mobile-menu-nav ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {padding-left: 32px !important;}
}

@media (prefers-reduced-motion: reduce) {.vc-mobile-menu-nav .wp-block-navigation__responsive-container, .vc-mobile-menu-backdrop, .vc-mobile-menu-nav .wp-block-navigation__submenu-icon svg {transition: none !important;}
}
