.page-index {
  background-image: linear-gradient(var(--color-base) 4px, transparent 4px);
  background-size: 8px 8px;

  .headline {
    padding: 1rem;
    font-family: var(--font-family-mono);

    header {
      display: flex;
      flex-direction: column;
      gap: 1rem;
      align-items: center;
      justify-content: center;
      text-align: center;
      max-width: 60rem;
      margin: 0 auto;
      font-weight: 500;

      h1 {
        font-size: 2rem;
        font-weight: 900;
        text-align: center;
      }
      h2 {
        font-size: 1.5rem;
        font-weight: 600;
      }

      @media (min-width: 64rem) {
        padding: 4rem;

        h1 { font-size: 3rem; }
        h2 { font-size: 2rem; }
      }
    }

    .badges {
      display: flex;
      gap: 1rem;
      justify-content: center;
      margin-top: 2rem;
    }
  }

  .page__content {
    margin-left: auto;
    font-size: 1.1rem;
    max-width: 70rem;
    line-height: 1.7;

    @media (min-width: 64rem) {
      font-size: 1.3rem;
    }
  }

  .footer {
    display: flex;
    padding: 4rem 2rem;
    border-top: 1px solid var(--color-base-darker);
    width: 100%;
    background: var(--color-base);

    & > div {
      align-items: center;
      display: flex;
      flex: 1;
      flex-direction: column;
      gap: 1rem;
      font-size: 1rem;
      letter-spacing: -0.01em;
      color: var(--color-gray-light);
      max-width: 100%;
    }
  }

  .btn-start {
    display: block;
    width: fit-content;
    margin: 3rem auto 2rem;
    text-decoration: none;
    font-family: monospace;
    font-weight: 700;
    background: var(--color-white);
    padding: 0.75rem 1.5rem;
    border: 2px solid var(--color-accent);
    border-radius: 8px;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    transition: all var(--transition-slow);
  }
  .btn-start:hover {
    background: var(--color-gray);
    color: var(--color-white);
    border-color: var(--color-white);
  }
}