/* 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, legend, table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
object {outline: none;}
body {line-height:1.5;}
table {border-collapse:separate;border-spacing:0;}
caption, th, td {text-align:left;font-weight:normal;}
table, td, th {vertical-align:middle;}
a img {border:none;}
.hide {display:none;}
.flash-replaced .alt {display:none;}


/***************************************************************************** universal styles ***/
html {
  height: 100%;
}

body {
  font-family:Helvetica, "Helvetica Neue", Arial, serif;
  background: #dacfaf url(../images/bg.jpg) repeat top left;
  color: #56422a;
  font-size: 85%;
  height: 100%;
  line-height:1.4em;
}

h2 {
	color:#56422a;
	font-size:146.5%;
	line-height:1.5em;
	margin-bottom:15px;
	font-weight:300;
	letter-spacing:0.02em;
}

h3 {
  color:#3f63af;
  font-weight:bold;
  font-size:108%;
  margin-bottom:14px;
}

h4 {
  color:#56422a;
  font-style:italic;
  font-size:108%;
  margin-bottom:26px;
}

a {
  color: #3f63af;
}

a:hover,
a:focus,
a:active {
  text-decoration: none;
  outline: none;
}

b {
  font-weight:bold;
}

/***************************************************************************** general layout styles ***/
#container {
  width:920px;
  margin:0 auto;
}

/*** header ***/
#hd {
	height:329px;
	background: url(../images/header-bg.png) no-repeat top left;
	position:relative;
}

#hd a#address {
  position:absolute;
  top:24px;
  left:209px;
  text-decoration:none;
  width:300px;
  height:61px;
	display:block;
  cursor:pointer;
  text-transform:capitalize
}
#namef { font-family:"Times New Roman", Times, serif; font-size:16px; font-weight:bold; color:#000;text-shadow: 2px 2px 2px #dacfaf; text-transform:capitalize; text-align:center; margin-left:0px;}
#addf{font-family:"Times New Roman", Times, serif; font-size:13px; font-weight:bold; color:#000;text-shadow: 2px 2px 2px #dacfaf; text-transform:capitalize; text-align:center; margin-left:5px}
#phf {font-family:"Times New Roman", Times, serif; font-size:18px; font-weight:bold; color:#000;text-shadow: 2px 2px 2px #dacfaf; text-transform:capitalize; text-align:center; margin-left:50px; }

#callf {font-family:"Times New Roman", Times, serif; font-size:18.3px; font-weight:normal; color:#8db1fb; text-transform:capitalize; position:absolute; text-align:center; left: 423px; top:805px; z-index:999}

h1#logo a {
  width:462px;
  height:51px;
	display:block;
	margin:220px 22px 0 0;
	float:right;
	background: url(../images/logo.png) no-repeat top left;
	text-indent:-9999px;
}

/*** body ***/
#bd {
  background: #dacfaf url(../images/container-bg.png) repeat-y top left;
  overflow:hidden;
  width:100%;
}

/*** sidebar ***/
#sidebar {
  margin-top:263px;
	position:relative;
	width:263px;
	float:left;
  height:427px;
  z-index:100001;
}

/* sidebar callouts */
#sidebar ul.callouts {
	position:absolute;
	padding-left:0;
	margin-left:25px;
  z-index:100001;
}

#sidebar ul.callouts li {
	list-style:none;
}

#sidebar ul.callouts li a {
	display:block;
	background-position:top left;
	background-repeat:no-repeat;
  text-indent:-9999px;
	width:217px;
}

ul.callouts li.office-tour a {
	background-image: url(../images/callouts/tour-office.png);
	height:179px;
	margin-bottom:29px;
}

ul.callouts li.invisalign a {
	background-image: url(../images/callouts/invisalign.png);
	height:127px;
}

ul.callouts li.damon-system a {
	background-image: url(../images/callouts/damon.png);
	height:82px;
}

#social-icons {
	display:block;
	margin:25px;
	padding-top:415px;
	width:217px;
	text-align:center;
}


/* main navigation */
#nav {
	top:270px;
	margin-left:10px;
	width:263px;
  background: url(../images/nav-bg.png) no-repeat top left;
	position:absolute;
	height:364px;
}

