.miniform {
	--input-bg-color: #f9f9f9;
	--input-text-color: #333333;
	--input-placeholder-color: #888888;
	--input-border-color: #cccccc;
	--input-border-color-hover: #666666;
	--input-border-color-focus: #5783db;
	--input-bg-color-missing: #fbeff1;
	--input-border-color-missing: #bd152f;
	--input-checkbox-color: #5dbea3;
	--grouping-border-color: #cccccc;
	--grouping--bg-color: #f9f9f9;
	--required-color: #bd152f;
	
	--error-bg-color: #fbeff1;
	--error-border-color: #bd152f;
	--error-text-color: #bd152f;
	
	--success-bg-color: #5dbea3aa;
	--success-border-color: #5dbea3;
	--success-text-color: #333333;
	
	--submit-button-color: #ffffff;
	--submit-button-bg: transparent;
	--submit-button-color-hover: #ffffff;
	--submit-button-bg-hover: #5dbea3aa;

	--input-font-weight: 400;
	--bottom-border-width : 2px;
	--top-border-width : 0px;
	--left-border-width : 0px;
	--right-border-width : 0px;
	--error-border-width : 2px;
	--success-border-width : 2px;
}

	background: #828c95;
	color:#FFF;


.miniform * {
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	-moz-font-smoothing:antialiased;
	-o-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}

.miniform {
	/* max-width: 900px; */
	/* margin:auto; */
}

.miniform .grouping { 
	padding: 5px 10px 4px;
    border: none;
	border-bottom:var(--bottom-border-width) solid var(--input-border-color);
	border-top:var(--top-border-width) solid var(--input-border-color);
	border-right:var(--left-border-width) solid var(--input-border-color);
	border-right:var(--right-border-width) solid var(--input-border-color);
    border-radius: 0px;
    width: 100%;
    margin: 0 0 10px;
	background: var(--grouping-bg-color);
}
.miniform .grouping::after { 
  content: "";
  display: table;
  clear: both;
}
.miniform .full { clear: both;}
.miniform .full::after { 
  content: "";
  display: table;
  clear: both;
}
.miniform .half { width: 49.5%; margin-right:0.5%; float: left;}
.miniform .onethird { width: 32.833%; margin-right:0.5%; float: left;}
.miniform .twothird { width: 66.167%; margin-right:0.5%; float: left;}

.miniform .pullright { margin-right:0; float: right;}
.miniform .half.pullright { width: 50%;}
.miniform .onethird.pullright { width: 33.333%;}
.miniform .twothird.pullright { width: 66.667%;}

.miniform label { display: inline; }
.miniform label label { vertical-align: text-bottom; cursor:pointer;font-weight:400; line-height:1;}
.miniform .hidden { display:none; }
.miniform .error { 
	background:var(--error-bg-color);
	color: var(--error-text-color);
	border:var(--error-border-width) solid var(--error-border-color);
	font-weight: bold;
	border-radius: 0px; 
	padding:15px; 
	margin-bottom: 10px; 
}

.miniform .ok { 
	background: var(--success-bg-color);
	color: var(--success-text-color);
	border:var(--success-border-width) solid var(--success-border-color);
	font-weight: bold;
	border-radius: 0px;
	padding:15px; 
	margin-bottom: 10px; 
}

@media screen and (max-width: 468px) {
	.miniform .half { width: 100%; margin-right:0; float: none;}
	.miniform .onethird { width: 100%; margin-right:0; float: none;}
	.miniform .twothird { width: 100%; margin-right:0; float: none;}
	.miniform .half.pullright { width: 100%;}
	.miniform .onethird.pullright { width: 100%;}
	.miniform .twothird.pullright { width: 100%;}
	.miniform .error { width: 100%; }
}


.miniform label span {
    cursor: pointer;
    display: inline-block;
    margin: 0 5px;
    font-weight: 700;
    font-size: 80%;
}

.miniform span span {
	cursor:default;
	color:var(--required-color);
	display:inline-block;
	margin:0px;
	font-weight:900;
	vertical-align: bottom;
	line-height: 1;
	font-size: 130%;
}


