.elementor-3572 .elementor-element.elementor-element-b4b04c2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-ce9f0aa */:root{
  --ipx-header-h: 80px;
  --ipx-header-gap: 14px;
}

#wpadminbar{ position:fixed !important; }

html, body{ transform:none !important; }

body{ padding-top: calc(var(--ipx-header-h) + (var(--ipx-header-gap) * 2)); }
@media (max-width:900px){
  body{ padding-top: calc(var(--ipx-header-h) + 18px); }
}

body.ipx-lock{
  overflow:hidden !important;
  position:fixed !important;
  width:100% !important;
  left:0;
  right:0;
}

.ipx-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  z-index:2147483646 !important;
  background:transparent !important;
  pointer-events:auto;
  transform:none !important;
  will-change:transform;
}

body.admin-bar .ipx-header{ top:32px !important; }
@media (max-width:782px){
  body.admin-bar .ipx-header{ top:46px !important; }
}

.elementor,
.elementor-section,
.elementor-container,
.e-con,
.e-con-inner{
  transform:none !important;
  filter:none !important;
  perspective:none !important;
  backface-visibility:visible !important;
}

.ipx-header__inner{
  width:min(var(--site-width), calc(100% - (var(--site-padding) * 2)));
  margin: var(--ipx-header-gap) auto 0;
  padding:16px 22px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:18px;
  border:2px solid var(--brand-blue);
  border-radius:22px;
  background: rgba(26,26,26,.5) !important;
  backdrop-filter: blur(14px) saturate(1.2);
  -webkit-backdrop-filter: blur(14px) saturate(1.2);
  box-shadow:0 0 0 rgba(0,191,255,0);
  transition:box-shadow .2s ease;
}

.ipx-header.is-scrolled .ipx-header__inner{
  box-shadow:0 14px 40px rgba(0,0,0,.28);
}

.ipx-brand{
  display:flex;
  align-items:center;
  text-decoration:none;
}

.ipx-brand__logo{
  height:44px !important;
  width:auto !important;
  display:block !important;
}

.ipx-nav{
  display:flex;
  align-items:center;
  gap:34px;
  width:100%;
}

.ipx-nav--desktop{
  justify-self:end;
  justify-content:flex-end;
  padding-right:44px;
}

.ipx-nav__link{
  display:inline-flex;
  align-items:center;
  height:44px;
  line-height:44px;
  padding:0 2px;
  text-decoration:none;
  color:var(--text-light);
  font-weight:700;
  transition:transform .18s ease, color .15s ease;
  transform-origin:center;
  -webkit-tap-highlight-color:transparent;
}

.ipx-nav__link:hover,
.ipx-nav__link:focus-visible{
  color:var(--brand-blue);
  transform:scale(1.04);
  text-shadow:none !important;
}

.ipx-burger{
  display:none;
  width:46px;
  height:46px;
  border-radius:14px;
  border:1px solid rgba(0,191,255,.75) !important;
  background:rgba(0,191,255,.12) !important;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:6px;
  cursor:pointer;
  outline:none !important;
  box-shadow:none !important;
  -webkit-tap-highlight-color:transparent;
}

.ipx-burger span{
  width:22px;
  height:2px;
  background:rgba(255,255,255,.95);
  border-radius:2px;
  display:block;
  transition:transform .2s ease, opacity .2s ease;
  transform-origin:center;
}

.ipx-burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(8px) rotate(45deg); }
.ipx-burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.ipx-burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-8px) rotate(-45deg); }

.ipx-overlay{
  position:fixed;
  inset:0;
  background:#000;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:2147483645;
  transition:opacity .2s ease, visibility .2s ease;
}

.ipx-overlay.is-open{
  opacity:.92;
  visibility:visible;
  pointer-events:auto;
}

.ipx-mobile{ z-index:2147483646; }
.ipx-mobile[hidden]{ display:none !important; }

@media (max-width:900px){
  .ipx-nav--desktop{ display:none; }
  .ipx-burger{ display:flex; justify-self:end; }

  .ipx-header__inner{
    margin-top:10px;
    padding:12px 14px;
    gap:12px;
    border-radius:16px;
    border:1px solid var(--brand-blue);
    background: rgba(26,26,26,.5) !important;
    backdrop-filter: blur(14px) saturate(1.2);
    -webkit-backdrop-filter: blur(14px) saturate(1.2);
  }

  .ipx-brand__logo{ height:38px !important; }

  #ipxMobileMenu.ipx-mobile{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    top: calc(var(--ipx-header-h) + 18px) !important;
    bottom:0 !important;
    z-index:2147483646 !important;
    background:transparent !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    padding:14px 16px 22px !important;
  }

  #ipxMobileMenu .ipx-mobile__top{
    width:0 !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
  }

  #ipxMobileMenu #ipxClose.ipx-close{
    position:fixed !important;
    top: calc(24px + env(safe-area-inset-top)) !important;
    right: calc(var(--site-padding) + 14px) !important;
    z-index:2147483647 !important;
    width:46px !important;
    height:46px !important;
    border-radius:14px !important;
    border:1px solid rgba(0,191,255,.75) !important;
    background:rgba(0,191,255,.12) !important;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    outline:none !important;
    box-shadow:none !important;
    -webkit-tap-highlight-color:transparent;
  }

  .ipx-close span{
    position:absolute;
    top:50%;
    left:50%;
    width:20px;
    height:2px;
    background:#fff;
    border-radius:2px;
    display:block;
    transform-origin:center;
  }

  .ipx-close span:nth-child(1){
    transform:translate(-50%, -50%) rotate(45deg);
  }

  .ipx-close span:nth-child(2){
    transform:translate(-50%, -50%) rotate(-45deg);
  }

  #ipxMobileMenu .ipx-nav--mobile{
    width:min(560px, 94vw) !important;
    max-height:calc(100vh - (var(--ipx-header-h) + 120px)) !important;
    overflow:auto !important;
    -webkit-overflow-scrolling:touch;
    margin:0 !important;
    padding:20px 16px !important;
    border-radius:18px !important;
    background:rgba(11,11,11,.92) !important;
    border:1px solid rgba(0,191,255,.28) !important;
    box-shadow:0 18px 60px rgba(0,0,0,.55) !important;
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
    align-items:center !important;
    position:relative !important;
    z-index:2147483646 !important;
  }

  .ipx-nav__m{
    width:100% !important;
    padding:16px 16px !important;
    border-radius:16px !important;
    border:1px solid rgba(0,191,255,.75) !important;
    background:rgba(0,191,255,.12) !important;
    color:#fff !important;
    font-weight:800;
    text-decoration:none;
    display:flex;
    align-items:center;
    justify-content:center;
    outline:none !important;
    box-shadow:none !important;
    -webkit-tap-highlight-color:transparent;
    font-size:18px !important;
    transition:transform .15s ease;
  }

  .ipx-nav__m:hover,
  .ipx-nav__m:focus-visible{
    transform:scale(1.02);
  }

  #ipxMobileMenu:not([hidden]) .ipx-nav--mobile{
    animation:ipxPop .16s ease-out both;
  }

  @keyframes ipxPop{
    from{ transform:translateY(10px) scale(.98); opacity:0; }
    to{ transform:translateY(0) scale(1); opacity:1; }
  }
}

body.ipx-menu-open #ipxBurger{
  opacity:0 !important;
  pointer-events:none !important;
}

#ipxMobileMenu{ display:none !important; }
#ipxMobileMenu[hidden]{ display:none !important; }
#ipxMobileMenu:not([hidden]){ display:flex !important; }/* End custom CSS */