@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,400&family=Lato:wght@300;400;700&display=swap');

:root {
  --fondo:#FAF7F2;--fondo-alt:#F0EAE0;--blanco:#FFFFFF;--negro:#1A1A1A;
  --texto:#3D3D3D;--suave:#7A7A7A;--acento:#C41E3A;--dorado:#C9A455;
  --dorado-s:#E8D5A3;--borde:#DDD4C5;
  --titulo:'Cormorant Garamond',Georgia,serif;--cuerpo:'Lato',sans-serif;
  --sombra:0 4px 24px rgba(0,0,0,0.08);--sombra-h:0 8px 40px rgba(0,0,0,0.14);
  --trans:all 0.3s ease;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:hidden}
body{font-family:var(--cuerpo);background:var(--fondo);color:var(--texto);font-size:16px;line-height:1.7;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--negro);text-decoration:none;transition:var(--trans)}
a:hover{color:var(--acento)}
h1,h2,h3,h4{font-family:var(--titulo);font-weight:400;line-height:1.2;color:var(--negro)}
.container{max-width:1160px;margin:0 auto;padding:0 24px}

/* BARRA TOP */
.barra-top{background:var(--negro);color:rgba(255,255,255,0.8);text-align:center;font-size:0.78rem;letter-spacing:0.08em;padding:8px 24px}
.barra-top strong{color:var(--dorado)}

/* HEADER */
header{background:var(--blanco);border-bottom:1px solid var(--borde);position:sticky;top:0;z-index:100;box-shadow:0 2px 12px rgba(0,0,0,0.06)}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:1160px;margin:0 auto}
.logo{display:flex;align-items:center}
.logo img{height:52px;width:auto}
.logo:hover{opacity:0.85}
nav ul{list-style:none;display:flex;gap:4px;align-items:center}
nav>ul>li{position:relative}
nav a{font-size:0.82rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:8px 14px;border-radius:4px;color:var(--negro);transition:var(--trans);display:flex;align-items:center;gap:4px}
nav a:hover{color:var(--acento)}
.nav-activo>a{color:var(--acento)!important}
.has-dropdown>a::after{content:'▾';font-size:0.65rem;opacity:0.6;margin-left:2px}
.has-dropdown{padding-top:8px;padding-bottom:8px}
.dropdown{display:none;position:absolute;top:calc(100% - 8px);left:0;background:var(--blanco);border:1px solid var(--borde);border-radius:6px;box-shadow:var(--sombra-h);min-width:210px;z-index:200;overflow:hidden}
@keyframes fadeDown{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.dropdown li{list-style:none}
.dropdown a{display:block;padding:11px 18px;font-size:0.82rem;font-weight:400;letter-spacing:0.04em;text-transform:none;color:var(--texto);border-bottom:1px solid var(--borde);border-radius:0}
.dropdown li:last-child a{border-bottom:none}
.dropdown a:hover{background:var(--fondo-alt);color:var(--acento);padding-left:22px}
.has-dropdown:hover .dropdown{display:block;animation:fadeDown 0.18s ease}
.nav-cta{background:var(--negro);color:var(--blanco)!important;padding:10px 20px!important;border-radius:4px}
.nav-cta:hover{background:var(--acento)!important;color:var(--blanco)!important}

/* BREADCRUMB */
.breadcrumb{background:var(--fondo-alt);padding:12px 0;border-bottom:1px solid var(--borde)}
.breadcrumb-inner{max-width:1160px;margin:0 auto;padding:0 24px;font-size:0.82rem;color:var(--suave)}
.breadcrumb a{color:var(--suave)}
.breadcrumb a:hover{color:var(--acento)}
.breadcrumb span{margin:0 6px;opacity:0.5}

/* HERO DE PÁGINA */
.page-hero{padding:64px 0 48px;background:linear-gradient(135deg,var(--fondo-alt) 0%,var(--fondo) 100%);border-bottom:1px solid var(--borde);text-align:center}
.page-hero-etiqueta{display:inline-block;font-size:0.78rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--acento);padding:6px 16px;border:1px solid var(--acento);border-radius:30px;margin-bottom:1rem}
.page-hero h1{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:0.8rem}
.page-hero p{color:var(--suave);max-width:560px;margin:0 auto;font-size:1rem;line-height:1.8}

