/* ════════════════════════════════════════════════════════════════
   TRAYECTORIA · contenido de la Fundación Misión Ecuador
   (lo genera _fuente/generar.py). Misma gramática que styles.css:
   reglas finas, fotos grandes sin marco, cifras en Anton, sin tarjetas.
   ════════════════════════════════════════════════════════════════ */
.capitulo h3{font-family:Anton,Impact,sans-serif;font-weight:400;text-transform:uppercase;line-height:1}
.aliados-titulo{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--tinta2)}

/* 05 · Origen */
.origen-cuerpo{display:grid;grid-template-columns:repeat(12,1fr);column-gap:20px;margin-top:56px;align-items:start}
.origen-foto{grid-column:1 / 8}
.origen-foto img{width:100%;aspect-ratio:3/2;object-fit:cover}
.origen-foto figcaption{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--tinta2);margin-top:10px}
.origen-texto{grid-column:8 / 13;padding-left:clamp(0px,2vw,32px)}
.origen-texto p{color:var(--tinta2)}
.origen-texto p+p{margin-top:18px}
.origen-texto .origen-mision{color:var(--navy);font-weight:600;font-size:1.12em;line-height:1.4;border-top:1px solid var(--navy);padding-top:22px;margin-top:30px}
@media (max-width:900px){.origen-foto,.origen-texto{grid-column:1 / 13}.origen-texto{padding:28px 0 0}}

/* 06 · Ediciones */
.ediciones-intro{max-width:62ch;margin-top:28px;color:var(--tinta2);font-size:1.06em}
.eds{list-style:none;margin-top:64px;border-top:1px solid var(--navy)}
.ed{display:grid;grid-template-columns:170px minmax(180px,300px) 1fr;column-gap:clamp(20px,3vw,48px);padding:30px 0;border-bottom:1px solid var(--regla);align-items:start}
.ed-anio{font-family:Anton,Impact,sans-serif;font-size:clamp(56px,6vw,96px);line-height:.85;color:transparent;-webkit-text-stroke:1.4px var(--azul);transition:color .4s var(--e-out)}
.ed:hover .ed-anio{color:var(--azul)}
.ed-foto{width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.85);transition:filter .5s var(--e-out)}
.ed:hover .ed-foto{filter:none}
.ed-meta{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--coral)}
.ed-txt h3{font-size:clamp(26px,2.4vw,38px);margin:10px 0 12px}
.ed-txt p{color:var(--tinta2);max-width:60ch}
.ed-pie{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:16px;align-items:baseline}
.ed-txt .ed-pie b{color:var(--navy)}
.ed-album{font-weight:700;color:var(--azul);text-decoration:none;font-size:.92em}
.ed-album:hover{text-decoration:underline}
@media (max-width:900px){.ed{grid-template-columns:1fr;row-gap:14px}.ed-foto{max-width:520px}}
.eventos{margin-top:72px}
.eventos ul{list-style:none;margin-top:18px;border-top:1px solid var(--navy)}
.eventos li{display:grid;grid-template-columns:90px minmax(200px,1fr) minmax(160px,.7fr) 2fr;gap:8px 24px;padding:18px 0;border-bottom:1px solid var(--regla);align-items:baseline}
.eventos span{font-family:Anton,Impact,sans-serif;font-size:28px;color:var(--azul)}
.eventos i{font-style:normal;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--tinta2)}
.eventos p{color:var(--tinta2);font-size:.95em}
@media (max-width:900px){.eventos li{grid-template-columns:70px 1fr}.eventos i,.eventos p{grid-column:2}}

