@layer components {
  section.sitemap {
    position: relative;
    padding-top: 2.5rem;
    background: var(--color-elk-blue-900);
    color: var(--color-base-50);

    .logo {
      display: block;
      margin: 0 auto;
      height: 64px;
      width: 64px;
    }

    a {
      color: var(--color-base-50);
      font-size: 1rem;
      line-height: 1.5;

      &:hover {
        text-decoration: underline;
      }
    }

    nav {
      max-width: 768px;
      margin-inline: auto;
      padding-inline: 1rem;
      display: grid;
      grid-template-columns: 1fr;
      gap: 2.5rem;
      padding-top: 4.75rem;
      padding-bottom: 4.6rem;
      position: relative;
      z-index: 1;
    }

    h2 {
      margin: 0 0 0.8rem 0;
      font-size: 1.25rem;
      line-height: 1.5rem;
      font-weight: 700;
      color: var(--color-base-50);
    }

    ul {
      list-style: none;
      padding-left: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
    }

    .wave-middle {
      position: absolute;
      left: 0;
      width: 100%;
      bottom: -1rem;
      border-radius: 0;
    }

    .trees {
      display: block;
      margin: 2rem auto 0 auto;
      border-radius: 0;
    }
  }

  @media (width >= 1024px) {
    section.sitemap {
      nav {
        display: flex;
        gap: 2rem;
        justify-content: space-between;
        align-items: flex-start;

        > * {
          flex: 0 0 auto;
        }
      }

      .trees {
        position: absolute;
        right: 20%;
        bottom: 0;
        margin: 0;
      }
    }
  }
}
