section#mega-menu {
  z-index: 999;
}
.section--mega-menu .mega-menu__nav-menu {
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.18);
}
.section--mega-menu .mega-menu__nav-menu a {
  text-decoration: none;
}

.section--mega-menu .hs-menu-item.hs-menu-depth-1 {
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.section--mega-menu .mega-menu__nav-menu a:hover {
  opacity: 0.5;
  transition: opacity 0.15s ease-in-out;
  -moz-transition: opacity 0.15s ease-in-out;
  -webkit-transition: opacity 0.15s ease-in-out;
}

.section--mega-menu .mega-menu__nav-menu a:not(.hs-button),
.section--mega-menu .mega-menu__nav-men a:not(.lang_switch_link),
.section--mega-menu .mega-menu__nav-menu p span {
  color: #fff;
}
.section--mega-menu .mega-menu__nav-menu p:not(.hs-button) {
  color: #5b1de7;
}

/* --- top bar -- */

.section--mega-menu .top__bar {
  position: relative;
  z-index: 999;
}
.top__bar-menu ul {
  line-height: none;
  list-style: none;
  padding: 0;
}
.section--mega-menu .top__bar a:not(.lang_switcher_link) {
  color: #fff !important;
  text-decoration: underline;
}
.section--mega-menu .top__bar a,
.section--mega-menu
  .top__bar
  .top__bar-menu
  li.hs-menu-item.hs-menu-depth-1
  > a {
  font-weight: 700;
}

.section--mega-menu .top__bar .top__bar-menu a {
  text-decoration: none;
}
.section--mega-menu .top__bar .top__bar-menu a:not(.hs-button):hover {
  text-decoration: underline;
}
.section--mega-menu .top__bar .top__bar-menu .hs-menu-children-wrapper {
  background: #5b1de7 !important;
  padding: 10px;
}
.section--mega-menu .top__bar .top__bar-menu .hs-menu-children-wrapper a {
  text-decoration: none;
}

.section--mega-menu .top__bar * {
  font-size: 0.95rem;
}

/* --- search -- */
.section--mega-menu .header__search-form {
  line-height: 1;
}

.section--mega-menu .header__search-form button {
  background: none !important;
  border: none;
  padding-left: 1rem;
}

.section--mega-menu .header__search-form svg {
  fill: #fff;
}

.section--mega-menu .page_header {
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.18);
  margin-bottom: 1rem;
}

.section--mega-menu .header_branding {
  position: absolute;
  left: 50%;
  top: 1.5rem;
  z-index: 9;
  transform: translate(-50%);
}

.header-right .hs-button.hs-button--primary {
  margin-top: 0 !important;
}

/* Burger Menu Toggle Effect */

.section--mega-menu .menu-toggle {
  position: relative;
  display: block;
  width: 45px;
  height: 35px;
  background: transparent;
  border-top: 4px solid;
  border-bottom: 4px solid;
  border-left: 0px;
  border-right: 0px;
  color: #fff;
  font-size: 0;
  transition: all 0.25s ease-in-out;
  cursor: pointer;
}

.section--mega-menu .menu-toggle:before,
.section--mega-menu .menu-toggle:after {
  content: "";
  display: block;
  width: 100%;
  height: 4px;
  position: absolute;
  top: 50%;
  left: 50%;
  background: currentColor;
  transform: translate(-50%, -50%);
  transition: transform 0.25s ease-in-out;
}

.section--mega-menu .burger-button.is-active {
  border-color: transparent;
}

.section--mega-menu .burger-button.is-active:before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.section--mega-menu .burger-button.is-active:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.section--mega-menu #burger-menu {
  display: none;
  animation: fadeIn 0.8s;
}

.section--mega-menu #burger-menu ul {
  flex-direction: column;
}

.section--mega-menu #burger-menu.open {
  display: block;
  width: 40%;
  height: auto;
  background: #000;
  position: absolute;
}

.section--mega-menu .menu-items {
  padding: 3rem 5rem;
}

.section--mega-menu .menu__row-list {
  display: block;
}

.section--mega-menu .menu-links li {
  margin: 8px 0 !important;
}
/* Mobile Responsive */

@media (max-width: 980px) {
  .section--mega-menu #burger-menu.open {
    width: 50%;
  }

  .section--mega-menu .menu__row-list {
    width: 100%;
  }

  /* .header_branding {
      top: 9rem;
    } */

  .section--mega-menu .top__bar-text {
    width: 80%;
  }
}

@media (max-width: 767px) {
  .section--mega-menu #burger-menu.open {
    width: 60%;
  }

  .header-right {
    float: right !important;
    width: fit-content !important;
    text-align: center;
    margin: 0 !important;
    position: static;
  }
}

