#nav {
    width: 95%;
    height: 30mm;
    margin-left: 2.5%;

    padding: 0;

    display: flex;
    flex-wrap: nowrap;
}

#nav ul {
    /* занимать всю доступную ширину рядом с левым значком */
    flex: 1 1 auto;
    height: 11mm;

    list-style-type: none;
    margin-top: 13.705mm;
    padding-left: 0;
    padding-right: 0;

    display: flex;
    flex-direction: row;
    align-items: stretch;
    flex-wrap: nowrap;

    border-top-style: solid;
    border-top-width: 0.4mm;
    border-top-color: black;

    border-bottom-style: solid;
    border-bottom-width: 0.4mm;
    border-bottom-color: black;

    border-right-style: solid;
    border-right-width: 0.4mm;
    border-right-color: black;

    border-top-right-radius: 6mm;

    overflow: hidden;
}

#nav li {
    color: black;
    font-size: larger;
    text-align: center;

    height: 100%;

    flex: 1 1 0;
    min-width: 0; /* allow flex children to shrink without breaking layout */

    /* vertical separators belong to the whole button, not text */
    border-right-width: 0.1mm;
    border-right-color: black;
    border-right-style: solid;
    border-left-width: 0.1mm;
    border-left-color: black;
    border-left-style: solid;
}

#nav li a {
    width: 100%;
    height: 100%;
    display: block;

    color: black;
    text-decoration: none;
}

#nav li a:hover {
    background-color: #82816D;
    color: #EFF2F3;

    border-top-left-radius: 20mm;
    border-top-right-radius: 20mm;
    border-bottom-left-radius: 10mm;
    border-bottom-right-radius: 10mm;
    overflow: hidden;
}

.nav_curr-page-link {
    background-color: #023436;
    border-top-left-radius: 20mm;
    border-top-right-radius: 20mm;
    border-bottom-left-radius: 10mm;
    border-bottom-right-radius: 10mm;
    overflow: hidden;
}

#nav li:last-of-type a:hover {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

#nav li:last-of-type .nav_curr-page-link {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.nav_curr-page-link p {
    color: #EFF2F3;
}

#nav li a:hover p {
    color: black;
}

#nav li a div {
    margin-top: 0;
    height: 100%;
    background-color: inherit;
}

#nav li a div div {
    padding-top: 2mm;
    padding-bottom: 4mm;
}

#nav li p {
    /* borders moved to li to span full button height */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin: 0;
    word-break: keep-all;
    overflow-wrap: normal;
    hyphens: none;
}

#nav li:first-of-type { border-left-width: 0; }

#nav li:last-of-type { border-right-width: 0; }

#nav li:last-of-type p { }

#nav img {
    height: 30mm;
    float: left;
}