/* Copiado de site/assets/css/base.css por construir-vivo.py: solo lo que usa la intro. */
[hidden] { display: none !important; }

.btn:focus-visible {
  outline: none;
  box-shadow: var(--anillo-foco);
}

.sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--esp-2);
  min-height: var(--alto-btn);
  min-width: var(--objetivo-min);
  padding: var(--esp-3) var(--esp-6);
  border-radius: var(--radio-pill);
  font-family: var(--fuente-titulo);
  font-weight: var(--peso-cta);
  font-size: var(--texto-m);
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  border: 2px solid transparent;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition:
    transform var(--dur-1) var(--ease-salida),
    background-color var(--dur-1) linear,
    border-color var(--dur-1) linear,
    box-shadow var(--dur-2) var(--ease-salida);
}

.btn:hover { transform: translateY(-1px); }

.btn:active { transform: translateY(0); }

.btn--secundario {
  background: rgba(245, 248, 250, 0.06);
  color: var(--color-texto);
  border-color: var(--color-borde-fuerte);
}

.btn--secundario:hover {
  border-color: var(--color-teal);
  background: rgba(48, 200, 192, 0.1);
}

/* Mientras la intro está en pantalla, la página de debajo no se desplaza */
html:has(#intro) { overflow: hidden; }
