@charset "UTF-8";

/* PURPLE COLOR: #874c91
/* JAPANESE VIOLET: #602D59
/* GREY COLOR: #414141



/* ----------------------------------------------- */


/* BASIC SETUP */


/* ----------------------------------------------- */

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html,
body {
	background-color: #fff;
	color: #555;
	font-family: poppins, sans-serif;
	font-weight: 300;
	font-size: 16px;
	text-rendering: optimizeLegibility;
	overflow-x: hidden;
}

a {
	text-decoration: none;
}

ul {
	list-style: none;
}

p {
	color: ##414141 text-align: justify;
}

h2 {
	font-size: 45px;
	font-weight: 300;
}

h3 {
	font-size: 170%;
	font-weight: 400;
	color: ##414141;
	padding-bottom: 10px;
}

h4 {
	font-size: 22px;
	color: #414141;
	padding-bottom: 10px;
	padding-top: 20px;
}

h5 {
	font-size: 70%;
	color: #fff;
	font-weight: 300;
	padding-top: 10px;
}

@media only screen and (max-width: 480px) {
	h2 {
		font-size: 40px;
	}
	h3 {
		font-size: 28px;
	}
}

.row {
	max-width: 1140px;
	margin: 0 auto;
}

section {
	padding: 80px 0 80px 0;
}

.clearfix {
	zoom: 1;
}

.clearfix:after {
	content: '.';
	clear: both;
	display: block;
	height: 0;
	visibility: hidden;
}


/* ----------------------------------------------- */


/* HEADER */


/* ----------------------------------------------- */

nav {
	width: 100%;
	height: 105px;
	border-top: 7px solid #602D59;
	margin-top: 0;
}

.logo {
	width: 300px;
	padding-left: 50px;
	padding-top: 20px;
	background-color: transparent;
	text-align: left;
	float: left;
	cursor: pointer;
}

.site_intro {
	font-family: 'Poppins', sans-serif;
	line-height: 32px;
	color: #602D59;
	font-size: 190%;
	text-transform: uppercase;
	background-image: -webkit-linear-gradient(#602D59, #cd68d1);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.menu {
	list-style: none;
	margin-top: 40px;
	padding-right: 40px;
	float: right;
}

.main-nav li {
	display: inline-block;
	margin-left: 30px;
	font-family: 'Poppins', sans-serif;
	font-weight: 400;
	font-size: 105%;
}

.mobile-nav li {
	padding: 8px 0;
}

.main-nav li a:link,
.main-nav li a:visited {
	padding: 6px 0;
}

.mobile-nav li a:link,
.mobile-nav li a:visited {
	padding: 4px 0;
}

.main-nav li a:link,
.mobile-nav li a:link,
.main-nav li a:visited,
.mobile-nav li a:visited {
	color: #767474;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 100%;
}

.main-nav li a:visited,
.mobile-nav li a:visited {
	border-bottom: 2px solid transparent;
	-webkit-transition: border-bottom 0.2s;
	transition: border-bottom 0.2s;
}

.main-nav li a:hover,
.main-nav li a:active,
.mobile-nav li a:hover,
.mobile-nav li a:active {
	border-bottom: 2px solid #862d96;
}

.nav-hightlighted {
	border-bottom: 2px solid #862d96;
}

/* HAMBURGER MENU BUTTON */

.menu_btn {
	display: none;
}

@media only screen and (max-width: 1200px) {
	
	.main-nav { display: none; }

	.menu_btn {
		height: 27px;
		width: 40px;
		cursor: pointer;
		z-index: 100;
		transition: opacity .25s ease;
		display: block;
		position: relative;
		float: right;
		top: 36px;
		right: 30px;
	}
	.menu_btn span {
		background: #602D59;
		height: 5px;
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		transition: all .35s ease;
		cursor: pointer;
		border-radius: 10px;
	}
	.menu_btn span:nth-of-type(2) {
		top: 11px;
	}
	.menu_btn span:nth-of-type(3) {
		top: 22px;
	}
	.menu_btn.active .top {
		transform: translateY(11px) translateX(0) rotate(45deg);
	}
	.menu_btn.active .middle {
		opacity: 0;
	}
	.menu_btn.active .bottom {
		transform: translateY(-11px) translateX(0) rotate(-45deg);
	}
}


/* MOBILE NAV */

.hidden {
	display: none;
}

.mobile-menu {
	position: fixed;
	width: 100%;
	top: 105px;
	z-index: 9999;
	background-color: rgba(255, 255, 255, 0.98);
	text-align: right;
	padding: 10px 30px 5px 0;
	border-bottom: 1px solid #d6d6d6;
	border-top: 1px solid #d6d6d6;
}


/* STICKY NAVIGATION */

.sticky {
	position: fixed;
	height: 70px;
	top: 0;
	left: 0;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.98);
	border-bottom: 2px solid #eee;
	z-index: 9999;
}

