.fdCreditCard label {
  float: none; }

.fdCreditCard input {
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-appearance: none; }

.fdCreditCard #CreditCardForm {
  position: relative; }

.fdCreditCard .overlay {
  position: absolute;
  background: rgba(255, 255, 255, 0.75);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  opacity: 1;
  -webkit-transition: opacity 1000ms linear;
  transition: opacity 1000ms linear;
  z-index: 2; }

.fdCreditCard .status {
  padding: 10px 0;
  margin-bottom: 20px;
  color: #c01324;
  font-weight: bold;
  opacity: 0;
  -webkit-transition: opacity 1000ms linear;
  transition: opacity 1000ms linear; }

.fdCreditCard .status__heading {
  margin: 0; }

.fdCreditCard .status::first-letter {
  text-transform: capitalize; }

.fdCreditCard .btn--primary {
  position: relative;
  background: #00a9e0;
  color: #fff; }

.fdCreditCard .btn--secondary {
  color: #999;
  background: #fff;
  text-decoration: underline;
  cursor: pointer; }

.fdCreditCard .btn-group {
  margin-top: 25px;
  border-top: 1px solid #ddd; }

.fdCreditCard .container {
  max-width: 700px;
  margin: 0 auto;
  padding: 25px 50px 75px;
  background: #fff;
  -webkit-box-shadow: 0 5px 15px rgba(1, 169, 225, 0.06), 0 5px 15px rgba(0, 0, 0, 0.08);
          box-shadow: 0 5px 15px rgba(1, 169, 225, 0.06), 0 5px 15px rgba(0, 0, 0, 0.08); }

.fdCreditCard .container::after {
  content: ".";
  visibility: hidden;
  display: block;
  height: 0;
  clear: both; }

@media screen and (min-width: 35.938em) {
  .fdCreditCard .container {
    padding-left: 100px;
    padding-right: 100px; }
  .fdCreditCard .btn-group {
    margin-top: 0;
    border-top: none;
    float: right; } }

.fdCreditCard .form-controls {
  height: 39px;
  border: 1px solid #ddd;
  border-radius: 0;
  padding: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 16px;
  margin-bottom: 5px; }

.fdCreditCard select.form-controls {
  -webkit-appearance: none;
  border-radius: 0;
  display: block;
  width: 100%;
  background: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24' height='24' viewBox='0 0 24 24'><path fill='%23444' d='M7.406 7.828l4.594 4.594 4.594-4.594 1.406 1.406-6 6-6-6z'></path></svg>");
  background-position: 100% 50%;
  background-repeat: no-repeat; }

.fdCreditCard .form-controls:focus {
  outline: none; }

.fdCreditCard #token {
  margin-top: 10px; }

.fdCreditCard .disabled-bkg {
  background: #aaa; }

.fdCreditCard #submit:disabled {
  cursor: not-allowed; }

.fdCreditCard .payment-fields.disabled {
  cursor: not-allowed; }

.fdCreditCard .firstdata-field-focused,
.fdCreditCard .focus {
  outline: none;
  background: white !important; }

.fdCreditCard .firstdata-field-invalid,
.fdCreditCard .invalid,
.fdCreditCard .PLCC {
  color: #c01324; }

.fdCreditCard .form-controls.PLCC,
.fdCreditCard .form-controls.invalid {
  background: #faeded; }

.fdCreditCard label.focus,
.fdCreditCard label.valid,
.fdCreditCard label.invalid {
  border: none; }

.fdCreditCard .success {
  color: #43b02a; }

.fdCreditCard .success-bkg {
  background: #43b02a; }

.fdCreditCard .success-bkg .btn__loader::after {
  background: #43b02a; }

.fdCreditCard .success .btn--secondary {
  padding: 0;
  margin: 30px 0 0; }

/* https://github.com/lukehaas/css-loaders */
/* overlay */
.fdCreditCard .loader,
.fdCreditCard .loader::before,
.fdCreditCard .loader::after {
  background: #00a9e0;
  -webkit-animation: load1 1s infinite ease-in-out;
  animation: load1 1s infinite ease-in-out;
  width: 1em;
  height: 4em; }

.fdCreditCard .loader {
  color: #00a9e0;
  text-indent: -9999em;
  margin: 88px auto;
  position: relative;
  font-size: 11px;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
  opacity: 1;
  -webkit-transition: opacity 1000ms linear;
  transition: opacity 1000ms linear; }

.fdCreditCard .loader::before,
.fdCreditCard .loader::after {
  position: absolute;
  top: 0;
  content: ""; }

.fdCreditCard .loader::before {
  left: -1.5em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s; }

.fdCreditCard .loader::after {
  left: 1.5em; }

@-webkit-keyframes load1 {
  0%,
  80%,
  100% {
    -webkit-box-shadow: 0 0;
            box-shadow: 0 0;
    height: 4em; }
  40% {
    -webkit-box-shadow: 0 -2em;
            box-shadow: 0 -2em;
    height: 5em; } }

@keyframes load1 {
  0%,
  80%,
  100% {
    -webkit-box-shadow: 0 0;
            box-shadow: 0 0;
    height: 4em; }
  40% {
    -webkit-box-shadow: 0 -2em;
            box-shadow: 0 -2em;
    height: 5em; } }

/* button loader */
.fdCreditCard .btn__loader {
  display: inline-block;
  font-size: 12px;
  margin-right: 10px;
  text-indent: -9999em;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  background: #fff;
  background: -webkit-gradient(linear, left top, right top, color-stop(10%, #fff), color-stop(42%, rgba(255, 255, 255, 0)));
  background: linear-gradient(to right, #fff 10%, rgba(255, 255, 255, 0) 42%);
  position: relative;
  -webkit-animation: load3 1.4s infinite linear;
  animation: load3 1.4s infinite linear;
  -webkit-transform: translateZ(0);
  transform: translateZ(0); }

.fdCreditCard .btn__loader::before {
  width: 50%;
  height: 50%;
  background: #fff;
  border-radius: 100% 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: ""; }

.fdCreditCard .btn__loader::after {
  background: #00a9e0;
  width: 75%;
  height: 75%;
  border-radius: 50%;
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0; }

@-webkit-keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

.fdCreditCard .checkbox-control {
  -webkit-appearance: checkbox;
  height: auto;
  width: auto; }

.exp-cvn-row .form-controls,
.payment-method-expanded .cc-form .fdCreditCard .exp-cvn-row .input-cvn .form-row {
  max-width: 110px; }

.fdCreditCard .checkbox-div {
  margin-bottom: 10px; }

.fdCreditCard .flex-child.userexp {
  -ms-flex-preferred-size: 33%;
      flex-basis: 33%; }

@media only screen and (max-width: 1023px) {
  .fdCreditCard .flex-child.userexp {
    -ms-flex-preferred-size: 45%;
        flex-basis: 45%; }
  .fdCreditCard .flex-child.input-cvn {
    -ms-flex-preferred-size: 45%;
        flex-basis: 45%; }
  .flex-child.norton {
    margin: 10px 0; } }

.fdCreditCard .exp-cvn-row {
  width: auto; }

.fdCreditCard .input-cvn {
  -ms-flex-preferred-size: 33%;
      flex-basis: 33%; }

.accountCreditCardForm .formLoader {
  position: absolute;
  height: 100%;
  width: 100%;
  bottom: 0;
  background: url("../images/ajax-loader.gif") no-repeat 32% white;
  opacity: 0.8; }

#cc-card .card-icon {
  background-repeat: no-repeat;
  background-position: 86% 23%;
  height: 20px;
  position: absolute;
  right: 7px;
  width: 33px;
  top: 8px; }

#cc-card .card-icon.visa {
  background-image: url("../images/credit-card-SVG-Icons/visa.svg"), none; }

#cc-card .card-icon.amex {
  background-image: url("../images/credit-card-SVG-Icons/amex.svg"), none; }

#cc-card .card-icon.mastercard {
  background-image: url("../images/credit-card-SVG-Icons/mastercard.svg"), none; }

#cc-card .card-icon.discover {
  background-image: url("../images/credit-card-SVG-Icons/discover.svg"), none; }

#cc-card .card-icon.unknown {
  background-image: url("../images/credit-card-SVG-Icons/unknown.svg"), none; }

#cc-card .card-icon.error {
  background-image: url("../images/credit-card-SVG-Icons/error.svg"), none !important; }

.paymentJSV2Form .error-msg {
  color: #c00;
  display: block;
  margin-top: 0;
  font-size: 15px; }

.hide {
  display: none; }
