body {
	font-family: 'Kanit', sans-serif;
	overflow-x: hidden;
}
figure img{
	width: 100%;
}
footer{
	background-color: #fff;
}
.ico-cont{
	color: #d3d3d3;
	font-size: 3rem;
}
.hr {
    opacity: .1!important;
}
.btn-breve,
.texto-breve{
	display: none;
}
.card-prod{
	border: 1px solid #f1f1f1;
	border-radius: 0px;
}
.card-prod figure{
	background-color: #000;
	overflow: hidden;
}
.card-prod figure img{
	opacity: 1;
	transform: scale(1);
    height: 330px!important;
    object-fit: cover!important;
    object-position: center!important;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.card-prod:hover figure img{
	opacity: 0.9;
	transform: scale(1.1);
}
.card-prod figure .btn-eye{
	opacity: 0;
    z-index: 1;
    position: absolute;
    right: 0;
    left: 0;
    bottom: 30%;
    margin: auto;
    width: 55px;
    padding-top: 14px;
    height: 55px;
    font-size: 1.1rem;
    color: #fff;
    border: 1px solid #333;
    background-color: #000;
    border-radius: 50%;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.card-prod:hover figure .btn-eye{
	opacity: .8;
    bottom: 35%;
}
.card-prod figure .btn-eye:hover{
	opacity: 1;
	color: #fff;
	border: 1px solid #333;
	background-color: #000;
}
.titulo-prod {
    color: #666;
    font-size: 1.1rem;
    font-weight: 200;
}
.valor-prod{
    color: #000;
    font-size: 1.2rem;
    font-weight: 400;
}
.precio-oferta{
	color: #333;
    font-size: .8rem;
    font-weight: 300;
}
.modal-content{
	border-radius: 30px;
}
.form-floating>label{
    font-size: 1rem;
    font-weight: 200;
    color: #868686;
}
.form-control{
    border: 1px solid;
    text-transform: none;
    font-weight: 200;
    letter-spacing: 0;
    height: 55px!important;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    padding-left: 22px;
    background-color: #efefef !important;
    border-color: #efefef;
    color: #ababab;
}
.form-control:focus {
    color: #212529;
    background-color: #fff;
    border-color: #8c8c8c;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgb(104 103 103 / 25%);
}
.logo-quien{
	width: 200px;
}
.logo-foot{
	width: 120px;
}
.div-align{
	height: 500px;
}
.btn-color {
	border-radius: 0;
    color: #fff;
    background-color: #000;
    border-color: #000;
    padding: 15px 35px;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1rem;
}
.btn-color:hover {
    color: #000!important;
    background-color: #ffffff00!important;
    border-color: #000!important;
}
.btn-color-two {
	border-radius: 0;
    color: #000;
    background-color: #fff;
    border-color: #000;
    padding: 15px 35px;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1rem;
}
.btn-color-two:hover {
    color: #fff!important;
    background-color: #000!important;
    border-color: #000!important;
}
.texto-blanco{
	font-size: .9rem;
	color: #fff;
	font-weight: 200;
}
.topbar{
	background-color: #161616;
}
.accordion-button:not(.collapsed) {
    color: #000000;
    background-color: #f4f4f4;
    box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 #e4e4e4;
}
.btn-grid,
.btn-list{
    background: #fff;
    border-radius: 0px;
    color: #a3a1a1;
    border: 1px solid #e1dfdf;
}
.form-control-buscar{
	width: 260px;
	border: 1px solid;
    text-transform: none;
    font-weight: 400;
    letter-spacing: 0;
    height: 40px!important;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    padding-left: 22px;
    background-color: #efefef!important;
    border-color: #efefef;
    color: #ababab;
}
.form-control-buscar-pro::placeholder,
.form-control-buscar::placeholder{
	font-size: .9rem;
	font-weight: 200;
}
.form-control-buscar-pro:hover,
.form-control-buscar:focus {
    border-color: #000 !important;
}
.btn-searsh{
    margin-left: -50px;
    color: #ababab;
}
.btn-searsh-pro {
    background: #000;
    border-radius: 0px;
    color: #ffffff;
    border: 1px solid #000;
}
.btn-searsh-pro:hover{
	border: 1px solid #000!important;
}
.btn-searsh-pro:hover,
.btn-searsh:hover{
    color: #333333;
}
.form-control-buscar-pro{
	width: 260px;
	border: 1px solid;
    text-transform: none;
    font-weight: 400;
    letter-spacing: 0;
    height: 40px!important;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
    padding-left: 22px;
    background-color: #efefef!important;
    border-color: #efefef;
    color: #ababab;
}
.btn-carro {
	position: relative;
    font-size: 1.7rem;
    padding-right: 0.1rem;
    color: #333;
}
.btn-carro .badge {
    position: absolute;
    top: -7px;
    right: -16px;
    height: 25px;
    width: 25px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    font-weight: 300;
    font-size: .8rem;
    background-color: #333;
    padding: 0;
    color: #fff;
}
.img-pro {
    width: 261px!important;
    height: 261px!important;
    object-fit: cover!important;
    object-position: center!important;
}
#results {
    max-height: 300px;
    text-align: left;
    list-style: none;
    padding: 5px 15px;
    overflow: scroll;
    background-color: #fff;
    border-radius: 10px;
    position: absolute;
    z-index: 99;
}
#navbar .navbar-brand{
	text-align: center;
}
#navbar .navbar-brand img{
	margin: 0 3.5rem;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}
