        .hero-waves-container {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none;
            z-index: 1;
        }
        .hero-waves-svg {
            width: 100%;
            height: 100%;
            display: block;
        }
        .hero-wave {
            stroke-dasharray: 100;
            stroke-dashoffset: 100;
            /* Se anima mediante inline styles en JS */
        }
        @keyframes waveDraw {

            0%,
            5% {
                stroke-dashoffset: 100;
                opacity: 0;
            }

            15% {
                opacity: var(--wave-op, 0.4);
            }

            85%,
            100% {
                stroke-dashoffset: 0;
                opacity: var(--wave-op, 0.4);
            }
        }
        .hero-word {
            display: inline-block;
            margin-right: 0.25em;
            opacity: 0;
            transform: translateY(40px);
            animation: wordReveal 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
        }
        .hero-word:last-child {
            margin-right: 0;
        }
        .hero-word-accent {
            font-style: normal;
        }
        .hero-word-accent .hero-rotate-letter {
            background: linear-gradient(135deg, #FF6321, #FFa040);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            display: inline-block;
        }
        /* -- TEXTO ROTATIVO -- */
        .hero-rotate-wrapper {
            display: inline-grid;
            opacity: 0;
            transform: translateY(40px);
            animation: wordReveal 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
            overflow: hidden;
            padding: 0.1em 0; /* Previene recorte de decendentes como la p, y g */
            align-items: center;
        }
        .hero-rotate-word {
            grid-area: 1 / 1;
            display: inline-flex;
            pointer-events: none; 
        }
        .hero-rotate-word.active {
            pointer-events: auto;
        }
        .hero-rotate-letter {
            display: inline-block;
            transition: transform 0.6s cubic-bezier(0.16, 1.25, 0.4, 1.1), opacity 0.6s ease;
        }
        .hero-rotate-letter.in-ready {
            transform: translateY(100%);
            opacity: 0;
            transition: none; /* Salto instantáneo */
        }
        .hero-rotate-letter.in {
            transform: translateY(0);
            opacity: 1;
        }
        .hero-rotate-letter.out {
            transform: translateY(-100%);
            opacity: 0;
        }
        /* -- FIN TEXTO ROTATIVO -- */
        @keyframes wordReveal {
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        @keyframes heroFadeInUp {
            from {
                opacity: 0;
                transform: translateY(25px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }