	/* ------------------------------------------------------------------------- */
/* Copyright Einstein Industries 2004. Used with Permission.                 */
/* May not be duplicated or reproduced.                                      */
/*                                                                           */
/* Please check for cross-browser compatibility prior to making changes      */
/* MINIMUM BROWSER CHECK :: IE5.x/IE6/Op7/NS7/Safari/FireFox                 */
/*                                                                           */
/* CSS Document                                                              */
/* ------------------------------------------------------------------------- */

/* basic elements
 * ------------------------------------------------------------------------- */

body, div, ul, ol, li, dl, dt, dd, img, form, fieldset {
	margin: 0;
	padding: 0;
	border: 0;
}

body {
	background: #ffffcd url(/images/bg.jpg) top left repeat-x;
	text-align: center;
	font-size: 80%;
}

p, div, li, h1, h2, h3, h4, td, dd, dt, input, select, textarea {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1em;
	color: #000000;
	line-height: 16px;
}

a img, :link img, :visited img	{ border:none; }

a:link, a:visited {
	color: #206F82;
	text-decoration: underline;
}
a:hover, a:active {
	color: #79BFD0;
	text-decoration: underline;
}

a.negative:link, a.negative:visited { color: #FF0000; }
a.negative:hover, a.negative:active { color: #FF4545; }

input, select, textarea, label	{ vertical-align: middle; }

abbr, acronym, span.help { 
	cursor: help;
	color: #cf5140;
	}

/* navigation
 * ------------------------------------------------------------------------- */

#menu {
	width: 545px;
	clear: both;
	float: right;
	_display: inline;
}
#menu li {
	background: none;
	margin-top: 15px;
	line-height: 13px;
	font-size: 12px;
	font-weight: bold;
	border-left: 2px solid #206F82;
}

#menu, #menu ul { /* all lists */
	padding: 0;
	margin: 0;
	list-style: none;
}

#menu li a {
	display: block;
	padding: 0 9px;
	text-decoration: none;
}
	#menu li.first	{ border: none; }
	#menu li.first a	{ padding-left: 0; }
	#menu li.last a	{ padding-right: 0; }

#menu li { /* all list items */
	float: left;
	/*width: 10em;  width needed or else Opera goes nuts */	
}

#menu li ul { /* second-level lists */
	position: absolute;
	width: 160px;
	padding-top: 7px;
	left: -999em; /* using left instead of display to hide menus because display: none isn't read by screen readers */
}
#menu li ul li {
	width: 160px;
	padding: 0;
	margin: 0;
	text-indent: 5px;
	line-height: 20px;
	font-size: 11px;
	border: none;
	background: #206F82 url(/images/bg-dropdown.gif) bottom left repeat-x;
}

	/* Drop down link styles */
	#menu ul a:link, #menu ul a:visited, #menu ul a:hover, #menu ul a:active {
		padding: 0;
		margin: 0;
		width: 100%;	/* flicker bug in IE6/Win */
		color: #FFFFFF;
		font-weight: normal;
		}

	/* Hover styles for drop down items */
	#menu ul a:hover {
		background: #3B8EA2 url(/images/bg-dropdown.gif) bottom left repeat-x;
		}

#menu li:hover ul, #menu li.sfhover ul { /* lists nested under hovered list items */
	left: auto;
}		



/* main structural elements
 * ------------------------------------------------------------------------- */

#wrapper {
	width: 750px;
	margin: 0 auto;
	text-align: left;
}

#login {
	width: 750px;
	height: 33px;
	color: #FFF;
	font-size: 11px;
	text-align: right;
}
	#login input {
		border: none;
	}
	#login-input {
		width: 50px;
	}
	#login label {
		margin-left: 20px;
	}

#logo {
	float: left;
	width: 150px;
}

#top {
	width: 750px;
	margin: 0 auto;
	text-align: left;
	height: 105px;
}
	#top-right {
		width: 580px;
		float: right;
	}
		#top-ad {
			width: 468px;
			height: 60px;
			float: right;
			margin-top: 10px;
		}

