/* Original Media Library artwork, contained in the existing header height. */
.site-header .pranax-brand {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	width: 193px;
	height: 56px;
	line-height: 0;
	letter-spacing: 0;
}

/* One desktop rhythm: the gap separates complete items, while each caret sits 8px from its label. */
@media (min-width: 1181px) {
    .site-header .pranax-primary-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container {
        column-gap: clamp(18px, 1.6vw, 25px);
        flex-wrap: nowrap;
    }
    .site-header .pranax-primary-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item {
        flex: 0 0 auto;
        column-gap: 8px;
        margin-inline: 0;
        padding-inline: 0;
    }
    .site-header .pranax-primary-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
        padding-inline: 0;
    }
    .site-header .pranax-primary-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle {
        position: relative;
        display: inline-grid;
        width: 12px;
        min-width: 12px;
        height: 24px;
        min-height: 24px;
        margin: 0;
        padding: 0;
        flex: 0 0 12px;
        place-items: center;
    }
    .site-header .pranax-primary-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle::after {
        content: "";
        position: absolute;
        inset: -10px -6px;
    }
    .site-header .pranax-primary-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle svg {
        width: 12px;
        height: 12px;
    }
}

/* Reuse WooCommerce's native account block; the shop already has its own account control. */
@media (min-width: 782px) {
    .site-header:not(.pxshop-header) > .site-header__inner > .wp-block-woocommerce-customer-account {
        display: flex;
        flex: 0 0 40px;
        margin: 0;
    }
    .site-header .wp-block-woocommerce-customer-account .wc-block-customer-account__link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        min-height: 44px;
        padding: 0;
        border-radius: 4px;
        color: var(--wp--preset--color--navy);
        text-decoration: none;
    }
    .site-header .wc-block-customer-account__visual { margin: 0; }
    .site-header .wc-block-customer-account__account-icon { width: 28px; height: 28px; }
}
.site-header .wc-block-customer-account__link:focus-visible,
.site-header .pxshop-account:focus-visible {
    outline: 2px solid #986a22;
    outline-offset: 3px;
}
.site-header .pranax-primary-nav .pranax-mobile-account { display: none; }


.site-header .pranax-brand img {
	display: block;
	flex: 0 0 auto;
	object-fit: contain;
}

.site-header .pranax-brand__symbol { width: 56px; height: 56px; }
.site-header .pranax-brand__name { width: 132px; height: auto; }

@media (max-width: 781px) {
	.site-header .pranax-brand { width: 164px; height: 48px; gap: 4px; }
	.site-header .pranax-brand__symbol { width: 48px; height: 48px; }
	.site-header .pranax-brand__name { width: 112px; }
}

/* Reversible wordmark-only preview; retain the navigation's existing footprint. */
.site-header .pranax-brand { justify-content: center; gap: 0; }
.site-header .pranax-brand .pranax-brand__symbol { display: none; }
.site-header .pranax-brand__name { width: 176px; }
@media (max-width: 781px) {
	.site-header .pranax-brand__name { width: 148px; }
}

/* Shared homepage lockup: full-height original symbol, signature under the wordmark only. */
.site-header .pranax-brand__tagline { display: none; }
body .site-header a.pranax-wordmark.pranax-brand {
	display: grid;
	grid-template-columns: 56px 132px;
	grid-template-rows: 46px 10px;
	column-gap: 5px;
	row-gap: 0;
	align-items: center;
}
body .site-header a.pranax-wordmark.pranax-brand .pranax-brand__symbol {
	display: block;
	grid-column: 1;
	grid-row: 1 / 3;
	width: 56px;
	height: 56px;
}
body .site-header a.pranax-wordmark.pranax-brand .pranax-brand__name {
	grid-column: 2;
	grid-row: 1;
	width: 132px;
	height: 46px;
}
body .site-header a.pranax-wordmark.pranax-brand .pranax-brand__tagline {
	display: block;
	grid-column: 2;
	grid-row: 2;
	color: #071a59;
	font-family: var(--wp--preset--font-family--sans, Arial, sans-serif);
	font-size: 8.5px;
	font-weight: 500;
	line-height: 10px;
	letter-spacing: .65px;
	box-sizing: border-box;
	padding-inline-end: 8px;
	white-space: nowrap;
	text-align: center;
	/* Optical alignment with the visible P and X, excluding image padding and the registered mark. */
	transform: translateX(-.4px);
}
@media (max-width: 781px) {
	body .site-header a.pranax-wordmark.pranax-brand {
		grid-template-columns: 48px 112px;
		grid-template-rows: 39px 9px;
		column-gap: 4px;
	}
	body .site-header a.pranax-wordmark.pranax-brand .pranax-brand__symbol { width: 48px; height: 48px; }
	body .site-header a.pranax-wordmark.pranax-brand .pranax-brand__name { width: 112px; height: 39px; }
	body .site-header a.pranax-wordmark.pranax-brand .pranax-brand__tagline { font-size: 7.2px; line-height: 9px; letter-spacing: .55px; padding-inline-end: 7px; transform: translateX(-.25px); }
}

