@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Serif:ital,wght@0,100..900;1,100..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-decoration: none;
    list-style: none;
}


html {
    scroll-behavior: smooth;
}

body {
    background-color:#171719;
    font-family: "Montserrat", sans-serif;
    cursor:crosshair;
    cursor: url(/imagenes/cursor1.png),auto;
}





.navbar{
    display:flex;   
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:20px;
    padding:10px 5%;
    background-color:#171719;
}

.navbar img {
    width:300px;
    max-width:100%;

}

.menu-1{
    display:flex;
    flex-wrap:wrap;
    gap: 40px;
}

.menu-1 a{

    font-size:18px;
    text-decoration:none;
    color:#A3A3A3;
    font-weight: 600;
    transition:color 0.3s ease,

}

.menu-1 a:hover{
    color:#C7F36B ;
}

.hero{
    display:flex;
    flex-direction: column;
    justify-content:center;
    align-items: flex-start;
    padding:40px 5%;
    text-align:left;
    box-sizing:border-box;
    min-height:80vh;
    background: url(/imagenes/hero2.jpeg);
    background-size: cover;
    background-position: center;
    gap: 30px;
}

.verdetitle{

    color:#0BDA51
}


.misbotones{

        display:flex;
        flex-wrap:wrap;
        gap:30px;
        margin-top:20px
}


.trabajosboton{
    display: inline-block;    
    padding: 10px 24px;       
    background-color: black;
    color: white;
    text-decoration: none;
    font-weight: 600;   
    border-radius: 10px;
    border-style:solid;
    border-color:white;
    cursor: pointer;          
    transition: background-color 0.3s ease,
            transform 0.3s ease;
}


.trabajosboton:hover {
    background-color:#C7F36B;
    color:black;
    border-style:solid;
    border-color:black;
    transform: translateY(-5px);    
}

.proyectosboton{
    display: inline-block;    
    padding: 10px 24px;       
    background-color: black;
    color: white;
    text-decoration: none;
    font-weight: 600;   
    border-radius: 10px;
    border-style:solid;
    border-color:white;
    cursor: pointer;          
    transition: background-color 0.3s ease,
            transform 0.3s ease;
}


.proyectosboton:hover {
    background-color:#C7F36B;
    color:black;
    border-style:solid;
    border-color:black;
    transform: translateY(-5px);   
}

.verdoso{
    color:#0BDA51
}

.hero p{
    color:white
}
.hero h1{
    color:white
}

/*acerca de mi papu*/



.acerca{
    margin-top:50px;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    padding-right:5%;
    background-color: #171719;

}

.definicion{

    padding-left:5%;
    flex:1 1 400px;

}

.definicion h2{
    text-align:left;
    font-size:30px

}

.definicion p{
    font-size:18px;

    color:white;
}

.sub{
    color:#0BDA51;
    letter-spacing:2px;
    
}

.definicion h2{
    color:white
}

.papu{
    margin-left:0;
    padding-left:5%;
}
.papu img{

    width: 500px;
    max-width:100%;
    border-radius:20px;
    height:330px;
    object-fit:cover;
    border:3px solid #28633E;



}


.skills{
    margin-top:50px;
    display:flex;
    flex-wrap:wrap;
    gap:15px
}


.tag{

    display: inline-block;  
    padding: 10px 24px;
    border-style:solid;
    border-radius:10px;
    border: 2px solid #28633E;
    background-color: #17251B;
    color:white;
}
/*tarjeta de paginas */

.contenedor-tarjetas{
    display:flex;
    flex-wrap:wrap;
    gap:30px;
    padding:0 5%;
    margin-top:40px;
}

.tarjeta1 {
    background-color: black;        
    border: 2px solid #28633E;      
    border-radius: 12px;              
    overflow: hidden;                 
    flex:1 1 280px;
    max-width: 320px;                 
    transition: transform 0.3s ease, border-color 0.3s ease;



}

.tarjeta1:hover {
    transform: translateY(-8px);      
    border-color: #C7F36B;
}


.sub2{
    color:#0BDA51;
    letter-spacing:2px;
    padding-left:5%;
    margin-top:50px;
    
}

.parrafo2{
    color:white;
    padding-left:5%;
    padding-right:5%;
    font-size:18px;
    margin-top:15px;
    
}


.tarjeta-imagen img{

    width: 100%;                      
    height: 180px;                    
    object-fit: cover;                
    display: block;
}

.tarjeta-contenido {
    padding: 20px;
}

.tarjeta-nombre {
    color: #ffffff;
    font-size: 20px;
    margin-bottom: 10px;
    font-weight: 600;
}

.tarjeta-descripcion {
    color: white;                   
    font-size: 14px;
    margin-bottom: 20px;              
}

.tarjeta-boton {
    display: inline-block;            
    padding: 8px 16px;
    background-color: transparent;
    color: white;                   
    border: 2px solid #28633E;
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    border-radius: 6px;
    transition: background-color 0.3s ease, color 0.3s ease;
}


.tarjeta-boton:hover {
    background-color: #39FF14;        
    color: #000000;                   
}




