@charset "UTF-8";

/**************************/
/**************************/
/********** FORM **********/
/**************************/
/**************************/

fieldset {
	position:relative;
	border:none;
	margin:0;
	padding:0;	
}
form {
	display:-webkit-box;
	display:-webkit-flex;
	display:-moz-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	-webkit-flex-direction:column;
	   -moz-box-orient:vertical;
	   -moz-box-direction:normal;
		-ms-flex-direction:column;
			flex-direction:column;
	-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
			flex-wrap:wrap;
	-webkit-box-pack:start;
	-webkit-justify-content:flex-start;
	   -moz-box-pack:start;
		-ms-flex-pack:start;
			justify-content:flex-start;
	gap:1em;
	font-size: var(--body-font-size);
	text-align:left;
	margin:0 auto;
	width: 100%;
}
form > * {
	margin:0 !important;
}
form input,
form textarea,
form button,
form select {
	position:relative;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	width:auto;
	font-family: inherit;
	font-size: var(--body-font-size);
	line-height:1em;
	padding:1em;
	border:solid var(--border-width);
	background:var(--bright-color);
}
form textarea {
	resize:none;
	min-height:6em;
}
form input[type="number"] {
	text-align:center;
	width:auto;
}
form input,
form textarea,
form button,
form select {
	width:100%;
}
form select,
form input[type=submit],
form button {
	cursor:pointer;
}

/********** BROWSERS **********/

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
::-webkit-input-placeholder {
	color:inherit;
	opacity:.5;
}
:-moz-placeholder {
	color:inherit;
	opacity:.5;
}
::-moz-placeholder {
	color:inherit;
	opacity:.5;
}
:-ms-input-placeholder {
	color:inherit;
	opacity:.5;
}
form input,
form textarea,
form button {
	-webkit-appearance:none;
	-moz-appearance:none;
}

/********** CHROME AUTOFILL **********/

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
textarea:-webkit-autofill:active {
	-webkit-text-fill-color:var(--dark-color) !important;
	-webkit-box-shadow: 0 0 0px 1000px var(--bright-color) inset;
	background-color: transparent;
}

/********** COLORS **********/

/* cf. colors.css */

/********** @MEDIA **********/


/***************************/
/***************************/
/********** LOGIN **********/
/***************************/
/***************************/

.login-username,
.login-password,
.login-remember {
	width:100%;
}
label[for="user_login"],
label[for="user_pass"] {
	opacity:0;
	font-size:0;
}

/**************************************/
/**************************************/
/********** CHECKBOX / RADIO **********/
/**************************************/
/**************************************/

form input[type="radio"],
form input[type="checkbox"] {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -moz-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	height:.75em !important;
	width:.75em !important;
	padding:0 !important;
	cursor:pointer;
	color:inherit;
	text-shadow:inherit;
	-webkit-box-shadow:inset 0 0 0 0;
	   -moz-box-shadow:inset 0 0 0 0;
			box-shadow:inset 0 0 0 0;
	background:var(--light-color);
}
form input[type="radio"] {
	-webkit-border-radius:50%;
	   -moz-border-radius:50%;
			border-radius:50%;
}
form input[type="radio"]:hover,
form input[type="radio"]:checked,
form input[type="checkbox"]:hover,
form input[type="checkbox"]:checked {
	-webkit-box-shadow:inset 0 0 0 .5rem;
	   -moz-box-shadow:inset 0 0 0 .5rem;
			box-shadow:inset 0 0 0 .5rem;
}
input[type="radio"] + label,
input[type="checkbox"] + label {
	cursor:pointer;
} 

/***************************/
/***************************/
/********** LABEL **********/
/***************************/
/***************************/

label {
	display:inline-block;
}
form label {
	width: 100%;
}

/*************************************/
/*************************************/
/********** SUBMIT / BUTTON **********/
/*************************************/
/*************************************/

