/* Galeria a color de Allan. Sin fuentes externas: pila del sistema. */
:root{
  --bg:#fbf7f0; --card:#ffffff; --ink:#23222a; --soft:#5d5c66; --line:#e6e0d6;
  --accent:#c8323a; --accent-ink:#ffffff; --focus:#1d63c8;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:17px;line-height:1.55}
img{max-width:100%;height:auto;display:block}
a{color:#1d4f9c}
a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-9999px;top:0;background:#fff;padding:.6rem 1rem;z-index:10}
.skip:focus{left:.5rem;top:.5rem}
.wrap{max-width:1080px;margin:0 auto;padding-inline:16px;padding-block:0}
header.site{border-bottom:1px solid var(--line);background:#fff}
header.site .wrap{display:flex;gap:12px;align-items:center;justify-content:space-between;
  padding-block:14px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;font-weight:700}
.brand img{width:40px;height:40px}
.brand span{font-size:1.05rem}
nav.lang a{display:inline-block;padding:.35rem .7rem;border:1px solid var(--line);border-radius:999px;
  text-decoration:none;color:var(--soft);background:#fff}
nav.lang a:hover{border-color:var(--soft);color:var(--ink)}
h1{font-size:clamp(1.6rem,4.5vw,2.3rem);line-height:1.2;margin:.2em 0 .3em}
h2{font-size:clamp(1.2rem,3.2vw,1.5rem);margin:1.6em 0 .5em}
p.lead{font-size:1.06rem;color:var(--soft);max-width:60ch}
.note{color:var(--soft);max-width:60ch}
main{padding-block:8px 40px}
.cards{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  list-style:none;padding:0;margin:1rem 0 0}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;
  display:flex;flex-direction:column}
.card img{aspect-ratio:1159/1500;object-fit:cover;max-width:100%;border-bottom:1px solid var(--line)}
.card .body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.card h3{margin:0;font-size:1.12rem}
.card p{margin:0;color:var(--soft);font-size:.96rem}
.card .go{margin-top:auto;align-self:flex-start;background:var(--accent);color:var(--accent-ink);
  text-decoration:none;padding:.5rem .9rem;border-radius:999px;font-weight:600;font-size:.95rem}
.card .go:hover{background:#a8262d}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));
  list-style:none;padding:0;margin:0}
.grid li{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.grid a{display:block;text-decoration:none;color:inherit}
.grid figcaption{padding:.45rem .6rem .6rem;font-size:.85rem;color:var(--soft)}
.grid figure{margin:0}
.pdf{display:inline-block;margin:.6rem 0 .2rem;padding:.6rem 1rem;border:2px solid var(--accent);
  border-radius:999px;color:var(--accent);text-decoration:none;font-weight:600;background:#fff}
.pdf:hover{background:var(--accent);color:#fff}
.back{display:inline-block;margin-bottom:.4rem;color:var(--soft);text-decoration:none}
.back:hover{color:var(--ink)}
footer.site{border-top:1px solid var(--line);background:#fff;color:var(--soft);font-size:.9rem}
footer.site .wrap{padding-block:18px 26px}
.choose{display:flex;gap:14px;flex-wrap:wrap;margin-top:1.2rem;padding:0;list-style:none}
.choose a{display:block;padding:1rem 1.6rem;background:#fff;border:1px solid var(--line);
  border-radius:12px;text-decoration:none;color:var(--ink);font-weight:600;font-size:1.1rem}
.choose a:hover{border-color:var(--accent);color:var(--accent)}
@media (prefers-color-scheme:dark){
  :root{--bg:#191820;--card:#22212b;--ink:#f2efe9;--soft:#b6b2be;--line:#343240;
    --accent:#ef6b6b;--accent-ink:#1a1a20;--focus:#8ab4ff}
  header.site,footer.site,.grid li,.choose a,nav.lang a,.pdf{background:var(--card)}
  a{color:#9cc2ff}
}
