 /*****************************************************************************************************************************/
/************************************************************ RESETS *********************************************************/
/*****************************************************************************************************************************/

html, body, div, span, object, iframe, 
h1, h2, h3, h4, h5, h6, p, blockquote, pre, 
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, 
small, strike, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, 
fieldset, form, label, legend, 
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figure, 
figcaption, footer, header, hgroup, menu, nav, output, section, summary, 
time, mark, audio, video,
button, input, select, textarea
{margin:0;padding:0;border:0;font:inherit;vertical-align: baseline;}

html {font-size: 100%;overflow-y: scroll;/* for mobile > */-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;-webkit-font-smoothing: antialiased;}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block;}

/* remove borders from active links and linked images */
:focus {outline:none;}
a:active {ie-dummy: expression(this.hideFocus=true);}
a img {border:none;}

/* background for selected text*/
::selection {background: #c00;color: #fff;text-shadow: none;}
::-moz-selection {background: #c00;color: #fff;text-shadow: none;}
::-webkit-selection {background: #c00;color: #fff;text-shadow: none;} 

/* all inputs */
input[type="text"],	input[type="password"], input[type="email"], textarea,	select {display: block;background: #fff;outline: none;vertical-align:baseline;
		-moz-box-shadow: 0 0 0 rgba(0,0,0,.2);-webkit-box-shadow: 0 0 0 rgba(0,0,0,.2);box-shadow:  0 0 0 rgba(0,0,0,.2);
		-webkit-appearance: none;}			

/* all :focus inputs */
input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, textarea:focus {
		-moz-box-shadow: 0 0 3px rgba(0,0,0,.3);-webkit-box-shadow: 0 0 3px rgba(0,0,0,.3);box-shadow:  0 0 3px rgba(0,0,0,.3);}

/* all texarea inputs */
textarea { overflow: auto; vertical-align: top; resize: vertical; }

/* remove bullets from lists */
ul, ol {list-style:none;}

/* sup for registered trademarks, copyright symbols */
sup {font-size:0.7em;vertical-align:top;}

blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: '';content:none;}

/* tables still need cellspacing to match in the markup */
table {border-collapse:separate;border-spacing:0;}
th, td {text-align:left;font-weight:normal;vertical-align:top;}

input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom;}
textarea {overflow: auto;}
button {overflow:visible;}
.note {color:#666;font-size:.9em;}


/*****************************************************************************************************************************/
/***************************************************** GLOBAL PREDICTABLES ***************************************************/
/*****************************************************************************************************************************/

/* body background and base font */
body {font: 12px/21px Verdana, Arial, Geneva, sans-serif;color:#000;letter-spacing:.025em;background: #ececec;} 

/* special fonts */
h1, .tagline, p.condensed, .featuredLink, .menu a, a.featuredLink, .mobileNav a {font: 17px/23px 'Open Sans Condensed', Arial Narrow, sans-serif;}

/* dropshadows */
a.featuredLink, .classesBlock, .specialBlock, .philosophyCallout {box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.07);-moz-box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.07);-webkit-box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.07);}

/* default header styles */
h1 {margin-bottom:14px;font-size:2.4em;line-height:1.2em;}
h2 {font-weight:bold;margin-bottom:3px;font-size:1.05em;}
h3 {font-family: 'Open Sans', sans-serif;font-weight:300;font-size:1.2em;/*font-style:oblique;*/}

