.site-main-header-wrap .site-header-row-container-inner {
    background: var(--vs-color-dark-surface);
    padding-inline: clamp(1.25rem, 3vw, 2rem);
}

.site-header .site-main-header-wrap .site-container {
    margin-inline: auto;
    max-width: var(--vs-container-wide);
    padding-inline: clamp(1.25rem, 3vw, 2rem);
}

.site-branding .site-title,
.site-branding .site-title a,
.site-branding a.brand {
    color: var(--vs-color-on-dark);
}

.site-header .header-navigation .header-menu-container > ul {
    align-items: center;
    column-gap: var(--vs-space-2);
}

.site-header .header-navigation .header-menu-container > ul > li.menu-item > a,
.site-header .header-navigation .header-menu-container > ul > li > a {
    color: var(--vs-color-on-dark-muted);
    font-weight: 500;
    padding-inline: 0.75rem;
    transition: color var(--vs-motion-short) var(--vs-motion-ease);
}

.site-header .header-navigation .header-menu-container > ul > li.menu-item:last-child > a,
.site-header .header-navigation .header-menu-container > ul > li:last-child > a {
    padding-inline-end: 0;
}

.site-header .header-navigation .header-menu-container > ul > li.menu-item > a:hover,
.site-header .header-navigation .header-menu-container > ul > li.menu-item.current-menu-item > a,
.site-header .header-navigation .header-menu-container > ul > li.menu-item.current_page_item > a,
.site-header .header-navigation .header-menu-container > ul > li > a:hover,
.site-header .header-navigation .header-menu-container > ul > li.current-menu-item > a,
.site-header .header-navigation .header-menu-container > ul > li.current_page_item > a {
    color: var(--vs-color-on-dark);
}

.site-header .header-navigation .header-menu-container > ul > li.menu-item.current-menu-item > a,
.site-header .header-navigation .header-menu-container > ul > li.menu-item.current_page_item > a {
    font-weight: 600;
}

.site-header .mobile-navigation .mobile-menu-container > ul > li.menu-item > a,
.site-header .drawer-navigation .drawer-menu-container > ul > li.menu-item > a {
    color: var(--vs-color-on-dark-muted);
    transition: color var(--vs-motion-short) var(--vs-motion-ease);
}

.site-header .mobile-navigation .mobile-menu-container > ul > li.menu-item > a:hover,
.site-header .mobile-navigation .mobile-menu-container > ul > li.menu-item.current-menu-item > a,
.site-header .drawer-navigation .drawer-menu-container > ul > li.menu-item > a:hover,
.site-header .drawer-navigation .drawer-menu-container > ul > li.menu-item.current-menu-item > a {
    color: var(--vs-color-on-dark);
}

.site-header .mobile-toggle-open-container .menu-toggle-open {
    color: var(--vs-color-on-dark);
}

.site-footer-row-container-inner {
    background: var(--vs-color-dark-surface);
    color: var(--vs-color-on-dark-muted);
}

.site-top-footer-wrap,
.site-bottom-footer-wrap {
    border-block: none;
}

.site-footer .site-top-footer-wrap .site-footer-row-container-inner {
    padding-block: var(--vs-space-4) 0;
    padding-inline: clamp(1.25rem, 3vw, 2rem);
}

.site-footer .site-bottom-footer-wrap .site-footer-row-container-inner {
    padding-block: var(--vs-space-2) var(--vs-space-3);
    padding-inline: clamp(1.25rem, 3vw, 2rem);
}

.site-footer .site-top-footer-inner-wrap,
.site-footer .site-bottom-footer-inner-wrap {
    align-items: start;
    column-gap: clamp(1.25rem, 3vw, 2.5rem);
    padding-block: 0;
    row-gap: var(--vs-space-3);
}

.site-footer .site-top-footer-inner-wrap > .site-footer-section,
.site-footer .site-bottom-footer-inner-wrap > .site-footer-section {
    align-self: start;
    height: auto;
    padding-block: 0;
}

.site-footer .site-footer-section .footer-widget-area,
.site-footer .site-footer-section .footer-widget-area-inner,
.site-footer .site-footer-section .widget {
    height: auto;
    min-height: 0;
}

.site-footer .widget-area :is(h2, h3, h4, .widget-title) {
    color: var(--vs-color-on-dark);
    font-family: var(--vs-font-heading);
    font-size: 19px;
    font-weight: 700;
    letter-spacing: 0.075em;
    line-height: 1.25;
    margin-block: 0 14px;
    text-transform: uppercase;
}

.site-footer :where(.widget) {
    margin-block: 0;
}

.site-footer :where(p, li, .site-info) {
    color: var(--vs-color-on-dark-muted);
    font-size: var(--vs-font-size-sm);
    line-height: var(--vs-line-height-body);
}

.site-footer .footer-widget-area-inner a,
.site-footer .textwidget a,
.site-footer .footer-html a {
    color: var(--vs-color-on-dark-muted);
    text-decoration: none;
    text-underline-offset: 0.2em;
    transition: color var(--vs-motion-short) var(--vs-motion-ease);
}

.site-footer .footer-widget-area-inner a:hover,
.site-footer .textwidget a:hover,
.site-footer .footer-html a:hover {
    color: var(--vs-color-secondary);
    text-decoration: none;
}

.site-footer .footer-widget-area-inner a:focus-visible,
.site-footer .textwidget a:focus-visible,
.site-footer .footer-html a:focus-visible {
    color: var(--vs-color-on-dark);
    outline: var(--vs-focus-ring);
    outline-offset: var(--vs-focus-ring-offset);
    text-decoration: none;
}

.site-footer :where(.site-footer-section) {
    row-gap: var(--vs-space-3);
}

.site-footer .widget_nav_menu :where(.menu) {
    display: grid;
    gap: var(--vs-space-2);
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-footer .widget_nav_menu .menu li {
    line-height: 20px;
}

.site-footer .widget_nav_menu :where(.menu a) {
    display: block;
    line-height: 20px;
    padding-block: 0;
}

.site-footer .vs-footer-location {
    font-size: var(--vs-font-size-sm);
    margin: 0;
}

.site-footer .vs-footer-contact-list li {
    line-height: 20px;
}

.site-footer .vs-footer-contact-list {
    display: grid;
    gap: var(--vs-space-2);
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-footer .footer-html {
    margin: 0;
}

.site-footer .footer-html :where(p) {
    color: color-mix(in srgb, var(--vs-color-on-dark-muted) 88%, transparent);
    font-size: var(--vs-font-size-xs);
    line-height: 20px;
    margin: 0;
}

.site-footer .footer-navigation-wrap {
    display: none;
}

@media (max-width: 781px) {
    .site-footer .site-top-footer-wrap .site-footer-row-container-inner {
        padding-block: var(--vs-space-5);
    }

    .site-footer .site-top-footer-inner-wrap {
        row-gap: var(--vs-space-4);
    }

    .site-footer .widget_nav_menu :where(.menu a) {
        display: inline-block;
        padding-block: var(--vs-space-1);
    }

    .site-footer .vs-footer-contact-list a {
        display: inline-block;
        padding-block: var(--vs-space-1);
    }
}
