/* Small Vitalix-only overrides. The mobile header and drawer layout come
 * directly from the shared VSMedic header styles. */
.wc-block-components-product-metadata {
	display: none !important;
}

@keyframes vitalix-navigation-drawer-open {
	from {
		transform: translate3d(-100%, 0, 0);
	}

	to {
		transform: translate3d(0, 0, 0);
	}
}

@keyframes vitalix-navigation-drawer-close {
	from {
		transform: translate3d(0, 0, 0);
	}

	to {
		transform: translate3d(-100%, 0, 0);
	}
}

@media (max-width: 599px) {
	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open {
		background: transparent !important;
		animation: none !important;
	}

	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close {
		min-height: 100vh !important;
		min-height: 100dvh !important;
		background: #fff !important;
		will-change: transform;
		animation: vitalix-navigation-drawer-open 0.38s cubic-bezier(0.22, 1, 0.36, 1) both !important;
	}

	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open.is-menu-closing .wp-block-navigation__responsive-close {
		pointer-events: none !important;
		animation: vitalix-navigation-drawer-close 0.3s cubic-bezier(0.4, 0, 1, 1) both !important;
	}

	header.wp-block-template-part .wp-block-group.alignwide.is-nowrap {
		display: flex !important;
		width: 100% !important;
		min-height: 62px !important;
		padding: 8px 14px !important;
		align-items: center !important;
		justify-content: space-between !important;
		flex-wrap: nowrap !important;
		gap: 10px !important;
	}

	header.wp-block-template-part .wp-block-group.alignwide.is-nowrap > .wp-block-site-logo {
		min-width: 0 !important;
		margin: 0 !important;
		flex: 0 1 auto !important;
	}

	header.wp-block-template-part .wp-block-group.alignwide.is-nowrap > .wp-block-site-logo img {
		display: block !important;
		width: 112px !important;
		max-width: 112px !important;
		max-height: 46px !important;
		height: auto !important;
		object-fit: contain !important;
	}

	header.wp-block-template-part .wp-block-site-logo + .wp-block-group {
		display: flex !important;
		min-width: 100px !important;
		margin: 0 0 0 auto !important;
		padding: 0 !important;
		align-items: center !important;
		justify-content: flex-end !important;
		flex: 0 0 auto !important;
		gap: 14px !important;
	}

	header.wp-block-template-part .wp-block-site-logo + .wp-block-group > .wp-block-navigation,
	header.wp-block-template-part .wp-block-site-logo + .wp-block-group > .wc-block-mini-cart {
		display: flex !important;
		margin: 0 !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	header.wp-block-template-part .wp-block-navigation__responsive-container-open,
	header.wp-block-template-part .wp-block-navigation__responsive-container-open:hover,
	header.wp-block-template-part .wp-block-navigation__responsive-container-open:focus,
	header.wp-block-template-part .wp-block-navigation__responsive-container-open:active,
	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close,
	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close:hover,
	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close:focus,
	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close:active {
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}

	header.wp-block-template-part .wp-block-navigation__responsive-container-open:not(.is-menu-active) {
		display: inline-flex !important;
		width: 42px !important;
		height: 42px !important;
		min-width: 42px !important;
		min-height: 42px !important;
		margin: 0 !important;
		padding: 9px !important;
		align-items: center !important;
		justify-content: center !important;
		color: #0f3d5c !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	header.wp-block-template-part .wp-block-navigation__responsive-container-open:not(.is-menu-active) svg {
		display: block !important;
		width: 24px !important;
		height: 24px !important;
		fill: currentColor !important;
		visibility: visible !important;
		opacity: 1 !important;
	}
}

@media (max-width: 599px) and (prefers-reduced-motion: reduce) {
	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
	header.wp-block-template-part .wp-block-navigation__responsive-container.is-menu-open.is-menu-closing .wp-block-navigation__responsive-close {
		animation: none !important;
	}
}

@media (max-width: 359px) {
	header.wp-block-template-part .wp-block-group.alignwide.is-nowrap {
		padding-inline: 10px !important;
	}

	header.wp-block-template-part .wp-block-group.alignwide.is-nowrap > .wp-block-site-logo img {
		width: 102px !important;
		max-width: 102px !important;
	}

	header.wp-block-template-part .wp-block-site-logo + .wp-block-group {
		min-width: 92px !important;
		gap: 8px !important;
	}
}
