/* RESET */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Poppins', sans-serif;
    font-size: 20px;
    background: #f6f1eb;
    color: #6b4a3b
}

h1 {font-family: 'Allura', cursive;font-size: 60px;color: #6b4a3a;}
h2 {font-family: 'Allura', cursive;font-size: 50px;color: #6b4a3a;}

.container {width: 90%;max-width: 1200px;margin: auto;}
.subContenedor {padding: 60px 20px;position:relative;overflow: hidden;}
.subContenedor p {max-width:800px;margin:0 auto;line-height: 1.8;}

.centrarTexto{text-align: center;}

/* HEADER */
.header {background: #f6f1eb;border-bottom: 1px solid #e5ddd3;}
.nav {display: flex;justify-content: space-between;align-items: center;padding: 15px 0;position: relative;}
.menu {display: flex;list-style: none;gap: 30px;}
.menu a {text-decoration: none;color: #5a4636;font-size:0.9em;}
.logo {font-weight: bold;font-size:1.1em;display: flex; align-items: center;gap: 4px;}
.header-logo {width: 250px;display: block;}

/* HERO PRINCIPAL*/
.hero {background: url('../images/hero-bg.png') center/cover no-repeat;height: 500px;display: flex;align-items: center;}
.hero-content {max-width: 1000px;}
.hero-content h1{max-width:600px;font-size:3.0em;font-family: 'Allura';line-height:0.8em;}
.hero-content h2{margin-top:15px;max-width:400px;font-size:1.1em;font-family: 'Poppins', sans-serif;line-height:1.4em;margin-top:25px;font-weight:500;}
.hero-logo {width: 450px;margin-bottom:20px ;}
.hero p {margin-bottom:30px ;font-size:1.3em;}
/* Botón principal */
.hero-btn {margin-top:30px;background-color: #C47A5A;color: #ffffff;font-size: 16px;font-weight: 500;padding: 14px 28px; border: none;
  border-radius: 999px;cursor: pointer;text-decoration: none;display: inline-block; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  transition: all 0.25s ease;}
.hero-btn:hover { background-color: #A65F45; transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);}
.hero-btn:active {transform: translateY(0px); box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15);}
.hero-btn:focus { outline: none; box-shadow: 0 0 0 3px rgba(196, 122, 90, 0.4);}

/* BOTON GENERAL */
.btn {font-size:1.0em;display:inline-block;margin-top:30px;padding:12px 25px;background:#e6d5c3;color:#5a4636;border-radius:25px;text-decoration:none;transition:0.3s;}
.btn:hover {background: #d8c2ab;}

/* CONFIANZA */
.trust {background-color: #fff; padding: 40px 20px;}
.trust-container {max-width: 1000px;margin: 0 auto;display: flex; justify-content: space-around;text-align: center; flex-wrap: wrap;gap: 20px;}
.trust-item {flex: 1 1 200px;}
.trust-icon {font-size: 30px;margin-bottom: 10px;}
.trust-item p {font-size: 15px;color: #5a3e36;}

/* ABOUT */
.imgSobreNosotros {position: absolute;right: 80px;top: 50%;transform: translateY(-50%);width: 140px;opacity: 0.95;}
.quote {text-align: center;font-style: italic;font-size: 1.2rem;color: #6b4f3b;margin: 30px 0;}
.quote cite {display: block;margin-top: 8px;font-size: 0.9rem;color: #a38b7a;}

/* PRODUCTOS */
.grid {display: grid;grid-template-columns: repeat(4, 1fr);gap: 25px;margin-top: 30px;}
.card-link {text-decoration: none;color: inherit;display: block;}
.card {background: #fff;border-radius: 15px;padding: 15px;transition: 0.3s;}
.card:hover {transform: translateY(-5px);}
.card img {width: 100%;border-radius: 10px;}
.card h3 {font-size: 1em;margin: 10px 0 5px;}
.card p {font-size: 0.9em;color: #6b4a3b;}
.product-btn {margin-top: 10px;padding: 10px;background-color: #c47a5a;color: white;border-radius: 20px;font-size: 14px;transition: 0.3s;}
.card:hover .product-btn {background-color: #a96549;}
.categoria {display: inline-block;background: #f1e8e4;color: #8a6d5f;padding: 4px 10px;border-radius: 12px;font-size: 12px;margin-top: 8px;}

.collection-text {text-align: center;max-width: 600px;margin: 10px auto 25px;font-size: 0.95rem;color: #7a5c4a; line-height: 1.6;}

/* FOOTER */
.footer {background: #eae1d8;padding: 40px 0 0px 0;}
.footer-grid {display: grid;grid-template-columns: repeat(4, 1fr);gap: 20px;}
.footer-col h3 {font-size: 1.2em;margin-bottom: 15px;}
.footer-bottom {text-align: center;padding: 15px;color: #8a6f5a;border-top: 1px solid #c1c1c1;font-size:0.8em;margin:30px 0;}
.footer-link {font-size: 0.8em;display: flex;align-items: center;gap: 8px;  margin-bottom: 8px; text-decoration: none;color: #8a6f5a;transition: all 0.2s ease;}
.footer-link:hover {color: #3e2f24;padding-left: 4px;}
.footer-link.instagram:hover {color: #E1306C;}
.footer-link.instagram:hover svg path {fill: url(#instagram-gradient);}
.footer-link.tiktok:hover {color: #000000;}
.footer-link.youtube:hover {color: #FF0000;}
.footer-link.facebook:hover {color: #1877F2;}
.footer-love {margin-top: 5px;font-size: 0.85em;color: #a38b7b;}
.payment-methods {display: flex;flex-direction: column;gap: 8px;}
.payment {font-size: 0.85em;color: #8a6f5a;}

/* PAGINACION */
.navPag {margin-top: 40px;text-align: center;}
.pagination {list-style: none;display: inline-flex;gap: 10px;padding: 0;}
.pagination li a {display: inline-block;padding: 10px 16px;border-radius: 25px;background: #e6d5c3;color: #5a4636;text-decoration: none;font-size: 0.9em;transition: 0.3s;}
.pagination li a:hover {background: #d8c2ab;}
.pagination li a.active {background: #cbb49e;font-weight: bold;}
.pagination a[aria-current="page"] {background: #cbb49e;font-weight: bold;color: #5a4636;}

.filtros {margin:25px auto;}
.filtros a {margin: 5px;padding: 8px 15px;background: #e6d5c3;border-radius: 20px;text-decoration: none;color: #5a4636;font-size: 0.9em;}
.filtros a:hover {background: #d8c2ab;}

/* DETALLE */
.detalle-grid {display: grid;grid-template-columns: minmax(320px, 500px) 1fr;gap: 10px; align-items: start;}
.galeria {display: flex;flex-direction: column;align-items: flex-start;}
#imgPrincipal {width: 100%;max-width: 500px;border-radius: 15px;}
.miniaturas {display: flex; gap: 10px;margin-top: 15px;}
.miniaturas img {width: 70px;height: 70px; object-fit: cover; cursor: pointer; border-radius: 10px; border: 2px solid transparent; transition: 0.2s;}
.miniaturas img:hover { border: 2px solid #cbb49e; transform: scale(1.05);}

.info {background: #fff;padding: 25px;border-radius: 15px;}
.estado {font-size: 0.8em;color: #8a6f5a;}
.info h1 {font-size: 2.5em;margin: 10px 0;}
.rating {margin: 10px 0;}
.precio {font-size: 2em; color: #3e2f24; margin: 15px 0;}
.datos {font-size: 0.9em;color: #6b4a3b;margin-bottom: 15px;}

.info-box {margin-top: 60px;background: #fff; padding: 30px; border-radius: 15px;}
.info-box h2 {font-size: 2em; margin-bottom: 15px;}
.info-box p {line-height: 1.8;color: #5a4636;}


/* NOSOTROS */
.nosotros{padding:50px 0;}
.nosotros h1{margin-bottom:20px;}
.nosotros-grid {margin: 40px auto 50px;display: grid;grid-template-columns: 1fr 1fr;gap: 50px;align-items: center;text-align: left;}
.texto p { margin: 10px 0 20px 0; line-height: 1.7; color: #6b4a3b;}
.texto ul { margin: 10px 0 20px 0;padding-left: 20px;}
.texto li {margin-bottom: 8px;color: #6b4a3b;}
.imagen img {width: 100%;max-width: 400px;display: block; margin: auto;}


/* CONTACTO */
.contacto {padding: 50px 0;text-align: center;}
.contacto .intro {margin: 20px auto 40px;max-width: 600px;color: #6b4a3b;}
.form-contacto {max-width: 500px;margin: auto;display: flex;flex-direction: column;gap: 15px;}
.form-contacto input,
.form-contacto textarea {padding: 12px;border-radius: 10px;border: 1px solid #e5ddd3;font-family: 'Poppins', sans-serif;}
.form-contacto textarea {resize: none;}
.msg {margin-bottom: 20px;padding: 10px;border-radius: 10px;}
.success {background: #d4edda;color: #155724;}
.error {background: #f8d7da;color: #721c24;}
.contacto-rapido {text-align: center;margin: 30px 0;}
.contacto-texto {font-size: 16px;color: #6d5c4f;margin-bottom: 14px;}
.contacto-botones {display: flex;justify-content: center;gap: 12px;flex-wrap: wrap;}
.btn-contacto {display: inline-flex;align-items: center;gap: 8px;padding: 10px 18px;border-radius: 25px;text-decoration: none;
  font-size: 14px; border: 1px solid #d8c3a5;color: #6d5c4f;background-color: #f5ede4;transition: all 0.3s ease;}
.icono {width: 18px;height: 18px;fill: currentColor;}
.btn-contacto:hover {background-color: #e6d5c3;transform: translateY(-2px);}
.whatsapp:hover {border-color: #25D366;color: #25D366;}
.instagram:hover {border-color: #E1306C;color: #E1306C;}
.captcha-wrapper {margin: 20px 0;display: flex;justify-content: left;}

/* Contenedor principal */
.legal-container {margin: 60px auto;padding: 40px;background-color: #ffffff;border-radius: 12px;box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);line-height: 1.7;color: #333;}

/* Título principal */
.legal-container h1 {font-size: 2.2em;margin-bottom: 20px;color: #222;}
.legal-container h2 {font-size: 1.6em;margin-top: 30px;margin-bottom: 10px;color: #444;padding-left: 10px;}
.legal-container p {margin-bottom: 15px;}
.legal-container ul {margin: 15px 0 15px 20px;}
.legal-container li {margin-bottom: 8px;}
.legal-container a {color: #8B5E3C;text-decoration: none;font-weight: 500;}
.legal-container a:hover {text-decoration: underline;}

.hamburger {display: none;flex-direction: column;cursor: pointer;gap: 5px;}
.hamburger span {width: 25px;height: 3px;background: #5a4636;display: block;transition: 0.3s;}
.hamburger.active span:nth-child(1) {transform: rotate(45deg) translate(5px, 5px);}
.hamburger.active span:nth-child(2) {opacity: 0;}
.hamburger.active span:nth-child(3) {transform: rotate(-45deg) translate(6px, -6px);}


@media (max-width: 480px) {
  .g-recaptcha {
    transform: scale(0.9);
    transform-origin: center;
  }
}
/* =========================
   TABLETS Y MÓVIL (≤768px)
========================= */
@media (max-width: 768px) {
    body {font-size: 16px;}
    h2 {font-size: 40px;}
	.nav {flex-direction: column;gap: 10px;align-items: flex-start;}
    .menu {lex-direction: column;gap: 15px;width: 100%;display: none;}
    .menu.active {display: flex;}
    .header-logo {width: 180px;}
    .hamburger {display: flex;}
    .hero {height: auto;padding: 60px 20px;text-align: center;}
    .hero-content {text-align:left;}
    .hero-content h1 {font-size: 2.2em;max-width:350px;}
    .hero-content h2 {font-size: 1em;max-width: 300px;}
    .hero-logo {width: 250px;}
    .grid {grid-template-columns: repeat(2, 1fr);gap: 15px;}
    .trust-container {flex-direction: column;align-items: center;}
    .imgSobreNosotros {display: none;}
    .detalle-grid {grid-template-columns: 1fr;}
    .miniaturas {justify-content: center;flex-wrap: wrap;}
    .nosotros-grid {grid-template-columns: 1fr;text-align: center;}
    .footer-grid {grid-template-columns: 1fr 1fr;}
	
	.texto ul {list-style: none;padding-left: 0;margin: 20px 0;}
    .texto li {display: flex;justify-content: center;gap: 8px;margin-bottom: 10px;text-align: left;}
    .filtros {display: flex;flex-wrap: wrap;justify-content: center;gap: 10px;margin: 20px auto;}
    .filtros a {display: inline-block;padding: 8px 16px;font-size: 0.9em;border-radius: 20px;background: #e6d5c3;color: #5a4636;text-decoration: none;white-space: nowrap;}	
	.nav {flex-direction: row;justify-content: space-between;position: relative;}
    .hamburger {display: flex;margin-top:15px;}
	.menu {width: 100%;height: 100vh;background: rgba(246, 241, 235, 0.92);backdrop-filter: blur(8px);
		flex-direction: column;justify-content: center;align-items: center;gap: 25px;opacity: 0;visibility: hidden;transition: 0.3s ease;
		border-top: 1px solid #e5ddd3;box-shadow: 0 10px 20px rgba(0,0,0,0.08);position: absolute;top: 100%;left: 0;
        padding: 20px 0;display: none;z-index: 1000;}
	.menu.active {opacity: 1;visibility: visible;display: flex;}
	.menu a {font-size: 1.1em;}
	
}

/* =========================
   MÓVILES PEQUEÑOS (≤480px)
========================= */
@media (max-width: 480px) {

    body {font-size: 15px;}
    h2 {font-size: 32px;}
    .hero-content h1 {font-size: 1.8em;}
    .hero p {font-size: 1em;}
    .hero-btn {width: 100%;text-align: center;}
    .grid {grid-template-columns: 1fr;}
    .footer-grid {grid-template-columns: 1fr;text-align: center;}
    .footer-link {justify-content: center;}
    .contacto-botones {flex-direction: column;}
    .filtros {display: flex;flex-wrap: wrap;justify-content: center;gap: 10px;margin: 20px auto;}
    .filtros a {display: inline-block;padding: 8px 16px;font-size: 0.9em;border-radius: 20px;background: #e6d5c3;color: #5a4636;text-decoration: none;white-space: nowrap;}	
	.nav {flex-direction: row;justify-content: space-between;position: relative;}
    .hamburger {display: flex;margin-top:15px;}
	.menu {width: 100%;height: 100vh;background: rgba(246, 241, 235, 0.92);backdrop-filter: blur(8px);
		flex-direction: column;justify-content: center;align-items: center;gap: 25px;opacity: 0;visibility: hidden;transition: 0.3s ease;
		border-top: 1px solid #e5ddd3;box-shadow: 0 10px 20px rgba(0,0,0,0.08);position: absolute;top: 100%;left: 0;
        padding: 20px 0;display: none;z-index: 1000;}
	.menu.active {opacity: 1;visibility: visible;display: flex;}
	.menu a {font-size: 1.1em;}
}