
/*********************************************************************
	
	Sesame Communications - (c) 2010
	Written by: Damien Komala
	All rights reserved. 
	Any reproduction or intentional misuse is strictly prohibited
	
*********************************************************************/

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

/*********************************************************************
	Common Elements
*********************************************************************/

body {
	line-height:1.5em;
	font-family:Tahoma,Arial,Helvetica,sans-serif;
	margin:0;
	background: url(../images/tile.gif) top center repeat;
	color: #453b24;
	font-size: 12px;
}

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;
}

a {
	outline: none;
	color: #653581;
}

h1 {
	height:60px;
	margin:89px 0 120px 7px;
	text-indent:-999em;
	width:516px;
}

.home h1 {
	height: 54px;
	width:372px;
	background: url(../images/home-h1.gif) top left no-repeat;
	display: block;
	margin:0 0 20px 0;
}

h2 {
	font-family:Tahoma,Arial,Helvetica,sans-serif;
	color:#4f6e7d;
	font-size: 18px;
	margin-bottom: 10px;
	line-height:1.2em;
}

h3 {
	color:#21274e;
	font-size: 14px;
	font-weight: normal;
	margin-bottom: 10px;
	line-height:1.2em;
}

hr {
	background: #653581;
	height: 1px;
	border: none;
	clear:both;
	margin: 0 0 15px;
}

em {
	color:#887a5b;
	font-style: italic;
}

.hide {
	display:none;
}

.flash-replaced .alt {
	display:none;
}

.flash-replaced {
	margin-bottom:20px;
}

p.small {
	font-size: 9px;
}

dl dt {
	font-size: 1.5em;
	font-weight: bold;
}

dl dd ul {
	margin: 0;
	list-style-type: none;
}

/*********************************************************************
	IE6 upgrade alert
*********************************************************************/
#ie_alert {
	display: none;
	background-color: #fff;
	width: 400px;
	color: #333;
	text-align: left;
	font-size: 11px;
	letter-spacing: normal;
	font-weight: bold;
	padding: 15px 15px 0 15px;
	border: solid 2px #a52003;
	position: absolute;
	z-index: 5000;
	top: 10px;
	left: 10px;
}

#ie_alert ul {
	margin: 0 0 15px 25px;
}

#ie_alert p {
	margin: 0 0 15px 0;
	line-height: 14px;
	padding: 0;
}

a.upgrade {
	float: left;
	margin: 0 10px 0 0;
}

span#ie_alert_reasons {
	color: #a52003;
}

/*********************************************************************
	set bg image for each link
*********************************************************************/

a#patient-login {
	background-image:url(../images/nav/patient-login.gif);
	text-indent: -999em;
}

a#doctor-login {
	background-image:url(../images/nav/doctor-login.gif);
	text-indent: -999em;
}

a#our-office {
	background-image:url(../images/nav/our-office.jpg);
	width:128px;
	text-indent: -999em;
}

a#for-patients {
	background-image:url(../images/nav/for-patients.jpg);
	width:139px;
	text-indent: -999em;
}

a#about-braces {
	background-image:url(../images/nav/about-braces.jpg);
	width:153px;
	text-indent: -999em;
}

a#our-services {
	background-image:url(../images/nav/our-services.jpg);
	width:140px;
	text-indent: -999em;
}

a#faq {
	background-image:url(../images/nav/faq.jpg);
	width:75px;
	text-indent: -999em;
}

a#contact-us {
	background-image:url(../images/nav/contact-us.jpg);
	width:129px;
	text-indent: -999em;
}

a#home {
	background-image:url(../images/nav/home.jpg);
	width:83px;
	text-indent: -999em;
}

/*********************************************************************
	Structure
*********************************************************************/
#container, .container {
	width:940px;
	margin:0 auto;
}

#container {
	position:relative;
}

.clearfix:after, .container:after {
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}

.clearfix, .container {
	display:inline-block;
}

* html .clearfix, * html .container {
	height:1%;
}

.clearfix, .container {
	display:block;
}

.clear {
	clear:both;
}