/* SECCIONES */
section{padding:72px 0}
.sec-oscura{background:var(--fondo-alt)}
.sec-blanca{background:var(--blanco)}
.sec-negra{background:var(--negro);color:rgba(255,255,255,0.8)}
.sec-negra h2,.sec-negra h3{color:var(--blanco)}
.sec-titulo{font-size:clamp(1.8rem,3vw,2.6rem);text-align:center;margin-bottom:0.6rem}
.linea{width:48px;height:2px;background:var(--acento);margin:0.8rem auto 1.4rem}
.sec-sub{text-align:center;color:var(--suave);max-width:560px;margin:0 auto 3rem;font-size:1rem;line-height:1.8}

/* BOTONES */
.btn{display:inline-block;font-family:var(--cuerpo);font-size:0.82rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:14px 30px;border-radius:4px;cursor:pointer;transition:var(--trans);border:2px solid transparent}
.btn-negro{background:var(--negro);color:var(--blanco);border-color:var(--negro)}
.btn-negro:hover{background:transparent;color:var(--negro)}
.btn-outline{background:transparent;color:var(--negro);border-color:var(--negro)}
.btn-outline:hover{background:var(--negro);color:var(--blanco)}
.btn-rojo{background:var(--acento);color:var(--blanco);border-color:var(--acento)}
.btn-rojo:hover{background:transparent;color:var(--acento)}
.btn-sm{font-size:0.78rem;padding:10px 18px}

/* GRIDS */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.grid-2-asym{display:grid;grid-template-columns:1fr 1.5fr;gap:64px;align-items:center}

/* TARJETA PRODUCTO */
.producto-card{background:var(--blanco);border-radius:10px;overflow:hidden;box-shadow:var(--sombra);transition:var(--trans)}
.producto-card:hover{box-shadow:var(--sombra-h);transform:translateY(-4px)}
.producto-img{height:300px;background:var(--fondo-alt);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--borde);overflow:hidden}
.producto-img img{width:100%;height:100%;object-fit:cover}
.producto-img-ph{font-family:var(--titulo);font-size:1rem;color:var(--suave);text-align:center;padding:20px}
.producto-body{padding:24px}
.producto-ml{font-size:0.78rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--dorado);margin-bottom:0.4rem}
.producto-nombre{font-family:var(--titulo);font-size:1.5rem;margin-bottom:0.6rem}
.producto-desc{font-size:0.92rem;color:var(--suave);line-height:1.7;margin-bottom:1rem}
.beneficios{list-style:none;margin-bottom:1.2rem}
.beneficios li{padding:6px 0 6px 20px;position:relative;font-size:0.88rem;color:var(--texto);border-bottom:1px solid var(--borde)}
.beneficios li::before{content:'✓';position:absolute;left:0;color:var(--acento);font-weight:700}
.producto-footer{display:flex;align-items:center;justify-content:space-between;margin-top:1.2rem}
.producto-precio{font-size:1.3rem;font-weight:700;color:var(--acento)}

/* TARJETA TALLER */
.taller-card{background:var(--blanco);border-radius:10px;padding:32px;box-shadow:var(--sombra);transition:var(--trans);border-top:3px solid transparent}
.taller-card:hover{box-shadow:var(--sombra-h);transform:translateY(-4px);border-top-color:var(--acento)}

