/* -------------------------------------------------------------- 
  	TABLE OF CONTENTS 
	
	1. Cross-browser Reset
	2. Standard elements defaults - Default styles for standard HTML elements. See /style-guide.html for markup examples.
	3. Style Library - Styles repeated through site but aren't structural elements.
	4. Main Structure - Includes header, main navigation, main wrapper, footer, etc
	5. Main Structure Alternative Styles - Styles for main structure elements that have different styles in different templates
	6. Template Styles - Specific styles for the different templates
	7. Page Specific Styles - If a page has unique styles not found anywhere else on the site they would go here
	
	STYLE SHEET COMMENT DEFINITIONS
	
	SL -- Denotes a style that is extending a style in the style library
	CF -- Denotes a style that is used as a clear fix
	PFD (Prevent float drop) -- Denotes a fix for ie6 to prevent layout from breaking with oversized content
	IE -- Denotes a style that has an alternative version in the ie.css style sheet
	IE6 -- Denotes a style that has an alternative version in the ie6.css style sheet
	IE8 -- Denotes a style that has an alternative version in the ie8.css style sheet
	HL (hasLayout) -- Denotes a hasLayout fix for IE
	DMB (Double margin bug) -- Denotes double margin fix for ie6 
-------------------------------------------------------------- */

/* -------------------------------------------------------------- 
  	1. Cross-browser reset 
-------------------------------------------------------------- */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, code,
del, dfn, em, img, q, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body { line-height: 1.5; }

/* Tables still need 'cellspacing="0"' in the markup. */
table { border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }
table, td, th { vertical-align: middle; }

/* Remove possible quote marks (") from <q>, <blockquote>. */
blockquote:before, blockquote:after, q:before, q:after { content: ""; }
blockquote, q { quotes: "" ""; }

/* Remove annoying border on linked images. */
a img { border: none; }

/* PC FF3 adds an outline to Flash objects? */
a, object { outline: none; }

/* -------------------------------------------------------------- 
  	2. Standard elements defaults 
-------------------------------------------------------------- */

/* Headings
-------------------------------------------------------------- */
h1,h2,h3,h4,h5,h6 { margin-bottom: 0.75em; }