/*********************************************************************
	Header and top piece
*********************************************************************/
#topper {
	height: 20px;
	width: 100%;
	display: block;
	background: #21274e;
}

#topper .topper-content {
	width:940px;
	margin: 0 auto;
}

#hd {
	height:255px;
	width:938px;
	margin: 0;
	display: block;
	color: #85C3D8;
	background: url(../images/header-background.jpg) top center no-repeat;
	border-left:1px solid #161a39;
	border-right:1px solid #161a39;
}

#hd h1 {
	margin: 0;
	padding:0;
}

#flash-logo {
	position:absolute;
	left:20px;
	top:0;
}
.address {
	color:#21274E;
	height:150px;
	position:absolute;
	right:34px;
	top:10px;
	width:209px;
}
.address p {
	margin-bottom:15px;
}
.address strong {
	font-size: 14px;
	font-weight: bold;
}

/*********************************************************************
	Content
*********************************************************************/
#bd {
	background: #fff url(../images/content-bottom-bg.jpg) bottom left no-repeat;
	clear:both;
	display:block;
	width:938px;
	min-height: 500px;
	_height:500px;
	float: left;
	border-left:1px solid #161a39;
	border-right:1px solid #161a39;
}

#content {
	background: url(../images/content-background.jpg) top left no-repeat;
	float:left;
	margin:8px 0 30px 5px;
	min-height:895px;
	padding-left:20px;
	width:530px;
}

.home #content {
	padding:270px 0 0 20px;
}

#content a {
	color:#887a5b;
}

#content p {
	margin-bottom: 20px;
}

#content ul {
	margin:0 0 20px 30px;
	list-style: none;
}

#content ul li {
	background: url(../images/bullet.gif) 0 3px no-repeat;
	padding:0 0 0 16px;
}

#flash-homepage {
	background:url("../images/alt-flash-image.png") no-repeat scroll left top transparent;
	height:312px;
	left:6px;
	margin:0;
	position:absolute;
	top:263px;
	width:925px;
	z-index:9;
}

/*********************************************************************
	Page Specific Styles
*********************************************************************/

img.right {
	float: right;
	margin: 0 0 20px 20px;
}

.left {
	float: left;
	margin: 0 20px 20px 0;
}

img.border, img.auto {
	border:3px solid #FFF;
}

img.auto {
	float: right;
	margin: 0 0 0 15px
}

img.right-border {
	float: right;
	clear: right;
	margin: 5px 0 15px 15px;
}

img.left-border {
	float: left;
	clear: left;
	margin: 5px 15px 15px 0;
}

p.flash_notice {
	margin: 18px;
	padding: 9px;
	color: #ff0000;
	border: 1px dotted #ff0000;
	background: #ffffff;
	text-align: center;
}
.map {
	margin-bottom: 20px;
	background-color:#F2EDE9;
	padding:4px;
}

.site-map .column {
	float:left;
	width:45%;
	clear: none;
}

.site-map .back-to-top {
	visibility: hidden;
}

.game-room .back-to-top {
	visibility: hidden;
}

.emergency-care #content ul li, .comment-form #content ul li, .refer-a-friend #content ul li, .office-tour  #content ul li {
	background: none;
}

/*********************************************************************
	Sidebar
*********************************************************************/

#sidebar {
	background: url("../images/sidebar-background.jpg") left top no-repeat;
	height:895px;
	position:absolute;
	right:1px;
	top:263px;
	width:383px;
	z-index: 8;
	display: block;
}

#banners {
	height:433px;
	position:absolute;
	right:14px;
	top:381px;
	width:314px;
}

#banners img, #banners a {
	margin: 0;
	padding: 0;
	display: block;
}

#sidebar .right-image {
	height:213px;
	margin:0;
	position:absolute;
	right:63px;
	top:41px;
	width:237px;
}

.sub_nav {
	background: url(../images/sidebar/sidbar-nav-background.gif) top left no-repeat;
	color:#653581;
	display:block;
	padding:60px 0 20px 65px;
	position:absolute;
	right:14px;
	top:381px;
	width:250px;
}

