.hero {
  background-color: #485557;
  display: block;
  min-height: 4rem;
  position: relative;
  z-index: 0; }
  .hero:before {
    background-image: url("/themes/custom/hco/images/bg-mountains.png");
    background-position: center;
    background-size: cover;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    opacity: 0.2;
    position: absolute;
    top: 0;
    width: 100%; }
  @media (min-width: 786px) {
    .hero {
      min-height: 6rem; } }
  @media (min-width: 1024px) {
    .hero {
      min-height: 12rem; } }
  @media (min-width: 1280px) {
    .hero {
      min-height: 14rem; } }

.hero__bg {
  position: relative; }
  .hero__bg img {
    width: 100%; }

.hero--extra-small {
    background-color: #ffffff !important;
}

.hero--extra-small:before {
    background-image: none !important;
    background-position: center;
    background-size: cover;
    content: "";
    display: block;
    height: 100%;
    left: 0;
    opacity: 0.2;
    position: absolute;
    top: 0;
    width: 100%; }

.hero__content {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: 0;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%; }
  .hero__content img {
    max-width: 65%; }
    @media (min-width: 786px) {
      .hero__content img {
        max-width: 45%; } }
  .hero--large .hero__content {
    padding-bottom: 2.5rem; }
    @media (min-width: 786px) {
      .hero--large .hero__content {
        padding-bottom: 3.75rem; } }
    @media (min-width: 1024px) {
      .hero--large .hero__content {
        padding-bottom: 7.5rem; } }
    @media (min-width: 1280px) {
      .hero--large .hero__content {
        padding-bottom: 8.75rem; } }
  .hero--featured .hero__content {
    padding-bottom: 1.875rem; }
    @media (min-width: 786px) {
      .hero--featured .hero__content {
        padding-bottom: 10rem; } }
    @media (min-width: 1024px) {
      .hero--featured .hero__content {
        padding-bottom: 16.25rem; } }
    @media (min-width: 1280px) {
      .hero--featured .hero__content {
        padding-bottom: 22.5rem; } }
  .hero--small .hero__content {
    padding-bottom: 1.25rem; }
    @media (min-width: 786px) {
      .hero--small .hero__content {
        padding-bottom: 1.875rem; } }
    @media (min-width: 1024px) {
      .hero--small .hero__content {
        padding-bottom: 3.75rem; } }
    @media (min-width: 1280px) {
      .hero--small .hero__content {
        padding-bottom: 4.375rem; } }

.hero__content--text {
  padding-left: 4em; }
  @media (max-width: 639px) {
    .hero__content--text {
      padding-left: 2em; } }

.hero__content-inner {
  max-width: 67%;
  position: relative;
  text-align: left; }

.hero__content-inner--has-icon {
  border-left: 1px solid rgba(211, 212, 214, 0.4);
  padding-left: 1.25em; }

.hero__title, .hero__subtitle {
  color: #fff;
  font-family: "freight-text-pro", serif;
  font-weight: 400;
  text-shadow: rgba(0, 0, 0, 0.6) 0 2px 4px; }

.hero__title {
  font-size: 1.675rem;
  font-style: italic; }
  @media (min-width: 786px) {
    .hero__title {
      font-size: 2.30625rem; } }
  @media (min-width: 1280px) {
    .hero__title {
      font-size: 3rem; } }
  @media (max-width: 639px) {
    .hero__title {
      font-size: 1.3125rem; } }

.hero__subtitle {
  font-size: 1.01875rem;
  line-height: 1.2;
  margin-bottom: 0; }
  @media (min-width: 786px) {
    .hero__subtitle {
      font-size: 1.04062rem; } }
  @media (min-width: 1280px) {
    .hero__subtitle {
      font-size: 1.125rem; } }
  @media (max-width: 639px) {
    .hero__subtitle {
      font-size: 0.75rem;
      display: none; } }

.hero__icon {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ff7200;
  border-radius: 50%;
  bottom: 0;
  -webkit-box-shadow: rgba(0, 0, 0, 0.5) 0 2px 4px;
          box-shadow: rgba(0, 0, 0, 0.5) 0 2px 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 2em;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  left: -3em;
  margin: auto;
  position: absolute;
  top: 0;
  width: 2em; }
  .hero__icon .icon {
    height: 70%;
    width: 70%; }
  .hero__icon use {
    fill: #fff; }
  .hero:hover .hero__icon,
  .hero:focus .hero__icon {
    background-color: #FE9D30; }
  @media (min-width: 786px) {
    .hero__icon {
      height: 3em;
      left: -4em;
      width: 3em; } }

.hero--top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .hero--top .hero__title {
    font-size: 2.2rem; }
    @media (min-width: 786px) {
      .hero--top .hero__title {
        font-size: 3.31875rem; } }
    @media (min-width: 1280px) {
      .hero--top .hero__title {
        font-size: 4.5rem; } }
  .hero--top .hero__content--text {
    padding-left: 0; }
  .hero--top .hero__content {
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    margin-left: auto;
    margin-right: auto;
    max-width: 26.25rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin: auto;
    right: 0; }
    .hero--top .hero__content:before, .hero--top .hero__content:after {
      content: " ";
      display: table; }
    .hero--top .hero__content:after {
      clear: both; }
    .hero--top .hero__content > .hero__content-inner {
      padding-left: 10px;
      padding-right: 10px;
      margin-bottom: 3.75rem;
      margin-top: auto;
      max-width: none; }
    @media (min-width: 786px) {
      .hero--top .hero__content {
        -webkit-box-sizing: content-box;
                box-sizing: content-box;
        margin-left: auto;
        margin-right: auto;
        max-width: 120rem;
        padding-left: 5.55556%;
        padding-right: 5.55556%; }
        .hero--top .hero__content > .hero__content-inner {
          margin-bottom: 7.5rem;
          width: 66.66667%; } }
    @media (min-width: 1024px) {
      .hero--top .hero__content {
        padding-left: 7.69231%;
        padding-right: 7.69231%; }
        .hero--top .hero__content > .hero__content-inner {
          margin-bottom: 11.25rem;
          width: 61.53846%; } }
    @media (min-width: 1280px) {
      .hero--top .hero__content {
        padding-left: 7.69231%;
        padding-right: 7.69231%; }
        .hero--top .hero__content > .hero__content-inner {
          margin-bottom: 13.875rem;
          margin-left: 7.69231%;
          padding-left: 0; } }

.hero--featured figure {
  margin-top: -6px; }

.hero_credit {
  padding: 1em; }
  .hero_credit h3 {
    font-size: 1.1em;
    font-weight: 600;
    margin: 0;
    padding: 0; }
  .hero_credit p {
    margin: 0;
    padding: 0;
    font-style: italic;
    font-size: 0.9em; }
