
/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */

.sr-only {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
	/* 1 */
}

/*
 * Extends the .sr-only class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */

.sr-only.focusable:active,
.sr-only.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	white-space: inherit;
	width: auto;
}



.hidden {
	display: none;
}

.reset-appearance {
	-o-appearance: none;
	-ms-appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	background-color: transparent;
	outline: none;
	border: none;
	color: inherit;
}


.unselectable {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}


/*
 * ----- NEGATIVE SPACE
 */
.v-space {
	border: none;
}
.v-space.xs {
	margin: 0.5em 0;
}
.v-space.s {
	margin: 0.75em 0;
}
.v-space.m {
	margin: 1em 0;
}
.v-space.l {
	margin: 1.25em 0;
}
.v-space.xl {
	margin: 1.5em 0;
}
@media ( min-width: 641px ) {
	.v-space.xs {
		margin: 1.5em 0;
	}
	.v-space.s {
		margin: 2.25em 0;
	}
	.v-space.l {
		margin: 3em 0;
	}
	.v-space.xl {
		margin: 3.25em 0;
	}
}





/*
 * ----- IFrame
 */
.embed .container-iframe {
	position: relative;
	padding-top: 56.25%;
}
.embed iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/*.container-iframe.responsive {
	position: relative;
	padding-top: 56.25%;
}
.container-iframe.responsive iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}*/