/* default link styles */
a, a:visited, a:focus {color:#c00;text-decoration:none;-moz-transition: color .15s ease-in;-webkit-transition: color .15s ease-in;-o-transition: color .15s ease-in;}
a:hover {color:#666;text-decoration:none;}

/* images */
img.imgRight {float:right;}
img.imgLeft {float:left;}

/* default text styles (extended) */
em {font-style: oblique;}
strong {font-weight: bold;}
.note {font-size: 11px;}

p, ul {margin-bottom:18px;font-size:1.06em;}
.changingContent ul li {list-style:inside disc;margin-left:0;width:90%;}
p.emphasis {font-family: 'Open Sans', sans-serif;font-weight:300;font-size:1.75em;line-height:1.5em;color:#333;}


/*****************************************************************************************************************************/
/***************************************************** PRIMARY STRUCTURES ***************************************************/
/*****************************************************************************************************************************/

/* WRAPPERS */
.wrapper{width:1000px;margin:0 auto;}
.row {float:left;width:100%;}

	/* INNER WRAPPERS */
	.header, .footer, .changingContent {float:left;width:1000px;display:block;}	
	.header {height:220px;}
	.changingContent {margin-bottom:50px;}
	.footer {height:100px;padding:50px 0 50px;text-align:right;}
		.addressRow {display:block;}
	
		/* LOGO */
		.logo {float:left;display:block;width:202px;margin:25px 0;}
		.tagline {float:left;margin:70px 0 0 20px;font-size:3.4em;line-height:1em;}
				
		/* MAIN NAV */
		.menu {float:left;position:relative;width:auto;height:33px;margin:10px 0 0 10px;}
			.menu li {float:left;height:33px;margin:0 10px;z-index:1;}
			.menu li.highlight {max-width:96px;position: absolute;top:10px!important;left:0;z-index:0;background: url(../images/bg_menuHighlight.png) 0 bottom repeat-x;}	
				.menu a {display:block;font-size:1.65em;margin:0 5px;padding:5px 2px;color:#000;text-align:center;position:relative;z-index:100;}
				.menu a:hover {color:#c00;}
				
		.mobileNav {display:none;}

.imgWrapper {float:left;padding:20px;background:#fff;}
.imgWrapper img {float:left;}		
		
/*****************************************************************************************************************************/
/***************************************************** PER PAGE STRUCTURES ***************************************************/
/*****************************************************************************************************************************/	

/*  STRUCTURES **********************************************************************************************************************/
.leftCol, .rightCol {float:left;width:595px;margin:0 0 0 75px;}	
.rightCol {float:right;width:180px;margin:0 75px;}
			
/*  HOME **********************************************************************************************************************/
.mainImages {float:left;width:100%;margin-bottom:40px;}
	.mainImages .imgWrapper {float:right;}
	.mainImages .imgWrapper:first-child {float:left;}

a.featuredLink {display:block;width:143px;background:#000;margin:30px 0 10px;padding:20px 25px;font-size:1.7em;color:#fff;text-align:center;text-transform:uppercase;border:1px solid #fff;
				-webkit-transition:background-color .09s ease-in;-moz-transition:background-color .09s ease-in;-o-transition:color .09s ease-in;transition:background-color .09s ease-in;}
a.featuredLink:hover {background-color:#fff;color:#c00;border-color:#ccc;}

.homeShowMobile {display:none;}

/*  CLASSES **********************************************************************************************************************/
.classes .leftCol, 
.classes .rightCol {float:left;width:414px;margin:10px 20px 0 75px;}
.classes .rightCol {float:left;width:414px;margin:10px 0 0 0;background:#e5e5e5;}

	/* left col styles */
	.specialBlockWrapper {float:left;width:394px;text-align:center;margin:10px 0;background:#e5e5e5;}
		.specialBlock {float:left;text-align:center;width:178px;height:78px;margin:10px 0 10px 11px;padding:20px 0 4px;border:1px solid #fff;background: #efefef url(../images/bg_classesBlock.png) 0 0 repeat;font: 13px/16px 'Open Sans', Arial Narrow, sans-serif;}		
			.specialBlock h3, .philosophyCallout h3, .certificationCallout h3 {margin-bottom:5px;font: 13px/14px 'Open Sans', Arial Narrow, sans-serif;color:#c00;text-transform:uppercase;} 		
			.specialBlock span {display:block;font-size:1.4em;margin-top:10px;}
			.specialBlock p {font-size:13px;width:86%;margin:0 auto;}
			
		.twoCol {width:367px;margin-top:0;}	

	/* right col styles */
	h3 span {font-size:1.3em;font-weight:300;font-style:normal;}
	.classesBlockWrapper {float:left;margin:30px 20px 0;text-align:center;}
		.classesBlockWrapper h3 {text-align:center;}
		.classesBlockWrapper h3 span.time {font-size:14px;} 
		.classesBlock {float:left;text-align:center;width:371px;margin:10px auto 20px;padding:20px 0 20px;border:1px solid #fff;background: url(../images/bg_classesBlock.png) 0 0 repeat;}	
		.classesBlock p {margin-bottom:5px;}
		.classesBlock p.note {padding: 0 30px 10px;}
		
		.classEntry {float:left;width:371px;clear:left;}
			.classEntry span {float:right;width:44%;text-align:left;}
			.classEntry span:first-child {float:left;width:48%;text-align:right;}
		
/*  INSTRUCTORS **********************************************************************************************************************/
.instructors .leftCol, .instructors .rightCol, .instructors .centerCol {float:left;width:450px;height:642px;margin:0 25px 20px;position:relative;}		
.instructors .centerCol {margin: 0 26px;}

	.instructors .leftCol p, .instructors .rightCol p, .instructors .centerCol p {padding:0 20px;}
	.instructors .leftCol h2, .instructors .rightCol h2, .instructors .centerCol h2  {padding:0 20px 0;}
	.instructorsBig {width:810px;margin:10px 75px 50px 75px;}
	.instructorsSmall {width:110px;height:110px;margin:0 15px 20px -10px;padding:10px;}
	
	.instructors a.emailLink {position:absolute;left:20px;bottom:20px;}	
	.instructors a.emailLink2 {left:20px;bottom:20px;}	

	 a.emailLink2 {background:#000;color:#fff;padding:2px 10px 4px;border:1px solid #fff;
				-webkit-transition:background-color .09s ease-in;-moz-transition:background-color .09s ease-in;-o-transition:background-color .09s ease-in;transition:background-color .09s ease-in;}
	 a.emailLink2:hover {background-color:#fff;color:#c00;border-color:#ccc;}


	 a.emailLink {background:#000;color:#fff;padding:2px 10px 4px;border:1px solid #fff;
				-webkit-transition:background-color .09s ease-in;-moz-transition:background-color .09s ease-in;-o-transition:background-color .09s ease-in;transition:background-color .09s ease-in;}
	a.emailLink:hover {background-color:#fff;color:#c00;border-color:#ccc;}
			
/*  PHILOSOPHY **********************************************************************************************************************/
.philosophy .leftCol {width:374px;margin:0;}
.philosophy .rightCol {width:592px;margin:0;}

.philosophy .imgWrapper {margin-top:20px;}
.philosophy .imgWrapper:first-child {margin-top:0;}
.philosophy .philosophyBottomLeft {float:left;}
.philosophy .philosophyBottomRight {float:right;}

.philosophyBottomLeft img, .philosophyBottomRight img {width:245px;}

.philosophyCallout {float:left;width:600px;margin:0 0 40px 0;padding:20px 20px 10px;background: url(../images/bg_classesBlock.png) 0 0 repeat;color:#333;}
.philosophyCallout {width:334px;}
		.philosophyCallout h3 {text-align:center;margin-bottom:15px;}
		.philosophyCallout ul {float:left;width:300px;}
		
/*  CERTIFICATION **********************************************************************************************************************/	

.certification .rightCol {width:434px;margin:12px 0 0 20px;}	
.certification .leftCol {width:492px;margin-left:0;} 
.certification .leftCol .imgWrapper, .certification .leftCol img {width:492px;}
.certificationCallout {float:left;width:260px;margin:0 0 40px 0;padding:20px 20px 10px;background: url(../images/bg_classesBlock.png) 0 0 repeat;color:#333;}

/*  GALLERY **********************************************************************************************************************/

.galleryWrapper {width:1000px;}
.gallery .imgWrapper {float:left;margin:0 0 22px 0;}
.gallery .featuredLink {float:left;margin:18px 0 34px 65px;}

.leftBlockSingle, .leftBlockDouble, .rightBlockSingle, .rightBlockDouble, .centerBlock {float:left;}	
	.leftBlockSingle {width:340px;}
	.rightBlockSingle {float:right;width:320px;}
	.rightBlockDouble {width:622px;}
	.centerBlock {float:left;width:340px;}

		.leftBlockSingle img, .rightBlockSingle img, .gallery .centerCol img {width:278px;}

		.leftBlockSingle .featuredLink {margin-top: 38px;}

		.rightBlockSingle .imgWrapper {float:right;}
		.rightBlockSingle .featuredLink {margin-left: 66px;}

		
/*  CONTACT **********************************************************************************************************************/
.contact .leftCol {margin:0 20px 0 0;width:760px;}	
	.contact .leftCol img {width:710px;}
.contact .rightCol {float:left;margin: 0;width:200px;}
.imgWrapper.mapWrapper {display:block; width:100%; box-sizing: border-box;}
.imgWrapper.mapWrapper .mapWrapperInner{position:relative; padding-bottom: 56.25%; box-sizing: border-box;}
.imgWrapper.mapWrapper .mapWrapperInner iframe{position:absolute; top:0; left:0; height:100%; width:100%; box-sizing: border-box;}
/*****************************************************************************************************************************/
/***************************************************** IE ***************************************************/
/*****************************************************************************************************************************/			
/*html.ie6 .outerWrapper, html.ie7 .outerWrapper, html.ie8 .outerWrapper {background-image:none;}	*/
html.ie7 p.emphasis, html.ie8 p.emphasis {font-size:20px;}
html.ie9 .outerWrapper {min-width:1000px;}

html.ie7 .header {position:relative;}
html.ie7 .menu {width:658px;position:absolute;left:220px;top:122px;}
html.ie7 .centerBlock {margin:20px 0;}


/*****************************************************************************************************************************/
/***************************************************** MEDIA QUERIES ***************************************************/
/*****************************************************************************************************************************/
	
/* wide screens *********************************/
@media only screen 
		and (min-width: 768px) 
		and (max-width: 3000px)  {
			.imgWrapper {box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.07);-moz-box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.07);-webkit-box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.07);}
		}
	
	
/* mobile portrait down to iphone portrait *********************************/
@media only screen 
		and (min-width: 320px) 
		and (max-width: 768px)  {
			
			.wrapper {overflow-x:hidden;}
		
			.wrapper, .header, .footer, .changingContent,
			.menu, .menu li, 
			.leftCol, .classes .leftCol, .instructors .leftCol, .certification .leftCol, .philosophy .leftCol,
			.centerCol, .classes .centerCol, .instructors .centerCol, .certification .centerCol,
			.rightCol, .classes .rightCol, .instructors .rightCol, .certification .rightCol, .philosophy .rightCol
			{float:left;width:100%;height:auto;clear:left;margin: 0;padding:0;background:transparent;}	
				
			.header {height:auto;}
			.footer {height:140px;padding:0;text-align:center;}
				.addressRow {display:inline;}
				.footer span {display:block;}
				
			/* IMAGES */	
			.mainImages {margin-bottom:20px;}
			.changingContent .imgWrapper {float:left;width:100%;padding:0;background:transparent;box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.07);}
				img {float:left;width:100%;}	
			
			/* LOGO */
			.logo {width:101px;margin:15px 0 15px 50px;}
				.logo img {width:101px;}
			.tagline {float:left;width:130px;margin:40px 0 30px 10px;font-size:2em;text-align:left;}
			
			/* MENU */
			.menu {display:none!important;}
			
			.mobileNav {float:left;display:block!important;width:100%;margin:10px 0 20px;}
				.mobileNav li {float:left;display:block;width:100%;background-image:none;background:#fff;margin:0 0 1px 0;}
				.mobileNav li:first-child {border-top:0;}
					.mobileNav a {float:left;display:block;width:100%;font-size:1.35em;margin:0;padding:5px 2px;color:#000;text-align:center;text-transform:uppercase;}
					.mobileNav a:hover {color:#c00;}
			.mobileNav li.active {background-color:#c00;color:#fff;} 
				.mobileNav li.active a {color:#fff;}
			.mobileNav li.highlight {display:none;}							
			
			/* COPY STYLES */
			a.featuredLink {margin: 0 auto 10px;}
			
			p.emphasis, p, h1, h2, h3, .philosophyCallout ul, .changingContent ul {float:none;width:90%!important;margin-left:auto;margin-right:auto;}
			.changingContent li {width:90%;margin:0 10px;}
			p.emphasis {font-size:1.5em;}				
			
			.instructors h2 {height:auto;}
			.instructorsBig, .certification .imgWrapper {margin: 0 0 20px 0;}			
			.instructors .instructorsSmall {width:80px;height:80px;margin: 0 10px 10px 0;}				
				.instructors .instructorsSmall img {width:80px;height:80px;}			
			
			/* HOME */				
			.default .homeHideMobile {display:none!important;}
			.default .homeShowMobile {margin:0 15px 10px 0;}
			.default .homeShowMobile, .default .homeShowMobile img {display:block;width:130px;}						
			
			/* CLASSES & SPECIALS */
			.classes .classesBlockWrapper, .classes .specialBlockWrapper {float:none;width:80%;margin:0 auto 20px;background:transparent;height:auto;}
			.classesBlockWrapper {padding-top:20px;}
			.classesBlockWrapper h3 {margin-bottom:5px;}
				.classesBlock, .specialBlock {display:block;width:100%;height:auto;margin:0 0 10px;padding:10px 0;background-image:none;background:#e8e8e8;}
				
					.classes .classEntry {width:100%;}
						.classEntry span {width:46%;}
						.classEntry span:first-child {width:51%;} 
			
			.classes p.note {width:100%;padding:0;}		
			
			span.time {display:block;font-size:14px;}
			
			/* INSTRUCTORS */	
			.instructors .leftCol p, .instructors .centerCol p, .instructors .rightCol p, 
			.instructors .leftCol h2, .instructors .centerCol h2, .instructors .rightCol h2 {padding:0 10px;}
			.instructors a.emailLink {float:left;position:relative;margin:20px 0 30px;padding:0 10px;left:0;}
			
			/* PHILOSOPHY &  CERTIFICATION */	
			.philosophy .philosophyCallout, .certification .certificationCallout {float:none;clear:left;width:80%;height:auto;margin:0 auto 20px;padding:20px 0;background-image:none;background:#e8e8e8;}
				.philosophyCallout h3, .certificationCallout h3 {text-align:center;}
				.philosophyCallout ul, .certificationCallout ul {margin-top:0;margin-bottom:0;}
				.philosophyCallout li, .certificationCallout li, .certificationCallout p {width:70%;}
										
			.philosophy .imgWrapper, .classes .imgWrapper {margin:0 0 20px 0;}
				
			.philosophy .philosophyBottom {float:left;width:110px;margin: 0 10px 10px 0;}	
				.philosophy .philosophyBottom img {width:110px;}
				.philosophy .philosophyBottomLeft, .philosophy .philosophyBottomRight {display:block;clear:right;width:100%;margin:0 auto;}
					.philosophyBottomLeft img, .philosophyBottomRight img {float:none;display:block;max-width:245px;width:100%;margin:0 auto 20px;}
					
			.certification .leftCol .imgWrapper, .certification .leftCol img {width: 100%;}		
			.gallery .imgWrapper img {float:none;margin:0 auto;}
				
			
			/* GALLERY */	
			.galleryWrapper {width:100%;}
				.leftBlockSingle, .rightBlockSingle, .centerBlock {float:none;display:block;width:320px;margin:0 auto;}
				.leftBlockDouble, .rightBlockDouble {width:100%;}			
					.gallery .featuredLink {float:left;display:inline;margin:5px 60px 20px 60px;}
					
				.leftBlockSingle img, .rightBlockSingle img, .gallery .centerCol img {width:100%;}	
			
			/* CONTACT */		
			.contact .leftCol, .contact .rightCol {width:100%;margin:0;}
				.contact .rightCol .floatLeft  {float:left;width:210px;margin:0 0 0 10px;}
				.contact .rightCol .imgWrapper {float:right;margin:0 10px 0 0;padding:0;width:auto;}
					.contact .rightCol img {width:100px;}		
					
			.contact .leftCol img {width:100%;margin-bottom:20px;}		
			
		}
		
/* mobile landscape, android considerations *********************************/
@media only screen 
		and (min-width: 320px) 
		and (max-width: 479px)  {	
			.contact .rightCol .imgWrapper {width:80px;float:right;}	
			.contact .leftCol .imgWrapper img {width:600px;overflow:hidden;margin-left:-25%;}
		}	
		
/* mobile landscape, android considerations *********************************/
@media only screen 
		and (min-width: 480px) 
		and (max-width: 767px)  {	
			/* LOGO	 */	
			.logo {margin-left:70px;}
			.tagline {width:230px;}	
			.contact .rightCol .imgWrapper {width:200px;float:right;}
			.contact .rightCol .imgWrapper img {width:200px;}		
			
			.leftBlockSingle, .rightBlockSingle, .centerBlock {float:none;display:block;width:320px;margin:0 auto;}
			.leftBlockDouble, .rightBlockDouble {width:100%;}			
			.gallery .featuredLink {float:left;margin:5px 60px 20px 60px;}
		}		
		
@media only screen 
		and (min-width: 480px) 
		and (max-width: 481px)  {.classes .wrapper {width:480px;} .certification .leftCol {width:480px;}}	
		
		
/* tablet portrait *********************************/		
@media only screen 
		and (min-width: 767px) 
		and (max-width: 768px)  {	
		
			.logo, .logo img {width:140px;}
			.tagline {width:450px;margin-top:56px;font-size:3.4em;}
			.default .homeShowMobile {margin:0 15px 200px 0;}
			.default .rightCol {float:none;width:420px;margin:0 auto;}
			.default a.featuredLink {float:left;margin: 0 5px;}
			.classes .imgWrapper {width:50%;}
			.classes .leftCol .imgWrapper {float:none;margin:0 auto;}
			.philosophy .imgWrapper {max-width:550px;float:none;margin:0 auto;clear:left;}
			.philosophy .philosophyBottomLeft {padding-top:20px;}
		}		
