/**
Mixins file taken from we_megamenu module.

Only few basic mixins taken to keep the primary functionality allowing user setting columns width for blocks in submenu.
 */
/**
Menu general layout styling.

Here are styles responsible mainly for setting some basic layout for mobile and desktop menu design.
 */
li.we-mega-menu-li {
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -ms-flex-direction: column;
  flex-direction: column;
  font-family: var(--pf);
}

@media (max-width: 991.98px) {
  li.we-mega-menu-li {
    width: 100%;
  }
}

li.we-mega-menu-li.mega, .block-we-megamenu {
  position: static;
}

.we-mega-menu-li {
  margin: 0;
  float: none;
  top: unset;
  left: unset;
  min-width: unset;
  font-size: unset;
  border: none;
}

.we-mega-menu-li.with-submenu {
  top: initial;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*-webkit-box-orient: vertical;
  -webkit-box-direction: normal;*/
      -ms-flex-direction: column;
          flex-direction: column;
}

.we-mega-menu-li.with-submenu.active-trail > .we-mega-menu-submenu > .we-mega-menu-submenu-inner {
  display: block;
}

.we-mega-menu-ul > li.we-mega-menu-li > span.d-submenu-toggler {
      position: absolute;
      right: 0px;
      top: 0px;
      width: 40%;
      align-items: unset;
      justify-content: unset;
      z-index: 999999;
      display: none !important;
  }
  
span.d-submenu-toggler:before {
    content: '+';
}
.we-mega-menu-ul > li.we-mega-menu-li.open span.d-submenu-toggler::before{content: '─';font-size: 10px;}

header.header .block-we-megamenu .navbar.navbar-we-mega-menu {
    background-color: white;
    margin-bottom: 0;
    display: block;
    width: 100%;
    left: 0;
    position: static;
    padding: 0;
}


.we-mega-menu-li .we-mega-menu-li,
.we-mega-menu-li .we-megamenu-nolink {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.we-mega-menu-ul ul{border:none !important;}
.we-mega-menu-ul li.we-mega-menu-li {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /*-webkit-box-orient: vertical;
    -webkit-box-direction: normal;*/
    -ms-flex-direction: column;
    flex-direction: column;
    width: max-content;
    flex: unset;
}

.we-mega-menu-ul > li.we-mega-menu-li > a, .we-mega-menu-ul > li.we-mega-menu-li > span {
  text-transform: uppercase;
  font-size: 15px;
  padding: 31px 24px;
  font-weight: 600;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: flex-end;
}


/* submenu styles */

.we-mega-menu-submenu{}
.we-mega-menu-submenu ul.nav{
    display: block;
}
.we-mega-menu-submenu ul.nav li{
    display: block;
}
.we-mega-menu-submenu ul.nav li a{
    display: block;
}

.we-mega-menu-submenu-inner{
  max-width: 1110px;
  width: 100%;
  margin: 0 auto;
}

.navbar-we-mega-menu .we-mega-menu-row{text-align: left}
.navbar-we-mega-menu .we-mega-menu-row .type-of-block{}
.navbar-we-mega-menu .we-mega-menu-row .we-mega-menu-col:first-child{
  flex: 0 0 30%;
  max-width: 30%;
  border-right: 1px solid #295e8a;
}
.navbar-we-mega-menu .we-mega-menu-row .we-mega-menu-col:first-child div.type-of-block{padding: 0px 16px;}
.navbar-we-mega-menu .we-mega-menu-row .we-mega-menu-col div.type-of-block{padding: 0px 0;}
.navbar-we-mega-menu .we-mega-menu-row .we-mega-menu-col div.type-of-block h2{
    font-size: 16px;
    margin: 0 0 5px;
    border-bottom: 1px solid #2a5e8a;
    padding-bottom: 5px;
}
.navbar-we-mega-menu .we-mega-menu-row .type-of-block p{
    margin-bottom: 20px;
    font-size: 13px;
    line-height: 1.4;
}
.navbar-we-mega-menu .we-mega-menu-row .type-of-block p a{
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: white;
}
.navbar-we-mega-menu .we-mega-menu-row .type-of-block a:hover{color: #58ab47}
.navbar-we-mega-menu .we-mega-menu-row .type-of-block img{}
.navbar-we-mega-menu .we-mega-menu-row .type-of-block ul{
    list-style: disc;
    list-style-position: outside;
    margin-bottom: 30px;
    font-size: 15px;
    font-weight: 400;
    margin-left: 21px;
}
.navbar-we-mega-menu .we-mega-menu-row .type-of-block ul li{}
.navbar-we-mega-menu .we-mega-menu-row .type-of-block ul li a{
    color: white;
    display: block;
    padding: 5px 0;
    font-size: 14px;
}

.navbar-we-mega-menu .we-mega-menu-row .type-of-block ol{margin-bottom: 30px;list-style: none;padding: 0;}
/* end submenu styles */


@media (max-width: 991.98px) {
  .type-of-block h2 + .field-content-wrapper {
    position: relative;
  }
  .type-of-block h2 + .field-content-wrapper::before, .type-of-block h2 + .field-content-wrapper::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    left: -50%;
    top: 0;
    z-index: 0;
    pointer-events: none;
  }
  .type-of-block h2 + .field-content-wrapper::after {
    left: 50%;
  }
  .type-of-block h2 + .field-content-wrapper > * {
    display: none;
    z-index: 1;
    padding: 10px 15px;
  }
  .type-of-block h2 + .field-content-wrapper li.nav-item > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    line-height: 1.5;
    height: 100%;
    font-weight: normal;
    margin: 0;
    padding: 5px 0;
    font-size: 1rem;
    color: black;
  }
}


