Use an inline style on the <img> element to add a focal point to your responsive image, to stop subjects from being cropped on resize.
eg.  style="object-position: 60% 20%" would indicate the focal point is approximately 60% along the x-axis from the left, and 20% down the y-axis from the top.
Use srcset to serve smaller images to smaller screens, this is right at the top of the page, and will affect performance.
        
        <div class="masthead  masthead--shallow  masthead--no-bg">
    <div class="masthead__inner">
        <div class="wrap">
            <div class="title  js-waypoint">
                <h1 class="">
                    Professional training and development
                </h1>
            </div>
        </div>
    </div>
</div>
<div class="wrap">
    <nav class="breadcrumbs">
        <ul>
            <li>
                <a href="#">Home</a>
            </li>
            <li>
                <a href="#">Level 1</a>
            </li>
            <li>
                <a href="#">Level 2</a>
            </li>
        </ul>
    </nav>
</div>
        
    
        <div class="masthead  masthead--shallow  masthead--no-bg">
  <div class="masthead__inner">
    <div class="wrap">
      {% include '@title' with {
        text: 'Professional training and development',
        textElement: 'h1',
        animate: true
      } %}
    </div>
  </div>
</div>
<div class="wrap">
  {% include '@breadcrumbs' %}
</div>
    
                                .masthead {
  $overlay-breakpoint: $third-breakpoint + 10rem;
  background-color: $dark-blue;//$offwhite;
  box-sizing: border-box;
  position: relative;
  &--burgundy {
    background-color: $burgundy;
  }
  &--teal {
    background-color: $teal!important;
    background-image: url("../images/masthead-knot-lavender.svg");
    background-size: contain;
    @media (max-width: map_get($breakpoint-stages, 'tablet-wide')) {
      background-size: cover;
      background-position: calc(50% + 25rem) center;
    }
    background-repeat: no-repeat;
    background-position: right center;
  }
  &--grey {
    background-color: $grey-50-pc;
    & .title {
      color: $dark-blue!important;
    }
  }
  @media (min-width: map_get($breakpoint-stages, 'tablet-wide')) {
    &__img {
      margin-bottom: -$spacing-3xl;
    }
  }
  & .title {
    color: white;
    max-width: 30rem;
  }
  &__overlay {
    align-self: flex-end;
    align-content: flex-end;
    width: 100%;
    padding: $spacing-lg 0 0;
    box-sizing: border-box;
    background: black;
    color: white;
    z-index: 1;
    @media (min-width: $overlay-breakpoint) {
      background: none;
      padding: 0;
      margin-bottom: $spacing-lg;
      &Inner {
        margin: 0 -#{$grid-gutter};
        padding: $spacing-lg $grid-gutter 0;
        background: rgba(black, 0.75);
        @supports (backdrop-filter: blur(1em)) {
          background: rgba(black, 0.6);
          /*min-height: 340px;*/
        }
        backdrop-filter: blur(1em);
        & .meta--inline dd::before {
          display: none;
        }
      }
    }
  }
  .wrap {
    position: relative;
    align-self: flex-end;
    z-index: 0;
  }
  &--shallow {
    background: $grey-50-pc url('../images/masthead-shallow-bg.svg') no-repeat;
    background-size: cover;
    & .title {
      color: $dark-blue;
    }
    .masthead__inner {
      min-height: 20vh;
      padding-top: 8rem;
    }
  }
  &--course {
    background: $dark-blue;
    color: white;
    & h1, & h2, & h3, & h4, & h5, & h6 {
      color: $neon;
      padding-left: 0;
    }
    & .list--inline-bulleted li::before {
      color: inherit;
    }
  }
  &__award-type {
    color: white;
  }
  &__ucas-code strong {
    color: $neon;
    margin-right: $spacing-md;
  }
  &__course-info {
    display: flex;
  }
  @media (max-width: map_get($breakpoint-stages, 'tablet')) {
    &__course-info {
      flex-direction:column-reverse;
    }
    &__course-hero {
      margin-left: -$spacing-xl;
      margin-right: -$spacing-xl;
    }
  }
  @media (min-width: map_get($breakpoint-stages, 'tablet')) {
    &__course-info {  
      & > div {
        width: 50%;
      }
      & img {
        height: 100%;
        position: absolute;
        max-width: none;
        z-index: -1;
        @media(max-width: map_get($breakpoint-stages, 'tablet-wide')) {
          left: 40%;
        }
        @media(max-width: map_get($breakpoint-stages, 'desktop')) {
          left: 35%;
        }
        @media(max-width: map_get($breakpoint-stages, 'desktop-wide')) {
          left: 25%;
        }
        &.narrow-aspect {
          left: 50%;
        }
      }
    }
  }
  &__course-options {
    background:  $dark-blue;
    padding-right: $spacing-xl;
    & h2, & h3, & h4, & h5, & h6 {
      margin: $spacing-xs 0 $spacing-2xs 0;
    }
    & select.one-item, & select.one-item[disabled] {
      background: none;
      border: none;
      color: white;
      padding: 0;
      opacity: 1;
    }
  }
  @media (max-width: map_get($breakpoint-stages, 'mobile-wide')) {
    &--profile {
      .masthead__inner {
        padding: $spacing-6xl 0 $spacing-xl;
        figure {
          margin: 2rem 0 2rem;
        }
      }
    }
  }
  &__inner {
    display: flex;
    flex-wrap: wrap;
    min-height: 35vmin;
    padding: 12rem 0 $spacing-xl;
    align-self: flex-end;
    align-content: flex-end;
    width: 100%;
    position: relative;
    box-sizing: border-box;
    @media (min-width: $overlay-breakpoint) {
      position: static;
    }
  }
  &__bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    overflow: hidden;
    img {
      @supports (object-fit: cover) {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
        object-position: 60% 35%; // we're going to assume the image's focal point is roughly slightly-above-center right, but specify this as an inline style for each image
      }
    }
  }
  // CG: For home page masthead
  &-home {
    position: relative;
    background: $red url('../images/bg-knot-whole-blue.svg') center center no-repeat;
    background-size: 120%;
    background-repeat: no-repeat;
    min-height: 400px;
    @media (max-width: map_get($breakpoint-stages, 'mobile-wide')) {
      min-height: 500px;
    }
    &--dark-blue-with-red {
      background: $dark-blue url('../images/bg-knot-whole-red.svg') center center no-repeat;
      background-size: 120%;
      background-repeat: no-repeat;
    }
    &--dark-blue-with-neon {
      background: $dark-blue url('../images/bg-knot-whole-neon.svg') center center no-repeat;
      background-size: 120%;
      background-repeat: no-repeat;
    }
    &--neon-with-dark-blue {
      background: $neon url('../images/bg-knot-whole-blue.svg') center center no-repeat;
      background-size: 120%;
      background-repeat: no-repeat;
    }
    &__hero {
      padding-top: $spacing-lg;
      padding-bottom: $spacing-lg;
      overflow: hidden;
      & > img {
        padding-left: 25%;
        float: right;
      }
    }
    @media (max-width: map_get($breakpoint-stages, 'mobile-wide')) {
      .masthead-home__img {
        display: none;
      }
      .masthead-home__mobile {
        display: block;
      }
    }
    @media (min-width: map_get($breakpoint-stages, 'mobile-wide')) {
      .masthead-home__img {
        display: block;
      }
      .masthead-home__mobile {
        display: none;
      }
    }
    &__title.title {
      max-width: 30rem!important;
      @media (max-width: map_get($breakpoint-stages, 'mobile-wide')) {
        & h1 {
          font-size: 1.75rem;
        }
      }
      & > h1 {
        font-weight: 800;
      }
    }
    &__subtitle {
      max-width: 50rem!important;
      @media (max-width: map_get($breakpoint-stages, 'mobile-wide')) {
        margin-top: 10rem;
      }
      margin-bottom: $spacing-xl;
    }
    &__story {
      position: absolute;
      @media (max-width: map_get($breakpoint-stages, 'mobile-wide')) {
        top: $spacing-md;
      }
      z-index: 3;
      bottom: $spacing-md;
      margin-right: $spacing-lg;
    }
  }
  &__award-selector, &__study-option-selector {
    margin-bottom: $spacing-lg;
    width: auto;
    max-width: 100%;
  }
}
.masthead--with-image {
  & .masthead__inner {
    padding: 2rem 0 $spacing-xl;
  }
  & h1 {
    margin-top: 8rem;
  }
}
.card {
  & a.masthead__school-link {
    color: white;
    border-bottom: 1px solid white!important;
    &:hover {
      border-bottom: none!important;
      text-decoration: none;
    }
  }
}