#banner {
	width: 750px;
	height: 208px;
	clear: both;
}
	#banner { background: transparent url(/images/banner/01.jpg) 0 0 no-repeat; }
	
	#contact #banner { background: transparent url(/images/banner/02.jpg) 0 0 no-repeat; }
	#pages #banner { background: transparent url(/images/banner/03.jpg) 0 0 no-repeat; }
	#search #banner,
	#directory #banner,
	#directory-allied #banner,
	#directory-affiliated #banner { background: transparent url(/images/banner/04.jpg) 0 0 no-repeat; }
	#store #banner { background: transparent url(/images/banner/05.jpg) 0 0 no-repeat; }
	#signup #banner,
	#seminars #banner,
	#person #banner,
	#surveys #banner,
	#tradeshows #banner { background: transparent url(/images/banner/06.jpg) 0 0 no-repeat; }

	#banner-menu {
		background: url(/images/banner/buttons.jpg) top left no-repeat;					
		width: 242px;		/* Width of buttons, not entite image (or half of entire image) */
		height: 208px;		/* Height of entire image */
		margin-left: 508px;
		}
	
	#banner-menu li span { display: none; }
	
	#banner-menu li {
		float: left;
		list-style: none;
		}
	
	#banner-menu li, #banner-menu a { 
		height: 104px;			/* Each button must have the same height, define it here */
		display: block;
		}

	/* margin-top if there is a spacing between each nav button */
	#banner-menu-01, #banner-menu-02 { width:242px; }
	
	#banner-menu-01 a:hover { background: transparent url(/images/banner/buttons.jpg) -242px  -0px no-repeat; }
	#banner-menu-02 a:hover { background: transparent url(/images/banner/buttons.jpg) -242px  -104px no-repeat; }

#main {
	width: 750px;
	background: url(/images/bg-side.gif) top right repeat-y;
}
	
	#content {
		float: left;
		width: 508px;
		_display: inline;		/* IE6/Win double margin float bug */
		margin-bottom: 20px;
	}
	
		#content p, #content ul { margin-right: 35px; }

		#content h1 {
			padding-top: 25px;
			color: #206F82;
			border-bottom: 1px solid #E0DEA3;
			line-height: 35px !important;
			font-size: 2.5em !important;
			font-weight: normal;
		}
		#content h2 {
			color: #206F82;
			padding-top: 15px;
			margin-top: -10px;
			line-height: 27px !important;
/*			font-size: 23px !important;*/
			font-size: 18px;
			font-weight: normal;
		}

		#content h3,#content h4 { 
			margin-bottom: 10px; 
			font-size: 1.1em;
			color: #206F82;
			}
		
		#content dt { font-weight: bold; }
		
		#featured {
			background: url(/images/featured/bg.gif) 0 0 repeat-y;
		}
			.featured-item {
				width: 154px;
				margin-right: 3px;
				float: left;
				_display: inline;
			}
			#featured h2 {
				width: 154px;
				font-size: 1.6em;
				text-align: center;
				color: #206F82;
				border-top: 1px solid #E0DEA3;
				border-bottom: 1px solid #E0DEA3;
				line-height: 24px;
				padding: 3px 0 3px 0;
				margin: 0 !important;
			}
				#featured h2 a:link, #featured h2 a:visited { color: #7A9889; }
				#featured h2 a:hover, #featured h2 a:active { color: #4C82BA; }

			#featured p {
				margin: 95px 7px 7px 7px !important;
			}
			#featured-1 { background: url(/images/featured/bg-directory.jpg) 0 26px no-repeat; }
			#featured-2 { background: url(/images/featured/bg-person.jpg) 0 26px no-repeat; }
			#featured-3 { background: url(/images/featured/bg-store.jpg) 0 26px no-repeat; margin: 0; }
			
			a.more {
				width: 154px;
				height: 28px;
				display: block;
			}
			a.more span { display: none; }
			
			a.more 				{ background: url(/images/featured/more.gif) 0 0 no-repeat; }
			a.more:hover 		{ background: url(/images/featured/more.gif) 0 -28px no-repeat; }
	
		#intro div {
			padding-left: 100px;
			padding-right: 10px;
			margin-top: 10px;
		}

		#intro-survey { background: url(/images/inset/survey.jpg) 0px 20px no-repeat; }
		#intro-imsa { background: url(/images/inset/imsa.jpg) 0px 20px no-repeat; }

		
	#side {
		width: 242px;
		float: right;
		background: url(/images/bg-side-gradient.jpg) 0 0 no-repeat;
		margin-bottom: 20px;
	}
		#side h1 {
			font-size: 1.7em;
			color: #206F82;
			border-bottom: 1px solid #E0DEA3;
			line-height: 26px;
			padding-top: 43px;
			padding-left: 17px;
			width: 207px;
		}
		#side h2, #side h3, #side p, #side ul, #side form, #side dl {
			margin-left: 17px;
			margin-right: 25px;
		}
		
		#quick-search p, #quick-search form {
			margin-top: 0;
		}
		#quick-search #search-member-type { 
			margin-top:4px;
			width:197px; 
		}
		
		#news dt {
			background: url(/images/icons/icon-news.gif) 0 2px no-repeat;
			font-weight: bold;
		}
		#news dt, #news dd {
			padding-left: 15px;
		}
		#news dd {
			margin-bottom: 10px;
		}
		
		#side-ad {
			margin-left: 17px;
			margin-top: 25px;
		}

