header {
    box-sizing: border-box;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    padding: 15px 0;
    background-color: rgba(255,255,255,.9);
}
header > div { position: relative; }

header nav a {
    color: var(--gray);
    font-size: 18px;
    transition: 250ms ease-in-out color;
}

header nav .menu > div:not(:first-of-type) a { text-transform: uppercase; }

header nav a strong { transition: 250ms ease-in-out color; }

header nav a:hover,
header nav a:hover strong { color: var(--gold); }

header .mgE { position: absolute; }

header .logo { text-align: center; }

header .lng { position: absolute; }

header nav {
    max-height: 0;
    overflow: hidden;
    transition: max-height .5s ease-in-out;
    text-align: center;
}

header nav .menu > div {
    padding: 10px 20px;
    animation: wave-out forwards;
    animation-duration: calc(var(--delay-out) * 500ms);
}
header.show nav { max-height: 100vh; }

header.show nav .menu > div {
    animation: wave-in forwards;
    animation-duration: calc(var(--delay) * 300ms);
}

/* Mobile */
@media (max-width: 800px) {

    header .mgE {
        right: 10px;
        top: 9px;
    }

    header .lng {
        top: 15px;
        left: 20px;
    }

    header nav .menu { text-align: center; }

    header .social { text-align: center; margin: 40px 0 20px 0; }

    header nav .menu { padding-bottom: 20px; }


    @keyframes wave-in {
        from {
            opacity: 0;
            transform: translateX(160px);
        }
        to {
            opacity: 1;
            transform: translateX(0);
        }
    }

    @keyframes wave-out {
        from {
            opacity: 1;
            transform: translateX(0);
        }
        to {
            transform: translateX(160px);
            opacity: 0;
        }
    }
}

/* Tablet */
@media (min-width: 801px) {
    header .lng {
        right: 80px;
        top: 12px;
    }

    header .mgE {
        right: 22px;
        top: 7px;
    }

    header .social {
        position: absolute;
        top: 13px;
        left: 20px;
    }

    header .lng p { margin-top: 0; }

    header .social > div { display: inline-block; vertical-align: top; }

    header nav .menu { text-align: center; margin-top: 25px; }
    header nav .menu > div { display: inline-block; }

    @keyframes wave-in {
        from {
            opacity: 0;
            transform: translateY(-20px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    @keyframes wave-out {
        from {
            opacity: 1;
            transform: translateY(0);
        }
        to {
            transform: translateY(-20px);
            opacity: 0;
        }
    }
    
}