.sticky .mobile-menu {
	top: 70px;
	border-top: none;
}

.sticky .logo {
	width: 350px;
	padding-left: 50px;
	padding-top: 18px;
	background-color: transparent;
	text-align: left;
	float: left;
}

.sticky .site_intro {
	font-family: 'Poppins', sans-serif;
	line-height: 32px;
	color: #602D59;
	font-size: 150%;
	text-transform: uppercase;
	background-image: -webkit-linear-gradient(#602D59, #cd68d1);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.sticky .menu {
	list-style: none;
	margin-top: 20px;
	padding-right: 40px;
	float: right;
	height: 40px;
}


/*.sticky .main-nav li a:hover,
.sticky .main-nav li a:active {
    border-bottom: 2px solid #862d96;
		padding: 2px 0; 
}*/

.sticky .menu_btn {
	top: 20px;
}

@media only screen and (max-width: 480px) {
	.sticky .site_intro {
		line-height: 24px;
		font-size: 130%;
	}
	.logo {
		padding-left: 10px;
	}
	.sticky .logo {
		padding-top: 10px;
		padding-left: 10px;
		width: 200px;
	}
	.menu {
		display: none;
	}
}

.header-img {
	position: relative;
	width: 100%;
	height: 450px;
	background: linear-gradient( rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1)), url(img/lake-550h.jpg);
	background-position: center;
	background-size: cover;
}

.title {
	position: absolute;
	z-index: 1;
	color: #838282;
	text-align: left;
	padding-left: 20px;
	padding-top: 10px;
	top: 35%;
	left: 9%;
	width: 450px;
	height: 120px;
	background-color: rgba(255, 255, 255, 0.55);
}

.title h1 {
	font-size: 50px;
	font-family: 'Hind', sans-serif;
	margin-bottom: -20px;
	font-weight: 500;
}

.title h2 {
	font-size: 32px;
}

@media only screen and (max-width: 530px) {
	.title {
		position: absolute;
		margin: auto;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 320px;
		height: 105px;
	}
	.title h1 {
		font-size: 40px;
		margin-bottom: -10px;
	}
	.title h2 {
		font-size: 130%;
	}
}

.header-img img {
	max-width: 100%;
	opacity: .9;
}


/* ----------------------------------------------- */


/* ABOUT */


/* ----------------------------------------------- */

#about-therapy {
	background-color: #fcfcfc;
}

.about-st h3 {
	color: #602D59;
}

.about-st p {
	color: #414141;
	font-weight: 400;
	line-height: 1.7;
	padding-bottom: 20px;
}

.left {
	padding-right: 10px;
}

.right {
	padding-left: 10px;
	padding-top: 45px;
}

ul {
	padding-left: 10px;
}

li {
	padding-bottom: 10px;
}

@media only screen and (max-width: 700px) {
	.right {
		padding-top: 0;
	}
}


/* ----------------------------------------------- */


/* SERVICES */


/* ----------------------------------------------- */

#services {
	background-color: #602D59;
}

.box {
	padding: 1.2%;
	color: #fff;
	line-height: 24px;
	font-weight: 300;
	background-color: #7e4676;
	min-height: 665px;
}

.services {
	width: 100%;
	height: inherit;
	padding-bottom: 40px;
}

