.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);line-height:1;letter-spacing:var(--tracking-wide);text-decoration:none;border-radius:var(--radius-full);border:2px solid transparent;cursor:pointer;white-space:nowrap;transition:background-color var(--duration-fast) var(--ease-smooth),border-color var(--duration-fast) var(--ease-smooth),color var(--duration-fast) var(--ease-smooth),box-shadow var(--duration-fast) var(--ease-smooth),transform var(--duration-fast) var(--ease-smooth);will-change:transform;-webkit-tap-highlight-color:transparent}.btn--primary{background-color:var(--color-cta);border-color:var(--color-cta);color:var(--color-cta-text);box-shadow:0 0 #093c7d00}.btn--primary:hover{background-color:var(--color-cta-hover);border-color:var(--color-cta-hover);box-shadow:var(--shadow-glow-brand);transform:translateY(-1px)}.btn--primary:active{background-color:var(--color-brand-dark);border-color:var(--color-brand-dark);transform:translateY(0);box-shadow:none}.btn--primary:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.btn--secondary{background-color:transparent;border-color:var(--color-border-strong);color:var(--color-text-primary)}.btn--secondary:hover{background-color:var(--color-surface-card);border-color:var(--color-border-accent);color:var(--color-text-primary);transform:translateY(-1px)}.btn--secondary:active{transform:translateY(0)}.btn--secondary:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.btn--ghost{background-color:transparent;border-color:#fff3;color:var(--color-text-primary)}.btn--ghost:hover{background-color:#ffffff0f;border-color:#ffffff59;color:var(--color-text-primary);transform:translateY(-1px)}.btn--ghost:active{background-color:#ffffff08;transform:translateY(0)}.btn--ghost:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.btn--white{background-color:#fff;border-color:#fff;color:var(--color-brand)}.btn--white:hover{background-color:#ffffffe0;border-color:#ffffffe0;transform:translateY(-1px);box-shadow:0 8px 24px #0000002e}.btn--white:active{background-color:#ffffffbf;transform:translateY(0);box-shadow:none}.btn--white:focus-visible{outline:2px solid #ffffff;outline-offset:3px}.btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.btn--lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base)}.btn.nav__cta{padding:var(--space-2) var(--space-5);font-size:var(--text-xs)}
