:root {
	/* Radios complementarios para esta página */
	--radius2: 1.3em;

	/* Anchuras de tarjetas */
	--card-producto-min: 220px;
	--card-categoria: 180px;
}

/*********************************
    INICIO - REGLAS GENERALES
**********************************/

main > h1 {
	display: none;
}

/* Espaciado vertical base de las secciones */
main > div {
	padding: 4.5rem 0;
}

/* Títulos grandes reutilizados en varias secciones */
main > .promos > div:first-of-type > h2,
main > .categorias > div:first-of-type > h2,
main > .vendidos > div:first-of-type > h2,
main > .testimonios > div:first-of-type > h2 {
	display: inline-block;
	font-size: clamp(2rem, 4vw, 3.5rem);
	font-family: var(--fontMSR);
	line-height: 1.1;
}

.visible {
	display: inline-block;
}

.invisible {
	display: none;
}

/* Flechas circulares reutilizables */

.control_previo,
 .control_siguiente {
    position: absolute;
	z-index: 200;
}

.control_previo {
    left: 5px;
}

.control_siguiente {
    right: 5px;
}

.previo,
 .siguiente {
	width: 80px;
	height: 80px;
	text-decoration: none;
	cursor: pointer;
	border-radius: 50%;
	text-align: center;
	font-size: 3.5rem;
	line-height: 80px;
	font-family: 'Font Awesome 5 Pro';
	font-weight: 300;
	display: block;
}

.previo:before {
	content: "\f104";
}

.siguiente:before {
	content: "\f105";
}

/*********************************
    BANNERS
**********************************/

main > .banners {
	width: 100%;
	overflow: hidden;
	position: relative;
	padding: 0;
}
main > .banners img {
	width: 100%;
	height: auto;
	display: block;
}

main > .banners .banner:not(:first-of-type) {
	display: none;
}

main > .banners .banner > p:last-of-type {
	position: absolute;
	bottom: 10%;
	left: 10%;
}

main > .banners .banner > p:last-of-type > a {
	display: inline-block;
	padding: .95em 2.6em;
	border-radius: var(--radius2);
	background-color: var(--naranja);
	border: 2px solid var(--naranja);
	color: #fff;
	text-decoration: none;
	font-size: 1.3rem;
	line-height: 1.2;
	font-family: var(--fontBM);
}

main > .banners .banner > p:last-of-type > a:hover {
	background-color: #fff;
	color: var(--naranja);
	border: 2px solid var(--naranja);
}

.lista_banners a {
	text-decoration: none;
}

.lista_banners .control_previo,
 .lista_banners .control_siguiente {
	bottom: 40%;
}

.lista_banners .previo,
 .lista_banners .siguiente {
	color: #fff;
	background-color: var(--marron_c);
}

.lista_banners .previo:hover,
 .lista_banners .siguiente:hover {
	color: var(--marron);
}

.banners .puntos {
	position: absolute;
	bottom: 1rem;
	left: 46%;
}

.banners .puntos .punto {
	display: inline-block;
	width: 13px;
	height: 13px;
	border-radius: 1rem;
	background-color: #fff;
	margin: 0 .5rem;
	cursor : pointer;
}

.banners .puntos .activo {
	background-color: var(--naranja);
	cursor : not-allowed;
}

/*********************************
    PROMOS
**********************************/

main > .promos {
	background-color: var(--marron_c);
	padding-inline: 1rem;
}

main > .promos > div:first-of-type {
	text-align: center;
}

main > .promos > div:first-of-type > h2 {
}

main > .promos > div:first-of-type > h2::before {
	content: '';
	display: inline-block;
	width: 54px;
	height: 51px;
	margin-right: 10px;
	background: url("./../png/promo_corazon.png");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
	vertical-align: center;
}

main > .promos > div:first-of-type > h2::after {
	content: '';
	display: inline-block;
	width: 64px;
	height: 60px;
	background: url("./../png/promo_carrito.png");
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: center;
	vertical-align: center;
}

