header .lang {
    width: 36px;
    min-height: 36px;

    color: var(--gray);
    text-align: center;
    line-height: 36px;
    font-family: sans-serif;
    font-size: 12px;
    letter-spacing: 0;
    font-weight: 700;
    cursor: pointer;
}

header .lang > div {
    position: absolute;
    z-index: 1;
    border-radius: 20px;
    width: 36px;
    min-height: 32px;
    background-color: transparent;
    border: 1px solid var(--gray);
    opacity: 0.7;
    transition: opacity 0.5s ease;
}

header .lang > div a {
    display: block;
    height: 0;
    overflow: hidden;
    opacity: 0;
    color: var(--gray);
    text-decoration: none;

    -webkit-transition: height 0.5s ease, opacity 2s ease;
    -moz-transition: height 0.5s ease, opacity 2s ease;
    -ms-transition: height 0.5s ease, opacity 2s ease;
    -o-transition: height 0.5s ease, opacity 2s ease;
    transition: height 0.5s ease, opacity 2s ease;
}

header .lang > div:hover { opacity: 1; }

header .lang > div:hover a,
header .lang > div:focus-within a  {
    height: 32px;
    opacity: 1;
}