/*
$custom-select-padding-y:           $input-btn-padding-y;
$custom-select-padding-x:           $input-btn-padding-x;
$custom-select-indicator-padding:   1rem; // Extra padding to account for the presence of the background-image based indicator
$custom-select-bg-size:             12px 7px; // In pixels because image dimensions
$custom-select-box-shadow:          none;
$custom-select-indicator-color:     $brand-blue;
$custom-select-indicator:           url("../icons/sprite.svg");
$custom-select-background:          escape-svg($custom-select-indicator) no-repeat $custom-select-padding-x center / $custom-select-bg-size; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
*/
.heading__text,
.heading {
  color: #000;
  text-transform: uppercase;
  line-height: 1.2; }

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.heading__text,
.heading {
  font-weight: 500; }

.btn-secondary.dark {
  background-color: #000; }

.btn-primary.dark {
  color: #000; }

/*
PM-1358 Update font stack in CSS
@import url('https://fonts.googleapis.com/css?family=Cormorant+Garamond|Montserrat:400,500,600&display=swap');
*/
.font-base {
  font-family: 'Helvetica Now', 'Helvetica Now Text', 'Helvetica Neue', Helvetica, Arial, sans-serif; }

.font-serif {
  font-family: 'Palatino Nova', Palatino, Garamond, serif; }

.font-montserrat {
  font-family: 'Montserrat', sans-serif; }

.font-weight-light {
  font-weight: 300 !important; }

.font-weight-regular {
  font-weight: 400 !important; }

.font-weight-medium {
  font-weight: 500 !important; }

.font-weight-bold {
  font-weight: 700 !important; }

.body-sm,
.body-md,
.body-lg,
.body-xl {
  line-height: 1.4; }

.body-sm,
.body-md,
.body-lg {
  letter-spacing: 0; }

.body-sm {
  font-size: 0.75rem; }

.body-md {
  font-size: 0.875rem; }

.body-lg {
  font-size: 1rem; }

.body-xl {
  font-size: 1rem;
  letter-spacing: 0.02em; }

.font-italic {
  font-style: italic; }

.display-lg {
  font-size: 3.5rem; }

.display-md {
  font-size: 2.5rem; }

.display-sm {
  font-size: 2rem; }

.display-xs {
  font-size: 1.75rem;
  letter-spacing: 0.04em; }

.heading-2xl {
  font-size: 2rem; }

.heading-xl {
  font-size: 1.75rem; }

.heading-lg {
  font-size: 1.5rem; }

.heading-md {
  font-size: 1.375rem; }

.heading-sm {
  font-size: 1.125rem; }

.heading-xs {
  font-size: 1rem; }

.heading-2xs {
  font-size: 1rem; }

.display-lg,
.display-md,
.display-sm {
  line-height: 1;
  letter-spacing: 0.02em; }

.display-xs,
.heading-2xl,
.heading-xl,
.heading-lg,
.heading-md,
.heading-sm,
.heading-xs,
.heading-2xs {
  line-height: 1.1; }

.component-heading.text-primary *,
.component-body-text-block.text-primary * {
  color: #071D49 !important; }

.component-heading.text-secondary *,
.component-body-text-block.text-secondary * {
  color: #707070 !important; }

.component-heading.text-tertiary *,
.component-body-text-block.text-tertiary * {
  color: #454545 !important; }

.component-heading.text-primary-inverse *,
.component-body-text-block.text-primary-inverse * {
  color: #fff !important; }

@media (max-width: 991.98px) {
  .component-heading.text-primary--mobile,
  .component-heading.text-primary--mobile *,
  .component-body-text-block.text-primary--mobile,
  .component-body-text-block.text-primary--mobile * {
    color: #071D49 !important; }
  .component-heading.text-secondary--mobile,
  .component-heading.text-secondary--mobile *,
  .component-body-text-block.text-secondary--mobile,
  .component-body-text-block.text-secondary--mobile * {
    color: #707070 !important; }
  .component-heading.text-tertiary--mobile,
  .component-heading.text-tertiary--mobile *,
  .component-body-text-block.text-tertiary--mobile,
  .component-body-text-block.text-tertiary--mobile * {
    color: #454545 !important; }
  .component-heading.text-primary-inverse--mobile,
  .component-heading.text-primary-inverse--mobile *,
  .component-body-text-block.text-primary-inverse--mobile,
  .component-body-text-block.text-primary-inverse--mobile * {
    color: #fff !important; } }

@media (min-width: 992px) {
  .body-xl {
    font-size: 1.25rem; }
  .display-lg {
    font-size: 4.5rem; }
  .display-md {
    font-size: 4rem; }
  .display-sm {
    font-size: 3rem; }
  .display-xs {
    font-size: 2.5rem; }
  .heading-2xl {
    font-size: 2.375rem; }
  .heading-xl {
    font-size: 2rem; }
  .heading-lg {
    font-size: 1.75rem; }
  .heading-md {
    font-size: 1.5rem; }
  .heading-sm {
    font-size: 1.375rem; }
  .heading-xs {
    font-size: 1.125rem; }
  .heading-2xs {
    font-size: 1rem; } }

.body-sm,
.body-md,
.body-lg,
.body-xl {
  letter-spacing: 0.04em; }

.display-lg,
.display-md,
.display-sm,
.display-xs,
.heading-2xl,
.heading-xl,
.heading-lg,
.heading-md,
.heading-sm,
.heading-xs,
.heading-2xs {
  line-height: 1.2;
  letter-spacing: 0.02em; }

.heading-2xs {
  font-size: 0.875rem;
  letter-spacing: 0.04em; }

.component-heading.text-primary *,
.component-body-text-block.text-primary * {
  color: #000 !important; }

.component-heading.text-secondary *,
.component-body-text-block.text-secondary * {
  color: #707070 !important; }

.component-heading.text-tertiary *,
.component-body-text-block.text-tertiary * {
  color: #454545 !important; }

.component-heading.text-primary-inverse *,
.component-body-text-block.text-primary-inverse * {
  color: #fff !important; }

.component-heading.text-primary a,
.component-heading.text-secondary a,
.component-heading.text-tertiary a,
.component-heading.text-primary-inverse a,
.component-body-text-block.text-primary a,
.component-body-text-block.text-secondary a,
.component-body-text-block.text-tertiary a,
.component-body-text-block.text-primary-inverse a {
  text-decoration: underline; }

@media (max-width: 991.98px) {
  .component-heading.text-primary--mobile,
  .component-heading.text-primary--mobile *,
  .component-body-text-block.text-primary--mobile,
  .component-body-text-block.text-primary--mobile * {
    color: #000 !important; }
  .component-heading.text-secondary--mobile,
  .component-heading.text-secondary--mobile *,
  .component-body-text-block.text-secondary--mobile,
  .component-body-text-block.text-secondary--mobile * {
    color: #707070 !important; }
  .component-heading.text-tertiary--mobile,
  .component-heading.text-tertiary--mobile *,
  .component-body-text-block.text-tertiary--mobile,
  .component-body-text-block.text-tertiary--mobile * {
    color: #454545 !important; }
  .component-heading.text-primary-inverse--mobile,
  .component-heading.text-primary-inverse--mobile *,
  .component-body-text-block.text-primary-inverse--mobile,
  .component-body-text-block.text-primary-inverse--mobile * {
    color: #fff !important; }
  .heading-md {
    font-size: 1.125rem; }
  .heading-sm {
    font-size: 1rem; } }

@media (min-width: 992px) {
  .heading-2xs {
    font-size: 1rem; } }

/*
$custom-select-padding-y:           $input-btn-padding-y;
$custom-select-padding-x:           $input-btn-padding-x;
$custom-select-indicator-padding:   1rem; // Extra padding to account for the presence of the background-image based indicator
$custom-select-bg-size:             12px 7px; // In pixels because image dimensions
$custom-select-box-shadow:          none;
$custom-select-indicator-color:     $brand-blue;
$custom-select-indicator:           url("../icons/sprite.svg");
$custom-select-background:          escape-svg($custom-select-indicator) no-repeat $custom-select-padding-x center / $custom-select-bg-size; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
*/
.component-hero {
  z-index: 1;
  margin-bottom: 1.875rem; }
  .component-hero--center {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .component-hero--left {
    top: 50%;
    left: 2%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .component-hero--right {
    top: 50%;
    right: 2%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .component-hero--bottom {
    bottom: 5%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .component-hero--top {
    top: 5%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .component-hero__overlay {
    position: absolute; }
  .component-hero__cta:hover, .component-hero__cta:focus {
    color: #071D49;
    background-color: #CCC; }
  .component-hero__cta:focus {
    border-color: #1A89E2;
    outline: 0.125rem solid #1A89E2; }
  @media (max-width: 767.98px) {
    .component-hero__cta {
      margin-top: 1.5rem; } }
  .component-hero__header {
    letter-spacing: 3px; }
    @media (min-width: 768px) and (max-width: 991.98px) {
      .component-hero__header {
        padding-top: 1.5625rem; } }
    @media (max-width: 767.98px) {
      .component-hero__header {
        letter-spacing: 0;
        padding-top: 1.875rem;
        line-height: 1.2;
        font-size: 1.75rem; } }
  .component-hero__body {
    font-weight: normal; }
    .component-hero__body + .component-hero__cta {
      margin-top: 0; }
  @media (min-width: 768px) {
    .component-hero .tablet-overlay .component-hero__header {
      padding-top: 1.5rem; } }
  @media (max-width: 991.98px) {
    .component-hero__overlay.tablet-overlay {
      position: initial;
      -webkit-transform: translate(0);
              transform: translate(0); }
    .component-hero .tablet-overlay .component-hero__cta {
      background-color: #071D49;
      color: #fff; }
    .component-hero .tablet-overlay .component-hero__text,
    .component-hero .tablet-overlay .component-hero__header {
      color: #071D49;
      margin: 0 auto; } }
  @media (max-width: 767.98px) {
    .component-hero__overlay.mobile-overlay {
      position: static;
      -webkit-transform: translate(0);
              transform: translate(0);
      background-color: transparent; }
    .component-hero .mobile-overlay .component-hero__cta {
      background-color: #071D49;
      color: #fff; }
    .component-hero .mobile-overlay .component-hero__text,
    .component-hero .mobile-overlay .component-hero__header {
      color: #071D49; } }

.component-hero {
  margin-bottom: 2.5rem; }
  .component-hero .head-image {
    margin-bottom: 1.5rem; }
  .component-hero__header {
    letter-spacing: 0.02125rem;
    margin-bottom: 0.4375rem; }
  .component-hero .btn-outline-white {
    background-color: transparent;
    color: #fff;
    border: 0.125rem solid #fff; }
  .component-hero .btn-bg-white {
    background-color: #fff;
    color: #000;
    border: 0.0625rem solid #fff; }
    .component-hero .btn-bg-white:hover {
      background-color: #ccc;
      border-color: #ccc; }

@media (max-width: 991.98px) {
  .component-hero__overlay {
    max-width: 98%;
    padding-top: 1.25rem; }
  .component-hero__cta {
    margin-top: 0; }
  .component-hero .tablet-overlay .component-hero__cta {
    background-color: #000; }
    .component-hero .tablet-overlay .component-hero__cta:hover:not(:disabled) {
      background-color: #545859;
      color: #fff; }
    .component-hero .tablet-overlay .component-hero__cta:focus {
      color: #fff;
      border: 0.0625rem solid #fff;
      -webkit-box-shadow: 0 0 0 2px #545859;
              box-shadow: 0 0 0 2px #545859;
      background-color: #545859; }
  .component-hero .tablet-overlay .component-hero__text {
    color: #707070; }
  .component-hero .tablet-overlay .component-hero__header {
    color: #000;
    margin-bottom: 0.4375rem; } }

@media (max-width: 767.98px) {
  .component-hero__overlay {
    padding-top: 1.25rem; }
  .component-hero__header {
    padding-top: 0; }
  .component-hero .mobile-overlay .component-hero__cta {
    background-color: #000; }
    .component-hero .mobile-overlay .component-hero__cta:hover:not(:disabled) {
      background-color: #545859;
      color: #fff; }
    .component-hero .mobile-overlay .component-hero__cta:focus {
      color: #fff;
      border: 0.0625rem solid #fff;
      -webkit-box-shadow: 0 0 0 2px #545859;
              box-shadow: 0 0 0 2px #545859;
      background-color: #545859; }
  .component-hero .mobile-overlay .component-hero__text {
    color: #707070; }
  .component-hero .mobile-overlay .component-hero__header {
    color: #000; } }

@media (min-width: 768px) {
  .component-hero .tablet-overlay .component-hero__header {
    padding-top: 0; } }

@media (min-width: 992px) {
  .component-hero--center-desk {
    top: 50%;
    left: 50%;
    right: unset;
    bottom: unset;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .component-hero--left-desk {
    top: 50%;
    left: 2%;
    right: unset;
    bottom: unset;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .component-hero--right-desk {
    top: 50%;
    right: 2%;
    left: unset;
    bottom: unset;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .component-hero--bottom-desk {
    bottom: 5%;
    left: 50%;
    top: unset;
    right: unset;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .component-hero--top-desk {
    top: 5%;
    left: 50%;
    bottom: unset;
    right: unset;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); } }
