/* Fondo animado */
       * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Inter', 'Helvetica Neue', sans-serif;
            background-color: #050505;
            color: white;
        }

/* Estilos del contenido */
        .content-container {
            position: relative;
            z-index: 10;
            text-align: center;
            padding: 2rem;
        }

/* Estilos del botón */
        .btn {
            background: linear-gradient(90deg, #ff3a82, #5233ff);
            color: white;
            font-weight: 600;
            font-size: 1rem;
            padding: 0.8rem 2rem;
            border: none;
            border-radius: 50px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-transform: uppercase;
            letter-spacing: 1px;
            box-shadow: 0 4px 20px rgba(255, 58, 130, 0.3);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
            text-decoration: none;
            margin: 25px;
            margin-left: 5px;
            margin-right: 5px;
            width: 300px;
        }

        .btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 25px rgba(255, 58, 130, 0.4);
        }

        .gradient-background {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100vh;
            z-index: 1;
            overflow: hidden;
            pointer-events: none;
        }

        .gradient-sphere {
            position: absolute;
            border-radius: 50%;
            filter: blur(60px);
        }

        .sphere-1 {
            width: 40vw;
            height: 40vw;
            background: linear-gradient(40deg, rgba(255, 0, 128, 0.8), rgba(255, 102, 0, 0.4));
            top: -10%;
            left: -10%;
            animation: float-1 15s ease-in-out infinite alternate;
        }

        .sphere-2 {
            width: 45vw;
            height: 45vw;
            background: linear-gradient(240deg, rgba(72, 0, 255, 0.8), rgba(0, 183, 255, 0.4));
            bottom: -20%;
            right: -10%;
            animation: float-2 18s ease-in-out infinite alternate;
        }

        .sphere-3 {
            width: 30vw;
            height: 30vw;
            background: linear-gradient(120deg, rgba(133, 89, 255, 0.5), rgba(98, 216, 249, 0.3));
            top: 60%;
            left: 20%;
            animation: float-3 20s ease-in-out infinite alternate;
        }

        .noise-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            opacity: 0.05;
            z-index: 5;
            background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
        }

        @keyframes float-1 {
            0% {
                transform: translate(0, 0) scale(1);
            }
            100% {
                transform: translate(10%, 10%) scale(1.1);
            }
        }

        @keyframes float-2 {
            0% {
                transform: translate(0, 0) scale(1);
            }
            100% {
                transform: translate(-10%, -5%) scale(1.15);
            }
        }

        @keyframes float-3 {
            0% {
                transform: translate(0, 0) scale(1);
                opacity: 0.3;
            }
            100% {
                transform: translate(-5%, 10%) scale(1.05);
                opacity: 0.6;
            }
        }

        .grid-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-size: 40px 40px;
            background-image: 
                linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
                linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
            z-index: 2;
        }

        .glow {
            position: absolute;
            width: 40vw;
            height: 40vh;
            background: radial-gradient(circle, rgba(72, 0, 255, 0.15), transparent 70%);
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 2;
            animation: pulse 8s infinite alternate;
            filter: blur(30px);
        }

        @keyframes pulse {
            0% {
                opacity: 0.3;
                transform: translate(-50%, -50%) scale(0.9);
            }
            100% {
                opacity: 0.7;
                transform: translate(-50%, -50%) scale(1.1);
            }
        }

        .particles-container {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 3;
            pointer-events: none;
        }

        .particle {
            position: absolute;
            background: white;
            border-radius: 50%;
            opacity: 0;
            pointer-events: none;
        }

/* Estilos globales */
    * {
        padding: 0;
        margin: 0;
        box-sizing: border-box;
        font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
        color: white;
    }

/* Adaptabilidad para moviles */
@media (max-width: 430px) {
    header, nav {
        flex-direction: column;
    }
    nav {
        margin-top: 15px;
        align-items: center;
    }
}

/* Estilos del header y la navegación */
    header {
        display: flex;
        justify-content: space-around;
        align-items: center;
        position: sticky;
        top: 0;
        z-index: 100;
    }