@media (max-width: 480px) {
  .section--mega-menu .menu-items {
    padding: 2rem 1rem;
  }

  .section--mega-menu .menu-links a {
    margin: 8px 0 !important;
  }

  .section--mega-menu .header-button {
    display: none !important;
  }

  .section--mega-menu .burger-button {
    margin: 0 30px;
  }

  .section--mega-menu .menu__row-list {
    padding: 0;
    width: 100%;
  }

  .section--mega-menu .top__bar {
    display: none;
  }

  /* .header_branding {
      top: 1.5rem;
    } */

  .section--mega-menu .row-list-title,
  .section--mega-menu .menu__row-list ul {
    cursor: pointer;
    padding: 0;
    margin: 0;
  }

  .section--mega-menu .wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .section--mega-menu .hs-menu-item.hs-menu-depth-1 {
    margin: 0.5rem 3rem;
  }
}

/* --- language selector --- */
div#hs_cos_wrapper_language_switcher {
    display: none;
}
.menu--language {
    margin: 0 1.5rem;
    line-height: 1;
}
.menu--language .globe_class {
    background-image: url(https://project.linuxfoundation.org/hubfs/Icons/globe--white.png);
}
.menu--language ul.lang_list_class a {
    font-size: 1rem !important;
}
.menu--language ul.lang_list_class {
    width: max-content;
    /* background-color: #fff; */
}
.menu--language .lang_list_class li {
    margin: 0;
    text-align: left;
}

/* -- search popup -- */
.section--mega-menu .search-popup-link {
    margin-left: 2rem;
    line-height:1;
}
div#search-popup {
    margin: 0 auto;
    max-width: 800px;
    background: white;
    padding: 2rem;
}

.hs-search-field {
  position: relative;
}
.hs-search-field__input {
  box-sizing: border-box;
  width: 100%;
}
.hs-search-field__bar button svg {
  height: 10px;
}
.hs-search-field__suggestions {
  list-style: none;
  padding:0;
}
.hs-search-field__suggestions li {
  display: block;
}
.hs-search-field__suggestions #results-for {
  font-weight: bold;
}
.hs-search-field__suggestions a,
.hs-search-field__suggestions #results-for {
  display: block;
}
.hs-search-field__suggestions a:hover,
.hs-search-field__suggestions a:focus {
  background-color: rgba(0, 0, 0, 0.1);
  outline: none;
}

div#search-popup .hs-search-field--open .hs-search-field__suggestions {
    border: none;
}

div#search-popup .hs-search-field--open .hs-search-field__suggestions li {
    margin: 16px 0px;
    border-bottom: solid thin #e1e1e1 !important;
    padding-bottom: 10px;
}

div#search-popup .hs-search-field--open .hs-search-field__suggestions li a {
    color: initial !important;
    text-decoration: none;
}


/* --- language - mobile only --- */

.menu--language.mobile-only {
    display:none !important;
}

  @media (max-width:480px){
    .menu--language.mobile-only {
        display:block !important;
    }
    .menu--language.mobile-only ul.lang_list_class a,
    .menu--language.mobile-only ul.lang_list_class {
        position: 1;
        position: relative;
        z-index: 5;
        outline: none;
    }
    .menu--language.mobile-only .globe_class {
        -webkit-transform: translate(-13px,14px);
            -ms-transform: translate(-13px,14px);
                transform: translate(-13px,14px);
    }
    .menu--language.mobile-only ul.lang_list_class {
        -webkit-transform: translate(13px, 10px);
            -ms-transform: translate(13px, 10px);
                transform: translate(13px, 10px);
        position: relative !important;
        top: -24px;left: 8px;
        background: black;
        display:block;
    }
    .menu--language.mobile-only .lang_list_class li {
        background-color: transparent;
        border: none;
    }
    .menu--language.mobile-only .lang_list_class:after,
    .menu--language.mobile-only .lang_list_class:before {
        content: none;
    }
    .menu--language.mobile-only .lang_switcher_link,
    .menu--language.mobile-only .lang_list_class li{
        color: white;
    }
  }
@media (min-width: 981px) {
  .section--mega-menu .hs-menu-item.hs-menu-depth-1.hs-item-has-children {
    position: relative;
  }

  .section--mega-menu .hs-menu-item.hs-menu-depth-1.hs-item-has-children > .hs-menu-children-wrapper {
    position: absolute;
    top: 100%;
    left: 0;
    display: none;
    flex-direction: column;
    z-index: 9999;
    min-width: 220px;
    padding: 10px 0;
    margin: 0;
    background: #fff;
  }

  .section--mega-menu .hs-menu-item.hs-menu-depth-1.hs-item-has-children:hover > .hs-menu-children-wrapper {
    display: flex;
  }

  .section--mega-menu .hs-menu-children-wrapper .hs-menu-item {
    display: block;
    width: 100%;
  }
}

--
Craig Ross
The Linux Foundation
http://www.linuxfoundation.org/