/* 07 · En marcha */
.marcha-item{display:grid;grid-template-columns:repeat(12,1fr);column-gap:20px;margin-top:72px;align-items:center}
.marcha-foto{grid-column:1 / 8;grid-row:1;width:100%;aspect-ratio:16/10;object-fit:cover}
.marcha-txt{grid-column:8 / 13;grid-row:1;padding-left:clamp(0px,2vw,32px)}
.marcha-item-inv .marcha-foto{grid-column:6 / 13}
.marcha-item-inv .marcha-txt{grid-column:1 / 6;padding:0 clamp(0px,2vw,32px) 0 0}
.marcha-ey{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--coral)}
.marcha-txt h3{font-size:clamp(44px,5vw,84px);margin:12px 0 14px;color:var(--azul)}
.marcha-lema{font-weight:700;font-size:1.1em;margin-bottom:10px}
.marcha-txt>p{color:var(--tinta2)}
.marcha-txt>p.marcha-ey{color:var(--coral)}
.marcha-txt>p.marcha-lema{color:var(--navy)}
.marcha-lista{list-style:none;margin:22px 0 24px;border-top:1px solid var(--navy)}
.marcha-lista li{display:grid;grid-template-columns:minmax(120px,auto) 1fr;gap:16px;padding:10px 0;border-bottom:1px solid var(--regla);font-size:.95em}
.marcha-lista span{color:var(--tinta2)}
.marcha-txt .nota{margin:-8px 0 22px}
@media (max-width:900px){
  .marcha-foto,.marcha-txt,.marcha-item-inv .marcha-foto,.marcha-item-inv .marcha-txt{grid-column:1 / 13;grid-row:auto;padding:0}
  .marcha-item .marcha-txt{padding-top:26px}}

/* 08 · Impacto: estudio e historias */
.estudio{margin-top:80px}
.estudio-grande{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:22px;border-top:1px solid var(--navy);padding-top:26px}
.estudio-grande b{display:block;font-family:Anton,Impact,sans-serif;font-weight:400;font-size:clamp(64px,8vw,140px);line-height:.85;color:var(--coral)}
.estudio-grande span{display:block;margin-top:12px;color:var(--tinta2);max-width:28ch}
.estudio-chico{list-style:none;display:flex;flex-wrap:wrap;gap:12px 48px;margin-top:40px}
.estudio-chico b{font-family:Anton,Impact,sans-serif;font-weight:400;font-size:32px;color:var(--azul);margin-right:10px}
.estudio-chico span{color:var(--tinta2)}
@media (max-width:760px){.estudio-grande{grid-template-columns:1fr}}
.historias{margin-top:88px}
.historias ul{list-style:none;margin-top:18px;border-top:1px solid var(--navy)}
.hist{display:grid;grid-template-columns:200px 1fr;gap:clamp(20px,3vw,48px);padding:32px 0;border-bottom:1px solid var(--regla);align-items:center}
.hist-sin{grid-template-columns:1fr}
.hist-sin>div{padding-left:calc(200px + clamp(20px,3vw,48px))}
.hist-foto{width:100%;aspect-ratio:4/5;object-fit:cover}
.hist-quien{font-size:14px;color:var(--tinta2);letter-spacing:.04em}
.hist-quien b{display:block;font-size:1.35em;color:var(--navy);letter-spacing:0;margin-bottom:2px}
.hist-cifra{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin-top:16px;font-family:Anton,Impact,sans-serif;text-transform:uppercase}
.hist-cifra span{font-size:clamp(26px,2.6vw,40px);color:var(--tinta2)}
.hist-cifra i{font-style:normal;color:var(--coral);font-size:32px}
.hist-cifra strong{font-weight:400;font-size:clamp(44px,5vw,80px);line-height:.9;color:var(--azul)}
.hist-unidad{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);margin-top:6px}
.hist-d{margin-top:12px;color:var(--tinta2);max-width:62ch}
@media (max-width:700px){.hist{grid-template-columns:1fr}.hist-foto{max-width:220px}.hist-sin>div{padding-left:0}}

