header{
    padding: 50px 70px 30px;
}
.menu_opener{
    position:absolute;
    top:107px;
    right:70px;
    border-top:0px;
    color:#2d2d2d;
    padding:10px;
    padding-bottom:5px;
    padding-top:5px;
    cursor:pointer;
    text-align: center;
    z-index:5;
    display: none;
}
.menu_opener i{
    font-size: 2.5em;
    font-weight: lighter;
}
.nav_open .menu_opener{
    display: none;
}
header .header_inner{
    display: grid;
    grid-template-columns: 315px 1fr;
    grid-template-areas: "logo right";
    align-items: flex-end;
}
header .header_inner nav.header{
    display: flex;
    width: 100%;
    justify-content: flex-end;
    position: relative;
    top: unset;
    left: unset;
    right: unset;
    bottom: unset;
    grid-area: right;
    justify-self: flex-start;
    /*margin: 30px 70px 0;*/
}
header .header_inner .logo{
    grid-area: logo;
    justify-self: center;
}
@media screen and (max-width:1400px){
    .menu_opener{
        display: block;
    }
    header .header_inner nav.header{
        display: none;
    }
}
@media screen and (max-width:1000px){
    .menu_opener{
        top:67px;
    }
    header{
        padding: 30px 70px;
    }
    header .header_inner .logo{
        max-width: 250px;
    }
}
@media screen and (max-width:600px){
    .menu_opener{
        right:20px;
    }
    header{
        padding: 30px 20px;
    }
    header .header_inner{
        /*grid-template-columns: 83.33vw 1fr;*/
    }
}
@media screen and (max-width:450px){
    .menu_opener{
        top:60px;
    }
    header .header_inner .logo{
        max-width: 225px;
        justify-self: flex-start;
    }
}