/* pages.css — Estilos específicos por página */
@import url('./tokens.css');

/* ===== Home: Hero ===== */
.home-hero {
  position: relative;
  height: 100vh;
  min-height: 600px;
  color: var(--umt-paper);
  overflow: hidden;
  display: flex;
  align-items: center;
}

.home-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.home-hero__media::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(14,14,14,0.35), rgba(14,14,14,0.65));
}

.home-hero__media video,
.home-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-hero__inner {
  position: relative;
  z-index: 1;
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 0 var(--space-6);
  width: 100%;
}

.home-hero__overline {
  font-family: var(--font-mono);
  font-size: var(--fs-xs);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--umt-tactical-gold);
  margin-bottom: var(--space-4);
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.home-hero__overline::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  background: var(--umt-tactical-gold);
  clip-path: polygon(0 0, 100% 0, 100% 100%);
}

.home-hero__title {
  font-size: var(--fs-4xl);
  line-height: 0.9;
  letter-spacing: var(--tracking-tight);
  margin-bottom: var(--space-6);
  max-width: 900px;
  font-weight: 900;
  text-shadow: 0 4px 12px rgba(0,0,0,0.5);
}

.home-hero__sub {
  font-size: var(--fs-md);
  line-height: var(--lh-snug);
  max-width: 600px;
  margin-bottom: var(--space-8);
  opacity: 0.9;
  text-shadow: 0 2px 4px rgba(0,0,0,0.4);
}

.home-hero__ctas {
  display: flex;
  gap: var(--space-4);
  flex-wrap: wrap;
}

.home-hero__scroll-hint {
  position: absolute;
  bottom: var(--space-12);
  left: var(--space-12);
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: var(--tracking-wider);
  color: var(--umt-tactical-gold);
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  text-transform: uppercase;
  opacity: 0.8;
  transition: opacity var(--t-fast);
}

.home-hero__scroll-hint::after {
  content: '';
  width: 1px;
  height: 48px;
  background: linear-gradient(to bottom, var(--umt-tactical-gold) 60%, transparent 100%);
  animation: scroll-vector 2.2s infinite ease-in-out;
}

@keyframes scroll-vector {
  0% {
    transform: scaleY(0.1);
    transform-origin: top;
    opacity: 0.3;
  }
  50% {
    transform: scaleY(1);
    transform-origin: top;
    opacity: 1;
  }
  100% {
    transform: scaleY(0.1);
    transform-origin: bottom;
    opacity: 0.3;
  }
}

@media (max-width: 767px) {
  .home-hero__title { font-size: var(--fs-2xl); }
  .home-hero__ctas { flex-direction: column; align-items: stretch; }
  .home-hero__scroll-hint { display: none; }
}

/* ===== Home: Selector "¿Qué necesitas?" ===== */
.home-selector {
  background: var(--umt-card-bg);
  padding: var(--space-24) 0;
  border-bottom: 1px solid var(--umt-grid-line);
}

.home-selector__header {
  text-align: center;
  margin-bottom: var(--space-16);
}

.home-selector__overline {
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--umt-tactical-gold);
  margin-bottom: var(--space-3);
}

.home-selector__title {
  font-size: var(--fs-2xl);
  margin-bottom: var(--space-4);
}

.home-selector__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-5);
}

@media (max-width: 1023px) {
  .home-selector__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
  .home-selector__grid { grid-template-columns: 1fr; }
}

/* ===== Home: Por qué UMT ===== */
.home-why {
  background: var(--umt-section-alt);
  color: var(--umt-paper);
  padding: var(--space-24) 0;
}

.home-why__header {
  margin-bottom: var(--space-16);
  max-width: 720px;
}

.home-why__overline {
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--umt-sand);
  margin-bottom: var(--space-3);
}

.home-why__title { font-size: var(--fs-2xl); }

.home-why__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-12);
}

.home-why__col img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  filter: grayscale(1) contrast(1.1);
  margin-bottom: var(--space-4);
}

