/* ===========================================================================
   Eirene · CSS de componentes del cuerpo de las páginas de subservicio
   Portado de la plantilla de Lydia (Eirene_Psi_Adultos.html). Solo clases del
   cuerpo; header/footer los gobierna Blocksy. Las clases referencian los tokens
   de tokens.css. Las animaciones .reveal se activan en Fase 7 (aquí no se ocultan).
   =========================================================================== */

/* BREADCRUMB (sin el offset de 84px de Lydia: su header era fixed; el de Blocksy no) */
.breadcrumb{padding:1.5rem 2rem 0;max-width:1200px;margin:0 auto}
.breadcrumb-inner{display:flex;align-items:center;gap:8px;padding:1rem 0;font-family:var(--sans);font-size:12px;color:var(--text-lt);flex-wrap:wrap}
.breadcrumb-inner a{color:var(--text-lt);transition:color .2s}.breadcrumb-inner a:hover{color:var(--sage-dk)}.breadcrumb-sep{color:var(--beige)}

/* HERO */
.hero{padding:2rem 2rem 0;background:var(--cream)}
.hero-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;padding:3rem 0 5rem}
.hero-eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:1.75rem}
.hero-eyebrow::before{content:'';width:28px;height:1px;background:var(--sage-dk)}
.hero-title{font-family:var(--serif);font-size:clamp(40px,5vw,64px);font-weight:300;line-height:1.1;color:var(--text);letter-spacing:-.5px;margin-bottom:1.5rem}
.hero-title em{font-style:italic;color:var(--sage-dk)}
.hero-desc{font-family:var(--sans);font-size:16px;font-weight:300;color:var(--text-lt);line-height:1.75;margin-bottom:2.25rem}
.hero-desc strong{color:var(--text);font-weight:500}
.hero-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:2.5rem}
.btn-primary{display:inline-flex;align-items:center;gap:8px;background:var(--text);color:var(--white);padding:.875rem 2rem;border-radius:40px;font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:.5px;transition:background .2s,transform .15s,box-shadow .2s;box-shadow:0 4px 20px rgba(58,53,48,.15)}
.btn-primary:hover{background:var(--sage-dk);transform:translateY(-2px)}
.btn-primary svg{transition:transform .2s}.btn-primary:hover svg{transform:translateX(3px)}
.btn-secondary{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-family:var(--sans);font-size:13px;padding:.875rem 1.5rem;border:1px solid var(--border);border-radius:40px;transition:border-color .2s,background .2s}
.btn-secondary:hover{border-color:var(--beige);background:var(--cream2)}
.hero-pills{display:flex;flex-wrap:wrap;gap:8px}
.hero-pill{background:var(--white);border:1px solid var(--border);border-radius:20px;padding:5px 14px;font-family:var(--sans);font-size:12px;color:var(--text-lt);letter-spacing:.3px}

/* HERO RIGHT */
.hero-right{display:flex;flex-direction:column;gap:20px;margin-top:calc(1.75rem + 18px)}
.hero-photo{width:100%;height:220px;border-radius:14px;background:var(--cream2);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.photo-ph{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--beige)}
.photo-ph svg{opacity:.4}.photo-ph span{font-family:var(--sans);font-size:10px;letter-spacing:2px;text-transform:uppercase;opacity:.6}

/* INFO CARDS */
.hero-info-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.info-card-sm{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1rem 1.25rem}
.info-card-sm-label{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.375rem}
.info-card-sm-val{font-family:var(--serif);font-size:15px;font-weight:400;color:var(--text)}

/* BACK LINK */
.back-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:12px;color:var(--text-lt);padding:.625rem 1rem;border:1px solid var(--border);border-radius:20px;transition:color .2s,border-color .2s}
.back-link:hover{color:var(--sage-dk);border-color:var(--sage)}

/* SECTIONS */
.section{padding:5.5rem 2rem}.section-inner{max-width:1200px;margin:0 auto}
.bg-white{background:var(--white)}.bg-cream{background:var(--cream)}.bg-cream2{background:var(--cream2)}
.section-label{display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:1.25rem}
.section-label::before{content:'';width:24px;height:1px;background:var(--sage-dk)}
.section-title{font-family:var(--serif);font-size:clamp(28px,3.5vw,48px);font-weight:300;line-height:1.15;color:var(--text);margin-bottom:1.25rem;letter-spacing:-.3px}
.section-title em{font-style:italic;color:var(--sage-dk)}
.section-lead{font-family:var(--sans);font-size:16px;font-weight:300;color:var(--text-lt);line-height:1.75;max-width:600px}

/* CONTENT GRID */
.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.content-text p{font-family:var(--sans);font-size:15px;color:var(--text-lt);line-height:1.85;margin-bottom:1.25rem}
.content-text p strong{color:var(--text);font-weight:500}

/* SYMPTOMS */
.symptoms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.symptom-card{background:var(--white);border-radius:14px;padding:1.75rem;border:1px solid var(--border);transition:transform .22s,box-shadow .22s}
.symptom-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(58,53,48,.07)}
.symptom-photo{width:100%;aspect-ratio:16/9;border-radius:10px;background:var(--cream2);border:1px solid var(--border);margin-bottom:1.25rem;display:flex;align-items:center;justify-content:center;overflow:hidden}
.symptom-title{font-family:var(--serif);font-size:19px;font-weight:400;color:var(--text);margin-bottom:.5rem;line-height:1.25}
.symptom-desc{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.65}

/* PROCESS */
.process-steps{display:flex;flex-direction:column;gap:0}
.process-step{display:flex;gap:1.5rem;padding:1.875rem 0;border-bottom:1px solid var(--border);align-items:flex-start}
.process-step:last-child{border:none}
.step-num{width:36px;height:36px;border-radius:50%;background:var(--cream2);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:16px;color:var(--text);flex-shrink:0;transition:background .3s,color .3s}
.process-step:hover .step-num{background:var(--sage);color:var(--white)}
.step-content h3{font-family:var(--serif);font-size:19px;font-weight:400;color:var(--text);margin-bottom:.375rem}
.step-content p{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.7}

/* ASIDE CARDS */
.aside-cards{display:flex;flex-direction:column;gap:1.25rem}
.aside-card{background:var(--cream);border-radius:14px;padding:1.75rem;border:1px solid var(--border)}
.aside-card h4{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--text);margin-bottom:.5rem}
.aside-card p{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.65}
.aside-badge{display:inline-flex;align-items:center;gap:6px;background:var(--sage-lt);color:var(--sage-dk);border-radius:20px;padding:4px 12px;font-family:var(--sans);font-size:11px;font-weight:500;margin-top:.75rem}
.aside-badge::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--sage-dk)}

/* DARK SECTION */
.dark-section{background:var(--text);padding:5.5rem 2rem}
.dark-section .section-label{color:rgba(168,189,184,.8)}.dark-section .section-label::before{background:var(--sage)}
.dark-section .section-title{color:var(--white)}
.dark-section .section-lead{color:rgba(245,240,235,.6)}
.dark-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.08);border-radius:16px;overflow:hidden;margin-top:3rem}
.dark-card{background:var(--text);padding:2.25rem;transition:background .2s}.dark-card:hover{background:rgba(255,255,255,.04)}
.dark-card-title{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--white);margin-bottom:.625rem;line-height:1.25}
.dark-card-text{font-family:var(--sans);font-size:13.5px;color:rgba(245,240,235,.55);line-height:1.7}
.dark-card-tag{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.875rem}

/* EVIDENCE */
.evidence-strip{background:var(--sage-lt);border:1px solid var(--sage);border-radius:14px;padding:1.75rem 2rem;display:flex;align-items:flex-start;gap:1.25rem}
.evidence-badge{background:var(--white);border-radius:8px;padding:.625rem .875rem;font-family:var(--sans);font-size:12px;font-weight:500;color:var(--sage-dk);flex-shrink:0;text-align:center;border:1px solid var(--sage)}
.evidence-text{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.65}
.evidence-text strong{color:var(--text);font-weight:500}

/* FAQ */
.faq-section{background:var(--cream)}
.faq-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:5rem;align-items:start}
.faq-list{display:flex;flex-direction:column;gap:0}
.faq-item{border-bottom:1px solid var(--border)}
/* Acordeón nativo <details>/<summary> (sin JS) */
.faq-item > summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:1.375rem 0;gap:1rem;text-align:left;font-family:var(--serif);font-size:18px;font-weight:400;color:var(--text);font-style:italic;transition:color .2s}
.faq-item > summary::-webkit-details-marker{display:none}
.faq-item > summary:hover{color:var(--sage-dk)}
.faq-item > summary::after{content:"+";width:28px;height:28px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:16px;color:var(--text-lt);font-style:normal;transition:background .2s,border-color .2s,transform .3s}
.faq-item[open] > summary::after{content:"+";background:var(--sage);border-color:var(--sage);color:var(--white);transform:rotate(45deg)}
.faq-item p{font-family:var(--sans);font-size:14px;color:var(--text-lt);line-height:1.75;padding-bottom:1.25rem;margin:0}

/* COVERAGE */
.coverage-strip{background:var(--sage-lt);border-top:1px solid var(--sage);border-bottom:1px solid var(--sage);padding:1.25rem 2rem}
.coverage-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center}
.coverage-label{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk)}
.coverage-sep{color:var(--sage)}
.coverage-place{font-family:var(--serif);font-size:16px;font-weight:400;color:var(--text);font-style:italic}

/* CTA */
.cta-section{background:var(--cream2);text-align:center;padding:7rem 2rem}
.cta-inner{max-width:640px;margin:0 auto}
.cta-title{font-family:var(--serif);font-size:clamp(30px,4vw,52px);font-weight:300;color:var(--text);line-height:1.15;margin-bottom:1.25rem}
.cta-title em{font-style:italic;color:var(--sage-dk)}
.cta-desc{font-family:var(--sans);font-size:16px;font-weight:300;color:var(--text-lt);line-height:1.75;margin-bottom:2.5rem}
.cta-actions{display:flex;align-items:center;gap:1rem;justify-content:center;flex-wrap:wrap}
.cta-note{margin-top:1.5rem;font-family:var(--sans);font-size:12px;color:var(--beige)}

