/*-------------------------------------------------------NAV-----------------------------------------------------------------------------------------*/
nav {
    background: #bb0101;
    width: 100%;
    height: 50px;
    position: fixed;
    border-bottom: #f1f1f1 1px solid;
    top: 0;
    left: 0;
    z-index: 9;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    /* Ajusta el padding si es necesario */
    box-sizing: border-box;
    /* Asegura que el padding no afecte el tamaño total */
}

a {
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

nav a {
    color: #000;
}

nav a:hover {
    color: #f1f1f1;
}

.div-button {
    border-radius: 10px;
    width: auto;
    height: 40px;
    padding: 10px;
    background: #bb0101;
    color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.5s;
    box-sizing: border-box;
    /* Asegura que el padding no afecte el tamaño total */
}

.div-button:hover {
    background: #000;
    color: #f1f1f1;
}


/*----------------------------------------------------------HEADER--------------------------------------------------------------------------------------*/
header {
    background: linear-gradient(40deg, #500000, #bb0101 40%);
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 1px solid #fff;
    /*position: absolute;*/
    position: relative;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    margin-top: 10px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    animation: slideInDown 1s ease-out;
    /*llamamos a la animación*/
}

img {
    width: 130px;
    margin: 0 auto;
    height: auto;
    margin-bottom: 10px;
}

@keyframes slideInDown {

    /*Animación del logo de entrada*/
    from {
        transform: translate3d(-50%, -110%, 0);
        opacity: 0;
    }

    to {
        transform: translate3d(-50%, 0, 0);
        opacity: 1;
    }

}

/*---------------------------------------------------------------------BODY---------------------------------------------------------------------------*/
body {
    background: #1a1a1a;
    color: #f1f1f1;
    font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
    border: none;
    margin: 0;
    padding: 0;
    justify-content: center;
    align-items: center;
    width: 100%;
    position: relative;
    min-width: 320px;
    
}

.img-background {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0.5;
    /*
    DEGRADADO DE IMAGEN DE FONDO
    QUITAR LINK DE IMG 
    background: 
        linear-gradient(
            to bottom,
            transparent 10%,
            rgba(0, 0, 0, 0.5) 80%,
            rgba(0, 0, 0) 95%
        ),
        url('https://images.unsplash.com/photo-1542831371-29b0f74f9713?fm=jpg&q=60&w=3000&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8Mnx8cHJvZ3JhbWFjaW9ufGVufDB8fDB8fHww') no-repeat center center;
    background-size: cover;
    border: none;
    */
}

/*--------------------------------------------------------------------SOCIAL BUTTONS----------------------------------------------------------------------------*/
.social-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
}

/* Estilos generales para social-button */
.social-button {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    border: #fff 1px solid;
    padding: 5px 20px;
    /* Ajusta el padding según sea necesario */
    margin: 0 10px;
}

.social-button:hover,
.social-button:hover a {
    background: #f1f1f1;
    color: #000;
}

.social-button a {
    color: #f1f1f1;
    text-decoration: none;
    display: flex;
    align-items: center;
}

.img-icon {
    width: 20px;
    height: 20px;
    margin-top: 5px;
    margin-right: 5px;
    /* Añade un margen derecho para separar el icono del texto */
}

.social-button p {
    margin: 0;
    /* Elimina el margen del párrafo */
}

/* Media query para ocultar los <p> cuando la pantalla es más delgada */
@media (max-width: 600px) {
    .social-button p {
        display: none;
    }

    .img-icon {
        width: 30px;
        height: 30px;
        margin-left: 5px;
    }
}

/*------------------------------------------------------------------NAME------------------------------------------------------------------------------*/
.name {
    background: #1a1a1a;
    border-radius: 5px;
    width: 76%;
    font-size: 50px;
    font-weight: bold;
    color: #f1f1f1;
    text-align: center;
    margin: 10px auto 0 auto;
    padding: 0px;
}
.div-name2 {
    background: #1a1a1a;
    border-radius: 5px;
    width: 76%; /* Define un ancho para que el margen automático funcione */
    font-size: 15px;
    color: #f1f1f1;
    text-align: center;
    margin: 0px auto; /* Centra el elemento horizontalmente */
    padding: 0px; /* Añade un poco de espacio interno */
}

/*-------------------------------------------------------------------DIVS-----------------------------------------------------------------------------*/
.div-1,
.div-3,
.div-4,
.div-5 {
    background: #1a1a1a;
    border-radius: 5px;
    width: 75%;
    padding: 1px 7px;
    margin: 0 auto;
    min-width: 100px;
}

.subtittle {
    background: #1a1a1a;
    border-radius: 5px;
    width: 76%;
    font-size: 20px;
    font-weight: bold;
    color: #f1f1f1;
}

.subsubtittle {
    text-align: center;
    width: auto;
    font-size: 15px;
    color: #f1f1f1;
}

.div-2 {
    width: 70%;
    margin: 0 auto;
    min-width: 100px;
}

.div-2 {
    background-color: #500000;
    border-radius: 5px;
    font-family: serif;
    padding: 1px 40px;
    font-style: italic;
}

/*---------------------------------------------------------------TIMELAPSE---------------------------------------------------------------------------------*/
.div-timelapse ul{
    display: grid;
        /* Cambia a grid layout */
        grid-template-columns: repeat(4, 1fr);
        /* 2 columnas de igual ancho */
        gap: 10px;
        /* Espacio entre los elementos */
        justify-items: center;
        /* Centra los elementos en las columnas */
        margin: 0;
        padding: 10px;
}
.div-timelapse ul li {
    display: flex; /* Activa Flexbox */
    flex-direction: column; /* Apila los elementos verticalmente */
    justify-content: flex-start; /* Asegura que los elementos comiencen desde arriba */
    align-items: center; /* Centra los elementos horizontalmente */
    border: #f1f1f1 1px solid;
    padding: 10px 10px;
    width: auto;
    list-style-type: none;
    margin: 0 10px;
    border-radius: 10px;
    height: auto; /* Define una altura fija para el contenedor */
}

.div-timelapse ul li a {
    margin-top: auto; /* Empuja el enlace hacia la parte inferior */
    color: #f1f1f1;
    border: #f1f1f1 1px solid;
    border-radius: 5px;
    padding: 5px 0;
    text-align: center;
    text-decoration: none;
    width: 100%; /* Asegura que el enlace ocupe todo el ancho del contenedor */
}

.div-timelapse ul li a:hover {
    background-color: #f1f1f1;
    color: #000;
}

li small {
    display: flex;
    text-align: center;
}
@media (max-width: 1100px) {
    .div-timelapse ul {
        display: grid;
        /* Cambia a grid layout */
        grid-template-columns: repeat(3, 1fr);
        /* 2 columnas de igual ancho */
        gap: 10px;
        /* Espacio entre los elementos */
        justify-items: center;
        /* Centra los elementos en las columnas */
        margin: 0;
        padding: 10px;
    }

    li {
        width: 100%;
        height: auto;
        margin: 0;
        /* Ajusta el margen para los elementos en columna */
    }

    .img-icon-list {
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }
}
@media (max-width: 700px) {
    .div-timelapse ul {
        display: grid;
        /* Cambia a grid layout */
        grid-template-columns: repeat(2, 1fr);
        /* 2 columnas de igual ancho */
        gap: 10px;
        /* Espacio entre los elementos */
        justify-items: center;
        /* Centra los elementos en las columnas */
        margin: 0;
        padding: 10px;
    }

    li {
        width: 100%;
        height: auto;
        margin: 0;
        /* Ajusta el margen para los elementos en columna */
    }

    .img-icon-list {
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }
}
@media (max-width: 400px) {
    .div-timelapse ul {
        display: grid;
        /* Cambia a grid layout */
        grid-template-columns: repeat(1, 1fr);
        /* 2 columnas de igual ancho */
        gap: 10px;
        /* Espacio entre los elementos */
        justify-items: center;
        /* Centra los elementos en las columnas */
        margin: 0;
        padding: 10px;
    }

    li {
        width: 100%;
        height: auto;
        margin: 0;
        /* Ajusta el margen para los elementos en columna */
    }

    .img-icon-list {
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0    auto;
    }
}

.img-icon-cert {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10 auto;
    transition: all 0.5s;
}

@media (max-width: 400px) {
    .div-timelapse ul {
        display: grid;
        /* Cambia a grid layout */
        grid-template-columns: repeat(1, 1fr);
        /* 2 columnas de igual ancho */
        gap: 10px;
        /* Espacio entre los elementos */
        justify-items: center;
        /* Centra los elementos en las columnas */
        margin: 0;
        padding: 10px;
    }

    li {
        width: 100%;
        height: auto;
        margin: 0;
        /* Ajusta el margen para los elementos en columna */
    }

    .img-icon-list {
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    }
}

.img-icon-cert {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10 auto;
    transition: all 0.5s;
}
/*----------------------------------------------------------------DIV TOOLS--------------------------------------------------------------------------------*/
.div-tools {
    border-radius: 5px;
    padding: 5px 10px;
}

.ul-skills {
    display: grid;
    grid-template-columns: repeat(5, 1fr); /* Cambia a grid layout */
    gap: 10px; /* Espacio entre los elementos */
    justify-items: center; /* Centra los elementos en las columnas */
    margin: 0; /* Elimina el margen predeterminado */
    padding: 0; /* Elimina el padding predeterminado */
}

.skill-list {
    padding: 5px 0px;
    width: 50%;
    list-style-type: none;
    margin: 0 10px;
    background-color: #252525;
    border-radius: 10px;
    box-shadow: darkgrey 3px 2px 10px;
    transition: 300ms;
    text-align: center; /* Centra el texto */
    overflow: hidden; /* Oculta el contenido que se salga */
    text-overflow: ellipsis; /* Muestra puntos suspensivos si el texto es demasiado largo */
    white-space: nowrap; /* Evita que el texto se divida en varias líneas */
}

.skill-list:hover {
    transform: scale(1.2);
    transition: 300ms;
}

li p {
    color: darkgrey;
    margin: 0;
    text-align: center;
    word-wrap: break-word; /* Permite que las palabras largas se dividan */
    overflow-wrap: break-word; /* Alternativa para navegadores modernos */
}

.img-icon-list {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    transition: all 0.5s;
}

@media (max-width: 1100px) {
    .ul-skills{
        display: grid;
        /* Cambia a grid layout */
        grid-template-columns: repeat(4, 1fr);
        /* 2 columnas de igual ancho */
        gap: 10px;
        /* Espacio entre los elementos */
        justify-items: center;
        /* Centra los elementos en las columnas */
    }
}
@media (max-width: 900px) {
    .ul-skills{
        display: grid;
        /* Cambia a grid layout */
        grid-template-columns: repeat(3, 1fr);
        /* 2 columnas de igual ancho */
        gap: 10px;
        /* Espacio entre los elementos */
        justify-items: center;
        /* Centra los elementos en las columnas */
    }
}
/* Media query para cambiar la disposición de los elementos <li> cuando la pantalla es más delgada */
@media (max-width: 700px) {
    .ul-skills{
        display: grid;
        /* Cambia a grid layout */
        grid-template-columns: repeat(2, 1fr);
        /* 2 columnas de igual ancho */
        gap: 10px;
        /* Espacio entre los elementos */
        justify-items: center;
        /* Centra los elementos en las columnas */
    }
    li p {
        font-size: 10px;
    }
}
@media (max-width: 300px) {
    .ul-skills{
        display: grid;
        /* Cambia a grid layout */
        grid-template-columns: repeat(1, 1fr);
        /* 2 columnas de igual ancho */
        gap: 10px;
        /* Espacio entre los elementos */
        justify-items: center;
        /* Centra los elementos en las columnas */
    }
    
}

/*--------------------------------------------------------------DIVS ANIMATION----------------------------------------------------------------------------------*/
/* 
@keyframes show {
    from {
        opacity: 0;
        scale: 10%;
    }

    to {
        opacity: 1;
        scale: 100%;
    }
}

.div-principal {
    view-timeline-name: --reveal;
    animation-name: show;
    animation-fill-mode: both;
    animation-timeline: --reveal;
    animation-range: entry 25% cover 50%;
    z-index: 1;
}

@media (max-width: 700px) {
    .div-2 {
        view-timeline-name: --reveal;
        animation-name: show;
        animation-fill-mode: both;
        animation-timeline: --reveal;
        animation-range: entry 30% cover 40%;
        z-index: 1;
    }
}
*/


/*---------------------------------------------------------------FOOTER---------------------------------------------------------------------------------*/
footer {
    background: #420101;
    width: 100%;
    height: 100px;
    border-top: #f1f1f1 1px solid;
    bottom: 0;
    left: 0;
    z-index: 9;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
    /* Ajusta el padding si es necesario */
    box-sizing: border-box;
    /* Asegura que el padding no afecte el tamaño total */
}