/*
Theme Name: Latitud Savia Child
Theme URI: https://latitudsavia.com
Description: Tema hijo de GeneratePress para Latitud Savia
Author: Latitud Savia
Template: generatepress
Version: 2.1
*/

/* =============================================
   VARIABLES
============================================= */
:root {
  --ls-verde-savia:   #9ac9b1;
  --ls-verde-bosque:  #2d7a5a;
  --ls-verde-profundo:#1a5c42;
  --ls-verde-noche:   #0f3d2b;
  --ls-negro:         #111111;
  --ls-gris:          #6b6866;
  --ls-borde:         #d4d2ce;
  --ls-fondo-alt:     #f8faf9;
  /* Espaciado consistente */
  --ls-pad-h:         32px;
  --ls-pad-h-md:      24px;
  --ls-pad-h-sm:      16px;
  --ls-max:           1400px;
}

/* =============================================
   BASE
============================================= */
*, *::before, *::after { box-sizing: border-box; }
body { font-family: 'Inter', system-ui, sans-serif; color: var(--ls-negro); -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; }

/* Accesibilidad: foco visible */
a:focus-visible { outline: 2px solid var(--ls-verde-bosque); outline-offset: 2px; }

/* Utilidades compartidas */
.ls-sep    { color: var(--ls-borde); }
.ls-meta   { color: var(--ls-gris); display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: 0; }
.ls-subcat {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 700; text-transform: uppercase; letter-spacing: .08em;
  color: var(--ls-verde-bosque);
}

/* H1 invisible para SEO */
.ls-home-h1-seo {
  position: absolute; width: 1px; height: 1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap;
}

/* Etiqueta de sección */
.ls-seccion-label {
  display: flex; align-items: center; flex-wrap: wrap; gap: 6px 14px;
  max-width: var(--ls-max); margin: 0 auto 22px;
  padding: 0 var(--ls-pad-h);
}
.ls-seccion-label > span,
.ls-seccion-titulo {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 700; text-transform: uppercase; letter-spacing: .1em;
  color: var(--ls-negro); white-space: normal; margin: 0;
  border-left: 3px solid var(--ls-verde-savia); padding-left: 12px;
  min-width: 0; overflow-wrap: break-word;
}
.ls-seccion-titulo a { color: inherit; text-decoration: none; }
.ls-seccion-titulo a:hover { color: var(--ls-verde-bosque); }
.ls-seccion-mas {
  margin-left: auto;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 600; color: var(--ls-verde-bosque);
  text-decoration: none; white-space: nowrap;
  min-height: 44px; display: flex; align-items: center;
}

/* =============================================
   HERO — foto contenida + ficha solapada
============================================= */
.ls-hero { max-width: var(--ls-max); margin: 0 auto 40px; padding: 0 var(--ls-pad-h); }
.ls-hero-link { display: block; text-decoration: none; }
.ls-hero-img-wrap {
  position: relative; overflow: hidden; aspect-ratio: 21/8;
  border-radius: 2px; background: var(--ls-verde-profundo);
}
.ls-hero-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s; }
.ls-hero-ficha {
  background: #fff;
  border: .5px solid var(--ls-borde);
  border-top: 3px solid var(--ls-verde-savia);
  margin: -36px 0 0;
  position: relative;
  padding: 26px 28px 28px;
}
.ls-hero-titulo { margin: 0; max-width: 640px; }
.ls-hero-badge {
  position: absolute; top: -22px; left: 24px;
  display: flex; align-items: center; gap: 9px; width: fit-content;
  background: var(--ls-verde-savia); color: var(--ls-verde-noche);
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .09em;
  padding: 8px 16px;
}
.ls-hero-badge-icon { height: 22px; width: auto; display: block; }
/* CAMBIO 5: font-size con clamp — responsive sin breakpoints */
.ls-hero-titulo-texto {
  display: block;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 700; font-size: clamp(20px, 5vw, 30px); line-height: 1.28;
  letter-spacing: -.015em; color: var(--ls-negro);
}
@media (hover: hover) {
  .ls-hero-link:hover .ls-hero-img { transform: scale(1.02); }
  .ls-hero-link:hover .ls-hero-titulo-texto { color: var(--ls-verde-bosque); }
}

/* =============================================
   EL PULSO
============================================= */
.ls-pulso { padding: 28px 0; border-bottom: .5px solid var(--ls-borde); }
.ls-pulso-grid {
  display: grid; grid-template-columns: repeat(3,1fr);
  max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h);
}
.ls-pulso-card { padding: 0 24px; border-right: .5px solid var(--ls-borde); display: flex; flex-direction: column; gap: 6px; }
.ls-pulso-card:first-child { padding-left: 0; }
.ls-pulso-card:last-child  { border-right: none; padding-right: 0; }
.ls-pulso-cat  { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--ls-verde-bosque); }
.ls-pulso-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; margin: 0; }
.ls-pulso-titulo a { color: var(--ls-negro); text-decoration: none; }
@media (hover: hover) { .ls-pulso-titulo a:hover { color: var(--ls-verde-bosque); } }

/* =============================================
   HOME — BLOQUES CATEGORÍA
============================================= */
.ls-cat-bloque { padding: 36px 0; border-bottom: .5px solid var(--ls-borde); }
.ls-cat-bloque:last-of-type { border-bottom: none; }

@media (hover: hover) {
  .ls-hl0-dest:hover .ls-hl0-img    { transform: scale(1.02); }
  .ls-hl1-card:hover .ls-hl1-img    { transform: scale(1.03); }
  .ls-hl2-dest:hover .ls-hl2-img    { transform: scale(1.02); }
  .ls-hl2-item:hover .ls-hl2-item-img { transform: scale(1.03); }
  .ls-hl3-hero:hover .ls-hl3-img    { transform: scale(1.02); }
  .ls-hl3-card:hover .ls-hl3-card-img { transform: scale(1.03); }
  .ls-hl0-dest:hover .ls-hl0-titulo   { color: var(--ls-verde-bosque); }
  .ls-hl0-item:hover .ls-hl0-item-titulo { color: var(--ls-verde-bosque); }
  .ls-hl1-card:hover .ls-hl1-titulo   { color: var(--ls-verde-bosque); }
  .ls-hl2-dest:hover .ls-hl2-titulo   { color: var(--ls-verde-bosque); }
  .ls-hl2-item:hover .ls-hl2-item-titulo { color: var(--ls-verde-bosque); }
  .ls-hl3-card:hover .ls-hl3-card-titulo { color: var(--ls-verde-bosque); }
}

/* ── Layout 0 ── */
.ls-hl0-wrap  { display: grid; grid-template-columns: 3fr 2fr; max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h); }
.ls-hl0-dest  { display: flex; flex-direction: column; gap: 10px; text-decoration: none; color: inherit; padding-right: 32px; }
.ls-hl0-img-wrap { overflow: hidden; aspect-ratio: 16/9; flex-shrink: 0; }
.ls-hl0-img   { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
.ls-hl0-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.2; letter-spacing: -.02em; color: var(--ls-negro); margin: 0; flex: 1; }
.ls-hl0-excerpt { line-height: 1.7; color: var(--ls-gris); margin: 0; }
.ls-hl0-lista { display: flex; flex-direction: column; border-left: .5px solid var(--ls-borde); padding-left: 28px; }
.ls-hl0-item  { display: flex; flex-direction: column; gap: 5px; text-decoration: none; color: inherit; flex: 1; padding: 14px 0; border-bottom: .5px solid var(--ls-borde); }
.ls-hl0-item:first-child { padding-top: 0; }
.ls-hl0-item:last-child  { border-bottom: none; padding-bottom: 0; }
.ls-hl0-item-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; color: var(--ls-negro); margin: 0; }

/* ── Layout 1 ── */
.ls-hl1-grid  { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h); }
.ls-hl1-card  { display: flex; flex-direction: column; gap: 10px; text-decoration: none; color: inherit; }
.ls-hl1-img-wrap { overflow: hidden; aspect-ratio: 4/3; }
.ls-hl1-img   { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
.ls-hl1-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.25; letter-spacing: -.015em; color: var(--ls-negro); margin: 0; flex: 1; }

