/* --- ESTILOS GLOBALES --- */
body, html {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    overflow: hidden; 
    font-family: 'Lato', sans-serif;
}

body {
    background-color: #000000;
    color: #F5F5F5;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100dvh; 
    position: fixed; 
}

main {
    text-align: center;
    z-index: 10;
    position: relative;
}

/* --- AVIÓN DE FONDO: VERSIÓN PC (ORIGINAL) --- */
.bg-airplane {
    position: absolute;
    width: 600px;
    height: auto;
    opacity: 0.4; /* Regresamos al 0.4 original */
    z-index: 1;
    top: 10%;
    left: 5%;
    mix-blend-mode: screen;
    animation: drift 100s infinite ease-in-out;
    /* Sin filtros extras en PC */
}

/* --- LOGO Y TEXTO --- */
.logo {
    width: 450px;
    height: auto;
    opacity: 0;
    animation: fadeIn 1.5s ease-out forwards;
    filter: brightness(1.1);
}

.coming-soon {
    font-size: 1rem;
    font-weight: 300;
    letter-spacing: 0.5rem;
    margin-top: 40px;
    opacity: 0;
    animation: fadeIn 1.5s ease-out 1s forwards;
}

/* --- ANIMACIONES --- */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes drift {
    0%, 100% { transform: translate(0, 0) rotate(5deg); }
    50% { transform: translate(30px, -25px) rotate(0deg); }
}

/* --- RESPONSIVIDAD --- */

/* Tabletas */
@media (max-width: 768px) {
    .bg-airplane {
        width: 400px;
        opacity: 0.3; /* Ajuste intermedio */
    }
    .logo {
        width: 250px;
    }
}

/* --- MÓVIL: AQUÍ SUBIMOS LA VISIBILIDAD --- */
@media (max-width: 480px) {
    .bg-airplane {
        width: 250px;
        top: 15%;
        left: -10%; 
        
        /* Visibilidad reforzada para móvil */
        opacity: 0.65; 
        filter: brightness(1.5) contrast(1.2);
    }
    
    .logo {
        width: 85%;
        max-width: 400px;
    }
    
    .coming-soon {
        font-size: 0.8rem;
        letter-spacing: 0.25rem;
        margin-top: 25px;
        white-space: nowrap;
    }
}