#navbar.navbar-shrink .navbar-brand img{
	width: 100px;
    margin: 0 4.5rem;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

/*CSS Icono Carro de Compras*/

.carousel-item {
    margin-top: 120px;
    height: 48vh;
    min-height: 480px;
    max-height: 480px;
    background: no-repeat center center scroll;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.banner-seccion{
	margin-top: 120px;
	height: 300px;
	background: no-repeat center center scroll;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
.carousel-caption{
	bottom: inherit;
	padding: 0;
	text-align: center;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.titulo-slide {
    font-size: 2.5rem;
    font-weight: 500;
    text-align: left;
}v
.titulo-blanco{
	color: #fff;
	font-size: 2.2rem;
	font-weight: 600;
}
.titulo-small-blanco{
	color: #fff;
	font-size: 21px;
	font-style: italic;
	margin-bottom: 0;
	font-weight: 400;
}
.titulo{
	color: #333;
	font-size: 35px;
	margin-bottom: 0;
	font-weight: 600;
}
.titulo-italic{
	font-style: italic;
	color: #666;
	font-size: 24px;
	margin-bottom: 0;
	font-weight: 600;
}
.subtitulo {
    color: #333;
    font-size: 1.4rem;
    margin-bottom: 0;
    font-weight: 500;
}
.texto{
	color: #666;
	font-size: 1rem;
	font-weight: 200;
}
.texto-b{
	color: #333;
	font-size: 1rem;
	font-weight: 600;
}
a.texto:hover{
	color: #000;
	font-size: 16px;
	font-weight: 300;
}
.texto-underline{
	border-bottom: 1px dashed #ccc;
}

.precio-oferta{
	font-size: 14px;
	text-decoration: line-through;
}

/*Custom Radios Color - Tallas*/
	.select-color{
		width: 40px;
		height: 40px;
		margin-right: .3rem;
		margin-bottom: .4rem;
		position: relative;
		padding: 0;
	}
	.select-tallas{
		width: 45px;
		min-height: 32px;
		margin-right: .3rem;
		margin-bottom: .4rem;
		position: relative;
		padding: 0;
	}

	/* Hide the browser's default radio button */
	.select-color input,
	.select-tallas input{
		position: absolute;
		opacity: 0;
		cursor: pointer;
		margin: 0;
	}

	/* Create a custom radio button */
	.select-color .cont-color{
		position: absolute;
		top: 0;
		left: 0;
		height: 40px;
		width: 40px;
		padding: 4px;
		border:1px solid #e3e3e3;
		background-color: #fff;
	}
	.select-tallas .cont-talla{
		position: absolute;
		top: 0;
		left: 0;
		padding: 4px 0px;
		width: 45px;
		border: 1px solid #e3e3e3;
		font-size: 14px;
		background-color: #fff;
	}

	.select-color .cont-color .color{
		height: 100%;
		width: 100%;
	}

	/* On mouse-over */
	.select-color:hover input ~ label .cont-color,
	.select-tallas:hover input ~ .cont-talla{
		border-color: #80bdff;
		box-shadow: 0 0 0 0.15rem rgba(0,123,255,.25);
		cursor: pointer;
	}

	/* Show the indicator when checked */
	.select-color input:checked ~ label .cont-color,
	.select-tallas input:checked ~ .cont-talla {
		border-color: #80bdff;
		box-shadow: 0 0 0 0.15rem rgba(0,123,255,.25);
	}

/*Fin Custom Radios Color - Tallas*/

.productos .card img{
	width: 100%;
	height: 250px;
	object-fit: cover;
}

.quantity {
	position: relative;
}
input.error {
    border-color: #F44336!important;
    outline: 0!important;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(244, 67, 54, .6)!important;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(244, 67, 54, .6)!important;
}
.alerta .alert {
	position: fixed;
	bottom: 0;
	width: 100%;
	border-radius: 0;
	margin: 0;
	padding: 25px 15px;
	border: none;
	z-index: 9999;
	text-align: center;
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{
	-webkit-appearance: none;
	margin: 0;
}
input[type=number]{
	-moz-appearance: textfield;
}
.quantity input {
	width: 85%;
	height: 48px;
	line-height: 1.65;
	float: left;
	display: block;
	padding: 0;
	margin: 0;
	padding-left: 15px;
	border: 1px solid #eee;
}
.quantity input:focus {
	outline: 0;
}
.quantity-nav {
	float: left;
	position: relative;
	height: 46px;
}
.quantity-button {
	position: relative;
	cursor: pointer;
	border-left: 1px solid #eee;
	width: 25px;
	text-align: center;
	color: #333;
	font-size: 13px;
	font-family: "Trebuchet MS", Helvetica, sans-serif !important;
	line-height: 1.7;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
}
.quantity-button.quantity-up {
	position: absolute;
	height: 50%;
	top: 0;
	border-bottom: 1px solid #eee;
}
.quantity-button.quantity-down {
	position: absolute;
	bottom: -1px;
	height: 50%;
}
.wsp{
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1px;
    padding: 3px 7px;
    letter-spacing: 0;
    text-transform: none;
}
.whatsapp {
    position: fixed;
    z-index: 9999!important;
    border-radius: 50% 50% 50% 0%;
    width: 62px;
    height: 62px;
    bottom: 15px;
    left: 15px;
    background-color: #25d366;
    padding: 8px 8px 8px 10px;
    animation: 1s infinite alternate shimmy;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
}
.whatsapp i {
    font-size: 42px;
    color: #fff;
}
@keyframes shimmy{
    0%{
        transform:translate(0,0)
    }
    100%{
        transform:translate(5px, -5px)
    }
}

@media (max-width: 1024px) {

}
@media (max-width: 991px){
	
}

@media (max-width: 767px) {
	#navbar .navbar-brand img,
	#navbar.navbar-shrink .navbar-brand img{
	    margin: 0!important;
	}

}

@media (max-width: 767px) {
	.form-control-buscar {
   		width: 215px;
	}
	.titulo-slide{
		font-size: 28px;
		line-height: 28px;
		font-weight: 700;
	}
}
@media (max-width: 499px){
	#navbar .navbar-brand{
		margin-right: 0;
		width: 100%;
		text-align: center;
		margin-bottom: .5rem;
	}
	.carousel-item, .banner-seccion{
		margin-top: 160px;
	}
}
/* Hover menú y botones */
@media (min-width: 992px) {
	#navbar .navbar-nav .nav-link {
		position: relative;
		transition: color .3s ease;
	}
	#navbar .navbar-nav .nav-link::after {
		content: "";
		position: absolute;
		left: 50%;
		bottom: 2px;
		width: 0;
		height: 2px;
		background-color: currentColor;
		transform: translateX(-50%);
		transition: width .3s ease;
	}
	#navbar .navbar-nav .nav-link:hover::after,
	#navbar .navbar-nav .nav-link.active::after {
		width: calc(100% - 1rem);
	}
}
.btn-color,
.btn-color-two {
	transition: color .3s ease, background-color .3s ease, border-color .3s ease, transform .3s ease, box-shadow .3s ease;
}
.btn-color:hover,
.btn-color-two:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 18px rgba(0, 0, 0, .25);
}
.btn-color:active,
.btn-color-two:active {
	transform: translateY(0);
	box-shadow: none;
}

