/* ============================================================
   taller — bloque 14 (Actualizaciones y mantenimiento)
   Anatomy unlike siblings: banda fina a una sola columna, con un
   engranaje grande a la izquierda y capitular en el texto. Ritmo
   distinto: nota de taller, no tarjeta.
   Animación propia: el engranaje GIRA una vez al entrar; el texto
   sube con la capitular.
   ============================================================ */

.taller { padding-block: var(--aire-l); }

.taller__fila {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: clamp(1.4rem, 4vw, 3rem);
  align-items: start;
}
.taller__engranaje {
  font-size: clamp(3rem, 7vw, 5.2rem);
  line-height: 1;
  color: var(--esmeralda);
  filter: drop-shadow(0 0 16px rgba(17,180,110,.4));
}
.taller__cab .folio { margin-bottom: var(--aire-s); }
.taller__titulo {
  font-family: var(--serif);
  font-weight: 500;
  font-size: var(--t-h2);
  line-height: 1.05;
  letter-spacing: -.01em;
  color: var(--marfil);
  margin-bottom: var(--aire-s);
}
.taller__texto {
  color: var(--marfil-medio);
  font-size: var(--t-cuerpo);
  line-height: 1.64;
  max-width: 70ch;
  margin-bottom: var(--aire-m);
}
.taller__texto::first-letter {
  font-family: var(--serif);
  font-size: 3em;
  float: left;
  line-height: .82;
  padding: .05em .14em 0 0;
  color: var(--oro);
  font-weight: 600;
}

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

@media (min-width: 721px) and (prefers-reduced-motion: no-preference) {
  .taller__engranaje { opacity: 0; transform: rotate(-180deg); transition: opacity .5s ease, transform .9s cubic-bezier(.34,1.1,.4,1); }
  .taller__cab, .taller__texto, .taller__cta { opacity: 0; transform: translateY(14px); transition: opacity .6s ease, transform .6s ease; }
  .taller__texto { transition-delay: .12s; }
  .taller__cta { transition-delay: .24s; }
  .taller.en-vista .taller__engranaje { opacity: 1; transform: rotate(0); }
  .taller.en-vista .taller__cab,
  .taller.en-vista .taller__texto,
  .taller.en-vista .taller__cta { opacity: 1; transform: none; }
}
