/**
 * MNK UI WP4 — accessibility and quality safeguards.
 */

:root{
	--mnk-focus-ring-color:var(--mnk-color-navy-950,#061426);
	--mnk-focus-ring-offset-color:#fff;
	--mnk-sticky-clearance:calc(var(--mnk-header-height,5rem) + 1rem);
}

html{
	scroll-padding-top:var(--mnk-sticky-clearance);
}

:where([id],:target){
	scroll-margin-top:var(--mnk-sticky-clearance);
}

.mnk-ui-wp4-enabled :where(a,button,input,select,textarea,summary,[tabindex]:not([tabindex="-1"])):focus-visible{
	outline:.1875rem solid var(--mnk-focus-ring-color);
	outline-offset:.1875rem;
	box-shadow:0 0 0 .125rem var(--mnk-focus-ring-offset-color);
}

.mnk-ui-wp4-enabled :where(button,input[type="button"],input[type="submit"],input[type="reset"],select,summary,.mnk-button,.mnk-card-link,.mnk-menu-toggle,.mnk-drawer__close,.mnk-nav__submenu-toggle){
	min-width:2.75rem;
	min-height:2.75rem;
}

.mnk-ui-wp4-enabled :where(input,select,textarea){
	max-width:100%;
	font:inherit;
}

.mnk-ui-wp4-enabled :where(input,select,textarea)[aria-invalid="true"]{
	border-color:var(--mnk-color-error-700,#c62828);
	box-shadow:0 0 0 .125rem rgb(198 40 40/.18);
}

.mnk-ui-wp4-enabled :where(.forminator-error-message,.wpcf7-not-valid-tip,.mnk-form-error){
	color:var(--mnk-color-error-700,#c62828);
	font-weight:700;
}

.mnk-ui-wp4-enabled img{
	max-width:100%;
	height:auto;
}

.mnk-ui-wp4-enabled :where(.mnk-hero__media,.mnk-news-tile__media,.mnk-component-card__media,.mnk-profile-hero__media){
	contain:layout paint;
}

.mnk-ui-wp4-enabled .mnk-partner-logo,
.mnk-ui-wp4-enabled .mnk-sponsor-card__logo img{
	object-fit:contain;
}

.mnk-ui-wp4-enabled img.mnk-has-focal-point{
	object-position:var(--mnk-object-x,50%) var(--mnk-object-y,50%);
}

.mnk-ui-wp4-enabled .screen-reader-text:focus{
	clip:auto;
	clip-path:none;
	width:auto;
	height:auto;
	padding:.75rem 1rem;
	overflow:visible;
	white-space:normal;
	z-index:100000;
}

@media (max-width:20rem){
	.mnk-ui-wp4-enabled :where(.mnk-cluster,.mnk-404-links,.mnk-share){
		align-items:stretch;
		flex-direction:column;
	}
	.mnk-ui-wp4-enabled :where(.mnk-button,.mnk-card-link){
		width:100%;
		justify-content:center;
	}
}

@media (forced-colors:active){
	.mnk-ui-wp4-enabled :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
		outline:3px solid CanvasText;
		box-shadow:none;
	}
	.mnk-ui-wp4-enabled :where(.mnk-status,.mnk-button,.mnk-component-card,.mnk-event-card){
		border:1px solid CanvasText;
	}
}

@media (prefers-contrast:more){
	.mnk-ui-wp4-enabled :where(.mnk-component-card,.mnk-event-card,.mnk-contact-card,.mnk-venue-details article){
		border-width:2px;
	}
}

@media (prefers-reduced-motion:reduce){
	html:focus-within{scroll-behavior:auto}
	.mnk-ui-wp4-enabled *, 
	.mnk-ui-wp4-enabled *::before,
	.mnk-ui-wp4-enabled *::after{
		animation-duration:.01ms!important;
		animation-iteration-count:1!important;
		scroll-behavior:auto!important;
		transition-duration:.01ms!important;
	}
}
