header {
  --background-gradient-color: rgba(0, 0, 0, 0.7);
  position: sticky;
  top: 0;
  margin-top: -7rem;
  z-index: 10;
  background: transparent;



  & .content {
    padding-block: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;

    & .header__logo img {
      width: 144px;
      height: auto;
    }

    & nav.navigation {
      display: contents;
      align-items: center;
      justify-content: flex-end;
      gap: 0.25rem;
      flex-wrap: nowrap;
      min-width: 0;
      overflow: hidden;

      @media (max-width: 1280px) {
        display: flex;
      }

      & .link {
        --subtle-color: #6F7072;
        --border-color: transparent;

        &:is(:nth-last-child(1), :nth-last-child(2)) .link__content {
          right: 0;
          left: unset;
          border-radius: var(--content-radius) 0 var(--content-radius) var(--content-radius);
        }

        display: flex;
        align-items: center;
        gap: .5rem;
        color: white;
        position: relative;
        transition: .3s background-color;
        border-radius: .5rem;
        font-weight: 500;
        font-size: 1.5rem;
        text-decoration: none;
        padding: .5rem .75rem;
        border-bottom: 3px solid var(--border-color);

        & button {
          border-radius: .5rem;
        }

        & i {
          font-size: 0.65rem;
        }

        &.active {
          --border-color: var(--active-pink);
          border-radius: .5rem .5rem 0 0;
        }

        &:hover {
          margin-bottom: -2px;
          background-color: white;
          color: var(--active-pink);
          box-shadow: 0 3px 11px rgba(0, 0, 0, 0.33);
          padding: 0;

          & .link__content {
            visibility: visible;
          }

          & button {
            padding: .5rem .75rem;
            z-index: 15;
            background-color: white;
          }
        }

        &.link--single:hover {
          padding: .5rem .75rem;
          border-radius: 1rem;
        }

        & .link__content {
          --content-radius: 2rem;
          visibility: hidden;
          position: absolute;
          top: 45px;
          left: 0;
          background-color: white;
          padding: 1rem 1.5rem;
          border-radius: 0 var(--content-radius) var(--content-radius) var(--content-radius);
          z-index: 12;
          box-shadow: 0 3px 11px rgba(0, 0, 0, 0.33);
          transition: .3s background-color, .3s box-shadow;
        }

        & .link__heading {
          display: grid;
          min-width: 450px;
          justify-content: space-between;
          align-items: center;
          gap: .5rem;
          grid-template-columns: auto auto;

          > * {
            margin: 0;
          }

          & .link__title {
            color: black;
            font-weight: 500;
            font-size: 1.75rem;
          }

          & .link__subtitle {
            color: var(--subtle-color);
            grid-column: span 2;
            font-weight: 400;
            font-size: 1rem;
          }

          & .link__close {
            background-color: var(--active-pink);
            color: white;
            border-radius: 100vmax;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 1.75rem;
            height: 1.75rem;
            cursor: pointer;
            justify-self: end;
            text-decoration: none;

            & i {
              font-size: 1rem;
            }
          }
        }

        & .link__list {
          padding-left: 1.5rem;
          margin-block: .5rem;

          & .link__item {
            font-size: 1.5rem;
            font-weight: 400;
            padding: .5rem 0;

            & a {
              color: var(--subtle-color);
              text-decoration: none;
            }

            &:hover a {
              color: black;
            }
          }
        }
      }
    }
  }
}

header .navigation .link__trigger {
  all: unset;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
}

/* Ensure dropdown content is not always visible */
header .navigation .link .link__content {
  visibility: hidden;
}

header .header__menu-button {
  display: none;
  border: 0;
  background: transparent;
  color: white;
  cursor: pointer;
  position: relative;
  z-index: 52;
  padding: 0.5rem 0.75rem;
  border-radius: 0.75rem;
  font-size: 1.5rem;
}

header.is-collapsed .content nav.navigation {
  position: absolute;
  left: -9999px;
  top: -9999px;
  visibility: hidden;
  pointer-events: none;
}

header.is-collapsed .header__menu-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

header .header__drawer-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 50;
}

header .header__drawer {
  position: fixed;
  top: 0;
  right: 0;
  width: min(420px, 92vw);
  height: 100vh;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(8px);
  transform: translateX(100%);
  transition: transform 0.2s ease;
  z-index: 51;
  padding: 1.25rem 1rem;
  overflow: auto;
}

header.menu-open .header__drawer-overlay {
  opacity: 1;
  pointer-events: auto;
}

header.menu-open .header__drawer {
  transform: translateX(0);
}


header .navigation.navigation--drawer {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.25rem;
  overflow: visible;
  transition: .3s;
}

header .navigation.navigation--drawer .link {
  width: 100%;
  box-sizing: border-box;
  padding: 0.75rem 0.75rem;
  border-radius: 0.75rem;
  color: black;
}

header .navigation.navigation--drawer .link:hover {
  margin-bottom: 0;
  padding: 0.75rem;
  background-color: rgba(255, 255, 255, 0.75);
  box-shadow: none;
  color: black;
}

header .navigation.navigation--drawer .link.link--single a {
  color: black;
}

header .navigation.navigation--drawer .link.link--single:hover {
  border-radius: 0.75rem;
}

header .navigation.navigation--drawer .link__content {
  position: static;
  visibility: visible;
  background: transparent;
  box-shadow: none;
  padding: 0.5rem 0 0;
  border-radius: 0;
  display: none;
}

header .navigation.navigation--drawer {
  .link.open {
    background-color: rgba(256, 255, 255, 0.75);
    cursor: pointer;

    .link__content {
      width: unset;
      display: block;
    }
  }

  .link__heading {
    min-width: 0;
  }

  .link__subtitle {
    color: black;
  }

  .link__list {
    padding-left: 1rem;
    margin: 0.25rem 0 0;
    display: grid;
    gap: 1rem;

    a {
      color: black;
      font-weight: 600;
    }

    .link__item::marker {
      color: var(--active-pink);
    }
  }

  .link__item:hover a {
    color: white;
  }
}