html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline; }

*:focus {
  outline: 0; }

body {
  line-height: 1em;
  color: black;
  background: #fff; }

ol, ul {
  list-style: none; }

/* tables still need 'cellspacing="0"' in the markup */
table {
  border-collapse: separate;
  border-spacing: 0;
  vertical-align: middle; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: "" ""; }
  q:before, q:after, blockquote:before, blockquote:after {
    content: ""; }

img a {
  border: none; }

body {
  font: 13px/1.5 Helvetica, Arial, 'Liberation Sans', FreeSans, sans-serif; }

a:focus {
  outline: 1px dotted invert; }

hr {
  border-color: #ccc;
  border-style: solid;
  border-width: 1px 0 0;
  clear: both;
  height: 0; }

h1 {
  font-size: 25px; }

h2 {
  font-size: 23px; }

h3 {
  font-size: 21px; }

h4 {
  font-size: 19px; }

h5 {
  font-size: 17px; }

h6 {
  font-size: 15px; }

ol {
  list-style: decimal; }

ul {
  list-style: square; }

li {
  margin-left: 30px; }

p,
dl,
hr,
h1,
h2,
h3,
h4,
h5,
h6,
ol,
ul,
pre,
table,
address,
fieldset {
  margin-bottom: 20px; }

#document {
  margin-left: auto;
  margin-right: auto;
  width: 960px; }
  #document #footer,
  #document #side-content,
  #document #main-content,
  #document #full-content {
    display: inline;
    float: left;
    margin-left: 10px;
    margin-right: 10px; }
  #document #full-content {
    width: 940px; }
  #document #side-content {
    width: 220px; }
  #document #main-content {
    width: 700px; }

body {
  font-family: "Lucida Grande", "Lucida Sans Unicode", Verdana, Arial, Helvetica, sans-serif;
  color: #0f2c74;
  background-image: url(../images/catawba/background.jpg);
  background-repeat: repeat; }

a {
  color: #0f2c74; }
  a:hover {
    color: #3f63ff; }

strong {
  font-weight: bold; }

#document {
  overflow: hidden;
  display: inline-block;
  background-color: white;
  border-left: 5px solid #0f2c74;
  border-right: 5px solid #0f2c74; }
  #document {
    display: block; }

#header {
  width: 920px;
  padding-left: 40px;
  position: fixed;
  top: 0;
  padding-top: 15px;
  height: 115px;
  background-color: #003894;
  background-image: url(../images/catawba/header-gradient.png);
  background-repeat: repeat-x;
  background-position: bottom;
  left: 50%;
  margin-left: -480px !important; }
  #header h1 {
    height: 101px;
    width: 186px;
    text-indent: -5000px;
    background-image: url(../images/catawba/logo.png); }
  #header h2 {
    text-shadow: 1px 1px 2px #111111;
    font-family: Georgia, Times, serif;
    margin: 0;
    font-size: 1.2em;
    font-weight: bold;
    position: absolute;
    right: 10px;
    bottom: 10px;
    color: white; }

#navigation {
  width: 960px;
  position: fixed;
  margin: 0;
  top: 130px;
  left: 50%;
  margin-left: -480px !important; }

#main-content {
  font-size: 15px;
  padding-top: 175px;
  padding-left: 240px;
  min-height: 500px; }

#side-content {
  position: fixed;
  top: 175px;
  left: 50%;
  margin-left: -470px !important; }

#footer {
  width: 960px;
  margin-left: 0 !important;
  font-family: Georgia, Times, serif;
  text-align: center;
  border-bottom: 15px solid #0f2c74;
  position: relative;
  z-index: 100; }
  #footer p {
    margin-bottom: 5px; }

#navigation {
  font-family: Georgia, Times, serif;
  background-color: #bfbfbf;
  background-image: url(../images/catawba/navigation-gradient.png);
  background-repeat: repeat-x;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  overflow: hidden;
  display: inline-block;
  height: 30px;
  margin-bottom: 15px; }
  #navigation {
    display: block; }
  #navigation li {
    list-style-type: none;
    margin-left: 0px;
    white-space: nowrap;
    display: inline;
    float: left;
    padding-left: 4px;
    padding-right: 4px; }
    #navigation li.first {
      padding-left: 0px; }
    #navigation li.last {
      padding-right: 0px; }
  #navigation li {
    width: 126px;
    list-style-type: none;
    margin-left: 0px;
    text-align: center; }
    #navigation li a {
      text-decoration: none;
      font-size: 1.3em;
      display: block;
      height: 30px;
      line-height: 30px; }
      #navigation li a:hover {
        text-decoration: underline; }
  #navigation li a:hover, #navigation li.current a {
    text-decoration: none;
    color: white;
    background-color: #0f2c74;
    background-image: url(../images/catawba/navigation-gradient-hover.png);
    background-repeat: repeat-x; }

