/******************************************************************************** Form */
form :last-child {
	margin-bottom: 0;
}
form .row {
	display: -moz-flex;
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	-moz-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
form .row .powermail_fieldwrap  {
	-moz-flex-grow: 0;
	-webkit-flex-grow: 0;
	-ms-flex-grow: 0;
	flex-grow: 0;
	-moz-flex-shrink: 0;
	-webkit-flex-shrink: 0;
	-ms-flex-shrink: 0;
	flex-shrink: 0;
	padding: 1rem 0 0 2rem;
	width: calc(100% - 2rem);
}
form .row .powermail_fieldwrap :last-child {
	margin-bottom: 0;
}
form .row .powermail_fieldwrap .half {
	width: calc(50% - 1rem);
}
form .row .powermail_fieldwrap .third {
	width: calc(100%/3 - 0.66667rem);
}
form .row .powermail_fieldwrap .quarter {
	width: calc(25% - 0.5rem);
}

@media screen and (max-width: 480px) {
	form .row {
		margin: -1.5rem 0 2rem -1.5rem;
		width: calc(100% + 3rem);
	}
	form .row .powermail_fieldwrap  {
		padding: 1.5rem 0 0 1.5rem;
		width: calc(100% - 1.5rem);
	}
	form .row .powermail_fieldwrap .half {
		width: calc(100% - 1.5rem);
	}
	form .row .powermail_fieldwrap .third {
		width: calc(100% - 1.5rem);
	}
	form .row .powermail_fieldwrap .quarter {
		width: calc(100% - 1.5rem);
	}
}
/******************************************************************************** Inputs */
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="url"],
select,
textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
	border-radius: 0.325rem;
	border: solid 2px rgba(144, 144, 144, 0.25);
	color: inherit;
	display: block;
	outline: 0;
	padding: 0 1rem;
	text-decoration: none;
	width: 100%;
}
input[type="text"]:invalid,
input[type="password"]:invalid,
input[type="email"]:invalid,
input[type="tel"]:invalid,
input[type="search"]:invalid,
input[type="url"]:invalid,
select:invalid,
textarea:invalid {
	box-shadow: none;
}
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
select:focus,
textarea:focus {
	border-color: #2ee4bb;
}
label {
	color: #000000;
	display: block;
	font-family: "Raleway", Helvetica, sans-serif;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.175em;
	line-height: 1.75;
	margin: 0 0 1rem 0;
	text-transform: uppercase;
}
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="url"] {
	height: 3rem;
}
select {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'%3E%3Cpath d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='rgba(144, 144, 144, 0.25)' /%3E%3C/svg%3E");
	background-position: calc(100% - 1rem) center;
	background-repeat: no-repeat;
	background-size: 1.25rem;
	height: 3rem;
	padding-right: 3rem;
	text-overflow: ellipsis;
}
select option {
	background-color: #ffffff;
	color: #000000;
}
select:focus::-ms-value {
	background-color: transparent;
}
select::-ms-expand {
	display: none;
}
textarea {
	padding: 0.75rem 1rem;
}
input[type="checkbox"],
input[type="radio"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
	display: block;
	float: left;
	margin-right: -2rem;
	opacity: 0;
	width: 1rem;
	z-index: -1;
}
input[type="checkbox"]+label,
input[type="radio"]+label {
	text-decoration: none;
	color: #000000;
	cursor: pointer;
	display: inline-block;
	font-family: "Source Sans Pro", Helvetica, sans-serif;
	font-size: 1rem;
	font-weight: 300;
	letter-spacing: 0.0375em;
	padding-left: 2.675rem;
	padding-right: 0.875rem;
	position: relative;
	text-transform: none;
}
input[type="checkbox"]+label:before,
input[type="radio"]+label:before {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
	text-transform: none !important;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
}
input[type="checkbox"]+label:before,
input[type="radio"]+label:before {
	border-radius: 0.325rem;
	border: solid 2px rgba(144, 144, 144, 0.25);
	content: '';
	display: inline-block;
	font-size: 0.8rem;
	height: 2.25rem;
	left: 0;
	line-height: 2.25rem;
	position: absolute;
	text-align: center;
	top: -0.15rem;
	width: 2.25rem;
}
input[type="checkbox"]:checked+label:before,
input[type="radio"]:checked+label:before {
	content: '\f00c';
	background-color: var(--c-special);
	border-color: var(--c-special);
	color: #ffffff;
}
input[type="checkbox"]:focus+label:before,
input[type="radio"]:focus+label:before {
	border-color: var(--c-special);
	box-shadow: 0 0 0 1px var(--c-special);
}
input[type="checkbox"]+label:before {
	border-radius: 0.325rem;
}
input[type="radio"]+label:before {
	border-radius: 100%;
}
::-webkit-input-placeholder {
	opacity: 1.0;
	color: rgba(0, 0, 0, 0.25) !important;
}
:-moz-placeholder {
	opacity: 1.0;
	color: rgba(0, 0, 0, 0.25) !important;
}
::-moz-placeholder {
	opacity: 1.0;
	color: rgba(0, 0, 0, 0.25) !important;
}
:-ms-input-placeholder {
	opacity: 1.0;
	color: rgba(0, 0, 0, 0.25) !important;
}

@media screen and (max-width: 736px) {
	label {
		font-size: 0.675rem;
	}
	input[type="checkbox"]+label,
	input[type="radio"]+label {
		font-size: 1rem;
	}
}

@media screen and (max-width: 360px) {
	label {
		font-size: 0.675rem;
	}
	input[type="checkbox"]+label,
	input[type="radio"]+label {
		font-size: 1rem;
	}
}

/********************************************************************************************* Powermail */
.powermail_field_error {
    border: 2px solid #2ee4bb !important;
    width: 100%;
}
.powermail-errors-list {
    color: #2ee4bb;
    list-style: none;
    text-align: right;
}
span.mandatory {
  color: #e3031b;
}
.form-horizontal .checkbox{
  float: left;
  margin: 0;
}
/**/
.powermail_field {
  position: relative;
}
.parsley-errors-list {
  background: transparent;
  position: absolute;
  top: 0;
  display: block;
  width: 70%;
  padding: 9px;
  right: 0;
}
.parsley-errors-list.filled{
  background: red; 
}
.checkbox label {
  width: 360px;
  position: relative;
  left: 50px;
}
/**/
.checkbox input {  
  display: none;
}
.checkbox input +a+ span,
.checkbox input + span {
  width: 40px;
  height: 20px;
  border-radius: 5px;
  border: 2px solid #ddd;
  background-color: #EEE;
  display: inline-block;
  content: "";
  float: left;
  margin-right: 5px;
  transition: background-color 0.5s linear;
  margin-top: 12px;
  position: absolute;
  left: -50px;
  top: -10px;
}
.checkbox input +a+ span:hover,
.checkbox input + span:hover  {
  cursor: pointer;
}
.checkbox input +a+ span::before,
.checkbox input + span::before {
  width: 16px;
  height: 16px;
  border-radius: 5px;
  background-color: #fff;
  display: block;
  content: "";
  float: left;
  margin-right: 5px;
  transition: margin 0.1s linear;
  box-shadow: 0px 0px 5px #aaa;
}
.checkbox input:checked +a+ span,
.checkbox input:checked + span {
  background-color: var(--c-darkblue);
}
.checkbox input:checked +a+ span::before,
.checkbox input:checked + span::before {
  margin: 0 0 0 20px;
}

