*{margin: 0; padding: 0;}
body {
	font-family: Tahoma,Arial,Verdana, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 18px;
	color: #35354c;
	background: #39659d url(../images/body-bg.gif) 50% 0 repeat-x;}
/*-----------------------------------------
Typography Everything set to 18px baseline
|grid. use increments of 18px for images, 
logos etc to maintain this grid
-----------------------------------------*/

/*---------- LINKS ----------------------*/
a {cursor:pointer;}
a, a:link {
	text-decoration: underline;
	color: #00a2ad;
	font-weight: normal;}
a:visited {}
a:active {}
a:hover {text-decoration: none;}
/* displays icons next to PDF and WORD docs */
#pt-forms a[href$='.doc'], #pt-forms a[href$='.rtf'] {
 	width: 25px;
	height: 18px;
	text-indent: -999em;
	overflow: hidden;
	display: inline-block;
	background: transparent url(../images/icon_doc.gif) no-repeat center center;}
#pt-forms a[href$='.pdf'] { 
	width: 25px;
	height: 18px;
	text-indent: -999em;
	overflow: hidden;
	display: inline-block;
	background: transparent url(../images/icon_pdf.gif) no-repeat center center;}
.off-site a[href^="http:"] {
        background: url(../images/i-offsite.gif) 100% 50% no-repeat;
        padding-right: 25px;}
a.video-link {
	padding: 3px 27px 3px 0;
	background: url(../images/icon_video.gif) 100% 50% no-repeat;
}
#logo a {display: block; width: 368px; height: 162px; overflow: hidden;}
#footer li a {color: #a3cddb;}
a.sesame-link {font-size: 12px; color: #d3e7ee; text-decoration: none;}

/*------------------------
Headings*/

h1 {
	font-size: 30px;
	color: #3993b1;
	line-height: 36px;
	font-weight: bold;
	margin: 27px 0 9px 0;}
h1.replace {
	height: 63px;
	width: 310px;
	background-position: 0 0;
	margin: 27px 0 0;
	overflow: hidden;
	}
div.home h1.replace {width: 500px; height: 63px; margin-bottom: 9px; }
h1#logo {
	margin: 0;
	padding: 0;
	width: 368px;
	height: 162px;
	float: left;
	overflow: hidden;
	}
h2, dt {
	font-size: 18px;
	font-weight: normal;
	line-height: 27px;
	margin: 9px 0;
	color: #74afab;}
h2 em, dt em {color: #b0b0b0;}
h3 {
	font-size: 14px;

	font-weight: bold;
	}
h4 {
	font-size: 14px;
	line-height: 18px;
	margin: 18px 0 0 0;
	color: #b0b0b0;
	font-weight: bold;}
h5 {
	font-size: 12px;
	line-height: 18px;
	font-weight: bold;
	margin: 18px 0;}
#footer h5 {color: #ffffff; margin: 9px 72px;}
h6 {
	font-size: 11px;
	line-height: 18px;
	margin-top: 18px;
	font-weight: bold;
	color: #666666;}
img {
	display: block;
	border: 0;
	outline: 0;}
ol, ul, dl {
	list-style: none;
	margin: 9px 0;
}
dd {margin: 9px 0;}
dd ul {margin-left: 18px;}
dd ul li {margin-left: 18px;}
dl.address {margin: 0;}
dl.address dt, dl.address dd {margin: 9px 0 0;}
dl#links dt img {border: 2px solid #74afab; margin: 9px 0;}
dl#links dd {margin-bottom: 18px; border-bottom: 1px solid #74afab;}
ul.bullet {
	list-style: disc outside;
	display: block;
	margin-left: 18px;
}
ul.bullet li {margin-left: 18px;}
ul.bullet ul {list-style: disc outside; margin-left: 18px;}
ol {list-style: decimal outside; margin-left: 18px;}
ol li {margin-left: 18px;}
li, dd {
	font-size: 12px;
	line-height: 18px;}

#footer ul {
	margin: 0 144px 9px;
	padding-left: 0;
	list-style: none;
	text-align: center;}
#footer li {
	color: #a3cddb; 
	display: inline; 
	font-size: 12px;
	line-height: 18px; 
	margin-left: 0;
	list-style: none;
	display: inline; 
	white-space: nowrap;
	text-align: center;}
#footer li a {
	padding: 0 7px 0 10px;
	border-left: 1px solid #a3cddb;
	text-decoration: none;}
#footer li.first a {margin-left: 0; padding-left: 0; border-left: none;}

p {
	font-size: 12px;
	line-height: 18px;
	margin: 9px 0 9px 0;}