/* RESPONSIVE */
@media(max-width:1024px){
  .hero-inner,.content-grid,.faq-grid{grid-template-columns:1fr;gap:3rem}
  .symptoms-grid,.dark-grid{grid-template-columns:repeat(2,1fr)}
  .hero-info-cards{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .section{padding:4rem 1.25rem}
  .symptoms-grid,.dark-grid{grid-template-columns:1fr}
  .hero-info-cards{grid-template-columns:1fr}
}

/* Fotos editables (core/image) — la imagen llena el contenedor idéntico al placeholder */
.hero-photo,.symptom-photo{padding:0}
.hero-photo img,.symptom-photo img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
figure.hero-photo,figure.symptom-photo{margin:0}

/* ============ HUB (psicologia y reutilizable en otros hubs) ============ */
/* Sub-nav cards (hero) */
.sub-nav-cards{display:flex;flex-direction:column;gap:8px}
.sub-nav-card{display:flex;align-items:center;gap:1.25rem;background:var(--white);border:1px solid var(--border);border-radius:14px;padding:1.375rem 1.5rem;text-decoration:none;transition:transform .22s,box-shadow .22s,border-color .22s;position:relative;overflow:hidden}
.sub-nav-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--beige),var(--sage));transform:scaleY(0);transform-origin:bottom;transition:transform .3s ease}
.sub-nav-card:hover{transform:translateX(5px);box-shadow:0 6px 24px rgba(58,53,48,.08);border-color:var(--sage)}
.sub-nav-card:hover::before{transform:scaleY(1)}
.sub-icon{width:44px;height:44px;border-radius:11px;background:var(--cream);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .22s}
.sub-nav-card:hover .sub-icon{background:var(--sage-lt)}
.sub-info{flex:1}
.sub-title{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--text);line-height:1.2;margin-bottom:3px}
.sub-desc{font-family:var(--sans);font-size:12.5px;color:var(--text-lt);line-height:1.4}
.sub-arrow{color:var(--beige);flex-shrink:0;transition:color .2s,transform .2s}
.sub-nav-card:hover .sub-arrow{color:var(--sage-dk);transform:translateX(3px)}
/* Services section */
.services-section{background:var(--white)}
.services-intro{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:4rem}
.services-list{display:flex;flex-direction:column;gap:1px;background:var(--border);border-radius:20px;overflow:hidden}
.service-item{background:var(--white);display:grid;grid-template-columns:1fr auto;align-items:stretch;transition:background .2s}
.service-item:hover{background:var(--cream)}
.service-item-main{padding:0;display:grid;grid-template-columns:180px 1fr;align-items:stretch}
.service-item-photo{width:180px;flex-shrink:0;background:var(--cream2);border-right:1px solid var(--border);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:260px}
.service-item-photo img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}
figure.service-item-photo{margin:0}
.service-item-body{padding:2.5rem;display:flex;gap:2rem;align-items:flex-start}
.service-item-num{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:2px;color:var(--beige);padding-top:4px;flex-shrink:0;width:24px}
.service-item-content{flex:1}
.service-item-title{font-family:var(--serif);font-size:26px;font-weight:400;color:var(--text);margin-bottom:.625rem;line-height:1.2}
.service-item-desc{font-family:var(--sans);font-size:14px;color:var(--text-lt);line-height:1.7;margin-bottom:1rem}
.service-tags{display:flex;flex-wrap:wrap;gap:6px}
.service-tag{background:var(--cream2);border-radius:20px;padding:4px 12px;font-family:var(--sans);font-size:11px;color:var(--text-lt);letter-spacing:.3px}
.service-item-cta{display:flex;align-items:center;justify-content:center;padding:2rem;border-left:1px solid var(--border);min-width:120px}
.service-item-cta a{display:flex;flex-direction:column;align-items:center;gap:.5rem;font-family:var(--sans);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--text-lt);transition:color .2s;text-decoration:none}
.service-item-cta a:hover{color:var(--sage-dk)}
.service-item-cta svg{transition:transform .2s}
.service-item-cta a:hover svg{transform:translateX(3px)}
/* Approach section */
.approach-section{background:var(--cream2)}
.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.approach-pillars{display:flex;flex-direction:column;gap:1.5rem}
.pillar{background:var(--white);border-radius:14px;padding:2rem;border:1px solid var(--border);transition:transform .2s,box-shadow .2s}
.pillar:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(58,53,48,.06)}
.pillar-label{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.75rem}
.pillar-title{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--text);margin-bottom:.5rem}
.pillar-text{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.7}
/* Problems section (fondo oscuro) */
.problems-section{background:var(--text)}
.problems-section .section-label{color:rgba(168,189,184,.8)}
.problems-section .section-label::before{background:var(--sage)}
.problems-section .section-title{color:var(--white)}
.problems-section .section-lead{color:rgba(245,240,235,.6)}
.problems-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.08);border-radius:16px;overflow:hidden;margin-top:3.5rem}
.problem-card{background:var(--text);padding:2rem;transition:background .2s}
.problem-card:hover{background:rgba(255,255,255,.04)}
.problem-photo{width:100%;aspect-ratio:16/9;border-radius:10px;background:var(--cream2);border:1px solid var(--border);margin-bottom:1.25rem;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}
.problem-photo img{width:100%;height:100%;object-fit:cover;display:block}
figure.problem-photo{margin:0 0 1.25rem}
.problem-title{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--white);margin-bottom:.5rem;line-height:1.3}
.problem-desc{font-family:var(--sans);font-size:13px;color:rgba(245,240,235,.55);line-height:1.65;margin-bottom:.875rem}
.problem-link{font-family:var(--sans);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--sage);display:flex;align-items:center;gap:6px;transition:gap .2s;text-decoration:none}
.problem-link:hover{gap:10px}
/* Process section */
.process-section{background:var(--white)}
.process-steps{display:flex;flex-direction:column;gap:0}
.process-step{display:flex;gap:1.5rem;padding:2rem 0;border-bottom:1px solid var(--border);align-items:flex-start}
.process-step:last-child{border:none}
.step-num{width:36px;height:36px;border-radius:50%;background:var(--cream2);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:16px;font-weight:400;color:var(--text);flex-shrink:0;transition:background .3s,color .3s}
.process-step:hover .step-num{background:var(--sage);color:var(--white)}
.step-content h3{font-family:var(--serif);font-size:19px;font-weight:400;color:var(--text);margin-bottom:.375rem}
.step-content p{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.7}
@media(max-width:1024px){
  .services-intro{grid-template-columns:1fr}
  .approach-grid{grid-template-columns:1fr}
  .problems-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .problems-grid{grid-template-columns:1fr}
  .service-item-cta{display:none}
  .service-item-main{grid-template-columns:1fr}
  .service-item-photo{display:none}
  .service-item-body{padding:1.75rem}
}

/* ============ HUB LOGOPEDIA (secciones nuevas, genéricas) ============ */
/* Hero landing card (1 hija) + info cards (variante singular) */
.hero-landing-card{display:flex;align-items:center;gap:1.25rem;background:var(--white);border:1px solid var(--border);border-radius:14px;padding:1.375rem 1.5rem;text-decoration:none;transition:transform .22s,box-shadow .22s,border-color .22s;position:relative;overflow:hidden}
.hero-landing-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--beige),var(--sage));transform:scaleY(0);transform-origin:bottom;transition:transform .3s}
.hero-landing-card:hover{transform:translateX(5px);box-shadow:0 6px 24px rgba(58,53,48,.08);border-color:var(--sage)}
.hero-landing-card:hover::before{transform:scaleY(1)}
.hero-card-icon{width:44px;height:44px;border-radius:11px;background:var(--cream);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .22s}
.hero-landing-card:hover .hero-card-icon{background:var(--sage-lt)}
.hero-card-info{flex:1}
.hero-card-title{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--text);margin-bottom:3px}
.hero-card-desc{font-family:var(--sans);font-size:12.5px;color:var(--text-lt);line-height:1.4}
.hero-card-arrow{color:var(--beige);flex-shrink:0;transition:color .2s,transform .2s}
.hero-landing-card:hover .hero-card-arrow{color:var(--sage-dk);transform:translateX(3px)}
.hero-info-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:1rem 1.25rem}
.hero-info-card-label{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.375rem}
.hero-info-card-val{font-family:var(--serif);font-size:15px;font-weight:400;color:var(--text)}
/* Qué es (whatis) + stats */
.whatis-section{background:var(--white)}
.whatis-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.whatis-text p{font-family:var(--sans);font-size:15px;color:var(--text-lt);line-height:1.8;margin-bottom:1.25rem}
.whatis-text p strong{color:var(--text);font-weight:500}
.whatis-visual{background:var(--cream2);border-radius:20px;padding:2.5rem;display:flex;flex-direction:column;gap:1rem}
.whatis-stat{background:var(--white);border-radius:12px;padding:1.5rem;border:1px solid var(--border);display:flex;align-items:center;gap:1.25rem}
.whatis-stat-n{font-family:var(--serif);font-size:38px;font-weight:300;color:var(--text);line-height:1;flex-shrink:0}
.whatis-stat-n em{font-size:20px;color:var(--sage-dk);font-style:normal}
.whatis-stat-l{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.5}
/* Trastornos (disorders) */
.disorders-section{background:var(--cream)}
.disorders-intro{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:4rem}
.disorders-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.disorder-card{background:var(--white);border-radius:16px;overflow:hidden;border:1px solid var(--border);transition:transform .25s,box-shadow .25s}
.disorder-card:hover{transform:translateY(-5px);box-shadow:0 16px 48px rgba(58,53,48,.08)}
.disorder-photo{width:100%;aspect-ratio:3/2;background:var(--cream2);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.disorder-photo img{width:100%;height:100%;object-fit:cover;display:block}
figure.disorder-photo{margin:0}
.disorder-body{padding:1.75rem}
.disorder-tag{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.75rem}
.disorder-title{font-family:var(--serif);font-size:22px;font-weight:400;color:var(--text);margin-bottom:.625rem;line-height:1.2}
.disorder-desc{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.7;margin-bottom:1.25rem}
.disorder-symptoms{display:flex;flex-direction:column;gap:4px;margin-bottom:1.25rem}
.disorder-symptom{font-family:var(--sans);font-size:12px;color:var(--text-lt);padding:4px 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px}
.disorder-symptom:last-child{border:none}
.disorder-symptom::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--sage);flex-shrink:0}
.disorder-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:12px;font-weight:500;color:var(--sage-dk);transition:gap .2s;text-decoration:none}
.disorder-link:hover{gap:10px}
/* Señales (signals, por edad) */
.signals-section{background:var(--white)}
.signals-header{text-align:center;margin-bottom:4rem}
.signals-header .section-label{justify-content:center}
.signals-header .section-lead{margin:0 auto;text-align:center}
.signals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.signal-card{background:var(--cream);border-radius:14px;overflow:hidden;border:1px solid var(--border);transition:transform .25s,box-shadow .25s}
.signal-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(58,53,48,.07)}
.signal-photo{width:100%;aspect-ratio:16/9;background:var(--cream2);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.signal-photo img{width:100%;height:100%;object-fit:cover;display:block}
figure.signal-photo{margin:0}
.signal-body{padding:1.5rem}
.signal-age{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.625rem}
.signal-title{font-family:var(--serif);font-size:19px;font-weight:400;color:var(--text);margin-bottom:.5rem;line-height:1.2}
.signal-desc{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.65}
/* Process en 2 columnas (grid + aside) */
.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.process-aside{display:flex;flex-direction:column;gap:1.25rem}
@media(max-width:1024px){
  .whatis-grid,.process-grid,.disorders-intro{grid-template-columns:1fr;gap:3rem}
  .disorders-grid,.signals-grid{grid-template-columns:repeat(2,1fr)}
  .hero-info-cards{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .disorders-grid,.signals-grid{grid-template-columns:1fr}
}

/* ============ HUB TERAPIAS INTEGRATIVAS (secciones nuevas, genéricas) ============ */
/* Evidence cards (whatis) — escopadas bajo .evidence-cards para no pisar la evidence-strip de subservicios */
.evidence-cards{display:flex;flex-direction:column;gap:1rem}
.evidence-cards .evidence-card{background:var(--cream2);border-radius:14px;padding:1.75rem;border:1px solid var(--border);display:flex;gap:1.25rem;align-items:flex-start}
.evidence-cards .evidence-badge{background:var(--sage-lt);color:var(--sage-dk);border-radius:8px;padding:.5rem .75rem;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.5px;flex-shrink:0;text-align:center;line-height:1.3;border:0}
.evidence-cards .evidence-badge::before{content:none}
.evidence-cards .evidence-text{font-family:var(--sans)}
.evidence-cards .evidence-text h4{font-family:var(--serif);font-size:17px;font-weight:400;color:var(--text);margin-bottom:.25rem}
.evidence-cards .evidence-text p{font-family:var(--sans);font-size:12.5px;color:var(--text-lt);line-height:1.6;margin:0}
/* Técnicas — cards grandes con foto */
.techniques-section{background:var(--cream)}
.techniques-intro{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:4rem}
.techniques-list{display:flex;flex-direction:column;gap:1.5rem}
.technique-card{background:var(--white);border-radius:20px;overflow:hidden;border:1px solid var(--border);display:grid;grid-template-columns:280px 1fr;transition:box-shadow .3s}
.technique-card:hover{box-shadow:0 16px 48px rgba(58,53,48,.08)}
.technique-photo{background:var(--cream2);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:240px}
.technique-photo img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}
figure.technique-photo{margin:0}
.technique-photo-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--beige);padding:2rem}
.technique-photo-placeholder svg{opacity:.4}
.technique-photo-placeholder span{font-family:var(--sans);font-size:9px;letter-spacing:2px;text-transform:uppercase;opacity:.6;text-align:center}
.technique-body{padding:2.5rem;display:flex;flex-direction:column;justify-content:space-between}
.technique-header{margin-bottom:1.25rem}
.technique-tag{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.75rem;display:flex;align-items:center;gap:8px}
.technique-tag::before{content:'';width:16px;height:1px;background:var(--sage-dk)}
.technique-title{font-family:var(--serif);font-size:28px;font-weight:400;color:var(--text);margin-bottom:.75rem;line-height:1.15}
.technique-desc{font-family:var(--sans);font-size:14px;color:var(--text-lt);line-height:1.75}
.technique-details{margin-top:1.5rem}
.technique-for{margin-bottom:1rem}
.technique-for-label{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--text-lt);margin-bottom:.5rem}
.technique-tags{display:flex;flex-wrap:wrap;gap:6px}
.technique-tag-pill{background:var(--cream2);border-radius:20px;padding:4px 12px;font-family:var(--sans);font-size:11.5px;color:var(--text-lt)}
.technique-evidence{background:var(--sage-lt);border-radius:10px;padding:.875rem 1rem;margin-top:1rem;display:flex;align-items:flex-start;gap:.75rem}
.evidence-icon{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:1px;color:var(--sage-dk);flex-shrink:0;padding-top:1px}
.evidence-txt{font-family:var(--sans);font-size:12px;color:var(--sage-dk);line-height:1.5}
.technique-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:12px;font-weight:500;color:var(--sage-dk);margin-top:1.5rem;transition:gap .2s;text-decoration:none}
.technique-link:hover{gap:10px}
/* Para quién (forwhom, fondo oscuro) */
.forwhom-section{background:var(--text)}
.forwhom-section .section-label{color:rgba(168,189,184,.8)}
.forwhom-section .section-label::before{background:var(--sage)}
.forwhom-section .section-title{color:var(--white)}
.forwhom-section .section-lead{color:rgba(245,240,235,.6)}
.forwhom-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.08);border-radius:16px;overflow:hidden;margin-top:3.5rem}
.forwhom-card{background:var(--text);padding:2.25rem 2rem;transition:background .2s}
.forwhom-card:hover{background:rgba(255,255,255,.04)}
.forwhom-photo{width:100%;aspect-ratio:4/3;background:rgba(255,255,255,.06);border-radius:10px;margin-bottom:1.5rem;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}
.forwhom-photo img{width:100%;height:100%;object-fit:cover;display:block}
figure.forwhom-photo{margin:0 0 1.5rem}
.forwhom-photo-placeholder{display:flex;flex-direction:column;align-items:center;gap:6px;color:rgba(255,255,255,.2)}
.forwhom-photo-placeholder svg{opacity:.6}
.forwhom-photo-placeholder span{font-family:var(--sans);font-size:9px;letter-spacing:2px;text-transform:uppercase;opacity:.5}
.forwhom-title{font-family:var(--serif);font-size:19px;font-weight:400;color:var(--white);margin-bottom:.625rem;line-height:1.25}
.forwhom-desc{font-family:var(--sans);font-size:13px;color:rgba(245,240,235,.55);line-height:1.65;margin-bottom:1rem}
.forwhom-tags{display:flex;flex-direction:column;gap:4px}
.forwhom-tag{font-family:var(--sans);font-size:11px;color:var(--sage);display:flex;align-items:center;gap:6px}
.forwhom-tag::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--sage);flex-shrink:0}
/* Integración con psicología */
.integration-section{background:var(--cream2)}
.integration-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.integration-visual{display:flex;flex-direction:column;gap:1rem}
.integration-card{background:var(--white);border-radius:14px;padding:1.75rem;border:1px solid var(--border);transition:transform .2s,box-shadow .2s}
.integration-card:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(58,53,48,.06)}
.integration-card-label{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.625rem}
.integration-card-title{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--text);margin-bottom:.5rem}
.integration-card-text{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.65}
@media(max-width:1024px){
  .integration-grid,.techniques-intro{grid-template-columns:1fr;gap:3rem}
  .technique-card{grid-template-columns:1fr}
  .technique-photo{min-height:200px}
  .forwhom-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .forwhom-grid{grid-template-columns:1fr}
}

/* ============ SATÉLITES LOCAL SEO (psicologo/logopeda baix, gemelos) ============ */
/* Hero area card (cobertura) */
.hero-area-card{background:var(--white);border:1px solid var(--border);border-radius:14px;padding:1.5rem}
.hero-area-label{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.875rem}
.munis-wrap{display:flex;flex-wrap:wrap;gap:6px}
.muni-pill{background:var(--sage-lt);color:var(--sage-dk);border-radius:20px;padding:4px 12px;font-family:var(--sans);font-size:12px;font-weight:400}
/* Intro 2col (texto + foto) */
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.intro-text p{font-family:var(--sans);font-size:15px;color:var(--text-lt);line-height:1.85;margin-bottom:1.25rem}
.intro-text p strong{color:var(--text);font-weight:500}
.intro-photo{border-radius:20px;overflow:hidden;background:var(--cream2);border:1px solid var(--border);aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.intro-photo img{width:100%;height:100%;object-fit:cover;display:block}
figure.intro-photo{margin:0}
/* Servicios grid */
.servicios-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.servicio-card{background:var(--white);border-radius:16px;padding:2rem;border:1px solid var(--border);transition:transform .22s,box-shadow .22s}
.servicio-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px rgba(58,53,48,.07)}
.servicio-num{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--beige);margin-bottom:.875rem}
.servicio-title{font-family:var(--serif);font-size:21px;font-weight:400;color:var(--text);margin-bottom:.625rem;line-height:1.2}
.servicio-desc{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.65;margin-bottom:1rem}
.servicio-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:11px;font-weight:500;color:var(--sage-dk);transition:gap .2s;text-decoration:none}
.servicio-link:hover{gap:10px}
/* Por qué (oscuro) */
.porq-section{background:var(--text)}
.porq-section .section-label{color:rgba(168,189,184,.8)}.porq-section .section-label::before{background:var(--sage)}
.porq-section .section-title{color:var(--white)}
.porq-section .section-lead{color:rgba(245,240,235,.6)}
.porq-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.08);border-radius:16px;overflow:hidden;margin-top:3rem}
.porq-card{background:var(--text);padding:2.25rem;transition:background .2s}.porq-card:hover{background:rgba(255,255,255,.04)}
.porq-icon{width:44px;height:44px;border-radius:12px;background:rgba(168,189,184,.15);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}
.porq-title{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--white);margin-bottom:.625rem;line-height:1.25}
.porq-desc{font-family:var(--sans);font-size:13.5px;color:rgba(245,240,235,.55);line-height:1.7}
/* Zona de cobertura (mapa municipios) */
.zona-section{background:var(--cream2)}
.zona-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.zona-text p{font-family:var(--sans);font-size:15px;color:var(--text-lt);line-height:1.85;margin-bottom:1.25rem}
.zona-text p strong{color:var(--text);font-weight:500}
.zona-munis{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1.5rem}
.zona-muni{background:var(--white);border-radius:12px;padding:1rem 1.25rem;border:1px solid var(--border);display:flex;align-items:center;gap:.75rem}
.zona-muni-dot{width:8px;height:8px;border-radius:50%;background:var(--sage-dk);flex-shrink:0}
.zona-muni-name{font-family:var(--serif);font-size:16px;font-weight:400;color:var(--text)}
.zona-muni-dist{font-family:var(--sans);font-size:11px;color:var(--text-lt);margin-top:1px}
.zona-online{background:var(--text);border-radius:16px;padding:2rem;margin-top:1rem}
.zona-online h4{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--white);margin-bottom:.5rem}
.zona-online p{font-family:var(--sans);font-size:13px;color:rgba(245,240,235,.6);line-height:1.65}
.zona-online .tag{display:inline-flex;align-items:center;gap:5px;background:rgba(168,189,184,.2);color:var(--sage);border-radius:20px;padding:4px 12px;font-family:var(--sans);font-size:11px;font-weight:500;margin-top:.75rem}
.zona-map{border-radius:20px;overflow:hidden;background:var(--cream);border:1px solid var(--border);aspect-ratio:1/1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:var(--beige)}
.zona-map svg{opacity:.4}
.zona-map span{font-family:var(--sans);font-size:10px;letter-spacing:2px;text-transform:uppercase;opacity:.6}
@media(max-width:1024px){
  .intro-grid,.zona-grid{grid-template-columns:1fr;gap:3rem}
  .servicios-grid,.porq-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .servicios-grid,.porq-grid,.zona-munis{grid-template-columns:1fr}
}

