/* Mobile-first adjustments */
body {
  font-size: 16px;
  line-height: 1.5;
}

/* Ensure images scale */
img {
  max-width: 100%;
  height: auto;
}

/* Case study cards stack on small screens */
.index-content .row {
  display: flex;
  flex-wrap: wrap;
}

.index-content .card {
  flex: 1 1 100%;
  margin: 10px 0;
}

/* Navbar collapses neatly */
#navbar .navbar-nav {
  display: flex;
  flex-direction: column;
  align-items: center;
}

footer {
  text-align: center;
}

/* Tablet breakpoint */
@media (min-width: 768px) {
  .index-content .card {
    flex: 1 1 calc(50% - 20px);
    margin: 10px;
  }

  #navbar .navbar-nav {
    flex-direction: row;
    justify-content: flex-end;
  }

  footer {
    display: flex;
    justify-content: space-between;
    text-align: left;
  }
}

/* Desktop breakpoint */
@media (min-width: 1200px) {
  .index-content .card {
    flex: 1 1 calc(33.333% - 20px);
  }

  .hero-content {
    position: absolute;
    top: 20%;
    left: 60px;
    right: 60px;
    text-align: center;
  }

  .hero-form {
    position: absolute;
    right: 60px;
    bottom: 115px;
    width: 300px;
  }
}
