/* Behaviour only. All colours/typography/layout come from the ORIGINAL ElementsKit + Elementor CSS. */
@media (min-width:1025px){
.ekit-wid-con .elementskit-navbar-nav>li{position:relative}
.ekit-wid-con .elementskit-navbar-nav>li.di-mm-open>.elementskit-megamenu-panel{visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important;display:block!important;z-index:99999}
.ekit-wid-con .elementskit-navbar-nav>li>.elementskit-megamenu-panel{position:absolute}
}
@media (max-width:1024px){
.ekit-wid-con .elementskit-megamenu-panel{display:none!important;position:static!important;left:auto!important;top:auto!important;max-width:none!important;width:auto!important;visibility:visible;opacity:1;transform:none}
.ekit-wid-con .elementskit-navbar-nav>li.dropdown-open>.elementskit-megamenu-panel,.ekit-wid-con .elementskit-navbar-nav>li.di-mm-open>.elementskit-megamenu-panel{display:block!important}
}

/* off-canvas popup: safety net so it opens even if ElementsKit's CSS is incomplete */
.ekit-sidebar-group.ekit_isActive{visibility:visible}
html.di-ekit-lock{overflow:hidden}
.ekit-sidebar-group .elementskit-navbar-nav li.dropdown-open>.elementskit-dropdown,.ekit-sidebar-group .elementskit-navbar-nav li.dropdown-open>.elementskit-megamenu-panel{display:block!important;visibility:visible!important;opacity:1!important;position:static!important;max-width:none!important;width:auto!important;left:auto!important;top:auto!important}

/* v3.5.1: Elementor containers must retain their saved flex sizing without
   relying on Elementor frontend.css. */
.di-mm-standalone .e-con > .e-con-inner{box-sizing:border-box;min-width:0}
.di-mm-standalone .e-con > .e-con-inner > .e-con,
.di-mm-standalone .e-con > .e-con-inner > .elementor-element{min-width:0}
.di-mm-standalone .elementor-widget-image img,
.di-mm-standalone .di-mm-logo-link img{display:block}
.di-mm-standalone .di-mm-logo-link{display:inline-block;line-height:0}
.di-mm-standalone .elementor-widget-image{text-align:inherit}
@media(min-width:1025px){
  .ekit-wid-con .elementskit-navbar-nav>li>.elementskit-megamenu-panel{
    min-width:100%;
    overflow:visible;
  }
  .di-mm-standalone .e-con{box-sizing:border-box}
}


/* v3.5.2: Elementor container layout rebuilt from Elementor's own CSS variables
   (--flex-direction, --gap, --padding-*, --width ...). The saved per-template CSS
   sets those variables; these rules turn them into real properties again. */
.di-mm-standalone,.di-mm-standalone *{box-sizing:border-box}
.di-mm-standalone .e-con{
  --display:flex;--flex-direction:column;--flex-wrap:nowrap;--justify-content:flex-start;--align-items:stretch;--align-content:normal;
  --flex-basis:auto;--flex-grow:0;--flex-shrink:1;--width:100%;--min-height:0px;--content-width:min(100%,var(--container-max-width,1140px));
  --gap:var(--widgets-spacing,20px);--row-gap:var(--widgets-spacing-row,20px);--column-gap:var(--widgets-spacing-column,20px);
  --margin-top:0px;--margin-right:0px;--margin-bottom:0px;--margin-left:0px;
  --padding-top:var(--container-default-padding-top,10px);--padding-right:var(--container-default-padding-right,10px);
  --padding-bottom:var(--container-default-padding-bottom,10px);--padding-left:var(--container-default-padding-left,10px);
  --position:relative;--overflow:visible;--border-radius:0px;
  position:var(--position);display:var(--display);flex-direction:var(--flex-direction);flex-wrap:var(--flex-wrap);
  justify-content:var(--justify-content);align-items:var(--align-items);align-content:var(--align-content);
  flex:var(--flex-grow) var(--flex-shrink) var(--flex-basis);gap:var(--row-gap) var(--column-gap);
  width:var(--width);max-width:100%;min-width:0;min-height:var(--min-height);
  margin:var(--margin-top) var(--margin-right) var(--margin-bottom) var(--margin-left);
  padding:var(--padding-top) var(--padding-right) var(--padding-bottom) var(--padding-left);
  overflow:var(--overflow);border-radius:var(--border-radius)}
