/* Keep navigation available after following an in-page link. */
body .header-sp {
    position: fixed;
    top: 0;
    left: 0;
}

.header-sp.header-scrolled {
    background-color: rgb(22 22 22 / 95%);
    backdrop-filter: blur(5px);
}

#comments,
#contacts {
    scroll-margin-top: 120px;
}

/* Keep header links readable after mouse and keyboard navigation. */
.header-sp .nav-bar-sp__link,
.header-sp .nav-bar-sp__link:visited,
.header-sp .nav-bar-sp__link:hover,
.header-sp .nav-bar-sp__link:focus,
.header-sp .nav-bar-sp__link:active {
    color: #fff;
}

.header-sp .mob-nav-bar-sp__link,
.header-sp .mob-nav-bar-sp__link:visited,
.header-sp .mob-nav-bar-sp__link:hover,
.header-sp .mob-nav-bar-sp__link:focus,
.header-sp .mob-nav-bar-sp__link:active {
    color: #161616;
}

.header-sp nav .link:hover {
    text-decoration: underline;
    text-underline-offset: 0.25em;
}

.header-sp nav .link:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

/* Align every contact value with its icon, including the address paragraph. */
.footer-sp-contacts__item {
    align-items: flex-start;
}

.footer-sp-contacts__item > i {
    flex-shrink: 0;
}

.footer-sp-contacts__item > div {
    min-width: 0;
}

.footer-sp-contacts__item .footer-contact {
    margin: 0;
    overflow-wrap: anywhere;
}

#consent-banner[hidden] {
    display: none !important;
}
