@import "../../../scss/typo.mixins";
@import "../../../scss/breakpoints.mixins";

.mobile-menu {
  position: relative;

  .alert__container {
    flex-direction: column;
    justify-content: center;
  }

  .alert__content {
    text-align: center;
  }

  .alert__cta {
    align-self: center;
    margin-top: 16px;
    margin-left: 0;
  }
}

.mobile-menu__menu {
  z-index: $z-index-menu;
  padding: 0;
  margin: 0;
  list-style-type: none;
}

.mobile-menu__menu__item {
  padding: 0;
  margin: 0;
  border-top: 1px solid $color-mercury;
  border-bottom: 1px solid $color-mercury;

  & + &,
  .mobile-menu__menu--no-border-top > & {
    border-top: 0;
  }
}

.mobile-menu__menu__item--meta {
  background: $color-alabaster;

  .mobile-menu__menu__item__link {
    color: $color-dusty-gray;

    &:hover {
      color: $color-scorpion;
    }
  }
}

.mobile-menu__menu__item__link {
  @extend %typo-14;

  display: flex;
  align-items: center;
  height: 50px;
  padding: 0 30px;
  font-weight: bold;
  color: $color-axa-blue;
  text-transform: uppercase;
  justify-content: space-between;

  &:hover,
  &:focus {
    color: $color-deep-sapphire;
    text-decoration: none;
  }
}

.mobile-menu__menu__item__link__icon {
  width: 6px;
  height: 14px;
  margin-left: 20px;
  color: $color-axa-blue;
  flex-shrink: 0;
}

.mobile-menu__menu__item__sub-menu {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: $z-index-sub-menu;
  visibility: hidden;
  background: #fff;
  transition: visibility 0s ease 0.2s, opacity 0.2s ease;
  transform: translate3d(100%, 0, 0);

  &.is-active {
    visibility: visible;
    transition: visibility 0s ease 0s, opacity 0.2s ease;
    transform: translate3d(0, 0, 0);
  }

  @include media-breakpoint-up(tablet) {
    // box-shadow: -3px 0px 8px 0px rgba(0,0,0,0.2);
    left: 15px;

    &::before {
      position: absolute;
      top: 0;
      bottom: 0;
      left: -8px;
      display: block;
      width: 8px;
      content: "";
      background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 100%);
    }
  }
}

.mobile-menu__menu__item__sub-menu__title {
  @extend %typo-18;

  display: flex;
  align-items: center;
  height: 74px;
  padding: 0 30px;
  font-weight: 600;
  color: $color-axa-blue;
  text-transform: uppercase;

  &:hover,
  &:focus {
    color: $color-deep-sapphire;
    text-decoration: none;
  }
}

.mobile-menu__menu__item__sub-menu__title__icon {
  width: 7px;
  height: 17px;
  margin-right: 30px;
  flex-shrink: 0;
}