@media (min-width: 992px) {
  .we-mega-menu-submenu {
    position: absolute;
    top: 100%;
    padding: 0;
    background-color: #262626;
    color: white;
    font-weight: 400;
    border: none;
    white-space: nowrap;
    min-width: 12rem;
    margin-left: -1rem;
  }
  .we-mega-menu-submenu .we-mega-menu-submenu {
    left: 100%;
    top: 0;
    padding: 0;
  }
  
  .we-mega-menu-submenu a,
  .we-mega-menu-submenu span.we-mega-menu-nolink {
    color: white;
  }
  .we-mega-menu-submenu a:hover,
  .we-mega-menu-submenu span.we-mega-menu-nolink:hover {
    color: #58ab47;
    text-decoration: none;
  }
  #block-mainnavigation,
  .we-mega-menu-ul,
  .we-mega-menu-ul>.we-mega-menu-li{position: static;border-radius: 0;border: none;text-align: center;font-family: var(--pf);margin: 0 !important;flex: 1;justify-content: space-between;}
  .dropdown-menu > .we-mega-menu-submenu {
    left: 0px;
    right: 0;
    width: 100%;
    max-width: 1140px;
    margin-left: 0;
    white-space: normal;
    opacity: 0;
    visibility: hidden;
    padding: 30px 0;
    margin: 0 auto;
    left: 0;
    visibility: hidden;
    background: #194985;
    background: #1C486B;
    -webkit-transition: all 400ms ease;
    -moz-transition: all 400ms ease;
    -ms-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition: all 400ms ease;
    border-radius: 0px 1px 20px 20px;
  }

  .we-mega-menu-li > a,
  .we-mega-menu-li > span.we-megamenu-nolink {
    padding: 13px 20px;
    line-height: 1;
    border: none !important;
    text-align: center;
  }
  .we-mega-menu-li:hover > .we-mega-menu-submenu {
    visibility: visible;
    z-index: 2;
    opacity: 1;
  }
  .navbar-we-mega-menu .we-mega-menu-row {
    margin-left: -1.06383%;
    margin-right: -1.06383%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .navbar-we-mega-menu .we-mega-menu-row > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 97.87234%;
    flex: 0 0 97.87234%;
    max-width: 97.87234%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /*-webkit-box-orient: vertical;
    -webkit-box-direction: normal;*/
        -ms-flex-direction: column;
            flex-direction: column;
    position: relative;
    margin-left: 1.06383%;
    margin-right: 1.06383%;
  }
  .navbar-we-mega-menu .span1 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 6.20567%;
    flex: 0 0 6.20567%;
    max-width: 6.20567%;
  }
  .navbar-we-mega-menu .span2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 14.53901%;
    flex: 0 0 14.53901%;
    max-width: 14.53901%;
  }
  .navbar-we-mega-menu .span3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 22.87234%;
    flex: 0 0 20%;
    max-width: 20%;
  }
  .navbar-we-mega-menu .span4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 31.20567%;
    flex: 0 0 31.20567%;
    max-width: 31.20567%;
  }
  .navbar-we-mega-menu .span5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 39.53901%;
    flex: 0 0 39.53901%;
    max-width: 39.53901%;
  }
  .navbar-we-mega-menu .span6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 47.87234%;
    flex: 0 0 47.87234%;
    max-width: 47.87234%;
  }
  .navbar-we-mega-menu .span7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 56.20567%;
    flex: 0 0 56.20567%;
    max-width: 56.20567%;
  }
  .navbar-we-mega-menu .span8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 64.53901%;
    flex: 0 0 64.53901%;
    max-width: 64.53901%;
  }
  .navbar-we-mega-menu .span9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 72.87234%;
    flex: 0 0 72.87234%;
    max-width: 72.87234%;
  }
  .navbar-we-mega-menu .span10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 81.20567%;
    flex: 0 0 81.20567%;
    max-width: 81.20567%;
  }
  .navbar-we-mega-menu .span11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 89.53901%;
    flex: 0 0 89.53901%;
    max-width: 89.53901%;
  }
  .navbar-we-mega-menu .span12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 97.87234%;
    flex: 0 0 97.87234%;
    max-width: 97.87234%;
  }
}



