<style>
    @import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Plus+Jakarta+Sans:wght@300;400;600;800&display=swap');

    :root {
        --neon-pink: #ff007f;
        --neon-purple: #bc13fe;
        --neon-blue: #00d2ff;
        --brand-dark: #020617;
        --brand-white: #ffffff;
    }

    /* Contenedor principal para evitar conflictos con el tema de WP */
    .wp-neon-wrapper {
        font-family: 'Plus Jakarta Sans', sans-serif;
        background-color: var(--brand-dark);
        color: var(--brand-white);
        overflow-x: hidden;
        position: relative;
        cursor: none;
    }

    .wp-neon-wrapper h1, .wp-neon-wrapper h2, .wp-neon-wrapper h3 { 
        font-family: 'Playfair Display', serif; 
    }

    /* Cursor y Efectos */
    #cursor-dot {
        width: 8px; height: 8px; background: white; border-radius: 50%;
        position: fixed; pointer-events: none; z-index: 10000;
        box-shadow: 0 0 15px white, 0 0 30px var(--neon-pink);
    }

    .trail-node {
        position: fixed; pointer-events: none; border-radius: 50%; z-index: 9999;
        background: var(--neon-purple); opacity: 0.6;
        transition: transform 0.2s ease-out, opacity 0.5s ease-out;
    }

    .grid-bg {
        position: absolute; inset: 0;
        background-image: 
            linear-gradient(to right, rgba(188, 19, 254, 0.1) 1px, transparent 1px),
            linear-gradient(to bottom, rgba(188, 19, 254, 0.1) 1px, transparent 1px);
        background-size: 60px 60px;
        mask-image: radial-gradient(circle at center, black 40%, transparent 90%);
    }

    /* Sombras Neón y Movimiento */
    .neon-shadow-pink { border: 1px solid var(--neon-pink); box-shadow: 0 0 15px rgba(255, 0, 127, 0.4); }
    .neon-shadow-purple { border: 1px solid var(--neon-purple); box-shadow: 0 0 20px rgba(188, 19, 254, 0.4); }
    .neon-shadow-blue { border: 1px solid var(--neon-blue); box-shadow: 0 0 15px rgba(0, 210, 255, 0.4); }

    .neon-card {
        transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);
        position: relative; overflow: hidden;
    }

    .neon-card:hover {
        transform: translateY(-12px) scale(1.02);
        filter: brightness(1.2);
    }

    .neon-text-pink { text-shadow: 0 0 10px var(--neon-pink); color: var(--neon-pink); }
    .neon-text-purple { text-shadow: 0 0 10px var(--neon-purple); color: var(--neon-purple); }

    .gradient-neon-text {
        background: linear-gradient(90deg, var(--neon-pink), var(--neon-purple), var(--neon-blue));
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    .btn-neon {
        background: transparent; border: 2px solid var(--neon-blue);
        color: var(--neon-blue); box-shadow: 0 0 15px var(--neon-blue);
        transition: all 0.4s ease;
    }

    .btn-neon:hover {
        background: var(--neon-blue); color: black;
        box-shadow: 0 0 40px var(--neon-blue); transform: scale(1.05);
    }

    .reveal { opacity: 0; transform: translateY(30px); transition: all 0.8s ease-out; }
    .reveal.active { opacity: 1; transform: translateY(0); }

    .tab-content { display: none; }
    .tab-content.active { display: block; }
</style>