/* ═══ NUESTRO MÉTODO (ID 11) — secciones nuevas genéricas ═══ */
/* Hero lead + diagrama de círculos */
.hero-lead{font-family:var(--sans);font-size:16px;font-weight:300;color:var(--text-lt);line-height:1.8;margin-bottom:2.5rem}
.hero-lead strong{color:var(--text);font-weight:500}
.hero-visual{display:flex;align-items:center;justify-content:center;position:relative}
.hero-diagram{position:relative;width:380px;height:380px}
.diagram-circle{position:absolute;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;transition:transform .3s}
.diagram-circle:hover{transform:scale(1.04)}
.diagram-circle.c1{width:200px;height:200px;background:var(--cream2);border:1px solid var(--border);top:0;left:0}
.diagram-circle.c2{width:200px;height:200px;background:var(--sage-lt);border:1px solid var(--sage);top:0;right:0}
.diagram-circle.c3{width:200px;height:200px;background:#EDE0D4;border:1px solid var(--beige);bottom:0;left:50%;transform:translateX(-50%)}
.diagram-circle.c3:hover{transform:translateX(-50%) scale(1.04)}
.diagram-center{position:absolute;width:80px;height:80px;border-radius:50%;background:var(--white);border:2px solid var(--border);top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;z-index:2;box-shadow:0 4px 24px rgba(58,53,48,.1)}
.diagram-label{font-family:var(--serif);font-size:15px;font-weight:400;color:var(--text);line-height:1.3;padding:1.5rem}
.diagram-label em{font-style:normal;font-size:11px;font-family:var(--sans);color:var(--text-lt);letter-spacing:.5px;display:block;margin-top:4px}
.diagram-center-label{font-family:var(--serif);font-size:13px;font-weight:400;color:var(--sage-dk);text-align:center;line-height:1.2;padding:.5rem}
/* Pilares */
.pillars-section{background:var(--white)}
.pillars-intro{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:5rem}
.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.pillar-card{border-radius:20px;padding:2.75rem;border:1px solid var(--border);position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}
.pillar-card:hover{transform:translateY(-5px);box-shadow:0 20px 60px rgba(58,53,48,.08)}
.pillar-card.p1{background:var(--cream)}
.pillar-card.p2{background:var(--sage-lt)}
.pillar-card.p3{background:var(--cream2)}
.pillar-num{font-family:var(--serif);font-size:60px;font-weight:300;line-height:1;color:var(--border);margin-bottom:1.5rem;display:block}
.pillar-card.p2 .pillar-num{color:rgba(168,189,184,.4)}
.pillar-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;border:1px solid var(--border)}
.pillar-card.p1 .pillar-icon{background:var(--white)}
.pillar-card.p2 .pillar-icon{background:rgba(255,255,255,.5);border-color:var(--sage)}
.pillar-card.p3 .pillar-icon{background:var(--white)}
.pillar-title{font-family:var(--serif);font-size:26px;font-weight:400;color:var(--text);margin-bottom:.875rem;line-height:1.2}
.pillar-desc{font-family:var(--sans);font-size:14px;color:var(--text-lt);line-height:1.75;margin-bottom:1.5rem}
.pillar-points{display:flex;flex-direction:column;gap:6px}
.pillar-point{font-family:var(--sans);font-size:12.5px;color:var(--text-lt);display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-bottom:1px solid var(--border)}
.pillar-point:last-child{border:none}
.pillar-point::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--sage-dk);flex-shrink:0;margin-top:6px}
/* Lo que somos / no somos (fondo oscuro) */
.nosomos-section{background:var(--text)}
.nosomos-section .section-label{color:rgba(168,189,184,.8)}
.nosomos-section .section-label::before{background:var(--sage)}
.nosomos-section .section-title{color:var(--white)}
.nosomos-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;margin-top:4rem}
.nosomos-col h3{font-family:var(--serif);font-size:22px;font-weight:400;margin-bottom:1.5rem;line-height:1.2}
.nosomos-col.no h3{color:rgba(245,240,235,.4)}
.nosomos-col.si h3{color:var(--white)}
.nosomos-items{display:flex;flex-direction:column;gap:.75rem}
.nosomos-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;border-radius:10px;font-family:var(--sans);font-size:13.5px;line-height:1.5}
.nosomos-col.no .nosomos-item{background:rgba(255,255,255,.04);color:rgba(245,240,235,.45)}
.nosomos-col.si .nosomos-item{background:rgba(168,189,184,.12);color:rgba(245,240,235,.85)}
.nosomos-item-icon{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.nosomos-col.no .nosomos-item-icon{background:rgba(255,255,255,.08)}
.nosomos-col.si .nosomos-item-icon{background:rgba(168,189,184,.25)}
/* Técnicas */
.tecnicas-section{background:var(--cream)}
.tecnicas-intro{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:4rem}
.tecnicas-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}
.tecnica-card{background:var(--white);border-radius:16px;padding:1.75rem 1.5rem;border:1px solid var(--border);transition:transform .22s,box-shadow .22s,border-color .22s;cursor:default}
.tecnica-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(58,53,48,.07);border-color:var(--sage)}
.tecnica-icon{width:44px;height:44px;border-radius:12px;background:var(--cream2);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;transition:background .22s}
.tecnica-card:hover .tecnica-icon{background:var(--sage-lt)}
.tecnica-name{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--text);margin-bottom:.375rem;line-height:1.2}
.tecnica-desc{font-family:var(--sans);font-size:12px;color:var(--text-lt);line-height:1.55;margin-bottom:1rem}
.tecnica-aval{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--sage-dk);display:flex;align-items:center;gap:5px}
.tecnica-aval::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--sage-dk)}
.tecnica-link{display:inline-flex;align-items:center;gap:5px;margin-top:.875rem;font-family:var(--sans);font-size:11px;font-weight:500;color:var(--sage-dk);transition:gap .2s}
.tecnica-link:hover{gap:9px}
/* Proceso (clases NUEVAS en español, distintas de process-* de los hubs) */
.proceso-section{background:var(--cream2)}
.proceso-inner{max-width:900px;margin:0 auto;text-align:center}
.proceso-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:4rem;position:relative}
.proceso-steps::before{content:'';position:absolute;top:24px;left:calc(12.5% + 24px);right:calc(12.5% + 24px);height:1px;background:var(--border);z-index:0}
.proceso-step{display:flex;flex-direction:column;align-items:center;gap:1.25rem;position:relative;z-index:1;padding:0 1rem}
.proceso-step-num{width:48px;height:48px;border-radius:50%;background:var(--white);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:20px;font-weight:300;color:var(--text);transition:background .3s,border-color .3s,color .3s}
.proceso-step:hover .proceso-step-num{background:var(--sage);border-color:var(--sage);color:var(--white)}
.proceso-step-title{font-family:var(--serif);font-size:17px;font-weight:400;color:var(--text);line-height:1.25;text-align:center}
.proceso-step-desc{font-family:var(--sans);font-size:12.5px;color:var(--text-lt);line-height:1.6;text-align:center}
/* Evidencia */
.evidencia-section{background:var(--white)}
.evidencia-intro{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:4rem}
.evidencia-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}
.evidencia-card{border-radius:16px;padding:2.25rem;border:1px solid var(--border);display:flex;gap:1.5rem;align-items:flex-start;transition:transform .2s,box-shadow .2s}
.evidencia-card:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(58,53,48,.06)}
.evidencia-card.highlight{background:var(--sage-lt);border-color:var(--sage)}
.evidencia-card:not(.highlight){background:var(--cream)}
.evidencia-badge{flex-shrink:0;background:var(--white);border-radius:10px;padding:.75rem 1rem;text-align:center;border:1px solid var(--border);min-width:68px}
.evidencia-badge-org{font-family:var(--sans);font-size:13px;font-weight:500;color:var(--sage-dk);letter-spacing:.5px;display:block}
.evidencia-badge-year{font-family:var(--sans);font-size:10px;color:var(--text-lt);letter-spacing:1px}
.evidencia-content h4{font-family:var(--serif);font-size:19px;font-weight:400;color:var(--text);margin-bottom:.5rem;line-height:1.25}
.evidencia-content p{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.65}
/* Botones variante light (fondo oscuro) */
.btn-primary-light{display:inline-flex;align-items:center;gap:8px;background:var(--white);color:var(--text);padding:.875rem 2rem;border-radius:40px;font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:.5px;transition:background .2s,transform .15s}
.btn-primary-light:hover{background:var(--sage-lt);transform:translateY(-2px)}
.btn-primary-light svg{transition:transform .2s}
.btn-primary-light:hover svg{transform:translateX(3px)}
.btn-secondary-light{display:inline-flex;align-items:center;gap:6px;color:rgba(245,240,235,.7);font-family:var(--sans);font-size:13px;padding:.875rem 1.5rem;border:1px solid rgba(255,255,255,.2);border-radius:40px;transition:border-color .2s,color .2s}
.btn-secondary-light:hover{border-color:rgba(255,255,255,.5);color:var(--white)}
@media(max-width:1024px){
  .hero-visual{display:none}
  .pillars-intro,.tecnicas-intro,.evidencia-intro{grid-template-columns:1fr;gap:2rem}
  .pillars-grid{grid-template-columns:1fr}
  .tecnicas-grid{grid-template-columns:repeat(3,1fr)}
  .nosomos-grid{grid-template-columns:1fr;gap:2rem}
  .proceso-steps{grid-template-columns:repeat(2,1fr);gap:2rem}
  .proceso-steps::before{display:none}
  .evidencia-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .tecnicas-grid{grid-template-columns:1fr 1fr}
  .proceso-steps{grid-template-columns:1fr}
}

/* ═══ CONTACTO (ID 14) — secciones nuevas + glue CF7 ═══ */
/* Hero 1 columna (override del grid 2-col del kit; contacto + FAQ central) */
.contact-hero .hero-inner,.faq-hero .hero-inner,.precios-hero .hero-inner{display:block;grid-template-columns:none;max-width:1200px;margin:0 auto;padding:3rem 0 5rem}
.contact-hero .hero-lead,.faq-hero .hero-lead,.precios-hero .hero-lead{max-width:580px;margin-bottom:0}
/* Trust strip */
.trust-strip{background:var(--text);padding:1.5rem 2rem}
.trust-strip-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:4rem;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:.875rem}
.trust-item-icon{width:36px;height:36px;border-radius:9px;background:rgba(168,189,184,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.trust-item-text{font-family:var(--sans);font-size:13px;color:rgba(245,240,235,.7)}
.trust-item-text strong{color:var(--white);font-weight:500;display:block}
/* Grid principal */
.contact-section{padding:0 2rem 6rem}
.contact-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;align-items:start}
/* Formulario (form-card + tags CF7 con clases de Lydia) */
.form-card{background:var(--white);border-radius:20px;padding:2.75rem;border:1px solid var(--border)}
.form-title{font-family:var(--serif);font-size:28px;font-weight:400;color:var(--text);margin-bottom:.5rem}
.form-subtitle{font-family:var(--sans);font-size:13px;color:var(--text-lt);margin-bottom:2rem;line-height:1.5}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}
.form-group.full{grid-column:1/-1}
.form-label{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-lt)}
.form-label span,.req{color:var(--sage-dk)}
.form-input,.form-select,.form-textarea{display:block;width:100%;padding:.875rem 1.125rem;border:1px solid var(--border);border-radius:10px;font-family:var(--sans);font-size:14px;color:var(--text);background:var(--cream);transition:border-color .2s,box-shadow .2s;outline:none;appearance:none;-webkit-appearance:none}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--sage);box-shadow:0 0 0 3px rgba(168,189,184,.15);background:var(--white)}
.form-input::placeholder,.form-textarea::placeholder{color:var(--beige)}
.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236B6560' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.125rem center;padding-right:2.5rem;cursor:pointer}
/* SELECT legible (NO beige): oscuro con opción elegida, text-lt (#6B6560) cuando vacío "Selecciona…". Solo selects, NO toca el ::placeholder beige de los inputs. */
.form-select{color:var(--text)}
.form-select option{color:var(--text)}
/* vacío "Selecciona…" en text-lt. CF7 no pone `required` nativo (usa aria-required) → :invalid no dispara
   con el select cerrado, por eso :has(option[value=""]:checked) hace el trabajo real del estado cerrado. */
.form-select:invalid,
.form-select:has(option[value=""]:checked),
.form-select option[value=""]{color:var(--text-lt)}
/* El <select> de CF7 ya trae altura propia (height:var(--theme-form-field-height,40px) de Blocksy).
   Sumarle el padding vertical .875rem de los inputs recorta el texto (caja de contenido ~10px).
   → padding vertical 0 + min-height = altura del input → no recorta y queda alineado con los inputs.
   Los inputs/textarea conservan su .875rem 1.125rem (no se tocan). */