#side-content .navigation {
  padding: 0 15px;
  background-color: #bfbfbf;
  border-bottom: 5px solid #b0b0b0;
  border-left: 5px solid #b0b0b0;
  margin-bottom: 15px; }
  #side-content .navigation a {
    text-decoration: none; }
    #side-content .navigation a:hover {
      text-decoration: underline; }
  #side-content .navigation ul {
    margin-bottom: 15px; }
    #side-content .navigation ul li {
      list-style-type: none;
      margin-left: 0px;
      font-weight: bold;
      font-size: 16px;
      padding-top: 15px; }
      #side-content .navigation ul li ul {
        margin: 0px; }
        #side-content .navigation ul li ul li {
          margin: 0;
          padding: 0;
          font-weight: normal;
          font-size: 13px; }

#side-content .image {
  margin: 15px 0;
  text-align: center; }
#side-content .contact h3 {
  text-shadow: 1px 1px 2px #666666;
  padding-top: 10px;
  text-align: center;
  font-weight: bold; }
#side-content .contact form label {
  text-shadow: 1px 1px 2px #666666; }
#side-content .contact form input, #side-content .contact form textarea {
  border: 2px solid #b0b0b0;
  padding: 5px;
  width: 165px; }
#side-content .contact form textarea {
  height: 6em; }

#main-content h1, #main-content h2, #main-content h3, #main-content h4, #main-content h5, #main-content h6 {
  margin: 0 0 0.5em 0;
  text-shadow: 1px 1px 2px #666666;
  font-weight: bold; }
#main-content h1 {
  font-size: 1.8em; }
#main-content h2 {
  font-size: 1.5em; }
#main-content h3 {
  font-size: 1.5em;
  border-top: 2px solid #0f2c74;
  padding-top: 0.5em; }
#main-content h4 {
  font-size: 1.3em; }
#main-content h5 {
  font-size: 1.2em; }
#main-content h6 {
  font-size: 1em; }
#main-content p, #main-content li {
  margin-right: 0.5in; }
#main-content blockquote {
  background: #eeeeee;
  padding: 15px;
  margin: 15px; }
  #main-content blockquote p {
    margin-right: 0;
    margin-bottom: 0; }

#flash {
  padding: 10px;
  background-color: #a5c9ff;
  border-top: solid 5px #3f63ff;
  text-align: center;
  font-size: 1.2em; }
  #flash span {
    font-size: 0.9em; }
    #flash span a {
      font-weight: bold; }

#flash.error {
  background-color: #FFBABA;
  border-top: solid 5px #D8000C; }

body.pages-home #header {
  position: relative; }
body.pages-home #navigation {
  position: static;
  margin-left: 0 !important; }
body.pages-home #side-content {
  position: static;
  margin-left: 10px !important; }
body.pages-home #main-content {
  padding-top: 0;
  padding-left: 0;
  min-height: 0; }
body.pages-home #side-content {
  text-align: center; }
  body.pages-home #side-content h3 {
    font-family: Georgia, Times, serif;
    line-height: 30px;
    margin-bottom: 15px; }
    body.pages-home #side-content h3 a {
      text-decoration: underline; }
  body.pages-home #side-content #offer {
    padding: 5px;
    background-color: #4dc129; }
    body.pages-home #side-content #offer h4 {
      text-shadow: 1px 1px 0px #0f2c74;
      letter-spacing: 0.09em;
      font-size: 1.5em;
      color: white;
      margin: 0; }
    body.pages-home #side-content #offer p {
      font-size: 1.2em;
      margin: 0; }

