/* =====================================================================
   Secciones Echecopar (Home) — réplica de src/routes/index.tsx (Lovable)
   Breakpoints Tailwind: sm 640 · md 768 · lg 1024 · xl 1280
   ===================================================================== */

/* --- Base: contenedores de Elementor sin padding/gap propios dentro de nuestras secciones --- */
.eh-sec.e-con.e-con,.eh-sec .e-con.e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--min-height:0px;display:block;min-width:0;}
.eh-sec .e-con.e-con:not(.eh-wrap){margin-inline:0;}
.eh-sec p,.eh-sec ul,.eh-sec ol{margin:0;}
.eh-sec .elementor-widget-text-editor{font-family:var(--eche-font-sans);font-size:1.0625rem;line-height:1.65;color:var(--eche-ink);}
.eh-sec .elementor-heading-title{margin:0;padding:0;}
.eh-sec .e-con.eh-wrap{box-sizing:border-box;max-width:var(--eche-max);margin-inline:auto;padding-inline:1.25rem;}
@media (min-width:768px){.eh-sec .e-con.eh-wrap{padding-inline:2rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-measure{max-width:62ch;}
.elementor .eh-sec .elementor-element.elementor-element.eh-ink-soft,.elementor .eh-sec .elementor-element.elementor-element.eh-ink-soft p{color:var(--eche-ink-soft);}
/* Eyebrow */
.elementor .eh-sec .elementor-element.elementor-element.eh-eyebrow .elementor-heading-title{font-family:var(--eche-font-sans);font-size:.75rem;line-height:1.65;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--eche-muted-foreground);}
/* Titulares Newsreader */
.elementor .eh-sec .elementor-element.elementor-element.eh-display .elementor-heading-title{font-family:var(--eche-font-display);font-weight:400;letter-spacing:-.015em;color:var(--eche-ink);text-wrap:balance;}
/* Rombo burdeos */
.elementor .eh-sec .elementor-element.elementor-element.eh-diamonds ul{list-style:none;padding:0;}
.elementor .eh-sec .elementor-element.elementor-element.eh-diamonds li{display:flex;gap:.75rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-diamonds li::before{content:"";flex-shrink:0;width:6px;height:6px;margin-top:.55em;background:var(--eche-accent);transform:rotate(45deg);}
/* Botones */
.elementor .eh-sec .elementor-element.elementor-element.eh-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:0;padding:1rem 1.75rem;font-family:var(--eche-font-sans);font-size:1rem;line-height:1.5rem;font-weight:400;letter-spacing:0;text-transform:none;text-decoration:none;border:1px solid transparent;transition:color .15s ease,background-color .15s ease,border-color .15s ease;}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn--accent .elementor-button{background:var(--eche-accent);border:0;color:#fff;}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn--accent.eh-btn--hover-light .elementor-button:hover,.elementor .eh-sec .elementor-element.elementor-element.eh-btn--accent.eh-btn--hover-light .elementor-button:focus-visible{background:#fff;border-color:#fff;color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn--accent.eh-btn--hover-ink .elementor-button:hover,.elementor .eh-sec .elementor-element.elementor-element.eh-btn--accent.eh-btn--hover-ink .elementor-button:focus-visible{background:var(--eche-ink);color:#fff;}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn--outline-light .elementor-button{background:transparent;border-color:rgba(255,255,255,.7);color:#fff;}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn--outline-light .elementor-button:hover,.elementor .eh-sec .elementor-element.elementor-element.eh-btn--outline-light .elementor-button:focus-visible{background:#fff;border-color:#fff;color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn--ghost-dark .elementor-button{background:transparent;border-color:rgba(247,246,245,.4);color:var(--eche-primary-foreground);padding:.75rem 1.5rem;font-size:.875rem;line-height:1.25rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn--ghost-dark .elementor-button:hover,.elementor .eh-sec .elementor-element.elementor-element.eh-btn--ghost-dark .elementor-button:focus-visible{background:var(--eche-primary-foreground);border-color:var(--eche-primary-foreground);color:var(--eche-primary);}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn .elementor-button:focus-visible{outline:2px solid var(--eche-accent);outline-offset:3px;}
.elementor .eh-sec.eh-board .elementor-element.elementor-element.eh-btn .elementor-button:focus-visible,.elementor .eh-sec.eh-hero .elementor-element.elementor-element.eh-btn .elementor-button:focus-visible{outline-color:#fff;}

/* --- 1. HERO --- */
.e-con.eh-sec.eh-hero{position:relative;isolation:isolate;overflow:hidden;width:100%;}
.eh-hero .eh-hero__media{position:absolute;inset:0;z-index:-1;margin:0;}
.eh-hero .eh-hero__media img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 35%;}
/* Velo original de Lovable (decisión de Luis, 06/10/2026: prioriza fidelidad sobre contraste WCAG). Versión reforzada en sections.css.bak-20261006. */
.eh-hero .eh-hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(10,10,12,.62) 0%,rgba(10,10,12,.38) 55%,rgba(10,10,12,.18) 100%);}
@media (min-width:1024px){.eh-hero .eh-hero__media img{object-position:center;}}
.eh-sec .e-con.eh-hero__inner{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-start;min-height:440px;padding-block:5rem;}
@media (min-width:640px){.eh-sec .e-con.eh-hero__inner{min-height:540px;}}
@media (min-width:1024px){.eh-sec .e-con.eh-hero__inner{min-height:660px;padding-block:7rem;}}
.eh-sec .e-con.eh-hero__content{max-width:42rem;width:100%;align-self:center;}
.elementor .eh-sec .elementor-element.elementor-element.eh-hero__title .elementor-heading-title{font-size:1.85rem;line-height:1.14;color:#fff;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-hero__title .elementor-heading-title{font-size:2.6rem;}}
@media (min-width:1024px){.elementor .eh-sec .elementor-element.elementor-element.eh-hero__title .elementor-heading-title{font-size:3.1rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-hero__lead{margin-top:1.5rem;max-width:62ch;font-size:1.05rem;line-height:1.625;color:rgba(255,255,255,.85);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-hero__lead{font-size:1.125rem;}}
.eh-sec .e-con.eh-hero__ctas{margin-top:2.5rem;display:flex;flex-direction:column;align-items:stretch;gap:.75rem;}
.eh-hero__ctas .elementor-button{width:100%;}
@media (min-width:640px){.eh-sec .e-con.eh-hero__ctas{flex-direction:row;align-items:center;gap:1rem;}.eh-hero__ctas .elementor-button{width:auto;}}

/* --- 2. NUESTRO COMPROMISO --- */
.e-con.eh-sec.eh-compromiso{background:var(--eche-secondary);border-block:1px solid var(--eche-rule);}
.eh-sec.eh-compromiso .e-con.eh-wrap{padding-block:3.5rem;}
@media (min-width:768px){.eh-sec.eh-compromiso .e-con.eh-wrap{padding-block:4.5rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-compromiso__intro{margin-top:1rem;max-width:62ch;font-family:var(--eche-font-display);font-size:1.05rem;line-height:1.625;color:var(--eche-ink-soft);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-compromiso__intro{font-size:1.15rem;}}
.eh-sec .e-con.eh-compromiso__body{margin-top:2.25rem;border-top:1px solid var(--eche-rule);padding-top:3.75rem;}
@media (min-width:1024px){.eh-sec .e-con.eh-compromiso__body{display:grid;grid-template-columns:minmax(0,.1fr) minmax(0,1fr);column-gap:2rem;padding-top:2.25rem;}.eh-sec .e-con.eh-compromiso__content{grid-column:2;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-compromiso__list li{max-width:calc(62ch + 18px);font-size:1.05rem;line-height:1.625;color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.eh-compromiso__list li+li{margin-top:1rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-compromiso__closing{margin-top:2rem;border-left:2px solid var(--eche-accent);padding-left:1.25rem;font-family:var(--eche-font-display);font-size:1.125rem;line-height:1.375;color:var(--eche-ink-soft);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-compromiso__closing{font-size:1.25rem;}}

/* --- 3. CÓMO PUEDO AYUDAR --- */
.eh-sec.eh-situ .e-con.eh-wrap{padding-block:4rem;}
@media (min-width:768px){.eh-sec.eh-situ .e-con.eh-wrap{padding-block:6rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-situ__title{margin-top:1.25rem;max-width:48rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-situ__title .elementor-heading-title{font-size:1.7rem;line-height:1.22;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-situ__title .elementor-heading-title{font-size:2.1rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-situ__intro{margin-top:1.25rem;max-width:62ch;color:var(--eche-ink-soft);}
.eh-sec .e-con.eh-situ__list{margin-top:2.5rem;}
.eh-sec .e-con.eh-situ__item{display:grid;row-gap:1rem;border-top:1px solid var(--eche-rule);padding-block:2.25rem;}
@media (min-width:768px){.eh-sec .e-con.eh-situ__item{grid-template-columns:minmax(0,14rem) minmax(0,1fr);column-gap:3rem;}.elementor .eh-sec .elementor-element.elementor-element.eh-situ__kicker{position:sticky;top:6rem;align-self:start;}}
@media (min-width:1024px){.eh-sec .e-con.eh-situ__item{padding-block:2.75rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-situ__kicker .elementor-heading-title{display:flex;gap:.75rem;font-family:var(--eche-font-display);font-weight:400;font-size:1.05rem;line-height:1.375;letter-spacing:.08em;text-transform:uppercase;color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.eh-situ__kicker .elementor-heading-title::before{content:"";flex-shrink:0;width:6px;height:6px;margin-top:.5em;background:var(--eche-accent);transform:rotate(45deg);}
.elementor .eh-sec .elementor-element.elementor-element.eh-situ__lead{max-width:48rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-situ__lead .elementor-heading-title{font-family:var(--eche-font-sans);font-weight:400;font-size:1.25rem;line-height:1.375;letter-spacing:0;color:var(--eche-ink);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-situ__lead .elementor-heading-title{font-size:1.5rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-situ__body p{margin-top:1rem;max-width:62ch;color:var(--eche-ink-soft);}

/* --- 4. BOARD ADVISORY (oscuro) --- */
.e-con.eh-sec.eh-board{background:var(--eche-primary);color:var(--eche-primary-foreground);}
.eh-sec.eh-board .e-con.eh-wrap{padding-block:4rem;}
@media (min-width:768px){.eh-sec.eh-board .e-con.eh-wrap{padding-block:5rem;}}
.eh-sec .e-con.eh-board__grid{display:grid;row-gap:2.5rem;}
@media (min-width:1024px){.eh-sec .e-con.eh-board__grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;column-gap:3.5rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-board__title .elementor-heading-title{font-size:1.9rem;line-height:1.25;color:var(--eche-primary-foreground);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-board__title .elementor-heading-title{font-size:2.3rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-board__sub{margin-top:1.25rem;max-width:62ch;}
.elementor .eh-sec .elementor-element.elementor-element.eh-board__sub .elementor-heading-title{font-family:var(--eche-font-sans);font-weight:400;font-size:1.125rem;line-height:1.75rem;letter-spacing:0;color:rgba(247,246,245,.85);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-board__sub .elementor-heading-title{font-size:1.25rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-board__sub2{margin-top:.75rem;max-width:62ch;}
.elementor .eh-sec .elementor-element.elementor-element.eh-board__sub2 .elementor-heading-title{font-family:var(--eche-font-sans);font-weight:400;font-size:1.0625rem;line-height:1.65;letter-spacing:0;color:rgba(247,246,245,.8);}
.elementor .eh-sec .elementor-element.elementor-element.eh-board__cta{margin-top:2rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-board__media img{display:block;width:100%;height:auto;object-fit:cover;}

/* --- 5. SOBRE MÍ --- */
.eh-sec.eh-about .e-con.eh-wrap{padding-block:2.5rem;}
@media (min-width:768px){.eh-sec.eh-about .e-con.eh-wrap{padding-block:4rem;}}
@media (min-width:1024px){.eh-sec.eh-about .e-con.eh-wrap{padding-block:6rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__title{margin-top:1rem;max-width:48rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__title .elementor-heading-title{font-size:1.4rem;line-height:1.22;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__title .elementor-heading-title{font-size:1.7rem;}}
@media (min-width:1024px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__title .elementor-heading-title{font-size:2.1rem;}}
.eh-sec .e-con.eh-about__grid{display:grid;row-gap:2rem;margin-top:2rem;}
@media (min-width:1024px){.eh-sec .e-con.eh-about__grid{grid-template-columns:minmax(0,.42fr) minmax(0,1fr);column-gap:4rem;margin-top:3.5rem;}.elementor .eh-sec .elementor-element.elementor-element.eh-about__photo{position:sticky;top:7rem;align-self:start;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__photo img{display:block;width:100%;max-width:210px;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__photo img{max-width:240px;}}
@media (min-width:768px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__photo img{max-width:210px;}}
@media (min-width:1024px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__photo img{max-width:none;}}
.eh-sec .e-con.eh-about__text{max-width:62ch;}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__opening{font-size:.95rem;line-height:1.52;color:var(--eche-ink);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__opening{font-size:1.1rem;}}
@media (min-width:1024px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__opening{font-size:1.28rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose{font-size:.9rem;line-height:1.58;color:var(--eche-ink-soft);}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose p+p{margin-top:.875rem;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose{font-size:.98rem;}.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose p+p{margin-top:1rem;}}
@media (min-width:768px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose{font-size:.94rem;line-height:1.52;}.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose p+p{margin-top:.875rem;}}
@media (min-width:1024px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose{font-size:1.125rem;line-height:1.78;}.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose p+p{margin-top:1.25rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose--first{margin-top:1.5rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__deal{margin-top:2rem;border-left:1px solid var(--eche-accent);padding-left:1rem;font-size:.88rem;line-height:1.65;color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose--second{margin-top:2rem;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__deal{font-size:.96rem;}}
@media (min-width:768px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__deal,.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose--second{margin-top:1.75rem;}}
@media (min-width:1024px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__deal{font-size:1.06rem;padding-left:2rem;}.elementor .eh-sec .elementor-element.elementor-element.eh-about__deal,.elementor .eh-sec .elementor-element.elementor-element.eh-about__prose--second{margin-top:3.5rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-about__close{margin-top:2rem;border-top:1px solid var(--eche-rule);padding-top:1.25rem;font-size:.9rem;line-height:1.58;color:var(--eche-ink);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__close{font-size:.98rem;}}
@media (min-width:768px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__close{margin-top:1.75rem;padding-top:1rem;}}
@media (min-width:1024px){.elementor .eh-sec .elementor-element.elementor-element.eh-about__close{margin-top:3.5rem;padding-top:2rem;font-size:1.125rem;line-height:1.78;}}

/* --- 6. PERSPECTIVAS --- */
.e-con.eh-sec.eh-persp{background:var(--eche-secondary);border-block:1px solid var(--eche-rule);}
.eh-sec.eh-persp .e-con.eh-wrap{padding-block:4rem;}
@media (min-width:768px){.eh-sec.eh-persp .e-con.eh-wrap{padding-block:5rem;}}
.eh-sec .e-con.eh-persp__grid{display:grid;row-gap:2.5rem;}
@media (min-width:1024px){.eh-sec .e-con.eh-persp__grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);align-items:center;column-gap:4rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-persp__title .elementor-heading-title{font-family:var(--eche-font-sans);font-size:.8125rem;line-height:1.65;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.eh-persp__text{margin-top:1.5rem;max-width:54ch;font-size:.95rem;line-height:1.75;color:var(--eche-ink-soft);}
.elementor .eh-sec .elementor-element.elementor-element.eh-persp__link{margin-top:2rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-persp__link .elementor-heading-title{font-family:var(--eche-font-display);font-weight:400;font-size:1.125rem;line-height:1.75rem;letter-spacing:0;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-persp__link .elementor-heading-title{font-size:1.25rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-persp__link .elementor-heading-title a{display:inline-flex;align-items:center;gap:.5rem;border-bottom:1px solid var(--eche-accent);padding-bottom:.25rem;color:var(--eche-ink);text-decoration:none;transition:color .15s ease;}
.elementor .eh-sec .elementor-element.elementor-element.eh-persp__link .elementor-heading-title a:hover{color:var(--eche-accent);}
/* Ilustración (decorativa) */
.eh-art{position:relative;min-width:0;}
@media (min-width:1024px){.eh-art{margin-right:-1.5rem;}}
@media (min-width:1280px){.eh-art{margin-right:-2.5rem;}}
.eh-art__stage{position:relative;height:340px;}
@media (min-width:640px){.eh-art__stage{height:380px;}}
@media (min-width:1024px){.eh-art__stage{height:420px;}}
.eh-art__layer{transition:transform .5s ease;}
.eh-persp:hover .eh-art__layer{transform:translateY(-2px);}
@media (prefers-reduced-motion:reduce){.eh-art__layer{transition:none;}.eh-persp:hover .eh-art__layer{transform:none;}}
.eh-art__surface{position:absolute;inset:0;border:1px solid var(--eche-rule);background:rgba(246,245,244,.4);}
.eh-art__sheet{position:absolute;right:4%;top:4%;width:38%;box-sizing:border-box;border:1px solid var(--eche-rule);background:#fff;padding:.75rem;box-shadow:0 1px 0 0 rgba(0,0,0,.04);}
@media (min-width:640px){.eh-art__sheet{padding:1rem;}}
.eh-art__dia{display:block;width:5px;height:5px;background:var(--eche-accent);transform:rotate(45deg);}
.eh-art__bars{margin-top:.75rem;}
.eh-art__bars span{display:block;height:5px;background:rgba(28,28,30,.85);}
.eh-art__bars span+span{margin-top:6px;}
.eh-art__foot{margin-top:1rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.75rem;}
.eh-art__lines{position:relative;}
.eh-art__lines span{display:block;height:1px;background:var(--eche-rule);}
.eh-art__lines span+span{margin-top:5px;}
.eh-art__pen{position:absolute;bottom:-4px;right:30%;width:1.75rem;height:1.75rem;color:rgba(28,28,30,.35);}
.eh-art__mark{display:block;width:2px;height:1.5rem;background:var(--eche-accent);}
.eh-art__books{position:absolute;left:5%;top:16%;height:68%;width:52%;color:rgba(28,28,30,.4);}
.eh-art__laptop{position:absolute;right:5%;bottom:6%;width:52%;height:auto;color:rgba(28,28,30,.4);}

/* --- 7. CÓMO TRABAJO + HONORARIOS --- */
.eh-sec.eh-proc .e-con.eh-wrap{padding-block:3.5rem;}
@media (min-width:768px){.eh-sec.eh-proc .e-con.eh-wrap{padding-block:5rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-proc__title .elementor-heading-title{font-size:1.5rem;line-height:1.25;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-proc__title .elementor-heading-title{font-size:1.9rem;}}
.eh-sec .e-con.eh-steps{margin-top:2rem;display:grid;gap:1.5rem;}
@media (min-width:640px){.eh-sec .e-con.eh-steps{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (min-width:1024px){.eh-sec .e-con.eh-steps{grid-template-columns:repeat(4,minmax(0,1fr));}}
.eh-sec .e-con.eh-step{border-top:2px solid var(--eche-accent);padding-top:1.25rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-step__num .elementor-heading-title{font-family:var(--eche-font-display);font-weight:400;font-size:1.5rem;line-height:2rem;letter-spacing:normal;color:var(--eche-accent);}
.elementor .eh-sec .elementor-element.elementor-element.eh-step__title{margin-top:.5rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-step__title .elementor-heading-title{font-size:1.125rem;line-height:1.75rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-step__text{margin-top:.75rem;font-size:.875rem;line-height:1.625;color:var(--eche-ink-soft);}
.eh-sec .e-con.eh-fees{margin-top:2.5rem;border-left:2px solid var(--eche-accent);background:var(--eche-secondary);padding:2.25rem 1.5rem;}
@media (min-width:640px){.eh-sec .e-con.eh-fees{padding-inline:2.5rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-fees__title .elementor-heading-title{font-size:1.3rem;line-height:1.375;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-fees__title .elementor-heading-title{font-size:1.5rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-fees__text{margin-top:1.25rem;color:var(--eche-ink-soft);}
.elementor .eh-sec .elementor-element.elementor-element.eh-fees__text ul{margin-top:1rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-fees__text li+li{margin-top:.5rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-fees__text p:last-child{margin-top:1.25rem;color:var(--eche-ink);}

/* --- 8. CTA FINAL --- */
.e-con.eh-sec.eh-cta{border-top:1px solid var(--eche-rule);}
.eh-sec.eh-cta .e-con.eh-wrap{padding-block:5rem;}
@media (min-width:768px){.eh-sec.eh-cta .e-con.eh-wrap{padding-block:7rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-cta__title{max-width:56rem;}
.elementor .eh-sec .elementor-element.elementor-element.eh-cta__title .elementor-heading-title{font-size:1.85rem;line-height:1.18;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.eh-cta__title .elementor-heading-title{font-size:2.6rem;}}
.elementor .eh-sec .elementor-element.elementor-element.eh-cta__text{margin-top:1.5rem;max-width:62ch;font-size:1.125rem;line-height:1.75rem;color:var(--eche-ink-soft);}
.elementor .eh-sec .elementor-element.elementor-element.eh-cta__btn{margin-top:2.25rem;}
/* =====================================================================
   Landing Board Advisory — réplica de src/routes/board-advisory.tsx
   ===================================================================== */
.eh-sec.ba-sec .e-con.eh-wrap{padding-block:3.5rem;}
@media (min-width:768px){.eh-sec.ba-sec .e-con.eh-wrap{padding-block:5rem;}}
.eh-sec.ba-sec.ba-sec--pb .e-con.eh-wrap{padding-top:0;}
.e-con.eh-sec.ba-sec--alt{background:var(--eche-secondary);border-block:1px solid var(--eche-rule);}
.e-con.eh-sec.ba-sec--top{border-top:1px solid var(--eche-rule);}
/* Titulares */
.elementor .eh-sec .elementor-element.elementor-element.ba-h1 .elementor-heading-title{font-family:var(--eche-font-display);font-weight:400;letter-spacing:-.015em;font-size:2rem;line-height:1.25;color:var(--eche-accent);text-wrap:balance;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.ba-h1 .elementor-heading-title{font-size:2.6rem;}}
.elementor .eh-sec .elementor-element.elementor-element.ba-h2 .elementor-heading-title{font-family:var(--eche-font-display);font-weight:400;letter-spacing:-.015em;font-size:1.7rem;line-height:1.25;color:var(--eche-accent);text-wrap:balance;}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.ba-h2 .elementor-heading-title{font-size:2rem;}}
/* Hero */
.eh-sec .e-con.ba-grid{display:grid;row-gap:2.5rem;}
@media (min-width:1024px){.eh-sec .e-con.ba-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:3.5rem;}.eh-sec .e-con.ba-grid.ba-grid--center{align-items:center;}}
.elementor .eh-sec .elementor-element.elementor-element.ba-hero__sub{margin-top:1.5rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-hero__sub .elementor-heading-title{font-family:var(--eche-font-sans);font-weight:400;letter-spacing:0;font-size:1.4rem;line-height:1.375;color:var(--eche-ink);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.ba-hero__sub .elementor-heading-title{font-size:1.7rem;}}
.elementor .eh-sec .elementor-element.elementor-element.ba-hero__sub2{margin-top:1rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-hero__sub2 .elementor-heading-title{font-family:var(--eche-font-sans);font-weight:400;letter-spacing:0;font-size:1.125rem;line-height:1.75rem;color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.ba-hero__text{margin-top:1.5rem;}
.eh-sec .e-con.ba-hero__ctas{margin-top:2.5rem;display:flex;flex-direction:column;align-items:stretch;gap:1rem;}
@media (min-width:640px){.eh-sec .e-con.ba-hero__ctas{flex-direction:row;align-items:center;}}
/* Texto */
.elementor .eh-sec .elementor-element.elementor-element.ba-prose{font-size:1.0625rem;line-height:1.625;color:var(--eche-ink-soft);}
.elementor .eh-sec .elementor-element.elementor-element.ba-prose p+p{margin-top:1.25rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-maxw{max-width:56rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-mt5{margin-top:1.25rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-mt6{margin-top:1.5rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-mt7{margin-top:1.75rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-mt9,.eh-sec .e-con.ba-mt9{margin-top:2.25rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-mt10{margin-top:2.5rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-lead .elementor-heading-title{font-family:var(--eche-font-sans);font-weight:400;letter-spacing:0;font-size:1.25rem;line-height:1.75rem;color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.ba-media img{display:block;width:100%;height:auto;object-fit:cover;}
/* Viñetas con rombo 7px */
.elementor .eh-sec .elementor-element.elementor-element.ba-bullets ul{list-style:none;padding:0;}
.elementor .eh-sec .elementor-element.elementor-element.ba-bullets li{display:flex;gap:1rem;line-height:1.625;color:var(--eche-ink-soft);}
.elementor .eh-sec .elementor-element.elementor-element.ba-bullets li+li{margin-top:1rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-bullets li::before{content:"";flex-shrink:0;width:7px;height:7px;margin-top:.55em;background:var(--eche-accent);transform:rotate(45deg);}
/* Cita */
.elementor .eh-sec .elementor-element.elementor-element.ba-quote{margin-top:3rem;border-left:2px solid var(--eche-accent);padding-left:1.5rem;font-family:var(--eche-font-display);font-size:1.125rem;line-height:1.75rem;font-style:italic;color:var(--eche-ink);}
@media (min-width:640px){.elementor .eh-sec .elementor-element.elementor-element.ba-quote{font-size:1.25rem;}}
/* Tarjetas */
.eh-sec .e-con.ba-cards{margin-top:2.25rem;display:grid;gap:1.5rem;}
@media (min-width:768px){.eh-sec .e-con.ba-cards{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (min-width:1024px){.eh-sec .e-con.ba-cards{grid-template-columns:repeat(4,minmax(0,1fr));}}
.eh-sec .e-con.ba-card{border:1px solid var(--eche-rule);padding:1.5rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-card__kicker .elementor-heading-title{font-family:var(--eche-font-sans);font-weight:400;letter-spacing:0;font-size:.875rem;line-height:1.25rem;color:var(--eche-accent);}
.elementor .eh-sec .elementor-element.elementor-element.ba-card__title .elementor-heading-title{font-family:var(--eche-font-display);font-weight:400;letter-spacing:-.015em;font-size:1.125rem;line-height:1.375;color:var(--eche-ink);text-wrap:balance;}
.elementor .eh-sec .elementor-element.elementor-element.ba-card__title--accent .elementor-heading-title{color:var(--eche-accent);}
.elementor .eh-sec .elementor-element.elementor-element.ba-card__kicker+.ba-card__title{margin-top:.5rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-card__text{margin-top:.75rem;font-size:.95rem;line-height:1.625;color:var(--eche-ink-soft);}
/* Botones de la landing */
.elementor .eh-sec .elementor-element.elementor-element.eh-btn.ba-btn .elementor-button{padding:1rem 2rem;font-size:.875rem;line-height:1.25rem;letter-spacing:.08em;text-transform:uppercase;justify-content:flex-start;}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn.ba-btn--outline .elementor-button{justify-content:center;background:transparent;border:1px solid var(--eche-rule);color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.eh-btn.ba-btn--outline .elementor-button:hover,.elementor .eh-sec .elementor-element.elementor-element.eh-btn.ba-btn--outline .elementor-button:focus-visible{background:transparent;border-color:var(--eche-accent);color:var(--eche-accent);}
.ba-hero__ctas .elementor-button{width:100%;}
@media (min-width:640px){.ba-hero__ctas .elementor-button{width:auto;}}
/* Formulario */
.elementor .eh-sec .elementor-element.elementor-element.ba-form{margin-top:2.5rem;max-width:56rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-form-fields-wrapper{display:block;margin:0;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-group{display:block;width:100%;margin:0;padding:0;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-group+.elementor-field-group{margin-top:2rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-label{display:block;margin:0;padding:0;font-family:var(--eche-font-sans);font-size:1.0625rem;line-height:1.65;font-weight:400;color:var(--eche-ink-soft);}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-group .elementor-field.elementor-field-textual{display:block;width:100%;box-sizing:border-box;margin-top:.75rem;padding:0 0 .75rem;min-height:0;border:0;border-bottom:1px solid var(--eche-rule);border-radius:0;background:transparent;font-family:var(--eche-font-sans);font-size:1.0625rem;line-height:1.65;color:var(--eche-ink);box-shadow:none;outline:0;transition:border-color .15s ease;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-group .elementor-field.elementor-field-textual:focus{border-bottom-color:var(--eche-accent);box-shadow:none;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-subgroup{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:.75rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-subgroup .elementor-field-option{display:inline-flex;align-items:center;gap:.5rem;margin:0;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-subgroup .elementor-field-option label{font-size:1.0625rem;line-height:1.65;color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.ba-form input[type=radio],.elementor .eh-sec .elementor-element.elementor-element.ba-form input[type=checkbox]{width:1rem;height:1rem;margin:0;accent-color:var(--eche-accent);}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-type-acceptance .elementor-field-subgroup{margin-top:0;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-type-acceptance .elementor-field-option{align-items:flex-start;gap:.75rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-type-acceptance input{margin-top:.25rem;flex-shrink:0;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label{font-size:.875rem;line-height:1.625;color:var(--eche-ink-soft);}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-field-type-acceptance a{color:var(--eche-accent);text-decoration:underline;text-underline-offset:4px;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-mark-required .elementor-field-label::after{content:" *";color:var(--eche-accent);}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .e-form__buttons{display:block;width:auto;margin-top:2rem;padding:0;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-button[type=submit]{display:inline-flex;align-items:center;padding:1rem 2rem;border:0;border-radius:0;background:var(--eche-accent);color:#fff;font-family:var(--eche-font-sans);font-size:.875rem;line-height:1.25rem;font-weight:400;letter-spacing:0;text-transform:none;transition:background-color .15s ease;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-button[type=submit]:hover,.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-button[type=submit]:focus-visible{background:var(--eche-ink);color:#fff;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-message{margin-top:1.5rem;font-size:.95rem;}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-message-success{color:var(--eche-ink);}
.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-message-danger,.elementor .eh-sec .elementor-element.elementor-element.ba-form .elementor-error .elementor-field-label{color:var(--eche-accent);}
.elementor .eh-sec .elementor-element.elementor-element.ba-note{margin-top:2rem;max-width:56rem;font-size:.875rem;line-height:1.25rem;color:var(--eche-ink-soft);}
.elementor .eh-sec .elementor-element.elementor-element.ba-note a{color:var(--eche-accent);text-decoration:underline;text-underline-offset:4px;}