select.form-select,
.form-card select.wpcf7-form-control.form-select{
  padding-top:0;padding-bottom:0;padding-left:1.125rem;padding-right:2.5rem;
  min-height:var(--theme-form-field-height,40px);
  line-height:normal;
}
.form-textarea{resize:vertical;min-height:120px;line-height:1.6}
.form-check-group{display:flex;flex-direction:column;gap:.625rem;margin-bottom:1.25rem}
.form-privacy{font-family:var(--sans);font-size:12px;color:var(--text-lt);line-height:1.6;padding:1rem 1.25rem;background:var(--cream);border-radius:8px;margin-bottom:1.5rem}
.form-privacy a{color:var(--sage-dk)}
.btn-submit{width:100%;padding:1rem 2rem;background:var(--text);color:var(--white);border:none;border-radius:40px;cursor:pointer;font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .2s,transform .15s,box-shadow .2s;box-shadow:0 4px 20px rgba(58,53,48,.15)}
.btn-submit:hover{background:var(--sage-dk);transform:translateY(-2px);box-shadow:0 8px 30px rgba(58,53,48,.2)}
.form-note{font-family:var(--sans);font-size:11px;color:var(--beige);text-align:center;margin-top:1rem;letter-spacing:.3px}
/* Glue CF7: wrap de controles a ancho completo + acceptance maquetado como Lydia .form-check */
.wpcf7-form-control-wrap{display:block;width:100%}
.form-check-group .wpcf7-acceptance .wpcf7-list-item{margin:0;display:block}
.form-check-group .wpcf7-acceptance label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;margin:0;font-weight:400}
.form-check-group input[type="checkbox"]{width:18px;height:18px;border:1.5px solid var(--border);border-radius:4px;appearance:none;-webkit-appearance:none;flex-shrink:0;margin-top:1px;cursor:pointer;background:var(--cream);transition:background .15s,border-color .15s}
.form-check-group input[type="checkbox"]:checked{background:var(--sage-dk);border-color:var(--sage-dk);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='8' fill='none'%3E%3Cpath d='M1 4l3 3 5-6' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}
.form-check-group .wpcf7-list-item-label{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.5}
.form-check-group .wpcf7-list-item-label a{color:var(--sage-dk);text-decoration:underline;text-underline-offset:3px}
/* Respuestas/validación CF7 */
.wpcf7-response-output{border-radius:10px;padding:1rem 1.25rem;margin:1.5rem 0 0;font-family:var(--sans);font-size:13px;line-height:1.5}
.wpcf7 form.sent .wpcf7-response-output{border:1px solid var(--sage);background:var(--sage-lt);color:var(--text)}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output{border:1px solid var(--beige);background:var(--cream2);color:var(--text)}
.wpcf7-not-valid-tip{color:#b3261e;font-family:var(--sans);font-size:11px;margin-top:5px;display:block}
.form-input.wpcf7-not-valid,.form-select.wpcf7-not-valid,.form-textarea.wpcf7-not-valid{border-color:#d4a3a0}
.wpcf7-spinner{margin:0 0 0 8px}
/* Sidebar */
.contact-sidebar{display:flex;flex-direction:column;gap:1.25rem}
.info-card{background:var(--white);border-radius:16px;padding:2rem;border:1px solid var(--border)}
.info-card-label{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:1.25rem;display:flex;align-items:center;gap:8px}
.info-card-label::before{content:'';width:16px;height:1px;background:var(--sage-dk)}
.contact-items{display:flex;flex-direction:column;gap:1rem}
.contact-item{display:flex;align-items:flex-start;gap:1rem}
.contact-item-icon{width:38px;height:38px;border-radius:10px;background:var(--sage-lt);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-item-content{flex:1}
.contact-item-label{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--text-lt);margin-bottom:2px}
.contact-item-value{font-family:var(--serif);font-size:17px;font-weight:400;color:var(--text);line-height:1.3}
.contact-item-sub{font-family:var(--sans);font-size:12px;color:var(--text-lt);margin-top:2px}
/* Horarios */
.hours-grid{display:flex;flex-direction:column;gap:.5rem}
.hours-row{display:flex;justify-content:space-between;align-items:center;padding:.625rem 0;border-bottom:1px solid var(--border);font-family:var(--sans);font-size:13px}
.hours-row:last-child{border:none}
.hours-day{color:var(--text-lt)}
.hours-time{color:var(--text);font-weight:500}
.hours-closed{color:var(--beige)}
.hours-badge{display:inline-flex;align-items:center;gap:5px;background:var(--sage-lt);color:var(--sage-dk);border-radius:12px;padding:2px 10px;font-size:11px;font-weight:500;margin-top:.875rem}
.hours-badge::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--sage-dk)}
/* Mapa (placeholder decorativo) */
.map-placeholder{width:100%;aspect-ratio:16/10;border-radius:14px;background:var(--cream2);border:1px solid var(--border);overflow:hidden;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:var(--beige)}
.map-placeholder svg{opacity:.5}
.map-placeholder span{font-family:var(--sans);font-size:10px;letter-spacing:2px;text-transform:uppercase;opacity:.7}
.map-address{position:absolute;bottom:0;left:0;right:0;background:var(--white);border-top:1px solid var(--border);padding:.875rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.map-address-text{font-family:var(--sans);font-size:13px;color:var(--text-lt)}
.map-address-text strong{display:block;color:var(--text);font-weight:500;margin-bottom:1px}
.map-cta{font-family:var(--sans);font-size:11px;font-weight:500;color:var(--sage-dk);letter-spacing:.5px;white-space:nowrap;display:flex;align-items:center;gap:4px;transition:gap .2s}
.map-cta:hover{gap:8px}
/* Cómo llegar */
.howtoget-items{display:flex;flex-direction:column;gap:.875rem}
.howtoget-item{display:flex;align-items:flex-start;gap:.875rem}
.howtoget-icon{width:34px;height:34px;border-radius:8px;background:var(--cream2);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.howtoget-text{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.5}
.howtoget-text strong{color:var(--text);font-weight:500;display:block;margin-bottom:1px}
/* Modalidades */
.modality-badges{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.modality-badge{background:var(--cream2);border-radius:12px;padding:1.125rem;border:1px solid var(--border)}
.modality-badge-label{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.375rem}
.modality-badge-title{font-family:var(--serif);font-size:16px;font-weight:400;color:var(--text);margin-bottom:.25rem}
.modality-badge-sub{font-family:var(--sans);font-size:11px;color:var(--text-lt)}
/* Reassurance */
.reassurance-section{background:var(--cream2);padding:5rem 2rem}
.reassurance-inner{max-width:1200px;margin:0 auto}
.reassurance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.reassurance-card{background:var(--white);border-radius:14px;padding:2rem;border:1px solid var(--border);transition:transform .2s,box-shadow .2s}
.reassurance-card:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(58,53,48,.06)}
.reassurance-num{font-family:var(--serif);font-size:40px;font-weight:300;color:var(--beige);line-height:1;margin-bottom:.875rem}
.reassurance-title{font-family:var(--serif);font-size:19px;font-weight:400;color:var(--text);margin-bottom:.625rem;line-height:1.2}
.reassurance-text{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.7}
@media(max-width:1024px){
  .contact-inner{grid-template-columns:1fr;gap:2.5rem}
  .reassurance-grid{grid-template-columns:1fr 1fr}
  .trust-strip-inner{gap:2rem}
}
@media(max-width:640px){
  .form-row{grid-template-columns:1fr}
  .reassurance-grid,.modality-badges{grid-template-columns:1fr}
  .trust-strip-inner{flex-direction:column;gap:1.25rem;align-items:flex-start}
}

/* ═══ HOME / portada (ID 8) — secciones nuevas. Hero scopeado bajo .home-hero (choca con el kit). ═══ */
/* Hero full-viewport 2-col (override del .hero y .hero-right/.hero-visual del kit, solo en home) */
.hero.home-hero{min-height:100vh;padding:68px 0 0;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden}
.hero-left{display:flex;flex-direction:column;justify-content:center;padding:6rem 3rem 6rem 6rem;position:relative;z-index:2}
.home-hero .hero-title{font-size:clamp(42px,5.5vw,72px)}
.home-hero .hero-desc{max-width:460px}
.hero-trust{display:flex;align-items:center;gap:1.5rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border)}
.home-hero .trust-item{display:flex;flex-direction:column;gap:2px}
.trust-n{font-family:var(--serif);font-size:28px;font-weight:300;color:var(--text);line-height:1}
.trust-n em{font-size:16px;color:var(--sage-dk);font-style:normal}
.trust-l{font-family:var(--sans);font-size:11px;color:var(--text-lt);letter-spacing:.3px}
.trust-sep{width:1px;height:40px;background:var(--border)}
.home-hero .hero-right{position:relative;background:var(--cream2);overflow:hidden}
.home-hero .hero-visual{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0;z-index:0}
.home-hero .hero-visual-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.home-hero .hero-symbol-large{position:relative;z-index:1}
.hero-symbol-large{opacity:.18}
.hero-cards{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:3rem}
.hero-card-stack{display:flex;flex-direction:column;gap:12px;width:100%}
.hero-card{background:rgba(255,255,255,.75);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.9);border-radius:14px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:transform .2s,box-shadow .2s}
.hero-card:hover{transform:translateX(-4px);box-shadow:0 8px 32px rgba(58,53,48,.08)}
.hero-card-icon{width:40px;height:40px;border-radius:10px;background:var(--cream);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.hero-card-text .label{font-family:var(--sans);font-size:12px;font-weight:500;color:var(--text);line-height:1.2}
.hero-card-text .sub{font-family:var(--sans);font-size:11px;color:var(--text-lt);margin-top:2px}
.hero-card-arrow{margin-left:auto;color:var(--beige);flex-shrink:0;transition:color .2s,transform .2s}
.hero-card:hover .hero-card-arrow{color:var(--sage-dk);transform:translateX(3px)}
/* Problem strip */
.problem-strip{background:var(--text);padding:1.5rem 0;overflow:hidden}
.problem-strip-inner{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;gap:3rem;flex-wrap:wrap;justify-content:center}
.problem-item{display:flex;align-items:center;gap:.75rem;font-family:var(--serif);font-size:17px;font-weight:300;color:rgba(245,240,235,.85);white-space:nowrap;font-style:italic}
.problem-dot{width:4px;height:4px;border-radius:50%;background:var(--sage);flex-shrink:0}
/* Servicios */
.services-section{background:var(--white)}
.services-header{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:4rem}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.service-card{background:var(--cream);border-radius:16px;padding:2.25rem;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s;cursor:default}
.service-card::before{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--beige),var(--sage));transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.service-card:hover{transform:translateY(-6px);box-shadow:0 20px 60px rgba(58,53,48,.08)}
.service-card:hover::before{transform:scaleX(1)}
.service-num{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:3px;color:var(--beige);margin-bottom:1.25rem;display:flex;justify-content:space-between;align-items:center}
.service-symbol{width:44px;height:44px;border-radius:10px;background:var(--white);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}
.service-title{font-family:var(--serif);font-size:24px;font-weight:400;color:var(--text);margin-bottom:.875rem;line-height:1.2}
.service-desc{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.7;margin-bottom:1.5rem}
.service-subs{display:flex;flex-direction:column;gap:4px}
.service-sub{font-family:var(--sans);font-size:12px;color:var(--text-lt);padding:5px 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px}
.service-sub:last-child{border:none}
.service-sub::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--sage);flex-shrink:0}
.service-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--sans);font-size:12px;font-weight:500;color:var(--sage-dk);margin-top:1.5rem;letter-spacing:.3px;transition:gap .2s}
.service-link:hover{gap:10px}
/* Cómo funciona */
.how-section{background:var(--cream)}
.how-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.how-steps{display:flex;flex-direction:column;gap:0}
.how-step{display:grid;grid-template-columns:48px 1fr;gap:1.5rem;padding:2rem 0;border-bottom:1px solid var(--border);transition:background .2s}
.how-step:first-child{padding-top:0}
.how-step:last-child{border:none}
.how-step-num{width:48px;height:48px;border-radius:12px;background:var(--cream2);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:20px;font-weight:300;color:var(--text);flex-shrink:0;transition:background .3s,color .3s}
.how-step:hover .how-step-num{background:var(--sage);color:var(--white)}
.how-step-content h3{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--text);margin-bottom:.5rem}
.how-step-content p{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.7}
.how-visual{background:var(--cream2);border-radius:24px;padding:3rem;display:flex;flex-direction:column;gap:1.5rem}
.how-visual-card{background:var(--white);border-radius:14px;padding:1.75rem;border:1px solid var(--border)}
.how-visual-card h4{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--text);margin-bottom:.5rem}
.how-visual-card p{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.6}
.how-visual-badge{display:inline-flex;align-items:center;gap:6px;background:var(--sage-lt);color:var(--sage-dk);border-radius:20px;padding:5px 12px;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.5px;margin-top:.75rem}
.how-visual-badge::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--sage-dk)}
/* Situaciones / triggers */
.triggers-section{background:var(--cream2)}
.triggers-header{text-align:center;margin-bottom:4rem}
.triggers-header .section-label{justify-content:center}
.triggers-header .section-lead{margin:0 auto;text-align:center}
.triggers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.trigger-card{background:var(--white);border-radius:14px;padding:2rem 1.75rem;border:1px solid var(--border);position:relative;transition:transform .25s,box-shadow .25s}
.trigger-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(58,53,48,.07)}
.trigger-emoji{font-size:28px;margin-bottom:1rem;display:block;line-height:1}
.trigger-title{font-family:var(--serif);font-size:18px;font-weight:400;color:var(--text);margin-bottom:.625rem;line-height:1.3}
.trigger-desc{font-family:var(--sans);font-size:13px;color:var(--text-lt);line-height:1.65}
.trigger-service{display:inline-block;margin-top:1rem;font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--sage-dk)}
/* Por qué Eirene (oscuro) */
.diff-section{background:var(--text)}
.diff-section .section-label{color:rgba(168,189,184,.8)}
.diff-section .section-label::before{background:var(--sage)}
.diff-section .section-title{color:var(--white)}
.diff-section .section-lead{color:rgba(245,240,235,.6)}
.diff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.08);border-radius:16px;overflow:hidden;margin-top:4rem}
.diff-card{background:var(--text);padding:2.5rem;transition:background .3s}
.diff-card:hover{background:rgba(255,255,255,.04)}
.diff-icon{width:48px;height:48px;border-radius:12px;background:rgba(168,189,184,.15);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}
.diff-title{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--white);margin-bottom:.75rem;line-height:1.25}
.diff-desc{font-family:var(--sans);font-size:13.5px;color:rgba(245,240,235,.6);line-height:1.7}
/* Modalidades */
.modality-section{background:var(--white)}
.modality-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:3rem}
.modality-card{border-radius:20px;padding:3rem;position:relative;overflow:hidden}
.modality-card.presencial{background:var(--cream2);border:1px solid var(--border)}
.modality-card.online{background:var(--text)}
.modality-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:20px;margin-bottom:2rem;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:1px;text-transform:uppercase}
.presencial .modality-tag{background:var(--sage-lt);color:var(--sage-dk)}
.online .modality-tag{background:rgba(168,189,184,.2);color:var(--sage)}
.modality-title{font-family:var(--serif);font-size:28px;font-weight:300;line-height:1.2;margin-bottom:1rem}
.presencial .modality-title{color:var(--text)}
.online .modality-title{color:var(--white)}
.modality-desc{font-family:var(--sans);font-size:14px;line-height:1.7;margin-bottom:1.5rem}
.presencial .modality-desc{color:var(--text-lt)}
.online .modality-desc{color:rgba(245,240,235,.65)}
.modality-features{display:flex;flex-direction:column;gap:8px}
.modality-feat{display:flex;align-items:center;gap:10px;font-family:var(--sans);font-size:13px}
.presencial .modality-feat{color:var(--text-lt)}
.online .modality-feat{color:rgba(245,240,235,.7)}
.feat-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.presencial .feat-dot{background:var(--sage-dk)}
.online .feat-dot{background:var(--sage)}
/* cta-symbol (home + reutilizable) */
.cta-symbol{margin:0 auto 2.5rem}
@media(max-width:1024px){
  .hero.home-hero{grid-template-columns:1fr;min-height:auto}
  .home-hero .hero-right{display:none}
  .hero-left{padding:5rem 2rem 4rem}
  .services-header{grid-template-columns:1fr;gap:1.5rem}
  .services-grid{grid-template-columns:1fr}
  .how-grid{grid-template-columns:1fr;gap:3rem}
  .triggers-grid{grid-template-columns:repeat(2,1fr)}
  .diff-grid{grid-template-columns:1fr}
  .modality-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .triggers-grid{grid-template-columns:1fr}
  .hero-left{padding:4rem 1.25rem 3rem}
  .problem-strip-inner{gap:1.5rem;flex-direction:column}
}