.di-mm-standalone .e-con.e-con-boxed{flex-direction:column;flex-wrap:nowrap;justify-content:normal;align-items:normal;align-content:normal;gap:normal}
.di-mm-standalone .e-con>.e-con-inner{display:var(--display);flex-direction:var(--flex-direction);flex-wrap:var(--flex-wrap);
  justify-content:var(--justify-content);align-items:var(--align-items);align-content:var(--align-content);
  gap:var(--row-gap) var(--column-gap);width:100%;max-width:var(--content-width);height:100%;margin:0 auto;padding:0;min-width:0}
.di-mm-standalone .elementor-widget{position:relative;min-width:0;max-width:100%}
.di-mm-standalone .elementor-heading-title{margin:0;padding:0;line-height:1}
.di-mm-standalone .elementor-icon-list-items{list-style:none;margin:0;padding:0}
.di-mm-standalone .elementor-icon-list-item{display:flex;align-items:center;margin:0;padding:0;position:relative;font-size:inherit}
.di-mm-standalone .elementor-icon-list-item>a{display:flex;align-items:center;width:100%;font-size:inherit;text-decoration:none}
.di-mm-standalone .elementor-icon-list-icon{display:flex;margin-right:.5em}
.di-mm-standalone .elementor-button{display:inline-block;line-height:1;background-color:#69727d;font-size:15px;padding:12px 24px;border-radius:3px;color:#fff;fill:#fff;text-align:center;text-decoration:none;transition:all .3s}
.di-mm-standalone .elementor-button-content-wrapper{display:flex;justify-content:center;align-items:center;gap:.5em}
.di-mm-standalone .elementor-button-icon svg,.di-mm-standalone .e-font-icon-svg{width:1em;height:1em;fill:currentColor}
.di-mm-standalone .elementor-align-center{text-align:center}
.di-mm-standalone .elementor-align-left,.di-mm-standalone .elementor-align-start{text-align:left}
.di-mm-standalone .elementor-align-right,.di-mm-standalone .elementor-align-end{text-align:right}
.di-mm-standalone .elementor-widget-image img,.di-mm-standalone .elementor-widget-image a{display:block;max-width:100%;height:auto}
@media(max-width:1024px){
  .di-mm-standalone .e-con.e-con-full,.di-mm-standalone .e-con>.e-con-inner{flex-wrap:wrap}
  .di-mm-standalone .e-con.e-child{--width:100%}
}


/* v3.5.3: ElementsKit nav + off-canvas base CSS for when Elementor/ElementsKit are deactivated.
   Applied only under body.di-no-ekit, so it never competes with ElementsKit's own CSS. */
.di-no-ekit .ekit-wid-con{position:relative}
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav{display:flex;flex-wrap:nowrap;align-items:center;list-style:none;margin:0;padding:0}
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav.elementskit-menu-po-center{justify-content:center}
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav.elementskit-menu-po-right{justify-content:flex-end}
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li{position:relative;list-style:none;margin:0}
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li::marker{content:''}
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li>a{display:flex;align-items:center;gap:6px;text-decoration:none;color:inherit;white-space:nowrap}
.di-no-ekit :where(.ekit-wid-con .elementskit-navbar-nav>li>a){padding:0 14px}
.di-no-ekit .ekit-wid-con .elementskit-megamenu-panel,
.di-no-ekit .ekit-wid-con .elementskit-dropdown{display:none;position:absolute;left:0;top:100%;z-index:99999;box-sizing:border-box;background:#fff;box-shadow:0 14px 32px rgba(0,0,0,.14)}
.di-no-ekit .ekit-wid-con .elementskit-dropdown{min-width:220px;list-style:none;margin:0;padding:8px 0}
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li.di-mm-open>.elementskit-megamenu-panel,
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li.di-mm-open>.elementskit-dropdown,
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li.dropdown-open>.elementskit-megamenu-panel,
.di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li.dropdown-open>.elementskit-dropdown{display:block}
.di-no-ekit .ekit-wid-con .elementskit-menu-hamburger{display:none;background:none;border:0;padding:8px;cursor:pointer;color:inherit}
.di-no-ekit .ekit-wid-con .elementskit-menu-hamburger-icon{display:block;width:24px;height:2px;background:currentColor;margin:5px 0}
.di-no-ekit .ekit-wid-con .elementskit-menu-close{display:none}
.di-no-ekit .ekit-wid-con .elementskit-menu-overlay{display:none}

/* vertical menu inside the off-canvas popup */
.di-no-ekit .ekit-sidebar-group .elementskit-navbar-nav{display:block;list-style:none;margin:0;padding:0}
.di-no-ekit .ekit-sidebar-group .elementskit-navbar-nav>li>a{display:flex;justify-content:space-between;padding:10px 0}
.di-no-ekit .ekit-sidebar-group .elementskit-navbar-nav .elementskit-dropdown,
.di-no-ekit .ekit-sidebar-group .elementskit-navbar-nav .elementskit-megamenu-panel{position:static;box-shadow:none;width:auto!important}

/* ElementsKit "Off Canvas" popup: hidden until the toggle adds .ekit_isActive */
.di-no-ekit .ekit-sidebar-group{position:fixed;top:0;left:0;right:0;bottom:0;z-index:100001;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .3s,visibility .3s}
.di-no-ekit .ekit-sidebar-group.ekit_isActive{visibility:visible;opacity:1;pointer-events:auto}
.di-no-ekit .ekit-sidebar-group .ekit-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6)}
.di-no-ekit .ekit-sidebar-group .ekit-sidebar-widget{position:absolute;top:0;right:0;width:min(92vw,420px);height:100%;background:#fff;overflow-y:auto;transform:translateX(100%);transition:transform .35s ease;padding:30px 24px;box-sizing:border-box;z-index:1}
.di-no-ekit .ekit-sidebar-group.ekit_isActive .ekit-sidebar-widget{transform:none}
.di-no-ekit .ekit-sidebar-group .ekit_close-side-widget{position:absolute;top:12px;right:16px;cursor:pointer;z-index:2;font-size:22px;line-height:1}

@media(max-width:1024px){
  .di-no-ekit .ekit-wid-con .elementskit-menu-hamburger{display:inline-block}
  .di-no-ekit .ekit-wid-con .elementskit-menu-container{position:fixed;top:0;right:0;height:100vh;width:min(88vw,380px);background:#fff;color:#111;z-index:100000;overflow-y:auto;transform:translateX(100%);transition:transform .3s ease;padding:56px 0 24px;box-sizing:border-box}
  .di-no-ekit .ekit-wid-con .elementskit-menu-container.active{transform:none}
  .di-no-ekit .ekit-wid-con .elementskit-navbar-nav{flex-direction:column;align-items:stretch}
  .di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li>a{padding:14px 20px;justify-content:space-between}
  .di-no-ekit .ekit-wid-con .elementskit-megamenu-panel,
  .di-no-ekit .ekit-wid-con .elementskit-dropdown{position:static;width:auto!important;box-shadow:none}
  .di-no-ekit .ekit-wid-con .elementskit-menu-close{display:block;position:absolute;top:10px;right:12px;background:none;border:0;font-size:20px;cursor:pointer}
  .di-no-ekit .ekit-wid-con .elementskit-menu-overlay.active{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:99999}
}


/* v3.5.7: ElementsKit's default menu bar height is 80px and items are centred in it
   (mega panels are positioned relative to that). Desktop only. */
@media(min-width:1025px){
  .di-no-ekit .ekit-wid-con{display:flex;align-items:center}
  .di-no-ekit :where(.ekit-wid-con .elementskit-menu-container){height:80px}
  .di-no-ekit .ekit-wid-con .elementskit-menu-container{display:flex;align-items:stretch}
  .di-no-ekit .ekit-wid-con .elementskit-navbar-nav{height:100%;align-items:stretch}
  .di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li{display:flex;align-items:stretch}
  .di-no-ekit .ekit-wid-con .elementskit-navbar-nav>li>a{align-items:center}
}
