/* Bihotz Aratz - paleta y tipografias compartidas con el resto del sitio */
.bihotz-scope {
  --blue: #0B4DA2;
  --blue-dark: #073A7C;
  --yellow: #F5B301;
  --dark: #14181D;
  --cream: #F7F6F2;
  --border: #DCD9D2;
  --border-soft: #EDEBE5;
  --gray: #7C7669;
  --body: #3E4148;
  --light: #9A948A;
  --white: #FFFFFF;
  font-family: Barlow, Helvetica, sans-serif;
  color: var(--dark);
}
.bihotz-scope * { box-sizing: border-box; }
.bihotz-noticias-widget [hidden] { display: none !important; }
.bihotz-noticias-widget a { text-decoration: none; color: inherit; }

/* Barra de filtro + busqueda, pegada arriba al hacer scroll */
.bihotz-noticias-toolbar {
  position: sticky;
  top: 0;
  z-index: 20;
  background: var(--white);
  border-bottom: 1px solid var(--border);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  padding: 13px 4px;
  margin-bottom: 40px;
}
.bihotz-noticias-chips { display: flex; gap: 8px; flex-wrap: wrap; }
/* Hello Elementor's reset.css styles bare <button> (defaults to
   type=submit) with a [type="submit"] rule of the same specificity as a
   single class selector, and wins on source order. Scope through the
   parent to outrank it regardless of stylesheet load order. */
.bihotz-noticias-chips .bihotz-noticias-chip {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 16.5px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  padding: 9px 16px;
  cursor: pointer;
  border: 1px solid var(--border);
  background: var(--white);
  color: var(--dark);
}
.bihotz-noticias-chips .bihotz-noticias-chip.is-active {
  border-color: var(--chip-color, var(--dark));
  background: var(--chip-color, var(--dark));
  color: var(--white);
}
.bihotz-noticias-buscador {
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--border);
  padding: 8px 14px;
  min-width: 240px;
}
.bihotz-noticias-buscador-icono { flex: none; color: var(--light); }
/* Hello Elementor's reset.css pone su propio borde a los input[type=text]
   con la misma especificidad; se escapa via el padre para ganar siempre,
   igual que se hace arriba con los botones de los chips. */
.bihotz-noticias-buscador input[type="text"] {
  border: none;
  border-radius: 0;
  outline: none;
  font-size: 15px;
  flex: 1;
  min-width: 0;
  padding: 0;
  color: var(--dark);
  background: transparent;
  font-family: Barlow, Helvetica, sans-serif;
}

/* Layout principal + sidebar */
.bihotz-noticias-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 300px);
  gap: 52px;
  align-items: start;
}
.bihotz-noticias-layout.sin-sidebar { grid-template-columns: 1fr; }
.bihotz-noticias-principal { display: flex; flex-direction: column; gap: 40px; min-width: 0; }

/* Tarjeta destacada */
.bihotz-noticia-destacada {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  border: 1px solid var(--border);
  color: var(--dark);
}
.bihotz-noticia-destacada:hover { border-color: var(--blue); }
.bihotz-noticia-destacada-foto {
  aspect-ratio: 16 / 10;
  background-color: var(--cream);
  background-image: repeating-linear-gradient(135deg, rgba(11,77,162,0.10) 0 3px, transparent 3px 20px);
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'IBM Plex Mono', monospace;
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--gray);
}
.bihotz-noticia-destacada-info { padding: 32px 34px; display: flex; flex-direction: column; gap: 12px; justify-content: center; }