p.upgrade-flash {
	margin: 10px;
	padding: 10px;
}
p.caption {color: #666666; margin: 9px 36px;}
p.top-link {font-weight: bold; text-align: right; clear: both;}
li > p {margin-bottom: 16px;}
#address p {text-align: right; font-size: 11px; color: #35354c;}
#address p strong {color: #00749a;}
.center {text-align: center;}
.right {text-align: right;}
strong, b {	font-weight: bold;}
em {font-style:italic;}
sup, sub {font-size: 85%;}
q:before, q:after {/* remove quotes since IE doesn't understand :( */
    content: ""; }
q {font-style:italic; color: #9f70c2;}
hr {display: none;}
div.hr {border-top: 1px solid #74afab; height: 1px; margin: 18px 0;}
/*----------------------------- 
Shortcuts	
-----------------------------*/

/* Image Replacement -- add class="replace" to root element, i.e. <p> and add a bg image*/
.replace {
	letter-spacing : -1000em;
	line-height: 0;
	font-size: 0;
	overflow: hidden;
	text-indent: -999em;
}
/* Just for Opera, but hide from MacIE */

/*\*/html>body .replace {
	letter-spacing : normal;
	text-indent : -999em;
	overflow : hidden;
}
/* End of hack */


/*--------------------------------- 
Flash
---------------------------------*/
.flash {
	overflow: hidden;
	margin: 18px auto;
}
.flash-replaced .alt {
				display: block;
				height: 0px;
				position: absolute;
				overflow: hidden;
				width: 0px;
			}
#flash-home {
	width: 550px;
	height: 309px;
	position: absolute;
	top: 188px;
	left: 212px;
}
#photo-flash {width: 220px; margin: 18px 0 36px 9px; float: right; }
/*---------------------------------
Layout
---------------------------------*/
.img-right {float: right; clear: right; margin: 0 0 18px 18px; }
.img-left {float: left; clear: right; margin: 18px 36px 0 0;}
.img-center { margin: 9px auto 9px auto; text-align: center;}
#media-center, #pt-forms, #directions {
	width: 220px;
	float: right;
	clear: right;
	margin: 0 0 18px 18px;
	padding: 0 0 9px;
	border: 1px solid #00749a;
}
#media-center dt, #pt-forms dt, #directions dt {
	margin: 0 0 9px;
	padding: 3px 9px;
	color: #ffffff;
	background: #00749a;
}
#media-center dd, #pt-forms dd, #directions dd {margin: 0 9px 9px;}

#container {width: 796px; position: absolute; top: 0; left: 50%; margin-left: -398px; background: transparent url(../images/content-bg-tile.gif) 0 0 repeat-y;}
#inner-container {background: url(../images/content-bg.gif) 0 0 no-repeat; padding-top: 18px; width: 796px; min-height: 600px;	_height: 600px;}
#header {margin: 0 18px; height: 162px; }
#address {padding: 27px 0 0; margin-right: 18px;}
#nav-column {
	position: absolute;
	left: 11px;
	top: 188px;
	width: 196px;
	height: 342px;
	padding: 0;
	background: url(../images/nav-bg.gif) 0 0 no-repeat;
}
#content {
	margin: 0 27px 0 227px;
}
#content.home {margin-top: 345px;}
#footer {
	background: #39659d url(../images/footer-top.gif) 0 0 no-repeat;
	padding: 9px 0;
	text-align: center;
}


/*---------------------------------
Navigation
---------------------------------*/
#utility {
	width: 124px;
	height: 36px;
	position: absolute;
	top: 18px;
	left: 50%;
	margin-left: 200px;
}
#pt-login {display: block; width: 124px; height: 36px;} 
#nav {
	margin: 36px 0 0;
}
#nav li {display: inline;}
#nav li a {display: block;}
#nav ul {
	position: absolute;
	left: -999em;
	margin: -27px 0 0 196px;
	padding: 3px 0;
	width: 150px;
	background: #d3e7ee;
}
#nav ul li a {
	padding: 3px 9px 3px 18px;
	font-size: 11px;
	color: #679999; 
	text-decoration: none;
}
#nav ul li a:hover, #nav ul li a.active {
	background: url(../images/arrow.gif) 0 50% no-repeat;
	color: #336666;
}
#nav li:hover {position: static;}
#nav li:hover ul, #nav li.sfhover ul {
	left: 0;
	display: block;
}
#nav.replace ul * {
	letter-spacing: normal;
	line-height: 18px;
	overflow: visible;
	text-indent: 0;
}
#nav-choose, #nav-office, #nav-ortho, #nav-braces, 
#nav-emergency, #nav-game, #nav-contact, #nav-home {
	width: 196px;
	height: 27px;
	overflow: hidden;
	text-indent: -999em;
	background: url(../images/nav.gif) no-repeat;}


