/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}



@font-face {font-family: 'Gabriola'; src: url('../fonts/gabriola/gabriola.eot'); src: url('../fonts/gabriola/gabriola.eot?#iefix') format('embedded-opentype'), url('../fonts/gabriola/gabriola.svg#Gabriola') format('svg'), url('../fonts/gabriola/gabriola.woff') format('woff'), url('../fonts/gabriola/gabriola.ttf') format('truetype'); font-weight: normal; font-style: normal;}

*, html, body {
	font-family: 'PT Sans', Arial, sans-serif;
	font-size:14px;
	color: #5a5444;
}
body {
	background: #cdcbc0 url(../img/bg_mtns.jpg) no-repeat center top;
}

a {
	color:#ede8d8;
	text-decoration: none;
}
.content a:not(.btn) {
	color:#8f0365;
}

strong {
	font-weight:bold;
}



.btn {
	display:inline-block;
	margin-top:2px;
	border:0;
	border-radius:10px;
	font-size:12px;
	line-height:1;
	color:#ede8d8;
}
	.btn.primary {
		padding:9px 17px;
		font-size:16px;
		background:#900566;
	}
		.btn.primary:hover {
			background:#6c1e4d;
		}
	.btn.secondary {
		padding:7px 10px;
		background:#5a5444;
	}
		.btn.secondary:hover {
			background:#463c23;
		}
	.btn.tertiary {
		padding:8px 13px;
		background:#cdcbc0;
		color:#5a5444;
	text-transform: uppercase;
	}
		.btn.tertiary:hover {
			background:#ede8d8;
		}