/* store/checkout
 * ------------------------------------------------------------------------- */
		
/* Product cart section */
#cart li span {
	font-size: 10px;
	color: #206F82;
}
#cart li {
	background: #FCF9F4;
	margin-bottom: 10px; 
}
p.cart-total {
	border-top: 1px solid #D8D1C6;
	padding-top: 5px;
	font-weight: bold;
}

/* Checkout */
#checkout-cart {
	width: 95%;
}
	#checkout-cart th, #checkout-cart td { padding: 7px; }
	#checkout-cart th {
		color: #FFF;
		background: #719799;
	}
	#checkout-cart .item td {
		border-bottom: 1px solid #E5E5E5;
	}
	#checkout-cart .detail td {
		font-size: 11px;
		lineheight: 13px;
		padding: 0 7px 0 0;
	}
	td.checkout-total {
		font-size: 16px;
		font-weight: bold;
		color: #FF0000;
	}

#content fieldset h3 {
	font-size: 13px;
	color: #000;
}
.required {
	font-size: 11px;
	color: #999;
	font-weight: normal;
}

/* Member signup */
p.signup-steps {
	font-size: 11px;
	color: #999;
}

p.signup-total {
	border-top: 1px solid #D8D1C6;
	padding-top: 5px;
	font-weight: bold;
	font-size: 14px;
}	

/* footer
 * ------------------------------------------------------------------------- */
#footer-wrapper {
	background: #C5DCE1;
	width: 100%;
}

#footer {
	width: 750px;
	margin: 0px auto;
	padding: 14px;
	text-align: center;
}
	
	#footer a:link, #footer a:visited {
		color: #000000;
		text-decoration: underline;
	}
	#footer a:hover, #footer a:active {
		color: #018270;
		text-decoration: underline;
	}

/* survey
 * ------------------------------------------------------------------------- */
.question textarea {
	width: 400px;
	height: 100px;
}

/* store
 * ------------------------------------------------------------------------- */
.product {
	padding: 7px; 
	margin-right: 15px; 
	margin-bottom: 2px; 
}

/* lists
 * ------------------------------------------------------------------------- */

ul,ol	{ list-style:none; }

	#content ul { margin-left: 5px; }
	
	#content ul ul { margin-top: 5px; }

	#content li {
		padding-left: 10px;
		padding-bottom: 4px;
		background: url(/images/bullets/bullet-blue.gif) 0px 6px no-repeat;
	}

ul.horiz { 
	margin-bottom: 0;
	padding-left: 0;
	}

	ul.horiz li {
		display: inline;
		padding-right: 1px;
		padding-left: 5px;
		border-left-width: 1px;
		border-left-style: solid;
		line-height: 1.0em;
		background: none;
		}

		ul.horiz li.first {
		border: none;
		padding-left: 0;
		}

	ul.horiz li a:link, ul.horiz li a:visited { text-decoration: none; }
	ul.horiz li a:hover, ul.horiz li a:active { text-decoration: none;}

ul.multi-col { 
	float:left;
	width:460px;
	padding-bottom:15px;
	_display: inline;	/* IE6/Win double margin float bug */
}
	ul.multi-col li {
		float:left;
		width:150px;
		padding-left: 0;
		background: none;
		_display: inline;	/* IE6/Win double margin float bug */
	}

	ul.multi-col li a { display: block; }

	#content ul.multi-col {
		margin-left: 10px;
		}

	#content ul.multi-col li {
		padding: 0 0 3px 0;
		background: none;
		}
	
dt, dd { line-height: 1.3em; }

/* --- bullets / icons --- */

.map-it:link, .map-it:visited {
	padding-left: 20px;
	line-height: 2.0em;
	background: url(/images/icons/icon-world.gif) 0px 0px no-repeat;
	}

.external:link, .external:visited {
	padding-left: 20px;
	line-height: 1.6em;
	background: url(/images/icons/icon-external.gif) 0px 2px no-repeat;
	}

 
/* form elements 
 * ------------------------------------------------------------------------- */

label {
	margin-bottom: 7px;
	}

.input-style {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 0.9em;
	width: 160px;
	_width: 155px;
	color: #000000;
	background-color: #FFFFFF;
}