/*---------------------------------
Image Replacement
---------------------------------*/
#logo a {background: url(../images/logo.gif) 0 0 no-repeat;}

/* Nav Elements */
#pt-login {background: url(../images/pt-login.gif) 0 0 no-repeat;}
#pt-login:hover {background-position: 0 -36px;}

#nav-choose {background-position: 0 0;}
li:hover #nav-choose, li.sfhover #nav-choose, li.active #nav-choose {background-position: -196px 0;} 
#nav-office {background-position: 0 -27px;}
li:hover #nav-office, li.sfhover #nav-office, li.active #nav-office {background-position: -196px -27px;} 
#nav-ortho {background-position: 0 -54px;}
li:hover #nav-ortho, li.sfhover #nav-ortho, li.active #nav-ortho {background-position: -196px -54px;}
#nav-braces {background-position: 0 -81px}
li:hover #nav-braces, li.sfhover #nav-braces, li.active #nav-braces {background-position: -196px -81px;}
#nav-emergency {background-position: 0 -108px;}
li:hover #nav-emergency, li.sfhover #nav-emergency, li.active #nav-emergency {background-position: -196px -108px;}
#nav-game {background-position: 0 -135px;}
li:hover #nav-game, li.sfhover #nav-game, li.active #nav-game {background-position: -196px -135px;}
#nav-contact {background-position: 0 -162px;}
li:hover #nav-contact, li.sfhover #nav-contact, li.active #nav-contact {background-position: -196px -162px;}
#nav-home {background-position: 0 -189px}
li:hover #nav-home, li.sfhover #nav-home, li.active #nav-home {background-position: -196px -189px;}


/*---------------------------
Sesame Forms
---------------------------*/

/* Global form styles */
.referral-form, .appointment-form, .comment-form {width: 500px;}

