 .registro-datos {
   text-align: center;
   padding-top: 1.5rem;
 }

 .registro-datos h3 {
   margin: 0 0 0.5rem;
   font-size: 1.75rem;
   color: #0C3A97;
   font-weight: 400;
 }

 @media only screen and (max-width: 991px) {
   .registro-datos h3 {
     font-size: 34px;
   }
 }

 .registro-datos p {
   font-size: 0.9rem;
   line-height: 1.2;
 }

 @media only screen and (max-width: 991px) {
   .registro-datos p {
     font-size: 20px;
   }
 }

 .form-group {
   text-align: left;
   margin-bottom: 1.25rem;
 }

 .form-group label {
   display: block;
   color: #3C3C3C;
   font-weight: 500;
   margin-bottom: 0.7rem;
 }

 @media only screen and (max-width: 991px) {
   .form-group label {
     font-size: 20px;
   }
 }

 .form-group .input {
   width: 100%;
   height: 40px;
   background: #ECEFF4;
   border: none;
   padding: 0 0.8rem;
 }

 .form-group .input.error {
   border: 1px solid #FF5A5A;
 }

 .form-group .select {
   width: 100%;
   height: 40px;
   background-color: #ECEFF4;
   border: none;
   padding: 0.1rem 0.8rem;
   appearance: none;
 }

 .form-group .select.error {
   border: 1px solid #FF5A5A;
 }

 .card-form {
   border: 8px solid #ECEFF4;
   border-radius: 8px;
   padding: 2.6rem;
 }

 .card-form .form-fono {
   display: flex;
 }

 .card-form .form-fono .select {
   margin-right: 1rem;
   width: 80px;
   min-width: 80px;
 }

 .card-form .bloque-datos {
   text-align: left;
   border-bottom: 1px solid #B2B2B2;
   padding-bottom: 0.8rem;
   margin-bottom: 0.8rem;
 }

 .card-form .bloque-datos.s-b {
   border: none;
   padding-bottom: 0;
 }

 .card-form .bloque-datos h4 {
   font-size: 0.95rem;
   color: #0C3A97;
   margin: 0 0 0.5rem;
 }

 @media only screen and (max-width: 991px) {
   .card-form .bloque-datos h4 {
     font-size: 20px;
   }
 }

 .card-form .bloque-datos p {
   margin-bottom: 0.5rem;
   font-size: 0.95rem;
 }

 @media only screen and (max-width: 991px) {
   .card-form .bloque-datos p {
     font-size: 20px;
   }
 }

 .card-form .bloque-datos p span {
   display: inline-block;
   width: 150px;
   font-weight: bold;
 }

 @media only screen and (max-width: 991px) {
   .card-form .bloque-datos p span {
     display: block;
     width: 100%;
   }
 }

 .card-form .form-group-edit {
   display: flex;
   text-align: left;
   align-items: center;
   margin-bottom: 0.95rem;
   position: relative;
 }

 @media only screen and (max-width: 991px) {
   .card-form .form-group-edit {
     display: block;
     padding-right: 2.5rem;
   }
 }

 .card-form .form-group-edit label {
   display: inline-block;
   width: 150px;
   min-width: 150px;
   font-weight: bold;
   font-size: 0.95rem;
 }

 @media only screen and (max-width: 991px) {
   .card-form .form-group-edit label {
     font-size: 20px;
     display: block;
     width: 100%;
   }
 }

 .card-form .form-group-edit .select {
   opacity: 1;
 }

 .card-form .form-group-edit .select.disabled {
   color: #555;
 }

 .card-form .form-group-edit .input[disabled] {
   color: #555;
 }

 .card-form .form-group-edit .edit {
   width: 26px;
   min-width: 26px;
   height: 26px;
   border-radius: 50%;
   border: 1px solid #0C3A97;
   color: #0C3A97;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 0.7rem;
   margin-left: 1rem;
   position: relative;
   cursor: pointer;
 }

 @media only screen and (max-width: 991px) {
   .card-form .form-group-edit .edit {
     position: absolute;
     bottom: 6px;
     right: 0;
   }
 }

 .card-form .form-group-edit .edit .ic-check {
   display: none;
 }

 .card-form .form-group-edit .edit.activo {
   background: #009B3A;
   border-color: #009B3A;
   color: #fff;
 }

 .card-form .form-group-edit .edit.activo .ic-check {
   display: block;
 }

 .card-form .form-group-edit .edit.activo .ic-edit {
   display: none;
 }

 .botones-group {
   display: flex;
   justify-content: center;
   padding-top: 1.5rem;
 }

 .botones-group .btn {
   min-width: 95px;
   margin: 0 0.5rem;
 }

 @media only screen and (max-width: 991px) {
   .botones-group {
     flex-direction: column;
     align-items: center;
   }

   .botones-group .btn {
     min-width: 240px;
     margin-bottom: 1rem;
     font-size: 20px;
     padding-left: 1rem;
     padding-right: 1rem;
   }
 }

 .alerta {
   display: block;
   text-align: left;
   color: #0C3A97;
   padding: 0.5rem;
   border: 1px solid #69C8F3;
   background: #EEFAFF;
   border-radius: 4px;
   margin-bottom: 1.2rem;
   position: relative;
   padding-left: 2.5rem;
 }

 .alerta i {
   position: absolute;
   top: 0.6rem;
   left: 1rem;
 }

 @media only screen and (max-width: 991px) {
   .alerta {
     font-size: 20px;
   }
 }

 .forms-edit {
   padding-top: 1rem;
 }

 .mensaje-reserva {
   text-align: center;
   margin-bottom: 2rem;
 }

 .mensaje-reserva img {
   margin-bottom: 0.4rem;
 }

 .mensaje-reserva h3 {
   margin: 0 0rem;
   color: #009B3A;
   font-size: 1.75rem;
   font-weight: 500;
   line-height: 1;
 }

 .mensaje-reserva p {
   margin: 0;
   color: #009B3A;
   font-size: 1.5rem;
   color: #009B3A;
 }

 .texto-abajo {
   padding: 1.5rem 0;
 }

 .texto-abajo p {
   font-size: 0.95rem;
   margin-bottom: 0;
 }

 @media only screen and (max-width: 991px) {
   .texto-abajo p {
     font-size: 20px;
   }
 }



 .reserva-home {
   padding: 2.5rem 0;
   position: relative;
   margin-top: -140px;
 }

 .reserva-home:before {
   content: "";
   display: block;
   position: absolute;
   top: 0;
   width: 100%;
   height: 300px;
 }

 .reserva-home h1 {
   font-size: 3.5rem;
   margin: 0 0 4.5rem;
   color: #0C3A97;
   font-weight: 600;
   position: relative;
   z-index: 2;
 }

 @media only screen and (max-width: 991px) {
   .reserva-home h1 {
     font-size: 2.5rem;
     margin: 0 0 2rem;
   }
 }

 .reserva-home .box-reserva {
   background: #F9F8F0;
   border-radius: 6px;
   padding: 1rem 1.5rem;
   width: 100%;
   position: relative;
   z-index: 2;
   box-shadow: 0px 10px 10px 0px rgba(184, 184, 184, 0.25);
 }

 .reserva-home .box-reserva .reserva_flex {
   display: flex;
 }

 .reserva-home .box-reserva .form-group {
   margin-bottom: 1.5rem;
 }

 .reserva-home .box-reserva h5 {
   margin: 0 0 1rem;
   display: flex;
   align-items: center;
   color: #0C3A97;
   font-size: 0.95rem;
 }

 .reserva-home .box-reserva h5 span {
   width: 18px;
   min-width: 18px;
   height: 18px;
   border-radius: 50%;
   color: #fff;
   display: inline-flex;
   align-items: center;
   justify-content: center;
   font-size: 0.9rem;
   background: #0C3A97;
   margin-right: 0.4rem;
 }

 .reserva-home .box-reserva .form-group {
   margin-bottom: 1.5rem;
 }

 .reserva-home .box-reserva .form-radio-ua {
   margin-bottom: 0.6rem;
 }

 @media only screen and (max-width: 991px) {
   .reserva-home .box-reserva .form-radio-ua {
     justify-content: flex-start;
   }
 }

 .reserva-home .box-reserva .form-radio-ua.horizontal {
   display: flex;
   align-items: center;
   margin-top: 10px;
 }

 @media only screen and (max-width: 991px) {
   .reserva-home .box-reserva .form-radio-ua.horizontal {
     justify-content: flex-start;
   }
 }

 .reserva-home .box-reserva .form-radio-ua.horizontal .item-radio {
   margin-right: 1rem;
 }

 .reserva-home .box-reserva .form-radio-ua.horizontal .item-radio:last-child {
   margin-right: 0;
 }

 .reserva-home .box-reserva .form-radio-ua .item-radio {
   margin-bottom: 0.4rem;
 }

 @media only screen and (max-width: 768px) {
   .reserva-home .box-reserva .form-radio-ua {
     text-align: center;
     display: flex;
     flex-wrap: wrap;

   }

   .reserva-home .box-reserva .form-radio-ua .item-radio {
     margin: 0 1.25rem;
   }
 }

 @media only screen and (max-width: 550px) {
   .reserva-home .box-reserva .form-radio-ua .item-radio {
     width: 50%;
     margin: 0 0 0.4rem;
     text-align: left;
     min-height: 35px;
   }
 }

 .reserva-home .box-reserva .form-radio-ua>label {
   display: block;
   font-size: 1rem;
   color: #3A404A;
   font-weight: 800;
   margin-bottom: 0.125rem;
   text-align: left;
 }

 .reserva-home .box-reserva .form-radio-ua .item-radio input[type=radio] {
   display: none;
   /* Oculta los botones de radio por defecto */
 }

 .reserva-home .box-reserva .form-radio-ua .item-radio input[type=checkbox] {
   display: none;
   /* Oculta los botones de radio por defecto */
 }

 .reserva-home .box-reserva .form-radio-ua .item-radio label {
   position: relative;
   padding-left: 22px;
   line-height: initial;
   cursor: pointer;
   font-weight: 300;
   font-size: 1rem;
   color: #3A404A;
 }

 .reserva-home .box-reserva .form-radio-ua .item-radio label:before {
   content: "";
   position: absolute;
   left: 0;
   top: 1px;
   width: 14px;
   height: 14px;
   border: 3px solid #B2B2B2;
   border-radius: 50%;
   /* Hace que el círculo sea redondo */
 }

 .reserva-home .box-reserva .form-radio-ua .item-radio input[type=radio]:checked+label:before {
   border-color: #0C3A97;
 }

 .reserva-home .box-reserva .form-radio-ua .item-radio.cuadrado label:before {
   border-radius: 0;
 }

 .reserva-home .box-reserva .form-radio-ua .item-radio.cuadrado input[type=checkbox]:checked+label:after {
   border-radius: 0;
 }

 .reserva-home .box-reserva .form-radio-ua.flex {
   align-items: center;
 }

 .reserva-home .box-reserva .form-radio-ua.flex .item-radio {
   margin-right: 1.1rem;
 }

 .reserva-home .box-reserva .form-radio-ua.flex .item-radio:last-child {
   margin-right: 0;
 }

 @media only screen and (max-width: 550px) {
   .reserva-home .box-reserva .form-radio-ua.flex {
     justify-content: space-between;
   }

   .reserva-home .box-reserva .form-radio-ua.flex .item-radio {
     width: auto;
     margin: 0;
     text-align: left;
   }
 }

 .box-reserva {

   margin-top: 0.5rem;
 }


 .box-reserva .text-right {
   text-align: right;
 }

 .box-reserva .text-right .btn {
   margin: 0 0 0 auto;
 }

 .box-reserva .paso-reserva {
   border-right: 1px solid #ccc;
   flex-grow: 1;
 }

 .box-reserva .paso-reserva.paso-1 {
   min-width: 26%;
   width: 26%;
 }



 .box-reserva .paso-reserva.paso-2 {
   padding: 0 4rem;
   width: 47%;
 }


 .box-reserva .paso-reserva.paso-3 {
   border: none;
   min-width: 26%;
   width: 26%;
   padding-left: 3rem;
 }


 .reserva-header {
   display: flex;
   align-items: center;
   justify-content: space-between;
 }

 @media only screen and (max-width: 991px) {

   .box-reserva {
     flex-direction: column;
   }

   .box-reserva .paso-reserva.paso-1 {
     width: 100%;
     min-width: 100%;
     border: none;
   }

   .box-reserva .paso-reserva.paso-2 {
     width: 100%;
     min-width: 100%;
     padding: 2rem 0;
     border: none;
   }

   .box-reserva .paso-reserva.paso-3 {
     width: 100%;
     min-width: 100%;
     border: none;
     padding-left: 0;
   }

   .reserva-header {
     flex-direction: column;
     align-items: flex-start;
   }

   .reserva-home .box-reserva .reserva_flex {
     flex-direction: column;
   }

   .elementor-element-653ea093 {
     width: 35%;
   }

   .elementor-element-9dbdfaf {
     width: 50%;
     justify-content: center;
     align-items: center;
   }

   .elementor-element-33fcf134 {
     width: 15%;
     justify-content: flex-end;
     display: flex;
     align-items: flex-end;
   }

   .pasos-reserva {
     margin-bottom: 2rem;
   }

   .elementor-14435 .elementor-element.elementor-element-3970d8cd .elementor-button {
     font-family: "Roboto", Sans-serif;
     font-weight: 500;
     fill: #FFFFFF;
     color: #FFFFFF;
     background-color: #FF48B4;
     font-size: 12px;
     padding: 10px 15px;
   }

 }

 .pasos-reserva {
   display: flex;
   align-items: center;
   position: relative;
   z-index: 2;
 }


 .pasos-reserva:after {
   content: "";
   position: absolute;
   bottom: 9px;
   left: 0;
   right: 0;
   height: 2px;
   width: 80%;
   background: #D9D9D9;
   margin: 0 auto;
 }

 .pasos-reserva .item-paso {
   text-align: center;
   width: 82px;
   margin: 0 0.5rem;
 }

 @media only screen and (max-width: 768px) {
   .pasos-reserva .item-paso {
     width: auto;
   }
 }

 .pasos-reserva .item-paso__ic {
   margin-bottom: 0.2rem;
   height: 38px;
   display: flex;
   align-items: center;
   justify-content: center;
 }

 .pasos-reserva .item-paso__ic img {
   max-width: 50%;
 }

 .pasos-reserva .item-paso p {
   font-size: 0.75rem;
   color: #B2B2B2;
   line-height: 1.2;
   margin-bottom: 0.4rem;
 }

 .pasos-reserva .item-paso span {
   width: 10px;
   height: 10px;
   border-radius: 50%;
   background: #D9D9D9;
   display: inline-block;
   position: relative;
   z-index: 2;
 }


 .modal-agenda .modal-agenda__body p:last-child {
   margin-bottom: 0;
 }

 .modal-agenda .modal-agenda__btn {
   display: flex;
   align-items: center;
 }

 .modal-agenda .modal-agenda__btn .btn {
   margin-left: 1rem;
 }

 .recaptcha {
   margin-bottom: 1rem;
 }




 .lds-dual-ring.hidden {
   display: none;
 }

 .lds-dual-ring {
   display: inline-block;
   width: 80px;
   height: 80px;
 }

 .lds-dual-ring:after {
   content: " ";
   display: block;
   position: relative;
   top: 35%;
   width: 64px;
   height: 64px;
   margin: 5% auto;
   border-radius: 50%;
   border: 6px solid #0C3A97;
   border-color: #0C3A97 transparent #0C3A97 transparent;
   animation: lds-dual-ring 1.2s linear infinite;
 }

 @keyframes lds-dual-ring {
   0% {
     transform: rotate(0deg);
   }

   100% {
     transform: rotate(360deg);
   }
 }


 .overlay {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100vh;
   background: rgba(255, 255, 255, .8);
   z-index: 9999;
   opacity: 1;
   transition: all 0.5s;
 }

 form .error,
 .error_rut_s {
   color: #ff0000;
 }




 .select2-container--default .select2-selection--single,
 .select2-container--default .select2-selection--multiple {
   background-color: #ECEFF4 !important;
   height: 40px !important;
   border: 0px !important;
   width: 100%;
 }

 .select2-container--default .select2-selection--single .select2-selection__rendered {
   color: #444;
   line-height: 28px;
   width: 100%;
   border: none;
   appearance: none;
   border: 0px;
   height: 40px !important;
   display: flex !important;
   align-items: center;
 }


 .select2-container--default .select2-results__group {
   cursor: default;
   display: block;
   padding: 10px;


 }

 .select2-search__field {
   outline: none;
 }

 .select2-container--default .select2-selection--single .select2-selection__arrow {
   height: 40px !important;
 }

 .select2-container {
   display: block !important;
 }

 #extranjero {
   display: none;
 }

 .error_rut_s {
   display: none;
 }


 body.error_rut #billing_rut {

   border: 1px solid red;
 }


 body.error_rut #billing_rut:before {

   content: "Debe ingresar un rut correcto";
   display: block;
   width: 100%;

 }


 body.error_rut .error_rut_s {
   display: block !important;
   font-weight: 500;
   margin-bottom: 0.7rem;
   font-size: 1rem;
 }


 body.error_rut #billing_rut-error {
   display: block !important;
 }

 body.error_rut .box-reserva .text-right .btn {
   cursor: not-allowed;
   pointer-events: none;
   opacity: 0.6;
 }

 .d-none {
   display: none;
 }


 .select2-container--default .select2-selection--single,
 .select2-container--default .select2-selection--multiple {

   max-width: 405px;

 }


 span.select2-selection.select2-selection--multiple {
   height: auto !important;
 }

 .select2-results__option {
   font-size: 14px;
   padding: 8px !important;
   color: #212121 !important;
 }


 .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
   background-color: #ededed !important;
   color: #212121 !important;
   font-size: 14px;

 }

 .select2-results__group {
   font-size: 1rem;
   color: #0C3A97 !important;
   font-weight: 500 !important;
   padding: 0px !important;
 }


 .reserva-home .box-reserva .form-radio-ua .item-radio input[type=radio]:checked+label:before {
   border-color: #0C3A97;
   background: #0C3A97;
 }

 .titulo_box_agenda h2 {
   color: #0c3a97;
   font-size: 1.9rem;
 }