/* ============================================================
   KIOTO — SECCIONES  |  Limpio, sin duplicados
============================================================ */

/* ── HERO ─────────────────────────────────────────────────── */
#hero {
  position: relative;
  min-height: 100svh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--bg-base);
}

.hero-content {
  position: relative; z-index: 2;
  width: 100%; max-width: var(--max-w);
  margin-inline: auto;
  padding-inline: var(--pad-page);
  padding-block: calc(var(--nav-h) + 4rem) 4rem;
  min-height: 100svh;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: var(--sp-xl);
}
.hero-content::before {
  content: '';
  position: absolute;
  left: calc(var(--pad-page) - 1.25rem);
  top: 25%; bottom: 25%;
  width: 1px;
  background: linear-gradient(180deg, transparent, var(--gold) 30%, var(--gold) 70%, transparent);
  opacity: 0.3;
  pointer-events: none;
}

.hero-text { max-width: 600px; padding-left: 1.25rem; }

/* Columna derecha — carrusel visible */
.hero-carousel-col {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.hero-carousel-inner {
  position: relative;
  width: 100%;
  max-width: 420px;
  aspect-ratio: 3 / 4;
  overflow: hidden;
}
.hero-carousel-inner .hero-slide {
  position: absolute; inset: 0;
  opacity: 0;
  transition: opacity 1.4s var(--ease);
}
.hero-carousel-inner .hero-slide.active { opacity: 1; }
.hero-carousel-inner .hero-slide img {
  width: 100%; height: 100%;
  object-fit: contain;
  object-position: center bottom;
}

.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 0.62rem; font-weight: 500;
  letter-spacing: 0.28em; text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 1.75rem;
}
.hero-eyebrow::before { content: ''; display: block; width: 32px; height: 1px; background: var(--gold); }

.hero-title {
  font-family: var(--font-display);
  font-size: clamp(3rem, 6.5vw, 5.8rem);
  font-weight: 600; line-height: 0.92;
  letter-spacing: -0.02em; color: var(--white);
  margin-bottom: 1.75rem;
}
.hero-title em { font-style: italic; font-weight: 300; color: var(--gold-light); display: block; margin-top: 0.2em; }

.hero-sub {
  font-size: clamp(0.875rem, 1.5vw, 1rem);
  font-weight: 300; color: var(--white-55);
  line-height: 1.85; max-width: 420px;
  margin-bottom: 2.5rem;
}

.hero-actions { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; margin-bottom: 3.5rem; }

.hero-stats {
  display: flex;
  padding-top: 2rem;
  border-top: 1px solid var(--white-12);
  flex-wrap: wrap;
  gap: 0;
}
.hero-stat {
  padding-right: 2rem; margin-right: 2rem;
  border-right: 1px solid var(--white-12);
}
.hero-stat:last-child { border-right: none; padding-right: 0; margin-right: 0; }

/* Stats — todo DM Sans, limpio */
.hero-stat-num {
  font-family: var(--font-body);
  font-size: clamp(1.75rem, 3vw, 2.4rem);
  font-weight: 300; color: var(--white);
  line-height: 1; letter-spacing: -0.02em;
}
.stat-n  { color: var(--white); }
.stat-s  { color: var(--gold); font-size: 1rem; vertical-align: super; }
/* ISO — mismo tamaño que los números, DM Sans, sin serif */
.stat-iso-text {
  font-family: var(--font-body);
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  font-weight: 300;
  letter-spacing: 0.1em;
  color: var(--white-55);
}
.hero-stat-label {
  font-size: 0.58rem; font-weight: 500;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--white-30); margin-top: 0.5rem;
}

.hero-indicators { position: absolute; bottom: 2.5rem; left: var(--pad-page); z-index: 3; display: flex; gap: 6px; }
.hero-dot { width: 18px; height: 2px; background: var(--white-30); border: none; cursor: pointer; transition: background var(--t), width var(--t); padding: 5px 0; background-clip: content-box; }
.hero-dot.active { background: var(--gold); width: 40px; }


/* ── SECTION TAG ───────────────────────────────────────────── */
.section-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  font-family: var(--font-body);
  font-size: 0.6rem; font-weight: 600;
  letter-spacing: 0.28em; text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 0.875rem;
}
.section-tag::before {
  content: '';
  display: block;
  width: 20px; height: 1px;
  background: var(--gold); flex-shrink: 0;
}

