/* Form element styles */

input, textarea, select{
	font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 400;
}
label{
	font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight:300;
}
input[type=submit]{
	font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight:400;
}

label.screen-reader-text{
	display:none;
}

form input[type=text],
form input[type=email],
textarea,
select{
	border:1px solid #DDD;
	background:#F3F3F3;
	padding:3px 5px;
	font-weight:400;
	color:#333;
}

form input[type=submit],
form input.button{
	background-color:transparent;
	color:#888;
	font-weight:400;
	border:1px solid #888;
	border-radius: 0;
	padding:3px 20px;
	cursor:pointer;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	transition: all 0.25s linear;
}
form input[type=submit]:hover,
form input.button:hover{
	background-color:#AAA;
	color:#FFF;
}

/* New MailChimp subscription form - mc4wp plugin - 2017/11 */

.mc4wp-signup p{
	text-align: left;
}

.mc4wp-signup label{
	display: none;
}

.mc4wp-wrapper input{
	box-sizing: border-box;
}

.mc4wp-wrapper form{
	padding: 2em 0;
}

.mc4wp-response p{
	margin: 0 !important;
	line-height: normal;
}

.mc4wp-alert{
	padding: 0.5em;
	background-color: #f3f3f3;
	border-top: 1px solid #888;
}

/* large mc4wp */

.mc4wp-wrapper.large input[type="email"]{
	width: 100%;
}

.mc4wp-wrapper.large{
	width: 66%;
	margin: 0 auto;
}

.mc4wp-wrapper.large input[type="email"],
.mc4wp-wrapper.large input[type="submit"]{
	font-size: 3rem;
}

.mc4wp-wrapper.large input[type="email"]{

}


/* inline mc4wp */

.newsletter-signup.inline,
.newsletter-signup.inline div,
.newsletter-signup.inline form,
.newsletter-signup.inline .mc4wp-signup > p{
	display: inline-block;
	vertical-align: middle;
	margin: 0 !important;
}

.newsletter-signup.inline .mc4wp-signup label{
	display: none;
}

.newsletter-signup.inline h3{
	margin: 0;
	padding: 0;
}

.mc4wp-form-fields input{
	transition: all 0.25s linear;
	outline: 0;
	box-sizing: border-box;
}

.newsletter-signup.inline .mc4wp-form-fields input[type="email"]{
	width: 200px;
}

.newsletter-signup.inline .mc4wp-notice{
	padding: 5px 0 0;
	background-color: transparent;
	border-top: 0;
	color: #fff;
	font-size: 0.8em;
}

.newsletter-signup.inline .mc4wp-response,
.newsletter-signup.inline .mc4wp-notice{
	display: block;
}

/* widget mc4wp */

.widget .mc4wp-signup input[type="email"]{
	width: 100%;
}

/* MailChimp subscription form - OLD */

#mc_signup_form{
	padding:25px 0 0;
}

#mc_signup_form .mc_merge_var,
#mc_signup_form .mc_signup_submit{
	display:inline-block;
	vertical-align:top;
	padding:0 0 10px 0 !important;
	text-align:left !important;
}

#mc_signup_submit{
	margin-top:0 !important;
	width:auto !important;
}

#mc_signup_form .mc_merge_var{
	position:relative;
	margin-right:5px;
	margin-bottom:0;
}

#mc_signup_form .mc_merge_var label{
	position:absolute;
	left:5px;
	top:3px;
	color:#555;
}

#mc_signup_form .mc_merge_var input{
	width:135px;
}

#mc_signup_form #mc-indicates-required{
	font-size:12px;
	float:left;
	width:100% !important;
	margin-bottom:5px;
}

#mc_signup_form .mc_error_msg,
#mc_signup_form .mc_success_msg{
	display:inline-block;
	color:#FFF;
	font-weight:bold;
	margin-bottom:10px;
	padding:3px 5px;
}
#mc_signup_form .mc_error_msg{
		background:#700 !important;
}
#mc_signup_form .mc_success_msg{
		background:#040 !important;
}

/* Smaller MailChimp subscription form */

.newsletter-signup.small #mc_signup_form{
	padding:0;
}

