/* Tomassetti */

* {margin: 0; padding: 0;}
body {
	text-align: center; 
	background: #003266; 
	color: #20213a;
	font-family: Arial, Verdana, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 18px;}
/*-----------------------------------------
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: #608fbf;
	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: 417px; height: 150px; overflow: hidden;}
#footer li a {color: #ffffff;}
#social { width:162px; text-align:center; margin:5px auto; }
#social img { display:inline; }
a.sesame-link {font-size: 10px; color: #f0e8ca; text-decoration: none;}
.attention {color:#003266; font-weight:bold; font-size:14px;}

/*------------------------
Headings*/

h1 {
	font-size: 18px;
	color: #ffff46;
	line-height: 18px;
	margin:0px; margin-bottom:10px;
}
/*h1.replace {
	height: 30px;
	margin: 35px 0 0 90px;
	overflow: hidden;
	border:#00FF33 1px solid;
	}*/
h1.replace {
	height: 30px;
	padding: 0px 0px 18px 140px;
	}
div.home h1.replace {
	margin-left:410px;
	margin-top:0px;
	padding-bottom:9px;
}
/*h1#title.replace {*/
h1#logo {
	position:absolute;
	left:50%;
	top: 0px;
	margin: 0px 0px 0px -400px;
	padding: 0;
	width: 417px;
	height: 150px;
	}
h2, dt {
	font-size: 18px;
	font-weight: normal;
	line-height: 27px;
	margin: 9px 0 9px 0px;
	color: #003e7e;}
h2 em, dt em {color: #003e7e;}
h3 {
	font-size: 14px;
	line-height: 16px;
	margin: 18px 0 0 0px;
	font-weight: bold;
	color:#003266;
	}
h4 {
	font-size: 14px;
	line-height: 18px;
	margin: 18px 0 0 0px;
	color: #b0b0b0;
	font-weight: bold;}
h5 {
	font-size: 12px;
	line-height: 18px;
	font-weight: bold;
	margin: 18px 0 0 18px;}
#footer h5 {color: #f0e8ca; margin: 9px 72px; font-size:11px;}
h6 {
	font-size: 11px;
	line-height: 18px;
	margin-top: 18px;
	font-weight: bold;
	color: #666666;}
img {
	display: block;
	border:1px solid #003266;
	outline: 0;}
ol, ul, dl {
	list-style: none;
	margin: 9px 0 9px 18px;
}
dd {margin: 9px 0 0 18px;}
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 18px;}
dl#links dt img {border: 2px solid #24265e; margin: 9px 0;}
dl#links dd {margin-bottom: 18px; border-bottom: 1px solid #ffffff;}
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: #ffffff; 
	display: inline; 
	font-size: 11px;
	line-height: 18px; 
	margin-left: 0;
	list-style: none;
	display: inline; 
	white-space: nowrap;
	text-align: center;}
#footer li a {
	padding: 0 0px 0 4px;
	border-left: 1px solid #ffffff;
	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 0px;}
p.upgrade-flash {
	margin: 10px;
	padding: 10px;
	border:1px solid #655f4e;
	background-color:#e5dcc3;
}
p.home {
	margin-left:410px;
}
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 {font-size: 11px; color: #655f4e; line-height:14px; padding-left:60px;
}
#address p strong {color: #655f4e;}
.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: 355px;
	height:230px; 
