:root{--papel:#f7f2ea;--blanco:#fffdf9;--tinta:#241c17;--suave:#6b5d52;--linea:#e4d9ca;--marca:#8c2f2b;--ocre:#b07a2a;--sombra:0 1px 3px rgba(60,40,20,.12)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--papel:#16120f;--blanco:#201a16;--tinta:#efe6db;--suave:#b3a493;--linea:#3a3029;--marca:#e07a63;--ocre:#d7a85a;--sombra:none}}
:root[data-theme=dark]{--papel:#16120f;--blanco:#201a16;--tinta:#efe6db;--suave:#b3a493;--linea:#3a3029;--marca:#e07a63;--ocre:#d7a85a;--sombra:none}
*{box-sizing:border-box}
body{margin:0;background:var(--papel);color:var(--tinta);font:16px/1.65 Inter,system-ui,sans-serif}
a{color:inherit}img{max-width:100%}
h1,h2,h3,.marca{font-family:'Cormorant Garamond',Georgia,serif;line-height:1.15}
h1{font-size:clamp(2rem,4.5vw,3rem);margin:.2em 0}h2{font-size:1.9rem;margin:40px 0 14px}h3{font-size:1.4rem;margin:26px 0 8px}
.cab{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:10px 20px;border-bottom:1px solid var(--linea);background:var(--blanco);position:sticky;top:0;z-index:5}
.marca{display:flex;align-items:center;gap:8px;text-decoration:none;font-size:1.6rem;font-weight:700;color:var(--tinta)}
.logo{width:34px;height:34px}
.menu{display:flex;flex-wrap:wrap;gap:4px 14px;flex:1}.menu a{text-decoration:none;font-size:.93rem;color:var(--suave)}.menu a:hover{color:var(--marca)}
.redes-cab a{font-size:.85rem;color:var(--marca);text-decoration:none;margin-left:8px}
.idioma{font-size:.85rem;color:var(--suave)}.idioma a{color:var(--marca)}
.busca-mini input{padding:7px 12px;border:1px solid var(--linea);border-radius:20px;width:220px;max-width:100%;background:var(--papel);color:var(--tinta)}
main{max-width:1160px;margin:0 auto;padding:0 16px 40px}
.hero{text-align:center;padding:34px 0 18px}.hero p.entradilla{color:var(--suave);max-width:680px;margin:0 auto 22px;font-size:1.08rem}
.busca-grande{display:flex;max-width:640px;margin:0 auto;border:1px solid var(--linea);border-radius:32px;overflow:hidden;background:var(--blanco)}
.busca-grande input{flex:1;border:0;padding:14px 20px;font-size:1.05rem;background:transparent;color:var(--tinta);min-width:0}
.busca-grande button{border:0;background:var(--marca);color:#fff;padding:0 24px;font-weight:600;cursor:pointer}
.titulo-bloque{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.titulo-bloque a{color:var(--marca);font-size:.92rem}
.nota,.sub,.miga{color:var(--suave);font-size:.92rem}.miga a{color:var(--marca)}
.linea{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.tramo{display:flex;flex-direction:column;padding:14px;border-radius:10px;background:var(--blanco);border:1px solid var(--linea);text-decoration:none;border-top:4px solid var(--marca)}
.tramo strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.35rem;line-height:1.1}.tramo span{font-size:.82rem;color:var(--suave)}
.rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.pcard{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;padding:10px;border-radius:10px;background:var(--blanco);border:1px solid var(--linea)}
.pcard img,.pcard .vacio{width:96px;height:120px;object-fit:cover;border-radius:6px;background:var(--linea)}
.pcard strong{margin-top:6px;font-size:.95rem;line-height:1.25}.pcard span{font-size:.8rem;color:var(--suave)}
.muro{columns:4 220px;column-gap:14px}
.obra{break-inside:avoid;margin:0 0 14px;background:var(--blanco);border:1px solid var(--linea);border-radius:8px;overflow:hidden;box-shadow:var(--sombra)}
.obra img{display:block;width:100%;height:auto}.obra .sinimg{padding:30px 10px;text-align:center;color:var(--suave);font-size:.85rem;background:var(--linea)}
.obra figcaption{padding:8px 10px;font-size:.85rem;line-height:1.4}.obra figcaption b{display:block;font-weight:600}.obra figcaption span,.obra figcaption i{display:block;color:var(--suave)}
.obra figcaption p{margin:6px 0 0;color:var(--tinta)}.obra a{text-decoration:none}
.ficha header{display:grid;grid-template-columns:auto 1fr;gap:6px 24px;align-items:start;margin:18px 0 10px}
.ficha header>div{min-width:0}
.retrato{margin:0;grid-row:span 3}.retrato img{width:180px;border-radius:8px;box-shadow:var(--sombra)}.retrato figcaption,.cuadro figcaption{font-size:.75rem;color:var(--suave)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.chip{font-size:.8rem;padding:3px 10px;border-radius:14px;border:1px solid var(--linea);background:var(--blanco);text-decoration:none;color:var(--suave)}
.chip:hover{border-color:var(--marca);color:var(--marca)}
.texto{max-width:760px}.texto p{margin:0 0 1em}
.cuadro{margin:16px 0;text-align:center}.cuadro img{max-height:80vh;width:auto;border-radius:4px;box-shadow:var(--sombra)}
.datos{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:14px 0;font-size:.95rem}.datos dt{color:var(--suave)}.datos dd{margin:0}.datos a{color:var(--marca)}
.lista{columns:3 220px;padding-left:18px}.lista li{margin:0 0 4px;break-inside:avoid}.lista a{color:var(--marca);text-decoration:none}.lista .num{color:var(--suave);font-size:.85rem}
.curio{background:var(--blanco);border:1px solid var(--linea);border-left:4px solid var(--ocre);border-radius:8px;padding:12px 16px;margin:12px 0}.curio h3{margin:0 0 6px;font-size:1.25rem}.curio p{margin:0}
.dia{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.dia>div{background:var(--blanco);border:1px solid var(--linea);border-radius:10px;padding:16px}
.dia img{max-height:340px;display:block;margin:0 auto 10px;border-radius:4px}
.compartir{font-size:.85rem;color:var(--suave);display:flex;gap:10px;align-items:center;flex-wrap:wrap}.compartir a{color:var(--marca)}
.filtros{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}.filtros select,.filtros input{padding:8px 10px;border:1px solid var(--linea);border-radius:8px;background:var(--blanco);color:var(--tinta);font:inherit}
.filtros input{flex:1;min-width:200px}
.resultados li{margin:0 0 6px}.resultados a{color:var(--marca);font-weight:600;text-decoration:none}.resultados span{color:var(--suave);font-size:.88rem}
.pie{border-top:1px solid var(--linea);background:var(--blanco);padding:20px;text-align:center;color:var(--suave);font-size:.88rem}.pie a{color:var(--suave)}
.pendiente{color:var(--suave);font-style:italic}
@media (max-width:700px){.ficha header{grid-template-columns:1fr}.retrato{grid-row:auto}.retrato img{width:140px}.menu{order:5;flex-basis:100%;gap:2px 12px}.busca-mini input{width:150px}.dia{grid-template-columns:1fr}.cab{padding:10px 16px}}
.galeria{display:flex;gap:16px;overflow-x:auto;padding:6px 4px 18px;scrollbar-width:thin;justify-content:safe center;scroll-snap-type:x proximity}
.galeria .gal{flex:0 0 104px;text-align:center;text-decoration:none;color:var(--tinta);scroll-snap-align:start}
.galeria img{width:96px;height:96px;border-radius:50%;object-fit:cover;object-position:top;box-shadow:0 2px 8px rgba(0,0,0,.18);border:3px solid var(--blanco);transition:transform .15s}
.galeria a:hover img{transform:scale(1.05)}.galeria strong{display:block;font-size:.85rem;line-height:1.2;margin-top:6px}.galeria span{display:block;font-size:.75rem;color:var(--suave)}
.fecha-hoy{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.3rem;color:var(--marca)}
.efe-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.efe{display:flex;gap:12px;align-items:center;padding:12px;background:var(--blanco);border:1px solid var(--linea);border-radius:8px;border-left:4px solid var(--marca);text-decoration:none}
.efe .anyo{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.6rem;font-weight:700;color:var(--marca);min-width:3.2ch}.efe strong{display:block;line-height:1.25}.efe em{font-style:normal;font-size:.82rem;color:var(--suave)}
.curio-foto{float:right;width:110px;height:110px;border-radius:50%;object-fit:cover;object-position:top;margin:0 0 10px 16px;border:3px solid var(--blanco);box-shadow:0 2px 8px rgba(0,0,0,.18)}
.tag{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--suave);margin:0}.tag a{color:var(--marca)}
@media (max-width:700px){.galeria{justify-content:flex-start;gap:12px}.galeria .gal{flex-basis:84px}.galeria img{width:78px;height:78px}.curio-foto{width:80px;height:80px}.efe-lista .efe:nth-child(n+5){display:none}}
.crono dt{font-family:"Cormorant Garamond",Georgia,serif;font-weight:700;font-size:1.15rem;color:var(--marca)}
/* resultados al escribir (cabecera, portada y explorar) */
.busca-mini{position:relative}
.sug-mini{position:absolute;right:0;top:calc(100% + 6px);width:min(460px,calc(100vw - 32px));max-height:72vh;overflow:auto;z-index:60;background:var(--blanco);border:1px solid var(--linea);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.18);padding:6px;text-align:left}
.sugerencias{max-width:640px;margin:8px auto 0;text-align:left;background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:6px;box-shadow:var(--sombra)}
.sug-mini:empty,.sugerencias:empty{display:none}
.sug-mini ul,.sugerencias ul,.sug-lista{list-style:none;margin:0;padding:0}
.sug-mini li a,.sugerencias li a,.sug-lista li a{display:flex;gap:10px;align-items:center;padding:6px 8px;border-radius:8px;text-decoration:none;color:var(--tinta)}
.sug-mini li a:hover,.sugerencias li a:hover,.sug-lista li a:hover{background:var(--papel)}
.sug-mini img,.sugerencias img,.sug-lista img,.sug-vacio{flex:0 0 42px;width:42px;height:42px;object-fit:cover;object-position:top;border-radius:6px;background:var(--linea)}
.sug-mini a>span:not(.sug-vacio),.sugerencias a>span:not(.sug-vacio),.sug-lista a>span:not(.sug-vacio){flex:1;min-width:0}
.sug-vacio{display:block}
.sug-mini strong,.sugerencias strong,.sug-lista strong{display:block;font-weight:600;line-height:1.25;color:var(--marca)}
.sug-mini em,.sugerencias em,.sug-lista em{display:block;font-style:normal;font-size:.82rem;color:var(--suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sug-mini i,.sugerencias i,.sug-lista i{font-style:normal;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--suave)}
.sug-todos{display:block;padding:10px 12px;font-weight:600;text-decoration:none;color:var(--marca)}
.sug-nada{margin:8px 12px;color:var(--suave)}
.boton-mas{border:1px solid var(--linea);background:var(--blanco);color:var(--marca);padding:9px 20px;border-radius:20px;font:inherit;font-weight:600;cursor:pointer}
@media (max-width:700px){.busca-mini{flex-basis:100%;order:6}.busca-mini input{width:100%}.sug-mini{left:0;right:0;width:auto}}
.sug-lista a{font-weight:400}.sug-lista li{margin:0}
/* cabecera y pie en granate (diseño definitivo del 30-10) */
.cab,.pie{background:#7a2926;border-color:#7a2926;color:#fbefe6}
.cab .marca,.cab .menu a,.cab .idioma,.cab .idioma a,.cab .redes-cab a,.pie,.pie a{color:#fbefe6}
.cab .menu a:hover,.pie a:hover{color:#fff;text-decoration:underline}
.cab .busca-mini input{border-color:#9a4a45;background:#f7f2ea;color:#241c17}
/* portada: logotipo y nombre grandes; cabecera algo mayor */
.logo{width:42px;height:42px}.marca{font-size:1.8rem}
.portada .logo-hero{display:block;width:96px;height:96px;margin:0 auto 4px}
.nombre-hero{font-size:clamp(3rem,8vw,5rem);font-weight:700;color:#7a2926;margin:0;letter-spacing:.01em}
.portada .lema{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(1.4rem,3vw,1.9rem);margin:0 0 12px;color:var(--tinta)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .nombre-hero{color:#e07a63}}
:root[data-theme=dark] .nombre-hero{color:#e07a63}
@media (max-width:700px){.portada .logo-hero{width:72px;height:72px}.logo{width:36px;height:36px}.marca{font-size:1.6rem}}
.portada .lema-corto{font-variant:small-caps;text-transform:lowercase;letter-spacing:.14em;font-size:clamp(1rem,2.2vw,1.25rem);font-weight:600;color:var(--ocre);margin:2px 0 10px}
/* portada: cuadro grande junto al nombre, cambia cada día */
.cuadro-hero{margin:22px auto 0;text-align:center}
.cuadro-hero img{display:block;margin:0 auto;max-height:260px;width:auto;max-width:100%;border:8px solid var(--blanco);outline:1px solid var(--linea);box-shadow:0 10px 28px rgba(60,30,20,.25)}
.cuadro-hero figcaption{margin-top:10px;font-size:.85rem;color:var(--suave);font-style:italic}.cuadro-hero figcaption a{color:var(--marca);font-style:normal;font-weight:600;text-decoration:none}
.cuadro-hero:empty{display:none}
@media (min-width:960px){.portada{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:40px;align-items:center}.cuadro-hero{margin:0}.cuadro-hero img{max-height:460px}}
.galeria{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:auto auto;grid-auto-rows:0;row-gap:0;column-gap:10px;overflow:hidden;padding:6px 0 4px;scroll-snap-type:none}
.galeria .gal{min-width:0;margin-bottom:14px}
.galeria img{width:min(96px,100%);height:auto;aspect-ratio:1}
@media (max-width:900px){.galeria{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}}
/* fichas: retrato más grande y visor a pantalla completa (busca.js) */
.retrato img{width:240px;cursor:zoom-in}.cuadro img{cursor:zoom-in}
.visor{position:fixed;inset:0;z-index:100;background:rgba(15,10,8,.92);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;cursor:zoom-out}
.visor img{max-width:94vw;max-height:86vh;min-width:min(420px,94vw);width:auto;height:auto;object-fit:contain;border-radius:4px;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.visor p{color:#f3e9d8;margin:12px 0 0;font-size:.95rem;text-align:center}
.visor button{position:absolute;top:12px;right:16px;border:0;background:none;color:#fbefe6;font-size:2.4rem;line-height:1;cursor:pointer}
@media (max-width:700px){.retrato img{width:160px}.visor img{min-width:0}}
/* móvil: la cabecera sube con la página (en PC sigue fija) */
@media (max-width:860px){.cab{position:static}}
