/**
 * King-Media: basis (site + editor).
 *
 * Globale regels die niet bij één blok horen: focus, formulieren, lay-outcorrecties,
 * footerlinks en beweging verminderen. Blokspecifieke CSS staat in assets/css/blocks/.
 */

/* Focus en links */
:where(a,button,input,select,textarea,summary):focus-visible {
	outline: 3px solid var(--wp--preset--color--brand-600);
	outline-offset: 2px;
}

a {
	text-underline-offset: .2em;
}

/* Ankerlinks (bijv. /projecten/#projecten) niet onder de sticky header laten vallen */
html {
	scroll-padding-top: 6rem;
}

/* Formulieren */
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=hidden]),select,textarea {
	box-sizing: border-box;
	width: 100%;
	min-height: var(--wp--custom--control-height);
	padding: .75rem 1rem;
	font: inherit;
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.5;
	color: var(--wp--preset--color--ink-900);
	background: var(--wp--preset--color--surface-0);
	border: 1px solid var(--wp--preset--color--line-strong);
	border-radius: var(--wp--custom--radius--sm);
}

textarea {
	min-height: 8rem;
}

::placeholder {
	color: var(--wp--preset--color--ink-600);
	opacity: 1;
}

input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true] {
	border: 2px solid var(--wp--preset--color--danger);
}

/* Lay-out: geen marges tussen header/main/footer, verticale stapels nooit laten wrappen, vaste afbeeldingen niet laten krimpen */
.wp-site-blocks>* {
	margin-block-start: 0;
}

.is-layout-flex.is-vertical {
	flex-wrap: nowrap;
}

.is-layout-flex>.wp-block-image.is-resized {
	flex: none;
}

/* Footer: links zonder onderstreping, blauw met groeiende lijn bij hover */
footer a {
	text-decoration: none;
}

footer a:not(.wp-block-button__link, .is-style-km-icon-link *) {
	background-image: linear-gradient(currentColor, currentColor);
	background-repeat: no-repeat;
	background-position: left 100%;
	background-size: 0% 1px;
}
footer a:not(.wp-block-button__link, .is-style-km-icon-link *):is(:hover, :focus-visible),
footer .wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content:is(:hover, :focus-visible) {
	color: var(--wp--preset--color--brand-600);
	background-size: 100% 1px;
}

@media (prefers-reduced-motion: no-preference) {
	footer a:not(.wp-block-button__link, .is-style-km-icon-link *) {
		transition: background-size 0.35s cubic-bezier(0.2, 0.7, 0.2, 1), color 0.2s ease-out;
	}
}

/* Beweging verminderen */
@media (prefers-reduced-motion:reduce) {
	*,::before,::after {
		animation: none!important;
		transition: none!important;
		scroll-behavior: auto!important;
	}
}