#nav ul li a {
  display:block;
  width:218px;
  background-position:top right;
	background-repeat:no-repeat;
	position: relative;
	color: #e1e1c7;
	font-weight: normal;
	text-decoration: none;
}

#nav ul {
	padding: 0;
	list-style: none;
	position:absolute;
	margin-left:9px;
}

#nav li {
	display: inline;
	margin:0;
	padding:0 !important;
	width:263px;
}

#nav li:hover ul, #nav li.sfhover ul {
	left: auto;
	display: block;
}

#nav li ul li {
	float:none;
}

#nav li ul {
	position: absolute;
	left: -999em;
	top:auto;
	z-index:100000;
	margin-top:-36px;
	margin-left:244px;
	border:1px solid #dacfaf;
	background:#dacfaf url(../images/subnav-bg.png) repeat-x top left;
}

#nav li ul li a {
	height:31px;
	line-height:31px;
	width:205px;
	padding:3px 10px;
	margin:0 5px;
  color:#000;
	cursor:pointer;
	text-transform:uppercase;
  font-size:85%;
	letter-spacing:0.05em;
	border-bottom:1px dotted #3f63af;
	
}

#nav li ul li.last a {
  border-bottom:0;
}

#nav li ul li a:hover {
	color:#3f63af;
}

#nav li:hover ul, #nav li.sfhover ul {
	left: auto;
} 

#nav li a.head, #nav li a#meet-the-team, #nav li a#for-new-patients, #nav li a#about-orthodontics,
#nav li a#about-braces, #nav li a#orthodontic-treatments, #nav li a#first-aid,
#nav li a#contact-us,#nav li a#home {
	overflow: hidden; 
	text-indent: -9999px; /* Indents the rich-text so it does not show */
	width: 244px;
	cursor: pointer;
}

a#meet-the-team {background-image:url(../images/nav/meet-the-team.png);height:33px;}

a#for-new-patients {background-image:url(../images/nav/for-new-patients.png);	height:36px;}

a#about-orthodontics {background-image:url(../images/nav/about-orthodontics.png);	height:36px;}

a#about-braces {background-image:url(../images/nav/about-braces.png);	height:36px;}

a#orthodontic-treatments {background-image:url(../images/nav/orthodontic-treatments.png);	height:36px;}

a#first-aid {background-image:url(../images/nav/first-aid.png);	height:36px;}

a#contact-us {background-image:url(../images/nav/contact-us.png);	height:36px;}

a#home {background-image:url(../images/nav/home.png);height:32px;}

/* Set the cursor to default arrow so link does not appear clickable */
#nav .active {cursor: default}

#nav li.sfHover a, #nav li,
#nav li.active a, #nav a:hover, 
#nav a:active, #nav a:focus, #nav li.sfhover a,
#nav li:hover, #nav li.sfHover {
  background-position: 0 0 !important;
}

/*** content ***/
#content {
	width:584px;
	padding:0 27px;
	margin:0 5px 10px 10px;
	line-height:1.4em;
	font-size:93%;
	position:relative;
	float:left;
	background:url(../images/content-bg.png) repeat-y 0 5px;
  min-height:743px;
  padding-bottom:10px;
  overflow:hidden;
}

#content-inside {
  position:relative;
  z-index:5;
}

#content-inside p, #content-inside ul {
  margin-bottom:18px;
}

#content-inside ul {
  margin-left:13px;
}

#content-inside ul li {
  list-style-image: url(../images/bullet.png);
}

#content-top, #content-btm {
  position: absolute;
	z-index: 4;
	left:0;
}

#content-top {
	top: 0;
}

#content-btm {
	bottom: 0;
}

/*page title */
h1.headline {
	width:620px;
	height:26px;
  margin:0 0 15px 0;
  color:#3f63af;
  font-size:182%;
}

/*** footer ***/
#ft {
  height:57px;
  font-size:77%;
  text-align:center;
  background: url(../images/footer-bg.png) no-repeat top center;
  clear:both;
  margin-bottom:30px;
  color:#dacfaf;
  padding-top:30px;
  letter-spacing:0.04em;
}

#ft a {
  color:#dacfaf;
  text-decoration:none;
}

