/**
 * Breso — wireframe edificio a pantalla completa
 */

.breso-air-scene {
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
    background: #0a0a0a;
}

.breso-air-scene__art {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 42% 52%;
    display: block;
    mix-blend-mode: normal;
    filter: sepia(0.18) contrast(1.14) brightness(0.9) saturate(0.92);
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1.02);
    will-change: transform;
}

/* Oscurece la foto para que el wireframe se lea sin lavado blanco */
.breso-air-scene::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: rgba(10, 10, 10, 0.34);
}

/* Login: viñeta muy suave — el panel de cristal hace el resto */
.breso-air-scene::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background:
        radial-gradient(ellipse 50% 58% at 50% 50%, rgba(10, 10, 10, 0.24) 0%, rgba(10, 10, 10, 0.08) 54%, transparent 78%);
}

body.breso-air-page.login-body .breso-air-scene::before,
body.breso-air-page.breso-linear-login .breso-air-scene::before {
    background: rgba(10, 10, 10, 0.2);
}

body.breso-air-page.login-body .breso-air-scene::after,
body.breso-air-page.breso-linear-login .breso-air-scene::after {
    background:
        radial-gradient(ellipse 52% 60% at 50% 50%, rgba(10, 10, 10, 0.18) 0%, rgba(10, 10, 10, 0.06) 52%, transparent 76%);
}

/* Portada: imagen más nítida + sombra lateral para el texto */
body.breso-air-page.launch-page .breso-air-scene__art {
    object-position: 55% 52%;
    filter: sepia(0.14) contrast(1.18) brightness(0.94) saturate(0.95);
}

body.breso-air-page.launch-page .breso-air-scene::before {
    background: rgba(10, 10, 10, 0.22);
}

body.breso-air-page.launch-page .breso-air-scene::after {
    background:
        linear-gradient(105deg, rgba(10, 10, 10, 0.82) 0%, rgba(10, 10, 10, 0.58) 34%, rgba(10, 10, 10, 0.22) 62%, transparent 88%);
}

body.breso-air-page .breso-ambient {
    z-index: 3 !important;
    background: transparent !important;
    opacity: 1 !important;
}

body.breso-air-page .breso-ambient::before {
    opacity: 0.04;
}

body.breso-air-page .breso-ambient::after {
    opacity: 0.03;
}

body.breso-air-page.login-body .login-wrap,
body.breso-air-page.breso-linear-login .login-wrap {
    position: relative;
    z-index: 4;
}

body.breso-air-page.launch-page .stage,
body.breso-air-page.launch-page .foot {
    position: relative;
    z-index: 4;
}

@media (max-width: 900px) {
    .breso-air-scene__art {
        object-position: 50% 50%;
        transform: translate3d(0, 0, 0) scale(1.06);
    }

    body.breso-air-page.launch-page .breso-air-scene::after {
        background:
            linear-gradient(180deg, rgba(10, 10, 10, 0.78) 0%, rgba(10, 10, 10, 0.42) 42%, rgba(10, 10, 10, 0.18) 72%, transparent 100%);
    }
}

@media (prefers-reduced-motion: reduce) {
    .breso-air-scene__art {
        transform: scale(1.02) !important;
    }
}
