/* Ritmo común del hogar y de las guías. Verde para actuar, tinta para leer.
   Los avisos del cálculo conservan sus colores y los valores nunca se animan. */
:root { --af-action:#087844; --af-gold:#E8BF62; --af-gold-ink:#7A5C16; --af-radius:16px; --af-ease:cubic-bezier(.2,.7,.3,1); }
.af-app:has(.afh) .wrap { max-width:1160px; }
.af-app:has(.afh) .cabeceraApp { padding-bottom:12px; }
.af-app:has(.afh) .navegacionSitio { margin:8px 0 0; padding-bottom:8px; }
.af-app .afh .afh-hero { grid-template-areas:"copy" "estimate"; gap:28px; padding:36px 0 32px; }
.af-app .afh .afh-copy { align-self:center; }
.af-app .afh .afh-copy .afh-location { margin:0 0 18px; font-size:13px; font-weight:500; }
.af-app .afh h1 { max-width:12ch; font-size:clamp(40px,5vw,64px); line-height:1.05; letter-spacing:-.045em; }
.af-app .afh h1 span { font-size:.82em; color:var(--afh-text); font-weight:500; margin-top:8px; }
.af-app .afh .afh-intro { font-size:17px; line-height:1.7; max-width:39ch; }
.af-app .afh .afh-trust { font-size:14px; margin-top:18px; }
.af-app .afh-route { display:flex; flex-wrap:wrap; gap:14px 22px; padding:0; margin:26px 0 0; list-style:none; }
.af-app .afh-route li { display:flex; align-items:center; gap:8px; font-size:13px; line-height:1.5; color:var(--afh-mute); }
.af-app .afh-route li>span { display:grid; place-items:center; flex:0 0 26px; height:26px; border:1px solid var(--afh-edge); border-radius:50%; font-size:12px; color:var(--afh-text); }
.af-app .afh-route li:first-child>span { border-color:var(--afh-brand); color:var(--afh-brand); }
.af-app .afh .afh-estimate { border-radius:var(--af-radius); box-shadow:0 10px 34px rgb(8 18 30 / 5%); border-top:2px solid var(--af-gold); padding:28px; }
.af-app .afh .afh-estimate::before { display:none; }
.af-app .afh .afh-estimate-heading { margin-bottom:20px; }
.af-app .afh .afh-estimate-heading h2 { font-size:26px; }
.af-app .afh .afh-field input,.af-app .afh .afh-field select { border-radius:12px; border-color:var(--afh-mute); }
.af-app .afh .afh-primary,.af-app .afh .afh-secondary { border-radius:12px; }
.af-app .afh .afh-learn { border:0; border-bottom:1px solid var(--afh-edge); margin:0; padding:0; }
.af-app .afh .afh-learn>summary { padding:18px 0; font-size:15px; min-height:56px; }
.af-app .afh .afh-learn .afh-solar-explainer { border:0; border-radius:0; background:transparent; padding:14px 0 24px; margin:0; max-width:680px; }
.af-app .afh .afh-solar-scene { max-width:440px; }
.af-app .afh .fa-ayuda { margin-top:0; border:0; border-top:1px solid var(--afh-edge); border-radius:0; padding:0; }
.af-app .afh .afh-section { padding:40px 0; }
.af-app .afh .afh-principle h3 { font-size:22px; }
.af-app .afh .afh-nav { justify-content:flex-end; margin:12px 0; }
.af-app .afh .afh-nav .afh-location { display:none; }

/* Dos pasos visibles; la ayuda y los datos anteriores quedan juntos. */
.af-app.af-calculo-hogar .gh-calculo { max-width:850px; margin:24px auto; padding:0 0 20px; border:0; border-bottom:1px solid var(--ui-edge); border-radius:0; background:transparent; }
.af-app.af-calculo-hogar .gh-calculo-context { margin-bottom:8px; color:var(--ui-mute); font-weight:500; }
.af-app.af-calculo-hogar .gh-calculo h1 { font:600 clamp(28px,3vw,36px)/1.2 'Space Grotesk',system-ui,sans-serif; letter-spacing:-.035em; margin:0; color:var(--ui-text); }
.af-app.af-calculo-hogar .gh-calculo .gh-calculo-actions { display:grid; grid-template-columns:1fr 1fr; gap:4px; border:1px solid var(--ui-edge); padding:4px; border-radius:14px; margin:20px 0 8px; background:var(--ui-surface); }
.af-app.af-calculo-hogar .gh-calculo-actions .chip { width:auto; min-height:48px; padding:10px 12px; border:1px solid transparent; border-radius:10px; font-size:14px; font-weight:500; background:transparent; }
.af-app.af-calculo-hogar .gh-calculo-actions .chip.on { background:var(--ui-page); color:var(--ui-brand); border-color:var(--ui-edge); box-shadow:inset 0 -2px var(--ui-brand); }
.af-app.af-calculo-hogar .gh-calculo-ayuda>summary { color:var(--ui-mute); }
.af-app.af-calculo-hogar .gh-calculo-ayuda .fa-ayuda { margin-top:12px; }
.af-app.af-calculo-hogar .gh-consumo { border:0; border-bottom:1px solid var(--ui-edge); border-radius:0; background:transparent; padding:0 0 18px; margin:16px 0 22px; }
.af-app.af-calculo-hogar .gh-consumo h3 { font-size:19px; }
.af-app.af-calculo-hogar .he-selector { gap:10px; margin:20px 0 26px; }
.af-app.af-calculo-hogar .he-choice { min-height:112px; border-radius:12px; padding:14px; gap:6px; }
.af-app.af-calculo-hogar .he-choice svg { width:26px; height:26px; }
.af-app.af-calculo-hogar .he-choice strong { font-size:15px; }
.af-app.af-calculo-hogar .he-included { border-color:var(--ui-brand); background:color-mix(in srgb,var(--ui-brand) 5%,var(--ui-surface)); }
.af-app.af-calculo-hogar .he-panel { border:0; border-top:1px solid var(--ui-edge); border-radius:0; background:transparent; margin:0; }
.af-app.af-calculo-hogar .he-panel>summary { padding:18px 0; border-radius:0; }
.af-app.af-calculo-hogar .he-panel[open]>summary { border-radius:0; border-bottom:0; margin-bottom:0; }
.af-app.af-calculo-hogar .he-titulo { font-size:17px; }
.af-app.af-calculo-hogar .he-resumen { font-size:13px; }
.af-app.af-calculo-hogar .he-contenido { padding:0 0 20px; }
.af-app.af-calculo-hogar .ch-publico { border-radius:var(--af-radius); box-shadow:0 10px 34px rgb(8 18 30 / 5%); }
.af-app.af-calculo-hogar .ch-publico::before { display:none; }
.af-app.af-calculo-hogar .ch-publico .ch-payment-totals { gap:0; border:1px solid var(--ui-edge); border-radius:12px; overflow:hidden; margin:24px 0 16px; }
.af-app.af-calculo-hogar .ch-payment-totals .ch-cost { border:0; border-right:1px solid var(--ui-edge); border-radius:0; padding:18px; }
.af-app.af-calculo-hogar .ch-payment-totals .ch-total { border-right:0; background:color-mix(in srgb,var(--ui-brand) 5%,var(--ui-surface)); }
.af-app.af-calculo-hogar .ch .ch-preview { padding:0; }
.af-app.af-calculo-hogar .ch-contact .chip,.af-app.af-calculo-hogar .ch .ch-action { border-radius:12px; }

/* Las páginas de lectura comparten el papel, el verde y los mismos controles. */
.af-public .af-theme { border-radius:12px; }
.af-public .cifra,.af-public .af-next-read,.af-public .actualidad-solar { border-radius:var(--af-radius); box-shadow:none; background:var(--tarjeta); }
.af-public .actualidad-solar h2 { margin-top:12px; }
.af-public .af-next-read { border-top-width:1px; }
.af-public .af-next-label { color:var(--suave); letter-spacing:.04em; }
.af-public .cta a,.af-public a.cta { min-height:52px; border-radius:12px; }
.af-public.af-guide-index .indice { gap:16px; }
.af-public.af-guide-index .indice li { border:1px solid var(--canto); border-radius:var(--af-radius); padding:24px 22px 22px 52px; background:var(--tarjeta); }
.af-public.af-guide-index .indice li::before { top:28px; left:20px; color:var(--suave); }
.af-public.af-guide-index .indice li>a { font-size:23px; text-decoration:none; color:var(--tinta); }
.af-public.af-guide-index .indice li>a:hover { color:var(--sol); }
.af-public .carril { border-left:0; }

@media(min-width:900px) {
  .af-app .afh .afh-hero { grid-template-columns:1fr minmax(380px,.9fr); grid-template-areas:"copy estimate"; gap:64px; padding:48px 0 42px; }
}
@media(max-width:600px) {
  .af-app .afh .afh-hero { gap:20px; padding:20px 0 24px; }
  .af-app .afh h1 { font-size:clamp(30px,8vw,38px); max-width:none; line-height:1.12; margin-bottom:14px; }
  .af-app .afh h1 span { margin-top:8px; }
  .af-app .afh .afh-copy .afh-location { margin-bottom:12px; }
  .af-app .afh .afh-intro { font-size:16px; line-height:1.55; }
  .af-app .afh .afh-trust { margin-top:12px; }
  .af-app .afh-route { gap:8px 14px; margin-top:18px; }
  .af-app .afh-route li { gap:6px; font-size:12px; }
  .af-app .afh-route li>span { flex-basis:23px; height:23px; }
  .af-app .afh .afh-estimate { padding:22px 18px; }
  .af-app .afh .afh-estimate-heading h2 { font-size:24px; }
  .af-app .afh .afh-section { padding:32px 0; }
  .af-app.af-calculo-hogar .gh-calculo { margin:18px 0; }
  .af-app.af-calculo-hogar .gh-calculo-actions .chip { font-size:13px; padding:10px 7px; }
  .af-app.af-calculo-hogar .he-choice { min-height:112px; padding:14px; }
  .af-app.af-calculo-hogar .ch-publico .ch-payment-totals .ch-cost { border-right:0; border-bottom:1px solid var(--ui-edge); padding:16px; }
  .af-app.af-calculo-hogar .ch-publico .ch-payment-totals .ch-total { border-bottom:0; }
  .af-public.af-guide-index .indice { display:grid; grid-template-columns:1fr; }
}

/* Cada entrada termina en menos de medio segundo; no hay ciclos de atención. */
@keyframes af-calm-in { from { opacity:.7; transform:translateY(6px); } to { opacity:1; transform:none; } }
@media(prefers-reduced-motion:no-preference) {
  .af-app .afh-copy,.af-app .afh-estimate { animation:af-calm-in 320ms var(--af-ease) both; }
  .af-app .afh-estimate { animation-delay:60ms; }
  .af-app .afh-route li { animation:af-calm-in 280ms var(--af-ease) both; }
  .af-app .afh-route li:nth-child(2) { animation-delay:60ms; }
  .af-app .afh-route li:nth-child(3) { animation-delay:120ms; }
  .af-app.af-calculo-hogar .gh-consumo,.af-app.af-calculo-hogar .ch-publico { animation:af-calm-in 260ms var(--af-ease); }
  .af-app .afh-learn[open]>.afh-solar-explainer,.af-public details[open]>:not(summary) { animation:af-calm-in 200ms ease-out; }
  .af-app.af-calculo-hogar .he-choice,.af-public.af-guide-index .indice li { transition:border-color 160ms,background-color 160ms; }
  @media(hover:hover) and (pointer:fine) {
    .af-app.af-calculo-hogar .he-choice:hover,.af-public.af-guide-index .indice li:hover { border-color:var(--ui-brand,var(--sol)); }
  }
}
@media(prefers-reduced-motion:reduce) {
  .af-app .afh *,.af-app.af-calculo-hogar *,.af-public * { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

/* El dorado enmarca la identidad; el verde sigue indicando la acción. */
html[data-tema="oscuro"] { --af-gold-ink:#E8BF62; }
.af-public .af-next-read { border-top:2px solid var(--af-gold); }
.af-public.af-guide-index .indice li::before { color:var(--af-gold-ink); }
