body {
	font-family: Raleway, BlinkMacsystemFont, HelveticaNeue, 'Helvetica Neue', Arial, sans-serif;
	color: #222;
	font-weight: 400;
	font-size: 1.2em;
}

a {
	color: #3bbfbb;
	transition: all .5s ease-out;
}

a:hover, a:active {
	color: #c54d90;
}

.button[disabled] {
	color: #9a9a9a;
}

nav {
	margin-bottom: -10px;
}

nav .navbar-item a {
	text-transform: uppercase;
	font-size: 14px;
	display: inline-block;
	margin-right: 10px;
}

.contact {
	margin-bottom: 30px;
}

.call {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	font-family: 'Open Sans', Arial, sans-serif;
	display: inline-block;
	padding-right: 20px;
}

header.hero {
	background-color: #3bbfbb;
	text-align: center;
}

header.hero  h1 {
	color: #fff;
	font-size: 1.9rem;
	font-weight: 600;
	line-height: 1.5;
	min-width: 270px;
	text-align: center;
}

header.hero h2 {
	color: #fff;
	font-size: 1.3rem;
	font-weight: 300;
	text-align: center;
	margin-bottom: 20px;
}

header.hero h2 span {
	display: block;
	font-size: 1.4rem;
	text-transform: uppercase;
}

header.hero .hero-body {
	padding: 1.7rem;
}

section {
	padding-top: 60px;
	padding-bottom: 60px;
}

section.intro {
	background-color: #c54d90;
	color: #fff;
	padding-top: 40px;
	padding-bottom: 40px;
}

section.intro .container-box {
	border: thin solid #fff;
	padding: 20px 30px;
}

section.intro p {
	line-height: 1.5;
	text-align: center;
	font-weight: 500;
	margin: 25px auto;
}

section.intro p.title {
	font-weight: 600;
	text-transform: uppercase;
	color: #fff;
	margin-top: 20px;
}

section.intro p small {
	font-size: 80%;
	font-weight: 400;
	font-style: italic;
}

section.form-container {
	padding-bottom: 40px;
}

.form-container form {
	display: block;
	margin: 0 auto;
}

.form-container .field {
	padding: 10px 0;
}

.form-container .field label {
	color: #434343;
	font-weight: 600;
}

.form-container .field p small {
	font-size: 75%;
}

p.description {
	padding-left: 10px;
	padding-right: 10px;
}

.steps .step-item {
	padding: 15px;
}

.step h2, .step-item h2 {
	color: #3bbfbb;
	font-weight: 700;
	font-size: 2.4rem;
	text-align: center;
	text-transform: uppercase;
}

.step-item p, .step p {
	text-align: center;
}

.step p.description {
	text-align: left;
	margin-bottom: 15px;
}

.button-primary {
	background-color: #c54d90;
	color: #fff;
	text-transform: uppercase;
	border: thin solid #c54d90;
	font-size: 120%;
	font-weight: 500;
	display: block;
	width: 100%;
	border-radius: 0;
}

.info {
	font-size: 80%;
	margin-top: 40px;
}

.info p {
	font-weight: 300;
	color: #222;
}

.button-secondary {
	background-color: #3bbfbb;
	color: #fff;
	font-weight: 600;
	font-size: 120%;
	display: block;
	text-transform: uppercase;
	width: 100%;
}

.step, #emergency-contact, #client-contact, #first-time, #provider-details, #payment-details, #rate-options, #med-requirements {
	display: none;
}

.step > div {
	padding-top: 40px;
	padding-bottom: 40px;
	border-bottom: thin solid #ddd;
}

.step > div:last-child {
	border-bottom: none;
}

.step h3 {
	font-size: 125%;
	font-weight: 600;
	margin-bottom: 15px;
}

.custom-select {
	width: 100%;
}

.custom-select select {
	display: block;
	width: 100%;
	min-height: 200px;
}

.label-required {
	position: relative;
}

.label-required:after {
	position: absolute;
	content: '*';
	font-size: 125%;
	margin-top: -5px;
	padding-left: 4px;
}

.progress {
	display: flex;
	position: relative;
	justify-content: space-between;
	min-height: 48px;
	margin-bottom: 20px;
}

.progress .step-count {
	background-color: #fff;
	border-radius: 999px;
	width: 48px;
	height: 48px;
	color: #000;
	position: relative;
	z-index: 1;
	padding: 0;
	border: thin solid #c54d90;
	font-size: 80%;
	cursor: pointer;
}

.progress .step-count.step-active {
	background-color: #3bbfbb;
	color: #fff;
	font-weight: 600;
	border: 2px solid #3bbfbb;
}

.progress .line-through {
	position: absolute;
	width: 100%;
	height: 2px;
	background-color: #000;
	top: 50%;
	transform: translateY(-50%);
	z-index: 0;
}

footer {
	background-color: #3bbfbb;
	color: #fff;
	padding: 20px;
	text-align: center;
}

footer p {
	font-size: 90%;
	font-weight: 500;
	margin-bottom: 10px;
}

footer a {
	color: #c54d90;
}

footer a:hover, footer a:active {
	color: #5a5a5a;
}

.text-uppercase {
	text-transform: uppercase;
}

.has-margin-top {
	margin-top: 30px;
}

@media screen and (max-width:768px) {
	body {
		font-size: 1.1em;
	}

	.review .display-pic {
		justify-content: center;
	}

	.review p {
		font-size: 85%;
		padding: 5px 20px;
	}

	.features .logo-img img {
		margin: 0 auto;
	}

	.cta {
		padding-left: 20px;
		padding-right: 20px;
	}
}

@media screen and (max-width: 1090px) {
	.contact {
		text-align: left !important;
	}
}
