/* 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, fieldset, form, label, 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; }

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; }

blockquote:before, blockquote:after {
  content: ""; }

q:before, q:after {
  content: ""; }

blockquote, q {
  quotes: "" ""; }

a img {
  border: none; }

/* typography */
body {
  font-size: 85%;
  color: black;
  font-family: Arial, Helvetica, sans-serif; }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  color: #054698; }

h1 {
  font-size: 2em;
  margin-bottom: 0.75em; }

h2 {
  font-size: 1.5em;
  line-height: 1;
  margin-bottom: 1em; }

h3, h4 {
  font-size: 1.2em;
  line-height: 1.25;
  margin-bottom: 1.25em; }

h5 {
  font-size: 1em;
  font-weight: bold;
  margin-bottom: 1.5em; }

h6 {
  font-size: 1em;
  font-weight: bold; }

h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {
  margin: 0; }

p {
  margin: 0 0 1.5em; }
  p img.left {
    float: left;
    margin: 1.5em 1.5em 1.5em 0;
    padding: 0; }
  p img.right {
    float: right;
    margin: 1.5em 0 1.5em 1.5em; }

a {
  color: #054698;
  text-decoration: underline; }
  a:visited {
    color: #054698; }
  a:focus, a:hover {
    color: #0766dd; }
  a:active {
    color: #78b4ff; }

blockquote {
  margin: 1.5em;
  color: #666;
  font-style: italic; }

strong {
  font-weight: bold; }

em {
  font-style: italic; }

dfn {
  font-style: italic;
  font-weight: bold; }

sup, sub {
  line-height: 0; }

abbr, acronym {
  border-bottom: 1px dotted #666; }

address {
  margin: 0 0 1.5em;
  font-style: italic; }

del {
  color: #666; }

pre {
  margin: 1.5em 0;
  white-space: pre;
  font: 1em 'andale mono', 'lucida console', monospace;
  line-height: 1.5; }

code, tt {
  font: 1em 'andale mono', 'lucida console', monospace;
  line-height: 1.5; }

li ul, li ol {
  margin: 0 1.5em; }

ul, ol {
  margin: 0 1.5em 1.5em 1.5em; }

ul {
  list-style-type: disc; }

ol {
  list-style-type: decimal; }

dl {
  margin: 0 0 1.5em 0; }
  dl dt {
    font-weight: bold; }

dd {
  margin-left: 1.5em; }

table {
  margin-bottom: 1.4em;
  width: 100%; }

th {
  font-weight: bold; }

thead th {
  background: #c3d9ff; }

th, td, caption {
  padding: 4px 10px 4px 5px; }

tr.even td {
  background: #e5ecf9; }

tfoot {
  font-style: italic; }

caption {
  background: #eee; }

.small {
  font-size: .8em;
  margin-bottom: 1.875em;
  line-height: 1.875em; }

.large {
  font-size: 1.2em;
  line-height: 2.5em;
  margin-bottom: 1.25em; }

.hide {
  display: none; }

.quiet {
  color: #666; }

.loud {
  color: #000; }

.highlight {
  background: #ff0; }

.added {
  background: #060;
  color: #fff; }

.removed {
  background: #900;
  color: #fff; }

.first {
  margin-left: 0;
  padding-left: 0; }

.last {
  margin-right: 0;
  padding-right: 0; }

.top, p img.top {
  margin-top: 0;
  padding-top: 0; }

.bottom {
  margin-bottom: 0;
  padding-bottom: 0; }

/* grid */
.column {
  float: left; }

.last, div.last {
  margin-right: 0; }

hr {
  background: #d0a390;
  color: #d0a390;
  clear: both;
  float: none;
  width: 100%;
  height: .1em;
  margin: 0 0 1.45em;
  border: none; }
  hr.space {
    background: #fff;
    color: #fff; }

.clearfix {
  display: block; }
  .clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

.container,
#container {
  display: block;
  margin: 0 auto;
  position: relative;
  width: 1000px; }
  .container:after,
  #container:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

.clear {
  clear: both; }

/* Custom Type */
h2, h3, h4, h5 {
  color: #953306; }

/* layout */
body {
  background: url(../images/layout/bg.jpg) top center repeat-x;
  background-color: #f7efdc; }

#container {
  position: relative; }

#hd {
  display: block;
  margin: 0 auto;
  position: relative;
  width: 1000px;
  background: url(../images/layout/hd.png) top left no-repeat;
  height: 159px; }
  #hd:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  #hd .address {
    font-size: .8em;
    margin-bottom: 1.875em;
    line-height: 1.875em;
    padding: 50px 0 0 625px; }

#logo {
  position: absolute;
  top: 0;
  left: 20px;
  height: 159px;
  width: 364px; }
  #logo a {
    display: block;
    overflow: hidden;
    text-indent: -9999px;
    background-image: url(../images/layout/logo.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    height: 159px;
    width: 364px; }

#bd {
  display: block;
  margin: 0 auto;
  position: relative;
  width: 1000px;
  background: url(../images/layout/bd.png) 0 0 repeat-y;
  margin-top: 74px; }
  #bd:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

#content {
  float: left;
  background: url(../images/layout/content.png) 0 0 repeat-x;
  width: 600px;
  padding: 30px 0 0 30px;
  margin-left: 20px;
  /* page-specific one-off styles */
  /* images */ }
  #content .flash-replaced {
    margin-bottom: 20px;
    text-align: left; }
    #content .flash-replaced .alt {
      display: none; }
  #content .inset {
    font-size: .8em;
    margin-bottom: 1.875em;
    line-height: 1.875em;
    background-color: #c28654;
    border: 1px solid #8c4c22;
    float: right;
    margin: 0 0 0 10px;
    padding: 10px;
    padding-bottom: 0;
    width: 170px; }
  #content h1 {
    font-family: 'TrajanProRegular'; }
  #content div.map {
    margin-bottom: 1em; }
  #content div.contact {
    float: left;
    margin-right: 60px; }
  #content div.hours {
    float: left; }
  #content #flash-brushing-and-flossing-ortho {
    margin-bottom: 1.5em; }
  #content p.intro {
    font-size: 1.25em;
    color: #054698;
    font-style: italic; }
  #content ul.logos {
    list-style: none;
    margin: 0 0 0 100px; }
    #content ul.logos li {
      float: left;
      padding-right: 45px; }
  #content img.auto {
    float: right;
    margin: 0 0 20px 25px; }
  #content img.border {
    background-color: #aec8d1;
    padding: 3px;
    border-color: #6596a4;
    border-width: 1px;
    border-style: solid; }