form button,
form input[type="submit"] {
	position:relative;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	-webkit-box-align:center;
	-webkit-align-items:center;
	   -moz-box-align:center;
		-ms-flex-align:center;
			align-items:center;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	   -moz-box-pack:center;
		-ms-flex-pack:center;
			justify-content:center;
	gap:1em;
	width:auto !important;
	line-height:1em;
	text-decoration:none;
	letter-spacing: inherit;
	-webkit-border-radius:0;
	   -moz-border-radius:0;
			border-radius:0;
	color:inherit;
	text-shadow:inherit;
}
form button > *,
form input[type="submit"] > * {
	margin:0;
}
form button:hover,
form input[type="submit"]:hover {
	background:var(--dark-color);
}

/*************************************/
/*************************************/
/********** INPUT CONTAINER **********/
/*************************************/
/*************************************/
/* input-container > input */

.input-container {
	position:relative;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	width:100%;
}

/********** INPUT **********/

.input-container input {
	padding-right:-webkit-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-right:-moz-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-right:calc(var(--body-font-size) * 3 + var(--border-width) * 3);
}
.input-container input + button {
	position:absolute;
	z-index:10;
	top:50%;
	right:0;
	height:100%;
	aspect-ratio:1/1;
	text-align:center;
	margin:0;
	border:0;
	background:none;
	-webkit-transform:translate3d(0,-50%,0);
	   -moz-transform:translate3d(0,-50%,0);
			transform:translate3d(0,-50%,0);
}
.input-container input + button:hover {
	color:var(--primary-color);
	text-shadow:0 0 0 var(--primary-color);
	-webkit-transform:translateY(-50%) scale(.9);
	   -moz-transform:translateY(-50%) scale(.9);
		-ms-transform:translateY(-50%) scale(.9);
		 -o-transform:translateY(-50%) scale(.9);
			transform:translateY(-50%) scale(.9);
}

/********** ICONS **********/
/* icon on input-container */

.input-container[class^="icon-"]:before,
.input-container[class*=" icon-"]:before {
	font-family:"icomoon";
	position:absolute;
	z-index:10;
	top:50%;
	left:0;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	-webkit-box-align:center;
	-webkit-align-items:center;
	   -moz-box-align:center;
		-ms-flex-align:center;
			align-items:center;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	   -moz-box-pack:center;
		-ms-flex-pack:center;
			justify-content:center;
	height:100%;
	aspect-ratio:1/1;
	text-align:center;
	margin:0;
	border:0;
	background:none;
	-webkit-transform:translate3d(0,-50%,0);
	   -moz-transform:translate3d(0,-50%,0);
			transform:translate3d(0,-50%,0);
	opacity:.5;
	pointer-events:none;
}
.input-container[class^="icon-"] input,
.input-container[class*=" icon-"] input {
	padding-left:-webkit-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-left:-moz-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-left:calc(var(--body-font-size) * 3 + var(--border-width) * 3);
}

/********** EDITABLE **********/

.input-container.editable {
	background:none !important;
}
.input-container.editable:before {
	content:"";
	position:absolute;
	top:0;
	left:0;
	height:100%;
	width:100%;
	-webkit-border-radius:.25rem;
	   -moz-border-radius:.25rem;
			border-radius:.25rem;
	border:solid .0625rem rgb(255,255,255);
}
.editable .edit:before {
	font-family:'icomoon';
}

/********** COLORS **********/

body.alt .input-container input + button:hover {
	color:var(--secondary-color);
	text-shadow:0 0 0 var(--secondary-color);
}

/**************************************/
/**************************************/
/********** NUMBER CONTAINER **********/
/**************************************/
/**************************************/

