.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: var(--sn-radius-sm);
  text-decoration: none;
  font-weight: 800;
  line-height: 1.35;
  transition: transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
}
.button:hover { transform: translateY(-1px); }
.button--primary { background: linear-gradient(135deg, var(--sn-color-brand-700), var(--sn-color-brand-900)); color: #fff; box-shadow: 0 10px 26px rgba(122,23,48,.18); }
.button--primary:hover { color: #fff; box-shadow: 0 14px 30px rgba(122,23,48,.24); }
.button--secondary { color: var(--sn-color-brand-800); background: #fff; border-color: #cfaeb8; }
.button--secondary:hover { color: var(--sn-color-brand-900); border-color: var(--sn-color-brand-700); }
.button--light { background: #fff; color: var(--sn-color-brand-900); }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.text-link { display: inline-flex; align-items: center; gap: 5px; color: var(--sn-color-brand-700); font-weight: 800; text-decoration: none; }
.text-link:hover { color: var(--sn-color-brand-900); }
@media (max-width: 560px) { .button-row .button { width: 100%; } }
