main {
  padding-top: 0;
}

.hero-section {
  min-height: 74vh;
}

.pillar-section {
  margin-bottom: 0;
}

.main-header {
  min-height: 55vh;
  margin-bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;

  background-image: url("../../static/blob-scatter.svg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.main-header-content {
  padding: 0 5vw;
  text-align: center;
}

.main-header h2 {
  font-size: 1.8em;
}

.sub-header {
  font-size: 1.4em;
  position: relative;
}

.pillar-section {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 100px 5vw;
}

.pillar-img img {
  max-width: 300px;
}

.pillars-links-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 80px;
  padding: 100px 5vw;
  min-height: 100vh;
  height: fit-content;
  margin-bottom: 0;
}

.footer-circles {
  height: 100px;
  transform: translateY(-180px);
}

.pillars-links-container div {
  z-index: 2;
  border-radius: 10px;
  width: 300px;
  min-height: 240px;

  background-color: white;
  padding: 10px;
  padding-top: 50px;

  box-shadow: 8px 8px 18px 0px rgba(0, 0, 0, 0.2);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  transition-duration: 0.4s;

  position: relative;
}

.pillars-links-container div::before {
  position: absolute;
  width: 90%;
  height: 100px;
  background-color: var(--green);
  top: -50px;
  left: 5%;
  border-radius: 20px;

  content: "BREATH";
  font-size: 30px;
  font-family: "Montserrat", sans-serif;
  line-height: 100px;
  font-weight: 600;
  color: white;
}

#pillar2::before {
  content: "NUTRITION";
  background-color: var(--blue);
}

#pillar3::before {
  content: "MOVEMENT";
}

#pillar4::before {
  content: "REGENERATION";
  background-color: var(--blue);
}

#pillar5::before {
  content: "EMOTIONS";
}

.pillars-links-container div:hover {
  --shadow: 1px 1px 1px 1px rgb(0 0 0 / 0.25);
  box-shadow: var(--shadow);
  cursor: pointer;
}

footer h2 {
  font-size: 1.4em;
  text-align: center;
}

footer p {
  text-align: center;
}

main p {
  text-align: left;
}

@media screen and (min-width: 540px) {
  .sub-header {
    font-size: 1.8em;
  }
}

@media screen and (min-width: 768px) {
  main p {
    text-align: justify;
  }

  .main-header {
    min-height: 100vh;
  }

  .sub-header {
    font-size: 2.2em;
  }

  .pillar-img img {
    max-width: 400px;
  }

  footer h2 {
    font-size: 1.8em;
  }
}

@media screen and (min-width: 992px) {
  .main-header-content {
    padding: 0 15vw;
    text-align: center;
  }

  .sub-header {
    font-size: 2.6em;
  }

  .courses-header {
    font-size: 1.6em;
  }

  .courses-header::before {
    top: -100%;
  }

  .training-section {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
  }

  footer h2 {
    font-size: 2em;
  }
}

@media screen and (min-width: 1060px) {
  .sub-header {
    margin-top: 200px;
    font-size: 2.8em;
  }

  .pillar-section {
    flex-direction: row;
  }

  .pillar-img img {
    max-width: 500px;
  }
}