.home-why__col h3 {
  font-size: var(--fs-lg);
  margin-bottom: var(--space-2);
}

.home-why__col p {
  font-size: var(--fs-sm);
  line-height: var(--lh-relaxed);
  opacity: 0.90;
  margin-bottom: var(--space-3);
}

.home-why__col a {
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking-wider);
  color: var(--umt-sand);
}

@media (max-width: 767px) {
  .home-why__grid { grid-template-columns: 1fr; gap: var(--space-12); }
}

/* ===== Home: Noticias destacadas ===== */
.home-news {
  background: var(--umt-dark-bg);
  padding: var(--space-24) 0;
  border-top: 1px solid var(--umt-grid-line);
}

.home-news__header {
  display: flex;
  justify-content: space-between;
  align-items: end;
  margin-bottom: var(--space-12);
  gap: var(--space-6);
  flex-wrap: wrap;
}

.home-news__title { font-size: var(--fs-2xl); }

.home-news__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-8);
}

@media (max-width: 767px) {
  .home-news__grid { grid-template-columns: 1fr; }
}

/* ===== Home: Victoria / Testimonio destacado ===== */
.home-victory {
  background: var(--umt-bg-light-olive, #2F3922);
  padding: var(--space-24) 0;
  border-top: 1px solid var(--umt-grid-line);
  border-bottom: 1px solid var(--umt-grid-line);
}

.home-victory__grid {
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  gap: var(--space-12);
  align-items: center;
  max-width: 1100px;
  margin: 0 auto;
}

.home-victory__media img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  filter: grayscale(1) contrast(1.1);
  display: block;
}

.home-victory__quote {
  font-family: var(--font-display);
  font-size: var(--fs-xl);
  line-height: var(--lh-snug);
  text-transform: uppercase;
  letter-spacing: var(--tracking-tight);
  color: var(--umt-paper);
  margin-bottom: var(--space-5);
  border-left: 3px solid var(--umt-tactical-gold);
  padding-left: var(--space-5);
}

.home-victory__author {
  font-family: var(--font-mono);
  font-size: var(--fs-sm);
  color: var(--umt-sand);
  margin-bottom: var(--space-6);
}

.home-victory__more {
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
}

@media (max-width: 767px) {
  .home-victory__grid { grid-template-columns: 1fr; gap: var(--space-8); }
  .home-victory__quote { font-size: var(--fs-lg); }
}

/* ===== Home: Convenios ===== */
.home-conv {
  background: var(--umt-section-alt);
  padding: var(--space-16) 0 var(--space-24);
  border-top: 1px solid var(--umt-grid-line);
}

.home-conv__header {
  max-width: 720px;
  margin-bottom: var(--space-12);
}

.home-conv__title {
  text-align: left;
  font-size: var(--fs-xl);
  margin-bottom: var(--space-3);
  color: var(--umt-paper);
}

.home-conv__title .t-mono.color-gold {
  display: block;
  margin-bottom: var(--space-3);
  font-size: var(--fs-xs);
  letter-spacing: var(--tracking-wider);
}

.home-conv__intro {
  font-family: var(--font-body);
  font-size: var(--fs-sm);
  line-height: var(--lh-relaxed);
  color: var(--umt-sand);
  opacity: 0.85;
}

.home-conv__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-4);
  align-items: stretch;
}

.home-conv__logo {
  display: flex;
  flex-direction: column;
  padding: var(--space-8) var(--space-6) var(--space-6);
  border: 1px solid var(--umt-grid-line);
  position: relative;
  filter: none;
  opacity: 1;
  transition: border-color var(--t-base), background var(--t-base), transform var(--t-base);
  cursor: pointer;
  color: var(--umt-paper);
  text-decoration: none;
}

.home-conv__logo:hover {
  transform: translateY(-2px);
}