/* Párrafo introductorio de sección — reemplaza inline styles */
.section-lead {
  font-size: 0.875rem;
  font-weight: 300;
  color: var(--white-55);
  line-height: 1.9;
  margin-bottom: var(--sp-md);
}

/* Encabezado de sección con separación inferior */
.section-header {
  margin-bottom: var(--sp-lg);
}

/* Divisor vertical fino para la barra de certificaciones */
.iso-divider {
  width: 1px;
  height: 28px;
  background: rgba(201,146,42,0.15);
  flex-shrink: 0;
}


/* ── SERVICIOS ─────────────────────────────────────────────── */
#servicios { background: var(--bg-alt); }

.servicios-header { margin-bottom: var(--sp-lg); }

/* 4 columnas en desktop — tarjeta 3:4 para que quepa texto en hover */
.servicios-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px;
  background: rgba(201,146,42,0.08);
}
.servicio-card {
  position: relative;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: var(--bg-card);
  cursor: pointer;
}
.servicio-card-img {
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform 0.8s var(--ease);
  filter: brightness(0.82) saturate(0.85);
}
.servicio-card:hover .servicio-card-img { transform: scale(1.05); filter: brightness(0.68) saturate(0.78); }
.servicio-card-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(0deg, rgba(12,12,12,0.97) 0%, rgba(12,12,12,0.5) 50%, transparent 100%);
}
.servicio-card::after {
  content: '';
  position: absolute; bottom: 0; left: 0;
  width: 0; height: 2px;
  background: var(--gold);
  transition: width 0.5s var(--ease); z-index: 3;
}
.servicio-card:hover::after { width: 100%; }
.servicio-card-body {
  position: absolute; bottom: 0; left: 0; right: 0;
  padding: 1rem 1.125rem 1.25rem;
  z-index: 2;
}
.servicio-card-num {
  font-size: 0.55rem; font-weight: 500;
  letter-spacing: 0.25em; text-transform: uppercase;
  color: var(--gold); opacity: 0.8; margin-bottom: 0.5rem;
}
.servicio-card-title {
  font-family: var(--font-display);
  font-size: clamp(1rem, 1.4vw, 1.2rem);
  font-weight: 500; color: var(--white); line-height: 1.1;
}
.servicio-card-desc {
  font-size: 0.72rem; font-weight: 300;
  color: var(--white-55); line-height: 1.6;
  max-height: 0; overflow: hidden;
  opacity: 0; margin-top: 0;
  transition: max-height 0.5s var(--ease), opacity 0.4s var(--ease), margin-top 0.3s;
}
.servicio-card:hover .servicio-card-desc { max-height: 200px; opacity: 1; margin-top: 0.625rem; }
.servicio-card-cta {
  display: inline-flex; align-items: center; gap: 0.375rem;
  font-size: 0.58rem; font-weight: 600;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--gold);
  max-height: 0; overflow: hidden; opacity: 0;
  transition: max-height 0.4s var(--ease), opacity 0.4s var(--ease), margin-top 0.3s;
}
.servicio-card-cta::after { content: '→'; }
.servicio-card:hover .servicio-card-cta { max-height: 32px; opacity: 1; margin-top: 0.75rem; }

.servicios-footer {
  display: flex; align-items: center; justify-content: center;
  flex-wrap: wrap; gap: 2rem;
  padding-block: 1.5rem;
  border-top: 1px solid rgba(201,146,42,0.08);
  background: var(--bg-alt);
}
.servicios-iso {
  display: flex; align-items: center; gap: 0.75rem;
  font-size: 0.6rem; font-weight: 500;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--white-30);
}
.servicios-iso-badge {
  width: 42px; height: 42px;
  border: 1px solid var(--gold-border); border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 0.5rem; font-weight: 700; text-align: center; line-height: 1.3;
  color: var(--gold); flex-shrink: 0;
}


/* ── UBICACIÓN ─────────────────────────────────────────────── */
#ubicacion { background: var(--bg-base); }

.ubicacion-sedes-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-sm);
  margin-bottom: var(--sp-md);
}
.ubicacion-sede {
  padding: 1.25rem 1.5rem;
  background: var(--bg-card);
  border: 1px solid var(--gold-border);
  transition: border-color var(--t);
}
.ubicacion-sede:hover { border-color: var(--gold); }
.sede-label {
  font-size: 0.55rem; font-weight: 600;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--gold); margin-bottom: 0.25rem;
}
.sede-name {
  font-family: var(--font-display);
  font-size: 1rem; font-weight: 500;
  color: var(--white); margin-bottom: 0.5rem;
}
.sede-detail {
  font-size: 0.8rem; font-weight: 300;
  color: var(--white-55); line-height: 1.75;
}
.sede-detail a { color: var(--gold-light); transition: color var(--t); }
.sede-detail a:hover { color: var(--white); }