.sub_nav a {
	font-style: normal;
	float: left;
	clear:both;
	color: #FFF;
}

.sub_nav a.active {
	color:#a0b8c4;
	text-decoration:none;
	cursor:default;
}

#social-icons {
	position:absolute;
	top:331px;
	right:14px;
	padding:0 0 0 76px;
	/* width:239px; */
}

#social-icons img, #social-icons a {
	margin-right:6px;
	height:40px;
	width:auto;
}

/*********************************************************************
	Navigation
*********************************************************************/
#nav a {
	display: block;
	height: 33px;
	outline: none;
	overflow: hidden;
	text-align: left;
}

#nav {
	left:21px;
	position:absolute;
	top:222px;
	width:847px;
	z-index:10;
	clear:both;
}

#nav ul {
	list-style: none;
	margin: 0;
}

#nav li {
	float:left;
}

#nav a:hover, #nav li:hover a, #nav li.sfhover a {
	background-position: 0 -33px;
}

#nav li.active a {
	background-position: 0 -33px;
}

#nav li.active a:hover, #nav li.active:hover a, #nav li.active.sfhover a {
	background-position: 0 -33px;
}

/*********************************************************************
	Navigation Fly outs
*********************************************************************/

#nav li ul {
	padding: 10px 0;
	left: -9999px;
	position: absolute;
	width: 160px;
	z-index: 10;
	background: #AFC3CE;
	top:33px;
	border:3px solid #FFF;
}

#nav li ul a {
	color: #21274D;
	background-image: none;
	text-decoration: none;
	text-indent:12px;
	height: 16px;
	width: 160px;
	padding:5px 0;
}

#nav li ul a:hover {
	background:#21274D;
	color:#fff;
}

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

#nav ul ul ul {
	display:none;
}

#nav li:hover li:hover ul, #nav li.sfhover li.sfhover ul {
	display: block;
	margin-left: 200px;
}

/*********************************************************************
	Utility Navigation
*********************************************************************/
#topper #util a {
	display: block;
	height: 18px;
	outline: none;
	overflow: hidden;
	text-align: left;
}

#topper #util {
	height:18px;
	width:244px;
	float: right;
}

#topper #util ul {
	list-style: none;
	margin: 0;
	background: none;
	padding: 0;
	float: none;
	width:244px;
}

#topper #util li {
	float:left;
	margin: 0;
	background: none;
	padding: 0;
	width:122px;
}

#util a:hover, #util li:hover a, #util li.sfhover a {
	background-position: 0 -18px;
}

#util li.active a {
	background-position: 0 -18px;
}

#util li.active a:hover, #util li.active:hover a, #util li.active.sfhover a {
	background-position: 0 -18px;
}

/*********************************************************************
	Footer
*********************************************************************/

#ft {
	background: url(../images/footer-background.gif) top center no-repeat;
	color: #FFF;
	font-size: 11px;
	float: left;
	width:940px;
	margin:0;
	height: 136px;
}

#ft a {
	color: #FFF;
	text-decoration: underline;
	margin: 0 2px;
	float: left;
	clear:both;
}

#ft a:hover, #ft .sesame a:hover {
	text-decoration: none;
}

#ft a.sesame-link {
	color: #9ba0c6;
}

#ft .column1 {
	display:block;
	float:left;
	margin:43px 0 0 32px;
	width:140px;
}

#ft .column2 {
	float: left;
	width:220px;
	display: block;
	margin: 43px 0 0;
}

#ft .column3 {
	float: left;
	width:196px;
	display: block;
	margin: 43px 0 0;
}

#ft .column4 {
	float: left;
	width:252px;
	display: block;
	margin: 19px 0 0;
}

/*********************************************************************
	Jquery Office Tour
*********************************************************************/
/* GALLERY LIST */
/* IMPORTANT - This prevents a flash of unstyled content */
#gallery {
	visibility: hidden;
}