main > .promos > .productos_promos {
	width: min(100%, var(--contenedor-max));
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: 1rem;
	position: relative;
}

main > .promos > .productos_promos > .lista_productos_promos {
	width: 94%;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1rem;
	margin: 0 auto;
	margin-top: 2rem;
}

main > .promos .producto_promo {
	display: flex;
	flex-direction: column;
	padding: 1rem;
	border-radius: .5rem;
	background-color: #fff;
	text-align: center;
	position: relative;
}

main > .promos .producto_promo .favoritos {
	position: absolute;
	right: 10px;
	top: 10px;
	cursor: pointer;
	z-index: 50;
}

main > .promos .producto_promo .favoritos:before {
	content: '\f004';
	color: #ddd;
}

main > .promos .producto_promo .favoritos:hover::before {
	font-weight: 900;
}
	
main > .promos .producto_promo:nth-child(n+6) {
	display: none;
}

main > .promos .producto_promo > p {
	margin-top: .8em;
	text-align: left;
}

main > .promos .producto_promo > .reduccion {
	margin-top: 0;
	width: fit-content;
	padding: .45em .7em;
	border-radius: .3em;
	background-color: red;
	color: #fff;
	font-size: 1rem;
	font-weight: bold;
	font-family: var(--fontBB);
}

main > .promos .producto_promo > a > img {
	margin: .5rem auto 0;
	max-width: 180px;
	height: auto;
	max-height: 180px;
}

main > .promos .producto_promo > a:hover > img {
	scale: 1.1;
}

main > .promos .producto_promo > a > .marca {
	font-size: .85rem;
	font-family: var(--fontBM);
	text-align: left;
}

main > .promos .producto_promo > a > h3 {
	font-size: 1rem;
	font-weight: initial;
	text-align: left;
	line-height: initial;
	margin-top: .8rem;
	color: var(--marron2);
	min-height: 2rem;
}

main > .promos .producto_promo > .precio {
	font-size: 1.2rem;
	font-family: var(--fontBB);
	margin-top: auto;
}

main > .promos .producto_promo > .precio > span {
	position: relative;
	margin-left: 1em;
	font-size: .8em;
	color: var(--marron_c);
}

main > .promos .producto_promo > .precio > span::before {
	content: '';
	position: absolute;
	left: 0;
	top: 55%;
	right: 0;
	border-top: 1px solid currentColor;
	transform: skewY(10deg);
}

main > .promos .producto_promo > div {
	display: flex;
	gap: .5rem;
	justify-content: space-between;
}

main > .promos .producto_promo > div > p {
	width: fit-content;
	padding: .2em .4em;
	background-color: var(--marron_c);
	font-size: .8rem;
	border-radius: 3px;
}

main > .promos .producto_promo > div > p:before {

	font-family: "Font Awesome 5 Pro";
}

main > .promos .producto_promo  > div > p.entrega:before {
	content: '\f3c5\0000A0';
}

 main > .promos .producto_promo  > div > p.recojo:before {
	content: '\f54e\0000A0';
}

main > .promos .producto_promo > form {
	padding-top: .75rem;
}

main > .promos .producto_promo button {
	width: 100%;
	padding: .8em;
	border: none;
	border-radius: .3em;
	background-color: var(--marron);
	color: #fff;
	font-size: 1rem;
	font-family: var(--fontBB);
	cursor: pointer;
}

main > .promos .producto_promo button:hover {
	color: var(--naranja);
}

.productos_promos a {
	text-decoration: none;
}

.productos_promos .control_previo,
.productos_promos .control_siguiente {
	top: 190px;
}

.productos_promos .previo,
 .productos_promos .siguiente {
	color: #fff;
	background-color: var(--naranja);
}

.productos_promos .previo:hover,
 .productos_promos .siguiente:hover {
	color: var(--marron);
}

/*********************************
    NOSOTROS
**********************************/

main > .nosotros {
	padding-inline: 1rem;
}

main > .nosotros img {
	display: inline;
	width: 80px;
	height: 80px;
}