/* 2 mapas — uno por ciudad */
.mapas-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-sm);
  margin-top: var(--sp-md);
}
.mapa-label {
  font-size: 0.55rem; font-weight: 600;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--gold); margin-bottom: 0.5rem;
}
.mapa-wrap {
  height: 240px;
  overflow: hidden;
  border: 1px solid var(--white-12);
  background: var(--bg-card);
}
.mapa-wrap iframe {
  width: 100%; height: 100%; border: none;
  filter: invert(93%) hue-rotate(180deg) brightness(0.87) contrast(0.9);
}


/* ── ANTICORRUPCIÓN ────────────────────────────────────────── */
#anticorrupcion { background: var(--bg-alt); }

.anti-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: clamp(2rem, 5vw, 4rem);
  margin-top: var(--sp-lg); align-items: start;
}
.anti-channels { display: flex; flex-direction: column; gap: 1px; background: var(--white-12); }
.anti-channel {
  display: flex; align-items: flex-start; gap: 1rem;
  padding: 0.875rem 1.25rem; background: var(--bg-base);
}
.anti-channel-icon { font-size: 0.875rem; flex-shrink: 0; margin-top: 2px; }
.anti-channel-label {
  font-size: 0.55rem; font-weight: 600;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--gold); margin-bottom: 2px;
}
.anti-channel-value { font-size: 0.82rem; font-weight: 300; color: var(--white-80); }
.anti-channel-value a { color: var(--white-80); transition: color var(--t); }
.anti-channel-value a:hover { color: var(--white); }

.anti-docs { display: flex; flex-direction: column; gap: 0.5rem; margin-top: var(--sp-md); max-width: 680px; }
.doc-item {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0.875rem 1.25rem;
  border: 1px solid var(--gold-border);
  background: transparent;
  transition: border-color var(--t), background var(--t);
  gap: 0.75rem;
  text-decoration: none;
}
.doc-item:hover {
  border-color: var(--gold);
  background: var(--gold-dim);
}
.doc-icon { font-size: 0.875rem; flex-shrink: 0; }
.doc-name { font-size: 0.82rem; font-weight: 300; color: var(--white-80); flex: 1; }
.doc-download { font-size: 0.62rem; font-weight: 600; letter-spacing: 0.1em; color: var(--gold); flex-shrink: 0; }


/* ── CONTACTO ──────────────────────────────────────────────── */
#contacto { background: var(--bg-alt); }

.contacto-grid {
  display: grid; grid-template-columns: 1fr 1.2fr;
  gap: clamp(2rem, 5vw, 4rem);
  margin-top: var(--sp-lg); align-items: center;
}

.contacto-items { display: flex; flex-direction: column; }
.contacto-item {
  display: flex; align-items: flex-start; gap: 1rem;
  padding-block: 0.875rem;
  border-bottom: 1px solid var(--white-12);
}
.contacto-item:last-child { border-bottom: none; }
.contacto-icon { font-size: 0.875rem; flex-shrink: 0; margin-top: 2px; }
.contacto-item-label {
  font-size: 0.55rem; font-weight: 600;
  letter-spacing: 0.18em; text-transform: uppercase;
  color: var(--gold); margin-bottom: 2px;
}
.contacto-item-value { font-size: 0.82rem; font-weight: 300; color: var(--white-80); }
.contacto-item-value a { color: var(--white-80); transition: color var(--t); }
.contacto-item-value a:hover { color: var(--white); }

.contacto-nota {
  font-size: 0.82rem; font-weight: 300;
  color: var(--white-55); line-height: 1.8;
  margin-top: var(--sp-md);
  padding-top: var(--sp-md);
  border-top: 1px solid var(--white-12);
}
.contacto-nota a { color: var(--gold-light); transition: color var(--t); }
.contacto-nota a:hover { color: var(--white); }

