/* 

Homepage styling 

*/
.home .hero-img {
  position: absolute;
  width: 115vw;
  max-height: 40rem;
  left: -3vw;
  top: 6rem;
  z-index: 1;
  overflow: hidden;
}

.home .hero {
  position: relative;
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  height: calc(36rem + 10vw);
  max-width: var(--main-width);
  margin: 0 auto;
  padding: 4rem calc(var(--padding) * 2);
  z-index: 2;
}

.home .hero h1 {
  color: var(--color-blue-dark);
  font-size: 3.5rem;
  max-width: 24ch;
  line-height: 1.6ch;
}

.home .aanbod {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1 1fr 1fr;
}

.home .aanbod > div {
  display: flex;
  grid-row: 1;
  grid-column: 1 / 3;
  border-bottom: 1px solid var(--color-green);
  margin: 0 auto;
  margin-bottom: var(--padding);
  width: calc(100% - calc(var(--padding) * 4));
  max-width: calc(var(--main-width) - calc(var(--padding) * 4));
}

.home .aanbod h3 {
  background-color: var(--color-orange);
  display: flex;
  padding: 1rem 3rem;
  margin: 0;
  width: unset;
  border-radius: 3rem 3rem 0 0;
}

.home .aanbod article {
  --article-color: var(--color-blue);
  --article-background-color: var(--color-blue-dark);
  display: flex;
  justify-content: flex-end;
  background-color: var(--article-background-color);
}

.home .aanbod article:nth-child(odd) {
  --article-color: var(--color-green);
  --article-background-color: var(--color-green-dark);
  justify-content: flex-start;
}

.home .aanbod article p {
  color: var(--article-color);
}

.home .aanbod article > div {
  position: relative;
  padding: calc(var(--padding) * 4) calc(var(--padding) * 2);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3rem;
  max-width: calc(var(--main-width) / 2);
}

.home .aanbod article > div p {
  font-size: 1.2rem;
  font-weight: normal;
}

.home .aanbod article > div h2 {
  min-height: 3.5ch;
  font-size: 2.8rem;
  color: var(--color-background);
}

.home .aanbod article > div a {
  align-self: flex-end;
  position: absolute;
  bottom: 0;
  transform: translateY(50%);
  --button-background-color: var(--article-color);
  --button-color: var(--article-background-color);
}

@media only screen and (max-width: 50rem) {
  .home .aanbod article {
    grid-column: 1 / 3;
  }

  .home .aanbod article > div {
    max-width: 100%;
  }

  .home .aanbod article > div h2 {
    min-height: unset;
  }
}

.home .about {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin: calc(var(--padding) * 4) auto;
  gap: 2rem calc(var(--padding) * 4);
  margin-bottom: 0;
}

.home .about > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--padding);
}

@media only screen and (max-width: 80rem) {
  .home .about {
    gap: 2rem calc(var(--padding) * 2);
  }
}

@media only screen and (max-width: 50rem) {
  .home .about {
    gap: 8rem 0;
  }

  .home .about > div {
    grid-column: 1 / 3;
  }
}

.home .about > .photo blockquote {
  font-size: 2.4rem;
  color: var(--color-green-dark);
  text-align: right;
  margin-right: var(--padding);
  line-height: 1.9ch;
  font-weight: 500;
}

.home .about > .photo img {
  width: 100%;
  border-radius: 0 30rem 30rem 0;
}

.home .about > .info {
  position: relative;
  gap: 0;
}

.home .about > .info::after {
  content: "";
  position: absolute;
  left: -20rem;
  right: -10rem;
  top: -5rem;
  bottom: -5rem;
  outline: 1px solid var(--color-orange);
  border-radius: 50rem;
  z-index: -1;
}

.home .about > .info p:first-of-type {
  font-family: var(--font-headers);
  font-size: 1.3rem;
  color: var(--color-blue-dark);
  margin: 1rem 0 3rem;
}

.home .about > a {
  margin-left: auto;
  grid-column: 2 / 3;
  --button-background-color: var(--color-orange-dark);
  transform: translateY(40%);
}
