: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;
  }

  &--desktop {
    padding: 0;
  }

  &--sidenav {
    display: none;

    &.is-demo {
      display: block;
    }

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

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

.hy-menu {
  &--mobile {
    -webkit-overflow-scrolling: touch;
    flex-flow: column;
    padding-left: 12px;
    padding-right: 12px;
    transform: translateX(100%);
    transition: 0.45s;
    width: 100%;
    z-index: 100;

    @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 {
    box-shadow: rgba(14, 104, 139, 0.2) 0 20px 20px -20px;
    display: inline-block;
    padding: 16px;
    z-index: 100;

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

  &--sidenav {
    display: none;

    @include breakpoint($extrawide) {
      display: block;
      max-width: 20vw; // Should be in the wrapper.
    }
  }
}

.hy-link__donate {
  background-color: var(--grayscale-white);
  bottom: -20px;
  position: sticky;
  z-index: 102;

  a {
    @include font-size(16px, 16px);
    @include font-weight($semibold);
    background-color: var(--brand-main-light);
    color: var(--grayscale-white);
    display: block;
    font-family: var(--main-font-family);
    letter-spacing: -0.4px;
    margin: 12px;
    padding: 20px;
    text-align: center;
    text-decoration: none;

    @include breakpoint($narrow) {
      margin: 12px 28px;
    }

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

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

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

  @include breakpoint($wide) {
    .menu--language {
      display: none;
      visibility: hidden;
    }
  }
}