main {
  padding: 18vh 1.5rem 0;
  padding-top: 18svh;
}

.heading-logo {
  height: 4rem;
  max-width: 100%;
  object-fit: contain;
  margin-bottom: 1.5rem;
}

.logo-light {
  display: none;
}

body.light .logo-dark {
  display: none;
}

body.light .logo-light {
  display: block;
}

.tagline {
  max-width: 42.5rem;
  text-align: center;
  font-size: 1.375rem;
  line-height: 1.6;
  color: var(--text-muted);
}

@media (max-width: 768px) {
  main {
    padding: 15vh 1.5rem 0;
    padding-top: 15svh;
  }

  .heading-logo {
    height: 3rem;
  }

  .tagline {
    font-size: 1rem;
    padding: 0 0.5rem;
  }
}

@media (max-width: 480px) {
  .heading-logo {
    height: 2.5rem;
  }

  .tagline {
    font-size: 0.9rem;
  }
}