#slider {
  overflow: hidden;
  display: inline-block;
  margin-top: 20px;
  padding: 15px;
  background-color: #f4f4f4; }
  #slider {
    display: block; }
  #slider h3 {
    font-family: Georgia, Times, serif;
    font-size: 1em;
    font-weight: bold;
    border-bottom: 2px solid #0f2c74; }
  #slider #slider-panes {
    float: left; }
    #slider #slider-panes ul li {
      list-style-type: none;
      margin-left: 0px;
      width: 290px !important;
      height: 200px;
      text-align: center;
      overflow-x: hidden;
      overflow-y: hidden;
      float: left; }
      #slider #slider-panes ul li img {
        border: 2px solid #0f2c74;
        -webkit-box-shadow: 3px 3px 5px #666;
        -moz-box-shadow: 3px 3px 5px #666;
        box-shadow: 3px 3px 5px #666; }
  #slider #slider-prev, #slider #slider-next {
    margin-top: 60px;
    height: 22px;
    background-image: url(../images/catawba/slider-arrows.png);
    background-repeat: no-repeat;
    width: 20px; }
  #slider #slider-prev {
    background-position: 0px -44px;
    float: left; }
  #slider #slider-next {
    background-position: 0px 0px;
    float: right; }
  #slider #slider-prev:hover {
    background-position: 0px -66px; }
  #slider #slider-next:hover {
    background-position: 0px -22px; }
  #slider button {
    background-color: transparent;
    padding: 0;
    border: none;
    cursor: pointer; }

body.pages-contact #main-content .address {
  height: 220px;
  background: transparent url(/images/contact.png) no-repeat bottom right; }
  body.pages-contact #main-content .address address {
    margin: 15px;
    font-size: 1.1em; }
    body.pages-contact #main-content .address address .org {
      text-shadow: 1px 1px 2px #666666;
      margin-left: -15px;
      font-size: 1.8em;
      font-weight: bold;
      margin-bottom: 0px; }

body.pages-faq h4 {
  margin-bottom: 0; }
body.pages-faq span.attribution {
  display: block;
  text-align: right;
  margin: -10px 20px 0 0; }

#books {
  border-collapse: collapse;
  width: 100%; }
  #books td {
    padding: 15px 5px;
    vertical-align: top;
    border-bottom: 2px solid #3f63ff; }
    #books td.cover {
      text-align: right; }
      #books td.cover img {
        border: 2px solid #0f2c74;
        -webkit-box-shadow: 3px 3px 5px #666;
        -moz-box-shadow: 3px 3px 5px #666;
        box-shadow: 3px 3px 5px #666; }
    #books td.cart {
      width: 120px;
      text-align: center; }
      #books td.cart .price {
        text-shadow: 1px 1px 2px #666666;
        font-size: 1.1em;
        font-weight: bold; }
  #books .title {
    text-shadow: 1px 1px 2px #666666;
    font-size: 1.1em;
    font-weight: bold; }
  #books .isbn {
    font-size: 0.8em;
    color: #b0b0b0;
    margin-bottom: 10px; }

.navigation.bookstore {
  padding-top: 15px !important; }
  .navigation.bookstore #search {
    background-color: #b0b0b0;
    padding: 10px;
    margin-bottom: 15px; }
    .navigation.bookstore #search input {
      width: 160px; }
  .navigation.bookstore #cart .empty {
    text-align: center; }
  .navigation.bookstore #cart table.line_items {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 0; }
    .navigation.bookstore #cart table.line_items td {
      padding: 5px 5px 0 5px;
      vertical-align: middle;
      font-size: 0.9em; }
      .navigation.bookstore #cart table.line_items td.price {
        text-align: right; }
    .navigation.bookstore #cart table.line_items tr.even {
      background-color: #b0b0b0; }
    .navigation.bookstore #cart table.line_items tr.subtotal td {
      border-top: 2px solid #7d7d7d;
      text-align: right; }
  .navigation.bookstore #cart p.checkout {
    margin: 10px 0 15px 0;
    font-size: 0.9em;
    text-align: center;
    font-weight: bold; }
    .navigation.bookstore #cart p.checkout a {
      text-decoration: underline; }
  .navigation.bookstore #cart h5 {
    margin: 0;
    font-size: 1.1em;
    font-weight: bold;
    text-align: center; }
  .navigation.bookstore #categories ul {
    border-top: 2px solid #b0b0b0; }
    .navigation.bookstore #categories ul li {
      font-size: 1em;
      border-bottom: 2px solid #b0b0b0;
      padding: 0 15px;
      font-weight: normal; }
      .navigation.bookstore #categories ul li.current {
        background-color: #b0b0b0; }

