@media screen and (min-width: 1200px) {
    #site-header {
        top: 0;
        height: 92px;
        background: #ffffff;
        background-color: #ffffff;
        background-image: none;
        border-bottom: 1px solid rgba(15, 23, 42, 0.08);
        box-shadow: 0 10px 32px rgba(15, 23, 42, 0.08);
        padding-right: clamp(24px, 3vw, 48px);
    }

    #header-block {
        height: 92px;
    }

    #site-logo {
        padding-left: clamp(24px, 3vw, 48px);
    }

    #site-logo img {
        display: block;
        height: 38px;
        width: auto;
        max-width: none;
    }

    #site-navigation {
        flex: 1 1 auto;
        align-items: center;
        justify-content: space-between;
        gap: clamp(24px, 3vw, 56px);
        height: 100%;
        padding-right: 0;
        padding-left: clamp(28px, 4vw, 72px);
    }

    #site-navigation ul a {
        color: #111827;
    }

    .primary-menu,
    .language-menu {
        height: 100%;
        align-items: center;
        gap: clamp(10px, 1.5vw, 22px);
    }

    .primary-menu>li,
    .language-menu>li {
        display: flex;
        align-items: center;
        height: auto;
        transform: none;
        border: 0;
        background: transparent;
    }

    .primary-menu>li:last-child,
    .language-menu>li:last-child {
        border: 0;
    }

    .primary-menu>li:hover,
    .language-menu>li:hover,
    .primary-menu>li.current-menu-item:not(.anchor-nav-link),
    .primary-menu>li.current-menu-ancestor,
    .language-menu>li.current-menu-item:not(.anchor-nav-link) {
        background: transparent;
    }

    .primary-menu>li>a,
    .language-menu>li>a {
        display: flex;
        align-items: center;
        height: auto;
        padding: .5rem;
        padding-right: .5rem !important;
        color: #111827;
        font-size: 0.95rem;
        font-weight: 500;
        letter-spacing: 0.08em;
    }

    .primary-menu>li>a>span,
    .language-menu>li>a>span {
        transform: none;
        position: relative;
        display: inline-flex;
        align-items: center;
    }

    .primary-menu>li>a>span::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: -12px;
        height: 2px;
        background: var(--wp--preset--color--header-orange);
        transform: scaleX(0);
        transform-origin: left center;
        opacity: 0;
        transition: transform 0.2s ease, opacity 0.2s ease;
    }

    .primary-menu>li:hover>a,
    .primary-menu>li.current-menu-item:not(.anchor-nav-link)>a,
    .primary-menu>li.current-menu-ancestor>a {
        color: #d89f3b;
    }

    .primary-menu>li:hover>a>span::after,
    .primary-menu>li.current-menu-item:not(.anchor-nav-link)>a>span::after,
    .primary-menu>li.current-menu-ancestor>a>span::after {
        transform: scaleX(1);
        opacity: 1;
    }

    #site-navigation>ul>li.menu-item-has-children::after {
        content: "";
        position: absolute;
        top: 100%;
        left: 0;
        width: max(100%, 230px);
        height: 26px;
    }

    .submenu-toggle-container {
        display: flex;
        align-items: center;
    }

    .submenu-button {
        padding-left: 10px;
        padding-right: 0;
        height: auto;
        color: #111827;
    }

    .submenu-button:hover,
    .submenu-button:focus-within {
        background: transparent;
    }

    .submenu-button .submenu-button-icon {
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 5px 0 5px 7px;
        border-color: transparent transparent transparent currentColor;
        transition: transform 0.2s ease, color 0.2s ease;
    }

    .primary-menu>li:hover>.submenu-toggle-container .submenu-button,
    .primary-menu>li.current-menu-item:not(.anchor-nav-link)>.submenu-toggle-container .submenu-button,
    .primary-menu>li.current-menu-ancestor>.submenu-toggle-container .submenu-button {
        color: #d89f3b;
    }

    #site-navigation>ul>li>.submenu-container {
        left: 0;
    }

    #site-navigation>ul>li>.submenu-container,
    #site-navigation>ul>li>.submenu-container>.sub-menu,
    #site-navigation>ul>li>.submenu-container>.sub-menu .sub-menu {
        transform: none;
        -webkit-transform: none;
    }

    #site-navigation>ul>li>.submenu-container {
        position: absolute;
        top: 100%;
        padding-top: 14px;
    }

    #site-navigation>ul>li>.submenu-container::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 18px;
    }

    #site-navigation>ul>li>.submenu-container>.sub-menu {
        top: auto;
        left: auto;
        min-width: 214px;
        max-width: none;
        padding: 14px 0;
        background: var(--wp--preset--color--header-blue);
        border-radius: 24px 0 0 24px;
        box-shadow: 0 24px 52px rgba(15, 23, 42, 0.18);
        overflow: visible;
    }

    #site-navigation>ul>li>.submenu-container>.sub-menu .sub-menu {
        left: 100%;
        top: 0;
        min-width: 162px;
        background: var(--wp--preset--color--header-orange);
        border-radius: 0 24px 24px 0;
        box-shadow: 0 24px 52px rgba(15, 23, 42, 0.18);
    }

    #site-navigation ul .sub-menu {
        opacity: 0;
        visibility: hidden;
        font-size: .9rem;
        transition: opacity 0.22s ease, visibility 0s linear 0.34s;
    }

    #site-navigation ul .sub-menu li {
        min-height: 0;
    }

    #site-navigation ul .sub-menu a {
        padding: 7px 16px;
        color: #ffffff;
        font-weight: 400;
        letter-spacing: 0.01em;
        line-height: 1.25;
        text-transform: none;
    }

    #site-navigation ul .sub-menu li.current-menu-item:not(.anchor-nav-link)>a,
    #site-navigation ul .sub-menu li:hover>a {
        color: #ffffff;
        background: rgba(255, 255, 255, 0.14);
    }

    #site-navigation ul .sub-menu li.current-menu-item:not(.anchor-nav-link)>.submenu-toggle-container,
    #site-navigation ul .sub-menu li:hover>.submenu-toggle-container {
        background: rgba(255, 255, 255, 0.14);
    }

    #site-navigation ul .sub-menu .submenu-toggle-container {
        position: static;
        display: flex;
        align-items: center;
        padding-right: 14px;
    }

    #site-navigation ul .sub-menu .submenu-button {
        color: #ffffff;
        padding-left: 0;
    }

    #site-navigation ul li.menu-item-has-children:hover>.submenu-container>.sub-menu,
    #site-navigation ul li.menu-item-has-children:focus-within>.submenu-container>.sub-menu {
        opacity: 1;
        visibility: visible;
        transition-delay: 0s;
    }

    .language-menu {
        margin-left: auto;
        padding-left: clamp(10px, 1.8vw, 24px);
        gap: 0;
    }

    .language-menu>li>.submenu-container {
        left: auto;
        right: 0;
    }

    .language-menu>li>a {
        color: #848b98;
        font-size: 0.92rem;
        letter-spacing: 0.12em;
    }

    .language-menu>li>a:hover,
    .language-menu>li:focus-within>a {
        color: #111827;
    }

    .pll-parent-menu-item>a>span {
        min-height: 0;
        gap: 8px;
    }

    .pll-parent-menu-item>a>span>img,
    .language-menu .sub-menu span>img {
        display: none;
    }

    html[lang^="fi"] .pll-parent-menu-item>a>span::before {
        content: "FI";
    }

    html[lang^="sv"] .pll-parent-menu-item>a>span::before {
        content: "SV";
    }

    html[lang^="en"] .pll-parent-menu-item>a>span::before {
        content: "EN";
    }

    html[lang^="nb"] .pll-parent-menu-item>a>span::before,
    html[lang^="nn"] .pll-parent-menu-item>a>span::before {
        content: "NO";
    }

    .language-menu .sub-menu a[lang="fi"] span::before {
        content: "FI";
    }

    .language-menu .sub-menu a[lang="sv"] span::before {
        content: "SV";
    }

    .language-menu .sub-menu a[lang="en"] span::before {
        content: "EN";
    }

    .language-menu .sub-menu a[lang="nb"] span::before,
    .language-menu .sub-menu a[lang="nn"] span::before {
        content: "NO";
    }

    .pll-parent-menu-item>a>span::after {
        margin-left: 0;
        border-width: 5px 4px 0;
        border-color: currentColor transparent transparent;
    }

    .language-menu .sub-menu {
        right: 0;
        left: auto;
        min-width: 90px;
        padding: 8px 0;
        background: #ffffff;
        border-radius: 16px;
        box-shadow: 0 16px 36px rgba(15, 23, 42, 0.14);
    }

    .language-menu .sub-menu a {
        color: #111827;
        font-size: 0.84rem;
        font-weight: 600;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    .language-menu .sub-menu li:hover>a,
    .language-menu .sub-menu li.current-menu-item:not(.anchor-nav-link)>a {
        color: #d89f3b;
        background: rgba(216, 159, 59, 0.08);
    }
}

