header {
    background-image:url("https://robertgravesletters.org/images/RG.jpg");
    background-position:20% 70%;
    background-size:cover;
    box-sizing:border-box; 
    color:white;
    font-family:'Open Sans';
    font-size:1em;
    min-height:7em;
    padding:1em;
}










header nav {
    column-gap:2em;
    display:flex;
    justify-content:end;
}


header nav hr {
    border: 0;
    border-top: 1px solid rgba(255,255,255,0.5);
    display:none;
    height: 1px;
    padding: 0;
    width:3em;
}


header nav a {
    border-bottom:1px dotted rgba(255,255,255,0);
    color:white;
    text-decoration:none;
}


header nav a:hover {
    border-bottom:1px dotted rgba(255,255,255,0.5);
}


header label {
    cursor: pointer;
    display:none;
    height:2em;
    position:fixed;
    right:1.5em;
    top:1.5em;
}


header input {
    display:none;
}


header span {
    background: white;
    border:none;
    display: block;
    height: 0.2em;
    position: relative;
    top:0.85em;
    width: 1.8em;
}


header span::before, header span::after{
    background: white;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    transition: all .25s ease-out;
    width: 100%;
}


header span::before {
    top: 0.6em;
}


header span::after {
    top: -0.6em;
}


header input:checked ~ label span::before { 
    transform: rotate(-45deg); top:0;
} 


header input:checked ~ label span::after { 
    transform: rotate(45deg); top:0;
} 


header input:checked ~ label span { 
    background: transparent; 
}


header input:checked ~ nav {
    column-gap:2em;
    display:flex;
    justify-content:end;
}





header-branding {
    display:block;
    left:2em;
    position:absolute;
    top:2em;
}


header-branding h1 {
    font-size:2em;
    font-style:italic;
    margin:0;
}


header-branding h2 {
    font-size:0.94em;
    font-weight:100;
    margin-top:-0.25em;
    margin-bottom:0;
}


@media only screen and (max-width:900px) {header{font-size:0.975em;}}
@media only screen and (max-width:875px) {header{font-size:0.950em;}}
@media only screen and (max-width:850px) {header{font-size:0.925em;}}
@media only screen and (max-width:825px) {header{font-size:0.900em;}}
@media only screen and (max-width:800px) {header{font-size:0.875em;}}
@media only screen and (max-width:775px) {header{font-size:0.850em;}}



@media only screen and (max-width:750px) {

    header input:checked ~ nav {
        align-items:center;
        background-color:rgba(255,0,0,0);
        display:grid;
        gap:0;    
        grid-template-rows:auto;
        justify-items:center;
        justify-content:center;
        padding-top:3.5em;
        padding-bottom:0.5em;
        width:100%;
    }    

    
    header label {
        display:block;
    }

    
    header  nav {
        display:none;
    }


    header nav hr {
        display:block;
    }

    header-branding {
        top:1em;
        left:1em;
        font-size:0.85em;
    }
}