/**
 * Menu typography — fixed desktop sizes, isolated from fluid page type scale.
 *
 * Mega menu bar, panels, and mobile accordion do not use clamp() or the
 * global h1–h6 scale. Values match the pre–fluid-typography theme tokens.
 */

:root {
	--westeck-menu-bar-size: 16px;
	--westeck-menu-cta-size: 16px;
	--westeck-menu-panel-nav-size: 18px;
	--westeck-menu-panel-heading-size: 26px;
	--westeck-menu-mobile-primary-size: 23px;
	--westeck-menu-mobile-sub-size: 21px;
	--westeck-menu-mobile-nested-size: 17.85px;
}

/* Mega menu — header bar */
.acf-mega-menu__menu a {
	font-size: var(--westeck-menu-bar-size);
}

.acf-mega-menu__cta {
	font-size: var(--westeck-menu-cta-size);
}

/* Mega menu panels — column titles, plain nav, utility copy */
.nav-text,
.list-plain-nav a,
.list-plain-nav li,
.mega-menu-panel__inner :is(p, li, a).nav-text,
.mega-menu-panel__inner .list-plain-nav :is(a, li) {
	font-size: var(--westeck-menu-panel-nav-size);
}

.mega-menu-panel__inner :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6).wp-block-heading,
.mega-menu-panel__inner :is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6).h5 {
	font-size: var(--westeck-menu-panel-heading-size);
	font-family: var(--font-secondary);
	font-weight: 300;
	line-height: 1.35;
	letter-spacing: 0.01em;
}

.mega-menu-panel__inner .westeck-contact-info,
.mega-menu-panel__inner .westeck-contact-info :is(p, li, a, span) {
	font-size: var(--westeck-menu-panel-nav-size);
}

/* Mobile menu — accordion (≤1024px) */
@media screen and (max-width: 1024px) {
	.westeck-mobile-menu a.westeck-mobile-menu__link {
		padding-block: calc(16px - ((var(--westeck-menu-mobile-primary-size) - var(--westeck-menu-mobile-sub-size)) * 1.35 / 2));
		font-size: var(--westeck-menu-mobile-primary-size);
	}

	.westeck-mobile-menu a.westeck-mobile-menu__sublink {
		font-size: var(--westeck-menu-mobile-sub-size);
	}

	.westeck-mobile-menu a.westeck-mobile-menu__nestedlink {
		font-size: var(--westeck-menu-mobile-nested-size);
	}
}
