/* header */

body.noScroll {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}



.mainNavigation {
  position: relative;

  position: fixed;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  z-index: 1000;
  padding: 14px 80px;
  /* height: var(--headerHeight); */
}

body.noScroll .mainNavigation {
  height: 78px
}

.mainNavigation .logo {
  display: flex;
  gap: 10px;
  height: 50px;
  align-items: center;
}

.mainNavigation .logo img {
  /* width: 100%; */
  height: 100%;
  object-fit: contain;
}

.mainNavigation .logo .logoText {
  display: flex;
  flex-direction: column;
  text-transform: uppercase;
  font-size: 17px;
}

.mainNavigation .logo .logoText1 {
  color: #3335ec;
}

.mainNavigation .logo .logoText2 {
  color: var(--darkpurpleColor);;
}

.menuPoints {
  position: relative;
  z-index: 1;
}

.menuBlock {
  position: relative;
  text-align: right;
  width: fit-content;

  display: flex;
  align-items: flex-end;
  flex-direction: column;
}

.menuBlock[mid="3"] {
  margin-left: 30px;
}



.subMenuBlock {
  flex: 0 0 220px;
  width: 110px;
  transition: all 200ms ease;
}

a:has(.subMenuElem) {
  text-decoration: none;
}

a:has(.subMenuElem):after {
  display: none;

}

.subMenuElem {
  padding: 10px 0;
  z-index: 1;
}

.whiteMenuBG {
  position: relative;
  width: 100%;
  height: 220px;
  max-height: 0;
  overflow-y: hidden;
  top: 0;
  left: 0;
  background-color: white;

  transition: all 150ms ease;
}

.whiteMenuBG.opened {
  height: 220px;
  max-height: 260px;
}

.mainNavigation.opened .subMenuBlock {
  opacity: 1;
  pointer-events: all;
}

.mainNavigation.opened .rightNav {
  height: unset;
}












/* lang buttons */

.lang_btn {
  display: inline;
  cursor: pointer;
}

.lang_btnInactive {
  opacity: 50%;
}

header {
  width: 100%;
  position: sticky;
  top: 0;
  background-color: white;
  z-index: 1000;
}

body.noScroll header {
  position: fixed;
}



/* menu */

.leftNav {
  display: flex;
  align-items: center;
}

.rightNav {
  min-width: 30px;
  height: 40px;
  overflow-y: hidden;
  overflow-x: hidden;
  display: flex;  
  align-items: flex-start;

  cursor: pointer;
}

.menuPoints {
  
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
}

.menuElemSingle {
  /* padding-top: 10px; */
}

.wkoLogoHeader {
  display: flex;
  align-items: center;
}

.wkoLogoHeader .wkoLogo {
  height: 45px;
}

.headerElem {
  font-size: 16px;
  color: var(--darkblueColor);
}

.topHeaderElem {
  flex: 0 0 40px;
  /* height: 40px; */
  width: fit-content;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}




a:has(.headerElem):hover {
  text-decoration-color: var(--darkblueColor);
}

.sandwichElement {
  display: none;

  position: absolute;
  width: 30px;
  height: 16px;

  justify-content: space-between;
  align-items: center;
  flex-direction: column;

  cursor: pointer;
  
}

.swLine {
  position: absolute;
  width: 24px;
  height: 2px;
  background-color: var(--darkblueColor);

  display: flex;
  transition: all 200ms ease;

}

.swLine1 {
  top: 0%
}

.swLine2 {
}

.swLine21 {
  top: 50%
}
.swLine22 {
  top: 50%
}

.swLine3 {
  top: 100%
}

.sandwichElement.opened .swLine1 {
  display: none;
}
.sandwichElement.opened .swLine21 {
  rotate: 45deg;
}
.sandwichElement.opened .swLine22 {
  rotate: -45deg;
}
.sandwichElement.opened .swLine3 {
  display: none;
}


.hamOverlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;

  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  background-color: white;
  padding: 20px;

  z-index: 99;

  display: none;
}

.hamOverlay.showing {
  display: flex;
}

.hamOverlay .sandwichElement {
  top: 32px;
  right: 35px;
}



.hamPoints {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 20px;

  font-size: 36px;
}




/* hamburger */

