/* ECAN Newsletter */
@font-face{font-family:"ECN Poppins";src:url(fonts/poppins-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"ECN Poppins";src:url(fonts/poppins-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"ECN Aleo";src:url(fonts/aleo-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}

.ecn{
  --ecn-ink:#16120B; --ecn-gold:#E0A417; --ecn-mustard:#DA9A2B; --ecn-cream:#fff8ea; --ecn-light:#F7ECD0;
  --ecn-body:"ECN Poppins",Poppins,system-ui,-apple-system,"Segoe UI",sans-serif;
  --ecn-display:"ECN Aleo",Aleo,Georgia,serif;
  container-type:inline-size; font-family:var(--ecn-body); font-size:16px; line-height:1.5; text-align:left;
  -webkit-font-smoothing:antialiased;
}
.ecn *,.ecn *::before,.ecn *::after{box-sizing:border-box}
/* Neutraliza estilos genéricos del tema (Divi) y de ECAN GEO */
.ecn h2,.ecn h5,.ecn p,.ecn label,.ecn form{margin:0;padding:0;letter-spacing:normal;text-transform:none;font-family:inherit;line-height:inherit}
.ecn [hidden]{display:none!important}

.ecn .ecn__title{font-family:var(--ecn-body);font-weight:600;font-size:22px;line-height:1.25;color:inherit}
.ecn .ecn__text{margin-top:6px;font-size:15px}
.ecn .ecn__form{margin-top:16px}
.ecn .ecn__fields{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.ecn .ecn__label{display:block;font-size:13px;font-weight:600;margin:0 0 4px;color:inherit}
.ecn .ecn__input{
  display:block;width:100%;height:48px;margin:0;padding:0 16px;border-radius:12px;
  font:400 16px/1.2 var(--ecn-body);box-shadow:none;outline:0;-webkit-appearance:none;appearance:none;
  transition:border-color .15s,background-color .15s;
}
.ecn .ecn__f--btn{display:flex;align-items:flex-end}
.ecn .ecn__btn{
  display:inline-flex;align-items:center;justify-content:center;width:100%;height:48px;margin:0;padding:0 24px;
  border:0;border-radius:12px;cursor:pointer;font:600 16px/1 var(--ecn-body);letter-spacing:normal;text-transform:none;
  white-space:nowrap;box-shadow:none;transition:transform .15s,filter .15s;
}
.ecn .ecn__btn:hover{filter:brightness(1.08)}
.ecn .ecn__btn:active{transform:translateY(1px)}
.ecn .ecn__btn:disabled{cursor:progress;opacity:.75}
.ecn .ecn__check{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-size:14px;line-height:1.45}
.ecn .ecn__cb{flex:none;width:20px;height:20px;margin:1px 0 0;cursor:pointer;accent-color:var(--ecn-ink)}
.ecn .ecn__check label{cursor:pointer;font-weight:400}
.ecn .ecn__check a{color:inherit;text-decoration:underline;text-underline-offset:2px;font-weight:600}
.ecn .ecn__err{margin-top:6px;font-size:13.5px;font-weight:600;line-height:1.35}
.ecn .ecn__err::before{content:"⚠ ";}
.ecn .ecn__err--cb{margin-left:30px}
.ecn .ecn__status{font-size:14px;font-weight:600}
.ecn .ecn__status:not(:empty){margin-top:12px}
.ecn .ecn__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.ecn .ecn__ok{display:flex;gap:12px;align-items:center;margin-top:16px;padding:16px 18px;border-radius:12px;font-weight:600;outline:0}
.ecn .ecn__ok-ico{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-size:16px}
.ecn :focus-visible{outline:3px solid currentColor;outline-offset:2px}
.ecn .ecn__input:focus-visible{outline-offset:1px}

/* ---------- Estilo «pie»: igual que las columnas del pie de Divi ---------- */
.ecn--pie{color:#000;font-family:Poppins,var(--ecn-body);font-size:14px;line-height:1.8}
.ecn--pie .ecn__title{font:700 20px/28px Poppins,var(--ecn-body);color:#333;padding-bottom:10px}
.ecn--pie .ecn__text{margin-top:0;font-size:14px;line-height:1.8;color:#000}
.ecn--pie .ecn__form{margin-top:12px}
.ecn--pie .ecn__fields{gap:8px}
/* Etiquetas solo para lectores de pantalla; a la vista, el texto de ejemplo */
.ecn--pie .ecn__label{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ecn--pie .ecn__input{height:42px;padding:0 18px;border-radius:25px;font:400 14px/1.2 Poppins,var(--ecn-body);background:var(--ecn-cream);color:var(--ecn-ink);border:1px solid rgba(0,0,0,.18)}
.ecn--pie .ecn__input::placeholder{color:#6b5a3a;opacity:1}
.ecn--pie .ecn__input:hover{border-color:rgba(0,0,0,.4)}
.ecn--pie .ecn__input:focus-visible{border-color:var(--ecn-ink);outline:2px solid var(--ecn-ink);outline-offset:1px}
.ecn--pie .ecn__input[aria-invalid="true"]{border-color:#6b1406;background:#fff1e6}
.ecn--pie .ecn__btn{height:42px;padding:0 22px;border-radius:25px;font:600 15px/1 Poppins,var(--ecn-body);background:var(--ecn-ink);color:#fff}
.ecn--pie .ecn__btn:focus-visible{outline:2px solid var(--ecn-ink);outline-offset:3px}
.ecn--pie .ecn__check{margin-top:10px;font-size:12.5px;line-height:1.5;gap:8px}
.ecn--pie .ecn__cb{width:16px;height:16px;margin-top:1px}
.ecn--pie .ecn__check a{color:#000}
.ecn--pie .ecn__err{font-size:12.5px;margin-top:4px}
.ecn--pie .ecn__err--cb{margin-left:24px}
.ecn--pie .ecn__err,.ecn--pie .ecn__status{color:#5a1004}
.ecn--pie .ecn__ok{margin-top:12px;padding:12px 14px;border-radius:14px;background:var(--ecn-cream);color:var(--ecn-ink);font-size:14px;line-height:1.5}
.ecn--pie .ecn__ok-ico{width:26px;height:26px;font-size:13px;background:var(--ecn-ink);color:var(--ecn-cream)}
@container (min-width:620px){
  .ecn--pie .ecn__fields{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) auto;align-items:start}
}

/* ---------- Estilo «banner»: caja oscura ---------- */
.ecn--banner{color:var(--ecn-light)}
.ecn--banner .ecn__in{background:var(--ecn-ink);border-radius:18px;padding:28px 22px;
  background-image:radial-gradient(70% 90% at 100% 0%,rgba(224,164,23,.16),transparent 60%)}
.ecn--banner .ecn__eyebrow{font:600 12px/1.4 var(--ecn-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ecn-gold);margin-bottom:10px}
.ecn--banner .ecn__title{font:700 28px/1.15 var(--ecn-display);color:var(--ecn-light)}
.ecn--banner .ecn__text{color:rgba(247,236,208,.82);font-size:16px;margin-top:10px}
.ecn--banner .ecn__label{color:rgba(247,236,208,.9)}
.ecn--banner .ecn__input{background:rgba(255,248,234,.08);color:#fff8ea;border:1.5px solid rgba(247,236,208,.28)}
.ecn--banner .ecn__input:hover{border-color:rgba(247,236,208,.5)}
.ecn--banner .ecn__input:focus-visible{border-color:var(--ecn-gold);background:rgba(255,248,234,.12);outline:3px solid var(--ecn-gold)}
.ecn--banner .ecn__input[aria-invalid="true"]{border-color:#ff9f88}
.ecn--banner .ecn__btn{background:var(--ecn-gold);color:#1a1409}
.ecn--banner .ecn__btn:focus-visible{outline:3px solid var(--ecn-gold);outline-offset:3px}
.ecn--banner .ecn__check{color:rgba(247,236,208,.88)}
.ecn--banner .ecn__check a{color:var(--ecn-gold)}
.ecn--banner .ecn__cb{accent-color:var(--ecn-gold)}
.ecn--banner .ecn__err,.ecn--banner .ecn__status{color:#ffb3a1}
.ecn--banner .ecn__ok{background:rgba(224,164,23,.14);border:1px solid rgba(224,164,23,.45);color:var(--ecn-light)}
.ecn--banner .ecn__ok-ico{background:var(--ecn-gold);color:#1a1409}
.ecn--banner :focus-visible{outline-color:var(--ecn-gold)}
@container (min-width:720px){
  .ecn--banner .ecn__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:44px;align-items:center;padding:44px 48px}
  .ecn--banner .ecn__title{font-size:34px}
  .ecn--banner .ecn__form,.ecn--banner .ecn__ok{margin-top:0}
}

/* ---------- Al final de las piezas ECAN GEO (antes de «Sigue leyendo») ---------- */
.ecn-auto{max-width:1180px;margin:0 auto;padding:16px 16px 8px}

@media (prefers-reduced-motion:reduce){.ecn *{transition:none!important}}
