/* ---- Top bar (phone/email), cream background, hidden ≤1024px ---- */
.plu-topbar {
	background: var(--wp--preset--color--cream);
	font-family: var(--wp--preset--font-family--nunito);
}

.plu-topbar__inner {
	max-width: var(--wp--style--global--wide-size, 1200px);
	margin: 0 auto;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 1.75rem;
	padding: 0.4rem 1.5rem;
	font-size: 0.9rem;
}

.plu-topbar a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.plu-topbar a:hover {
	color: var(--wp--preset--color--purple-dark);
}

.plu-topbar svg {
	width: 15px;
	height: 15px;
	flex-shrink: 0;
}

@media (max-width: 1024px) {
	.plu-topbar {
		display: none;
	}
}

/* ---- Main header row ---- */
.plu-header {
	position: sticky;
	top: 0;
	z-index: 40;
	background: var(--wp--preset--color--white);
	transition: box-shadow 0.2s ease;
}

.plu-header.is-scrolled {
	box-shadow: 0 2px 14px rgba(46, 42, 69, 0.14);
}

.plu-header__inner {
	max-width: var(--wp--style--global--wide-size, 1200px);
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	padding: 0.85rem 1.5rem;
}

/* ---- Logo lockup ---- */
.plu-logo {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	text-decoration: none;
	flex-shrink: 0;
}

.plu-logo__mark {
	width: 40px;
	height: 40px;
	flex-shrink: 0;
}

.plu-logo__wordmark {
	font-family: var(--wp--preset--font-family--poppins);
	font-weight: 700;
	font-size: 1.4rem;
	letter-spacing: 0.03em;
	white-space: nowrap;
}

.plu-logo__plur {
	color: var(--wp--preset--color--purple-dark);
}

.plu-logo__aba {
	color: var(--wp--preset--color--teal-dark);
}

/* ---- Header actions (phone icon + CTA) ---- */
.plu-header__actions {
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-shrink: 0;
}

.plu-header__phone-icon {
	display: none;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 999px;
	color: var(--wp--preset--color--purple-dark);
	flex-shrink: 0;
}

.plu-header__phone-icon svg {
	width: 22px;
	height: 22px;
}

.plu-header__cta.wp-block-button .wp-block-button__link {
	white-space: nowrap;
}

@media (max-width: 1024px) {
	.plu-header__phone-icon {
		display: inline-flex;
	}

	.plu-header__cta {
		display: none;
	}
}

/* ---- Navigation: force core's overlay markup to a custom 1024px breakpoint
   instead of its built-in 600px one. overlayMenu:"always" keeps the toggle
   button + overlay container in the DOM (with full focus-trap/ESC/aria-expanded
   behavior) at every width; these rules just decide which is visually shown. ---- */
@media (min-width: 1025px) {
	.plu-header__nav .wp-block-navigation__responsive-container-open {
		display: none !important;
	}

	.plu-header__nav .wp-block-navigation__responsive-container {
		display: flex !important;
		position: relative !important;
		width: auto !important;
		height: auto !important;
		z-index: auto !important;
		background: transparent !important;
		overflow: visible !important;
	}

	.plu-header__nav .wp-block-navigation__responsive-container-close {
		display: none !important;
	}

	.plu-header__nav .plu-nav-mobile-cta {
		display: none;
	}
}

.plu-header__nav .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--poppins);
	font-weight: 600;
	color: var(--wp--preset--color--ink);
}

.plu-header__nav .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--purple-dark);
}

.plu-header__nav .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--white);
}

.plu-header__nav .plu-nav-mobile-cta {
	margin-top: 1.5rem;
}