.section-heading {
	text-align: center;
	margin-bottom: 30px;
}

.section-heading h2 {
	font-weight: 500;
	color: #fff;
	;
}

.services img {
	width: 100%;
	padding-bottom: 5px;
}

#services p {
	padding-bottom: 10px;
}


/* ----------------------------------------------- */


/* ISSUES */


/* ----------------------------------------------- */

#issues {
	background-color: #f5f5f5;
}

.issues {
	width: 100%;
}

.issues h2 {
	color: #602D59;
	font-weight: 500;
}

.services img {
	width: 100%;
	margin-bottom: 5px;
}

.issues p {
	color: #414141;
	font-weight: 400;
	line-height: 1.7;
	padding-bottom: 20px;
}

.issues h3 {
	color: #414141;
	padding-bottom: 20px;
}


/* ----------------------------------------------- */


/* CONTACT */


/* ----------------------------------------------- */

.contact h2 {
	color: #602D59;
	font-weight: 500;
}

.contact p {
	color: #414141;
}

.form h4 {
	padding-left: 5px;
}

.contact-details {
	padding-left: 20%;
	padding-bottom: 25px;
}

.address {
	margin-top: 20px;
}

@media only screen and (max-width: 900px) {
	.contact-details {
		padding-left: 10%;
	}
}

@media only screen and (max-width: 800px) {
	.contact-details {
		padding-left: 5%;
	}
}

.dim:hover {
	margin-top: 5px;
	opacity: 0.8;
	filter: alpha(opacity=80);
	/* For IE8 and earlier */
}


/* Below is the design for the contact form */

#contact-area {
	margin-left: 3px;
	width: 100%;
	padding: 10px 10px 20px 0;
	float: left;
}

#contact-area input,
#contact-area textarea {
	padding: 5px;
	width: 100%;
	font-family: 'Lato', calibri, arial;
	font-size: 16px;
	font-weight: 300;
	color: #000;
	border: 1px solid #414141;
	margin-bottom: 15px;
}

#contact-area textarea {
	height: 150px;
	background-color: transparent;
	border: 1px solid #414141;
}

#contact-area textarea:focus,
#contact-area input:focus {
	font-weight: 500;
	color: #000;
	border-top: 1px solid transparent;
	border-left: 1px solid transparent;
	border-bottom: 1px solid #000;
	border-right: 1px solid transparent;
}

#contact-area input.submit-button {
	display: block;
	position: relative;
	font-size: 80%;
	font-weight: 300;
	text-transform: uppercase;
	width: 100px;
	left: 0;
	right: 0;
	margin: auto;
	background-color: transparent;
	border: 2px solid #333;
	border-radius: 40px;
	-moz-transition: all 0.1s ease-in-out;
	-webkit-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
	transition: all 0.1s ease-in-out;
}

#contact-area input.submit-button:hover {
	color: #fff;
	background-color: #333;
}

#contactResponse p {
	color: #000;
	float: right;
}

label {
	float: left;
	text-align: left;
	margin-right: 16px;
	width: 100px;
	padding-top: 5px;
	font-family: 'Lato', calibri, arial;
	font-size: 18px;
	font-weight: 300;
}

::-webkit-input-placeholder {
	color: #9a9a9a;
	font-size: 14px;
}

:-moz-placeholder {
	/* Firefox 18- */
	color: #000;
	font-size: 14px;
}

::-moz-placeholder {
	/* Firefox 19+ */
	color: #000;
	font-size: 14px;
}

:-ms-input-placeholder {
	color: #000;
	font-size: 14px;
}

.map {
	padding-top: 45px;
}


/* ----------------------------------------------- */


/* FOOTER*/


/* ----------------------------------------------- */


#footer {
	background-color: #9a9a9a;
	padding: 20px 0;
}

.attribution {
	position: relative;
	height: 20px;
	width: 400px;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;	
	text-align: center;
	font-size: 80%;
}

.animated {
	-webkit-animation-duration: 3s;
	animation-duration: 3s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}


/* ----------------------------------------------- */


/* ANIMATIONS */


/* ----------------------------------------------- */


@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

.fadeIn {
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
}
