/* Copia sin cambios de activos.crecelatam/design-system-base-v3/firma.css */
/* Design System Base v3 · firma.css — reglas de lectura (Firma TSF) y Sello TSF.
   Se carga en las landings DESPUÉS de tokens.css. */

/* ==================================================================
   FIRMA TSF · reglas de lectura que heredan todas las landings
   ================================================================== */

/* 1. Control de bandera (Design System TSF 2.7). Sin huérfanas.
   Todo texto de hasta ~6 líneas (títulos, bajadas, párrafos, textos de tarjeta,
   citas, notas bajo un botón) reparte sus líneas con largo parejo: la última
   nunca queda mucho más corta que las demás. Solo los párrafos largos de cuerpo
   (más de 6 líneas, clase .largo) usan "pretty": sin una palabra sola al final. */
h1, h2, h3, h4, p, li, dd, dt, blockquote, figcaption, label { text-wrap: balance; }
p.largo, .largo p { text-wrap: pretty; }
@media (max-width: 640px){ br.br-desktop{ display:none; } }  /* único <br> permitido, solo en titulares */

/* 2. Medida de lectura: el texto nunca ocupa más de --medida. */
.medida { max-width: var(--medida); }

/* 3. Ritmo: los párrafos se separan con la misma distancia siempre. */
p + p { margin-top: var(--separacion-parrafo); }

/* 4. Movimiento respetuoso. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* ==================================================================
   SELLO TSF · bajo el footer, esquina inferior derecha
   (Markup en la Biblioteca: footer-01 · sello-tsf-01)
   ================================================================== */
.sello-tsf{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:6px 8px;
  font-family: var(--fuente-mono); font-size: .72rem; line-height: 1.5; letter-spacing: .02em;
  color: var(--sobre-oscuro-2); text-align: right;
}
.sello-tsf a{ color: inherit; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.sello-tsf a:hover{ color: var(--blanco); }
.sello-tsf .sello-logo{ display:inline-flex; align-items:center; text-decoration:none; }
.sello-tsf .sello-logo img{ height: 26px; width: auto; display:block; opacity:.85; transition: opacity .15s; }
.sello-tsf .sello-logo:hover img{ opacity:1; }
.sello-tsf.claro{ color: var(--gris-600); }
.sello-tsf.claro a:hover{ color: var(--negro); }
@media (max-width: 640px){ .sello-tsf{ justify-content:center; text-align:center; } }