/* Corchete táctico en esquina superior izquierda */
.home-conv__logo::before {
  content: '';
  position: absolute;
  top: 10px;
  left: 10px;
  width: 12px;
  height: 12px;
  border-top: 1.5px solid var(--umt-tactical-gold);
  border-left: 1.5px solid var(--umt-tactical-gold);
  opacity: 0.7;
  transition: opacity var(--t-fast);
}

.home-conv__logo:hover::before { opacity: 1; }

.home-conv__logo:hover {
  border-color: var(--umt-tactical-gold);
  background: rgba(255, 196, 0, 0.04);
}

.home-conv__logo:hover::before {
  opacity: 1;
}

.home-conv__cat {
  display: block;
  font-family: var(--font-mono);
  font-size: 10px;
  color: var(--umt-tactical-gold);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wider);
  margin-bottom: var(--space-3);
  opacity: 0.85;
}

.home-conv__name {
  display: block;
  font-family: var(--font-display);
  font-size: var(--fs-lg);
  font-weight: 700;
  color: var(--umt-paper);
  text-transform: uppercase;
  letter-spacing: var(--tracking-tight);
  line-height: var(--lh-tight);
  margin-bottom: var(--space-3);
}

.home-conv__logo:hover .home-conv__name {
  color: var(--umt-white);
}

.home-conv__benefit {
  display: block;
  font-family: var(--font-body);
  font-size: var(--fs-sm);
  color: var(--umt-sand);
  opacity: 0.8;
  line-height: var(--lh-snug);
}

.home-conv__logo:hover .home-conv__benefit {
  opacity: 1;
  color: var(--umt-paper);
}

.home-conv__all {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-10);
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--umt-tactical-gold);
  padding-bottom: var(--space-1);
  border-bottom: 1px solid var(--umt-grid-line-strong);
  transition: border-color var(--t-fast), gap var(--t-fast);
}

.home-conv__all:hover {
  border-bottom-color: var(--umt-tactical-gold);
  gap: var(--space-3);
}

.home-conv__all-arrow {
  font-family: var(--font-mono);
  font-size: var(--fs-md);
}

@media (max-width: 1023px) {
  .home-conv__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
  .home-conv__grid { grid-template-columns: 1fr; }
}


/* ===== Home: CTA final ===== */
.home-cta {
  position: relative;
  background: var(--umt-card-bg);
  color: var(--umt-paper);
  padding: var(--space-32) 0;
  text-align: center;
  overflow: hidden;
  border-top: 1px solid var(--umt-grid-line);
}

.home-cta__bg {
  position: absolute;
  inset: 0;
  opacity: 0.25;
}

.home-cta__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(1);
}

.home-cta__inner {
  position: relative;
  z-index: 1;
}

.home-cta__title {
  font-size: var(--fs-3xl);
  line-height: 0.95;
  margin-bottom: var(--space-8);
}

@media (max-width: 767px) {
  .home-cta__title { font-size: var(--fs-2xl); }
}

/* ===== Asóciate ===== */
.asoc-hero {
  position: relative;
  background: var(--umt-black);
  color: var(--umt-paper);
  padding: calc(var(--nav-height) + var(--space-16)) 0 var(--space-16);
  min-height: 60vh;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.asoc-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.asoc-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(1) brightness(0.5);
}

.asoc-hero__inner { position: relative; z-index: 1; }

.asoc-hero__overline {
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--umt-sand);
  margin-bottom: var(--space-3);
}

.asoc-hero__title { font-size: var(--fs-3xl); max-width: 800px; }

/* Bullets de beneficios */
.asoc-benefits {
  padding: var(--space-24) 0;
  background: var(--umt-card-bg);
  border-bottom: 1px solid var(--umt-grid-line);
}

.asoc-benefits__header {
  max-width: 720px;
  margin-bottom: var(--space-12);
}

.asoc-benefits__overline {
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wider);
  color: var(--umt-paper);
  margin-bottom: var(--space-3);
}

.asoc-benefits__overline .t-mono.color-gold {
  display: block;
  margin-bottom: var(--space-3);
  font-size: var(--fs-xs);
}

