:root{
  --verde:#204E31;
  --mostaza:#A39003;
  --mostaza-hover:#615911;
  --fondo:#F7EFDC;
  --fondo-alt:#EDE2C6;
  --texto:#1F1F1C;
  --texto-sec:#6B7066;
  --radius:14px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family:'Georgia','Times New Roman',serif;
  background:var(--fondo);
  color:var(--texto);
  line-height:1.65;
}
h1,h2,h3,.brand{
  font-family:'Poppins','Helvetica Neue',Arial,sans-serif;
  font-weight:600;
  color:var(--verde);
  line-height:1.2;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.container{max-width:1080px;margin:0 auto;padding:0 24px;}
.btn{
  display:inline-block;
  background:var(--mostaza);
  color:#fff;
  font-family:'Poppins','Helvetica Neue',Arial,sans-serif;
  font-weight:600;
  padding:14px 28px;
  border-radius:999px;
  border:none;
  cursor:pointer;
  transition:background .2s ease;
  font-size:1rem;
}
.btn:hover{background:var(--mostaza-hover);}
.btn-outline{
  background:transparent;
  border:2px solid var(--verde);
  color:var(--verde);
}
.btn-outline:hover{background:var(--verde);color:#fff;}
.btn-whatsapp{
  display:inline-flex;align-items:center;gap:9px;
  background:#25D366;color:#fff;
  font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-weight:600;
  padding:13px 24px;border-radius:999px;border:none;cursor:pointer;font-size:.95rem;
  transition:background .2s ease;
}
.btn-whatsapp:hover{background:#1DA851;}
.btn-whatsapp svg{width:19px;height:19px;flex-shrink:0;}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px;}

/* HEADER */
header{
  position:sticky;top:0;z-index:100;
  background:var(--fondo);
  border-bottom:1px solid var(--fondo-alt);
}
.nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 40px;
  max-width:1440px;margin:0 auto;
  position:relative;
  gap:20px;
}
.brand{font-size:1.25rem;font-weight:700;letter-spacing:.3px;display:flex;align-items:center;gap:10px;flex-shrink:0;}
.brand img{height:64px;width:auto;display:block;}
@media(min-width:820px){.brand img{height:72px;}}
.nav-links{display:none;list-style:none;font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-weight:500;gap:26px;margin-right:8px;}
.nav-links a:hover{color:var(--mostaza);}
.nav-links a.active{color:var(--mostaza);font-weight:700;}
@media(min-width:820px){.nav-links{display:flex;}}
.nav-cta{display:none;}
@media(min-width:820px){.nav-cta{display:inline-block;margin-left:20px;flex-shrink:0;}}
.burger{display:block;background:none;border:none;font-size:1.6rem;cursor:pointer;color:var(--verde);}
@media(min-width:820px){.burger{display:none;}}
.nav-links.open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--fondo);padding:20px 24px;border-bottom:1px solid var(--fondo-alt);gap:14px;}

/* HERO GENERICO DE SECCION (Servicios / Espacio / Recursos / Blog / Contacto) */
.hero-img{width:100%;max-height:420px;object-fit:cover;}
.hero-simple{padding:40px 0 8px;text-align:center;}
.hero-simple h4{font-family:'Poppins','Helvetica Neue',Arial,sans-serif;color:var(--texto-sec);font-weight:500;font-size:1.05rem;margin-bottom:18px;}
.tag-list{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:20px 0 8px;font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-size:.88rem;}
.tag-list span{background:var(--fondo-alt);padding:8px 16px;border-radius:999px;color:var(--texto);}

/* HOME HERO */
.hero{padding:56px 0;}
.hero-grid{display:grid;gap:36px;align-items:center;}
@media(min-width:820px){.hero-grid{grid-template-columns:1.1fr .9fr;}}
.hero h1{font-size:2.2rem;margin-bottom:16px;}
@media(min-width:820px){.hero h1{font-size:2.7rem;}}
.hero p.lead{font-size:1.1rem;color:var(--texto-sec);margin-bottom:22px;max-width:46ch;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:18px;}
.placeholder-img{
  background:var(--fondo-alt);
  border:2px dashed var(--verde);
  border-radius:var(--radius);
  aspect-ratio:4/5;
  display:flex;align-items:center;justify-content:center;
  text-align:center;color:var(--texto-sec);
  font-family:'Poppins','Helvetica Neue',Arial,sans-serif;
  font-size:.9rem;padding:20px;
}

