/* Layouts específicos por página */

/* Variante reversa para editoriales */
.editorial--reverse .editorial__text {
  order: 2;
}

.editorial--reverse .editorial__media {
  order: 1;
}

@media (max-width: 767px) {
  .editorial--reverse .editorial__text,
  .editorial--reverse .editorial__media {
    order: initial;
  }
}

/* Timeline refinado */
.timeline__content {
  position: relative;
  padding: var(--space-5);
  background: var(--surface);
  border: var(--border-subtle);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
}

@media (min-width: 768px) {
  .timeline__item:nth-child(odd) .timeline__content::after {
    content: '';
    position: absolute;
    top: 1rem;
    right: -0.5rem;
    width: 1rem;
    height: 1rem;
    background: var(--surface);
    border-right: var(--border-subtle);
    border-top: var(--border-subtle);
    transform: rotate(45deg);
  }

  .timeline__item:nth-child(even) .timeline__content::after {
    content: '';
    position: absolute;
    top: 1rem;
    left: -0.5rem;
    width: 1rem;
    height: 1rem;
    background: var(--surface);
    border-left: var(--border-subtle);
    border-bottom: var(--border-subtle);
    transform: rotate(45deg);
  }
}

/* Galería alternada */
.gallery--featured {
  grid-template-columns: 1fr;
}

@media (min-width: 768px) {
  .gallery--featured {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .gallery--featured .gallery__item:first-child {
    grid-column: span 2;
    aspect-ratio: 16 / 9;
  }
}

/* Página de historia: composición editorial */
.history-intro {
  display: grid;
  gap: var(--space-8);
  align-items: start;
}

@media (min-width: 1024px) {
  .history-intro {
    grid-template-columns: 1.1fr 0.9fr;
  }
}

.history-intro__text {
  max-width: 55ch;
}

.history-intro__text p + p {
  margin-top: var(--space-4);
}

.history-photo-stack {
  display: grid;
  gap: var(--space-4);
}

.history-photo-stack img {
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  border: var(--border-subtle);
}

/* Página de autocolectivo */
.magazine-hero {
  display: grid;
  gap: var(--space-8);
  align-items: center;
  max-width: 56rem;
  margin-inline: auto;
  text-align: center;
}

@media (min-width: 768px) {
  .magazine-hero {
    grid-template-columns: 1fr 1fr;
    text-align: left;
  }
}

.magazine-hero__cover {
  max-width: 320px;
  margin-inline: auto;
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-lg);
  border: var(--border-subtle);
  transform: rotate(-2deg);
  transition: transform var(--duration-slow) var(--ease-out);
}

.magazine-hero__cover:hover {
  transform: rotate(0deg) scale(1.02);
}

/* Página de legislación */
.legislacion-header {
  text-align: center;
  max-width: 56ch;
  margin-inline: auto;
  margin-bottom: var(--space-10);
}

.legislacion-filter {
  display: flex;
  justify-content: center;
  margin-bottom: var(--space-10);
}

.legislacion-search {
  width: 100%;
  max-width: 32rem;
  padding: var(--space-3) var(--space-5);
  font-family: inherit;
  font-size: var(--text-sm);
  color: var(--text-primary);
  background: var(--surface);
  border: var(--border-subtle);
  border-radius: var(--radius-full);
  box-shadow: var(--shadow-sm);
}

.legislacion-search::placeholder {
  color: var(--text-muted);
}

/* Sección de contacto en footer ampliado */
.site-footer__contact .contact-item a {
  color: inherit;
}

/* Utilidades responsive */
@media (max-width: 767px) {
  .section {
    padding-block: var(--space-10);
  }

  .site-header__logo span {
    display: none;
  }
}