.miniform input,
.miniform select,
.miniform textarea {
	font-weight: var(--input-font-weight);
	border:none;
	-webkit-transition:border-color 0.3s ease-in-out;
	-moz-transition:border-color 0.3s ease-in-out;
	transition:border-color 0.3s ease-in-out;
}

.miniform input[type="radio"],
.miniform input[type="checkbox"] {
    margin: 0 10px 0 5px;
    vertical-align: middle;
}

.miniform input[type="text"],
.miniform input[type="email"],
.miniform input[type="tel"],
.miniform input[type="url"],
.miniform select,
.miniform textarea {
	background: var(--input-bg-color);
	color:  var(--input-text-color);
	border-bottom:var(--bottom-border-width) solid var(--input-border-color);
	border-top:var(--top-border-width) solid var(--input-border-color);
	border-right:var(--left-border-width) solid var(--input-border-color);
	border-left:var(--right-border-width) solid var(--input-border-color);
	width:100%;
	height: auto;
	margin:0 0 5px;
	padding:5px 10px;
	border-radius:0px;
	outline: 0 none;

}
.miniform input[type="text"]:hover,
.miniform input[type="email"]:hover,
.miniform input[type="tel"]:hover,
.miniform input[type="url"]:hover,
.miniform select:hover,
.miniform textarea:hover {
    outline: 0 none;
	border-color: var(--input-border-color-hover); 
}
.miniform input[type="text"]:focus,
.miniform input[type="email"]:focus,
.miniform input[type="tel"]:focus,
.miniform input[type="url"]:focus,
.miniform select:focus,
.miniform textarea:focus {
    outline: 0 none;
	border-color: var(--input-border-color-focus); 
}
.form-control:focus {
}
.miniform textarea {
	height:130px;
	max-width:100%;
}
.miniform button[type="submit"] {
	background: var(--submit-button-bg);
	color: var(--submit-button-color);
	cursor:pointer;
	width: 100%;
	border:none;
	margin:0 0 5px;
	padding:5px;
	border-radius:0px;
}
.miniform button[type="submit"]:hover {
	background: var(--submit-button-bg-hover);
	color: var(--submit-button-color-hover);
	-webkit-transition:background 0.3s ease-in-out;
	-moz-transition:background 0.3s ease-in-out;
	transition:background-color 0.3s ease-in-out;
}
.miniform button[type="submit"]:active {
	box-shadow:inset 0 1px 3px rgba(0,0,0,0.5);
}

.miniform .missing {
    border-color: var(--input-border-color-missing) !important;
    background: var(--input-bg-color-missing) !important;
}

::-webkit-input-placeholder {
    color:var(--input-placeholder-color);
}
:-moz-placeholder {
    color:var(--input-placeholder-color);
}
::-moz-placeholder {
    color:var(--input-placeholder-color);
}
:-ms-input-placeholder {
    color:var(--input-placeholder-color);
}

.miniform iframe {
    border: none;
	background: #fff;
}

.captcha_table input[type="text"] {
	width: 185px !important;
}
.text_captcha, .captcha_expl {
	color: var(--input-text-color);
}

