.section-hero {
  min-height: 60vh;
  margin: 0;
  padding-top: 10em;
  display: flex;
  align-items: center;
}
.section-hero .background {
  position: absolute;
  inset: 0;
}
.section-hero .background:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 250px;
  background-image: linear-gradient(to bottom, var(--white) 50px, rgba(255, 255, 255, 0));
}
.section-hero .background img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
}
.section-hero .container {
  position: relative;
  z-index: 1;
}
.section-hero .container .content {
  max-width: 500px;
  color: var(--secondary);
}
.section-hero .container .content :is(h1, h2) {
  font-size: 4em;
}
.section-hero .container .content .buttons {
  margin-top: 30px;
}
.section-hero .container .content .breadcrumbs {
  display: none;
  font-size: 0.9em;
  margin-top: -30px;
}
.section-hero .container .content .breadcrumbs > svg {
  width: 20px;
  margin: 0 5px -4px 0;
}
.section-hero .container .content .breadcrumbs > svg path {
  fill: var(--secondary);
}
.section-hero .container .content .breadcrumbs a {
  display: inline-block;
  color: var(--secondary);
  font-weight: 400;
}
.section-hero .container .content .breadcrumbs span {
  display: inline-block;
  margin-left: 5px;
}
.section-hero .container .content .breadcrumbs span:last-child {
  display: none;
}

@media (max-width: 900px) {
  .section-hero {
    min-height: unset;
    padding-bottom: 2em;
  }
  .section-hero .container .content :is(h1, h2) {
    font-size: 3em !important;
  }
}
/*

Options > Background Shapes

*/
.section-hero[options~=background-shapes] {
  padding-bottom: 25em;
}
.section-hero[options~=background-shapes] .background:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 70vw;
  background-image: linear-gradient(to right, rgb(255, 255, 255), rgba(255, 255, 255, 0));
}
.section-hero[options~=background-shapes] img.background-shape {
  position: absolute;
  top: 40%;
  left: 0;
  width: 100vw;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.section-hero[options~=background-shapes] + section {
  margin-top: -10em;
}

@media (max-width: 1200px) {
  .section-hero[options~=background-shapes] {
    padding-bottom: 15em;
  }
}
@media (max-width: 1000px) {
  .section-hero[options~=background-shapes] {
    padding-bottom: 15em;
  }
}
@media (max-width: 800px) {
  .section-hero[options~=background-shapes] img.background-shape {
    top: 45%;
  }
}
@media (max-width: 700px) {
  .section-hero[options~=background-shapes] img.background-shape {
    top: 50%;
  }
}
@media (max-width: 600px) {
  .section-hero[options~=background-shapes] img.background-shape {
    width: 200vw;
    top: 35%;
  }
}
@media (max-width: 500px) {
  .section-hero[options~=background-shapes] img.background-shape {
    top: 42%;
  }
  .section-hero[options~=background-shapes] + section {
    margin-top: -18em;
  }
}
/*

Options > Header Black

*/
.section-hero[options~=header-black] :is(h1, h2) {
  color: var(--black);
}

/*

Options > Header White

*/
.section-hero[options~=header-white] :is(h1, h2) {
  color: var(--white);
}

/*

Options > Header Small

*/
.section-hero[options~=header-small] .container .content :is(h1, h2) {
  font-size: 3em;
}

/*

Options > Header Shadow

*/
.section-hero[options~=header-shadow] :is(h1, h2) {
  text-shadow: 0 0 30px rgb(255, 255, 255);
}
.section-hero[options~=header-shadow][options~=header-white] :is(h1, h2) {
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

/*

Post page defaults

*/
body.single-post .section-hero {
  min-height: unset;
  padding-top: unset;
  padding-bottom: unset;
}
body.single-post .section-hero .background {
  opacity: 1;
  height: 400px;
}
body.single-post .section-hero .container {
  margin-top: 150px;
}
body.single-post .section-hero .container .content {
  max-width: unset;
}
body.single-post .section-hero:has(.background) .container {
  margin-top: 450px;
}

body.single-post:has(.section-hero:first-child) .section-text:nth-child(2) {
  margin-top: 25px;
}

/*

Scroll Animations

*/
.section-hero .background:before {
  opacity: 0;
  transition: all 0.5s;
}
.section-hero .background:after {
  right: -50%;
  transition: all 0.5s;
  transition-delay: 0.5s;
}
.section-hero.scrolled-to .background:before {
  opacity: 1;
}
.section-hero.scrolled-to .background:after {
  right: 0;
}

@media (max-width: 1100px) {
  .section-hero .background {
    opacity: 0.25;
  }
}