@media (max-width: 991.98px) {
  


  div.we-mega-menu-submenu {
      z-index: 1;
      color: white;
      display: none;
      transition: all 400ms ease;
  }
  .open div.we-mega-menu-submenu {display: block;}
  
  .region-we-mega-menu .navbar-toggle {
    width: 44px;
    height: 38px;
    position: relative;
    margin: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
    display: block;
    margin-top: 15px;
    float: right;
  }

  .region-we-mega-menu .navbar-toggle span {
      display: block;
      position: absolute;
      height: 6px;
      width: 100%;
      background: #1b4985;
      border-radius: 9px;
      opacity: 1;
      left: 0;
      -webkit-transform: rotate(0deg);
      -moz-transform: rotate(0deg);
      -o-transform: rotate(0deg);
      transform: rotate(0deg);
      -webkit-transition: .25s ease-in-out;
      -moz-transition: .25s ease-in-out;
      -o-transition: .25s ease-in-out;
      transition: .25s ease-in-out;
    }
    .region-we-mega-menu .navbar-toggle span:nth-child(1) {
      top: 0px;
      -webkit-transform-origin: left center;
      -moz-transform-origin: left center;
      -o-transform-origin: left center;
      transform-origin: left center;
    }
    .region-we-mega-menu .navbar-toggle span:nth-child(2) {
      top: 13px;
      -webkit-transform-origin: left center;
      -moz-transform-origin: left center;
      -o-transform-origin: left center;
      transform-origin: left center;
    }
    .region-we-mega-menu .navbar-toggle span:nth-child(3) {
      top: 26px;
      -webkit-transform-origin: left center;
      -moz-transform-origin: left center;
      -o-transform-origin: left center;
      transform-origin: left center;
    }
    .region-we-mega-menu .navbar-toggle.show span:nth-child(1) {
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      -o-transform: rotate(45deg);
      transform: rotate(45deg);
      top: -2px;
      left: 8px;
    }
    .region-we-mega-menu .navbar-toggle.show span:nth-child(2) {
      width: 0%;
      opacity: 0;
    }
    .region-we-mega-menu .navbar-toggle.show span:nth-child(3) {
      -webkit-transform: rotate(-45deg);
      -moz-transform: rotate(-45deg);
      -o-transform: rotate(-45deg);
      transform: rotate(-45deg);
      top: 30px;
      left: 8px;
    }

    .we-mega-menu-ul > li.we-mega-menu-li > span.d-submenu-toggler{display: block !important;padding: 0px 30px 0px 70px !important;text-align: right;display: block !important;line-height: 59px;}
 
  header.header .block-we-megamenu .navbar.navbar-we-mega-menu {
    position: absolute;
    top: 5rem;
    right: 0;
    z-index: 10;
    height: calc(100% - 5rem);
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    pointer-events: none;
    overflow-x: hidden;
  }

  .navbar-we-mega-menu .we-mega-menu-row .we-mega-menu-col div.type-of-block{padding: 20px 20px !important;border-bottom: 1px solid #2761ad;}

 header.header .block-we-megamenu .navbar.navbar-we-mega-menu{
      overflow: visible;
      width: 100%;
      background: #1C486B;
      display: block;
      height: unset;
      flex-wrap: unset;
      z-index: 1000;
      align-items: unset;
      -webkit-box-align: unset;
      pointer-events: unset;
      top: 100%;
      visibility: hidden;
  }
  ul.we-mega-menu-ul {display: block;flex-wrap: unset;overflow: visible;z-index: 100;width: 100%;border: none;border-radius: 0;max-width: 745px;margin: 0 auto;}
  .we-mega-menu-ul li.we-mega-menu-li{display: block;width: 100%;flex-direction: unset;max-width: unset;-webkit-box-align: unset;border-radius: 0;margin: 0;background: transparent;position: relative;}
  .we-mega-menu-ul > li.we-mega-menu-li > a {border-bottom: 1px solid #153d5f;}
  .we-mega-menu-ul > li.we-mega-menu-li > a, 
  .we-mega-menu-ul > li.we-mega-menu-li > span{display: block;width: 100%;max-width: unset;justify-content: unset;-webkit-box-pack: unset;max-width: unset;-webkit-box-align: unset;color: white;font-family: var(--pf);font-size: 20px;padding: 15px;}

  .navbar-we-mega-menu .we-mega-menu-row .type-of-block p{
    margin-bottom: 15px;
}
  .navbar-we-mega-menu .we-mega-menu-row .type-of-block p a{
    font-size: 20px;
}
  .navbar-we-mega-menu .we-mega-menu-row .type-of-block ul{
    list-style: none;
    list-style-position: unset;
    font-size: 16px;
    margin-bottom: 20px;
    margin-left: 0;
}
  .navbar-we-mega-menu .we-mega-menu-row .type-of-block ul li{}
  .navbar-we-mega-menu .we-mega-menu-row .type-of-block ul li a{
    padding: 10px 20px;
    display: block;
    background: #153b5a;
    border-bottom: 1px solid #2761ad;
}
.navbar-we-mega-menu .we-mega-menu-row .we-mega-menu-col:first-child{
  max-width: unset;
}
.we-mega-menu-submenu a, .we-mega-menu-submenu span.we-mega-menu-nolink {
    color: white;
}

}
