/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

.appointment-form .workshop-item.active{
  background-color: #2C2C2C;
}

.appointment-form .workshop-item.active *{
  color: #FFFFFF;
}

#bodymovin{
    width:100%;
    height:100%;
    display:block;
    overflow: hidden;
    transform: translate3d(0,0,0);
    margin: auto;
    opacity: 1;
}

.appointment-loading{
  position: absolute;
  top:0;
  left:0;
  background-color: rgba(225,225,225,0.9);
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  display: none;
  z-index: 1000;
}

.appointment-loading.active{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin:3.75em 0;
}

.appointment-loading h4{
  color: #202553;
  padding: 1.875rem 1.375rem;
}

.appointment-loading #bodymovin.m-spinner{
  background-color: transparent;
  height: 70vh;
  margin: 0 auto;
}

.appointment-block .form-send{
  text-align: center;
}

.appointment-block .form-send div{
  display: none
}

.appointment-block .form-send button{
  margin-left: 1em;
  margin-right: 1em;
}

.appointment-steps{
  max-width: 740px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 2.25em;
  text-align: center;
}

.appointment-steps ul{
  padding:0;
  margin:0;
  list-style: none;
}

.appointment-steps li{
  width: 24%;
  display: inline-block;
  max-width: 175px;
  padding-bottom: 0.25em;
  font-family: 'Gotham-Bold', Helvetica, Arial, sans-serif;
  font-size: 1.188em;
  position: relative;
  color: #ABABAB;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.appointment-steps li.active{
  color: #202553;
}

.appointment-steps li::after{
  content: '';
  display: block;
  position: absolute;
  bottom:0;
  left:0;
  width: 100%;
  height: 3px;
  background-color: #ABABAB;
  z-index: 1;
}

.appointment-steps li::before{
  content: "";
  display: block;
  position: absolute;
  bottom:0;
  width:0;
  height: 3px;
  background-color: #202553;
  z-index: 2;
}

.appointment-steps li.is-in-left::before{
    animation: is_in_left_nav 0.3s ease-in-out 0s forwards;
}

.appointment-steps li.is-out-left::before{
    animation: is_out_left_nav 0.3s ease-in-out 0s forwards;
}

.appointment-steps li.is-in-right::before{
    animation: is_in_right_nav 0.3s ease-in-out 0s forwards;
}

.appointment-steps li.is-out-right::before{
    animation: is_out_right_nav 0.3s ease-in-out 0s forwards;
}

.appointment-section{
    position: absolute;
    left: -100%;
    top:0;
    width: 100%;
}
.appointment-section.active{
    position: relative;
    left: auto;
}
.appointment-section.is-in-left{
    animation: is_in_left_sec 0.3s ease-in-out 0s forwards;
    left: auto;
}
.appointment-section.is-out-left{
    animation: is_out_left_sec 0.3s ease-in-out 0s forwards;
    left: auto;
}
.appointment-section.is-in-right{
    animation: is_in_right_sec 0.3s ease-in-out 0s forwards;
    left: auto;
}
.appointment-section.is-out-right{
    animation: is_out_right_sec 0.3s ease-in-out 0s forwards;
    left: auto;
}

#familyAutoComplete{
  position: absolute;
  background-color: #FFFFFF;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
}

#familyAutoComplete .item{
  padding: 5px 20px;
  cursor: pointer;
}

#familyAutoComplete .item:hover{
  background-color: #ABABAB;
}

.appointment-form{
  position: relative;
}

.appointment-relative-wrapper{
  position: relative;
}

