.form-group.required .form-control-label::before {
  content: "*";
  color: #c00; }

.contact-us-banner {
  background-image: url("../images/contact-us.jpg");
  background-position-y: 20%; }

.contact-us-signup-message {
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: fixed;
  top: 15%;
  left: 50%; }

.contact-us-signup-alert {
  -webkit-animation: fade 5s linear forwards;
          animation: fade 5s linear forwards;
  -webkit-box-shadow: 1px 1px 5px grey;
          box-shadow: 1px 1px 5px grey;
  padding: 1em; }

@-webkit-keyframes fade {
  0% {
    opacity: 0; }
  10% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fade {
  0% {
    opacity: 0; }
  10% {
    opacity: 1; }
  90% {
    opacity: 1; }
  100% {
    opacity: 0; } }
  .contact-us-signup-alert.show {
    display: block; }

h1 {
  font-family: "futura-heavy";
  font-size: 2.1875rem; }

h2 {
  font-family: "futura-book";
  font-size: 1.875rem; }

h3 {
  font-family: "futura-heavy";
  font-size: 1.25rem; }

h4 {
  font-family: "futura-demi";
  font-size: 1.125rem; }

h5 {
  font-family: "futura-heavy";
  font-size: 1rem; }

h6 {
  font-family: "futura-demi";
  font-size: 1rem; }

.form-group.required .form-control-label::before {
  display: none; }

.form-group.required .form-control-label::after {
  content: "*";
  color: #c00; }

.floating-form {
  /* active state */ }
  .floating-form .form-group {
    margin-bottom: 1.25rem; }
  .floating-form .floating-label {
    position: relative;
    margin-bottom: 1.25rem;
    font-size: 0.625rem; }
    @media (min-width: 768px) {
      .floating-form .floating-label {
        font-size: 0.75rem; } }
    .floating-form .floating-label svg {
      position: absolute;
      top: 1rem;
      right: 1.375rem; }
  .floating-form textarea {
    min-height: 9.633rem; }
  .floating-form .floating-input,
  .floating-form .floating-select {
    display: block;
    width: 100%;
    height: 3.109rem;
    background-color: transparent;
    border: none;
    border: 1px solid #ccc;
    color: #000;
    padding-top: 1rem;
    padding-left: 0.55rem;
    font-size: 0.9375rem;
    font-family: "futura-book"; }
  .floating-form .floating-input:focus,
  .floating-form .floating-select:focus,
  .floating-form .floating-input:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
    padding-top: 1rem;
    border: 1px solid #0092a9; }
  .floating-form label {
    width: 100%;
    color: #000000;
    font-size: 0.95rem;
    position: absolute;
    pointer-events: none;
    top: 0.313rem;
    transition: 0.2s ease all;
    -moz-transition: 0.2s ease all;
    -webkit-transition: 0.2s ease all;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    padding: 0rem 0.55rem;
    font-family: "futura-book"; }
  .floating-form .floating-input:not(:-moz-placeholder-shown):not(.mc-message) ~ label {
    top: 0.688rem;
    font-size: 0.75rem;
    color: #000000;
    background-color: transparent;
    margin: 0; }
  .floating-form .floating-input:not(:-ms-input-placeholder):not(.mc-message) ~ label {
    top: 0.688rem;
    font-size: 0.75rem;
    color: #000000;
    background-color: transparent;
    margin: 0; }
  .floating-form .floating-input:focus ~ label,
  .floating-form .floating-input:not(:placeholder-shown):not(.mc-message) ~ label {
    top: 0.688rem;
    font-size: 0.75rem;
    color: #000000;
    background-color: transparent;
    margin: 0; }
    .floating-form .floating-input:not(:-moz-placeholder-shown):not(.mc-message) ~ label.mc-message-label {
      top: 17px; }
    .floating-form .floating-input:not(:-ms-input-placeholder):not(.mc-message) ~ label.mc-message-label {
      top: 17px; }
    .floating-form .floating-input:focus ~ label.mc-message-label,
    .floating-form .floating-input:not(:placeholder-shown):not(.mc-message) ~ label.mc-message-label {
      top: 17px; }
  .floating-form .floating-input:-webkit-autofill ~ label {
    top: 0.688rem;
    font-size: 0.75rem;
    background-color: transparent;
    margin: 0; }
  .floating-form .floating-select:focus ~ label,
  .floating-form .floating-select:not([value=""]):valid ~ label {
    top: 0.688rem !important;
    font-size: 0.75rem;
    color: #000000;
    background-color: transparent;
    margin: 0; }
  .floating-form .floating-select {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    /* Positions background arrow image */
    background-image: url("../../../static/images/icons/arrow-down.svg");
    background-repeat: no-repeat;
    background-size: 0.625rem;
    background-position: 98% 30%;
    background-origin: content-box; }
  .floating-form .floating-select:valid ~ label {
    top: 0.688rem; }
  .floating-form :-webkit-autofill ~ label {
    top: 0.688rem;
    font-size: 0.75rem;
    color: #757575;
    background-color: transparent;
    margin: 0; }
  .floating-form .form-control.is-invalid {
    border-color: #c00;
    -webkit-box-shadow: 0px 0px 4px #c00;
            box-shadow: 0px 0px 4px #c00; }
  .floating-form .form-control.is-invalid ~ label {
    display: none; }
  .floating-form .form-control.is-invalid ~ .invalid-feedback {
    top: 0.688rem;
    left: 0;
    padding: 0rem 0.55rem;
    font-size: 1rem;
    font-family: "futura-book"; }
  .floating-form .floating-input:focus ~ .bar:before,
  .floating-form .floating-input:focus ~ .bar:after,
  .floating-form .floating-select:focus ~ .bar:before,
  .floating-form .floating-select:focus ~ .bar:after {
    width: 50%; }
  .floating-form .floating-textarea {
    overflow: hidden;
    overflow-x: hidden; }
  .floating-form .checkbox-custom label {
    position: relative;
    cursor: pointer;
    top: unset;
    left: unset;
    -webkit-transform: unset;
            transform: unset;
    pointer-events: unset;
    padding-left: 0.8rem;
    color: #000;
    font-family: 'futura-book';
    font-size: 0.9375rem; }
  .floating-form .checkbox-custom input {
    padding: 0;
    height: initial;
    width: initial;
    margin-bottom: 0;
    display: block;
    cursor: pointer; }

@-webkit-keyframes inputHighlighter {
  from {
    background: #757575; }
  to {
    width: 0;
    background: transparent; } }

@keyframes inputHighlighter {
  from {
    background: #757575; }
  to {
    width: 0;
    background: transparent; } }
  .floating-form .custom-phone-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    height: 100%; }
    .floating-form .custom-phone-box .floating-label:first-child {
      max-width: 5rem;
      min-width: 3.75rem;
      width: 100%; }
      .floating-form .custom-phone-box .floating-label:first-child label {
        top: 0.688rem; }
    .floating-form .custom-phone-box .floating-label {
      margin: 0;
      -webkit-box-flex: 1;
          -ms-flex-positive: 1;
              flex-grow: 1; }
      .floating-form .custom-phone-box .floating-label .floating-input {
        width: 100%;
        border-radius: 0.1875rem;
        border: 1px solid #757575;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0; }
      .floating-form .custom-phone-box .floating-label .floating-input.is-invalid {
        border-color: #c00; }
    .floating-form .custom-phone-box .floating-input {
      width: 70px; }
      .floating-form .custom-phone-box .floating-input:nth-child(2) {
        width: 100%;
        -webkit-box-flex: 1;
            -ms-flex-positive: 1;
                flex-grow: 1;
        padding-top: inherit;
        height: 100%; }
      .floating-form .custom-phone-box .floating-input:focus {
        outline: none; }
      .floating-form .custom-phone-box .floating-input::-webkit-input-placeholder {
        font-size: 0.75rem; }
      .floating-form .custom-phone-box .floating-input::-moz-placeholder {
        font-size: 0.75rem; }
      .floating-form .custom-phone-box .floating-input:-ms-input-placeholder {
        font-size: 0.75rem; }
      .floating-form .custom-phone-box .floating-input::-ms-input-placeholder {
        font-size: 0.75rem; }
      .floating-form .custom-phone-box .floating-input::placeholder {
        font-size: 0.75rem; }
    .floating-form .custom-phone-box .country-code {
      padding: 0.375rem;
      border-radius: 0.1875rem;
      border: 1px solid #757575;
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
      border-right: 0px; }
      .floating-form .custom-phone-box .country-code:focus {
        padding: 0.375rem; }
    .floating-form .custom-phone-box .floating-select {
      border-radius: 0.1875rem;
      border: 1px solid #757575;
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
      border-right: 0;
      padding-top: 0.475rem;
      background-position: 98% 46%; }

.contact-us-signup-message {
  z-index: 99999999; }

.form-group.required .form-control-label::before {
  content: ""; }

@media (min-width: 992px) {
  header ~ #maincontent .contact-us-landing-page {
    margin-bottom: 6.25rem; }
    header ~ #maincontent .contact-us-landing-page .card .card-body {
      padding-top: 2.938rem;
      padding-bottom: 2.038rem; } }

@media (min-width: 768px) and (max-width: 992px) {
  header ~ #maincontent .contact-us-landing-page .card .card-body {
    padding: 2rem 1rem; } }

header ~ #maincontent .contact-us-landing-page .subscribe-contact-us {
  gap: 12px; }

header ~ #maincontent .contact-us-landing-page .contact-aside-details {
  font-family: "futura-book"; }
  header ~ #maincontent .contact-us-landing-page .contact-aside-details table {
    font-size: 0.9375rem;
    color: #312e2e; }
  header ~ #maincontent .contact-us-landing-page .contact-aside-details .call-us {
    color: #0093A8 !important; }
    header ~ #maincontent .contact-us-landing-page .contact-aside-details .call-us:hover {
      color: #000000 !important; }
  header ~ #maincontent .contact-us-landing-page .contact-aside-details .live-chat {
    padding: 0 22px; }

header ~ #maincontent .contact-us-landing-page .contact-us-comment .mc-message {
  padding-top: 2rem; }

header ~ #maincontent .contact-us-landing-page .contact-us-comment .mc-message-label {
  top: 24px; }

header ~ #maincontent .contact-us-landing-page .contact-us-comment .floating-input:focus ~ .mc-message-label {
  top: 15px; }

header ~ #maincontent .contact-us-landing-page .form-group.required .form-control-label::after {
  content: "*";
  color: #c00; }