/* ── Layout 2 ── */
.ls-hl2-wrap  { display: flex; flex-direction: column; max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h); }
.ls-hl2-dest  { display: grid; grid-template-columns: 2fr 3fr; text-decoration: none; color: inherit; padding-bottom: 24px; border-bottom: .5px solid var(--ls-borde); margin-bottom: 24px; }
.ls-hl2-img-wrap { overflow: hidden; aspect-ratio: 4/3; }
.ls-hl2-img   { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
.ls-hl2-body  { padding-left: 28px; display: flex; flex-direction: column; justify-content: center; gap: 10px; }
.ls-hl2-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.2; letter-spacing: -.02em; color: var(--ls-negro); margin: 0; }
.ls-hl2-excerpt { line-height: 1.7; color: var(--ls-gris); margin: 0; flex: 1; }
.ls-hl2-resto { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.ls-hl2-item  { display: flex; flex-direction: column; gap: 8px; text-decoration: none; color: inherit; }
.ls-hl2-item-img-wrap { overflow: hidden; aspect-ratio: 16/9; }
.ls-hl2-item-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
.ls-hl2-item-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; color: var(--ls-negro); margin: 0; }

/* ── Layout 3 ── */
.ls-hl3-wrap  { max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h); }
.ls-hl3-hero  { display: block; position: relative; overflow: hidden; text-decoration: none; margin-bottom: 20px; aspect-ratio: 21/8; }
.ls-hl3-img-wrap { position: absolute; inset: 0; }
.ls-hl3-img   { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s; }
.ls-hl3-overlay { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.85) 0%, rgba(0,0,0,.55) 50%, rgba(0,0,0,.25) 100%); }
.ls-hl3-content { position: absolute; bottom: 0; left: 0; right: 0; padding: 24px 28px; display: flex; flex-direction: column; gap: 8px; }
.ls-hl3-subcat { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .09em; color: var(--ls-verde-savia); text-shadow: 0 1px 6px rgba(0,0,0,.6); }
.ls-hl3-titulo {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 700; line-height: 1.18; letter-spacing: -.025em; color: #fff; margin: 0;
  text-shadow: 0 1px 8px rgba(0,0,0,.6);
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden;
}
.ls-hl3-excerpt {
  line-height: 1.65; color: rgba(255,255,255,.85); margin: 0; text-shadow: 0 1px 6px rgba(0,0,0,.6);
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
}
.ls-hl3-meta   { color: rgba(255,255,255,.75); margin: 0; text-shadow: 0 1px 6px rgba(0,0,0,.6); }
.ls-hl3-cards  { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.ls-hl3-card   { display: flex; flex-direction: column; gap: 8px; text-decoration: none; color: inherit; }
.ls-hl3-card-img-wrap { overflow: hidden; aspect-ratio: 16/9; }
.ls-hl3-card-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
.ls-hl3-card-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; color: var(--ls-negro); margin: 0; }

/* =============================================
   TEMAS
============================================= */
.ls-temas { padding: 32px 0; border-bottom: .5px solid var(--ls-borde); background: var(--ls-fondo-alt); }
.ls-temas-inner { max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h); }
.ls-temas-grid  { display: flex; flex-wrap: wrap; gap: 8px; }
.ls-tema-pill {
  display: inline-flex; align-items: center;
  padding: 8px 16px; min-height: 44px;
  border: .5px solid var(--ls-borde); color: var(--ls-negro);
  text-decoration: none; font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 600; letter-spacing: .03em; background: #fff;
  transition: background .15s, border-color .15s, color .15s;
}
@media (hover: hover) {
  .ls-tema-pill:hover { background: var(--ls-verde-noche); border-color: var(--ls-verde-noche); color: var(--ls-verde-savia); }
}

/* =============================================
   LO MÁS LEÍDO
============================================= */
.ls-leido { padding: 36px 0; }
.ls-leido-grid { display: grid; grid-template-columns: repeat(4,1fr); max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h); }
.ls-leido-item { display: flex; align-items: flex-start; gap: 14px; padding: 0 24px; border-right: .5px solid var(--ls-borde); }
.ls-leido-item:first-child { padding-left: 0; }
.ls-leido-item:last-child  { border-right: none; padding-right: 0; }
.ls-leido-num   { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; color: var(--ls-borde); line-height: 1; flex-shrink: 0; padding-top: 4px; }
.ls-leido-body  { display: flex; flex-direction: column; gap: 5px; }
.ls-leido-cat   { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--ls-verde-bosque); }
.ls-leido-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.28; letter-spacing: -.01em; margin: 0; }
.ls-leido-titulo a { color: var(--ls-negro); text-decoration: none; }
@media (hover: hover) { .ls-leido-titulo a:hover { color: var(--ls-verde-bosque); } }

/* =============================================
   ARCHIVE — CATEGORÍA PADRE
============================================= */
.ls-cat-hdr { padding: 40px 0 28px; }
.ls-cat-hdr-inner { max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h); }
/* CAMBIO 7: font-size con clamp */
.ls-cat-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: clamp(24px, 5vw, 42px); line-height: 1.1; letter-spacing: -.03em; color: var(--ls-negro); margin: 0 0 10px; }
.ls-cat-desc   { line-height: 1.7; color: var(--ls-gris); max-width: 640px; margin: 0 0 20px; }
.ls-cat-pills  { display: flex; flex-wrap: wrap; gap: 8px; }
.ls-pill {
  display: inline-flex; align-items: center;
  padding: 8px 18px; min-height: 44px;
  border: .5px solid var(--ls-borde); color: var(--ls-negro);
  text-decoration: none; font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 600; letter-spacing: .03em; background: #fff;
  transition: background .15s, border-color .15s, color .15s;
}
@media (hover: hover) {
  .ls-pill:hover { background: var(--ls-verde-noche); border-color: var(--ls-verde-noche); color: var(--ls-verde-savia); }
}
.ls-cat-wrap { max-width: var(--ls-max); margin: 0 auto; padding: 4px var(--ls-pad-h) 48px; }

.ls-hija-bloque { padding: 28px 0; border-top: .5px solid var(--ls-borde); }
.ls-hija-bloque:first-child { border-top: none; }
.ls-hija-hdr { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.ls-hija-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; letter-spacing: -.01em; color: var(--ls-negro); margin: 0; }
.ls-hija-titulo a { color: inherit; text-decoration: none; }
@media (hover: hover) { .ls-hija-titulo a:hover { color: var(--ls-verde-bosque); } }
.ls-hija-mas { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600; color: var(--ls-verde-bosque); text-decoration: none; white-space: nowrap; flex-shrink: 0; min-height: 44px; display: flex; align-items: center; }

.ls-hija-inner { display: grid; grid-template-columns: 3fr 2fr; }
.ls-hija-dest  { display: flex; flex-direction: column; gap: 10px; text-decoration: none; color: inherit; padding-right: 28px; }
.ls-hija-img-wrap { overflow: hidden; aspect-ratio: 16/9; flex-shrink: 0; }
.ls-hija-img   { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
@media (hover: hover) { .ls-hija-dest:hover .ls-hija-img { transform: scale(1.02); } .ls-hija-dest:hover .ls-hija-dest-titulo { color: var(--ls-verde-bosque); } }
.ls-hija-dest-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.2; letter-spacing: -.018em; color: var(--ls-negro); margin: 0; flex: 1; }
.ls-hija-dest-excerpt { line-height: 1.7; color: var(--ls-gris); margin: 0; }
.ls-hija-cards { display: flex; flex-direction: column; border-left: .5px solid var(--ls-borde); padding-left: 24px; }
.ls-hija-card  { display: flex; flex-direction: column; gap: 5px; text-decoration: none; color: inherit; flex: 1; padding: 12px 0; border-bottom: .5px solid var(--ls-borde); }
.ls-hija-card:first-child { padding-top: 0; }
.ls-hija-card:last-child  { border-bottom: none; padding-bottom: 0; }
.ls-hija-card-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; color: var(--ls-negro); margin: 0; }
@media (hover: hover) { .ls-hija-card:hover .ls-hija-card-titulo { color: var(--ls-verde-bosque); } }