/* ===========================================================================
   Eirene · Página /el-equipo/ (ID 10) — portado de Eirene_Equipo (5).html
   Convención de clases de Lydia (.eyebrow/.slabel/.slead/.hlead/.sec/.si),
   distinta del kit (.hero-eyebrow/.section-label...). El .hero del kit se
   respeta: el hero de equipo se escopa con .team-hero. h1/h2 (desnudos en
   Lydia) se escopan a sus secciones para ganar a la tipografía de Blocksy.
   =========================================================================== */
/* Etiquetas/leads/hero genéricos de Lydia (libres, reutilizables) */
.eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:1.75rem}
.eyebrow::before{content:'';width:28px;height:1px;background:var(--sage-dk)}
.hlead{font-family:var(--sans);font-size:17px;font-weight:300;color:var(--text-lt);line-height:1.8;max-width:600px}
.slabel{display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:1.25rem}
.slabel::before{content:'';width:24px;height:1px;background:var(--sage-dk)}
.slead{font-family:var(--sans);font-size:16px;font-weight:300;color:var(--text-lt);line-height:1.75;max-width:580px;margin-bottom:3rem}
.sec{padding:5rem 2rem}
.tsec .si,.csec .si{max-width:1200px;margin:0 auto}
/* Hero de equipo (escopado para no chocar con el .hero del kit) */
.hero.team-hero{padding:3rem 2rem 5rem;max-width:1200px;margin:0 auto}
.team-hero h1{font-family:var(--serif);font-size:clamp(42px,5vw,68px);font-weight:300;line-height:1.1;color:var(--text);letter-spacing:-.5px;margin-bottom:1.25rem}
.team-hero h1 em{font-style:italic;color:var(--sage-dk)}
/* h2 de las secciones de equipo */
.tsec h2,.csec h2,.ctasec h2{font-family:var(--serif);font-size:clamp(28px,3.5vw,48px);font-weight:300;line-height:1.15;color:var(--text);margin-bottom:1.25rem;letter-spacing:-.3px}
.tsec h2 em,.csec h2 em,.ctasec h2 em{font-style:italic;color:var(--sage-dk)}

/* EQUIPO (tsec) */
.tsec{background:var(--white)}
.tlist{display:flex;flex-direction:column;gap:2px;background:var(--border);border-radius:20px;overflow:hidden}
.mc{background:var(--white);display:grid;grid-template-columns:280px 1fr}
.mc:hover{background:var(--cream)}
.mp{overflow:hidden;background:var(--cream2);min-height:360px;max-height:460px;padding:0}
.mp img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .5s;border-radius:inherit}
figure.mp{margin:0}
.mc:hover .mp img{transform:scale(1.04)}
.mb{padding:2.5rem;display:flex;flex-direction:column;gap:1.25rem;border-left:1px solid var(--border)}
.mh{padding-bottom:1.25rem;border-bottom:1px solid var(--border)}
.mn{font-family:var(--serif);font-size:28px;font-weight:400;color:var(--text);line-height:1.1;margin-bottom:4px}
.mr{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:4px}
.mc2{font-family:var(--sans);font-size:12px;color:var(--text-lt)}
.mbio{font-family:var(--sans);font-size:14px;color:var(--text-lt);line-height:1.8}
.mq{font-family:var(--serif);font-size:18px;font-weight:300;color:var(--text);font-style:italic;line-height:1.5;padding-left:1.25rem;border-left:3px solid var(--sage)}
.mt{display:flex;flex-wrap:wrap;gap:6px}
.tag{background:var(--cream2);border:1px solid var(--border);border-radius:20px;padding:4px 14px;font-family:var(--sans);font-size:11.5px;color:var(--text-lt)}

/* FRANJA DE DATOS (cs) */
.cs{background:var(--text);padding:1.5rem 2rem}
.csi{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:3.5rem;flex-wrap:wrap}
.ci{display:flex;align-items:center;gap:.875rem}
.cic{width:36px;height:36px;border-radius:9px;background:rgba(168,189,184,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cil{font-family:var(--sans);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(245,240,235,.4);margin-bottom:2px}
.civ{font-family:var(--serif);font-size:17px;color:var(--white)}

/* EL ESPACIO (csec) */
.csec{background:var(--cream2)}
.cintro{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;margin-bottom:2.5rem}
.ct p{font-family:var(--sans);font-size:15px;color:var(--text-lt);line-height:1.85;margin-bottom:1.25rem}
.ct p strong{color:var(--text);font-weight:500}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}
.fact{background:var(--white);border-radius:12px;padding:1.125rem 1.25rem;border:1px solid var(--border)}
.fl{font-family:var(--sans);font-size:9px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:.375rem}
.fv{font-family:var(--serif);font-size:16px;color:var(--text)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.gi{border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:var(--cream);border:1px solid var(--border);padding:0}
.gi img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;border-radius:inherit}
figure.gi{margin:0}
.gi:hover img{transform:scale(1.04)}

/* CTA (ctasec) */
.ctasec{background:var(--text);text-align:center;padding:6rem 2rem}
.ctai{max-width:580px;margin:0 auto}
.ctasec h2{color:var(--white)}
.ctasec h2 em{color:var(--sage)}
.ctad{font-family:var(--sans);font-size:16px;font-weight:300;color:rgba(245,240,235,.6);line-height:1.75;margin-bottom:2.5rem;margin-top:1.25rem}
.acts{display:flex;align-items:center;gap:1rem;justify-content:center;flex-wrap:wrap}
.bl{display:inline-flex;align-items:center;gap:8px;background:var(--white);color:var(--text);padding:.875rem 2rem;border-radius:40px;font-family:var(--sans);font-size:13px;font-weight:500}
.bl:hover{background:var(--sage-lt);transform:translateY(-2px)}
.bo{display:inline-flex;color:rgba(245,240,235,.7);font-family:var(--sans);font-size:13px;padding:.875rem 1.5rem;border:1px solid rgba(255,255,255,.2);border-radius:40px}
.bo:hover{border-color:rgba(255,255,255,.5);color:var(--white)}

/* RESPONSIVE equipo */
@media(max-width:1024px){
  .mc{grid-template-columns:200px 1fr}
  .cintro{grid-template-columns:1fr}
  .gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .sec{padding:3.5rem 1.25rem}
  .mc{grid-template-columns:1fr}
  .mp{height:280px;min-height:unset;max-height:unset}
  .mb{padding:1.5rem}
  .gallery{grid-template-columns:1fr}
  .csi{gap:1.5rem}
}

/* ═══════════════ SOBRE EIRENE (9) ═══════════════ */
/* Hero cover (reutiliza .hero-eyebrow/.hero-lead/.section-label; escopa lo divergente) */
.hero-cover{padding:3rem 2rem 0;background:var(--cream);max-width:1200px;margin:0 auto}
.hero-cover-inner{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;padding-bottom:5rem}
.hero-cover .hero-title{font-size:clamp(44px,5.5vw,72px);line-height:1.08;margin-bottom:1.75rem}
.hero-cover .hero-right{gap:1rem;margin-top:0}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-top:2rem;border-top:1px solid var(--border)}
.hero-stat-n{font-family:var(--serif);font-size:40px;font-weight:300;color:var(--text);line-height:1;display:block}
.hero-stat-n em{font-size:22px;color:var(--sage-dk);font-style:normal}
.hero-stat-l{font-family:var(--sans);font-size:12px;color:var(--text-lt);margin-top:4px;line-height:1.4}
.hero-main-photo{width:100%;aspect-ratio:4/5;border-radius:20px;background:var(--cream2);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center}
.hero-mini-photos{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.mini-photo{aspect-ratio:4/3;border-radius:12px;background:var(--cream2);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center}
figure.hero-main-photo,figure.mini-photo{margin:0}
.hero-main-photo img,.mini-photo img{width:100%;height:100%;object-fit:cover;display:block}

/* Historia */
.history-section{background:var(--white)}
.history-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.history-text p{font-family:var(--sans);font-size:15px;color:var(--text-lt);line-height:1.85;margin-bottom:1.25rem}
.history-text p strong{color:var(--text);font-weight:500}
.history-photo-col{display:flex;flex-direction:column;gap:1rem}
.history-photo-tall{width:100%;aspect-ratio:3/4;border-radius:16px;background:var(--cream2);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center}
.history-photo-wide{width:100%;aspect-ratio:16/9;border-radius:12px;background:var(--cream2);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center}
figure.history-photo-tall,figure.history-photo-wide{margin:0}
.history-photo-tall img,.history-photo-wide img{width:100%;height:100%;object-fit:cover;display:block}

/* Manifiesto */
.manifesto-section{background:var(--text);padding:7rem 2rem}
.manifesto-inner{max-width:900px;margin:0 auto;text-align:center}
.manifesto-label{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:4px;text-transform:uppercase;color:rgba(168,189,184,.7);margin-bottom:2.5rem;display:block}
.manifesto-quote{font-family:var(--serif);font-size:clamp(28px,4vw,52px);font-weight:300;color:var(--white);line-height:1.2;letter-spacing:-.3px;margin-bottom:3rem}
.manifesto-quote em{color:var(--sage);font-style:italic}
.manifesto-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.08);border-radius:16px;overflow:hidden;margin-top:4rem}
.manifesto-pillar{background:var(--text);padding:2.5rem 2rem;text-align:left;transition:background .2s}
.manifesto-pillar:hover{background:rgba(255,255,255,.04)}
.manifesto-pillar-n{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:3px;text-transform:uppercase;color:var(--sage-dk);margin-bottom:1rem}
.manifesto-pillar-title{font-family:var(--serif);font-size:22px;font-weight:400;color:var(--white);margin-bottom:.75rem;line-height:1.2}
.manifesto-pillar-text{font-family:var(--sans);font-size:13.5px;color:rgba(245,240,235,.55);line-height:1.7}

/* Valores */
.values-section{background:var(--cream2)}
.values-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.values-list{display:flex;flex-direction:column;gap:1.25rem}
.value-item{background:var(--white);border-radius:14px;padding:2rem;border:1px solid var(--border);display:grid;grid-template-columns:48px 1fr;gap:1.5rem;align-items:flex-start;transition:transform .2s,box-shadow .2s}
.value-item:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(58,53,48,.06)}
.value-num{font-family:var(--serif);font-size:32px;font-weight:300;color:var(--beige);line-height:1;padding-top:2px}
.value-content h3{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--text);margin-bottom:.5rem}
.value-content p{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.7}
.values-photo-col{display:flex;flex-direction:column;gap:1rem}
.values-photo-main{width:100%;aspect-ratio:3/4;border-radius:20px;background:var(--cream);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center}
.values-photo-strip{width:100%;aspect-ratio:16/7;border-radius:12px;background:var(--cream);border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;justify-content:center}
figure.values-photo-main,figure.values-photo-strip{margin:0}
.values-photo-main img,.values-photo-strip img{width:100%;height:100%;object-fit:cover;display:block}

/* Equipo (teaser) */
.team-section{background:var(--white)}
.team-intro{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:4rem}
.team-teaser-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.team-teaser-card{background:var(--cream);border-radius:16px;border:1px solid var(--border);padding:1.75rem;transition:transform .25s,box-shadow .25s}
.team-teaser-card:hover{transform:translateY(-6px);box-shadow:0 20px 60px rgba(58,53,48,.1)}
.team-teaser-title{font-family:var(--serif);font-size:21px;font-weight:400;color:var(--text);margin-bottom:1rem;line-height:1.25}
.team-tags{display:flex;flex-direction:column;gap:4px}
.team-tag{font-family:var(--sans);font-size:11px;color:var(--text-lt);padding:6px 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:7px}
.team-tag:last-child{border:none}
.team-tag::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--sage);flex-shrink:0}
.team-teaser-cta{text-align:center;margin-top:3rem}

