/* Fichas 1.3: modernas, con color fijo por tipo (el mismo que sus carteles en la sala), compartidas por la sala y las páginas */
.fr { --c: #1f3a5f; display: flex; flex-direction: column; background: #fffdf8; border-radius: 1.1rem; overflow: hidden; box-shadow: 0 6px 22px rgba(60,35,10,.10); border: 1px solid color-mix(in srgb, var(--c) 18%, #eadfcd); color: #24190e; }
.fr-media { margin: 0; position: relative; background: #e9dcc7; }
.fr-media img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; object-position: center 30%; }
/* 1.3.5: fotos verticales enteras (sin recortar la cabeza de La Monstrua ni de las estatuas) */
.fr-media--vertical img { object-fit: contain; object-position: center; background: #2a211a; }  /* criterio de 9a202bd */
.fr-credito { font-size: .68rem; color: #5d4a35; padding: .3rem .7rem; background: #f6eee1; }
.fr-credito a { color: inherit; }
.fr-cartel { display: flex; flex-direction: column; justify-content: flex-end; gap: .25rem; min-height: 8.5rem; padding: 1rem 1.1rem; color: #fff; background: linear-gradient(135deg, var(--c), color-mix(in srgb, var(--c) 62%, #000)); }
.fr-cartel-eti { font-size: .7rem; font-weight: 700; letter-spacing: .14em; opacity: .9; }
.fr-cartel-tit { font-size: 1.25rem; font-weight: 700; line-height: 1.15; }
.fr-cartel-fecha { font-size: .9rem; font-weight: 600; background: rgba(255,255,255,.18); align-self: flex-start; padding: .1rem .55rem; border-radius: 999px; }
.fr-cuerpo { padding: .9rem 1.05rem 1rem; display: flex; flex-direction: column; gap: .5rem; }
.fr-tipo { align-self: flex-start; font-size: .72rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #fff; background: var(--c); padding: .18rem .6rem; border-radius: 999px; }
.fr-tit { margin: 0; font-size: 1.15rem; line-height: 1.2; letter-spacing: -.01em; }
h1.fr-tit { font-size: clamp(1.6rem, 4.5vw, 2.4rem); }
.fr-sub { margin: 0; color: #5d4a35; }
.fr-meta { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .3rem; font-size: .9rem; }
.fr-meta li { display: flex; gap: .5rem; align-items: flex-start; }
.fr-meta svg { flex: 0 0 auto; color: var(--c); margin-top: .1rem; }
.fr-texto p, p.fr-texto { margin: 0 0 .6rem; line-height: 1.6; }
.fr-botones { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .2rem; }
.fr-btn { display: inline-flex; align-items: center; gap: .3rem; border-radius: 999px; padding: .42rem .95rem; font-size: .88rem; font-weight: 600; text-decoration: none; border: 1.5px solid var(--c); color: var(--c); background: #fff; cursor: pointer; font-family: inherit; }
.fr-btn--pri { background: var(--c); color: #fff; }
.fr-btn:hover { filter: brightness(1.06); box-shadow: 0 3px 10px rgba(0,0,0,.12); }
.fr-fuente { font-size: .72rem; color: #6b5a46; margin: .2rem 0 0; }
.fr-mini { font-size: .78rem; font-weight: 700; color: #6b5a46; margin: .3rem 0 0; }
.fr-aviso, .fr-aviso-p { font-size: .82rem; background: #fff3d6; border-left: 3px solid #d39b1c; padding: .35rem .6rem; border-radius: .4rem; margin: .2rem 0; }
.fr-bloque { border-top: 1px solid #efe4d2; padding-top: .7rem; margin-top: .3rem; }
.fr-bloque h2 { font-size: 1.05rem; margin: 0 0 .4rem; color: var(--c); }
.fr-bloque audio { width: 100%; }
.fr-fuentes summary { cursor: pointer; font-size: .78rem; color: #6b5a46; }
.fr-fuentes ul, .fr-fuentes-lista { font-size: .78rem; margin: .3rem 0; padding-left: 1.1rem; }
.fr-fuentes-lista a, .fr-fuentes a { color: #5d4a35; }
.traje-partes { display: flex; flex-wrap: wrap; gap: .35rem; }
.fr-chip { border-radius: 999px; border: 1.5px solid var(--c); background: #fff; color: var(--c); padding: .3rem .7rem; font-size: .82rem; font-weight: 600; cursor: pointer; }
.fr-chip.activo, .fr-chip:hover { background: var(--c); color: #fff; }
.fr--monumentos { --c: #a4472a; } .fr--artistas { --c: #2F5F82; } .fr--evt-cult, .fr--cultura { --c: #0b4ea2; } .fr--evt-dep, .fr--deportes { --c: #0e7a55; }
.fr--especiales, .fr--eventos { --c: #c2410c; } .fr--planes { --c: #d2462f; } .fr--guia { --c: #0f766e; } .fr--traje, .fr--tradiciones { --c: #9f1d2b; }
.fr--pagina { box-shadow: 0 10px 34px rgba(60,35,10,.12); }
.fr--pagina .fr-cuerpo { padding: 1.3rem 1.4rem 1.5rem; gap: .7rem; }
.fr--pagina .fr-cartel { min-height: 12rem; }
.fr--pagina .fr-cartel-tit { font-size: clamp(1.5rem, 4vw, 2.2rem); }
@media (max-width: 560px) { .fr-cuerpo { padding: .8rem .85rem .9rem; } .fr--pagina .fr-cuerpo { padding: 1rem; } }
.fr-btn--off { border-style: dashed; color: #6b5a46; border-color: #b9a78e; background: #f8f2e8; cursor: default; }
.fr-btn--off:hover { filter: none; box-shadow: none; }

/* 1.4.2 · Artistas: actuales #FC6220 con texto #1D1917, históricos #2F5F82 con texto #F1EFEC (el naranja nunca sobre crema) */
.art-cab--actual { background: #FC6220; color: #1D1917; }
.art-cab--historico { background: #2F5F82; color: #F1EFEC; }
.art-cab .fr-cartel-fecha { background: rgba(0,0,0,.12); }
.fr-cartel.fr-cartel--actual { background: #FC6220; color: #1D1917; }
.fr-cartel.fr-cartel--historico { background: #2F5F82; color: #F1EFEC; }
.art-estado { display: inline-block; font-size: .72rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; padding: .16rem .6rem; border-radius: 999px; vertical-align: middle; }
.art-estado--actual { background: #FC6220; color: #1D1917; }
.art-estado--historico { background: #2F5F82; color: #F1EFEC; }
.art-ficha { display: grid; grid-template-columns: minmax(8rem, max-content) 1fr; gap: .3rem 1rem; margin: 0; }
.art-ficha dt { font-weight: 700; } .art-ficha dd { margin: 0; overflow-wrap: anywhere; }
.art-foto img { aspect-ratio: auto; max-height: 70vh; object-fit: contain; background: #2a211a; }
