/*variables*/
:root{
	--texto-rosado: #B7156D;
	--texto-blanco: #FFFFFF;
	--texto-negro: #000000;
	--texto-gris-oscuro: #545555;
	--texto-gris-claro:#B4BFC7;
	--texto-gris-intermedio: #7A7C81;
	--contorno: #ECF1F5;
	--texto-precio: #8A8A8A;
	--color-icono: #707070;
	--fondo-option: #F2F2F2;
}
/*fonts*/
@font-face {
	font-family: Univia Pro;
	src: url('../../public/fonts/UniviaProRegular.otf');
}
/*reglas generales*/
*{
	box-sizing: border-box;
	font-family: Univia Pro;
}
.cont-productos{
	width: 80%;
	height: auto;
	/*background: purple;*/
	margin: auto;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
}
/*filtros*/
.contenedor-filtros{
	width: 25%;
	height: auto;
	/*background: lightblue;*/
	padding: 6em 2em 2em 2em;
}
.block-scroll {
	overflow:hidden;
}
.contenedor-prod-categorias{
	width: 100%;
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	/*background: blueviolet;*/
}
.titulo_formulario{
	border-bottom: 2px solid var(--contorno);
	padding-bottom: 0.5em;
	color: var(--texto-rosado);
	font-size: 2em;
	letter-spacing: 2px; 
}
.form-prod-alhajas{
	width: 100%;
	height: auto;
	padding: 1em 0;
	border-bottom: 2px dashed var(--contorno);
	align-items: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
	/*background: pink;*/
}
.form-prod-monedas{
	width: 100%;
	height: auto;
	padding: 1em 0;
	border-bottom: 2px dashed var(--contorno);
	align-items: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
	/*background: blue;*/
}
.form-prod-relojes{
	width: 100%;
	height: auto;
	padding: 1em 0;
	border-bottom: 2px dashed var(--contorno);
	align-items: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
	/*background: orangered;*/
}
.form-prod-varios{
	width: 100%;
	height: auto;
	padding: 1em 0;
	border-bottom: 2px dashed var(--contorno);
	align-items: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
	/*background: green;*/
}
/*select*/
.menu-desplegable{
	border: none;
	padding: 1em 0;
	outline: none;
	font-size: 1rem;	
	width: 90%;
	margin: 0;
	color: var(--texto-gris-oscuro);
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
}
.menu-desplegable option{
	width: 90%;
	background: var(--fondo-option);
	border-radius: 0;
	text-transform: uppercase;
	padding: 0.5em;
}
/*lista*/
.alhajas-desplegable{
	display: flex;
	width: 90%;
	list-style: none;
	height: auto;
	/*background: blue;*/
	margin: 0;
	padding: 0;
	flex-wrap: wrap;
	font-size: 1rem;
}
.formcat-Al{
	color: var(--texto-gris-oscuro);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	list-style: none;
	/*background: yellow;*/
	width: 100%;
	height: auto;
	padding: 0;
	justify-content: space-between;
}
.formt-submenu-alhajas{
	display: none;
	height: 0px;
	overflow: hidden;
	color: var(--texto-gris-oscuro);
}

.formcat-Al:hover .formt-submenu-alhajas{
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	/*background: lightblue;*/
	width: 100%;
	height: auto;
	padding: 0;
}
.formcat-Al:hover .icono-formt-menu{
	transform: rotate(180deg);
	transition: .3s;
}

.opt-sencilla{
	display: flex;
	list-style: none;
	/*background: white;*/
	width: 100%;
	height: auto;
	padding: 0.5em 0 0.5em 0;
}
.opt-desplegable{
	display: flex;
	flex-wrap: wrap;
	position: relative;
	list-style: none;
	/*background: red;*/
	width: 100%;
	height: auto;
	padding: 0;
	align-items: center;
	align-content: center;
	justify-content: space-between;
	padding: 0.5em 0 0.5em 0;
}
.formt-sub-submenu{
	display: none;
	height: 0px;
	overflow: hidden;
	color: var(--texto-gris-oscuro);
}
.opt-desplegable.desplegarSubmenu .formt-sub-submenu{
	display: block;
	flex-wrap: wrap;
	list-style: none;
	position: relative;
	width: 100%;
	height: auto;
	padding: 0;
	line-height: 1.5em;
	/*background: blueviolet;*/
	transition: 0.3s;
}
.opt-desplegable.colorTexto{
	color: var(--texto-rosado);
}
.opt-desplegable.girarIcono .icono-opt-desplegable{	
	color: var(--texto-rosado);
	transform: rotate(180deg);
	transition: .3s;
}