/* Espacio */
.space-section{background:var(--cream)}
.space-header{max-width:600px;margin-bottom:3.5rem}
.space-gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:auto auto;gap:1rem}
.space-photo{border-radius:14px;overflow:hidden;background:var(--cream2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;min-height:180px}
.space-photo img{width:100%;height:100%;object-fit:cover;display:block}
figure.space-photo{margin:0}
.space-photo.a{grid-column:span 5;aspect-ratio:4/3}
.space-photo.b{grid-column:span 7;aspect-ratio:16/9}
.space-photo.c{grid-column:span 4;aspect-ratio:1/1}
.space-photo.d{grid-column:span 4;aspect-ratio:1/1}
.space-photo.e{grid-column:span 4;aspect-ratio:1/1}

/* Enfoque (approach-section/grid ya existen; solo lo nuevo + override 'start' escopado a #enfoque) */
#enfoque .approach-grid{align-items:start}
.approach-text p{font-family:var(--sans);font-size:15px;color:var(--text-lt);line-height:1.85;margin-bottom:1.25rem}
.approach-text p strong{color:var(--text);font-weight:500}
.approach-steps{display:flex;flex-direction:column;gap:0}
.approach-step{display:flex;gap:1.5rem;padding:1.75rem 0;border-bottom:1px solid var(--border);align-items:flex-start}
.approach-step:last-child{border:none}
.approach-step-icon{width:44px;height:44px;border-radius:12px;background:var(--white);display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid var(--border);transition:background .3s}
.approach-step:hover .approach-step-icon{background:var(--sage-lt)}
.approach-step-content h3{font-family:var(--serif);font-size:19px;font-weight:400;color:var(--text);margin-bottom:.375rem}
.approach-step-content p{font-family:var(--sans);font-size:13.5px;color:var(--text-lt);line-height:1.7}

/* Compromisos */
.commitments-section{background:var(--text)}
.commitments-section .section-label{color:rgba(168,189,184,.8)}
.commitments-section .section-label::before{background:var(--sage)}
.commitments-section .section-title{color:var(--white)}
.commitments-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.08);border-radius:16px;overflow:hidden;margin-top:3.5rem}
.commitment-card{background:var(--text);padding:2.5rem;transition:background .2s}
.commitment-card:hover{background:rgba(255,255,255,.04)}
.commitment-icon{width:44px;height:44px;border-radius:12px;background:rgba(168,189,184,.15);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}
.commitment-title{font-family:var(--serif);font-size:20px;font-weight:400;color:var(--white);margin-bottom:.75rem;line-height:1.25}
.commitment-text{font-family:var(--sans);font-size:13.5px;color:rgba(245,240,235,.55);line-height:1.7}

/* Responsive Sobre */
@media(max-width:1024px){
  .hero-cover-inner,.history-grid,.values-grid{grid-template-columns:1fr;gap:3rem}
  .team-intro,.manifesto-pillars,.commitments-grid{grid-template-columns:1fr}
  .team-teaser-grid{grid-template-columns:repeat(2,1fr)}
  #enfoque .approach-grid{grid-template-columns:1fr;gap:3rem}
  .space-gallery{grid-template-columns:1fr 1fr}
  .space-photo.a,.space-photo.b,.space-photo.c,.space-photo.d,.space-photo.e{grid-column:span 1;aspect-ratio:4/3}
}
@media(max-width:640px){
  .team-teaser-grid{grid-template-columns:1fr}
  .space-gallery{grid-template-columns:1fr}
  .space-photo.a,.space-photo.b,.space-photo.c,.space-photo.d,.space-photo.e{grid-column:span 1}
  .hero-stats{grid-template-columns:1fr 1fr}
}

/* Enlaces internos dentro de hero-lead (Sobre Eirene · silo disciplinas) */
.hero-lead a{color:var(--text);text-decoration:underline;text-decoration-color:var(--sage);text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s,text-decoration-color .2s}
.hero-lead a strong{color:inherit}
.hero-lead a:hover{color:var(--sage-dk);text-decoration-color:var(--sage-dk)}

/* FAQ central /preguntas-frecuentes/ — layout multi-grupo (1 col); reutiliza .faq-list/.faq-item de los servicios */
.faq-page .section-inner{max-width:880px}
.faq-group{margin-top:3.5rem}
.faq-group:first-child{margin-top:0}
.faq-group-title{font-family:var(--serif);font-size:26px;font-weight:400;line-height:1.2;letter-spacing:-.2px;color:var(--text);margin:0 0 .5rem;padding-bottom:.75rem;border-bottom:1px solid var(--sage)}
/* Enlaces dentro de las respuestas FAQ (mismo trato que hero-lead) */
.faq-item p a{color:var(--text);text-decoration:underline;text-decoration-color:var(--sage);text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s,text-decoration-color .2s}
.faq-item p a strong{color:inherit}
.faq-item p a:hover{color:var(--sage-dk);text-decoration-color:var(--sage-dk)}

/* Página /precios/ (versión puente sin cifras) — bloque destacado + texto; reutiliza approach-step/section-*/cta */
.price-free{display:flex;gap:1.75rem;align-items:flex-start;background:var(--sage-lt);border:1px solid var(--sage);border-radius:16px;padding:2.5rem;max-width:820px}
.price-free-icon{width:56px;height:56px;border-radius:50%;background:var(--white);border:1px solid var(--sage);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--sage-dk)}
.price-free-content h2{font-family:var(--serif);font-size:26px;font-weight:400;color:var(--text);line-height:1.2;margin:0 0 .625rem}
.price-free-content p{font-family:var(--sans);font-size:15px;color:var(--text-lt);line-height:1.8;margin:0}
.price-text{max-width:680px}
.price-text p{font-family:var(--sans);font-size:16px;font-weight:300;color:var(--text-lt);line-height:1.8;margin:0}
.price-text p strong{color:var(--text);font-weight:500}
.price-text a{color:var(--text);text-decoration:underline;text-decoration-color:var(--sage);text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s,text-decoration-color .2s}
.price-text a strong{color:inherit}
.price-text a:hover{color:var(--sage-dk);text-decoration-color:var(--sage-dk)}
@media(max-width:640px){.price-free{flex-direction:column;gap:1.25rem;padding:1.75rem}}

/* ── Blog · artículo (Fase: blog) ───────────────────────────────────────── */
/* Párrafo de respuesta directa (lead) */
.single-post .entry-content .post-answer{
	font-size:1.18rem;
	line-height:1.6;
	color:var(--text);
}
/* La sección de las 7 señales: ritmo de títulos */
.single-post .entry-content .post-signals h3{
	color:var(--sage-dk);
	margin-top:1.8rem;
}
/* Callout de seguridad (024 / 112): sin sombras, borde fino salvia */
.single-post .entry-content .post-callout{
	background:var(--sage-lt);
	border:1px solid var(--border);
	border-left:4px solid var(--sage-dk);
	border-radius:12px;
	padding:1.1rem 1.4rem;
	margin:2rem 0;
	font-style:normal;
}
.single-post .entry-content .post-callout p{margin:0;color:var(--text);}
.single-post .entry-content .post-callout::before{content:none;}
/* Firma final */
.single-post .entry-content hr.wp-block-separator{
	border:0;border-top:1px solid var(--border);max-width:100%;margin:2.5rem 0 1.5rem;
}

/* ═══════════════════════════════════════════════════════════════════════════
 * BLOG · Rediseño (estructura tipo Zyrcled · colores/tipografía Eirene)
 * ═══════════════════════════════════════════════════════════════════════════ */

/* —— Pills genéricas (categoría) —— */
.eirene-pill{
	display:inline-block;font-family:var(--sans);font-size:.7rem;font-weight:600;
	letter-spacing:.08em;text-transform:uppercase;color:var(--sage-dk);
	background:var(--sage-lt);border-radius:20px;padding:.32em .9em;line-height:1.4;
	text-decoration:none;transition:background .2s,color .2s;
}
a.eirene-pill:hover{background:var(--sage);color:var(--white);}
.eirene-pill-sm{font-size:.62rem;padding:.28em .75em;}

/* —— Barra de filtros por categoría —— */
.eirene-cat-filter{
	display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;
	margin:0 auto 2.5rem;max-width:1100px;
}
.eirene-cat-pill{
	font-family:var(--sans);font-size:.82rem;font-weight:500;color:var(--text-lt);
	background:var(--white);border:1px solid var(--border);border-radius:24px;
	padding:.5em 1.2em;text-decoration:none;transition:all .2s;
}
.eirene-cat-pill:hover{border-color:var(--sage);color:var(--sage-dk);}
.eirene-cat-pill.is-active{background:var(--sage);border-color:var(--sage);color:var(--white);}

/* —— Archivo: fondo + rejilla 2 columnas —— */
body.blog #main,body.archive.category #main,body.archive.tag #main{background:var(--cream);}
body.blog .entries,
body.archive.category .entries,
body.archive.tag .entries{
	display:grid !important;grid-template-columns:repeat(2,1fr);gap:2rem;
}
body.blog .entries.flexy-items,
body.archive.category .entries.flexy-items,
body.archive.tag .entries.flexy-items{flex-wrap:wrap;}