/* PÍLDORAS */
.pildora-card{background:var(--blanco);border-radius:10px;padding:28px;box-shadow:var(--sombra);transition:var(--trans);border-top:3px solid transparent}
.pildora-card:hover{box-shadow:var(--sombra-h);transform:translateY(-4px);border-top-color:var(--acento)}
.pildora-num{font-family:var(--titulo);font-size:3rem;color:var(--dorado-s);line-height:1;margin-bottom:0.4rem}
.pildora-titulo{font-family:var(--titulo);font-size:1.1rem;margin-bottom:0.6rem;line-height:1.3}
.pildora-desc{font-size:0.87rem;color:var(--suave);line-height:1.6;margin-bottom:1rem}
.pildora-precio{font-size:1.3rem;font-weight:700;color:var(--acento);margin-bottom:1rem}
.pildora-completo{background:linear-gradient(135deg,var(--negro) 0%,#2d2d2d 100%);color:var(--blanco);text-align:center;padding:40px;border-radius:10px}
.pildora-completo h3{color:var(--blanco);font-size:1.5rem;margin-bottom:0.5rem}
.pildora-completo p{color:rgba(255,255,255,0.7);margin-bottom:1.5rem}
.precio-completo{font-size:2rem;font-weight:700;color:var(--dorado);margin-bottom:0.3rem}
.precio-antes{font-size:0.9rem;color:rgba(255,255,255,0.5);text-decoration:line-through}
.btn-blanco{background:var(--blanco);color:var(--acento)!important;border-color:var(--blanco)}
.btn-blanco:hover{background:transparent;color:var(--blanco)!important}

/* MEDITACIONES */
.meditacion-card{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.12);border-radius:10px;padding:24px;display:flex;gap:16px;align-items:flex-start;transition:var(--trans)}
.meditacion-card:hover{background:rgba(255,255,255,0.14)}
.meditacion-ico{font-size:1.8rem;flex-shrink:0}
.meditacion-titulo{font-family:var(--titulo);font-size:1.1rem;color:var(--blanco);margin-bottom:0.3rem}
.meditacion-desc{font-size:0.85rem;color:rgba(255,255,255,0.6);line-height:1.6}
.grid-med{display:grid;grid-template-columns:1fr 1fr;gap:20px}

/* EVENTOS */
.evento-card{border-left:4px solid var(--acento);padding:16px 20px;background:var(--blanco);border-radius:0 8px 8px 0;margin-bottom:16px;box-shadow:var(--sombra)}
.evento-fecha{font-size:0.78rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--acento);margin-bottom:0.3rem}
.evento-titulo{font-family:var(--titulo);font-size:1.2rem;margin-bottom:0.3rem}
.evento-desc{font-size:0.87rem;color:var(--suave);line-height:1.6}
.badge-pronto{display:inline-block;background:var(--dorado);color:var(--blanco);font-size:0.72rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:4px 12px;border-radius:30px}

/* COLABORACIONES BOX */
.colab-box{background:var(--blanco);border-radius:10px;padding:40px;box-shadow:var(--sombra);border-left:4px solid var(--acento)}
.colab-lista{list-style:none;margin:1rem 0}
.colab-lista li{padding:8px 0 8px 20px;position:relative;font-size:0.92rem;color:var(--texto);border-bottom:1px solid var(--borde)}
.colab-lista li::before{content:'◆';position:absolute;left:0;color:var(--dorado);font-size:0.6rem;top:13px}
.cita-cta{font-size:1rem;color:var(--negro);font-style:italic;border-left:3px solid var(--acento);padding:12px 20px;background:var(--fondo-alt);border-radius:0 6px 6px 0;margin:1.5rem 0}

/* FORMULARIO */
.form-box{background:var(--blanco);border-radius:10px;padding:40px;box-shadow:var(--sombra)}
.form-group{margin-bottom:20px}
.form-group label{display:block;font-size:0.82rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--texto);margin-bottom:6px}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:1px solid var(--borde);border-radius:4px;font-family:var(--cuerpo);font-size:0.95rem;color:var(--texto);background:var(--fondo);transition:var(--trans)}
.form-group input:focus,.form-group textarea:focus{border-color:var(--acento);outline:none;box-shadow:0 0 0 3px rgba(196,30,58,0.1)}
.form-group textarea{min-height:120px;resize:vertical}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.secure-note{font-size:0.8rem;color:var(--suave);margin-top:12px;display:flex;gap:6px;align-items:center}

/* CONTACTO DATO */
.contacto-dato{display:flex;gap:12px;align-items:center;margin-bottom:1rem;font-size:0.95rem}
.contacto-ico{width:42px;height:42px;background:var(--fondo-alt);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}

/* CHIP */
.chips{display:flex;gap:8px;flex-wrap:wrap;margin:1.2rem 0}
.chip{background:var(--fondo-alt);color:var(--texto);font-size:0.8rem;padding:6px 14px;border-radius:30px;border:1px solid var(--borde)}

