/* =========================================================================
   CD TERUEL — Páginas del primer equipo «Poniendo el corazón» (corazon-equipo.css)
   Hub, plantilla, cuerpo técnico, partidos, resultados, clasificación, ficha
   de jugador, noticias del equipo, previa y crónica. Requiere corazon.css
   (tokens y fuentes) y body.corazon.
   ========================================================================= */

/* ---- cabecera de equipo: foto en duotono, título en Barlow negra, sin etiqueta ---- */
.corazon .team-hero { min-height: clamp(240px, 34vw, 440px); background: var(--cz-negro); }
.corazon .team-hero__img { filter: sepia(.22) hue-rotate(-12deg) saturate(1.2) contrast(1.12) brightness(.5); object-position: center 25%; }
.corazon .team-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,.1) 35%, rgba(8,4,5,.55) 70%, var(--cz-negro) 100%);
}
.corazon .team-hero__badge { display: none; }
.corazon .team-hero h1 {
  font-family: var(--f-black); font-weight: normal; letter-spacing: .01em; padding-right: .06em;
  font-size: clamp(2.6rem, 7vw, 5.2rem); line-height: .95; text-shadow: 5px 6px 0 #1a0507, 0 14px 30px rgba(0,0,0,.7);
}
.corazon .team-hero__inner { padding-bottom: clamp(1.2rem, 2.6vw, 2rem); }