.number-container {
	position:relative;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	/*width:100%;
	width:3em;*/
}
.number-container input {
	padding-left:-webkit-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-left:-moz-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-left:calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-right:-webkit-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-right:-moz-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-right:calc(var(--body-font-size) * 3 + var(--border-width) * 3);
}
.number-container .number-less,
.number-container .number-more {
	position:absolute;
	z-index:10;
	top:50%;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	-webkit-box-align:center;
	-webkit-align-items:center;
	   -moz-box-align:center;
		-ms-flex-align:center;
			align-items:center;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	   -moz-box-pack:center;
		-ms-flex-pack:center;
			justify-content:center;
	height:100%;
	aspect-ratio:1/1;
	text-align:center;
	margin:0;
	border:0;
	background:none;
	-webkit-transform:translate3d(0,-50%,0);
	   -moz-transform:translate3d(0,-50%,0);
			transform:translate3d(0,-50%,0);
}
.number-container .number-less {
	left:0;
}
.number-container .number-more {
	right:0;
}

/**************************************/
/**************************************/
/********** SELECT CONTAINER **********/
/**************************************/
/**************************************/

.select-container {
	position:relative;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	width:100%;
}

/********** SELECT **********/

.select-container select {
	padding-right:-webkit-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-right:-moz-calc(var(--body-font-size) * 3 + var(--border-width) * 3);
	padding-right:calc(var(--body-font-size) * 3 + var(--border-width) * 3);
}
.select-container:after {
	font-family:'icomoon';
	content:'\e918';
	position:absolute;
	z-index:10;
	top:50%;
	right:var(--border-width);
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	-webkit-box-align:center;
	-webkit-align-items:center;
	   -moz-box-align:center;
		-ms-flex-align:center;
			align-items:center;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	   -moz-box-pack:center;
		-ms-flex-pack:center;
			justify-content:center;
	height:-webkit-calc(100% - var(--border-width) * 2);
	height:-moz-calc(100% - var(--border-width) * 2);
	height:calc(100% - var(--border-width) * 2);
	aspect-ratio:1/1;
	text-align:center;
	margin:0;
	background:var(--bright-color);
	-webkit-transform:translateY(-50%);
	   -moz-transform:translateY(-50%);
		-ms-transform:translateY(-50%);
		 -o-transform:translateY(-50%);
			transform:translateY(-50%);
}
.select-container:hover:after {
	-webkit-transform:translateY(-50%) rotate(-180deg);
	   -moz-transform:translateY(-50%) rotate(-180deg);
		-ms-transform:translateY(-50%) rotate(-180deg);
		 -o-transform:translateY(-50%) rotate(-180deg);
			transform:translateY(-50%) rotate(-180deg);
}

/************************************************/
/************************************************/
/********** RADIO / CHECKBOX CONTAINER **********/
/************************************************/
/************************************************/

.radio-container,
.checkbox-container {
	position:relative;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	   -moz-box-align: center;
		-ms-flex-align: center;
			align-items: center;
	gap:.5em;
	width:100%;
}

/***********************************/
/***********************************/
/********** GRAVITY FORMS **********/
/***********************************/
/***********************************/