/* based on https://css-tricks.com/custom-styling-form-inputs-with-modern-css-features/ */
@supports (-webkit-appearance: none) or (-moz-appearance: none) {
	.miniform input[type='checkbox'],
	.miniform input[type='radio'] {
		--active: var(--input-checkbox-color);
		--active-inner: #fff;
		--focus: 2px rgba(39, 94, 254, .3);
		--border: #BBC1E1;
		--border-hover: var(--input-checkbox-color);
		--background: #fff;
		--disabled: #F6F8FF;
		--disabled-inner: #E1E6F9;
		-webkit-appearance: none;
		-moz-appearance: none;
		height: 21px;
		outline: none;
		display: inline-block;
		vertical-align: top;
		position: relative;
		margin: 0;
		cursor: pointer;
		border: 1px solid var(--bc, var(--border));
		background: var(--b, var(--background));
		-webkit-transition: background .3s, border-color .3s, box-shadow .2s;
		transition: background .3s, border-color .3s, box-shadow .2s;
	}
	.miniform input[type='checkbox']:after,
	.miniform input[type='radio']:after {
		content: '';
		display: block;
		left: 0;
		top: 0;
		position: absolute;
		-webkit-transition: opacity var(--d-o, 0.2s), -webkit-transform var(--d-t, 0.3s) var(--d-t-e, ease);
		transition: opacity var(--d-o, 0.2s), -webkit-transform var(--d-t, 0.3s) var(--d-t-e, ease);
		transition: transform var(--d-t, 0.3s) var(--d-t-e, ease), opacity var(--d-o, 0.2s);
		transition: transform var(--d-t, 0.3s) var(--d-t-e, ease), opacity var(--d-o, 0.2s), -webkit-transform var(--d-t, 0.3s) var(--d-t-e, ease);
	}
	.miniform input[type='checkbox']:checked,
	.miniform input[type='radio']:checked {
		--b: var(--active);
		--bc: var(--active);
		--d-o: .3s;
		--d-t: .6s;
		--d-t-e: cubic-bezier(.2, .85, .32, 1.2);
	}
	.miniform input[type='checkbox']:disabled,
	.miniform input[type='radio']:disabled {
		--b: var(--disabled);
		cursor: not-allowed;
		opacity: .9;
	}
	.miniform input[type='checkbox']:disabled:checked,
	.miniform input[type='radio']:disabled:checked {
		--b: var(--disabled-inner);
		--bc: var(--border);
	}
	.miniform input[type='checkbox']:disabled + label,
	.miniform input[type='radio']:disabled + label {
		cursor: not-allowed;
	}
	.miniform input[type='checkbox']:hover:not(:checked):not(:disabled),
	.miniform input[type='radio']:hover:not(:checked):not(:disabled) {
		--bc: var(--border-hover);
	}
	.miniform input[type='checkbox']:focus,
	.miniform input[type='radio']:focus {
		/* box-shadow: 0 0 0 var(--focus); */
	}
	.miniform input[type='checkbox']:not(.switch),
	.miniform input[type='radio']:not(.switch) {
		width: 21px;
	}
	.miniform input[type='checkbox']:not(.switch):after,
	.miniform input[type='radio']:not(.switch):after {
		opacity: var(--o, 0);
	}
	.miniform input[type='checkbox']:not(.switch):checked,
	.miniform input[type='radio']:not(.switch):checked {
		--o: 1;
	}
	.miniform input[type='checkbox'] + label,
	.miniform input[type='radio'] + label {
		font-size: 14px;
		line-height: 21px;
		display: inline-block;
		vertical-align: top;
		cursor: pointer;
		margin-left: 4px;
	}

	.miniform input[type='checkbox']:not(.switch) {
		border-radius: 7px;
	}
	.miniform input[type='checkbox']:not(.switch):after {
		width: 5px;
		height: 9px;
		border: 2px solid var(--active-inner);
		border-top: 0;
		border-left: 0;
		left: 7px;
		top: 4px;
		-webkit-transform: rotate(var(--r, 20deg));
		transform: rotate(var(--r, 20deg));
	}
	.miniform input[type='checkbox']:not(.switch):checked {
		--r: 43deg;
	}
	.miniform input[type='checkbox'].switch {
		width: 38px;
		border-radius: 11px;
	}
	.miniform input[type='checkbox'].switch:after {
		left: 2px;
		top: 2px;
		border-radius: 50%;
		width: 15px;
		height: 15px;
		background: var(--ab, var(--border));
		-webkit-transform: translateX(var(--x, 0));
		transform: translateX(var(--x, 0));
	}
	.miniform input[type='checkbox'].switch:checked {
		--ab: var(--active-inner);
		--x: 17px;
	}
	.miniform input[type='checkbox'].switch:disabled:not(:checked):after {
		opacity: .6;
	}

	.miniform input[type='radio'] {
		border-radius: 50%;
	}
	.miniform input[type='radio']:after {
		width: 19px;
		height: 19px;
		border-radius: 50%;
		background: var(--active-inner);
		opacity: 0;
		-webkit-transform: scale(var(--s, 0.7));
		transform: scale(var(--s, 0.7));
	}
	.miniform input[type='radio']:checked {
		--s: .5;
	}
	.miniform input[type=radio]:focus, 
	.miniform input[type=checkbox]:focus {
		outline: none;
		outline-offset: 0;
	}

}