.appointment-form-wrapper{
  max-width: 740px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.appointment-form-wrapper h3{
  text-align: center;
  padding-bottom: 1.375em;
}

.locator-main-appointment{
  position: relative;
  padding-bottom: 0;
  margin-bottom: 3.75em;
}

.appointment-section-3 header{
  padding-top: 1.188em;
}

.appointment-section-3 .svg-reference{
  width: 80px;
  height: 80px;;
  margin-left: -10px;
}

.appointment-section-3 .form-item-intro{
  padding-bottom: 0.5em;
}

.page-content .wpb_wrapper .appointment-check-group .nobullet,
.page-content .wpb_wrapper .appointment-check-others-group .nobulle,
.page-content .wpb_wrapper .appointment-check-additional-group .nobullet{
  padding-top: 0 !important;
}

.appointment-form-checkbox input{
  display: inline-block;
  width: auto;
}

.appointment-form-checkbox label{
  display: inline-block;
  margin-left: 0.5em;
}

.appointment-form-checkbox.replacement-car label,
.appointment-form-checkbox.service-recogida label{
  color: #9E9E9E;
}

.appointment-form-checkbox.replacement-car.active label,
.appointment-form-checkbox.service-recogida.active label{
  color: #2C2C2C;
}

.appointment-form-checkbox.service-recogida label{
  max-width: calc(100% - 22px);
  vertical-align: top;
}

.appointment-check-others-group-fault{
  display: none;
  margin-left: 0 !important;
  margin-top: -0.75rem;
}

.appointment-check-others-group-fault.active{
    display: block;
}

.appointment-check-others-group + .form-item-intro{
  padding-top: 1em;
}

#apt_locatorMapResult .locator-result-inner{
    height: 300px;
    padding-right: 20px;
    overflow-y: scroll;
    position: relative;
}

#apt_locatorMap{
  position: absolute;
  width: 100%;
  right:0;
  top:0;
  height: 100%;
}

/*--------------------------------------------------------------
# Cita Previa Quiter
--------------------------------------------------------------*/

/*TALLER CONTACT FORM PROVISIONAL*/
/*.form-hours{
  display: flex;
}
.revisiones label{
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  font-family: 'Gotham-Bold', Helvetica, Arial, sans-serif;
}
.your-opcions span.wpcf7-list-item{
  margin-left: 0;
  margin-right: 1rem;
  width: calc(33% - 1rem);
}
@media only screen and (max-width: 480px) {
  .your-opcions span.wpcf7-list-item{
    margin-right: 1rem;
    width: calc(100% - 1rem);
  }
}*/
/*END TALLER PROVISIONAL*/


.appointment-form .workshop-item.active{
  background-color: #2C2C2C;
}

.appointment-form .workshop-item.active *{
  color: #FFFFFF;
}

#bodymovin{
    width:100%;
    height:100%;
    display:block;
    overflow: hidden;
    transform: translate3d(0,0,0);
    margin: auto;
    opacity: 1;
}

.appointment-loading{
  position: absolute;
  top:0;
  left:0;
  background-color: rgba(225,225,225,0.9);
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  display: none;
  z-index: 1000;
}

.appointment-loading.active{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin:3.75em 0;
}

.appointment-loading h4{
  color: #202553;
  padding: 1.875rem 1.375rem;
}

.appointment-loading #bodymovin.m-spinner{
  background-color: transparent;
  height: 70vh;
  margin: 0 auto;
}

.appointment-block .form-send{
  text-align: center;
}

.appointment-block .form-send div{
  display: none
}

.appointment-block .form-send button{
  margin-left: 1em;
  margin-right: 1em;
}

.appointment-steps{
  max-width: 740px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 2.25em;
  text-align: center;
}

.appointment-steps ul{
  padding:0;
  margin:0;
  list-style: none;
}

.appointment-steps li{
  width: 24%;
  display: inline-block;
  max-width: 175px;
  padding-bottom: 0.25em;
  font-family: 'Gotham-Bold', Helvetica, Arial, sans-serif;
  font-size: 1.188em;
  position: relative;
  color: #ABABAB;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.appointment-steps li.active{
  color: #202553;
}

.appointment-steps li::after{
  content: '';
  display: block;
  position: absolute;
  bottom:0;
  left:0;
  width: 100%;
  height: 3px;
  background-color: #ABABAB;
  z-index: 1;
}

.appointment-steps li::before{
  content: "";
  display: block;
  position: absolute;
  bottom:0;
  width:0;
  height: 3px;
  background-color: #202553;
  z-index: 2;
}

.appointment-steps li.is-in-left::before{
    animation: is_in_left_nav 0.3s ease-in-out 0s forwards;
}

.appointment-steps li.is-out-left::before{
    animation: is_out_left_nav 0.3s ease-in-out 0s forwards;
}

.appointment-steps li.is-in-right::before{
    animation: is_in_right_nav 0.3s ease-in-out 0s forwards;
}

.appointment-steps li.is-out-right::before{
    animation: is_out_right_nav 0.3s ease-in-out 0s forwards;
}

