
:root{
  --hueso:#F2EFE9;
  --tinta:#111111;
  --amarillo:#F5E11A;
  --gris:#8A857D;
  --linea:rgba(17,17,17,.22);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{
  background:var(--hueso);
  color:var(--tinta);
  font-family:'Archivo',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  font-size:17px; line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid var(--amarillo);outline-offset:3px}

.wrap{max-width:760px;margin:0 auto;padding:0 22px}

/* ---------- Tipografia display ---------- */
.display{
  font-family:'Archivo',sans-serif;
  font-weight:900;
  font-stretch:75%;
  text-transform:uppercase;
  line-height:.86;
  letter-spacing:-.015em;
}

/* ---------- Portada ---------- */
.hero{padding:48px 0 0}
.hero h1{font-size:clamp(3.4rem,15vw,6.6rem)}
.hero h1 span{display:block}
.banda{height:52px;margin:14px 0;background-size:cover;background-position:center;
  border-top:1px solid var(--linea);border-bottom:1px solid var(--linea)}
.autoria{margin-top:30px;font-size:1.15rem}
.datos{
  margin-top:22px;padding-top:22px;border-top:2px solid var(--tinta);
  display:grid;grid-template-columns:auto 1fr;gap:0 26px;align-items:start;
}
.fechas{font-family:'Archivo',sans-serif;font-weight:900;font-stretch:75%;
  font-size:clamp(2.1rem,9vw,3rem);line-height:.92;letter-spacing:-.02em}
.sede{font-size:.94rem;line-height:1.45;padding-top:4px}
.sede strong{display:block;font-weight:700;text-transform:uppercase;letter-spacing:.02em;
  font-size:1rem;margin-bottom:6px}
.sede span{color:var(--gris)}

/* ---------- Texto de sala ---------- */
.sala{margin:56px 0 12px}
.eyebrow{font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gris);font-weight:600;margin-bottom:16px}
.sala p{margin-bottom:16px;max-width:62ch}

/* ---------- Series ---------- */
.serie-block{margin-top:56px;padding-top:26px;border-top:2px solid var(--tinta)}
.serie-block h2{font-size:clamp(2rem,8vw,3.2rem);margin-bottom:6px}
.conteo{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gris);
  font-weight:600;margin-bottom:24px}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
@media(min-width:620px){.grid{grid-template-columns:repeat(3,1fr)}}
.card img{width:100%;aspect-ratio:3/4;object-fit:cover;background:#ddd;
  transition:filter .25s ease}
.card:hover img,.card:active img{filter:contrast(1.06) saturate(1.08)}
.card h3{font-size:.95rem;font-weight:700;margin-top:9px;line-height:1.25}
.card .meta{font-size:.78rem;color:var(--gris);margin-top:2px}

/* ---------- Ficha de obra ---------- */
.volver{display:inline-block;margin:26px 0 8px;font-size:.78rem;letter-spacing:.16em;
  text-transform:uppercase;font-weight:600;color:var(--gris)}
.volver:hover{color:var(--tinta)}
.ficha-serie{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gris);font-weight:600;margin-top:20px}
.ficha h1{font-size:clamp(2.4rem,11vw,4.2rem);margin:10px 0 20px}
.obra-img{width:100%;border:1px solid var(--linea);background:#fff}
.tecnica{margin-top:22px;padding-top:16px;border-top:2px solid var(--tinta);
  display:flex;flex-wrap:wrap;gap:8px 28px;font-size:.88rem}
.tecnica div{min-width:0}
.tecnica dt{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gris);font-weight:600;margin-bottom:2px}
.tecnica dd{font-weight:500}
.ficha-texto{margin-top:26px;max-width:62ch}
.nav-obras{margin-top:44px;padding-top:18px;border-top:1px solid var(--linea);
  display:flex;justify-content:space-between;gap:16px;font-size:.82rem;font-weight:600}
.nav-obras a{max-width:46%}
.nav-obras .lbl{display:block;font-size:.66rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gris);margin-bottom:3px}
.nav-obras .der{text-align:right;margin-left:auto}

/* ---------- Pie ---------- */
footer{margin-top:64px;padding:26px 0 46px;border-top:2px solid var(--tinta);
  font-size:.8rem;color:var(--gris)}
footer strong{display:block;color:var(--tinta);text-transform:uppercase;
  letter-spacing:.02em;font-weight:700;font-size:.88rem;margin-bottom:5px}

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