.form-card {
  background: var(--bg-card);
  border: 1px solid var(--gold-border);
  padding: clamp(1.25rem, 3vw, 2rem);
}
.form-title {
  font-family: var(--font-display);
  font-size: 1.2rem; font-weight: 500;
  color: var(--white); margin-bottom: 0.25rem;
}
.form-sub {
  font-size: 0.78rem; font-weight: 300;
  color: var(--white-55); line-height: 1.6; margin-bottom: 1.25rem;
}
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; }
.form-group { display: flex; flex-direction: column; gap: 4px; margin-bottom: 0.75rem; }
.form-label {
  font-size: 0.58rem; font-weight: 500;
  letter-spacing: 0.16em; text-transform: uppercase; color: var(--white-55);
}
.form-input, .form-select, .form-textarea {
  width: 100%; background: var(--bg-base);
  border: 1px solid var(--white-12); color: var(--white);
  font-family: var(--font-body); font-size: 0.845rem; font-weight: 300;
  padding: 0.625rem 0.875rem; border-radius: 0;
  transition: border-color var(--t); -webkit-appearance: none;
}
.form-input:focus, .form-select:focus, .form-textarea:focus { outline: none; border-color: var(--gold); }
.form-input::placeholder, .form-textarea::placeholder { color: var(--white-30); }
.form-select option { background: var(--bg-base); color: var(--white); }
.form-textarea { resize: vertical; min-height: 80px; }
.form-btn {
  width: 100%; padding: 0.825rem;
  background: var(--gold); color: #0C0C0C;
  font-family: var(--font-body); font-size: 0.64rem; font-weight: 700;
  letter-spacing: 0.22em; text-transform: uppercase;
  border: none; cursor: pointer; transition: background var(--t);
  margin-top: 0.5rem; border-radius: 0;
}
.form-btn:hover { background: var(--gold-light); }
.form-feedback {
  margin-top: 0.75rem; font-size: 0.78rem; font-weight: 300;
  display: none; padding: 0.5rem 0.875rem;
}
.form-feedback.success { display: block; color: #7fcf93; background: rgba(127,207,147,0.08); border-left: 2px solid #7fcf93; }
.form-feedback.error   { display: block; color: #e88080; background: rgba(232,128,128,0.08); border-left: 2px solid #e88080; }


/* ── LICENCIA ───────────────────────────────────────────────── */
.licencia-card {
  display: flex; align-items: flex-start; gap: 1.5rem;
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid var(--gold-border); background: var(--bg-card);
}
.licencia-badge { font-size: 1.75rem; flex-shrink: 0; }
.licencia-entidad { font-size: 0.845rem; font-weight: 300; color: var(--white-55); line-height: 1.7; margin-bottom: 1rem; }
.licencia-datos { display: flex; flex-wrap: wrap; gap: 1px; background: var(--white-12); margin-bottom: 1rem; }
.licencia-dato { padding: 0.75rem 1rem; background: var(--bg-card); flex: 1; min-width: 140px; }
.licencia-dato-label { font-size: 0.55rem; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--gold); margin-bottom: 3px; }
.licencia-dato-value { font-size: 0.875rem; font-weight: 500; color: var(--white); }


/* ── TRANSPARENCIA ─────────────────────────────────────────── */
.transp-section--alt  { background: var(--bg-alt); }
.transp-section--base { background: var(--bg-base); }

.transp-doc-label {
  font-size: 0.55rem; font-weight: 600;
  letter-spacing: 0.2em; text-transform: uppercase;
  color: var(--white-30); margin-bottom: var(--sp-sm);
  margin-top: var(--sp-lg);
}

.transp-direccion {
  font-size: 0.82rem; font-weight: 300;
  color: var(--white-55); line-height: 1.8;
  margin-top: var(--sp-lg);
  padding-top: var(--sp-md);
  border-top: 1px solid var(--white-12);
}

/* Licencia card — ancho limitado en transparencia */
.transp-section--alt .licencia-card { max-width: 680px; }


/* ── PAGE HERO — páginas internas ─────────────────────────── */
.page-hero {
  padding-top: calc(var(--nav-h) + 2.5rem);
  padding-bottom: 2rem;
  padding-inline: var(--pad-page);
  max-width: var(--max-w);
  margin-inline: auto;
}
.page-hero-title {
  font-family: var(--font-display);
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 600; line-height: 1.0;
  color: var(--white); margin-block: 0.875rem 0.5rem;
}


/* ── RESPONSIVE ────────────────────────────────────────────── */
@media (max-width: 1024px) {
  .servicios-grid       { grid-template-columns: repeat(2, 1fr); }
  .servicio-card        { aspect-ratio: 4 / 3; }
  .anti-grid            { grid-template-columns: 1fr; }
  .contacto-grid        { grid-template-columns: 1fr; }
  .hero-content         { grid-template-columns: 1fr; }
  .hero-carousel-col    { display: none; }
}
@media (max-width: 768px) {
  .hero-content::before { display: none; }
  .hero-title           { font-size: clamp(2.6rem, 9vw, 3.8rem); }
  .hero-stat            { padding-right: 1.25rem; margin-right: 1.25rem; }
  .ubicacion-sedes-grid { grid-template-columns: 1fr; }
  .mapas-grid           { grid-template-columns: 1fr; }
  .form-row             { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .servicios-grid { grid-template-columns: 1fr; }
  .servicio-card  { aspect-ratio: 3 / 2; }
  .hero-stats     { flex-direction: column; gap: 1.25rem; }
  .hero-stat      { border-right: none; padding: 0; margin: 0; }
  .mapa-wrap      { height: 200px; }
}


/* ── NOSOTROS ──────────────────────────────────────────────── */
.nosotros-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: clamp(2rem, 5vw, 4rem);
  align-items: start;
}

.nosotros-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: var(--white-12);
}
.nosotros-stat {
  padding: 1.5rem;
  background: var(--bg-alt);
  text-align: center;
}
.nosotros-stat-num {
  font-family: var(--font-body);
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 300;
  color: var(--white);
  line-height: 1;
  margin-bottom: 0.5rem;
}
.nosotros-stat-sup {
  color: var(--gold);
  font-size: 1rem;
  vertical-align: super;
}
.nosotros-stat-label {
  font-size: 0.55rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--white-30);
}

