body.fm-activate {
  overflow: hidden;
}

.sidemenu , .fitranamenu , .fidyamenu , #donate-button {
    display: none;
}

.fm-menu {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  width: 1024px;
  height: 600px;
  left: 50%;
  top: 15%;
  margin-left: -512px;
  margin-top: 50px;
  margin-bottom: 50px;
  z-index: 101;
}


.fm-menu.fm-animated {
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  opacity: 1;
  visibility: visible;
}

.fm-scrollable {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: auto;
}

.fm-menu .fm-nav.fm-animated, .fm-menu.fm-horizontal .fm-nav.fm-animated  {
  opacity: 1;
}

.fm-overlay {
  height: 100%;
  width: 100%;
  background: rgba(255,255,255,0.98);
  opacity: 0;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  z-index: 100;
  visibility: hidden;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out; 
}

body .fm-button {
  position: fixed;
  top: 50px;
  right: 20px;
  font-size: 17px;
  color: #151313;
  font-weight: bold;
  padding: 2px 5px;
  z-index: 102;
  
}

body .fm-button:hover {
  border-bottom: 2px solid #D12727;
  color: #141212;
}

body.fm-activate .fm-overlay {
  opacity: 1;
  visibility: visible;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@media (max-width: 764px) {
  body .fm-menu .fm-nav > a {
    font-size: 5.5vw;
    padding: 25px 0;
    padding-right: 45px;
  }
  body .fm-menu .fm-nav > a > .subtitle{
    line-height: 140%;
    font-size: 3.5vw;
    margin-bottom: 0px;
  }
  body .fm-menu .fm-first-level li {
    display: block;
    text-align: center;
    padding: 15px 0;
  }
}

@media (max-width: 1024px) {
  body .fm-menu {
    width: 100%;
    left: 0;
    margin-left: 0;
    box-sizing: border-box;
    padding: 0 25px;
  }
}