/**
 * Global fixed primary navigation.
 * Loaded in the critical path and again as the final stylesheet so every
 * template keeps the same reliable navigation behaviour.
 */
:root {
	--wzd-fixed-nav-height: 85px;
}

html {
	scroll-padding-top: calc(var(--wzd-fixed-nav-height) + 16px);
}

html body {
	padding-top: var(--wzd-fixed-nav-height) !important;
}

html body .wzd-nav.wzd-nav {
	position: fixed !important;
	top: 0 !important;
	right: 0;
	left: 0;
	z-index: 1000 !important;
	width: 100%;
}

.admin-bar .wzd-nav {
	top: 32px !important;
}

.wzd-menu-overlay {
	z-index: 1100 !important;
}

.wzd-drawer {
	z-index: 1101 !important;
}

@media screen and (max-width: 980px) {
	:root {
		--wzd-fixed-nav-height: 69px;
	}
}

@media screen and (max-width: 782px) {
	.admin-bar .wzd-nav {
		top: 46px !important;
	}
}

@media print {
	html body {
		padding-top: 0 !important;
	}
}

/* Keep the collapsed contact stack out of the trigger's vertical flow.
 * Legacy bundles use column-reverse, which pushes the visible trigger over
 * tablet content even while the stack is transparent. */
.wzd-fab {
	flex-direction: column !important;
}

/* Product and article templates already expose persistent quote/LINE/phone
 * actions on small screens.  A second contact trigger obscures those actions. */
@media screen and (max-width: 768px) {
	body.single-product .wzd-fab,
	body.single-post .wzd-fab {
		display: none !important;
	}
}

/* Prevent iOS Safari from zooming the viewport when compact form controls
 * receive focus on phone and tablet layouts. */
@media screen and (max-width: 1024px) {
	html body.wzd-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="button"]),
	html body.wzd-body select:not([multiple]),
	html body.wzd-body textarea:not([readonly]) {
		font-size: 16px !important;
	}
}