.appointment-section{
    position: absolute;
    left: -100%;
    top:0;
    width: 100%;
}
.appointment-section.active{
    position: relative;
    left: auto;
}
.appointment-section.is-in-left{
    animation: is_in_left_sec 0.3s ease-in-out 0s forwards;
    left: auto;
}
.appointment-section.is-out-left{
    animation: is_out_left_sec 0.3s ease-in-out 0s forwards;
    left: auto;
}
.appointment-section.is-in-right{
    animation: is_in_right_sec 0.3s ease-in-out 0s forwards;
    left: auto;
}
.appointment-section.is-out-right{
    animation: is_out_right_sec 0.3s ease-in-out 0s forwards;
    left: auto;
}

#familyAutoComplete{
  position: absolute;
  background-color: #FFFFFF;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
}

#familyAutoComplete .item{
  padding: 5px 20px;
  cursor: pointer;
}

#familyAutoComplete .item:hover{
  background-color: #ABABAB;
}

.appointment-form{
  position: relative;
}

.appointment-relative-wrapper{
  position: relative;
}

.appointment-form-wrapper{
  max-width: 740px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.appointment-form-wrapper h3{
  text-align: center;
  padding-bottom: 1.375em;
}

.locator-main-appointment{
  position: relative;
  padding-bottom: 0;
  margin-bottom: 3.75em;
}

.appointment-section-3 header{
  padding-top: 1.188em;
}

.appointment-section-3 .svg-reference{
  width: 80px;
  height: 80px;;
  margin-left: -10px;
}

.appointment-section-3 .form-item-intro{
  padding-bottom: 0.5em;
}

.page-content .wpb_wrapper .appointment-check-group .nobullet,
.page-content .wpb_wrapper .appointment-check-others-group .nobulle,
.page-content .wpb_wrapper .appointment-check-additional-group .nobullet{
  padding-top: 0 !important;
}

.appointment-form-checkbox input{
  display: inline-block;
  width: auto;
}

.appointment-form-checkbox label{
  display: inline-block;
  margin-left: 0.5em;
}

.appointment-form-checkbox.replacement-car label,
.appointment-form-checkbox.service-recogida label{
  color: #9E9E9E;
}

.appointment-form-checkbox.replacement-car.active label,
.appointment-form-checkbox.service-recogida.active label{
  color: #2C2C2C;
}

.appointment-form-checkbox.service-recogida label{
  max-width: calc(100% - 22px);
  vertical-align: top;
}

.appointment-check-others-group-fault{
  display: none;
  margin-left: 0 !important;
  margin-top: -0.75rem;
}

.appointment-check-others-group-fault.active{
    display: block;
}

.appointment-check-others-group + .form-item-intro{
  padding-top: 1em;
}

#apt_locatorMapResult .locator-result-inner{
    height: 300px;
    padding-right: 20px;
    overflow-y: scroll;
    position: relative;
}

#apt_locatorMap{
  position: absolute;
  width: 100%;
  right:0;
  top:0;
  height: 100%;
}

input[type="checkbox"]#appointAccepted,
input[type="checkbox"]#appointIsOld{
  margin-right: 0.5rem;
}

.elderly-people label{
  margin-bottom: 1rem;
}

@media (max-width: 1024px){
  .appointment-steps,
  .appointment-form-wrapper{
    padding-left: 1.5em;
    padding-right: 1.5em;
  }

  .appointment-form-wrapper{
    max-width:calc(100% - 1.5em);
  }

  #apt_locatorMapResult .locator-result-inner{
    height: auto;
    padding-right: 0;
    margin-bottom: 1.375rem;
  }

  .locator-main-appointment{
    margin-bottom: 0;
  }
}

@media (max-width: 600px){
  .appointment-steps,
  .appointment-form-wrapper{
    padding-left: 1em;
    padding-right: 1em;
  }

  .appointment-form-wrapper{
    max-width:100%;
  }

  .appointment-loading #bodymovin.m-spinner{
    height: auto;
    width: 100%
  }
}

@media (max-width: 480px){

  .appointment-steps li{
    width: 23%;
  }

  .appointment-form-wrapper .form-send button{
    display:block;
    margin-left: auto;
    margin-right: auto;
  }

  .appointment-form-wrapper .form-send .button-secondary {
    font-size: 0.813rem;
    padding: 1em 1.375em;
    margin-bottom: 1.875em;
  }

  .appointment-section-3 header{
    display: none;
  }

  .appointment-section-3 .form-item-intro {
    padding-bottom: 1em;
    padding-top: 1.5em;
  }
}

