body {
    font-family: "Open Sans", sans-serif;
	color: black;
}


h1{
	 font-family: "Open Sans", sans-serif;
	font-weight: 400;
    font-size: 3rem;
}

h2{
	 font-family: "Open Sans", sans-serif;
	font-weight: 400;

}

h3{
    font-family: "Open Sans", sans-serif;
	font-weight: 400;
}

h4{
    font-family: "Open Sans", sans-serif;
	font-weight: 400;
	
}

h5{
    font-family: "Open Sans", sans-serif;
	font-weight: 400;
}

h6{
    font-family: "Open Sans", sans-serif;
	font-weight: 400;
}  

p{
    font-family: "Open Sans", sans-serif; 
	font-weight: 400;
}

.campo-oculto {
  display: none;
}

.bg-blue{ background-color: #008e9f; }

.btn-whats{
	background-color: #3bc24f;
	colot:white;
}

/*menu estilo*/
.m-txt{
    color: black!important;
    font-weight: 600;
	transition: all .3s ease;
}
 
.m-txt:hover{ 
    color: #00b9c8!important;
    font-weight: 600;
}
/*menu estilo*/
.carousel-control-next, .carousel-control-prev{ width:8%; }
.txt-white{ color:white; }
.txt-blue{ color:#008e9f; }
.txt-clearblue{ color:#00b9c8; }
.blue-circle{ padding:4px 10px; color:white; background-color:#00b9c8; border-radius:30px; font-size:1rem; font-weight:bold;  }

section#nosotros p{ font-size:1.2rem; } 
img.rounded{ border-radius:20px !important; } 

.cintillo {
  width: 100%;
  background-color: #008e9f; /* Azul verdoso como en la captura */
  color: #fff;
  font-weight: bold;
  padding: 0.5rem 0;
  overflow: hidden;
  position: relative;
}

.cintillo-texto {
  display: inline-block;
  white-space: nowrap;
  padding-left: 100%; /* Arranca fuera de la vista */
  animation: deslizar 20s linear infinite; /* Velocidad ajustable */
}

@keyframes deslizar {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

/* Ocultar las flechas por defecto de Owl */
.owl-nav {
  position: absolute;
  top: 33%;
  width: 102%;
  transform: translateY(-50%);
  display: flex;
  justify-content: space-between;
  pointer-events: none; /* Permite que solo los botones sean clicables */
}

.owl-nav button.owl-prev,
.owl-nav button.owl-next {
  background-color: #008e9f !important;
  width:35px;
  color: white !important;
  border: none;
  font-size: 24px !important;
  padding: 10px 15px !important;
  border-radius: 50% !important;
  pointer-events: all;
  cursor: pointer;
  transition: background 0.3s;
}

.owl-nav button.owl-prev:hover,
.owl-nav button.owl-next:hover {
  background: rgba(0,0,0,0.8);
}

.owl-nav button.owl-prev {
  position: absolute;
  left: -3.3rem;
}

.owl-nav button.owl-next {
  position: absolute;
  right: -1.8rem;
}

#counters{ background-color: #008e9f; border-radius:15px; }
#counters p{ font-size:1.2rem; }

.social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: white;
  color: #003b3b;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  font-size: 1.5rem;
  transition: all 0.3s ease;
  text-decoration: none;
}

.social-icon:hover {
  background-color: #0096a0;
  color: white;
}

.menu-card {
  background-color: #f2f2f2; /* Gris claro */
  border-radius: 0.5rem;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
  box-shadow: 0 0 0 rgba(0,0,0,0);
}


.menu-card h6{  font-size:1.2rem;}
.btn-outline-white{ border: 2px solid white; font-size: 1.3rem; padding: 3px 20px; transition: all .3s ease; width:190px; border-radius: 10px; }
.btn-blue{ background-color: #00b9c8; font-size: 1.3rem; padding: 3px 20px; transition: all .3s ease;  border-radius: 10px; }
.btn-blue:hover{ color:white; }
.btn-outline-white:hover{ background: white; color:#008e9f;  }
#galeria-carrusel .item a img{ border-radius:15px; width:280px; margin:auto; }

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span{background: #008e9f;}
#test-carrusel .owl-dots { margin:3rem auto; } 

.testimonial-item {
  position: relative;
  padding-top: 40px;
}

.quote-icon {
  width: 70px !important;
  position: absolute;
  top: 0;
  left: 20px;
  z-index: 2;
}

.testimonial-card {
  border: 1px solid #ddd;
  border-radius: 10px;
  background-color: #f9f9f9;
  min-height: 240px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.parallax {
  /* Imagen de fondo */
  background-attachment: fixed !important; 
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;

  /* Tamaño de la sección */
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  text-align: center;
}

.menu-card:hover {
  background-color: #ffffff; 
  transform: translateY(-5px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); 
}

.menu-card img {
  max-width: 90px;
}

#nosotros p{ font-size: 1.1rem; }
header .dropdown-item{ white-space: normal; }
.dropdown-menu {
    position: absolute;
    display: none;
    margin-top: 0;
	min-width:250px;
}

.dropdown-submenu {
    position: relative;
	min-width:230px;
}

.dropdown-item:hover{
	background-color: #00b9c8!important;
	color:white;
}

.dropdown-item.padre + .dropdown-menu {
    min-width: 350px;
}

.dropdown-submenu > .dropdown-menu {
    top: 20px;
    left: 60%;
    margin-top: -1px;
}

/* Mostrar al hacer hover */
.dropdown:hover > .dropdown-menu {
    display: block;
}

.dropdown-submenu:hover > .dropdown-menu {
    display: block;
}

/* Sección Testimonios de Servicio */
#testimonios-servicio {
  position: relative;
}

.testimonios-servicio-card {
  border-radius: 0.5rem;
  transition: all 0.3s ease-in-out;
  min-height:220px;
}

.testimonios-servicio-carousel hr{
	left: 0px;
    margin: 0;
    position: absolute;
    top: 3rem;
}

.testimonios-servicio-card:hover {
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
}

.testimonios-servicio-card .stars i {
  font-size: 1rem;
  margin-right: 2px;
}

/* Navegación del carousel */
.testimonios-servicio-carousel .owl-nav {
  position: absolute;
  top: 40%;
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.testimonios-servicio-carousel .owl-nav button {
  background: #00838f !important;
  color: #fff !important;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  top: -2rem;
  border: none;
  outline: none;
  transition: background 0.3s;
}

.testimonios-servicio-carousel .owl-nav button:hover {
  background: #006c76 !important;
}

.testimonios-servicio-carousel .owl-dots {
  margin-top: 20px;
}
/* Sección FAQ */
#faq {
  background-color: #f7f7f7;
  border-radius: 1rem;
}

.faq-item {
  border: 1px solid #ddd;
  border-radius: 0.5rem;
  overflow: hidden;
}

/* Botones del acordeón */
.accordion-button {
  background-color: #fff;
  font-weight: 600;
  color: #212529;
  border-radius: 0.5rem;
  box-shadow: none;
  transition: all 0.3s ease-in-out;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.accordion-button:hover {
  background-color: #f0f9fa;
}

/* Flecha (Bootstrap Icons) */
.faq-arrow {
  color: #00838f;
  font-size: 1.2rem;
  transition: transform 0.3s ease;
}

/* Rotar flecha cuando está activa */
.accordion-button:not(.collapsed) .faq-arrow {
  transform: rotate(90deg);
}

/* Cuerpo del acordeón */
.accordion-body {
  background-color: #fff;
  border-top: 1px solid #ddd;
  color: #555;
}

/* Enlaces superiores */
.faq-link {
  color: #00838f;
  transition: color 0.2s ease;
}

.faq-link:hover {
  color: #005f66;
}
.accordion-item.faq-item .accordion-button::after {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  content: "";
  border-radius: 30px;
  background-color: #008e9f;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 0.8rem;
  
  /* SVG inline codificado con fill blanco */
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
}


#formcontacto .form-card { 
  background-color: #fff;
  border-radius: 10px;
}

#formcontacto .form-control,
#formcontacto .form-select {
  background-color: #f3f5f5;
  border: none;
  border-radius: 6px;
  padding: 0.75rem 1rem;
}

#formcontacto .form-control:focus,
#formcontacto .form-select:focus {
  background-color: #fff;
  box-shadow: 0 0 0 0.2rem rgba(0, 180, 190, 0.25);
  border-color: #00b6c4;
}


.whatsapp-section {
  position: relative;
height: 480px;
}

.whatsapp-box {
  background-color: #fff;
  border-radius: 15px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

.whatsapp-item {
	display: inline-block;
	text-align:center;
	margin: auto 15px;
}

.whatsapp-item .icono {
  width: 50px;
  height: 50px;
}

.text-success {
  color: #00b050 !important;
}

.doctor-img {
  position:absolute;
  width:450px;
	top: -11rem;
	z-index: 9;
}

.icono-gris{
	border-radius:15px;
	background-color: #eaeaea;
	min-height:160px;
}

#servicio h3{ margin: 2rem 0; }

#proc h3{ font-weight:bold; font-size:1.2rem; }





#ubicaciones a{ text-decoration:none;  }
#ubicaciones a h5{ transition:all .3s ease; }
#ubicaciones a:hover h5{ color: #00363a; }

/* Contenedor general en esquina inferior derecha */
.fab-container {
  position: fixed;
  bottom: -4rem;
  right: 7rem;
  z-index: 1050;
  display: flex;
  flex-direction: column; /* Botón arriba, menú abajo */
  align-items: flex-end;
}

/* Botón flotante */
.fab-btn {
  border:none;
  background-color: #008e9f;
  width: 55px;
  height: 55px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 45px;
  transition: transform 0.3s ease;
  margin-bottom: 10px; /* espacio entre botón y menú */
  transition: all 0.3s ease-in-out;
}

/* Menú oculto por defecto */
.fab-menu {
  background: #008e9f;
  display: flex;
  padding: 35px 70px 32px 15px;
  border-radius:15px;
  border-top-right-radius: 35px;
  flex-direction: column;
  align-items: flex-end;
  opacity: 0;
  position:relative;
  left: 0rem;
  top: -4.2rem;
  transform: scale(0);
  transform-origin: top right; /* Nace desde la esquina superior derecha */
  transition: all 0.3s ease-in-out;
  z-index:-1;
}

.fab-item {
    color: #fff;
    text-decoration: none;
    margin: 7px 5px;
    font-size: 1.2rem;
    min-width: 180px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.fab-item:hover {
  color: white;
}

/* Estado activo (abierto) */
.fab-menu.show {
  opacity: 1;
  transform: scale(1);
}

/* Rotación del botón al abrir */
.fab-btn:hover, .fab-btn:active, .fab-btn:focus  {
	background-color:#00b9c8;
	box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}
.fab-btn.active {
  transform: rotate(45deg);
  background-color: #008e9f;
}


/*familias fuentes*/
.op-300 {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
  }

  .op-500 {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
  }

  .op-700 {
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
  }

  .stfy-400 {
    font-family: "Satisfy", cursive;
    font-weight: 400;
    font-style: normal;
  }
  /*familias fuentes*/

/*estilos fuentes*/

.green-title{
    font-family: "Open Sans", sans-serif; 
    font-weight: 600;
    letter-spacing: 2.5px;
    color: #979746;
    font-size: 14px;

} 

.black-title{
    font-family: "Open Sans", sans-serif; 
    font-weight: 600;
    letter-spacing: 2.5px;
    color: black;
    font-size: 14px;

} 

.letter-spacing{
    letter-spacing: 2.5px;  
}


.txt-green-title{
    color: #979746;
    font-size: 14px;
}

.txt-green{
    color: #979746;
}

.txt-green-sucursales{
    color: #979746;
}

.txt-green-sucursales:hover{
    color: #979746;
}
/*estilos fuentes*/

/*card text*/
.card-text{
    font-size: 13px;
}
/*card text*/

/*backgrounds*/

.bg-gray{ 
	background:#efefef;
}
 
.bg-footer{
	background: #00363a;
}

.bg-white{
    background: white;
}

footer p{ font-size: 1.3rem; }

/*botones*/
 
.btn-1{
	background: #979736!important;
	font-weight: 600; 
	color: white;
	font-size: 12px;
	border-radius: 0px;
    font-family: "Open Sans", sans-serif;
    letter-spacing: 2.5px;
}

.btn-1:hover{
    background: #57571f!important; 
    color: white;

}

.btn-outline-1{
	
	font-weight: bold;
	color: #979736!important;
	font-weight: 400!important;
    font-family: "Open Sans", sans-serif;
    font-weight: bold;
    letter-spacing: 2.5px;
	border-radius: 0px;
	border-color: #979736!important;
    font-size: 15px;
}

.btn-outline-1:hover{
	background: #979736!important;
	font-weight: 400!important;
	color: white!important;
    font-family: "Open Sans", sans-serif;
    font-weight: bold;
    letter-spacing: 2.5px;
	border-radius: 0px;
    font-size: 15px;
}




/*margenes y paddings*/

.margint-1{
    margin-top: 150px;
}

.paddingt-1{ 
    padding-top: 80px;

}

.paddingb-1{
    padding-bottom: 260px;
}

/*margenes y paddings*/


/*img estilos*/

.img-banner-nosotros{
    position: absolute;
    top: -170px;
    right: 25px;
    left: 25px; 
}


.img-banner-catalogo{
    position: absolute;
    margin-top: -100px;

}

.rectangle {
    height: 70px; 
    background-color:#979746;
  }

  .img-size{
	width: 80px;
	text-align: center!important;
} 
 
.img-size2{
    width: 500px;
}

.img-size3{
    width: 300px;
}

/*img estilos*/


.menu-sticky {
    position: fixed;
    top: 0px;
    bottom: auto;
    width: 100%;
    z-index: 9999;
} 

/*tamaño logo*/
.logo {
	max-height: 80px;
}

/*banners fondo*/
#banner {
    background-size: 100%;
    background-repeat: no-repeat; 
    background-position: center;
    height: 500px;
}

 
#banner-quienes-somos {
    background-image: url(../img/img-quienes-somos/banner-quienes-somos.webp); 
    background-size: 100%;
    background-repeat: no-repeat;  
    background-position: center;
    height: 500px;
}
/*fin banners fondo*/

/*bg imagenes de fondo*/ 

.bg-img-qs {
    background: url(../img/img-quienes-somos/bg-img-qs.webp) center center no-repeat;
    background-size: cover;
}

.bg-sucursales {
    background: url(../img/img-home/bg-sucursales.webp) center center no-repeat;
    background-size: cover;
} 

.parallax1 { 
    /* The image used */
    background: url(../img/parallax.webp) center center no-repeat;
    background-size: cover;
  
    /* Set a specific height */
    min-height: 200px;
  
    /* Create the parallax scrolling effect */
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover; 
  }


/*fin bg imagenes de fondo*/


/*efecto zoom imagenes*/
.zoom {
	padding-top: 1rem;
    transition: transform .2s;
    height: auto;
    margin: 0;
    max-width: 100%;
}

.zoom:hover {
  transform: scale(1.1); /* (150% zoom - Note: if the zoom is too large, it will go outside of the viewport) */
}


 


/*caja con fondo blanco*/
.graybox2 {
    border-top: 2px #636363 solid;
    border-right: 2px #636363 solid;
    border-left: 2px #636363 solid;
    border-bottom: 2px #636363 solid;
    background:white;
    padding: 12px;
}


/*cajas quienes somos*/
.graybox {
    background: #efefef;
    padding: 30px;
    margin: 5px;
}


.bg-gray-box-title{
	background: #5b5b5b;
	margin: 0!important;
	padding: 5px;
}
 
/*redes sociales iconos*/
.white-icon {
	color: white!important;
	text-decoration: none!important;
	font-size: 21px !important;
}

/*textos footer*/
.txt-footer{
	color: white;
	font-size: 14px;
}

.txt-footer-link{
	color: white;
	font-size: 14px;
}

.txt-footer-link:hover{
	color: white;
	font-size: 14px;
}

.txt-footer-mb{
    margin-bottom: 8px;
}

.hr-footer{
    margin-top: 0.5rem;
    margin-bottom: 1rem;
    border: 0;
    border-top: 1px solid rgb(255 255 255);
}

/*etiquetas a*/
.pointer{
    cursor: pointer!important;
}

#pills-tab-productos .nav-link{
	color: #7a7a7a;
    background: none;
    border-radius: 0;
	border-bottom: 1px solid gray;
    padding-bottom: 5px;
}

#pills-tab-productos .nav-link.active{
	color: black;
    border-bottom: 4px solid #979736;
}

#pills-tabContent-padre .nav-link.active{
	background: #bab745;
    color: black;
	font-weight: bold;
}
#pills-tabContent-padre .nav-link{
	background: #979736;
    color: white;
	border-radius: 0;
}

#producto h3{ color: #979736; font-weight: bold; font-size: 1.4rem;}
.mh-producto{ height: 100%; }

#regresar{
	background: url('http://mayordomia.holdworkshop.com/wp-content/uploads/2024/05/banner-regresar.webp') center center no-repeat;
	height: 300px;
}
#regresar a{ border: 2px solid white; color:white; font-weight: bold; padding: 10px 15px; }
 
