/* One public identity, from the first guide to the final supporting page. */
body.af-public{--papel:#F7F6F2;--tarjeta:#FFF;--tinta:#0F172A;--suave:#475569;--canto:#D8E1EC;--sol:#065D35;--verde:#065D35;background:var(--papel);color:var(--tinta);margin:0;font-family:Inter,system-ui,sans-serif}
[data-tema="oscuro"] body.af-public{--papel:#08121E;--tarjeta:#111827;--tinta:#F8FAFC;--suave:#94A3B8;--canto:#334155;--sol:#75E6A1;--verde:#75E6A1;background:var(--papel)}
.af-public *, .af-public *::before, .af-public *::after{box-sizing:border-box}
.af-public .hoja{padding-top:24px}
.af-public .af-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 22px;margin:0 0 46px;border-bottom:1px solid var(--canto)}
.af-brand{display:flex;align-items:center;gap:10px;color:var(--tinta);text-decoration:none;flex-shrink:0;font-size:15px;font-weight:700;line-height:1.1;letter-spacing:.07em;min-height:44px}
.af-brand img{width:56px;height:56px;flex-shrink:0;border-radius:50%;display:block}
.af-nav nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 18px;margin-left:auto}
.af-nav nav a{display:flex;align-items:center;min-height:44px;font-size:13px;font-weight:600;line-height:1.3;color:var(--suave);text-decoration:none}
.af-nav nav a:hover,.af-footer a:hover{color:var(--sol);text-decoration:underline;text-underline-offset:4px}
.af-theme{display:grid;place-items:center;min-width:44px;min-height:44px;flex-shrink:0;border:1px solid var(--canto);border-radius:50%;background:transparent;color:var(--tinta);font:22px/1 system-ui;cursor:pointer}
.af-public :is(a,button,input,select,summary):focus-visible{outline:3px solid var(--sol);outline-offset:4px}
.af-skip{position:fixed;top:8px;left:8px;transform:translateY(-160%);z-index:100;background:#087844;color:#FFF;padding:12px 18px;border-radius:8px}
.af-skip:focus{transform:translateY(0)}
.af-public h1{font-family:'Space Grotesk',system-ui,sans-serif;font-size:clamp(34px,4.4vw,54px);font-weight:600;letter-spacing:-.045em;line-height:1.12;margin:0 0 24px;color:var(--tinta);overflow-wrap:break-word;text-wrap:balance}
.af-public h2{font-family:'Space Grotesk',system-ui,sans-serif;font-size:25px;line-height:1.25;letter-spacing:-.025em;text-transform:none;color:var(--tinta);margin:42px 0 16px;font-weight:600}
.af-public h3{font-size:18px;line-height:1.4;color:var(--tinta)}
.af-public .resumen{background:transparent;border:0;border-bottom:1px solid var(--canto);border-radius:0;padding:0 0 24px;margin:0 0 32px;font-size:18px;line-height:1.6;color:var(--suave)}
.af-public .fecha{font-size:12px;line-height:1.6;margin-bottom:16px}
.af-public .cifra{border:1px solid var(--canto);border-left:3px solid #087844;border-radius:10px;background:var(--tarjeta);padding:20px}
.af-public .tabla tr.yo{background:var(--tarjeta)}
.af-public .cta a,.af-public a.cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 20px;border-radius:12px;background:#087844;color:#FFF!important;text-decoration:none;line-height:1.4;font-size:15px;font-weight:600}
.af-public .cta a:hover,.af-public a.cta:hover{background:#065D35}
.af-public .carril{border-left:1px solid var(--canto);padding-left:28px}
.af-public .carril nav a{display:block;padding-top:10px;padding-bottom:10px;min-height:44px;line-height:1.4}
.af-public .carril .cta a{width:100%;text-align:center}
.af-public .hoja>img{max-height:240px;object-fit:cover;object-position:center;border-radius:10px!important}
.af-public .indice{display:block;padding:0;margin:28px 0}
.af-public .indice li{display:block;padding:22px 0;border-bottom:1px solid var(--canto);position:static}
.af-public .indice li::before{display:none}
.af-public .indice li>a{display:block;min-height:44px;font-family:'Space Grotesk',system-ui,sans-serif;font-size:23px;line-height:1.25;letter-spacing:-.02em;text-decoration:none}
.af-public .indice li .fino{display:block;font-size:14px;line-height:1.6;margin-top:8px;color:var(--suave)}
.af-public .af-footer{display:flex;flex-direction:column;gap:18px;border-top:1px solid var(--canto);padding:26px 0 0;margin-top:60px;color:var(--suave)}
.af-footer-intro strong{font-family:'Space Grotesk',system-ui,sans-serif;font-size:20px;color:var(--tinta)}
.af-footer-intro p{font-size:14px;margin:8px 0 0}
.af-footer nav{display:flex;flex-wrap:wrap;gap:0 20px}
.af-footer nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;font-size:13px;line-height:1.4;text-decoration:none}
@media(min-width:1100px){.af-public .hoja{padding-top:30px}.af-public .af-nav{margin-bottom:4px}.af-public .af-nav nav a{font-size:14px}.af-public .af-footer{display:grid;grid-template-columns:1fr 1.5fr;gap:50px}.af-public .hoja>img{max-height:220px}.af-public .lectura{min-width:0}}
@media(max-width:600px){.af-public .hoja{padding:18px 20px 48px}.af-public .af-nav{display:grid;grid-template-columns:1fr 44px;gap:12px;margin-bottom:32px;padding-bottom:16px}.af-nav .af-brand{grid-column:1;grid-row:1}.af-nav .af-theme{grid-column:2;grid-row:1}.af-nav nav{grid-column:1/-1;grid-row:2;width:100%;justify-content:space-between;margin:0;gap:4px}.af-nav nav a{font-size:13px}.af-public .hoja>img{display:none!important}.af-public .resumen{font-size:17px}.af-public .af-footer{margin-top:44px}.af-public .cifraN{font-size:34px}.af-public .tablaCaja{max-width:100%}}
@media(prefers-reduced-motion:reduce){.af-public *{scroll-behavior:auto!important;transition:none!important}}

.af-guide-index .hoja>img,.af-guide-index .carril{display:none!important}
.af-guide-index .indice li{counter-increment:af-guide;position:relative;padding-left:38px}
.af-guide-index .indice li::before{display:block;position:absolute;top:24px;left:0;width:auto;height:auto;border:0;background:none;content:counter(af-guide,decimal-leading-zero);font:12px/1.5 'IBM Plex Mono',monospace;color:var(--sol)}
.af-guide-index .indice{counter-reset:af-guide}
@media(min-width:1100px){.af-guide-index .hoja{grid-template-areas:"cab cab" "texto texto" "pie pie"}.af-guide-index .lectura>h1{max-width:740px;font-size:56px;margin-top:24px}.af-guide-index .resumen{max-width:680px}.af-guide-index .indice{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.af-guide-index .indice li>a{font-size:25px}.af-guide-index .indice li .fino{font-size:14px}.af-guide-index .lectura>.cta{margin-top:36px}}

.af-public .af-page-index{margin:20px 0 26px;border-top:1px solid var(--canto);border-bottom:1px solid var(--canto);padding:0}
.af-page-index>summary{cursor:pointer;min-height:48px;padding:12px 0;color:var(--sol);font-size:14px;font-weight:600}
.af-page-index nav{display:grid;padding:0 0 16px;gap:2px}
.af-page-index nav a{display:flex;align-items:center;min-height:44px;padding:10px 0;color:var(--suave);font-size:14px;line-height:1.4;text-decoration:none}
.af-page-index nav a:hover{color:var(--sol);text-decoration:underline}
.af-public h2[id],.af-public #af-arriba{scroll-margin-top:24px}
.af-public .af-next-read{border:1px solid var(--canto);border-top:3px solid #087844;border-radius:16px;background:var(--tarjeta);padding:28px;margin:48px 0 0}
.af-public .af-next-label{font-size:12px;color:var(--sol);font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px}
.af-public .af-next-read h2{margin:0 0 14px;font-size:29px}
.af-next-read>div{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center}
.af-next-read .af-more-guides{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:600}
@media(min-width:1100px){.af-public:has(.carril) .af-page-index{display:none}}

/* The same reading rhythm follows a visitor from a guide to its next step. */
.af-public .lectura>p:not(.fecha):not(.resumen){font-size:17px;line-height:1.75;margin-bottom:20px}
.af-public .lectura>h2{margin-top:48px}
.af-public .lectura>h2+p{margin-top:0}
.af-public .lectura li{line-height:1.7}
.af-public .tablaCaja{border:1px solid var(--canto);border-radius:12px;background:var(--tarjeta)}
.af-public .tablaCaja table{margin:0}
.af-public .tablaCaja th,.af-public .tablaCaja td{padding:14px 16px}
.af-public .tablaCaja thead{background:var(--papel)}
.af-public .tablaCaja tr:last-child td,.af-public .tablaCaja tr:last-child th[scope="row"]{border-bottom:0}
.af-public .af-page-index{border-radius:12px;border:1px solid var(--canto);background:var(--tarjeta);padding:0 16px}
.af-public .af-next-read>p:not(.af-next-label){font-size:16px;line-height:1.7;margin-bottom:22px}
.af-public .af-next-read h2{font-size:clamp(26px,3vw,34px);line-height:1.18;text-wrap:balance}
.af-public .af-footer nav a{margin-right:0}
.af-public .carril .carrilTit{font:600 12px/1.5 Inter,system-ui,sans-serif;letter-spacing:.04em;color:var(--suave)}
.af-public .carril li a{font-size:14px;line-height:1.5;min-height:44px;padding-top:10px;padding-bottom:10px}
.af-public .carril .finoCta{font-size:13px;line-height:1.6}
@media(min-width:1100px){.af-public .hoja{column-gap:72px;row-gap:32px;padding-bottom:88px}.af-public .af-nav{padding-bottom:24px;margin-bottom:8px}.af-public .carril{padding-left:32px}.af-public .af-footer{margin-top:48px;padding-top:32px}.af-guide-index .indice{gap:0 56px}.af-guide-index .indice li{padding-top:28px;padding-bottom:28px}.af-guide-index .indice li::before{top:31px}}
@media(max-width:600px){.af-public h1{font-size:clamp(32px,8.8vw,42px);line-height:1.13;letter-spacing:-.04em}.af-public .lectura>p:not(.fecha):not(.resumen){font-size:16px;line-height:1.75}.af-public .lectura>h2{margin-top:36px;font-size:24px}.af-public .af-next-read{padding:22px 18px;margin-top:36px}.af-next-read>div{align-items:stretch;gap:10px}.af-next-read a.cta{width:100%;text-align:center}.af-next-read .af-more-guides{justify-content:center;width:100%}.af-public .tablaCaja th,.af-public .tablaCaja td{padding:12px}.af-public .cifra{flex-wrap:wrap;gap:8px;padding:18px}.af-public .cifraQ{flex:1 1 160px}.af-public .af-page-index{margin-top:18px}.af-guide-index .indice li>a{font-size:22px}}
@media print{.af-public .af-next-read{break-inside:avoid;background:transparent}.af-public .af-nav,.af-public .af-footer,.af-public .af-page-index{display:none}.af-public .hoja{display:block;max-width:none;padding:0}.af-public .tablaCaja{overflow:visible}}

/* Short entrances keep the guides in the same visual rhythm as the estimator. */
@keyframes af-public-enter{from{opacity:.5;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){
  .af-public .lectura>h1{animation:af-public-enter 400ms ease-out}
  .af-public .lectura>.resumen{animation:af-public-enter 450ms 60ms ease-out both}
  .af-public :is(a.cta,.cta a,.af-theme){transition:background-color 160ms,border-color 160ms,transform 160ms}
  .af-public .af-page-index[open]>nav{animation:af-public-enter 220ms ease-out}
  @media(hover:hover) and (pointer:fine){.af-public :is(a.cta,.cta a):hover{transform:translateY(-2px)}}
}
@media(prefers-reduced-motion:reduce){.af-public *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
