@import url("bootstrap.min.css");
@import url("owl.carousel.min.css");
@import url("bootstrap-datepicker.min.css");
@import url("select2.min.css");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;700&display=swap");
body {
  font-family: "Montserrat", sans-serif;
  font-size: 16px; }

@media (max-width: 1200px) {
  main#hidden {
    margin-bottom: 10vh; } }

@media (max-width: 1200px) {
  main#hidden #fixed-details {
    display: none; } }

.container.custom {
  max-width: 1600px;
  width: 100%; }

/*Header*/
header {
  background: #fff; }
  header ul.owl-carousel {
    padding: 0;
    margin: 0;
    position: relative; }
    header ul.owl-carousel li.item {
      list-style: none; }
    header ul.owl-carousel .owl-nav {
      display: flex;
      justify-content: space-between;
      position: absolute;
      width: 100vw;
      top: 45%; }
      header ul.owl-carousel .owl-nav .owl-prev, header ul.owl-carousel .owl-nav .owl-next {
        background-color: rgba(0, 0, 0, 0.35);
        width: 3rem;
        height: 3rem;
        border-radius: 50%; }
        header ul.owl-carousel .owl-nav .owl-prev span, header ul.owl-carousel .owl-nav .owl-next span {
          color: #fff;
          font-size: 2rem;
          line-height: 1.75rem; }
      header ul.owl-carousel .owl-nav .owl-prev {
        margin-left: 1rem; }
      header ul.owl-carousel .owl-nav .owl-next {
        margin-right: 1rem; }
    header ul.owl-carousel .owl-dots {
      position: absolute;
      bottom: 50px;
      width: 100%;
      z-index: 9999;
      display: flex;
      justify-content: center;
      gap: 1rem; }
      @media (max-width: 767px) {
        header ul.owl-carousel .owl-dots {
          bottom: 20px; } }
      header ul.owl-carousel .owl-dots .owl-dot span {
        display: block;
        border-radius: 50%;
        width: 0.8rem;
        height: 0.8rem;
        background-color: rgba(0, 0, 0, 0.35); }
      header ul.owl-carousel .owl-dots .owl-dot.active span {
        background-color: #fff; }
  @media (max-width: 991px) {
    header #desktopSlider {
      display: none; } }
  header #mobileSlider {
    display: block; }
    @media (min-width: 992px) {
      header #mobileSlider {
        display: none; } }