#ft a:hover {
  text-decoration:underline;
}

.text_nav {
  margin-bottom:2px;
}

.ft-bullet {
  margin:0 7px 3px 7px;
}

/***************************************************************************** page specific styles */
/*** homepage ***/
.flash p {
  background: #ff2f30;
  border: 1px solid #d02026;
  color: #fff;
  line-height: 18px;
  padding: 10px;
}

.flash a {
  color: #fff;
  font-weight: bold;
}

#flash-homepage {
  height: 347px;
  width: 580px;
  margin:0 0 28px 0;
  z-index:1;
  position:relative;
}

img#call-today {
  margin:-40px 0 10px 15px;
  position:relative;
  z-index:8;
}

p#logos {
  margin:10px 0;
}

img#logo-aao {
  margin-top:0px;
  float:left;
}

img#logo-ada {
  margin:5px 30px 0 30px;
  float:left;
}

img#logo-abo {
  margin:10px 0 20px 0;
  float:left;
}

/*** sub pages ***/
/* sub navigation */
#content p.sub_nav {
  margin:0 0 29px -25px;
  background: url(../images/section-top.png) no-repeat top left;
  height:31px;
  padding:13px 0 0 19px;
}

p.sub_nav a {
  display:inline-block;
  padding:0 6px;
  line-height:2em;
  text-decoration:none;
}

p.sub_nav a.active {
  color:#aabcdf;
}

p.sub_nav a:hover {
  text-decoration:underline;
}

/* site map, 404, 500 */
body.site-map #content ul a,
body.page-not-found #content ul a,
body.internal-server-error #content ul a {
  color:#56422a;
}

body.site-map #content ul li,
body.page-not-found #content ul li,
body.internal-server-error #content ul li {
  list-style-image:none;
  list-style:none;
}

body.site-map #content ul li ul,
body.page-not-found #content ul li ul,
body.internal-server-error #content ul li ul {
  margin-left:35px;
}

body.site-map #content ul li li,
body.page-not-found #content ul li li,
body.internal-server-error #content ul li li {
  list-style-image: url(../images/bullet.png);
}

/***************************************************************************** elements */
p.back-to-top a {
  background: url(../images/back-to-top.png) no-repeat top right;
  width:147px;
  height:18px;
  text-indent:-9999px;
  float:right;
  margin:5px 0 10px 0;
  display:block;
}

/* columns */
.col-wrapper {
  clear:both;
  width:580px;
  position: relative;
  overflow:hidden;
}

/* 2 columns */
.col-wrapper .col {
  float:left;
  width:230px;
  display:inline;
  margin-right:6px;
}

/* 3 columns */
.col-wrapper .col-3 {
  float:left;
  width:168px;
  display:inline;
  margin-right:20px;
}

.col-wrapper .last {
  margin-right:0;
}

.staff img {
  border: solid 4px #93b3f6;
  width:160px;
  margin-bottom:6px;
}

.staff {
  text-align:center;
}

.staff .col-3 {
  margin-bottom:10px;
}

.staff .name {
  font-size:116%;
  display:block;
}

/* office tour */
#content ul.slideshow, #content ul#cycle-office-tour li {
	list-style: none; 
  list-style-image:none !important;
	margin: 0; 
	padding: 0;}
#slideshow-container {
	background: #93b3f6; 
	border: solid 1px #afa28c; 
	width: 555px; 
	height: 350px; 
	padding: 10px;
	position: relative;}
#caption {
	margin: 10px 12px;
	height: 30px; /* Adjust this if caption text runs over two lines long */
	display: block;
	font-weight: bold;
	font-size: 1.17em;}
ul.slideshow img {
	width: 555px; 
	height: 350px;}
.office-tour-nav {
	background: #93b3f6; 
	position: absolute; 
	z-index: 50; 
	bottom: 10px;
	padding: 3px 3px 0 3px;}
.office-tour-nav a {
	text-decoration: none; 
	font-size: 12px; 
	padding: 5px; 
	margin: 0 3px;}
