.reveal{opacity:0;transition:opacity .8s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay,0s), transform .8s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay,0s)}.reveal--up{transform:translateY(28px)}.reveal--down{transform:translateY(-20px)}.reveal--left{transform:translate(-32px)}.reveal--right{transform:translate(32px)}.reveal--scale{transform:scale(.96)}.reveal--fade{transform:none}.reveal.is-in{opacity:1;transform:none}.tilt{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,0px));transform-style:preserve-3d;transition:transform .5s cubic-bezier(.16,1,.3,1);position:relative}.tilt:hover{transition-duration:.12s}.tilt__glare{border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(420px circle at var(--gx,50%) var(--gy,50%), #ffffff1a, #fff0 60%);transition:opacity .35s;position:absolute;inset:0}.tilt:hover .tilt__glare{opacity:1}.tilt__raise{transform:translateZ(28px)}@media (hover:none),(pointer:coarse){.tilt{transition:none;transform:none}.tilt__glare{display:none}.tilt__raise{transform:none}}:where(:root[data-motion=reduce]) .reveal{opacity:1;transition:none;transform:none}:where(:root[data-motion=reduce]) .tilt{transition:none;transform:none}:where(:root[data-motion=reduce]) .tilt__glare{display:none}:where(:root[data-motion=reduce]) .tilt__raise{transform:none}
.boton-elegante{border:2px solid var(--text-primary);min-height:44px;color:var(--text-primary);cursor:pointer;background:var(--bg-secondary);box-shadow:var(--elevation-md);border-radius:30px;padding:15px 30px;font-size:1.2rem;font-weight:700;transition:all .4s;position:relative;overflow:hidden}.boton-elegante:focus-visible{outline:2px solid var(--interactive-default);outline-offset:3px}.boton-elegante:after{content:"";background:radial-gradient(circle, var(--color-white-alpha-40) 0%, var(--color-white-alpha-10) 70%);width:100%;height:100%;transition:transform .5s;position:absolute;top:0;left:0;transform:scale(0)}.boton-elegante:hover:after{transform:scale(4)}.boton-elegante:hover{border-color:var(--text-primary);background:var(--bg-primary);color:var(--text-primary)}
