/* =========================================================================
   CD TERUEL — Noticias «Poniendo el corazon» (corazon-noticias.css)
   Listado (noticias.html) y detalle (noticia.html). Requiere corazon.css y
   corazon-equipo.css (tarjetas .nl-card 4:5, relacionadas y álbum) y body.corazon.
   ========================================================================= */

/* ---- cabecera: foto en duotono, titular en Barlow negra, escudo en silueta ---- */
.corazon .nl-hero { background: var(--cz-negro); min-height: clamp(220px, 30vw, 380px); }
.corazon .nl-hero__img { filter: sepia(.22) hue-rotate(-12deg) saturate(1.2) contrast(1.12) brightness(.45); object-position: center 30%; }
.corazon .nl-hero__scrim {
  background: radial-gradient(60% 60% at 50% 100%, rgba(200,16,46,.35), transparent 70%),
              linear-gradient(180deg, rgba(8,4,5,.55) 0%, rgba(8,4,5,.15) 35%, rgba(8,4,5,.6) 70%, var(--cz-negro) 100%);
}
.corazon .nl-hero::after { background-image: url("../assets/img/cartel/escudo-silueta.png"); aspect-ratio: 215 / 300; opacity: .12; transform: rotate(10deg); right: clamp(-40px, -2vw, -10px); bottom: -10%; }
.corazon .nl-hero__inner { padding-top: clamp(3rem, 5vw, 4rem); padding-bottom: clamp(1.2rem, 2.6vw, 2rem); }   /* deja sitio al escudo que sobresale de la cabecera */
.corazon .nl-hero h1 {
  font-family: var(--f-black); font-weight: normal; letter-spacing: .01em; padding-right: .06em; text-transform: uppercase;
  font-size: clamp(2.2rem, 6vw, 4.6rem); line-height: .95; text-shadow: 5px 6px 0 #1a0507, 0 14px 30px rgba(0,0,0,.7); max-width: 22ch;
}
.corazon .nl-hero__badge {
  background: var(--cz-rojo); border: 0; border-radius: 0; transform: skewX(-9deg); backdrop-filter: none;
  font-family: var(--f-black); font-weight: normal; font-size: .9rem; letter-spacing: .04em; padding: .3rem .75rem .25rem; box-shadow: 0 6px 14px rgba(0,0,0,.6);
}
.corazon .nl-hero__meta { margin-top: .8rem; font-family: var(--f-stencil); font-size: clamp(1rem, 1.6vw, 1.3rem); letter-spacing: .06em; color: var(--cz-rojo); text-transform: uppercase; text-shadow: 0 3px 10px rgba(0,0,0,.8); }

/* ---- filtros por categoría ---- */
.corazon .nl-filters { background: #050303; border-top: 1px solid var(--cz-linea); border-bottom: 1px solid var(--cz-linea); }
.corazon .nl-filter { font-family: var(--f-bebas); font-weight: normal; font-size: 1.08rem; letter-spacing: .1em; color: rgba(255,255,255,.62); padding: .95rem .9rem .8rem; }
.corazon .nl-filter:hover { color: #fff; }
.corazon .nl-filter.is-active { color: #fff; border-color: var(--cz-rojo); }
.corazon .nl-sec { background: var(--cz-negro); padding-top: clamp(2rem, 4vw, 3rem); }

/* ---- detalle: imagen entera con marco, cuerpo claro sobre negro ---- */
.corazon .nd-loading { color: var(--cz-texto-2); }
.corazon .nd-figure { margin-top: clamp(1.6rem, 3vw, 2.6rem); }
.corazon .nd-figure img { max-width: min(100%, 560px); max-height: none; background: #1a0509; box-shadow: 0 0 0 3px var(--cz-rojo-luz), 0 0 30px 2px rgba(255,36,64,.35), 0 30px 60px -20px rgba(0,0,0,.9); }
.corazon .nd-body { background: var(--cz-negro); }
.corazon .nd-prose { max-width: 76ch; }
.corazon .nd-prose p { color: #d9d2d3; }
.corazon .nd-back { border-top-color: var(--cz-linea); }
.corazon .nd-back a { font-family: var(--f-bebas); font-weight: normal; font-size: 1.05rem; letter-spacing: .1em; color: var(--cz-rosa); }
.corazon .nd-back a:hover { color: #fff; }
.corazon .nd-rel-all { border-radius: 0; border-color: rgba(255,255,255,.3); color: var(--cz-rosa); font-family: var(--f-bebas); font-weight: normal; font-size: 1rem; letter-spacing: .1em; }
.corazon .nd-rel-all:hover { background: var(--cz-rojo); border-color: var(--cz-rojo); color: #fff; }
.corazon .nd-rel-grid { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 760px) { .corazon .nd-rel-grid { grid-template-columns: 1fr 1fr; } .corazon .nl-hero h1 { font-size: clamp(1.7rem, 8vw, 2.4rem); } }