main > .nosotros > div:first-of-type {
	width: min(100%, 60rem);
	margin: 0 auto;
	text-align: center;
}

main > .nosotros > div:first-of-type > p:first-of-type {
	margin-top: .5em;
	font-size: clamp(2rem, 4vw, 3rem);
	font-weight: bold;
	font-family: var(--fontMSR);
}

main > .nosotros > div:first-of-type > p:last-of-type {
	max-width: 50rem;
	margin: 1rem auto 0;
	font-size: 1.3rem;
}

main > .nosotros > div:last-of-type {
	width: min(80%, var(--contenedor-max));
	margin: 3rem auto 0;
	padding: 0 1rem;
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 1.5rem;
}

main > .nosotros > div:last-of-type > div {
	text-align: center;
}

main > .nosotros > div:last-of-type > div > p {
	margin: 0 auto;
	margin-top: .5em;
	width: min-content;
}

/*********************************
    CATEGORIAS
**********************************/

main > .categorias {
	background-color: var(--marron_c);
	padding: 2.5rem 1rem 4rem;
}

main > .categorias > div:first-of-type {
	text-align: center;
	margin-bottom: 2rem;
}

main > .categorias > div:first-of-type > span {
	color: var(--marron);
}

main > .categorias > div:last-of-type {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 3.5rem 5rem;
	max-width: calc((4 * var(--card-categoria)) + (3 * 5rem));
	margin: 0 auto;
	margin-top: 4rem;
}

main > .categorias > div:last-of-type > div {
	flex: 0 0 var(--card-categoria);
	text-align: center;
}

main > .categorias > div:last-of-type > div:hover {
	transform: scale(1.1);
}

main > .categorias > div:last-of-type > div > a {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-decoration: none;
}

main > .categorias > div:last-of-type > div > a > img {
	width: var(--card-categoria);
	max-width: 100%;
	height: auto;
}

main > .categorias > div:last-of-type > div > a > span {
	display: block;
	width: 100%;
	max-width: var(--card-categoria);
	margin-top: .35em;
	font-size: 1.5rem;
	line-height: 1.2;
	text-align: center;
	color: var(--marron);
}

main > .categorias > div:last-of-type > div > a:hover > span {
	text-decoration: underline;
}

/*********************************
    TELA
**********************************/