#flash-home {
  height: 325px; }

.meet-the-team #content img {
  float: left;
  margin: 0 20px 20px 0; }

.office-locations .column {
  margin-right: 30px; }

.before-and-after .box {
  width: 205px; }

#sidebar {
  float: left;
  background: url(../images/layout/sidebar.png) top right no-repeat;
  width: 330px;
  padding: 30px 0 0 0; }
  #sidebar .callouts {
    margin: 370px 0 0 46px;
    padding: 0;
    list-style: none; }
    #sidebar .callouts a {
      display: block;
      overflow: hidden;
      text-indent: -9999px;
      background-image: url(../images/layout/check-up.png);
      background-repeat: no-repeat;
      background-position: 0 0;
      width: 214px;
      height: 68px;
      margin-bottom: 2px; }
    #sidebar .callouts .invisalign a {
      background-image: url(../images/layout/invisalign.png); }
    #sidebar .callouts .invisalign-teen a {
      background-image: url(../images/layout/invisalign-teen.png); }
       #sidebar .callouts .refer a {
      background-image: url(../images/layout/refer.png);
 }
    #sidebar .callouts .facebook a {
      background-image: url(../images/layout/facebook.png);
      margin: 10px 0 0 87px;
      width: 41px;
      height: 41px; }

#ft_wrapper {
  background: #af7c3d url(../images/layout/ft_wrapper.jpg) top center repeat-x;
  overflow: hidden; }

