input[type=text], input[type=email], input[type=tel], input[type=file], select, textarea, button[type=submit] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width:100%;
	border: 1px solid #999;
	padding: 8px;
	outline: none;
	background-color: #FFF;
	border-radius: 5px;
	font-size: 16px;
	color: #666;
	transition: all 0.2s;
}
textarea { resize: none; /*vertical*/ }
select { background-image: url(../images/chevron-down-grey.svg); background-repeat: no-repeat; background-position: 95% center; background-size: 20px; }
button[type=submit] { background-color: #00B7FD; color: #FFF; cursor: pointer; }

select.notvalid, input.notvalid, textarea.notvalid { border: 1px solid #FF6666; box-shadow: 0px 0px 5px #ff6666 inset; }

::placeholder { color: #BBB; opacity: 1; }
:-ms-input-placeholder { color: #BBB; opacity: 1; }
::-ms-input-placeholder { color: #BBB; opacity: 1; }

.with-icon { position: relative; }
.with-icon .iconl { position: absolute; top: 5px; left: 5px; }
.with-icon .iconr { position: absolute; top: 5px; right: 5px; }
.with-icon .iconr2 { position: absolute; top: 5px; right: 34px; }
.with-icon .iconl svg, .with-icon .iconr svg, .with-icon .iconr2 svg { width: 26px; height: 26px; color: #999; }
.with-icon input[type=text], .with-icon select { padding-left: 40px; }

.with-icon.select:after {
	content: ''; position: absolute; top: 0px; right: 0px; width: 36px; height: 36px;
	-webkit-mask: url(svg/solid/chevron-down.svg) no-repeat;
	mask: url(svg/solid/chevron-down.svg) no-repeat;
	background-color: #999;
}

.checkbox-label { vertical-align: middle; }
.checkbox-label span { padding-left: 10px; line-height: 30px; color: #888; font-size: 14px; }

input[type="checkbox"] { width: 22px; height: 22px; }

input[type="checkbox"].checkbox_rounded { display:none; }
input[type="checkbox"].checkbox_rounded + label { width: 60px; height: 30px; border-radius: 30px; border: 2px solid #ddd; background-color: #ff4d4d;
  display: inline-block; content: ""; float: left; margin-right: 5px; transition: background-color 0.5s linear; margin-top: 0px; }
input[type="checkbox"].checkbox_rounded + label:hover { cursor: pointer; }
input[type="checkbox"].checkbox_rounded + label::before { width: 30px; height: 30px; border-radius: 30px; background-color: #fff; display: block;
  content: ""; float: left; margin-top: -2px; margin-right: 5px; transition: margin 0.1s linear; box-shadow: 0px 0px 5px #aaa; }
input[type="checkbox"]:checked.checkbox_rounded+label{ background-color: #339933; }
input[type="checkbox"]:checked.checkbox_rounded+label::before { margin: 0 0 0 30px; }
