.btn{font-family:var(--font-body);font-weight:var(--weight-semibold);font-size:var(--step-0);text-align:center;border-radius:var(--radius-pill);cursor:pointer;min-height:2.75rem;transition:transform var(--dur-base) var(--ease-out), background-color var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out);border:2px solid #0000;justify-content:center;align-items:center;gap:.5em;padding:.85em 1.4em;line-height:1;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn--lg{font-size:var(--step-1);padding:.95em 1.7em}.btn--primary{background:var(--color-accent);color:#fff;box-shadow:var(--shadow-s)}.btn--primary:hover{background:var(--color-accent-hover);color:#fff;box-shadow:var(--shadow-m)}.btn--on-light{color:var(--c-forest-700);border-color:var(--c-forest-600);background:0 0}.btn--on-light:hover{background:var(--c-forest-700);color:#fff}.btn--ghost{color:#fff;background:#ffffff24;border-color:#fff9}.btn--ghost:hover{color:#fff;background:#ffffff42}.btn--on-dark{color:var(--c-forest-800);background:#fff}.btn--on-dark:hover{background:var(--c-stone-200);color:var(--c-forest-900)}
