/* NSF Hilos 9.5.70 — rediseño visual de la ficha pública.
 * Solo presentación: no altera datos, relaciones, ADN, IA ni acciones.
 */
.nsf-obra-page .nsf-ficha-publica{--obra-red: #a3262a; --obra-red-dark: #851f23; --obra-ink: #171c27; --obra-muted: #747984; --obra-line: #e5e6e9; --obra-paper: #fff; width: 100%; overflow: hidden; border: 1px solid #e4e5e8; border-radius: 8px; background: #fff; color: var(--obra-ink); box-shadow: 0 14px 38px rgba(24,29,40,.08);}
.nsf-obra-page .nsf-destacado{display: grid; grid-template-columns: minmax(0,1fr) minmax(300px,.72fr); min-height: 560px; background: #fff; color: var(--obra-ink);}
.nsf-obra-page .nsf-destacado-texto{display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 48px 48px 42px; background: #fff;}
.nsf-obra-page .nsf-destacado-etiqueta{min-height: 27px; padding: 0 9px; border: 1px solid #d9dadd; border-radius: 4px; color: var(--obra-red); background: #fff; font-size: .68rem; font-weight: 800; letter-spacing: .13em;}
.nsf-obra-page .nsf-destacado h1{margin-top: 20px; color: var(--obra-ink); font-family: Georgia,'Times New Roman',serif; font-size: clamp(2.35rem,4.2vw,4.15rem); line-height: 1.02; font-weight: 700; letter-spacing: -.035em;}
.nsf-obra-page .nsf-destacado h1 .nsf-titulo-original{display: block; margin-top: 10px; color: #858993; font-family: inherit; font-size: .32em; line-height: 1.2; font-style: italic; font-weight: 500; letter-spacing: 0;}
.nsf-obra-page .nsf-destacado-autor{margin-top: 12px!important; color: #555b67; font-size: 1rem; font-weight: 600;}
.nsf-obra-page .nsf-destacado-desc{max-width: 66ch; margin-top: 24px!important; color: #555b67; font-size: .98rem; line-height: 1.75;}
.nsf-obra-page .nsf-destacado-img{align-self: start; width: 100%; overflow: hidden; background: #f4f4f5;}
.nsf-obra-page .nsf-destacado-img img{display: block; width: 100%; height: auto; min-height: 0; max-height: none; object-fit: contain; transition: transform .35s ease;}
.nsf-obra-page .nsf-destacado-img:hover img{transform: scale(1.008);}
.nsf-obra-page .nsf-destacado-sin-img{grid-template-columns: 1fr;}
.nsf-obra-page .nsf-destacado-sin-img .nsf-destacado-texto{max-width: 860px;}
.nsf-obra-page .nsf-datos{display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); width: 100%; margin: 27px 0 0!important; padding: 16px 0 17px; border-top: 1px solid var(--obra-line); border-bottom: 1px solid var(--obra-line); gap: 0;}
.nsf-obra-page .nsf-dato{min-width: 0; min-height: 54px; display: grid; grid-template-columns: 28px minmax(0,1fr); grid-template-rows: auto auto; column-gap: 10px; align-content: center; padding: 0 18px; border-right: 1px solid var(--obra-line); text-align: left;}
.nsf-obra-page .nsf-dato:first-child{padding-left: 0;}.nsf-obra-page .nsf-dato:last-child{border-right:0}.nsf-obra-page .nsf-dato-icono{display: flex; grid-row: 1 / span 2; align-items: center; justify-content: center; width: 28px; height: 28px; color: var(--obra-red);}
.nsf-obra-page .nsf-dato-icono svg{width: 25px; height: 25px; display: block;}
.nsf-obra-page .nsf-dato dt{margin: 0; color: #858a94; font-size: .62rem; line-height: 1.15; font-weight: 800; letter-spacing: .13em; text-transform: uppercase;}
.nsf-obra-page .nsf-dato dd{margin: 4px 0 0!important; color: #1d2430; font-size: .94rem; line-height: 1.15; font-weight: 750;}
.nsf-obra-page .nsf-taxonomia-publica{width: 100%; margin-top: 23px; padding-top: 19px; border-top: 1px dotted #d8dade;}
.nsf-obra-page .nsf-taxonomia-etiqueta{display: block; margin-bottom: 6px; color: #999da5; font-size: .61rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;}
.nsf-obra-page .nsf-genero-principal{color: var(--obra-red); font-size: 1.08rem; line-height: 1.2; font-weight: 650;}
.nsf-obra-page .nsf-genero-principal:hover{text-decoration: underline;}
.nsf-obra-page .nsf-taxonomia-subgeneros{margin-top: 13px;}
.nsf-obra-page .nsf-taxonomia-chips{display: flex; flex-wrap: wrap; gap: 7px;}
.nsf-obra-page .nsf-genero-subgenero{min-height: 26px; padding: 0 9px; border: 1px solid #dedfe3; border-radius: 4px; color: #666b75; background: #fafafa; font-size: .74rem;}
.nsf-obra-page .nsf-genero-subgenero:hover{background: #f4f4f5;}
.nsf-obra-page .nsf-ficha-acciones-principales{display: flex; flex-wrap: wrap; gap: 9px; width: 100%; margin-top: 27px;}
.nsf-obra-page .nsf-destacado-cta,
.nsf-obra-page .nsf-adn-toggle,
.nsf-obra-page .nsf-trailer-toggle,
.nsf-obra-page .nsf-destacado-cta{border-color: var(--obra-red); background: var(--obra-red); color: #fff;}
.nsf-obra-page .nsf-destacado-cta:hover{background: var(--obra-red-dark); border-color: var(--obra-red-dark);}
.nsf-obra-page .nsf-adn-toggle:hover,
.nsf-obra-page .nsf-trailer-toggle:hover,
/* Tráiler y ADN siguen funcionando como paneles; aquí solo se suaviza su presencia. */
.nsf-obra-page .nsf-trailer-publico{margin-top: 0;}
.nsf-obra-page .nsf-trailer-envoltorio{width: min(720px,100%); margin-top: 12px;}
.nsf-obra-page .nsf-adn-panel{margin-top: 10px;}
/* Packs: pasan a ser una banda editorial neutral. */
.nsf-obra-page .nsf-packs{padding: 0 48px 18px; background: #fff; color: var(--obra-ink);}
.nsf-obra-page .nsf-pack{border-top: 1px solid var(--obra-line); color: var(--obra-ink);}
.nsf-obra-page .nsf-pack-etiqueta,
.nsf-obra-page .nsf-pack-resumen,
.nsf-obra-page .nsf-pack-aviso{color: #777c86; opacity: 1;}
.nsf-obra-page .nsf-pack strong{color: #252b37;}
.nsf-obra-page .nsf-pack-datos{color: #6f747e; opacity: 1;}
.nsf-obra-page .nsf-pack-cta{color: var(--obra-red);}
/* Relaciones: superficie blanca y jerarquía de catálogo. */
.nsf-obra-page .nsf-relacionados-cabecera,
.nsf-obra-page .nsf-tabs-ficha,
.nsf-obra-page .nsf-relacionados-acciones,
.nsf-obra-page .nsf-seccion,
.nsf-obra-page .nsf-llevar{margin-left: 0; margin-right: 0;}
.nsf-obra-page .nsf-relacionados-cabecera{padding: 42px 48px 0; color: var(--obra-ink); background: #fff; border-top: 1px solid var(--obra-line);}
.nsf-obra-page .nsf-relacionados-titulo{color: var(--obra-ink); font-family: Georgia,'Times New Roman',serif; font-size: clamp(1.45rem,2.5vw,2rem);}
.nsf-obra-page .nsf-relacionados-intro{color: #777c86;}
.nsf-obra-page .nsf-tabs-ficha{padding: 21px 48px 0; gap: 7px; background: #fff;}
.nsf-obra-page .nsf-tab{border: 1px solid #dedfe3; border-radius: 4px; padding: 8px 11px; background: #fff; color: #626772; font-size: .75rem;}
.nsf-obra-page .nsf-tab-on,
.nsf-obra-page .nsf-tab:hover{background: #f8ecec; border-color: #e2babc; color: var(--obra-red-dark);}
.nsf-obra-page .nsf-relacionados-acciones{padding: 9px 48px 0; text-align: right; background: #fff;}
.nsf-obra-page .nsf-grafo-btn-texto{color: var(--obra-red-dark);}
.nsf-obra-page .nsf-seccion{margin-top: 22px; padding: 22px 48px 0; border-top: 1px solid var(--obra-line); background: #fff;}
.nsf-obra-page .nsf-seccion-titulo{color: var(--obra-ink); font-family: Georgia,'Times New Roman',serif; font-size: 1.22rem;}
.nsf-obra-page .nsf-seccion-titulo span{color: #8b8f98;}
.nsf-obra-page .nsf-seccion-intro{color: #777c86;}
.nsf-obra-page .nsf-obra{border-top: 1px solid #ececef; color: var(--obra-ink);}
.nsf-obra-page .nsf-obra:first-child{border-top: 0;}
.nsf-obra-page .nsf-obra-img img{border-radius: 4px;}
.nsf-obra-page .nsf-tag{color: #969aa3;}
.nsf-obra-page .nsf-obra h4{color: #202531;}
.nsf-obra-page .nsf-obra h4 a:hover{color: var(--obra-red-dark);}
.nsf-obra-page .nsf-obra-meta{color: #858a94;}
.nsf-obra-page .nsf-relacionados-ver-mas{padding: 16px 0 4px;}
.nsf-obra-page .nsf-relacionados-aviso{color: #8a8e97;}
.nsf-obra-page .nsf-fila-gen{border-top: 1px solid #ececef;}
.nsf-obra-page .nsf-fila-gen-enlace{color: var(--obra-ink);}
.nsf-obra-page .nsf-fila-gen-meta,
.nsf-obra-page .nsf-fila-gen-nota{color: #858a94;}
.nsf-obra-page .nsf-fila-gen-rel{color: var(--obra-red-dark);}
/* Zona final: queda fuera de la sensación de bloque rojo. */
.nsf-obra-page .nsf-llevar{justify-content: center; padding: 38px 48px 46px; background: #fff; border-top: 1px solid var(--obra-line);}
.nsf-obra-page .nsf-llevar-titulo{min-height: 43px; padding: 0 20px; border: 1px solid var(--obra-red); border-radius: 4px; color: var(--obra-red); background: #fff; font-size: .76rem;}

@media (max-width:860px){
.nsf-obra-page .nsf-ficha-publica{border-radius: 6px;}
.nsf-obra-page .nsf-destacado{grid-template-columns: 1fr; min-height: 0;}
.nsf-obra-page .nsf-destacado-texto{padding: 34px 28px 30px;}
.nsf-obra-page .nsf-destacado-img{order: 2; min-height: 0;}
.nsf-obra-page .nsf-destacado-img img{min-height: 0; max-height: none; height: auto;}
.nsf-obra-page .nsf-datos{grid-template-columns: 1fr 1fr;}
.nsf-obra-page .nsf-dato:nth-child(2){border-right: 0;}
.nsf-obra-page .nsf-dato:nth-child(n+3){margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--obra-line);}
.nsf-obra-page .nsf-dato:nth-child(3){padding-left: 0;}
.nsf-obra-page .nsf-packs{padding-left: 28px; padding-right: 28px;}
.nsf-obra-page .nsf-relacionados-cabecera{padding-left: 28px; padding-right: 28px;}
.nsf-obra-page .nsf-tabs-ficha{padding-left: 28px; padding-right: 28px;}
.nsf-obra-page .nsf-relacionados-acciones{padding-left: 28px; padding-right: 28px;}
.nsf-obra-page .nsf-seccion{padding-left: 28px; padding-right: 28px;}
.nsf-obra-page .nsf-llevar{padding-left: 28px; padding-right: 28px;}
}

@media (max-width:560px){
.nsf-obra-page .nsf-destacado-texto{padding: 28px 18px 24px;}
.nsf-obra-page .nsf-destacado h1{font-size: clamp(2.05rem,11vw,3rem);}
.nsf-obra-page .nsf-datos{grid-template-columns: 1fr 1fr; gap: 15px;}
.nsf-obra-page .nsf-dato:last-child{grid-column: auto;}
.nsf-obra-page .nsf-ficha-acciones-principales{flex-direction: column; align-items: stretch;}
.nsf-obra-page .nsf-destacado-cta,
  .nsf-obra-page .nsf-adn-toggle,
  .nsf-obra-page .nsf-trailer-toggle{width: 100%;}
.nsf-obra-page .nsf-packs{padding-left: 18px; padding-right: 18px;}
.nsf-obra-page .nsf-relacionados-cabecera{padding-left: 18px; padding-right: 18px;}
.nsf-obra-page .nsf-tabs-ficha{padding-left: 18px; padding-right: 18px;}
.nsf-obra-page .nsf-relacionados-acciones{padding-left: 18px; padding-right: 18px;}
.nsf-obra-page .nsf-seccion{padding-left: 18px; padding-right: 18px;}
.nsf-obra-page .nsf-llevar{padding-left: 18px; padding-right: 18px;}
}/* 9.5.70 — corrección de contraste sobre el nuevo fondo claro.
 * Algunos estilos históricos de front.css tienen color blanco con !important.
 * Estas reglas, limitadas a .nsf-obra-page, recuperan contraste sin alterar
 * los componentes fuera de la ficha pública.
 */
.nsf-obra-page .nsf-destacado h3,
.nsf-obra-page .nsf-destacado h3 a,
.nsf-obra-page .nsf-destacado .nsf-titulo-original,
.nsf-obra-page .nsf-destacado-autor,
.nsf-obra-page .nsf-destacado-desc,
.nsf-obra-page .nsf-destacado .nsf-origen,
.nsf-obra-page .nsf-dato dd,
.nsf-obra-page .nsf-dato dd .nsf-dato-link,
.nsf-obra-page .nsf-dato-icono,
.nsf-obra-page .nsf-destacado-texto .nsf-leer-mas,
.nsf-obra-page .nsf-destacado-texto .nsf-autor-link{color: #252b37 !important;}
.nsf-obra-page .nsf-destacado-autor,
.nsf-obra-page .nsf-destacado-desc,
.nsf-obra-page .nsf-destacado-texto .nsf-autor-link{color: #555b67 !important;}
.nsf-obra-page .nsf-destacado h3 a:hover,
.nsf-obra-page .nsf-destacado-texto .nsf-autor-link:hover,
.nsf-obra-page .nsf-destacado-texto .nsf-leer-mas:hover{color: var(--obra-red-dark) !important;}
.nsf-obra-page .nsf-destacado-cta,
.nsf-obra-page .nsf-adn-toggle,
.nsf-obra-page .nsf-trailer-toggle,
.nsf-obra-page .nsf-llevar-titulo{color: #272d39 !important; background: #fff;}
.nsf-obra-page .nsf-destacado-cta{color: #fff !important; background: var(--obra-red); border-color: var(--obra-red);}
.nsf-obra-page .nsf-destacado-cta:hover,
.nsf-obra-page .nsf-destacado-cta:focus-visible{color: #fff !important; background: var(--obra-red-dark); border-color: var(--obra-red-dark);}
.nsf-obra-page .nsf-adn-toggle:hover,
.nsf-obra-page .nsf-trailer-toggle:hover{color: var(--obra-red-dark) !important;}
.nsf-obra-page .nsf-obra-enlace,
.nsf-obra-page .nsf-obra-enlace-ficha,
.nsf-obra-page .nsf-fila-gen-enlace{color: #252b37 !important;}
.nsf-obra-page .nsf-obra-enlace:hover,
.nsf-obra-page .nsf-obra-enlace-ficha:hover,
.nsf-obra-page .nsf-fila-gen-enlace:hover{color: var(--obra-red-dark) !important;}
.nsf-obra-page .nsf-pack,
.nsf-obra-page .nsf-pack strong,
.nsf-obra-page .nsf-pack-texto,
.nsf-obra-page .nsf-pack-enlace{color: #252b37 !important;}
.nsf-obra-page .nsf-pack-resumen,
.nsf-obra-page .nsf-pack-datos,
.nsf-obra-page .nsf-pack-etiqueta,
.nsf-obra-page .nsf-pack-aviso{color: #6f747e !important;}
.nsf-obra-page .nsf-pack-cta{color: var(--obra-red-dark) !important;}
.nsf-obra-page .nsf-llevar-btn{color: #fff !important; background: var(--obra-red); border-color: var(--obra-red);}
.nsf-obra-page .nsf-llevar-btn:hover,
.nsf-obra-page .nsf-llevar-btn:focus-visible{color: #fff !important; background: var(--obra-red-dark); border-color: var(--obra-red-dark);}
.nsf-obra-page .nsf-fuente,
.nsf-obra-page .nsf-fuente a{color: #6f747e;}
/* 9.5.71 — revisión completa de contraste de la ficha pública.
 * front.css contiene reglas históricas con !important pensadas para la
 * antigua ficha sobre fondo rojo. Como el rediseño usa fondo claro, estas
 * reglas finales tienen especificidad suficiente para anularlas SOLO dentro
 * de .nsf-obra-page .nsf-ficha-publica.
 */
.nsf-obra-page .nsf-ficha-publica,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto,
.nsf-obra-page .nsf-ficha-publica .nsf-packs,
.nsf-obra-page .nsf-ficha-publica .nsf-seccion,
.nsf-obra-page .nsf-ficha-publica .nsf-llevar{color: #252b37; -webkit-text-fill-color: #252b37;}
/* Cabecera editorial */
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 a,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original{color: #171c27 !important; -webkit-text-fill-color: #171c27 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original{color: #858993 !important; -webkit-text-fill-color: #858993 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-autor,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-autor a,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-desc,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado .nsf-origen,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto .nsf-leer-mas{color: #555b67 !important; -webkit-text-fill-color: #555b67 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-etiqueta{color: #a3262a !important; -webkit-text-fill-color: #a3262a !important;}
/* Datos: elimina las antiguas reglas blancas de la ficha roja. */
.nsf-obra-page .nsf-ficha-publica .nsf-datos .nsf-dato dt,
.nsf-obra-page .nsf-ficha-publica .nsf-datos .nsf-dato dd,
.nsf-obra-page .nsf-ficha-publica .nsf-datos .nsf-dato dd a,
.nsf-obra-page .nsf-ficha-publica .nsf-datos .nsf-dato-icono,
.nsf-obra-page .nsf-ficha-publica .nsf-datos .nsf-dato-icono svg{color: #252b37 !important; -webkit-text-fill-color: #252b37 !important; stroke: currentColor; opacity: 1 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-datos .nsf-dato dt{color: #969aa3 !important; -webkit-text-fill-color: #969aa3 !important;}
/* Género y subgéneros. */
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada,
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada .nsf-genero-principal-bloque,
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros{background: #fff;}
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-etiqueta,
.nsf-obra-page .nsf-ficha-publica .nsf-genero-principal-etiqueta,
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros > .nsf-taxonomia-etiqueta{color: #969aa3 !important; -webkit-text-fill-color: #969aa3 !important; opacity: 1 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-genero-principal{color: #a3262a !important; -webkit-text-fill-color: #a3262a !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-genero-subgenero{color: #666b75 !important; -webkit-text-fill-color: #666b75 !important; background: #fafafa !important; border-color: #dedfe3 !important;}
/* ADN visible: género principal y subgéneros en la ficha pública. */
.nsf-obra-page .nsf-ficha-publica .nsf-adn-visible-titulo{display: flex; align-items: center; gap: 9px; margin: 0 0 15px; color: #a3262a; font-size: .76rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-visible-icono{font-size: 18px; line-height: 1;}
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada{margin-top: 24px; padding: 20px 0 0; border-top: 1px solid #e5e6e9; background: #fff;}
.nsf-obra-page .nsf-ficha-publica .nsf-genero-principal-bloque{margin: 0;}
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-subgeneros{margin-top: 15px;}
/* Tráiler y ADN: controles oscuros sobre fondo claro. */
.nsf-obra-page .nsf-ficha-publica .nsf-trailer-toggle,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle{border: 1px solid #d7d9dd !important; background: #fff !important; color: #272d39 !important; -webkit-text-fill-color: #272d39 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-trailer-toggle:hover,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:hover{background: #f7f7f8 !important; border-color: #c9cbd0 !important; color: #851f23 !important; -webkit-text-fill-color: #851f23 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-trailer-toggle-icon,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle-icon,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle-texto,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle-flecha{color: inherit !important; -webkit-text-fill-color: currentColor !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-panel{background: #fafafa !important; color: #252b37 !important; border: 1px solid #ececef;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-publico-fila>strong{color: #777c86 !important; -webkit-text-fill-color: #777c86 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-chips span{background: #f1f1f1 !important; color: #333 !important; -webkit-text-fill-color: #333 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-chips .nsf-adn-chip-link{background: #fff !important; color: #252b37 !important; -webkit-text-fill-color: #252b37 !important; border-color: #cfcfcf !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-cargando,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-error,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-vacio{color: #666 !important; -webkit-text-fill-color: #666 !important;}
/* Botón de catálogo: la regla histórica lo dejaba blanco sobre blanco. */
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta{display: inline-flex !important; align-items: center !important; align-self: flex-start !important; justify-content: flex-start !important; width: auto !important; max-width: 360px !important; min-height: 43px !important; margin: 0 !important; padding: 0 15px !important; gap: 8px !important; border: 1px solid #a3262a !important; border-radius: 4px !important; background: #a3262a !important; color: #fff !important; -webkit-text-fill-color: #fff !important; text-decoration: none !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:hover,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:focus-visible{background: #851f23 !important; border-color: #851f23 !important; color: #fff !important; -webkit-text-fill-color: #fff !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-texto,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-externo{color: #fff !important; -webkit-text-fill-color: #fff !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-icono,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-icono rect,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-icono path{stroke: #fff !important; color: #fff !important; fill: none !important;}
/* Relaciones y genealogía. */
.nsf-obra-page .nsf-ficha-publica .nsf-relacionados-titulo,
.nsf-obra-page .nsf-ficha-publica .nsf-seccion-titulo,
.nsf-obra-page .nsf-ficha-publica .nsf-seccion-titulo span,
.nsf-obra-page .nsf-ficha-publica .nsf-obra h4,
.nsf-obra-page .nsf-ficha-publica .nsf-obra h4 a,
.nsf-obra-page .nsf-ficha-publica .nsf-fila-gen-enlace{color: #202531 !important; -webkit-text-fill-color: #202531 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-relacionados-intro,
.nsf-obra-page .nsf-ficha-publica .nsf-seccion-intro,
.nsf-obra-page .nsf-ficha-publica .nsf-obra-meta,
.nsf-obra-page .nsf-ficha-publica .nsf-tag,
.nsf-obra-page .nsf-ficha-publica .nsf-fila-gen-meta,
.nsf-obra-page .nsf-ficha-publica .nsf-fila-gen-nota,
.nsf-obra-page .nsf-ficha-publica .nsf-relacionados-aviso{color: #858a94 !important; -webkit-text-fill-color: #858a94 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-tab{color: #626772 !important; -webkit-text-fill-color: #626772 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-grafo-btn-texto,
.nsf-obra-page .nsf-ficha-publica .nsf-fila-gen-rel{color: #851f23 !important; -webkit-text-fill-color: #851f23 !important;}
/* Packs y fuentes. */
.nsf-obra-page .nsf-ficha-publica .nsf-pack,
.nsf-obra-page .nsf-ficha-publica .nsf-pack strong,
.nsf-obra-page .nsf-ficha-publica .nsf-pack-texto,
.nsf-obra-page .nsf-ficha-publica .nsf-pack-enlace{color: #252b37 !important; -webkit-text-fill-color: #252b37 !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-pack-resumen,
.nsf-obra-page .nsf-ficha-publica .nsf-pack-datos,
.nsf-obra-page .nsf-ficha-publica .nsf-pack-etiqueta,
.nsf-obra-page .nsf-ficha-publica .nsf-pack-aviso{color: #6f747e !important; -webkit-text-fill-color: #6f747e !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-pack-cta,
.nsf-obra-page .nsf-ficha-publica .nsf-fuente a{color: #a3262a !important; -webkit-text-fill-color: #a3262a !important;}
/* Cierre de la ficha. */
.nsf-obra-page .nsf-ficha-publica .nsf-llevar-titulo{color: #a3262a !important; -webkit-text-fill-color: #a3262a !important; background: #fff !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-llevar-btn{color: #fff !important; -webkit-text-fill-color: #fff !important; background: #a3262a !important; border-color: #a3262a !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-llevar-aviso{color: #2c5c37 !important; -webkit-text-fill-color: #2c5c37 !important;}
/* ================================================================
   9.5.72 — composición editorial definitiva de la ficha
   La estructura separa texto y portada para que el CSS histórico de la
   ficha roja no pueda convertir elementos en espacios vacíos.
   ================================================================ */
.nsf-obra-page .nsf-ficha-publica{width: min(1180px,100%); margin: 0 auto; border: 0!important; border-radius: 0!important; box-shadow: none!important; overflow: visible!important; background: #fff!important; color: #172033!important; -webkit-text-fill-color: #172033!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado{display: grid!important; grid-template-columns: minmax(0,1fr) minmax(350px,.72fr)!important; gap: 42px!important; min-height: 0!important; margin: 0!important; padding: 34px 0 42px!important; background: #fff!important; color: #172033!important; border-bottom: 1px solid #e5e7ea!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto{display: flex!important; flex-direction: column!important; align-items: flex-start!important; min-width: 0!important; padding: 0!important; background: #fff!important; color: #172033!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-etiqueta{display: inline-flex!important; align-items: center!important; gap: 8px!important; min-height: 38px!important; padding: 0 13px!important; border: 1px solid #c3262c!important; border-radius: 6px!important; background: #fff!important; color: #b32228!important; -webkit-text-fill-color: #b32228!important; font-size: .72rem!important; font-weight: 800!important; letter-spacing: .07em!important; line-height: 1!important; text-transform: uppercase!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-etiqueta-icono{width: 18px; height: 18px; flex: none;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1{display: block!important; visibility: visible!important; opacity: 1!important; width: 100%!important; margin: 22px 0 0!important; padding: 0!important; color: #172033!important; -webkit-text-fill-color: #172033!important; font-family: inherit!important; font-size: clamp(2.3rem,4.1vw,4.15rem)!important; line-height: 1.03!important; font-weight: 800!important; letter-spacing: -.045em!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-es{display: block!important; color: #172033!important; -webkit-text-fill-color: #172033!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original{display: block!important; margin-top: 9px!important; color: #737985!important; -webkit-text-fill-color: #737985!important; font-size: .32em!important; line-height: 1.25!important; font-style: italic!important; font-weight: 500!important; letter-spacing: 0!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-autor{margin: 9px 0 0!important; color: #596170!important; -webkit-text-fill-color: #596170!important; font-size: 1rem!important; font-weight: 650!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-datos{display: grid!important; grid-template-columns: repeat(4,minmax(0,1fr))!important; width: 100%!important; margin: 28px 0 0!important; padding: 17px 0!important; border-top: 1px solid #e2e4e8!important; border-bottom: 1px solid #e2e4e8!important; gap: 0!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato{display: grid!important; grid-template-columns: 34px 1fr!important; grid-template-rows: auto auto!important; column-gap: 9px!important; min-width: 0!important; padding: 0 13px!important; border-right: 1px solid #e3e5e8!important; text-align: left!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato:first-child{padding-left: 0!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato:last-child{border-right: 0!important; padding-right: 0!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato-icono{grid-column: 1!important; grid-row: 1 / span 2!important; display: flex!important; align-items: center!important; justify-content: center!important; width: 30px!important; height: 30px!important; margin: 0!important; color: #c3262c!important; -webkit-text-fill-color: #c3262c!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato-icono svg{width: 26px!important; height: 26px!important; color: #c3262c!important; stroke: currentColor!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato dt{grid-column: 2!important; grid-row: 1!important; margin: 1px 0 0!important; color: #7c838e!important; -webkit-text-fill-color: #7c838e!important; font-size: .62rem!important; font-weight: 800!important; letter-spacing: .12em!important; text-transform: uppercase!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato dd{grid-column: 2!important; grid-row: 2!important; margin: 3px 0 0!important; color: #202735!important; -webkit-text-fill-color: #202735!important; font-size: .95rem!important; font-weight: 700!important; line-height: 1.3!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-desc{width: 100%!important; max-width: 72ch!important; margin: 27px 0 0!important; color: #4d5665!important; -webkit-text-fill-color: #4d5665!important; font-size: 1rem!important; line-height: 1.75!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales{display: flex!important; align-items: center!important; flex-wrap: wrap!important; gap: 10px!important; width: 100%!important; margin: 24px 0 0!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle,
.nsf-obra-page .nsf-ficha-publica .nsf-trailer-toggle{display: inline-flex!important; align-items: center!important; justify-content: center!important; gap: 8px!important; min-height: 46px!important; padding: 0 16px!important; border: 1px solid #c3262c!important; border-radius: 6px!important; background: #fff!important; color: #a82025!important; -webkit-text-fill-color: #a82025!important; font-size: .72rem!important; font-weight: 800!important; letter-spacing: .045em!important; text-transform: uppercase!important; text-decoration: none!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle{background: #c3262c!important; color: #fff!important; -webkit-text-fill-color: #fff!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:hover{background: #a82025!important; color: #fff!important; -webkit-text-fill-color: #fff!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:hover,
.nsf-obra-page .nsf-ficha-publica .nsf-trailer-toggle:hover{background: #fff5f5!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-icono{width: 21px!important; height: 21px!important; color: currentColor!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-externo{font-size: 19px!important; line-height: 1!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle-icon{font-size: 18px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle-flecha{font-size: 19px!important; line-height: 1!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-trailer-publico{margin: 0!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-img{min-height: 0!important; height: auto!important; max-height: none!important; overflow: hidden!important; margin: 0!important; clip-path: none!important; border-radius: 8px!important; background: #eee!important; align-self: start!important; box-shadow: 0 12px 30px rgba(20,28,45,.12)!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-img img{display: block!important; width: 100%!important; height: auto!important; min-height: 0!important; max-height: none!important; aspect-ratio: 2/3!important; object-fit: cover!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada{margin: 0!important; padding: 28px 0 0!important; border-top: 0!important; border-bottom: 1px solid #e5e7ea!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-etiqueta{color: #737b88!important; -webkit-text-fill-color: #737b88!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-genero-principal{display: inline-flex!important; padding: 7px 11px!important; border: 1px solid #c3262c!important; border-radius: 6px!important; color: #a82025!important; -webkit-text-fill-color: #a82025!important; background: #fff!important; font-size: .85rem!important; font-weight: 700!important; text-decoration: none!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-subgeneros{margin-top: 18px!important; padding-bottom: 26px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-genero-subgenero{display: inline-flex!important; align-items: center!important; min-height: 32px!important; padding: 0 11px!important; border: 1px solid #d9dce1!important; border-radius: 6px!important; background: #fff!important; color: #505866!important; -webkit-text-fill-color: #505866!important;}

@media (max-width:900px){
.nsf-obra-page .nsf-ficha-publica .nsf-destacado{grid-template-columns: minmax(0,1fr) minmax(280px,.68fr)!important; gap: 28px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto{padding: 0!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1{font-size: clamp(2rem,5.5vw,3.1rem)!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato{padding: 0 8px!important;}
}
@media (max-width:680px){
.nsf-obra-page .nsf-ficha-publica .nsf-destacado{display: flex!important; flex-direction: column-reverse!important; gap: 22px!important; padding: 20px 0 28px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-img{width: 100%!important; max-width: 300px!important; align-self: center!important; border-radius: 7px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto{width: 100%!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1{font-size: 2.15rem!important; letter-spacing: -.035em!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-autor{font-size: .92rem!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-datos{grid-template-columns: 1fr 1fr!important; margin-top: 22px!important; padding: 0!important; border-top: 1px solid #e2e4e8!important; border-bottom: 1px solid #e2e4e8!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato{padding: 14px 8px!important; border-right: 1px solid #e3e5e8!important; border-bottom: 1px solid #e3e5e8!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato:nth-child(2n){border-right: 0!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato:nth-last-child(-n+2){border-bottom: 0!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato:first-child{padding-left: 8px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato:last-child{padding-right: 8px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-desc{font-size: .94rem!important; line-height: 1.7!important; margin-top: 22px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales{display: grid!important; grid-template-columns: 1fr 1fr!important; gap: 8px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta,.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle,.nsf-obra-page .nsf-ficha-publica .nsf-trailer-toggle{width: 100%!important; min-height: 44px!important; padding: 0 9px!important; font-size: .66rem!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada{padding-top: 22px!important;}
}
@media (max-width:420px){
.nsf-obra-page .nsf-ficha-publica .nsf-destacado h1{font-size: 1.95rem!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-img{max-width: 270px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato{grid-template-columns: 29px 1fr!important; column-gap: 6px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato-icono{width: 26px!important; height: 26px!important;}
.nsf-obra-page .nsf-ficha-publica .nsf-dato-icono svg{width: 22px!important; height: 22px!important;}
}/* ================================================================
   9.5.74 — salida real del contenedor estrecho de la ficha
   El póster es un hermano de la columna de texto, no un elemento dentro
   de ella. La ficha ocupa un contenedor amplio en escritorio y la imagen
   conserva siempre su proporción natural: nunca se recorta.
   ================================================================ */
body.single-nsf_producto .nsf-obra-page{width: 100vw!important; max-width: none!important; margin-left: calc(50% - 50vw)!important; margin-right: 0!important; padding: 0 24px 60px!important; box-sizing: border-box!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica{width: min(1280px,100%)!important; max-width: none!important; margin: 0 auto!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado{grid-template-columns: minmax(0,1fr) minmax(390px,480px)!important; gap: 54px!important; align-items: start!important; padding: 36px 0 48px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-texto{padding: 0!important; min-width: 0!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-img{grid-column: 2!important; grid-row: 1!important; width: 100%!important; height: auto!important; min-height: 0!important; max-height: none!important; overflow: hidden!important; align-self: start!important; border-radius: 9px!important; background: #f1f1f1!important; box-shadow: 0 14px 34px rgba(20,28,45,.14)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-img img{display: block!important; width: 100%!important; height: auto!important; min-height: 0!important; max-height: none!important; aspect-ratio: auto!important; object-fit: contain!important; object-position: center!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-etiqueta{margin-top: 0!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado h1{margin-top: 22px!important; font-size: clamp(2.8rem,4.3vw,4.65rem)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado h1 .nsf-titulo-original{font-size: .31em!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-autor{font-size: 1.03rem!important;}
body.single-nsf_producto .nsf-obra-page .nsf-datos{margin-top: 27px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-desc{max-width: 68ch!important; font-size: 1.04rem!important; line-height: 1.72!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-acciones-principales{margin-top: 27px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-packs,
body.single-nsf_producto .nsf-obra-page .nsf-relacionados-cabecera,
body.single-nsf_producto .nsf-obra-page .nsf-tabs-ficha,
body.single-nsf_producto .nsf-obra-page .nsf-relacionados-acciones,
body.single-nsf_producto .nsf-obra-page .nsf-seccion,
body.single-nsf_producto .nsf-obra-page .nsf-llevar{width: min(1180px,100%)!important; margin-left: auto!important; margin-right: auto!important;}

@media (max-width:900px){
body.single-nsf_producto .nsf-obra-page{padding-left: 18px!important; padding-right: 18px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado{grid-template-columns: minmax(0,1fr) minmax(300px,40%)!important; gap: 28px!important;}
}
@media (max-width:680px){
body.single-nsf_producto .nsf-obra-page{padding: 0 14px 42px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado{display: flex!important; flex-direction: column!important; gap: 22px!important; padding: 20px 0 30px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-img{order: 0!important; width: min(100%,360px)!important; margin: 0 auto!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-texto{order: 1!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado h1{font-size: clamp(2.1rem,10vw,3.15rem)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-datos{grid-template-columns: repeat(2,minmax(0,1fr))!important;}
}

/* 9.5.74 — salida real del contenedor estrecho del tema.
 * El tema puede envolver .nsf-obra-page dentro de un .site-main limitado
 * (~840px). En ese caso width:100vw no basta: el hijo sigue participando
 * en el ancho disponible del contenedor. Sacamos la ficha del flujo de ese
 * límite y la centramos respecto al viewport en escritorio.
 */
@media (min-width: 901px){
body.single-nsf_producto .nsf-obra-page,
  .nsf-obra-page[data-nsf-ficha="1"]{position: relative!important; left: 50%!important; width: min(1280px,calc(100vw - 48px))!important; max-width: none!important; margin-left: 0!important; margin-right: 0!important; transform: translateX(-50%)!important; padding-left: 0!important; padding-right: 0!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica{width: 100%!important; max-width: none!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-destacado{grid-template-columns: minmax(0,1fr) minmax(430px,480px)!important; gap: 54px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-texto,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-destacado-texto{width: 100%!important; max-width: none!important;}
body.single-nsf_producto .nsf-obra-page .nsf-destacado-img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-destacado-img{width: 100%!important; max-width: none!important;}
}

/* ================================================================
   9.5.75 — ficha pública REAL: el renderer de front.js
   La ficha de /obras/... se dibuja con .nsf-thread-block. Las reglas
   anteriores estaban apuntando a una estructura PHP que esta página ya
   no utiliza. Estas reglas se aplican a la estructura que realmente
   aparece en pantalla.
   ================================================================ */
@media (min-width: 901px){
body.single-nsf_producto .nsf-obra-page,
  .nsf-obra-page[data-nsf-ficha="1"]{position: relative!important; left: 50%!important; width: min(1280px,calc(100vw - 48px))!important; max-width: none!important; margin-left: 0!important; margin-right: 0!important; transform: translateX(-50%)!important; padding: 0!important;}
body.single-nsf_producto .nsf-obra-page .nsf-buscador,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-buscador{width: 100%!important; max-width: none!important;}
body.single-nsf_producto .nsf-obra-page .nsf-results,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-results{width: 100%!important; max-width: none!important; margin: 0!important; padding: 44px 0 60px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica{width: 100%!important; max-width: none!important; margin: 0!important; padding: 0!important; background: #fff!important; color: #172033!important; border: 0!important; border-radius: 0!important; box-shadow: none!important; overflow: visible!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo{width: 100%!important; margin: 0 0 34px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado{display: grid!important; grid-template-columns: minmax(0,1fr) minmax(430px,480px)!important; gap: 54px!important; align-items: start!important; width: 100%!important; min-height: 0!important; margin: 0!important; padding: 0 0 48px!important; background: #fff!important; border: 0!important; border-bottom: 1px solid #e5e7ea!important; border-radius: 0!important; overflow: visible!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto{display: flex!important; flex-direction: column!important; align-items: flex-start!important; justify-content: flex-start!important; width: 100%!important; min-width: 0!important; padding: 0!important; background: #fff!important; color: #172033!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-etiqueta,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-etiqueta{display: inline-flex!important; align-items: center!important; gap: 8px!important; min-height: 38px!important; padding: 0 13px!important; border: 1px solid #c3262c!important; border-radius: 6px!important; background: #fff!important; color: #b32228!important; -webkit-text-fill-color: #b32228!important; font-size: .72rem!important; font-weight: 800!important; letter-spacing: .07em!important; line-height: 1!important; text-transform: uppercase!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1{display: block!important; visibility: visible!important; opacity: 1!important; width: 100%!important; margin: 22px 0 0!important; padding: 0!important; color: #172033!important; -webkit-text-fill-color: #172033!important; font-family: inherit!important; font-size: clamp(2.8rem,4.3vw,4.65rem)!important; line-height: 1.03!important; font-weight: 800!important; letter-spacing: -.045em!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-es,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-es{display: block!important; color: #172033!important; -webkit-text-fill-color: #172033!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original{display: block!important; margin-top: 9px!important; color: #737985!important; -webkit-text-fill-color: #737985!important; font-size: .31em!important; line-height: 1.25!important; font-style: italic!important; font-weight: 500!important; letter-spacing: 0!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-autor,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-autor{margin: 9px 0 0!important; color: #596170!important; -webkit-text-fill-color: #596170!important; font-size: 1.03rem!important; font-weight: 650!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-datos,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-datos{display: grid!important; grid-template-columns: repeat(4,minmax(0,1fr))!important; width: 100%!important; margin: 28px 0 0!important; padding: 17px 0!important; border-top: 1px solid #e2e4e8!important; border-bottom: 1px solid #e2e4e8!important; gap: 0!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato{display: grid!important; grid-template-columns: 34px 1fr!important; grid-template-rows: auto auto!important; column-gap: 9px!important; min-width: 0!important; padding: 0 13px!important; border-right: 1px solid #e3e5e8!important; text-align: left!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato:first-child,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato:first-child{padding-left: 0!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato:last-child,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato:last-child{border-right: 0!important; padding-right: 0!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato-icono,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato-icono{grid-column: 1!important; grid-row: 1 / span 2!important; display: flex!important; align-items: center!important; justify-content: center!important; width: 30px!important; height: 30px!important; margin: 0!important; color: #c3262c!important; -webkit-text-fill-color: #c3262c!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato dt,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato dt{margin: 0!important; color: #737985!important; -webkit-text-fill-color: #737985!important; font-size: .68rem!important; font-weight: 700!important; letter-spacing: .08em!important; text-transform: uppercase!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato dd,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato dd{margin: 3px 0 0!important; color: #202735!important; -webkit-text-fill-color: #202735!important; font-size: 1rem!important; font-weight: 700!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato dd a,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato dd a{color: #202735!important; -webkit-text-fill-color: #202735!important; text-decoration: none!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-desc,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-desc{width: 100%!important; max-width: 68ch!important; margin: 28px 0 0!important; color: #343c4b!important; -webkit-text-fill-color: #343c4b!important; font-size: 1.04rem!important; line-height: 1.72!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales{display: flex!important; flex-wrap: wrap!important; align-items: center!important; gap: 12px!important; width: 100%!important; margin-top: 27px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta,
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle,
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-trailer-toggle,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-cta,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-adn-toggle,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-trailer-toggle{min-height: 48px!important; border-radius: 6px!important; font-size: .78rem!important; font-weight: 800!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img{width: 100%!important; height: auto!important; min-height: 0!important; max-height: none!important; margin: 0!important; padding: 0!important; overflow: hidden!important; aspect-ratio: auto!important; clip-path: none!important; border: 0!important; border-radius: 9px!important; background: #f1f1f1!important; box-shadow: 0 14px 34px rgba(20,28,45,.14)!important; align-self: start!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img img{display: block!important; width: 100%!important; height: auto!important; min-height: 0!important; max-height: none!important; aspect-ratio: auto!important; object-fit: contain!important; object-position: center!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-relacionados-cabecera,
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-seccion,
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-packs,
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-llevar,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-relacionados-cabecera,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-seccion,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-packs,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-llevar{width: 100%!important; max-width: none!important;}
}

@media (max-width:900px){
body.single-nsf_producto .nsf-obra-page,
  .nsf-obra-page[data-nsf-ficha="1"]{width: calc(100% + 28px)!important; max-width: none!important; margin: 0 -14px!important; padding: 0 14px 42px!important; box-sizing: border-box!important; transform: none!important; left: auto!important;}
body.single-nsf_producto .nsf-obra-page .nsf-results,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-results{width: 100%!important; max-width: none!important; margin: 0!important; padding: 24px 0 40px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado{display: flex!important; flex-direction: column!important; gap: 22px!important; padding: 0 0 30px!important; overflow: visible!important; background: #fff!important; border-radius: 0!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img{order: 0!important; width: min(100%,360px)!important; margin: 0 auto!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto{order: 1!important; width: 100%!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1{font-size: clamp(2.1rem,10vw,3.15rem)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-datos,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-datos{grid-template-columns: repeat(2,minmax(0,1fr))!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato{padding: 14px 8px!important;}
}/* NSF 9.5.76 — contraste de la barra de navegación de Tira del hilo.
   El rediseño de la ficha introduce colores de texto claros sobre fondo
   blanco, pero la barra superior sigue necesitando su paleta oscura. */
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo{background: var(--nsf-navy)!important; color: #fff!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-barra-icono,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-barra-icono{color: #fff!important; -webkit-text-fill-color: #fff!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino{color: rgba(255,255,255,.8)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso{color: rgba(255,255,255,.72)!important; -webkit-text-fill-color: rgba(255,255,255,.72)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso:hover,
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso:focus-visible,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso:hover,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso:focus-visible{color: #fff!important; -webkit-text-fill-color: #fff!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-actual,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-actual{color: var(--nsf-mustard)!important; -webkit-text-fill-color: var(--nsf-mustard)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-sep,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-sep{color: rgba(255,255,255,.4)!important; -webkit-text-fill-color: rgba(255,255,255,.4)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir{color: rgba(255,255,255,.9)!important; -webkit-text-fill-color: rgba(255,255,255,.9)!important; border-color: rgba(255,255,255,.34)!important; background: transparent!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir:hover,
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir:focus-visible,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir:hover,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir:focus-visible{color: #fff!important; -webkit-text-fill-color: #fff!important; border-color: #fff!important; background: rgba(255,255,255,.12)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-editar-hilo,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-editar-hilo{color: rgba(255,255,255,.9)!important; -webkit-text-fill-color: rgba(255,255,255,.9)!important; border-color: rgba(255,255,255,.34)!important; background: transparent!important;}

body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo svg,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo svg{color: currentColor!important;}

/* ================================================================
   9.5.77 — Estructura visual definitiva de la cabecera de obra.
   Esta capa corrige el límite estrecho heredado del buscador y hace que
   la composición de la ficha coincida con el diseño aprobado:
   información a la izquierda + portada completa a la derecha.
   ================================================================ */
@media (min-width: 901px){
body.single-nsf_producto .nsf-obra-page .nsf-results,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-results{width: min(1280px, calc(100vw - 48px)) !important; max-width: none !important; margin-left: 50% !important; margin-right: 0 !important; transform: translateX(-50%) !important; padding: 28px 0 70px !important; box-sizing: border-box !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica{width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: #fff !important; overflow: visible !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado{display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(390px, 470px) !important; gap: 52px !important; align-items: start !important; min-height: 0 !important; margin: 0 !important; padding: 28px 0 42px !important; background: #fff !important; border: 0 !important; border-radius: 0 !important; overflow: visible !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto{width: 100% !important; min-width: 0 !important; padding: 0 !important; margin: 0 !important; align-items: flex-start !important; justify-content: flex-start !important; background: #fff !important; color: #172033 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-etiqueta,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-etiqueta{display: inline-flex !important; align-items: center !important; gap: 8px !important; min-height: 38px !important; padding: 0 13px !important; margin: 0 !important; border: 1px solid #c3262c !important; border-radius: 6px !important; background: #fff !important; color: #b32228 !important; -webkit-text-fill-color: #b32228 !important; font-size: .72rem !important; font-weight: 800 !important; letter-spacing: .07em !important; line-height: 1 !important; text-transform: uppercase !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-etiqueta-icono,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-etiqueta-icono{width: 18px !important; height: 18px !important; flex: none !important; color: currentColor !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1{display: block !important; width: 100% !important; margin: 22px 0 0 !important; padding: 0 !important; color: #172033 !important; -webkit-text-fill-color: #172033 !important; font-family: inherit !important; font-size: clamp(3rem, 4.4vw, 4.65rem) !important; line-height: 1.02 !important; font-weight: 800 !important; letter-spacing: -.045em !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-es,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-es{display: block !important; color: #172033 !important; -webkit-text-fill-color: #172033 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original{display: block !important; margin-top: 9px !important; color: #737985 !important; -webkit-text-fill-color: #737985 !important; font-size: .31em !important; line-height: 1.25 !important; font-style: italic !important; font-weight: 500 !important; letter-spacing: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-autor,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-autor{margin: 10px 0 0 !important; color: #596170 !important; -webkit-text-fill-color: #596170 !important; font-size: 1.02rem !important; line-height: 1.45 !important; font-weight: 650 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-datos,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-datos{display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)) !important; width: 100% !important; margin: 28px 0 0 !important; padding: 17px 0 !important; border-top: 1px solid #e2e4e8 !important; border-bottom: 1px solid #e2e4e8 !important; gap: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato{display: grid !important; grid-template-columns: 34px minmax(0,1fr) !important; grid-template-rows: auto auto !important; column-gap: 9px !important; min-width: 0 !important; padding: 0 14px !important; border-right: 1px solid #e3e5e8 !important; margin: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato:first-child,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato:first-child{padding-left: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato:last-child,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato:last-child{border-right: 0 !important; padding-right: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato-icono,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato-icono{grid-row: 1 / span 2 !important; grid-column: 1 !important; display: flex !important; align-items: center !important; justify-content: flex-start !important; width: 30px !important; height: 30px !important; color: #c3262c !important; -webkit-text-fill-color: #c3262c !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato-icono svg,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato-icono svg{width: 28px !important; height: 28px !important; color: #c3262c !important; stroke: #c3262c !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato dt,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato dt{grid-column: 2 !important; grid-row: 1 !important; margin: 0 !important; color: #777e8a !important; -webkit-text-fill-color: #777e8a !important; font-size: .62rem !important; font-weight: 800 !important; letter-spacing: .1em !important; text-transform: uppercase !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato dd,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato dd{grid-column: 2 !important; grid-row: 2 !important; margin: 3px 0 0 !important; color: #172033 !important; -webkit-text-fill-color: #172033 !important; font-size: 1rem !important; font-weight: 750 !important; line-height: 1.25 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-desc,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-desc{width: 100% !important; max-width: 70ch !important; margin: 29px 0 0 !important; color: #3f4857 !important; -webkit-text-fill-color: #3f4857 !important; font-size: 1.04rem !important; line-height: 1.72 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales{display: flex !important; flex-wrap: wrap !important; gap: 12px !important; width: 100% !important; margin: 28px 0 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img{grid-column: 2 !important; grid-row: 1 !important; width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; align-self: start !important; border-radius: 9px !important; clip-path: none !important; background: #f2f2f2 !important; box-shadow: 0 14px 34px rgba(20,28,45,.14) !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img img{display: block !important; width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important; aspect-ratio: auto !important; object-fit: contain !important; object-position: center !important; transform: none !important;}
}

@media (max-width:900px){
body.single-nsf_producto .nsf-obra-page .nsf-results,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-results{width: 100% !important; max-width: none !important; margin: 0 !important; transform: none !important; padding: 18px 14px 50px !important;}
}

/* ================================================================
   9.5.79 — Cabecera de obra: composición aprobada
   Objetivo: reproducir la referencia visual sin alterar la lógica.
   ================================================================ */
@media (min-width:901px){
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica{background: #fff !important; color: #172033 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado{grid-template-columns: minmax(0,1fr) minmax(420px,470px) !important; gap: 48px !important; padding: 18px 0 48px !important; align-items: start !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto{padding: 0 !important; min-width: 0 !important;}
/* La portada debe ocupar su columna completa y conservar toda la imagen. */
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img{width: 100% !important; margin: 0 !important; border-radius: 10px !important; overflow: hidden !important; clip-path: none !important; box-shadow: 0 12px 30px rgba(20,28,45,.14) !important; background: #f4f4f5 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img img{width: 100% !important; height: auto !important; max-height: none !important; min-height: 0 !important; aspect-ratio: auto !important; object-fit: contain !important; object-position: center !important; transform: none !important;}
/* Título y autores: jerarquía limpia y muy cercana a la referencia. */
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-etiqueta,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-etiqueta{margin: 0 0 20px !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1{margin: 0 !important; font-family: inherit !important; font-size: clamp(3rem,4.2vw,4.35rem) !important; line-height: 1.02 !important; letter-spacing: -.045em !important; font-weight: 800 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original{margin-top: 8px !important; font-size: .31em !important; font-style: italic !important; font-weight: 500 !important; color: #737985 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-autor,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-autor{margin: 10px 0 0 !important; font-size: 1.02rem !important; font-weight: 650 !important; color: #596170 !important;}
/* Metadatos: cuatro columnas realmente alineadas en una sola fila. */
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-datos,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-datos{display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; grid-auto-flow: column !important; width: 100% !important; margin: 30px 0 0 !important; padding: 17px 0 !important; border-top: 1px solid #dfe2e7 !important; border-bottom: 1px solid #dfe2e7 !important; gap: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato{display: grid !important; grid-template-columns: 32px minmax(0,1fr) !important; grid-template-rows: auto auto !important; column-gap: 9px !important; align-items: center !important; min-width: 0 !important; min-height: 58px !important; padding: 0 15px !important; margin: 0 !important; border-right: 1px solid #e1e4e8 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato:first-child,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato:first-child{padding-left: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato:last-child,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato:last-child{padding-right: 0 !important; border-right: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato-icono,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato-icono{grid-column: 1 !important; grid-row: 1 / span 2 !important; width: 30px !important; height: 30px !important; display: flex !important; align-items: center !important; justify-content: flex-start !important; color: #c3262c !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato-icono svg,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato-icono svg{width: 28px !important; height: 28px !important; color: #c3262c !important; stroke: #c3262c !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato dt,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato dt{grid-column: 2 !important; grid-row: 1 !important; margin: 0 !important; color: #777e8a !important; font-size: .61rem !important; line-height: 1.1 !important; font-weight: 800 !important; letter-spacing: .11em !important; text-transform: uppercase !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato dd,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato dd{grid-column: 2 !important; grid-row: 2 !important; margin: 4px 0 0 !important; color: #172033 !important; font-size: 1rem !important; line-height: 1.15 !important; font-weight: 750 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;}
/* Descripción inmediatamente debajo de la fila de metadatos. */
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-desc,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-desc{width: 100% !important; max-width: 70ch !important; margin: 29px 0 0 !important; color: #3f4857 !important; font-size: 1.04rem !important; line-height: 1.72 !important;}
/* Acciones en el orden de la referencia: ADN, catálogo, tráiler. */
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales{display: flex !important; align-items: flex-start !important; flex-wrap: wrap !important; gap: 12px !important; margin: 28px 0 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-adn-toggle{min-height: 50px !important; padding: 0 18px !important; border: 1px solid #c3262c !important; border-radius: 7px !important; background: #c3262c !important; color: #fff !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-cta{min-height: 50px !important; padding: 0 18px !important; border: 1px solid #c3262c !important; border-radius: 7px !important; background: #fff !important; color: #c3262c !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-trailer-toggle,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-trailer-toggle{min-height: 50px !important; padding: 0 18px !important; border: 1px solid #cfd3da !important; border-radius: 7px !important; background: #fff !important; color: #172033 !important;}
}

@media (min-width:901px) and (max-width:1120px){
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado{grid-template-columns: minmax(0,1fr) minmax(360px,410px) !important; gap: 34px !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato{padding-left: 10px !important; padding-right: 10px !important;}
}

@media (max-width:900px){
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-datos,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-datos{grid-template-columns: repeat(2,minmax(0,1fr)) !important; grid-auto-flow: row !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato:nth-child(2n){border-right: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato:nth-child(n+3){border-top: 1px solid #e1e4e8 !important; padding-top: 14px !important; margin-top: 14px !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-dato dd,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-dato dd{white-space: normal !important;}
}

/* 9.5.80 — Corrección de la cuadrícula de metadatos.
 * La regla histórica de .nsf-dato-generos hacía que Género ocupase dos columnas,
 * desplazando Publicación y rompiendo la fila de cuatro datos de la referencia.
 */
@media (min-width:901px){
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-datos .nsf-dato-generos,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-datos .nsf-dato-generos{grid-column: auto !important; grid-row: auto !important; width: auto !important;}
}/* 9.5.81 — Género y subgéneros integrados en el bloque ADN de la ficha. */
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada{display: block !important; width: 100% !important; margin: 28px 0 0 !important; padding: 22px 0 0 !important; border-top: 1px solid #e2e4e8 !important; background: transparent !important; color: #172033 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal-bloque,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal-bloque{display: flex !important; align-items: center !important; gap: 12px !important; margin: 0 !important; padding: 0 !important; border: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-etiqueta,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-etiqueta{color: #737b88 !important; font-size: 10px !important; font-weight: 700 !important; letter-spacing: 1.1px !important; text-transform: uppercase !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal{display: inline-flex !important; align-items: center !important; min-height: 34px !important; padding: 6px 11px !important; border: 1px solid #d52b31 !important; border-radius: 5px !important; background: #fff !important; color: #b32127 !important; font-size: 13px !important; font-weight: 700 !important; text-decoration: none !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros{display: flex !important; align-items: flex-start !important; gap: 12px !important; margin: 16px 0 0 !important; padding: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-chips,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-chips{display: flex !important; flex-wrap: wrap !important; gap: 7px !important; min-width: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-subgenero,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-subgenero{display: inline-flex !important; align-items: center !important; min-height: 32px !important; padding: 5px 10px !important; border: 1px solid #dfe2e7 !important; border-radius: 5px !important; background: #fff !important; color: #394250 !important; font-size: 12px !important; font-weight: 600 !important; text-decoration: none !important;}
@media (max-width:900px){
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros{flex-direction: column !important; gap: 8px !important;}
}

/* 9.5.84 — Taxonomía limpia: sin encabezado ADN duplicado.
 * El ADN completo sigue siendo el botón de acciones; aquí solo se muestran
 * género principal y subgéneros, como parte visual de la ficha.
 */
@media (min-width:701px){
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada{display: block !important; margin: 28px 0 0 !important; padding: 22px 0 26px !important; border-top: 1px solid #e2e4e8 !important; border-bottom: 1px solid #e2e4e8 !important; background: #fff !important;}
}body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada::before,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada::before{content: none !important; display: none !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal-bloque,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal-bloque{display: flex !important; align-items: center !important; flex-wrap: wrap !important; gap: 10px 14px !important; margin: 0 !important; padding: 0 !important; border: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-etiqueta,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-etiqueta{color: #737b88 !important; -webkit-text-fill-color: #737b88 !important; opacity: 1 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal{display: inline-flex !important; align-items: center !important; min-height: 34px !important; padding: 0 12px !important; margin: 0 !important; border: 1px solid #c3262c !important; border-radius: 6px !important; background: #fff !important; color: #a82025 !important; -webkit-text-fill-color: #a82025 !important; font-size: .85rem !important; font-weight: 750 !important; text-decoration: none !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros{margin: 18px 0 0 !important; padding: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-chips,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-chips{display: flex !important; flex-wrap: wrap !important; gap: 7px !important; margin-top: 7px !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-subgenero,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-subgenero{display: inline-flex !important; align-items: center !important; min-height: 32px !important; padding: 0 11px !important; border: 1px solid #d9dce1 !important; border-radius: 6px !important; background: #fff !important; color: #505866 !important; -webkit-text-fill-color: #505866 !important; font-size: .76rem !important; text-decoration: none !important;}
@media (max-width:700px){
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada{margin-top: 22px !important; padding: 18px 0 22px !important; border-top: 1px solid #e2e4e8 !important; border-bottom: 1px solid #e2e4e8 !important;}
}/* 9.5.85 — Género/subgéneros: bloque compacto y limpio.
 * Evita que los estilos históricos de la ficha roja dejen una caja alta,
 * fondo heredado o borde amarillo alrededor de la taxonomía.
 */
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada{display: block !important; width: 100% !important; height: auto !important; min-height: 0 !important; margin: 18px 0 0 !important; padding: 14px 0 !important; border: 0 !important; border-top: 1px solid #e2e4e8 !important; border-bottom: 1px solid #e2e4e8 !important; border-left: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-cabecera,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-cabecera{display: flex !important; align-items: center !important; flex-wrap: wrap !important; gap: 10px 24px !important; width: 100% !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal-bloque,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal-bloque{display: flex !important; align-items: center !important; flex-wrap: nowrap !important; gap: 10px !important; margin: 0 !important; padding: 0 !important; border: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-etiqueta,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-etiqueta{margin: 0 !important; padding: 0 !important; color: #737b88 !important; opacity: 1 !important; font-size: 10px !important; line-height: 1.2 !important; white-space: nowrap !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-genero-principal{min-height: 34px !important; margin: 0 !important; padding: 0 12px !important; border: 1px solid #c3262c !important; border-radius: 6px !important; background: #fff !important; color: #a82025 !important; font-size: 13px !important; font-weight: 750 !important; line-height: 32px !important; text-decoration: none !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros{display: flex !important; align-items: center !important; flex-wrap: wrap !important; gap: 8px !important; margin: 0 !important; padding: 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros > .nsf-taxonomia-etiqueta,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros > .nsf-taxonomia-etiqueta{margin: 0 2px 0 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-chips,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-chips{display: flex !important; flex-wrap: wrap !important; gap: 7px !important; margin: 0 !important;}
@media (max-width:700px){
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada{margin-top: 16px !important; padding: 12px 0 !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-cabecera,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-cabecera{display: block !important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto > .nsf-taxonomia-destacada .nsf-taxonomia-subgeneros{margin-top: 10px !important;}
}/* NSF 9.5.86 — icono del botón ADN en blanco sobre el fondo rojo. */
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle .nsf-adn-toggle-icon,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle .nsf-adn-toggle-texto,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle .nsf-adn-toggle-flecha{color: #fff !important; -webkit-text-fill-color: #fff !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle .nsf-adn-toggle-icon,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle .nsf-adn-toggle-flecha{opacity: 1 !important;}
/* NSF 9.5.88 — icono ADN vectorial blanco y botón rojo.
   El icono anterior era un emoji 🧬 y no podía heredar el color CSS. */
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle{background: #c9232b !important; border-color: #c9232b !important; color: #fff !important; -webkit-text-fill-color: #fff !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:hover,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:focus-visible{background: #b51f26 !important; border-color: #b51f26 !important; color: #fff !important; -webkit-text-fill-color: #fff !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-icon-svg{display: block; width: 20px; height: 20px; flex: 0 0 20px; overflow: visible;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-icon-svg path{fill: none !important; stroke: #fff !important; stroke-width: 2.1; stroke-linecap: round; stroke-linejoin: round;}
/* NSF 9.5.88 — género principal ya aparece en los metadatos superiores.
   La ficha pública solo muestra aquí los subgéneros. */
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada .nsf-genero-principal-bloque{display: none !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada{margin-top: 24px !important; padding: 18px 0 0 !important; border-top: 1px solid #e5e6e9 !important; background: #fff !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-subgeneros{margin-top: 0 !important;}
/* NSF 9.5.88 — hover y foco accesibles para el botón ADN. */
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle{background: #c9232b !important; border: 1px solid #c9232b !important; color: #fff !important; -webkit-text-fill-color: #fff !important; transition: background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:hover{background: #a91e25 !important; border-color: #8f1a20 !important; color: #fff !important; -webkit-text-fill-color: #fff !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:focus-visible{background: #a91e25 !important; border-color: #74151a !important; color: #fff !important; -webkit-text-fill-color: #fff !important; outline: 3px solid rgba(201,35,43,.35) !important; outline-offset: 3px !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:hover .nsf-adn-icon-svg path,
.nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:focus-visible .nsf-adn-icon-svg path{stroke: #fff !important;}

/* NSF 9.5.89 — hover ADN realmente visible.
   Se hace deliberadamente más contrastado que el estado normal y añade
   elevación/sombra para que el cambio sea perceptible con el ratón. */
@media (hover: hover){
html body .nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:hover{background: #8f1a20 !important; border-color: #74151a !important; color: #fff !important; -webkit-text-fill-color: #fff !important; transform: translateY(-2px) !important; box-shadow: 0 5px 12px rgba(116,21,26,.28) !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:hover .nsf-adn-icon-svg path{stroke: #fff !important;}
}html body .nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:active{transform: translateY(0) !important; box-shadow: 0 2px 5px rgba(116,21,26,.22) !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-adn-toggle:focus-visible{outline: 3px solid rgba(201,35,43,.42) !important; outline-offset: 3px !important; box-shadow: 0 0 0 2px #fff,0 0 0 5px rgba(201,35,43,.42) !important;}
/* NSF 9.5.90 — bloque de obras relacionadas: selección breve y editorial. */
.nsf-obra-page .nsf-relacionados-cabecera{margin: 42px 0 20px; padding: 0 0 4px; border: 0;}
.nsf-obra-page .nsf-relacionados-titulo{display: flex; align-items: center; gap: 10px; margin: 0; padding: 0; font-family: inherit; font-size: 1.45rem; line-height: 1.2; font-weight: 800; letter-spacing: -.02em; color: #172033;}
.nsf-obra-page .nsf-relacionados-titulo::before{content: '↗'; display: inline-grid; place-items: center; width: 32px; height: 32px; border: 2px solid #c9252b; border-radius: 50%; color: #c9252b; font-size: 18px; font-weight: 800; flex: 0 0 32px;}
.nsf-obra-page .nsf-relacionados-intro{margin: 8px 0 18px; color: #596170; font-size: .92rem; line-height: 1.5;}
.nsf-obra-page .nsf-relacionados-resumen-grid{display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; width: 100%;}
.nsf-obra-page .nsf-rel-card{min-width: 0; border: 1px solid #e0e3e8; border-radius: 7px; background: #fff; overflow: hidden; transition: transform .16s ease,box-shadow .16s ease,border-color .16s ease;}
.nsf-obra-page .nsf-rel-card:hover{transform: translateY(-2px); border-color: #c9252b; box-shadow: 0 8px 20px rgba(20,28,45,.09);}
.nsf-obra-page .nsf-rel-card-link{display: block; height: 100%; color: inherit; text-decoration: none;}
.nsf-obra-page .nsf-rel-card-imagen{display: block; aspect-ratio: 16/10; overflow: hidden; background: #eef0f3;}
.nsf-obra-page .nsf-rel-card-imagen img{display: block; width: 100%; height: 100%; object-fit: cover;}
.nsf-obra-page .nsf-rel-card-imagen-vacia{display: grid; place-items: center; color: #c9252b; font-size: 30px;}
.nsf-obra-page .nsf-rel-card-cuerpo{display: block; padding: 14px 14px 15px;}
.nsf-obra-page .nsf-rel-card-tipo{display: block; margin-bottom: 5px; color: #7b8290; font-size: .68rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;}
.nsf-obra-page .nsf-rel-card-titulo{display: block; color: #172033; font-size: 1rem; line-height: 1.25; font-weight: 750;}
.nsf-obra-page .nsf-rel-card-meta{display: block; margin-top: 14px; color: #626a77; font-size: .78rem;}
.nsf-obra-page .nsf-relacionados-ver-mas{margin-top: 18px; padding-top: 0;}
.nsf-obra-page .nsf-relacionados-aviso{margin: 0 0 11px; padding: 12px 14px; border: 1px solid #f1d4d5; border-radius: 6px; background: #fff6f6; color: #7c3538; font-size: .86rem; line-height: 1.4;}
.nsf-obra-page .nsf-relacionados-ver-mas-btn{display: inline-flex; align-items: center; gap: 9px; min-height: 42px; padding: 9px 15px; border: 1px solid #c9252b; border-radius: 5px; background: #fff; color: #b41f25; font-size: .82rem; font-weight: 800; text-decoration: none; transition: background .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease;}
.nsf-obra-page .nsf-relacionados-ver-mas-btn:hover,.nsf-obra-page .nsf-relacionados-ver-mas-btn:focus-visible{background: #c9252b; color: #fff; transform: translateY(-1px); box-shadow: 0 5px 14px rgba(201,37,43,.2);}
.nsf-obra-page .nsf-relacionados-ver-mas-btn:focus-visible{outline: 3px solid rgba(201,37,43,.25); outline-offset: 2px;}
@media (max-width:900px){.nsf-obra-page .nsf-relacionados-resumen-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.nsf-obra-page .nsf-relacionados-resumen-grid{grid-template-columns:1fr;gap:12px;}.nsf-obra-page .nsf-rel-card-imagen{aspect-ratio: 16/9;}.nsf-obra-page .nsf-relacionados-titulo{font-size:1.25rem;}}/* NSF 9.5.119 — Las tarjetas de relacionados tenían .nsf-rel-card-link
   con height:100%, lo que ocupaba toda la altura de la tarjeta y dejaba
   la relación y las acciones fuera del área visible (overflow:hidden).
   El contenido de la relación y el botón ADN sí se generaban, pero quedaban
   ocultos después del enlace. */
html body .nsf-obra-page .nsf-rel-card{display: flex !important; flex-direction: column !important;}
html body .nsf-obra-page .nsf-rel-card-link{display: block !important; height: auto !important; flex: 0 0 auto !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-wrap{display: block !important; visibility: visible !important; flex: 0 0 auto !important;}
html body .nsf-obra-page .nsf-rel-card-acciones{display: flex !important; visibility: visible !important; flex: 0 0 auto !important;}
/* NSF 9.5.93 — Las tarjetas de obras relacionadas deben usar la imagen grande.
   El renderer JS prioriza imagen_grande para evitar ampliar miniaturas de WordPress. */
.nsf-obra-page .nsf-rel-card-imagen img{image-rendering: auto; -webkit-backface-visibility: hidden; backface-visibility: hidden;}
/* 9.5.92 — «¿Te lo llevas?» debe compartir el lenguaje visual de sus botones hermanos. */
.nsf-obra-page .nsf-llevar-titulo{display: inline-flex; align-items: center; justify-content: center; min-height: 43px; padding: 0 20px; border: 1px solid var(--obra-red); border-radius: 999px; background: var(--obra-red); color: #fff; font-size: .76rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; line-height: 1; transition: background-color .16s ease, border-color .16s ease, transform .16s ease, box-shadow .16s ease; cursor: default;}
.nsf-obra-page .nsf-llevar-titulo:hover{background: var(--obra-red-dark); border-color: var(--obra-red-dark); color: #fff; transform: translateY(-1px); box-shadow: 0 5px 12px rgba(0,0,0,.12);}
/* 9.5.92 — «¿Te lo llevas?» debe ser visualmente idéntico a sus botones hermanos. */
.nsf-obra-page .nsf-ficha-publica .nsf-llevar-titulo{display: inline-flex !important; align-items: center !important; justify-content: center !important; box-sizing: border-box !important; min-height: 38px !important; height: 38px !important; padding: 7px 16px !important; border: 1px solid #a3262a !important; border-radius: 100px !important; background: #a3262a !important; color: #fff !important; -webkit-text-fill-color: #fff !important; font-family: inherit !important; font-size: .82rem !important; font-weight: 500 !important; letter-spacing: 0 !important; line-height: 1.2 !important; text-transform: none !important; cursor: default !important; transition: background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease,box-shadow .14s ease !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-llevar-titulo:hover{background: #8f1f23 !important; border-color: #8f1f23 !important; color: #fff !important; -webkit-text-fill-color: #fff !important; transform: translateY(-1px) !important; box-shadow: 0 4px 10px rgba(0,0,0,.12) !important;}
/* v9.5.94 — CTA de destino externo: visible sobre fondo claro.
 * El renderer JS usa "Ver en %s" (Apple TV, Netflix, Steam, etc.).
 * Las reglas históricas dejaban el texto/iconos blancos sobre fondo blanco.
 */
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta{background: #fff !important; border: 1px solid #c3262c !important; color: #c3262c !important; -webkit-text-fill-color: #c3262c !important; box-shadow: none !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-texto,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-externo{color: #c3262c !important; -webkit-text-fill-color: #c3262c !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-icono,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-icono rect,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta-icono path{color: #c3262c !important; stroke: #c3262c !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:hover,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:focus-visible{background: #c3262c !important; border-color: #c3262c !important; color: #fff !important; -webkit-text-fill-color: #fff !important; transform: translateY(-1px); box-shadow: 0 5px 12px rgba(195,38,44,.18) !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:hover .nsf-destacado-cta-texto,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:hover .nsf-destacado-cta-externo,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:focus-visible .nsf-destacado-cta-texto,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:focus-visible .nsf-destacado-cta-externo{color: #fff !important; -webkit-text-fill-color: #fff !important;}
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:hover .nsf-destacado-cta-icono,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:hover .nsf-destacado-cta-icono rect,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:hover .nsf-destacado-cta-icono path,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:focus-visible .nsf-destacado-cta-icono,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:focus-visible .nsf-destacado-cta-icono rect,
.nsf-obra-page .nsf-ficha-publica .nsf-destacado-cta:focus-visible .nsf-destacado-cta-icono path{color: #fff !important; stroke: #fff !important;}
/* ================================================================
   NSF 9.5.99 — Vista completa de relaciones (?nsf_relaciones=1)
   ================================================================ */
.nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas{width: min(1280px,calc(100vw - 48px)) !important; max-width: 1280px !important; margin-left: auto !important; margin-right: auto !important;}
.nsf-obra-page .nsf-relaciones-completas > .nsf-relacionados-cabecera{display: none;}
.nsf-obra-page .nsf-relaciones-completas-cabecera{display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin: 48px 0 22px; padding: 0 0 20px; border-bottom: 1px solid #e0e3e8;}
.nsf-obra-page .nsf-relaciones-completas-kicker{display: block; margin-bottom: 8px; color: #c9252b; font-size: .68rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase;}
.nsf-obra-page .nsf-relaciones-completas-cabecera h2{margin: 0; color: #172033; font-size: clamp(1.7rem,3vw,2.35rem); line-height: 1.1; letter-spacing: -.035em;}
.nsf-obra-page .nsf-relaciones-completas-cabecera p{margin: 9px 0 0; color: #646c78; font-size: .94rem; line-height: 1.5;}
.nsf-obra-page .nsf-relaciones-volver{flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 40px; padding: 8px 14px; border: 1px solid #c9252b; border-radius: 6px; color: #b41f25; background: #fff; font-size: .78rem; font-weight: 800; text-decoration: none; transition: background .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease;}
.nsf-obra-page .nsf-relaciones-volver:hover,
.nsf-obra-page .nsf-relaciones-volver:focus-visible{background: #c9252b; color: #fff; transform: translateY(-1px); box-shadow: 0 5px 14px rgba(201,37,43,.18);}
.nsf-obra-page .nsf-relaciones-completas .nsf-tabs-ficha{display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 28px; padding: 0; border: 0;}
.nsf-obra-page .nsf-relaciones-completas .nsf-tab{min-height: 38px; padding: 7px 13px; border: 1px solid #d9dde3; border-radius: 999px; background: #fff; color: #4f5866; font-size: .77rem; font-weight: 800; cursor: pointer; transition: background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;}
.nsf-obra-page .nsf-relaciones-completas .nsf-tab:hover,
.nsf-obra-page .nsf-relaciones-completas .nsf-tab:focus-visible,
.nsf-obra-page .nsf-relaciones-completas .nsf-tab-on{border-color: #c9252b; background: #c9252b; color: #fff; transform: translateY(-1px);}
.nsf-obra-page .nsf-relaciones-completas .nsf-tab-num{margin-left: 4px; opacity: .7;}
.nsf-obra-page .nsf-relaciones-completas .nsf-relacionados-acciones{margin: 0 0 20px; padding: 0; text-align: right;}
.nsf-obra-page .nsf-relaciones-completas .nsf-grafo-btn-texto{color: #b41f25; font-size: .76rem; font-weight: 800; text-decoration: none; border: 1px solid #e2e5e9; border-radius: 6px; padding: 8px 12px; background: #fff;}
.nsf-obra-page .nsf-relaciones-completas .nsf-grafo-btn-texto:hover,
.nsf-obra-page .nsf-relaciones-completas .nsf-grafo-btn-texto:focus-visible{border-color: #c9252b; background: #fff6f6; color: #9e1d23;}
.nsf-obra-page .nsf-relaciones-completas .nsf-seccion{margin: 30px 0 0; padding: 0; border: 0;}
.nsf-obra-page .nsf-relaciones-completas .nsf-seccion-titulo{display: flex; align-items: center; gap: 8px; margin: 0 0 14px; padding: 0 0 10px; border-bottom: 1px solid #e0e3e8; color: #172033; font-family: inherit; font-size: 1.15rem; font-weight: 800; cursor: pointer;}
.nsf-obra-page .nsf-relaciones-completas .nsf-seccion-titulo span{color: #8a919c;}
.nsf-obra-page .nsf-relaciones-completas .nsf-lista-obras{display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin: 0;}
.nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa{display: block; min-width: 0; padding: 0; margin: 0; overflow: hidden; border: 1px solid #e0e3e8; border-radius: 8px; background: #fff; color: #172033; transition: transform .16s ease,box-shadow .16s ease,border-color .16s ease;}
.nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa:hover{transform: translateY(-2px); border-color: #c9252b; box-shadow: 0 9px 22px rgba(20,28,45,.09);}
.nsf-obra-page .nsf-relacion-card-completa-enlace{display: block; height: 100%; color: inherit; text-decoration: none;}
.nsf-obra-page .nsf-relacion-card-completa-media{display: block; aspect-ratio: 16/10; overflow: hidden; background: #eef0f3;}
.nsf-obra-page .nsf-relacion-card-completa-media img{display: block; width: 100%; height: 100%; object-fit: cover; image-rendering: auto;}
.nsf-obra-page .nsf-relacion-card-completa-media-vacia{display: grid; width: 100%; height: 100%; place-items: center; color: #c9252b; font-size: 30px;}
.nsf-obra-page .nsf-relacion-card-completa-cuerpo{display: flex; flex-direction: column; padding: 14px 15px 16px;}
.nsf-obra-page .nsf-relacion-card-completa-tipo{margin-bottom: 5px; color: #7b8290; font-size: .66rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase;}
.nsf-obra-page .nsf-relacion-card-completa-titulo{color: #172033; font-size: 1rem; line-height: 1.25; font-weight: 780;}
.nsf-obra-page .nsf-relacion-card-completa-meta{margin-top: 8px; color: #656d79; font-size: .77rem;}
.nsf-obra-page .nsf-relacion-card-completa-rel{margin-top: 10px; padding-top: 9px; border-top: 1px solid #edf0f2; color: #596170; font-size: .76rem; line-height: 1.45;}
.nsf-obra-page .nsf-relaciones-completas .nsf-relacionados-ver-mas{display: none;}
.nsf-obra-page .nsf-relaciones-completas .nsf-seccion-colapsada .nsf-lista-obras,
.nsf-obra-page .nsf-relaciones-completas .nsf-seccion-colapsada .nsf-lista-genealogica,
.nsf-obra-page .nsf-relaciones-completas .nsf-seccion-colapsada .nsf-seccion-intro{display: none;}
.nsf-obra-page .nsf-relaciones-completas .nsf-lista-genealogica{display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 0;}
.nsf-obra-page .nsf-relaciones-completas .nsf-fila-gen{border: 1px solid #e0e3e8; border-radius: 8px; background: #fff; overflow: hidden;}
.nsf-obra-page .nsf-relaciones-completas .nsf-fila-gen-enlace{display: grid; grid-template-columns: 76px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 10px; color: #172033;}
.nsf-obra-page .nsf-relaciones-completas .nsf-fila-gen-img,
.nsf-obra-page .nsf-relaciones-completas .nsf-fila-gen-img-vacia{width: 76px; height: 92px;}
.nsf-obra-page .nsf-relaciones-completas .nsf-fila-gen-img img{width: 100%; height: 100%; object-fit: cover; border-radius: 5px;}
.nsf-obra-page .nsf-relaciones-completas .nsf-fila-gen-titulo{color: #172033; font-weight: 800;}
.nsf-obra-page .nsf-relaciones-completas .nsf-fila-gen-meta,
.nsf-obra-page .nsf-relaciones-completas .nsf-fila-gen-nota{color: #68707d;}
.nsf-obra-page .nsf-relaciones-completas .nsf-fila-gen-rel{color: #a82025; font-size: .72rem; font-weight: 700;}
@media (max-width:900px){
.nsf-obra-page .nsf-relaciones-completas-cabecera{align-items: flex-start; flex-direction: column;}
.nsf-obra-page .nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: repeat(2,minmax(0,1fr));}
.nsf-obra-page .nsf-relaciones-completas .nsf-lista-genealogica{grid-template-columns: 1fr;}
}
@media (max-width:560px){
.nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas{width: calc(100vw - 28px) !important;}
.nsf-obra-page .nsf-relaciones-completas-cabecera{margin-top: 32px; padding-bottom: 16px;}
.nsf-obra-page .nsf-relaciones-completas-cabecera h2{font-size: 1.55rem;}
.nsf-obra-page .nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: 1fr;}
.nsf-obra-page .nsf-relaciones-completas .nsf-tabs-ficha{gap: 6px;}
.nsf-obra-page .nsf-relaciones-completas .nsf-tab{font-size: .72rem; padding: 7px 10px;}
}/* ================================================================
   NSF 9.5.109 — Vista completa de relaciones rehecha desde cero.
   Esta capa solo afecta a ?nsf_relaciones=1.
   ================================================================ */
.nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas{width: min(1280px,calc(100vw - 48px)) !important; max-width: 1280px !important; margin-left: auto !important; margin-right: auto !important;}
.nsf-obra-page .nsf-relaciones-completas > .nsf-relacionados-cabecera{display: none !important;}
.nsf-obra-page .nsf-relaciones-completas-cabecera{display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin: 42px 0 26px; padding: 0 0 20px; border-bottom: 1px solid #dfe3e8;}
.nsf-obra-page .nsf-relaciones-completas-kicker{display: block; margin-bottom: 7px; color: #c9252b; font-size: .68rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase;}
.nsf-obra-page .nsf-relaciones-completas-cabecera h2{margin: 0; color: #172033; font-size: clamp(1.8rem,3vw,2.45rem); line-height: 1.1; letter-spacing: -.035em;}
.nsf-obra-page .nsf-relaciones-completas-cabecera p{margin: 8px 0 0; color: #667080; font-size: .94rem; line-height: 1.5;}
.nsf-obra-page .nsf-relaciones-volver{display: inline-flex; align-items: center; min-height: 40px; padding: 8px 14px; border: 1px solid #c9252b; border-radius: 999px; background: #fff; color: #b41f25; font-size: .76rem; font-weight: 800; text-decoration: none; transition: .16s ease;}
.nsf-obra-page .nsf-relaciones-volver:hover,.nsf-obra-page .nsf-relaciones-volver:focus-visible{background: #c9252b; color: #fff; transform: translateY(-1px); box-shadow: 0 6px 16px rgba(201,37,43,.18);}
.nsf-obra-page .nsf-relaciones-completas .nsf-tabs-ficha{display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 22px; padding: 0; border: 0;}
.nsf-obra-page .nsf-relaciones-completas .nsf-tab{min-height: 38px; padding: 7px 14px; border: 1px solid #d9dde3; border-radius: 999px; background: #fff; color: #4f5866; font-size: .77rem; font-weight: 800; cursor: pointer; transition: .16s ease;}
.nsf-obra-page .nsf-relaciones-completas .nsf-tab:hover,.nsf-obra-page .nsf-relaciones-completas .nsf-tab:focus-visible,.nsf-obra-page .nsf-relaciones-completas .nsf-tab-on{border-color: #c9252b; background: #c9252b; color: #fff; transform: translateY(-1px);}
.nsf-obra-page .nsf-relaciones-completas .nsf-relacionados-acciones{margin: 0 0 20px; text-align: right;}
.nsf-obra-page .nsf-relaciones-completas .nsf-grafo-btn-texto{display: inline-flex; padding: 8px 12px; border: 1px solid #e0e3e8; border-radius: 999px; background: #fff; color: #b41f25; font-size: .76rem; font-weight: 800; text-decoration: none;}
.nsf-obra-page .nsf-relaciones-completas .nsf-grafo-btn-texto:hover,.nsf-obra-page .nsf-relaciones-completas .nsf-grafo-btn-texto:focus-visible{border-color: #c9252b; background: #fff6f6; color: #9e1d23;}
.nsf-obra-page .nsf-relaciones-completas .nsf-seccion-titulo{display: flex; align-items: center; gap: 8px; margin: 0 0 14px; padding: 0 0 10px; border-bottom: 1px solid #dfe3e8; color: #172033; font-family: inherit; font-size: 1.15rem; font-weight: 800; cursor: pointer;}
.nsf-obra-page .nsf-relaciones-completas .nsf-lista-obras{display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 18px !important; margin: 0;}
.nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa{display: flex !important; flex-direction: column; min-width: 0; padding: 0; margin: 0; overflow: hidden; border: 1px solid #dfe3e8; border-radius: 10px; background: #fff; color: #172033; box-shadow: 0 2px 8px rgba(20,30,50,.035); transition: transform .16s ease,box-shadow .16s ease,border-color .16s ease;}
.nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa:hover{transform: translateY(-3px); border-color: #c9252b; box-shadow: 0 10px 24px rgba(20,30,50,.09);}
.nsf-obra-page .nsf-relacion-card-completa-enlace{display: block; color: inherit; text-decoration: none;}
.nsf-obra-page .nsf-relacion-card-completa-media{display: flex; align-items: center; justify-content: center; aspect-ratio: 4/3; overflow: hidden; background: #f5f6f8;}
.nsf-obra-page .nsf-relacion-card-completa-media img{display: block; width: 100%; height: 100%; object-fit: contain; background: #f5f6f8; transition: transform .18s ease;}
.nsf-obra-page .nsf-relacion-card-completa:hover .nsf-relacion-card-completa-media img{transform: scale(1.018);}
.nsf-obra-page .nsf-relacion-card-completa-tipo{display: inline-block; margin-bottom: 6px; color: #7b8290; font-size: .65rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase;}
.nsf-obra-page .nsf-relacion-card-completa-titulo .nsf-titulo-es{display: block;}
.nsf-obra-page .nsf-relacion-card-completa-titulo .nsf-titulo-original{display: block; margin-top: 3px; color: #737c8a; font-size: .78rem; font-weight: 400;}
.nsf-obra-page .nsf-relacion-card-completa-meta{margin-top: 8px; color: #656d79; font-size: .76rem;}
.nsf-obra-page .nsf-relacion-card-completa-relacion{display: flex; gap: 9px; margin-top: auto; padding: 13px 15px 15px; border-top: 1px solid #e8ebef; background: #fffaf0; color: #26324a;}
.nsf-obra-page .nsf-relacion-card-completa-rel-icono{flex: 0 0 auto; color: #c59a24; font-size: 1rem; line-height: 1.1;}
.nsf-obra-page .nsf-relacion-card-completa-rel{display: block; margin: 0 0 5px; color: #172033; font-size: .66rem; font-weight: 850; letter-spacing: .06em; text-transform: uppercase;}
.nsf-obra-page .nsf-relacion-card-completa-relacion p{margin: 0; color: #3e4755; font-family: Georgia,'Times New Roman',serif; font-style: italic; font-size: .86rem; line-height: 1.45;}
.nsf-obra-page .nsf-relaciones-completas .nsf-relaciones-completas-cabecera + .nsf-tabs-ficha{;}
.nsf-obra-page .nsf-relaciones-completas .nsf-seccion-colapsada .nsf-lista-obras,.nsf-obra-page .nsf-relaciones-completas .nsf-seccion-colapsada .nsf-lista-genealogica,.nsf-obra-page .nsf-relaciones-completas .nsf-seccion-colapsada .nsf-seccion-intro{display: none !important;}
@media(max-width:1050px){.nsf-obra-page .nsf-relaciones-completas .nsf-lista-obras{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}}
@media(max-width:800px){.nsf-obra-page .nsf-relaciones-completas-cabecera{align-items:flex-start;flex-direction:column;}.nsf-obra-page .nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: repeat(2,minmax(0,1fr)) !important;}}
@media(max-width:560px){.nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas{width:calc(100vw - 28px) !important;}.nsf-obra-page .nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: 1fr !important;}.nsf-obra-page .nsf-relaciones-completas-cabecera{margin-top:28px;}.nsf-obra-page .nsf-relaciones-completas-cabecera h2{font-size: 1.55rem;}}/* NSF 9.5.120 — acabado visual de las tarjetas de obras relacionadas.
 * Mantiene la estructura/relación/ADN ya funcionales y mejora únicamente la presentación.
 */
html body .nsf-obra-page .nsf-relacionados-resumen-grid{align-items: stretch; gap: 18px;}
html body .nsf-obra-page .nsf-rel-card{display: flex !important; flex-direction: column !important; min-width: 0 !important; overflow: hidden !important; border: 1px solid #e2e5ea !important; border-radius: 12px !important; background: #fff !important; box-shadow: 0 3px 12px rgba(23,32,51,.05) !important; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;}
html body .nsf-obra-page .nsf-rel-card:hover{transform: translateY(-3px) !important; border-color: #d34a4f !important; box-shadow: 0 12px 28px rgba(23,32,51,.10) !important;}
html body .nsf-obra-page .nsf-rel-card-link{display: block !important; flex: 0 0 auto !important; height: auto !important; color: inherit !important; text-decoration: none !important;}
html body .nsf-obra-page .nsf-rel-card-imagen{display: flex !important; align-items: center !important; justify-content: center !important; height: 188px !important; aspect-ratio: auto !important; overflow: hidden !important; background: linear-gradient(180deg,#f6f7f8,#eef0f3) !important; border-bottom: 1px solid #e8ebef !important;}
html body .nsf-obra-page .nsf-rel-card-imagen img{display: block !important; width: 100% !important; height: 100% !important; object-fit: contain !important; object-position: center !important;}
html body .nsf-obra-page .nsf-rel-card-cuerpo{display: flex !important; flex-direction: column !important; padding: 14px 16px 15px !important; min-height: 132px !important;}
/* NSF 9.5.306 — Las etiquetas de las tarjetas no deben heredar el color
   oscuro del tema/Elementor. Mantener el estilo editorial rosa también en móvil. */
html body .nsf-obra-page .nsf-rel-card-tipo{display: inline-block !important; align-self: flex-start !important; margin: 0 0 7px !important; padding: 5px 10px !important; border: 1px dashed #e85a83 !important; border-radius: 999px !important; background: #fff4f6 !important; color: #e13f72 !important; -webkit-text-fill-color: #e13f72 !important; font-size: .62rem !important; font-weight: 850 !important; letter-spacing: .09em !important; line-height: 1 !important; text-transform: uppercase !important;}
html body .nsf-obra-page .nsf-rel-card-titulo{display: block !important; color: #172033 !important; font-size: 1.04rem !important; line-height: 1.22 !important; font-weight: 780 !important; letter-spacing: -.01em !important;}
html body .nsf-obra-page .nsf-rel-card-meta{display: block !important; margin-top: 14px !important; color: #6e7684 !important; font-size: .76rem !important; line-height: 1.35 !important;}
html body .nsf-obra-page .nsf-rel-card-meta svg{vertical-align: -2px !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-wrap{flex: 0 0 auto !important; margin: 0 !important; border-top: 1px solid #eee4d4 !important;}
html body .nsf-obra-page .nsf-rel-card-relacion{display: flex !important; align-items: flex-start !important; gap: 10px !important; margin: 0 !important; padding: 13px 16px 14px !important; background: linear-gradient(180deg,#fffaf1,#fff7ea) !important; border: 0 !important; color: #26324a !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-icono{flex: 0 0 24px !important; width: 24px !important; height: 24px !important; display: grid !important; place-items: center !important; border-radius: 50% !important; background: #fff !important; border: 1px solid #ead9bc !important; color: #b17b11 !important; font-size: 13px !important; line-height: 1 !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-texto{min-width: 0 !important; gap: 4px !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-texto strong{color: #6d4c10 !important; font-size: .64rem !important; font-weight: 850 !important; letter-spacing: .08em !important; line-height: 1.1 !important; text-transform: uppercase !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-texto span{color: #4e5663 !important; font-size: .79rem !important; line-height: 1.42 !important;}
html body .nsf-obra-page .nsf-rel-card-acciones{display: flex !important; align-items: center !important; gap: 8px !important; flex-wrap: wrap !important; padding: 11px 16px 16px !important; background: #fff !important;}
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-rel-card-adn,
html body .nsf-obra-page .nsf-rel-card-adn{margin: 0 !important; padding: 0 !important; width: auto !important;}
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-adn-toggle,
html body .nsf-obra-page .nsf-rel-card-adn .nsf-adn-toggle{width: auto !important; min-height: 38px !important; padding: 0 12px !important; border-radius: 999px !important; font-size: .70rem !important; letter-spacing: .02em !important;}
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-info-ia-btn{min-height: 38px !important; padding: 0 11px !important; border: 1px solid #d8dde4 !important; border-radius: 999px !important; background: #fff !important; color: #566070 !important; font-size: .70rem !important; font-weight: 750 !important; line-height: 1 !important; transition: background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease !important;}
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-info-ia-btn:hover,
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-info-ia-btn:focus-visible{background: #172033 !important; border-color: #172033 !important; color: #fff !important; transform: translateY(-1px) !important;}
@media (max-width:900px){
html body .nsf-obra-page .nsf-relacionados-resumen-grid{gap: 15px !important;}
html body .nsf-obra-page .nsf-rel-card-imagen{height: 170px !important;}
}
@media (max-width:560px){
html body .nsf-obra-page .nsf-relacionados-resumen-grid{grid-template-columns: 1fr !important; gap: 13px !important;}
html body .nsf-obra-page .nsf-rel-card-imagen{height: 210px !important;}
html body .nsf-obra-page .nsf-rel-card-cuerpo{min-height: 0 !important;}
}/* NSF 9.5.125 — acabado definitivo de la relación en las tarjetas principales.
   Esta hoja se carga después de front.css; neutralizamos expresamente el fondo
   crema heredado del diseño anterior y centramos las acciones de la tarjeta. */
html body .nsf-obra-page .nsf-rel-card-relacion-wrap{background: transparent !important; border: 0 !important; margin: 0 !important; padding: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-relacion{background: #fff !important; background-image: none !important; border-top: 1px solid #e8ebef !important; border-bottom: 0 !important; color: #26324a !important; box-shadow: none !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-icono{background: #fff !important; border: 0 !important; color: #c9252d !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-texto strong{color: #172033 !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-texto span{color: #3e4755 !important;}
html body .nsf-obra-page .nsf-rel-card-acciones{justify-content: center !important; align-items: center !important; background: #fff !important; padding: 12px 16px 16px !important; border: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-adn-toggle,
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-info-ia-btn{flex: 0 0 auto !important;}
/* NSF 9.5.125 — el acceso a la evidencia debe declarar su función en escritorio. */
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-info-ia-btn{min-width: 180px !important; padding: 0 15px !important; letter-spacing: .02em !important; text-align: center !important; white-space: nowrap !important;}
@media (max-width:560px){
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-info-ia-btn{min-width: 0 !important; padding: 0 11px !important;}
}/* NSF 9.5.127 — La vista "Ver más obras relacionadas" debe compartir el
   lenguaje visual de las tarjetas de relacionados de la ficha principal.
   Solo afecta a .nsf-relacion-card-completa. */
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa{display: flex !important; flex-direction: column !important; min-width: 0 !important; overflow: hidden !important; border: 1px solid #e2e5ea !important; border-radius: 12px !important; background: #fff !important; box-shadow: 0 3px 12px rgba(23,32,51,.05) !important; transition: transform .18s ease,box-shadow .18s ease,border-color .18s ease !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa:hover{transform: translateY(-3px) !important; border-color: #d34a4f !important; box-shadow: 0 12px 28px rgba(23,32,51,.10) !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-enlace{display: block !important; flex: 0 0 auto !important; height: auto !important; color: inherit !important; text-decoration: none !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-media{display: flex !important; align-items: center !important; justify-content: center !important; height: 188px !important; aspect-ratio: auto !important; overflow: hidden !important; background: linear-gradient(180deg,#f6f7f8,#eef0f3) !important; border-bottom: 1px solid #e8ebef !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-media img{display: block !important; width: 100% !important; height: 100% !important; object-fit: contain !important; object-position: center !important; transition: transform .18s ease !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa:hover .nsf-relacion-card-completa-media img{transform: scale(1.018) !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-cuerpo{display: flex !important; flex-direction: column !important; min-height: 132px !important; padding: 14px 16px 15px !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-tipo{display: inline-block !important; align-self: flex-start !important; margin: 0 0 7px !important; padding: 4px 8px !important; border-radius: 999px !important; background: #fff1f1 !important; color: #a92329 !important; font-size: .62rem !important; font-weight: 850 !important; letter-spacing: .09em !important; line-height: 1 !important; text-transform: uppercase !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-titulo{display: block !important; color: #172033 !important; font-size: 1.04rem !important; line-height: 1.22 !important; font-weight: 780 !important; letter-spacing: -.01em !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-titulo .nsf-titulo-es{display: block !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-titulo .nsf-titulo-original{display: block !important; margin-top: 3px !important; color: #737c8a !important; font-size: .78rem !important; font-weight: 400 !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-meta{display: block !important; margin-top: 14px !important; color: #6e7684 !important; font-size: .76rem !important; line-height: 1.35 !important;}
/* La explicación de la relación se integra en la tarjeta: sin fondo crema. */
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-relacion{display: flex !important; align-items: flex-start !important; gap: 10px !important; flex: 0 0 auto !important; margin: 0 !important; padding: 13px 16px 10px !important; border-top: 1px solid #e8ebef !important; background: #fff !important; color: #26324a !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-rel-icono{flex: 0 0 24px !important; width: 24px !important; height: 24px !important; display: grid !important; place-items: center !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: #c9252b !important; font-size: 15px !important; line-height: 1 !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-rel{display: block !important; margin: 0 0 5px !important; color: #172033 !important; font-size: .64rem !important; font-weight: 850 !important; letter-spacing: .08em !important; line-height: 1.1 !important; text-transform: uppercase !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-relacion p{margin: 0 !important; color: #4e5663 !important; font-family: Georgia,'Times New Roman',serif !important; font-style: italic !important; font-size: .79rem !important; line-height: 1.42 !important;}
/* Acciones: centradas, como en la ficha principal. */
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa > .nsf-adn-publico{display: flex !important; justify-content: center !important; align-items: center !important; flex: 0 0 auto !important; width: 100% !important; margin: 0 !important; padding: 11px 16px 16px !important; background: #fff !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa > .nsf-adn-publico .nsf-adn-toggle{width: auto !important; min-height: 38px !important; padding: 0 14px !important; border-radius: 999px !important; font-size: .70rem !important; letter-spacing: .02em !important;}

@media(max-width:560px){
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-media{height: 210px !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-cuerpo{min-height: auto !important;}
}/* NSF 9.5.130 — La vista ?nsf_relaciones=1 usa las mismas tarjetas que la ficha principal. */
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas{display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 18px !important; margin: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-rel-card{display: flex !important; flex-direction: column !important; min-width: 0 !important; overflow: hidden !important; border: 1px solid #e2e5ea !important; border-radius: 12px !important; background: #fff !important; box-shadow: 0 3px 12px rgba(23,32,51,.05) !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-rel-card-link{display: block !important; flex: 0 0 auto !important; height: auto !important; min-height: 0 !important; color: inherit !important; text-decoration: none !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-rel-card-imagen{height: 188px !important; aspect-ratio: auto !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; background: #f5f6f8 !important; border-bottom: 1px solid #e8ebef !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-rel-card-imagen img{width: 100% !important; height: 100% !important; object-fit: contain !important; object-position: center !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-rel-card-cuerpo{min-height: 132px !important; padding: 14px 16px 15px !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-rel-card-relacion-wrap{flex: 0 0 auto !important; margin: 0 !important; border-top: 1px solid #e8ebef !important; background: #fff !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-rel-card-relacion{margin: 0 !important; padding: 13px 16px 10px !important; background: #fff !important; border: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-rel-card-acciones{display: flex !important; align-items: center !important; justify-content: center !important; flex-wrap: wrap !important; gap: 8px !important; padding: 11px 16px 16px !important; background: #fff !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-adn-publico{width: auto !important; margin: 0 !important; padding: 0 !important; background: transparent !important; border: 0 !important;}
@media(max-width:1050px){html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}}
@media(max-width:800px){html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media(max-width:560px){html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas{grid-template-columns:1fr !important;}html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-relaciones-grid-completas .nsf-rel-card-imagen{height: 210px !important;}}/* NSF 9.5.131 — Relación de tarjetas: limitar textos largos y ofrecer «Leer más» */
html body .nsf-obra-page .nsf-rel-card{display: flex !important; flex-direction: column !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-wrap{flex: 1 1 auto !important; display: flex !important; flex-direction: column !important; min-height: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-relacion{flex: 1 1 auto !important; align-content: flex-start !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-texto{min-width: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-nota-larga{display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 4 !important; overflow: hidden !important;}
html body .nsf-obra-page .nsf-rel-card-nota-larga.is-expanded{display: block !important; overflow: visible !important;}
html body .nsf-obra-page .nsf-rel-card-leer-mas{align-self: flex-start !important; margin-top: 7px !important; padding: 0 !important; border: 0 !important; background: transparent !important; color: #a92329 !important; font: inherit !important; font-size: .70rem !important; font-weight: 800 !important; line-height: 1.2 !important; text-decoration: underline !important; text-underline-offset: 2px !important; cursor: pointer !important;}
html body .nsf-obra-page .nsf-rel-card-leer-mas:hover,
html body .nsf-obra-page .nsf-rel-card-leer-mas:focus-visible{color: #7f1c20 !important;}
html body .nsf-obra-page .nsf-rel-card-acciones{margin-top: auto !important;}
@media (max-width:700px){
html body .nsf-obra-page .nsf-rel-card-nota-larga{-webkit-line-clamp: 5 !important;}
}/* NSF 9.5.132 — Componente único de relación para ficha principal y vista completa.
   La vista completa reutiliza ahora .nsf-rel-card exactamente igual que la ficha principal. */
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-lista-obras{display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 18px !important; align-items: stretch !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card{display: flex !important; flex-direction: column !important; min-width: 0 !important; min-height: 540px !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; border: 1px solid #e0e3e8 !important; border-radius: 9px !important; background: #fff !important; color: #172033 !important; box-shadow: 0 4px 14px rgba(23,32,51,.06) !important; transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card:hover{transform: translateY(-2px) !important; border-color: #c9252d !important; box-shadow: 0 9px 22px rgba(20,28,45,.09) !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-link{display: block !important; flex: 0 0 auto !important; height: auto !important; min-height: 0 !important; color: inherit !important; text-decoration: none !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-imagen{display: block !important; aspect-ratio: 16/10 !important; overflow: hidden !important; background: #eef0f3 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-imagen img{display: block !important; width: 100% !important; height: 100% !important; object-fit: contain !important; background: #eef0f3 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-imagen-vacia{display: grid !important; width: 100% !important; height: 100% !important; place-items: center !important; color: #c9252d !important; font-size: 30px !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-cuerpo{display: block !important; flex: 0 0 auto !important; padding: 14px 15px 15px !important; background: #fff !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-tipo{display: block !important; margin-bottom: 5px !important; color: #7b8290 !important; font-size: .68rem !important; font-weight: 850 !important; letter-spacing: .1em !important; text-transform: uppercase !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-titulo{display: block !important; color: #172033 !important; font-size: 1rem !important; line-height: 1.25 !important; font-weight: 750 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-meta{display: block !important; margin-top: 9px !important; color: #626a77 !important; font-size: .78rem !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-relacion-wrap{display: block !important; flex: 0 0 auto !important; min-height: 118px !important; margin-top: 0 !important; padding: 0 !important; background: #fff !important; border: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-relacion{display: flex !important; align-items: flex-start !important; gap: 9px !important; min-height: 118px !important; margin: 0 !important; padding: 14px 15px 12px !important; background: #fff !important; border-top: 1px solid #e8ebef !important; color: #26324a !important; box-sizing: border-box !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-relacion-icono{flex: 0 0 auto !important; color: #c9252d !important; font-size: 19px !important; line-height: 1.1 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-relacion-texto{display: flex !important; flex-direction: column !important; gap: 5px !important; min-width: 0 !important; width: 100% !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-relacion-texto strong{display: block !important; color: #172033 !important; font-size: 10px !important; font-weight: 850 !important; letter-spacing: .06em !important; text-transform: uppercase !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-nota{display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 4 !important; overflow: hidden !important; color: #3e4755 !important; font-size: 13px !important; line-height: 1.45 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-nota.is-expanded{display: block !important; overflow: visible !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-leer-mas{align-self: flex-start !important; margin-top: 3px !important; padding: 0 !important; border: 0 !important; background: transparent !important; color: #c9252d !important; font-size: 12px !important; font-weight: 750 !important; cursor: pointer !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-leer-mas:hover,
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-leer-mas:focus-visible{text-decoration: underline !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-acciones{display: flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; flex-wrap: wrap !important; flex: 1 1 auto !important; min-height: 86px !important; margin-top: auto !important; padding: 10px 15px 16px !important; background: #fff !important; border: 0 !important; box-sizing: border-box !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-acciones .nsf-adn-publico,
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-acciones .nsf-info-ia-btn{margin: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-acciones .nsf-adn-toggle{width: auto !important; min-width: 190px !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-acciones .nsf-info-ia-btn{min-height: 38px !important; padding: 9px 15px !important; border-radius: 999px !important;}
@media (max-width:1100px){
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:820px){
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:560px){
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: 1fr !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card{min-height: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card-acciones .nsf-adn-toggle{width: 100% !important; min-width: 0 !important;}
}/* NSF 9.5.133 — diseño definitivo y unificado de las tarjetas de relaciones.
   Este bloque va al final para neutralizar estilos históricos que seguían
   imponiendo el panel crema y alturas inconsistentes. */
html body .nsf-obra-page .nsf-rel-card{display: flex !important; flex-direction: column !important; min-width: 0 !important; min-height: 560px !important; height: 100% !important; overflow: hidden !important; border: 1px solid #dfe3e8 !important; border-radius: 10px !important; background: #fff !important; color: #172033 !important; box-shadow: 0 4px 14px rgba(23,32,51,.055) !important;}
html body .nsf-obra-page .nsf-rel-card:hover{border-color: #c9252d !important; box-shadow: 0 9px 24px rgba(23,32,51,.09) !important; transform: translateY(-2px) !important;}
html body .nsf-obra-page .nsf-rel-card-link{display: flex !important; flex-direction: column !important; flex: 0 0 auto !important; height: auto !important; min-height: 0 !important; color: inherit !important; text-decoration: none !important;}
html body .nsf-obra-page .nsf-rel-card-imagen{display: flex !important; align-items: center !important; justify-content: center !important; height: 188px !important; overflow: hidden !important; background: #f4f5f7 !important; border-bottom: 1px solid #e8ebef !important;}
html body .nsf-obra-page .nsf-rel-card-imagen img{display: block !important; width: 100% !important; height: 100% !important; object-fit: contain !important; object-position: center !important; background: #f4f5f7 !important;}
html body .nsf-obra-page .nsf-rel-card-cuerpo{display: flex !important; flex-direction: column !important; flex: 0 0 132px !important; min-height: 132px !important; padding: 14px 16px 15px !important; background: #fff !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-wrap{flex: 0 0 150px !important; min-height: 150px !important; display: flex !important; margin: 0 !important; padding: 0 !important; background: #fff !important; border-top: 1px solid #e8ebef !important; border-bottom: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-relacion{width: 100% !important; display: flex !important; align-items: flex-start !important; gap: 10px !important; margin: 0 !important; padding: 13px 16px 12px !important; background: #fff !important; background-image: none !important; border: 0 !important; box-shadow: none !important; color: #26324a !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-icono{flex: 0 0 auto !important; width: auto !important; height: auto !important; display: block !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: #c9252d !important; font-size: 18px !important; line-height: 1.1 !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-texto{display: flex !important; flex-direction: column !important; gap: 5px !important; min-width: 0 !important; width: 100% !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-texto strong{display: block !important; color: #172033 !important; font-size: 10px !important; font-weight: 850 !important; letter-spacing: .06em !important; line-height: 1.15 !important; text-transform: uppercase !important;}
html body .nsf-obra-page .nsf-rel-card-nota,
html body .nsf-obra-page .nsf-rel-card-relacion-texto span{display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 4 !important; overflow: hidden !important; color: #3e4755 !important; font-size: 13px !important; line-height: 1.45 !important; max-height: 75.4px !important;}
html body .nsf-obra-page .nsf-rel-card-nota.is-expanded{display: block !important; max-height: none !important; overflow: visible !important;}
html body .nsf-obra-page .nsf-rel-card-leer-mas{display: inline-flex !important; align-self: flex-start !important; width: auto !important; height: auto !important; margin: 2px 0 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; color: #c9252d !important; font: inherit !important; font-size: 11px !important; font-weight: 800 !important; line-height: 1.2 !important; text-decoration: underline !important; text-underline-offset: 2px !important; cursor: pointer !important; opacity: 1 !important; visibility: visible !important;}
html body .nsf-obra-page .nsf-rel-card-leer-mas:hover,
html body .nsf-obra-page .nsf-rel-card-leer-mas:focus-visible{color: #861f23 !important;}
html body .nsf-obra-page .nsf-rel-card-acciones{flex: 1 1 auto !important; min-height: 80px !important; margin-top: 0 !important; padding: 12px 16px 16px !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; flex-wrap: wrap !important; background: #fff !important; border: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-adn-publico,
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-info-ia-btn{flex: 0 0 auto !important; margin: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-adn-toggle{width: auto !important; min-width: 190px !important;}
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-info-ia-btn{min-width: 180px !important; min-height: 38px !important; padding: 0 15px !important; border-radius: 999px !important; text-align: center !important;}
/* Vista completa: exactamente el mismo componente, sin segunda estética. */
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-lista-obras{display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 18px !important; align-items: stretch !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-rel-card{min-height: 560px !important;}
@media(max-width:1100px){
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: repeat(3,minmax(0,1fr)) !important;}
}
@media(max-width:820px){
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:560px){
html body .nsf-obra-page .nsf-rel-card{min-height: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-imagen{height: 210px !important;}
html body .nsf-obra-page .nsf-rel-card-cuerpo{flex-basis: auto !important; min-height: 132px !important;}
html body .nsf-obra-page .nsf-rel-card-relacion-wrap{flex-basis: 150px !important; min-height: 150px !important;}
html body .nsf-obra-page .nsf-ficha-publica.nsf-relaciones-completas .nsf-lista-obras{grid-template-columns: 1fr !important;}
html body .nsf-obra-page .nsf-rel-card-acciones .nsf-adn-toggle,
  html body .nsf-obra-page .nsf-rel-card-acciones .nsf-info-ia-btn{width: 100% !important; min-width: 0 !important;}
}/* NSF 9.5.140 — relación de la tarjeta: acciones en datos de la obra,
   relación debajo y fondo limpio. Este bloque es deliberadamente el último
   para neutralizar las reglas históricas anteriores. */
html body .nsf-obra-page .nsf-rel-card-datos{display: flex !important; flex-direction: column !important; width: 100% !important; margin: 0 !important; padding: 0 !important; background: #fff !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones{order: 0 !important; flex: 0 0 auto !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; flex-wrap: wrap !important; min-height: 0 !important; margin: 0 !important; padding: 12px 16px 10px !important; background: #fff !important; border: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-toggle,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-info-ia-btn{width: auto !important; min-width: 0 !important; min-height: 36px !important; margin: 0 !important; border-radius: 999px !important; box-shadow: none !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-toggle{padding: 0 14px !important; background: #fff !important; border: 1px solid #d8dde4 !important; color: #4f5968 !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-toggle:hover,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-toggle:focus-visible{background: #f8f9fb !important; border-color: #c9252d !important; color: #8f2025 !important; transform: translateY(-1px) !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-info-ia-btn{padding: 0 14px !important; background: #fff !important; border: 1px solid #d8dde4 !important; color: #4f5968 !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-info-ia-btn:hover,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-info-ia-btn:focus-visible{background: #f8f9fb !important; border-color: #c9252d !important; color: #8f2025 !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-relacion-wrap{order: 1 !important; flex: 0 0 auto !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; background: #fff !important; border: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-relacion{display: flex !important; align-items: flex-start !important; gap: 10px !important; width: 100% !important; margin: 0 !important; padding: 11px 16px 16px !important; background: #fff !important; background-image: none !important; border-top: 1px solid #e8ebef !important; border-bottom: 0 !important; box-shadow: none !important; color: #26324a !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-relacion-icono{flex: 0 0 auto !important; width: auto !important; height: auto !important; display: block !important; margin-top: 1px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; color: #c9252d !important; font-size: 16px !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-relacion-texto{display: flex !important; flex-direction: column !important; gap: 4px !important; min-width: 0 !important; width: 100% !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-relacion-texto strong{color: #172033 !important; font-size: 10px !important; font-weight: 850 !important; letter-spacing: .06em !important; line-height: 1.15 !important; text-transform: uppercase !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-nota,
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-relacion-texto span{color: #3e4755 !important; font-size: 13px !important; line-height: 1.45 !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-nota-larga:not(.is-expanded){display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 4 !important; overflow: hidden !important; max-height: 75.4px !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-leer-mas{display: inline-flex !important; align-self: flex-start !important; margin: 2px 0 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; color: #c9252d !important; font-size: 11px !important; font-weight: 800 !important; line-height: 1.2 !important; text-decoration: underline !important; text-underline-offset: 2px !important; cursor: pointer !important;}
@media(max-width:560px){
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-toggle,
  html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-info-ia-btn{width: 100% !important;}
}/* NSF 9.5.141 — acciones separadas: ADN arriba, verificación debajo de la relación. */
html body .nsf-obra-page .nsf-rel-card-datos-acciones{order: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; min-height: 0 !important; margin: 0 !important; padding: 12px 16px 10px !important; background: #fff !important; border: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn{display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; min-width: 180px !important; min-height: 38px !important; margin: 0 !important; padding: 0 15px !important; border: 1px solid #d8dde4 !important; border-radius: 999px !important; background: #fff !important; color: #4f5968 !important; box-shadow: none !important; font-size: .75rem !important; font-weight: 800 !important; line-height: 1 !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn .nsf-adn-toggle-icon,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn .nsf-adn-toggle-flecha,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn .nsf-adn-toggle-texto{color: #4f5968 !important; -webkit-text-fill-color: #4f5968 !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn .nsf-adn-icon-svg path{stroke: #4f5968 !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:hover,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:focus-visible{background: #f8f9fb !important; border-color: #c9252d !important; color: #8f2025 !important; transform: translateY(-1px) !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:hover .nsf-adn-toggle-icon,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:hover .nsf-adn-toggle-flecha,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:hover .nsf-adn-toggle-texto,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:focus-visible .nsf-adn-toggle-icon,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:focus-visible .nsf-adn-toggle-flecha,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:focus-visible .nsf-adn-toggle-texto{color: #8f2025 !important; -webkit-text-fill-color: #8f2025 !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:hover .nsf-adn-icon-svg path,
html body .nsf-obra-page .nsf-rel-card-datos-acciones .nsf-adn-datos-btn:focus-visible .nsf-adn-icon-svg path{stroke: #8f2025 !important;}
html body .nsf-obra-page .nsf-rel-card-verificacion{order: 2 !important; display: flex !important; align-items: center !important; justify-content: center !important; min-height: 0 !important; margin: 0 !important; padding: 0 16px 14px !important; background: #fff !important; border: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-verificacion .nsf-info-ia-btn{margin: 0 !important; min-height: 38px !important; min-width: 180px !important; padding: 0 15px !important; border-radius: 999px !important; text-align: center !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-relacion-wrap{order: 1 !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; background: #fff !important; border: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-datos .nsf-rel-card-relacion{background: #fff !important; background-image: none !important; border-top: 1px solid #e8ebef !important;}
/* NSF 9.5.142 — ADN relacionado con el mismo estilo visual que «Verificación de datos».
 * El botón debe ser blanco, fino y redondeado, nunca el CTA rojo del ADN de la ficha principal.
 */
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:visited {display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important; min-width: 180px !important; min-height: 38px !important; margin: 0 !important; padding: 3px 11px !important; border: 1px solid #e2d8c8 !important; border-radius: 999px !important; background: transparent !important; color: #4a423c !important; -webkit-text-fill-color: #4a423c !important; box-shadow: none !important; font-size: .72rem !important; font-weight: 600 !important; letter-spacing: .02em !important; line-height: 1 !important; text-decoration: none !important; cursor: pointer !important; transition: background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease,box-shadow .14s ease !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn .nsf-adn-toggle-icon,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn .nsf-adn-toggle-texto,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn .nsf-adn-toggle-flecha {color: #4a423c !important; -webkit-text-fill-color: #4a423c !important;}

html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:hover,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:focus-visible {background: #f5ede4 !important; border-color: #c9252d !important; color: #c9252d !important; -webkit-text-fill-color: #c9252d !important; transform: translateY(-1px) !important; box-shadow: 0 3px 8px rgba(31,42,68,.08) !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:hover .nsf-adn-toggle-icon,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:hover .nsf-adn-toggle-texto,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:hover .nsf-adn-toggle-flecha,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:focus-visible .nsf-adn-toggle-icon,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:focus-visible .nsf-adn-toggle-texto,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:focus-visible .nsf-adn-toggle-flecha {color: #c9252d !important; -webkit-text-fill-color: #c9252d !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:hover .nsf-adn-icon-svg path,
html body .nsf-obra-page .nsf-ficha-publica .nsf-rel-card-datos-acciones button.nsf-adn-datos-btn:focus-visible .nsf-adn-icon-svg path {stroke: #c9252d !important;}
/* NSF 9.5.150 — el bloque de datos no debe recortar la línea tipo/año. */
html body .nsf-obra-page .nsf-rel-card-cuerpo{flex: 0 0 112px !important; min-height: 112px !important; height: 112px !important; padding: 12px 16px 10px !important; overflow: visible !important;}
html body .nsf-obra-page .nsf-rel-card-meta{margin-top: 11px !important; line-height: 1.35 !important; min-height: 18px !important; overflow: visible !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones{padding: 6px 16px 8px !important;}
@media (max-width:560px){
html body .nsf-obra-page .nsf-rel-card-cuerpo{flex-basis: 112px !important; min-height: 112px !important; height: 112px !important;}
}/* NSF 9.5.145 — cuando una tarjeta no tiene ADN, la verificación debe quedar
   pegada a la relación, sin reservar espacio vertical innecesario. */
html body .nsf-obra-page .nsf-rel-card-datos-acciones:empty{display: none !important; min-height: 0 !important; height: 0 !important; padding: 0 !important; margin: 0 !important;}
html body .nsf-obra-page .nsf-rel-card-datos:has(.nsf-rel-card-datos-acciones:empty) .nsf-rel-card-verificacion{margin-top: 0 !important; padding: 2px 16px 14px !important; min-height: 0 !important; display: flex !important; align-items: center !important; justify-content: center !important;}
html body .nsf-obra-page .nsf-rel-card-datos:has(.nsf-rel-card-datos-acciones:empty) .nsf-rel-card-relacion{padding-bottom: 10px !important;}
/* NSF 9.5.151 — equilibrio de espacio entre metadatos y ADN. */
html body .nsf-obra-page .nsf-rel-card-cuerpo{flex: 0 0 102px !important; min-height: 102px !important; height: 102px !important; padding: 10px 16px 7px !important;}
html body .nsf-obra-page .nsf-rel-card-meta{margin-top: 9px !important; min-height: 18px !important;}
html body .nsf-obra-page .nsf-rel-card-datos-acciones{padding: 7px 16px 8px !important;}
@media(max-width:560px){
html body .nsf-obra-page .nsf-rel-card-cuerpo{flex-basis: 102px !important; min-height: 102px !important; height: 102px !important;}
}/* NSF 9.5.152 — efecto inmersivo en portadas de relacionados. */
html body .nsf-obra-page .nsf-rel-card-imagen{position: relative !important; isolation: isolate !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; background: #eef0f3 !important;}
html body .nsf-obra-page .nsf-rel-card-imagen-fondo{position: absolute !important; inset: -14px !important; z-index: 0 !important; overflow: hidden !important; filter: blur(14px) saturate(.9) brightness(.82) !important; transform: scale(1.12) !important;}
html body .nsf-obra-page .nsf-rel-card-imagen-fondo img{display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center !important;}
html body .nsf-obra-page .nsf-rel-card-imagen-principal{position: relative !important; z-index: 1 !important; display: block !important; width: auto !important; max-width: 100% !important; height: 100% !important; object-fit: contain !important; object-position: center !important; filter: none !important; box-shadow: 0 6px 18px rgba(23,32,51,.14) !important;}
html body .nsf-obra-page .nsf-rel-card:hover .nsf-rel-card-imagen-principal{transform: scale(1.012) !important;}
@media (max-width:900px){
html body .nsf-obra-page .nsf-rel-card-imagen-fondo{inset: -12px !important; filter: blur(12px) saturate(.9) brightness(.84) !important;}
}
@media (prefers-reduced-motion:reduce){
html body .nsf-obra-page .nsf-rel-card:hover .nsf-rel-card-imagen-principal{transform: none !important;}
}/* NSF 9.5.153 — fondo inmersivo robusto: se aplica al propio contenedor. */
html body .nsf-obra-page .nsf-rel-card-imagen{position: relative !important; isolation: isolate !important; overflow: hidden !important; background: #eef0f3 !important;}
html body .nsf-obra-page .nsf-rel-card-imagen::before{content: "" !important; position: absolute !important; inset: -18px !important; z-index: 0 !important; background-image: var(--nsf-rel-bg-image) !important; background-position: center !important; background-size: cover !important; background-repeat: no-repeat !important; filter: blur(16px) saturate(.92) brightness(.78) !important; transform: scale(1.08) !important;}
html body .nsf-obra-page .nsf-rel-card-imagen-principal{position: relative !important; z-index: 1 !important; width: auto !important; height: 100% !important; max-width: 100% !important; object-fit: contain !important; object-position: center !important; filter: none !important; box-shadow: 0 6px 18px rgba(23,32,51,.16) !important;}
/* NSF 9.5.152 — mismo efecto en la vista completa de relaciones. */
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-media{position: relative !important; isolation: isolate !important; overflow: hidden !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-media img{position: relative !important; z-index: 1 !important; width: auto !important; max-width: 100% !important; height: 100% !important; object-fit: contain !important; box-shadow: 0 6px 18px rgba(23,32,51,.14) !important;}
html body .nsf-obra-page .nsf-relaciones-completas .nsf-relacion-card-completa-media::before{content: "" !important; position: absolute !important; inset: -14px !important; z-index: 0 !important; background: var(--nsf-rel-bg,#eef0f3) center/cover no-repeat !important; filter: blur(14px) saturate(.9) brightness(.82) !important; transform: scale(1.12) !important;}
/* NSF 9.5.154 — fondo inmersivo real en tarjetas JS y PHP. */
html body .nsf-obra-page .nsf-rel-card-imagen{position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; isolation: isolate !important; overflow: hidden !important; background: #eef0f3 !important;}
html body .nsf-obra-page .nsf-rel-card-imagen .nsf-rel-card-imagen-fondo{position: absolute !important; inset: -18px !important; z-index: 0 !important; display: block !important; overflow: hidden !important; filter: blur(18px) saturate(.95) brightness(.74) !important; transform: scale(1.08) !important;}
html body .nsf-obra-page .nsf-rel-card-imagen .nsf-rel-card-imagen-fondo img{display: block !important; width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center !important;}
html body .nsf-obra-page .nsf-rel-card-imagen .nsf-rel-card-imagen-principal{position: relative !important; z-index: 1 !important; display: block !important; width: auto !important; height: 100% !important; max-width: 100% !important; object-fit: contain !important; object-position: center !important; filter: none !important; box-shadow: 0 8px 18px rgba(23,32,51,.16) !important;}

/* NSF 9.5.176 — ficha móvil: composición limpia y continua.
 * Solo presentación. No modifica PHP, datos ni relaciones.
 */
@media (max-width:680px){
body.single-nsf_producto .nsf-obra-page,
  .nsf-obra-page[data-nsf-ficha="1"]{width: 100%!important; max-width: none!important; margin: 0!important; padding: 0 14px 42px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica{width: 100%!important; margin: 0!important; border-radius: 10px!important; overflow: hidden!important; background: #fff!important; box-shadow: 0 8px 26px rgba(23,32,51,.07)!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado{display: flex!important; flex-direction: column!important; gap: 0!important; padding: 0!important; background: #fff!important;}
/* La portada ocupa toda la anchura de la ficha, sin quedar como una
   * miniatura flotante centrada. Se conserva la proporción original. */
  body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img{order: 0!important; width: 100%!important; max-width: none!important; margin: 0!important; border: 0!important; border-radius: 0!important; box-shadow: none!important; background: #f1f1f1!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img img,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img img{display: block!important; width: 100%!important; height: auto!important; max-height: none!important; aspect-ratio: auto!important; object-fit: contain!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto{order: 1!important; width: 100%!important; padding: 24px 20px 28px!important; align-items: flex-start!important; text-align: left!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-etiqueta,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-etiqueta{margin: 0 0 14px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado h1{width: 100%!important; margin: 0!important; text-align: left!important; font-size: clamp(2rem,9vw,2.8rem)!important; line-height: 1.02!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-autor,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-autor{text-align: left!important; margin-top: 9px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-datos,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-datos{width: 100%!important; margin-top: 22px!important;}
}

/* NSF 9.5.177 — equilibrio de metadatos en móvil.
 * En dos columnas, género y publicación ocupan la misma fila que el resto.
 * El título original idéntico al español ya se filtra en front.js.
 */
@media (max-width:680px){
html body .nsf-obra-page .nsf-ficha-publica .nsf-datos .nsf-dato-generos,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-datos .nsf-dato-generos{grid-column: auto !important;}
}/* NSF 9.5.180 — aviso de imagen completa en móvil.
 * Algunas tarjetas usan recorte visual (object-fit:cover). En móvil ofrecemos
 * una acción explícita para abrir la imagen completa sin alterar el diseño de la tarjeta.
 */
.nsf-rel-card-imagen{position: relative;}
.nsf-imagen-pantalla-completa{display: none; position: absolute; left: 10px; right: 10px; bottom: 10px; z-index: 4; min-height: 40px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.72); border-radius: 999px; background: rgba(25,35,57,.88); color: #fff; font: 600 13px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; text-align: center; box-shadow: 0 3px 12px rgba(0,0,0,.24); cursor: pointer;}
/* NSF 9.5.183 — texto del aviso de pantalla completa siempre legible en móvil. */
@media (max-width:680px){
.nsf-imagen-pantalla-completa,
  .nsf-obra-page .nsf-zoom::after{color: #fff !important; opacity: 1 !important; -webkit-text-fill-color: #fff !important; text-shadow: 0 1px 3px rgba(0,0,0,.45);}
}

/* NSF 9.5.185 — aviso de pantalla completa como elemento real.
 * Evita depender de ::after, que en algunos móviles/temas puede perder
 * el color o quedar oculto por reglas del botón .nsf-zoom.
 */
@media (max-width:680px){
.nsf-imagen-pantalla-completa-interno{display: flex !important; align-items: center; justify-content: center; position: absolute !important; left: 10px !important; right: 10px !important; bottom: 10px !important; z-index: 20 !important; min-height: 40px !important; box-sizing: border-box !important; padding: 9px 12px !important; border: 1px solid rgba(255,255,255,.82) !important; border-radius: 999px !important; background: rgba(25,35,57,.92) !important; color: #fff !important; -webkit-text-fill-color: #fff !important; opacity: 1 !important; font: 600 13px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important; text-align: center !important; text-shadow: 0 1px 3px rgba(0,0,0,.55) !important; pointer-events: none !important;}
.nsf-obra-img,
  .nsf-destacado-img{position: relative !important;}
}/* NSF 9.5.186 — X del cierre perfectamente centrada dentro del botón. */
.nsf-imagen-fullscreen-cerrar{display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 !important; line-height: 1 !important; text-align: center !important; box-sizing: border-box !important;}
.nsf-imagen-fullscreen-cerrar::first-letter{line-height: 1 !important;}

/* NSF 9.5.189 — BLUR DE PORTADA DESTACADA SOLO EN MÓVIL
 * La ficha pública carga obra-redesign.css después de front.css.
 * Por ello estas reglas deben vivir aquí y no en ficha.css.
 * En escritorio se muestra UNA sola imagen: la capa de fondo se oculta.
 * En móvil, si la portada no llena el contenedor, la misma portada se usa
 * como fondo desenfocado y la portada original queda centrada y nítida.
 */
@media (min-width:861px){
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img-fondo{display: none !important; visibility: hidden !important; opacity: 0 !important; width: 0 !important; height: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img-principal{position: relative !important; z-index: 1 !important; display: block !important; width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: none !important; min-height: 0 !important; object-fit: cover !important; filter: none !important;}
}

@media (max-width:860px){
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img{position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; isolation: isolate !important; background: #eef0f3 !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img-fondo{position: absolute !important; inset: -14px !important; z-index: 0 !important; display: block !important; width: auto !important; height: auto !important; overflow: hidden !important; pointer-events: none !important; filter: blur(14px) saturate(.92) brightness(.78) !important; transform: scale(1.08) !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img-fondo img{display: block !important; width: 100% !important; height: 100% !important; min-height: 0 !important; max-height: none !important; object-fit: cover !important; object-position: center !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img-principal{position: relative !important; z-index: 1 !important; display: block !important; width: auto !important; height: 100% !important; min-height: 0 !important; max-width: 100% !important; max-height: 100% !important; object-fit: contain !important; object-position: center !important; filter: none !important;}
}/* NSF 9.5.190 — Centrar el grupo de botones de acciones principales. */
.nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales{justify-content: center !important; align-items: center !important;}

/* NSF 9.5.277 — restauración de la composición de escritorio de la obra.
 * La portada vuelve a ocupar su columna derecha, junto al nombre y los datos.
 * Wishlist + ADN permanecen juntos en la primera fila de acciones.
 * La versión móvil conserva la composición vertical.
 */
@media (min-width:901px){
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado{display: grid !important; grid-template-columns: minmax(0,1fr) minmax(400px,470px) !important; gap: 48px !important; align-items: start !important; width: 100% !important; min-height: 0 !important; padding: 18px 0 48px !important; overflow: visible !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-texto,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-texto{grid-column: 1 !important; grid-row: 1 !important; width: 100% !important; min-width: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img{grid-column: 2 !important; grid-row: 1 !important; display: block !important; position: relative !important; width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; aspect-ratio: auto !important; border-radius: 10px !important; background: #f1f1f1 !important; box-shadow: 0 12px 30px rgba(20,28,45,.14) !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img-fondo,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img-fondo{display: none !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-img-principal,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-img-principal{display: block !important; position: relative !important; width: 100% !important; height: auto !important; min-width: 0 !important; min-height: 0 !important; max-width: 100% !important; max-height: none !important; aspect-ratio: auto !important; object-fit: contain !important; object-position: center !important; transform: none !important; filter: none !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales{display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 10px !important; width: 100% !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal{display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; width: 100% !important; gap: 10px !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-adn-publico,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-adn-publico{width: 100% !important; min-width: 0 !important; margin: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-adn-publico .nsf-adn-toggle,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-adn-publico .nsf-adn-toggle{width: 100% !important; height: 50px !important; min-height: 50px !important; margin: 0 !important; box-sizing: border-box !important;}
}

@media (max-width:900px){
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal{grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;}
}

/* ================================================================
 * NSF 9.5.279 — composición definitiva de la portada en escritorio.
 * Objetivo: texto a la izquierda y portada dentro del espacio blanco
 * de la derecha. No modifica datos, JS, ADN, relaciones ni WooCommerce.
 * ================================================================ */
@media (min-width: 901px){
html body .nsf-obra-page{width: min(1280px, calc(100% - 48px)) !important; max-width: 1280px !important; margin-left: auto !important; margin-right: auto !important;}
html body .nsf-obra-page .nsf-ficha-publica{width: 100% !important; max-width: none !important; margin: 0 auto !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; overflow: visible !important; background: #fff !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado{display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(360px, 460px) !important; grid-template-areas: "texto portada" !important; align-items: start !important; column-gap: 56px !important; row-gap: 0 !important; width: 100% !important; min-height: 0 !important; margin: 0 !important; padding: 34px 0 42px !important; background: #fff !important; color: #172033 !important; border-bottom: 1px solid #e5e7ea !important; border-radius: 0 !important; overflow: visible !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-texto{grid-area: texto !important; width: 100% !important; min-width: 0 !important; max-width: none !important; padding: 0 !important; margin: 0 !important; background: #fff !important; color: #172033 !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{grid-area: portada !important; display: block !important; visibility: visible !important; opacity: 1 !important; position: relative !important; width: 100% !important; max-width: 460px !important; height: auto !important; min-height: 0 !important; max-height: none !important; margin: 0 !important; padding: 0 !important; align-self: start !important; justify-self: end !important; overflow: hidden !important; clip-path: none !important; border: 0 !important; border-radius: 8px !important; background: #f1f2f3 !important; box-shadow: 0 12px 30px rgba(20,28,45,.12) !important; line-height: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-fondo{display: none !important; visibility: hidden !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-principal{display: block !important; visibility: visible !important; opacity: 1 !important; position: relative !important; z-index: 1 !important; width: 100% !important; height: auto !important; min-width: 0 !important; min-height: 0 !important; max-width: 100% !important; max-height: none !important; aspect-ratio: 2 / 3 !important; object-fit: cover !important; object-position: center !important; transform: none !important; filter: none !important;}
/* El bloque de texto no puede invadir la columna de la portada. */
  html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1,
  html body .nsf-obra-page .nsf-ficha-publica .nsf-destacado-desc{max-width: 100% !important;}
}

@media (max-width:900px){
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado{display: flex !important; flex-direction: column !important; gap: 24px !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{order: 2 !important; width: 100% !important; max-width: 420px !important; align-self: center !important; margin: 0 auto !important;}
}

/* NSF 9.5.280 — composición definitiva de portada en escritorio.
 * La ficha puede renderizarse en un viewport CSS inferior a 900px aunque
 * visualmente el usuario esté en escritorio (zoom/DPI/columnas del tema).
 * La portada debe permanecer a la derecha hasta el breakpoint móvil real.
 */
@media (min-width:681px){
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado{display: grid!important; grid-template-columns: minmax(0,1fr) minmax(300px,.72fr)!important; grid-template-rows: auto!important; align-items: start!important; gap: 32px!important; min-height: 0!important; padding: 34px 0 42px!important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-texto{grid-column: 1!important; grid-row: 1!important; width: auto!important; max-width: none!important; min-width: 0!important; order: initial!important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{grid-column: 2!important; grid-row: 1!important; width: 100%!important; max-width: none!important; min-width: 0!important; margin: 0!important; order: initial!important; align-self: start!important; justify-self: stretch!important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-principal{display: block!important; width: 100%!important; height: auto!important; min-height: 0!important; max-width: 100%!important; max-height: none!important; aspect-ratio: 2/3!important; object-fit: cover!important; object-position: center!important;}
}

@media (max-width:680px){
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado{display: flex!important; flex-direction: column-reverse!important; gap: 22px!important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{order: initial!important; width: min(100%,360px)!important; max-width: 360px!important; margin: 0 auto!important;}
}/* ---------- 9.5.282: insignia destacada, botón de catálogo, nota de relación ---------- */

/* Insignia "★ Destacado": pastilla con borde, no el bloque de color sólido
   de antes. El icono va dentro del propio span de texto (no hay un icono
   por separado en el HTML), así que se estiliza con :first-child. */
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado-etiqueta,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-destacado-etiqueta{display: inline-flex !important; align-items: center !important; gap: 6px !important; background: transparent !important; color: var(--nsf-red,#c0392b) !important; border: 1.5px solid var(--nsf-red,#c0392b) !important; border-radius: 999px !important; padding: 5px 14px !important; font-size: .72rem !important; font-weight: 700 !important; letter-spacing: .06em !important; text-transform: uppercase !important;}
.nsf-obra-page .nsf-destacado-etiqueta-icono{font-size: .85em; line-height: 1;}
/* ---------- 9.5.284: Subgéneros no debe desbordar su columna ---------- */
/* Se había colado en un grupo de selectores para secciones de ancho
   completo (width:1180px + margin auto), pensado para bloques como
   "Relacionados con..." — no para una etiqueta dentro de la columna de
   texto de la cabecera. Esta regla, al final del archivo y con la misma
   especificidad alta que el resto de la composición de escritorio,
   garantiza que se quede dentro de su columna pase lo que pase. */
html body .nsf-obra-page .nsf-ficha-publica .nsf-taxonomia-destacada,
html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-taxonomia-destacada{width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important;}
@media (min-width:681px){
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-taxonomia-destacada{grid-column: 1 !important; grid-row: 2 !important; width: 100% !important; max-width: 100% !important; margin-left: 0 !important; margin-right: 0 !important;}
}

/* ---------- 9.5.286: los 3 botones de acción en una sola fila ---------- */
/* Antes "Wishlist + ADN" iban juntos en una fila y "Ver tráiler" (y el
   enlace externo, si lo hay) caían en una segunda fila aparte. Con
   display:contents en los dos envoltorios de fila, sus botones pasan a
   ser hijos directos de un único contenedor en fila, así que todos
   quedan alineados y con la misma altura. */
@media (min-width:681px){
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales{display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; align-items: stretch !important; gap: 12px !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal,
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-secundaria,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-secundaria{display: contents !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico,
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-destacado-cta,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-destacado-cta,
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico{flex: 1 1 200px !important; width: auto !important; min-width: 180px !important; max-width: none !important; margin: 0 !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico .nsf-adn-toggle,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico .nsf-adn-toggle,
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-destacado-cta,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-destacado-cta,
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico .nsf-trailer-toggle,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico .nsf-trailer-toggle{height: 50px !important; min-height: 50px !important; box-sizing: border-box !important; width: 100% !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico,
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico{display: flex !important; height: 50px !important;}
}

/* ---------- 9.5.297: acciones de ficha responsive — corrección móvil ---------- */
@media (max-width:680px){
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-adn-publico .nsf-adn-toggle,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-adn-publico .nsf-adn-toggle{height: 50px !important; min-height: 50px !important; max-height: 50px !important; width: 100% !important; min-width: 0 !important; box-sizing: border-box !important; padding: 0 7px !important; overflow: hidden !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 7px !important; white-space: nowrap !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal .nsf-adn-toggle-texto,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal .nsf-adn-toggle-texto{flex: 0 0 auto !important; width: auto !important; max-width: none !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; white-space: nowrap !important; text-overflow: clip !important; font-size: .72rem !important; line-height: 1 !important;}
/* El tráiler ocupa toda la segunda fila en móvil. */
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-trailer-publico,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-trailer-publico{grid-column: 1 / -1 !important; width: 100% !important; min-width: 0 !important; margin: 0 !important; display: block !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-trailer-publico .nsf-trailer-toggle,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal > .nsf-trailer-publico .nsf-trailer-toggle{width: 100% !important; min-width: 0 !important; height: 50px !important; min-height: 50px !important; max-height: 50px !important; box-sizing: border-box !important; padding: 0 10px !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 7px !important; white-space: nowrap !important; overflow: hidden !important; font-size: .72rem !important; line-height: 1 !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal .nsf-trailer-toggle-texto,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal .nsf-trailer-toggle-texto{flex: 0 0 auto !important; white-space: nowrap !important; overflow: visible !important; text-overflow: clip !important;}
}

/* NSF 9.5.298 — corrección móvil definitiva de las acciones de la ficha.
 * La fila principal y la secundaria se renderizan de forma distinta según
 * el renderer (PHP/JS). En móvil no deben conservar el ancho intrínseco de
 * sus hijos: el contenedor completo ocupa el ancho de la columna de texto.
 */
@media (max-width:680px){
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales{display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; grid-auto-flow: row !important; align-items: stretch !important; justify-content: stretch !important; width: 100% !important; max-width: none !important; min-width: 0 !important; margin: 28px 0 0 !important; gap: 8px !important; box-sizing: border-box !important;}
/* Los wrappers de filas no deben crear una segunda caja estrecha. */
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-principal,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-principal,
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-fila-secundaria,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-fila-secundaria{display: contents !important; width: auto !important; max-width: none !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important;}
/* Wishlist y ADN: dos columnas iguales, siempre a todo el ancho. */
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico{width: 100% !important; max-width: none !important; min-width: 0 !important; margin: 0 !important; box-sizing: border-box !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico{display: block !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico .nsf-adn-toggle,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-adn-publico .nsf-adn-toggle{display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; max-width: none !important; min-width: 0 !important; height: 50px !important; min-height: 50px !important; max-height: 50px !important; padding: 0 12px !important; margin: 0 !important; box-sizing: border-box !important; overflow: hidden !important; white-space: nowrap !important; line-height: 1 !important;}
/* El tráiler (PHP lo coloca en la fila secundaria y JS en la principal)
   * ocupa siempre toda la segunda fila. */
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico{grid-column: 1 / -1 !important; width: 100% !important; max-width: none !important; min-width: 0 !important; margin: 0 !important; display: block !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico .nsf-trailer-toggle,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales > .nsf-trailer-publico .nsf-trailer-toggle{display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; max-width: none !important; min-width: 0 !important; height: 50px !important; min-height: 50px !important; max-height: 50px !important; padding: 0 12px !important; margin: 0 !important; box-sizing: border-box !important; overflow: hidden !important; white-space: nowrap !important; line-height: 1 !important;}
html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales .nsf-adn-toggle-texto,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales .nsf-adn-toggle-texto,
  html body .nsf-obra-page .nsf-ficha-publica .nsf-ficha-acciones-principales .nsf-trailer-toggle-texto,
  html body .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-ficha-acciones-principales .nsf-trailer-toggle-texto{display: inline-block !important; flex: 0 1 auto !important; width: auto !important; max-width: none !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; text-overflow: clip !important; white-space: nowrap !important; font-size: .78rem !important; line-height: 1 !important;}
}/* NSF 9.5.299 — La presentación propia de Wishlist se ha trasladado a NSF WooCommerce.
 * Este archivo conserva únicamente la geometría compartida de la zona de acciones
 * (ADN/tráiler/estructura de la ficha). Los selectores específicos de Wishlist
 * ya no pertenecen al núcleo de NSF Hilos.
 */

/* NSF 9.5.305 — Portadas completas con fondo blur de la propia imagen.
   La imagen original siempre se conserva con su proporción; el marco se rellena
   con una copia desenfocada cuando las proporciones no coinciden. */
html body .nsf-obra-page .nsf-destacado-img{position: relative !important; isolation: isolate !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; background: #eef0f3 !important;}
html body .nsf-obra-page .nsf-destacado-img .nsf-destacado-img-fondo{display: block !important; position: absolute !important; inset: -18px !important; z-index: 0 !important; overflow: hidden !important; filter: blur(16px) saturate(.92) brightness(.78) !important; transform: scale(1.08) !important;}
html body .nsf-obra-page .nsf-destacado-img .nsf-destacado-img-fondo img{display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: cover !important; object-position: center !important;}
html body .nsf-obra-page .nsf-destacado-img .nsf-destacado-img-principal{position: relative !important; z-index: 1 !important; display: block !important; width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: 100% !important; aspect-ratio: auto !important; object-fit: contain !important; object-position: center !important; filter: none !important; box-shadow: 0 6px 18px rgba(23,32,51,.14) !important;}
@media(max-width:680px){
html body .nsf-obra-page .nsf-destacado-img .nsf-destacado-img-fondo{inset: -14px !important; filter: blur(13px) saturate(.92) brightness(.82) !important;}
}/* NSF 9.5.305 — Corrección definitiva de portada completa.
 * Algunas reglas históricas de la ficha tenían mayor especificidad y volvían a
 * imponer object-fit:cover y ocultaban el fondo blur en escritorio. Estas reglas
 * finales prevalecen sobre ellas en todos los dispositivos.
 */
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important; aspect-ratio: 2 / 3 !important; overflow: hidden !important; isolation: isolate !important; background: #eef0f3 !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-fondo{display: block !important; position: absolute !important; inset: -18px !important; width: auto !important; height: auto !important; z-index: 0 !important; overflow: hidden !important; visibility: visible !important; opacity: 1 !important; filter: blur(16px) saturate(.92) brightness(.78) !important; transform: scale(1.08) !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-fondo img{display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: cover !important; object-position: center !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-principal{position: relative !important; z-index: 1 !important; display: block !important; width: 100% !important; height: 100% !important; min-width: 0 !important; min-height: 0 !important; max-width: 100% !important; max-height: 100% !important; aspect-ratio: auto !important; object-fit: contain !important; object-position: center !important; filter: none !important; transform: none !important; box-shadow: 0 6px 18px rgba(23,32,51,.14) !important;}
@media(max-width:680px){
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{aspect-ratio: 2 / 3 !important;}
html body .nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-fondo{inset: -14px !important; filter: blur(14px) saturate(.92) brightness(.80) !important;}
}/* NSF 9.5.316 — blindaje de ancho de la ficha pública.
 * La ficha es una página independiente: ningún .site-main/.container del tema
 * debe poder reducirla a una columna estrecha. No afecta al buscador ni a otras páginas.
 */
html body main#primary.nsf-obra-page[data-nsf-ficha="1"]{width:min(1120px,calc(100% - 48px)) !important; max-width:1120px !important; margin:32px auto 64px !important; display:block !important; float:none !important; clear:both !important; box-sizing:border-box !important;}
@media (max-width:680px){
html body main#primary.nsf-obra-page[data-nsf-ficha="1"]{position:relative !important; left:50% !important; width:100vw !important; max-width:none !important; margin:0 0 40px -50vw !important; padding:0 14px !important; box-sizing:border-box !important;}
}/* NSF 9.5.354 — Barra superior de ficha: identidad visual NSF */
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo{background: #fff!important; color: #172033!important; border: 1px solid #172033!important; border-radius: 12px!important; padding: 14px 18px!important; box-shadow: 8px 8px 0 #d52b2b!important; position: relative!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo::after,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo::after{content: ""!important; position: absolute!important; inset: 8px!important; border: 1px dotted #ed1c24!important; border-radius: 7px!important; pointer-events: none!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-barra-icono,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-barra-icono{background: #ed1c24!important; color: #fff!important; -webkit-text-fill-color: #fff!important; border-radius: 8px!important; position: relative!important; z-index: 1!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino{position: relative!important; z-index: 1!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso{color: #5d6470!important; -webkit-text-fill-color: #5d6470!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-actual,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-actual{color: #d52b2b!important; -webkit-text-fill-color: #d52b2b!important; font-weight: 700!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-sep,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-sep{color: #d52b2b!important; -webkit-text-fill-color: #d52b2b!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir{position: relative!important; z-index: 1!important; color: #d52b2b!important; -webkit-text-fill-color: #d52b2b!important; background: #fff!important; border: 1px solid #d52b2b!important; padding: 7px 14px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir:hover,
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir:focus-visible,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir:hover,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-compartir:focus-visible{background: #fff5f5!important; color: #b91f26!important; -webkit-text-fill-color: #b91f26!important; border-color: #b91f26!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-editar-hilo,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-editar-hilo{position: relative!important; z-index: 1!important; color: #fff!important; -webkit-text-fill-color: #fff!important; background: #ed1c24!important; border: 1px solid #ed1c24!important; padding: 7px 14px!important; border-radius: 100px!important;}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-editar-hilo:hover,
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-editar-hilo:focus-visible,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-editar-hilo:hover,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-editar-hilo:focus-visible{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:#b91f26!important;
  border-color:#b91f26!important;
  text-decoration:none!important;
}
@media(max-width:720px){
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo,
  .nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo{padding: 12px 14px!important; box-shadow: 5px 5px 0 #d52b2b!important;}
}/* NSF 9.5.356 — Hover de los enlaces de navegación: texto negro */
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso:hover,
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso:focus-visible,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso:hover,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo .nsf-camino-paso:focus-visible{color: #171717!important; -webkit-text-fill-color: #171717!important;}
/* NSF 9.5.367 — Ficha pública: estructura centralizada.
 * Reglas extraídas de templates/single-producto.php.
 */
/* NSF 9.5.488 — composición móvil de la ficha pública.
 * El ancho se corrige en el componente que realmente contiene buscador,
 * exploración y ficha. No se mueve ni duplica el DOM.
 */
@media (max-width:680px){
html body main#primary.nsf-obra-page[data-nsf-ficha="1"] .nsf-buscador{width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important;}
html body main#primary.nsf-obra-page[data-nsf-ficha="1"] .nsf-search-shell{width:100% !important; max-width:none !important; margin:0 0 18px !important; padding:0 !important;}
html body main#primary.nsf-obra-page[data-nsf-ficha="1"] .nsf-search-box{width:100% !important; max-width:none !important; margin:0 !important;}
html body main#primary.nsf-obra-page[data-nsf-ficha="1"] .nsf-results{width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important;}
html body main#primary.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica{width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; box-sizing:border-box !important;}
}


html body main#primary.nsf-obra-page[data-nsf-ficha="1"]{width:min(1120px,calc(100% - 48px)) !important; max-width:1120px !important; margin:32px auto 64px !important; display:block !important; float:none !important; clear:both !important; box-sizing:border-box !important;}
@media (max-width:680px){
html body main#primary.nsf-obra-page[data-nsf-ficha="1"]{position:relative !important; left:50% !important; width:100vw !important; max-width:none !important; margin:0 0 40px -50vw !important; padding:0 14px !important; box-sizing:border-box !important;}
}
@media (min-width:681px){
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado{display: grid !important; grid-template-columns: minmax(0,1fr) minmax(360px,460px) !important; grid-template-areas: "texto portada" !important; gap: 48px !important; align-items: start !important; width: 100% !important; max-width: none !important; min-height: 0 !important; overflow: visible !important;}
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-texto{grid-area: texto !important; width: 100% !important; min-width: 0 !important; max-width: none !important;}
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{grid-area: portada !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; max-width: 460px !important; height: auto !important; aspect-ratio: 2 / 3 !important; min-height: 0 !important; margin: 0 0 0 auto !important; padding: 0 !important; align-self: start !important; justify-self: end !important; overflow: hidden !important; position: relative !important; isolation: isolate !important; border-radius: 8px !important; background: #eef0f3 !important;}
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-fondo{display: block !important; position: absolute !important; inset: -18px !important; z-index: 0 !important; overflow: hidden !important; filter: blur(16px) saturate(.92) brightness(.78) !important; transform: scale(1.08) !important;}
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-fondo img{display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: cover !important; object-position: center !important;}
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-principal{display: block !important; position: relative !important; z-index: 1 !important; width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: 100% !important; aspect-ratio: auto !important; object-fit: contain !important; object-position: center !important; filter: none !important; box-shadow: 0 6px 18px rgba(23,32,51,.14) !important;}
}
@media (max-width:680px){
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado{display: flex !important; flex-direction: column-reverse !important; gap: 22px !important;}
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{display: flex !important; align-items: center !important; justify-content: center !important; width: min(100%,360px) !important; max-width: 360px !important; height: auto !important; aspect-ratio: 2 / 3 !important; margin: 0 auto !important; position: relative !important; isolation: isolate !important; overflow: hidden !important; background: #eef0f3 !important;}
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-fondo{display: block !important; position: absolute !important; inset: -14px !important; z-index: 0 !important; overflow: hidden !important; filter: blur(13px) saturate(.92) brightness(.82) !important; transform: scale(1.08) !important;}
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-fondo img{display: block !important; width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: cover !important; object-position: center !important;}
html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img .nsf-destacado-img-principal{display: block !important; position: relative !important; z-index: 1 !important; width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: 100% !important; aspect-ratio: auto !important; object-fit: contain !important; object-position: center !important; filter: none !important; box-shadow: 0 6px 18px rgba(23,32,51,.14) !important;}
}


/* ================================================================
   9.5.391 — FICHA DIRECTA DE OBRA
   Una URL /obras/{slug}/ debe mostrar la ficha actual de NSF, no
   la interfaz de Tira del hilo. El mismo renderer de ficha se mantiene,
   pero se elimina la capa de exploración/buscador que solo corresponde
   a Tira del hilo.
   ================================================================ */
html body main.nsf-ficha-directa{
  width:min(1120px,calc(100% - 48px)) !important;
  max-width:1120px !important;
  margin:32px auto 64px !important;
  display:block !important;
  float:none !important;
  clear:both !important;
  box-sizing:border-box !important;
}

html body main.nsf-ficha-directa .nsf-buscador{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

/* En la ficha directa mantenemos un buscador compacto; el resto de la interfaz de Tira no se muestra. */
html body main.nsf-ficha-directa .nsf-hero,
html body main.nsf-ficha-directa .nsf-sorpresa-fila,
html body main.nsf-ficha-directa .nsf-ultimas,
html body main.nsf-ficha-directa .nsf-filtros,
html body main.nsf-ficha-directa .nsf-empty,
html body main.nsf-ficha-directa .nsf-form-slot,
html body main.nsf-ficha-directa .nsf-confirm,
html body main.nsf-ficha-directa .nsf-aporta,
html body main.nsf-ficha-directa #nsf-mapa-hilo-toggle,
html body main.nsf-ficha-directa #nsf-mapa-hilo{
  display:none !important;
}

/* Buscador compacto de navegación en la ficha de obra.
   Permite saltar a otra obra sin recuperar el hero/explorador de Tira. */
html body main.nsf-ficha-directa .nsf-search-shell{
  display:block !important;
  width:100% !important;
  max-width:820px !important;
  margin:0 auto 42px !important;
  padding:0 !important;
  position:relative !important;
  z-index:5 !important;
}

html body main.nsf-ficha-directa .nsf-search-box{
  width:100% !important;
  box-sizing:border-box !important;
}

html body main.nsf-ficha-directa .nsf-search-row{
  min-height:76px !important;
}

html body main.nsf-ficha-directa .nsf-tira-buscar-btn{
  flex:0 0 auto !important;
  min-width:150px !important;
  margin-right:8px !important;
}

/* La ficha generada por el renderer es el único contenido visible. */
html body main.nsf-ficha-directa .nsf-results{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

html body main.nsf-ficha-directa .nsf-thread-shell{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

@media (max-width:680px){
  html body main.nsf-ficha-directa{
    width:100% !important;
    max-width:none !important;
    margin:18px 0 42px !important;
    padding:0 14px !important;
  }
}

/* NSF 9.5.422 — Puerta de exploración dentro de cada ficha. */
.nsf-ficha-explorar{
  max-width:980px;
  margin:58px auto 34px;
  padding:0;
  border-top:1px dashed #cfc1b6;
  border-bottom:1px dashed #cfc1b6;
}
.nsf-ficha-explorar-cabecera{
  display:flex;align-items:baseline;justify-content:space-between;gap:20px;
  padding:20px 0 15px;border-bottom:2px solid #241d18;
}
.nsf-ficha-explorar-cabecera h2{font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;font-weight:400;margin:0;color:#241d18;}
.nsf-ficha-explorar-cabecera p{margin:0;color:#6f625a;font-size:.82rem;}
.nsf-ficha-explorar-opciones{display:grid;grid-template-columns:repeat(3,1fr);}
.nsf-ficha-explorar-opcion{min-height:125px;padding:22px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;text-decoration:none!important;color:#241d18!important;border-right:1px dashed #cfc1b6;}
.nsf-ficha-explorar-opcion:last-child{border-right:0;}
.nsf-ficha-explorar-opcion:hover{background:#faf3ee;}
.nsf-ficha-explorar-icono{font-size:1.35rem;line-height:1;color:#c52620;}
.nsf-ficha-explorar-opcion strong{font-family:Georgia,"Times New Roman",serif;font-size:1rem;font-weight:600;}
.nsf-ficha-explorar-opcion>span:last-child{font-size:.75rem;color:#756b64;line-height:1.35;}
@media(max-width:760px){
  .nsf-ficha-explorar{margin:42px 12px 28px;}
  .nsf-ficha-explorar-cabecera{display:block;}
  .nsf-ficha-explorar-cabecera p{margin-top:6px;}
  .nsf-ficha-explorar-opciones{grid-template-columns:1fr;}
  .nsf-ficha-explorar-opcion{min-height:auto;border-right:0;border-bottom:1px dashed #cfc1b6;}
  .nsf-ficha-explorar-opcion:last-child{border-bottom:0;}
}



/* 9.5.457 — Acción de tráiler: estilo secundario, coherente con NSF. */
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-trailer-enlace{
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    width:100%;
    height:50px;
    min-height:50px;
    margin:0;
    padding:0 15px;
    border:1px dotted var(--obra-red);
    border-radius:4px;
    background:#fff;
    color:var(--obra-red);
    text-decoration:none;
    line-height:1;
    font-size:.75rem;
    font-weight:800;
    letter-spacing:.035em;
    text-transform:uppercase;
    transition:background-color .16s ease,color .16s ease,border-color .16s ease;
}
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-trailer-enlace:hover{
    background:var(--obra-red);
    border-color:var(--obra-red);
    color:#fff;
    text-decoration:none;
}
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-trailer-enlace:focus-visible{
    outline:2px solid var(--obra-red);
    outline-offset:2px;
}
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-trailer-enlace .nsf-trailer-toggle-icon,
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-trailer-enlace .nsf-trailer-toggle-texto{
    color:inherit;
}
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-trailer-publico{margin:0;}

/* Estructura de la fila: ADN / tráiler / Wishlist. */
.nsf-obra-page .nsf-ficha-acciones-principales{
    display:flex;
    flex-wrap:nowrap;
    align-items:stretch;
    gap:10px;
    width:100%;
    margin-top:27px;
}
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-ficha-acciones-fila{display:contents;}
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-adn-publico,
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-trailer-publico,
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-ficha-wishlist-accion{box-sizing:border-box;min-width:0;margin:0;}
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-adn-publico{flex:1 1 0;order:1;}
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-trailer-publico{flex:1 1 0;order:2;}
.nsf-obra-page .nsf-ficha-acciones-principales .nsf-ficha-wishlist-accion{flex:0 1 118px;order:3;}
@media(max-width:680px){
 .nsf-obra-page .nsf-ficha-acciones-principales{flex-direction:column;}
 .nsf-obra-page .nsf-ficha-acciones-principales .nsf-adn-publico,
 .nsf-obra-page .nsf-ficha-acciones-principales .nsf-trailer-publico,
 .nsf-obra-page .nsf-ficha-acciones-principales .nsf-ficha-wishlist-accion{flex:1 1 auto;width:100%;}
}

/* NSF 9.5.491 — Menos aire superior sin tocar el header.
   El margen negativo aplicado al <main> podía colapsar con el encabezado
   del tema y hacer que este quedara cortado. Movemos solo el bloque NSF
   mediante posicionamiento relativo y compensamos el flujo inferior. */
@media (max-width:760px){
  html body main#primary.nsf-obra-page[data-nsf-ficha="1"]{
    margin-top:0 !important;
  }
  html body main#primary.nsf-obra-page[data-nsf-ficha="1"] .nsf-buscador.nsf-ficha-buscador{
    position:relative !important;
    top:-55px !important;
    margin-bottom:-55px !important;
  }
}


/* NSF 9.5.519 — La portada no debe quedar pegada al borde de su columna.
 * Se centra dentro de la columna derecha y mantiene su tamaño/proporción.
 */
@media (min-width:681px){
  html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{
    justify-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* NSF 9.5.521 — Ajuste seguro de la columna de portada.
 * No modifica el contenedor ni el JavaScript del ADN. La columna derecha
 * queda limitada a 400px y la portada ocupa exactamente esa columna.
 */
@media (min-width:681px){
  html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado{
    grid-template-columns: minmax(0,1fr) 400px !important;
  }
  html body main.nsf-obra-page .nsf-ficha-publica > .nsf-destacado > .nsf-destacado-img{
    width:100% !important;
    max-width:400px !important;
    margin-left:0 !important;
    margin-right:0 !important;
    justify-self:stretch !important;
  }
}


/* NSF 9.5.560 — ajuste visual de la barra de tipo.
 * Se conserva exactamente el ancho corregido en 9.5.559.
 * Solo se recupera la composición visual original: sombra roja inferior
 * y marco rojo punteado interior.
 */
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo{
  box-sizing:border-box !important;
  width:calc(100% - 20px) !important;
  max-width:calc(100% - 20px) !important;
  margin-right:20px !important;
  box-shadow:8px 8px 0 #d52b2b !important;
  overflow:visible !important;
}
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-barra-tipo::after,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-barra-tipo::after{
  content:"" !important;
  position:absolute !important;
  inset:8px !important;
  left:8px !important;
  right:8px !important;
  bottom:8px !important;
  width:auto !important;
  height:auto !important;
  background:transparent !important;
  border:1px dotted #ed1c24 !important;
  border-radius:7px !important;
  pointer-events:none !important;
}


/* NSF 9.5.567 — Título público bilingüe.
 * La ficha muestra siempre el título en español como principal y, cuando
 * existe un título original diferente, lo presenta debajo de forma clara.
 * Se usan elementos propios (span) para evitar que estilos del tema sobre
 * <small> oculten o reduzcan indebidamente el título original.
 */
html body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-es{
  display:block !important;
}
html body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original{
  display:block !important;
  margin-top:9px !important;
  color:#737985 !important;
  -webkit-text-fill-color:#737985 !important;
  font-family:inherit !important;
  font-size:.31em !important;
  line-height:1.3 !important;
  font-style:italic !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}
html body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-destacado h1 .nsf-titulo-original-etiqueta{
  display:inline !important;
  margin-right:7px !important;
  color:#9a9fa7 !important;
  -webkit-text-fill-color:#9a9fa7 !important;
  font-style:normal !important;
  font-weight:600 !important;
  letter-spacing:.02em !important;
}

/* 9.5.569 — los valores de los metadatos no se truncan.
 * En especial nombres largos de director/autor. El dato puede ocupar
 * más de una línea para conservar el contenido completo.
 */
body.single-nsf_producto .nsf-obra-page .nsf-ficha-publica .nsf-datos .nsf-dato dd,
.nsf-obra-page[data-nsf-ficha="1"] .nsf-ficha-publica .nsf-datos .nsf-dato dd{
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}


/* NSF 9.5.599 — Aviso de conexiones adicionales claramente visible. */
html body .nsf-obra-page .nsf-relacionados-ver-mas{margin:28px 0 6px!important;padding:24px 20px 26px!important;border:1px solid #ead5d6!important;border-radius:10px!important;background:#fffafa!important;text-align:center!important}
html body .nsf-obra-page .nsf-relacionados-ver-mas-inner{display:flex!important;flex-direction:column!important;align-items:center!important;gap:15px!important;width:100%!important}
html body .nsf-obra-page .nsf-relacionados-aviso{display:flex!important;flex-direction:column!important;align-items:center!important;gap:5px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:#596170!important;font-size:.94rem!important;line-height:1.5!important}
html body .nsf-obra-page .nsf-relacionados-aviso strong{display:block!important;color:#172033!important;font-size:1.12rem!important;line-height:1.3!important;font-weight:800!important}
html body .nsf-obra-page .nsf-relacionados-aviso span{display:block!important;color:#697180!important}
html body .nsf-obra-page .nsf-relacionados-ver-mas-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;padding:10px 22px!important;border:1px solid #c9252b!important;border-radius:6px!important;background:#c9252b!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:.84rem!important;font-weight:800!important;text-decoration:none!important}
html body .nsf-obra-page .nsf-relacionados-ver-mas-btn:hover,html body .nsf-obra-page .nsf-relacionados-ver-mas-btn:focus-visible{background:#a91e24!important;border-color:#a91e24!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
@media(max-width:560px){html body .nsf-obra-page .nsf-relacionados-ver-mas{padding:20px 15px 22px!important}html body .nsf-obra-page .nsf-relacionados-aviso strong{font-size:1rem!important}html body .nsf-obra-page .nsf-relacionados-ver-mas-btn{width:100%!important;max-width:320px!important}}