.gform_wrapper {
	position:relative;
	margin:0 auto;
	width:100%;
}
.gform_wrapper .gform_fields {
	display:-webkit-box;
	display:-webkit-flex;
	display:-moz-box;
	display:-ms-flexbox;
	display:flex;
	display:flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	-webkit-flex-direction:column;
	   -moz-box-orient:vertical;
	   -moz-box-direction:normal;
		-ms-flex-direction:column;
			flex-direction:column;
	-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
			flex-wrap:wrap;
	-webkit-box-pack:start;
	-webkit-justify-content:flex-start;
	   -moz-box-pack:start;
		-ms-flex-pack:start;
			justify-content:flex-start;
	gap:1em;

}
.gform_wrapper li {
	list-style:none;
	margin:0;
	padding:0;
	gap:1em;
}
.gform_wrapper .gform_footer {
	clear:both;
}
.gform_wrapper .gfield_error .gfield_label {
	color:rgb(255,0,0);
}
.gform_anchor,
.validation_message,
.gfield_label, .ginput_complex label,
.gform_wrapper div.validation_error {
	display:none;
}
.gform_wrapper li.gfield_error input[type=text],
.gform_wrapper li.gfield_error input[type=url],
.gform_wrapper li.gfield_error input[type=email],
.gform_wrapper li.gfield_error input[type=tel],
.gform_wrapper li.gfield_error input[type=number],
.gform_wrapper li.gfield_error input[type=password],
.gform_wrapper li.gfield_error textarea {
	border-color:rgb(255,0,0);
}
.gform_wrapper .gform_ajax_spinner {
	position:absolute;
	bottom:.75rem;
	right:-1.5rem;
}
.gform_confirmation_wrapper {
	padding:1rem 0;
}
* + .gform_footer {
	margin:1rem 0 0 0;
}
.gform_ajax_spinner {
	display:inline-block;
	height:1em;
	width:1em;
	margin:0 0 .5em 1em;
	padding:0;
	-webkit-border-radius:50%;
	   -moz-border-radius:50%;
			border-radius:50%;
	border-style:solid;
	border-width:var(--bord-width);
	border-color: var(--light-color) var(--light-color) var(--light-color) transparent;
	-webkit-animation: spinner .5s infinite linear;
	   -moz-animation: spinner .5s infinite linear;
		 -o-animation: spinner .5s infinite linear;
			animation: spinner .5s infinite linear;
}

/********** GINPUT CONTAINER **********/

.ginput_container.ginput_complex {
	display:-webkit-box;
	display:-webkit-flex;
	display:-moz-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:horizontal;
	-webkit-box-direction:normal;
	-webkit-flex-direction:row;
	   -moz-box-orient:horizontal;
	   -moz-box-direction:normal;
		-ms-flex-direction:row;
			flex-direction:row;
	-webkit-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
			flex-wrap:wrap;
	gap:1em;
}
.ginput_container.ginput_complex > * {
	-webkit-box-flex:1;
	-webkit-flex-grow:1;
	   -moz-box-flex:1;
		-ms-flex-positive:1;
			flex-grow:1;
}

/*****************************/
/*****************************/
/********** SELECT2 **********/
/*****************************/
/*****************************/

/* unused */

.select2-container {
	margin:0;
	position:relative;
	display:inline-block;
	vertical-align:middle;
	width:100%;
	font-size:var(--body-font-size);
	line-height:1em;
}
.select2-container .select2-choice {
	display:block;
	overflow:hidden;
	white-space:nowrap;
	text-decoration:none;
	-webkit-user-select:none;
	   -moz-user-select:none;
		-ms-user-select:none;
			user-select:none;
	border:solid var(--border-width);
	background:var(--bright-color);
}
/*
.select2-container.select2-dropdown-open:not(.select2-drop-above) .select2-choice {
	border-bottom:solid var(--border-width) transparent;
}
.select2-container.select2-dropdown-open.select2-drop-above .select2-choice {
	border-top:solid var(--border-width) transparent;
}
*/
.select2-container .select2-choice > .select2-chosen {
	display:block;
	overflow:hidden;
	white-space:nowrap;
	-o-text-overflow:ellipsis;
	   text-overflow:ellipsis;
	width:auto;
}
.select2-container .select2-choice abbr {
	display:none;
}
.select2-drop-mask {
	border:0;
	margin:0;
	padding:0;
	position:fixed;
	left:0;
	top:0;
	min-height:100%;
	min-width:100%;
	height:auto;
	width:auto;
	z-index:9998;
	opacity:0;
	filter:alpha(opacity=0);
}
.select2-drop {
	width:100%;
	position:absolute;
	z-index:99999;
	top:100%;
}
.select2-drop-auto-width {
	width:auto;
}
.select2-container .select2-choice .select2-arrow {
	position:absolute;
	z-index:10;
	top: 50%;
	right:-webkit-calc(var(--body-font-size) * 2 - var(--body-font-size) / 4);
	right:-moz-calc(var(--body-font-size) * 2 - var(--body-font-size) / 4);
	right:calc(var(--body-font-size) * 2 - var(--body-font-size) / 4);
	height:0;
	width:0;
	pointer-events:none;
	border-top:-webkit-calc(var(--body-font-size) / 4) solid var(--dark-color);
	border-top:-moz-calc(var(--body-font-size) / 4) solid var(--dark-color);
	border-top:calc(var(--body-font-size) / 4) solid var(--dark-color);
	border-right:-webkit-calc(var(--body-font-size) / 4) solid transparent;
	border-right:-moz-calc(var(--body-font-size) / 4) solid transparent;
	border-right:calc(var(--body-font-size) / 4) solid transparent;
	border-left:-webkit-calc(var(--body-font-size) / 4) solid transparent;
	border-left:-moz-calc(var(--body-font-size) / 4) solid transparent;
	border-left:calc(var(--body-font-size) / 4) solid transparent;
	border-bottom:0 dotted;
	-webkit-transform:translateY(-50%);
	   -moz-transform:translateY(-50%);
		-ms-transform:translateY(-50%);
		 -o-transform:translateY(-50%);
			transform:translateY(-50%);
}
.select2-container.select2-dropdown-open .select2-choice .select2-arrow {
	-webkit-transform:translateY(-50%) rotate(-180deg);
	   -moz-transform:translateY(-50%) rotate(-180deg);
		-ms-transform:translateY(-50%) rotate(-180deg);
		 -o-transform:translateY(-50%) rotate(-180deg);
			transform:translateY(-50%) rotate(-180deg);
}

