/************/
/* ELEMENTS */
/************/

* {
  padding: 0;
  margin: 0;
}


body {
  background-color: #f7f7f7;
  font-size: 10px;
  height: 100%;
  text-align: center;
  font-family: Verdana, Arial, Helvetica, sans-serif;
}


caption {
  background-color: #efffd0;
  color: #900;
  padding: .2em;
  font-weight: bold;
  font-family: 'Trebuchet MS', 'Bitstream Vera Sans', verdana, arial, sans-serif;
}


fieldset {
  border: 1px #ececec solid;
  padding: 2em;
}


fieldset.attachment {
  border: 0;
  margin: 1em;
  padding-top: 1em;
  background-color: #ffffdd;
}


fieldset.attachment legend {
  font-weight: bold;
  position: relative;
  margin-bottom: -3em;
}


h1, h2, h3, h4, h5 {
  font-family: 'Trebuchet MS', 'Bitstream Vera Sans', verdana, arial, sans-serif;
}


h1 {
  color: #baa95d;
  font-size: 200%;
  line-height: 0.7;
  margin-bottom: 1.4em;
}


h2 {
  font-size: 153.33%;
  clear: both;
  line-height: .913;
  margin-top: .913em;
  margin-bottom: .913em;
}


h3 {
  font-size: 126.667%;
  color: #004288;
  line-height: 1.11;
  margin-top: 1.11em;
  margin-bottom: 1.11em;
}


h4, h5 {
  font-size: 100%;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 1.4em;
  margin-bottom: 1.4em;
}


h5 {
  font-weight: normal;
}


html {
  height: 100%;
}


img {
  border: 0;
}


label {
  display: block;
}


p {
  line-height: 1.4;
  margin-top: 1.4em;
  margin-bottom: 1.4em;
}


table {
  width: 100%;
}


td {
  text-align: center;
}


td, th {
  padding: .2em;
}


th {
  background-color: #f0f0f0;
  color: #004288;
  font-weight: normal;
  text-align: center;
}


ul, ol {
  line-height: 1.4;
  margin: 1.4em 0 1.4em 2em;
}


ul ul, ul ol, ol ul, ol ol {
  /* Nested lists dont get pushed up or down */
  margin-top: 0;
  margin-bottom: 0;
}


/***********/
/* CLASSES */
/***********/

.abbey_says {
  margin: 2em;
  border: 1px #ececec solid;
  padding: 1em;
}


.abbey_says img {
  margin-bottom: 0;
}


.bordered {
  border: 1px #ececec solid;
}


img.bordered {
  padding: 5px;
}


.caption {
  display: block;
  padding: .5em;
  font-style: italic;
  color: #aa994d;
}


.captioned {
  text-align: center;
  padding: 5px;
}


.captioned img {
  margin: 0 auto;
}


.centered {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}


.centered_text {
  text-align: center;
}


.cleared {
  clear: both;
}


.clearfix {
  display: block;
}


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


/*
   Got a request to condense some pages
   because there was "too much scrolling."
*/
.condensed_text h1,.condensed_text h2,.condensed_text h3,.condensed_text h4,.condensed_text h5 {
  margin-top: 1em;
  margin-bottom: 0;
}


.condensed_text p {
  margin-top: 0;
  margin-bottom: 1em;
}


.condensed_text ul {
  margin-top: .5em;
}


ul.double_spaced li {
  margin-top: 1.4em;
  margin-bottom: 1.4em;
}


.form_errors, .form_success {
  border: 1px #004288 solid;
  background-color: #ffd;
  padding: 1em 2em;
}


.form_errors h3 {
  color: #ae0b0a;
}


.form_success h3 {
  color: #080;
}


.further_down {
  margin-top: 2em;
}


table.image_gallery td {
  padding-top: .5em;
  padding-bottom: .5em;
}


table.image_gallery td a {
  text-decoration: none;
}


table.image_gallery td img {
  display: inline;
}


.image_gallery {
  padding: .5em;
}


.image_gallery h3 {
  text-align: center;
  margin: 0;
  padding: .2em;
  background-color: #f7f7f7;
  color: #baa95d;
}


.image_gallery img {
  display: block;
  margin-top: .5em;
}


.left_aligned, .right_aligned {
  margin-bottom: 1em;
}


.left_aligned {
  float: left;
  margin-right: 1em;
}


#nav_menu a span.multiline {
  display: block;
  text-indent: -1.1em;
  padding-left: 1.1em;
}


.nutritional_information {
  position: relative;
  /* Using margin-top screws up the caption */
  top: 1em;
  margin-bottom: 1em;
}


.nutritional_information td {
  width: 100%;
  text-align: left;
}


#content_area ul.pdfs {
  list-style-image: url('/images/pdf_bullet.png');
}