/* Galería */
.galeria{padding:var(--cap) var(--m) 0}
.mosaico{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:clamp(110px,13vw,220px);grid-auto-flow:dense;gap:10px}
.mosaico li{overflow:hidden;grid-column:span 2}
.mosaico img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--e-out)}
.mosaico li:hover img{transform:scale(1.04)}
.mosaico li:nth-child(1){grid-column:span 4;grid-row:span 2}
.mosaico li:nth-child(5){grid-row:span 2}
.mosaico li:nth-child(6){grid-column:span 4}
.mosaico li:nth-child(10){grid-column:span 3}
.mosaico li:nth-child(11){grid-column:span 3}
.galeria-pie{margin-top:18px}
@media (max-width:700px){.mosaico{grid-template-columns:repeat(2,1fr)}
  .mosaico li{grid-column:span 1!important;grid-row:span 1!important}.mosaico li:nth-child(3n+1){grid-column:span 2!important}}

/* 09 · Equipo */
.personas{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,48px);margin-top:56px}
.persona-foto{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;filter:grayscale(1);transition:filter .6s var(--e-out)}
.persona:hover .persona-foto{filter:none}
.persona h3{font-size:clamp(28px,2.6vw,40px);margin-top:18px}
.persona-rol{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);margin:6px 0 12px}
.persona>p:last-child{color:var(--tinta2);font-size:.95em}
@media (max-width:900px){.personas{grid-template-columns:1fr}.persona-foto{max-width:420px}}
.reconocimientos{margin-top:88px}
.reconocimientos ul{list-style:none;margin-top:18px;border-top:1px solid var(--navy)}
.reconocimientos li{display:grid;grid-template-columns:90px 1fr minmax(180px,.6fr);gap:6px 24px;padding:16px 0;border-bottom:1px solid var(--regla);align-items:baseline}
.reconocimientos span{font-family:Anton,Impact,sans-serif;font-size:26px;color:var(--azul)}
.reconocimientos b{font-weight:600}
.reconocimientos i{font-style:normal;color:var(--tinta2);font-size:.92em}
@media (max-width:700px){.reconocimientos li{grid-template-columns:64px 1fr}.reconocimientos i{grid-column:2}}

/* 10 · Aliados */
.grupo{display:grid;grid-template-columns:repeat(12,1fr);column-gap:20px;margin-top:56px;padding-top:24px;border-top:1px solid var(--navy)}
.grupo-cab{grid-column:1 / 4}
.grupo-cab h3{font-size:clamp(24px,2vw,32px)}
.grupo-cab p{margin-top:10px;color:var(--tinta2);font-size:.9em;max-width:32ch}
.logos{grid-column:4 / 13;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}
.logos li{display:grid;place-items:center;background:#fff;aspect-ratio:3/2;padding:14px}
.logos a{display:grid;place-items:center;width:100%;height:100%}
.logos img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transition:transform .4s var(--e-out)}
.logos li:hover img{transform:scale(1.06)}
@media (max-width:900px){.grupo-cab,.logos{grid-column:1 / 13}.logos{margin-top:20px;grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}

/* 11 · Dona */
.dona{position:relative;margin-top:var(--cap);min-height:min(92vh,880px);display:flex;align-items:flex-end;overflow:hidden;color:var(--hueso);background:var(--navy)}
.dona-fondo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}
.dona::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,20,39,.94) 0%,rgba(18,20,39,.6) 55%,rgba(18,20,39,.15) 100%)}
.dona-dentro{position:relative;z-index:1;padding:var(--cap) var(--m) clamp(56px,7vw,110px);max-width:900px}
.dona h2{font-size:clamp(52px,7.4vw,128px);line-height:.9;margin-top:22px}
.dona h2 em{color:var(--amarillo)}
.dona-texto{margin:28px 0 34px;max-width:50ch;color:#D5D9E4;font-size:1.08em}
.dona .flecha{font-size:1.15em;border-bottom:2px solid var(--amarillo);padding-bottom:6px}
.dona-nota{margin-top:22px;font-size:13px;color:#AEB4C6}

/* 12 · Contacto: datos */
.contacto-datos{display:flex;flex-wrap:wrap;gap:8px 32px;margin:-14px 0 30px;color:var(--tinta2)}
.contacto-datos a{font-weight:700;color:var(--navy);text-decoration:none}
.contacto-redes{display:flex;flex-wrap:wrap;gap:14px 40px}