fieldset {border: none; padding: 9px 0;}
fieldset div {clear: both;}
.form-header {border-bottom: 1px solid #3993b1;/*optional, change color to match site*/}
.form-header h3 {margin: 0 0 9px;}
.form-header p {margin: 0 0; padding-bottom: 18px;}
.form-footer {padding-top: 18px; text-align: center; border-top: 1px solid #3993b1;/*optional, change color to match site*/}
.form-footer button {/*these styles control the look of the button, change as necessary*/
	clear:both;/*do not change, forces button to sit below floated elements*/
	margin: 9px auto;/*do not change, controls positioning*/
	display: block;
	width:125px;
	height:31px;
	background:#0a799e;/* customize me! */
	border: 1px solid #0a799e;
	text-align:center;
	line-height:31px;
	color:#ffffff;/* customize me! */
	font-size:12px;
	font-weight:bold;}


/* referral form */
.referral-form {
	margin: 0 0 18px;
	padding: 10px;
	border:solid 2px #3993b1;/*optional, change color to match site*/
	background:#fafafa;/*optional, change color of background*/}
.referral-form fieldset {border: none; padding: 9px 0;}
.referral-form label {/*floats labels left*/
	font-size: 12px;
	display:block;
	font-weight:bold;
	text-align:right;
	width:45%;
	float:left;
	line-height: 18px;
	padding-top: 4px;}
.referral-form label span {/*sits below labels; holds instructions*/
	color:#666666;
	display:block;
	font-size:11px;
	font-weight:normal;
	text-align:right;
	width:100%;}
.referral-form input, .referral-form textarea {
	float:left;
	font-size:12px;
	padding:4px 2px;
	border:solid 1px #3993b1;
	width:45%;
	margin:9px 0 9px 2%;
	background: #ffffff;}
.referral-form p.radio, .referral-form p.verification {
	clear: both;
	margin: 9px 0 9px 47%;
	font-size: 12px;}
.referral-form p.radio-float {
	clear: none;
	float:left;
	width: 45%;
	padding:0;
	margin:9px 0 9px 2%;}
.referral-form p.verification {margin-top: 0;}
.referral-form p.verification img {border: 1px solid #3993b1;}
.referral-form p.radio input, .referral-form p.radio-float input {
	float: none;
	width: auto;
	margin: 0 0 0 2%;
	padding: 4px 2px;}

/* appointment form */
.appointment-form {
	margin: 0 0 18px;
	padding: 10px;
	border:solid 2px #3993b1;/*optional, change color to match site*/
	background:#fafafa;/*optional, change color of background*/}
.appointment-form fieldset {border: none; padding: 9px 0;}
.appointment-form label {/*floats labels left*/
	font-size: 12px;
	display:block;
	font-weight:bold;
	text-align:right;
	width:45%;
	float:left;
	line-height: 18px;
	padding-top: 4px;}
.appointment-form label span {/*sits below labels; holds instructions*/
	color:#666666;
	display:block;
	font-size:11px;
	font-weight:normal;
	text-align:right;
	width:100%;}
.appointment-form input, .appointment-form select, .appointment-form textarea {
	float:left;
	font-size:12px;
	padding:4px 2px;
	border:solid 1px #3993b1;
	width:45%;
	margin:9px 0 9px 2%;
	background: #ffffff;}
.appointment-form p.radio, .appointment-form p.verification {
	clear: both;
	margin: 9px 0 9px 47%;
	font-size: 12px;}
.appointment-form p.radio-float {
	clear: none;
	float:left;
	width: 45%;
	padding:0;
	margin:9px 0 9px 2%;}
.appointment-form span#found-other {width: 100%;}
.appointment-form span#found-other input {margin-left: 47%; background: #fff0b2}
.appointment-form p.verification {margin-top: 0;}
.appointment-form p.verification img {border: 1px solid #3993b1;}
.appointment-form p.radio input, .appointment-form p.radio-float input {
	float: none;
	width: auto;
	margin: 0 0 0 2%;
	padding: 4px 2px;}

/* comment form */	
.comment-form {
	margin: 0 0 18px;
	padding: 10px;
	border:solid 2px #3993b1;/*optional, change color to match site*/
	background: #fafafa;}
.comment-form li {font-weight: bold;}
.comment-form label {/*floats labels left*/
	font-size: 12px;
	display:block;
	font-weight:bold;
	text-align:right;
	width:45%;
	float:left;
	padding-top: 4px;}
.comment-form label span {/*sits below labels; holds instructions*/
	color:#666666;
	display:block;
	font-size:11px;
	font-weight:normal;
	text-align:right;
	width:100%;}
.comment-form .label-block label {float: none; clear: both; width: 100%; text-align: left;}
.comment-form input, .comment-form textarea {
	float:left;
	font-size:12px;
	padding:4px 2px;
	border:solid 1px #3993b1;
	width:45%;
	margin:9px 0 9px 2%;
	background: #ffffff;}
.comment-form p.verification {
	clear: both;
	margin: 9px 0 9px 47%;
	font-size: 12px;}
.comment-form p.radio-float {
	clear: none;
	float:left;
	width: 45%;
	padding:0;
	margin:9px 0 9px 0;}
.comment-form p.verification {margin-top: 0;}
.comment-form p.verification img {border: 1px solid #3993b1;}
.comment-form p.radio input, .comment-form p.radio-float input {
	float: none;
	margin: 0 0 0 0;
	padding: 4px 2px;
	width: auto;}
.comment-form p.radio span {padding: 0 2% 0 0;}
.comment-form .radio {text-align: left; font-weight: normal;}
.comment-form .comments-box label {float: none; font-weight: normal; display: block; text-align: left;}
.comment-form .comments-box textarea {float: none; margin-left: 0; width:95%;
}

/* Mini-Contact Form */
.contact-form {
	float: right; 
	clear: right; 
	margin: 0 0 36px 36px;	
	width: 225px; 
	padding: 10px;
	border:solid 2px #3993b1;/*optional, change color to match site*/
	background:#fafafa;/*optional, change color of background*/}
.contact-form fieldset {border: none; padding: 9px 0;}
.contact-form li {font-weight: bold;}
.contact-form label {display: none;}
.contact-form input, .contact-form textarea {
	font-size:12px;
	padding:4px 2px;
	border:solid 1px #3993b1;
	width:90%;
	margin:9px 10px;
	background: #ffffff;}



/*----------------------------
Sesame Content
----------------------------*/
.left {
float:left;
margin:0 9px 18px 0;}
img.right {
float:right;
margin:0 0 18px 9px;}
.clear {
clear:both;}
div.media-center {
display:inline-block;
overflow:auto;
padding:9px;}
div.media-center img {
border:1px solid #FFF;}

div#sesame-game {
background: #000;
line-height: 0;
margin: 10px auto;
text-align: center;
width: 400px}

ul#sesame-games {
list-style: none;
margin: 0 18px 0 0;
padding: 0}

ul#sesame-games li {
clear: both;
display: block}

ul#sesame-games img {
border: 0;
margin: 0 0 10px 10px}

ul#sesame-games a.button {
float:right;
height:85px;
width:200px}

ul#sesame-games p {
padding-bottom: 1em}


