.promo {
  border-top: 5px solid #f2f2f2;
  padding-bottom: 2.5rem;
  padding-top: 2.5rem; }
  .promo__image {
    width: 100%;
    margin-bottom: 24px; }
    @media (min-width: 37.5em) {
      .promo__image {
        width: 50%;
        padding-right: 2.5rem; } }
    .promo__image a {
      background: #323232;
      margin-left: 1.25rem;
      margin-top: 1.25rem;
      position: relative;
      z-index: 1;
      background: none;
      display: block; }
      .promo__image a::after {
        border: 0.25rem solid #323232;
        content: "";
        height: calc(100% - (0.25rem * 2));
        left: -1.25rem;
        position: absolute;
        top: -1.25rem;
        width: calc(100% - (0.25rem * 2));
        z-index: -1; }
      @media (min-width: 37.5em) {
        .promo__image a {
          background: #323232;
          margin-left: 0.75rem;
          margin-top: 0.75rem;
          position: relative;
          z-index: 1; }
          .promo__image a::after {
            border: 0.25rem solid #323232;
            content: "";
            height: calc(100% - (0.25rem * 2));
            left: -0.75rem;
            position: absolute;
            top: -0.75rem;
            width: calc(100% - (0.25rem * 2));
            z-index: -1; } }
      @media (min-width: 55em) and (max-width: 61.9375em) {
        .promo__image a {
          background: #323232;
          margin-left: 1rem;
          margin-top: 1rem;
          position: relative;
          z-index: 1; }
          .promo__image a::after {
            border: 0.25rem solid #323232;
            content: "";
            height: calc(100% - (0.25rem * 2));
            left: -1rem;
            position: absolute;
            top: -1rem;
            width: calc(100% - (0.25rem * 2));
            z-index: -1; } }
      @media (min-width: 62em) and (max-width: 78.6875em) {
        .promo__image a {
          background: #323232;
          margin-left: 0.75rem;
          margin-top: 0.75rem;
          position: relative;
          z-index: 1; }
          .promo__image a::after {
            border: 0.25rem solid #323232;
            content: "";
            height: calc(100% - (0.25rem * 2));
            left: -0.75rem;
            position: absolute;
            top: -0.75rem;
            width: calc(100% - (0.25rem * 2));
            z-index: -1; } }
      @media (min-width: 78.75em) and (max-width: 94.9375em) {
        .promo__image a {
          background: #323232;
          margin-left: 1rem;
          margin-top: 1rem;
          position: relative;
          z-index: 1; }
          .promo__image a::after {
            border: 0.25rem solid #323232;
            content: "";
            height: calc(100% - (0.25rem * 2));
            left: -1rem;
            position: absolute;
            top: -1rem;
            width: calc(100% - (0.25rem * 2));
            z-index: -1; } }
      @media (min-width: 95em) {
        .promo__image a {
          background: #323232;
          margin-left: 1.25rem;
          margin-top: 1.25rem;
          position: relative;
          z-index: 1; }
          .promo__image a::after {
            border: 0.25rem solid #323232;
            content: "";
            height: calc(100% - (0.25rem * 2));
            left: -1.25rem;
            position: absolute;
            top: -1.25rem;
            width: calc(100% - (0.25rem * 2));
            z-index: -1; } }
      .promo__image a img {
        display: block;
        margin-left: 0;
        max-width: 100%;
        position: relative;
        width: 100%; }
      .promo__image a img {
        position: relative;
        z-index: 1; }
  .promo__title {
    text-transform: uppercase;
    margin-bottom: 0; }
  .promo--link {
    color: #323232; }
  @media (min-width: 37.5em) {
    .promo {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .promo__description {
        width: 50%;
        margin-left: auto; } }
