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

* {	box-sizing: border-box; }

.remark {
	display: inline-block;
	font-size: 1.3rem;
	line-height: 1.4;
	padding: 0.5rem 1rem;
	background: #f9ff40;
}
.remark.huh::after {
	margin-left: 8px;
	content: "\1F914";
}

/*! Custom styles */
::-moz-selection {
    background: #AB1600;
    text-shadow: none;
}
::selection {
    background: #AB1600;
    text-shadow: none;
}
fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}
textarea {
    resize: vertical;
}
/* 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. */
}
.visually-hidden {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

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

figure {
	margin: 0;
}
img {
	max-width: 100%;
	width: 100%;
	height: auto;
}
.invisible {
	visibility: hidden;
	opacity: 0;
}






/* Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"] {
	cursor: pointer;
	box-sizing: border-box;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	column-gap: 1.4rem;	
	text-align: center;
	text-decoration: none;
	white-space: nowrap;

	text-transform: uppercase;
	letter-spacing: .1rem;
	font-size: 11px;
	font-weight: 600;

	line-height: 38px;
	height: 38px;
	padding: 0 30px;
	border-radius: 4px;
	border: 1px solid #bbb;
	color: #555;
	background-color: transparent;
	transition: all 250ms ease-in-out;

}
.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.button:focus,
button:focus,
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
	color: #333;
	border-color: #888;
	outline: 0; }
.button.button-primary,
button.button-primary,
input[type="submit"].button-primary,
input[type="reset"].button-primary,
input[type="button"].button-primary {
	color: #FFF;
	background-color: #33C3F0;
	border-color: #33C3F0; }
.button.button-primary:hover,
button.button-primary:hover,
input[type="submit"].button-primary:hover,
input[type="reset"].button-primary:hover,
input[type="button"].button-primary:hover,
.button.button-primary:focus,
button.button-primary:focus,
input[type="submit"].button-primary:focus,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary:focus {
	color: #FFF;
	background-color: #1EAEDB;
	border-color: #1EAEDB; }


/* Forms
–––––––––––––––––––––––––––––––––––––––––––––––––– */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select {	
	background-color: rgba(0,0,0,.03);
	border: 1px solid rgba(0,0,0,.2);
	border-radius: 5px;
	color: #000;
	font-family: var(--font-primary);
	font-size: 15px;
	font-weight: 400;
	margin-bottom: 0;
	max-width: 100%;
	height: 44px;
	line-height: 44px;
	letter-spacing: .7px;
	padding: 0 20px;
	transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	width: 100%;
}
	
/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
textarea {
	min-height: 65px;
	padding-top: 6px;
	padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
/*  border: 1px solid #33C3F0;*/
	outline: 0; }
label,
legend {
	display: block;
	margin-bottom: .5rem;
	font-weight: 600; }
fieldset {
	padding: 0;
	border-width: 0; }
input[type="checkbox"],
input[type="radio"] {
display: inline; }	
label > .label-body {
	display: inline-block;
	margin-left: .5rem;
	font-weight: normal; }


/* Lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
ul {
	list-style: circle outside;
}
ol {
	list-style: decimal outside;
	counter-reset: item;
}
ol, ul {
	padding-left: 20px;
	margin-top: 0;
}
ul ul,
ul ol,
ol ol,
ol ul {
	margin: 0.2rem 0 1.5rem 0;
}
ul:not(.menu) li{
	padding-left: 20px;
	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: -20px;
}


/* Code
–––––––––––––––––––––––––––––––––––––––––––––––––– */
code {
	padding: .2rem .5rem;
	margin: 0 .2rem;
	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: 12px 15px;
	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: 1em 0;
    padding: 0;
}

/* Clearing
–––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Self Clearing Goodness */
.u-cf {
	content: "";
	display: table;
	clear: both; }
.u-cf::after {
	content: "";
	display: table;
	clear: both; }

/* FancyBox content
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.fancybox-bg {
	background: var(--bg-color-main);
}
.fancybox-is-open .fancybox-bg {
	opacity: .75;
}
.fancybox-content {
	box-shadow: 0 0 20px 0 var(--box-shadow-color-minimal);
}
	

/* 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: 60px;
	height: 60px;
}
#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
–––––––––––––––––––––––––––––––––––––––––––––––––– */
#user_switching_switch_on {
	background: transparent;
	margin-bottom: 0;
	padding: 1rem 2rem;
}
#user_switching_switch_on a {
	background: var(--primary-link-color);
	text-decoration: none;
	outline: 0;
	color: var(--base-text-color-white);;
	padding: 1px 12px;
	display: inline-block;
	border-radius: 4px;
}
#user_switching_switch_on a:hover {
	background: var(--primary-link-color-hover);
	text-decoration: none;
}



/* 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) {}





@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;
	}
}