.promo {
  position: relative; }
  .promo .media-image {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%; }
    @media (min-width: 55em) {
      .promo .media-image {
        padding-bottom: 20%; } }
    .promo .media-image img {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: auto;
      height: 100%;
      max-width: inherit; }
      @media (min-width: 55em) {
        .promo .media-image img {
          width: 100%;
          height: auto; } }

.promo__btn {
  margin-top: auto; }
  .promo__btn a {
    display: inline-block;
    text-decoration: none;
    text-transform: uppercase;
    margin-top: 2rem;
    padding: 0.5em 1em;
    transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
    background-color: #9b2743;
    border: 1px solid #9b2743;
    color: #FFF; }
    .promo__btn a:hover, .promo__btn a:focus {
      background-color: #FFF;
      color: #9b2743; }

.promo__title {
  font-family: 'Roboto', 'Arial', sans-serif;
  font-weight: 300;
  color: #36424a;
  margin-bottom: 1rem; }
  .promo__title {
    font-size: 1.75rem; }
    @media screen and (min-width: 20rem) {
      .promo__title {
        font-size: calc(1.75rem + 1.375 * ((100vw - 20rem) / 80)); } }
    @media screen and (min-width: 100rem) {
      .promo__title {
        font-size: 3.125rem; } }
  .promo--image-left .promo__title,
  .promo--image-right .promo__title {
    margin-top: 2rem;
    color: #36424a;
    text-align: center; }
    @media (min-width: 55em) {
      .promo--image-left .promo__title,
      .promo--image-right .promo__title {
        text-align: left; } }

.promo__content {
  font-family: 'Roboto', 'Arial', sans-serif;
  padding: 2rem;
  text-align: center;
  width: calc(100% - 4rem);
  margin: 0 auto;
  border-top: 9px solid #000; }
  .promo__content {
    font-size: 0.875rem; }
    @media screen and (min-width: 20rem) {
      .promo__content {
        font-size: calc(0.875rem + 0.375 * ((100vw - 20rem) / 80)); } }
    @media screen and (min-width: 100rem) {
      .promo__content {
        font-size: 1.25rem; } }
  @media (min-width: 55em) {
    .promo__content {
      width: 50%; } }
  .promo--image-left .promo__content,
  .promo--image-right .promo__content {
    background-color: #FFF;
    border-top: 0;
    width: auto;
    max-width: 850px;
    position: relative;
    padding: 0 2rem 2rem;
    margin: 0 0 2%;
    color: #000;
    transform: none;
    left: inherit;
    bottom: inherit;
    text-align: left;
    box-shadow: 3px 3px 2px rgba(0, 0, 0, 0.3);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column; }
    @media (min-width: 64em) {
      .promo--image-left .promo__content,
      .promo--image-right .promo__content {
        margin: 0 2rem 0 0;
        padding: 0 3.125rem 2rem; }
        .promo--image-left .promo__content::after,
        .promo--image-right .promo__content::after {
          width: calc(100% - 4rem); } }
    .promo--image-left .promo__content::after,
    .promo--image-right .promo__content::after {
      border-top: 9px solid #f0b310;
      content: '';
      width: calc(100% - 6.25rem);
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%); }
  .promo--image-right .promo__content {
    box-shadow: -3px 3px 2px rgba(0, 0, 0, 0.3); }
    @media (min-width: 55em) {
      .promo--image-right .promo__content {
        -ms-flex-order: 0;
        order: 0;
        margin-left: 2rem;
        margin-bottom: 0;
        margin-right: 0;
        padding: 0 2rem 4rem; } }
    @media (min-width: 64em) {
      .promo--image-right .promo__content {
        margin-bottom: 2%; } }

.promo--image-left.promo,
.promo--image-right.promo {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column; }
  @media (min-width: 55em) {
    .promo--image-left.promo,
    .promo--image-right.promo {
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-align: center;
      align-items: center; } }
  .promo--image-left.promo .media-image,
  .promo--image-right.promo .media-image {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%; }
    .promo--image-left.promo .media-image img,
    .promo--image-right.promo .media-image img {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 100%;
      height: auto;
      max-width: inherit; }
  .promo--image-left.promo .promo__image,
  .promo--image-left.promo .promo__content,
  .promo--image-right.promo .promo__image,
  .promo--image-right.promo .promo__content {
    -ms-flex: 1 1 50%;
    flex: 1 1 50%; }

@media (min-width: 55em) {
  .promo--image-right.promo .promo__image {
    -ms-flex-order: 1;
    order: 1; } }

.promo__image .media__video-embed .video-embed-field-provider-youtube {
  position: relative;
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%; }

.promo__image .media__video-embed iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%; }