.hamburger {
  display: none;
  position: fixed;
  /* position: sticky; */
  right: 6%;
  top: 6%;
  transform: translateY(-50%);
  width: 40px;
  height: 28px;

  z-index: 999;
  /* background-color: grey; */
  transition: all cubic-bezier(0.88, 0.34, 0.88, 0.89) 500ms;

  cursor: pointer;

  /* // .active {
  //    position: fixed;
  //    top: 5% !important;
  // }

  // .fixit {
  //     position: fixed;
  //     top: 50px;
  // } */
}

.hamburger.active {
  position: fixed;
  top: 5% !important;
}

.hamburger.fixit {
  position: fixed;
  top: 50px;
}

.hamLines {
  position: absolute;
  width: 100%;
  height: 4px;
  background-color: black;
  opacity: 1;
  transition-duration: 70ms;
}

.cross {
  background-color: black !important;
}

.hamLine1 {
  top: 0;
}

.hamLine2 {
  top: 12px;
}

.hamLine22 {
  top: 12px;
}

.hamLine3 {
  top: 24px;
}

.opened .hamLine1 {
  opacity: 0;
  transition-duration: 300ms;
}

.opened .hamLine2 {
  top: 12px;
  transform: rotate(45deg);
  transition-duration: 300ms;
}

.opened .hamLine22 {
  top: 12px;
  transform: rotate(-45deg);
  transition-duration: 300ms;
}

.opened .hamLine3 {
  top: 24px;
  opacity: 0;
  transition-duration: 300ms;
}

/* .hamOverlay {
  position: fixed;
  background-color: white;
  width: 0%;
  height: 100vh;
  top: 0;
  right: 0;

  z-index: 850;
  transition-duration: 500ms;
} */

.socialIconsWrapperOverlay {
  display: none;
  position: absolute;
  bottom: 3%;
  left: 50%;
  transform: translateX(-50%);
  /* width: 120px; */

  justify-content: space-between;
  gap: 20px;

  opacity: 0;
  /* display: flex; */
  flex-direction: row;
  z-index: 10;

  transition: all 800ms;
}

.hamOverlay.active {
  width: 100%;
  right: 0;
}

.hamOverlay.active .titleOverlay {
  display: flex;

  position: absolute;
  top: 38px;
  left: 50%;
  transform: translateX(-50%);

  opacity: 0;

  z-index: 20;

  transition: all 800ms;
}

.titleOverlay {
  display: none;
}

.hamMenuWrapper {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  opacity: 0;

  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

  transition: all 800ms;
  /* transition-delay: 500ms; */
}

.hamOverlay .hamMenuWrapper.active,
.hamOverlay .socialIconsWrapperOverlay.active,
.hamOverlay .titleOverlay.active {
  display: flex;
}

.hamOverlay .hamMenuWrapper.opacity,
.hamOverlay .socialIconsWrapperOverlay.opacity,
.hamOverlay .titleOverlay.opacity {
  opacity: 1;
  transition: all 800ms;
}

.hamMenuPointText {
  position: relative;
  color: black;
  text-decoration: none;
  font-size: 5em;
}

.inline {
  display: inline-flex;
}

/* .hamMenuPointText:hover {
    color: black;
    text-decoration: underline;
} */

.hamMenuPointText:after {
  position: absolute;
  content: '';
  width: 0%;
  height: 5px;
  bottom: -4px;

  /* center - (optional) use with adjusting width   */
  margin: 0 auto;
  left: 0;
  right: 0;
  background: black;

  /* optional animation */
  -o-transition: 0.5s;
  -ms-transition: 0.5s;
  -moz-transition: 0.5s;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}



@media screen and (max-width: 1100px) {

  header {
    /* position: fixed; */
  }

  .menuPoints {
    display: none;
  }

  .hamburger {
    display: block;
  }

  .sandwichElement {
    display: flex;
  }

  .headerElem {
    font-size: 36px;
  }

  .mainNavigation {
    padding: 14px 20px;
    align-items: center;
  }

    .hamFlex {
      flex-direction: column;
      align-items: flex-start;

    }

    .hamSubMenuElems {
      font-size: 24px;
    }

    .hamSubMenuElems a {
      margin-bottom: 10px;
    }

    .hamSubMenuElem { 
      
    }

  .rightNav {
    display: flex;
    align-items: center;
  }


}