/* GALLERY CONTAINER */
.gallery {
	background: #fff;
	border: 1px solid #333;
	padding: 10px;
	margin: 0;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

/* LOADING BOX */
.loader {
	background: url(../images/loader.gif) center center no-repeat #ddd;
}

/* GALLERY PANELS */
.panel {
}

/* DEFINE HEIGHT OF PANEL OVERLAY */
/* NOTE - It is best to define padding here as well so overlay and background retain identical dimensions */
.panel .panel-overlay, .panel .overlay-background {
	height: 25px;
	padding: 0 1em;
}

/* PANEL OVERLAY BACKGROUND */
.panel .overlay-background {
	background: #222;
}

/* PANEL OVERLAY CONTENT */
.panel .panel-overlay {
	color: white;
	font-size: 1em;
}

.panel .panel-overlay a {
	color: white;
	text-decoration: underline;
	font-weight: bold;
}

/* FILMSTRIP */
/* margin will define top/bottom margin in completed gallery */
.filmstrip {
	margin: 5px;
}

/* FILMSTRIP FRAMES (contains both images and captions) */
.frame {
}

/* WRAPPER FOR FILMSTRIP IMAGES */
.frame .img_wrap {
	border: 1px solid #aaa;
}

/* WRAPPER FOR CURRENT FILMSTRIP IMAGE */
.frame.current .img_wrap {
	border-color: #000;
}

/* FRAME IMAGES */
.frame img {
	border: none;
}

/* FRAME CAPTION */
.frame .caption {
	font-size: 11px;
	text-align: center;
	color: #888;
}

/* CURRENT FRAME CAPTION */
.frame.current .caption {
	color: #000;
}

/* POINTER FOR CURRENT FRAME */
.pointer {
	border-color: #000;
}

/* TRANSPARENT BORDER FIX FOR IE6 */
/* NOTE - DO NOT CHANGE THIS RULE */
*html .pointer {
	filter: chroma(color=pink);
}

/*********************************************************************
	Sesame CSS
*********************************************************************/

img.right {
	margin: 0 0 15px 15px;
	float: right;
	clear: right;
}

img.left {
	margin: 0 15px 15px 0;
	float: left;
	clear: left;
}

img.left-staff {
	margin: 0 15px 35px 0;
	float: left;
	clear: left;
}

img.left-border {
	float: left;
	clear: left;
	margin: 5px 15px 15px 0;
	border: solid 1px #333; /* Customize me! */
}

img.right-border {
	float: right;
	clear: right;
	margin: 5px 0 15px 15px;
	border: solid 1px #333; /* Customize me! */
}

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: #653581; /* Customize me! */
	border: solid 1px #653581; /* 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: #653581;
	border: solid 1px #653581;
	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;
}

/* Emergency Care */
ul#toggle-emergency {
	list-style: none;
	margin: 0 0 1em 0;
}

ul#toggle-emergency li {
	border: solid 1px #653581;
	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;
}

/* games */
ul#sesame-games {
	list-style: none;
	margin: 0 0 27px;
	padding: 0
}

ul#sesame-games li {
	width: 187px;
	height: 79px;
	border: 1px solid #1e3554;/* add hex color to change border color; defaults to BODY Font Color*/
	float: left;
	margin: 18px 9px 0;
	overflow: hidden;
	position: relative;
	background: #603329;
}

ul#sesame-games li p {
	font-size: 11px;
	color: #fff;
	margin: 9px;
	position: relative;
}

ul#sesame-games li a {
	position: relative;
	display: block;
	overflow: hidden;
	width: 187px;
	height: 79px;
}

ul#sesame-games a img {
	position: absolute;
	top: 0;
	left: 0;
	border: 0;
	width: 187px;
	display: block;
}

/*-----------------------------------------------
	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: #4f6e7d;/*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:#4f6e7d;/* customize me! */
	border: 1px solid #4f6e7d;
	line-height: 34px;
	color:#FFF;/* 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;
}


#google-review {display:block;text-indent:-5000px; height:91px;width:282px;background:url(../images/google-review.jpg); position:absolute;top:840px;left:80px;}