/*	left: 50%; */
/*	top: 296px;*/
	margin: 50px 0 0 10px;
	padding:2px;
	background:#655f4e;
	float:left;
}
/*---------------------------------
Layout
---------------------------------*/
.img-right {float: right; clear: right; border:1px solid #003266; margin: 0 0 18px 18px; }
.img-left {float: left; clear: right; border:1px solid #003266; margin: 18px 36px 0 0;}
.img-center { margin: 9px auto 9px auto; border:1px solid #003266; text-align: center;}
#media-center, #directions {
	width: 220px;
	float: right;
	clear: right;
	margin: 0 0 18px 18px;
	padding: 0 0 9px;
	border: 1px solid #003266;
}
#media-center dt, #directions dt {
	margin: 0 0 9px;
	padding: 3px 9px;
	color: #ffffff;
	background: #003266;
}
#media-center dd, #directions dd {margin: 0 9px 9px;}

#patientforms {
	width: 220px;
	float: right;
	clear: right;
	margin: 0 0 18px 18px;
	padding: 0 0 9px;
	border: 1px solid #003266;
}
#container {
	width: 100%; 
	background:#cfc29f url(images/body-bg.gif) 0 0 repeat-x;
	text-align:left; 
}
#header {height: 187px; }
#address {
	position:absolute;
	top:60px;
	left:50%;
	margin-left:150px;
	padding: 0 0 0 10px;
	text-align:right;
}
#nav-column {
	position: absolute;
	left: 50%;
	top: 151px;
	margin: 0 0 0 -460px;
	width: 916px;
	height: 36px;
	padding: 0;
}
#inner-container {
	width: 905px; 
	margin: 0 auto;
	background:#ded0a9 url(images/content-bg.gif) 0 0 no-repeat;
	padding:0 0 0 0; 
	min-height:500px;
	_height:500px;
}

#content {
	margin:0px 37px 15px 20px;
	padding-top:10px;
	padding-left: 30px;
	background:url(images/inner-bg.gif) 0 0 no-repeat;
}

#consultation {
	width:640px;
	height:40px;
	margin:0;
	padding:0px 0px 0px 408px;
	outline:none;
}

#consultation img.button-one {
	padding-right:10px;
	float:left;
}

#content.home {
	background:url(images/inner-bg.gif) 315px 0px no-repeat;
	padding-top:10px;
	padding-left:0px;
	margin:0px 30px 15px 20px;
}

#content.home #consultation {
	width:440px;
	height:40px;
	margin:0;
	padding:0px 0px 0px 328px;
	outline:none;
}

#consultation img {
	border:0px;
	outline:none;
}
#logo-banners {
	background: transparent url(images/logos-bg.gif) 0 0 no-repeat;
	height:155px;
	padding: 83px 0px 0px 50px;
	margin: 0px;
}

#logo-banners img {
	float:left;
	margin:0px 20px 0px 0px;
	padding:0px;
	border:none;
	outline:none;
}

#footer {
	width: 100%; 
	background:url(images/footer-bg.gif) 0 0 repeat-x; 
	padding: 25px 0 10px 0;
	text-align: center;
	min-height:100px;
	_height:100px;
}


/*-------------------------------
Patient/Doctor Logins
-------------------------------*/

#utility {
	width: 242px;
	height: 30px;
	position: absolute;
	top: 11px;
	left: 50%;
	margin-left:198px;
}

#pt-login {display: block; width: 122px; height: 30px; margin: 0px 0px 0px 0px;} 
#dr-login {display: block; width: 120px; height: 30px; margin: -30px 0px 0px 122px;}


/*---------------------------------
Navigation
---------------------------------*/

#nav, #nav ul {
	margin: 0px 0px 0px 16px;
	padding: 0px;
	list-style:none;
	line-height:1;
}

#nav a {display:block; margin:0; padding:0;}
#nav li {float: left; position:relative; margin:0; padding:0;}

/*---------------------------------
Subnavigation
----------------------------------*/
#nav li ul li {
	float:none;
	display:inline;
}

#nav li ul {
	position:absolute;
	left:-999em;
	color:#ffffff; 
	font-size:11px;	
	font-weight:bold;
	background:#667984;
	margin: 0px; 
	padding: 0px;
	border:1px solid #FFFFFF;
	width:170px;
}

#nav li ul a {
	display:block;
	text-decoration:none;
	font-weight:bold;
	color:#ffffff;
	padding:5px 0px 5px 10px;
	width:160px;
}

#nav li ul a:hover {
	text-decoration:none;
	color:#ffffff;
	background-color:#476782;
	font-weight:bold;
}

#nav li:hover ul, #nav li.sfhover ul {
	z-index: 1000;
	left:auto;
	color:#ffffff;
	text-decoration: none; 
}

/*---------------------------------
Sub - Subnavigation
----------------------------------*/

#nav li ul ul {
	margin: -20px 0 0 150px;
}

#nav li:hover ul ul, #nav li.sfhover ul ul {
	left: -999em;
}

