@keyframes fadeUp { from { opacity:0; transform:translateY(40px); } to { opacity:1; transform:translateY(0); } }
@keyframes slideInLeft { from { opacity:0; transform:translateX(-30px); } to { opacity:1; transform:translateX(0); } }
@keyframes whatsappPulse { 0%,100% { box-shadow:0 0 0 0 rgba(37,211,102,0.45); } 50% { box-shadow:0 0 0 14px rgba(37,211,102,0); } }
@keyframes countPulse { 0%,100% { transform:scale(1); } 50% { transform:scale(1.05); } }
.fade-up { opacity:0; }
.fade-up.visible { animation: fadeUp 600ms ease forwards; }
.hero__badge { animation: slideInLeft 500ms ease 100ms both; }
.hero__title { animation: slideInLeft 500ms ease 250ms both; }
.hero__subtitle { animation: slideInLeft 500ms ease 400ms both; }
.hero__ctas { animation: slideInLeft 500ms ease 550ms both; }
.hero__trust { animation: slideInLeft 500ms ease 700ms both; }
.tab-content { opacity:0; transform:translateY(10px); transition:all 250ms ease; pointer-events:none; display:none; }
.tab-content.active { opacity:1; transform:translateY(0); display:grid; pointer-events:all; }
.step-connector { height:3px; background:var(--color-border); position:relative; overflow:hidden; }
.step-connector::after { content:''; position:absolute; left:0; top:0; height:100%; width:0; background:var(--color-primary); transition:width 800ms ease; }
.step-connector.active::after { width:100%; }
