/* Header v2 mega menus — Lovable menu-3 layout; scoped to .header-v2 only */
.header-v2 .st-mega{
  --st-ink:#111111;
  --st-muted:#5E6268;
  --st-border:#E3E3E3;
  --st-surface:#F5F5F5;
  --st-brand:#D80C18;
  --st-bg:#FFFFFF;
  box-sizing:border-box;
  width:100%;
  font-family:"Blinker",Sans-serif;
  color:var(--st-ink);
}
.header-v2 .st-mega *,
.header-v2 .st-mega *::before,
.header-v2 .st-mega *::after{box-sizing:border-box;}

.header-v2 .st-mega__grid{
  width:min(1400px, calc(100vw - 80px));
  margin:0 auto;
  padding:48px 0 56px;
  display:grid;
  gap:40px 40px;
  align-items:start;
}
.header-v2 .st-mega__grid--services{
  grid-template-columns:repeat(4, minmax(0, 1fr)) 300px;
}
.header-v2 .st-mega__grid--industries,
.header-v2 .st-mega__grid--about{
  grid-template-columns:minmax(0, 1fr) 300px;
}

.header-v2 .st-mega__title{
  margin:0;
  font-family:"Blinker",Sans-serif;
  font-size:17px;
  font-weight:600;
  line-height:1.3;
  color:var(--st-ink);
}
.header-v2 .st-mega__blurb{
  margin:6px 0 0;
  font-size:12px;
  font-weight:400;
  line-height:1.4;
  color:var(--st-muted);
}
.header-v2 .st-mega__rule{
  margin-top:16px;
  height:1px;
  width:100%;
  background:var(--st-border);
}
.header-v2 .st-mega__list{
  list-style:none;
  margin:16px 0 0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.header-v2 .st-mega__list--two{
  display:grid;
  grid-template-columns:1fr 1fr;
  column-gap:16px;
  row-gap:4px;
}
.header-v2 .st-mega__link{
  display:block;
  margin:0 -12px;
  padding:8px 12px;
  border-radius:6px;
  text-decoration:none;
  color:var(--st-ink);
  transition:color .18s ease;
}
.header-v2 .st-mega__link span{
  font-size:15px;
  font-weight:400;
  line-height:1.35;
  color:inherit;
}
.header-v2 .st-mega__link:hover,
.header-v2 .st-mega__link:focus{
  background:transparent;
  color:var(--st-brand);
  outline:none;
}

.header-v2 .st-mega__industries{
  list-style:none;
  margin:16px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:4px 8px;
}
.header-v2 .st-mega__industry{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 -12px;
  padding:10px 12px;
  border-radius:6px;
  text-decoration:none;
  color:var(--st-ink);
  font-size:15px;
  line-height:1.35;
  transition:color .18s ease;
}
.header-v2 .st-mega__industry-icon{
  display:inline-flex;
  width:20px;
  height:20px;
  flex:none;
  color:var(--st-brand);
}
.header-v2 .st-mega__industry-icon svg{
  width:20px;
  height:20px;
  display:block;
}
.header-v2 .st-mega__industry:hover,
.header-v2 .st-mega__industry:focus{
  background:transparent;
  color:var(--st-brand);
  outline:none;
}

.header-v2 .st-mega__about-cols{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px 40px;
}

.header-v2 .st-mega__aside{
  border-top:1px solid var(--st-border);
  padding-top:24px;
}
.header-v2 .st-mega__aside-icon{
  color:var(--st-brand);
  margin:0 0 16px;
}
.header-v2 .st-mega__aside-icon svg{display:block;}
.header-v2 .st-mega__aside-title{
  margin:0;
  font-size:17px;
  font-weight:600;
  line-height:1.3;
  color:var(--st-ink);
}
.header-v2 .st-mega__aside-body{
  margin:8px 0 0;
  font-size:14px;
  font-weight:400;
  line-height:1.5;
  color:var(--st-muted);
}
.header-v2 .st-mega__aside-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:16px;
  font-size:14px;
  font-weight:600;
  line-height:1.2;
  color:var(--st-brand);
  text-decoration:none;
  transition:gap .18s ease;
}
.header-v2 .st-mega__aside-cta:hover,
.header-v2 .st-mega__aside-cta:focus{
  gap:12px;
  outline:none;
}
.header-v2 .st-mega__aside-foot{
  display:block;
  margin-top:32px;
  padding:16px;
  background:var(--st-surface);
  text-decoration:none;
  color:inherit;
  transition:background-color .18s ease;
}
.header-v2 .st-mega__aside-foot:hover,
.header-v2 .st-mega__aside-foot:focus{
  background:#EFEFEF;
  outline:none;
}
.header-v2 .st-mega__aside-foot-title{
  margin:0;
  font-size:14px;
  font-weight:600;
  line-height:1.3;
  color:var(--st-ink);
}
.header-v2 .st-mega__aside-foot-body{
  margin:4px 0 0;
  font-size:12px;
  font-weight:400;
  line-height:1.4;
  color:var(--st-muted);
}

/* Desktop mega panel chrome overrides for v2 only — beat post-35 fixed heights */
@media (min-width:768px){
  .header-v2 #e-n-menu-content-2002.elementor-element-87f11aa,
  .header-v2 #e-n-menu-content-2003.elementor-element-0ceb275,
  .header-v2 #e-n-menu-content-2006.elementor-element-0ea371c{
    --min-height:auto !important;
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
    background-color:#fff !important;
    background-image:none !important;
    border-bottom:1px solid var(--st-border, #E3E3E3);
  }
  .header-v2 #e-n-menu-content-2002.elementor-element-87f11aa > .e-con-inner,
  .header-v2 #e-n-menu-content-2003.elementor-element-0ceb275 > .e-con-inner,
  .header-v2 #e-n-menu-content-2006.elementor-element-0ea371c > .e-con-inner{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 40px !important;
    display:block !important;
    background:#fff !important;
    background-image:none !important;
  }
  .header-v2 .st-mega__aside{
    border-top:0;
    border-left:1px solid var(--st-border);
    padding-top:0;
    padding-left:32px;
  }
}

@media (max-width:1199px){
  .header-v2 .st-mega__grid--services{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .header-v2 .st-mega__aside{
    grid-column:1 / -1;
    border-left:0 !important;
    border-top:1px solid var(--st-border);
    padding-left:0 !important;
    padding-top:24px;
  }
  .header-v2 .st-mega__industries{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:767px){
  .header-v2 .st-mega__grid{
    width:100%;
    padding:24px 0 32px;
    gap:28px;
  }
  .header-v2 .st-mega__grid--services,
  .header-v2 .st-mega__grid--industries,
  .header-v2 .st-mega__grid--about{
    grid-template-columns:1fr;
  }
  .header-v2 .st-mega__about-cols{
    grid-template-columns:1fr;
  }
  .header-v2 .st-mega__list--two{
    grid-template-columns:1fr;
  }
  .header-v2 .st-mega__industries{
    grid-template-columns:1fr;
  }
  .header-v2 #e-n-menu-content-2002 > .e-con-inner,
  .header-v2 #e-n-menu-content-2003 > .e-con-inner,
  .header-v2 #e-n-menu-content-2006 > .e-con-inner{
    padding:0 20px !important;
  }
}
