/* Energía Eficiente Asociados: estilos de páginas propias (prefijo .eea) */
:root{
  --eea-bg:#F4F6F9; --eea-surface:#FFFFFF; --eea-ink:#0E1E33; --eea-navy:#002E58; --eea-navy-deep:#00213F;
  --eea-muted:#4A5A70; --eea-line:#DCE3EC; --eea-accent:#FF6203; --eea-accent-dark:#D94F00; --eea-accent-soft:#FFF1E8;
  --eea-head:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --eea-body:"Source Sans 3","Source Sans Pro",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --eea-wrap:1180px; --eea-r:14px; --eea-shadow:0 18px 40px -22px rgba(0,46,88,.35);
}
html:has(body.eea-page){overflow-x:clip}
body.eea-page .entry-content > .eea,
body.eea-page .eea{max-width:none!important;width:100vw;margin-left:calc(50% - 50vw)!important;margin-right:0!important;margin-top:0!important;margin-bottom:0!important}
.eea{font-family:var(--eea-body);color:var(--eea-ink);font-size:18px;line-height:1.6;background:var(--eea-surface)}
.eea *,.eea *::before,.eea *::after{box-sizing:border-box}
.eea h1,.eea h2,.eea h3,.eea h4{font-family:var(--eea-head);color:var(--eea-navy);line-height:1.12;margin:0 0 .5em;letter-spacing:-.01em}
.eea h1{font-size:clamp(2.1rem,4.4vw,3.5rem);font-weight:800}
.eea h2{font-size:clamp(1.7rem,3vw,2.5rem);font-weight:800}
.eea h3{font-size:1.25rem;font-weight:700}
.eea p{margin:0 0 1em;max-width:62ch}
.eea a{color:inherit}
.eea-wrap{max-width:var(--eea-wrap);margin:0 auto;padding:0 24px}
.eea-sec{padding:clamp(56px,8vw,104px) 0}
.eea-sec--tint{background:var(--eea-bg)}
.eea-sec--navy{background:var(--eea-navy);color:#E6EDF5}
.eea-sec--navy h1,.eea-sec--navy h2,.eea-sec--navy h3{color:#fff}
.eea-lead{font-size:1.2rem;color:var(--eea-muted)}
.eea-sec--navy .eea-lead{color:#C9D6E5}
.eea-hl{color:var(--eea-accent)}
.eea-eyebrow{display:inline-block;font-family:var(--eea-head);font-weight:700;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--eea-accent);margin-bottom:14px}

/* Botones */
.eea-btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--eea-head);font-weight:700;font-size:1rem;padding:16px 30px;border-radius:999px;text-decoration:none!important;border:2px solid transparent;transition:transform .15s ease,background-color .15s ease,border-color .15s ease;white-space:nowrap;cursor:pointer;line-height:1.2}
.eea-btn--primary{background:var(--eea-accent);color:#fff!important}
.eea-btn--primary:hover{background:var(--eea-accent-dark);transform:translateY(-1px)}
.eea-btn--ghost{border-color:rgba(255,255,255,.55);color:#fff!important;background:transparent}
.eea-btn--ghost:hover{border-color:#fff}
.eea-btn--line{border-color:var(--eea-navy);color:var(--eea-navy)!important}
.eea-btn:active{transform:translateY(1px)}
.eea-btn svg{width:18px;height:18px}
.eea-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}

/* Hero */
.eea-hero{position:relative;overflow:hidden;background:var(--eea-navy);color:#E6EDF5;padding:clamp(56px,7vw,96px) 0 clamp(64px,8vw,110px)}
.eea-hero::after{content:"";position:absolute;right:-8%;bottom:-30%;width:62%;height:160%;background:linear-gradient(115deg,transparent 48%,rgba(255,98,3,.12) 48.2%,rgba(255,98,3,.12) 56%,transparent 56.2%);pointer-events:none}
.eea-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.eea-hero h1{color:#fff;max-width:14ch}
.eea-hero .eea-lead{color:#C9D6E5;max-width:46ch}
.eea-hero__visual{background:#fff;border-radius:22px;padding:28px 28px 22px;box-shadow:0 30px 60px -30px rgba(0,0,0,.55);transform:rotate(1.5deg);margin:0}
.eea-hero__visual figcaption{font-size:.9rem;color:var(--eea-muted);margin-top:10px}
.eea-chart{width:100%;height:auto;display:block}

/* Cifras */
.eea-facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--eea-line);border-bottom:1px solid var(--eea-line)}
.eea-fact{padding:34px 28px}
.eea-fact + .eea-fact{border-left:1px solid var(--eea-line)}
.eea-fact strong{display:block;font-family:var(--eea-head);font-weight:800;font-size:clamp(2rem,3.4vw,2.8rem);color:var(--eea-accent);line-height:1}
.eea-fact span{display:block;margin-top:10px;color:var(--eea-muted);font-size:1rem;max-width:26ch}

/* Factura: dos palancas */
.eea-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.eea-levers{display:grid;gap:18px}
.eea-lever{background:#fff;border:1px solid var(--eea-line);border-radius:var(--eea-r);padding:26px 28px;display:grid;grid-template-columns:56px 1fr;gap:18px;align-items:start}
.eea-lever__icon{width:56px;height:56px;border-radius:14px;background:var(--eea-accent-soft);display:grid;place-items:center}
.eea-lever__icon svg{width:28px;height:28px}
.eea-lever h3{margin-bottom:.3em}
.eea-lever p{margin:0;color:var(--eea-muted);font-size:1.02rem}

/* Potencia (sección destacada) */
.eea-power{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}
.eea-power__chart{background:var(--eea-navy-deep);border-radius:22px;padding:30px;margin:0 0 0 calc(-1 * clamp(0px,4vw,60px))}
.eea-power ul{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:14px}
.eea-power li{position:relative;padding-left:34px;color:#D5E0EC}
.eea-power li::before{content:"";position:absolute;left:0;top:.3em;width:20px;height:20px;border-radius:50%;background:var(--eea-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.eea-note{font-size:.88rem;color:#9FB2C8;margin-top:12px}

/* Servicios bento */
.eea-bento{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:auto auto;gap:20px;margin-top:40px}
.eea-tile{border-radius:var(--eea-r);padding:34px;background:#fff;border:1px solid var(--eea-line)}
.eea-tile--big{grid-row:span 2;background:var(--eea-navy);border-color:var(--eea-navy);color:#D5E0EC;display:flex;flex-direction:column;justify-content:space-between}
.eea-tile--big h3{color:#fff;font-size:1.6rem}
.eea-tile--soft{background:var(--eea-accent-soft);border-color:#FFD9C2}
.eea-tile p{margin:0;font-size:1.02rem}
.eea-tile:not(.eea-tile--big) p{color:var(--eea-muted)}
.eea-tile__tag{font-family:var(--eea-head);font-weight:700;font-size:.85rem;color:var(--eea-accent);margin-top:22px}

/* Proceso */
.eea-steps{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:s;position:relative}
.eea-steps::before{content:"";position:absolute;left:0;right:0;top:22px;height:2px;background:linear-gradient(90deg,var(--eea-accent),var(--eea-line))}
.eea-steps li{position:relative;padding:0 22px 0 0}
.eea-steps li::before{counter-increment:s;content:counter(s);position:relative;z-index:1;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#fff;border:2px solid var(--eea-accent);font-family:var(--eea-head);font-weight:800;color:var(--eea-navy);margin-bottom:20px}
.eea-steps h3{font-size:1.1rem}
.eea-steps p{font-size:1rem;color:var(--eea-muted);margin:0}

/* FAQ */
.eea-faq{max-width:820px}
.eea-faq details{border-bottom:1px solid var(--eea-line);padding:20px 0}
.eea-faq summary{cursor:pointer;list-style:none;font-family:var(--eea-head);font-weight:700;color:var(--eea-navy);font-size:1.1rem;display:flex;justify-content:space-between;gap:20px}
.eea-faq summary::-webkit-details-marker{display:none}
.eea-faq summary::after{content:"+";color:var(--eea-accent);font-size:1.5rem;line-height:1;transition:transform .2s}
.eea-faq details[open] summary::after{transform:rotate(45deg)}
.eea-faq details p{margin:12px 0 0;color:var(--eea-muted)}

/* CTA final */
.eea-cta{display:grid;grid-template-columns:1.3fr auto;gap:40px;align-items:center}
.eea-cta h2{margin:0 0 .3em}
.eea-cta p{margin:0}

/* Landing */
.eea-topbar{background:var(--eea-navy);padding:18px 0}
.eea-topbar .eea-wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}
.eea-topbar img{height:54px;width:auto;display:block}
.eea-topbar a.eea-toplink{font-family:var(--eea-head);font-weight:700;color:#fff;text-decoration:none;font-size:.95rem}
.eea-lhero{background:var(--eea-navy);color:#E6EDF5;padding:clamp(40px,6vw,80px) 0 clamp(60px,8vw,100px);position:relative;overflow:hidden}
.eea-lhero::after{content:"";position:absolute;left:-10%;top:-40%;width:55%;height:180%;background:linear-gradient(115deg,transparent 48%,rgba(255,98,3,.10) 48.2%,rgba(255,98,3,.10) 55%,transparent 55.2%);pointer-events:none}
.eea-lhero__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
.eea-lhero h1{color:#fff;max-width:15ch}
.eea-lhero .eea-lead{color:#C9D6E5}
.eea-hl--nw{white-space:nowrap}
.eea-checks{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px}
.eea-checks li{position:relative;padding-left:34px;color:#D5E0EC}
.eea-checks li::before,.eea-tile--big li::before{content:"";position:absolute;left:0;top:.3em;width:20px;height:20px;border-radius:50%;background:var(--eea-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.eea-tile--big ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px}
.eea-tile--big li{padding-left:32px;position:relative}
.eea-pains{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin-top:36px;border-top:1px solid var(--eea-line)}
.eea-pain{padding:26px 30px 26px 0;border-bottom:1px solid var(--eea-line)}
.eea-pain:nth-child(odd){padding-right:40px;border-right:1px solid var(--eea-line)}
.eea-pain:nth-child(even){padding-left:40px}
.eea-pain h3{font-size:1.15rem}
.eea-pain p{margin:0;color:var(--eea-muted);font-size:1.02rem}
.eea-free{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center}
.eea-free__badge{width:170px;height:170px;border-radius:50%;background:var(--eea-accent);color:#fff;display:grid;place-items:center;text-align:center;font-family:var(--eea-head);font-weight:800;font-size:2.6rem;line-height:1;transform:rotate(-8deg);box-shadow:0 20px 40px -20px rgba(255,98,3,.8)}
.eea-free__badge small{display:block;font-size:.85rem;font-weight:700;letter-spacing:.08em;margin-top:6px}
.eea-foot{background:var(--eea-navy-deep);color:#9FB2C8;padding:30px 0;font-size:.92rem}
.eea-foot .eea-wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;align-items:center}
.eea-foot img{height:38px;width:auto}
.eea-foot a{color:#C9D6E5}

/* Formulario */
.eea-form{background:#fff;color:var(--eea-ink);border-radius:20px;padding:32px;box-shadow:0 30px 60px -30px rgba(0,0,0,.55)}
.eea .eea-form h2,.eea .eea-form h3{font-size:1.45rem;margin-bottom:.3em;color:var(--eea-navy)}
.eea-form > p{color:var(--eea-muted);font-size:1rem}
.eea-form form{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin-top:18px}
.eea-form .eea-f{display:flex;flex-direction:column;gap:6px}
.eea-form .eea-f--full{grid-column:1 / -1}
.eea-form label{font-family:var(--eea-head);font-weight:600;font-size:.85rem;color:var(--eea-navy)}
.eea-form input[type=text],.eea-form input[type=email],.eea-form input[type=tel],.eea-form select,.eea-form textarea{width:100%;font:inherit;font-size:1rem;color:var(--eea-ink);background:#fff;border:1.5px solid var(--eea-line);border-radius:6px;padding:12px 14px;min-height:48px}
.eea-form textarea{min-height:96px;resize:vertical}
.eea-form input:focus,.eea-form select:focus,.eea-form textarea:focus{outline:none;border-color:var(--eea-accent);box-shadow:0 0 0 3px rgba(255,98,3,.18)}
.eea-form .eea-consent{grid-column:1 / -1;display:flex;gap:10px;align-items:flex-start;font-size:.9rem;color:var(--eea-muted);font-family:var(--eea-body);font-weight:400}
.eea-form .eea-consent input{margin-top:4px;accent-color:var(--eea-accent);width:18px;height:18px;flex:none}
.eea-form .eea-btn{grid-column:1 / -1;justify-content:center;width:100%;border:0}
.eea-form .eea-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.eea-msg{grid-column:1 / -1;border-radius:8px;padding:14px 16px;font-size:1rem;margin-top:14px}
.eea-msg--ok{background:#E8F6EE;color:#13603A;border:1px solid #BFE5CF}
.eea-msg--err{background:#FDECEC;color:#8A1F1F;border:1px solid #F4C4C4}
.eea-form small.eea-fine{grid-column:1/-1;color:var(--eea-muted);font-size:.82rem}
.eea-steps--3{grid-template-columns:repeat(3,1fr)}

/* Responsive */
@media (max-width: 980px){
  .eea-hero__grid,.eea-lhero__grid,.eea-split,.eea-power,.eea-cta{grid-template-columns:1fr;gap:40px}
  .eea-power__chart{margin-left:0}
  .eea-hero__visual{transform:none}
  .eea-steps{grid-template-columns:1fr 1fr;gap:32px 0}
  .eea-steps--3{grid-template-columns:1fr}
  .eea-steps::before{display:none}
}
@media (max-width: 680px){
  .eea{font-size:17px}
  .eea-facts{grid-template-columns:1fr}
  .eea-fact + .eea-fact{border-left:0;border-top:1px solid var(--eea-line)}
  .eea-bento{grid-template-columns:1fr}
  .eea-tile--big{grid-row:auto}
  .eea-steps{grid-template-columns:1fr}
  .eea-pains{grid-template-columns:1fr}
  .eea-pain:nth-child(odd),.eea-pain:nth-child(even){padding:22px 0;border-right:0}
  .eea-free{grid-template-columns:1fr;justify-items:start}
  .eea-form{padding:24px}
  .eea-form form{grid-template-columns:1fr}
  .eea-btn{white-space:normal}
  .eea-topbar img{height:40px}
  .eea-lhero .eea-hl,.eea-hero .eea-hl{white-space:normal}
}
@media (prefers-reduced-motion: reduce){.eea *{transition:none!important}}

/* Formulario de factura */
.eea-form fieldset{border:0;margin:0;padding:0;min-width:0}
.eea-form legend,.eea-form .eea-label{font-family:var(--eea-head);font-weight:600;font-size:.85rem;color:var(--eea-navy);margin-bottom:6px;padding:0}
.eea-seg{display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:8px!important}
.eea-seg legend{width:100%}
.eea-seg label{position:relative;cursor:pointer;font-family:var(--eea-body)!important;font-weight:600!important;font-size:.95rem!important}
.eea-seg input{position:absolute;opacity:0;pointer-events:none}
.eea-seg span{display:inline-block;padding:10px 18px;border:1.5px solid var(--eea-line);border-radius:999px;color:var(--eea-ink);background:#fff;transition:all .15s}
.eea-seg input:checked + span{background:var(--eea-navy);border-color:var(--eea-navy);color:#fff}
.eea-seg input:focus-visible + span{box-shadow:0 0 0 3px rgba(255,98,3,.35)}
.eea-drop{position:relative;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:28px 18px;border:2px dashed #B9C7D8;border-radius:14px;background:#F7F9FC;cursor:pointer;transition:border-color .15s,background .15s;font-family:var(--eea-body)!important;font-weight:400!important;color:var(--eea-muted)!important;font-size:.92rem!important}
.eea-drop svg{width:34px;height:34px;color:var(--eea-accent)}
.eea-drop strong{font-family:var(--eea-head);color:var(--eea-navy);font-size:1rem}
.eea-drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.eea-drop:hover,.eea-drop.is-over{border-color:var(--eea-accent);background:var(--eea-accent-soft)}
.eea-drop:focus-within{border-color:var(--eea-accent);box-shadow:0 0 0 3px rgba(255,98,3,.18)}
.eea-drop.has-files{border-style:solid;border-color:#9FD1B4;background:#F1FAF5}
.eea-files{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.eea-files li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--eea-line);border-radius:8px;font-size:.92rem;background:#fff}
.eea-files li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.eea-files button{background:none;border:0;color:var(--eea-accent-dark);font-weight:600;cursor:pointer;padding:4px 6px;font-size:.88rem}
.eea-hint{display:block;margin-top:8px;color:var(--eea-muted);font-size:.85rem}
.eea-secure{grid-column:1/-1;display:flex;align-items:center;gap:8px;margin:0!important;font-size:.88rem;color:var(--eea-muted)}
.eea-secure svg{width:18px;height:18px;flex:none;color:var(--eea-navy)}
.eea-rgpd{grid-column:1/-1;border:1px solid var(--eea-line);border-radius:10px;padding:12px 14px;font-size:.85rem;color:var(--eea-muted);background:#FAFBFD}
.eea-rgpd summary{cursor:pointer;font-family:var(--eea-head);font-weight:600;color:var(--eea-navy);font-size:.85rem}
.eea-rgpd dl{display:grid;grid-template-columns:110px 1fr;gap:6px 12px;margin:12px 0 0}
.eea-rgpd dt{font-weight:600;color:var(--eea-navy)}
.eea-rgpd dd{margin:0}
.eea-form .eea-btn:disabled{opacity:.7;cursor:wait}
.eea-done{text-align:center;padding:24px 6px}
.eea-done__icon{width:72px;height:72px;border-radius:50%;background:#1E9E5A;display:grid;place-items:center;margin:0 auto 18px}
.eea-done__icon svg{width:38px;height:38px}
.eea-done p{margin:0 auto;color:var(--eea-muted)}
.eea-what{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin-top:34px;border-top:1px solid var(--eea-line)}
.eea-what > div{padding:24px 28px 24px 0;border-bottom:1px solid var(--eea-line)}
.eea-what > div:nth-child(odd){border-right:1px solid var(--eea-line);padding-right:36px}
.eea-what > div:nth-child(even){padding-left:36px}
.eea-what h3{font-size:1.1rem;margin-bottom:.35em}
.eea-what p{margin:0;color:var(--eea-muted);font-size:1rem}
@media (max-width:680px){.eea-what{grid-template-columns:1fr}.eea-what > div:nth-child(odd),.eea-what > div:nth-child(even){padding:20px 0;border-right:0}.eea-rgpd dl{grid-template-columns:1fr}}

/* Textos legales */
.eea-legal{max-width:820px;margin:0 auto;padding:clamp(40px,6vw,80px) 24px}
.eea-legal h1{font-size:clamp(2rem,3.6vw,2.8rem)}
.eea-legal h2{font-size:1.35rem;margin-top:2em}
.eea-legal p,.eea-legal li{max-width:none;color:#2B3A4E}
.eea-legal ul{padding-left:1.2em}
.eea-legal .eea-updated{color:var(--eea-muted);font-size:.95rem}
.eea-legal table{width:100%;border-collapse:collapse;font-size:.95rem;margin:1em 0}
.eea-legal th,.eea-legal td{border:1px solid var(--eea-line);padding:10px 12px;text-align:left;vertical-align:top}
.eea-legal th{background:var(--eea-bg);color:var(--eea-navy);font-family:var(--eea-head);font-size:.9rem}
.eea-legal .eea-tablewrap{overflow-x:auto}
.eea-titular{list-style:none;padding:0!important;margin:1em 0;border-left:3px solid var(--eea-accent);padding-left:16px!important}