.bookstore-book h3 {
  padding-top: 10px !important;
  margin: 0; }
.bookstore-book .author {
  font-weight: bold;
  font-size: 1.1em; }
.bookstore-book .description img {
  float: right;
  padding: 0 0 15px 15px; }
.bookstore-book .cart {
  margin-top: 10px;
  float: right;
  text-align: right; }
  .bookstore-book .cart .price {
    text-shadow: 1px 1px 2px #666666;
    font-size: 1.5em;
    font-weight: bold; }

input.quantity {
  border: 1px solid #b0b0b0;
  width: 1.5em;
  text-align: right; }

#cart-review table {
  border-collapse: collapse;
  width: 100%; }
  #cart-review table td {
    padding: 5px 5px 0 5px;
    vertical-align: top; }
    #cart-review table td.price {
      text-align: right; }
    #cart-review table td.update {
      padding-left: 0;
      padding-right: 0; }
    #cart-review table td.remove {
      padding-left: 0; }
  #cart-review table tr.even {
    background-color: #efefef; }
  #cart-review table tr.subtotal td {
    border-top: 2px solid #bfbfbf; }
  #cart-review table tr td.label {
    text-align: right;
    font-weight: bold; }
#cart-review .note {
  color: #7d7d7d; }

#order-form p {
  margin: 10px 0; }
  #order-form p.note {
    color: #7d7d7d; }
    #order-form p.note.tax {
      padding: 0 5px;
      background-color: #efefef; }
#order-form input[disabled] {
  background-color: #efefef; }
#order-form input, #order-form select {
  border: 1px solid #7d7d7d; }
#order-form .fieldError {
  background-color: #FFBABA;
  border: 1px solid #D8000C; }
#order-form h4 {
  margin: 10px 0; }
#order-form #customer-details,
#order-form #billing-details,
#order-form #payment-details {
  display: inline;
  float: left;
  margin-left: 10px;
  margin-right: 10px;
  width: 220px; }
#order-form #customer-details {
  margin-left: 0; }
#order-form #payment-details {
  margin-right: 0; }
#order-form p.first-name,
#order-form p.last-name,
#order-form p.state, #order-form p.zip {
  display: inline;
  float: left;
  margin-left: 10px;
  margin-right: 10px;
  width: 100px; }
#order-form p.first-name,
#order-form p.state {
  margin-left: 0; }
  #order-form p.first-name input, #order-form p.first-name select,
  #order-form p.state input, #order-form p.state select {
    width: 105px; }
#order-form p.last-name,
#order-form p.zip {
  margin-right: 0; }
  #order-form p.last-name input,
  #order-form p.zip input {
    width: 93px; }
#order-form p.phone {
  clear: left; }
#order-form #card-info {
  padding: 1px 10px;
  background-color: #efefef; }
  #order-form #card-info input {
    width: 195px; }
#order-form p.submit {
  margin: 20px 0;
  text-align: right; }
#order-form p.opt-in {
  font-weight: bold; }

#receipt {
  text-align: center; }
  #receipt table.line-items {
    width: 100%; }
    #receipt table.line-items th {
      font-weight: bold; }
    #receipt table.line-items td {
      padding: 5px; }
    #receipt table.line-items td.label {
      text-align: right;
      font-weight: bold; }
    #receipt table.line-items tr.even td, #receipt table.line-items tr.odd td {
      border-bottom: 2px solid #b0b0b0; }
  #receipt table.customer-details {
    width: 100%; }
    #receipt table.customer-details th {
      font-weight: bold;
      text-align: right; }
    #receipt table.customer-details th, #receipt table.customer-details td {
      padding: 0 10px;
      vertical-align: top; }

.pagination {
  text-align: center;
  margin-bottom: 20px; }

body.cart-checkout #main-content {
  font-size: 12px; }

.download-row {
  overflow: hidden;
  display: inline-block; }
  .download-row {
    display: block; }

.download-section {
  display: inline;
  float: left;
  margin-left: 10px;
  margin-right: 10px;
  width: 340px;
  margin-left: 0; }
