/*

TemplateMo 559 Zay Shop

https://templatemo.com/tm-559-zay-shop

---------------------------------------------
Table of contents
------------------------------------------------
1. Typography
2. General
3. Nav
4. Hero Carousel
5. Accordion
6. Shop
7. Product
8. Carousel Hero
9. Carousel Brand
10. Services
11. Contact map
12. Footer
13. Small devices (landscape phones, 576px and up)
14. Medium devices (tablets, 768px and up)
15. Large devices (desktops, 992px and up)
16. Extra large devices (large desktops, 1200px and up)
--------------------------------------------- */


input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
  -webkit-appearance: none; 
  margin: 0; 
}



/* Typography */
body, ul, li, a, label, input, div {
  font-family: 'Roboto', sans-serif;
  font-size: 18px;
  font-weight: 300 !important;
}


.h1 {
  font-family: 'Roboto', sans-serif;
  font-size: 48px !important;
  font-weight: 200 !important;
}
.h2 {
  font-family: 'Roboto', sans-serif;
  font-size: 30px !important;
  font-weight: 300;
  
}
.h3 {
  font-family: 'Roboto', sans-serif;
  font-size: 22px !important;
}
/* General */
.logo { font-weight: 500 !important;}
.text-warning {  color: #ede861 !important;}
.text-muted { color: #000000 !important;}
.text-active { color: #1F33BC !important;}
.text-justificado {text-align: justify !important;}
.text-derecha {text-align: right !important;}


.text-success { color: #fff !important;}
.text-success_black { color: #000000 !important;}
.text-light { color: #cfd6e1 !important;}
.bg-dark { background-color: #212934 !important;}
.bg-light { background-color: #e9eef5 !important;}
.bg-black { background-color: #1d242d !important;}
.bg-success { background-color: #1F33BC !important;}
.btn-success {
  background-color: #1F33BC !important;
  border-color: #1F33BC !important;
}
.pagination .page-link:hover {color: #1F33BC;}
.pagination .page-link:hover, .pagination .page-link.active {
  background-color: #69bb7e;
  color: #fff;
}
/* Nav */
#templatemo_nav_top { min-height: 40px;}
#templatemo_main_nav a { color: #000000;}


#templatemo_main_nav a:hover { color: #1F33BC;}

#templatemo_main_nav .navbar .nav-icon { margin-right: 20px; }

/* Hero Carousel */
#template-mo-zay-hero-carousel { background: #efefef !important;}
.templatemo-accordion a { color: #000;}
.templatemo-accordion a:hover { color: #333d4a;}
/* Shop */
.shop-top-menu a:hover { color: #69bb7e !important;}
/* Product */
.product-wap { box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.10);}
.product-wap .product-color-dot.color-dot-red { background:#f71515;}
.product-wap .product-color-dot.color-dot-blue { background:#6db4fe;}
.product-wap .product-color-dot.color-dot-black { background:#000000;}
.product-wap .product-color-dot.color-dot-light { background:#e0e0e0;}
.product-wap .product-color-dot.color-dot-green { background:#0bff7e;}
.card.product-wap .card .product-overlay {
  background: rgba(0,0,0,.2);
  visibility: hidden;
  opacity: 0;
  transition: .3s;
}
.card.product-wap:hover .card .product-overlay {
  visibility: visible;
  opacity: 1;
}
.card.product-wap a { color: #000;}
#carousel-related-product .slick-slide:focus { outline: none !important;}
#carousel-related-product .slick-dots li button:before {
  font-size: 15px;
  margin-top: 20px;
}
/* Brand */
.brand-img {
  filter: grayscale(100%);
  opacity: 0.5;
  transition: .5s;
}
.brand-img:hover {
  filter: grayscale(0%);
  opacity: 1;
}
/* Carousel Hero */
#template-mo-zay-hero-carousel .carousel-indicators li {
  margin-top: -5px;
  width: 10px; /* Tamaño del círculo */
  height: 10px; /* Tamaño del círculo */
  
  border-radius: 50%;
  background-color: #fff;
}
#template-mo-zay-hero-carousel .carousel-control-next i,
#template-mo-zay-hero-carousel .carousel-control-prev i {
  color: #fff ;
  font-size: 2.8em ;
}


/* Carousel Hero */
#template-mo-zay-hero-carousel1 .carousel-indicators li {
padding-bottom: 5px;
border-radius: 20px;
  background-color: #000000;
}
#template-mo-zay-hero-carousel1 .carousel-control-next i,
#template-mo-zay-hero-carousel1 .carousel-control-prev i {
  color: #000000 ;
  font-size: 2.8em ;
}







/* Carousel Brand */
.tempaltemo-carousel .h1 {
  font-size: .5em !important;
  color: #000 !important;
}
/* Services */
.services-icon-wap {transition: .3s;}
.services-icon-wap:hover, .services-icon-wap:hover i {color: #fff;}
.services-icon-wap:hover {background: #69bb7e;}
/* Contact map */
.leaflet-control a, .leaflet-control { font-size: 10px !important;}
.form-control { border: 1px solid #e8e8e8;}
/* Footer */
#tempaltemo_footer a { color: #dcdde1;}
#tempaltemo_footer a:hover { color: #68bb7d;}
#tempaltemo_footer ul.footer-link-list li { padding-top: 10px;}
#tempaltemo_footer ul.footer-icons li {
  width: 2.6em;
  height: 2.6em;
  line-height: 2.6em;
}
#tempaltemo_footer ul.footer-icons li:hover {
  background-color: #cfd6e1;
  transition: .5s;
}
#tempaltemo_footer ul.footer-icons li:hover i {
  color: #212934;
  transition: .5s;
}
#tempaltemo_footer .border-light { border-color: #2d343f !important;}
/*
// Extra small devices (portrait phones, less than 576px)
// No media query since this is the default in Bootstrap
*/
/* Small devices (landscape phones, 576px and up)*/
.product-wap .h3, .product-wap li, .product-wap i, .product-wap p {
  font-size: 12px !important;
}
.product-wap .product-color-dot {
  width: 6px;
  height: 6px;
}

@media (min-width: 576px) {
  

  .tempaltemo-carousel .h1 { font-size: 1em !important; }
  
}

/*// Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) {
  
  

  #templatemo_main_nav .navbar-nav {max-width: 768px; }
  
 }

/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px) {
  
  #templatemo_main_nav .navbar-nav {max-width: 550px;}
  #template-mo-zay-hero-carousel .carousel-item {min-height: 30rem !important;}
  .product-wap .h3, .product-wap li, .product-wap i, .product-wap p {font-size: 18px !important;}
  .product-wap .product-color-dot {
    width: 12px;
    height: 12px;
  }
  

}

/* Extra large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) {}






/*** ESTILOS BOTÓN GROW BOX ***/
.ov-btn-grow-box {
  text-decoration: none;
  background: rgb(62, 62, 70); /* color de fondo */
  color: #fff; /* color de fuente */
  border: 2px solid #2e2525; /* tamaño y color de borde */
  padding: 5px 20px;
  border-radius: 20px; /* redondear bordes */
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: inline-block;
}
.ov-btn-grow-box:hover {
  color: #fff;/* color de fuente hover */
}
.ov-btn-grow-box::after {
  content: "";
  background: #312424; /* color de fondo hover */
  position: absolute;
  z-index: -1;
  padding: 16px 20px;
  display: block;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  transform: scale(0, 0);
  transition: all 0.3s ease;
}
.ov-btn-grow-box:hover::after {
  transition: all 0.3s ease-out;
  transform: scale(1, 1);
}



.ov-btn-grow-box1 {
  margin-right: 10px;
  text-decoration: none;
  background: rgb(209, 209, 213); /* color de fondo */
  color: #fff; /* color de fuente */
  border: 2px solid #2e2525; /* tamaño y color de borde */
  padding: 6px 18px;
  border-radius: 20px; /* redondear bordes */
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: inline-block;
}
.ov-btn-grow-box1:hover {
  color: #fff;/* color de fuente hover */
}
.ov-btn-grow-box1::after {
  content: "";
  background: #b2b1b1; /* color de fondo hover */
  position: absolute;
  z-index: -1;
  padding: 16px 10px;
  display: block;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  transform: scale(0, 0);

}
.ov-btn-grow-box1:hover::after {
  transition: all 0.0s ease-out;
  transform: scale(1, 1);
}

.ov-btn-grow-box2 {
  text-decoration: none;
  background: #1F33BC; /* color de fondo */
  color: #fff; /* color de fuente */
  border: 2px solid #2e2525; /* tamaño y color de borde */
  padding: 6px 9px;
  border-radius: 20px; /* redondear bordes */
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: inline-block;
}
.ov-btn-grow-box2:hover {
  color: #fff;/* color de fuente hover */
}
.ov-btn-grow-box2::after {
  content: "";
  background: #213093; /* color de fondo hover */
  position: absolute;
  z-index: -1;
  padding: 16px 20px;
  display: block;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  transform: scale(0, 0);
  transition: all 0.0s ease;
}
.ov-btn-grow-box2:hover::after {
  transition: all 0.0s ease-out;
  transform: scale(1, 1);
}

* {
	box-sizing: border-box;
}



.ov-btn-grow-box3 {
  margin-right: 10px;
  text-decoration: none;
  background: #9b9595; /* color de fondo */
  color: #fff; /* color de fuente */
  border: 2px solid #2e2525; /* tamaño y color de borde */
  padding: 6px 18px;
  border-radius: 20px; /* redondear bordes */
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: inline-block;
}
.ov-btn-grow-box3:hover {
  color: #fff;/* color de fuente hover */
}
.ov-btn-grow-box3::after {
  content: "";
  background: #b2b1b1; /* color de fondo hover */
  position: absolute;
  z-index: -1;
  padding: 16px 10px;
  display: block;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  transform: scale(0, 0);

}
.ov-btn-grow-box3:hover::after {
  transition: all 0.0s ease-out;
  transform: scale(1, 1);
}

/*FORM*/

body {
	font-family: 'Roboto', sans-serif;
	background: #E5E5E5;
}

main {
  border:5px solid #ada5a5;
  border-radius: 25px;
	max-width: 800px;
	width: 90%;
	margin: auto;
  

	padding: 40px;  
}


.formulario {
  
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.formulario__label {
	display: block;
	font-weight: 700;
	padding: 10px;
	cursor: pointer;
}

.formulario__grupo-input {
	position: relative;
}

.formulario__input {
	width: 100%;
	background: #fff;
	border: 3px solid transparent;
	border-radius: 3px;
	height: 45px;
	line-height: 45px;
	padding: 0 40px 0 10px;
	transition: .3s ease all;
}

.formulario__input:focus {
	border: 3px solid #0075FF;
	outline: none;
	box-shadow: 3px 0px 30px rgba(163,163,163, 0.4);
}

.formulario__input-error {
	font-size: 12px;
	margin-bottom: 0;
	display: none;
}

.formulario__input-error-activo {
	display: block;
}

.formulario__validacion-estado {
	position: absolute;
	right: 10px;
	bottom: 15px;
	z-index: 100;
	font-size: 16px;
	opacity: 0;
}

.formulario__checkbox {
	margin-right: 10px;
}

.formulario__grupo-terminos, 
.formulario__mensaje,
.formulario__grupo-btn-enviar {
	grid-column: span 2;
}

.formulario__mensaje {
	height: 45px;
	line-height: 45px;
	background: #F66060;
	padding: 0 15px;
	border-radius: 3px;
	display: none;
}

.formulario__mensaje-activo {
	display: block;
}

.formulario__mensaje p {
	margin: 0;
}

.formulario__grupo-btn-enviar {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.formulario__btn {
	height: 45px;
	line-height: 45px;
	width: 30%;
	background: #000;
	color: #fff;
	font-weight: bold;
	border: none;
	border-radius: 3px;
	cursor: pointer;
	transition: .1s ease all;
}

.formulario__btn:hover {
	box-shadow: 3px 0px 30px rgba(163,163,163, 1);
}

.formulario__mensaje-exito {
	font-size: 14px;
	color: #119200;
	display: none;
}

.formulario__mensaje-exito-activo {
	display: block;
}

/* ----- -----  Estilos para Validacion ----- ----- */
.formulario__grupo-correcto .formulario__validacion-estado {
	color: #1ed12d;
	opacity: 1;
}

.formulario__grupo-incorrecto .formulario__label {
	color: #bb2929;
}

.formulario__grupo-incorrecto .formulario__validacion-estado {
	color: #bb2929;
	opacity: 1;
}

.formulario__grupo-incorrecto .formulario__input {
	border: 3px solid #bb2929;
}


/* ----- -----  Mediaqueries ----- ----- */
@media screen and (max-width: 800px) {
	.formulario {
		grid-template-columns: 1fr;
	}

	.formulario__grupo-terminos, 
	.formulario__mensaje,
	.formulario__grupo-btn-enviar {
		grid-column: 1;
	}

	.formulario__btn {
		width: 100%;
	}
}

.caja {
	margin: 0 auto 10px;
	border:1px solid #ada5a5;
	height:30px;
	overflow: hidden;
	width: 240px;
	position:relative;
 }
 select {

	background: transparent;
	border: none;
	font-size: 14px;
	height: 30px;
	padding: 5px;
	width: 250px;
 }
 select:focus{ outline: none;}
 
 .caja::after{
	 content:"\025be";
	 display:table-cell;
	 padding-top:7px;
	 text-align:center;
	 width:30px;
	 height:30px;
	 background-color:#d9d9d9;
	 position:absolute;
	 top:0;
	 right:0px;	
	 pointer-events: none;
 }


 .sidebar{
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 260px;
  background: #11101d;
  z-index: 100;
  transition: all 0.5s ease;
}
.sidebar.close{
  width: 78px;
}
.sidebar .logo-details{
  height: 60px;
  width: 100%;
  display: flex;
  align-items: center;
}
.sidebar .logo-details i{
  font-size: 30px;
  color: #fff;
  height: 50px;
  min-width: 78px;
  text-align: center;
  line-height: 50px;
}
.sidebar .logo-details .logo_name{
  font-size: 22px;
  color: #fff;
  font-weight: 600;
  transition: 0.3s ease;
  transition-delay: 0.1s;
}
.sidebar.close .logo-details .logo_name{
  transition-delay: 0s;
  opacity: 0;
  pointer-events: none;
}
.sidebar .nav-links{
  height: 100%;
  padding: 30px 0 150px 0;
  overflow: auto;
}
.sidebar.close .nav-links{
  overflow: visible;
}
.sidebar .nav-links::-webkit-scrollbar{
  display: none;
}
.sidebar .nav-links li{
  position: relative;
  list-style: none;
  transition: all 0.4s ease;
}
.sidebar .nav-links li:hover{
  background: #1F33BC;
}
.sidebar .nav-links li .iocn-link{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.sidebar.close .nav-links li .iocn-link{
  display: block
}
.sidebar .nav-links li i{
  height: 50px;
  min-width: 78px;
  text-align: center;
  line-height: 50px;
  color: #fff;
  font-size: 20px;
  cursor: pointer;
  transition: all 0.3s ease;
}
.sidebar .nav-links li.showMenu i.arrow{
  transform: rotate(-180deg);
}
.sidebar.close .nav-links i.arrow{
  display: none;
}
.sidebar .nav-links li a{
  display: flex;
  align-items: center;
  text-decoration: none;
}
.sidebar .nav-links li a .link_name{
  font-size: 18px;
  font-weight: 400;
  color: #fff;
  transition: all 0.4s ease;
}
.sidebar.close .nav-links li a .link_name{
  opacity: 0;
  pointer-events: none;
}
.sidebar .nav-links li .sub-menu{
  padding: 6px 6px 14px 80px;
  margin-top: -10px;
  background: #1d1b31;
  display: none;
}
.sidebar .nav-links li.showMenu .sub-menu{
  display: block;
}
.sidebar .nav-links li .sub-menu a{
  color: #fff;
  font-size: 15px;
  padding: 5px 0;
  white-space: nowrap;
  opacity: 0.6;
  transition: all 0.3s ease;
}
.sidebar .nav-links li .sub-menu a:hover{
  opacity: 1;
}
.sidebar.close .nav-links li .sub-menu{
  position: absolute;
  left: 100%;
  top: -10px;
  margin-top: 0;
  padding: 10px 20px;
  border-radius: 0 6px 6px 0;
  opacity: 0;
  display: block;
  pointer-events: none;
  transition: 0s;
}
.sidebar.close .nav-links li:hover .sub-menu{
  top: 0;
  opacity: 1;
  pointer-events: auto;
  transition: all 0.4s ease;
}
.sidebar .nav-links li .sub-menu .link_name{
  display: none;
}
.sidebar.close .nav-links li .sub-menu .link_name{
  font-size: 18px;
  opacity: 1;
  display: block;
}
.sidebar .nav-links li .sub-menu.blank{
  opacity: 1;
  pointer-events: auto;
  padding: 3px 20px 6px 16px;
  opacity: 0;
  pointer-events: none;
}
.sidebar .nav-links li:hover .sub-menu.blank{
  top: 50%;
  transform: translateY(-50%);
}
.sidebar .profile-details{
  position: fixed;
  bottom: 0;
  width: 260px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #1d1b31;
  padding: 12px 0;
  transition: all 0.5s ease;
}
.sidebar.close .profile-details{
  background: none;
}
.sidebar.close .profile-details{
  width: 78px;
}
.sidebar .profile-details .profile-content{
  display: flex;
  align-items: center;
}
.sidebar .profile-details img{
  height: 52px;
  width: 52px;
  object-fit: cover;
  border-radius: 16px;
  margin: 0 14px 0 12px;
  background: #1d1b31;
  transition: all 0.5s ease;
}
.sidebar.close .profile-details img{
  padding: 10px;
}
.sidebar .profile-details .profile_name,
.sidebar .profile-details .job{
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  white-space: nowrap;
}
.sidebar.close .profile-details i,
.sidebar.close .profile-details .profile_name,
.sidebar.close .profile-details .job{
  display: none;
}
.sidebar .profile-details .job{
  font-size: 12px;
}
.home-section{
  position: relative;
  background: #E4E9F7;
  height: 100vh;
  left: 260px;
  width: calc(100% - 260px);
  transition: all 0.5s ease;
  padding: 12px;
}
.sidebar.close ~ .home-section{
  left: 78px;
  width: calc(100% - 78px);
}
.home-content{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.home-section .home-content .bx-menu,
.home-section .home-content .text{
  color: #11101d;
  font-size: 35px;
}
.home-section .home-content .bx-menu{
  cursor: pointer;
  margin-right: 10px;
}
.home-section .home-content .text{
  font-size: 26px;
  font-weight: 600;
}

@media screen and (max-width: 400px){
  .sidebar{
    width: 240px;
  }
  .sidebar.close{
    width: 78px;
  }
  .sidebar .profile-details{
    width: 240px;
  }
  .sidebar.close .profile-details{
    background: none;
  }
  .sidebar.close .profile-details{
    width: 78px;
  }
  .home-section{
    left: 240px;
    width: calc(100% - 240px);
  }
  .sidebar.close ~ .home-section{
    left: 78px;
    width: calc(100% - 78px);
  }
}


table {
  text-align: center;
  width: 100%;
}

.centrar {
  display: block;
  margin: auto;
}

.card {

  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 40px;
  background-color: #f8f9fa;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.card-image {
  width: 100%;
  height: 300px;
  overflow: hidden;

}

.card-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  margin: 0;
}

.card-content {
  padding: 15px;
}

.card-action {
  padding: 15px;
  text-align: center;
}

@media (max-width: 768px) {
  .col-md-4 {
    flex-basis: 50%;
  }
}

@media (max-width: 576px) {
  .col-md-4 {
    flex-basis: 100%;
  }
}
.animal-card {

  margin: 100px;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 20px;
  background-color: #4f5cac;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  display: flex;
}

.animal-image {
  flex: 0 0 200px;
  max-width: 200px;
  text-align: center;
  padding: 15px;
  padding-top: auto;
}

.animal-image img {
  margin-right: 50%;
  margin-top: 50%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  border-radius: 20px;
}

.animal-details {
  flex: 1;
  padding: 15px;
}

.animal-details p {
  margin: 5px 0;
}

.adopt-button-container {
  text-align: center;
  margin-top: 10px;
}

.adopt-button {
  display: inline-block;
  padding: 10px 20px;
  background-color: #4caf50;
  color: #fff;
  text-decoration: none;
  border-radius: 5px;
}

.adopt-button:hover {
  background-color: #45a049;
  text-decoration: none;
  color: #afdcb3;
}

@media (max-width: 768px) {
  .animal-card {
    margin: 0px;
    flex-direction: column;
  }

  .animal-image {
    flex: 1;
    max-width: 100%;
  }
}




.table-container {
  overflow-x: auto;
}

.user-table {
  width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
  font-family: Arial, sans-serif;
  text-align: left;
}

.user-table td {
  padding: 10px;
  border: 1px solid #ccc;
}

.user-table b {
  font-weight: bold;
}

.user-table tr:nth-child(even) {
  background-color: #f2f2f2;
}

.user-table tr:hover {
  background-color: #e0e0e0;
}

/* Estilos para hacer la tabla responsive en pantallas pequeñas */
@media (max-width: 768px) {
  .user-table {
    font-size: 14px;
  }
  
  .user-table td {
    padding: 8px;
  }
}

.xxx-tabla{


  display: block;
  margin: auto;
}