.office-tour-nav a.activeSlide {color: #fff;}


/* SESAME CSS */
img.right, .map {
	margin: 0 0 15px 15px;
	float: right;
	clear: right;
	}
img.left {
	margin: 0 15px 15px 0;
	float: left;
	clear: left;
	}
img.left-border {
	float: left;
	clear: left;
	margin: 5px 15px 15px 0;
	border: solid 4px #93b3f6;
	}
img.right-border {
	float: right;
	clear: right;
	margin: 5px 0 15px 15px;
	border: solid 4px #93b3f6; 
	}	
p.flash_notice {
	margin: 18px;
	padding: 9px;
	color: #ff0000;
	border: 1px dotted #ff0000;
	background: #ffffff;
	text-align: center;
	}
.clear {clear: both;}
/* This styled div acts as the hr for most browsers */
div.hr {
	height: 0px;
	background-color: #eee; /* Customize me! */
	border: solid 1px #eee; /* Customize me! */
	border-width: 1px 0 0 0; /* Customize me! */
	margin: 20px 0;
	padding: 0;
	clear: both;
	}
/* This is the backup for screen readers */
hr {
	display: none;
	height: 0px;
	background-color: #eee;
	border: solid 1px #eee;
	border-width: 1px 0 0 0;
	clear: both;
	}
/* Clear Fix */
.clear {clear: both;}
.cf:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	}
.cf {display: inline-block;} /*this trips hasLayout for ie7*/
.cf {display: block;} /*this returns it back to normal*/
* html .cf {height: 1px;}

div.box {
	float: right;
	clear: right;
	width: 334px;
	background-color: #93b3f6; 
	padding: 5px 0 5px 5px;
	margin: 0 0 20px 20px;
	border: solid 1px #afa28c;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
div.box img {
	float: left;
	border: solid 1px #afa28c; 
	margin-right: 5px;
}
div.box p {
	float: left;
	width: 50%;
	margin: 0;
	padding: 0;
}











/* Emergency Care */
ul#toggle-emergency {
	list-style: none;
	margin: 0 0 1em 0;}
	ul#toggle-emergency li {
  	list-style-image: none;
		border: solid 1px #fff;
		border-width: 0 0 1px 0;
		padding: 1em 0;
		margin: 0;}
