body{
    font-family: 'Raleway';
    box-sizing: border-box;
    letter-spacing: 0.1em;
    line-height: 1.3;
}
a{
    text-decoration: none;
    color: rgb(255, 255, 255, 1);
}
.container{
    height: 100vh;
    background-image: url("../img/sun_colors.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: space-around;
}
h1{
    color: white;
}

/* HEADER ***************************************************/
header{
    width: 45%;
    display: flex;
    align-items: center;
}
h1{
    font-size: 4em;
    font-weight: 400;
    display: flex;
    flex-direction: column;
    line-height: 1;
    text-shadow: 1px 1px 2px rgba(0,0,0,.7);
}
h1 p{
    margin: 0;
}
h1 p::first-letter{
    color: red;
    font-size: 2em;
}
.responsive_h1{
    display: none;
}

/* CONTENT **************************************************/
.content{
    width: 45%;
    display: flex;
    align-items: center;
    justify-content: center;
}
nav{
    width: 100%;
}
nav div{
    position: relative;
    height: 120px;
}
nav > div > a{
    position: absolute;
    bottom: 0px;
    transition: text-shadow .3s, color .3s, bottom .3s;
}
.sub_nav:hover a{
    bottom: 30px;
    color: rgb(255, 255, 255, 0);
    text-shadow: 1px 1px 2px rgba(0,0,0,0);
}
.content a{
    display: block;
    font-size: 2em;
    font-weight: 700;
    width: 100%;
    text-shadow: 1px 1px 2px rgba(0,0,0,.7);
}
nav div:hover{
    cursor: pointer;
}
nav > div:after {
    content: ""; /* This is necessary for the pseudo element to work. */ 
    display: block; /* This will put the pseudo element on its own line. */
    width: 0%; /* Change this to whatever width you want to have before hover. */
    border-bottom: 2px solid white; /* This creates the border. Replace black with whatever color you want. */
    transition: .5s; /* This establishes the amount of time in seconds the animation should take from start to finish */
    position: absolute;
    bottom: 0;
}
nav div:hover:after {
    width: 100%; /* This will be the new width of your border when on hover */
}
.sub_nav span{
    position: absolute;
    bottom: 0;
}
.content .second_a{
    font-size: 1.5em;
    display: inline;
    color: rgb(255, 255, 255, 0);
    text-shadow: 1px 1px 2px rgba(0,0,0,0);
    transition: text-shadow .5s, color .5s;
}
.sub_nav:hover .second_a{
    color: rgb(255, 255, 255, 1);
    text-shadow: 1px 1px 2px rgba(0,0,0,.7);
}
.sub_nav:hover .second_a:hover{
    color: red;
}


/* FOOTER ***************************************************/
footer{
    width: 100%;
    height: 150px;
    background-color: #1976d2;
    display: flex;
    justify-content: space-around;
    align-items: center;
}
.footer_links{
    height: 100%;
    display: flex;
    flex-flow: column wrap;
    justify-content: space-evenly;
}
.footer_links a{
    color: white;
    font-size: 1.3em;
    text-decoration: none;
}
footer p{
    color: white;
    text-align: center;
    margin: 0;
    padding: 10px;
}
.logo_esa{
    width: 100px;
}
.logo_solo{
    width: 200px;
}


/* MEDIA QUERY **********************************************/
@media screen and (max-height: 750px){
    h1 {
        font-size: 3em;
    }
}
@media screen and (min-width: 1500px){
    .part_one > div, .part_two > div{
        height: 600px;
        width: 600px;
        margin: 10px;
        position: relative;
    }
    .content div div:hover h3{
        margin-bottom: 250px;
    }
}

@media screen and (max-width: 1000px){
    header{
        width: 100%;
        display: flex;
        justify-content: center;
    }
    .responsive_h1{
        display: initial;
        font-size: 10em;
        text-shadow: 1px 1px 2px rgba(0,0,0,.7);
    }
    .normal_h1{
        display: none;
    }
    .container{
        display: flex;
        flex-direction: column;
        justify-content: space-around;
    }
    .content {
        width: 100%;
    }
    nav{
        padding: 10px;
    }
}