/* Estilos del main */
    main {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    
    main p {
        text-align: center;
    }

    .botón {
        display: flex;
        gap: 20px;
        justify-content: center;
    }

    a img {
        filter: invert(1);
    }

/* Asegura que el texto del enlace .btn quede exactamente centrado
   incluso cuando hay un icono al lado */
    .btn span {
        display: inline-block;
        text-align: center;
    }

    .btn img {
        width: 20px;
        height: 20px;
        margin-left: 8px;
    }

    main h1 {
        color: white;
        text-align: center;
        margin-top: 200px;
        padding: 10px;
    }
    /* Estilos del texto con degradado */
    .texto-degradado {
    /* Definimos el degradado de izquierda a derecha */
    background: linear-gradient(to right, #d34a9a ,#c3649c, #8096cc, #45c4e3);
    
    /* Hacemos que el fondo solo se aplique a la forma de las letras */
    -webkit-background-clip: text;
    background-clip: text;
    
    /* Hacemos transparente el color original del texto para que se vea el fondo */
    -webkit-text-fill-color: transparent;

    /* Estilos adicionales para que se parezca a la imagen */
    font-family: sans-serif;
    font-weight: bold;
    font-size: 48px;
    }
    
/* Sobre mi */
.titulo-sobre-mi {
    color: white; /* Color del texto */
    font-family: Arial, sans-serif; /* O la fuente que prefieras */
    font-size: 2.5rem;
    font-weight: bold;
    text-align: center;
    position: relative;
    padding-bottom: 10px;
    margin: 300px 0 20px 0;
    padding-top: 20px;
}

/* Esta es la línea decorativa de abajo */
.titulo-sobre-mi::after {
    content: "";
    display: block;
    width: 60px; /* Ancho de la línea */
    height: 3px; /* Grosor de la línea */
    background-color: #5d5dff; /* El color lila/azul de la imagen */
    margin: 10px auto 0; /* La centra horizontalmente */
    border-radius: 2px;
}

.introduccion {
    text-align: left;
    margin-left: 3%;
    margin-right: 15%;
    padding: 20px;
}

.contenedor-sobre-mi {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    justify-content: flex-start;
    margin: 0 20px;
}

/* Estilos de la imagen sobre mi */
.imagen-sobre-mi {
    width: 300px;
    height: 300px;
    object-fit: cover;
    flex-shrink: 0;
    border-radius: 200px;
    margin-left: 10%;
}

/* Navbar styles */
    .navbar {
    font-size: 18px;
    background-image: linear-gradient(260deg, #2376ae 0%, #c16ecf 100%);
    border: 1px solid rgba(0, 0, 0, 0.2);
    padding-bottom: 10px;
    width: 100%;
    }

    .main-nav {
    list-style-type: none;
    display: none;
    }

    .nav-links,
    .logo {
    text-decoration: none;
    color: rgba(255, 255, 255, 0.7);
    }

    .main-nav li {
    text-align: center;
    margin: 15px auto;
    }

    .logo {
    display: inline-block;
    font-size: 22px;
    margin-top: 10px;
    margin-left: 20px;
    }

    .navbar-toggle {
    position: absolute;
    top: 10px;
    right: 20px;
    cursor: pointer;
    color: rgba(255, 255, 255, 0.8);
    font-size: 24px;
    }

    .active {
    display: block;
    }

    @media screen and (min-width: 768px) {
    .navbar {
        display: flex;
        justify-content: space-between;
        padding-bottom: 0;
        height: 70px;
        align-items: center;
    }

    .main-nav {
        display: flex;
        margin-right: 30px;
        flex-direction: row;
        justify-content: flex-end;
    }

    .main-nav li {
        margin: 0;
    }

    .nav-links {
        margin-left: 40px;
    }

    .logo {
        margin-top: 0;
    }

    .navbar-toggle {
        display: none;
    }

    .logo:hover,
    .nav-links:hover {
        color: rgba(255, 255, 255, 1);
    }
}

/* Estilo de encabezado CONOCIMIENTOS TECNICOS */
.subtitulo-conocimientos {
    margin-top: 50px;
    margin-bottom: 5px;
    
}