:host {
  display: block;
}

.hy-site-header {
  &__menu-desktop-container {
    align-items: center;
    display: flex;
    flex-flow: row;
    list-style: none;
    width: 100%;
  }

  &__menu-desktop {
    .desktop-menu-link {
      color: var(--brand-main-nearly-black);
      cursor: pointer;
      font-family: var(--main-font-family);

      @include breakpoint($extrawide) {
        @include font-size(15px, 16px);
        @include font-weight($bold);

        border-top: 0 none;
        padding: 10px 8px;
        text-transform: uppercase;
      }

      @include breakpoint($fullhd) {
        @include font-size(18px, 16px);
        letter-spacing: -0.5px;
        padding: 10px;
      }

      &__heading__icon {
        display: none;
      }

      &--is-active-trail {
        @include breakpoint($extrawide) {
          border-bottom: 4px solid var(--brand-main-nearly-black);
          padding-bottom: 8px;
        }

        @include breakpoint($overwide) {
          padding-bottom: 12px;
        }
      }
      &--is-active {
        background-color: var(--grayscale-background-box);
        padding: 35px 10px;
        position: relative;

        .desktop-menu-link__heading__icon {
          bottom: 14px;
          display: block;
          left: 0;
          position: absolute;
          width: 100%;

          hy-icon {
            justify-content: center;
            transform: rotateX(180deg);
            svg {
              padding: 4px 0;
            }
          }
        }
      }
    }
  }
}

.hy-desktop-menu-panel {
  display: none;

  &--is-active {
    background-color: var(--grayscale-white);
    display: flex;
    flex-direction: row;
    justify-content: center;
    opacity: 1;
    position: absolute;
    left: 0;
    top: 104px;
    width: 100%;
    z-index: 510;
  }

  &__desktop-menu {
    position: relative;
    left: 120px;
    width: 50%;

    ul {
      list-style: none;
      margin: 0;
      padding: 0;

      li {
        a {
          @include font-weight($bold);
          align-items: center;
          color: var(--brand-main-nearly-black);
          display: flex;
          flex-direction: row;
          font-family: var(--main-font-family);
          text-decoration: none;
          width: 100%;

          &:focus {
            outline: solid 2px var(--additional-yellow);
            outline-offset: -2px;
          }
          .hy-menu-item__label {
            @include breakpoint($extrawide) {
              padding-top: 12px;
              padding-bottom: 12px;
            }
          }
        }
      }

      li.first {
        a {
          @include breakpoint($extrawide) {
            @include font-size(24px, 32px);
            align-items: flex-start;
            background-color: var(--grayscale-background-box);
            flex-direction: column;
            letter-spacing: -0.75px;
            margin-bottom: 4px;
            padding-left: 32px;
            padding-right: 32px;
            padding-top: 5px;
            position: relative;
            text-transform: none;
          }
          @include breakpoint($fullhd) {
            @include font-size(26px, 32px);
            letter-spacing: -0.81px;
            margin-bottom: 6px;
            padding-top: 19px;
          }

          .hy-menu-item__label {
            border: none;
            margin-left: 14px;
          }
          .hy-menu-item__description {
            @include font-size(16px, 24px);
            @include font-weight($semibold);
            color: var(--grayscale-dark);
            letter-spacing: 0;
            margin-left: 14px;
            margin-bottom: 28px;
          }

          span.heading-icon-first {
            position: absolute;
            top: 12px;
            left: -6px;

            @include breakpoint($fullhd) {
              top: 27px;
            }

            svg {
              background-color: var(--brand-main-light);
              fill: var(--grayscale-white);
              padding: 8px;
            }
          }
        }
      }

      li.second {
        a {
          @include breakpoint($extrawide) {
            @include font-size(15px, 22px);
            align-items: center;
            flex-direction: row;
            letter-spacing: -0.47px;
            padding-left: 24px;
            padding-right: 24px;
            text-transform: none;
          }

          @include breakpoint($fullhd) {
            @include font-size(18px, 22px);
            letter-spacing: -0.56px;
          }

          .hy-menu-item__label {
            border: none;
            margin-left: 12px;
          }

          span.heading-icon-second {
            svg {
              fill: var(--brand-main-light);
              @include breakpoint($extrawide) {
                padding: 1px 0;
              }
            }
          }
        }
      }
    }

    ul.second {
      background-color: var(--grayscale-background-box);
    }

    ul.desktop-menu {
      display: none;
      &--is-active {
        display: block;
      }
    }
  }

  &__panel-toggle {
    position: absolute;
    right: 10px;
    top: 10px;
  }
}