/* Vineland Accessibility Fixes */

/* 2.4.7 Focus Visible: two-tone ring that shows on light, dark and red backgrounds. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
	outline: 3px solid #000 !important;
	outline-offset: 2px !important;
	box-shadow: 0 0 0 2px #fff !important;
}

/* 1.4.1 Use of Color: links inside body text are underlined, not identified by color alone. */
.container-wrap .wpb_text_column a:not(.nectar-button),
.container-wrap .nectar-fancy-ul a,
.container-wrap .iwt-text a,
.container-wrap p > a:not(.nectar-button) {
	text-decoration: underline !important;
	text-underline-offset: 0.15em;
}

/* 1.4.13 Content on Hover or Focus: Escape dismisses a header dropdown. */
#header-outer nav li.vineland-a11y-suppress > ul.sub-menu {
	display: none !important;
}

/* 2.4.7: a third-level flyout that would run past the right edge of the window opens to the left. */
#header-outer nav ul.sub-menu ul.sub-menu.vineland-a11y-flyout-left {
	left: auto !important;
	right: 100% !important;
	margin-right: 0 !important;
}

/* 2.4.3 / 2.4.7: the off-canvas close button is zero-size but focusable while the panel is closed. */
body:not(.material-ocm-open) .slide_out_area_close__wrap {
	visibility: hidden;
}

/* 2.4.7: the share links on posts open on hover only; open them on keyboard focus too. */
.nectar-social.fixed:focus-within .nectar-social-inner a:nth-child(1) { transform: translateY(-56px) scale(1); opacity: 1; }
.nectar-social.fixed:focus-within .nectar-social-inner a:nth-child(2) { transform: translateY(-106px) scale(1); opacity: 1; }
.nectar-social.fixed:focus-within .nectar-social-inner a:nth-child(3) { transform: translateY(-156px) scale(1); opacity: 1; }
.nectar-social.fixed:focus-within .nectar-social-inner a:nth-child(4) { transform: translateY(-206px) scale(1); opacity: 1; }
.nectar-social.fixed:focus-within .nectar-social-inner a:nth-child(5) { transform: translateY(-256px) scale(1); opacity: 1; }
@media only screen and (max-width: 999px) {
	.nectar-social.fixed:focus-within > a { transform: scale(1); }
}

/* 1.3.1 / 1.4.10: sortable tables scroll sideways inside their own box instead of being split
   into separate header and body tables. */
.dt-container .dt-layout-table > .dt-layout-cell {
	overflow-x: auto;
}

/* 1.4.10 Reflow: page-content tables that are wider than the column scroll inside their own box. */
.vineland-a11y-table-scroll {
	overflow-x: auto;
	max-width: 100%;
}

/* 1.4.10 Reflow: long web addresses used as link text wrap instead of being cut off on narrow screens. */
.container-wrap p a,
.container-wrap li a {
	overflow-wrap: break-word;
}

/* 2.4.7: a gallery photo's "View Larger" link appears only on hover (it sits on an overlay at opacity 0),
   so with the keyboard it was focused but invisible. Show the overlay while the link has focus too. */
.work-item:focus-within .work-info-bg { opacity: 0.9 !important; }
.work-item:focus-within .work-info,
.work-item:focus-within .work-info a { opacity: 1 !important; }

/* 1.4.3: the event "Details" and "Venue" labels were faded to 75% opacity (3.1:1 on phones);
   shown at full strength they are 5.3:1. */
.hwpe-single .hwpe-meta-heading {
	opacity: 1 !important;
}

/* 1.4.3: the calendar's inactive view links ("Month") were faded to 75% opacity (3.3:1). The
   current view stays marked by bold text and its underline bar. */
.hwpe-view-link {
	opacity: 1 !important;
}

/* 1.3.1: related-event titles are now H3 (were H4); keep their previous look. */
body .hwpe-related-card h3.hwpe-related-title {
	margin: 0 0 0.4rem !important;
	font-size: 1.05em !important;
	line-height: 1.3 !important;
	color: #444 !important;
}

/* 2.2.2 Pause, Stop, Hide: icon-only background video control in the section's bottom-right corner. */
.vineland-a11y-video-toggle {
	position: absolute;
	right: 12px;
	bottom: 12px;
	z-index: 100;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 40px;
	height: 40px;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 2px solid #fff;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.7);
	color: #fff;
	line-height: 1;
	cursor: pointer;
}
.vineland-a11y-video-toggle svg {
	display: block;
	pointer-events: none;
}
.vineland-a11y-video-toggle:hover {
	background: #000;
}
.vineland-a11y-video-toggle[hidden] {
	display: none;
}
