text-reveal.tsx
import './styles.css'import React from 'react'export function TextReveal() {return (<h1 className={'h1'}>{[...'Animations'].map((l, i) => (<spankey={`${i}-${l}}`}className={'letter'}style={{ '--index': i }}>{l}</span>))}</h1>)}// styles.css.h1 {font-size: clamp(32px, 5vw, 48px);font-weight: 600;letter-spacing: -0.05em;overflow: hidden;color: white;}.letter {display: inline-block;animation: yTranslate 1.3s cubic-bezier(.075, .82, .165, 1);animation-delay: calc(0.03s * var(--index));animation-fill-mode: backwards;}.button {width: 100%;margin-top: 24px;position: relative;height: 32px;font-size: 14px;padding-inline: 12px;font-weight: 500;border-radius: 9999px;background: #fff;box-shadow:0 0 0 1px rgba(0, 0, 0, 0.08),0px 2px 2px rgba(0, 0, 0, 0.04);}@keyframes yTranslate {from {transform: translateY(100%)}to {transform: translateY(0);}}