.panel--promotion,
.panel--simple {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

.panel--promotion.blue, .panel--promotion.blue-caps,
.panel--simple.blue,
.panel--simple.blue-caps {
  background-color: #0056A8;
  color: #fff;
}

.panel--promotion.blue .h1, .panel--promotion.blue-caps .h1, .panel--promotion.blue .h2, .panel--promotion.blue-caps .h2, .panel--promotion.blue .h3, .panel--promotion.blue-caps .h3, .panel--promotion.blue .h4, .panel--promotion.blue-caps .h4, .panel--promotion.blue p, .panel--promotion.blue-caps p, .panel--promotion.blue .p1, .panel--promotion.blue-caps .p1, .panel--promotion.blue .p2, .panel--promotion.blue-caps .p2,
.panel--simple.blue .h1,
.panel--simple.blue-caps .h1,
.panel--simple.blue .h2,
.panel--simple.blue-caps .h2,
.panel--simple.blue .h3,
.panel--simple.blue-caps .h3,
.panel--simple.blue .h4,
.panel--simple.blue-caps .h4,
.panel--simple.blue p,
.panel--simple.blue-caps p,
.panel--simple.blue .p1,
.panel--simple.blue-caps .p1,
.panel--simple.blue .p2,
.panel--simple.blue-caps .p2 {
  color: #fff;
}

.panel--promotion.white,
.panel--simple.white {
  background-color: #fff;
  border: none;
}

.panel--promotion .panel, .panel--promotion .panel--activities, .panel--promotion .panel--legal, .panel--promotion .app-promo--simple, .panel--promotion .donate-promo, .panel--promotion .panel--enter-codes,
.panel--simple .panel,
.panel--simple .panel--activities,
.panel--simple .panel--legal,
.panel--simple .app-promo--simple,
.panel--simple .donate-promo,
.panel--simple .panel--enter-codes {
  position: relative;
}

@media screen and (min-width: 0) and (max-width: 48em) {
  .panel--promotion .panel__overlay,
  .panel--simple .panel__overlay {
    display: none;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion .panel__overlay,
  .panel--simple .panel__overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
  }
}

@media screen and (min-width: 0) and (max-width: 48em) {
  .panel--promotion .panel__background,
  .panel--simple .panel__background {
    position: relative;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion .panel__background,
  .panel--simple .panel__background {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
  }
}

.panel--promotion .panel__background.constrain,
.panel--simple .panel__background.constrain {
  left: auto;
  width: 100%;
  max-width: 1170px;
  margin: 0 auto;
}

.panel--promotion .panel__background--color,
.panel--simple .panel__background--color {
  position: absolute;
  top: 0;
  left: auto;
  height: 100%;
  width: 100%;
  max-width: 1170px;
  margin: 0 auto;
}

.panel--promotion .panel__background--color.white,
.panel--simple .panel__background--color.white {
  background-color: #fff;
}

.panel--promotion .panel__background--color.blue, .panel--promotion .panel__background--color.blue-caps,
.panel--simple .panel__background--color.blue,
.panel--simple .panel__background--color.blue-caps {
  background-color: #0056A8;
}

.panel--promotion .panel__background--color.light-blue,
.panel--simple .panel__background--color.light-blue {
  background-color: #00adef;
}

.panel--promotion .panel__background .background__picture,
.panel--simple .panel__background .background__picture {
  height: 100%;
  width: 100%;
  display: block;
}

.panel--promotion .panel__background .background__img,
.panel--simple .panel__background .background__img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.panel--promotion .panel__content,
.panel--simple .panel__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 0) and (max-width: 48em) {
  .panel--promotion .panel__content,
  .panel--simple .panel__content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-top: 24px;
    padding-bottom: 20px;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion .panel__content,
  .panel--simple .panel__content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    padding-top: 28px;
    padding-bottom: 37px;
  }
}

.panel--promotion .panel__content .aside,
.panel--simple .panel__content .aside {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}

@media screen and (min-width: 0) and (max-width: 48em) {
  .panel--promotion .panel__content .aside,
  .panel--simple .panel__content .aside {
    max-width: 100%;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion .panel__content .aside,
  .panel--simple .panel__content .aside {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 50%;
            flex: 1 0 50%;
    max-width: 50%;
  }
}

.panel--promotion .panel__content .aside__picture,
.panel--simple .panel__content .aside__picture {
  position: relative;
  display: block;
}

@media screen and (min-width: 0) and (max-width: 48em) {
  .panel--promotion .panel__content .aside__picture,
  .panel--simple .panel__content .aside__picture {
    margin-bottom: 26px;
  }
}

.panel--promotion .panel__content .aside__img,
.panel--simple .panel__content .aside__img {
  margin: 0 auto;
  display: block;
}

.panel--promotion .panel__content .content,
.panel--simple .panel__content .content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion .panel__content .content,
  .panel--simple .panel__content .content {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 50%;
            flex: 1 0 50%;
  }
}

.panel--promotion .panel__content .content > *,
.panel--simple .panel__content .content > * {
  max-width: 100%;
}