/* —— Tarjeta de entrada —— */
.blog .entry-card,.archive .entry-card{
	background:var(--white);border:1px solid var(--border);border-radius:16px;
	overflow:hidden;display:flex;flex-direction:column;
	box-shadow:0 1px 3px rgba(58,53,48,.04);transition:box-shadow .25s,transform .25s;
}
.blog .entry-card:hover,.archive .entry-card:hover{
	box-shadow:0 8px 24px rgba(58,53,48,.10);transform:translateY(-2px);
}
.blog .entry-card .ct-image-container,
.blog .entry-card figure,
.archive .entry-card .ct-image-container,
.archive .entry-card figure{margin:0;aspect-ratio:16/10;overflow:hidden;}
.blog .entry-card .ct-image-container img,
.blog .entry-card figure img,
.archive .entry-card .ct-image-container img,
.archive .entry-card figure img{width:100%;height:100%;object-fit:cover;display:block;}
/* contenido textual de la card con padding */
.blog .entry-card .entry-meta,
.blog .entry-card .entry-title,
.blog .entry-card .entry-excerpt,
.archive .entry-card .entry-meta,
.archive .entry-card .entry-title,
.archive .entry-card .entry-excerpt{margin-left:1.4rem;margin-right:1.4rem;}
.blog .entry-card .entry-meta:first-child,.archive .entry-card .entry-meta:first-child{margin-top:1.2rem;}
/* pill de categoría (los enlaces de categoría dentro de la meta) */
.blog .entry-card .entry-meta a[href*="/category/"],
.archive .entry-card .entry-meta a[href*="/category/"]{
	display:inline-block;font-size:.68rem;font-weight:600;letter-spacing:.07em;
	text-transform:uppercase;color:var(--sage-dk);background:var(--sage-lt);
	border-radius:20px;padding:.3em .85em;text-decoration:none;
}
.blog .entry-card .entry-title,.archive .entry-card .entry-title{
	font-family:var(--serif);font-size:1.5rem;line-height:1.2;margin-top:.7rem;margin-bottom:.6rem;
}
.blog .entry-card .entry-title a,.archive .entry-card .entry-title a{color:var(--text);text-decoration:none;}
.blog .entry-card .entry-title a:hover,.archive .entry-card .entry-title a:hover{color:var(--sage-dk);}
.blog .entry-card .entry-excerpt,.archive .entry-card .entry-excerpt{
	color:var(--text-lt);font-size:.95rem;line-height:1.6;
	display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
/* fila inferior: fecha + leer más */
.blog .entry-card .entry-meta:last-child,.archive .entry-card .entry-meta:last-child{
	margin-top:auto;padding-top:1rem;margin-bottom:1.3rem;color:var(--text-lt);font-size:.82rem;
}
.blog .entry-card .more-link,.archive .entry-card .more-link,
.blog .entry-card .entry-readmore,.archive .entry-card .entry-readmore{
	color:var(--sage-dk);font-weight:600;text-decoration:none;
}

/* —— Single: hero a toda anchura —— */
.eirene-blog-hero{
	position:relative;background:var(--cream2);padding:0;margin:0 0 2.5rem;
	overflow:hidden;
}
.eirene-blog-hero.has-img::before{
	content:"";position:absolute;inset:0;
	background-image:var(--eirene-hero-img);background-size:cover;background-position:center;
}
.eirene-blog-hero.has-img::after{
	content:"";position:absolute;inset:0;
	background:linear-gradient(180deg,rgba(58,53,48,.45),rgba(58,53,48,.72));
}
.eirene-blog-hero-inner{
	position:relative;z-index:1;max-width:820px;margin:0 auto;
	padding:4.5rem 24px;text-align:center;
}
.eirene-blog-hero.has-img .eirene-blog-hero-title,
.eirene-blog-hero.has-img .eirene-blog-hero-meta{color:var(--white);}
.eirene-blog-hero.has-img .eirene-pill{background:rgba(255,255,255,.92);color:var(--sage-dk);}
.eirene-blog-hero-title{
	font-family:var(--serif);font-size:2.6rem;line-height:1.15;margin:1rem 0 .8rem;color:var(--text);
}
.eirene-blog-hero-meta{font-family:var(--sans);font-size:.9rem;color:var(--text-lt);margin:0;}
/* cuerpo del single con ancho de lectura cómodo */
body.single-post .entry-content{max-width:720px;margin-left:auto;margin-right:auto;}

/* —— "Sigue leyendo" —— */
.eirene-related{background:var(--cream);padding:3rem 0;border-top:1px solid var(--border);}
.eirene-related-inner{max-width:1100px;margin:0 auto;padding:0 24px;}
.eirene-related-title{font-family:var(--serif);font-size:1.8rem;color:var(--text);margin:0 0 1.6rem;text-align:center;}
.eirene-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.eirene-related-card{
	background:var(--white);border:1px solid var(--border);border-radius:14px;overflow:hidden;
	text-decoration:none;display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s;
}
.eirene-related-card:hover{box-shadow:0 8px 24px rgba(58,53,48,.10);transform:translateY(-2px);}
.eirene-related-thumb{display:block;aspect-ratio:16/10;background:var(--cream2) center/cover no-repeat;}
.eirene-related-body{padding:1rem 1.2rem 1.3rem;display:flex;flex-direction:column;gap:.6rem;}
.eirene-related-card-title{font-family:var(--serif);font-size:1.15rem;line-height:1.25;color:var(--text);}
.eirene-related-card:hover .eirene-related-card-title{color:var(--sage-dk);}

/* —— Barra lateral (blog + single) —— */
body.blog .ct-sidebar .widget,
body.archive .ct-sidebar .widget,
body.single-post .ct-sidebar .widget{
	background:var(--white);border:1px solid var(--border);border-radius:16px;
	padding:1.4rem 1.4rem;margin-bottom:1.5rem;box-shadow:0 1px 3px rgba(58,53,48,.04);
}
.ct-sidebar .widget .ct-widget-title,
.ct-sidebar .widget > h2,
.ct-sidebar .widget > h3,
.ct-sidebar .widget .wp-block-group h2,
.ct-sidebar .widget .wp-block-group h3{
	font-family:var(--serif);font-size:1.25rem;color:var(--text);margin:0 0 1rem;
}
.ct-sidebar .wp-block-search__input{
	border:1px solid var(--border);border-radius:24px;padding:.6em 1em;width:100%;font-family:var(--sans);
}
.ct-sidebar .wp-block-categories li,
.ct-sidebar .widget_categories li{margin:.35rem 0;color:var(--text-lt);}
.ct-sidebar a{color:var(--text);text-decoration:none;}
.ct-sidebar a:hover{color:var(--sage-dk);}
/* últimas entradas con miniatura (Latest Posts block) */
.ct-sidebar .wp-block-latest-posts.has-dates,
.ct-sidebar .wp-block-latest-posts{list-style:none;margin:0;padding:0;}
.ct-sidebar .wp-block-latest-posts__featured-image img{border-radius:10px;}
.ct-sidebar .wp-block-latest-posts__post-title{font-family:var(--serif);font-size:1rem;line-height:1.25;}

/* —— Bloque de marca (sidebar) —— */
.eirene-brand-card{
	background:var(--sage);border-radius:16px;padding:1.8rem 1.5rem;text-align:center;color:var(--white);
}
.ct-sidebar .widget:has(.eirene-brand-card){background:none;border:none;padding:0;box-shadow:none;}
.eirene-brand-card img{max-width:150px;height:auto;margin:0 auto 1rem;display:block;}
.eirene-brand-card p{color:var(--white);font-size:.9rem;line-height:1.6;margin:.3rem 0;}
.eirene-brand-card a{color:var(--white);}
.eirene-brand-card .eirene-brand-cta{
	display:inline-block;margin-top:1.1rem;background:var(--white);color:var(--sage-dk);
	font-family:var(--sans);font-weight:600;border-radius:40px;padding:.7em 1.6em;text-decoration:none;
}
.eirene-brand-card .eirene-brand-cta:hover{background:var(--cream);}

.eirene-brand-logo{font-family:var(--serif);font-size:2rem;line-height:1;color:var(--white);margin-bottom:1rem;display:block;}
.eirene-brand-logo span{display:block;font-family:var(--sans);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;margin-top:.4rem;opacity:.92;}

/* —— Responsive —— */
@media (max-width:880px){
	body.blog .entries,body.archive.category .entries,body.archive.tag .entries{grid-template-columns:1fr;}
	.eirene-related-grid{grid-template-columns:1fr;}
	.eirene-blog-hero-title{font-size:2rem;}
	.eirene-blog-hero-inner{padding:3rem 20px;}
}

/* Ocultar el widget de Etiquetas mientras no existan tags */
.ct-sidebar .widget:has(.eirene-widget-tags):not(:has(.wp-block-tag-cloud a)){display:none;}

/* ═══ BLOG · Retoques v2 ═══════════════════════════════════════════════════ */
/* 1 · Botones redondeados (mismo radio del sitio = 40px) */
.ct-button,.ct-button-ghost,.entry-card .entry-button,.wp-block-search__button{border-radius:40px !important;}
.wp-block-search .wp-block-search__inside-wrapper{border-radius:40px;overflow:hidden;border:1px solid var(--border);}
.ct-sidebar .wp-block-search__input{border:none;border-radius:40px;}
.ct-sidebar .wp-block-search__button{background:var(--sage);color:var(--white);border:none;}
.ct-sidebar .wp-block-search__button:hover{background:var(--sage-dk);}
/* "Continuar leyendo" como pill salvia */
.blog .entry-card .entry-button,.archive .entry-card .entry-button{
	display:inline-flex;align-items:center;gap:6px;background:var(--sage);color:var(--white);
	padding:.55em 1.3em;font-family:var(--sans);font-size:.8rem;font-weight:600;
	text-decoration:none;width:fit-content;
}
.blog .entry-card .entry-button:hover,.archive .entry-card .entry-button:hover{background:var(--sage-dk);}

/* 2 · Unificar la tarjeta en /blog/ y en archivos de categoría/tag (orden por flex,
 *      independiente del orden que emita Blocksy según el prefijo). */
.blog .entry-card,.archive .entry-card{display:flex;flex-direction:column;}
.blog .entry-card .ct-image-container,.archive .entry-card .ct-image-container,
.blog .entry-card .ct-media-container,.archive .entry-card .ct-media-container{order:1;}
.blog .entry-card .entry-meta:has(a[href*="/category/"]),
.archive .entry-card .entry-meta:has(a[href*="/category/"]){order:2;}
.blog .entry-card .entry-title,.archive .entry-card .entry-title{order:3;}
.blog .entry-card .entry-excerpt,.archive .entry-card .entry-excerpt{order:4;}
.blog .entry-card .entry-meta:not(:has(a[href*="/category/"])),
.archive .entry-card .entry-meta:not(:has(a[href*="/category/"])){order:5;}
.blog .entry-card .entry-button,.archive .entry-card .entry-button{order:6;margin:0 1.4rem 1.4rem;}
/* rejilla 2 columnas también en categoría/tag/author */
body.archive .entries{display:grid !important;grid-template-columns:repeat(2,1fr);gap:2rem;}

/* 3 + 4 · Hero full-bleed (renderizado en blocksy:content:top, dentro de <main>,
 *         por encima del contenedor de 2 columnas → sidebar arranca debajo). */
.eirene-blog-hero{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}

@media (max-width:880px){
	body.archive .entries{grid-template-columns:1fr;}
}

/* ═══ BLOG · Retoques v3 ═══════════════════════════════════════════════════ */
/* 3 · Tarjeta de blog UNIFICADA (.eirene-card-*) — misma en /blog/ y categoría/tag.
 *     Reemplaza el parcheo por flex-order: ahora el markup es propio e idéntico. */
.entry-card{
	background:var(--white);border:1px solid var(--border);border-radius:16px;
	overflow:hidden;display:flex;flex-direction:column;
	box-shadow:0 1px 3px rgba(58,53,48,.04);transition:box-shadow .25s,transform .25s;
}
.entry-card:hover{box-shadow:0 8px 24px rgba(58,53,48,.10);transform:translateY(-2px);}
.eirene-card-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--cream2);}
.eirene-card-media img{width:100%;height:100%;object-fit:cover;display:block;}
.eirene-card-body{padding:1.3rem 1.4rem 1.4rem;display:flex;flex-direction:column;gap:.7rem;flex:1;}
.eirene-card-cat{align-self:flex-start;}
.eirene-card-title{font-family:var(--serif);font-size:1.5rem;line-height:1.2;margin:0;}
.eirene-card-title a{color:var(--text);text-decoration:none;}
.eirene-card-title a:hover{color:var(--sage-dk);}
.eirene-card-excerpt{
	color:var(--text-lt);font-size:.95rem;line-height:1.6;margin:0;
	display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.eirene-card-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.4rem;}
.eirene-card-date{color:var(--text-lt);font-size:.82rem;font-family:var(--sans);}
.eirene-card-more{
	display:inline-flex;align-items:center;gap:6px;background:var(--sage);color:var(--white);
	border-radius:40px;padding:.5em 1.15em;font-family:var(--sans);font-size:.78rem;font-weight:600;
	text-decoration:none;white-space:nowrap;transition:background .2s;
}
.eirene-card-more:hover{background:var(--sage-dk);}

/* 1 · Buscador: CAMPO redondeado, campo+botón como una sola pieza pill */
.ct-sidebar .wp-block-search__inside-wrapper{
	display:flex;align-items:center;border:1px solid var(--border);border-radius:40px;
	overflow:hidden;background:var(--white);padding:3px 3px 3px 6px;
}
.ct-sidebar .wp-block-search__input{
	border:none !important;border-radius:0;background:transparent;
	padding:.55em .8em;flex:1;min-width:0;font-family:var(--sans);
}
.ct-sidebar .wp-block-search__input:focus{outline:none;box-shadow:none;}
.ct-sidebar .wp-block-search__button{
	border-radius:40px !important;background:var(--sage);color:var(--white);border:none;
	margin:0;flex-shrink:0;padding:.5em .8em;display:flex;align-items:center;
}
.ct-sidebar .wp-block-search__button:hover{background:var(--sage-dk);}

/* 2 · Sidebar con gutter derecho COHERENTE en archivo y single.
 *     El single usa ct-container-full (a sangre) → lo constreñimos como el archivo. */
body.single-post main > .ct-container-full{
	max-width:1290px;margin-left:auto;margin-right:auto;
	padding-left:clamp(20px,5vw,40px);padding-right:clamp(20px,5vw,40px);box-sizing:border-box;
}
body.blog .ct-sidebar,body.archive .ct-sidebar,body.single-post .ct-sidebar{box-sizing:border-box;}
/* el bloque de marca y demás widgets nunca pegados al borde */
.ct-sidebar .widget{margin-right:0;}

/* 4 · Pills unificadas: una sola apariencia (salvia suave / sage-dk / pill) en
 *     blog + servicios + satélites. Sin bordes ni decoración. */
.eirene-pill,.hero-pill,.muni-pill{
	background:var(--sage-lt);color:var(--sage-dk);border:none;border-radius:20px;
	font-family:var(--sans);font-weight:600;letter-spacing:.04em;
	padding:.32em .9em;font-size:.7rem;text-transform:uppercase;line-height:1.4;
	display:inline-block;text-decoration:none;
}
a.eirene-pill:hover,a.hero-pill:hover,a.muni-pill:hover{background:var(--sage);color:var(--white);}
/* hero-pill y muni-pill no van en mayúsculas (son nombres propios/síntomas) */
.hero-pill,.muni-pill{text-transform:none;font-weight:500;font-size:12px;letter-spacing:.2px;padding:5px 14px;}
