/* RESET */

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  padding: 0;
  margin: 0;}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;}

button[disabled],
input[disabled] {
  cursor: default;}

form *:focus{
	outline:none;
	box-shadow:0 0 0 2px #dadada;}



/* BASIC STYLES */

ul.inputs-list {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

ul.inputs-list label {
    font-weight: 700;
}

input[type="text"], 
input[type="search"], 
input[type="email"],
input[type="tel"] {
	color:#333;
	box-sizing:border-box;
	display:block;
	width:100%;
	padding:15px 20px;
	border:1px solid #dadada;
	border-radius:4px;
	background:#fff;}

textarea{
	height:150px;
	color:#333;
	box-sizing:border-box;
	display:block;
	width:100%;
	padding:15px 20px;
	border:1px solid #dadada;
	border-radius:4px;
	background:#fff;}

button, input[type="button"], input[type="reset"], input[type="submit"]{
	display:inline-block;
	text-transform:uppercase;
	font-size:21px;
	font-weight:800;
	line-height:24px;
	color:#fff;
	padding:18px 36px;
	background:#26c571;
	border:3px solid #26c571;
	border-radius:3px;
	transition:color 0.25s, background-color 0.25s;}  
button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover{
	color:#26c571;
	background:#fff;}

.custom-checkbox{
	display:block;
	position:relative;
	overflow:hidden;}
.custom-checkbox input{position:absolute; top:-50px;}
.custom-checkbox .checkbox{
	background:url(../img/custom-checkbox.png) no-repeat left top;
	cursor:pointer;
	float:left;
	width:20px;
	height:20px;
	margin:3px 20px 0 0;
	display:block;}
.custom-checkbox .label{
	display:block;
	overflow:hidden;}
.custom-checkbox input:checked + .checkbox{background-position:left bottom;}



/* DEMO FORM */

.Demo-Form{
	background:#005587;
	padding:40px;
	color:#fff;}
.Demo-Form h2, .Demo-Form .h2{
	text-align:center;
	margin-bottom:12px;
	color:#fff;}
.Demo-Form h3{
	font-size:21px;
	font-weight:800;
	text-transform:uppercase;
	text-align:center;
	margin-bottom:40px;}
.Demo-Form .small-text{
	margin-top:5px;
	display:block;
	text-align:right;}

.Demo-Form .phone {position: relative;}
.Demo-Form .phone > span {display:block;}
.Demo-Form .phone > span:nth-child(1){margin-right: 100px;}
.Demo-Form .phone > span:nth-child(2){
	position: absolute;
	top:0;
	right: 0;
	width: 80px;
}

.Demo-Form input[type="text"]{font-weight:700;}
.Demo-Form button{width:100%;}

@media(max-width:960px){
	body.page-template-template-demo-cues .WYSIWYG {margin-top:40px;}
	.Demo-Form{margin-top:40px; padding:20px;}
	.page-id-17 .Demo-Form {margin-top:0; margin-bottom:40px;}
}

.Demo-Form .hs-fieldtype-text label,
.Demo-Form .hs-fieldtype-textarea label {
    display: none;
}

.Demo-Form input[type="text"],
.Demo-Form input[type="tel"],
.Demo-Form input[type="email"],
.Demo-Form textarea {
    font-weight: 700;
    margin-bottom: 24px;
}

.Demo-Form input[type="submit"] {
    width: 100%;
}


/* CONTACT FORM */

.Contact-Form{
	background:#f1f1f1;
	padding:40px;}
.Contact-Form .small-text{
	margin-top:5px;
	display:block;
	text-align:right;}

.Contact-Form .phone {position: relative;}
.Contact-Form .phone > span {display:block;}
.Contact-Form .phone > span:nth-child(1){margin-right: 100px;}
.Contact-Form .phone > span:nth-child(2){
	position: absolute;
	top:0;
	right: 0;
	width: 80px;
}

.Contact-Form input[type="text"],.Contact-Form input[type="tel"],.Contact-Form input[type="email"]{font-weight:700; margin-bottom: 24px;}
.Contact-Form textarea{font-weight:700;}
.Contact-Form button,
.Contact-Form input[type="submit"]{
	background:#0091c6;
	border-color:#0091c6;
	width:100%;}
.Contact-Form button:hover,
.Contact-Form input[type="submit"]:hover{
	color:#0091c6;
	background:#fff;}
	
.Contact-Form .hs-fieldtype-text label,
.Contact-Form .hs-fieldtype-textarea label{
    display: none;
}

@media(max-width:960px){
	.Contact-Form{margin-bottom:40px; padding:20px;}
}



/* SEARCH 404 */

.Search-404{
	margin:60px auto;
	max-width:560px;}
.Search-404 input{display:inline-block; width:68%; vertical-align:top;}
.Search-404 button{
	font-weight:700;
	text-transform:none;
	display:inline-block;
	width:30%;
	padding:13px 0;
	vertical-align:top;
	background:#0091c6;
	border-color:#0091c6;}
.Search-404 button:hover{
	color:#0091c6;
	background:#fff;}



/* CONTACT FORM */

.Awards-Form .group{
	background:#f1f1f1;
	padding:40px;
	margin-bottom:40px;}

.Awards-Form .remember{
	padding:30px;
	background:#005587;
	color:#fff;
	font-size:21px;
	line-height:28px;
	font-weight:700;
	margin-bottom:40px;
	text-align:center;}

.Awards-Form p{position:relative;}
.Awards-Form p .remaining{
	position:absolute;
	bottom:10px;
	right:15px;
	color:#000;
	opacity:0.25;
	font-size:14px;
	pointer-events:none;}

.Awards-Form input[type="text"]{font-weight:700; margin-top:10px;}
.Awards-Form textarea{font-weight:700; margin-top:10px; height:136px; margin-bottom:24px; resize:vertical;}
.Awards-Form textarea.max{box-shadow:0 0 0 2px#d64607;}

.Awards-Form button{
	display:inline-block;
	background:#0091c6;
	border-color:#0091c6;
	width:auto;}
.Awards-Form button:hover{
	color:#0091c6;
	background:#fff;}

@media(max-width:960px){
	.Awards-Form .group{padding:20px 10px;}
	.Awards-Form .remember{padding:20px 10px;}
	.Awards-Form p{margin-bottom:0;}
}




/* REFERRAL FORM */

.Referral-Form {margin-top:40px; max-width:1000px; margin-left:auto; margin-right:auto;}
.Referral-Form p {margin-bottom:20px;}
.Referral-Form input {font-weight:700;}
.Referral-Form textarea {font-weight:700;}
.Referral-Form h2 {margin-top:20px}
.Referral-Form .inset {margin-bottom:40px;}
.Referral-Form .inset + p {text-align:center;}

.Referral-Form button{
	display:inline-block;
	background:#0091c6;
	border-color:#0091c6;
	width:auto;}
.Referral-Form button:hover{
	color:#0091c6;
	background:#fff;}


.Referral-Form .referral-contact-check{
	font-size: 14px;
	line-height:20px;
	font-weight: 700;
	position: relative;
	padding:8px 160px 0 0;}

.Referral-Form .referral-contact-check .radios {
	position: absolute;
	top: 18px;
	right: 0;
	width: 160px;
	text-align: right;}


.Referral-Form .radio {
	display: inline-block;
	padding-left: 20px;
	position: relative;
	overflow: hidden;
	height: 22px; }

.Referral-Form .radio > input {
	position: absolute;
	top: 0;
	left: -9999px;
}

.Referral-Form .radio > span {
	display: block;
	position: relative;
	padding: 0 0 0 30px;
}

.Referral-Form .radio > span::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #dadada;
	background: #fff;
}

.Referral-Form .radio > input:checked + span::before {
	box-shadow: inset 0 0 0 5px #fff;
	background: #26c571;
}

.Referral-Form input[type="text"],.Referral-Form input[type="tel"],.Referral-Form input[type="email"]{font-weight:700; margin-bottom: 24px;}
.Referral-Form textarea{font-weight:700;}
.Referral-Form button,
.Referral-Form input[type="submit"]{
	background:#0091c6;
	border-color:#0091c6;
	width:100%;}
.Referral-Form button:hover,
.Referral-Form input[type="submit"]:hover{
	color:#0091c6;
	background:#fff;}
	
.Referral-Form .hs-fieldtype-text label,
.Referral-Form .hs-fieldtype-textarea label, .Referral-Form .hs-fieldtype-phonenumber label{
    display: none;
}

.Referral-Form .hs-form fieldset {
    max-width: 100%;
}

.Referral-Form li.hs-form-radio, .Referral-Form li.hs-form-checkbox {
    display: inline;
    margin-right: 15px;
}

.Referral-Form .actions {
    padding-top: 15px;
}

@media(min-width:768px) {
    .hs_referrers_phone_number.hs-referrers_phone_number.hs-fieldtype-text.field.hs-form-field,
    .hs_phone.hs-phone.hs-fieldtype-text.field.hs-form-field {
        width: 50%;
        float: left;
    }
    
    .hs_referrers_phone_number input,
    .hs_phone input {
        margin-right: 0;
        width: 100% !important;
    }
}

@media(max-width:960px){
    .Referral-Form .inset {padding:30px 20px 20px; margin-left:-10px; margin-right:-10px;}
    .Referral-Form input {font-size:15px}
    .Referral-Form h2 {margin-top:40px}
    .Referral-Form .referral-contact-check{padding:0 0 20px 0;}
    .Referral-Form .referral-contact-check .radios {text-align:left; position:static; margin-top:10px;}
    .Referral-Form .referral-contact-check .radio {padding:0 20px 0 0;}
}