:root {
  --wp--style--global--content-size: 1000px;
}
.wp-singular .wp-block-post-title {
  font-size: 24px;
  font-weight: 700;
}
/* .wp-singular .entry-content .container {
    max-width: 1000px;
} */
body {
  background-color: #e8e8e8 !important;
}
.form-step,
.built-fieldset,
.form__field.hide,
.custom-quote.hide {
  display: none;
}
.form-step.active,
.built-fieldset.active {
  display: block;
}
input.error,
select.error,
textarea.error {
  border: 1px solid red;
  background-color: #ffe6e6;
}
#final-scheduling-preference {
  text-align: center;
}
.payment-terms,
.quote-details table + div,
.quote-details table {
  width: 980px!important;
  max-width: 100%;
  margin: auto;
} 

.quote-details table + div {text-align: center;}
.payment-terms h4 {
  margin-top: 0; font-size: 18px!important; color:#727272!important; font-weight: 600!important; margin-bottom: 12px;
}
#payment-form {
  margin-top: 24px;
  margin-bottom: 24px;
}
.payment-terms h4 ~ label {
  font-size: 14px;
  font-weight: 600;
  display: block;
  margin-bottom: 10px;
}
.payment-terms .note {
  font-size: 16px;
  margin-bottom: 24px;
}
#final-scheduling-preference h4,
.quote-details table + div h4 {margin-top: 0; font-size: 18px; color:#727272; font-weight: 600;}
.quote-details table + div h4  + label {font-size: 16px; line-height: 20px;}
.payment-terms table,
.quote-details table {margin-bottom: 30px!important;}
.payment-terms table tr td:first-child {font-weight: 700;}
.payment-terms table tr th,
.quote-details table tr th {
  text-transform: capitalize;
}
.payment-terms table tr th,
.payment-terms table tr td,
.quote-details table tr th, 
.quote-details table tr td {text-align: left; padding: 10px 15px;} 

#stripe_pay_now,
#continue-btn {
  display: inline-block;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 60px;
}
#stripe_pay_now {margin-bottom: 0!important;}
#payment-message {
    font-size: 14px;
    font-weight: 600;
    color: #ff0000;
}
label.error, div.error {
  color: red;
  font-size: 0.9em;
  display: block;
  padding-left: 18px;
  /* margin-top: 5px; */
  text-transform: lowercase;
}
#final-scheduling-preference label.tooltips,
#progress-form label.tooltips {
  padding-left: 18px;
  margin-top: 5px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
}
#schedule-preference {
  max-width: 250px;
  margin: 24px auto;
}
#final-scheduling-preference label.tooltips small,
#progress-form label.tooltips small {
  font-size: 13px!important;
  color:#0e8ad5;
  max-width: calc(100% - 24px);
}
#final-scheduling-preference label.tooltips {
  justify-content: center;
}
.adjust-space {
  padding-left: 18px !important;
  margin-top: 18px !important;
}
.adjust-title {
  font-size: 16px;
  margin-top: 10px;
  color: #000000;
}
fieldset.form__field + fieldset.form__field {
  margin-top: 24px !important;
}
.contact-info {
  display: flex;
  flex-wrap: wrap;
  margin: 12px 0;
  justify-content: space-between;
}
.contact-info input {
  flex: 0 0 calc(33.333% - 6px);
  max-width: calc(33.333% - 6px);
  height: 47px;
  font-size: 18px;
}
#contactForm input {
  font-size: 18px;
}
#Additional_Notes {
  font-size: 18px;
  resize: none;
}
.custom-quote.tooltips {
  margin-top: 12px;
  padding-left: 18px !important;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.custom-quote.tooltips svg {
  margin-right: 5px;
}
.button--simple.prev-step-btn,
#contact_email,
#payment_page {
  border: none;
}
#contactForm {
  max-width: 800px;
  margin: auto;
  display: block;
}
.adjust-listing {
  margin: 12px 0 24px;
  font-size: 14px;
  line-height: 28px;
  /* padding: 0; */
  /* list-style: none; */
}
.adjust-listing:not(.details) {
  list-style-type: none;
  padding-left: 0;
}

.adjust-listing.mt-0 {
  margin-top: 0;
}
.ceiling_additional_room input[type="text"],
.exta_add_room .room,
.RoomsCeilings {
  margin-bottom: 10px;
}