/* results */
.select2-results {
	max-height:16rem;
	padding:0;
	position:relative;
	overflow-x:hidden;
	overflow-y:auto;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	border:0;
}
.select2-results li {
	list-style:none;
	display:list-item;
	background-image:none;
	margin:0;
}
.select2-results .select2-result-label {
	margin:0;
	cursor:pointer;
	min-height:1rem;
	-webkit-user-select:none;
	   -moz-user-select:none;
		-ms-user-select:none;
			user-select:none;
	font-size:.75em;
	line-height:1em;
	color:var(--dark-color);
	text-shadow: 0 0 0 var(--dark-color);
	border-left:solid var(--border-width) var(--dark-color);
	border-right:solid var(--border-width) var(--dark-color);
	background:var(--bright-color);
	padding:1em;
}
.select2-drop-active:not(.select2-drop-above) .select2-result:last-child .select2-result-label {
	border-bottom:solid var(--border-width) var(--dark-color);
}
.select2-drop-active.select2-drop-above .select2-result:first-child .select2-result-label {
	border-top:solid var(--border-width) var(--dark-color);
}
.select2-container .select2-choice {
	padding:1em;
	padding-right:-webkit-calc(var(--body-font-size) * 4 - var(--body-font-size) / 4);
	padding-right:-moz-calc(var(--body-font-size) * 4 - var(--body-font-size) / 4);
	padding-right:calc(var(--body-font-size) * 4 - var(--body-font-size) / 4);
}
.select2-results .select2-highlighted .select2-result-label {
	color:var(--bright-color);
	text-shadow:0 0 0 var(--bright-color);
	background:var(--dark-color);

}
/* disabled look for disabled choices in the results dropdown */
.select2-results .select2-selected {
	display: none;
}
/* disabled styles */
.select2-container.select2-container-disabled .select2-choice abbr {
	display: none;
}
/* disabled styles */
.select2-container-multi.select2-container-disabled .select2-choices .select2-search-choice .select2-search-choice-close {
	display: none;
	background: none;
}
/* end multiselect */
.select2-offscreen, .select2-offscreen:focus {
	clip: rect(0 0 0 0) !important;
	width: 1px !important;
	height: 1px !important;
	border: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	position: absolute !important;
	outline: 0 !important;
	left: 0px !important;
	top: 0px !important;
}
.select2-hidden-accessible,
.select2-display-none {
	display: none;
}