/* Keep the same logo proportions beside the shop's existing utility controls. */
@media (max-width: 374px) {
	body.pranax-shop-boutique .pxshop-header a.pranax-wordmark.pranax-brand { zoom: .67; height: calc(48px / .67); align-content: center; }
}

/* Native Navigation submenu: premium surface on desktop, readable hierarchy in Core's mobile overlay. */
.site-header .wp-block-navigation__submenu-icon {
	width: 16px;
	height: 16px;
	margin-inline-start: 3px;
	color: #986a22;
}

@media (min-width: 1181px) {
	.site-header .wp-block-navigation__submenu-container {
		min-width: 248px !important;
		margin-top: 9px;
		padding: 9px !important;
		border: 1px solid rgb(152 106 34 / 0.18) !important;
		border-radius: 10px;
		background: #fffdf9 !important;
		box-shadow: 0 18px 44px rgb(16 34 53 / 0.12);
		color: #102235 !important;
	}

	.site-header .wp-block-navigation__submenu-container::before {
		position: absolute;
		top: -10px;
		left: 0;
		width: 100%;
		height: 10px;
		content: "";
	}

	.site-header .wp-block-navigation__submenu-container > .wp-block-navigation-item {
		width: 100%;
	}

	.site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
		display: flex;
		width: 100%;
		min-height: 44px;
		box-sizing: border-box;
		padding: 10px 13px !important;
		align-items: center;
		border-radius: 6px;
		font-size: 13px;
		line-height: 1.25;
		white-space: normal;
	}

	.site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
	.site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible {
		background: #f4f1e9;
		color: #102235;
	}
}