#ft {
  display: block;
  margin: 0 auto;
  position: relative;
  width: 1000px;
  font-size: .8em;
  margin-bottom: 1.875em;
  line-height: 1.875em;
  background: url(../images/layout/ft.png) top left no-repeat;
  color: #fff;
  text-decoration: none;
  padding: 85px 0 30px; }
  #ft:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  #ft a {
    color: #fff;
    text-decoration: none; }
    #ft a:hover {
      color: #ccc; }
  #ft #sesame-link {
    font-style: italic; }
  #ft .ft_nav {
    width: 600px;
    margin-left: 40px; }
  #ft .logos {
    position: absolute;
    top: 90px;
    right: 125px; }
  #ft .ft_callouts {
    width: 140px;
    float: left;
    list-style: none;
    margin: 0; }

/* navigation */
#nav {
  position: absolute;
  top: 171px;
  left: 20px;
  height: 40px;
  /* subnav-flyout */
  background: url(../images/layout/nav.png);
  width: 960px; }
  #nav ul {
    list-style: none;
    margin: 0; }
  #nav a {
    height: 40px; }
  #nav li {
    float: left; }
  #nav a:hover,
  #nav li:hover a,
  #nav li.sfhover a {
    background-position: 0 -40px; }
  #nav li.active a {
    background-position: 0 -80px; }
  #nav li.active:hover a,
  #nav li.active.sfhover a {
    background-position: 0 -120px; }
  #nav li:hover ul,
  #nav li.sfhover ul {
    left: auto;
    margin: 0; }
  #nav li ul {
    left: -9999px;
    position: absolute;
    width: 180px;
    z-index: 10; }
    #nav li ul a {
      background-image: none;
      background-color: #662a12;
      color: white;
      height: 25px;
      padding-top: 5px;
      text-decoration: none;
      text-indent: 0;
      width: 180px; }
      #nav li ul a:hover {
        background: #953306;
        color: white; }
  #nav a {
    display: block;
    overflow: hidden;
    text-indent: -9999px;
    background-image: url(../images/nav/home.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    width: 77px; }
  #nav li ul a {
    text-indent: 15px; }

#login_links {
  position: absolute;
  top: 0;
  right: 98px;
  height: 47px;
  /* subnav-flyout */ }
  #login_links ul {
    list-style: none;
    margin: 0; }
  #login_links a {
    height: 47px;
	padding-left:10px;}
  #login_links li {
    float: left; }
  #login_links a:hover,
  #login_links li:hover a,
  #login_links li.sfhover a {
    background-position: 0 -47px; }
  #login_links li.active a {
    background-position: 0 -94px; }
  #login_links li.active:hover a,
  #login_links li.active.sfhover a {
    background-position: 0 -141px; }
  #login_links li:hover ul,
  #login_links li.sfhover ul {
    left: auto;
    margin: 0; }
  #login_links li ul {
    left: -9999px;
    position: absolute;
    width: 180px;
    z-index: 10; }
    #login_links li ul a {
      background-image: none;
      background-color: #662a12;
      color: white;
      height: 25px;
      padding-top: 5px;
      text-decoration: none;
      text-indent: 0;
      width: 180px; }
      #login_links li ul a:hover {
        background: #953306;
        color: white; }
  #login_links a {
    display: block;
    overflow: hidden;
    text-indent: -9999px;
    background-image: url(../images/nav/patient-login.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    width: 141px; }

/* nav images */
a#meet-the-team {
  background-image: url(../images/nav/meet-the-team.png);
  width: 143px; }
a#for-our-patients {
  background-image: url(../images/nav/for-our-patients.png);
  width: 164px; }
a#about-orthodontics {
  background-image: url(../images/nav/about-ortho.png);
  width: 137px; }
a#about-braces {
  background-image: url(../images/nav/about-braces.png);
  width: 141px; }
a#orthodontic-treatments {
  background-image: url(../images/nav/ortho-treatments.png);
  width: 174px; }
a#contact-us {
  background-image: url(../images/nav/contact-us.png);
  width: 123px; }
a#doctor-login {
  background-image: url(../images/nav/doctor-login.png); }