/* Archive layouts 1 y 2 */
.ls-arc-grid3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.ls-arc-card3 { display: flex; flex-direction: column; gap: 10px; text-decoration: none; color: inherit; }
.ls-arc-img3-wrap { overflow: hidden; aspect-ratio: 4/3; }
.ls-arc-img3  { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
@media (hover: hover) { .ls-arc-card3:hover .ls-arc-img3 { transform: scale(1.03); } .ls-arc-card3:hover .ls-arc-titulo3 { color: var(--ls-verde-bosque); } }
.ls-arc-titulo3 { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.25; color: var(--ls-negro); margin: 0; }

.ls-arc-l2-wrap  { display: flex; flex-direction: column; }
.ls-arc-l2-dest  { display: grid; grid-template-columns: 2fr 3fr; text-decoration: none; color: inherit; padding-bottom: 20px; border-bottom: .5px solid var(--ls-borde); margin-bottom: 20px; }
.ls-arc-l2-img-wrap { overflow: hidden; aspect-ratio: 4/3; }
.ls-arc-l2-img   { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
@media (hover: hover) { .ls-arc-l2-dest:hover .ls-arc-l2-img { transform: scale(1.02); } .ls-arc-l2-dest:hover .ls-arc-l2-titulo { color: var(--ls-verde-bosque); } }
.ls-arc-l2-body  { padding-left: 24px; display: flex; flex-direction: column; justify-content: center; gap: 8px; }
.ls-arc-l2-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.2; letter-spacing: -.02em; color: var(--ls-negro); margin: 0; }
.ls-arc-l2-excerpt { line-height: 1.7; color: var(--ls-gris); margin: 0; flex: 1; }
.ls-arc-l2-resto { display: grid; grid-template-columns: repeat(3,1fr); gap: 20px; }
.ls-arc-l2-item  { display: flex; flex-direction: column; gap: 8px; text-decoration: none; color: inherit; }
.ls-arc-l2-item-img-wrap { overflow: hidden; aspect-ratio: 16/9; }
.ls-arc-l2-item-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
@media (hover: hover) { .ls-arc-l2-item:hover .ls-arc-l2-item-img { transform: scale(1.03); } .ls-arc-l2-item:hover .ls-arc-l2-item-titulo { color: var(--ls-verde-bosque); } }
.ls-arc-l2-item-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.25; color: var(--ls-negro); margin: 0; }

/* =============================================
   ARCHIVE — SUBCATEGORÍA
============================================= */
.ls-subcat-hdr { padding: 40px 0 28px; }
.ls-subcat-hdr-inner { max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h); }
/* CAMBIO 8: font-size con clamp */
.ls-subcat-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: clamp(22px, 4.5vw, 36px); line-height: 1.1; letter-spacing: -.025em; color: var(--ls-negro); margin: 0 0 10px; }
.ls-subcat-desc { line-height: 1.7; color: var(--ls-gris); max-width: 600px; margin: 0; }
.ls-subcat-wrap { max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h) 48px; }

.ls-arc-dest-wrap { margin-bottom: 36px; }
.ls-arc-dest { display: grid; grid-template-columns: 3fr 2fr; text-decoration: none; color: inherit; }
.ls-arc-dest-img-wrap { overflow: hidden; aspect-ratio: 16/9; }
.ls-arc-dest-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
@media (hover: hover) { .ls-arc-dest:hover .ls-arc-dest-img { transform: scale(1.02); } .ls-arc-dest:hover .ls-arc-dest-titulo { color: var(--ls-verde-bosque); } }
.ls-arc-dest-body { padding: 0 0 0 32px; border-left: .5px solid var(--ls-borde); display: flex; flex-direction: column; justify-content: center; gap: 10px; }
.ls-arc-dest-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.2; letter-spacing: -.02em; color: var(--ls-negro); margin: 0; }
.ls-arc-dest-excerpt { line-height: 1.7; color: var(--ls-gris); margin: 0; flex: 1; }
.ls-arc-dest-meta { color: var(--ls-gris); margin: 0; display: flex; gap: 6px; flex-wrap: wrap; }

.ls-arc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px,1fr)); gap: 40px 28px; }
.ls-arc-card { display: flex; flex-direction: column; gap: 12px; }
.ls-arc-img  { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; transition: transform .35s; }
@media (hover: hover) { .ls-arc-card:hover .ls-arc-img { transform: scale(1.03); } .ls-arc-titulo a:hover { color: var(--ls-verde-bosque); } }
.ls-arc-body { display: flex; flex-direction: column; gap: 8px; flex: 1; }
.ls-arc-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 1.15rem; line-height: 1.3; letter-spacing: -.01em; margin: 0; }
.ls-arc-titulo a { color: var(--ls-negro); text-decoration: none; }
.ls-arc-excerpt { line-height: 1.6; color: var(--ls-gris); margin: 0; flex: 1; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.ls-arc-meta { color: var(--ls-gris); margin: 0; display: flex; gap: 6px; flex-wrap: wrap; }

.navigation.pagination { margin-top: 40px; display: flex; justify-content: center; }
.navigation.pagination .nav-links { display: flex; gap: 4px; flex-wrap: wrap; justify-content: center; }
.navigation.pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 8px; border: .5px solid var(--ls-borde); color: var(--ls-negro); text-decoration: none; font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600; }
.navigation.pagination .page-numbers.current { background: var(--ls-verde-noche); border-color: var(--ls-verde-noche); color: var(--ls-verde-savia); }
@media (hover: hover) { .navigation.pagination .page-numbers:hover:not(.current) { border-color: var(--ls-verde-bosque); color: var(--ls-verde-bosque); } }

/* =============================================
   SINGLE
============================================= */
.ls-single-wrap { max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h) 60px; }

.ls-bc { display: flex; align-items: center; gap: 6px; padding: 20px 0 0; flex-wrap: wrap; }
.ls-bc a { color: var(--ls-gris); text-decoration: none; min-height: 44px; display: inline-flex; align-items: center; }
.ls-bc-sep { color: var(--ls-borde); }

.ls-single-hdr { padding: 20px 0 24px; border-bottom: .5px solid var(--ls-borde); }
.ls-single-cat { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--ls-verde-bosque); display: block; margin-bottom: 14px; }
/* CAMBIO 6: font-size con clamp */
.ls-single-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: clamp(22px, 5vw, 38px); line-height: 1.15; letter-spacing: -.025em; color: var(--ls-negro); margin: 0 0 14px; }
.ls-single-excerpt { line-height: 1.7; color: var(--ls-gris); margin: 0 0 16px; }
.ls-single-meta-row { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-bottom: 6px; }
.ls-single-meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; color: var(--ls-gris); margin-bottom: 0; }
.ls-single-autor { font-weight: 600; color: var(--ls-negro); }
.ls-single-sep { color: var(--ls-borde); }
.ls-single-actualizado { color: var(--ls-gris); font-style: italic; margin: 6px 0 0; }

/* Botón "Añadir en Google" (Preferred Sources) — mismo lenguaje visual
   que las pills de etiquetas/temas del sitio (.ls-pill / .ls-tema-pill):
   borde fino, fondo blanco, texto en mayúsculas con letter-spacing, y el
   mismo hover a verde noche / verde savia. */
.btn-google-news {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 8px 16px; min-height: 40px;
  border: .5px solid var(--ls-borde); color: var(--ls-negro);
  text-decoration: none; font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 600; letter-spacing: .05em; text-transform: uppercase;
  font-size: 12px; background: #fff; flex-shrink: 0;
  transition: background .15s, border-color .15s, color .15s;
}
.btn-google-news-icon { width: 14px; height: 14px; display: block; flex-shrink: 0; }
@media (hover: hover) {
  .btn-google-news:hover { background: var(--ls-verde-noche); border-color: var(--ls-verde-noche); color: var(--ls-verde-savia); }
}
@media (max-width: 640px) {
  .btn-google-news { font-size: 11px; padding: 7px 12px; }
}