.asoc-benefits__title {
  font-size: var(--fs-xl);
  color: var(--umt-paper);
}

.asoc-benefits__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-8);
}

.asoc-benefit__icon {
  width: 56px;
  height: 56px;
  border: 2px solid var(--umt-tactical-gold);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: var(--fs-lg);
  color: var(--umt-tactical-gold);
  margin-bottom: var(--space-4);
  background: rgba(255,255,255,0.02);
}

.asoc-benefit__title { font-size: var(--fs-md); margin-bottom: var(--space-2); }
.asoc-benefit__copy { font-size: var(--fs-sm); line-height: var(--lh-relaxed); opacity: 0.88; }

@media (max-width: 767px) {
  .asoc-benefits__grid { grid-template-columns: 1fr 1fr; gap: var(--space-6); }
}

/* Formulario */
.asoc-form {
  background: var(--umt-section-alt);
  color: var(--umt-paper);
  padding: var(--space-24) 0;
}

.asoc-form__steps {
  display: flex;
  gap: var(--space-2);
  margin-bottom: var(--space-12);
}

.asoc-form__step {
  flex: 1;
  padding: var(--space-3) var(--space-4);
  background: #1F2218;
  border-left: 3px solid transparent;
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wider);
  opacity: 0.5;
}

.asoc-form__step.is-active {
  opacity: 1;
  border-left-color: var(--umt-sand);
  background: #2A2C20;
}

.asoc-form__fieldset {
  max-width: var(--container-narrow);
  margin: 0 auto;
}

.asoc-form__label {
  display: block;
  font-family: var(--font-display);
  font-size: var(--fs-xs);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--umt-sand);
  margin-bottom: var(--space-2);
}

.asoc-form__input,
.asoc-form__select {
  width: 100%;
  padding: var(--space-4);
  background: #1F2218;
  border: 1px solid rgba(255,255,255,0.18);
  color: var(--umt-paper);
  font-family: var(--font-body);
  font-size: var(--fs-base);
  margin-bottom: var(--space-6);
}

.asoc-form__input:focus,
.asoc-form__select:focus {
  outline: 2px solid var(--umt-sand);
  border-color: var(--umt-sand);
}

.asoc-form__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}

@media (max-width: 767px) { .asoc-form__row { grid-template-columns: 1fr; } }

.asoc-form__actions {
  display: flex;
  justify-content: space-between;
  margin-top: var(--space-8);
}

/* Línea de tiempo "qué pasa después" */
.asoc-timeline {
  background: var(--umt-card-bg);
  color: var(--umt-paper);
  padding: var(--space-24) 0;
  border-top: 1px solid var(--umt-grid-line);
  border-bottom: 1px solid var(--umt-grid-line);
}

.asoc-timeline__title { font-size: var(--fs-2xl); margin-bottom: var(--space-12); text-align: center; }

.asoc-timeline__steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--space-6);
  position: relative;
}

.asoc-timeline__steps::before {
  content: '';
  position: absolute;
  top: 24px;
  left: 12.5%;
  right: 12.5%;
  height: 2px;
  background: var(--umt-sand);
  opacity: 0.4;
}

.asoc-timeline__step { text-align: center; position: relative; }

.asoc-timeline__num {
  width: 48px;
  height: 48px;
  margin: 0 auto var(--space-4);
  background: var(--umt-olive-dark);
  border: 2px solid var(--umt-sand);
  color: var(--umt-sand);
  font-family: var(--font-mono);
  font-weight: 700;
  font-size: var(--fs-md);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}

.asoc-timeline__step h4 { font-size: var(--fs-md); margin-bottom: var(--space-2); }
.asoc-timeline__step p { font-size: var(--fs-sm); opacity: 0.85; }

@media (max-width: 767px) {
  .asoc-timeline__steps { grid-template-columns: 1fr; }
  .asoc-timeline__steps::before { display: none; }
}

