.elementor-4298 .elementor-element.elementor-element-f56421f{border-style:solid;border-width:0px 0px 1px 0px;border-color:#00000020;margin-top:0px;margin-bottom:0px;z-index:99;}.elementor-4298 .elementor-element.elementor-element-922b648 > .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-4298 .elementor-element.elementor-element-c9e17fa{text-align:start;}.elementor-4298 .elementor-element.elementor-element-c9e17fa 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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-menu-toggle{margin-left:auto;background-color:#1A516F1F;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu .elementor-item{font-family:"metanow", Sans-serif;font-size:15px;font-weight:500;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-item{color:#000000;fill:#000000;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-item:focus{color:#303030;fill:#303030;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#303030;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a, .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-menu-toggle{color:#0F172A;fill:#0F172A;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a:hover,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a:focus,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-menu-toggle:hover,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-menu-toggle:focus{color:#0A56A0;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a:hover,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a:focus,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a.highlighted{background-color:#0A56A017;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a.elementor-item-active{color:#0A56A0;background-color:#0A56A017;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown .elementor-item, .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"metanow", Sans-serif;font-size:16px;font-weight:500;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown a{padding-left:20px;padding-right:20px;padding-top:15px;padding-bottom:15px;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--dropdown li:not(:last-child){border-style:solid;border-color:#E7EDF4;border-bottom-width:1px;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:30px !important;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 div.elementor-menu-toggle{color:var( --e-global-color-5bb45bf );}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 div.elementor-menu-toggle svg{fill:var( --e-global-color-5bb45bf );}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 div.elementor-menu-toggle:hover, .elementor-4298 .elementor-element.elementor-element-5ac8ef2 div.elementor-menu-toggle:focus{color:var( --e-global-color-5bb45bf );}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 div.elementor-menu-toggle:hover svg, .elementor-4298 .elementor-element.elementor-element-5ac8ef2 div.elementor-menu-toggle:focus svg{fill:var( --e-global-color-5bb45bf );}.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-menu-toggle:hover, .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-menu-toggle:focus{background-color:#1A516F1F;}.elementor-4298 .elementor-element.elementor-element-5ac8ef2{--nav-menu-icon-size:26px;}.elementor-4298 .elementor-element.elementor-element-080ed44.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-4298 .elementor-element.elementor-element-4805cce .elementor-button{background-color:transparent;font-family:"metanow", Sans-serif;font-size:15px;font-weight:600;fill:var( --e-global-color-4efdab3 );color:var( --e-global-color-4efdab3 );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-4298 .elementor-element.elementor-element-4805cce .elementor-button:hover, .elementor-4298 .elementor-element.elementor-element-4805cce .elementor-button:focus{background-color:var( --e-global-color-4efdab3 );color:#FFFFFF;}.elementor-4298 .elementor-element.elementor-element-4805cce{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4298 .elementor-element.elementor-element-4805cce .elementor-button:hover svg, .elementor-4298 .elementor-element.elementor-element-4805cce .elementor-button:focus svg{fill:#FFFFFF;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:481px){.elementor-4298 .elementor-element.elementor-element-a1590f3{width:20%;}.elementor-4298 .elementor-element.elementor-element-0e57076{width:59.332%;}.elementor-4298 .elementor-element.elementor-element-080ed44{width:20%;}}@media(max-width:1200px) and (min-width:481px){.elementor-4298 .elementor-element.elementor-element-a1590f3{width:40%;}.elementor-4298 .elementor-element.elementor-element-0e57076{width:7%;}.elementor-4298 .elementor-element.elementor-element-080ed44{width:53%;}}@media(max-width:1023px) and (min-width:481px){.elementor-4298 .elementor-element.elementor-element-0e57076{width:10%;}.elementor-4298 .elementor-element.elementor-element-080ed44{width:50%;}}@media(max-width:767px) and (min-width:481px){.elementor-4298 .elementor-element.elementor-element-a1590f3{width:40%;}.elementor-4298 .elementor-element.elementor-element-0e57076{width:15%;}.elementor-4298 .elementor-element.elementor-element-080ed44{width:45%;}}@media(max-width:1366px){.elementor-4298 .elementor-element.elementor-element-f56421f{padding:0px 0px 0px 0px;}}@media(max-width:1023px){.elementor-4298 .elementor-element.elementor-element-4805cce .elementor-button{font-size:16px;padding:15px 15px 15px 15px;}}@media(max-width:767px){.elementor-4298 .elementor-element.elementor-element-c9e17fa img{height:34px;}.elementor-4298 .elementor-element.elementor-element-4805cce{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}@media(max-width:480px){.elementor-4298 .elementor-element.elementor-element-a1590f3{width:75%;}.elementor-4298 .elementor-element.elementor-element-c9e17fa img{height:30px;}.elementor-4298 .elementor-element.elementor-element-0e57076{width:25%;}.elementor-4298 .elementor-element.elementor-element-4805cce{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;}.elementor-4298 .elementor-element.elementor-element-4805cce .elementor-button{font-size:14px;}}/* Start custom CSS for nav-menu, class: .elementor-element-5ac8ef2 *//* === 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-4298 .elementor-element.elementor-element-5ac8ef2{ position:relative; }
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main{ position:relative; z-index:2; }

/* ---------- top level ---------- */
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .sub-arrow svg{
  transition:transform .28s cubic-bezier(.22,1,.36,1);
}
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main > .elementor-nav-menu > li:hover > .elementor-item .sub-arrow svg,
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-item .mnx-desc{ display:none !important; }

/* ---------- sliding pill ---------- */
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-pill.is-on{ opacity:1; }
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-pill.mnx-instant{ transition:opacity .18s linear; }

/* ---------- shared morphing sheet behind every dropdown ---------- */
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-sheet.is-mega{ border-radius:18px; }
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-sheet.mnx-instant{ transition:none; }

/* ---------- the real first-level dropdown rides on top, transparent ---------- */
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-nav-menu--dropdown,
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-sub-item:hover,
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-sub-item:focus,
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .mnx-txt{ display:block; min-width:0; }
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .mnx-ico svg{ width:19px; height:19px; display:block; }
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main > .elementor-nav-menu > li > .mnx-is-mega.mnx-in{
  display:grid !important;
}
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main > .elementor-nav-menu > li.mnx-cols-2 > .mnx-is-mega{ --mnx-cols:2; }
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main > .elementor-nav-menu > li.mnx-cols-3 > .mnx-is-mega{ --mnx-cols:3; }
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main > .elementor-nav-menu > li > .mnx-is-mega.mnx-has-groups.mnx-in{
  display:flex !important;
}
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .mnx-is-mega.mnx-has-groups > li > .elementor-sub-item:hover{
  background-color:transparent !important; color:#000000 !important;
}
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .mnx-is-mega.mnx-has-groups > li > .elementor-sub-item .mnx-ico,
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot > .mnx-desc{
  margin-top:0;
  flex:1 1 220px;
  min-width:0;
}
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot > .elementor-sub-item:hover{
  background-color:transparent !important;
  color:#07437D !important;
}
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-nav-menu--dropdown > li.mnx-foot .mnx-ico{
  display:none !important;
}
.elementor-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 .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-4298 .elementor-element.elementor-element-5ac8ef2 nav.elementor-nav-menu--dropdown .mnx-desc{ display:none !important; }
@media (max-width:1024px){
  .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-pill, .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-sheet{ display:none !important; }
}

@media (prefers-reduced-motion:reduce){
  .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-pill, .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-sheet,
  .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown{
    transition-duration:1ms !important;
  }
}

/* ---------- breakpoint alignment fix ----------
   The burger takes over at Elementor's tablet breakpoint, which is max-width:1023px
   on this site. The rule above hides the pill and sheet up to 1024px, so at exactly
   1024px the desktop menu was shown while its white sheet stayed hidden, leaving
   dropdown items on a transparent panel. Restore both from 1024px up. */
@media (min-width:1024px){
  .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-pill, .elementor-4298 .elementor-element.elementor-element-5ac8ef2 .mnx-sheet{ display:block !important; }
}/* End custom CSS */
/* Start custom CSS *//* ==========================================================================
   White header (4298, single product pages) — responsive pass
   Mirrors the Web Header (3960). Burger takes over at <=1200px.

   Element ids in THIS template (the previous version of this block pointed at
   ids from the header it was duplicated from, so none of it applied):
     5ac8ef2  nav-menu widget      a1590f3  logo column
     4805cce  Contattaci button    0e57076  menu column
     922b648  inner section        080ed44  CTA column
   ========================================================================== */

/* 1 - Pill and morphing sheet are desktop-bar furniture; the widget CSS
   switches them at 1024px, the burger boundary is now 1200px. */
@media (max-width: 1200px) {
  .elementor-element-5ac8ef2 .mnx-pill,
  .elementor-element-5ac8ef2 .mnx-sheet { display: none !important; }
}
@media (min-width: 1201px) {
  .elementor-element-5ac8ef2 .mnx-pill,
  .elementor-element-5ac8ef2 .mnx-sheet { display: block !important; }
}

/* 2 - Laptop band (1201-1366): keep the six-item top level on one line. */
@media (min-width: 1201px) and (max-width: 1366px) {
  .elementor-element-5ac8ef2 .elementor-nav-menu--main .elementor-nav-menu > li > a.elementor-item {
    font-size: 14px;
    padding-left: 11px;
    padding-right: 11px;
  }
}

/* 3 - Bar order in burger mode: logo, CTA, burger. The burger is the primary
   navigation control and belongs at the right thumb edge, not sandwiched
   between the logo and the button. */
@media (max-width: 1200px) {
  .elementor-element-a1590f3 { order: 1; }
  .elementor-element-080ed44 { order: 2; }
  .elementor-element-0e57076 { order: 3; }
}

/* 4 - Cap the open panel to the visible viewport so the last items are
   reachable on a phone. */
@media (max-width: 1200px) {
  .elementor-element-5ac8ef2 .elementor-nav-menu--toggle { --menu-height: calc(100vh - 110px); }
}
@supports (height: 100dvh) {
  @media (max-width: 1200px) {
    .elementor-element-5ac8ef2 .elementor-nav-menu--toggle { --menu-height: calc(100dvh - 110px); }
  }
}

/* 5 - Burger panel: readable type and 48px rows at every level. */
@media (max-width: 1200px) {
  .elementor-element-5ac8ef2 nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    border-radius: 0 0 18px 18px;
    box-shadow: 0 18px 44px -14px rgba(15, 23, 42, .35);
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
  }
  .elementor-element-5ac8ef2 nav.elementor-nav-menu--dropdown .elementor-sub-item { font-size: 15px; }
  .elementor-element-5ac8ef2 nav.elementor-nav-menu--dropdown a { min-height: 48px; }
  .elementor-element-5ac8ef2 nav.elementor-nav-menu--dropdown .sub-arrow {
    margin: -15px 0 -15px auto;
    padding: 15px 2px 15px 18px;
  }
  .elementor-element-5ac8ef2 nav.elementor-nav-menu--dropdown ul ul a { font-size: 14px; }
}

/* 6 - Toggle: 48px tap target around the 26px icon. */
@media (max-width: 1200px) {
  .elementor-element-5ac8ef2 .elementor-menu-toggle {
    width: 48px;
    height: 48px;
    padding: 0;
    border-radius: 10px;
  }
}

/* 7 - The sliding pill is a white tint inherited from the dark header, which is
   invisible on this light bar. Give it a dark tint instead. */
.elementor-element-5ac8ef2 .mnx-pill { background: rgba(15, 23, 42, .07); }

/* 8 - Keep the bar on one line on a narrow phone. */
@media (max-width: 767px) {
  .elementor-element-4805cce .elementor-button { white-space: nowrap; }
  .elementor-element-922b648 > .elementor-container { flex-wrap: nowrap; }
}

/* 9 - Park the burger at the right edge of the bar, independent of how the
   Toggle Align control is implemented. */
@media (max-width: 1200px) {
  .elementor-element-5ac8ef2 .elementor-menu-toggle { align-self: flex-end; }
}/* End custom CSS */