.newsletter-signup.small nav{
	display:inline-block;
	vertical-align: middle;
	font-size: 0.7em;
}
.newsletter-signup.small nav a{
	font-weight:300;
	color:#AAA;
}
.newsletter-signup.small nav:before{
	content:' [ ';
}
.newsletter-signup.small nav:after{
	content:' ] ';
}
.newsletter-signup.small nav a:hover{
	color:#FFF;
}

/* MailChimp subscription form in page */

.page-content section #mc_signup_form{
	padding:0;
	width:75%;
	margin:0 auto;
	font-size:24px !important;
	font-size:2.4rem !important;
}

.page-content section #mc_signup_form .mc_merge_var,
.page-content section #mc_signup_form .mc_signup_submit{
	display:block;
	padding:0 0 20px 0 !important;
}

.page-content section #mc_signup_form .mc_merge_var{
	position:relative;
	margin-right:0;
}

.page-content section #mc_signup_form .mc_merge_var label{
	position:absolute;
	left:2%;
	top:8px;
}

.page-content section #mc_signup_form .mc_merge_var input{
	width:96%;
	padding:5px 2%;
	font-size:24px !important;
	font-size:2.4rem !important;
}

.page-content section #mc_signup_form #mc-indicates-required{
	font-size:12px;
	font-size:1.2rem;
	float:none;
	width:100% !important;
}

.page-content section #mc_signup_form .mc_error_msg,
.page-content section #mc_signup_form .mc_success_msg{
	display:block;
	color:#FFF;
	font-weight:bold;
	margin-bottom:10px;
	padding:3px 5px;
}

.page-content section #mc_signup_form #mc_signup_submit{
	width:50%;
	font-size:24px;
	font-size:2.4rem;
	padding:7px 5px
}

/* ----- CONTACT FORM 7 ----- */

div.wpcf7 small.notes{
	font-size:12px;
	font-size:1.2rem;
	color:#900;
	font-weight:normal;
}

div.wpcf7 p{
	padding:0 !important;
	margin:0 !important;
}
div.wpcf7 br{
	line-height:0;
	height:0;
	display:none;
}

div.wpcf7 label,
div.wpcf7 .textInput,
div.wpcf7 textarea{
	display:block;
}
div.wpcf7 label small{
	color:#900;
	font-size:12px;
	font-size:1.2rem;
	vertical-align:super;
	line-height:12px;
	line-height:1.2rem;
}

div.wpcf7 label{
	font-size:28px;
	font-size:2.8rem;
	margin-bottom:10px;
	color:#444;
}

div.wpcf7 label.sub{
	font-size:16px;
	font-size:1.6rem;
}

div.wpcf7 .textInput,
div.wpcf7 textarea,
div.wpcf7 select{
	/*border: none;*/
    padding: 8px 2%;
    width: 96%;
}

div.wpcf7 .textInput.offerCode{
	width:auto;
	text-transform:uppercase;
}

div.wpcf7 input[type=checkbox][id*=optin]{
	float:left;
	margin:0 10px 20px 0;
}

div.wpcf7 textarea{
	font-weight:normal;
}

div.wpcf7 select{
	width:100%;
}

div.wpcf7 .fileInput,
div.wpcf7 input[type=file]{
	display:block;
	background:transparent;
	color:#333;
	font-size:14px;
	font-size:1.4rem;
	padding:20px 0;
}

div.wpcf7 .captchaWrapper{
	display: block;
    line-height: normal;
	padding-top:20px;
}

div.wpcf7 .captchaWrapper,
div.wpcf7 .buttonWrapper,
div.wpcf7 span.wpcf7-not-valid-tip{
	/*margin-left:183px;*/
}

div.wpcf7 .captchaWrapper label,
div.wpcf7 .buttonWrapper{
	width:420px !important;
}

div.wpcf7 .captchaWrapper .textInput{
	width:70px;
	border:none;
	background-color:#FFF;
	text-align:center;
}

div.wpcf7 .captchaWrapper label{
	font-size:14px !important;
	font-size:1.4rem !important;
	display:block;
	text-align:left;
}

div.wpcf7 .captchaField{
    background: #E8E8E8;
    border-radius: 0;
    padding: 5px 2%;
    text-align: center;
    width: 46%;
}
div.wpcf7 .captchaField img{
	margin-left:3px;
}
div.wpcf7 .captchaField img,
div.wpcf7 .captchaField input{
	display:inline-block;
	vertical-align:middle;
}