/* Banner de tienda en inicio (fondo oscuro): texto y botón claros */
.banner-tienda .titulo-blanco {
	color: #fff !important;
	text-shadow: 0 2px 8px rgba(0, 0, 0, .6);
}
.btn-color.btn-color-claro {
	color: #000;
	background-color: #fff;
	border-color: #fff;
}
.btn-color.btn-color-claro:hover {
	color: #fff !important;
	background-color: rgba(255, 255, 255, .15) !important;
	border-color: #fff !important;
}

/* Tarjetas de producto: estilo moderno */
.card-prod {
	border: 0;
	border-radius: 18px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .07);
	transition: transform .4s cubic-bezier(.2, .8, .2, 1), box-shadow .4s ease;
}
.card-prod:hover {
	transform: translateY(-8px);
	box-shadow: 0 22px 40px rgba(0, 0, 0, .16);
}
.card-prod figure {
	position: relative;
	overflow: hidden;
}
.card-prod figure img {
	transition: transform .7s cubic-bezier(.2, .8, .2, 1), opacity .3s ease;
}
.card-prod:hover figure img {
	opacity: 1;
	transform: scale(1.08);
}
/* Degradado inferior */
.card-prod figure::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0, 0, 0, .55) 0%, rgba(0, 0, 0, 0) 55%);
	opacity: 0;
	transition: opacity .4s ease;
	pointer-events: none;
}
.card-prod:hover figure::after {
	opacity: 1;
}
/* Píldora "Ver producto" que sube desde abajo */
.card-prod figure::before {
	content: "VER PRODUCTO";
	position: absolute;
	left: 50%;
	bottom: 18px;
	z-index: 2;
	padding: 10px 24px;
	border-radius: 30px;
	background: #fff;
	color: #000;
	font-size: .75rem;
	font-weight: 600;
	letter-spacing: .12em;
	white-space: nowrap;
	opacity: 0;
	transform: translate(-50%, 20px);
	transition: opacity .4s ease, transform .4s cubic-bezier(.2, .8, .2, 1);
	pointer-events: none;
}
.card-prod:hover figure::before {
	opacity: 1;
	transform: translate(-50%, 0);
}
/* Botón ojo: círculo blanco arriba a la derecha */
.card-prod figure .btn-eye,
.card-prod:hover figure .btn-eye {
	top: 14px;
	right: 14px;
	left: auto;
	bottom: auto;
	margin: 0;
	width: 42px;
	height: 42px;
	padding: 0 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	color: #000;
	background-color: rgba(255, 255, 255, .92);
	border: 0;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .2);
	z-index: 3;
}
.card-prod figure .btn-eye {
	opacity: 0;
	transform: translateX(16px);
}
.card-prod:hover figure .btn-eye {
	opacity: 1;
	transform: translateX(0);
}
.card-prod figure .btn-eye:hover {
	color: #fff;
	background-color: #000;
	border: 0;
}
/* Línea inferior que crece */
.card-prod .card-body {
	position: relative;
}
.card-prod .card-body::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 0;
	height: 3px;
	background: #000;
	transform: translateX(-50%);
	transition: width .4s ease;
}
.card-prod:hover .card-body::after {
	width: 100%;
}
.card-prod .titulo-prod {
	transition: color .3s ease;
}
.card-prod:hover .titulo-prod {
	color: #000;
}

.banner-tienda .texto-banner,
.banner-tienda .texto-banner p {
	color: #fff !important;
	font-size: 1.1rem;
	font-weight: 400;
	line-height: 1.6;
	text-shadow: 0 2px 8px rgba(0, 0, 0, .6);
}
.banner-tienda .texto-banner p:last-child {
	margin-bottom: 0;
}