@media (max-width: 768px){
.dropdown-menu {
	position: static;
	float: none;
	display: none;
}

.whatsapp-section{ height:840px; }

.doctor-img{ position: relative; margin-top:13rem; width:100%;}

.icono-gris{ margin:15px; min-height: auto; }

.dropdown.show > .dropdown-menu {
	display: block;
}

.dropdown-submenu > .dropdown-menu {
	left: 0;
	top: 0;
	margin-left: 1rem;
}
.owl-nav button.owl-prev{ left:0; }
.owl-nav{ display:none; }
#whatsappmovil,.fab-container{ right: 1rem !important; }
#cmlCarousel h1, #cmlCarousel h2{ font-size:1rem; }
.carousel-caption{ bottom:0; }


/* si-no movil*/ 

.no-movil{
    display: none;
}

.si-movil{
    display: block;
}

/* si-no movil*/ 

/*textos*/
.txt-movil{ 
    font-size: 45px;
} 
 
.txt-movil2{
    font-size: 36px;
} 

/*textos*/    
    
/*margenes y paddings*/
.margint-1{
        margin-top: 80px;
    }

/*margenes y paddings*/  

/*backgrounds*/

.img-banner-nosotros {
        position: absolute;
        top: -85px;
        right: 2px;
        left: 2px;
    }    

    .bg-sucursales {
        background: url(../img/img-home/bg-sucursales.webp) center center no-repeat;
        background-size: cover;
    }

#banner {
    background-size: 160% auto;
    background-position: center;
    height: 200px;
}

#banner-quienes-somos {
    background-size: 160% auto;
    background-position: center;
    height: 200px;
}

/*backgrounds*/

/*imgs*/
.img-size2 {
    width: 300px;
}

.img-banner-catalogo {
    position: absolute;
    margin-top: -44px;
}


}