.prosetting{

    padding-bottom:60px;
}



@media (max-width: 900px){

    .navbar{
        justify-content:center;
    }

    .menu-1{
        justify-content:center;
        gap:25px;
    }

    .acerca{
        justify-content:center;
    }

    .papu{
        padding-right:5%;
    }
}


@media (max-width: 600px){

    .navbar img{
        width:200px;
    }

    .menu-1{
        gap:15px;
    }

    .menu-1 a{
        font-size:16px;
    }

    .hero{
        min-height:70vh;
    }

    .hero h1{
        font-size:26px;
    }

    .hero p{
        font-size:15px;
    }

    .misbotones{
        gap:15px;
    }

    .definicion h2{
        font-size:22px;
    }

    .definicion p{
        font-size:16px;
    }

    .papu img{
        height:auto;
        aspect-ratio:3/2;
    }

    .parrafo2{
        font-size:15px;
    }

    .tarjeta1{
        max-width:100%;
    }
}


 
#contacto{
    padding-bottom:60px;
}
 
.contacto-contenedor{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:stretch;
    gap:30px;
    padding:0 5%;
    margin-top:40px;
}
 
.contacto-info{
    flex:1 1 300px;
    max-width:380px;
    background-color:black;
    border:2px solid #28633E;
    border-radius:12px;
    padding:30px;
}
 
.contacto-dato{
    margin-top:20px;
    padding:12px 16px;
    background-color:#17251B;
    border:2px solid #28633E;
    border-radius:10px;
    color:white;
    font-size:14px;
}
 
.contacto-etiqueta{
    display:block;
    color:#0BDA51;
    font-size:12px;
    font-weight:600;
    letter-spacing:2px;
    margin-bottom:4px;
}
 
.formulario{
    flex:1 1 380px;
    max-width:520px;
    display:flex;
    flex-direction:column;
    background-color:black;
    border:2px solid #28633E;
    border-radius:12px;
    padding:30px;
}
 
.formulario label{
    color:#0BDA51;
    font-size:14px;
    font-weight:600;
    letter-spacing:1px;
    margin-bottom:8px;
}
 
.formulario input,
.formulario textarea{
    background-color:#17251B;
    color:white;
    border:2px solid #28633E;
    border-radius:10px;
    padding:12px 16px;
    font-family:"Montserrat", sans-serif;
    font-size:14px;
    margin-bottom:20px;
    resize:vertical;
    transition:border-color 0.3s ease;
}
 
.formulario input::placeholder,
.formulario textarea::placeholder{
    color:#A3A3A3;
}
 
.formulario input:focus,
.formulario textarea:focus{
    outline:none;
    border-color:#C7F36B;
}
 
.formulario .tarjeta-boton{
    cursor:pointer;
    font-family:"Montserrat", sans-serif;
    padding:12px 16px;
}
 

 
.modal{
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,0.8);
    justify-content:center;
    align-items:center;
    padding:20px;
    z-index:100;
}
 
.modal.activo{
    display:flex;
}
 
.modal-caja{
    position:relative;
    width:100%;
    max-width:480px;
    max-height:90vh;
    overflow-y:auto;
    background-color:black;
    border:2px solid #28633E;
    border-radius:12px;
    padding:30px;
}
 
.modal-cerrar{
    position:absolute;
    top:10px;
    right:16px;
    background:none;
    border:none;
    color:white;
    font-size:28px;
    cursor:pointer;
    transition:color 0.3s ease;
}
 
.modal-cerrar:hover{
    color:#C7F36B;
}
 
.modal-etiqueta{
    color:#0BDA51;
    font-size:12px;
    font-weight:600;
    letter-spacing:2px;
    margin-top:15px;
}
 
.modal-texto{
    color:white;
    font-size:14px;
    margin-top:6px;
    padding:12px 16px;
    background-color:#17251B;
    border:2px solid #28633E;
    border-radius:10px;
    white-space:pre-wrap;
    overflow-wrap:break-word;
}
 
.modal-botones{
    display:flex;
    flex-wrap:wrap;
    gap:15px;
    margin-top:25px;
}
 
@media (max-width: 600px){
 
    .contacto-info,
    .formulario{
        max-width:100%;
        padding:20px;
    }
}
 


.pie{
    display:flex;
    flex-wrap:wrap;
    background-color: #000000;
    gap:20px;
    align-items:center;
    justify-content:space-between;
    padding:20px 5%;

}

.pieimagen img{

    width: 120px;
    display:block;

}

.piecolumna {
    display:flex;
    flex-wrap:wrap;
    gap:50px;

}

.piecolumna a{
    color:#ffffff;
    font-weight:600;

}

.pieiconos{
    display:flex;
    gap:20px;

}

.pieiconos img{
    width:20px;
    
}


@media (max-width: 600px){

    .pie{
        flex-direction:column;
        text-align:center;
        gap:25px;
    }

    .piecolumna{
        justify-content:center;
        gap:20px;
    }

    .pieiconos{
        justify-content:center;
    }

    .pieiconos img{
        width:24px;
    }
}