.btn{font-weight:var(--fw-semibold);white-space:nowrap;transition:transform var(--transition), box-shadow var(--transition), background var(--transition), color var(--transition);border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;display:inline-flex}.btn:active{transform:translateY(1px)}.btn--md{padding:12px 24px;font-size:.95rem}.btn--sm{padding:8px 16px;font-size:.85rem}.btn--lg{padding:15px 32px;font-size:1rem}.btn--primary{background:var(--color-primary);color:var(--color-white)}.btn--primary:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-md)}.btn--secondary{background:var(--color-secondary);color:var(--color-white)}.btn--secondary:hover{background:var(--color-secondary-dark);box-shadow:var(--shadow-md)}.btn--accent{background:var(--color-accent);color:var(--color-primary-dark)}.btn--accent:hover{background:var(--color-accent-dark);box-shadow:var(--shadow-md)}.btn--outline{border-color:var(--color-white);color:var(--color-white);background:0 0}.btn--outline:hover{background:var(--color-white);color:var(--color-primary)}.btn--outline-primary{border-color:var(--color-primary);color:var(--color-primary);background:0 0}.btn--outline-primary:hover{background:var(--color-primary);color:var(--color-white)}.btn--ghost{color:var(--color-primary);background:#1e4f9414}.btn--ghost:hover{background:#1e4f9429}
