.cmp-base {
  padding-top: 72px;
  padding-bottom: 72px;
}
@media (max-width: 991px) {
  .cmp-base {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}
@media (max-width: 767px) {
  .cmp-base {
    padding-top: 48px;
    padding-bottom: 48px;
  }
}
.cmp-base.padding-top--small {
  padding-top: 40px;
}
@media (max-width: 991px) {
  .cmp-base.padding-top--small {
    padding-top: 32px;
  }
}
@media (max-width: 767px) {
  .cmp-base.padding-top--small {
    padding-top: 24px;
  }
}
.cmp-base.padding-bottom--small {
  padding-bottom: 40px;
}
@media (max-width: 991px) {
  .cmp-base.padding-bottom--small {
    padding-bottom: 32px;
  }
}
@media (max-width: 767px) {
  .cmp-base.padding-bottom--small {
    padding-bottom: 24px;
  }
}
.cmp-base.padding-top--none {
  padding-top: 0;
}
@media (max-width: 991px) {
  .cmp-base.padding-top--none {
    padding-top: 0;
  }
}
@media (max-width: 767px) {
  .cmp-base.padding-top--none {
    padding-top: 0;
  }
}
.cmp-base.padding-bottom--none {
  padding-bottom: 0;
}
@media (max-width: 991px) {
  .cmp-base.padding-bottom--none {
    padding-bottom: 0;
  }
}
@media (max-width: 767px) {
  .cmp-base.padding-bottom--none {
    padding-bottom: 0;
  }
}
.button {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  /*REMOVE this as it is better to define size at component level */
  width: fit-content;
  gap: 8px;
  background-clip: padding-box;
  text-decoration: none;
  border-radius: 8px;
  font-family: "Amadeus-Medium";
  font-weight: 500;
  line-height: 150%;
}
.button.primary {
  background-color: #0c66e1;
  color: #ffffff;
  border: 2px solid transparent;
}
.button.primary.outline {
  background-color: transparent;
  border-color: #0c66e1;
  color: #0c66e1;
}
.button.primary:hover {
  border-color: transparent;
  color: #ffffff;
  background-color: #0a2f62;
}
.button.primary:focus-visible {
  color: #ffffff;
  background-color: #0a2f62;
  border-color: transparent;
  outline: 2px solid #0a2f62;
}
.button.primary:active {
  outline: none;
  border-color: transparent;
  color: #ffffff;
  background-color: #000835;
}
.button.primary.ghost {
  color: #0c66e1;
  background-color: transparent;
  border-color: transparent;
  padding-left: 0;
  padding-right: 0;
}
.button.primary.ghost .button__label {
  position: relative;
}
.button.primary.ghost .button__label:after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 0;
  transition: width 400ms;
  height: 1px;
  background-color: #0c66e1;
}
.button.primary.ghost:hover {
  border-color: transparent;
  color: #0c66e1;
  background-color: transparent;
}
.button.primary.ghost:hover .button__label::after {
  width: 100%;
}
.button.primary.ghost:active {
  border-color: transparent;
  background-color: #ebf3ff;
  color: #000835;
}
.button.primary.ghost:focus-visible {
  outline: none;
  background-color: transparent;
  border-color: #0c66e1;
  color: #0c66e1;
}
.button__icon {
  font-size: 24px;
  margin-bottom: 0;
}
.button {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  /*REMOVE this as it is better to define size at component level */
  width: fit-content;
  gap: 8px;
  background-clip: padding-box;
  text-decoration: none;
  border-radius: 8px;
  font-family: "Amadeus-Medium";
  font-weight: 500;
  line-height: 150%;
}
.button.dark {
  background-color: #000835;
  color: #ffffff;
  border: 2px solid transparent;
}
.button.dark.outline {
  background-color: transparent;
  border-color: #000835;
  color: #000835;
}
.button.dark:hover {
  border-color: transparent;
  color: #ffffff;
  background-color: #0a2f62;
}
.button.dark:focus-visible {
  color: #ffffff;
  background-color: #0a2f62;
  border-color: transparent;
  outline: 2px solid #0a2f62;
}
.button.dark:active {
  outline: none;
  border-color: transparent;
  color: #ffffff;
  background-color: #104ea4;
}
.button.dark.ghost {
  color: #000835;
  background-color: transparent;
  border-color: transparent;
  padding-left: 0;
  padding-right: 0;
}
.button.dark.ghost .button__label {
  position: relative;
}
.button.dark.ghost .button__label:after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 0;
  transition: width 400ms;
  height: 1px;
  background-color: #000835;
}
.button.dark.ghost:hover {
  border-color: transparent;
  color: #000835;
  background-color: transparent;
}
.button.dark.ghost:hover .button__label::after {
  width: 100%;
}
.button.dark.ghost:active {
  border-color: transparent;
  background-color: #ebf3ff;
  color: #000835;
}
.button.dark.ghost:focus-visible {
  outline: none;
  background-color: transparent;
  border-color: #000835;
  color: #000835;
}
.button__icon {
  font-size: 24px;
  margin-bottom: 0;
}
.button {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  /*REMOVE this as it is better to define size at component level */
  width: fit-content;
  gap: 8px;
  background-clip: padding-box;
  text-decoration: none;
  border-radius: 8px;
  font-family: "Amadeus-Medium";
  font-weight: 500;
  line-height: 150%;
}
.button.inverse {
  background-color: #ebf3ff;
  color: #000835;
  border: 2px solid transparent;
}
.button.inverse.outline {
  background-color: transparent;
  border-color: #ebf3ff;
  color: #ebf3ff;
}
.button.inverse:hover {
  border-color: transparent;
  color: #ffffff;
  background-color: #9fc6ff;
}
.button.inverse:focus-visible {
  color: #ffffff;
  background-color: #9fc6ff;
  border-color: transparent;
  outline: 2px solid #9fc6ff;
}
.button.inverse:active {
  outline: none;
  border-color: transparent;
  color: #ffffff;
  background-color: #61a2ff;
}
.button.inverse.ghost {
  color: #ebf3ff;
  background-color: transparent;
  border-color: transparent;
  padding-left: 0;
  padding-right: 0;
}
.button.inverse.ghost .button__label {
  position: relative;
}
.button.inverse.ghost .button__label:after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 0;
  transition: width 400ms;
  height: 1px;
  background-color: #ebf3ff;
}
.button.inverse.ghost:hover {
  border-color: transparent;
  color: #ebf3ff;
  background-color: transparent;
}
.button.inverse.ghost:hover .button__label::after {
  width: 100%;
}
.button.inverse.ghost:active {
  border-color: transparent;
  background-color: #ebf3ff;
  color: #000835;
}
.button.inverse.ghost:focus-visible {
  outline: none;
  background-color: transparent;
  border-color: #9fc6ff;
  color: #ebf3ff;
}
.button__icon {
  font-size: 24px;
  margin-bottom: 0;
}
.button.big {
  padding: 16px;
  font-size: 22px;
}
.button.small {
  padding: 10px 16px;
  font-size: 18px;
}
.banner .button {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  /*REMOVE this as it is better to define size at component level */
  width: fit-content;
  gap: 8px;
  background-clip: padding-box;
  text-decoration: none;
  border-radius: 8px;
  font-family: "Amadeus-Medium";
  font-weight: 500;
  line-height: 150%;
}
.banner .button.primary {
  background-color: #0c66e1;
  color: #ffffff;
  border: 2px solid transparent;
}
.banner .button.primary.outline {
  background-color: transparent;
  border-color: #0c66e1;
  color: #0c66e1;
}
.banner .button.primary:hover {
  border-color: transparent;
  color: #ffffff;
  background-color: #0a2f62;
}
.banner .button.primary:focus-visible {
  color: #ffffff;
  background-color: #0a2f62;
  border-color: transparent;
  outline: 2px solid #0a2f62;
}
.banner .button.primary:active {
  outline: none;
  border-color: transparent;
  color: #ffffff;
  background-color: #000835;
}
.banner .button.primary.ghost {
  color: #0c66e1;
  background-color: transparent;
  border-color: transparent;
  padding-left: 0;
  padding-right: 0;
}
.banner .button.primary.ghost .button__label {
  position: relative;
}
.banner .button.primary.ghost .button__label:after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 0;
  transition: width 400ms;
  height: 1px;
  background-color: #0c66e1;
}
.banner .button.primary.ghost:hover {
  border-color: transparent;
  color: #0c66e1;
  background-color: transparent;
}
.banner .button.primary.ghost:hover .button__label::after {
  width: 100%;
}
.banner .button.primary.ghost:active {
  border-color: transparent;
  background-color: #ebf3ff;
  color: #000835;
}
.banner .button.primary.ghost:focus-visible {
  outline: none;
  background-color: transparent;
  border-color: #0c66e1;
  color: #0c66e1;
}
.banner .button__icon {
  font-size: 24px;
  margin-bottom: 0;
}
.banner .button {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  /*REMOVE this as it is better to define size at component level */
  width: fit-content;
  gap: 8px;
  background-clip: padding-box;
  text-decoration: none;
  border-radius: 8px;
  font-family: "Amadeus-Medium";
  font-weight: 500;
  line-height: 150%;
}
.banner .button.dark {
  background-color: #000835;
  color: #ffffff;
  border: 2px solid transparent;
}
.banner .button.dark.outline {
  background-color: transparent;
  border-color: #000835;
  color: #000835;
}
.banner .button.dark:hover {
  border-color: transparent;
  color: #ffffff;
  background-color: #0a2f62;
}
.banner .button.dark:focus-visible {
  color: #ffffff;
  background-color: #0a2f62;
  border-color: transparent;
  outline: 2px solid #0a2f62;
}
.banner .button.dark:active {
  outline: none;
  border-color: transparent;
  color: #ffffff;
  background-color: #104ea4;
}
.banner .button.dark.ghost {
  color: #000835;
  background-color: transparent;
  border-color: transparent;
  padding-left: 0;
  padding-right: 0;
}
.banner .button.dark.ghost .button__label {
  position: relative;
}
.banner .button.dark.ghost .button__label:after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 0;
  transition: width 400ms;
  height: 1px;
  background-color: #000835;
}
.banner .button.dark.ghost:hover {
  border-color: transparent;
  color: #000835;
  background-color: transparent;
}
.banner .button.dark.ghost:hover .button__label::after {
  width: 100%;
}
.banner .button.dark.ghost:active {
  border-color: transparent;
  background-color: #ebf3ff;
  color: #000835;
}
.banner .button.dark.ghost:focus-visible {
  outline: none;
  background-color: transparent;
  border-color: #000835;
  color: #000835;
}
.banner .button__icon {
  font-size: 24px;
  margin-bottom: 0;
}
.banner .button {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  /*REMOVE this as it is better to define size at component level */
  width: fit-content;
  gap: 8px;
  background-clip: padding-box;
  text-decoration: none;
  border-radius: 8px;
  font-family: "Amadeus-Medium";
  font-weight: 500;
  line-height: 150%;
}
.banner .button.inverse {
  background-color: #ebf3ff;
  color: #000835;
  border: 2px solid transparent;
}
.banner .button.inverse.outline {
  background-color: transparent;
  border-color: #ebf3ff;
  color: #ebf3ff;
}
.banner .button.inverse:hover {
  border-color: transparent;
  color: #ffffff;
  background-color: #9fc6ff;
}
.banner .button.inverse:focus-visible {
  color: #ffffff;
  background-color: #9fc6ff;
  border-color: transparent;
  outline: 2px solid #9fc6ff;
}
.banner .button.inverse:active {
  outline: none;
  border-color: transparent;
  color: #ffffff;
  background-color: #61a2ff;
}
.banner .button.inverse.ghost {
  color: #ebf3ff;
  background-color: transparent;
  border-color: transparent;
  padding-left: 0;
  padding-right: 0;
}
.banner .button.inverse.ghost .button__label {
  position: relative;
}
.banner .button.inverse.ghost .button__label:after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 0;
  transition: width 400ms;
  height: 1px;
  background-color: #ebf3ff;
}
.banner .button.inverse.ghost:hover {
  border-color: transparent;
  color: #ebf3ff;
  background-color: transparent;
}
.banner .button.inverse.ghost:hover .button__label::after {
  width: 100%;
}
.banner .button.inverse.ghost:active {
  border-color: transparent;
  background-color: #ebf3ff;
  color: #000835;
}
.banner .button.inverse.ghost:focus-visible {
  outline: none;
  background-color: transparent;
  border-color: #9fc6ff;
  color: #ebf3ff;
}
.banner .button__icon {
  font-size: 24px;
  margin-bottom: 0;
}
.banner.color--sky  .button {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  background-clip: padding-box !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  line-height: 150% !important;
  background-color: #ebf3ff !important;
  color: #000835 !important;
  border: 2px solid transparent !important;
}
.banner.color--sky  .button.outline {
  background-color: transparent !important;
  border-color: #ebf3ff !important;
  color: #ebf3ff !important;
}
.banner.color--sky  .button:hover {
  border-color: transparent !important;
  color: #000835 !important;
  background-color: #9fc6ff !important;
}
.banner.color--sky  .button:focus-visible {
  color: #000835 !important;
  background-color: #9fc6ff !important;
  border-color: transparent !important;
  outline: 2px solid #9fc6ff !important;
}
.banner.color--sky  .button:active {
  outline: none !important;
  border-color: transparent !important;
  color: #ffffff !important;
  background-color: #61a2ff !important;
}
.banner.color--sky  .button.ghost {
  color: #ebf3ff !important;
  background-color: transparent !important;
  border-color: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.banner.color--sky  .button.ghost .button__label {
  position: relative !important;
}
.banner.color--sky  .button.ghost .button__label:after {
  position: absolute !important;
  content: '' !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  transition: width 400ms !important;
  height: 1px !important;
  background-color: #ebf3ff !important;
}
.banner.color--sky  .button.ghost:hover {
  border-color: transparent !important;
  color: #ebf3ff !important;
  background-color: transparent !important;
}
.banner.color--sky  .button.ghost:hover .button__label::after {
  width: 100% !important;
}
.banner.color--sky  .button.ghost:focus-visible {
  outline: none !important;
  background-color: transparent !important;
  border-color: #9fc6ff !important;
  color: #ebf3ff !important;
}
.banner.color--sky  .button.ghost:active {
  border-color: transparent !important;
  background-color: #ebf3ff !important;
  color: #000835 !important;
}
.banner.color--sky  .button__icon {
  font-size: 24px !important;
  margin-bottom: 0 !important;
}
.banner.color--violet  .button {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  background-clip: padding-box !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  line-height: 150% !important;
  background-color: #f8eeff !important;
  color: #26005a !important;
  border: 2px solid transparent !important;
}
.banner.color--violet  .button.outline {
  background-color: transparent !important;
  border-color: #f8eeff !important;
  color: #f8eeff !important;
}
.banner.color--violet  .button:hover {
  border-color: transparent !important;
  color: #26005a !important;
  background-color: #d396ff !important;
}
.banner.color--violet  .button:focus-visible {
  color: #26005a !important;
  background-color: #d396ff !important;
  border-color: transparent !important;
  outline: 2px solid #d396ff !important;
}
.banner.color--violet  .button:active {
  outline: none !important;
  border-color: transparent !important;
  color: #ffffff !important;
  background-color: #c573ff !important;
}
.banner.color--violet  .button.ghost {
  color: #f8eeff !important;
  background-color: transparent !important;
  border-color: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.banner.color--violet  .button.ghost .button__label {
  position: relative !important;
}
.banner.color--violet  .button.ghost .button__label:after {
  position: absolute !important;
  content: '' !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  transition: width 400ms !important;
  height: 1px !important;
  background-color: #f8eeff !important;
}
.banner.color--violet  .button.ghost:hover {
  border-color: transparent !important;
  color: #f8eeff !important;
  background-color: transparent !important;
}
.banner.color--violet  .button.ghost:hover .button__label::after {
  width: 100% !important;
}
.banner.color--violet  .button.ghost:focus-visible {
  outline: none !important;
  background-color: transparent !important;
  border-color: #d396ff !important;
  color: #f8eeff !important;
}
.banner.color--violet  .button.ghost:active {
  border-color: transparent !important;
  background-color: #f8eeff !important;
  color: #26005a !important;
}
.banner.color--violet  .button__icon {
  font-size: 24px !important;
  margin-bottom: 0 !important;
}
.banner.color--crimson  .button {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  background-clip: padding-box !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  line-height: 150% !important;
  background-color: #ffeeed !important;
  color: #560900 !important;
  border: 2px solid transparent !important;
}
.banner.color--crimson  .button.outline {
  background-color: transparent !important;
  border-color: #ffeeed !important;
  color: #ffeeed !important;
}
.banner.color--crimson  .button:hover {
  border-color: transparent !important;
  color: #560900 !important;
  background-color: #ff9794 !important;
}
.banner.color--crimson  .button:focus-visible {
  color: #560900 !important;
  background-color: #ff9794 !important;
  border-color: transparent !important;
  outline: 2px solid #ff9794 !important;
}
.banner.color--crimson  .button:active {
  outline: none !important;
  border-color: transparent !important;
  color: #ffffff !important;
  background-color: #ff7471 !important;
}
.banner.color--crimson  .button.ghost {
  color: #ffeeed !important;
  background-color: transparent !important;
  border-color: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.banner.color--crimson  .button.ghost .button__label {
  position: relative !important;
}
.banner.color--crimson  .button.ghost .button__label:after {
  position: absolute !important;
  content: '' !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  transition: width 400ms !important;
  height: 1px !important;
  background-color: #ffeeed !important;
}
.banner.color--crimson  .button.ghost:hover {
  border-color: transparent !important;
  color: #ffeeed !important;
  background-color: transparent !important;
}
.banner.color--crimson  .button.ghost:hover .button__label::after {
  width: 100% !important;
}
.banner.color--crimson  .button.ghost:focus-visible {
  outline: none !important;
  background-color: transparent !important;
  border-color: #ff9794 !important;
  color: #ffeeed !important;
}
.banner.color--crimson  .button.ghost:active {
  border-color: transparent !important;
  background-color: #ffeeed !important;
  color: #560900 !important;
}
.banner.color--crimson  .button__icon {
  font-size: 24px !important;
  margin-bottom: 0 !important;
}
.banner.color--forest  .button {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  background-clip: padding-box !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  line-height: 150% !important;
  background-color: #f0ffec !important;
  color: #023a00 !important;
  border: 2px solid transparent !important;
}
.banner.color--forest  .button.outline {
  background-color: transparent !important;
  border-color: #f0ffec !important;
  color: #f0ffec !important;
}
.banner.color--forest  .button:hover {
  border-color: transparent !important;
  color: #023a00 !important;
  background-color: #beffab !important;
}
.banner.color--forest  .button:focus-visible {
  color: #023a00 !important;
  background-color: #beffab !important;
  border-color: transparent !important;
  outline: 2px solid #beffab !important;
}
.banner.color--forest  .button:active {
  outline: none !important;
  border-color: transparent !important;
  color: #ffffff !important;
  background-color: #a8ff8f !important;
}
.banner.color--forest  .button.ghost {
  color: #f0ffec !important;
  background-color: transparent !important;
  border-color: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.banner.color--forest  .button.ghost .button__label {
  position: relative !important;
}
.banner.color--forest  .button.ghost .button__label:after {
  position: absolute !important;
  content: '' !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  transition: width 400ms !important;
  height: 1px !important;
  background-color: #f0ffec !important;
}
.banner.color--forest  .button.ghost:hover {
  border-color: transparent !important;
  color: #f0ffec !important;
  background-color: transparent !important;
}
.banner.color--forest  .button.ghost:hover .button__label::after {
  width: 100% !important;
}
.banner.color--forest  .button.ghost:focus-visible {
  outline: none !important;
  background-color: transparent !important;
  border-color: #beffab !important;
  color: #f0ffec !important;
}
.banner.color--forest  .button.ghost:active {
  border-color: transparent !important;
  background-color: #f0ffec !important;
  color: #023a00 !important;
}
.banner.color--forest  .button__icon {
  font-size: 24px !important;
  margin-bottom: 0 !important;
}
.banner.color--canary  .button {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  background-clip: padding-box !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  line-height: 150% !important;
  background-color: #fffce6 !important;
  color: #564a00 !important;
  border: 2px solid transparent !important;
}
.banner.color--canary  .button.outline {
  background-color: transparent !important;
  border-color: #fffce6 !important;
  color: #fffce6 !important;
}
.banner.color--canary  .button:hover {
  border-color: transparent !important;
  color: #564a00 !important;
  background-color: #fdf092 !important;
}
.banner.color--canary  .button:focus-visible {
  color: #564a00 !important;
  background-color: #fdf092 !important;
  border-color: transparent !important;
  outline: 2px solid #fdf092 !important;
}
.banner.color--canary  .button:active {
  outline: none !important;
  border-color: transparent !important;
  color: #ffffff !important;
  background-color: #fdeb6d !important;
}
.banner.color--canary  .button.ghost {
  color: #fffce6 !important;
  background-color: transparent !important;
  border-color: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.banner.color--canary  .button.ghost .button__label {
  position: relative !important;
}
.banner.color--canary  .button.ghost .button__label:after {
  position: absolute !important;
  content: '' !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  transition: width 400ms !important;
  height: 1px !important;
  background-color: #fffce6 !important;
}
.banner.color--canary  .button.ghost:hover {
  border-color: transparent !important;
  color: #fffce6 !important;
  background-color: transparent !important;
}
.banner.color--canary  .button.ghost:hover .button__label::after {
  width: 100% !important;
}
.banner.color--canary  .button.ghost:focus-visible {
  outline: none !important;
  background-color: transparent !important;
  border-color: #fdf092 !important;
  color: #fffce6 !important;
}
.banner.color--canary  .button.ghost:active {
  border-color: transparent !important;
  background-color: #fffce6 !important;
  color: #564a00 !important;
}
.banner.color--canary  .button__icon {
  font-size: 24px !important;
  margin-bottom: 0 !important;
}
.banner.color--fuchsia  .button {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  background-clip: padding-box !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  line-height: 150% !important;
  background-color: #ffeef7 !important;
  color: #4f0230 !important;
  border: 2px solid transparent !important;
}
.banner.color--fuchsia  .button.outline {
  background-color: transparent !important;
  border-color: #ffeef7 !important;
  color: #ffeef7 !important;
}
.banner.color--fuchsia  .button:hover {
  border-color: transparent !important;
  color: #4f0230 !important;
  background-color: #ff9be3 !important;
}
.banner.color--fuchsia  .button:focus-visible {
  color: #4f0230 !important;
  background-color: #ff9be3 !important;
  border-color: transparent !important;
  outline: 2px solid #ff9be3 !important;
}
.banner.color--fuchsia  .button:active {
  outline: none !important;
  border-color: transparent !important;
  color: #ffffff !important;
  background-color: #ff79bd !important;
}
.banner.color--fuchsia  .button.ghost {
  color: #ffeef7 !important;
  background-color: transparent !important;
  border-color: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.banner.color--fuchsia  .button.ghost .button__label {
  position: relative !important;
}
.banner.color--fuchsia  .button.ghost .button__label:after {
  position: absolute !important;
  content: '' !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  transition: width 400ms !important;
  height: 1px !important;
  background-color: #ffeef7 !important;
}
.banner.color--fuchsia  .button.ghost:hover {
  border-color: transparent !important;
  color: #ffeef7 !important;
  background-color: transparent !important;
}
.banner.color--fuchsia  .button.ghost:hover .button__label::after {
  width: 100% !important;
}
.banner.color--fuchsia  .button.ghost:focus-visible {
  outline: none !important;
  background-color: transparent !important;
  border-color: #ff9be3 !important;
  color: #ffeef7 !important;
}
.banner.color--fuchsia  .button.ghost:active {
  border-color: transparent !important;
  background-color: #ffeef7 !important;
  color: #4f0230 !important;
}
.banner.color--fuchsia  .button__icon {
  font-size: 24px !important;
  margin-bottom: 0 !important;
}
.banner.color--pumpkin  .button {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  background-clip: padding-box !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  line-height: 150% !important;
  background-color: #fff0e6 !important;
  color: #5b2500 !important;
  border: 2px solid transparent !important;
}
.banner.color--pumpkin  .button.outline {
  background-color: transparent !important;
  border-color: #fff0e6 !important;
  color: #fff0e6 !important;
}
.banner.color--pumpkin  .button:hover {
  border-color: transparent !important;
  color: #5b2500 !important;
  background-color: #ffa366 !important;
}
.banner.color--pumpkin  .button:focus-visible {
  color: #5b2500 !important;
  background-color: #ffa366 !important;
  border-color: transparent !important;
  outline: 2px solid #ffa366 !important;
}
.banner.color--pumpkin  .button:active {
  outline: none !important;
  border-color: transparent !important;
  color: #ffffff !important;
  background-color: #ff8838 !important;
}
.banner.color--pumpkin  .button.ghost {
  color: #fff0e6 !important;
  background-color: transparent !important;
  border-color: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.banner.color--pumpkin  .button.ghost .button__label {
  position: relative !important;
}
.banner.color--pumpkin  .button.ghost .button__label:after {
  position: absolute !important;
  content: '' !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  transition: width 400ms !important;
  height: 1px !important;
  background-color: #fff0e6 !important;
}
.banner.color--pumpkin  .button.ghost:hover {
  border-color: transparent !important;
  color: #fff0e6 !important;
  background-color: transparent !important;
}
.banner.color--pumpkin  .button.ghost:hover .button__label::after {
  width: 100% !important;
}
.banner.color--pumpkin  .button.ghost:focus-visible {
  outline: none !important;
  background-color: transparent !important;
  border-color: #ffa366 !important;
  color: #fff0e6 !important;
}
.banner.color--pumpkin  .button.ghost:active {
  border-color: transparent !important;
  background-color: #fff0e6 !important;
  color: #5b2500 !important;
}
.banner.color--pumpkin  .button__icon {
  font-size: 24px !important;
  margin-bottom: 0 !important;
}
.banner.color--custom  .button {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  background-clip: padding-box !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  line-height: 150% !important;
  background-color: #ebf3ff !important;
  color: #000835 !important;
  border: 2px solid transparent !important;
}
.banner.color--custom  .button.outline {
  background-color: transparent !important;
  border-color: #ebf3ff !important;
  color: #ebf3ff !important;
}
.banner.color--custom  .button:hover {
  border-color: transparent !important;
  color: #000835 !important;
  background-color: #9fc6ff !important;
}
.banner.color--custom  .button:focus-visible {
  color: #000835 !important;
  background-color: #9fc6ff !important;
  border-color: transparent !important;
  outline: 2px solid #9fc6ff !important;
}
.banner.color--custom  .button:active {
  outline: none !important;
  border-color: transparent !important;
  color: #ffffff !important;
  background-color: #61a2ff !important;
}
.banner.color--custom  .button.ghost {
  color: #ebf3ff !important;
  background-color: transparent !important;
  border-color: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.banner.color--custom  .button.ghost .button__label {
  position: relative !important;
}
.banner.color--custom  .button.ghost .button__label:after {
  position: absolute !important;
  content: '' !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  transition: width 400ms !important;
  height: 1px !important;
  background-color: #ebf3ff !important;
}
.banner.color--custom  .button.ghost:hover {
  border-color: transparent !important;
  color: #ebf3ff !important;
  background-color: transparent !important;
}
.banner.color--custom  .button.ghost:hover .button__label::after {
  width: 100% !important;
}
.banner.color--custom  .button.ghost:focus-visible {
  outline: none !important;
  background-color: transparent !important;
  border-color: #9fc6ff !important;
  color: #ebf3ff !important;
}
.banner.color--custom  .button.ghost:active {
  border-color: transparent !important;
  background-color: #ebf3ff !important;
  color: #000835 !important;
}
.banner.color--custom  .button__icon {
  font-size: 24px !important;
  margin-bottom: 0 !important;
}
.banner.color--sky .cmp-banner__content {
  background-color: #000835;
}
.banner.color--sky .cmp-banner__svg-background {
  background-color: #3a8bff;
}
.banner.color--sky .cmp-banner__text-section {
  color: #c5d5f9;
}
.banner.color--violet .cmp-banner__content {
  background-color: #26005a;
}
.banner.color--violet .cmp-banner__svg-background {
  background-color: #b650ff;
}
.banner.color--violet .cmp-banner__text-section {
  color: #e4c7ff;
}
.banner.color--crimson .cmp-banner__content {
  background-color: #560900;
}
.banner.color--crimson .cmp-banner__svg-background {
  background-color: #ff514d;
}
.banner.color--crimson .cmp-banner__text-section {
  color: #ffd7d7;
}
.banner.color--forest .cmp-banner__content {
  background-color: #023a00;
}
.banner.color--forest .cmp-banner__svg-background {
  background-color: #92ff73;
}
.banner.color--forest .cmp-banner__text-section {
  color: #c8ffc0;
}
.banner.color--canary .cmp-banner__content {
  background-color: #564a00;
}
.banner.color--canary .cmp-banner__svg-background {
  background-color: #fce649;
}
.banner.color--canary .cmp-banner__text-section {
  color: #fffeb0;
}
.banner.color--fuchsia .cmp-banner__content {
  background-color: #4f0230;
}
.banner.color--fuchsia .cmp-banner__svg-background {
  background-color: #ff58ac;
}
.banner.color--fuchsia .cmp-banner__text-section {
  color: #fcc5f9;
}
.banner.color--pumpkin .cmp-banner__content {
  background-color: #5b2500;
}
.banner.color--pumpkin .cmp-banner__svg-background {
  background-color: #ff7920;
}
.banner.color--pumpkin .cmp-banner__text-section {
  color: #ffd9c4;
}
.banner.layout--light .cmp-banner__content {
  background-color: none;
}
.banner.layout--light .cmp-banner__content::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ebf3ff;
  opacity: 0.3;
}
.banner.layout--light .cmp-banner__text-section {
  color: #000835;
}
.banner.layout--light .cmp-banner .button {
  background-color: #000835;
  color: #ebf3ff;
}
.banner.layout--light .cmp-banner .button:hover {
  border-color: transparent;
  background-color: #0a2f62;
}
.banner.layout--light .cmp-banner .button:focus {
  border-color: transparent;
  outline: 2px solid #0a2f62;
  background-color: #0a2f62;
}
.banner.layout--light .cmp-banner .button:active {
  outline: none;
  border-color: transparent;
  background-color: #104ea4;
}
.banner.layout--dark .cmp-banner__content {
  background-color: none;
}
.banner.layout--dark .cmp-banner__content::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000835;
  opacity: 0.3;
}
.banner.layout--dark .cmp-banner__text-section {
  color: #ebf3ff;
}
.banner.layout--dark .cmp-banner .button {
  background-color: #ebf3ff;
  color: #000835;
}
.banner.layout--dark .cmp-banner .button:hover {
  border-color: transparent;
  background-color: #9fc6ff;
}
.banner.layout--dark .cmp-banner .button:focus {
  border-color: transparent;
  outline: 2px solid #9fc6ff;
  background-color: #9fc6ff;
}
.banner.layout--dark .cmp-banner .button:active {
  outline: none;
  border-color: transparent;
  background-color: #61a2ff;
}
.banner .cmp-banner {
  display: flex;
  min-height: 150px;
}
.banner .cmp-banner__image {
  min-width: 370px;
  position: relative;
  object-fit: cover;
}
.banner .cmp-banner__image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.banner .cmp-banner__content {
  padding: 32px;
  gap: 24px;
  flex-grow: 1;
  position: relative;
  background-size: cover;
  background-position: center;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #f2f2f2;
}
.banner .cmp-banner__svg-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mask-size: cover;
  mask-position: center;
}
.banner .cmp-banner__text-section {
  z-index: 2;
  color: #000000;
  align-self: flex-start;
}
.banner .cmp-banner__title {
  margin-bottom: 0;
}
.banner .cmp-banner p {
  padding-top: 16px;
}
.banner .cmp-banner .button {
  z-index: 2;
}
.banner .cmp-banner .button .button__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: baseline;
  line-height: normal;
}
.banner .cmp-banner .button .button__text > .optional__description {
  font-size: 10px;
  font-weight: 400;
}
@media (max-width: 991px) {
  .banner .cmp-banner__image {
    min-width: 225px;
  }
  .banner .cmp-banner__content {
    flex-direction: column;
    align-items: start;
  }
}
@media (max-width: 767px) {
  .banner .cmp-banner {
    flex-direction: column;
  }
  .banner .cmp-banner__image {
    width: 100%;
    height: 150px;
  }
  .banner .cmp-banner__content {
    padding: 24px 16px;
    align-items: unset;
  }
}