@media screen and (min-width: 0) and (max-width: 48em) {
  .panel--promotion .panel__content .content__image, .panel--promotion .panel__content .content__picture,
  .panel--simple .panel__content .content__image,
  .panel--simple .panel__content .content__picture {
    margin-bottom: 4px;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion .panel__content .content__image, .panel--promotion .panel__content .content__picture,
  .panel--simple .panel__content .content__image,
  .panel--simple .panel__content .content__picture {
    margin-bottom: 6px;
  }
}

.panel--promotion .panel__content .content__img,
.panel--simple .panel__content .content__img {
  margin: 0 auto;
  display: block;
}

@media screen and (min-width: 0) and (max-width: 48em) {
  .panel--promotion .panel__content .content__headline,
  .panel--simple .panel__content .content__headline {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion .panel__content .content__headline,
  .panel--simple .panel__content .content__headline {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 0) and (max-width: 48em) {
  .panel--promotion .panel__content .content__body,
  .panel--simple .panel__content .content__body {
    margin-bottom: 32px;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion .panel__content .content__body,
  .panel--simple .panel__content .content__body {
    margin-bottom: 44px;
  }
}

.panel--promotion .panel__content .content__cta,
.panel--simple .panel__content .content__cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (min-width: 0) and (max-width: 48em) {
  .panel--promotion .panel__content .content__cta,
  .panel--simple .panel__content .content__cta {
    margin-bottom: 18px;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion .panel__content .content__cta,
  .panel--simple .panel__content .content__cta {
    margin-bottom: 0;
  }
}

.panel--promotion .panel__content .content > *:last-child,
.panel--simple .panel__content .content > *:last-child {
  margin-bottom: 0;
}

.panel--promotion .panel__content .content.white > *,
.panel--simple .panel__content .content.white > * {
  color: #fff;
}

.panel--promotion .panel__content .content.blue .content__header, .panel--promotion .panel__content .content.blue-caps .content__header,
.panel--simple .panel__content .content.blue .content__header,
.panel--simple .panel__content .content.blue-caps .content__header {
  color: #0056A8 !important;
}

.panel--promotion .panel__disclaimer,
.panel--simple .panel__disclaimer {
  text-align: center;
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.left .panel__overlay,
  .panel--simple.left .panel__overlay {
    background: -webkit-gradient(linear, left top, right top, from(white), color-stop(70%, rgba(255, 255, 255, 0)));
    background: -o-linear-gradient(left, white 0%, rgba(255, 255, 255, 0) 70%);
    background: linear-gradient(90deg, white 0%, rgba(255, 255, 255, 0) 70%);
  }
}

.panel--promotion.left .panel__background .background__img,
.panel--simple.left .panel__background .background__img {
  -o-object-position: center;
     object-position: center;
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.left .panel__content .aside,
  .panel--simple.left .panel__content .aside {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

.panel--promotion.left .panel__content .aside.relative .aside__picture,
.panel--simple.left .panel__content .aside.relative .aside__picture {
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.left .panel__content .aside.absolute .aside__picture,
  .panel--simple.left .panel__content .aside.absolute .aside__picture {
    height: 100%;
    position: absolute;
    left: 0;
    display: block;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.left .panel__content .aside.absolute .aside__img,
  .panel--simple.left .panel__content .aside.absolute .aside__img {
    height: 100%;
    left: 0;
    position: absolute;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.left .panel__content .content,
  .panel--simple.left .panel__content .content {
    padding-right: 1.875em;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.left .panel__content .content.constrain,
  .panel--simple.left .panel__content .content.constrain {
    padding-left: 1.875em;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.right .panel__overlay,
  .panel--simple.right .panel__overlay {
    background: -webkit-gradient(linear, left top, right top, color-stop(30%, rgba(255, 255, 255, 0)), to(white));
    background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 30%, white 100%);
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 30%, white 100%);
  }
}

.panel--promotion.right .panel__background .background__img,
.panel--simple.right .panel__background .background__img {
  -o-object-position: center;
     object-position: center;
}

.panel--promotion.right .panel__content .aside.relative .aside__picture,
.panel--simple.right .panel__content .aside.relative .aside__picture {
  margin-left: auto;
  margin-right: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.right .panel__content .aside.absolute .aside__picture,
  .panel--simple.right .panel__content .aside.absolute .aside__picture {
    height: 100%;
    position: absolute;
    right: 0;
    display: block;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.right .panel__content .aside.absolute .aside__img,
  .panel--simple.right .panel__content .aside.absolute .aside__img {
    height: 100%;
    right: 0;
    position: absolute;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.right .panel__content .content,
  .panel--simple.right .panel__content .content {
    padding-left: 1.875em;
  }
}

@media screen and (min-width: 48.0625em) {
  .panel--promotion.right .panel__content .content.constrain,
  .panel--simple.right .panel__content .content.constrain {
    padding-right: 1.875em;
  }
}

.panel--promotion.remove-bottom-padding .panel__content,
.panel--simple.remove-bottom-padding .panel__content {
  padding-bottom: 0 !important;
}

.panel--promotion.remove-bottom-padding .panel__disclaimer,
.panel--simple.remove-bottom-padding .panel__disclaimer {
  position: absolute;
  bottom: 0;
}