.tabs > ul {
	overflow:hidden;
	background:#cdcbc0;
}
.tabs > ul li {
	display:inline;
	overflow:hidden;
}
.tabs > ul li a {
	display:block;
	float:left;
	text-align: center;
	line-height: 1;
	padding:20px 30px;
	font-size:14px;
	text-decoration:none;
	color:#453c33;
	border:0;
	cursor: pointer;
	background:#cdcbc0;
}

	.tabs > ul li a.active,
	.tabs > ul li a:hover {background:#e4e2d6;}
	.tabs > div {display:none; clear:both; overflow:hidden;}
	.tabs > div:first-of-type {display:block;}







#all {
	position:relative;
	width: 1024px;
	margin: 0 auto;
}

	nav {
		overflow: hidden;
	}
		nav h1 {
			float:left;
			margin:17px 45px 0 30px;
		}
			nav h1 a {
				display:inline-block;
				width:117px;
				height:84px;
				background: no-repeat url(../img/logo.png) top left;
				color:transparent;
			}

		nav ul {}
			nav li {
				float: left;
				list-style: none;
			}
			nav li a {
				display: block;
				margin-top:27px;
				padding: 16px;
				font-size: 14px;
				text-decoration: none;
				text-transform: uppercase;
				color: #5a5444;
			}
			nav li a.active,
			nav li a:hover {
				color: #900667;
			}
			nav li a.active {
				font-weight:bold;
			}


			nav #subnav {
				float:right;
				width: 330px;
				height:230px;
			}
				nav #subnav > a {
					display: block;
					height:45px;
					line-height:45px;
					width: 164px;
					float: left;
					text-align: center;
					text-transform: uppercase;
				}
				
				#lnk_viewSchedule {
					margin-right:1px;
					background:#8d5575;
				}
				#lnk_viewSchedule:hover {
					background:#6c1e4d;
				}
				#lnk_signIn {
					margin-left:1px;
					background:#725c62;
				}
				#lnk_signIn:hover {
					background:#492a37;
				}

				nav #subnav div {
					clear:both;
					float:left;
					width:100%;
					margin-top:2px;
					padding-left:40px;
					background:#b4b0ae url(../img/icon_info.png) no-repeat 10px 10px;
				}
					nav #subnav div a {
						display:inline-block;
						float:left;
						height:45px;
						line-height:45px;
						padding:0 25px;
						color:#fff;
					}

				#address {
					clear:both;
					position:relative;
					top:25px;
					font-size:22px;
					line-height:24px;
					color:#8f0365;
				}
					#address a {
						font-size:14px;
						text-align:center;
						color:#8f0365;
					}
					#lnk_email {
						position: relative;
						top:-5px;
					}
					#lnk_mapIt {
						display:block;
						width:50px;
						height:50px;
						position:absolute;
						right:30px;
						top:10px;
						background:#e3e1da url(/img/icon_mapPin.png) no-repeat center 5px;
						border-radius:6px;
						line-height:1;
					}
						#lnk_mapIt span {
							position: absolute;
							left: 0;
							bottom:5px;
							width: 100%;
							font-size:11px;
							text-transform: uppercase;
							font-weight:bold;
							color:#900667;
						}

	#body {
		clear:both;
		overflow:hidden;
	}
		#main {
			position:relative;
			float:left;
			width:694px;
			padding-bottom:260px;
			background:#e4e2d6;

			/* this is a hack to make our columns go to the bottom */
			padding-bottom:2260px;
			margin-bottom:-2000px;
		}
		.otherContentPage #main {
			width:100%;
		}
			
			.content {
				color:#453c33;
			}
			.content h2 {
				padding-bottom:5px;
				font-size:43px;
				font-family: 'Gabriola';
				border-bottom:1px dotted #cb9fb4;

			}
			.content h3 {
				padding:20px 0 5px;
				font-size:20px;
			}
			.content p,
			.content li {
				padding:5px 0 8px;
				font-size:12px;
				line-height:1.2;
			}
			.content li::before {
				content: "• ";
			}
			.content .rightCol {
				float:right;
				width:45%;
				margin-left:5%;
			}



			.content .contentHeader {
				overflow:hidden;
				margin-bottom:17px;
				border-bottom:1px dotted #cb9fb4;
			}
				.content .contentHeader img {
					float:left;
					max-width:110px;
					padding:0 25px 25px 0;
				}
				.content .contentHeader h2 {
					padding-top:20px;
					border:0;
				}
				.content .contentHeader h4 {
					padding-bottom:25px;
					font-size:11px;
				}



			.offers {
				padding:20px;
			}
				.offers > li:before {
					content:none;
				}
				.offers > li {
					padding:14px 20px 12px;
				}

				.offers .contentHeader {
					margin-bottom:8px;
					padding-bottom:4px;
				}
					.offers .contentHeader h2 {
						padding-top:0;
					}

					.offers li:not(.featured) h2 {
						font-family: 'PT Sans';
						font-size:20px;
					}

				.offers img {
					float:right;
					max-width:200px;
					margin:5px 0 16px 20px;
					border:1px solid #ada9a3;
				}


				.offers .featured {
					margin-bottom:15px;
					background:#cdcbc0;
				}
					.offers .featured .contentHeader {
						border-style: solid;
					}
						.offers .featured h2 {
							padding-bottom:0;
						}



			#classes {
				/* also, see .lotus section, below */

				padding:30px 45px;
			}
			#teachers {
				padding:30px 45px;
			}
				#teachers a {
					display:block;
					float:left;
					position:relative;
					overflow:hidden;
					width:160px;
					height:185px;
					padding:0 20px;
					text-align:center;
					color:#900566;
				}
					#teachers a img {
						display:block;
						width:110px;
						height:110px;
						margin:0 auto 5px;
						padding-bottom:5px;
						border-bottom:1px dotted #cb9fb4;
					}
					#teachers a ul,
					#teachers a .overlay {
						position:absolute;
						top:0;
						left:45px;
						width:110px;
						height:110px;
						overflow:hidden;
						margin:0 auto;
						opacity:0;
					}
					#teachers a:hover .overlay {
						background:#666;
						opacity:.7;
					}
					#teachers a:hover ul {
						opacity:1;
					}
						#teachers a li {
							padding-top:3px;
							line-height:15px;
							font-weight:normal;
							color:#ede8d8;
						}

					.list_detail {
						display:none;
					}


			#getStarted {
				padding:25px 35px;
			}
			#prices {
				padding:25px 35px;
			}
			#guruji {
				padding:25px 35px;
			}


			.otherContentTmpl {
				padding:20px;
			}
				.otherContentTmpl .contentHeader h2 {
					font-size: 43px;
					font-family: 'Gabriola';
					padding-top:0;
				}
				.otherContentTmpl .contentHeader h3 {
					font-family: 'PT Sans';
					font-size:20px;
				}
					.otherContentTmpl li::before {
						content: "";
					}
						.otherContentTmpl img {
							float: right;
							max-width: 200px;
							margin: 5px 0 16px 20px;
							border: 1px solid #ada9a3;
						}


		.sidebar {
			position:relative;
			float:right;
			width: 290px;
			padding:0 20px 10px;
			margin-top:39px;
			background: #6c1e4d;

			/* this is a hack to make our columns go to the bottom */
			padding-bottom:2000px;
			margin-bottom:-1960px;
		}
			.sidebar > img {
				position:absolute;
				top:-39px;
				left:0;
				width:100%;
			}
			.sidebar > h3 {
				padding-bottom:10px;
				font-size:18px;
				text-align: center;
				color:#e4e2d6;
			}

			/* for "special offers" */
			.sidebar li {
				padding:10px 0;
				border-top:1px dotted #864472;
			}
			.sidebar li:first-child {
				border-top:0;
			}
				.sidebar a:not(.btn) {
					overflow: hidden;
					display:block;
					padding:16px 20px;
					font-size:12px;
					line-height: 1.2;
					color:#cdcbc0;
				}
				.sidebar a.active,
				.sidebar a:hover {
					background:#864472;
				}
					.sidebar a img {
						float:right;
						max-width:110px;
						margin-left:24px;
						border:1px solid #ada9a3;
					}
					.sidebar a h4 {
						padding-bottom:10px;
						font-size:14px;
						font-weight:bold;
						color:#cdcbc0;
					}

			/* for "schedule" */
			.sidebar.schedule li {
				margin-bottom:20px;
				padding:20px 0 0;
				border-top:1px dotted #864472;

				color:#ede8d8;
			}
				.sidebar.schedule li span {
					display:block;
					float:right;
					width:125px;
					font-size:12px;
					color:#ede8d8;
				}
					.sidebar.schedule li ul {
						padding-top:18px;
					}
						.sidebar.schedule li li {
							padding:3px 0;
							margin:0;
							border-top:0;
						}

			.sidebar.schedule li:first-child {
				border-top:0;
			}

			.sidebar.schedule .btn {
				display: inline-block;
			}



	footer {
		height:170px;
		width:604px;
		padding:35px 45px;
		background:#ada9a3;
		position:absolute;
		bottom:0;
	}
	.otherContentPage footer {
		width:934px;
	}
		footer .icon {
			display:inline-block;
			width:31px;
			height:31px;
			text-indent:-9999px;
			background:url(../img/sprite_icons.png) no-repeat left center;
		}
			footer .icon:hover {
				opacity:.7;
			}

		footer form {
			margin-bottom:25px;
		}
			footer label {
				padding-right:65px;
				color:#ebe6d7;
			}
				footer label .icon {
					margin-right:6px;
					margin-bottom:-10px;
					background-position: -151px center;
				}
			footer input {
				width:235px;
				height:27px;
				padding-left:5px;
				border:2px solid #cdcbc0;
			}

		footer > div {
			float:left;
			width:190px;
			font-size:11px;
			line-height:1.64;
		}
			footer h4 {
				color:#fff;
			}

		#socialMedia {
			clear:both;
			padding-top:25px;
		}
			#socialMedia a {
				float:left;
				display:block;
				margin-right:25px;
			}
			footer .twitter {
				background-position: -54px center;
			}
			footer .youtube {
				background-position: -105px center;
			}
			footer .instagram {
				background-position: -200px center;
			}






		/* home overrides */
		#home #all.option1 {
			background:url(../img/bg_home_option1.png) no-repeat 27px 77px;
		}
		#home #all.option2 {
			background:url(../img/bg_home_option2.png) no-repeat 70px 77px;
		}
		#home #all.option3 {
			background:url(../img/bg_home_option3.png) no-repeat 55px 114px;
		}
			#home #main {
				margin-top:250px;

				-webkit-box-shadow: 0 20px 12px 0 #999999;
				box-shadow: 0 20px 12px 0 #999999;

				background: -moz-linear-gradient(top,  rgba(0,0,0,0) 0%, rgba(93,90,75,0.6) 100%); /* FF3.6+ */
				background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,0,0,0)), color-stop(100%,rgba(93,90,75,0.6))); /* Chrome,Safari4+ */
				background: -webkit-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(93,90,75,0.6) 100%); /* Chrome10+,Safari5.1+ */
				background: -o-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(93,90,75,0.6) 100%); /* Opera 11.10+ */
				background: -ms-linear-gradient(top,  rgba(0,0,0,0) 0%,rgba(93,90,75,0.6) 100%); /* IE10+ */
				background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(93,90,75,0.6) 100%); /* W3C */
				filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#995d5a4b',GradientType=0 ); /* IE6-9 */
			}

				#home #main ul {
					overflow:hidden;
					padding-bottom:160px;
				}
					#home #main li {
						display:block;
						float:left;
						width:200px;
						margin:0 15px;
					}
						#home #main img {
							width:200px;
							height:120px;
							border:1px solid #cdcbc0;
						}
						#home #main h3 {
							padding:20px 15px;
							font-size:18px;
						}
						#home #main p {
							height:110px;
							overflow:hidden;
							margin-bottom:15px;
							padding:0 15px;
							font-size:12px;
							line-height:1.33;
						}
						#home #main .btn {
							margin-left:15px;
						}

			#home footer {
				background:none;
			}