/* LIBRO */
.libro-portada{background:linear-gradient(145deg,#2d2d2d,#1a1a1a);border-radius:8px;aspect-ratio:2/3;display:flex;align-items:center;justify-content:center;box-shadow:12px 12px 40px rgba(0,0,0,0.25);transition:var(--trans);padding:30px}
.libro-portada:hover{transform:rotate(-2deg) scale(1.03)}
.libro-titulo-port{font-family:var(--titulo);font-size:1.4rem;color:var(--blanco);text-align:center;line-height:1.3;font-style:italic;margin-bottom:0.5rem}
.libro-autor-port{font-size:0.8rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--dorado);text-align:center}

/* FOOTER */
footer{background:var(--negro);color:rgba(255,255,255,0.65);padding:64px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,0.08);margin-bottom:24px}
.footer-logo{font-family:var(--titulo);font-size:1.5rem;color:var(--blanco);margin-bottom:0.8rem}
.footer-logo span{color:var(--acento)}
.footer-tagline{font-size:0.88rem;color:rgba(255,255,255,0.5);line-height:1.7;margin-bottom:1.2rem}
.footer-social{display:flex;gap:8px}
.footer-social a{width:36px;height:36px;border:1px solid rgba(255,255,255,0.15);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.5);font-size:0.9rem;transition:var(--trans)}
.footer-social a:hover{background:var(--acento);border-color:var(--acento);color:var(--blanco)}
.footer-col h4{font-family:var(--titulo);font-size:1rem;color:var(--blanco);margin-bottom:1.2rem;font-weight:400;letter-spacing:0.08em;text-transform:uppercase}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:0.5rem}
.footer-col a{font-size:0.88rem;color:rgba(255,255,255,0.55);transition:var(--trans)}
.footer-col a:hover{color:var(--blanco);padding-left:4px}
.footer-bottom{text-align:center;font-size:0.8rem;color:rgba(255,255,255,0.3)}
.footer-bottom a{color:rgba(255,255,255,0.3)}
.footer-bottom a:hover{color:rgba(255,255,255,0.6)}

/* MENÚ HAMBURGUESA */
.menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:201;flex-shrink:0}
.menu-toggle span{display:block;width:24px;height:2px;background:var(--negro);transition:var(--trans);transform-origin:center}
.menu-toggle.activo span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.menu-toggle.activo span:nth-child(2){opacity:0;transform:scaleX(0)}
.menu-toggle.activo span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

@media(max-width:900px){
  .grid-2,.grid-2-asym,.footer-grid{grid-template-columns:1fr;gap:32px}
  .grid-3,.grid-med{grid-template-columns:1fr 1fr}
  footer .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .menu-toggle{display:flex}
  nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--blanco);border-top:1px solid var(--borde);box-shadow:0 8px 32px rgba(0,0,0,0.13);z-index:150}
  nav.abierto{display:block}
  nav ul{flex-direction:column;gap:0;padding:8px 0}
  nav>ul>li{border-bottom:1px solid var(--borde)}
  nav>ul>li:last-child{border-bottom:none}
  nav>ul>li>a{padding:15px 24px;font-size:0.88rem;justify-content:space-between}
  .has-dropdown{padding-bottom:0}
  .has-dropdown:hover .dropdown{display:none}
  .has-dropdown.abierto>.dropdown{display:block}
  .dropdown{position:static;box-shadow:none;border:none;border-radius:0;background:var(--fondo-alt);border-top:1px solid var(--borde);min-width:auto;animation:none}
  .dropdown a{padding:12px 24px 12px 40px;font-size:0.86rem}
  .logo img{height:44px}
  .footer-grid{grid-template-columns:1fr!important;gap:28px!important}
  .footer-social{flex-wrap:wrap}
  .grid-2-asym{grid-template-columns:1fr}
}
@media(max-width:580px){
  .grid-3,.grid-med,.form-row{grid-template-columns:1fr}
  .header-inner{padding:12px 16px}
  section{padding:48px 0}
  .container{padding:0 16px}
}