.mv-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--sp-md);
}
.mv-card {
  padding: clamp(1.25rem, 3vw, 2rem);
  background: var(--bg-card);
  border: 1px solid var(--gold-border);
}
.mv-label {
  font-size: 0.55rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: var(--sp-sm);
}
.mv-text {
  font-size: 0.875rem;
  font-weight: 300;
  color: var(--white-80);
  line-height: 1.85;
}

.valores-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-md);
  margin-top: var(--sp-lg);
}
.valor-item {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.25rem;
  background: var(--bg-card);
  border: 1px solid var(--white-12);
  transition: border-color var(--t);
}
.valor-item:hover { border-color: var(--gold-border); }
.valor-icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--gold-dim);
  border-radius: 2px;
}
.valor-name {
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 500;
  color: var(--white);
  margin-bottom: 0.375rem;
}
.valor-desc {
  font-size: 0.78rem;
  font-weight: 300;
  color: var(--white-55);
  line-height: 1.7;
}

@media (max-width: 1024px) {
  .nosotros-grid { grid-template-columns: 1fr; }
  .valores-grid  { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .mv-grid      { grid-template-columns: 1fr; }
  .valores-grid { grid-template-columns: 1fr; }
}


/* ── BLOG ──────────────────────────────────────────────────── */
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-md);
}
.blog-card {
  display: flex;
  flex-direction: column;
  background: var(--bg-card);
  border: 1px solid var(--white-12);
  text-decoration: none;
  transition: border-color var(--t), transform var(--t);
}
.blog-card:hover { border-color: var(--gold-border); transform: translateY(-2px); }
.blog-card--placeholder { cursor: default; }
.blog-card--placeholder:hover { transform: none; border-color: var(--white-12); }

.blog-card-img {
  height: 160px;
  background: var(--bg-surface);
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid var(--white-12);
}
.blog-card-img--revista { background: var(--gold-dim); }

.blog-card-body {
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  flex: 1;
}
.blog-card-cat {
  font-size: 0.55rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
}
.blog-card-title {
  font-family: var(--font-display);
  font-size: 1.1rem;
  font-weight: 500;
  color: var(--white);
  line-height: 1.2;
}
.blog-card--placeholder .blog-card-title { color: var(--white-55); }
.blog-card-excerpt {
  font-size: 0.8rem;
  font-weight: 300;
  color: var(--white-55);
  line-height: 1.7;
  flex: 1;
}
.blog-card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 0.5rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--white-12);
}
.blog-card-meta time {
  font-size: 0.65rem;
  font-weight: 300;
  color: var(--white-30);
  letter-spacing: 0.1em;
}
.blog-card-pdf {
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: var(--gold);
}

@media (max-width: 768px) {
  .blog-grid { grid-template-columns: 1fr; }
}


/* ── FIX ISO — mismo color que los números del hero ───────── */
.stat-iso-text { color: var(--white); }