.ceiling_additional_room input[type="text"]:last-child,
.exta_add_room .room:last-child,
.RoomsCeilings:last-child {
  margin-bottom: 0;
}
.adjust-listing:last-child {
  margin-bottom: 0;
}
.adjust-listing:not(.details) li {
  display: flex;
  align-items: center;
  gap: 10px;
}
label.error:first-letter {
  text-transform: capitalize;
}
.wall-repair6 legend {
  float: left;
  width: 100%;
}
span.title-finishing {
  font-size: 14px;
  font-weight: 800;
}
#progress-form {
  max-width: 100%;
  display: flex;
  align-items: flex-start;
  flex-direction: row-reverse;
  box-sizing: border-box;
  width: 100%;
  gap: 10px;
  margin-bottom: 60px;

  /* background: red; */
  justify-content: space-between;
}
#progress-form section fieldset input[type="checkbox"]:focus,
#progress-form section fieldset input[type="radio"]:focus,
#progress-form *:focus {
  outline: none;
}
#progress-form .price-wrap {
  box-shadow: 0px 20px 20px -20px rgba(0, 0, 0, 1);
  opacity: 0;
  position: sticky;
  top: 0;
  max-width: 35%;
  width: 100%;
  flex: 0 0 35%;
  background-color: #ffffff;
  padding: 20px;
  box-sizing: border-box;
  /* border-radius: 10px; */
  /* box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); */
  /* min-height: 135px; */
}
.progress-bar {
  display: flex;
  margin-bottom: 4px;
  font-size: 16px;
}
.progress-step {
  /*   width: 30%; */
  /* flex: 1 1 0; */
  align-content: center;
  font-size: 14px;
  font-weight: 600;
  text-transform: uppercase;
  padding: 10px;
  height: auto!important;
  color: #ffffff;
  padding: 14px;
  background: #727272;
  text-align: center;
  /* border-radius: 5px; */
}
.progress-step:last-child {
  border-right: none;
}
.progress-step.active {
  background: #74a9ce;
  color: white;
}
#progress-form .price-wrap.active {
  opacity: 1;
}
span.custom-quote {
  width: 100%;
  display: block;
}
.custom-quote img.phone-btn,
#premium-paint h5 img {
  width: 18px;
}
#progress-form .form-fields {
  background-color: #ffffff;
  box-shadow: 0px 20px 20px -20px rgba(0, 0, 0, 1);
  /* border-radius: 10px; */
  /* box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); */
  padding: 20px;
  width: 100%;
  max-width: calc(65% - 15px);
  box-sizing: border-box;
  flex: 0 0 calc(65% - 15px);
}
#progress-form .price {
  font-size: 14px;
  font-weight: 600;
  display: flex;
  justify-content: space-between;
}
#progress-form section fieldset,
#progress-form .price-wrap fieldset {
  margin: 0;
  border: none;
  padding: 0;
}
#progress-form section label,
#progress-form .price-wrap label,
#progress-form .price-wrap legend {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 10px;
  display: block;
  /* padding: 0; */
}

#progress-form section fieldset legend {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 10px;
}
#progress-form section fieldset legend.mb-0 {
  margin-bottom: 0;
}
#progress-form section label:not(:last-child) {
  margin-bottom: 10px !important;
  cursor: pointer;
}
#progress-form section label span {
  padding-left: 5px;
}
#progress-form .btn-wrap {
  margin-top: 24px;
}
#progress-form section .btn-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#progress-form section fieldset input[type="checkbox"],
#progress-form section fieldset input[type="radio"] {
  margin: 0;
  vertical-align: middle;
}
#progress-form section fieldset input[type="checkbox"] + span,
#progress-form section fieldset input[type="radio"] + span {
  vertical-align: middle;
}
/* #progress-form section .form__field, #progress-form .price-wrap .form__field, #card-element{
    margin-bottom: 24px;
} */
.ButtonContainer.ButtonContainer--pay {
  display: none !important;
}
#progress-form section input[type="number"],
#progress-form section input[type="text"],
#progress-form .price-wrap input[type="text"] {
  width: 100%;
  border-radius: 4px;
  border: 1px solid #727272;
  padding: 5px 15px;
  box-sizing: border-box;
  height: 36px;
}
.full-agreement {
  margin-top: 20px;
  display: inline-block;
  margin-bottom: 30px;
  color:#74a9ce;
  font-weight: 600;
}
.service-agreement {
  margin-bottom: 0;
  margin-top: 0;
  color: #74a9ce;
  font-weight: 600 !important;
  font-size: 14px !important;
}
.service-agreement:hover,
.full-agreement:hover {color:#727272;}
#stripe_pay_now,
#continue-btn,
#progress-form section button,
#progress-form .price-wrap button {
  background-color: #74a9ce;
  color: #ffffff;
  /* border-radius: 8px; */
  border: none;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  padding: 10px 15px;
  cursor: pointer;
  font-size: 16px;
}
#stripe_pay_now:hover,
#continue-btn:hover,
#progress-form section button:hover,
#progress-form .price-wrap button:hover {
  /* box-shadow: 0px 5px 10px -5px #1f3142; */
  background-color: #000000C9;
}
#progress-form label {
  display: block;
}
#progress-form .form__error-text {
  color: #ff0000;
  font-size: 12px;
  font-weight: 500;
  margin: 5px 0 0;
}

