/*
Theme Name: TemplateArtesanias
Theme URI: https://xn--artesanasoriginales-r1b.com
Author: Tu Nombre
Description: Tema personalizado para tienda de artesanías andinas.
Version: 1.0.0
Text Domain: template-artesanias
*/

/* =========================================
VARIABLES GLOBALES Y RESET
========================================= */
:root {
--color-primario: #8c593b;
--color-acento: #b95135;
--color-fondo: #fcfaf8;
--color-texto: #333333;
--color-texto-suave: #666666;
--color-blanco: #ffffff;
--fuente-titulos: 'Lora', serif;
--fuente-texto: 'Inter', sans-serif;
--ancho-maximo: 1200px;
}

{
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: var(--fuente-texto);
color: var(--color-texto);
background-color: var(--color-fondo);
line-height: 1.6;
}

img {
max-width: 100%;
height: auto;
display: block;
}

a {
text-decoration: none;
color: inherit;
}

/* =========================================
CONTENEDORES Y REGLAS GENERALES
========================================= */
.container {
max-width: var(--ancho-maximo);
margin: 0 auto;
padding: 0 20px;
}

.container-narrow {
max-width: 800px;
margin: 0 auto;
}

.section-padding {
padding: 60px 0;
}

.section-title {
text-align: center;
font-family: var(--fuente-titulos);
font-size: 2rem;
color: var(--color-primario);
margin-bottom: 40px;
}

.btn {
display: inline-block;
background-color: var(--color-acento);
color: var(--color-blanco);
padding: 12px 30px;
border-radius: 4px;
font-weight: bold;
transition: background 0.3s;
}

.btn:hover {
background-color: #a0452d;
}

.btn-light {
background-color: var(--color-blanco);
color: var(--color-primario);
}

.btn-light:hover {
background-color: #f0f0f0;
}

/* Grids */
.grid {
display: grid;
gap: 30px;
}

.grid-4 { grid-template-columns: repeat(4, 1fr); }
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-2 { grid-template-columns: repeat(2, 1fr); }

/* =========================================
SECCIONES DEL CONTENIDO PRINCIPAL
========================================= */
.hero {
position: relative;
background-color: var(--color-primario);
color: var(--color-blanco);
text-align: center;
}

.hero img {
width: 100%;
height: 60vh;
object-fit: cover;
opacity: 0.6;
}

.hero-content {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
max-width: 800px;
padding: 0 20px;
}

.hero h1 {
font-family: var(--fuente-titulos);
font-size: 3rem;
margin-bottom: 15px;
}

.hero p {
font-size: 1.25rem;
margin-bottom: 30px;
}

.category-card {
text-align: center;
}

.category-card img {
border-radius: 8px;
margin-bottom: 15px;
}

.category-card h3 {
font-size: 1.1rem;
}

.product-card {
background: var(--color-blanco);
border: 1px solid #eaeaea;
border-radius: 8px;
padding: 20px;
text-align: center;
}

.product-card img {
margin-bottom: 15px;
}

.product-card h3 {
font-family: var(--fuente-titulos);
font-size: 1.25rem;
margin-bottom: 10px;
}

.price {
font-weight: bold;
color: var(--color-primario);
font-size: 1.2rem;
margin-bottom: 15px;
display: block;
}

.about-content {
align-items: center;
}

.about-text h2 {
font-family: var(--fuente-titulos);
font-size: 2rem;
color: var(--color-primario);
margin-bottom: 20px;
}

.about-text p {
margin-bottom: 15px;
color: var(--color-texto-suave);
}

.seo-section {
background-color: var(--color-blanco);
padding: 50px 20px;
border-top: 1px solid #eaeaea;
border-bottom: 1px solid #eaeaea;
text-align: center;
}

.seo-section h2 {
font-family: var(--fuente-titulos);
margin-bottom: 20px;
color: var(--color-primario);
}

.partners-logos {
display: flex;
justify-content: center;
align-items: center;
gap: 40px;
flex-wrap: wrap;
opacity: 0.7;
}

.impact-section {
background-color: var(--color-primario);
color: var(--color-blanco);
text-align: center;
}

.impact-section .section-title {
color: var(--color-blanco);
}

.impact-section p {
font-size: 1.2rem;
margin-bottom: 30px;
}

/* Responsivo para contenido */
@media (max-width: 900px) {
.grid-4 { grid-template-columns: repeat(2, 1fr); }
.grid-3 { grid-template-columns: repeat(2, 1fr); }
.grid-2 { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
.grid-4, .grid-3 { grid-template-columns: 1fr; }
.hero h1 { font-size: 2rem; }
}