html, body {
  overflow-y: scroll;
  overflow-x: hidden;
}

.hero {
  padding: 3rem 1.5rem;
  background-image: url("images/header-orig.jpg");
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: contain;
  background-position: center top;
  height: 30vh;
  color: white;
  margin-top: -1.6rem;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mobile-subtitle, .desktop-subtitle { margin: 2rem 0; }
.desktop-subtitle { display: none; }

.flex-parent {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.block { padding: 4rem 2rem 0 1rem; }

.img-block {
  max-width: 85%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.profile-pic img {
  max-height: 400px;
  margin-bottom: 1rem;
}

.pic-text-col {
  display: flex;
  justify-content: center;
}

.main-col-text {
  max-width: 75%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.who-help {
  padding: 4rem 1.5rem;
  background-color: lightblue;
  /* margin: 1rem; */
  margin-top: 4rem;
}

.call-me {
  /* background-color: lightblue; */
  padding: 1rem;
  margin-top: 4rem;
}

/* ------------------ MEDIA QUERIES ------------------ */

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) {
  .hero { height: 40vh; }
  .col-text-block { max-width: 85%; }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
  .hero { background-image: url("images/header.jpg"); height: 35vh; }

  .col-text-block { text-align: left; }
  .mobile-subtitle { display: none; }
  .desktop-subtitle { display: block; }
  .desktop-subtitle { text-align: left; }
  .img-block { justify-content: flex-end; }
  .main-col-text { justify-content: flex-start; }
}

 /* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
  /* .container, .container-sm, .container-md, .container-lg, .container-xl { max-width: 720px; } */

  .hero { height: 40vh; margin-top: -1.1rem; }

    .hero-text > h1 {
      font-size: 4rem;
      max-width: 960px;
      margin-left: auto;
      margin-right: auto;
      font-weight: bold;
      text-align: center;
    }
  }

 /* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
  .hero { height: 50vh; }
  .main-col-text { max-width: 800px; }
}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) {
  .hero { height: 60vh; }
}

/* Extra breakpoint for hero, not BS built-in */
@media (min-width: 1600px) {
  .hero { height: 70vh; }
}