/* Native Core Navigation drawer. Desktop navigation keeps its original rules below. */
.pranax-drawer-heading, .pranax-drawer-cta { display: none; }
.site-header nav.pranax-drawer-nav .is-menu-open,
.site-header nav.pranax-drawer-nav .is-menu-open * { box-sizing: border-box; }
@media (min-width: 1181px) and (max-width: 1360px) {
    body.pranax-shop-boutique .pxshop-header .pranax-primary-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
    body.pranax-shop-boutique .pxshop-header .pranax-primary-nav .wp-block-navigation__responsive-container-open { display: flex !important; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open {
    position: fixed; inset: 0; display: block; height: 100vh; height: 100dvh; padding: 0; overflow: hidden;
    /* Core sets the overlay background with !important for uncoloured navigation blocks. */
    background: rgb(16 34 53 / .28) !important; color: var(--wp--preset--color--navy); animation: pranax-drawer-overlay 240ms ease-out;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close {
    width: min(92vw, 440px); max-width: none; height: 100%; margin: 0 0 0 auto;
    background: var(--wp--preset--color--ivory); box-shadow: -12px 0 40px rgb(16 34 53 / .1); animation: pranax-drawer-enter 240ms ease-out;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog { display: flex; flex-direction: column; height: 100%; margin: 0; }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .pranax-drawer-heading {
    display: flex; flex: 0 0 auto; min-height: 78px; align-items: center; justify-content: space-between; gap: 12px;
    padding: max(12px, env(safe-area-inset-top)) 20px 12px; border-bottom: 1px solid var(--wp--preset--color--sand); background: var(--wp--preset--color--ivory);
}
.pranax-drawer-brand { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; }
.pranax-drawer-symbol { width: 44px; height: 44px; object-fit: contain; }
.pranax-drawer-wordmark { width: 112px; height: 40px; object-fit: contain; }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
    position: static; display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; margin: 0; padding: 10px;
    color: var(--wp--preset--color--navy); border: 1px solid var(--wp--preset--color--sand); border-radius: 50%; background: transparent;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    display: flex; flex: 1 1 auto; min-height: 0; align-items: stretch; justify-content: flex-start; gap: 18px;
    padding: 12px 22px max(24px, env(safe-area-inset-bottom)); overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    display: flex; flex: 0 0 auto; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 0;
    width: 100%; margin: 0 !important; padding: 0; text-align: left;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { width: 100%; flex-direction: row; align-items: center; flex-wrap: wrap; column-gap: 0; margin: 0; }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    display: flex; align-items: center; flex: 1 1 auto; min-width: 0; min-height: 48px; padding: 8px 4px;
    color: var(--wp--preset--color--navy); font-size: 19px; font-weight: 500; line-height: 1.35; white-space: normal; text-decoration: none; border-radius: 4px;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content[aria-current="page"] {
    color: #87672c; text-decoration: underline; text-decoration-color: var(--wp--preset--color--champagne); text-decoration-thickness: 1px; text-underline-offset: 6px;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover { background: var(--wp--preset--color--sand); }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu > .wp-block-navigation-item__content { flex-basis: calc(100% - 44px); }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle {
    position: static; display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; margin: 0; padding: 12px; color: #87672c; border-radius: 50%;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle svg { width: 16px; height: 16px; transition: transform 200ms ease; }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
    position: static; display: flex; flex: 0 0 100%; align-items: stretch; gap: 0; width: 100%; min-width: 0 !important; height: auto;
    margin: 0; padding: 0 0 8px 16px !important; visibility: visible; opacity: 1; overflow: visible; border: 0 !important; background: transparent !important;
    box-shadow: none; animation: pranax-drawer-overlay 180ms ease-out;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container[hidden] { display: none !important; }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container::before { display: none; }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    min-height: 44px; padding: 8px 10px !important; font-size: 15px; font-weight: 400; line-height: 1.4; border-left: 1px solid var(--wp--preset--color--champagne); border-radius: 0;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .pranax-mobile-account { display: flex; order: 10; margin: 10px 0 0; padding: 10px 0 0; border-top: 1px solid var(--wp--preset--color--sand); border-bottom: 0; }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .pranax-mobile-account .wp-block-navigation-item__content { font-size: 15px; }
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .pranax-drawer-cta {
    display: flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 12px; min-height: 48px; padding: 12px 16px;
    border: 1px solid var(--wp--preset--color--champagne); border-radius: 999px; background: var(--wp--preset--color--champagne);
    color: var(--wp--preset--color--navy); font-size: 14px; font-weight: 600; line-height: 1.4; text-align: center; text-decoration: none;
}
.site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open :is(a, button):focus-visible { outline: 2px solid #87672c; outline-offset: 3px; }
@media (max-width: 340px) {
    .site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close { width: 100%; }
    .site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-inline: 18px; }
}
@keyframes pranax-drawer-enter { from { transform: translateX(100%); } to { transform: translateX(0); } }
@keyframes pranax-drawer-overlay { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
    .site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open,
    .site-header nav.pranax-drawer-nav .wp-block-navigation__responsive-container.is-menu-open * { animation: none !important; transition: none !important; scroll-behavior: auto; }
}
/* Current section: paint only, preserving navigation and sticky header geometry. */
.site-header nav.pranax-primary-nav .wp-block-navigation-item:is(.current-menu-item, .current-menu-ancestor) > .wp-block-navigation-item__content,
.site-header nav.pranax-primary-nav .is-menu-open .wp-block-navigation-item:is(.current-menu-item, .current-menu-ancestor) > .wp-block-navigation-item__content {
    color: #87672c;
    text-decoration-line: underline;
    text-decoration-color: #c4a15d;
    text-decoration-thickness: 2px;
    text-underline-offset: 6px;
    text-decoration-skip-ink: auto;
}
/* Keep Core's header wrapper sticky; its inner header cannot escape a header-height parent. */
.wp-site-blocks > header.wp-block-template-part:has(> .site-header) {
    position: sticky;
    top: var(--wp-admin--admin-bar--height, 0px);
    z-index: 100;
}