/* FAQ */
.asoc-faq { padding: var(--space-24) 0; background: var(--umt-dark-bg); }
.asoc-faq__title { font-size: var(--fs-2xl); margin-bottom: var(--space-12); text-align: center; }
.asoc-faq__list { max-width: var(--container-narrow); margin: 0 auto; }

.asoc-faq__item {
  border-top: 1px solid var(--umt-grid-line);
  padding: var(--space-6) 0;
}

.asoc-faq__item:last-child { border-bottom: 1px solid var(--umt-grid-line); }

.asoc-faq__q {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  text-align: left;
  font-family: var(--font-display);
  font-size: var(--fs-md);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wide);
  color: var(--umt-paper);
}

.asoc-faq__a {
  margin-top: var(--space-3);
  font-size: var(--fs-sm);
  line-height: var(--lh-relaxed);
  opacity: 0.88;
  display: none;
}

.asoc-faq__item.is-open .asoc-faq__a { display: block; }
.asoc-faq__item.is-open .asoc-faq__q-icon { transform: rotate(45deg); }

.asoc-faq__q-icon {
  font-size: var(--fs-lg);
  color: var(--umt-tactical-gold);
  transition: transform var(--t-fast);
}

/* ===== Servicios ===== */
.serv-hero {
  background: var(--umt-olive);
  color: var(--umt-paper);
  padding: calc(var(--nav-height) + var(--space-16)) 0 var(--space-16);
}

.serv-hero__overline { color: var(--umt-sand); }

.serv-tabs {
  position: sticky;
  top: var(--nav-height);
  background: var(--umt-black);
  z-index: 50;
  border-bottom: 1px solid var(--umt-line-light);
}

.serv-tabs__list {
  display: flex;
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 0 var(--space-6);
  overflow-x: auto;
}

.serv-tab {
  padding: var(--space-4) var(--space-6);
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  text-transform: uppercase;
  letter-spacing: var(--tracking-wider);
  color: var(--umt-paper);
  opacity: 0.6;
  border-bottom: 3px solid transparent;
  white-space: nowrap;
  cursor: pointer;
}

.serv-tab.is-active { opacity: 1; border-bottom-color: var(--umt-sand); }

.serv-panel { padding: var(--space-24) 0; }
.serv-panel:not(.is-active) { display: none; }

.serv-panel__title { font-size: var(--fs-2xl); margin-bottom: var(--space-3); }
.serv-panel__intro { font-size: var(--fs-md); opacity: 0.85; max-width: 720px; margin-bottom: var(--space-12); }

.serv-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-6);
}

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

.serv-card {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--umt-grid-line);
  padding: var(--space-8);
  color: var(--umt-paper);
  transition: border-color var(--t-base), background var(--t-base);
}

.serv-card:hover {
  background: rgba(255, 199, 44, 0.04);
  border-color: rgba(255, 199, 44, 0.35);
}

.serv-panel.is-dark .serv-card { background: rgba(255,255,255,0.04); border-color: var(--umt-line-light); color: var(--umt-paper); }

.serv-card__title { font-size: var(--fs-lg); margin-bottom: var(--space-3); }
.serv-card__copy { font-size: var(--fs-sm); line-height: var(--lh-relaxed); opacity: 0.88; margin-bottom: var(--space-4); }
.serv-card__meta { font-family: var(--font-mono); font-size: var(--fs-xs); color: var(--umt-tactical-gold); margin-bottom: var(--space-4); letter-spacing: var(--tracking-wider); }
.serv-panel.is-dark .serv-card__meta { color: var(--umt-sand); }

.serv-card__btn {
  font-family: var(--font-display);
  font-size: var(--fs-xs);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--umt-red);
}

/* Testimonio */
.serv-testimony {
  background: var(--umt-section-alt);
  color: var(--umt-paper);
  padding: var(--space-24) 0;
  border-top: 1px solid var(--umt-grid-line);
}

.serv-testimony__grid {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: var(--space-12);
  align-items: center;
}