.bihotz-noticia-tags { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.bihotz-noticia-tag {
  background: var(--dark);
  color: var(--white);
  font-family: 'IBM Plex Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  padding: 4px 8px;
}
.bihotz-noticia-tag--destacada { background: var(--yellow); color: var(--dark); }
.bihotz-noticia-fecha { font-size: 13.5px; color: var(--gray); }

.bihotz-noticia-destacada-titulo {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  overflow-wrap: break-word;
}
.bihotz-noticia-extracto { margin: 0; font-size: 15.5px; line-height: 1.6; color: var(--body); }
.bihotz-noticia-leer {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  margin-top: 2px;
  color: var(--blue);
}

/* Grid de tarjetas */
.bihotz-noticias-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(266px, 1fr)); gap: 24px; }
.bihotz-noticia-card { border: 1px solid var(--border); display: flex; flex-direction: column; }
.bihotz-noticia-card:hover { border-color: var(--blue); }
.bihotz-noticia-foto {
  aspect-ratio: 16 / 9;
  background-color: var(--cream);
  background-image: repeating-linear-gradient(135deg, rgba(20,24,29,0.07) 0 3px, transparent 3px 18px);
  background-size: cover;
  background-position: center;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'IBM Plex Mono', monospace;
  font-size: 10.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--light);
}
.bihotz-noticia-foto-barra { position: absolute; top: 0; left: 0; right: 0; height: 4px; }
.bihotz-noticia-info { padding: 18px 20px 22px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.bihotz-noticia-titulo {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 23px;
  line-height: 1.08;
  text-transform: uppercase;
}
.bihotz-noticia-card .bihotz-noticia-extracto { font-size: 15px; }

/* Sin resultados */
.bihotz-noticias-sin-resultados {
  border: 1px solid var(--border);
  background: var(--cream);
  padding: 38px 32px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.bihotz-noticias-sin-resultados-titulo { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 26px; text-transform: uppercase; }
.bihotz-noticias-sin-resultados-texto { font-size: 15.5px; color: var(--body); }

/* Paginacion */
.bihotz-noticias-paginacion {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  border-top: 1px solid var(--border);
  padding-top: 20px;
  flex-wrap: wrap;
}
.bihotz-noticias-contador { font-size: 14.5px; color: var(--gray); }
.bihotz-noticias-paginas { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.bihotz-noticias-paginas button {
  border: 1px solid var(--border);
  background: var(--white);
  color: var(--dark);
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 16px;
  padding: 8px 14px;
  cursor: pointer;
}
.bihotz-noticias-paginas button.is-active { background: var(--blue); border-color: var(--blue); color: var(--white); font-weight: 700; }
.bihotz-noticias-paginas button.is-extremo { border-color: var(--dark); text-transform: uppercase; }
.bihotz-noticias-paginas button:disabled { color: var(--light); cursor: default; }

/* Sidebar */
.bihotz-noticias-sidebar { display: flex; flex-direction: column; gap: 22px; position: sticky; top: 78px; }
.bihotz-noticias-caja { border: 1px solid var(--border); padding: 20px 22px; display: flex; flex-direction: column; gap: 12px; }
.bihotz-noticias-caja--crema { background: var(--cream); border: none; }
.bihotz-noticias-caja-titulo { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 20px; text-transform: uppercase; }
.bihotz-noticias-caja-texto { margin: 0; font-size: 15px; line-height: 1.55; color: var(--body); }

.bihotz-noticias-cat-fila, .bihotz-noticias-archivo-fila {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--border-soft);
  cursor: pointer;
}
.bihotz-noticias-cat-fila:last-child, .bihotz-noticias-archivo-fila:last-child { border-bottom: none; padding-bottom: 0; }
.bihotz-noticias-cat-fila.is-active .bihotz-noticias-cat-fila-izq span:last-child,
.bihotz-noticias-archivo-fila.is-active { font-weight: 700; }
.bihotz-noticias-cat-fila-izq { display: flex; gap: 8px; align-items: center; font-size: 15px; }
.bihotz-noticias-cat-punto { width: 9px; height: 9px; flex: none; }
.bihotz-noticias-cat-cuenta { font-family: 'IBM Plex Mono', monospace; font-size: 13px; color: var(--gray); }

.bihotz-noticias-promo { background: var(--blue); color: var(--white); padding: 22px 24px; display: flex; flex-direction: column; gap: 10px; }
.bihotz-noticias-promo-eyebrow { font-family: 'IBM Plex Mono', monospace; font-size: 10px; letter-spacing: 0.15em; text-transform: uppercase; color: var(--yellow); }
.bihotz-noticias-promo-titulo { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 24px; line-height: 1.05; text-transform: uppercase; }
.bihotz-noticias-promo-datos { font-size: 14.5px; color: #DCE7F6; }
.bihotz-noticias-promo-btn {
  display: block;
  background: var(--yellow);
  color: var(--dark);
  text-align: center;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: 17px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  padding: 12px 0;
  margin-top: 2px;
}

.bihotz-noticias-social { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 2px; }
.bihotz-noticias-social a {
  border: 1px solid var(--border);
  background: var(--white);
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 15px;
  text-transform: uppercase;
  padding: 9px 13px;
}

.bihotz-noticias-empty { padding: 60px 20px; text-align: center; color: var(--gray); font-size: 16px; }

@media (max-width: 900px) {
  .bihotz-noticias-layout { grid-template-columns: 1fr; }
  .bihotz-noticias-sidebar { position: static; }
}

/* ==========================================================================
   Modo compacto: bloque "Últimas noticias" de Home (sin filtro, sin
   buscador, sin sidebar, sin paginación). Reproduce las medidas exactas
   del diseño original de Home (3 columnas fijas, foto de 200px de alto
   en vez de aspect-ratio, tipografia algo mayor), en vez de las propias
   del listado de /noticias/, pensado para tarjetas mas estrechas.
   ========================================================================== */
.bihotz-noticias-widget--compacto .bihotz-noticias-grid {
  grid-template-columns: repeat(3, 1fr);
}
.bihotz-noticias-widget--compacto .bihotz-noticia-foto {
  aspect-ratio: auto;
  height: 200px;
}
.bihotz-noticias-widget--compacto .bihotz-noticia-info {
  padding: 22px 24px 26px;
  gap: 9px;
}
.bihotz-noticias-widget--compacto .bihotz-noticia-tags {
  gap: 12px;
}
.bihotz-noticias-widget--compacto .bihotz-noticia-tag {
  font-size: 10.5px;
  letter-spacing: 0.12em;
}
.bihotz-noticias-widget--compacto .bihotz-noticia-fecha {
  font-size: 14px;
}
.bihotz-noticias-widget--compacto .bihotz-noticia-titulo {
  font-size: 26px;
  line-height: 1.05;
}
.bihotz-noticias-widget--compacto .bihotz-noticia-extracto {
  font-size: 16px;
  line-height: 1.55;
}
@media (max-width: 900px) {
  .bihotz-noticias-widget--compacto .bihotz-noticias-grid {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 901px) and (max-width: 1100px) {
  .bihotz-noticias-widget--compacto .bihotz-noticias-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ==========================================================================
   Ficha de detalle de una noticia (single-post.php)
   ========================================================================== */

.bihotz-noticia-progress { height: 4px; background: var(--border-soft); position: sticky; top: 0; z-index: 15; }
.bihotz-noticia-progress-bar { height: 4px; background: var(--yellow); width: 0%; }

.bihotz-noticia-hero { position: relative; background: var(--blue); overflow: hidden; }
.bihotz-noticia-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: repeating-linear-gradient(115deg, rgba(255,255,255,0.06) 0 2px, transparent 2px 26px); }
.bihotz-noticia-hero::after { content: ""; position: absolute; right: -140px; top: -150px; width: 430px; height: 430px; border: 24px solid rgba(255,255,255,0.08); border-radius: 50%; pointer-events: none; }
.bihotz-noticia-hero .bihotz-wrap { position: relative; padding-top: 24px; padding-bottom: 56px; display: flex; flex-direction: column; gap: 20px; }
.bihotz-noticia-hero-crumb { font-family: 'IBM Plex Mono', monospace; font-size: 12px; color: #A9C5EA; display: flex; gap: 10px; flex-wrap: wrap; }
.bihotz-noticia-hero-crumb a { color: #A9C5EA; }
.bihotz-noticia-hero-crumb .is-actual { color: var(--white); }
.bihotz-noticia-hero-tags { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.bihotz-noticia-hero-meta { font-family: 'IBM Plex Mono', monospace; font-size: 12.5px; letter-spacing: 0.08em; text-transform: uppercase; color: #A9C5EA; }
.bihotz-noticia-hero h1 {
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 700;
  font-size: clamp(32px, 5vw, 60px);
  line-height: 0.96;
  margin: 0;
  color: var(--white);
  text-transform: uppercase;
  letter-spacing: -0.015em;
  max-width: 22ch;
}
.bihotz-noticia-hero-lede { margin: 0; font-size: 19px; line-height: 1.5; color: #DCE7F6; max-width: 60ch; }

.bihotz-noticia-foto-wrap { padding-top: 44px; }
.bihotz-noticia-foto-destacada {
  aspect-ratio: 21 / 9;
  background-color: var(--cream);
  background-size: cover;
  background-position: center;
  border: 1px solid var(--border);
}
.bihotz-noticia-foto-caption { font-size: 14px; color: var(--gray); padding: 10px 2px 14px; border-bottom: 1px solid var(--border-soft); }

.bihotz-noticia-layout {
  padding-top: 44px;
  padding-bottom: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 280px);
  gap: 56px;
  align-items: start;
}

/* Flujo normal de documento (no flex): asi las figuras pequenas pueden
   fluir en linea unas junto a otras (ver regla mas abajo) en lugar de
   quedar todas forzadas a una unica columna vertical. */
.bihotz-noticia-body { max-width: 72ch; padding-bottom: 84px; }
.bihotz-noticia-body > * { margin: 0 0 26px; }
.bihotz-noticia-body > *:last-child { margin-bottom: 0; }
.bihotz-noticia-body p { font-size: 19px; line-height: 1.72; color: var(--dark); }
.bihotz-noticia-body h2 { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 34px; line-height: 1.05; margin-top: 8px; text-transform: uppercase; scroll-margin-top: 24px; }
.bihotz-noticia-body h3 { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 26px; line-height: 1.1; margin-top: 4px; text-transform: uppercase; }
.bihotz-noticia-body ul, .bihotz-noticia-body ol { padding-left: 22px; font-size: 19px; line-height: 1.72; color: var(--dark); display: flex; flex-direction: column; gap: 8px; }
.bihotz-noticia-body blockquote {
  border-left: 4px solid var(--yellow);
  padding: 4px 0 4px 24px;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 26px;
  line-height: 1.2;
  text-transform: uppercase;
}
.bihotz-noticia-body a { color: var(--blue); }
.bihotz-noticia-body img { max-width: 100%; height: auto; display: block; border: 1px solid var(--border); }
.bihotz-noticia-body figcaption { font-size: 14px; color: var(--gray); margin-top: 8px; }
/* Noticias antiguas con varios logos de patrocinadores sueltos: cada
   imagen centrada/sin alinear venia envuelta en su propio <div
   class="wp-block-image"> de bloque, lo que las apilaba una debajo de
   otra a toda anchura. Las dejamos fluir en linea, como una fila de
   logos, en vez de una columna interminable. */
.bihotz-noticia-body figure.aligncenter,
.bihotz-noticia-body figure.alignnone {
  display: inline-flex;
  flex-direction: column;
  vertical-align: top;
  margin: 0;
}
.bihotz-noticia-body div.wp-block-image:has(> figure.aligncenter),
.bihotz-noticia-body div.wp-block-image:has(> figure.alignnone) {
  display: inline-flex;
  vertical-align: top;
  margin: 0 12px 12px 0;
}

.bihotz-noticia-share {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  border-top: 1px solid var(--border);
  padding-top: 22px;
}
.bihotz-noticia-share-label { font-family: 'IBM Plex Mono', monospace; font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--gray); margin-right: 4px; }
.bihotz-noticia-share a {
  border: 1px solid var(--border);
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 600;
  font-size: 15px;
  text-transform: uppercase;
  color: var(--dark);
  padding: 8px 12px;
}
.bihotz-noticia-share a.is-copiado { border-color: var(--blue); color: var(--blue); }

.bihotz-noticia-nav { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; }
.bihotz-noticia-nav-item { border: 1px solid var(--border); padding: 18px 20px; display: flex; flex-direction: column; gap: 6px; color: var(--dark); }
.bihotz-noticia-nav-item:hover { border-color: var(--blue); }
.bihotz-noticia-nav-item--siguiente { text-align: right; }
.bihotz-noticia-nav-label { font-family: 'IBM Plex Mono', monospace; font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--gray); }
.bihotz-noticia-nav-titulo { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 21px; text-transform: uppercase; line-height: 1.1; }

.bihotz-noticia-sidebar { display: flex; flex-direction: column; gap: 22px; position: sticky; top: 24px; }
.bihotz-noticia-indice-item { display: block; font-size: 16px; line-height: 1.4; border-left: 3px solid var(--border-soft); padding-left: 12px; color: var(--body); }
.bihotz-noticia-indice-item.is-actual { border-left-color: var(--yellow); color: var(--dark); }
.bihotz-noticia-mas-item { display: block; font-size: 16px; line-height: 1.4; padding-bottom: 10px; margin-bottom: 10px; border-bottom: 1px solid var(--border-soft); color: var(--dark); }
.bihotz-noticia-mas-item.is-ultimo { padding-bottom: 0; margin-bottom: 0; border-bottom: none; }

.bihotz-noticia-siguelist { background: var(--cream); padding: 70px 0; }
.bihotz-noticia-siguelist-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  flex-wrap: wrap;
  border-bottom: 2px solid var(--dark);
  padding-bottom: 14px;
  margin-bottom: 28px;
}
.bihotz-noticia-siguelist-header h2 { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 40px; line-height: 1; margin: 0; text-transform: uppercase; }
.bihotz-noticia-siguelist-header a { font-family: 'Barlow Condensed', sans-serif; font-weight: 700; font-size: 17px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--dark); }
.bihotz-noticia-siguelist .bihotz-noticia-card { background: var(--white); }

@media (max-width: 900px) {
  .bihotz-noticia-layout { grid-template-columns: 1fr; }
  .bihotz-noticia-sidebar { position: static; }
}
