* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    /* Asegura que el padding y borde no aumenten el tamaño total de los elementos */
}

a {
    text-decoration: none;
}

html,
body {
    height: 100%;
    width: 100%;

    /* Asegura que el html y body ocupen todo el alto de la ventana */
}

.titulo {
    /* Replace fixed positioning with appropriate positioning */
    font-size: 2rem;
    /* Adjust font size as needed */
    margin: 0;
    padding-top: 1.5rem;
    margin-left: 4.2rem;
    padding-bottom: 1.25rem;
    position: fixed;
    background-color: none;
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
    /* background-color: rgb(255, 255, 255); */
    width: 100vw;
    z-index: 1;
    font-family: "Montserrat";
    font-weight: normal;

    transition: top 0.3s;
    /* Transition effect when sliding down (and up) */
}


ul {
    list-style-type: none;
    padding: 0;
    display: block;
    margin-top: 4.2rem;
    padding: 1rem;
    margin-left: 3.2rem;
    /* width: 150px; */
    position: fixed;
    font-family: "Montserrat";
    font-weight: normal;
}

li {
    margin-top: 1rem;
}

li a {
    text-decoration: none;
    color: #333333a6;
    transition: all 0.2s;
    list-style-type: none;
}

h1 a {
    text-decoration: none;
    color: #333333;
    transition: all 0.5s;
}

li a:hover {
    color: black;
    font-size: 1.2rem;
}

.content {
    display: flex;

    padding-top: 4.7rem;
    padding-left: 17rem;
    padding-bottom: 2rem;

    color: rgba(0, 0, 0, 0.70);
    text-align: justify;
    font-size: 15px;
    font-style: italic;
    line-height: 28px;

    /* 208.333% */
    font-family: "Montserrat";
}

p {
    font-weight: 400;
}

.texto,
.img-texto {
    flex: 1 1 100%;
    /* Ensure both divs take full width on small screens */
}

.texto {
    padding-top: 1.2rem;

    width: 50%;
}

.texto h1 {
    font-weight: 400;
}

.texto p {
    padding-top: 1.2rem;
}

.img-texto {
    padding-left: 2rem;
    width: 50%;
    padding-inline: 4rem;

}

.img-texto p {
    padding-top: 0rem;
    font-size: 1.4rem;
    line-height: 2.4rem;
    text-align: center;
    
    color: inherit;          /* Usa el color del texto del contenedor */
    text-decoration: none;
    
}

.imagen1 {
    margin: 0;
    display: block;

    object-fit: contain;
    max-width: 50rem;
    max-height: 50rem;
    min-width: auto;
    min-height: auto;
}


 


.navbtn {
    display: none;
    position: fixed;

    margin: 0;
    padding-top: 1.4rem;
    padding-right: 0.7rem;

    right: 0;
    cursor: pointer;
    z-index: 2;

    font-family: "Montserrat";
    transition: top 0.3s;
    /* Transition effect when sliding down (and up) */

}

.sidenav {
    height: 100%;
    /* 100% Full-height */
    width: 0;
    /* 0 width - change this with JavaScript */
    position: fixed;
    /* Stay in place */
    z-index: 3;
    /* Stay on top */
    top: 0;
    /* Stay at the top */
    right: 0;
    background-color: rgb(255, 255, 255);

    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);

    overflow-x: hidden;
    /* Disable horizontal scroll */
    /* padding-top: 0.5rem; */
    /* Place content 60px from the top */
    transition: 0.5s;
    /* 0.5 second transition effect to slide in the sidenav */
}
@supports ((-webkit-backdrop-filter: blur(15px)) or (backdrop-filter: blur(15px))) {
    .sidenav {
        /* Fondo semitransparente */
        backdrop-filter: blur(15px);
        -webkit-backdrop-filter: blur(15px);
    }
}
/* The navigation menu links */
.sidenav a {
    padding: 8px 8px 8px 32px;
    text-decoration: none;
    font-size: 1.3rem;
    color: #000000;
    display: block;
    transition: 0.3s;

    white-space: nowrap;
    /* Prevent text wrapping */

    font-family: "Montserrat";

}

.sidenav a:hover {
    color: #f1f1f1;
}

.sidenav .closebtn {
    left: 10px;
    font-size: 36px;
}

.carousel {

    position: relative;

    width: 100%;
    max-width: 50rem;
    margin-left: 4rem;
    height: 50rem;

    overflow: hidden;
}

.carousel img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    opacity: 0;

    animation: carousel 32s infinite;
}


/* Retrasos */

.carousel img:nth-child(1) {
    animation-delay: 0s;
}

.carousel img:nth-child(2) {
    animation-delay: 8s;
}

.carousel img:nth-child(3) {
    animation-delay: 16s;
}

.carousel img:nth-child(4) {
    animation-delay: 24s;
}


@keyframes carousel {

    /* Aparece rápidamente */
    0% {
        opacity: 0;
    }

    1% {
        opacity: 1;
    }

    /* Permanece visible */
    24% {
        opacity: 1;
    }

    /* Desaparece rápidamente */
    25% {
        opacity: 0;
    }

    100% {
        opacity: 0;
    }
}



@media (max-width: 850px) {

/* CABECERA */

.titulo {
    margin: 0;
    font-size: 1.2rem;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;

    padding-top: 1rem;
    padding-left: 1rem;
    padding-right: 25vw;
    padding-bottom: 0.5rem;

    background-color: white;
    z-index: 2;
}

ul {
    display: none;
}

.navbtn {
    display: block;
    font-size: 0.8rem;

    padding-top: 1rem;
    padding-right: 2rem;
    padding-bottom: 0.7rem;

    background-color: white;
    z-index: 3;
}


/* CONTENIDO DEL MÓVIL */

.content {
    display: flex;
    flex-direction: column;

    padding-top: 3.5rem;
    padding-bottom: 5rem;
    padding-left: 0;
    padding-right: 0;

    color: rgba(0, 0, 0, 0.70);

    font-family: "Montserrat";
    font-style: normal;

    text-align: left;

    font-size: 13px;
    line-height: 1.55;
}


/* TEXTO DEL CV */

.texto {
    order: 3;

    width: 100%;
    padding: 1.5rem;
}

.texto h1 {
    font-size: 1rem;
    font-weight: 400;
}

.texto p {
    padding-top: 0;

    font-size: 0.72rem;
    line-height: 1.55;

    text-align: left;
}


/* IMÁGENES + CONTACTO */

.img-texto {
    order: 2;

    width: 100%;

    padding: 0;
    margin: 0;
}


/* CARRUSEL */

.carousel {
    position: relative;

    width: 100%;
    max-width: none;

    height: auto;

    aspect-ratio: 4 / 3;

    margin: 0;

    overflow: hidden;
}

.carousel img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    opacity: 0;

    animation: carousel 32s infinite;
}


/* CONTACTO */

.img-texto p {
    order: 1;

    padding: 1rem 1.5rem 1rem 1.5rem;

    margin: 0;

    font-size: 0.72rem;
    line-height: 1.6;

    text-align: left;
}

}

@media (max-width: 350px) {
    .navbtn {
        padding-bottom: 2rem;

    }

    .content {
        padding-top: 4rem;
    }
}