/* PROBLEMAS */
.problemas{background:var(--fondo-alt);padding:60px 0;}
.section-title{text-align:center;font-size:1.85rem;margin-bottom:12px;}
.section-sub{text-align:center;color:var(--texto-sec);max-width:60ch;margin:0 auto 40px;}
.cards{display:grid;gap:22px;}
@media(min-width:700px){.cards{grid-template-columns:repeat(3,1fr);}}
.card{background:var(--fondo);border-radius:var(--radius);padding:26px;border:1px solid #ddd6c6;}
.card h3{font-size:1.1rem;margin-bottom:8px;}
.card p{color:var(--texto-sec);font-size:.96rem;margin-bottom:8px;}
.card ul{color:var(--texto-sec);font-size:.9rem;padding-left:18px;}
.card li{margin-bottom:4px;}

/* PASOS */
.pasos{padding:60px 0;}
.pasos-grid{display:grid;gap:26px;margin-top:36px;}
@media(min-width:700px){.pasos-grid{grid-template-columns:repeat(3,1fr);}}
.paso{text-align:center;padding:0 12px;}
.paso-numero{
  width:44px;height:44px;border-radius:50%;background:var(--verde);color:#fff;
  display:flex;align-items:center;justify-content:center;margin:0 auto 16px;
  font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:1.1rem;
}
.paso h3{font-size:1.05rem;margin-bottom:8px;}
.paso p{color:var(--texto-sec);font-size:.92rem;}

/* BENEFICIOS */
.beneficios{padding:60px 0;max-width:760px;margin:0 auto;text-align:center;}
.beneficios p{font-size:1.08rem;color:var(--texto-sec);}

.contacto-gratuito{background:var(--verde);color:#fff;padding:40px 0;text-align:center;}
.contacto-gratuito h2{color:#fff;margin-bottom:12px;}
.contacto-gratuito p{max-width:56ch;margin:0 auto 20px;opacity:.92;}

/* SERVICIOS (usado en Recursos gratuitos) */
.servicios-list{padding:56px 0;}
.servicio{display:grid;gap:24px;padding:30px 0;border-bottom:1px solid var(--fondo-alt);}
@media(min-width:760px){.servicio{grid-template-columns:.4fr .6fr;align-items:start;}}
.servicio h3{font-size:1.35rem;margin-bottom:6px;}
.servicio .meta{font-family:'Poppins','Helvetica Neue',Arial,sans-serif;color:var(--mostaza);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;}
.servicio p{color:var(--texto-sec);margin-bottom:10px;}
.servicio .detalle{font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-size:.9rem;color:var(--texto-sec);margin-bottom:16px;}
.servicio .detalle b{color:var(--texto);}

/* SERVICIOS (página Servicios) — grilla de cards */
.servicios-cards-section{padding:20px 0 60px;}
.servicios-cards{display:grid;gap:24px;margin-top:8px;}
@media(min-width:700px){.servicios-cards{grid-template-columns:repeat(2,1fr);}}
.servicio-card{display:flex;flex-direction:column;height:100%;}
.servicio-card .meta{font-family:'Poppins','Helvetica Neue',Arial,sans-serif;color:var(--mostaza);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;}
.servicio-card h3{font-size:1.2rem;margin-bottom:8px;}
.servicio-card p{color:var(--texto-sec);font-size:.95rem;margin-bottom:14px;}
.servicio-card .detalle{font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-size:.82rem;color:var(--texto-sec);margin-bottom:16px;}
.servicio-card .detalle b{color:var(--texto);}
.servicio-card .btn-whatsapp{margin-top:auto;align-self:flex-start;}

/* ESPACIO / SOBRE MI */
.bloque-texto{padding:52px 0;max-width:760px;margin:0 auto;}
.bloque-texto h2{font-size:1.7rem;margin-bottom:16px;}
.bloque-texto h3{font-size:1.3rem;margin:8px 0 16px;}
.bloque-texto p{color:var(--texto-sec);margin-bottom:14px;}

/* ESPACIO — foto + bio en dos columnas */
.espacio-grid{display:grid;gap:36px;align-items:start;}
@media(min-width:760px){.espacio-grid{grid-template-columns:280px 1fr;}}
.espacio-foto{position:sticky;top:90px;}
@media(max-width:759px){.espacio-foto{position:static;}}
.espacio-foto img{width:100%;max-width:280px;margin:0 auto;border-radius:14px;object-fit:cover;aspect-ratio:4/5;}
.espacio-foto .credencial{border-top:none;padding-top:0;margin-top:16px;}
blockquote{font-style:italic;color:var(--verde);border-left:4px solid var(--mostaza);padding:6px 0 6px 20px;margin:20px 0;font-size:1.05rem;}
.credencial{font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-size:.92rem;color:var(--texto-sec);margin-top:16px;padding-top:16px;border-top:1px solid #ddd6c6;text-align:center;}

/* FAQ */
.faq{padding:56px 0;max-width:760px;margin:0 auto;}
.faq-item{border-bottom:1px solid var(--fondo-alt);padding:16px 0;}
.faq-item summary{cursor:pointer;font-weight:600;font-family:'Poppins','Helvetica Neue',Arial,sans-serif;color:var(--verde);}
.faq-item p{color:var(--texto-sec);margin-top:10px;}

/* CONTACTO / FORMULARIO */
.contacto{background:var(--verde);color:#fff;padding:60px 0;}
.contacto h2{color:#fff;}
.contacto-grid{display:grid;gap:32px;margin-top:28px;}
@media(min-width:820px){.contacto-grid{grid-template-columns:1fr 1fr;}}
.contacto-info p{margin-bottom:12px;opacity:.92;}
.contacto-info a{text-decoration:underline;}
.calendly-placeholder{background:rgba(255,255,255,.08);border:2px dashed rgba(255,255,255,.5);border-radius:var(--radius);padding:36px 22px;text-align:center;font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-size:.92rem;}
.formulario{padding:52px 0;max-width:520px;margin:0 auto;scroll-margin-top:90px;}
.formulario h2{text-align:center;margin-bottom:8px;}
.formulario p.section-sub{margin-bottom:26px;}
.formulario label{font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-size:.85rem;font-weight:600;display:block;margin-bottom:6px;}
.formulario input, .formulario textarea{
  width:100%;padding:12px 14px;margin-bottom:16px;border:1px solid #ccc4b0;border-radius:8px;
  font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-size:.95rem;background:#fff;
}
.formulario textarea{min-height:110px;resize:vertical;}
.formulario .btn{width:100%;}

/* RECURSO / TEST */
.recurso-card{background:var(--fondo-alt);border-radius:var(--radius);padding:28px;margin:24px 0;}
.recurso-card h3{margin-bottom:10px;}
.recurso-card table{width:100%;border-collapse:collapse;margin:16px 0;font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-size:.9rem;}
.recurso-card td, .recurso-card th{border:1px solid #ccc4b0;padding:8px 10px;text-align:left;}

/* FOOTER */
footer{background:#16321F;color:#fff;padding:40px 0;font-family:'Poppins','Helvetica Neue',Arial,sans-serif;font-size:.88rem;}
.footer-grid{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;}
footer a:hover{color:var(--mostaza);}
.footer-legal{opacity:.7;margin-top:24px;font-size:.8rem;}

/* ===== MOBILE FIXES ===== */
@media(max-width:819px){
  /* Nav: 40px de padding lateral es demasiado en celular */
  .nav{padding:12px 16px;}

  /* Hero H1 demasiado grande en pantallas chicas */
  .hero h1{font-size:1.75rem;}

  /* bloque-texto, beneficios y faq no tenían padding horizontal — texto iba de borde a borde */
  .bloque-texto{padding:40px 24px;}
  .beneficios{padding:44px 24px;}
  .faq{padding:44px 24px;}

  /* Formulario sin padding horizontal */
  .formulario{padding:44px 24px;}

  /* Prevenir scroll horizontal por cualquier elemento desbordado */
  body{overflow-x:hidden;}
}

/* WHATSAPP FLOTANTE */
.whatsapp-float{
  position:fixed;bottom:22px;right:22px;z-index:200;
  background:#25D366;color:#fff;
  width:58px;height:58px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:1.6rem;box-shadow:0 6px 18px rgba(0,0,0,.25);
}
.whatsapp-float svg{width:30px;height:30px;flex-shrink:0;}
