.fade-in {
    animation: fadeIn 1.5s ease-in-out forwards;
}

.fade-in-up {
    animation: fadeInUp 1s ease-in-out forwards;
}

.slide-in-left {
    animation: slideInLeft 1s ease-in-out forwards;
}

.slide-in-right {
    animation: slideInRight 1s ease-in-out forwards;
}

.zoom-in {
    animation: zoomIn 1s ease-in-out forwards;
}

.slide-in-bottom {
    animation: slideInBottom 1s ease-in-out forwards;
}

.text-reveal {
    /* animation: text-reveal 1.5s cubic-bezier(0.77, 0, 0.175, 1) forwards; */
    /* background: linear-gradient(90deg, var(--color-acento-dorado), var(--color-acento-dorado-claro)); */
    /* background-repeat: no-repeat; */
    /* background-size: 100% 100%; */
    /* -webkit-background-clip: text; */
    /* background-clip: text; */
    /* color: transparent; */
}

.fade-in-down {
    animation: fade-in-down 1s ease-in-out forwards;
}

.fade-in-right {
    animation: fade-in-right 1s ease-in-out forwards;
}

.blur-in {
    animation: blur-in 1.2s ease-in-out forwards;
}

/* Keyframes for animations */
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideInLeft {
    from {
        opacity: 0;
        transform: translateX(-50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: translateX(50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes zoomIn {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes slideInBottom {
    from {
        opacity: 0;
        transform: translateY(50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes text-reveal {
    from {
        background-size: 100% 100%;
    }
    to {
        background-size: 0 100%;
    }
}

@keyframes fade-in-down {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fade-in-right {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes blur-in {
    from {
        opacity: 0;
        filter: blur(10px);
    }
    to {
        opacity: 1;
        filter: blur(0);
    }
}


/* Add some premium text effects */

/* Apply animations to specific elements */
.hero-content h1 {
    animation: slideInLeft 1s ease-in-out forwards;
}

.hero-content p {
    animation: slideInLeft 1.2s ease-in-out forwards;
}

.hero-content .value-list {
    animation: slideInLeft 1.4s ease-in-out forwards;
}

.hero-content .cta-buttons {
    animation: fadeInUp 1.6s ease-in-out forwards;
}

.hero-image-placeholder {
    animation: fadeIn 1.5s ease-in-out forwards;
}

.section-header .section-title,
.section-header .section-subtitle,
.section-header .lead {
    animation: slideInBottom 1s ease-in-out forwards;
}

.entity-card,
.glass-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.entity-card:hover,
.glass-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}