:host {
  margin: 0;
  padding: 0;
}

.hy-menu-wrapper {
  &--mobile {
    align-items: stretch;
    bottom: 0;
    display: flex;
    flex-flow: column;
    justify-items: stretch;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 99;

    &.is-open {
      z-index: 101;
    }
  }

  &--desktop {
    padding: 0;
  }

  &--sidenav {
    display: none;

    &.is-demo {
      display: block;
    }

    @include breakpoint($narrow) {
      display: block;
    }
  }
}

.hy-menu-container--mobile {
  min-height: calc(100vh - 60px);
  overflow-x: hidden;
  overflow-y: visible;
}

.hy-menu {
  &--mobile {
    -webkit-overflow-scrolling: touch;
    flex-flow: column;
    margin-top: 18px;
    padding: 0 16px;
    transform: translateX(100%);
    transition: 0.45s;
    width: 100%;
    z-index: 100;

    @include breakpoint($narrow) {
      padding: 0 28px;
    }

    @include breakpoint($extrawide) {
      &:not(.is-demo) {
        min-height: 0;
        transform: translateX(0);
        visibility: visible;
      }
    }

    &.is-open {
      padding-top: 5px;
      transform: translateX(0);
      transition: transform 0.3s cubic-bezier(0, 0, 0.3, 1);

      &::after {
        opacity: 1;
        visibility: visible;
      }
    }
  }

  &-breadcrumb-container {
    display: flex;
    flex-flow: column;
  }

  &__logo-container {
    display: inline-block;
    padding: 16px;
    z-index: 100;

    @include breakpoint($narrow) {
      padding: 16px 28px;
    }
  }
}

.hy-link__donate {
  background-color: var(--grayscale-white);
  bottom: -20px;
  box-shadow: rgb(14 104 139 / 20%) 0px -20px 20px -20px;
  position: sticky;
  z-index: 102;

  a {
    @include font-size(16px, 16px);
    @include font-weight($semibold);
    align-items: center;
    background-color: var(--grayscale-white);
    color: var(--grayscale-black);
    display: block;
    display: flex;
    font-family: var(--main-font-family);
    justify-content: center;
    letter-spacing: -0.4px;
    padding: 20px 0 16px;
    text-align: center;
    text-decoration: none;

    &:focus {
      outline: solid 2px var(--additional-yellow);
    }

    svg {
      margin-right: 5px;
    }
  }
}

.hy-menu__breadcrumbs {
  display: block;
  position: relative;

  &.is-empty {
    min-height: 35px;
  }

  @include breakpoint($wide) {
    // Hide languages in 960-1200px Hamburger panel as they can be found in Header.
    .menu--language {
      display: none;
      visibility: hidden;
    }
  }
}

// Bit hacky, but easy way to hide hy-logo on group menu in mobile
.hy-menu-wrapper--mobile[data-is-group] {
  .hy-menu__logo-container .hy-site-logo .hy-site-logo__icon {
    width: 0 !important;
  }
}