.filtros{
	width: 100%;
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	/*background: red;*/
	position: relative;
	margin-top: 3em;
}
.btn-limpiar{
	border: none;
  	background: var(--texto-blanco);
    color: #B4BFC7;
    padding: 1.5em;
    border-left: 2px solid var(--contorno);
    position: absolute;
    top: 1.9em;
    right: 0;
}
.btn-limpiar:hover{
    color: var(--texto-rosado);
}
.row-1{
	width: 100%;
	height: auto;
	/*background: green;*/
}
.row-2{
	width: 100%;
	height: auto;
	/*background:orange;*/
	padding: 1em 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-around;
}
.row-3{
	width: 100%;
	height: auto;
	/*background:lightcoral;*/
	padding: 1em 0;
}
.row-4{
	width: 100%;
	height: auto;
	/*background:purple;*/
	padding: 1em 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}
.row-5{
	width: 100%;
	height: auto;
	/*background:brown;*/
	padding: 1em 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-around;
}
.titulo-row{
	display: block;
	width: 100%;
	font-size: 1.5em;
	color: var(--texto-gris-oscuro);
	letter-spacing: 2px;
	margin: 0;
	margin-bottom: 1em;
}
.btn-filtro{
	outline: none;
	border-radius: 25px;
	border: 2px solid var(--texto-gris-claro);
	color: var(--texto-gris-intermedio);
	padding: 1em 2em;
}
.input_precio{
	width: 100%;
	height: auto;
	/*background: pink;*/
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-around;
}
.input_precio label{
	width: 50%;
	height: auto;
	font-size: 1em;
	/*border: 2px solid red;*/
	text-align: center;
	margin-bottom: 1em;
	color: var(--texto-gris-intermedio);
}
.precio-min,
.precio-max{
	width: 35%;
	height: 2em;
	font-size: 1em;
	outline: none;
	text-align: center;
	border-radius: 5px;
	border: 2px solid var(--contorno);
	margin-bottom: 1em;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button{
	-webkit-appearance: none;
}
.slider{
	height: 5px;
	background: var(--contorno);
	border-radius: 5px;
	box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
	position: relative;
}
.slider .progreso{
	height: 5px;
	left: 25%;
	right: 25%;
	position: absolute;
	border-radius: 5px;
	background: var(--texto-rosado);
}
.rango{
	position: relative;
}
.rango input{
	position: absolute;
	left: 0;
	top: -5px;
	height: 5px;
	width: 100%;
	margin: 0;
	pointer-events: none;
	-webkit-appearance: none;
	background: none;
}
input[type="range"]::-webkit-slider-thumb{
	height: 17px;
	width: 17px;
	border-radius: 50%;
	pointer-events: auto;
	-webkit-appearance: none;
	background: var(--texto-blanco);
	box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
}
.menu-sucursal{
	outline: none;
	border-radius: 25px;
	border: 2px solid var(--texto-gris-claro);
	padding: 1em 0;
	font-size: 1rem;	
	width: 90%;
	color: var(--texto-gris-oscuro);
}
.btn-aplicar{
	outline: none;
	border-radius: 25px;
	border: 2px solid var(--texto-rosado);
	color: var(--texto-rosado);
	font-weight: bold;
	letter-spacing: 2px;
	padding: 1em 2em;
	background: var(--texto-blanco);
	margin: 1em 0;
}
/*tarjetas productos*/
.contenedor-productos{
	width: 75%;
	height: auto;
	/*background: lightcoral;*/
	padding: 2em 1em;
	display: flex;
	flex-direction: column;
}
.contenedor-opciones{
	width: 100%;
	height: auto;
	/*background: blueviolet;*/
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin-bottom: 2em;
}
.categoria__titulo{
	display: block;
	width: 100%;
	font-size: 2.25em;
	letter-spacing: 0.2em;
	color: var(--texto-rosado);
	margin-top: 0;
}
.resultados-busqueda{
	width: 50%;
	display: block;
	/*background: blue;*/
}
.reslatar-result{
	color: var(--texto-precio);
}
.botones-opciones{
	width: 50%;
	height: auto;
	display: flex;
	flex-direction: row;
	/*background: green;*/
	justify-content: flex-end;
}
.btn-cuadricula,
.btn-lista{
	background: transparent;
	border: none;
	display: flex;
	width: 3em;
	font-size: 1.5em;
	color: var(--color-icono);
	height: auto;
	align-items: center;
	justify-content: center;
}
ion-icon.tactive {
	color: var(--texto-rosado);
}
.filtros-responsive{
	display: none;
}
.card-grid-producto.hide{
	display: none;
}
.card-list-producto.hide{
	display: none;
}
/*cuadricula tarjetas*/
.contenedor-tarjetas{
	width: 100%;
	height: auto;
	/*background: orange;*/
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 1em 1em;	
}
.card-grid-producto{
	width: 30%;
	height: 20em;
	background: white;
	box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
	padding: 1em;
	display: flex;
    flex-direction: column;
    justify-content: space-around;
    position: relative;
    margin-bottom: 2.5em;
    border-radius: 16px;
}
.card-grid-producto__image{
	width: 100%;
	height: 78%;
	/*background: blueviolet;*/
	/*border: 2px solid black;*/
}
.card-grid-producto__image img{
	width: 100%;
	height: 100%;
}
.card-grid-producto__text{
	width: 100%;
	height: 20%;
	/*border: 2px solid black;*/
	display: flex;
	flex-direction: column;
	align-items: center;
}
.card-grid-producto__nombre{
	font-size: 1em;
	color: var(--texto-negro);
	margin: 0;
	overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
.card-grid-producto__precio{
	font-size: 1em;
	color: var(--texto-gris-oscuro);
	margin: 0;
	margin-top: 0.5em;
}
.capa-card-grid-producto{
	border-radius: 16px;
	width: 100%;	
	background: rgba(122, 124, 129, 0.44);
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	border: 1px solid rgba(122, 124, 129, 0.3);
	height: 100%;
	padding: 1em;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-around;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	visibility: hidden;
	transition: all 0.5s ease;	
}
.card-grid-producto .card-grid-producto__image:hover > .capa-card-grid-producto{
	opacity: 1;
	visibility: visible;
}
.card-grid-producto__sucursal{
	font-weight: bold;
	text-align: center;
	font-size: 2em;
	letter-spacing: 2px;
	margin: 0;
	color: var(--texto-gris-oscuro);
}
.btn-ver-mas-grid{
	position: relative;
	padding: 0.5em 0.5em;
	border-radius: 50px 50px 50px 50px;
	border: 2px solid var(--texto-gris-oscuro);
	letter-spacing: 2px;
	color: var(--texto-gris-oscuro);
	text-align: center;
	text-decoration: none;
}
/*lista tarjetas*/
.card-list-producto{
	width: 100%;
	height: auto;
	background: white;
	box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.1);
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	padding: 1em;
	border-radius: 16px;
	margin-bottom: 2.5em;
}
.card-list-producto__image{
	width: 28%;
	height: 20em;
	/*background: red;*/
}
.card-list-producto__image img{
	width: 100%;
	height: 100%;
}
.card-list-producto__text{
	width: 70%;
	height: auto;
	/*background: lightpink;*/
	padding: 1em;
}
.card-list-producto__nombre{
	font-size: 1.2em;
	color: var(--texto-negro);
	margin: 0;
}
.card-list-producto__precio{
	font-size: 1.2em;
	color: var(--texto-precio);
	margin: 0.5em 0;
}
.card-list-producto__sucursal{
	font-size: 1.2em;
	color: var(--texto-precio);
	margin: 0 0 2em 0;
}
.btn-ver-mas-list{
	padding: 0.5em 0.5em;
	border-radius: 50px 50px 50px 50px;
	border: 2px solid var(--texto-gris-oscuro);
	letter-spacing: 2px;
	color: var(--texto-gris-oscuro);
	text-align: center;
	text-decoration: none;
}
.btn-ver-mas-list:hover{
	background: var(--texto-rosado);
	color: var(--texto-blanco);
	border: 2px solid var(--texto-rosado);
}
.card-list-producto__resena{
	font-size: 1.2em;
	color: var(--texto-precio);
	margin-bottom: 2em;
}
/*responsive*/
@media screen and (max-width: 1024px){
	/*filtros*/
	.contenedor-filtros{
		position: absolute;
		background: #ffffff;
		height: auto;
		width: 100%;
		/*top: 0;*/
		top: 23.2em;
		right: -100%;
		margin-right: 0;
		max-width: 350px;
		overflow-y: auto;
		padding-top: 3em;
		padding-bottom: 3em;
		transition: all 0.3s ease;
		z-index: 3;
		display: none;
	}
	.contenedor-filtros-visible{
		right: 0%;
		display: block;
	}	
	.filtros-responsive{
		display: block;
		display: flex;
		width: 3em;
		font-size: 1.5em;
		color: var(--color-icono);
		height: auto;
		align-items: center;
		justify-content: center;
	}
	.color-icon{
		color: var(--texto-rosado);
	}
	/*tarjetas productos*/
	.contenedor-productos{
		width: 100%;
	}
}
@media screen and (max-width: 768px){
	.card-grid-producto{
		width: 46%;
		height: 20em;
	}
	.card-list-producto {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
	}
	.card-list-producto__image {
		width: 100%;
		height: 20em;
	}
	.card-list-producto__text {
		width: 100%;
	}
}
@media screen and (max-width: 760px){
	.categoria__titulo {
		font-size: 2em;    
	}
	.titulo_formulario {
		font-size: 1.5em;
	}
	.btn-limpiar {
		top: 0.4em;    
	}
	.titulo-row {
		font-size: 1.2em;
	}
	.card-grid-producto__sucursal{
		font-size: 1.8em;
	}
}
@media screen and (max-width: 540px){
	.card-grid-producto{
		width: 100%;
		height: 20em;
	}
}
@media screen and (max-width: 420px){
	.contenedor-productos {
		padding: 2em 0em 0em 0em;
	}
	.contenedor-tarjetas {
		padding: 0;
	}
	.card-list-producto__resena {
		font-size: 1em;		
	}
}