/*
* Scut, a collection of Sass utilities
* to ease and improve our implementations of common style-code patterns.
* v2.0.0
* Docs at http://ramseyinhouse.github.io/scut
*/
.sn_hero_home {
  position: relative;
  height: 85vh;
  height: calc(var(--vh, 1vh) * 85);
  height: 85dvh;
  min-height: 37.5rem;
  overflow: hidden;
}
@media only screen and (min-width: 62em) {
  .sn_hero_home {
    padding-bottom: 6.25rem;
  }
}
.sn_hero_home__content {
  height: 100%;
  padding: 3.125rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  transition: background-color 0.35s ease;
}
@media only screen and (min-width: 62em) {
  .sn_hero_home__content {
    align-items: end;
  }
}
.sn_hero_home__content .content {
  position: relative;
  z-index: 10;
  width: 100%;
}
.sn_hero_home__content .title {
  opacity: 0;
  transform: translateY(6.25rem);
  transition: transform 1s ease-in-out, opacity 1s ease-in-out;
  transition-delay: 1s;
}
.sn_hero_home__content .title {
  font-size: 3.125rem;
}
@media only screen and (min-width: 36em) {
  .sn_hero_home__content .title {
    font-size: 5.625rem;
  }
}
@media only screen and (min-width: 62em) {
  .sn_hero_home__content .title {
    font-size: 7.5rem;
  }
}
body.__window_loaded .sn_hero_home__content .title {
  opacity: 1;
  transform: translateY(0);
}
.sn_hero_home__content .subtitle {
  opacity: 0;
  transform: translateY(6.25rem);
  transition: transform 1s ease-in-out, opacity 1s ease-in-out;
}
.sn_hero_home__content .subtitle.__has_title {
  transform: translateY(0);
  transition-delay: 1.5s;
}
.sn_hero_home__content .subtitle svg-sprite {
  width: 3.125rem;
  height: 3.125rem;
  color: #e20714;
  vertical-align: middle;
}
body.__window_loaded .sn_hero_home__content .subtitle {
  opacity: 1;
  transform: translateY(0);
}
.sn_hero_home picture {
  position: absolute;
  transition: transform 1s ease-in-out;
  transition-delay: 1s;
}
.sn_hero_home picture.__left {
  top: 0;
  left: 0;
  transform: translateY(-100%);
  width: 100%;
  max-width: 18.75rem;
}
@media only screen and (min-width: 62em) {
  .sn_hero_home picture.__left {
    max-width: 34.375rem;
  }
}
.sn_hero_home picture.__right {
  bottom: 0;
  right: 0;
  transform: translateX(100%);
  width: 100%;
  max-width: 9.375rem;
}
@media only screen and (min-width: 62em) {
  .sn_hero_home picture.__right {
    max-width: 18.75rem;
  }
}
body.__window_loaded .sn_hero_home picture.__left {
  top: 0;
  transform: translateY(0);
}
body.__window_loaded .sn_hero_home picture.__right {
  right: 0;
  transform: translateX(0);
}
.sn_hero_home picture img {
  width: 100%;
  height: auto;
}