/* V/O Språk – small, accessible switch before existing CV link. */
.vo-site-header .vo-sprak-switch{display:inline-flex;flex-shrink:0;align-items:center;gap:5px;white-space:nowrap;margin-left:auto;font-family:inherit;font-size:14px;line-height:1}
.vo-site-header .vo-sprak-link{display:inline-flex;align-items:center;justify-content:center;min-width:23px;min-height:32px;text-decoration:none;opacity:.46;transition:opacity .15s ease,transform .15s ease}
.vo-site-header .vo-sprak-link.is-current,.vo-site-header .vo-sprak-link:hover,.vo-site-header .vo-sprak-link:focus-visible{opacity:1}
.vo-site-header .vo-sprak-link:focus-visible{outline:2px solid #B77757;outline-offset:2px;border-radius:3px}
.vo-site-header .vo-sprak-divider{color:#A9A39A;font-size:12px}
.vo-site-header .vo-sprak-switch+.vo-cv-pdf-header-link{margin-inline-start:0}
@media (max-width:520px){
 .vo-site-header .vo-header__inner{gap:clamp(4px,1.6vw,9px)!important}
 .vo-site-header .vo-sprak-switch{gap:1px;font-size:12px}
 .vo-site-header .vo-sprak-link{min-width:19px;min-height:32px}
 .vo-site-header .vo-wordmark{font-size:clamp(.66rem,2.7vw,.78rem)!important;letter-spacing:.07em!important}
 .vo-site-header .vo-cv-pdf-header-link{font-size:0!important;gap:2px}
 .vo-site-header .vo-cv-pdf-header-link:before{content:'CV';font-size:12px}
 .vo-site-header .vo-cv-pdf-header-link span{font-size:12px}
}


/* v1.3.0 — Editorial, cream navigation overlay.
   Scope everything to the OPEN menu; the sticky header, CV download,
   language switcher, closed hamburger and Gutenberg editor stay unchanged. */
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open {
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 100vh;
    height: 100dvh;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--vo-bg-main, #F6F3EB) !important;
    background-color: var(--vo-bg-main, #F6F3EB) !important;
    color: var(--wp--preset--color--contrast, #292B2A) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    z-index: 100001 !important;
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close {
    width: calc(100% - 48px) !important;
    max-width: var(--vo-container-width, 1008px) !important;
    margin-inline: auto !important;
    min-height: 100%;
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    min-height: 100dvh;
    box-sizing: border-box;
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
    position: absolute !important;
    inset: 18px 0 auto auto !important;
    z-index: 2;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin: 0 !important;
    padding: 12px !important;
    box-sizing: border-box;
    color: #292B2A !important;
    background: transparent !important;
    border: 1px solid transparent;
    border-radius: 50%;
    transition: background-color .18s ease, color .18s ease;
    cursor: pointer;
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close:hover,
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close:focus-visible {
    background-color: #F0ECE3 !important;
    color: #B77757 !important;
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    display: flex !important;
    flex: 1 0 auto;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    margin: 0 !important;
    padding: clamp(85px, 12vh, 130px) 0 clamp(35px, 8vh, 90px) !important;
    box-sizing: border-box;
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    gap: clamp(10px, 1.5vh, 22px) !important;
    list-style: none;
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
    width: auto !important;
    max-width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    align-items: flex-start !important;
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    display: inline-block;
    max-width: 100%;
    padding: .12em 0 !important;
    border: 0 !important;
    color: #292B2A !important;
    background: none !important;
    font-family: var(--wp--preset--font-family--jost, Jost, sans-serif);
    font-size: clamp(2.3rem, 5vw, 4.25rem) !important;
    font-weight: 400 !important;
    line-height: 1.11 !important;
    letter-spacing: -.035em !important;
    text-align: left;
    text-transform: none;
    text-decoration: none !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal;
    transition: color .18s ease, transform .18s ease;
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover,
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible {
    color: #B77757 !important;
    transform: translateX(5px);
}
.vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible {
    outline: 2px solid #B77757 !important;
    outline-offset: 4px;
}
@media (max-width: 600px) {
    .vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close {
        width: calc(100% - 40px) !important;
    }
    .vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
        padding-top: 92px !important;
        padding-bottom: 42px !important;
    }
    .vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
        gap: clamp(14px, 2.1vh, 23px) !important;
    }
    .vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
        font-size: clamp(2.05rem, 8.8vw, 3rem) !important;
    }
}
@media (max-height: 640px) {
    .vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
        justify-content: flex-start;
        padding-top: 80px !important;
        padding-bottom: 28px !important;
    }
    .vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
        font-size: clamp(1.75rem, 4.5vh, 2.6rem) !important;
    }
    .vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
        gap: 8px !important;
    }
}
@media (prefers-reduced-motion: reduce) {
    .vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
    .vo-site-header .vo-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
        transition: none !important;
    }
}