/* this whole section is how that crazy lotus flower does its thing */
	.lotus {
		position: relative;
		height: 103px;
		width: 134px;
		float:left;
		margin:30px 33px;
		padding-bottom:10px;
		border-bottom:1px dotted #cb9fb4;
	}

	.lotus a {
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:84px;
		text-align: center;
		padding-top:44px;
		text-decoration: none;
		font-size:20px;
		font-weight:normal;
		line-height: 18px;

		-webkit-transition: 1s ease-in-out;
		-moz-transition: 1s ease-in-out;
		-o-transition: 1s ease-in-out;
		transition: 1s ease-in-out;
		color:#900566;
	}
	.lotus a:hover {
		color:#e4e2d6;
	}

	.lotus a span {
		display: block;
		width:100%;
		position:absolute;
		top:73px;
		font-size:12px;
		line-height:14px;
		color:#5a5444;

		-webkit-transition: .7s ease-in-out;
		-moz-transition: .7s ease-in-out;
		-o-transition: .7s ease-in-out;
		transition: .7s ease-in-out;
		opacity:1;
	}
	.lotus a:hover span {
		opacity:0;
	}

	.petal {
		width:53px;
		height:103px;
		margin:0;
		padding:0;
		position: absolute;
		left:40px; /* half of the .lotus container width minus half .petal width */
		background:url(../img/petal.png) no-repeat top left;

		-webkit-transition: 1s ease-in-out;
		-moz-transition: 1s ease-in-out;
		-o-transition: 1s ease-in-out;
		transition: 1s ease-in-out;

		transform-origin:center bottom;

		transform-origin:center bottom;
		-ms-transform-origin:center bottom;
		-webkit-transform-origin:center bottom;

		opacity:0.05;
		color:#900566;
	}
		.lotus:hover .petal {
			opacity:0.6;
			color:#e4e2d6;
		}

	.petal1 {
		opacity:0;

		-webkit-transform: rotate(-15deg);
		-moz-transform: rotate(-15deg);
		-o-transform: rotate(-15deg);
		-ms-transform: rotate(-15deg);
		transform: rotate(-15deg);
	}
		.lotus:hover .petal1 {
			-webkit-transform: rotate(-40deg);
			-moz-transform: rotate(-40deg);
			-o-transform: rotate(-40deg);
			-ms-transform: rotate(-40deg);
			transform: rotate(-40deg);
		}
	.petal2 {
		-webkit-transform: rotate(-15deg);
		-moz-transform: rotate(-15deg);
		-o-transform: rotate(-15deg);
		-ms-transform: rotate(-15deg);
		transform: rotate(-15deg);
	}
		.lotus:hover .petal2 {
			-webkit-transform: rotate(-20deg);
			-moz-transform: rotate(-20deg);
			-o-transform: rotate(-20deg);
			-ms-transform: rotate(-20deg);
			transform: rotate(-20deg);
		}
	.petal4 {
		-webkit-transform: rotate(15deg);
		-moz-transform: rotate(15deg);
		-o-transform: rotate(15deg);
		-ms-transform: rotate(15deg);
		transform: rotate(15deg);
	}
		.lotus:hover .petal4 {
			-webkit-transform: rotate(20deg);
			-moz-transform: rotate(20deg);
			-o-transform: rotate(20deg);
			-ms-transform: rotate(20deg);
			transform: rotate(20deg);
		}
	.petal5 {
		opacity:0;

		-webkit-transform: rotate(15deg);
		-moz-transform: rotate(15deg);
		-o-transform: rotate(15deg);
		-ms-transform: rotate(15deg);
		transform: rotate(15deg);
	}
		.lotus:hover .petal5 {
			-webkit-transform: rotate(40deg);
			-moz-transform: rotate(40deg);
			-o-transform: rotate(40deg);
			-ms-transform: rotate(40deg);
			transform: rotate(40deg);
		}