@media screen and (min-width: 1200px) {
    body.admin-bar #site-header {
        top: 32px;
    }
}

@media screen and (max-width: 1199.98px) {
    #site-header {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        height: 72px;
        background: #ffffff;
        background-color: #ffffff;
        background-image: none;
        border-bottom: 1px solid rgba(15, 23, 42, 0.08);
        box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
        padding-right: 10px;
    }

    #header-block {
        height: 72px;
    }

    #site-logo {
        width: auto;
        padding-left: 16px;
    }

    #site-logo img {
        display: block;
        height: 30px;
        width: auto;
        max-width: none;
    }

    #site-nav-button {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-left: auto;
        padding-right: 10px;
        padding-left: 10px;
        height: 72px;
    }

    .hamburger-inner,
    .hamburger-inner::before,
    .hamburger-inner::after,
    .hamburger.is-active .hamburger-inner,
    .hamburger.is-active .hamburger-inner::before,
    .hamburger.is-active .hamburger-inner::after {
        background-color: #111827;
    }

    #site-navigation {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 10px;
        padding: 14px 14px 18px;
        background: rgba(255, 255, 255, 0.98);
        box-shadow: 0 20px 40px rgba(15, 23, 42, 0.12);
        max-height: calc(100vh - 72px);
        overflow: auto;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
    }

    #site-navigation ul a {
        color: #111827;
        text-transform: uppercase;
        text-decoration: none;
    }

    .primary-menu,
    .language-menu {
        width: 100%;
        flex-basis: auto;
        flex-direction: column;
        gap: 8px;
        padding-left: 0;
        margin: 0;
    }

    .primary-menu>li,
    .language-menu>li {
        position: relative;
        display: block;
        width: 100%;
        min-height: 58px;
    }

    .primary-menu>li>a,
    .language-menu>li>a {
        display: flex;
        align-items: center;
        min-height: 58px;
        padding: 0 84px 0 18px;
        border-radius: 18px;
        color: #111827;
        font-size: 0.95rem;
        font-weight: 600;
        letter-spacing: 0.08em;
        background: #f8fafc;
    }

    .primary-menu>li.current-menu-item:not(.anchor-nav-link)>a,
    .primary-menu>li.current-menu-ancestor>a,
    .language-menu>li.current-menu-item:not(.anchor-nav-link)>a {
        color: var(--wp--preset--color--header-orange);
        background: rgba(247, 147, 29, 0.1);
    }

    #site-navigation ul a:hover {
        color: var(--wp--preset--color--header-orange);
        background: rgba(247, 147, 29, 0.1);
    }

    #site-navigation .submenu-toggle-container {
        position: absolute;
        top: 0;
        right: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 72px;
        height: 58px;
        transform: none;
    }

    #site-navigation .submenu-button {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 72px;
        height: 58px;
        padding: 0;
        color: #000000 !important;
        background: transparent;
    }

    #site-navigation .submenu-button:hover,
    #site-navigation .submenu-button:focus-within {
        background: transparent;
    }

    #site-navigation .submenu-button .submenu-button-icon {
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 7px 0 7px 10px;
        border-color: transparent transparent transparent #000000;
        transition: transform 0.22s ease, color 0.22s ease;
    }

    .submenu-opened .submenu-button-icon {
        transform: rotate(90deg);
    }

    .submenu-container {
        position: static;
        width: 100%;
        padding-top: 8px;
    }

    #site-navigation ul .sub-menu>li {
        position: relative;
        min-height: 50px;
    }

    #site-navigation ul .sub-menu {
        display: none;
        padding-left: 0;
        margin: 0;
        opacity: 1;
        visibility: visible;
        font-size: 0.98rem;
        list-style: none;
    }

    #site-navigation .submenu-do-animation {
        max-height: none;
        opacity: 1;
        visibility: visible;
        transition: none;
    }

    #site-navigation .submenu-do-animation>.sub-menu {
        display: block;
    }

    #site-navigation>ul>li>.submenu-container>.sub-menu {
        background: var(--wp--preset--color--header-blue);
        border-radius: 22px;
        padding: 8px 0;
        box-shadow: 0 16px 28px rgba(15, 23, 42, 0.14);
    }

    #site-navigation>ul>li>.submenu-container>.sub-menu>li>a {
        display: flex;
        align-items: center;
        min-height: 50px;
        padding: 0 74px 0 18px;
        color: #ffffff;
        font-weight: 500;
        letter-spacing: 0.02em;
        text-transform: none;
        background: transparent;
    }

    #site-navigation>ul>li>.submenu-container>.sub-menu>li>.submenu-container {
        padding-top: 6px;
    }

    #site-navigation>ul>li>.submenu-container>.sub-menu .sub-menu {
        background: var(--wp--preset--color--header-orange);
        border-radius: 18px;
        margin: 6px 10px 6px 14px;
        padding: 6px 0;
        box-shadow: none;
    }

    #site-navigation>ul>li>.submenu-container>.sub-menu .sub-menu a {
        display: flex;
        align-items: center;
        min-height: 48px;
        padding: 0 70px 0 16px;
        color: #ffffff;
        font-weight: 500;
        letter-spacing: 0.01em;
        text-transform: none;
        background: transparent;
    }

    #site-navigation ul .sub-menu>li>.submenu-toggle-container {
        width: 68px;
        height: 50px;
    }

    #site-navigation ul .sub-menu>li>.submenu-toggle-container .submenu-button {
        width: 68px;
        height: 50px;
        color: #ffffff !important;
    }

    #site-navigation ul .sub-menu>li>.submenu-toggle-container .submenu-button-icon {
        border-color: transparent transparent transparent #ffffff;
    }

    #site-navigation ul .sub-menu li.current-menu-item:not(.anchor-nav-link)>a,
    #site-navigation ul .sub-menu li:hover>a {
        color: #ffffff;
        background: rgba(255, 255, 255, 0.14);
    }

    #site-navigation ul .sub-menu li.current-menu-item:not(.anchor-nav-link)>.submenu-toggle-container,
    #site-navigation ul .sub-menu li:hover>.submenu-toggle-container {
        background: transparent;
    }

    .language-menu {
        padding-top: 8px;
        margin-top: 4px;
        border-top: 1px solid rgba(15, 23, 42, 0.08);
    }

    .pll-parent-menu-item>a>span {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        min-height: 0;
    }

    .pll-parent-menu-item>a>span>img,
    .language-menu .sub-menu span>img {
        display: none;
    }

    html[lang^="fi"] .pll-parent-menu-item>a>span::before {
        content: "FI";
    }

    html[lang^="sv"] .pll-parent-menu-item>a>span::before {
        content: "SV";
    }

    html[lang^="en"] .pll-parent-menu-item>a>span::before {
        content: "EN";
    }

    html[lang^="nb"] .pll-parent-menu-item>a>span::before,
    html[lang^="nn"] .pll-parent-menu-item>a>span::before {
        content: "NO";
    }

    .language-menu .sub-menu a[lang="fi"] span::before {
        content: "FI";
    }

    .language-menu .sub-menu a[lang="sv"] span::before {
        content: "SV";
    }

    .language-menu .sub-menu a[lang="en"] span::before {
        content: "EN";
    }

    .language-menu .sub-menu a[lang="nb"] span::before,
    .language-menu .sub-menu a[lang="nn"] span::before {
        content: "NO";
    }

    .pll-parent-menu-item>a>span::after {
        content: "";
        border-width: 5px 4px 0;
        border-style: solid;
        border-color: currentColor transparent transparent;
        margin-left: 0;
    }

    .language-menu .sub-menu {
        background: #f8fafc;
        border-radius: 16px;
        margin-top: 8px;
        padding: 6px 0;
    }

    .language-menu .sub-menu a {
        color: #111827;
        font-size: 0.84rem;
        font-weight: 600;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        background: transparent;
    }

    .language-menu .sub-menu li:hover>a,
    .language-menu .sub-menu li.current-menu-item:not(.anchor-nav-link)>a {
        color: var(--wp--preset--color--header-orange);
        background: rgba(247, 147, 29, 0.08);
    }
}

@media screen and (max-width: 782px) {
    body.admin-bar #site-header {
        top: 46px;
    }
}

@media screen and (min-width: 783px) and (max-width: 1199.98px) {
    body.admin-bar #site-header {
        top: 32px;
    }
}

@media only screen and (max-width: 1199.98px) {
    #site-navigation .primary-menu>li>.submenu-toggle-container {
        height: 58px;
    }
}