/*MINI CITAS*/
.minicitas {
  background: #fff;
  max-width: 800px;
  padding: 1.5rem;
  position: relative;
  z-index: 999;
  border-radius: 6px;
  margin: -2rem auto 1rem auto;
  box-shadow: 0px 0.1px 0.1px rgba(167, 177, 185, 0.3), 0px 0.7px 0.8px -0.5px rgba(167, 177, 185, 0.29), 0px 1.3px 1.4px -0.9px rgba(167, 177, 185, 0.28), 0px 2.3px 2.5px -1.4px rgba(167, 177, 185, 0.28), -0.1px 3.9px 4.2px -1.8px rgba(167, 177, 185, 0.27), -0.1px 6.5px 7.1px -2.3px rgba(167, 177, 185, 0.26), -0.1px 10.3px 11.2px -2.7px rgba(167, 177, 185, 0.25);
  overflow: hidden;
  border: 1px solid #eaeaea; }
  @media (max-width: 768px) {
    .minicitas {
      margin: 0 auto 1rem auto;
      width: 100vw; } }
  .minicitas .content {
    text-align: center; }
    .minicitas .content h3 {
      color: #FFFF;
      font-weight: 600;
      font-size: 1.5rem;
      margin-bottom: 0rem;
       }
    .minicitas .content p {
      color: #333;
      font-size: 1rem; }
    .minicitas .content ul.populars {
      display: flex;
      column-gap: 1rem;
      row-gap: 0.5rem;
      justify-content: center;
      padding-left: 0;
      flex-wrap: wrap;
      margin-bottom: 2rem; }
      @media (max-width: 768px) {
        .minicitas .content ul.populars {
          margin-bottom: 1rem; } }
      .minicitas .content ul.populars li.popular-item {
        list-style: none; }
        .minicitas .content ul.populars li.popular-item a.popular-item-link {
          display: block;
          font-size: 1rem;
          color: #fff;
          font-weight: 500;
          text-decoration: none;
          padding: 0.25rem 0.5rem;
          border-radius: 6px; }
     
    .minicitas .content .form-control.custom {
      height: 30px;
      max-width: 10px;
      padding: 1rem 1rem;
   }
    

/*NAV*/
nav.navbar a.navbar-brand.single {
  margin: 2px auto; }

nav.navbar a.navbar-brand img.logo {
  height: 60px;
  width: auto; }

nav.navbar button.navbar-toggler {
  cursor: pointer;
  border: 0;
  outline: 0;
  box-shadow: none;
  border-radius: 0; }
  nav.navbar button.navbar-toggler.toggled ul.buns li.bun {
    -webkit-transform: rotate(45deg) translateZ(0);
    transform: rotate(45deg) translateZ(0); }
    nav.navbar button.navbar-toggler.toggled ul.buns li.bun:last-child {
      -webkit-transform: rotate(-45deg) translateZ(0);
      transform: rotate(-45deg) translateZ(0); }
  nav.navbar button.navbar-toggler ul.buns {
    width: 1.5em;
    height: 1.5em;
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    top: 25%;
    -webkit-transition: -webkit-transform 1s cubic-bezier(0.23, 1, 0.32, 1), background-color 1s cubic-bezier(0.23, 1, 0.32, 1);
    transition: transform 1s cubic-bezier(0.23, 1, 0.32, 1), background-color 1s cubic-bezier(0.23, 1, 0.32, 1);
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
    nav.navbar button.navbar-toggler ul.buns li.bun {
      width: 100%;
      height: 2px;
      background-color: #000;
      position: absolute;
      display: block;
      top: 50%;
      margin-top: -.75px;
      -webkit-transform: translateY(-3.75px) translateZ(0);
      transform: translateY(-3.75px) translateZ(0);
      -webkit-transition: -webkit-transform 1s cubic-bezier(0.23, 1, 0.32, 1), background-color 1s cubic-bezier(0.23, 1, 0.32, 1);
      transition: transform 1s cubic-bezier(0.23, 1, 0.32, 1), background-color 1s cubic-bezier(0.23, 1, 0.32); }
      nav.navbar button.navbar-toggler ul.buns li.bun:last-child {
        -webkit-transform: translateY(3.75px) translateZ(0);
        transform: translateY(3.75px) translateZ(0); }

nav.navbar .navbar-collapse ul.navbar-nav {
  width: 85%;
  justify-content: flex-end;
  align-items: center;
  display: flex; }
  nav.navbar .navbar-collapse ul.navbar-nav li.nav-item {
    text-align: center; }
    @media (max-width: 768px) {
      nav.navbar .navbar-collapse ul.navbar-nav li.nav-item {
        border-bottom: 1px solid #EEF3F7;
        width: 50%; } }
    nav.navbar .navbar-collapse ul.navbar-nav li.nav-item:last-child {
      border-bottom: 0; }
    nav.navbar .navbar-collapse ul.navbar-nav li.nav-item.active a.nav-link {
      color: #3EB841;
      font-weight: 500; 
      max-width: 60px;}
    nav.navbar .navbar-collapse ul.navbar-nav li.nav-item a.nav-link {
      color: #333;
      font-size: 1.1rem; }
      @media (min-width: 769px) {
        nav.navbar .navbar-collapse ul.navbar-nav li.nav-item a.nav-link {
          padding: 1.5rem 0.7rem; } }

nav.navbar ul.navbar-nav li.nav-item.whatsapp {
  display: flex;
  justify-content: center; }
  nav.navbar ul.navbar-nav li.nav-item.whatsapp a.nav-link {
    display: flex;
    align-items: center;
    gap: 0.5rem; }
    nav.navbar ul.navbar-nav li.nav-item.whatsapp a.nav-link img {
      width: 120px;
      height: 40px; }
    nav.navbar ul.navbar-nav li.nav-item.whatsapp a.nav-link p {
      display: block;
      font-size: 0.8rem;
      margin-bottom: 0; }
      nav.navbar ul.navbar-nav li.nav-item.whatsapp a.nav-link p span {
        display: block; }

a.schedule-button {
  background: #3EB841;
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
  display: flex;
  align-content: center;
  flex-wrap: nowrap;
  justify-content: center;
  padding: 1rem;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 0.8rem;
  gap: 0.5rem;
  text-align: right;
  transition: background 0.3s ease;
  width: 400px;
   }
.icon-calendar {
  width: 2rem;
  height: 2rem;
  fill: currentColor; /* Hereda el color del texto */
}
a.schedule-button i {
  font-size: 1.4rem; }


 a.schedule-button svg {
  
    height: 10px; }
    a.schedule-button svg path {
      fill: #fff; }

   @media (min-width: 769px) {
    a.schedule-button {
      margin-left: 1rem; } }
 

/*Headings*/
h1.main-title {
  font-size: 1.5rem;
  font-weight: 500;
  color: #333;
  text-align: center; }

h3.subtitle {
  font-size: 1.5rem;
  font-weight: 700;
  color: #121612;
  margin-bottom: 1rem; }

p.paragraph {
  color: #333;
  margin-bottom: 1.5rem;
  line-height: 1.75; }

.titlebar {
  padding: 2rem 0;
  background: #3EB841;
  color: #fff; }
  @media (max-width: 991px) {
    .titlebar {
      padding: 1rem 0; } }
  .titlebar h1.title {
    font-size: 2rem;
    font-weight: 700; }
    @media (max-width: 991px) {
      .titlebar h1.title {
        font-size: 1.5rem; } }
  .titlebar p.subtitle {
    font-size: 1rem;
    margin-bottom: 0; }
    @media (max-width: 991px) {
      .titlebar p.subtitle {
        margin-bottom: 1rem; } }

/*Benefits*/
.benefits {
  padding: 4rem 0; }
  @media (max-width: 991px) {
    .benefits {
      padding: 2rem 0; } }
  .benefits .why {
    margin-bottom: 1.5rem; }
    .benefits .why.text {
      padding-left: 1.5rem; }
      @media (max-width: 991px) {
        .benefits .why.text {
          padding-left: 0; } }
    .benefits .why ul {
      margin-bottom: 2rem;
      padding-left: 2.5rem; }
      .benefits .why ul li {
        margin-bottom: 1.5rem;
        list-style: none;
        position: relative; }
        .benefits .why ul li::before {
          content: '';
          position: absolute;
          background: url(../img/icons/check-circle-green.svg) no-repeat;
          width: 28px;
          height: 28px;
          top: -2px;
          left: -36px; }
    .benefits .why .image {
      margin-top: 1rem; }
      @media (max-width: 768px) {
        .benefits .why .image {
          margin-top: 2rem; } }
    .benefits .why a {
      display: inline-block;
      padding: 0.75rem 2rem; }
    .benefits .why video {
      width: 100%;
      hright: auto; }

/*SERVICES*/
.services {
  padding: 2rem 0; }
  @media (max-width: 991px) {
    .services {
      padding: 2rem 0; } }
  .services h2 {
    font-weight: 300;
    text-align: center;
    font-size: 1.5rem;
    margin-bottom: 0.75rem;
    color: #121612; }

/*TESTIMONIALS*/
.testimonials {
  background: #EEF3F7;
  padding: 4rem 0;
  background-image: radial-gradient(#ccc 5%, transparent 0);
  background-size: 30px 30px;
  background-attachment: fixed; }
  @media (max-width: 991px) {
    .testimonials {
      padding: 2rem 0; } }
  .testimonials h3.subtitle {
    text-align: center;
    font-size: 1.5rem;
    color: #3EB841;
    font-weight: 700;
    margin-bottom: 2rem; }
    @media (max-width: 991px) {
      .testimonials h3.subtitle {
        margin-top: 2rem; } }
  .testimonials .testimonials-container {
    display: flex;
    justify-content: center; }
    .testimonials .testimonials-container .testimonial-item {
      display: grid;
      align-items: center;
      grid-template-columns: minmax(70px, 140px) 1fr;
      grid-template-rows: auto;
      gap: 20px;
      padding: 1rem;
      background: #fff;
      border-radius: 6px;
      margin: 0 auto 3rem auto;
      max-width: 90%;
      box-shadow: 0px 0.1px 0.1px rgba(167, 177, 185, 0.3), 0px 0.7px 0.8px -0.5px rgba(167, 177, 185, 0.29), 0px 1.3px 1.4px -0.9px rgba(167, 177, 185, 0.28), 0px 2.3px 2.5px -1.4px rgba(167, 177, 185, 0.28), -0.1px 3.9px 4.2px -1.8px rgba(167, 177, 185, 0.27), -0.1px 6.5px 7.1px -2.3px rgba(167, 177, 185, 0.26), -0.1px 10.3px 11.2px -2.7px rgba(167, 177, 185, 0.25);
      border: 1px solid #EEF3F7; }
      @media (max-width: 991px) {
        .testimonials .testimonials-container .testimonial-item {
          margin: 0 auto 1.5rem auto;
          grid-template-columns: 70px 1fr;
          align-items: start; } }
      .testimonials .testimonials-container .testimonial-item.spaced {
        margin-top: 3rem; }
        @media (max-width: 991px) {
          .testimonials .testimonials-container .testimonial-item.spaced {
            margin-top: 1.5rem; } }
      .testimonials .testimonials-container .testimonial-item .avatar {
        border-radius: 50%;
        outline: 4px solid #fff;
        border: 4px solid #fff;
        overflow: hidden; }
        .testimonials .testimonials-container .testimonial-item .avatar.color1 {
          outline-color: #689aa0; }
        .testimonials .testimonials-container .testimonial-item .avatar.color2 {
          outline-color: rgba(0, 165, 104, 0.7); }
        .testimonials .testimonials-container .testimonial-item .avatar.color3 {
          outline-color: rgba(0, 143, 165, 0.7); }
        .testimonials .testimonials-container .testimonial-item .avatar.color4 {
          outline-color: rgba(16, 87, 148, 0.7); }
        .testimonials .testimonials-container .testimonial-item .avatar img {
          display: block; }
      .testimonials .testimonials-container .testimonial-item .content h3.title {
        font-weight: 700;
        font-size: 1rem;
        margin-top: 0.5rem; }
      .testimonials .testimonials-container .testimonial-item .content p.description {
        font-size: 1rem; }
      .testimonials .testimonials-container .testimonial-item .content span.pacient-name {
        font-size: 0.75rem;
        font-weight: 700; }

        /*options*/
.options .container-fluid {
  max-width: 1920px;
  width: 100%;
  padding-left: 0;
  padding-right: 0; } 
  
 .seccion-dinamica {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}


.option-item {
  overflow: hidden;
  min-width: 300px;
  background: #ffff;
  min-height: 400px;
  background-size: cover;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
transition: transform 0.3s ease; }

  /*.option-item:hover {
 /*transform: scale(1.03);*/
/* transform: translateX(10px);
transform: scale(1.03) translateY(-5px);

/*transform: scale(1.03) translateY(-5px); 


}*/

.card-servicio {
  position: relative;
  width: 450px;
  height: 300px;
  background-size: 110%;
  background-position: center;
  background-repeat: no-repeat;
  transition: background-position 1.5s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  border-radius: 12px;
  overflow: hidden;
  color: white;
}

/* Cambia aquí las imágenes de fondo */
.card-servicio:nth-child(1) {
  background-image: url('../img/escaneo.png');
}

.card-servicio.cantil {
  background-image: url('../img/citas_img.jpg');
}

.card-servicio.tlahuac {
  background-image: url('../img/coapa.webp');
}

.card-servicio:hover {
  background-position: right center;
}

.contenido-servicio {
  background-color: rgba(0, 0, 0, 0.5);
  padding: 30px;
  border-radius: 10px;
  text-align: center;
}

.contenido-servicio h2 {
  font-size: 28px;
  margin-bottom: 20px;
}

.boton-servicio {
  padding: 12px 24px;
  font-size: 16px;
  font-weight: bold;
  border: none;
  border-radius: 8px;
  background-color: #8CBF3F;
  color: white;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
  animation: none;
}

.card-servicio:hover .boton-servicio {
  animation: bounce 0.6s ease;
  background-color: #0056b3;
}

@keyframes bounce {
  0% { transform: translateY(0); }
  30% { transform: translateY(-10px); }
  60% { transform: translateY(5px); }
  100% { transform: translateY(0); }
}


  .option .content {
    text-align: center; }
    .option .content h5 {
      color: #FFFF;
      font-weight: 400;
      font-size:3rem;
      margin-bottom: 1rem;
      margin-top: 6rem;
      border: 3px solid #fff;
      display: inline-block;
  /*      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); */
      
       }
  .option-item.coapa {
    background-image: url("../img/escaneo.png"); }
  .option-item.cantil {
    background-image: url("../img/citas_img.jpg"); }
  .option-item.tlahuac {
    background-image: url("../img/coapa.webp"); }
  
    
/* Responsive */
@media (max-width: 768px) {
  .seccion-dinamica {
    flex-direction: column;
  }

  .option-item {
    height: 200px;
  }

  .overlay h2 {
    font-size: 24px;
  } 
}

    
  @media (max-width: 991px) {
  .option-item {
      padding: 1.5rem 1.5rem;
      min-height: 240px; } }
  .option-item .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 90; }
    .option-item .overlay.left {
      background: rgba(0, 143, 165, 0.75); }
    .option-item .overlay.center {
      background: rgba(8, 157, 152, 0.75);}
    .option-item .overlay.right {
      background: rgba(62, 184, 65, 0.75);}
   .option-item .content {
    position: relative;
    z-index: 99; }
    .option-item .content .options {
      display: flex;
      gap: 1rem;
      align-items: flex-start; }
      .option-item .content .options .icon-options {
        margin-bottom: 1rem; }
        .option-item .content .options .icon-options svg {
          width: 50px;
          height: 50px; }
          .option-item .content .options .icon-option svg path {
            fill: #fff; }
      .option-item .content .options .option-info {
        position: relative; }
        .option-item .content . .options-info h3.option-name {
          font-size: 1.5rem;
          font-weight: 700;
          color: #fff; }
        .option-item .content .options .option-info p.option-location {
          color: #fff;
          margin-bottom: 1.25rem;
          color: #fff;
          min-height: 50px; }
          @media (max-width: 768px) {
            .option-item .content .options .option-info p.option-location {
              min-height: auto;
              margin-bottom: 0.5rem; } }
    .option-item .content h4.option-hours {
      font-size: 0.9rem;
      text-transform: uppercase;
      font-weight: 500;
      color: #fff;
      letter-spacing: 1px;
      margin-bottom: -1rem;
      margin-top: 1.5rem; }
    .option-item .content ul {
      margin-top: 0.5rem;
      display:  flex;
      padding-left: 0;
      flex-direction: column; }
      .option-item .content ul li {
        font-size: 1rem;
        list-style: none;
        padding: 1rem 0;
        color: #f4f4f4;
        display: flex;
        justify-content: space-between; }
        .option-item .content ul li:first-child {
          border-bottom: 1px solid #fff }
        .option-item .content ul li span.days {
          display: block;
          font-weight: 300; }
             

          /*servicios*/
          
          .servicios-item {
            padding: 3px; 3px;
            align-content: left;
            overflow: hidden;
            background: #FFFF;
            min-height: 110px;
            background-size: cover;
            position: relative;
            background-position: center;
            background-repeat: no-repeat;
            transition: All 0.25s ease-in; }

.servicios-box {
  background-color: #fff;
  border: 2px solid #ccc;
  border-radius: 12px;
  padding: 3rem 3rem;
  width: 100%;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.servicios-box h2 {
  margin-top: 0;
  margin-bottom: 15px;
  color: #333;
  text-align: center;
}

.lista-servicios {
  list-style: none;
  padding: 0;
  margin: 0;
}

.lista-servicios li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0; 0;
  border-bottom: 1px solid #e0e0e0;
  font-size: 26px;
}

.boton-agregar {
  background-color: #28a745;
  color: white;
  border: none;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 20px;
  cursor: pointer;
  transition: background-color 0.3s;
}

.boton-agregar:hover {
  background-color: #218838;
}





           /*tests*/
.tests .container-fluid {
  max-width: 1920px;
  width: 100%;
  padding-left: 100;
  padding-right: 0; 
  justify-content: center; } 
  
 

.test-item {
  padding: 10rem 2rem;
  overflow: hidden;
  background: #FFFF;
  min-height: 450px;
  background-size: cover;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  transition: All 0.25s ease-in; }

  .test-item.texto {
    padding: 5rem 2rem;
    overflow: hidden;
    background: #FFFF;
    min-height: 450px;
    background-size: cover;
    position: relative;
    background-position: center;
    background-repeat: no-repeat;
    transition: All 0.25s ease-in; }

  .test .content {
    text-align: center; }
    .test .content h5 {
      color: #FFFF;
      font-weight: 600;
      font-size:45px;
      margin-bottom: 1rem;
      margin-top: 2rem;
   
       }

       .test-box {
        position: relative;
        background-color: #fff;
        border-radius: 25px;
        padding: 10px;
        width: 500px;
        height:400;
        
      }
      
       .test .content h6 {
        color: #FFFF;
        font-size: 24px;
        margin-bottom: 1rem;
        margin-top: 10px;
     
         }

         .test-label {
          position: absolute;
          top: -12px;
          right: -5px;
          background-color: #28a745;
          color: #fff;
          padding: 5px 5px;
          font-weight: bold;
          border-radius: 0 8px 0 8px;
          font-size: 16px;
        }

        .test-tipo {
          font-size: 34px;
          color: rgba(0, 143, 165, 0.5);
          margin-bottom: 20px;
          padding-left: 18px;
          left: 20px;
        }
  .test-item.coapa {
    background-image: url("../img/estudio-radiologia.webp"); }
    .test-item.estudio {
      background-image: url("../img/estudio-completos.webp"); }
    .test-item.tomografia {
      background-image: url("../img/estudio-tomografia.webp"); }
      
      .test-item.escaneo {
        background-image: url("../img/categoria-escaneo-intraoral.webp"); }
   
      .test-item.otros {
        background-image: url("../img/otros-estudios.webp"); }
   
 
  @media (max-width: 991px) {
  .test-item {
      padding: 1.5rem 1.5rem;
      min-height: 340px; } }
  .test-item .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 90; }
    .test-item .overlay.left {
      background: rgba(0, 143, 165, 0.5); 
    }
    .test-item .overlay.left1 {
      background: rgba(62, 184, 65, 0.75);
    }
   .test-item .overlay.left2 {
      background: rgba(80, 200, 135, 0.75);
    }
   .test-item .overlay.left3 {
      background: rgba(8, 157, 152, 0.75);
    }
    .test-item .overlay.right1 {
      background: rgba(62, 184, 65, 0.75); 
    }
    .test-item .overlay.right {
      background: rgba(0, 143, 165, 0.5); 
    }
  .test-item .content {
    position: relative;
    z-index: 99; }
    .test-item .content .options {
      display: flex;
      gap: 1rem;
      align-items: flex-start; }
      .test-item .content .options .icon-options {
        margin-bottom: 1rem; }
        .test-item .content .options .icon-options svg {
          width: 50px;
          height: 50px; }
          .test-item .content .options .icon-option svg path {
            fill: #fff; }
      .test-item .content .options .option-info {
        position: relative; }
        .test-item .content .options-info h3.option-name {
          font-size: 1.5rem;
          font-weight: 700;
          color: #fff; }
        .test-item .content .options .option-info p.option-location {
          color: rgba(0, 143, 165, 0.5);
          margin-bottom: 1.25rem;
          color: #fff;
          min-height: 50px; }
          @media (max-width: 768px) {
            .test-item .content .options .option-info p.option-location {
              min-height: auto;
              margin-bottom: 0.5rem; } }
    .test-item .content h4.option-hours {
      font-size: 0.9rem;
      text-transform: uppercase;
      font-weight: 700;
      color: #fff;
      letter-spacing: 1px;
      margin-bottom: -1rem;
      margin-top: 1.5rem; }
    .test-item .content ul {
      margin-top: 0.5rem;
      display:  flex;
      padding-left: 0;
      flex-direction: column; }
      .test-item .content ul li {
        font-size: 1rem;
        list-style: none;
        padding: 1rem 0;
        color: #f4f4f4;
        display: flex;
        justify-content: space-between; }
        .test-item .content ul li:first-child {
          border-bottom: 1px solid rgba(255, 255, 255, 0.5); }
        .test-item .content ul li span.days {
          display: block;
          font-weight: 500; }
        .test-item .content ul li p.hours {
          font-weight: 400;
          margin-bottom: 0; }

/*nuevos css para estudios*/
.servicio {
  background-image: url('');
  background-size: cover;
  background-position: center;
  color: white;
  border-radius: 10px;
  overflow: hidden;
  margin: 20px;
  box-shadow: 0 4px 8px rgba(0, 143, 165, 0.5);;
}

.encabezado {
  background-color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px;
}

.encabezado h2 {
  margin: 0;
  font-size: 24px;
}

.flecha {
  font-size: 24px;
  transition: transform 0.3s ease;
}

.encabezado.activa .flecha {
  transform: rotate(180deg);
}

.contenido {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease;
  background-color: rgba(0, 0, 0, 0.3);
  padding: 0 20px;
}

.contenido ul {
  list-style: none;
  padding: 15px 0;
  margin: 0;
}

.contenido ul li {
  padding: 6px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

/* Responsive */
@media (max-width: 768px) {
  .encabezado h2 {
    font-size: 18px;
  }
  .flecha {
    font-size: 18px;
  }
}


            /*promotion*/
.promo .container-fluid {
  max-width: 1920px;
  width: 100%;
  padding-left: 10;
  padding-right: 10; }

.promo-item {
  padding: 5rem 1rem;
  overflow: hidden;
  min-height: 320px;
  background-size: cover;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  transition: All 0.25s ease-in;
  
  }
  .promo .content {
    text-align: center; }
    .promo .content h5 {
      color: #FFFF;
      font-weight: 300;
      font-size: 2rem;
      margin-bottom: 1rem;
      margin-top: -4rem;
      margin-left: 3rem;
      background-color:  #3EB841;
       }
     
     
  .promo-item .content {
    position: relative;
    }
    .promo-item .content .promos {
      display: flex;
      gap: 1rem;
      align-items: flex-start; }
      
   
          

          .promo-box {
            position: relative;
            background-color: #fff;
            border: 10px solid #60A699;
            border-radius: 25px;
            padding: 20px;
            width:100%;
            height:1250px;
            
          }
          
          .promo-label {
            position: absolute;
            top: -20px;
            right: 20px;
            background-color: #8CBF3F;
            color: #fff;
            padding: 10px 10px;
            font-weight: bold;
            border-radius: 8px 8px 8px 8px;
            background-size: cover;
            font-size: 20px;
          }
          
          .promo-box h2 {
            margin-top: 30px;
            font-size: 30px;
            color: #333;
          }
          
          .precios {
            margin: 25px 80px;
        
          }
          
          .precio-normal {
            text-decoration: line-through;
            color: #999;
            font-size: 30px;
            margin-right: 10px;
          }
          
          .precio-descuento {
            color: #8CBF3F;
            font-size: 30px;
            font-weight: bold;
          }
        
          .leyendaon {
            font-weight: bold;
            color: rgba(0, 143, 165, 0.75);
            margin-bottom: 10px;
          }
          
          .leyenda {
            font-weight: bold;
            color: #c0392b;
            margin-bottom: 10px;
          }
          
          .indicaciones-etiqueta h3 {
            margin-top: 10;
            font-size: 14px;
            color: #333;
          }
          .indicaciones {
            font-size: 18px;
            color: #555;
            margin-bottom: 20px;
            padding-left: 18px;
            left: 20px;
          }
          
          .indicaciones li {
            margin-bottom: 6px;
            left: 10px;
          }
          
          .indicaciones ul {
            margin-top: 6px;
            padding-left: 18px;
            left: 10px;
            list-style-type: circle;
          }
          
          .boton-comprar {
            display: block;
            width: 150px;
            padding: 10px;
            background-color: #3EB841;
            color: white;
            font-size: 16px;
            font-weight: bold;
            border: none;
            border-radius: 8px;
            cursor: pointer;
            text-decoration: none;
            text-align: center;
            margin: 20px auto;
            transition: background-color 0.3s;
            bottom: 20px;
            left:30%;
            position: absolute;
          }
          
          @media (max-width: 200px) {
          .contenedor {
            padding: 0px;
            height: auto;
           }

        .boton-comprar {
          width: 100%;        /* Botón ocupa todo el ancho disponible */
          bottom: 20px;       /* Se reduce la distancia al fondo */
          font-size: 14px;
          padding: 12px;
        }
      }
          .boton-comprar:hover {
            background-color: #60A699;
            color:white;
          }

 /*PLACES*/
.stores .container-fluid {
  max-width: 1920px;
  width: 100%;
  padding-left: 0;
  padding-right: 0; }

.place-item {
  padding: 2rem 4rem;
  overflow: hidden;
  background: #EEF3F7;
  min-height: 320px;
  background-size: cover;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  transition: All 0.25s ease-in; }
  .place-item.coapa {
    background-image: url("../img/footer/div_coapa.jpg"); }
  .place-item.cantil {
    background-image: url("../img/footer/div_cantil.jpg"); }
  .place-item.tlahuac {
    background-image: url("../img/footer/div_tlahuac.jpg"); }
  .place-item.ajusco {
    background-image: url("../img/footer/div_coapa.jpg"); }
  @media (max-width: 991px) {
    .place-item {
      padding: 1.5rem 1.5rem;
      min-height: 240px; } }
  .place-item .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 90; }
    .place-item .overlay.left {
      background: rgba(0, 143, 165, 0.75); }
    .place-item .overlay.center {
      background: rgba(8, 157, 152, 0.75); }
    .place-item .overlay.right {
      background: rgba(62, 184, 65, 0.75); }
    .place-item .overlay.rightest {
      background: rgba(80, 200, 135, 0.75); }
  .place-item .content {
    position: relative;
    z-index: 99; }
    .place-item .content .store {
      display: flex;
      gap: 1rem;
      align-items: flex-start; }
      .place-item .content .store .icon-store {
        margin-bottom: 1rem; }
        .place-item .content .store .icon-store svg {
          width: 50px;
          height: 50px; }
          .place-item .content .store .icon-store svg path {
            fill: #fff; }
      .place-item .content .store .store-info {
        position: relative; }
        .place-item .content .store .store-info h3.store-name {
          font-size: 1.5rem;
          font-weight: 700;
          color: #fff; }
        .place-item .content .store .store-info p.store-location {
          color: #333;
          margin-bottom: 1.25rem;
          color: #fff;
          min-height: 50px; }
          @media (max-width: 768px) {
            .place-item .content .store .store-info p.store-location {
              min-height: auto;
              margin-bottom: 0.5rem; } }
    .place-item .content h4.store-hours {
      font-size: 0.9rem;
      text-transform: uppercase;
      font-weight: 700;
      color: #fff;
      letter-spacing: 1px;
      margin-bottom: -1rem;
      margin-top: 1.5rem; }
    .place-item .content ul {
      margin-top: 0.5rem;
      display: flex;
      padding-left: 0;
      flex-direction: column; }
      .place-item .content ul li {
        font-size: 1rem;
        list-style: none;
        padding: 1rem 0;
        color: #f4f4f4;
        display: flex;
        justify-content: space-between; }
        .place-item .content ul li:first-child {
          border-bottom: 1px solid rgba(255, 255, 255, 0.5); }
        .place-item .content ul li span.days {
          display: block;
          font-weight: 500; }
        .place-item .content ul li p.hours {
          font-weight: 400;
          margin-bottom: 0; }

        

/*Professionals*/
.professionals {
  padding: 4rem 0; }
  .professionals .tech {
    margin-bottom: 2rem; }
    .professionals .tech a.primary-button {
      margin-top: 2rem; }
  .professionals .tech-card {
    background: #fff;
    box-shadow: 0px 0.1px 0.1px rgba(167, 177, 185, 0.3), 0px 0.7px 0.8px -0.5px rgba(167, 177, 185, 0.29), 0px 1.3px 1.4px -0.9px rgba(167, 177, 185, 0.28), 0px 2.3px 2.5px -1.4px rgba(167, 177, 185, 0.28), -0.1px 3.9px 4.2px -1.8px rgba(167, 177, 185, 0.27), -0.1px 6.5px 7.1px -2.3px rgba(167, 177, 185, 0.26), -0.1px 10.3px 11.2px -2.7px rgba(167, 177, 185, 0.25);
    padding: 1rem;
    border-radius: 6px;
    margin-bottom: 1rem; }
    .professionals .tech-card img.img-fluid {
      display: block;
      margin: 0 auto;
      width: 160px;
      margin-bottom: 1rem;
      border-radius: 50%; }
    .professionals .tech-card h4.card-title {
      color: #333;
      text-align: center;
      font-size: 1.25rem;
      font-weight: 500;
      margin-bottom: 1rem; }
    .professionals .tech-card p.paragraph {
      text-align: center;
      font-size: 1rem; }

/*Instalations*/
.instalations {
  padding: 4rem 0; }
  .instalations .instalation img {
    display: block;
    margin: 0 auto; }



/*FOOTER*/
footer {
  background: #121612;
  padding: 2rem 0; }
  @media (max-width: 991px) {
    footer {
      margin-bottom: 46px; } }
  footer .footer-content {
    color: #EEF3F7; }
    footer .footer-content p {
      text-align: center; }
      footer .footer-content p a.footer-links {
        color: #fff;
        display: block;
        text-decoration: none;
        font-size: 0.9rem;
        padding: 1rem 2rem; }
        footer .footer-content p a.footer-links:hover {
          text-decoration: underline; }
    footer .footer-content ul.social-media {
      display: flex;
      flex-direction: row;
      gap: 1.5rem;
      padding-left: 0;
      justify-content: center; }
      footer .footer-content ul.social-media li.social-media-item {
        list-style: none; }
        footer .footer-content ul.social-media li.social-media-item a {
          display: block; }
          footer .footer-content ul.social-media li.social-media-item a svg {
            width: 30px;
            height: 30px; }
            footer .footer-content ul.social-media li.social-media-item a svg.youtube {
              width: 45px;
              height: 30px; }
            footer .footer-content ul.social-media li.social-media-item a svg path {
              width: 30px;
              height: 30px;
              fill: #fff; }
    footer .footer-content p.copyright {
      text-align: center;
      color: #EEF3F7;
      margin-bottom: 0;
      font-size: 0.7rem; }

.scale-1 {
  background-color: #689aa0; }

.scale-2 {
  background-color: #519f6d; }

.scale-3 {
  background-color: rgba(0, 165, 104, 0.7); }

.scale-4 {
  background-color: rgba(8, 157, 152, 0.7); }

.scale-5 {
  background-color: rgba(0, 143, 165, 0.7); }

.scale-6 {
  background-color: #63ada4; }

.scale-7 {
  background-color: rgba(16, 87, 148, 0.7); }

.scale-8 {
  background-color: rgba(43, 111, 171, 0.7); }

.scale-9 {
  background-color: #71aa5c; }

.scale-1, .scale-2, .scale-3, .scale-4, .scale-5, .scale-6, .scale-7, .scale-8, .scale-9 {
  color: #fff; }

.container.regular {
  max-width: 1200px;
  width: 100%; }

.logo-container {
  padding: 0.5rem 0; }
  .logo-container .logo {
    display: block; }
    .logo-container .logo img {
      display: block;
      margin: 0 auto;
      height: 60px; }

/*BUTTONS*/
.primary-button {
  background: #3eb841;
  border: 2px solid #3EB841;
  color: #fff;
 
  border-radius: 6px;
  font-size: 0.8rem;
  text-decoration: none;
  font-weight: 700;
  cursor: pointer;
  width: 150px;
  text-align: center; }
  @media (max-width: 991px) {
    .primary-button {
      font-size: 0.9rem;
      padding: 12px 10px; } }
  .primary-button.block {
    display: block;
   
    padding: 10px 20px; }
  .primary-button img {
    width: 18px;
    height: 18px;
    margin-right: 10px; }
  .primary-button:hover {
    color: #fff;
    background: #48c24b;
    border-color: #48c24b; }
  .primary-button.active {
    background: #3EB841;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 7px 10px; }
    .primary-button.active img {
      width: 18px;
      height: 18px;
      margin-right: 10px; }
  .primary-button.invert {
    border: 2px solid #fff;
    color: #3EB841;
    background: #fff; }

.secondary-button {
  background: #121612;
  border: 2px solid #121612;
  color: #fff;
  padding: 18px 10px;
  border-radius: 6px;
  font-size: 0.8rem;
  text-decoration: none;
  font-weight: 500;
  cursor: pointer;
  text-align: center; }
  @media (max-width: 991px) {
    .secondary-button {
      font-size: 0.8rem; } }
  .secondary-button.block {
    display: block;
    width: 100%; }
  .secondary-button img {
    width: 18px;
    height: 18px;
    margin-right: 10px; }
  .secondary-button:hover {
    color: #fff;
    background: #121612; }

.outline-button {
  background: #fff;
  border: 2px solid #3EB841;
  color: #3EB841;
  padding: 18px 10px;
  border-radius: 6px;
  text-decoration: none;
  cursor: pointer;
  text-align: center;
  display: flex;
  font-size: 0.8rem;
  font-weight: 700;
  justify-content: center; }
  @media (max-width: 991px) {
    .outline-button {
      font-size: 0.9rem;
      padding: 12px 10px; } }
  .outline-button.block {
    display: block;
    width: 100%; }
  .outline-button:hover {
    color: #3EB841;
    background: #fff; }
  .outline-button svg {
    margin-right: 1rem;
    height: 20px;
    width: 20px; }
    .outline-button svg path {
      fill: #3EB841; }

.disabled-button {
  background: #DBE8F0;
  color: #94AAB8;
  font-size: 1rem;
  text-align: center;
  text-decoration: none;
  padding: 10px 10px;
  border-radius: 6px;
  font-weight: 500; }
  @media (max-width: 991px) {
    .disabled-button {
      font-size: 0.8rem; } }
  .disabled-button.block {
    display: block;
    width: 100%; }
  .disabled-button:hover {
    color: #818F98; }

.button-add {
  background: #404249;
  color: #fff;
  padding: 8px 16px;
  border-radius: 6px;
  font-size: 0.9rem;
  text-decoration: none;
  font-weight: 500;
  cursor: pointer;
  text-align: center;
  display: inline-flex;
  justify-content: center;
  align-items: center; }
  @media (max-width: 991px) {
    .button-add {
      font-size: 0.9rem;
      padding: 10px 12px; } }
  .button-add img.check-add {
    width: 18px !important;
    height: 18px !important;
    margin-right: 10px;
    display: none; }
    .button-add img.check-add.show {
      display: block; }
  .button-add:hover {
    color: #fff;
    background: #121612; }
  .button-add.active {
    background: #3EB841;
    font-weight: 500; }
    .button-add.active img.check-add {
      width: 18px;
      height: 18px;
      margin-right: 10px; }

/*INPUTS*/
input.form-control.custom {
  border: 2px solid #ACC3D3;
  outline: none;
  box-shadow: none;
  height: 50px; }
  input.form-control.custom:focus {
    border: 2px solid #3EB841; }

textarea.form-control.custom {
  border: 2px solid #ACC3D3;
  outline: none;
  box-shadow: none; }
  textarea.form-control.custom:focus {
    border: 2px solid #3EB841; }

select.form-control.custom {
  border: 2px solid #ACC3D3;
  outline: none;
  box-shadow: none;
  height: 50px; 
  max-width: 20px;}

/*Section Title*/
section.title .heading-bg {
  background: linear-gradient(180deg, rgba(62, 184, 65, 0.65) 0%, rgba(0, 143, 165, 0.4) 100%); }
  section.title .heading-bg .col {
    padding-left: 0;
    padding-right: 0; }
    section.title .heading-bg .col h1.section-title {
      margin-top: 1rem; }

/*HEADINGS*/
h1.section-title {
  font-size: 1.4rem;
  font-weight: 500;
  margin-bottom: 0;
  text-align: center;
  background: #fff;
  padding: 1rem 0; }
  @media (max-width: 991px) {
    h1.section-title {
      font-size: 1rem; } }

/*SERVICE CARDS*/
section.common-services {
  margin-top: 1rem; }

section#tests-list {
  display: none; }
  section#tests-list.show {
    display: block; }

.popular-services {
  border-radius: 6px;
  background: #EEF3F7; }
  .popular-services.results {
    padding: 20px; }
  .popular-services .service-card {
    border-radius: 6px;
    margin-bottom: 1.5rem; }
    @media (max-width: 991px) {
      .popular-services .service-card {
        margin-bottom: 1rem; } }
    .popular-services .service-card .service-card-header {
      padding: 10px 20px;
      border-radius: 6px 6px 0 0; }
      @media (max-width: 991px) {
        .popular-services .service-card .service-card-header {
          padding: 10px 14px; } }
      .popular-services .service-card .service-card-header p.service-name {
        display: block;
        margin-bottom: 0;
        font-size: 1rem;
        font-weight: 500; }
        @media (max-width: 991px) {
          .popular-services .service-card .service-card-header p.service-name {
            font-size: 0.9rem; } }
    .popular-services .service-card.active {
      background-color: #fff; }
      .popular-services .service-card.active .service-card-header p.service-name {
        font-weight: 500; }
    .popular-services .service-card .service-card-body {
      border-right: 1px solid #ACC3D3;
      border-left: 1px solid #ACC3D3;
      border-bottom: 1px solid #ACC3D3;
      padding: 10px 20px;
      border-radius: 0 0 6px 6px; }
      @media (max-width: 991px) {
        .popular-services .service-card .service-card-body {
          padding: 14px 14px; } }
      .popular-services .service-card .service-card-body p.service-price {
        font-size: 1rem;
        font-family: "Montserrat", sans-serif;
        font-weight: 700;
        text-align: left;
        margin-bottom: 0; }
        @media (max-width: 991px) {
          .popular-services .service-card .service-card-body p.service-price {
            font-size: 1.2rem; } }
        .popular-services .service-card .service-card-body p.service-price.small {
          font-size: 1rem; }
        .popular-services .service-card .service-card-body p.service-price span.service-data {
          font-size: 0.7rem;
          display: block;
          font-weight: 400;
          line-height: 1rem; }
      .popular-services .service-card .service-card-body .button-container {
        text-align: right; }

/*SearchBar*/
.services-options {
  background: #EEF3F7;
  padding: 20px;
  border-radius: 6px;
  margin-bottom: 3rem; }
  .services-options h4 {
    font-size: 1.25rem; }

.search-bar-container {
  margin-top: 0; }
  .search-bar-container .form-label {
    font-weight: 500;
    margin-bottom: 0;
    display: block; }
    @media (max-width: 491px) {
      .search-bar-container .form-label {
        text-align: center;
        margin-bottom: 1rem; } }

/*View more*/
.view-more-container {
  padding: 1rem;
  display: flex;
  justify-content: center; }
  @media (min-width: 992px) {
    .view-more-container {
      display: none; } }
  .view-more-container a.view-more {
    color: #333;
    text-align: center;
    font-size: 1rem; }
    @media (max-width: 767px) {
      .view-more-container a.view-more {
        font-size: 0.9rem; } }

/*Services*/
ul.services-carousel {
  padding-left: 0;
  align-items: stretch;
  margin-top: 2rem;
  display: flex;
  width: 100%;
  flex-wrap: wrap; }
  ul.services-carousel li.item {
    list-style: none;
    min-height: 152px;
    flex-grow: 1;
    flex-basis: 0; }
    ul.services-carousel li.item a.services-category {
      display: block;
      text-decoration: none;
      color: #333;
      min-height: 160px;
      padding: 0.5rem; }
      ul.services-carousel li.item a.services-category.active {
        background: #EEF3F7; }
      ul.services-carousel li.item a.services-category .item-circle {
        display: flex;
        align-items: center;
        width: 120px;
        height: 120px;
        border-radius: 50%;
        margin: 0 auto 0.5rem auto;
        overflow: hidden;
        padding: 0; }
        @media (max-width: 991px) {
          ul.services-carousel li.item a.services-category .item-circle {
            width: 140px;
            height: 140px;
            padding: 0; } }
        ul.services-carousel li.item a.services-category .item-circle.big {
          width: 140px;
          height: 140px; }
        ul.services-carousel li.item a.services-category .item-circle img {
          width: 100%;
          height: 100%;
          margin: 0 auto; }
      ul.services-carousel li.item a.services-category span {
        font-size: 1rem;
        display: block;
        text-align: center; }

/*Review order sidebar*/
#fixed-details {
  position: relative; }
  @media (max-width: 1200px) {
    #fixed-details {
      padding-left: 0;
      padding-right: 0;
      position: fixed;
      bottom: 0;
      z-index: 999; } }
  #fixed-details .order_review {
    background: #EEF3F7;
    padding: 20px;
    border-radius: 6px; }
    @media (max-width: 1200px) {
      #fixed-details .order_review {
        width: 100vw;
        background: #fff;
        padding: 12px;
        box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.2); } }
    #fixed-details .order_review h3 {
      color: #333;
      font-size: 1.25rem;
      font-weight: 500; }
      @media (max-width: 1200px) {
        #fixed-details .order_review h3 {
          display: none; } }
    #fixed-details .order_review ul.details-list {
      padding-left: 0;
      margin-bottom: 8rem;
      display: flex;
      flex-direction: column; }
      @media (max-width: 1200px) {
        #fixed-details .order_review ul.details-list {
          margin-bottom: 1rem; } }
      #fixed-details .order_review ul.details-list li.details-list-item {
        list-style: none;
        font-size: 1rem;
        padding: 2px 0;
        display: flex;
        justify-content: space-between; }
        #fixed-details .order_review ul.details-list li.details-list-item:first-child {
          margin-bottom: 1rem;
          border-bottom: 1px solid #ACC3D3;
          padding: 1rem 0; }
          @media (max-width: 1200px) {
            #fixed-details .order_review ul.details-list li.details-list-item:first-child {
              margin-bottom: 0.25rem;
              border-bottom: none;
              padding: 0; } }
        #fixed-details .order_review ul.details-list li.details-list-item .total, #fixed-details .order_review ul.details-list li.details-list-item .total-price {
          font-weight: bold;
          font-size: 1.1rem; }
          @media (max-width: 1200px) {
            #fixed-details .order_review ul.details-list li.details-list-item .total, #fixed-details .order_review ul.details-list li.details-list-item .total-price {
              font-size: 1rem; } }
        #fixed-details .order_review ul.details-list li.details-list-item .total {
          margin-bottom: 0;
          display: block;
          width: 100%; }
        #fixed-details .order_review ul.details-list li.details-list-item p.service-name {
          margin-bottom: 0;
          font-size: 1rem; }
          @media (max-width: 1200px) {
            #fixed-details .order_review ul.details-list li.details-list-item p.service-name {
              font-size: 0.9rem; } }
        #fixed-details .order_review ul.details-list li.details-list-item span.service-price {
          font-weight: bold; }
          @media (max-width: 1200px) {
            #fixed-details .order_review ul.details-list li.details-list-item span.service-price {
              font-size: 0.9rem; } }
      #fixed-details .order_review ul.details-list .button-dropdown {
        display: block;
        width: 100%;
        color: #333;
        margin: 0;
        padding: 0.3333333333rem 0;
        position: relative; }
        #fixed-details .order_review ul.details-list .button-dropdown::before {
          content: '';
          position: absolute;
          background: url("../img/icons/chevron-down.svg");
          background-repeat: no-repeat;
          background-position: center;
          right: 0;
          width: 24px;
          height: 24px; }
        #fixed-details .order_review ul.details-list .button-dropdown.collapsed::before {
          content: '';
          position: absolute;
          background: url("../img/icons/chevron-down.svg");
          background-repeat: no-repeat;
          background-position: center;
          right: 0;
          width: 24px;
          height: 24px;
          transform: rotate(-180deg); }
      #fixed-details .order_review ul.details-list .test-dropdown {
        display: none; }
    #fixed-details .order_review a.secondary-button, #fixed-details .order_review a.primary-button, #fixed-details .order_review a.disabled-button, #fixed-details .order_review .outline-button {
      padding: 18px 20px; }
      @media (max-width: 991px) {
        #fixed-details .order_review a.secondary-button, #fixed-details .order_review a.primary-button, #fixed-details .order_review a.disabled-button, #fixed-details .order_review .outline-button {
          padding: 12px 20px; } }

/*Places container*/
.sucursales-list {
  background: #EEF3F7;
  padding: 20px;
  margin-bottom: 1.5rem;
  border-radius: 6px; }
  .sucursales-list .place-container a.item-place {
    color: #333;
    display: flex;
    border: 1px solid #ACC3D3;
    padding: 12px 20px;
    border-radius: 6px;
    text-decoration: none;
    margin-bottom: 1rem;
    min-height: 116px;
    background: #fff;
    display: flex;
    flex-direction: row;
    align-items: center;
    align-items: flex-start;
    justify-content: center; }
    @media (max-width: 991px) {
      .sucursales-list .place-container a.item-place {
        min-height: 98px; } }
    .sucursales-list .place-container a.item-place.selected {
      border: 1px solid #3EB841;
      background: rgba(62, 184, 65, 0.1); }
    .sucursales-list .place-container a.item-place h3 {
      font-size: 1.25rem;
      letter-spacing: 1px;
      font-weight: 400;
      margin-bottom: 8px; }
      @media (max-width: 991px) {
        .sucursales-list .place-container a.item-place h3 {
          font-size: 1rem;
          font-weight: 700; } }
    .sucursales-list .place-container a.item-place p {
      font-size: 1rem;
      margin-bottom: 0; }
      @media (max-width: 991px) {
        .sucursales-list .place-container a.item-place p {
          font-size: 0.9rem; } }

/*Progress bar*/
.progress-bar {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 2.5rem;
  gap: 6px; }
  @media (max-width: 991px) {
    .progress-bar {
      gap: 2px;
      margin-bottom: 1.5rem; } }
  .progress-bar .step-1, .progress-bar .step-2, .progress-bar .step-3 {
    display: block;
    width: 100%;
    height: 12px;
    background: #DBE8F0; }
    .progress-bar .step-1.current, .progress-bar .step-2.current, .progress-bar .step-3.current {
      background: rgba(62, 184, 65, 0.5); }
  .progress-bar .step-1 {
    border-radius: 10px 0 0 10px; }
  .progress-bar .step-3 {
    border-radius: 0 10px 10px 0; }

/*Detail Service*/
.detail-test-card {
  margin-bottom: 1rem; }
  .detail-test-card .test-card-header {
    background: #3EB841;
    padding: 12px 20px;
    border-radius: 6px 6px 0 0; }
    .detail-test-card .test-card-header h4.test-name {
      color: #fff;
      font-size: 1rem;
      font-weight: 500;
      margin-bottom: 0; }
  .detail-test-card .test-card-body {
    padding: 20px;
    background: #EEF3F7;
    border-radius: 0 0 6px 6px;
    margin-bottom: 1.5rem; }
    .detail-test-card .test-card-body .test-description .item {
      display: grid;
      column-gap: 1rem;
      grid-template-columns: 50px 1fr;
      align-items: center;
      padding-left: 0;
      margin: 1rem 0; }
      .detail-test-card .test-card-body .test-description .item .delete {
        grid-row: 1/3;
        display: grid;
        justify-content: center;
        font-size: 0.7rem;
        height: 50px; }
        .detail-test-card .test-card-body .test-description .item .delete a {
          text-decoration: none;
          display: block;
          margin: 6px auto 0 auto;
          cursor: pointer;
          color: #333; }
          .detail-test-card .test-card-body .test-description .item .delete a svg {
            height: 20px;
            width: auto;
            margin: 0 auto 0.25rem auto;
            display: block; }
            .detail-test-card .test-card-body .test-description .item .delete a svg path {
              fill: #333; }
          .detail-test-card .test-card-body .test-description .item .delete a:hover {
            text-decoration: underline; }
      .detail-test-card .test-card-body .test-description .item .quantity p {
        font-size: 0.9rem;
        margin-bottom: 0; }
      .detail-test-card .test-card-body .test-description .item .price span {
        font-weight: 700;
        grid-column: 2/3;
        font-size: 0.9rem; }
    .detail-test-card .test-card-body .calendar-container h3 {
      font-size: 1rem;
      font-weight: 500; }
    .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector {
      margin-bottom: 1rem;
      padding-left: 0; }
      .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector li.item {
        list-style: none;
        display: grid;
        margin-bottom: 6px; }
        .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector li.item a.slot {
          text-align: center;
          border: 1px solid #ACC3D3;
          border-radius: 6px;
          background: #fff;
          padding: 8px 10px;
          text-decoration: none;
          color: #333;
          cursor: pointer; }
          .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector li.item a.slot.disabled {
            background: #DBE8F0;
            color: #94AAB8;
            font-weight: 500;
            border: 1px solid #DBE8F0;
            text-decoration: none;
            cursor: not-allowed; }
          .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector li.item a.slot.selected {
            border: 1px solid #3EB841;
            background: rgba(62, 184, 65, 0.1); }
            .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector li.item a.slot.selected p.date {
              font-weight: bold; }
          .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector li.item a.slot.single {
            padding: 16px 6px; }
            .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector li.item a.slot.single p.date {
              font-size: 0.9rem;
              line-height: 1.4rem; }
          .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector li.item a.slot span.day {
            font-size: 0.7rem;
            display: block; }
          .detail-test-card .test-card-body .calendar-container .date-selector-container .date-selector li.item a.slot p.date {
            margin-bottom: 0;
            font-size: 0.8rem; }
    .detail-test-card .test-card-body .calendar-container .hour-selector-container h3 {
      text-align: center;
      padding: 0.5rem 0; }
    .detail-test-card .test-card-body .calendar-container .hour-selector-container .hour-selector {
      margin-bottom: 1rem;
      padding-left: 0;
      padding-right: 10px;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 0.5rem;
      max-height: 345px;
      overflow: scroll; }
      @media (max-width: 991px) {
        .detail-test-card .test-card-body .calendar-container .hour-selector-container .hour-selector {
          height: auto;
          max-height: 600px;
          overflow: visible;
          padding-right: 0px; } }
      .detail-test-card .test-card-body .calendar-container .hour-selector-container .hour-selector li.item {
        list-style: none;
        margin-bottom: 6px; }
        .detail-test-card .test-card-body .calendar-container .hour-selector-container .hour-selector li.item a.slot {
          display: block;
          text-align: center;
          border: 1px solid #ACC3D3;
          border-radius: 6px;
          background: #fff;
          padding: 12px 10px;
          text-decoration: none;
          color: #333;
          cursor: pointer; }
          .detail-test-card .test-card-body .calendar-container .hour-selector-container .hour-selector li.item a.slot.disabled {
            background: #DBE8F0;
            color: #94AAB8;
            border: 1px solid #DBE8F0;
            cursor: not-allowed; }
          .detail-test-card .test-card-body .calendar-container .hour-selector-container .hour-selector li.item a.slot.single {
            padding: 16px 6px; }
            .detail-test-card .test-card-body .calendar-container .hour-selector-container .hour-selector li.item a.slot.single p.hour {
              font-size: 0.9rem;
              margin-bottom: 0;
              line-height: 1.4rem; }
          .detail-test-card .test-card-body .calendar-container .hour-selector-container .hour-selector li.item a.slot.selected {
            border: 1px solid #3EB841;
            background: rgba(62, 184, 65, 0.1); }
            .detail-test-card .test-card-body .calendar-container .hour-selector-container .hour-selector li.item a.slot.selected p.hour {
              font-weight: bold; }
    .detail-test-card .test-card-body .place-container a.item-place {
      color: #333;
      display: grid;
      border: 1px solid #ACC3D3;
      padding: 12px 20px;
      border-radius: 6px;
      text-decoration: none;
      margin-bottom: 1rem;
      min-height: 116px;
      background: #fff;
      grid-template-columns: 100px 1fr;
      align-items: center;
      gap: 20px; }
      @media (max-width: 991px) {
        .detail-test-card .test-card-body .place-container a.item-place {
          min-height: 98px;
          grid-template-columns: 50px 1fr; } }
      .detail-test-card .test-card-body .place-container a.item-place.selected {
        border: 1px solid #3EB841;
        background: rgba(62, 184, 65, 0.1); }
      .detail-test-card .test-card-body .place-container a.item-place .image img {
        border-radius: 50%; }
      .detail-test-card .test-card-body .place-container a.item-place .description h3 {
        font-size: 1.25rem;
        font-weight: 700;
        margin-bottom: 8px; }
        @media (max-width: 991px) {
          .detail-test-card .test-card-body .place-container a.item-place .description h3 {
            font-size: 1rem;
            font-weight: 700; } }
      .detail-test-card .test-card-body .place-container a.item-place .description p {
        font-size: 1rem;
        margin-bottom: 0.25rem; }
        @media (max-width: 991px) {
          .detail-test-card .test-card-body .place-container a.item-place .description p {
            font-size: 0.9rem; } }
      .detail-test-card .test-card-body .place-container a.item-place .description ul {
        padding-left: 0;
        margin-bottom: 0; }
        .detail-test-card .test-card-body .place-container a.item-place .description ul li {
          display: grid;
          color: #121612;
          grid-template-columns: auto 1fr;
          gap: 20px; }
          @media (max-width: 991px) {
            .detail-test-card .test-card-body .place-container a.item-place .description ul li {
              grid-template-columns: 1fr;
              grid-template-rows: repeat(2, 1fr);
              gap: 0.25rem; } }
          .detail-test-card .test-card-body .place-container a.item-place .description ul li span {
            font-size: 0.8rem;
            font-weight: 700;
            display: block; }
          .detail-test-card .test-card-body .place-container a.item-place .description ul li p {
            font-size: 0.8rem;
            margin-bottom: 0; }
    .detail-test-card .test-card-body .pacient-form-field {
      margin-bottom: 1rem; }

/*Pacient resume*/
.pacient-resume {
  margin-bottom: 2rem;
  margin-top: 1rem; }
  .pacient-resume h3 {
    font-size: 1rem;
    font-weight: 700; }
  .pacient-resume ul {
    padding-left: 0;
    margin-bottom: 0; }
    .pacient-resume ul li {
      list-style: none;
      padding: 2px 0; }
      .pacient-resume ul li span {
        font-weight: 500;
        margin-right: 8px; }

.test-resume {
  margin-bottom: 1rem; }
  .test-resume h3 {
    font-size: 1rem;
    font-weight: 700; }
  .test-resume ol li {
    margin-bottom: 0.5rem; }
    .test-resume ol li span {
      display: block;
      font-weight: 700; }
  .test-resume ul {
    padding-left: 0;
    margin-bottom: 0; }
    .test-resume ul li {
      list-style: none;
      padding: 2px 0;
      display: flex; }
      .test-resume ul li span {
        font-weight: 500;
        margin-right: 8px; }

/*Totals*/
.totals {
  margin-top: 2rem; }
  .totals ul {
    display: flex;
    padding-left: 0;
    flex-direction: column; }
    .totals ul li {
      list-style: none;
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      margin-bottom: 6px; }
      .totals ul li p.subtotal, .totals ul li span.subtotal-price {
        font-size: 1rem;
        font-weight: 700;
        margin-bottom: 0; }
      .totals ul li p.total, .totals ul li span.total-price {
        font-size: 1.2rem;
        font-weight: 700; }

/*Payment options*/
.payment-options .option {
  padding: 14px 0; }
  .payment-options .option .form-check input.form-check-input {
    display: block;
    margin-right: 12px; }
    .payment-options .option .form-check input.form-check-input.double {
      margin-top: 12px; }
  .payment-options .option .form-check label.form-check-label {
    font-weight: 500; }
  .payment-options .option .form-check span.detail {
    font-size: 0.8rem;
    display: block; }

/*Card payment*/
.card-payment {
  margin-top: 1.5rem; }
  .card-payment .card-payment-fields {
    margin-bottom: 1rem; }

/*Confirmation*/
section.confirmation img.ilustration {
  margin: 10vh auto 1rem auto;
  display: block;
  width: 100%;
  max-width: 480px; }

section.confirmation h1 {
  color: #333;
  text-align: center;
  font-weight: 700;
  font-size: 2rem; }

section.confirmation h3 {
  color: #3EB841;
  font-size: 1.5rem;
  letter-spacing: 1px;
  text-align: center; }

section.confirmation p {
  text-align: center; }
  section.confirmation p a.outline-button {
    display: inline-block;
    margin: 1rem auto; }

/*Continue button*/
@media (min-width: 1201px) {
  .continue {
    display: none; } }

/*Schedule*/
@media (min-width: 1201px) {
  .agendar-cita {
    display: none; } }

/*Contacto*/

.contenedor-contacto {
  display: flex;
  position: relative;
  /*background-color: #f4f4f4;*/
  max-width: 1000px;
  margin: auto;
  border-radius: 8px;
  overflow: visible;
 /*box-shadow: 0 4px 15px rgba(243, 11, 11, 0.2);*/
  
  min-height: 80px;
  justify-content: center;
  align-content: center;
}
.bloque .icon-contacto {
     width: 100px;
        height: 20px; 
      color:#60A699;
      left:20;
    }
          
/* Bloques de contacto */

.contacto-body {
  margin: 0;
  font-family: Arial, sans-serif;
  background-color:rgba(0, 143, 165, 0.5);
   background-image: url("../img/div_coapa.jpg");
   background-position: 0px;
  background-repeat: no-repeat;
   background-size: 100%;
  min-height: 600px; 
  padding: 40px;
}


.info-contacto {
  position: absolute;
  left: 0;
  top: 20;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 20px;
  z-index: 2;
}

.bloque {
  background-color: #fff;
  color: #000;
  padding: 15px;
  border-radius: 6px;
  font-size: 14px;
  width: 180px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

.bloque h4 {
  margin: 0 0 5px 0;
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  color: #333;
}

/* FORMULARIO con posición absoluta */
.formulario-contacto {
  position: absolute;
  top: -5px;        /* Para que comience debajo de los bloques derechos */
  left: 300px;       /* Para moverlo hacia la izquierda */
  background-color: rgba(62, 184, 65, 0.75);
  padding: 40px 30px;
  width: 500px;
  border-radius: 8px;
  z-index: 1;
}

.formulario-contacto h2 {
  margin-bottom: 20px;
  margin-left: 75px;
  font-size: 24px;
  color: #ffff;
}

.formulario-contacto form {
  display: flex;
  flex-direction: column;
}

.formulario-contacto input,
.formulario-contacto textarea {
  margin-bottom: 15px;
  margin-left: 80px;
  padding: 10px;
  border: none;
  border-radius: 4px;
  font-size: 14px;
}

.formulario-contacto button {
  background-color: rgba(0, 143, 165, 0.75);
  color: white;
  border: none;
  padding: 10px;
  margin-left: 80px;
  font-size: 14px;
  border-radius: 4px;
  cursor: pointer;
  text-transform: uppercase;
  transition: background-color 0.3s;
}

.formulario-contacto button:hover {
  background-color: #60A699;
}      
      
@media (max-width: 768px) {
  .contenedor-contacto {
    display: block;
    padding: 20px;
  }

  .info-contacto {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 15px;
    left: 0;
    top: 0;
    padding: 0;
    margin-bottom: 20px;
  }

  .bloque {
    width: 100%;
  }

  .formulario-contacto {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    margin-left: 0;
    padding: 20px;
  }

  .formulario-contacto form input,
  .formulario-contacto form textarea,
  .formulario-contacto form button {
    font-size: 16px;
  }
}

    
/*DatePicker*/
.datepicker {
  z-index:999 !important;
  width: auto;
  background: #fff;
  border: 1px solid #ACC3D3;
  padding: 1rem;
  margin-bottom: 1.5rem; }
  .datepicker td {
    border-radius: 6px !important; }
  .datepicker .table-condensed {
    width: 100%; }
    .datepicker .table-condensed thead th.prev, .datepicker .table-condensed thead th.datepicker-switch, .datepicker .table-condensed thead th.next {
      color: #3EB841;
      padding: 0.5rem 1rem;
      margin-bottom: 1rem; }
      @media (max-width: 991px) {
        .datepicker .table-condensed thead th.prev, .datepicker .table-condensed thead th.datepicker-switch, .datepicker .table-condensed thead th.next {
          padding: 1rem 0; } }
    .datepicker .table-condensed thead tr th.dow {
      font-size: 1rem;
      font-weight: 700;
      padding: 1rem; }
      @media (max-width: 991px) {
        .datepicker .table-condensed thead tr th.dow {
          padding: 0; } }
    .datepicker .table-condensed tbody td.day {
      height: 3rem; }
      .datepicker .table-condensed tbody td.day.today {
        background: #121612;
        color: #fff; }
        .datepicker .table-condensed tbody td.day.today:hover {
          background: #3EB841;
          color: #fff; }
        .datepicker .table-condensed tbody td.day.today.active {
          border: 1px solid #3EB841;
          background: rgba(62, 184, 65, 0.2);
          color: #000; }
      .datepicker .table-condensed tbody td.day.active {
        border: 1px solid #3EB841;
        background: rgba(62, 184, 65, 0.1);
        color: #000; }
        .datepicker .table-condensed tbody td.day.active:hover {
          background: rgba(62, 184, 65, 0.2); }
      .datepicker .table-condensed tbody td.day.disabled {
        color: #94AAB8; }
        .datepicker .table-condensed tbody td.day.disabled.highlighted {
          background: #DBE8F0;
          border-radius: 0 !important; }

/*Offers*/
section.offers {
  width: 100%;
  height: 140px;
  margin-bottom: 1rem;
  position: relative; }
  section.offers .overlay {
    height: 140px;
    z-index: 99;
    background: linear-gradient(180deg, rgba(62, 184, 65, 0.65) 0%, rgba(0, 143, 165, 0.4) 100%);
    position: absolute;
    top: 0;
    left: 0; }
  section.offers .offer-main-mini {
    height: 140px; }
    @media (max-width: 991px) {
      section.offers .offer-main-mini img.desktop {
        display: none; } }
    @media (min-width: 992px) {
      section.offers .offer-main-mini img.mobile {
        display: none; } }

/*PILLS*/
ul.nav-pills {
  padding: 0; }
  ul.nav-pills li.nav-item .nav-link {
    border-radius: 0;
    background: #EEF3F7;
    color: #121612; }
    ul.nav-pills li.nav-item .nav-link.active {
      background: #3EB841;
      color: #fff; }

.tab-content .tab-pane {
  padding: 2rem 0; }

.step-facturacion {
  margin-bottom: 2rem; }

/*Selects*/
.select2-container {
  width: 100%; }

.select2-container--default .select2-selection--single {
  height: 40px;
  border: 2px solid #ACC3D3;
  border-radius: 6px;
  outline: none;
  width: 100%; }

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 40px; }

.select2-container .select2-selection--single .select2-selection__rendered {
  text-align: left; }

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 38px; }

/*Advice*/
.advice {
  background: rgba(62, 184, 65, 0.1);
  border: 1px solid #3EB841;
  border-radius: 6px;
  padding: 1.5rem; }
  .advice p.paragraph {
    margin: 0;
    padding: 0;
    text-align: center; }

/*Whatsapp Floated button*/
.whatsapp-floated-button {
  position: fixed;
  z-index: 999;
  right: 1vw;
  bottom: 4vh;
  background: linear-gradient(180deg, #57d163 0%, #23b33a 100%);
  border-radius: 2rem;
  overflow: hidden;
  box-shadow: 0px 3px 12px 2px rgba(0, 0, 0, 0.25); }
  @media (max-width: 991px) {
    .whatsapp-floated-button {
      left: 0;
      right: 0;
      bottom: 0;
      border-radius: 0; } }
  .whatsapp-floated-button a.link {
    display: flex;
    padding: 0.5rem 2rem;
    text-decoration: none;
    align-items: center;
    gap: 10px;
    justify-content: center; }
    .whatsapp-floated-button a.link img {
      height: 30px;
      width: auto; }
    .whatsapp-floated-button a.link p {
      display: block;
      color: #fff;
      font-size: 0.8rem;
      margin: 0;
      padding: 0; }
      @media (max-width: 991px) {
        .whatsapp-floated-button a.link p {
          display: flex;
          gap: 8px; } }
      .whatsapp-floated-button a.link p span {
        display: block;
        font-weight: bold; }
        @media (max-width: 991px) {
          .whatsapp-floated-button a.link p span {
            display: flex;
            gap: 8px; } }