/* ---- subnav del equipo ---- */
.corazon .subnav { background: #050303; border-bottom: 1px solid var(--cz-linea); border-top: 1px solid var(--cz-linea); }
.corazon .subnav a { 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 .subnav a:hover { color: #fff; }
.corazon .subnav a[aria-current="page"] { color: #fff; border-color: var(--cz-rojo); }

/* ---- títulos de bloque ---- */
.corazon .block-title, .corazon .pl-group__title {
  font-family: var(--f-black); font-weight: normal; text-transform: uppercase; letter-spacing: .01em; padding: 0 0 0 .8rem;
  font-size: clamp(1.5rem, 2.8vw, 2.1rem); line-height: 1; color: #fff; border-left: 5px solid var(--cz-rojo-2);
  text-shadow: 3px 4px 0 #1a0507; margin-bottom: clamp(1.1rem, 2.2vw, 1.6rem);
}
.corazon .section { background: var(--cz-negro); }

/* =========================================================================
   HUB DEL EQUIPO: partidos + clasificación + noticias
   ========================================================================= */
.corazon .eqh-sec { padding-top: clamp(2rem, 4vw, 3rem); }
.corazon .eqh-row .fx2-card { animation: none; }
.corazon .clasi-table { background: var(--cz-panel); border: 1px solid var(--cz-linea); font-family: var(--f-cond-2); font-size: 1rem; color: #fff; }
.corazon .clasi-table th { background: #050303; color: var(--cz-texto-2); font-family: var(--f-bebas); font-weight: normal; font-size: .82rem; letter-spacing: .12em; border-bottom: 1px solid var(--cz-linea); }
.corazon .clasi-table td { border-bottom: 1px solid var(--cz-linea); }
.corazon .clasi-pos { font-family: var(--f-bebas); font-weight: normal; font-size: 1rem; color: var(--cz-texto-2); }
.corazon .clasi-team span { font-family: var(--f-cond); text-transform: uppercase; letter-spacing: .03em; }
.corazon .clasi-pts { font-family: var(--f-black); font-size: 1.1rem; color: #fff; }
.corazon .clasi-row.is-cdt { background: rgba(226,21,52,.16); }
.corazon .clasi-row.is-cdt td { font-weight: normal; }
.corazon .clasi-row.is-cdt .clasi-pos, .corazon .clasi-row.is-cdt .clasi-pts { color: var(--cz-rosa); }
.corazon .clasi-all { font-family: var(--f-bebas); font-weight: normal; font-size: 1rem; letter-spacing: .1em; color: var(--cz-rosa); }
.corazon .clasi-all:hover { color: #fff; }
.corazon .eqh-news { background: var(--cz-negro); border-top: 1px solid var(--cz-linea); }

/* tarjeta de noticia de las páginas de equipo: foto 4:5 entera */
.corazon .nl-card { color: #fff; }
.corazon .nl-card__media { aspect-ratio: 4 / 5; background: #1a0509; box-shadow: 0 0 0 1px rgba(255,255,255,.12), 0 20px 40px -24px rgba(0,0,0,.9); transition: box-shadow .3s ease; }
.corazon .nl-card__media img { object-position: 50% 30%; }
.corazon .nl-card:hover .nl-card__media { box-shadow: 0 0 0 2px var(--cz-rojo-luz), 0 0 22px rgba(255,36,64,.4), 0 20px 40px -24px rgba(0,0,0,.9); }
.corazon .nl-card__body { padding: .9rem .1rem 0; gap: .5rem; }
.corazon .nl-card__title { font-family: var(--f-cond); font-weight: normal; letter-spacing: .02em; font-size: 1.12rem; line-height: 1.15; color: #fff; }
.corazon .nl-card:hover .nl-card__title { color: #ffd7dc; }
.corazon .nl-card__meta { border-top: 0; padding-top: 0; margin-top: 0; justify-content: flex-start; gap: .9rem; }
.corazon .nl-card__cat { font-family: var(--f-stencil); font-weight: normal; font-size: .82rem; letter-spacing: .06em; color: var(--cz-rojo); }
.corazon .nl-card__date { font-family: var(--f-bebas); font-weight: normal; font-size: .9rem; letter-spacing: .1em; color: var(--cz-texto-2); }
.corazon .nl-empty { color: var(--cz-texto-2); }
.corazon .nl-grid { grid-template-columns: repeat(4, 1fr); }
.corazon .eqh-news .nl-grid { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 1000px) { .corazon .nl-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 760px) { .corazon .nl-grid, .corazon .eqh-news .nl-grid { grid-template-columns: 1fr 1fr; gap: .9rem; } .corazon .nl-card__title { font-size: .98rem; } }
.corazon .nl-page { background: var(--cz-panel); border-color: var(--cz-linea); color: #fff; font-family: var(--f-bebas); font-weight: normal; font-size: 1.1rem; border-radius: 0; }
.corazon .nl-page:hover:not([disabled]):not(.is-active) { border-color: #fff; }
.corazon .nl-page.is-active { background: var(--cz-rojo); border-color: var(--cz-rojo); }

/* =========================================================================
   PLANTILLA Y CUERPO TÉCNICO: el jugador recortado sobre panel negro,
   dorsal gigante detrás y el nombre en etiqueta roja inclinada
   ========================================================================= */
.corazon .pl-empty { color: var(--cz-texto-2); }
.corazon .pl-grid { gap: clamp(1rem, 1.8vw, 1.5rem); }
.corazon .pl-card {
  position: relative; background: var(--cz-panel); border: 1px solid var(--cz-linea); color: #fff; overflow: hidden;
  transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.corazon .pl-card:hover { transform: translateY(-5px); border-color: var(--cz-rojo-luz); box-shadow: 0 0 0 1px var(--cz-rojo-luz), 0 0 26px rgba(255,36,64,.35), 0 26px 50px -24px rgba(0,0,0,.9); }
.corazon .pl-card__media {
  aspect-ratio: 3 / 4; overflow: hidden;
  background: radial-gradient(70% 50% at 50% 100%, rgba(226,21,52,.5), transparent 70%), radial-gradient(80% 60% at 50% 20%, #1a0a0e, var(--cz-panel) 80%);
}
.corazon .pl-card__media::before { content: ""; position: absolute; left: 50%; top: 4%; width: 78%; aspect-ratio: 215 / 300; transform: translateX(-50%); background: url("../assets/img/cartel/escudo-silueta.png") center / contain no-repeat; opacity: .16; pointer-events: none; }
.corazon .pl-card__media img { object-position: top center; filter: drop-shadow(0 18px 24px rgba(0,0,0,.7)); transition: transform .6s ease; }
.corazon .pl-card:hover .pl-card__media img { transform: scale(1.05); }
.corazon .pl-card__num {
  top: -.1rem; left: .5rem; font-family: var(--f-black); font-weight: normal; padding-right: .06em;
  font-size: clamp(4.4rem, 8vw, 6.4rem); color: var(--cz-rojo); opacity: .85; text-shadow: 4px 5px 0 #3a0410, 0 0 24px rgba(226,21,52,.45);
}
.corazon .pl-card__body { padding: .95rem 1rem 1.1rem; text-align: left; border-top: 1px solid var(--cz-linea); background: #050303; }
.corazon .pl-card__pos { font-family: var(--f-stencil); font-weight: normal; font-size: .82rem; letter-spacing: .06em; color: var(--cz-rojo); }
.corazon .pl-card__name { margin-top: .3rem; font-family: var(--f-black); font-weight: normal; font-size: clamp(1.05rem, 1.7vw, 1.3rem); letter-spacing: .01em; line-height: 1.05; color: #fff; padding-right: .06em; }
.corazon .pl-card:hover .pl-card__name { color: #ffd7dc; }
.corazon .pl-card--staff:hover { transform: none; border-color: var(--cz-linea); box-shadow: none; }
.corazon .pl-card--staff:hover .pl-card__name { color: #fff; }
@media (max-width: 480px) { .corazon .pl-card__num { font-size: 3.4rem; } .corazon .pl-card__body { padding: .7rem .75rem .85rem; } }

/* =========================================================================
   FICHA DE JUGADOR: como el cartel de cumpleaños/matchday
   ========================================================================= */
.corazon .jg-loading { color: var(--cz-texto-2); }
.corazon .jg-hero2 {
  background: radial-gradient(60% 45% at 50% 100%, rgba(226,21,52,.45), transparent 70%), var(--cz-negro);
  min-height: clamp(520px, 58vw, 780px);
}
.corazon .jg-bigescudo { background-image: url("../assets/img/cartel/escudo-silueta.png"); background-position: center 18%; background-size: auto 86%; opacity: .1; }
.corazon .jg-bignum2 {
  place-items: start center; padding-top: clamp(1rem, 3vw, 2.4rem);
  font-family: var(--f-black); font-weight: normal; font-size: clamp(14rem, 34vw, 30rem); color: var(--cz-rojo); opacity: .32;
  text-shadow: 8px 10px 0 #3a0410; padding-right: .06em;
}
.corazon .jg-escudito { filter: drop-shadow(0 4px 12px rgba(0,0,0,.8)); }
.corazon .jg-name2 { font-family: var(--f-black); font-weight: normal; letter-spacing: .01em; font-size: clamp(2rem, 4vw, 3.4rem); line-height: .95; text-shadow: 4px 5px 0 #1a0507, 0 12px 28px rgba(0,0,0,.8); padding-right: .06em; }
.corazon .jg-dato-izq span { font-family: var(--f-bebas); font-size: 1rem; letter-spacing: .14em; color: var(--cz-texto-2); font-weight: normal; }
.corazon .jg-dato-izq strong { font-family: var(--f-black); font-weight: normal; font-size: clamp(3rem, 5vw, 4.4rem); color: var(--cz-rojo); text-shadow: 4px 5px 0 #3a0410; padding-right: .06em; }
.corazon .jg-photo2 { filter: drop-shadow(0 0 30px rgba(226,21,52,.35)) drop-shadow(0 24px 40px rgba(0,0,0,.8)); }
.corazon .jg-poslabel { font-family: var(--f-bebas); font-size: .95rem; letter-spacing: .14em; color: var(--cz-texto-2); font-weight: normal; }
.corazon .jg-posval { font-family: var(--f-stencil); font-weight: normal; font-size: clamp(1.4rem, 2.4vw, 2rem); letter-spacing: .06em; color: var(--cz-rojo); border-bottom-color: var(--cz-rojo); text-shadow: 0 3px 10px rgba(0,0,0,.8); }
.corazon .jg-tabla div { border-bottom-color: var(--cz-linea); }
.corazon .jg-tabla dt { font-family: var(--f-bebas); font-size: .9rem; letter-spacing: .12em; color: var(--cz-texto-2); font-weight: normal; }
.corazon .jg-tabla dd { font-family: var(--f-cond); font-weight: normal; font-size: 1.05rem; letter-spacing: .03em; text-transform: uppercase; }
/* banda roja que pisa la foto (como en los carteles) y, ya fuera de la ficha, el latido entero */
.corazon .jg-banda { height: clamp(44px, 5vw, 64px); background: var(--cz-rojo-2); }
.corazon .jg-latido { height: 56px; margin-top: 0; background: var(--cz-negro) var(--latido) center / auto 100% repeat-x; }
.corazon .jg-stats { background: var(--cz-negro); }
.corazon .jg-stats__row { margin-top: 0; padding-top: .2rem; }
.corazon .jg-stat { background: #050303; border: 1px solid var(--cz-linea); border-top: 3px solid var(--cz-rojo); border-radius: 0; box-shadow: 0 20px 40px -20px rgba(0,0,0,.9); min-width: 160px; }
.corazon .jg-stat__label { font-family: var(--f-bebas); font-weight: normal; font-size: .95rem; letter-spacing: .16em; color: var(--cz-texto-2); }
.corazon .jg-stat__num { font-family: var(--f-black); font-weight: normal; color: #fff; padding-right: .06em; }
.corazon .jg-body { background: var(--cz-negro); }
.corazon .jg-prose p { color: #d9d2d3; }
.corazon .jg-back { border-top-color: var(--cz-linea); }
.corazon .jg-back a { font-family: var(--f-bebas); font-weight: normal; font-size: 1.05rem; letter-spacing: .1em; color: var(--cz-rosa); }
.corazon .jg-back a:hover { color: #fff; }
@media (max-width: 860px) {
  .corazon .jg-hero2 { min-height: 0; }
  .corazon .jg-bignum2 { font-size: clamp(10rem, 40vw, 16rem); padding-top: 5rem; }
  .corazon .jg-col--der { padding-bottom: calc(44px + 1.6rem); }
  .corazon .jg-banda { height: 44px; }
  .corazon .jg-latido { height: 44px; }
}

/* =========================================================================
   PARTIDOS Y RESULTADOS: filas
   ========================================================================= */
.corazon .fl-list { gap: .7rem; }
.corazon .fl-row { background: var(--cz-panel); border: 1px solid var(--cz-linea); border-left: 4px solid rgba(255,255,255,.12); border-radius: 0; color: #fff; transition: border-color .25s ease, transform .25s ease; }
.corazon .fl-row:hover { border-color: rgba(255,255,255,.28); transform: translateX(3px); }
.corazon .fl-row--v { border-left-color: #1d8a45; } .corazon .fl-row--e { border-left-color: #6a646a; } .corazon .fl-row--d { border-left-color: var(--cz-rojo); }
.corazon .fl-row--next { background: linear-gradient(160deg, var(--cz-rojo) 0%, #8f0b20 100%); border-color: var(--cz-rojo); }
.corazon .fl-comp { font-family: var(--f-stencil); font-weight: normal; font-size: .95rem; letter-spacing: .06em; color: var(--cz-rojo); }
.corazon .fl-row--next .fl-comp { color: #fff; }
.corazon .fl-place { font-family: var(--f-cond-2); font-size: .82rem; letter-spacing: .08em; color: var(--cz-texto-2); }
.corazon .fl-row--next .fl-place { color: rgba(255,255,255,.85); }
.corazon .fl-team { font-family: var(--f-stencil); font-weight: normal; font-size: clamp(.9rem, 1.7vw, 1.08rem); letter-spacing: .05em; color: rgba(255,255,255,.8); }
.corazon .fl-cdt, .corazon .fl-row--next .fl-team { color: #fff; }
.corazon .fl-crest img { filter: drop-shadow(0 4px 8px rgba(0,0,0,.7)); }
.corazon .fl-when { background: #050303; border: 1px solid var(--cz-linea); border-top: 3px solid var(--cz-rojo); border-radius: 0; min-width: 104px; padding: .45rem .7rem .4rem; }
.corazon .fl-row--next .fl-when { background: rgba(5,3,3,.45); border-top-color: #fff; }
.corazon .fl-day { font-family: var(--f-bebas); font-weight: normal; font-size: .95rem; letter-spacing: .08em; color: #fff; }
.corazon .fl-time { font-family: var(--f-black); font-size: 1.15rem; color: #fff; padding-right: .06em; }
.corazon .fl-when--score { font-family: var(--f-black); font-size: clamp(1.4rem, 2.4vw, 1.8rem); letter-spacing: .02em; color: #fff; padding: .35rem .9rem .3rem; }
.corazon .fl-btn { border-radius: 0; transform: skewX(-9deg); background: transparent; border: 2px solid rgba(255,255,255,.4); color: #fff; font-family: var(--f-btn); font-weight: normal; letter-spacing: .09em; font-size: 1rem; padding: .55rem 1.3rem .5rem; }
.corazon .fl-btn:hover { background: var(--cz-rojo); border-color: var(--cz-rojo); }
.corazon .fl-row--next .fl-btn { background: #fff; color: var(--cz-rojo); border-color: #fff; }
.corazon .fl-row--next .fl-btn:hover { background: #050303; color: #fff; border-color: #050303; }
.corazon .fl-empty { color: var(--cz-texto-2); }

/* =========================================================================
   CLASIFICACIÓN COMPLETA
   ========================================================================= */
.corazon .cl-loading { color: var(--cz-texto-2); }
.corazon .cl-logo { height: 48px; filter: drop-shadow(0 3px 8px rgba(0,0,0,.8)); }
.corazon .cl-comp { font-family: var(--f-stencil); font-weight: normal; font-size: 1.15rem; letter-spacing: .06em; color: var(--cz-rojo); }
.corazon .cl-table { background: var(--cz-panel); border: 1px solid var(--cz-linea); }
.corazon .cl-table thead th { font-family: var(--f-bebas); font-weight: normal; font-size: .85rem; letter-spacing: .12em; color: var(--cz-texto-2); background: #050303; border-bottom: 1px solid var(--cz-linea); }
.corazon .cl-table tbody td { border-bottom: 1px solid var(--cz-linea); font-family: var(--f-cond-2); font-size: 1rem; color: #fff; }
.corazon .cl-row:hover { background: rgba(255,255,255,.04); }
.corazon .cl-num { font-family: var(--f-black); font-weight: normal; font-size: 1.2rem; color: #fff; padding-right: .06em; }
.corazon .cl-name { font-family: var(--f-cond); font-weight: normal; letter-spacing: .03em; font-size: 1rem; color: #fff; }
.corazon .cl-pts { font-family: var(--f-black); font-weight: normal; font-size: 1.2rem; color: #fff; padding-right: .06em; }
.corazon .cl-zone--asc .cl-bar { background: #1d8a45; } .corazon .cl-zone--po .cl-bar { background: #2d6fd6; } .corazon .cl-zone--desc .cl-bar { background: var(--cz-rojo); }
.corazon .cl-row.is-cdt { background: rgba(226,21,52,.16); }
.corazon .cl-row.is-cdt .cl-num, .corazon .cl-row.is-cdt .cl-name, .corazon .cl-row.is-cdt .cl-pts { color: var(--cz-rosa); }
.corazon .cl-row.is-cdt td { font-weight: normal; }
.corazon .cl-leyenda { font-family: var(--f-bebas); font-size: .95rem; letter-spacing: .1em; color: var(--cz-texto-2); }
.corazon .cl-dot { border-radius: 0; transform: skewX(-9deg); }
.corazon .cl-dot--asc { background: #1d8a45; } .corazon .cl-dot--po { background: #2d6fd6; } .corazon .cl-dot--desc { background: var(--cz-rojo); }

/* =========================================================================
   PREVIA Y CRÓNICA: estadio en duotono, cuenta atrás o marcador
   ========================================================================= */
.corazon .previa { background: var(--cz-negro); min-height: clamp(520px, 72vh, 700px); }
.corazon .previa__bg { filter: sepia(.22) hue-rotate(-12deg) saturate(1.2) contrast(1.12) brightness(.42); }
.corazon .previa__scrim { background: radial-gradient(60% 45% at 50% 60%, rgba(200,16,46,.28), transparent 70%), linear-gradient(180deg, rgba(8,4,5,.7) 0%, rgba(8,4,5,.2) 35%, rgba(8,4,5,.35) 65%, var(--cz-negro) 100%); }
.corazon .previa__loading { color: var(--cz-texto-2); }
.corazon .previa__comp, .corazon .previa__jornada { font-family: var(--f-stencil); font-weight: normal; font-size: clamp(1.1rem, 2vw, 1.5rem); letter-spacing: .06em; color: var(--cz-rojo); text-shadow: 0 3px 10px rgba(0,0,0,.8); }
.corazon .previa__complogo { filter: drop-shadow(0 4px 12px rgba(0,0,0,.8)); }
.corazon .previa__name { font-family: var(--f-black); font-weight: normal; letter-spacing: .01em; font-size: clamp(1.4rem, 3.4vw, 2.7rem); line-height: .98; text-shadow: 4px 5px 0 #1a0507, 0 12px 28px rgba(0,0,0,.8); padding-right: .06em; }
.corazon .previa__crest { filter: drop-shadow(0 8px 16px rgba(0,0,0,.8)); }
.corazon .previa__count { background: rgba(5,3,3,.65); border: 1px solid var(--cz-linea); border-top: 3px solid var(--cz-rojo); border-radius: 0; backdrop-filter: blur(4px); }
.corazon .previa__seg .n { font-family: var(--f-black); font-weight: normal; padding-right: .06em; }
.corazon .previa__seg .l { font-family: var(--f-bebas); font-weight: normal; font-size: .8rem; letter-spacing: .16em; color: var(--cz-texto-2); }
.corazon .previa__jugando { font-family: var(--f-black); font-weight: normal; color: var(--cz-rojo); font-size: 1.2rem; }
.corazon .previa__when { font-family: var(--f-stencil); font-weight: normal; font-size: clamp(1.1rem, 2.2vw, 1.5rem); letter-spacing: .06em; }
.corazon .previa__place { font-family: var(--f-cond-2); font-weight: normal; font-size: .95rem; letter-spacing: .08em; color: rgba(255,255,255,.8); }
.corazon .previa__tv { margin-top: clamp(1.6rem, 3.5vw, 2.6rem); }
.corazon .previa__tv-label { font-family: var(--f-stencil); font-weight: normal; font-size: 1.05rem; letter-spacing: .08em; color: var(--cz-rojo); text-shadow: 0 3px 10px rgba(0,0,0,.8); }
.corazon .previa__tv-logos img { height: clamp(36px, 5vw, 54px); }
.corazon .cronica__g { font-family: var(--f-black); font-weight: normal; text-shadow: 4px 5px 0 #3a0410, 0 0 28px rgba(226,21,52,.45); padding-right: .06em; }
.corazon .cronica__sep { font-family: var(--f-black); font-weight: normal; color: var(--cz-rojo); opacity: 1; }
.corazon .cronica-body { background: var(--cz-negro); }
.corazon .cronica__eyebrow { display: none; }
.corazon .cronica__title { font-family: var(--f-black); font-weight: normal; text-transform: uppercase; letter-spacing: .01em; font-size: clamp(1.7rem, 3.8vw, 2.7rem); line-height: 1; color: #fff; text-shadow: 4px 5px 0 #1a0507; max-width: 28ch; }
.corazon .cronica__fig { max-width: 520px; }
.corazon .cronica__fig img { border-radius: 0; 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 .cronica__prose p { color: #d9d2d3; }
.corazon .cronica__empty { color: var(--cz-texto-2); }
.corazon .alb-inline__title { font-family: var(--f-black); font-weight: normal; letter-spacing: .01em; font-size: 1.6rem; color: #fff; }
.corazon .alb-inline__item { border-radius: 0; border: 1px solid var(--cz-linea); }
.corazon .nd-rel { background: var(--cz-negro); border-top: 1px solid var(--cz-linea); }
.corazon .nd-rel-head h2 { font-family: var(--f-black); font-weight: normal; text-transform: uppercase; letter-spacing: .01em; font-size: clamp(1.5rem, 2.8vw, 2.1rem); color: #fff; border-left: 5px solid var(--cz-rojo-2); padding-left: .8rem; text-shadow: 3px 4px 0 #1a0507; }
.corazon .nd-rel-card { background: transparent; border: 0; border-radius: 0; box-shadow: none; color: #fff; }
.corazon .nd-rel-media { aspect-ratio: 4 / 5; border-radius: 0; background: #1a0509; box-shadow: 0 0 0 1px rgba(255,255,255,.12); }
.corazon .nd-rel-media img { object-position: 50% 30%; }
.corazon .nd-rel-card:hover .nd-rel-media { box-shadow: 0 0 0 2px var(--cz-rojo-luz), 0 0 22px rgba(255,36,64,.4); }
.corazon .nd-rel-body { padding: .9rem .1rem 0; }
.corazon .nd-rel-title { font-family: var(--f-cond); font-weight: normal; text-transform: uppercase; letter-spacing: .02em; font-size: 1.08rem; line-height: 1.15; color: #fff; }
.corazon .nd-rel-card:hover .nd-rel-title { color: #ffd7dc; }


/* Ficha de jugador en móvil: dorsal enorme justo detrás de la foto, medido sobre el ancho
   de su columna (container query) para que nunca se salga, sea de una cifra o de dos. */
.jg-numfoto { display: none; }
@media (max-width: 860px) {
  .corazon .jg-bignum2 { display: none; }
  .corazon .jg-col--foto { position: relative; container-type: inline-size; }
  .corazon .jg-numfoto {
    display: block; position: absolute; left: 0; right: 0; top: 2%; z-index: 0; pointer-events: none;
    text-align: center; font-family: var(--f-black); font-weight: normal; line-height: .82;
    font-size: 106cqw; letter-spacing: -.02em; padding-right: .06em;
    color: var(--cz-rojo); opacity: .42; text-shadow: .03em .04em 0 #3a0410;
  }
  .corazon .jg-numfoto[data-cifras="1"] { font-size: 140cqw; }
  .corazon .jg-photo2 { position: relative; z-index: 1; max-width: min(340px, 86vw); }
}
