/* Super ugly, but effective for iPads :#
 *
 *//*
*:not(html) {
    -webkit-transform: translate3d(0, 0, 0); 
    will-change: transform;
}
*/

/* The great reset
–––––––––––––––––––––––––––––––––––––––––––––––––– */
:root {
    box-sizing: border-box;
}
*,
*::before,
*::after {
    box-sizing: inherit;
}
*:focus-visible {
	outline-offset: 0.2rem;
}

* {
	outline-offset: 0.2rem;
}


.scroll-anchor {
	pointer-events: none;
	position: absolute;
	left: 0;
	top: 0;
	width: 10px;
	height: 100px;
}

/*! Custom styles */
::selection {
    background: var(--z-body-bg-selected);
    text-shadow: none;
}


/* Text meant only for screen readers. */
.screen-reader-text,
.sr-only {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}
.screen-reader-text:focus,
.sr-only:focus {
	background-color: #f1f1f1;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

.grecaptcha-badge{visibility:collapse !important;}

/* Some resets */
fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}
textarea {
    resize: vertical;
}
figure {
	margin: 0;
}
img {
	max-width: 100%;
	width: 100%;
	height: auto;
}
figure img {
	display: block;
}
.invisible {
	visibility: hidden;
	opacity: 0;
}
.hidden-content {
	display: none !important;
}
@media (min-width: 55rem) {
	.hide-on-desktop {
		display: none !important;
	}
}
@media (max-width: 55rem) {
	.hide-on-mobile {
		display: none !important;
	}
}


/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {
	list-style: circle outside;
}
ol {
	list-style: decimal outside;
	counter-reset: item;
}
ol
ul {
	padding-left: 2rem;
	margin-top: 0;
}
ul ul,
ul ol,
ol ol,
ol ul {
	margin: var(--z-margin-default-top) 0 var(--z-margin-default-bottom) 0;
}
ul:not(.menu) li {
	padding-left: 2rem;
	position: relative;
}
ul:is(.menu) li,
ul:is(.menu) ul li {
	padding-left: 0;
}
ol:not(.menu) ol li:before,
ul:not(.menu) ol li:before {
	content: counters(item, ".") " ";
	counter-increment: item;
	position: absolute;
	left: -2rem;
}


/* Code
–––––––––––––––––––––––––––––––––––––––––––––––––– */
code {
	padding: .2rem .5rem;
	margin: var(--z-margin-default-top) 0 var(--z-margin-default-bottom) 0;
	font-size: 90%;
	white-space: nowrap;
	background: #F1F1F1;
	border: 1px solid #E1E1E1;
	border-radius: 4px;
}
pre > code {
	display: block;
	padding: 1rem 1.5rem;
	white-space: pre;
}


/* Tables
–––––––––––––––––––––––––––––––––––––––––––––––––– */
th,
td {
	padding: 1rem 1.5rem;
	text-align: left;
	border-bottom: 1px solid #E1E1E1;
}
th:first-child,
td:first-child {
	padding-left: 0;
}
th:last-child,
td:last-child {
	padding-right: 0;
}



/* Misc
–––––––––––––––––––––––––––––––––––––––––––––––––– */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: var(--z-margin-default-top) 0 var(--z-margin-default-bottom) 0;
    padding: 0;
}
video {
	width: 100%;
	height: auto;
}



	

/* Spinner overlay
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#submit-overlay {
	position: fixed;
	z-index: 9999;
	background: rgba(255,255,255,0.8);
	min-height: 100vh;
	height: 100%;
	width: 100%;
	top: 0;
	pointer-events: none;
	opacity: 0;
}
.hasLoader #submit-overlay {
	opacity: 1;
}
#submit-overlay .inner {
	position: fixed;
	top: 0;
	height: 100vh;
	width: 100%;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	flex-direction: column;
}
#submit-overlay .spinner,
#submit-overlay .spinner img {
	width: 6rem;
	height: 6rem;
	aspect-ratio: 1 / 1;
}
#submit-overlay .spinner {
	animation: spinning 1.2s infinite ease forwards;
}
@keyframes spinning {
	0% {    transform: rotate(0); }
	12.5% { transform: rotate(45deg); }
	25% {   transform: rotate(90deg); }
	37.5% { transform: rotate(135deg); }
	50% {   transform: rotate(180deg); }
	62.5% { transform: rotate(225deg); }
	75% {   transform: rotate(270deg); }
	87.5% { transform: rotate(315deg); }
	100% {  transform: rotate(360deg); }
}



/* User switching overlay
–––––––––––––––––––––––––––––––––––––––––––––––––– */


/* Media Queries
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/*
Note: The best way to structure the use of media queries is to create the queries
near the relevant code. For example, if you wanted to change the styles for buttons
on small devices, paste the mobile query code up in the buttons section and style it
there.
*/


/* Larger than mobile */
@media (min-width: 400px) {}

/* Larger than phablet (also point when grid becomes active) */
@media (min-width: 550px) {}

/* Larger than tablet */
@media (min-width: 750px) {}

/* Larger than desktop */
@media (min-width: 1000px) {}

/* Larger than Desktop HD */
@media (min-width: 1200px) {}



/* Print resets
–––––––––––––––––––––––––––––––––––––––––––––––––– */
@media print {
	@page {
		margin: 0;
	}
	body {
		margin: 1cm;
	}
	
	#topbar .meta-bar,
	.menu-bar nav,
	.prefooter,
	.footer,
	nav,
	.pmpro_actions_nav {
		display: none;
	}
	.header {
		position: relative !important;
	}
}
