<section class="homepage_hero right">
    <div class="hero_text">
        <h2>This is Page Heading</h2>
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam.</p>
        <div class="hero-buttons">
            <a href="#" class="btn btn-primary dark-grey" role="button">
                <span class="button_text">Action Button</span>
                <span class="arrow fal fa-chevron-right"></span>
            </a>
        </div><!-- end hero-buttons -->
    </div><!-- end hero_text -->
    <div class="hero_img" style="background-image: url('/img/maxresdefault.jpg');"></div><!-- end hero_img -->
</section>
<section class="homepage_hero {{ align_text }}">
  <div class="hero_text">
    {% block headings %}
    <h2>{{ hero_heading }}</h2>
    {% endblock headings %}
    <p>{% block cms_override_text %}{{ hero_text }}{% endblock cms_override_text %}</p>
    <div class="hero-buttons">
    {% block hero_buttons %}
    {% for button in buttons %}
      {% include "@a_tag" with button only %}
    {% endfor %}
    {% endblock hero_buttons %}
    </div><!-- end hero-buttons -->
  </div><!-- end hero_text -->
  <div class="hero_img" style="background-image: url('{{ hero_img }}');"></div><!-- end hero_img -->
</section>
{
  "hero_img": "/img/maxresdefault.jpg",
  "hero_heading": "This is Page Heading",
  "hero_text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam.",
  "align_text": "right",
  "buttons": {
    "1": {
      "text": "Action Button",
      "url": "#",
      "color": "dark-grey"
    }
  }
}
  • Content:
    .homepage_hero {
      display: flex;
      flex-direction: column;
      margin: 0 0 $spacer 0;
    
      @include media-breakpoint-up(lg) {
        flex-direction: row;
        flex-wrap: nowrap;
        max-height: 600px;
        overflow: hidden;
      }
    
      .hero_text {
        order: 2;
        background-color: $grey_lightest;
        width: 100%;
        max-width: 100%;
        padding: $spacer;
        z-index: 100;
    
        .color-scheme-dark & {
          background-color: $dark_mode_grey;
        }
    
        @include media-breakpoint-up(lg) {
          max-width: 50%;
          padding: $space_two;
        }
    
        h3 {
          font-size: 1.875rem;
        }
    
        .hero-buttons {
          margin: 0;
        }
      }
    
      .hero_img {
        order: 1;
        aspect-ratio: 13 / 10;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        width: 100%;
    
        @include media-breakpoint-up(lg) {
          width: 50%;
        }
      }
    
      &.left {
        .hero_text {
          border-top: 3px solid $accent_color;
          border-top: 3px solid var(--accent_color, $accent_color);
    
          @include media-breakpoint-up(lg) {
            order: 1;
            border-top: 0;
            border-right: 3px solid $accent_color;
            border-right: 3px solid var(--accent_color, $accent_color);
          }
        }
    
        .hero_img {
          @include media-breakpoint-up(lg) {
            order: 2;
          }
        }
      }
    
      &.right {
        .hero_text {
          border-top: 3px solid $accent_color;
          border-top: 3px solid var(--accent_color, $accent_color);
    
          @include media-breakpoint-up(lg) {
            order: 2;
            border-top: 0;
            border-left: 3px solid $accent_color;
            border-left: 3px solid var(--accent_color, $accent_color);
          }
        }
    
        .hero_img {
          @include media-breakpoint-up(lg) {
            order: 1;
          }
        }
      }
    }
    
    .main-content {
      .homepage_hero {
        margin-top: $space_and_half;
        margin-bottom: $space_and_half;
      }
    }
    
  • URL: /components/raw/hero_homepage_image/hero_homepage_image.scss
  • Filesystem Path: bits/04-components/heros/hero_homepage_image/hero_homepage_image.scss
  • Size: 1.9 KB

Display homepage hero where image is 50% of the width along with the content. On a mobile display it becomes a stacked component.