/*
Theme Name: Media Insite Enterprise WPBakery
Theme URI: https://media-insite.com/
Author: Media Insite
Description: Enterprise Media Insite theme matching the approved Phase 1 prototype. Designed for visual editing with WPBakery Page Builder.
Version: 3.5.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: media-insite-enterprise
*/

/* WordPress compatibility helpers */
html{scroll-behavior:smooth} body.admin-bar .header{top:32px}.mi-page-content{min-height:55vh}.mi-prototype-row,.mi-prototype-row>.wpb_column,.mi-prototype-row .vc_column-inner,.mi-prototype-row .wpb_wrapper{margin:0!important;padding:0!important}.mi-builder-section{margin:0}.custom-logo-link{display:flex;align-items:center}.custom-logo{width:220px;height:auto;display:block}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.current-menu-item>a,.current_page_item>a{color:#fff}.wp-caption,.wp-caption-text,.gallery-caption{max-width:100%}.alignleft{float:left;margin-right:1rem}.alignright{float:right;margin-left:1rem}.aligncenter{display:block;margin-left:auto;margin-right:auto}@media(max-width:782px){body.admin-bar .header{top:46px}}

/* v3 native white navigation */
.header{background:#fff!important;border-bottom:1px solid rgba(15,23,42,.1);box-shadow:0 8px 28px rgba(15,23,42,.08)}
.header .nav-menu>li>a,.header .nav>a{color:#172033!important}
.header .nav-menu>li>a:hover,.header .nav>a:hover,.header .current-menu-item>a,.header .current_page_item>a{color:var(--mi-primary,#2563eb)!important}
.header .dropdown-menu{background:#fff!important;border:1px solid rgba(15,23,42,.1);box-shadow:0 18px 40px rgba(15,23,42,.14)}
.header .dropdown-menu a{color:#172033!important}
.header .dropdown-menu a:hover{color:var(--mi-primary,#2563eb)!important;background:#f7faff}
.header .menu-btn{color:#172033!important}

/* v3.1: white enterprise navigation bar */
.header,.site-header{background:#fff;color:#172033;}
.header .nav-menu>li>a,.header .nav>a{color:#172033;}

/* v3.5 WordPress navigation layout fix */
.header{
  display:flex;
  align-items:center;
  width:100%;
  min-height:94px;
  padding:0 3vw;
  background:#fff!important;
}
.header .brand{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  min-width:190px;
}
.header .brand a,
.header .custom-logo-link{display:flex;align-items:center}
.header .brand img,
.header .custom-logo{display:block;width:205px;max-width:100%;height:auto;max-height:68px;object-fit:contain}
.header .nav{
  flex:1 1 auto;
  min-width:0;
  margin-left:32px;
  display:block;
  font-size:15px;
  font-weight:800;
}
.header .nav-menu{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:22px;
  width:100%;
  margin:0;
  padding:0;
}
.header .nav-menu>li{
  position:relative;
  flex:0 0 auto;
  margin:0;
  padding:0;
  list-style:none;
}
.header .nav-menu>li>a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:54px;
  padding:12px 0;
  color:#172033!important;
  white-space:nowrap;
  line-height:1.2;
}
.header .nav-menu>li>a:not(.nav-cta)::after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:7px;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,var(--mi-primary,#2563eb),var(--mi-secondary,#16b8d4));
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .2s ease;
}
.header .nav-menu>li:hover>a:not(.nav-cta)::after,
.header .nav-menu>.current-menu-item>a:not(.nav-cta)::after,
.header .nav-menu>.current-menu-ancestor>a:not(.nav-cta)::after{transform:scaleX(1)}
.header .nav-menu .nav-cta{
  min-height:auto;
  padding:13px 20px!important;
  border-radius:999px;
  background:linear-gradient(135deg,var(--mi-primary,#2563eb),#1d4ed8);
  color:#fff!important;
  box-shadow:0 10px 24px rgba(37,99,235,.24);
}
.header .nav-menu .sub-menu,
.header .nav-menu .dropdown-menu{
  position:absolute;
  z-index:1000;
  top:calc(100% - 2px);
  left:-22px;
  display:block;
  min-width:270px;
  max-height:70vh;
  overflow:auto;
  margin:0;
  padding:12px;
  list-style:none;
  visibility:hidden;
  opacity:0;
  transform:translateY(10px);
  pointer-events:none;
  background:#fff;
  border:1px solid rgba(15,23,42,.1);
  border-radius:16px;
  box-shadow:0 22px 55px rgba(15,23,42,.16);
  transition:opacity .18s ease,transform .18s ease,visibility .18s;
}
.header .nav-menu li:hover>.sub-menu,
.header .nav-menu li:hover>.dropdown-menu,
.header .nav-menu li:focus-within>.sub-menu,
.header .nav-menu li:focus-within>.dropdown-menu{
  visibility:visible;
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}
.header .nav-menu .sub-menu li,
.header .nav-menu .dropdown-menu li{display:block;margin:0;padding:0;list-style:none}
.header .nav-menu .sub-menu a,
.header .nav-menu .dropdown-menu a{
  display:block;
  padding:11px 13px;
  border-radius:10px;
  color:#172033!important;
  font-size:14px;
  line-height:1.35;
  white-space:nowrap;
}
.header .nav-menu .sub-menu a:hover,
.header .nav-menu .dropdown-menu a:hover{background:#f4f7ff;color:var(--mi-primary,#2563eb)!important}
.header .menu-btn{display:none;margin-left:auto}

@media(max-width:1280px){
  .header{padding-left:2vw;padding-right:2vw}
  .header .brand{min-width:170px}
  .header .brand img,.header .custom-logo{width:180px}
  .header .nav{margin-left:20px;font-size:13px}
  .header .nav-menu{gap:15px}
  .header .nav-menu .nav-cta{padding:11px 15px!important}
}
@media(max-width:1080px){
  .header{min-height:84px}
  .header .brand img,.header .custom-logo{width:190px}
  .header .menu-btn{display:block;cursor:pointer}
  .header .nav{
    position:absolute;
    top:100%;
    left:0;
    right:0;
    display:none;
    width:100%;
    max-height:calc(100vh - 84px);
    overflow:auto;
    margin:0;
    padding:18px 22px 24px;
    background:#fff;
    border-top:1px solid rgba(15,23,42,.08);
    box-shadow:0 22px 45px rgba(15,23,42,.14);
  }
  .header .nav.open{display:block}
  .header .nav-menu{display:block;width:100%}
  .header .nav-menu>li{display:block;width:100%;border-bottom:1px solid #eef1f6}
  .header .nav-menu>li>a{justify-content:space-between;min-height:0;padding:15px 4px;font-size:16px}
  .header .nav-menu>li>a::after{display:none!important}
  .header .nav-menu .nav-cta{display:inline-flex;width:auto;margin:15px 0 4px;padding:13px 20px!important}
  .header .nav-menu .sub-menu,
  .header .nav-menu .dropdown-menu{
    position:static;
    display:block;
    min-width:0;
    max-height:none;
    overflow:visible;
    margin:0 0 10px;
    padding:0 0 0 14px;
    visibility:visible;
    opacity:1;
    transform:none;
    pointer-events:auto;
    border:0;
    border-left:2px solid #e5eaf5;
    border-radius:0;
    box-shadow:none;
  }
  .header .nav-menu .sub-menu a,
  .header .nav-menu .dropdown-menu a{padding:10px 12px;font-size:14px;white-space:normal}
}