.sub_nav .active {
  color: #953306; }

/* 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-border {
  float: left;
  clear: left;
  margin: 5px 15px 15px 0;
  border: solid 1px #333; }
img.right-border {
  float: right;
  clear: right;
  margin: 5px 0 15px 15px;
  border: solid 1px #333; }

p.flash_notice {
  margin: 18px;
  padding: 9px;
  color: #ff0000;
  border: 1px dotted #ff0000;
  background: #ffffff;
  text-align: center; }

/* This styled div acts as the hr for most browsers */
div.hr {
  height: 0px;
  background-color: #d0a390;
  border: solid 1px;
  border-color: #d0a390;
  border-width: 1px 0 0 0;
  margin: 20px 0;
  padding: 0;
  clear: both; }

/* This is the backup for screen readers */
hr {
  display: none;
  height: 0px;
  background-color: #d0a390;
  border: solid 1px;
  border-color: #d0a390;
  border-width: 1px 0 0 0;
  clear: both; }

/* Clear Fix */
.cf {
  display: inline-block;
  display: block; }
  .cf:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }

* html .cf {
  height: 1px; }

div.box {
  float: right;
  clear: right;
  width: 334px;
  color: #fff;
  background-color: #1a2e5a;
  padding: 5px 0 5px 5px;
  margin: 0 0 20px 20px;
  border: solid 1px #333;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px; }
  div.box img {
    float: left;
    border: solid 1px #333;
    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 {
    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 dt {
    font-size: 16px;
    clear: both;
    margin: 9px 0 0; }
  fieldset dd ul {
    margin: 9px 0; }
    fieldset dd ul li {
      list-style: none; }
  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: #f9f4e8; }
    fieldset dd li input:hover, fieldset dd li input:focus {
      background: #f1f1f1;
      outline-color: #054698; }
    fieldset dd li select:hover, fieldset dd li select:focus {
      background: #f1f1f1;
      outline-color: #054698; }
    fieldset dd li textarea:hover, fieldset dd li textarea:focus {
      background: #f1f1f1;
      outline-color: #054698; }
  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, fieldset li div.input-phone-full, 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.input-select-full, 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 {
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border: 1px solid;
  margin-top: 9px; }

fieldset li div label {
  line-height: 18px;
  font-weight: bold;
  margin-bottom: 9px;
  font-size: 80%;
  color: #537197; }
fieldset li div input, fieldset li div textarea {
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  display: block;
  line-height: 18px;
  width: 100%;
  border: 1px solid;
  padding: 4px 0 3px;
  text-indent: 4px;
  margin-top: 9px; }
fieldset li div select {
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  display: block;
  line-height: 18px;
  width: 100%;
  border: 1px solid;
  padding: 4px 0 3px;
  text-indent: 4px;
  margin-top: 9px;
  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 {
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  clear: both;
  display: block;
  width: 125px;
  height: 34px;
  text-align: center;
  margin: 0;
  background: #054698;
  border: 1px solid;
  border-color: black;
  line-height: 34px;
  color: white;
  font-size: 12px;
  font-weight: bold; }
fieldset ol li span.comment-number {
  font-size: 150%;
  color: #537197;
  position: absolute;
  left: 9px;
  top: 9px; }

.referral-form fieldset li div.radio {
  width: 40%; }

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; }

ul#sesame-games {
  list-style: none;
  margin: 0 0 27px;
  padding: 0; }
  ul#sesame-games li {
    width: 187px;
    height: 79px;
    border: 1px solid #1e3554;
    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; }

.right-border {
  border: solid 1px #333;
  float: right;
  clear: right;
  margin: 0 0 15px 15px; }

img.right {
  float: right;
  margin: 0 0 15px 15px; }

.left-border {
  border: solid 1px #000;
  margin: 0 15px 15px 0;
  float: left; }

img.left {
  margin: 0 15px 15px 0;
  float: left; }

span.indent {
  padding-left: 40px; }

#invisalign-sidebar {
  background: #fff;
  width: 275px;
  margin: 0 0 15px 15px;
  padding: 0;
  border: solid 1px #000;
  line-height: 18px;
  font-size: 11px;
  float: right;
  clear: right; }
  #invisalign-sidebar a {
    color: #036; }
  #invisalign-sidebar h3 {
    background: #97AFC2;
    margin: 0;
    padding: 15px;
    color: #fff; }
  #invisalign-sidebar p {
    padding: 0 15px;
    margin: 15px 0; }

.thumb {
  border: solid 1px #000;
  margin: 0 10px 10px 0;
  float: left;
  clear: left; }
