@font-face {
    font-family: norse;
    src: url("./fonts/Norse-Bold.otf");
}


*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    
}
em{
    color: rgb(181, 204, 201);
}

body{
    background-color: rgb(58, 65, 63);
    width: 100%;
    height: 100vh;
    display: flex;

    font-family: norse;
    font-size: calc(24px + 0.5vw);
    color: white;

}

/* LEFT SIDE */

.bgimage {
    background-image: url(https://www.echoesanddust.com/wp-content/uploads/2019/03/Kosatka-Colossus.jpg);
    
    background-size:cover; /* La imagen cubre todo el div */

    
    flex-shrink: 0; /* Evita que se encoja */
    min-width: 40%;

    display: flex;
    flex-direction: column;
}

.image-text{
    color: white;
    background-color: rgba(0, 0, 0, 0.527); /* esta es la forma correcta, no funciona con opacity*/

    margin-top: 30%;
    height: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.image-text p{
    font-size: calc(48px + 1vw);
    font-family: norse;
    opacity: 1;
}

.image-text img{
    height: 80%;
}

/* RIGHT SIDE*/



.main{
    box-sizing: border-box;

    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;

}


.container{
    display: flex;
    flex-direction: column;



}
/*TEXTOS */


.text, .log{
    width: min(1300px,100%);
    padding: 5%;

}

.text{
    display:  flex;
    flex-direction: column;
    gap: 3vh;
    font-weight: bold;
}

.log{
    display: flex;
    flex-direction: column;
    gap: 3vh;
}

.log button{
    color: white;
    font-weight: bolder;
    font-size: large;
    background-color:  rgb(66, 103, 114);
    width: 20vh;
    height: 6vh;
    border: 1px solid gray;
    border-radius: 15px;
}

.log p{
    font-size: calc(12px + 0.5vw);
}
.log a{
    text-decoration: none;
    font-weight: bold;
    color:  rgb(117, 141, 148);
}


button:hover{
    cursor: pointer;
    
}


button:active{
    background-color:  rgb(123, 188, 207);
    cursor: pointer;
    
}

/*FORMULARIO */

.form{
    width: 100%;
    padding: 5%;
    padding-top: 2%;

    display: flex;
    flex-direction: column;
    gap: 3vh;
   
    background-color: rgb(117, 141, 148);
    box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.5); /* Sombra fuerte y bien definida */

    color: rgb(56, 56, 56);
    
}
.form p{
    font-weight: bold;
}

.container-mini{
    display: flex;
    gap: 4vh;
    flex-wrap: wrap;

}
.mini{
    display: flex;
    flex-direction: column;
    font-size: calc(12px + 0.5vw);
    width: 20vw;
    
}

.mini input{
    width: 100%;
    height: 4vh;
    border: 1px solid rgb(117, 117, 117);
    border-radius: 5px;

    padding-left: 1vh;
    font-size: calc(12px + 0.5vw);
    color: rgb(83, 83, 83);

    font-family:'Arial Narrow';
    font-style: italic;
    font-weight:100;
}

.mini input:focus {
    border: 2px solid rgb(74, 112, 63);
    outline: none; /* Esto elimina el borde azul predeterminado en algunos navegadores */
}

.mini input:invalid {
    border: 2px solid rgb(146, 15, 15);
    outline: none; /* Esto elimina el borde azul predeterminado en algunos navegadores */
}


/*MEDIA QUERIES*/
  
@media screen and (max-width: 850px) {
    .bgimage {
        width: 100%;
        height: 30vh;
    
        display: flex;
        justify-content: center;
    }
    .image-text{
        margin-top: 0;
        height: 75%;
    }
    body{
        flex-direction: column;
    }

    .form{
        justify-content: center;
        align-items: center;
    }

    .container-mini{
        justify-content: center;
        align-items: center;
        padding: 0;
    }
    

    .mini{
        text-wrap: nowrap;
        display: flex;
        flex-direction: column;
        font-size: calc(24px + 0.5vw);
        min-width: 200px;
        width: 25vw;
        
    }

    .log{
        align-items: center;
        justify-content: center;
    }
    
}
@media screen and (max-width: 550px) {
    .mini{
        width: 50vw;
        
    }
}