/* Shared child chrome — loaded on every site. Brand tokens via CSS variables. */

body {
	font-variant-numeric: lining-nums tabular-nums;
	font-feature-settings: "lnum" 1, "tnum" 1;
}

.embed-responsive {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	overflow: hidden;
}

.embed-responsive::before {
	display: block;
	content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.embed-responsive-16by9::before {
	padding-top: 56.25%;
}

.has-text-align-center,
.text-center-mobile {
	text-align: center;
}

:root :where(.wp-block-navigation a:where(:not(.wp-element-button))) {
	letter-spacing: normal;
	text-transform: capitalize;
}

.hide-on-mobile,
.hide-on-mobile-nav {
	display: none;
}

.wp-block-navigation .wp-block-navigation-item {
	padding: 1rem;
}

input:focus,
textarea:focus {
	background-color: var(--wp--preset--color--light-gray);
	outline: none;
	color: var(--wp--preset--color--contrast);
}

/* Header underline-grow — tokenized accent, all brands */
@media (min-width: 1024px) {
	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:not(.is-style-highlight):not(.is-style-highlight-secondary):not(.is-style-highlight-outline):not(.has-background) {
		padding: 0.5rem 0.75rem;
	}

	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:not(.is-style-highlight):not(.is-style-highlight-secondary):not(.is-style-highlight-outline):not(.has-background) > .wp-block-navigation-item__content {
		position: relative;
		display: inline-flex;
		align-items: center;
		height: inherit;
		margin: 0;
		padding: 0.35rem 0;
		border: 0;
		border-radius: 0.5rem;
		background: transparent;
		color: var(--wp--preset--color--contrast);
		cursor: pointer;
		font-size: 0.875rem;
		line-height: inherit;
		text-decoration: none;
		text-transform: capitalize;
		letter-spacing: normal;
		outline: none;
	}

	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:not(.is-style-highlight):not(.is-style-highlight-secondary):not(.is-style-highlight-outline):not(.has-background)::after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 0.25rem;
		background: var(--wp--preset--color--accent);
		transform: scaleX(0);
		transform-origin: left;
		transition: transform 200ms ease-out;
		pointer-events: none;
	}

	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:not(.is-style-highlight):not(.is-style-highlight-secondary):not(.is-style-highlight-outline):not(.has-background):hover > .wp-block-navigation-item__content,
	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:not(.is-style-highlight):not(.is-style-highlight-secondary):not(.is-style-highlight-outline):not(.has-background):focus-within > .wp-block-navigation-item__content,
	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item:not(.is-style-highlight):not(.has-background) > .wp-block-navigation-item__content {
		color: var(--wp--preset--color--accent);
	}

	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:not(.is-style-highlight):not(.is-style-highlight-secondary):not(.is-style-highlight-outline):not(.has-background):hover::after,
	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:not(.is-style-highlight):not(.is-style-highlight-secondary):not(.is-style-highlight-outline):not(.has-background):focus-visible::after,
	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item:not(.is-style-highlight):not(.has-background)::after {
		transform: scaleX(1);
	}

	.vallhund-child-header--nav.wp-block-navigation .wp-block-navigation__container > .wp-block-navigation-item:not(.is-style-highlight):not(.has-background):focus-visible {
		outline: none;
		box-shadow: inset 0 0 0 2px var(--wp--preset--color--accent);
	}

	.vallhund-child-header--nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after {
		content: none;
	}
}

@media (min-width: 768px) {
	.hide-on-mobile {
		display: block;
	}

	.hide-on-mobile-nav {
		display: inline-block;
	}

	.wp-block-cover.hide-on-mobile {
		display: flex;
	}

	.hide-on-desktop {
		display: none;
	}
}

/* Health widgets (moved from parent) */
.widget-root.locbtn .health-widget-container p::after {
	content: "\f061";
	font-size: 1rem;
	font-family: "Font Awesome 6 Free";
	padding-left: 0.75rem;
}

.locbtn .health-widget-container,
.genbtn .health-widget-container {
	background-color: var(--wp--preset--color--primary);
	border-radius: 32px;
	border-width: 0;
	color: var(--wp--preset--color--base);
	letter-spacing: 2px;
	line-height: var(--wp--custom--line-height--medium);
	padding: 1rem;
	text-decoration: none;
	box-shadow: none;
}

.locbtn .health-widget-container p,
.genbtn .health-widget-container p,
.health-widget-container p {
	text-transform: uppercase;
	font-family: "Montserrat", sans-serif !important;
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: var(--wp--custom--font-weight--bold);
}

.widget-root.locbtn {
	margin-block-start: calc(var(--wp--custom--spacing--gap) / 2);
}

.widget-root.locbtn a:hover {
	text-decoration: none;
	background-color: var(--wp--preset--color--primary);
	box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 4px -1px, rgba(0, 0, 0, 0.14) 0px 4px 5px 0px, rgba(0, 0, 0, 0.12) 0px 1px 10px 0px;
}

@media only screen and (max-width: 600px) {
	.locbtn .health-widget-container,
	.locbtn .health-widget-container p,
	header .genbtn .health-widget-container,
	header .genbtn .health-widget-container p {
		width: 100%;
	}
}

@media only screen and (max-width: 781px) {
	.widget-root.genbtn {
		width: 100%;
	}
}

@media only screen and (min-width: 782px) {
	.locbtn .health-widget-container,
	.genbtn .health-widget-container {
		padding-top: 15px;
		padding-right: 30px;
		padding-bottom: 15px;
		padding-left: 30px;
	}

	.widget-root.locbtn {
		margin-block-start: 0;
	}
}