#local-search {
	margin-right: 13px;
	margin-bottom: 35px;
	font-size: 12px;
	}

	#search-results h3 { font-size: 15px; }
	
	#local-search p { margin: 10px 0 0 0; }
	#local-search #q.input-style	{ width: 325px; }
	#local-search .input-style	{ margin-right: 3px; }
	#local-search #r { width: auto; }

	#search-results .button { 
		width: 55px;
		height: 23px;
		padding: 0;
		margin-right: 5px;
	}

fieldset {
	border: 1px solid #CCC;
	padding: 8px;
	margin-bottom: 15px;
	margin-right: 20px;
}
	fieldset legend {
		font-weight: bold;
		font-size: 16px;
		color: #206F82;
	}


/* spa profiles
 * ------------------------------------------------------------------------- */

#profile .location {
	clear: both;
	margin-top: 7px;
	margin-left: 2px;
	padding-bottom: 15px;
	}

	#profile .location h3 {
		font-size: 1.3em;
		font-weight: normal;
		}

#profile .location dd {
	line-height: 1.4em;
	}

#profile .location dt {
	font-weight: bold;
	line-height: 1.6em;
	}

#profile .location .services {
	margin-right: 50px;
	}

#profile .address {
	float: right;
	width: 175px;
	margin-right: 10px;
	margin-left: 10px;
	_display: inline;
	}

#profile .description {
	margin-bottom: 15px;
	margin-right: 15px;
	}

	
/* search results 
 * ------------------------------------------------------------------------- */

/*
#search-results dl, #directory dl {
	line-height: 16px;
	}

	#search-results dt, #directory dt {
		margin-top: 7px;
		margin-bottom: 2px;
		font-weight: bold;
		}

	#search-results dd, #directory dd {
		line-height: 16px;
		}
*/

#search-results #services ul {
	width: 440px;
	margin: 20px 0 0 0;
	}
	
	#search-results #services ul li, #search-results #services label {
		float: left;
		width: 220px;
		display: block;
		}

#search-results .pages {
	margin-bottom: 10px;
	margin-top: -10px;
	text-align: center;
	}

	#search-results .pages p, 
	#search-results .pages h4 { 
		display: inline;
		font-weight: normal;
		}

	#search-results .pages  a {
		padding: 0 0.5em;
		margin: 0 -0.5em;
		text-decoration: none;
		}

	#search-results .pages  a:hover, 
	#search-results .pages  a:active {	
		text-decoration: underline;
		}

	#search-results .pages .current {
		text-decoration: none;
		font-weight: bold;
		font-size: 0.95em;
		color: #a90a08;
		text-decoration: none;
		}

#directory #content h3 { font-size: 15px; }

dl.listings { 
	margin-left: 0;
	background: none;
	padding-left: 0;
}
dl.listings a { font-weight: bold; }
dl.listings dt {
	font-size: 13px;
	line-height: 22px;
	margin-top: 7px;
}
dl.listings.dsa-accredited dt,dl.listings.dsa-accredited dd {
	padding-left: 24px;
} 
dl.listings.dsa-accredited dt { 
	background: url(/images/icons/icon-star.gif) 0px 3px no-repeat; 
}

	

/* account 
 * ------------------------------------------------------------------------- */
.account-section {
	margin-right: 20px;
}
.account-section li {
	background: none !important;
	padding: 0px !important;
}
.account-section li span {
	margin-right: 10px;
	font-size: 11px;
}
.todo {
    background: #FFFAE1 url(/images/icons/icon-exclamation.gif) 5px 20px no-repeat;
	border: 1px solid #F5D851;
	padding: 8px 8px 8px 25px;
	margin-bottom: 10px;
}
.completed {
    background: url(/images/icons/icon-star.gif) 5px 20px no-repeat;
	padding-left: 25px;
}

/* polls 
 * ------------------------------------------------------------------------- */
	
.vote-highlight {
	background: #EDE9E2;
	padding: 4px;
	color: #719799;
	font-weight: bold;
}
#polls h2 {
	color: #206F82;
}
#polls p {
	margin-bottom: 5px !important;
	margin-top: 0px !important;
}
#polls p.description {
	margin-bottom: 10px !important;
	font-style: italic;
}
#poll label {
	display: block;
}
.vote-bar {
	display: block;
	height: 8px;
	background: #206F82;
}

/* misc layout elements 
 * ------------------------------------------------------------------------- */

.top {
	display: block;
	text-align: right;
	font-size: 0.8em;
}

.clear {
	width: 100%;
	height: 1px;
	overflow: hidden;
	clear: both;
}

.right	{ float: right; }
.left	{ float: left; }