main > .tela {
	background-image: url("./../png/tela.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: center;
	padding-inline: 1rem;
	text-align: center;
	padding: 2.45rem 0;
}

main > .tela > p {
	width: min(100%, 52rem);
	margin: 0 auto;
	font-weight: bold;
	font-family: var(--fontMSR);
}

main > .tela > p:first-of-type {
	padding: 1em 0;
	font-size: clamp(1.8rem, 4vw, 2.5rem);
	line-height: 1.2;
	width: 43%;
}

main > .tela > p:last-of-type {
	margin-top: 1rem;
	width: auto;
}

main > .tela > p:last-of-type > a {
	display: inline-block;
	padding: .6em 2.2em;
	border-radius: var(--radius2);
	background-color: var(--marron);
	border: 1px solid var(--marron);
	color: #fff;
	text-decoration: none;
	font-size: 1.3rem;
	font-family: var(--fontBM);
	line-height: 1.2;
}

main > .tela > p:last-of-type > a:hover {
	color: var(--marron);
	border: 1px solid var(--marron);
	background-color: #fff;
}

/*********************************
    VENDIDOS
**********************************/

main > .vendidos {
	padding-inline: 1rem;
	margin-bottom: 1rem;
}

main > .vendidos > div:first-of-type {
	width: min(100%, var(--contenedor-max));
	margin: 0 auto;
	text-align: center;
	position: relative;
}

main > .vendidos > div:first-of-type > a {
	position: absolute;
	right: 0;
	bottom: 0;
	display: inline-block;
	padding: .5em 2em;
	border: 1px solid var(--marron);
	border-radius: 1em;
	text-decoration: none;
	color: var(--marron);
	font-weight: 700;
	font-size: 1.2rem;
	font-family: var(--fontBM);
}

main > .vendidos > div:first-of-type > a:hover {
	color: #fff;
	background-color: var(--marron);
}

main > .vendidos > .productos_vendidos {
	width: min(100%, var(--contenedor-max));
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: 1rem;
	position: relative;
}

main > .vendidos > .productos_vendidos > .lista_productos_vendidos {
	width: 94%;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1rem;
	margin: 0 auto;
	margin-top: 2rem;
}

main > .vendidos .producto_vendido {
	display: flex;
	flex-direction: column;
	padding: 1rem;
	border-radius: .5rem;
	box-shadow: 2px 2px 8px 2px rgba(0, 0, 0, 0.2);
	text-align: center;
	background-color: #fff;
	position: relative;
}
	
main > .vendidos .producto_vendido:nth-child(n+6) {
	display: none;
}

main > .vendidos .producto_vendido .favoritos {
	position: absolute;
	right: 10px;
	top: 10px;
	cursor: pointer;
	z-index: 50;
}

main > .vendidos .producto_vendido .favoritos:before {
	content: '\f004';
	color: #ddd;
}

main > .vendidos .producto_vendido .favoritos:hover::before {
	font-weight: 900;
}

main > .vendidos .producto_vendido > div {
	height: 90%;
}

main > .vendidos .producto_vendido > div > a > img {
	margin: 0 auto 1.5rem;
	max-width: 180px;
	height: auto;
	max-height: 180px;
}

main > .vendidos .producto_vendido a:hover > img {
	scale: 1.1;
}

main > .vendidos .producto_vendido > div p {
	margin-top: .5em;
	text-align: left;
	text-wrap: balance;
}

main > .vendidos .producto_vendido > div > a > .marca {
	width: fit-content;
	padding: 0 1em;
	background-color: var(--marron);
	color: #fff;
	font-size: .85rem;
	font-family: var(--fontBM);
	text-align: left;
}

main > .vendidos .producto_vendido > div > a > h3 {
	margin-top: .8rem;
	font-size: 1rem;
	text-align: left;
	line-height: initial;
	font-weight: initial;
	color: var(--marron2);
	min-height: 2.5rem;
}

main > .vendidos .producto_vendido > div > .contenido {
	font-size: 1rem;
	margin-top: 0;
}

main > .vendidos .producto_vendido > div > .precio {
	font-size: 1.2rem;
	font-family: var(--fontBB);
	margin-top: auto;
}

main > .vendidos .producto_vendido > div > div {
	display: flex;
	gap: .5rem;
	justify-content: space-between;
}

main > .vendidos .producto_vendido > div > div > p {
	width: fit-content;
	padding: .2em .4em;
	background-color: var(--marron_c);
	font-size: .8rem;
	border-radius: 3px;
}

main > .vendidos .producto_vendido > div > div > p:before {
	font-family: "Font Awesome 5 Pro";
}

main > .vendidos .producto_vendido > div > div > p.entrega::before {
	content: '\f3c5\0000A0';
}

 main > .vendidos .producto_vendido > div > div > p.recojo::before {
  content: '\f54e\0000A0';
}

main > .vendidos .producto_vendido > form {
	margin: 1rem -1rem -1rem -1rem;
}

main > .vendidos .producto_vendido button {
	width: 100%;
	padding: .8em;
	border: none;
	border-radius: 0 0 .3rem .3rem;
	background-color: var(--naranja);
	color: #fff;
	font-family: var(--fontBB);
	cursor: pointer;
}

main > .vendidos .producto_vendido button:hover {
	background-color: var(--marron);
}

.productos_vendidos a {
	text-decoration: none;
}

.productos_vendidos .control_previo,
.productos_vendidos .control_siguiente {
	top: 170px;
}

.productos_vendidos .previo,
 .productos_vendidos .siguiente {
	color: #fff;
	background-color: var(--marron_c);
}

.productos_vendidos .previo:hover,
 .productos_vendidos .siguiente:hover {
	color: var(--marron);
}

/*********************************
    MUNDOS
**********************************/

main > .mundos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	justify-content: center;
	background-color: var(--marron_c);
	padding-inline: 1rem;
}

