body{
    background-color: #042608;
    /*background: black url(android.jpg) center fixed no-repeat;
    background-size: cover;*/
    font-family: 'Times New Roman', Times, serif;
}
.heard{
    color: white;
    font-size: 22px;
}
header {
    text-align: center;
    padding: 100px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #2a5c0b;
}
p{
    text-align: justify;
}

header h1 {
    color: var(--android-green);
    font-size: 3rem;
    margin-bottom: 10px;
}
#timeline{
    content: '';
    position: absolute;
    background: #604848;
    width: 3px;
    left: 50%;
    border-radius: 4px;
    transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.child{
    position: relative;
    opacity: 0;
    width: 45vw;
    margin: 20px;
    box-sizing: border-box;
    background: #f0f0d8;
}
/*imPares*/
.child:nth-child(odd){
    float: left;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 0px 20px 20px 20px;
}
.child:nth-child(odd)::before{
    content: '';
    position: absolute;
    background: #604848;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    left: -30px;
}
.child:nth-child(odd)::after{
    content: '';
    position: absolute;
    background: #604848;
    width: 10px;
    height: 2px;
    left: -10px;
    top: 10px;
}

/*Pares*/
.child:nth-child(even){
    float: right;
    border-radius: 20px 0px 20px 20px;
    text-align: right;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 255, 255, 0.3);
}
.child:nth-child(even)::before{
    content: '';
    position: absolute;
    background: #604848;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    right: -30px;
}
.child:nth-child(even)::after{
    content: '';
    position: absolute;
    background: #604848;
    width: 10px;
    height: 2px;
    right: -10px;
    top: 10px;
}

.content{
    width: 100%; 
    padding: 15px;
    color: black;
    box-sizing: border-box;

}
.content p {
    font-family: 'JetBrains Mono';
    font-size: 0.95rem;
    line-height: 1.5;
    margin: 0;
}

/*Animacion de timeline*/
._show{
    opacity: 1;
    animation: __show 1s cubic-bezier(.99,-.7,.2,1.9);
}
._hide{
    opacity: 0;
    animation: __hide 1s cubic-bezier(.99,-.7,.2,1.9);
} 
@keyframes __show {
    0% { transform: translateY(500px); opacity: 0;}
    100% { transition: translateY(0); opacity: 1;}
}
@keyframes __hide {
    0% { transform: translateY(0); opacity: 1;}
    100% { transition: translateY(500px); opacity: 0;}
}
@media screen and (max-width: 900px) {
    #timeline {
        left: 15px !important;
    }
    .child {
        float: none !important;
        position: relative !important;
        width: 85vw; 
        max-width: 900px;
    }
    .content {
        width: 100%;
        padding: 20px;
        box-sizing: border-box;
    }
    .child:nth-child(odd), 
    .child:nth-child(even) {
        float: none;
        margin-right: 0;
        margin-left: 30px; 
        text-align: left;
        border-radius: 0px 20px 20px 20px;
    }
    .child:nth-child(odd)::before,
    .child:nth-child(even)::before {
        left: -40px;
        right: auto;
    }
    .child:nth-child(odd)::after,
    .child:nth-child(even)::after {
        left: -20px;
        right: auto;
        width: 20px;
    }
}
.modal {
    display: none; 
    position: fixed;
    z-index: 1000;
    left: 0; top: 0;
    width: 100%; height: 100%;
    background-color: rgba(0,0,0,0.8);
    backdrop-filter: blur(8px); 
}

.modal-content {
    background: rgba(255, 255, 255, 0.9);
    margin: 5% auto;
    padding: 30px;
    border-radius: 20px;
    width: 85%;
    max-width: 800px;
    position: relative;
    box-shadow: 0 10px 40px rgba(0,0,0,0.5);
    animation: aparecerModal 0.4s ease;
}

.close-btn {
    position: absolute;
    right: 20px; top: 15px;
    font-size: 30px;
    cursor: pointer;
    color: #333;
}
.btn-menu {
    display: inline-block;
    background: #ea2a15; 
    color: white;
    text-decoration: none;
    padding: 12px 30px;
    border-radius: 25px;
    font-weight: bold;
    transition: all 0.3s ease;
}

@keyframes aparecerModal {
    from { transform: translateY(-50px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

.btn-info {
    background: #3DDC84;
    color: white;
    border: none;
    padding: 8px 15px;
    border-radius: 20px;
    cursor: pointer;
    margin-top: 10px;
    font-weight: bold;
}
.img-tarjeta {
    width: 100%;            
    max-width: 150px;       
    height: auto;           
    display: block;         
    margin: 0 auto 15px;    
    border-radius: 8px;     
    object-fit: contain;    
}

.img-modal {
    display: block;
    width: auto;            
    max-width: 200px;       
    max-height: 200px;      
    margin: 10px auto;      
    border-radius: 12px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2); 
}

.modal-content h2 {
    margin-top: 10px;
    text-align: center;
}