h1 { color: #990033; font: 2.333em "helvetica neue", helvetica, arial, sans-serif; margin-bottom: 0.5em; }
h2 { color: #548CA8; font: 2em arial, sans-serif; margin-bottom: 0.25em; }
h3 { color: #005580; font: bold 1em georgia, serif; text-transform: uppercase; }
h4 { color: #005580; font: 0.917em verdana, sans-serif; text-transform: uppercase; }
h5 { color: #005580; font: bold 0.833em georgia, serif; text-transform: uppercase; }
h6 { color: #548CA8; font: bold 0.833em georgia, serif; text-transform: uppercase; }

h1 a, h1 a:link,
h2 a, h2 a:link,
h3 a, h3 a:link,
h4 a, h4 a:link,
h5 a, h5 a:link,
h6 a, h6 a:link { color: #1386BF; }

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover { color: #DD0000; }

/* Text Elements
-------------------------------------------------------------- */

body		{ color: #000000; font: 62.5% verdana, arial, sans-serif; }
p 			{ margin: 0 0 1.25em; line-height: 1.5; font-size: 1.083em; }
.summary p 	{ color: #888888; font-size: 1.333em; }
	.pain p 	{ color: #683D05; font-size: 1.333em; }

a 			{ text-decoration: underline; }
a,a:link 	{ color: #1386BF; }
a:visited 	{ color: #8AC7E5; }

a:hover,
a:active,
a:focus 	{ color: #DD0000; }

blockquote p { margin: 0; color: #683D05; font: 1.25em georgia, serif; padding-bottom: .5em; border-top: 1px dashed #D9C7A3; padding-top: 1.5em;}
strong 		{ font-weight: bold; }
em  		{ font-style: italic; }
address 	{ font-style: normal; }
cite 		{ font-style: normal; color: #683D05; margin-left: 2em; padding-bottom: 1.5em; display: block;}
small 		{ font-size: 0.833em; }

/* Following six styles generally do not need to be edited */

sup, sub    { line-height: 0; }
dfn 		{ font-style: italic; }
del 		{ color:#666; }
pre 		{ white-space: pre; }
pre,code,tt { font: 1em 'andale mono', 'lucida console', monospace; line-height: 1.5; }

/* Lists
-------------------------------------------------------------- */

li ul, 
li ol       { margin: 0 1.5em; padding-top: 1.5em; }
ul, ol      { margin: 0 1.5em 1.5em 0; }
ul ol li 	{ background: none; padding-left: 0; }

ul			{ list-style-type: none; }
ul li		{ background: url(../images/design/list-bullet.gif) 0 0.583em no-repeat; padding-left: 10px; }
ol          { list-style-type: decimal; margin-left: 1.5em; }
li			{ margin-bottom: 1.25em; line-height: 1.5; }
dl          { margin: 0 0 1.5em 0; }
dl dt       { font-weight: bold; }
dd          { margin-left: 1.5em;}

/* Tables
-------------------------------------------------------------- */

table       	{ margin-bottom: 1.4em; font-size: 0.917em; width:100%; border: 1px solid #D9C7A3; border-bottom: none; border-right: none; }
th          	{ color: #CCAA66; background: #ede5d5 url(../images/design/th-bg.gif) 0 0 repeat-x; text-transform: uppercase; font-weight: bold; border-right: 1px solid #D9C7A3; }
th,td,caption 	{ padding: 4px 5px; }
td				{ color: #A88D55; border-bottom: 1px dashed #D9C7A3; border-right: 1px solid #D9C7A3;  }
tr.odd td  		{ background: #F9F7F1; }
tfoot       	{ font-size: 0.75em; }
caption     	{ background: none; text-align: center; }

/* Forms
----------------------------------------------------------- */

fieldset 			{ margin-bottom: 1.5em; padding: 1em 0; border: 0; }
fieldset.last 		{ border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
legend 				{ font-weight: bold; }
label 				{ color: #005580; text-align: right; text-transform: uppercase; font: bold 0.917em arial, sans-serif; float: left; margin-right: 15px; width: 65px; }

.fieldArea 			{ margin-bottom: 0.833em; }
.fieldArea input,
.fieldArea textarea { width: 185px; border: 1px solid #D9C7A3; color: #A88D55; font: normal 0.917em arial, sans-serif; padding-top: 2px; }
.fieldArea textarea { height: 50px; }

input.protect		{ display: none; }
input.submit 		{ cursor: pointer; border: 0; background-color: #005179; color: #AAC6D4; font: bold 0.917em verdana; padding: 4px 6px; text-transform: uppercase; text-decoration: none; }
input.submit:hover 	{ color: #FFFFFF; background: #005179 url(../images/btn/btn-hover.gif) 0 0 repeat-x; }

span.message 		{ display: block; font-size: 0.917em; padding-top: 0.5em; }
span.error 			{ color: #DD0000; }
		
div#errors 			{ background: #FFF5E6 url(../images/forms/error.gif) 10px 0.5em no-repeat; border: 1px solid #FFEBCC; font: normal 0.846em arial; margin: 0 0 1.5em 0; padding: 0.5em 10px 0.5em 50px; }
	div#errors h4 	{ color: #DD0000; font-weight: bold; }
	div#errors ul 	{ margin-bottom: 0; }
	div#errors p 	{ margin-bottom: 0; color: #000000; }
	div#errors li 	{ margin-bottom: 0.5em; font-size: 1.084em; color: #000000;  }

/* -------------------------------------------------------------- 
	3. Style Library
----------------------------------------------------------- */
a.btn 		{ background-color: #005179; color: #AAC6D4; font: bold 0.917em verdana; padding: 4px 6px; text-transform: uppercase; text-decoration: none; }
a.btn:hover 	{ color: #FFFFFF; background: #005179 url(../images/btn/btn-hover.gif) 0 0 repeat-x; }

#breadCrumbs { color: #D9C7A3; font: 0.75em arial, sans-serif; text-transform: uppercase; margin-bottom: 1.25em; }
	#breadCrumbs a { color: #D9C7A3; }
	#breadCrumbs a:hover { color: #DD0000; }

.adr { margin-bottom: 2em; }
	.adr span { font-size: 0.917em; }
		span.street-address { display: block; }
		span.line { display: block; margin-bottom: 1em; }
		span.tel { display: block; }
			span.tel .type { color: #A88D55; font-weight: bold; }
		span.telLast { margin-bottom: 1.5em; }
		.googleMap { color: #1386BF; font: bold 1.333em georgia, serif; }
			.googleMap:hover { color: #DD0000; }

.pageList { border-bottom: 1px dashed #D9C7A3; margin-bottom: 1em; padding-bottom: 0.25em; padding-left: 135px; float: left; width: 483px; }
	.pageList img,
	.thumbnail img  { margin-left: -135px; float: left; display: inline; /* DMB */ }
.pageListLast { border-bottom: 0; }

/* Search Form Styles
----------------------------------------------------------- */
.searchForm .query { border: 1px solid #E4D8BE; height: 16px; width: 184px; float: left; margin-right: 4px; color: #E4D8BE; padding: 3px 2px 0px 2px; /* IE IE8 */ font-size: 0.917em; line-height: 20px; }
.searchForm .submit { height: 20px; float: left; color: #7FA9BE; font: bold 0.833em georgia, serif; text-transform: uppercase; padding: 3px 2px 8px 2px; position: relative; top: 1px; }

/* Pagination Styles
----------------------------------------------------------- */
.pagination { margin-bottom: 2em; }

	.pagination .pageInfo { color: #005580; float: right; font-weight: bold; } /* CF */
	
	.pagination .first,
	.pagination .previous,
	.pagination .next,
	.pagination .last { background: url(../images/design/pagination.gif) 0 0 no-repeat; display: block; height: 16px; width: 16px; text-indent: -9999px; float: left; margin-right: 5px;  }
	
		.pagination .first:hover { background-position: 0 -16px; }
		
		.pagination .previous { background-position: -16px 0;}
		.pagination .previous:hover { background-position: -16px -16px; }
		
		.pagination .next { background-position: -32px 0;}
		.pagination .next:hover { background-position: -32px -16px; }
		
		.pagination .last { background-position: -48px 0;}
		.pagination .last:hover { background-position: -48px -16px; }
		
	.pagination .disabled { display: none; }
	
	.pagination .paginator { float: left; }
	
		.pagination .paginator .page { margin-right: 5px; }
		.pagination .paginator .current { color: #000000; text-decoration: none; }
	
	.pagination .ellipse { float: left; margin-right: 5px; }

#imageFrameInner img { padding: 5px; background: #FFFFFF; border-right: 1px solid #D9C7A3; border-bottom: 1px solid #D9C7A3; }

.floatLeft 		{ float: left; }
.floatRight 	{ float: right; }
.clearLeft 		{ clear: left; }
.clearRight 	{ clear: right; }
.clear 			{clear: both;}

img.floatLeft 	{ margin: 0 1.5em 0 0; }
img.floatRight 	{ margin: 0 0 1.5em 1.5em; }

.group:after, .pagination:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } /* CF, IE.css, IE6.css */

/* -------------------------------------------------------------- 
	4. Main Structure
----------------------------------------------------------- */
body { margin: 0; text-align: center; background: #ffffff url(../images/design/body-bg.jpg) 0 0 repeat-x; }

	#page { background: url(../images/design/page-bg.jpg) 50% 0 no-repeat; min-width: 860px; padding-top: 10px; font-size: 1.2em; /* 62.5% + 1.2em = 12px */  }
	
		#navigation { background: #ff6c84 url(../images/design/navigation-bg.gif) 0 0 repeat-x; }
	
			#navigation ul { list-style: none; width: 860px; margin: 0 auto; }
	
				#navigation li { border-left: 1px solid #ffa6b4; background: none; padding: 0; float: left; margin: 0; position: relative; }
					#navigation li.alt { background: #ff6a82 url(../images/design/navigation-alt.gif) 0 0 repeat-x; }
					#navigation li.last-child { border-right: 1px solid #ffa6b4; }
	
					#navigation li span.active { display: block; height: 10px; width: 20px; background: url(../images/design/navigation-active-arrow.gif) 0 0 no-repeat; position: absolute; bottom: -10px; /* ie6.css */  left: 45%; }
	
					#navigation li a { display: block; color: #FFFFFF; font-weight: bold; text-transform: uppercase; font-family: arial, sans-serif; text-decoration: none; padding: 6px 25px;  }
						#navigation li a:hover { background: #990033; }

#wrapper { text-align: left; padding: 0; margin: 0 auto; width: 860px; height: 700px; }
	
	#header { min-height: 200px; position: relative; border-bottom: 1px dashed #D9C7A3; /* IE6 */ }
	
		#logo { background: url(../images/design/logo.png) 0 0 no-repeat; /* ie6.css */ height: 100px; width: 432px; text-indent: -9999px; position: absolute; top: 40px; left: 0px; }	
		
			#logo a { display: block; height: 100px; width: 432px; text-indent: -9999px; }
			
		#mainSearchForm { position: absolute; top: 25px; right: 10px; }	
		
		#contactInfo { position: absolute; bottom: 0; right: 0; width: 265px; margin: 0; }
		
			#contactInfo li { background: none; padding: 0; clear: left; overflow: hidden; font-family: verdana; }
			
			#contactInfo .label,
			#contactInfo .phone,
			#contactInfo .hours,
			#contactInfo .location { display: block; }
			
			#contactInfo .label { text-align: right; display: block; float: left; width: 75px; font-weight: bold; font-size: 0.833em; text-transform: uppercase; color: #005580; margin-right: 10px; }
				#contactInfo .contact { margin-top: 12px; }
			#contactInfo .phone { color: #548CA8; float: left; width: 150px; font: 1.833em georgia, serif;  }
			
			#contactInfo .hours,
			#contactInfo .location { color: #990033; font-size: 0.917em; float: left; width: 180px; } 

	#contentMain {padding: 20px 0 1.667em 0; }
	
		#localNav { float: left; width: 242px; }
			
			.related {padding-left: 10px; }
		
			#localNav ul { margin-left: 0; }
			
				#localNav li { background: none; padding-left: 0; padding-bottom: 1px; background: url(../images/design/localnav-li-bg.gif) 0 100% no-repeat; margin: 0; }
				
					#localNav li a { display: block; padding: 7px 0 7px 10px; color: #990033; text-transform: uppercase; font: bold 1em georgia, serif; text-decoration: none; }
					
						#localNav li a:hover { background: url(../images/design/localnav-a-bg.gif) 0 50% no-repeat; }
						
						#localNav li a.active { color: #FF6981; }
		
	#footer { border-top: 1px dashed #E2D6BE; text-transform: uppercase; padding-top: 1em; color: #A58B56; font: 0.833em verdana, sans-serif; margin-bottom: 3em;  }
		
			#footer span { display: block; }
	
		#footerLeft { float: left; }
			
		#footerRight { float: right; width: 400px;} 
		
			#footerRight span { text-align: right; } 
		
				#footerRight span a { color: #A58B56; } 
				
					#footerRight span a:hover { color: #DD0000; } 
					
/* -------------------------------------------------------------- 
	5. Main Structure Alternative Styles
----------------------------------------------------------- */
body.inner-2-col #page,
body.inner-location #page,
body.inner-1-col #page { background-image: url(../images/design/page-bg-alt.jpg); }

body.home #contentMain { padding-top: 0; padding-bottom: 0.5em; }
body.home #header { border-bottom: 0; }

/* -------------------------------------------------------------- 
	6. Template Styles
----------------------------------------------------------- */

/* Homepage Template
----------------------------------------------------------- */
#intro { float: left; width: 580px; margin-right: 30px; }

	#animation { position: relative; top: -30px; padding-bottom: 23px; border-bottom: 1px dashed #D9C7A3; /* HL IE6.css */  }
	
#recentArticles { float: left; width: 250px; }

	#recentArticles h2 { background: url(../images/design/articles-header.gif) 0 0 no-repeat; height: 25px; text-indent: -9999px; margin-bottom: 0.5em; }
	
		#recentArticles h2 a { display: block; height: 25px; }
		
	#recentArticles p {margin-bottom: .5em;}
		
	#recentArticles ul { list-style: none; margin: 0; }
		
		#recentArticles li { border-bottom: 1px dashed #D9C7A3; padding: 0.25em 10px; background: none; }
		
		#recentArticles li.last { border-bottom: 0;}
		
			#recentArticles h3 { font-size: 0.917em; }
			
				#recentArticles h3 a { color: #005580; text-decoration: none; font-family: verdana, sans-serif; }
				
				#recentArticles h3 a:hover { text-decoration: underline; }
			
			#recentArticles p { color: #005580; }
			
				#recentArticles p a { text-decoration: none; color: #548CA8; font: bold 0.833em georgia, serif; background: url(../images/design/article-link-arrow.gif) 100% 2px no-repeat; padding-right: 14px; text-transform: uppercase; }
						
				#recentArticles p a:hover { text-decoration: underline; }
				
		#recentArticles li.featured { background: #82ABC0 url(../images/design/featured-articles-bg.gif) 100% 100% no-repeat; border-bottom: 0; padding: 0.75em 10px 0.25em 10px; }
		
			#recentArticles li.featured h3.featured { color: #005580; font: bold 0.833em georgia, serif;}
			
			#recentArticles li.featured h3 a,
			#recentArticles li.featured p  { color: #FFFFFF; }
			
				#recentArticles li.featured p a { color: #005580; }
				
			.seeAll {padding: 1em 10px 0.25em 10px; border-top: 1px dashed #D9C7A3;}

#homepageCallouts { clear: left; padding: 0.5em 0 0 0; border-top: 1px dashed #D9C7A3; }

	#homepageCallouts table { border: 0; margin: 0; }

		#homepageCallouts tr { padding-top: 20px; }
	
			#homepageCallouts td { background: #FF6981; border: 0; width: 150px; text-align: center; vertical-align: middle; padding: 0.5em 20px; /* ie.css */ border-right: 10px solid #FFFFFF; }
			
				#homepageCallouts td a { color: #FFFFFF; font: bold 0.917em georgia, serif; text-transform: uppercase; text-decoration: none; }
				
					#homepageCallouts td a:hover { text-decoration: underline; }
					
					#homepageCallouts td a span { text-transform: lowercase; }
						
				#homepageCallouts td.odd { background: #ad325b url(../images/design/even-td-bg.gif) 0 100% repeat-x; border-right: 10px solid #FFFFFF; }
		
				#homepageCallouts td.last { border-right: 0; }
			
/* General Template ( 3 Column )
----------------------------------------------------------- */
#generalMain { float: left; width: 325px; margin: -10px 28px 0 0; overflow: hidden; /* PFD */ }

	#generalMain h1 { border-bottom: 1px dashed #D9C7A3; padding-bottom: 0.5em; margin-bottom: 0.5em; }
	
#generalSub { float: left; width: 265px; overflow: hidden; /* PFD */ }

	#generalSub img { padding: 5px; background: #FFFFFF; border-right: 1px solid #D9C7A3; border-bottom: 1px solid #D9C7A3; -moz-box-shadow: 2px 2px 2px #F7F1E7; -webkit-box-shadow: 2px 2px 2px #F7F1E7; }

/* List Template ( 2 Column )
----------------------------------------------------------- */
#listMain { float: left; width: 618px; overflow: hidden; /* PFD */ }

	#listMain .pageList { width: 483px; } /* SL */

/* Our Location Template
----------------------------------------------------------- */
#locationsInfo { padding-right: 570px; padding-bottom: 1em; background: url(../images/locations/map-2.gif) 100% 0 no-repeat; }

/* One Column Template
----------------------------------------------------------- */
#oneColumn { width: auto; min-height: 250px; /* IE6.css */ }

/* Contact Us Template
----------------------------------------------------------- */
#appointment { float: left; width: 575px; margin-right: 20px; overflow: hidden; /* PFD */ }
	
	#appointmentForm { padding-bottom: 20px; position: relative; width: 570px; }
	
		#personalInfo { float: left; width: 275px; margin: 0 30px 0 0; }
		
		#extraInfo { float: left; width: 252px; margin: 0; }
			
			#extraInfo #appointmentInfo { background: #F9F7F1; padding: 8px 7px; margin-bottom: 1em; }

				#extraInfo #appointmentInfo p { font-size: 0.917em; color: #683D05; }  

				#extraInfo #appointmentInfo label { color: #683D05; }
				
				#extraInfo .htmlInputText label { text-transform: uppercase; width: 102px; text-align: left; }
				
				#extraInfo .htmlInputText input { width: 114px; }
				
				#extraInfo .htmlSelectOneMenu label { display: block; width: auto; margin-bottom: 0.5em; }
				
				#extraInfo .htmlSelectOneMenu select { font: normal 0.917em arial, sans-serif; text-transform: capitalize; }
			
			#extraInfo .commentsFieldArea label { display: block; float: none; margin-bottom: 0.5em; }	
			
			#extraInfo .commentsFieldArea textarea { width: 250px; }
		
		#appointmentSubmit { background: url(../images/design/form-dashed-line.gif) 0 50% repeat-x; height: 25px; clear: both; padding-left: 235px; }
		 
			#appointmentSubmit input.submit { border-right: 5px solid #FFFFFF; border-left: 5px solid #FFFFFF; /* IE6 */ clear: both; width: 100px;  }

#aside { float: left; width: 265px; }

body.articles #aside { padding-top: 10px; }

/* -------------------------------------------------------------- 
	7. Page Specific Styles
----------------------------------------------------------- */

/* Article Listing Page
----------------------------------------------------------- */
#blogForm .pageList { width: 575px; padding-left: 0; } /* SL */

#blogForm .thumbnail { padding-left: 135px; width: 440px; } /* SL */

	#blogForm h3 { margin-bottom: 0.25em; }

#blogForm .datePosted { display: block; font-size: 0.917em; font-weight: bold; margin-bottom: 0.5em; }

#articleForm fieldset { padding-bottom: 0; margin-bottom: 0.5em; }
	
	#articleForm label { text-align: left; float: none; display: block; margin-bottom: 0.25em; width: auto; }

	#articleForm input,
	#articleForm textarea { float: none; }

/* Individul Article Page
----------------------------------------------------------- */
#individualArticle h1 { margin-bottom: 0; }

	#individualArticle .datePosted { display: block; margin-bottom: 1em; text-transform: uppercase; color: #005580; }

#blogComments fieldset { margin-bottom: 0; }
	
	#blogComments label { text-align: left; }
	
	#blogComments .message { text-align: left; } 
	
	
/* Search Page
----------------------------------------------------------- */
#searchResults { padding-top: 1.25em; }

	#results-intro { clear: left; }
		
		#results-intro strong { color: #FF6981; }
	
	#search-results-form { clear: left; margin-bottom: 1em; }
	
		#search-results-form .search-result { padding-bottom: 1.5em; margin-bottom: 1.5em; border-bottom: 1px dashed #D9C7A3; }
		
			.search-result .highlight { font-weight: bold; color: #FF6981; }
			
/* Pain is a Blessing
----------------------------------------------------------- */		
p.pain { border-bottom: 1px dashed #D9C7A3; padding-bottom: 1em; margin-bottom: 0.5em; font-weight: bold;}
img { display: block; position: relative;}
.left {float: left; width: 200px; margin: .5em 1.8em;  display: block; position: relative; clear: left; display: inline;}
.right {float: left; width: 340px; margin: .5em .5em .5em 1.9em; display: block; position: relative; display: inline; }
	.subluxation {font-size: 1.04em; text-decoration: none; display: inline;}
.underline {text-decoration: underline; }

p.bottom { clear: left; border-top: 1px dashed #D9C7A3; padding-top: 1em; margin: 0.5em 0; display: block;}

/* Our Doctors
----------------------------------------------------------- */
 a:visited.dr {color: #1386BF; }
 a:hover.dr { color: #DD0000; }

