.site-header__container {
    padding: var(--wp--preset--spacing--30);
}

.site-header .custom-logo-link {
    width: 50px;
    max-width: 100%;
    display: block;
}

.site-header .custom-logo-link img {
    width: 100%;
    height: auto;
}

.primary-navigation-is-active {
    overflow: hidden;
}

.primary-navigation-is-active .site-header .wp-block-site-logo a {
    position: fixed;
    top: var(--wp--preset--spacing--30);
    left: var(--wp--preset--spacing--30);
    z-index: 1003;
}

.site-header__inner {
    width: 100%;
}

.wp-block-site-logo {
    margin-right: auto !important;
}

header.wp-block-group {
    position: relative;
    z-index: 1002;
}

.primary-navigation {
    position: fixed;
    inset: 0;
    display: flex;
    flex-direction: column;
    padding: var(--wp--preset--spacing--80) var(--wp--preset--spacing--30) var(--wp--preset--spacing--60);
    background: var(--wp--preset--color--off-white);
    z-index: 1001;
    transform: translateX(100%);
    opacity: 0;
    pointer-events: none;
    transition: transform .3s ease, opacity .3s ease;
}

.primary-navigation-is-active .primary-navigation.is-active {
    transform: translateX(0);
    opacity: 1;
    pointer-events: auto;
}

.feather-menu {
    vertical-align: middle;
}

.mobile-book {
    margin-top: auto;
}

.mobile-book .wp-block-button {
    width: 100%;
}

.navigation-button {
    all: unset;
    display: inline-block;
    cursor: pointer;
}
.primary-navigation__close {
    position: absolute;
    top: var(--wp--preset--spacing--30);
    right: var(--wp--preset--spacing--30);
}
.primary-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--20);
}
.primary-menu .menu-item a {
    text-decoration: none;
    display: block;
    padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
    font-size: var(--wp--preset--font-size--medium);
    color: var(--wp--preset--color--off-black);
}
.primary-menu > .menu-item > a {
    font-size: var(--wp--preset--font-size--extra-large);
}
.primary-menu > .menu-item-has-children > a::after {
    display: inline-block;
    font-size: 0.7em;
    content: '';
    vertical-align:  middle;
    width: 2.5em;
    height: 2.5em;
    background: currentColor;
    -webkit-mask: url('../../assets/images/chevron-down.svg') no-repeat center / contain;
    mask: url('../../assets/images/chevron-down.svg') no-repeat center / contain;
    margin-top: -2px;
    margin-left: var(--wp--present--spacing--20);
}
.primary-menu .sub-menu {
    list-style: none;
    padding-left: var(--wp--preset--spacing--40);
    display: none;
}
.primary-menu .menu-item-has-children.is-expanded > a:after {
    transform:  rotate(180deg);
}
.primary-menu .menu-item-has-children.is-expanded > .sub-menu {
    display: block;
}
@media (min-width: 900px) {
    .primary-navigation {
        position: static;
        display: block;
        padding: 0;
        transform: none;
        opacity: 1;
        pointer-events: auto;
    }
    .mobile-book {
        display: none;
    }
    .primary-navigation__close,
    .primary-navigation__toggle {
        display: none;
    }
    .primary-menu {
        flex-direction: row;
        gap: var(--wp--preset--spacing--40);
    }
    .primary-menu > .menu-item > a {
        font-size: var(--wp--preset--font-size--medium);
    }
    .primary-menu li {
        position: relative;
    }
    .primary-menu .sub-menu {
        position: absolute;
        left: 0;
        top: 100%;
        background: var(--wp--preset--color--off-white);
        padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--30) var(--wp--preset--spacing--30);
        min-width: 200px;
        transform: translateY(-10px);
        opacity: 0;
        transition: transform .2s ease, opacity .2s ease;
    }
    .primary-menu li:hover > a:after {
        transform: rotate(180deg);
    }
    .primary-menu li:hover > .sub-menu {
        display: block;
        transform: translateY(0);
        opacity: 1;
    }
}

.entry-content {
    margin: 0;
}