/* Default promo and custom promo styles.
 * @todo: .paragraph.paragraph--type--promo should end up simplified once we no
 * longer set default .paragraph styles.
 */

.paragraph.paragraph--type--custom-promo,
.paragraph.paragraph--type--promo,
.paragraph--type--promo,
.paragraph--type--custom-promo {
  padding: 0;
  background: var(--base-white);
}

.paragraph.paragraph--type--promo > div,
.paragraph.paragraph--type--promo > p,
.paragraph.paragraph--type--promo > a,
.paragraph.paragraph--type--promo > h1,
.paragraph.paragraph--type--promo > h2,
.paragraph.paragraph--type--promo > h3,
.paragraph.paragraph--type--custom-promo > div,
.paragraph.paragraph--type--custom-promo > p,
.paragraph.paragraph--type--custom-promo > a,
.paragraph.paragraph--type--custom-promo > h1,
.paragraph.paragraph--type--custom-promo > h2,
.paragraph.paragraph--type--custom-promo > h3
.paragraph--type--promo > div,
.paragraph--type--promo > p,
.paragraph--type--promo > a,
.paragraph--type--promo > h1,
.paragraph--type--promo > h2,
.paragraph--type--promo > h3,
.paragraph--type--custom-promo > div,
.paragraph--type--custom-promo > p,
.paragraph--type--custom-promo > a,
.paragraph--type--custom-promo > h1,
.paragraph--type--custom-promo > h2,
.paragraph--type--custom-promo > h3 {
  padding-right: 20px;
  padding-left: 20px;
}

.paragraph.paragraph--type--promo > div:nth-child(2),
.paragraph.paragraph--type--promo > p:nth-child(2),
.paragraph.paragraph--type--promo > a:nth-child(2),
.paragraph.paragraph--type--promo > h1:nth-child(2),
.paragraph.paragraph--type--promo > h2:nth-child(2),
.paragraph.paragraph--type--promo > h3:nth-child(2),
.paragraph.paragraph--type--custom-promo > div:nth-child(2),
.paragraph.paragraph--type--custom-promo > p:nth-child(2),
.paragraph.paragraph--type--custom-promo > a:nth-child(2),
.paragraph.paragraph--type--custom-promo > h1:nth-child(2),
.paragraph.paragraph--type--custom-promo > h2:nth-child(2),
.paragraph.paragraph--type--custom-promo > h3:nth-child(2)
.paragraph--type--promo > div:nth-child(2),
.paragraph--type--promo > p:nth-child(2),
.paragraph--type--promo > a:nth-child(2),
.paragraph--type--promo > h1:nth-child(2),
.paragraph--type--promo > h2:nth-child(2),
.paragraph--type--promo > h3:nth-child(2),
.paragraph--type--custom-promo > div:nth-child(2),
.paragraph--type--custom-promo > p:nth-child(2),
.paragraph--type--custom-promo > a:nth-child(2),
.paragraph--type--custom-promo > h1:nth-child(2),
.paragraph--type--custom-promo > h2:nth-child(2),
.paragraph--type--custom-promo > h3:nth-child(2) {
  padding-top: 20px;
}

.paragraph.paragraph--type--promo > div:nth-child(1),
.paragraph.paragraph--type--promo > p:nth-child(1),
.paragraph.paragraph--type--promo > a:nth-child(1),
.paragraph.paragraph--type--promo > h1:nth-child(1),
.paragraph.paragraph--type--promo > h2:nth-child(1),
.paragraph.paragraph--type--promo > h3:nth-child(1),
.paragraph.paragraph--type--custom-promo > div:nth-child(1),
.paragraph.paragraph--type--custom-promo > p:nth-child(1),
.paragraph.paragraph--type--custom-promo > a:nth-child(1),
.paragraph.paragraph--type--custom-promo > h1:nth-child(1),
.paragraph.paragraph--type--custom-promo > h2:nth-child(1),
.paragraph.paragraph--type--custom-promo > h3:nth-child(1),
.paragraph--type--promo > div:nth-child(1),
.paragraph--type--promo > p:nth-child(1),
.paragraph--type--promo > a:nth-child(1),
.paragraph--type--promo > h1:nth-child(1),
.paragraph--type--promo > h2:nth-child(1),
.paragraph--type--promo > h3:nth-child(1),
.paragraph--type--custom-promo > div:nth-child(1),
.paragraph--type--custom-promo > p:nth-child(1),
.paragraph--type--custom-promo > a:nth-child(1),
.paragraph--type--custom-promo > h1:nth-child(1),
.paragraph--type--custom-promo > h2:nth-child(1),
.paragraph--type--custom-promo > h3:nth-child(1) {
  padding-right: 0;
  padding-left: 0;
}

.paragraph.paragraph--type--custom-promo:last-child
.paragraph.paragraph--type--promo:last-child,
.paragraph--type--promo:last-child,
.paragraph--type--custom-promo:last-child {
  padding-bottom: 20px;
}

