.elementor-3960 .elementor-element.elementor-element-22cd085{border-style:solid;border-width:0px 0px 1px 0px;border-color:#FFFFFF20;margin-top:0px;margin-bottom:-90px;z-index:99;}.elementor-3960 .elementor-element.elementor-element-bfe6ebf > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3960 .elementor-element.elementor-element-c47ae3b{text-align:start;}.elementor-3960 .elementor-element.elementor-element-c47ae3b img{width:100%;height:40px;object-fit:contain;object-position:center left;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-menu-toggle{margin:0 auto;}.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu .elementor-item{font-family:"metanow", Sans-serif;font-size:15px;font-weight:500;}.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-item:focus{color:#D5D5D5;fill:#D5D5D5;}.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#D5D5D5;}.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:25px !important;}.elementor-3960 .elementor-element.elementor-element-4e06c84.elementor-column > .elementor-widget-wrap{justify-content:flex-end;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3960 .elementor-element.elementor-element-0b8f534 .elementor-button{background-color:transparent;font-family:"metanow", Sans-serif;font-size:15px;font-weight:600;fill:#FFFFFF;color:#FFFFFF;background-image:radial-gradient(at top left, #FFFFFF00 68%, var( --e-global-color-4efdab3 ) 100%);border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-4efdab3 );border-radius:50px 50px 50px 50px;padding:12px 35px 12px 35px;}.elementor-3960 .elementor-element.elementor-element-0b8f534 .elementor-button:hover, .elementor-3960 .elementor-element.elementor-element-0b8f534 .elementor-button:focus{background-color:var( --e-global-color-4efdab3 );}.elementor-3960 .elementor-element.elementor-element-0b8f534{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1023px){.elementor-3960 .elementor-element.elementor-element-0b8f534 .elementor-button{font-size:16px;padding:15px 15px 15px 15px;}}@media(max-width:767px){.elementor-3960 .elementor-element.elementor-element-0b8f534{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}@media(max-width:480px){.elementor-3960 .elementor-element.elementor-element-0b8f534{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;}.elementor-3960 .elementor-element.elementor-element-0b8f534 .elementor-button{font-size:14px;}}@media(min-width:481px){.elementor-3960 .elementor-element.elementor-element-4a2ba3e{width:20%;}.elementor-3960 .elementor-element.elementor-element-d0948ee{width:59.332%;}.elementor-3960 .elementor-element.elementor-element-4e06c84{width:20%;}}/* Start custom CSS for nav-menu, class: .elementor-element-2b70865 *//* === Animated nav: sliding pill + morphing dropdown + megamenu ===
   Pairs with the "Nav — pill + morphing dropdown + megamenu" Custom Code snippet.
   Driven from Appearance → Menus (Screen Options → CSS Classes, Description):
     mnx-mega         on a TOP-LEVEL item → megamenu layout
     mnx-cols-2|3|4   on a TOP-LEVEL item → columns of a flat megamenu (default 2)
     mnx-i-NAME       on ANY item         → icon
     mnx-c-RRGGBB     on ANY item         → that item's accent: icon, hover text,
                                            hover background and icon tint
     mnx-foot         on a CHILD item     → footer row: label is the link, Description the note
     Description on a TOP-LEVEL item      → the panel's heading
     Description on a CHILD item          → sub-label
   Nest items one level deeper and level 2 becomes column headings. */

.elementor-3960 .elementor-element.elementor-element-2b70865{ position:relative; }
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main{ position:relative; z-index:2; }

/* ---------- top level ---------- */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-item{
  position:relative; z-index:1; border-radius:99px;
  transition:color .28s cubic-bezier(.22,1,.36,1);
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .sub-arrow svg{
  transition:transform .28s cubic-bezier(.22,1,.36,1);
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li:hover > .elementor-item .sub-arrow svg,
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-item.highlighted .sub-arrow svg{
  transform:rotate(180deg);
}
/* the script lifts a top-level description into the panel; this covers the moment before */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-item .mnx-desc{ display:none !important; }

/* ---------- sliding pill ---------- */
.elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-pill{
  position:absolute; top:0; left:0; z-index:0;
  width:0; height:0; border-radius:99px;
  background:rgba(255,255,255,.14);
  opacity:0; pointer-events:none;
  transform:translate3d(0,0,0);
  transition:transform .3s cubic-bezier(.22,1,.36,1),
             width .3s cubic-bezier(.22,1,.36,1),
             height .3s cubic-bezier(.22,1,.36,1),
             opacity .18s linear;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-pill.is-on{ opacity:1; }
.elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-pill.mnx-instant{ transition:opacity .18s linear; }

/* ---------- shared morphing sheet behind every dropdown ---------- */
.elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-sheet{
  position:absolute; top:0; left:0; z-index:1;
  width:0; height:0; border-radius:16px;
  background:#ffffff;
  box-shadow:0 0 0 1px rgba(15,23,42,.06), 0 18px 44px -14px rgba(15,23,42,.35);
  opacity:0; visibility:hidden; pointer-events:none;
  transform-origin:top left;
  transform:translate3d(var(--mnx-x,0px), calc(var(--mnx-y,0px) - 6px), 0) scale(.97);
  transition:transform .3s cubic-bezier(.22,1,.36,1),
             width .3s cubic-bezier(.22,1,.36,1),
             height .3s cubic-bezier(.22,1,.36,1),
             opacity .2s ease,
             visibility 0s linear .3s;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-sheet.is-open{
  opacity:1; visibility:visible;
  transform:translate3d(var(--mnx-x,0px), var(--mnx-y,0px), 0) scale(1);
  transition:transform .3s cubic-bezier(.22,1,.36,1),
             width .3s cubic-bezier(.22,1,.36,1),
             height .3s cubic-bezier(.22,1,.36,1),
             opacity .2s ease,
             visibility 0s linear 0s;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-sheet.is-mega{ border-radius:18px; }
.elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-sheet.mnx-instant{ transition:none; }

/* ---------- the real first-level dropdown rides on top, transparent ---------- */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown{
  background-color:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  padding:10px !important;
  min-width:248px;
  opacity:0;
  pointer-events:none;
  transform:translateY(-4px);
  transition:opacity .22s ease, transform .22s cubic-bezier(.22,1,.36,1);
}
/* The panel starts invisible above and only becomes visible once the script has
   marked it open. Without this rule every dropdown renders fully transparent. */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown.mnx-in{
  opacity:1; transform:none; pointer-events:auto;
}
/* A plain (non-mega) dropdown sizes to its own content, so a sub-label sits on one
   line instead of wrapping three deep inside a fixed 248px column — capped so a long
   description can never stretch the panel across the bar. Needs !important because
   SmartMenus caps every dropdown with an inline max-width. Scoped away from the
   megamenu, which has its own width trio further down. */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown:not(.mnx-is-mega){
  width:max-content !important;
  min-width:248px !important;
  max-width:min(88vw, 352px) !important;
}
/* Switching straight from one dropdown to another: SmartMenus keeps the old panel
   displayed for a moment after the sheet has already morphed to the new one, so a
   fade would leave its items hanging over the page with no sheet behind them.
   The script sets this to drop the outgoing contents at once instead. */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown.mnx-snap{
  opacity:0 !important;
  transition:none !important;
}

/* ---------- typeface ----------
   metanow is registered by the Use Any Font plugin as the family "metanow".
   Set on the panel and everything inside it, so the heading, labels, sub-labels,
   footer note and footer link all match the bar rather than the theme default. */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown,
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown *{
  font-family:"metanow", sans-serif !important;
}

/* ---------- sub-items ----------
   --mnx-rgb is written onto the item by the script from its mnx-c-RRGGBB class;
   everything colour-bearing reads it, and falls back to the house blue. */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-sub-item{
  display:flex; align-items:flex-start; gap:12px;
  border-radius:11px;
  padding:9px 12px !important;
  font-size:14px; font-weight:500; line-height:1.35;
  color:#0F172A !important;
  background-color:transparent !important;
  transition:background-color .25s ease, color .25s ease;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-sub-item:hover,
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-sub-item:focus,
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-sub-item.elementor-item-active{
  background-color:rgba(var(--mnx-rgb, 10,86,160), .09) !important;
  color:rgb(var(--mnx-rgb, 10,86,160)) !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-txt{ display:block; min-width:0; }
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-desc{
  display:block; margin-top:2px;
  font-size:12px; font-weight:400; line-height:1.4;
  color:#000000d1;
  white-space:normal;
}

/* ---------- icons ---------- */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-ico{
  flex:0 0 auto; width:36px; height:36px; border-radius:10px;
  display:inline-flex; align-items:center; justify-content:center;
  color:rgb(var(--mnx-rgb, 10,86,160));
  background:rgba(var(--mnx-rgb, 10,86,160), .10);
  box-shadow:inset 0 0 0 1px rgba(var(--mnx-rgb, 10,86,160), .20);
  transition:background-color .25s ease, color .25s ease, box-shadow .25s ease;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-ico svg{ width:19px; height:19px; display:block; }
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-sub-item:hover .mnx-ico{
  background:rgb(var(--mnx-rgb, 10,86,160));
  color:#ffffff;
  box-shadow:inset 0 0 0 1px rgb(var(--mnx-rgb, 10,86,160));
}

/* ---------- megamenu ----------
   Two things fight us here, both because SmartMenus works through inline styles:
   it caps every dropdown with an inline max-width (so the width trio below needs
   !important, or the grid spills out of a narrow box), and it CLOSES a dropdown
   with an inline display:none. An unconditional "display:grid !important" would
   outrank that and pin the panel open forever — so the grid only switches on
   once the script has marked the panel open with .mnx-in. */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .mnx-is-mega{
  grid-template-columns:repeat(var(--mnx-cols,2), minmax(238px,1fr));
  gap:2px 8px;
  width:max-content !important;
  min-width:0 !important;
  max-width:min(92vw, 1060px) !important;
  padding:14px !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .mnx-is-mega.mnx-in{
  display:grid !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li.mnx-cols-2 > .mnx-is-mega{ --mnx-cols:2; }
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li.mnx-cols-3 > .mnx-is-mega{ --mnx-cols:3; }
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li.mnx-cols-4 > .mnx-is-mega{ --mnx-cols:4; }

/* ---------- megamenu: grouped into real columns (three menu levels) ---------- */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .mnx-is-mega.mnx-has-groups{
  align-items:flex-start;
  flex-wrap:wrap;
  gap:24px;
  width:max-content !important;
  min-width:0 !important;
  max-width:min(92vw, 1060px) !important;
  padding:16px 18px !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .mnx-is-mega.mnx-has-groups.mnx-in{
  display:flex !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-is-mega.mnx-has-groups > li{
  flex:0 1 auto; min-width:204px;
}
/* level 2 turns into the column heading */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-is-mega.mnx-has-groups > li > .elementor-sub-item{
  font-size:12px !important; font-weight:600 !important;
  color:#000000 !important;
  background-color:transparent !important;
  padding:6px 12px 10px !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-is-mega.mnx-has-groups > li > .elementor-sub-item:hover{
  background-color:transparent !important; color:#000000 !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-is-mega.mnx-has-groups > li > .elementor-sub-item .mnx-ico,
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-is-mega.mnx-has-groups > li > a .sub-arrow{
  display:none !important;
}
/* level 3 stays visible inside its column. Safe to force here: the script only
   ever inspects first-level panels, so a pinned level 3 cannot wedge it open. */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .mnx-is-mega.mnx-has-groups.mnx-in > li > .sub-menu{
  display:block !important;
  position:static !important;
  top:auto !important; left:auto !important; right:auto !important; bottom:auto !important;
  width:auto !important; min-width:0 !important; max-width:none !important;
  margin:0 !important; padding:0 !important;
  opacity:1 !important; visibility:visible !important; transform:none !important;
  background:transparent !important; box-shadow:none !important; border:0 !important;
  z-index:auto !important;
}

/* ---------- panel heading and footer ----------
   Heading: the top-level item's own Description, lifted out of the bar and into
   the panel by the script. Footer: a child carrying mnx-foot — its label is the
   link, its Description the note beside it. Both span the full panel width.
   These come last so they outrank the column-heading rules above. */
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-head{
  grid-column:1 / -1;
  flex:0 0 100%;
  font-size:12px; font-weight:600;
  letter-spacing:0;
  text-transform:none;
  color:#000000;
  padding:2px 12px 10px;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot{
  grid-column:1 / -1;
  flex:0 0 100%;
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:4px 18px;
  margin-top:8px;
  padding:12px 12px 2px;
  border-top:1px solid #E7EDF4;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot > .mnx-desc{
  margin-top:0;
  flex:1 1 220px;
  min-width:0;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot > .elementor-sub-item{
  flex:0 0 auto;
  gap:6px;
  padding:4px 0 !important;
  font-size:13px !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:rgb(var(--mnx-rgb, 10,86,160)) !important;
  background-color:transparent !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot > .elementor-sub-item:hover{
  background-color:transparent !important;
  color:#07437D !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot .mnx-ico{
  display:none !important;
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot .mnx-txt::after{
  content:"→";
  display:inline-block;
  margin-left:6px;
  transition:transform .25s cubic-bezier(.22,1,.36,1);
}
.elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot > .elementor-sub-item:hover .mnx-txt::after{
  transform:translateX(3px);
}

/* ---------- the burger menu stays exactly as it was ---------- */
.elementor-3960 .elementor-element.elementor-element-2b70865 nav.elementor-nav-menu--dropdown .mnx-desc{ display:none !important; }
@media (max-width:1024px){
  .elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-pill, .elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-sheet{ display:none !important; }
}

@media (prefers-reduced-motion:reduce){
  .elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-pill, .elementor-3960 .elementor-element.elementor-element-2b70865 .mnx-sheet,
  .elementor-3960 .elementor-element.elementor-element-2b70865 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown{
    transition-duration:1ms !important;
  }
}/* End custom CSS */