main > .mundos > div {
	text-align: center;
	align-content: center;
}

main > .mundos > div:hover {
	text-decoration: underline;
	text-underline-offset: 5px;
}

main > .mundos > div > p > a > img {
	width: 100%;
	max-width: 700px;
	height: auto;
	margin: 0 auto;
}

main > .mundos > div > h3 {
	margin-top: .5em;
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-family: var(--fontMSR);
	color: var(--marron);
}

/*********************************
    ARTESANOS
**********************************/

main > .artesanos {
	width: min(100%, var(--contenedor-max));
	margin: 0 auto;
	padding-inline: 1rem;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2rem;
	background-image: url("./../png/artesanos_sol.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: top left;
}

main > .artesanos > div {
	text-align: center;
	align-content: center;
}

main > .artesanos > div:first-of-type img {
	max-width: 100%;
	height: auto;
}

main > .artesanos > div:last-of-type > p,
main > .artesanos > div:last-of-type > div > p {
	text-align: left;
}

main > .artesanos > div:last-of-type > p:first-of-type {
	font-size: 1rem;
}

main > .artesanos > div:last-of-type > h2 {
	margin-top: .5em;
	font-size: clamp(2rem, 4vw, 2.5rem);
	font-family: var(--fontMSR);
	text-align: left;
}

main > .artesanos > div:last-of-type > p:nth-of-type(2) {
	width: 100%;
	max-width: 42rem;
	margin-top: 1em;
	font-size: 1.2rem;
	line-height: 1.5;
	word-spacing: .3rem;
}

main > .artesanos > div:last-of-type > p:nth-of-type(2) > span {
	font-family: var(--fontBB);
}

main > .artesanos > div:last-of-type > div {
	margin-top: 1.5em;
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
}

main > .artesanos > div:last-of-type > div > p {
	font-size: 1rem;
}

main > .artesanos > div:last-of-type > div > p > span {
	display: block;
	font-size: 2.5rem;
	font-family: var(--fontMSR);
	color: var(--naranja);
	margin-bottom: -1rem;
}

/*********************************
    BANNER B
**********************************/

main > .banner_B {
	background-image: url("./../png/banner_b.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	padding-inline: 1rem;
	text-align: center;
}

main > .banner_B > h2 {
	margin-top: 1.4em;
	font-size: clamp(2rem, 5vw, 3.5rem);
	font-family: var(--fontMSR);
	line-height: 1.08;
}

main > .banner_B > p:first-of-type {
	width: min(100%, 52rem);
	margin: .8em auto 0;
	font-size: clamp(1rem, 2.5vw, 1.5rem);
	font-family: var(--fontBL);
	line-height: 1.4;
	padding: 0 4rem;
}

main > .banner_B > p:nth-of-type(2) {
	margin-top: 2rem;
}

main > .banner_B > p:nth-of-type(2) > a {
	display: inline-block;
	padding: 1em 4em;
	border-radius: var(--radius2);
	background-color: var(--naranja);
	color: #fff;
	border: 1px solid var(--naranja);
	text-decoration: none;
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1.2;
	font-family: var(--fontBM);
}

main > .banner_B > p:nth-of-type(2) > a:hover {
	background-color: #fff;
	color: var(--naranja);
	border: 1px solid var(--naranja);
}

main > .banner_B > p:last-of-type {
	margin-top: 1.5rem;
	font-size: 1.2rem;
	font-family: var(--fontBL);
}

/*********************************
    TESTIMONIOS
**********************************/

main > .testimonios {
	padding-inline: 1rem;
}

main > .testimonios > div:first-of-type {
	text-align: center;
}

main > .testimonios > .bloque_testimonios {
	width: min(100%, 70rem);
	margin: 0 auto;
	padding-top: 2rem;
	display: flex;
	align-items: center;
	gap: 1rem;
	position: relative;
}

main > .testimonios .testimonios_clientes {
	width: 60%;
	min-width: 0;
	height: 12rem;
	margin: 0 auto;
	display: flex;
}

main > .testimonios .testimonios_clientes > .testimonio {
	margin: auto;
}

main > .testimonios .testimonios_clientes > .testimonio > p {
	font-size: clamp(1rem, 2vw, 1.3rem);
	font-weight: 300;
	line-height: 1.6;
	text-align: center;
}

main > .testimonios .testimonios_clientes > .testimonio > p:first-of-type::before {
	content: '\0000AB';
}

main > .testimonios .testimonios_clientes > .testimonio > p:first-of-type::after {
	content: '\0000BB';
}

main > .testimonios .testimonios_clientes > .testimonio > p:last-of-type {
	font-weight: 600;
	font-size: 1rem;
	font-family: var(--fontBM);
	margin-top: 1rem;
}

main > .testimonios .testimonios_clientes > .testimonio:not(:first-of-type) {
	display: none;
}

.testimonios a {
	text-decoration: none;
}

.testimonios .previo,
 .testimonios .siguiente {
	color: #fff;
	background-color: var(--naranja);
}

.testimonios .previo:hover,
 .testimonios .siguiente:hover {
	color: var(--marron);
}

.puntos {
	width: fit-content;
	margin: 0 auto;
	margin-top: 2rem;
}

.testimonios .punto {
	display: inline-block;
	width: 13px;
	height: 13px;
	border-radius: 1rem;
	background-color: var(--marron_c);
	margin: 0 .5rem;
}

.testimonios .activo {
	background-color: var(--marron);
}

/*********************************
    MEDIA QUERIES
**********************************/

@media (max-width: 1445px) {
	main > .tela > p:first-of-type {
		padding: 0;
		padding-top: 2rem;
		width: 50%;
	}
}

@media (max-width: 1300px) {
	main > .banners .banner > p:last-of-type {
		position: absolute;
		left: 12%;
	}
	main > .banners .control_previo,
	main > .banners .control_siguiente {
		bottom: 40%;
	}
	main > .promos > .productos_promos > .lista_productos_promos,
	main > .vendidos > .productos_vendidos > .lista_productos_vendidos {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
	main > .promos .producto_promo:nth-child(n+5),
	main > .vendidos .producto_vendido:nth-child(n+5) {
		display: none;
	}
	main > .tela {
		padding: .2rem 0;
	}
	main > .tela > p:first-of-type {
		width: 64%;
	}
	main > .tela > p:last-of-type {
		margin-top: 2rem;
		padding-bottom: 2rem;
	}
}

/* Ajuste de tarjetas de productos a 3 columnas */
@media (max-width: 1200px) {
	main > .promos > .productos_promos > .lista_productos_promos,
	main > .vendidos > .productos_vendidos > .lista_productos_vendidos {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	main > .promos .producto_promo:nth-child(n+4),
	main > .vendidos .producto_vendido:nth-child(n+4) {
		display: none;
	}
	main > .banner_B > h2 {
		margin-top: 0;
	}
}

/* Ajustes de categorías a 3 columnas */
@media (max-width: 1180px) {
	main > .categorias > div:last-of-type {
		max-width: calc((3 * var(--card-categoria)) + (2 * 4rem));
		gap: 3rem 4rem;
	}
	main > .tela {
		padding: .2rem 0;
	}
}

/* Tablet grande */
@media (max-width: 900px) {
	main > .mundos,
	main > .artesanos {
		grid-template-columns: 1fr;
	}
	main > .mundos {
		gap: 3rem;
	}
	main > .artesanos {
		background-size: cover;
	}
	main > .artesanos > div:last-of-type > p,
	main > .artesanos > div:last-of-type > div {
		text-align: center;
		justify-content: center;
	}
}

/* Tablet */
@media (max-width: 860px) {
	main > .banners .puntos {
		bottom: .1rem;
		left: 39%;
	}
	
	main > .promos .producto_promo > div,
	main > .vendidos .producto_vendido > div > div	{
		flex-direction: column;
	}
	main > .promos > .productos_promos > .lista_productos_promos,
	main > .vendidos > .productos_vendidos > .lista_productos_vendidos {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	main > .promos .productos_promos .producto_promo:nth-child(n+3),
	main > .vendidos .productos_vendidos .producto_vendido:nth-child(n+3) {
		display: none;
	}
	main > .promos .productos_promos .producto_promo img,
	main > .vendidos .productos_vendidos .producto_vendido img {
		width: auto;
	}
	main > .nosotros > div:last-of-type {
		grid-template-columns: repeat(3, auto);
	}
	main > .categorias {
		padding: 2rem 1rem 3rem;
	}
	main > .categorias > div:first-of-type {
		margin-bottom: 1.5rem;
	}
	main > .categorias > div:last-of-type {
		max-width: calc((2 * var(--card-categoria)) + 3rem);
		gap: 2.5rem 3rem;
	}
	main > .tela > p:first-of-type {
		width: max(50%);
	}
	main > .artesanos > div:first-of-type > img {
		margin: 0 auto;
	}
	main > .artesanos > div:last-of-type > h2 {
		text-align: center;
	}
}

/* Mobile / tablet pequeño */
@media (max-width: 768px) {
	main > div {
		padding: 3.5rem 0;
	}
	main > .nosotros {
		padding: .5rem 0;
	}
	main > .nosotros > div:first-of-type > p:first-of-type {
		width: 80%;
		margin: 0 auto;
		line-height: 2rem;
	}
	main > .nosotros > div:first-of-type > p:last-of-type {
		width: 95%;
	}
	.banners .puntos .punto {
		width: 10px;
		height: 10px;
	}
	main > .categorias > div:last-of-type {
		gap: 2rem;
		flex-wrap: wrap;
	}
	main > .categorias > div:last-of-type > div {
		flex: 0 0 calc(50% - 2rem);
	}
	main > .categorias > div:last-of-type > div > a > span {
		font-size: 1.35rem;
	}
	main > .categorias > div:last-of-type > div > a > img {
		width: 50%;
		height: 50%;
	}
	main > .banners .banner > p:last-of-type > a {
		padding: .5em 1.5em;
		font-size: 1rem;
	}
	main > .banners > .lista_banners,
	main > .promos > .productos_promos,
	main > .vendidos > .productos_vendidos {
		grid-template-columns: 1fr;
	}
	main .control_previo {
		left: -5px;
	}
	main .control_siguiente {
		right: -5px;
	}
	.previo, .siguiente {
		width: 40px;
		height: 40px;
		line-height: 40px;
		font-size: 2rem;
	}
	main > .vendidos > .productos_vendidos > .control_previo,
	main > .vendidos > .productos_vendidos > .control_siguiente {
		top: 195px;
	}
	main > .vendidos > .productos_vendidos > .control_previo {
		left: 0;
	}
	main > .vendidos > .productos_vendidos > .control_siguiente {
		right: 0;
	}
	main > .promos > .productos_promos > .lista_productos_promos,
	main > .vendidos > .productos_vendidos > .lista_productos_vendidos {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	main > .promos > .productos_promos button,
	main > .vendidos > .productos_vendidos button {
		padding: .5em;
		font-size: .8rem;
	}
	main > .vendidos > div:first-of-type > a {
		position: static;
		margin-left: 1rem;
		font-size: 1rem;
		padding: .5em 1.5em;
	}
	main > .tela {
		padding: 0;
		background-size: 100% 100%;
		background-image: url("./../png/tela-mobil.png");
	}
	main > .tela > p:first-of-type {
		font-size: 1rem;
		padding-top: 1rem;
		padding-bottom: 1rem;
	}
	main > .tela > p:last-of-type {
		margin-top: 0;
		padding-bottom: 1rem;
	}
	main > .tela > p:last-of-type > a {
		padding: .5em 1.5em;
		font-size: .8rem;
	}
	main > .banner_B {
		background-image: url("./../png/banner_b-mobil.png");
	}
	main > .banner_B > p:nth-of-type(2) > a {
		padding: .5em 1.5em;
		font-size: 1rem;
	}
	main > .banner_B > p:last-of-type {
		font-size: 1rem;
	}
	main > .testimonios .testimonios_clientes {
		height: 15rem;
	}
}

/* Móvil */
@media (max-width: 520px) {
	main > .banners .banner > p:last-of-type > a {
		font-size: .8rem;
		font-weight: 500;
	}
	main > .promos > div:first-of-type > h2::before {
		width: 44px;
		height: 41px;
		margin-right: 5px;
	}
	main > .promos > div:first-of-type > h2::after {
		width: 54px;
		height: 50px;
		margin-left: 5px;
	}
	main > .promos > .productos_promos > .lista_productos_promos,
	main > .vendidos > .productos_vendidos > .lista_productos_vendidos {
		grid-template-columns: 1fr 1fr;
	}
	main > .promos .productos_promos .producto_promo:nth-child(n+3),
	main > .vendidos .productos_vendidos .producto_vendido:nth-child(n+3) {
		display: none;
	}
	main > .nosotros > div:last-of-type {
		grid-template-columns: repeat(3, auto);
		gap: 0;
	}
	main > .nosotros > div:last-of-type > div > p {
		margin-top: 0;
		margin-bottom: 1rem;
		line-height: 1rem;
	}
	main > .promos > div:first-of-type > span::before,
	main > .promos > div:first-of-type > span::after {
		display: none;
	}
	main > .banner_B > p:first-of-type {
		padding: 0 2rem;
	}
}

/* Móvil 2 */
@media (max-width: 495px) {
	main > .promos > .productos_promos > .lista_productos_promos,
	 main > .vendidos > .productos_vendidos > .lista_productos_vendidos	{
		width: 100%;
	}
	main > .promos > .productos_promos > .control_previo,
	 main > .vendidos > .productos_vendidos > .control_previo	{
		left: -15px;
	}
	main > .promos > .productos_promos > .control_siguiente,
	 main > .vendidos > .productos_vendidos > .control_siguiente	{
		right: -15px;
	}
	main > .promos .productos_promos .producto_promo img,
	 main > .vendidos .productos_vendidos .producto_vendido img {
		width: 160px;
	}
	
}

/* Móvil */
@media (max-width: 414px) {
	main > .promos > .productos_promos button,
	main > .vendidos > .productos_vendidos button {
		font-size: .6rem;
	}
	.productos_promos .control_previo,
	 .productos_promos .control_siguiente {
		top: 160px;
	}
	main > .vendidos > .productos_vendidos > .control_previo,
	main > .vendidos > .productos_vendidos > .control_siguiente {
		top: 35%;
	}
	main > .promos .productos_promos .producto_promo img,
	 main > .vendidos .productos_vendidos .producto_vendido img {
		width: 90px;
	}
}

/* Móvil */
@media (max-width: 360px) {
	main > .promos,
	 main > .vendidos {
		padding-top: 2rem;
	}
	main > .promos > div:first-of-type > h2::before {
		width: 35px;
		height: 32px;
		margin-right: 0;
	}
	main > .promos > div:first-of-type > h2::after {
		width: 45px;
		height: 41px;
		margin-left: 0;
	}
	.productos_promos .control_previo,
	 .productos_promos .control_siguiente {
		top: 120px;
	}
	main > .promos .productos_promos .producto_promo img,
	 main > .vendidos .productos_vendidos .producto_vendido img {
		width: 80px;
	}
	main > .promos .producto_promo {
		padding: .5rem;
	}
	main > .promos .producto_promo > .precio > span {
		margin-left: 0;
	}
	main > .vendidos > .productos_vendidos > .control_previo,
	main > .vendidos > .productos_vendidos > .control_siguiente {
		top: 110px;
	}
	main > .vendidos .producto_vendido > div > a > .marca {
		padding: 0 .5em;
	}
	main > .vendidos .producto_vendido > form {
		margin: 1.5rem -1rem -2rem -1rem;
	}
	main > .testimonios .testimonios_clientes {
		width: 80%;
	}
}