.promo__content {
  padding: 30px 20px;
  background: var(--base-white);
  font-family: var(--font-primary);
}

/* Eyebrow */
.paragraph.paragraph--type--promo .eyebrow,
.paragraph--type--promo .eyebrow {
  margin: 0;
  color: var(--base-black);
  font-size: 13px;
  font-weight: var(--font-weight-bold);
  text-transform: uppercase;
  line-height: 1;
}

.paragraph.paragraph--type--promo .eyebrow + h3,
.paragraph--type--promo .eyebrow + h3 {
  margin: 10px 0 0;
}

/* Title */
.paragraph--type--custom-promo h3,
.field--name-field-promo-title,
.paragraph.paragraph--type--promo h3,
.paragraph--type--promo h3 {
  margin: 0;
  color: var(--base-black);
  font-family: var(--font-primary);
  font-size: 25px;
  font-stretch: normal;
  font-style: normal;
  font-weight: var(--font-weight-bold);
  letter-spacing: normal;
  line-height: 1.2;
}

/* Subtitle */
.paragraph.paragraph--type--promo h3 span,
.paragraph--type--promo h3 span,
.paragraph.paragraph--type--promo h4,
.paragraph--type--promo h4,
.paragraph--type--custom-promo .field--name-field-subtitle {
  margin: 0;
  color: var(--base-grey-5);
  font-family: var(--font-primary);
  font-size: 25px;
  font-stretch: normal;
  font-style: italic;
  font-weight: var(--font-weight-bold);
  letter-spacing: normal;
  line-height: 1.2;
}

.paragraph.paragraph--type--promo h3 + p,
.paragraph--type--promo h3 + p,
.paragraph.paragraph--type--promo h4 + p,
.paragraph--type--promo h4 + p,
.paragraph.paragraph--type--custom-promo h3 + p,
.paragraph--type--custom-promo h3 + p,
.paragraph.paragraph--type--custom-promo h4 + p,
.paragraph--type--custom-promo h4 + p,
.paragraph--type--custom-promo .field--name-field-subtitle + .field--name-field-promo-description {
  margin: 13px 0 0;
}

.paragraph--type--custom-promo p,
.paragraph.paragraph--type--promo p,
.paragraph--type--promo p {
  color: var(--base-black);
  font-size: 16px;
  font-weight: var(--font-weight-medium);
  line-height: 1.375;
}

.paragraph.paragraph--type--custom-promo .field--name-field-promo-description + .field--name-field-promo-cta,
.paragraph.paragraph--type--promo p + .promo-link,
.paragraph--type--promo p + .promo-link,
.paragraph--type--custom-promo .field--name-field-promo-description + .field--name-field-promo-cta {
  margin-top: 10px;
}

.field--name-field-promo-cta a,
.promo-link {
  display: inline-block;
  padding: 12px 9px;
  border-radius: 8px;
  border: 2px solid transparent;
  background: #fafafa;
  color: var(--base-grey-5);
  font-family: var(--font-primary);
  font-size: 16px;
  font-weight: var(--font-weight-semibold);
  line-height: 1.125;
}

.field--name-field-promo-cta a::after,
.field--name-field-promo-cta a::before,
.promo-link::after,
.promo-link::before {
  content: '';
  display: inline-block;
}

.paragraph .field--name-field-promo-cta a::after,
.field--name-field-promo-cta a::after,
.promo-link::after {
  width: 16px;
  height: 12px;
  margin: 0 0 0 9px;
  background-color: var(--base-grey-5);
  mask: url('../../images/icons/right-arrow.svg') no-repeat center;
  mask-size: contain;
}

.paragraph .field--name-field-promo-cta a::before,
.field--name-field-promo-cta a::before,
.promo-link::before {
  top: 1px;
  width: 15px;
  height: 15px;
  margin: 0 8px 0 0;
  padding: 0;
  background-color: var(--base-grey-5);
  mask: url('../../images/icons/globe.svg') no-repeat center;
}

.paragraph .field--name-field-promo-cta a + a,
.field--name-field-promo-cta a + a,
.promo-link + .promo-link {
  margin: 10px 0 0;
}

.paragraph .field--name-field-promo-cta a:focus,
.paragraph .field--name-field-promo-cta a:hover,
.paragraph .promo-link:focus,
.paragraph .promo-link:hover {
  border: 2px solid #bdbdbd;
  color: var(--base-grey-5);
}

.paragraph--type--custom-promo img,
.paragraph.paragraph--type--promo img,
.paragraph--type--promo img {
  display: block;
  width: 100%;
  font-family: 'object-fit: cover';
  object-fit: contain;
}

.paragraph .promo--image {
  margin: 0;
  padding: 0;
}

.paragraph .promo--image,
.field--name-field-promo-image {
  height: 385px;
  overflow: hidden;
}

@media (min-width: 1160px) {
  .paragraph .promo--image,
  .field--name-field-promo-image {
    height: 224px;
  }
}

.paragraph .promo--image img,
.field--name-field-promo-image img {
  width: 100%;
  height: auto;
}
