* {
	-webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
  			box-sizing: border-box;
}

html,body {
	font-size: 100%;
	margin: 0;
	padding: 0;
}

body {
	background: #f6f5f3;
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
}

h1 {
	font-size: 2.5em;
	font-weight: normal;
	text-align: center;
}

h2 {
	font-size: 1.25em;
}

.responder-full {
	background: #ffffff;
}

.responder-wrap {
	margin: 0 auto;
	max-width: 1014px;
	overflow: auto;
	padding-left: 1rem;
	padding-right: 1rem;
}

header {
	height: 75px;
	padding: 10px 0;
}

header img {
	display: block;
	max-height: 55px;
	width: auto;
}


.rmreviews div {
	margin: 0 auto 2em;
	max-width: 320px;
	text-align: center;
	width: 100%;
}

.rmreviews h2 {
	font-weight: 600;
}

.rmreviews div img {
	display: block;
	margin: 0 auto 1em;
	max-width: 100%;
}

.form-message {
	background-image: repeating-linear-gradient(to bottom, #f4f4f4, #f4f4f4 1px, #ffffff 1px, #ffffff 2px);
	border-bottom: 1px solid #c5c5c5;
	border-top: 1px solid #c5c5c5;
	color: #282828;
	margin-bottom: 3em;
	margin-right: 1em;
	padding: .8em 1em;
	
	display: -webkit-flex;
	display:    -moz-flex;
	display: 		 flex;
	
	-webkit-align-items: center;
	   -moz-align-items: center;
	   		align-items: center;
}

/*
0 1px 0 #DD4232
*/
form .errorinfo{
	background: rgba(221, 66, 50, 0.85 );
    border-bottom: 1px solid #c5c5c5;
    border-top: 1px solid #c5c5c5;
    color: #ffffff;
    margin-bottom: 3em;
    margin-right: 1em;
    padding: .8em 1em;
    font-size: 14px;
}


.form-message img {
	margin-right: 1em;
}

@media screen and (min-width: 600px) and (max-width: 800px) {
	.rmreviews div {
		float: left;
		width: 48%;
	}
	
	.rmreviews div:nth-of-type(2n+1) { margin-right: 4%; }
}

@media screen and (min-width: 801px) {
	.rmreviews div {
		float: left;
		width: 24%;
	}
	
	.rmreviews div:not(:nth-of-type(4n+1)) {
		margin-left: 1.3333%;
	}
}


/*
 * Form styles
 */

.review-form {
	margin-bottom: 2em;
}

fieldset {
	border: 0 none;
	margin-bottom: 2em;
	padding: 0;
}

fieldset legend { display: none; }

.prform label {
	color: #4c4c4c;
	display: block;
	font-size: .875em;
	margin-bottom: .5rem;
}

.prform label .req {
	color: #c82222;
	font-size: .857em;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]), textarea {
    background: #ffffff;
    border: 1px solid #c5c5c5;
    box-shadow: inset 2px 3px 6px rgba(0,0,0,.05);
    color: #686868;
    font-size: 1em;
    padding: 0.625em 0.4375em;
    width: 100%;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]) {
	height: 44px;
}

label.inline-label { display: inline-block; }

.form-half, .form-full {
	margin-bottom: 1.25em;
}

@media screen and (min-width: 900px) {	
	.form-half {		
		float: left;
		width: 50%;
	}
	
	.form-half, .form-full { padding-right: 1em; }
}

label {
	margin-bottom: .5em;
}

input:invalid, textarea:invalid {
	background: white;
}

input[type="submit"] {
	border: 0 none;
	color: #ffffff;
    cursor: pointer;
	font-size: 1em;
	padding: 1em 3em;
}

input[type="submit"]:not(.brand-background) {
	background: #b0b0b0;
}

.ajax-submitting input[type="submit"] {
	background: #f6f5f3;
	color: #d8d7d5;
	cursor: default;
	pointer-events: none;
}

h3.section-heading.section-heading:first-child {
	margin-bottom: .75em;
	margin-top: 2.25em;
}

#formTemp { display: none; }

.form-switchers.empty {
	display: none;
	overflow: hidden;
}

.form-switchers.empty + input[type="submit"] {
	display: none;
}

/*
.type-toggle input, .type-toggle label {
	display: inline-block;
	margin-left: .3em;
	width: auto;
}

.type-toggle label:nth-of-type(1) {
	margin-left: .8em;
}
*/

.type-toggle {
	display: -webkit-inline-flex;
	display:    -moz-inline-flex;
	display:	 -ms-inline-flex;
	display: 		 inline-flex;
	
	clear: both;
	height: 54px;
	margin-top: 3em;
	width: 100%;
	
	-webkit-align-items: stretch;
	   -moz-align-items: stretch;
	   		align-items: stretch;
}

.type-toggle input {
	visibility: hidden;
	position: absolute;
	right: 0;
	bottom: 0;
}

.type-toggle label {
	background: #f6f6f6;
	border: 1px solid #c5c5c5;
	cursor: pointer;
	display: block;
	font-size: 1.25em;
	line-height: 54px;
	margin-bottom: 0;
	text-align: center;
	width: 50%;
	width: calc(50% - 4px);
	
	-webkit-transition: background-color .35s ease-out;
	   -moz-transition: background-color .35s ease-out;
	   		transition: background-color .35s ease-out;
}

.type-toggle label.active {
	background: #ffffff;
	border-bottom: 0 none;
	position: relative;
}

.separator {
	border-bottom: 1px solid #c5c5c5;
	content: " ";
	display: block;
	width: 8px;
}

.practice-addresses { overflow: auto; }

@media screen and (min-width: 601px) {

	.practice-addresses > div {
		float: left;
		width: 49%;
	}
	
	.practice-addresses > div:nth-of-type(2n+1) {
		clear: left;
		margin-right: 2%;
	}
	
}

.social-networks {
	overflow: auto;
}

.social-networks div {
	float: left;
	text-align: center;
}

.social-networks label {
	border: 1px solid #dedede;
	cursor: pointer;
	display: flex;
	height: 175px;
	width: 175px;
	
	-webkit-align-items: center;
	   -moz-align-items: center;
			align-items: center;
			
	-webkit-justify-content: center;
	   -moz-justify-content: center;
			justify-content: center;
}

.social-networks div img {
	display: block;
	margin: 0 auto 1em;
	max-width: 85%;
}

.powered-by {
	font-size: 13px;
	padding-top: 13px;
	text-align: center;
}

.powered-by a {
	color: #666666;
	text-decoration: none;
}

.powered-by img {
	display: inline-block;
	vertical-align: middle;
}

@media screen and (max-width: 600px) {
	.social-networks div {
		width: 49%;
	}
	
	.social-networks div:nth-of-type(2n+1) {
		clear: left;
		margin-right: 2%;
	}
}

@media screen and (min-width: 601px) {
	.social-networks div {
		width: 19%;
	}
	
	.social-networks div:not(:nth-of-type(5n+1)) {
		margin-left: 1.25%;
	}
	
	.social-networks div:nth-of-type(5n+1) {
		clear: left;
	}
}

.edit-link { margin-top: 1.75em; }

@media screen and (min-width: 900px) {
	.edit-link {
		float: right;
	}
}
