html, body {
  height: 100%;
}

body {
  background-color: #fec543;
  font-family: 'Roboto', sans-serif;
  display: flex;
  flex-direction: column;
}

h2 {
  font-size: 1.8rem;
}

header {
  img {
    max-width: 70%!important;
  }
}

.intro-section h2 {
  font-size: 2.5rem;
  text-shadow: 3px 2px 0px rgba(255, 255, 255, 0.8);
}

.intro-section p,
.intro-section ol {
  font-size: 1rem;
  font-weight: 500;
  color: #17214d;
}

.intro-section ol {
  padding-left: 1.25rem;
  line-height: 1.8;
}

.main {
  flex: 1 0 auto;
}

.form-section {
  background-color: #fff;
  padding: 2rem;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.form-section h2 {
  color: #17214d;
}

.btn {
  background-color: #17214d;
  color: #fff;
  border: none;
}

.btn:hover,
.btn:focus {
  background-color: #2a3a6d;
  color: #fff;
  border-color: #2a3a6d;
}

.footer {
  background-color: #17214d;
  color: #fff;
  padding: 1rem 0;
  flex-shrink: 0;
}

.footer p {
  margin: 0;
}

@media (max-width: 768px) {
  .intro-section h2 {
    font-size: 2rem;
  }

  .form-section {
    padding: 1.5rem;
  }
}

@media (max-width: 576px) {
  header{
    padding: 0 2rem;

    img {
      max-width: 100%!important;
    }
  }
  h2 {
    font-size: 1.75rem;
  }

  .intro-section h2 {
    font-size: 1.3rem;
  }

  .main {
    padding: 1rem 2.2rem!important;
  }

  .form-section {
    padding: 1rem;
  }
}