
body {
	padding:10px;
	color: #595959;
	font-size: 16px;
}

h1,h2,h3,h4 { 
	font-family: 'Open Sans';
	font-weight: 400;
	color: #40b4e5; 
}
	
.form-element {
	margin-top:20px;
}		

label {
  display:inline-block;

	width:200px;
	max-width: 200px;

	margin-right:10px;
	font-weight: bold;
	text-align: right;
	line-height: 1.3em;
	
	vertical-align: middle;	
}


/* main input width control */
input,
select,
textarea {	
	width: 24em;
	max-width: calc(100% - 250px);
	
	padding: 2px 10px;
	
	vertical-align: middle;	
}

textarea {
	display: inline-block;
	height: 150px;
}

select {
	background: rgba(0,0,0,.03);
	padding: 5px 10px;
	color: inherit !important;
	box-shadow: 0 0 0 1px rgba(255,255,255,.06);	
	text-overflow: ellipsis;
}

input[type=date],
input[type=number] {
	background: rgba(0,0,0,.03);
	padding: 5px 10px;
	color: inherit !important;
	border-radius: 2px;
	border: 1px solid #ccc;
}

span.form-error {
  font-style: italic;
  font-size: 0.8em;
	line-height: 1.5em;
  color:red;
	max-width: 400px;
	min-width: 500px;
	font-weight: bold;
}

span.form-note {
	display: inline-block;
  margin-left: 210px;
	margin-top: 5px;
	font-size: 0.9em;
	line-height: 1.5em;
	font-style: italic;
	max-width: 400px;
	min-width: 500px;
}

span.form-note a {
	font-weight: bold;
}




.checkbox-outer {
  margin-top: 1em;
	padding-left: 1em;
}
.checkbox-inner {

}
.checkbox-inner input {
  /* Double-sized Checkboxes */
  -ms-transform: scale(1.6); /* IE */
  -moz-transform: scale(1.6); /* FF */
  -webkit-transform: scale(1.6); /* Safari and Chrome */
  -o-transform: scale(1.6); /* Opera */
	margin-top: 2px;
	cursor: pointer;	
}

.checkbox-inner label {
  display: inline-block;
  width:80%;
	max-width: 80%;
  margin: 6px 0px 6px 10px;
  text-align: left;
  cursor: pointer;
}
:checked + label {
  color: #40b4e5;
}
.checkbox-outer span.form-note {
	margin-left: 0;
}




input[type='radio'] {
	/* Double-sized Radio buttons */
	-ms-transform: scale(1.2); /* IE */
	-moz-transform: scale(1.2); /* FF */
	-webkit-transform: scale(1.2); /* Safari and Chrome */
	-o-transform: scale(1.2); /* Opera */
	
	cursor: pointer;
	
  width: 1.5em;
	margin-top: 4px;
	margin-left: 1.5em;
	vertical-align: top;
}

.radio-label {
	font-weight: bold;
}

.radio-label label {
	display: inline;
	width: auto;
	margin: 0;
	cursor: pointer;
}

.radio-label input[type="radio"]:checked ~ * { 
    color: #40b4e5;
}

/* For the radio buttons, we use the Note as the label */
.radio-label span.form-note {
	margin-left: 0;
	
	width: calc( 100% - 14em );
	min-width: calc( 100% - 14em );

	vertical-align: top;
	
	font-weight: normal;
	font-style: normal;
}



.cancel {
	display: none;
}



/* Business Search rules */
.business-link {
  font-weight: bold;
  color: #40b4e5;
  cursor:pointer;
}
.business-link:hover {
  color: #EFAC4E;
}
#business_search_results {
	margin-left: 210px;
}


/* Password verified ticks */
.tick {
  vertical-align: middle;
  margin-left: 5px;
  display: none;
}
.show-tick {
  margin-left: 5px;
  display: inline;
}







input:focus,
select:focus {
	border: 1px solid #40b4e5;
}

input[type=checkbox],
input[type=submit] {
	width: auto;
}


input[type="submit"] {
	background-color: #40b4e5;
	color: #ffffff;
}


hr {
  margin-bottom: 1.2em;
	margin-top: 1.2em;	
}




/* Find an advisor rules */

div.advisor {
	margin-left: 1.5em;
	margin-bottom: 2em;
}

div.advisor p {
	margin-left: 1.5em;
	line-height: 1.8em;
	padding-bottom: 0;
}

div.advisor ul {
	margin-left: 2.5em;
	list-style-type: none;
}

div.advisor li {
	font-size: 0.9em;
	line-height: 1.6em;
	padding-bottom: 0;
}


@media only screen and (max-width: 600px) {
	
	span.form-note, span.form-error {
		display: block;
		text-align: left;
		margin: 0;
		width: 100%;
		min-width: calc( 100% - 9em );
	}

	.form-element label {
		display: block;
		text-align: left;
		margin-bottom: 5px;
		width: 100%;
		max-width: 100%;
	}
	
	input,
	textarea,
	select {
		display: block;
		width: 100%;
		max-width: 100%;
	}
	
	
	/* Leave room for password tick */
	input[type='password'] {
		display: inline-block;
		width: calc( 100% - 30px );
		max-width: calc( 100% - 30px );
	}
	
	
	
	/* Radio buttons stay inline */
	input[type='radio'] {
		display: inline-block;
		width: 1.3em;
		margin-left: 1em;
	}
	
	.radio-label label {
		display: inline;
		margin: 0;
	}
	
	.radio-label span.form-note {
		display: inline-block;
		width: calc( 100% - 9em );
		min-width: calc( 100% - 9em );
	}


	
	
	
	/* Checkboxes stay inline */
	.checkbox-inner input[type='checkbox'],
	.checkbox-inner label {
	  display: inline-block;
	}
	
	input[type='checkbox'] {
		margin-top: 0;
		cursor: pointer;
	}
	
	.checkbox-outer {
		padding-left: 0.2em;
	}
	
	.checkbox-inner label {
	  width: calc( 100% - 3em );
	}
	
	.checkbox-inner {
		margin-bottom: 1em;
	}

	#business_search_results {
		text-align: left;
	  margin-left: 0px;
	}


	
} /* end of media */
	

