.btn{--bg:var(--coral);--fg:var(--grafite);background:var(--bg);min-height:52px;color:var(--fg);font:600 1rem/1 var(--font);cursor:pointer;transition:background .25s var(--ease), transform .25s var(--ease), color .25s, border-color .25s;white-space:nowrap;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 26px;text-decoration:none;display:inline-flex}.btn:hover{--bg:var(--coral-profundo);--fg:var(--offwhite);transform:translateY(-2px)}.btn:active{transform:translateY(0)scale(.98)}.btn svg{width:16px;height:16px;transition:transform .25s var(--ease)}.btn:hover svg{transform:translate(3px)}.btn--ghost{--bg:transparent;--fg:var(--offwhite);border-color:#f0ede866}.btn--ghost:hover{--bg:var(--offwhite);--fg:var(--grafite);border-color:var(--offwhite)}.btn--dark{--bg:var(--grafite);--fg:var(--offwhite)}.btn--dark:hover{--bg:var(--coral-profundo)}.btn--sm{min-height:44px;padding:0 20px;font-size:.95rem}.link{color:var(--coral);transition:background-size .3s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 1.5px no-repeat;align-items:center;gap:8px;padding-bottom:2px;font-weight:600;text-decoration:none;display:inline-flex}.link:hover{background-size:100% 1.5px}.link svg{width:14px;height:14px;transition:transform .25s var(--ease)}.link:hover svg{transform:translate(3px)}
