/* From Human — Buttons Patch (load this LAST) */
a:not(.btn):not(.cta){ color: var(--accent); }
a.btn, a.cta{ color: inherit; text-decoration: none; }
.btn, .cta,
button.btn, input[type="submit"].btn, input[type="button"].btn,
a.btn, a.cta, button.cta, input[type="submit"].cta {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:12px 16px; border-radius:12px; line-height:1; font-weight:600;
  text-decoration:none; cursor:pointer; user-select:none; -webkit-tap-highlight-color: transparent;
  transition: transform .08s ease, filter .15s ease, box-shadow .2s ease;
}
.btn{ background:#1f2937; border:1px solid #334155; color:#e5e7eb !important; }
.btn:hover{ filter:brightness(1.08); }
.btn:active{ transform: translateY(0.5px); }
.btn:focus-visible{ outline:2px solid var(--brand-2,#a78bfa); outline-offset:2px; }
.cta{ background: linear-gradient(135deg,var(--brand,#22c55e),#16a34a); border:0; color:#06130a !important; box-shadow:0 6px 24px rgba(34,197,94,.25); }
.cta:hover{ transform: translateY(-1px); }
.cta:active{ transform: translateY(0); }
.cta:focus-visible{ outline:2px solid var(--brand,#22c55e); outline-offset:2px; }
.cta.alt{ background: linear-gradient(135deg,var(--brand-2,#a78bfa),#7c3aed); color:#0b0613 !important; border:0; box-shadow:0 6px 24px rgba(167,139,250,.25); }
.btn[disabled], .cta[disabled], button.btn:disabled, button.cta:disabled, input.btn:disabled, input.cta:disabled {
  opacity:.6; cursor:not-allowed; transform:none; filter:none; box-shadow:none;
}
.btn.sm, .cta.sm { padding:9px 12px; border-radius:10px; font-weight:600; }
/* --- Variantes header / nav (From Human) --- */

.btn-nav {
  background: rgba(15,23,42,0.8); /* glass sombre */
  border-color: rgba(148,163,184,0.4);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 8px 24px rgba(15,23,42,0.55);
}

.btn-nav:hover {
  filter: none;
  background: rgba(30,64,175,0.75);
  border-color: rgba(191,219,254,0.65);
  color: #e5e7eb !important;
  transform: translateY(-1px);
}

/* CTA nav : gradient vert -> violet + glow */
.cta-nav {
  background: linear-gradient(120deg, #22c55e, #a855f7);
  color: #0f172a !important;
  box-shadow: 0 10px 30px rgba(168,85,247,0.45);
}

.cta-nav:hover {
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 14px 36px rgba(168,85,247,0.6);
}
/* --- Header Navigation Buttons (modern & clean) --- */

/* Base reset */
.btn.btn-nav,
.cta.cta-nav {
  transition: all .18s ease;
}

/* --- BTN NAV (sobre, discret, premium dark) --- */
.btn.btn-nav {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  color: #e5e7eb !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.btn.btn-nav:hover {
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.18);
  transform: translateY(-1px);
}

.btn.btn-nav:active {
  transform: translateY(0);
  background: rgba(255,255,255,0.08);
}

/* --- CTA NAV (gradient pastel sobre) --- */
.cta.cta-nav {
  background: linear-gradient(135deg, #22c55e, #8b5cf6);
  color: #0f172a !important;
  border: none;
  box-shadow: 0 4px 14px rgba(139,92,246,0.28);
}

.cta.cta-nav:hover {
  transform: translateY(-1px);
  filter: brightness(1.04);
  box-shadow: 0 6px 18px rgba(139,92,246,0.35);
}

.cta.cta-nav:active {
  transform: translateY(0);
}
