/* TODO: make responsive design properly */
@media (max-width: 48em) {
  /* 768px / 16px = 48em */
  :root {
    font-size: 75%;
  }

  section#landing .container,
  section#about .container,
  section#projects .container,
  section#contact .container {
    padding: 2rem 2rem;
  }

  section#landing .container {
    justify-content: space-between;
    height: 80vh;
  }

  section#landing .hero-content h1 {
    font-size: 3.5em;
    letter-spacing: 0.2rem;
    animation: fadeInUp 1s ease-in-out forwards;
  }

  section#landing .hero-content .asterisk-fat {
    max-width: 4rem;
  }

  section#about .container {
    padding-bottom: 4rem;
  }

  section#about .about-content {
    gap: 4rem;
    /* TODO: fix centering of about-content */
    padding: 0;
  }

  section#about .about-image-container {
    width: 100%;
  }

  section#about .about-description {
    gap: 4rem;
  }

  section#about .about-skills {
    padding: 0;
    gap: 3rem;
  }

  section#about .skills-category {
    gap: 1rem;
  }

  section#projects .projects-info {
    gap: 0.5rem;
  }

  section#projects .projects-name {
    padding: 0.4rem 1rem; /* pill look */
  }

  section#contact .container {
    gap: 10rem;
    justify-content: space-between;
    height: 80vh;
  }

  section#contact .contact-socials {
    flex-direction: column;
    gap: 1rem;
    font-size: 2rem;
  }

  section#contact .contact-socials footer {
    margin: 4rem 0 0 0;
    align-self: center;
  }
}

@media (min-width: 769px) and (max-width: 100em) {
  /* 1600px / 16px = 100em */
  :root {
    font-size: 65%;
  }

  section#about .about-image-container {
    width: 350px; /* FIXME: proper container sizing */
  }
}
