*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    height:100vh;
    overflow:hidden;
    font-family:Arial, Helvetica, sans-serif;

    display:flex;
    justify-content:center;
    align-items:center;

    transition:all 1s ease;
}

/* ========= TEMAS ========= */

/* Dreamcore */
body.theme1{
    background:
    linear-gradient(
        135deg,
        #ffb3ff,
        #b8e1ff,
        #fff4b5,
        #ffc4d6
    );

    background-size:400% 400%;
    animation:fondoAnimado 12s ease infinite;
}

/* Blanco + Verde */
body.theme2{
    background:
    linear-gradient(
        135deg,
        #ffffff,
        #d7ffd9,
        #9dffaf
    );

    background-size:400% 400%;
    animation:fondoAnimado 10s ease infinite;
}

/* Negro + Rojo */
body.theme3{
    background:
    linear-gradient(
        135deg,
        #000000,
        #420000,
        #9b0000
    );

    background-size:400% 400%;
    animation:fondoAnimado 8s ease infinite;
}

@keyframes fondoAnimado{
    0%{
        background-position:0% 50%;
    }

    50%{
        background-position:100% 50%;
    }

    100%{
        background-position:0% 50%;
    }
}

/* ========= CONTENEDOR ========= */

.menu-contenedor{
    width:100%;
    height:100vh;
    position:relative;

    display:flex;
    justify-content:center;
    align-items:center;
}

/* ========= FONDOS ========= */

.background-images{
    position:absolute;
    inset:0;
    overflow:hidden;
}

.bg-img{
    position:absolute;
    width:100%;
    height:100%;

    object-fit:cover;

    opacity:0;

    filter:
        blur(20px)
        brightness(.7);

    transform:scale(1.1);

    transition:
        opacity 1s ease,
        transform 1s ease;
}

.bg-img.active{
    opacity:.45;
    transform:scale(1);
}

/* ========= MENÚ ========= */

.links-menu{
    position:relative;
    z-index:10;

    display:flex;
    flex-direction:column;
    gap:25px;

    text-align:center;
}

h1{
    margin-bottom:30px;
    color:white;

    text-shadow:
    0 0 10px black;
}

.menu-link{
    font-size:2rem;
    text-decoration:none;

    color:white;

    padding:10px 20px;

    backdrop-filter:blur(10px);

    border-radius:15px;

    transition:
        transform .3s,
        letter-spacing .3s,
        background .3s;
}

.menu-link:hover{
    transform:scale(1.1);
    letter-spacing:3px;

    background:rgba(255,255,255,.15);
}