.required {
  color: #f00;
}


.right_aligned {
  float: right;
  margin-left: 1em;
}


.location .submit_button {
  margin-top: .75em;
  display: block;
}


.submit_button {
  padding: .15em;
}


.uncleared {
  clear: none;
}


/*******/
/* IDS */
/*******/


#areas_of_practice a {
  color: #004288;
  text-decoration: none;
}


#areas_of_practice h3, #areas_of_practice p {
  margin: 0 0 .2em 85px;
}


#areas_of_practice img {
  float: left;
  margin-right: .3em;
  border: 1px #004288 solid;
}


#areas_of_practice td {
  font-size: 90%;
  text-align: left;
  vertical-align: top;
  padding-bottom: .5em;
}


ol#articles {
  list-style-type: none;
}


#attribution {
  color: #004288;
  text-align: right;
  padding-right: 1em;
  font-size: 90%;
}

#adwords {
  color: #000000;
  font-size: 01%;
}

#business_name {
  position: absolute;
  top: 5px;
  left: 100px;
  padding: 0;
  margin: 0;
  height: 75px;
  line-height: 30px;
  font-size: 24px;
  font-family: 'Trebuchet MS', Verdana, Arial, Helvetica, sans-serif;
}


#center_column {
  font-size: 120%;
  min-height: 100%;
}


#center_column_wrapper {
  width: 80em;
  min-height: 100%;
  margin: 0 auto;
  padding-bottom: .1em;
  background-color: #fff;
  text-align: left;
}


#content_area {
  padding: 2em;
  font-size: 125%;
  min-height: 60%;
}


#content_area ul {
  list-style-image: url('/images/bullet.gif');
}


#content_area ul ol {
  list-style-image: none;
}


#featured_articles {
  border: 1px #ececec solid;
  background-color: #ffd;
  margin: 1.5em 4em;
}


#featured_articles a {
  color: #b00;
}


#featured_articles h3 {
  color: #000;
  margin: 1em 1em 0 1em;
}


#featured_articles ul {
  margin-top: 1em;
  margin-bottom: 1em;
}


#footer {
  height: 2em;
  line-height: 2em;
  padding: 0 1em;
  background-color: #004288;
  color: #fff;
  text-align: left;
}


#footer img {
  vertical-align: middle;
  position: relative;
  top: -2px;
}


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


#footer ul li {
  float: right;
  line-height: 1.8em;
  margin-right: 1.5em;
  font-weight: bold;
}


#footer ul li a {
  color: #fff;
  text-decoration: none;
  font-size: 90%;
}


#footer ul li a:hover {
  text-decoration: underline;
}


#logo_area {
  position: relative;
  width: 800px;
  height: 159px;
  background: url('/images/logo.jpg') left top no-repeat;
  margin: 0 auto;
  overflow: hidden;
}


#logo_area a {
  color: #004288;
  text-decoration: none;
}


#logo_area #key_points {
  position: relative;
  top: 70px;
  left: 455px;
  margin: 0 0 0 20px;
  padding: 0;
  list-style-type: square;
}


#low_calorie_snacks {
  width: auto;
}


#low_calorie_snacks td.first_column {
  text-align: left;
}


#nav_menu ul {
  clear: both;
  margin: 0;
  list-style-type: none;
  background-color: #004288;
}


#nav_menu ul li {
  float: left;
  position: relative;
  border: 1px #004288 solid;
  background-color: #004288;
}


#nav_menu ul li a {
  display: block;
  padding: 0 .5em;
  line-height: 2em;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
}


#nav_menu ul li a:hover {
  color: #004288;
  background-color: #fff;
}



/*
   The "dropdowns" of the navigation menu.
   They should appear when the top-level item
   is hovered over.
*/
#nav_menu ul li ul {
  position: absolute;
  display: none;
  top: 2em;
  left: -1px;
  width: 18em;
  border: 1px #004288 solid;
}


#nav_menu ul li:hover ul {
  display: block;
}



/*
   The top-level navigation items are horizontal
   because they're floated left. We have to de-float
   these to make them vertical.
*/   
#nav_menu ul li ul li {
  float: none;
  border: none;
}


#payment_method_logos {
  text-align: center;
  margin: 3em 0 1em 0;
}


#payment_method_logos img {
  display: inline;
  margin: 0 1em;
}


#phone_numbers td {
  font-family: monospace, sans-serif;
}


#search_area {
  float: right;
  padding: 0em;
  margin: 0em;
  margin-top: -1em;
}


#search_area fieldset {
  border: none;
  padding: 0;
}


#search_area input {
  background-color: #fff;
  color:  #666;
  border: 1px solid #004288;
  padding: .3em;
}


#search_area legend {
  display: none;
}


#search_area .submit_button {
  padding: .2em;
}