#nav li:hover ul, #nav li ul li:hover ul, #nav li.sfhover ul, #nav li li.sfhover ul {
	left: auto;
}


#nav-home, #nav-office, #nav-new-patients, #nav-ortho, #nav-braces, #nav-emergency, #nav-game-room, #nav-contact {
	height: 36px;
	text-indent: -999em;
	background: url(images/navigation.gif) 0 0 no-repeat;
}

/*---------------------------------
Image Replacement
---------------------------------*/
#logo a {background: url(images/logo.gif) 0 0 no-repeat;}

/* Utility Elements */
#pt-login {background: url(images/pt-login.gif) 0px 0px no-repeat;}
#pt-login:hover {background-position: 0 -30px;}
#dr-login {background: url(images/dr-login.gif) 0px 0px no-repeat;}
#dr-login:hover {background-position: 0 -30px;}

/* Nav Elements */

#nav-home {background-position: 0 0px; width:62px;}
li:hover #nav-home, li.sfhover #nav-home {background-position: 0px -36px;}
li.active #nav-home {background-position: 0px -72px;}

#nav-office {background-position: -62px 0px; width:137px;}
li:hover #nav-office, li.sfhover #nav-office {background-position: -62px -36px;}
li.active #nav-office {background-position: -62px -72px;} 

#nav-new-patients {background-position: -200px 0px; width:110px;}
li:hover #nav-new-patients, li.sfhover #nav-new-patients {background-position: -200px -36px;}
li.active #nav-new-patients {background-position: -200px -72px;}

#nav-ortho {background-position: -310px 0px; width:153px;}
li:hover #nav-ortho, li.sfhover #nav-ortho {background-position: -310px -36px;}
li.active #nav-ortho {background-position: -310px -72px;}

#nav-braces {background-position: -463px 0px; width:88px;}
li:hover #nav-braces, li.sfhover #nav-braces {background-position: -463px -36px;}
li.active #nav-braces {background-position: -463px -72px;}

#nav-emergency {background-position: -551px 0px; width:126px;}
li:hover #nav-emergency, li.sfhover #nav-emergency {background-position: -551px -36px;}
li.active #nav-emergency {background-position: -551px -72px;}

#nav-game-room {background-position: -677px 0px; width:129px;}
li:hover #nav-game-room, li.sfhover #nav-game-room {background-position: -677px -36px;}
li.active #nav-game-room {background-position: -677px -72px;}

#nav-contact {background-position: -806px 0px; width:89px;}
li:hover #nav-contact, li.sfhover #nav-contact {background-position: -806px -36px;}
li.active #nav-contact {background-position: -806px -72px;}


/*---------------------------
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 #003266;/*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 #003266;/*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:#003266;/* customize me! */
	border: 1px solid #003266;
	text-align:center;
	line-height:31px;
	color:#ffffff;/* customize me! */
	font-size:12px;
	font-weight:bold;}


/* referral form */
.referral-form {
	margin: 0 0 0 18px;
	padding: 18px;
	border:solid 2px #003266;/*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 #003266;
	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 #003266;}
.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: 18px 0 0 18px;
	padding: 18px;
	border:solid 2px #003266;/*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 #003266;
	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: #003266}
.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;}


/*----------------------------
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}

p.small {
	font-size: 10px;
	}
img.right-border {
	border: solid 1px #333;
	float: right;
	margin: 0 0 15px 15px;
	}
div.learn-more {
	background-color: #fff;
	color: #036;
	width: 50%;
	border: solid 1px #fff;
	padding: 0;
	margin: 15px 18px 15px 15px;
	float: right;
	}
div.learn-more a {
	color: #036;
	}
.learn-more h3 {
	background-color: #97AFC2;
	color: #fff;
	margin: 0 0 10px 0;
	padding: 10px;
	}
.learn-more p {
	padding: 0;
	margin: 0 0 10px 0;
	}
.clear {
	clear: both;
	}
#video-suresmile {
	width: 320px;
	height: 206px;
	}
p.flash_notice {
	margin: 18px;
	padding: 9px;
	color: #ff0000;
	border: 1px dotted #ff0000;
	background: #ffffff;
	text-align: center;
	}