.img-right {
	float: right;
	margin-left: 7px;
	margin-bottom: 4px;
	margin-right: 35px;
}
p .img-right {
	margin-right: 0px;
}
.img-left {
	float: left;
	margin-bottom: 4px;
	margin-right: 7px;
}

.news-date {
	color: #999999;
}

.success {	
	width: 95%;
    display: block;
    border-top: 1px solid #89B100;
    border-bottom: 1px solid #89B100;
    background: #F8FDF3 url(/images/icons/publish/success.gif) 10px 13px no-repeat;
    padding-top: 10px;
    padding-bottom: 10px;
	margin-bottom: 10px;
}
.success p {
    margin: 0 0 0 35px;
    color: #89B100;
}
.error {
	width: 95%;
	display: block;
	border-top: 1px solid #B13A00;
	border-bottom: 1px solid #B13A00;
	background: #FED1BB url(/images/error.gif) 10px 13px no-repeat;
    padding-top: 10px;
    padding-bottom: 10px;
}
	.error p, .error ul { 
		color: #B13A00;
		margin-left: 35px;
	}
	.error ul { margin-bottom: 10px; }
	.error li {
		background: none !important;
		margin-left: 20px;
	}

#content .ok, #content .alert, #content .information, #content .help { 
	padding-left: 24px;
	background-repeat: no-repeat;
	background-position: 0px 2px;
	}

#content .ok { background-image: url(/images/icons/icon-accept.gif); }
#content .alert { background-image: url(/images/icons/icon-error.gif); }
#content .information { background-image: url(/images/icons/icon-information.gif); }
#content .help { background-image: url(/images/icons/icon-help.gif); }

#content .information, #content .help {
	background-position: 0px 0px;
	padding-left: 0;
	text-indent: 20px;
}
	
	#content li.help { 
		line-height: 23px;
		background-position: 0px 3px;
	}

#content #tradeshows_archive {
	margin-top: 20px;
}

#content #tradeshows_archive hr {
	background-color: #E0DEA3;
	border: 0px solid black;
	height: 1px;
}

.table-form {
	width: 450px;
	margin-bottom: 15px;
}
.table-form td {
	padding: 5px;
	border-bottom: 1px solid #EFEFEF;
}
.table-form .item {
	text-align: right;
	width: 100px;
}

.highlight {
	background: #FDFAF5;
	border: 1px solid #D9DEA6;
	margin: 10px 20px 15px 0;
	padding: 0px 8px 8px 8px;
	font-size: 15px;
	line-height: 19px;
}
	
	.highlight h2, .highlight h3 { margin-top: 8px }

.menu-pages {
	display:block;
	border-top:1px solid #E0DEA3;
	padding-top: 5px;
	}
	
	.menu-pages .current { font-weight: bold }

/* sIFR - DO NOT EDIT THESE STYLES!
 * ------------------------------------------------------------------------- */

.sIFR-flash {
	visibility: visible !important;
	margin: 0;
}

.sIFR-replaced {
	visibility: visible !important;
}

span.sIFR-alternate {
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	display: block;
	overflow: hidden;
	letter-spacing: 0;
}

/* These "decoy" styles are used to hide the browser text before it is replaced... the negative-letter spacing in this case is used to make the browser text metrics match up with the sIFR text metrics since the sIFR text in this example is so much narrower... your own settings may vary... any weird sizing issues you may run into are usually fixed by tweaking these decoy styles */

.sIFR-hasFlash #content h1, /*.sIFR-hasFlash #content h2,*/ .sIFR-hasFlash #featured h2, .sIFR-hasFlash #intro h2, .sIFR-hasFlash #featured-poll h2, .sIFR-hasFlash #side h1 {
	visibility: hidden;
	letter-spacing: -4px;
}
.sIFR-hasFlash #featured-poll h2 {
	font-size: 14px !important;
	line-height: 18px !important;
}

.subhead {
	margin-bottom: 5px;
}


/* styles for popup tooltips */
/* ------------------------------------------------------------------------- */

span.help {
	font-size: 10px;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-top: 4px;
	}

body div#tooltip {
	position:absolute;
	z-index:1000;
	width:220px;
	background:#000;
	border:2px double #fff;
	text-align:left;
	padding:5px;
	min-height:1em;
	-moz-border-radius:5px;
	}
body div#tooltip p {
	margin:0;
	padding:0;
	color:#fff;
	font:11px/12px verdana,arial,sans-serif;
	}
body div#tooltip p em {
	display:block;
	margin-top:3px;
	color:#f60;
	font-style:normal;
	font-weight:bold;
	}
body div#tooltip p em span { 
	font-weight:bold;
	color:#fff;
	}
