@import url(/css/reset.css);


html { margin-bottom: 1px; }
body { font-family: 'PT Sans', Verdana, sans-serif; color: #313330; -webkit-text-size-adjust: none; text-rendering: optimizeLegibility; }

header, footer, nav, article, section, aside { display: block; }

#editor { padding: 1em; }

img { max-width: 100%; }


.container { width: 90%; position: relative; margin: 0 auto; }
.column { float: left; width: 18.95833333%/* 182px */; margin-right: 1.041666667%/* 10px */; }
	.column.two { width: 38.95833333%/* 374px */; }
	.column.three { width: 58.95833333%/* 566px */; }
	.column.four { width: 78.95833333%/* 758px */; margin-right: 0; }

.shadow { background: url(/images/shadow.png) repeat-x; height: 1.2em; width: 100%; position: absolute; }

a { color: #313330; }

header { background: #224141; height: 12.8em; }
	header .container { height: 12.8em; }
	#logo { position: absolute; top: 0; left: -2.8em; }
	#site_search { position: absolute; top: 2em; right: 0.5em; }
		#site_search fieldset { border: 0; }
		#site_search legend, #site_search label { display: none; }
		#site_search p { float: left; }
			#site_search input { font: 1.1em Tahoma, Geneva, Verdana, sans-serif; padding: 0.1em 0.2em 0.3em 2em; text-transform: lowercase; font-variant: small-caps; letter-spacing: 0.125em; background: #365152 url(/images/search-bg.gif) 2px 50% no-repeat; border: none; color: #fff; vertical-align: middle; }
			#site_search input[type=submit] { background: #224141; padding: 0 0 0.4em 0.5em; }
	
	nav[role=navigation] { font-size: 1.2em; text-transform: uppercase; position: absolute; right: 1em; bottom: 0.9em; }
		nav[role=navigation] ul { text-align: right; }
			nav[role=navigation] li { display: inline; margin-left: 2em; }
				nav[role=navigation] a { color: #a8b988; text-decoration: none; }
				nav[role=navigation] a:hover, nav[role=navigation] a.selected { color: #ccd2d1; }

#title { height: 6.2em; background: #30332e url(/images/title-bg.gif); color: #e3e3e2; }
	#title h2 { font-weight: 400; margin: 0; padding: 2.6em 0 0 20%/* 192px */; }

#submenu { margin-top: -9.2em; padding: 2.2em 0 1em; background: #1c1e1b; opacity: 0.96; z-index: 10; }
	#submenu ul { font-size: 1.1em; }
		#submenu li { line-height: 1.4em; margin-bottom: 0.8em; padding: 0 1em; }
			#submenu a { color: #a8b988; text-decoration: none; }
			#submenu a:hover, #submenu a.selected { color: #e1e1e1; }
			#submenu a.selected { font-weight: 700; }

#content { margin-top: 1.8em; }
	#content .banner { width: 78.95833333%/* 758px */; }
	
	.content .content { font-size: 100%; }
	.address .adr { font-weight: 700; }
	.content h3, .content h4 { font-weight: 400; }
	.content h4 { font-size: 1.2em; line-height: 1.15em; font-weight: 400; }
	.content ul { list-style-type: square; color: #375352; }
	.content ol { color: #375352; }
		.content ul ul { color: #666; }
		
	.content hr { color: #ccc; background: #ccc; }
	.content .practitioners a { background: transparent; }
	.content .person strong { word-spacing: 0.1em; }
	
	.content ul.large_list, .content ul.large_list ul { overflow: hidden; margin-left: 0; list-style-type: none; }
		.content ul.large_list li { float: left; width: 33.333%; }
		.content ul.large_list > li { margin-bottom: 1.618em; font-weight: 700; }
		/* .content ul.large_list > li:nth-child(4n) { clear: left; }*/
			.content ul.large_list li li { float: none; width: auto; font-weight: 400; }
	.content ul.large_list + p { margin-top: -1.618em; }

	.content a { color: #475d7c; }
	.content a:hover { color: #000; }
	
	.content strong, .content h4 { word-spacing: 0.25em; }
	
	.content blockquote.large { font-size: 1.4em; font-style: italic; background: #f7f7f7; padding: 1em; margin-bottom: 1em; border-top: 2px dotted #eeefef; }
		.content blockquote.large p { text-align: center; margin-bottom: 0; }
	
	.content table { width: 61.8%; margin-bottom: 1.618em; border-collapse: collapse; }
		.content table thead th { text-transform: uppercase; background: #eee; padding: 0.5em 1em; }
		.content table tbody th { width: 38.2%; text-align: right; font-weight: 400; background: #f7f7f7; padding: 0.5em; }
		.content table tbody th.rowspan { vertical-align: top; border-bottom: 1px solid #ccc; width: 25%; }
		.content table tbody td { border: 1px solid #f7f7f7; padding: 0.5em 1em; }
		
	.content table.calendar { table-layout: fixed; width: 61.8%; }
		.content table.calendar th, .content table.calendar td { width: 16.666%; }
	
	.content a.block { text-decoration: none; background: none; display: block; cursor: pointer; overflow: hidden; }
	
	.content .highlight { background: #f7f7f7 url(/images/pdf-icon.png) 14px 1em no-repeat; padding: 1.518em 1.618em 1.618em 70px; border-top: 1px solid #eee; }
		.content .highlight h3, .content .highlight p { margin: 0; }
			.content .highlight h3 span { color: #ccc; font-size: 0.8em; -webkit-transition-property: color; -webkit-transition-duration: 0.5s; }
	.content .highlight:hover { background-color: #f2f2f2; }
		.content .highlight:hover h3 span { color: #aaa; }
	
	#content .fluid { float: none; width: auto !important; }
	#content .two.fluid { margin-left: 60%/* 576px */; }
	#content .three.fluid { margin-left: 40%/* 384px */; }
	#content .four.fluid { margin-left: 20%/* 192px */; }

	.thumbnail { margin-bottom: 1.8em; }
		.thumbnail h3 { color: #fff; background: #224141; font-size: 1.2em; text-transform: uppercase; padding: 0.4em 1em; font-weight: 400; }

	#slideshow { position: relative; }
		#slideshow div { top: 0; left: 0; position: absolute; width: 100%; }
	
	#slideshow + .address { position: absolute; top: 20.833333333em; }

footer { margin-top: 8em; }
	footer #credits { float: right; width: 38.2%; text-align: right; }

body#practitioners {}
	body#practitioners .content #portaits { display: block; }
		body#practitioners .content #portraits div.person { float: left; width: 33.04116095%/* 255px */; margin-right: 0; overflow: hidden; }
		body#practitioners .content #portraits div.person:nth-child(2n+1) { clear: right; }
			body#practitioners .content #portraits div.person img { float: left; width: 50.98039216%/* 130px */; margin-right: 1.960784314%/* 5px */; background: #f7f7f7; }
			body#practitioners .content #portraits div.person p { float: left; width: 41.56862745%/* 106px */; }
			body#practitioners .content #portraits div.person  strong { background: #eeefef; }
	body#practitioners .content #portraits div.person a { color: #313330; margin: 0 3.921568627%/* 10px */ 1.5em 0; }

body.profile {}
	body.profile .thumbnail { position: relative; }
	body.profile .thumbnail h3 { font-size: 1.4em; background-color: rgba(34,65,65,0.9); padding: 1em 0; text-align: center; position: absolute; top: 0; left: 0; width: 100%; }
	
	body.profile img.inline_image { float: right; margin: 0 -1em 3em 2em; border: 6px solid #ddd; }

@media screen and (min-width: 1200px) {
	body#practitioners .content #portraits div.person { width: 25%; }
}

@media screen and (max-width: 1024px) {
	nav[role=navigation] { left: 0; right: auto; }
	nav[role=navigation] li { margin: 0 2em 0 0; }
	header, header .container { height: 14.8em; }
}


@media screen and (max-width: 768px) {
	body#practitioners .content #portraits div.person { width: 50%; }
}


@media screen and (max-width: 480px) {
	body { min-width: 0; }
	.container { width: auto; padding: 10px; }
	.column:after, #portraits:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
	
	header, header .container { height: 115px; }
		#logo { position: static; }
			#logo img { width: 300px; }
	
	#content { padding-top: 110px; }
		.content h4 { font-size: 1.2em; line-height: 1.35em; text-transform: none; font-weight: 400; margin-bottom: 1.6em; }

	#title { display: none; }

	nav[role=navigation] { position: static; text-align: left; margin-top: 20px; background: #f1f1f1; padding: 10px; overflow: hidden; }
		nav[role=navigation] ul { text-align: left; }
			nav[role=navigation] li { display: block; margin-left: 0; margin-right: 0; padding: 0.8em 0; float: left; width: 50%; }
			nav[role=navigation] li { border-bottom: 1px solid #ccc; }
				nav[role=navigation] li a { color: #666; display: block; }
				nav[role=navigation] a:hover, nav[role=navigation] a.selected { color: #121212; }
	
	.address, .address .adr { font-weight: 400; color: #999; }
	
	body#practitioners .content #portraits div.row { display: block; }
		body#practitioners .content #portraits div.row > div { display: inline; float: left; }
	
	body.profile .thumbnail img { max-width: 100%; }
	footer #credits { float: none; width: auto; text-align: center; }
	
	.content table, .content table.calendar { width: 100%; }
	
	#content .container .column { width: auto; float: none; margin: 0; }
	#slideshow { display: none; }
	#slideshow + .address { position: static; }
	
	#submenu li { float: left; width: 45%; }
}

@media screen and (max-width: 320px) {
	body#practitioners .content #portraits div.person { width: 100%; }
	body nav[role=navigation] li, body #submenu li { float: none; width: auto; }
	#content { padding-top: 190px; }
}
