/* SayRaye v1.0 — interactive controls */
.button,
.nav-cta,
.play-button {
  display: inline-flex;
  min-height: 3.25rem;
  align-items: center;
  justify-content: center;
  gap: .65rem;
  padding: .9rem 1.35rem;
  border: 1px solid transparent;
  text-decoration: none;
  font-size: .7rem;
  font-weight: 600;
  letter-spacing: .14em;
  line-height: 1;
  text-transform: uppercase;
  transition: color .25s ease, background-color .25s ease, border-color .25s ease, transform .25s var(--ease);
}

.button:hover,
.nav-cta:hover,
.play-button:hover {
  transform: translateY(-2px);
}

.button-primary,
.nav-cta {
  background: var(--gold);
  color: var(--ink);
}

.button-primary:hover,
.nav-cta:hover {
  background: var(--gold-light);
}

.play-button {
  background: transparent;
  border-color: var(--gold);
  color: var(--paper);
  cursor: pointer;
}

.text-link {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  width: fit-content;
  color: inherit;
  text-decoration-thickness: 1px;
  text-underline-offset: .45rem;
}

:where(a, button, input, textarea, select):focus-visible {
  outline: 2px solid var(--gold-light);
  outline-offset: 4px;
}