.ls-single-img-wrap { margin: 24px 0; }
.ls-single-img { width: 100%; height: auto; display: block; }
.ls-single-caption { color: var(--ls-gris); font-style: italic; margin: 8px 0 0; }

.ls-single-layout { display: grid; grid-template-columns: 1fr 280px; gap: 48px; margin-top: 32px; }

/* Claves */
.ls-claves-block { border: .5px solid var(--ls-borde); border-left: 3px solid var(--ls-verde-savia); margin-bottom: 32px; background: var(--ls-fondo-alt); }
.ls-claves-summary { display: flex; align-items: center; gap: 10px; padding: 14px 18px; cursor: pointer; list-style: none; min-height: 48px; }
.ls-claves-summary::-webkit-details-marker { display: none; }
.ls-claves-label { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--ls-verde-bosque); }
.ls-claves-count { background: var(--ls-verde-noche); color: var(--ls-verde-savia); font-size: 11px; font-weight: 700; padding: 2px 7px; border-radius: 10px; }
.ls-claves-icon { margin-left: auto; color: var(--ls-gris); transition: transform .2s; }
details[open] .ls-claves-icon { transform: rotate(90deg); }
.ls-claves-lista { list-style: none; padding: 0; margin: 0; border-top: .5px solid var(--ls-borde); }
.ls-clave-item { display: flex; align-items: flex-start; gap: 14px; padding: 14px 18px; border-bottom: .5px solid var(--ls-borde); }
.ls-clave-item:last-child { border-bottom: none; }
.ls-clave-num { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; color: var(--ls-verde-savia); min-width: 20px; flex-shrink: 0; padding-top: 1px; }
.ls-clave-txt { line-height: 1.6; color: var(--ls-negro); }

/* Contenido */
.ls-single-content { line-height: 1.8; color: var(--ls-negro); overflow-wrap: break-word; word-break: break-word; }
.ls-single-content p { margin: 0 0 1.4em; }
.ls-single-content h2 { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: clamp(20px, 4.2vw, 28px); line-height: 1.3; margin: 1.8em 0 .6em; letter-spacing: -.01em; }
.ls-single-content h3 { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: clamp(18px, 3.6vw, 22px); line-height: 1.35; margin: 1.4em 0 .5em; }
.ls-single-content h4 { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: clamp(16px, 3.2vw, 19px); line-height: 1.4; margin: 1.3em 0 .5em; }
.ls-single-content blockquote { border-left: 3px solid var(--ls-verde-savia); padding: 12px 20px; margin: 1.6em 0; background: var(--ls-fondo-alt); color: var(--ls-gris); font-style: italic; }
.ls-single-content img { max-width: 100%; height: auto; }
.ls-single-content a { color: var(--ls-verde-bosque); overflow-wrap: break-word; }

/* Listas */
.ls-single-content ul,
.ls-single-content ol { margin: 0 0 1.4em; padding-left: 1.3em; }
.ls-single-content ul { list-style: disc; }
.ls-single-content ol { list-style: decimal; }
.ls-single-content li { margin-bottom: .5em; }
.ls-single-content li::marker { color: var(--ls-verde-bosque); }
.ls-single-content ul ul, .ls-single-content ol ol,
.ls-single-content ul ol, .ls-single-content ol ul { margin-top: .5em; margin-bottom: 0; }

/* Figuras / imagenes con pie de foto dentro del contenido */
.ls-single-content figure { margin: 1.6em 0; }
.ls-single-content figcaption { color: var(--ls-gris); font-style: italic; font-size: .85em; margin-top: 8px; text-align: center; }

/* Tablas: contenedor con scroll horizontal para que no desborden en movil
   (el <table> se envuelve automaticamente via el filtro the_content en functions.php) */
.ls-table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 1.6em 0; }
.ls-single-content table { width: 100%; border-collapse: collapse; }
.ls-single-content table th,
.ls-single-content table td { padding: 10px 14px; border: 1px solid var(--ls-borde); text-align: left; }
.ls-single-content table th { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; background: var(--ls-fondo-alt); }

/* Embeds / videos: que nunca se salgan del ancho disponible */
.ls-single-content iframe,
.ls-single-content .wp-block-embed { max-width: 100%; }
.ls-single-content .wp-block-embed__wrapper { position: relative; }

/* Botones de bloque de Gutenberg dentro del contenido */
.ls-single-content .wp-block-button__link { max-width: 100%; overflow-wrap: break-word; }


/* Tags */
.ls-single-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.ls-single-tag { display: inline-flex; align-items: center; padding: 8px 14px; min-height: 44px; border: .5px solid var(--ls-borde); color: var(--ls-negro); text-decoration: none; font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600; letter-spacing: .03em; }
@media (hover: hover) { .ls-single-tag:hover { background: var(--ls-verde-noche); border-color: var(--ls-verde-noche); color: var(--ls-verde-savia); } }

/* Bio autor */
.ls-autor-bio {
  margin-top: 32px;
  padding: 24px 20px;
  border-top: 1px solid var(--ls-borde);
  border-bottom: 1px solid var(--ls-borde);
}
.ls-autor-cabecera { display: flex; gap: 14px; align-items: center; }
.ls-avatar-img {
  width: 56px; height: 56px; border-radius: 50%; flex-shrink: 0;
  object-fit: cover; object-position: center; display: block;
}
.ls-autor-info { display: flex; flex-direction: column; gap: 2px; }
.ls-autor-label { font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; color: var(--ls-gris); }
.ls-autor-nombre { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 1.05rem; color: var(--ls-negro); }
.ls-autor-desc { line-height: 1.65; color: var(--ls-gris); margin: 14px 0 0; }

/* Widgets sidebar */
.ls-widget { margin-bottom: 32px; }
.ls-widget-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--ls-negro); margin: 0 0 16px; padding-bottom: 10px; border-bottom: 2px solid var(--ls-verde-savia); display: inline-block; font-size: 13px; }
.ls-widget-lista { list-style: none; padding: 0; margin: 0; }
.ls-widget-item { display: flex; flex-direction: row; flex-wrap: nowrap; gap: 12px; align-items: flex-start; padding: 12px 0; border-bottom: .5px solid var(--ls-borde); }
.ls-widget-item--sin-img { align-items: center; }
.ls-widget-item:last-child { border-bottom: none; }
.ls-widget-img-link { flex: 0 0 72px; display: block; width: 72px; height: 54px; overflow: hidden; }
.ls-widget-img { width: 72px; height: 54px; object-fit: cover; display: block; }
.ls-widget-body { display: flex; flex-direction: column; gap: 4px; min-width: 0; flex: 1 1 auto; }
.ls-widget-post-titulo {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 700; font-size: 16px; line-height: 1.3; margin: 0;
  display: -webkit-box; -webkit-line-clamp: 3;
  -webkit-box-orient: vertical; overflow: hidden;
}
.ls-widget-post-titulo a { color: var(--ls-negro); text-decoration: none; }
@media (hover: hover) { .ls-widget-post-titulo a:hover { color: var(--ls-verde-bosque); } }
.ls-widget-meta { color: var(--ls-gris); margin: 0; font-size: 14px; }

/* Relacionados */
.ls-relacionados { border-top: .5px solid var(--ls-borde); padding-top: 36px; margin-top: 48px; }
.ls-rel-label { display: flex; align-items: center; gap: 14px; margin-bottom: 24px; }
.ls-rel-label span { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--ls-negro); border-left: 3px solid var(--ls-verde-savia); padding-left: 12px; }
.ls-rel-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 28px; }
.ls-rel-card { display: flex; flex-direction: column; gap: 8px; text-decoration: none; color: inherit; }
.ls-rel-img-wrap { overflow: hidden; aspect-ratio: 16/9; }
.ls-rel-img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
@media (hover: hover) { .ls-rel-card:hover .ls-rel-img { transform: scale(1.03); } .ls-rel-card:hover .ls-rel-titulo { color: var(--ls-verde-bosque); } }
.ls-rel-cat { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--ls-verde-bosque); }
.ls-rel-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.25; letter-spacing: -.01em; color: var(--ls-negro); margin: 0; }
.ls-rel-meta { color: var(--ls-gris); margin: 0; }