/* spinner/processing state, errors */
.hidden {
  display: none;
}
.spinner,
.spinner:before,
.spinner:after {
  border-radius: 50%;
}
.spinner {
  color: #ffffff;
  font-size: 22px;
  text-indent: -99999px;
  margin: 0px auto;
  position: relative;
  width: 20px;
  height: 20px;
  box-shadow: inset 0 0 0 2px;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}
.spinner:before,
.spinner:after {
  position: absolute;
  content: "";
}
.spinner:before {
  width: 10.4px;
  height: 20.4px;
  background: #0055de;
  border-radius: 20.4px 0 0 20.4px;
  top: -0.2px;
  left: -0.2px;
  -webkit-transform-origin: 10.4px 10.2px;
  transform-origin: 10.4px 10.2px;
  -webkit-animation: loading 2s infinite ease 1.5s;
  animation: loading 2s infinite ease 1.5s;
}
.spinner:after {
  width: 10.4px;
  height: 10.2px;
  background: #0055de;
  border-radius: 0 10.2px 10.2px 0;
  top: -0.1px;
  left: 10.2px;
  -webkit-transform-origin: 0px 10.2px;
  transform-origin: 0px 10.2px;
  -webkit-animation: loading 2s infinite ease;
  animation: loading 2s infinite ease;
}
.quote-details table {
  border-collapse: collapse;
  width: 50%;
  margin: 0 auto;
}
th,
td {
  border: 1px solid black;
  padding: 8px;
  text-align: center;
}
th {
  background-color: #f2f2f2;
}
@-webkit-keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
#download-quote {
  background:#2d6cdf; color:#fff; border:none; padding:12px 20px; border-radius:8px; font-size:16px; cursor:pointer; box-shadow:0 2px 6px rgba(0,0,0,0.15);
}
#send_full_quote_email {
  background:#28a745; color:#fff; border:none; padding:12px 20px; border-radius:8px; font-size:16px; cursor:pointer; box-shadow:0 2px 6px rgba(0,0,0,0.15);
}
.customer-service-agreement {
  font-family:Lato, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;  
  color:#333333;
}
.pum-container {
  padding: 50px!important;
  border: none!important;
}
.customer-service-agreement p,
.customer-service-agreement ul,
.customer-service-agreement ol {margin-bottom: 24px;}
.customer-service-agreement h2 {
    margin: 0 0 8px;
    font-size: 18px!important;
    font-weight: 600!important;
}
.pum-title.popmake-title {
  font-weight: 600!important;
  color:#333333!important;
  font-size: 24px!important;
}
.anet-card-form{
  max-width:420px;
  margin:20px auto;
  padding:22px;
  border-radius:12px;
  background:#ffffff;
  box-shadow:0 8px 25px rgba(0,0,0,.08);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto;
}

.anet-card-form.hide{
  display:none;
}

.anet-field{
  margin-bottom:16px;
}

.anet-field label{
  display:block;
  font-size:13px;
  color:#555;
  margin-bottom:6px;
}

.anet-field input{
  width:100%;
  padding:12px 14px;
  border:1px solid #dcdcdc;
  border-radius:8px;
  font-size:15px;
  outline:none;
  transition:border-color .15s, box-shadow .15s;
}

.anet-field input:focus{
  border-color:#4f46e5;
  box-shadow:0 0 0 3px rgba(79,70,229,.12);
}

.anet-row{
  display:flex;
  gap:14px;
}

.anet-exp{
  display:flex;
  align-items:center;
  gap:6px;
}

.anet-exp input{
  text-align:center;
}

.anet-exp span{
  font-size:16px;
  color:#666;
}

.anet-pay-btn{
  width:100%;
  padding:13px;
  border-radius:10px;
  border:0;
  background:#4f46e5;
  color:#fff;
  font-size:16px;
  font-weight:600;
  cursor:pointer;
  transition:background .15s, transform .05s;
}

.anet-pay-btn:hover{
  background:#4338ca;
}

.anet-pay-btn:active{
  transform:translateY(1px);
}

.anet-message{
  margin-top:14px;
  font-size:14px;
}

@media only screen and (min-width: 1280px) {
  .progress-step {
    flex: 1 1 0;
  } 
}
@media only screen and (max-width: 991px) {
  #progress-form {
    flex-direction: column-reverse;
    gap: 30px;
  }
  #progress-form .form-fields,
  #progress-form .price-wrap {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media only screen and (max-width: 600px) {
  form {
    width: 80vw;
    min-width: initial;
  }
  #contact_email, #payment_page {
    white-space: normal;
  }
  #contactForm {
    width:calc(100% - 16px);
  }
  .contact-info {
    flex-direction: column;
    gap: 12px;
  }
  #contactForm input {
    max-width: 100%;
    flex: 0 0 100%;
  }
  #download-quote,
  #send_full_quote_email {
    font-size: 14px;
  }
}