.serv-testimony__img img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  filter: grayscale(1) contrast(1.1);
}

.serv-testimony__quote {
  font-family: var(--font-display);
  font-size: var(--fs-xl);
  line-height: var(--lh-snug);
  text-transform: uppercase;
  letter-spacing: var(--tracking-tight);
}

.serv-testimony__author {
  margin-top: var(--space-6);
  font-family: var(--font-mono);
  font-size: var(--fs-sm);
  color: var(--umt-sand);
}

@media (max-width: 767px) { .serv-testimony__grid { grid-template-columns: 1fr; } }

/* ===== Noticias listado ===== */
.news-hero {
  background: var(--umt-black);
  color: var(--umt-paper);
  padding: calc(var(--nav-height) + var(--space-12)) 0 var(--space-8);
}

.news-filters {
  display: flex;
  gap: var(--space-3);
  margin-top: var(--space-6);
  flex-wrap: wrap;
}

.news-filter {
  padding: var(--space-2) var(--space-4);
  border: 1px solid var(--umt-line-light);
  font-family: var(--font-display);
  font-size: var(--fs-xs);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--umt-paper);
  cursor: pointer;
  transition: background var(--t-fast);
}

.news-filter.is-active,
.news-filter:hover { background: var(--umt-sand); color: var(--umt-black); border-color: var(--umt-sand); }

.news-list {
  background: var(--umt-section-alt);
  padding: var(--space-16) 0;
}

.news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-8);
}

@media (max-width: 1023px) { .news-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .news-grid { grid-template-columns: 1fr; } }

.news-pagination {
  display: flex;
  justify-content: center;
  gap: var(--space-2);
  margin-top: var(--space-16);
}

.news-pagination span {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-mono);
  border: 1px solid var(--umt-grid-line);
  color: var(--umt-paper);
}

.news-pagination .is-current { background: var(--umt-olive); color: var(--umt-paper); border-color: var(--umt-olive); }

/* ===== Noticia detalle ===== */
.article-hero {
  padding: calc(var(--nav-height) + var(--space-12)) 0 var(--space-8);
  background: var(--umt-card-bg);
  border-bottom: 1px solid var(--umt-grid-line);
}

.article-hero__inner {
  max-width: var(--container-narrow);
  margin: 0 auto;
  padding: 0 var(--space-6);
}

.article-hero__cat {
  font-family: var(--font-display);
  font-size: var(--fs-sm);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--umt-tactical-gold);
}

.article-hero__title {
  font-size: var(--fs-3xl);
  line-height: 0.95;
  margin: var(--space-3) 0 var(--space-4);
}

.article-hero__meta {
  font-family: var(--font-mono);
  font-size: var(--fs-sm);
  color: var(--umt-sand);
  opacity: 0.85;
}

.article-img {
  margin: var(--space-8) 0;
}

.article-img img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }

.article-body {
  max-width: var(--container-narrow);
  margin: 0 auto;
  padding: 0 var(--space-6) var(--space-24);
  font-size: var(--fs-md);
  line-height: var(--lh-relaxed);
}

.article-body p { margin-bottom: var(--space-6); }
.article-body h2 { font-size: var(--fs-xl); margin: var(--space-12) 0 var(--space-4); }
.article-body blockquote {
  border-left: 4px solid var(--umt-red);
  padding-left: var(--space-6);
  margin: var(--space-8) 0;
  font-family: var(--font-display);
  font-size: var(--fs-lg);
  text-transform: uppercase;
  line-height: var(--lh-snug);
}

/* ===== 404 ===== */
.page-404 {
  min-height: 100vh;
  background: var(--umt-black);
  color: var(--umt-paper);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.page-404__num {
  font-family: var(--font-display);
  font-size: 12rem;
  line-height: 1;
  color: var(--umt-sand);
}

.page-404__title { font-size: var(--fs-2xl); margin: var(--space-4) 0; }
.page-404__copy { opacity: 0.7; margin-bottom: var(--space-8); }