/* GP overrides */
body.home .site-main, body.home .content-area, body.home #primary { width: 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; float: none !important; }

/* Single: nuestro template usa generate_before/after_main_content
   GP no renderiza entry-header dentro de nuestro main */
.ls-single-main-wrap { width: 100%; }

/* Breadcrumb propio */
.ls-bc { font-size: 13px; color: var(--ls-gris); padding: 16px 0 0; flex-wrap: wrap; display: flex; align-items: center; gap: 4px; }
.ls-bc a { color: var(--ls-gris); text-decoration: none; }
@media (hover: hover) { .ls-bc a:hover { color: var(--ls-verde-bosque); } }
.ls-bc-sep { color: var(--ls-borde); font-size: 12px; }

/* H1 de paginas institucionales (contacto, sigue-en-google...) */
.ls-contacto-titulo {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  letter-spacing: -.02em; color: var(--ls-verde-noche, #1a2e22);
  margin: 16px 0 24px; font-size: clamp(24px, 5vw, 36px);
}

/* Compartir */
.ls-share { display: flex; align-items: center; gap: 10px; margin-top: 28px; padding-top: 20px; }
.ls-share-label { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--ls-gris); }
.ls-share-btn { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; color: #fff; text-decoration: none; flex-shrink: 0; }
.ls-share-fb { background: #1877f2; }
.ls-share-wa { background: #25d366; }
.ls-share-tw { background: #000; }
.ls-home-main { width: 100%; max-width: 100%; padding: 0; margin: 0; }
body.home .site-main, body.home .content-area, body.home #primary { width: 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; float: none !important; }

/* Footer */
.ls-footer-copy { color: var(--ls-gris); }
.ls-footer-copy a { color: var(--ls-gris); text-decoration: none; margin: 0 4px; }
@media (hover: hover) { .ls-footer-copy a:hover { color: var(--ls-verde-bosque); } }

/* =============================================
   RESPONSIVE — tablet 960px
============================================= */
@media (max-width: 960px) {
  :root { --ls-pad-h: var(--ls-pad-h-md); }

  .ls-hero-link  { grid-template-columns: 1fr; min-height: auto; }
  .ls-hero-foto  { height: 260px; order: -1; }
  .ls-hero-panel { padding: 28px 24px; }

  .ls-pulso-grid { grid-template-columns: 1fr; }
  .ls-pulso-card { padding: 14px 0; border-right: none; border-bottom: .5px solid var(--ls-borde); }
  .ls-pulso-card:last-child { border-bottom: none; }

  .ls-hl0-wrap  { grid-template-columns: 1fr; padding: 0 var(--ls-pad-h-md); }
  .ls-hl0-dest  { padding-right: 0; padding-bottom: 20px; border-bottom: .5px solid var(--ls-borde); }
  .ls-hl0-lista { border-left: none; padding-left: 0; padding-top: 16px; flex-direction: column; }
  .ls-hl0-item  { padding: 12px 0; border-bottom: .5px solid var(--ls-borde); border-right: none; }
  .ls-hl0-item:last-child { border-bottom: none; }

  .ls-hl1-grid  { grid-template-columns: 1fr 1fr; gap: 20px; padding: 0 var(--ls-pad-h-md); }
  .ls-hl2-wrap, .ls-hl3-wrap { padding: 0 var(--ls-pad-h-md); }
  .ls-hl2-dest  { grid-template-columns: 1fr; }
  .ls-hl2-body  { padding-left: 0; padding-top: 16px; }
  .ls-hl2-resto { grid-template-columns: 1fr 1fr; }
  .ls-hl3-hero  { aspect-ratio: 16/7; }

  .ls-leido-grid { grid-template-columns: 1fr 1fr; row-gap: 24px; }
  .ls-leido-item:nth-child(2) { border-right: none; }
  .ls-leido-item:nth-child(3) { padding-left: 0; }

  .ls-seccion-label, .ls-pulso-grid, .ls-temas-inner { padding-left: var(--ls-pad-h-md); padding-right: var(--ls-pad-h-md); }

  .ls-hija-inner { grid-template-columns: 1fr; }
  .ls-hija-dest  { padding-right: 0; padding-bottom: 20px; border-bottom: .5px solid var(--ls-borde); }
  .ls-hija-cards { border-left: none; padding-left: 0; padding-top: 16px; flex-direction: column; }
  .ls-hija-card  { padding: 12px 0; border-right: none; border-bottom: .5px solid var(--ls-borde); flex: none; }
  .ls-hija-card:last-child { border-bottom: none; }
  .ls-arc-grid3, .ls-arc-l2-wrap { padding: 0 var(--ls-pad-h-md); }
  .ls-arc-l2-dest { grid-template-columns: 1fr; }
  .ls-arc-l2-body { padding-left: 0; padding-top: 16px; }
  .ls-arc-l2-resto { grid-template-columns: 1fr 1fr; }
  .ls-arc-dest  { grid-template-columns: 1fr; }
  .ls-arc-dest-body { padding: 20px 0 0; border-left: none; border-top: .5px solid var(--ls-borde); }

  .ls-single-layout { grid-template-columns: 1fr; gap: 32px; }
  .ls-single-sidebar { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
  .ls-rel-grid { grid-template-columns: 1fr 1fr; }
}

/* =============================================
   RESPONSIVE — móvil 600px
============================================= */
@media (max-width: 600px) {
  :root { --ls-pad-h: var(--ls-pad-h-sm); }

  /* Hero — ficha solapada en móvil */
  .ls-hero-ficha { margin: -16px 0 0; padding: 20px 16px 24px; border-radius: 0; }
  .ls-hero-badge { left: 16px; }
  .ls-hero-titulo { max-width: 100%; }

  .ls-pulso-grid, .ls-seccion-label, .ls-temas-inner { padding-left: var(--ls-pad-h-sm); padding-right: var(--ls-pad-h-sm); }

  .ls-hl0-wrap, .ls-hl1-grid, .ls-hl2-wrap, .ls-hl3-wrap { padding: 0 var(--ls-pad-h-sm); }
  .ls-hl1-grid, .ls-hl2-resto, .ls-hl3-cards { grid-template-columns: 1fr; }
  .ls-hl3-hero { aspect-ratio: 4/3; }
  .ls-hl3-content { padding: 18px 20px; }
  .ls-hl3-titulo { font-size: 19px; }
  .ls-hl3-excerpt { display: none; }

  .ls-leido-grid { grid-template-columns: 1fr; padding: 0 var(--ls-pad-h-sm); }
  .ls-leido-item { padding: 14px 0; border-right: none; border-bottom: .5px solid var(--ls-borde); }
  .ls-leido-item:last-child { border-bottom: none; }

  .ls-arc-grid3, .ls-arc-l2-wrap, .ls-arc-dest, .ls-arc-grid { padding: 0 var(--ls-pad-h-sm); }
  .ls-arc-l2-resto { grid-template-columns: 1fr; }
  .ls-arc-grid { grid-template-columns: 1fr; }
  .ls-arc-grid3 { grid-template-columns: 1fr; }

  .ls-single-wrap { padding: 0 var(--ls-pad-h-sm) 40px; }
  .ls-single-sidebar { grid-template-columns: 1fr; }
  .ls-rel-grid { grid-template-columns: 1fr; }

  /* CAMBIO 10: ajustes de letra en móvil */
  .ls-single-titulo   { letter-spacing: -.015em; }
  .ls-cat-titulo      { letter-spacing: -.02em; }
  .ls-subcat-titulo   { letter-spacing: -.015em; }
  .ls-hero-titulo-texto { letter-spacing: -.01em; line-height: 1.2; }
}
.ls-ap-wrap { max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h) 60px; }

.ls-ap-hdr { display: flex; gap: 24px; align-items: flex-start; padding: 28px 0 32px; border-bottom: .5px solid var(--ls-borde); }
.ls-ap-avatar-img { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; display: block; flex-shrink: 0; }
.ls-ap-hdr-info { min-width: 0; }
.ls-ap-nombre {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  letter-spacing: -.02em; color: var(--ls-negro); margin: 0 0 8px;
}
.ls-ap-bio-corta { color: var(--ls-gris); line-height: 1.65; margin: 0 0 14px; max-width: 640px; }
.ls-ap-meta-row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.ls-ap-contador {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600;
  font-size: 13px; text-transform: uppercase; letter-spacing: .05em; color: var(--ls-verde-bosque);
}
.ls-ap-redes { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 12px; }

.ls-ap-h2 {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  letter-spacing: -.01em; color: var(--ls-negro); margin: 0 0 14px; font-size: 20px;
}
.ls-ap-h2-summary { display: inline; margin: 0; font-size: 16px; }
.ls-ap-h2-inline { margin: 0; flex-shrink: 0; white-space: nowrap; }

.ls-ap-bio-larga { padding: 28px 0; color: var(--ls-negro); }
.ls-ap-bio-larga p { line-height: 1.75; margin: 0 0 14px; max-width: 860px; }
.ls-ap-bio-larga p:last-child { margin-bottom: 0; }
.ls-ap-mas { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600; color: var(--ls-verde-bosque); cursor: pointer; }

.ls-ap-transparencia {
  padding: 16px 20px; margin-bottom: 28px;
  background: var(--ls-fondo-alt); border-left: 3px solid var(--ls-verde-savia);
}
.ls-ap-transparencia summary {
  cursor: pointer; color: var(--ls-negro);
  min-height: 44px; display: flex; align-items: center;
}
.ls-ap-transparencia p { color: var(--ls-gris); line-height: 1.65; margin: 12px 0 0; font-size: 14px; max-width: 720px; }
.ls-ap-transparencia a { color: var(--ls-verde-bosque); }

.ls-ap-cats-section { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; padding-bottom: 32px; }
.ls-ap-cats { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }

.ls-ap-articulos { border-top: .5px solid var(--ls-borde); padding-top: 28px; }
.ls-ap-lista { list-style: none; margin: 0; padding: 0; }
.ls-ap-item { padding: 14px 0; border-bottom: .5px solid var(--ls-borde); }
.ls-ap-item:first-child { border-top: .5px solid var(--ls-borde); }
.ls-ap-item-titulo {
  display: block; color: var(--ls-negro); text-decoration: none; font-weight: 600;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
}
@media (hover: hover) { .ls-ap-item-titulo:hover { color: var(--ls-verde-bosque); } }
.ls-ap-item-meta { color: var(--ls-gris); font-size: 14px; margin: 4px 0 0; }
.ls-ap-sin-articulos { color: var(--ls-gris); padding: 20px 0; }

.ls-ap-paginacion { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 24px; }
.ls-ap-paginacion .page-numbers {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 40px; min-height: 40px; padding: 0 12px;
  border: .5px solid var(--ls-borde); color: var(--ls-negro); text-decoration: none;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600;
}
.ls-ap-paginacion .page-numbers.current { background: var(--ls-verde-noche); border-color: var(--ls-verde-noche); color: var(--ls-verde-savia); }
@media (hover: hover) { .ls-ap-paginacion .page-numbers:hover { border-color: var(--ls-verde-bosque); color: var(--ls-verde-bosque); } }

@media (max-width: 640px) {
  .ls-ap-hdr { flex-direction: column; align-items: flex-start; }
}

/* =============================================
   AUTORES — PAGINA INDICE
============================================= */
.ls-auts-wrap { max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h) 60px; }

.ls-auts-layout { display: grid; grid-template-columns: 320px 1fr; gap: 40px; margin-top: 24px; align-items: start; }

.ls-auts-sidebar {
  background: var(--ls-verde-noche); color: var(--ls-verde-savia);
  padding: 32px 28px; position: sticky; top: 88px;
}
/* CAMBIO 9: font-size con clamp */
.ls-auts-titulo {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  letter-spacing: -.02em; color: #fff; margin: 0 0 10px;
  font-size: clamp(22px, 5vw, 34px);
}
.ls-auts-subtitulo { font-weight: 600; color: var(--ls-verde-savia); margin: 0 0 16px; }
.ls-auts-desc { line-height: 1.7; color: #d7e8dd; margin: 0 0 20px; }
.ls-auts-nota { font-size: 14px; line-height: 1.6; color: #b8d4c3; margin: 0; padding-top: 16px; border-top: .5px solid rgba(255,255,255,.15); }
.ls-auts-nota a { color: var(--ls-verde-savia); font-weight: 600; text-decoration: underline; }

.ls-auts-lista { display: flex; flex-direction: column; gap: 4px; }
.ls-auts-card {
  display: flex; gap: 16px; align-items: flex-start; text-decoration: none; color: inherit;
  padding: 18px 4px; border-bottom: .5px solid var(--ls-borde);
}
.ls-auts-card:first-child { border-top: .5px solid var(--ls-borde); }
.ls-auts-card-avatar { flex-shrink: 0; width: 72px; height: 72px; border-radius: 50%; overflow: hidden; }
.ls-auts-card-avatar img { width: 72px; height: 72px; border-radius: 50%; display: block; object-fit: cover; object-position: center top; }
.ls-auts-card-body { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ls-auts-card-nombre {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  color: var(--ls-negro); font-size: 17px; margin: 0; line-height: 1.3;
}
@media (hover: hover) { .ls-auts-card:hover .ls-auts-card-nombre { color: var(--ls-verde-bosque); } }
.ls-auts-card-bio { color: var(--ls-gris); line-height: 1.6; margin: 0; max-width: 620px; }
.ls-auts-card-contador {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600;
  font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--ls-verde-bosque);
}
.ls-auts-sep-label {
  color: var(--ls-gris); font-size: 13px; text-transform: uppercase; letter-spacing: .08em;
  margin: 20px 0 6px; font-weight: 600;
}
.ls-auts-card-colectivo { border-top: .5px solid var(--ls-borde); }

@media (max-width: 780px) {
  .ls-auts-layout { grid-template-columns: 1fr; }
  .ls-auts-sidebar { position: static; }
}

/* =============================================
   ARCHIVE — ETIQUETA (TAG)
============================================= */
.ls-tag-wrap   { max-width: var(--ls-max); margin: 0 auto; padding: 40px var(--ls-pad-h) 60px; }
.ls-tag-layout { display: grid; grid-template-columns: 300px 1fr; gap: 48px; align-items: start; }

/* Izquierda: reutiliza .ls-cat-titulo / .ls-cat-desc para mantener mismo tamano y formato que categorias */
.ls-tag-side          { position: sticky; top: 88px; }
.ls-tag-side .ls-cat-titulo,
.ls-tag-side .ls-cat-desc { max-width: none; }
.ls-tag-side-widget   { margin-top: 28px; }

/* Buscador con fondo corporativo, antes del bloque 1 */
.ls-tag-buscador      { background: var(--ls-verde-noche); padding: 22px 24px; margin-bottom: 32px; }
.ls-tag-buscador-form { display: flex; gap: 10px; }
.ls-tag-buscador-input {
  flex: 1; min-height: 44px; padding: 0 16px; border: none;
  background: #fff; color: var(--ls-negro);
  font-family: 'Inter', system-ui, sans-serif; font-size: 15px;
}
.ls-tag-buscador-input::placeholder { color: var(--ls-gris); }
.ls-tag-buscador-btn {
  min-height: 44px; padding: 0 22px; border: none; cursor: pointer;
  background: var(--ls-verde-savia); color: var(--ls-verde-noche);
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  letter-spacing: .02em; transition: background .15s;
}
@media (hover: hover) { .ls-tag-buscador-btn:hover { background: #fff; } }

/* Bloque 2: estilo prensa (texto izquierda + imagen a la derecha) */
.ls-tag-vang         { margin-top: 40px; padding-top: 8px; border-top: .5px solid var(--ls-borde); }
.ls-tag-vang-heading {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  letter-spacing: -.01em; color: var(--ls-negro); margin: 0 0 18px;
}
.ls-tag-vang-lista  { display: flex; flex-direction: column; }
.ls-tag-vang-item   {
  display: grid; grid-template-columns: 1fr 200px; gap: 24px;
  padding: 22px 0; border-bottom: .5px solid var(--ls-borde);
  align-items: center;
}
.ls-tag-vang-item:first-child { padding-top: 0; }
.ls-tag-vang-item:last-child  { border-bottom: none; padding-bottom: 0; }
.ls-tag-vang-body    { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.ls-tag-vang-titulo  { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; line-height: 1.3; letter-spacing: -.01em; margin: 0; }
.ls-tag-vang-titulo a { color: var(--ls-negro); text-decoration: none; }
@media (hover: hover) { .ls-tag-vang-titulo a:hover { color: var(--ls-verde-bosque); } }
.ls-tag-vang-excerpt { line-height: 1.65; color: var(--ls-gris); margin: 0; }
.ls-tag-vang-img-wrap { display: block; overflow: hidden; aspect-ratio: 4/3; flex-shrink: 0; }
.ls-tag-vang-img      { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .35s; }
@media (hover: hover) { .ls-tag-vang-item:hover .ls-tag-vang-img { transform: scale(1.04); } }

@media (max-width: 900px) {
  .ls-tag-layout { grid-template-columns: 1fr; gap: 32px; }
  .ls-tag-side   { position: static; }
}
@media (max-width: 600px) {
  .ls-tag-wrap        { padding: 28px var(--ls-pad-h-sm) 48px; }
  .ls-tag-vang-item   { grid-template-columns: 1fr; }
  .ls-tag-vang-img-wrap { order: -1; aspect-ratio: 16/9; }
  .ls-tag-buscador-form { flex-direction: column; }
}


/* =============================================
   404 — COORDENADAS EQUIVOCADAS
============================================= */
.ls-404-wrap { max-width: 900px; margin: 0 auto; padding: 40px var(--ls-pad-h) 72px; }

.ls-404-logo-row { margin-bottom: 48px; }
.ls-404-logo-row img.custom-logo,
.ls-404-logo-row .custom-logo-link img {
  max-height: 64px; width: auto; height: auto; display: block;
}
.ls-404-logo-texto-link { display: inline-block; text-decoration: none; }
.ls-404-logo-texto {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 15px;
  text-transform: uppercase; letter-spacing: .08em; color: var(--ls-verde-noche);
}

.ls-404-hero {
  display: grid; grid-template-columns: 1fr 260px; gap: 48px; align-items: center;
  margin-bottom: 40px;
}
.ls-404-icon { color: var(--ls-negro); width: 100%; height: auto; justify-self: center; }
.ls-404-titulo {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  font-size: clamp(26px, 4vw, 40px); line-height: 1.1; letter-spacing: -.02em;
  color: var(--ls-negro); margin: 0 0 14px;
}
.ls-404-desc { line-height: 1.65; color: var(--ls-gris); max-width: 440px; margin: 0 0 24px; }
.ls-404-coords {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-size: 13px; letter-spacing: .04em;
  color: var(--ls-verde-savia); background: var(--ls-verde-noche);
  display: inline-block; padding: 5px 12px; margin: 0 0 16px;
}
.ls-404-cta-row { display: flex; gap: 12px; flex-wrap: wrap; }
.ls-404-cta {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 14px;
  letter-spacing: .03em; background: var(--ls-verde-noche); color: var(--ls-verde-savia);
  padding: 0 22px; min-height: 46px; display: inline-flex; align-items: center;
  text-decoration: none; transition: background .15s;
}
@media (hover: hover) { .ls-404-cta:hover { background: var(--ls-verde-bosque); } }
.ls-404-cta-secundario {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600; font-size: 14px;
  letter-spacing: .03em; color: var(--ls-negro); background: transparent;
  border: .5px solid var(--ls-borde); padding: 0 22px; min-height: 46px;
  display: inline-flex; align-items: center; text-decoration: none; transition: border-color .15s, color .15s;
}
@media (hover: hover) { .ls-404-cta-secundario:hover { border-color: var(--ls-verde-bosque); color: var(--ls-verde-bosque); } }

.ls-404-buscador { margin-bottom: 28px; }

.ls-404-fila {
  display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
  padding-top: 20px; border-top: .5px solid var(--ls-borde);
}
.ls-404-fila-hashtags { border-top: none; padding-top: 12px; gap: 14px; }
.ls-404-fila-label {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-size: 12px; text-transform: uppercase;
  letter-spacing: .08em; color: var(--ls-gris); flex-shrink: 0;
}
.ls-404-seccion-link {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600; font-size: 14px;
  color: var(--ls-verde-noche); text-decoration: none;
}
@media (hover: hover) { .ls-404-seccion-link:hover { color: var(--ls-verde-bosque); } }
.ls-404-hashtag { font-size: 14px; color: var(--ls-verde-bosque); text-decoration: none; }
@media (hover: hover) { .ls-404-hashtag:hover { color: var(--ls-verde-noche); } }

@media (max-width: 700px) {
  .ls-404-wrap { padding: 32px var(--ls-pad-h-md) 56px; }
  .ls-404-hero { grid-template-columns: 1fr; gap: 24px; }
  .ls-404-icon { max-width: 180px; order: -1; }
}
@media (max-width: 600px) {
  .ls-404-wrap { padding: 28px var(--ls-pad-h-sm) 48px; }
  .ls-404-logo-row { margin-bottom: 32px; }
}

/* ================================================================
   PREMIOS LATITUD SAVIA
   ================================================================ */
.ls-premio-wrap { max-width: var(--ls-max); margin: 0 auto; padding: 0 var(--ls-pad-h) 60px; }

.ls-premio-hdr { padding: 20px 0 28px; border-bottom: .5px solid var(--ls-borde); margin-bottom: 32px; }
.ls-premio-titulo {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  letter-spacing: -.025em; color: var(--ls-negro); margin: 0 0 10px;
  font-size: clamp(24px, 5vw, 40px);
}
.ls-premio-desc, .ls-premio-intro { color: var(--ls-gris); line-height: 1.7; margin: 0 0 14px; }
.ls-premio-estado {
  display: inline-flex; align-items: center; font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-weight: 700; font-size: 13px; letter-spacing: .02em; padding: 6px 14px; border-radius: 999px;
}
.ls-premio-estado-abierta { background: color-mix(in srgb, var(--ls-verde-bosque) 12%, #fff); color: var(--ls-verde-profundo); }
.ls-premio-estado-cerrada { background: var(--ls-fondo-alt); color: var(--ls-gris); }
.ls-premio-estado-proximamente { background: color-mix(in srgb, var(--ls-verde-savia) 25%, #fff); color: var(--ls-verde-noche); }

/* Grid de candidatos dentro de una categoria */
.ls-premio-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 24px; }
.ls-premio-grid-embed { margin-top: 16px; }

.ls-premio-card {
  position: relative; display: flex; flex-direction: column;
  border: .5px solid var(--ls-borde); border-radius: 4px; overflow: hidden; background: #fff;
}
.ls-premio-card-ganador { border-color: var(--ls-verde-savia); box-shadow: 0 0 0 2px var(--ls-verde-savia); }
.ls-premio-badge {
  position: absolute; top: 12px; left: 12px; z-index: 2; background: var(--ls-verde-noche); color: #fff;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 12px;
  padding: 5px 12px 5px 5px; border-radius: 999px; display: inline-flex; align-items: center; gap: 6px;
}
.ls-premio-badge-logo { width: 18px; height: 18px; border-radius: 50%; background: #fff; object-fit: contain; padding: 1px; }
.ls-premio-puesto {
  position: absolute; top: 12px; right: 12px; z-index: 2; background: rgba(17,17,17,.55); color: #fff;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 12px;
  padding: 4px 9px; border-radius: 999px;
}
.ls-premio-img-wrap { aspect-ratio: 4/3; overflow: hidden; background: color-mix(in srgb, var(--ls-verde-bosque) 8%, var(--ls-fondo-alt)); }
.ls-premio-img-wrap img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ls-premio-card-body { padding: 16px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.ls-premio-card-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 17px; line-height: 1.3; margin: 0; color: var(--ls-negro); }
.ls-premio-card-titulo a { color: inherit; text-decoration: none; }
@media (hover: hover) { .ls-premio-card-titulo a:hover { color: var(--ls-verde-bosque); } }
.ls-premio-card-texto { color: var(--ls-gris); font-size: 14px; line-height: 1.6; margin: 0; flex: 1; }
.ls-premio-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 4px; }
.ls-premio-votos-wrap { color: var(--ls-gris); font-size: 13px; }
.ls-premio-votos { font-weight: 700; color: var(--ls-negro); font-size: 15px; }
.ls-premio-votar-btn {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 13px;
  background: var(--ls-verde-bosque); color: #fff; border: none; border-radius: 999px;
  padding: 8px 18px; cursor: pointer; transition: background .2s;
}
.ls-premio-votar-btn:hover { background: var(--ls-verde-profundo); }
.ls-premio-votar-btn:disabled { background: var(--ls-verde-savia); cursor: default; }
.ls-premio-cerrada-pill {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 600; font-size: 12px;
  color: var(--ls-gris); background: var(--ls-fondo-alt); padding: 6px 12px; border-radius: 999px;
}
.ls-premio-vacio { color: var(--ls-gris); padding: 40px 0; text-align: center; }
.ls-premio-volver { margin-top: 40px; }
.ls-premio-volver a { color: var(--ls-verde-bosque); font-weight: 600; text-decoration: none; }

/* Historial de ganadores de ediciones anteriores, en la propia pagina de categoria */
.ls-premio-historial { margin-top: 48px; padding-top: 32px; border-top: .5px solid var(--ls-borde); }
.ls-premio-historial-lista { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.ls-premio-historial-item {
  display: flex; align-items: center; gap: 12px; padding: 10px 14px;
  border: .5px solid var(--ls-borde); border-radius: 4px; background: var(--ls-fondo-alt);
}
.ls-premio-historial-anio {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 13px;
  color: var(--ls-verde-profundo); min-width: 42px;
}
.ls-premio-historial-img { width: 40px; height: 40px; border-radius: 4px; object-fit: cover; flex-shrink: 0; }
.ls-premio-historial-nombre { flex: 1; font-weight: 600; color: var(--ls-negro); display: flex; align-items: center; gap: 8px; }
.ls-premio-historial-logo { width: 18px; height: 18px; border-radius: 50%; flex-shrink: 0; }
.ls-premio-historial-nombre a { color: inherit; text-decoration: none; }
@media (hover: hover) { .ls-premio-historial-nombre a:hover { color: var(--ls-verde-bosque); } }
.ls-premio-historial-votos { color: var(--ls-gris); font-size: 13px; white-space: nowrap; }

/* Secciones de la pagina de aterrizaje /premios/ */
.ls-premio-seccion { margin-bottom: 44px; }
.ls-premio-seccion-titulo {
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 20px;
  color: var(--ls-negro); margin: 0 0 18px; border-left: 3px solid var(--ls-verde-savia); padding-left: 12px;
}
/* Una sola columna: rara vez habra muchas categorias abiertas o
   proximas a la vez, asi que una tarjeta ancha y horizontal aprovecha
   mejor el espacio que una rejilla de tarjetas pequeñas. */
.ls-premio-cats-grid { display: flex; flex-direction: column; gap: 16px; }
.ls-premio-cat-card {
  display: flex; flex-direction: row; align-items: stretch; text-decoration: none; color: inherit;
  border: .5px solid var(--ls-borde); border-radius: 4px; overflow: hidden; background: #fff; transition: border-color .2s;
}
@media (hover: hover) { .ls-premio-cat-card:hover { border-color: var(--ls-verde-bosque); } }
.ls-premio-cat-img-wrap { flex: 0 0 220px; overflow: hidden; background: color-mix(in srgb, var(--ls-verde-bosque) 8%, var(--ls-fondo-alt)); }
.ls-premio-cat-img-wrap img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ls-premio-cat-card-body { flex: 1; padding: 18px 20px; display: flex; flex-direction: column; gap: 8px; justify-content: center; min-width: 0; }
.ls-premio-cat-pill {
  align-self: flex-start; font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700;
  font-size: 11px; text-transform: uppercase; letter-spacing: .06em; padding: 4px 10px; border-radius: 999px;
}
.ls-premio-cat-pill-abierta { background: color-mix(in srgb, var(--ls-verde-bosque) 12%, #fff); color: var(--ls-verde-profundo); }
.ls-premio-cat-pill-cerrada { background: var(--ls-fondo-alt); color: var(--ls-gris); }
.ls-premio-cat-pill-proximamente { background: color-mix(in srgb, var(--ls-verde-savia) 25%, #fff); color: var(--ls-verde-noche); }
.ls-premio-cat-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 18px; margin: 0; color: var(--ls-negro); }
.ls-premio-cat-desc { color: var(--ls-gris); font-size: 14px; line-height: 1.6; margin: 0; }
.ls-premio-cat-ganador { color: var(--ls-verde-profundo); font-weight: 600; font-size: 14px; margin: 0; display: flex; align-items: center; gap: 6px; }
.ls-premio-cat-ganador-logo { width: 16px; height: 16px; border-radius: 50%; flex-shrink: 0; }
.ls-premio-cat-cta { color: var(--ls-verde-bosque); font-weight: 700; font-size: 13px; margin-top: 4px; }

/* Cabecera compacta de /premios/: sin barra ni hueco extra antes del
   desplegable de transparencia. */
.ls-premio-hdr-compact { border-bottom: none; padding-bottom: 0; margin-bottom: 12px; }

/* Bloque de transparencia sobre como se elige la Manzana Prohibida */
.ls-premio-transparencia { margin: 0 0 32px; padding: 16px 20px; border: .5px solid var(--ls-borde); border-radius: 4px; background: var(--ls-fondo-alt); }
.ls-premio-transparencia summary { cursor: pointer; }
.ls-premio-h2-summary { display: inline; font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 15px; color: var(--ls-negro); margin: 0; }
.ls-premio-transparencia p { color: var(--ls-gris); line-height: 1.7; font-size: 14px; margin: 12px 0 0; }
.ls-premio-transparencia a { color: var(--ls-verde-bosque); font-weight: 600; }

/* Insertado dentro de un articulo via [premios_categoria] */
.ls-premio-embed { border: .5px solid var(--ls-borde); border-radius: 4px; padding: 20px; margin: 28px 0; background: var(--ls-fondo-alt); }
.ls-premio-embed-hdr { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 4px; }
.ls-premio-embed-titulo { font-family: 'Plus Jakarta Sans', system-ui, sans-serif; font-weight: 700; font-size: 16px; color: var(--ls-negro); }
.ls-premio-embed-link { color: var(--ls-verde-bosque); font-weight: 700; font-size: 13px; text-decoration: none; }

@media (max-width: 600px) {
  .ls-premio-wrap { padding: 0 var(--ls-pad-h-sm) 40px; }
  .ls-premio-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
  .ls-premio-cat-card { flex-direction: column; }
  .ls-premio-cat-img-wrap { flex: none; aspect-ratio: 16/9; }
}
@media (max-width: 420px) {
  .ls-premio-grid { grid-template-columns: 1fr; }
}
