.elementor-28 .elementor-element.elementor-element-6426d4fa{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;box-shadow:0px 10px 25px 0px rgba(0, 0, 0, 0.1);--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:2%;--padding-bottom:02%;--padding-left:0%;--padding-right:0%;}.elementor-28 .elementor-element.elementor-element-6426d4fa:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-6426d4fa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000D4;}.elementor-28 .elementor-element.elementor-element-6eb17ba5{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:030px;--padding-right:0px;}@media(min-width:768px){.elementor-28 .elementor-element.elementor-element-6eb17ba5{--content-width:1140px;}}/* Start custom CSS for html, class: .elementor-element-34dc04b *//* ============ MEGA MENU (clean + resilient) ============ */
.dl-mega {
  --bg:transparent; --fg:#f5f5f5; --muted:#bdbdbd;
  --gap:48px; --subgap:28px;
  --fs-main:clamp(24px,2.6vw,36px);
  --fs-sub:clamp(16px,1.6vw,22px);
  background:var(--bg);
  padding:56px 24px;
  text-align:center !important;
}
.dl-mega * { box-sizing:border-box }

.dl-mega .dl-list{
  list-style:none; margin:0; padding:0;
  display:grid; row-gap:var(--gap);
  justify-items:center;
}
.dl-mega .dl-item{
  display:grid; justify-items:center; width:100%;
}

/* ===== Links & Toggles ===== */
.dl-mega .dl-item > a,
.dl-mega .dl-toggle{
  position:relative;
  display:inline-flex; align-items:center; justify-content:center;
  gap:.42em;
  color:var(--fg);
  font-weight:800;
  font-size:var(--fs-main);
  line-height:1.1;
  text-decoration:none;
}

/* underline (center-grow) */
.dl-mega .dl-item > a::before,
.dl-mega .dl-toggle::before{
  content:"";
  position:absolute; left:50%; bottom:-6px;
  width:100%; max-width:8ch; height:2px;
  background: currentColor;
  transform: translateX(-50%) scaleX(0);
  transform-origin:50% 50%;
  transition: transform .22s ease;
  opacity:.95; pointer-events:none;
}
.dl-mega .dl-item > a:hover::before,
.dl-mega .dl-item.has-sub .dl-toggle:hover::before,
.dl-mega .dl-item.has-sub[aria-expanded="true"] .dl-toggle::before{
  transform: translateX(-50%) scaleX(1);
}

/* chevron */
.dl-mega .dl-item.has-sub .dl-toggle::after{
  content:""; position:relative; top:.06em;
  width:.42em; height:.42em;
  border-right:2px solid currentColor; border-bottom:2px solid currentColor;
  transform: rotate(45deg);
  margin-left:.32em;
  opacity:.9; transition: transform .18s ease;
}
.dl-mega .dl-item.has-sub[aria-expanded="true"] .dl-toggle::after{
  transform: rotate(-135deg);
}

/* ===== Group & Submenu ===== */
.dl-mega .dl-item.has-sub{ row-gap:12px }

/* collapsed state */
.dl-mega .dl-sub{
  display:flex; gap:var(--subgap);
  justify-content:center; align-items:center;
  max-height:0; opacity:0;
  overflow:hidden;                /* hides while collapsed */
  transform: translateY(-6px);
  transition: max-height .24s ease, opacity .18s ease, transform .18s ease;
}
/* support [hidden] markup */
.dl-mega .dl-sub[hidden]{ display:flex !important }

/* expanded state */
.dl-mega .dl-item.has-sub[aria-expanded="true"] .dl-sub{
  max-height:240px;
  opacity:1; transform:translateY(0);
  overflow:visible;               /* IMPORTANT: allow sub underline to show */
}

/* ===== Submenu links (with same underline) ===== */
.dl-mega .dl-sub a{
  position:relative;
  display:inline-block;
  font-weight:500;
  font-size:var(--fs-sub);
  color:var(--fg) !important;
  text-decoration:none;
  opacity:.9;
}
.dl-mega .dl-sub a:hover{ opacity:1 }

.dl-mega .dl-sub a::before{
  content:"";
  position:absolute; left:50%; bottom:-4px;
  width:100%; max-width:6ch; height:2px;
  background: currentColor;
  transform: translateX(-50%) scaleX(0);
  transform-origin:50% 50%;
  transition: transform .22s ease;
  opacity:.9; pointer-events:none;
}
.dl-mega .dl-sub a:hover::before{
  transform: translateX(-50%) scaleX(1);
}

/* panel padding polish in ElementsKit */
.ekit-megamenu-panel .dl-mega{ padding:72px 24px }

/* ensure panel can anchor the close btn */
.elementskit-megamenu-panel { position: relative; }

/* Close button */
.dl-close {
  position: absolute;
  top: 14px;
  right: 18px;
  background: transparent !important; /* no fill */
  border: 2px solid transparent;      /* start with invisible border */
  cursor: pointer;
  color: var(--fg, #fff);
  font-size: 2rem;
  line-height: 1;
  opacity: .85;
  padding: 2px 6px;
  transition: 
    opacity .2s ease, 
    transform .15s ease, 
    border-color .2s ease;
  z-index: 3;
}

.dl-close:hover {
  opacity: 1;
  transform: scale(1.04);
  background: transparent !important; /* kill Elementor hover fill */
  border-color: #fff;                  /* show white border */
}/* End custom CSS */