div.wpcf7 .captchaField span.wpcf7-not-valid-tip{
	margin:0;
	text-align:center;
	display:block;
	width:100% !important;
}

div.wpcf7 .formField{
	display:block;
	margin-bottom:1.3em;
}
div.wpcf7 p:last-of-type{
	margin-top:3em !important;
}

div.wpcf7 .buttonWrapper{
	padding-top:1em;
}

div.wpcf7 input.btn{
	transition: all 0.25s linear;
}

div.wpcf7 input.btn.submit{
	font-size:30px;
	font-size:3rem;
	width:auto;
	padding:8px 20px;
}

div.wpcf7 input.btn:hover{

}

.wpcf7-form .wpcf7-checkbox{

}

.wpcf7-form .wpcf7-checkbox input {
    display: inline-block;
    vertical-align: middle;
	margin-right:10px;
}
.wpcf7-form .wpcf7-checkbox label {
    font-size: 16px !important;
	font-size:1.6rem !important;
    font-weight: 400;
	padding-bottom:10px;
}
.wpcf7-form .wpcf7-checkbox .wpcf7-list-item {
    margin: 0;
    vertical-align: top;
		display: block;
}
.wpcf7-form .wpcf7-checkbox .wpcf7-list-item-label {
    display: inline;
	line-height:normal;
}

.wpcf7-recaptcha{
	padding-top:2em;
}

.wpcf7-recaptcha iframe{
	width:304px !important;
	max-width:none !important;
}

/* Contact Form 7 CSS tweaks */

div.wpcf7 {
    margin: 0 auto;
    padding: 0;
	width: 75%;
}
div.wpcf7-response-output {
	width:96%;
    font-weight: 400;
    margin: 20px 0 10px !important;
    padding: 8px 2%;
	border:1px solid #eee;
	border-top-width: 3px;
	border-radius:0;
	/*background:#E8E8E8;*/
	text-align:center;
	color: #333;
}
div.wpcf7-mail-sent-ok {
	border-top-color:#007639;
}
div.wpcf7-mail-sent-ng {
	border-top-color:#C00;
}
div.wpcf7-spam-blocked {
  border-top-color:#C00;
}
div.wpcf7-validation-errors {
  border-top-color:#C00;
}
span.wpcf7-form-control-wrap {
    position: relative;
}
span.wpcf7-not-valid-tip {
    background:none !important;
    border: none !important;
	font-size:16px !important;
    font-size: 1.6rem !important;
	font-weight:400;
    left: 20%;
    padding: 0 !important;
    position: static !important;
	display:block;
	color:#900;
    top: 20%;
    width:inherit;
    z-index: 100;
}
span.wpcf7-not-valid-tip-no-ajax {
    color: #900;
    display: block;
	font-size:16px;
    font-size: 1.6rem;
}
span.wpcf7-list-item {
    margin-left: 0.5em;
}
.wpcf7-display-none {
    display: none;
}
div.wpcf7 img.ajax-loader {
    border: medium none;
    display: inline-block;
    margin: 0 10px !important;
    vertical-align: text-top;
}
div.wpcf7 .watermark {
    color: #888888;
}


/* job application form */

.methodJobsFormWrapper{
}

.methodJobsFormWrapper h2{
	padding:20px 0;
	padding:2rem 0;
}

.methodJobsFormWrapper select{
	width:100%;
	margin-bottom:20px;
}

/* request a quote form */

.quoteFormWrapper h2{
	padding:20px 0;
	padding:2rem 0;
}

.quoteFormWrapper .wpcf7-checkbox label{
	padding:0;
}

.quoteFormWrapper label[for=fileUpload] small{
	display:block;
	padding-top:5px;
	padding-top:0.5rem;
}


/* jumbo-sized forms for landing pages */

form.large{
}

form.large label{
	display:block;
	font-size:28px;
	font-size:2.8rem;
	margin-bottom:0.5em;
	color:#444;
}

form.large input[type=text]{
	display:block;
	font-size:20px;
	font-size:2rem;
	margin-bottom:1em;
}

form.large input[type=submit]{
	font-size:30px;
	font-size:3rem;
	width:auto;
	padding:8px 20px;
	display:block;
	margin:0 auto;
}

/* single field version */

form.large.singleField input[type=text]{
	padding: 8px 2%;
    width: 96%;
}