.general-soreness {
	background: url(http://media.sesamehost.com/images/emergency-care/general-soreness.gif) no-repeat;
	width: 80px;
	height: 60px;}
.headgear {
	background: url(http://media.sesamehost.com/images/emergency-care/headgear.gif) no-repeat;
	width: 80px;
	height: 60px;}
.loose-appliance {
	background: url(http://media.sesamehost.com/images/emergency-care/loose-appliance.gif) no-repeat;
	width: 80px;
	height: 60px;}
.loose-bracket {
	background: url(http://media.sesamehost.com/images/emergency-care/loose-bracket.gif) no-repeat;
	width: 80px;
	height: 60px;}
.loose-wire {
	background: url(http://media.sesamehost.com/images/emergency-care/loose-wire.gif) no-repeat;
	width: 80px;
	height: 60px;}
.poking-wire {
	background: url(http://media.sesamehost.com/images/emergency-care/poking-wire.gif) no-repeat;
	width: 80px;
	height: 60px;}
.left-border {
	border: solid 1px #333;
	margin: 5px 15px 15px 0;
	float: left;
	clear: left;}













/*-----------------------------------------------
	Forms
	*/
	/* Global form styles */
	div.referral-form, div.appointment-form, div.comments {
		width: 100%;
		margin-top: 18px;
		letter-spacing: normal;
	}

	fieldset {border: 0; padding: 9px 0;margin: 0 18px;}
		fieldset h2 {margin: 0 0 9px;}
		fieldset p {margin: 0 0 18px;}
		fieldset p.disclaimer {font-size: 90%; font-style: italic; margin: 0;}
		fieldset dl {}
			fieldset dl dt {font-size: 16px; clear: both; margin: 9px 0 0;}
				fieldset dd ul {margin: 9px 0;}
					fieldset dd ul li, fieldset dd ol li {list-style: none;}
					fieldset dd li {
						clear: both;
						margin: 3px 0;
						padding: 5px 0 4px 10%;
						overflow: auto;
						height: auto;
						position: relative;
						}
					fieldset dd li:hover {background: #d5e0eb;/* customize me - this is the hover color change of li */}
					fieldset dd li input:hover, fieldset dd li input:focus,
					 fieldset dd li select:hover, fieldset dd li select:focus,
					 fieldset dd li textarea:hover, fieldset dd li textarea:focus {
					 	background: #f1f1f1;/* customize me - this is the hover color change of form fields*/
					 	outline-color: #537197;/* customize me */
					 	}
						fieldset li h3 {font-size: 12px; line-height: 18px; margin: 0;}
						fieldset li div {float: left; display: inline-block; width: 40%; position: relative; padding-right: 5%;}
						fieldset li div.input-street {width: 85%;}
						fieldset li div.input-city {width: 60%;}
						fieldset li div.input-full-name {width: 85%;}
						fieldset li div.input-phone-full {width: 85%;}
						fieldset li div.input-email {width: 85%;}
						fieldset li div.input-zip {width: 20%;}
						fieldset li div.content-switch, fieldset li div.radio, fieldset li div.checkbox {width: 85%;}
							fieldset li div.radio input {border: none;}
							fieldset li div.radio label {padding-right: 9px; font-size: 90%;}
						/*fieldset li div.hidden-content, fieldset li.hidden-content {display: none;}*/
						fieldset li div.input-select-full {width: 85%;}
						fieldset li div.input-comments {width: 85%;}
							li div.input-comments textarea {height: 63px; overflow: auto;}
						fieldset li div.input-captcha {width: 50%;}
						fieldset li div.verification {width: 35%;}
							li div.verification img {
								border: 1px solid;
								margin-top: 9px;
								-moz-border-radius: 4px; /*for Moz, optional*/
								-webkit-border-radius: 4px; /*for Webkit Browsers, optional*/
								}
							fieldset li div label {
								line-height: 18px;
								font-weight: bold;
								margin-bottom: 9px;
								font-size: 80%;
								color: #537197;/*override to match site*/
								}
							fieldset li div input, fieldset li div textarea, fieldset li div select {
								display: block;
								line-height: 18px;
								width: 100%;
								border: 1px solid;
								padding: 4px 0 3px;
								text-indent: 4px;
								margin-top: 9px;
								-moz-border-radius: 4px; /*for Moz, optional*/
								-webkit-border-radius: 4px; /*for Webkit Browsers, optional*/
								}
							fieldset li div select {height: 25px;}
							fieldset li div.radio input {display: inline; width: auto; margin-right: 4px;}
							fieldset li div div {width: 100%;}
						fieldset dl dd.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*/
							display: block;
							width: 125px;
							height: 34px;
							text-align: center;
							margin: 0;
							background:#cfdae4;/* customize me! */
							border: 1px solid #537197;
							line-height: 34px;
							color:#537197;/* customize me! */
							font-size:12px;
							font-weight:bold;
							-moz-border-radius: 4px; /*for Moz, optional*/
							-webkit-border-radius: 4px; /*for Webkit Browsers, optional*/
							}


	/* appointment form
	* Styles only for the appointment request form
	*/


	/* comment form
	* Styles only for the comments form
	*/
	/*numbering added by jQuery*/
	fieldset ol li span.comment-number {
		font-size: 150%;
		color: #537197;/* customize me*/
		position: absolute;
		left: 9px;
		top: 9px;
	}


	/* referral form
	* Styles only for the referral form
	*/
	.referral-form fieldset li div.radio {width: 40%;}

	/* JQuery */
	input.error, select.error, textarea.error {border-color: #a52003; background: #fefda1;}
	div.error {
		background: url(../images/validate_error.gif) 0 0 no-repeat;
		color: #a52003;
		width: 18px;
		height: 18px;
		position: absolute;
		top: 0;
		right: 0;
		overflow: hidden;
		display: block;
		margin: 12px -2% 0 0;
		text-indent: -999em;}
	div.success {
		background: url(../images/validate_ok.gif) 0 0 no-repeat;
		width: 18px;
		height: 18px;
		position: absolute;
		top: 0;
		right: 0;
		overflow: hidden;
		display: block;
		margin: 12px -2% 0 0;
		text-indent: -999em;}

	.contact-form div.error, .contact-form div.success {margin-left: 0;}
