/*


Layout
*/
html {
  background: url('../images/html.png');
  font-family: Arial, sans-serif;
}

body {
  background: url('../images/body.png') top center repeat-x;
  text-align: center;
  min-width: 960px;
}

  #shell {
    background: url('../images/shell.png');
    margin: auto;
    position: relative;
    text-align: left;
  }
  
  .wrapper {
    margin: 0 auto;
    position: relative;
    width: 960px;
  }
  
    #head {
      height: 140px;
      position: relative;
    }
    
      #head h1 {
        background: url('../images/logo.png') no-repeat;
        position: absolute;
        padding: 0;
        top: 5px;
        left: 5px;
        cursor: pointer;
      }
      
      #print-logo{
        display: none;
      }
        
        #head h1 a {
          cursor: pointer;
          display: block;
          height: 90px;
          width: 292px;
        }
          
          #head h1 a span {
            display: none;
          }
    
    #main {
      float: right;
      position: relative;
      width: 75%;
    }
    
    #sub {
      float: left;
      position: relative;
      width: 25%;
    }
    

    #foot {
      background: url('../images/foot.png') top center repeat-x;
      height: 233px;
      clear: both;
      position: relative;
      text-align: left;
    }
    
      #foot p {
        text-transform: lowercase;
        color: #FBF1E5;
        margin-top: 15px;
        font-style: italic;
        font-size: 13px;
      }
      
  .category-container {
    float: left;
    height: 302px;
    margin: 74px 4px 0 4px;
    position: relative;
    width: 302px;
  }
  
    .category-container .category-frame {
      display: block;
      background: url('../images/category-frame2.png');
      height: 302px;
      position: absolute;
      width: 302px;
      z-index: 3;
    }
    
    .category-container a {
      display: block;
      height: 290px;
      margin: 6px;
      position: absolute;
      width: 290px;
      z-index: 4;
    }
    
/*      .category-container a:hover h3.category {
        background: #42470D;
        color: #ffeaca;
        color: white;
        text-decoration: none;
      }
*/    
    .category-container img {
      margin: 6px;
      position: absolute;
      z-index: 2;
    }
    
    .category-container h3.category {
      color: #6B7117;
/*      font-family: Arial, sans-serif;*/
      font-size: 18px;
      font-weight: 100;
      height: 50px;
      position: absolute;
      padding-bottom: 0px;
      padding-top: 0px;
      top: -50px;
      width: 100%;
    }
      
      .category-container h3.category span {
        display: block;
        font-family: Arial, sans-serif;
      }
    
    .category-container .tab {
      background: url('../images/tab-left.png') no-repeat;
      padding-left: 21px;
      height: 56px;
      position: absolute;
      right: 5px;
      top: -25px;
    }
    
      .tab h3 {
        float: left;
        background: url('../images/tab-right.png') right no-repeat;
        color: white;
        font-size: 30px;
        font-weight: 100;
        height: 51px;
        padding:5px 50px 0 0;
      }
      
        * html .tab h3 {
          background: url('../images/tab-right-ie.jpg') top right no-repeat;
        }
      
        .tab p {
          color: white;
          font-family: Arial;
          font-size: 12px;
          line-height: 12px;
          position: absolute;
          right: 20px;
          top: 12px;
/*          width: 50px;*/
        }
    
      .category-container span {
        color: #301711;
        font-weight: bold;
      }
      
  #product-view {
    float: left;
    margin-right: 20px;
    margin-top: 20px;
    display: inline;
    height: 445px;
    width: 445px;
    position: relative;
  }
  
    #product-view #frame {
      background: url('../images/product-frame2.png') no-repeat;
      position: absolute;
      height: 445px;
      width: 445px;
      z-index: 3;
    }
    
      #product-view img {
        top: 7px;
        left: 7px;
        position: absolute;
        z-index:2;
      }
      
  #product-description {
    float: left;
    position: relative;
    width: 485px;
  }
  
    #product-description h2 {
      right: 0;
      position: absolute;
      top: 0;
    }
    
    #product-description p#variation-name {
      margin-top: 0;
    }
  
    #product-description form {
      border-top: 1px solid black;
      border-bottom: 1px solid black;
      margin-bottom: 10px;
      padding: 10px 0;
      text-align: center;
    }
    
      #error-wrapper {
        display: inline;
        float: left;
        padding: 10px 15px 10px 0;
        width: 200px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
      }
      
      #product-description select {
        font-size: 11px;
        width: 200px;
      }

      #product-description #quantity-container {
        float: left;
        display: inline;
        line-height: 36px;
        margin-right: 15px;
      }
        
        #product-description #quantity-container label {
          display: block;
          float: left;
          height: 36px;
          line-height: 36px;
          margin: 0;
          padding: 0;
          width: 30px;
        }
    
      #product-description #quantity {
        height: 20px;
        background: url('../images/quantity.png') no-repeat;
        width: 36px;
        border: none;
        padding: 8px 0;
        font-size: 18px;
        text-align: center;
      }
  
    #product-description label {
      color: #301711;
      font-size: 14px;
      font-style: italic;
    }
    
    input#add {
      display: block;
      float: left;
      border: none;
      background: url('../images/add-to-cart.png') no-repeat;
      height: 36px;
      width: 182px;
      margin-top: 0;
      cursor: pointer;
    }
    
    #product-description p {
      color: #301711;
      font-size: 18px;
/*      margin-top: 20px;*/
    }
    
    #product-description small {
      font-family: Georgia, serif;
      font-style: italic;
      font-size: 14px;
    }
    
  #productNav {
    margin: 25px 0;
  }  
  
  .navContainer {
    float: left;
    width: 180px;
  }
  
    .navContainer h4 {
      border-bottom: 1px solid #67483B;
      padding-left: 15px;
      padding-bottom: 5px;
      margin-bottom: 10px;
      font-weight: 100;
    }
    
    .navContainer ul {
      font-size: 12px;
      padding-left: 15px;
      margin-left: 0px;
    }
    
      .navContainer ul li {
        margin-bottom: 3px;
        list-style: none;
        padding-left: 8px;
        padding-top: 0px;
        background: url('../images/bullet.gif') center left no-repeat;
      }
        
        .navContainer ul li a {
          padding: .15em;
        }
      
  .spotlight-item {
    background: url('../images/press-box.png') no-repeat;
    height: 200px;
    width: 314px;
    float: left;
    display: inline;
  }
  
    .spotlight-item a.top, .spotlight-item div.top {
      display: block;
      width: 314px;
      height: 105px;
      text-align: center;
    }
    
      a.top img, div.top img {
        margin-top: 25px;
      }
      
    .spotlight-item .bottom {
      padding: 0 20px;
    }
    
  #primary {
    float: left;
    display: inline;
    width: 650px;
  }
  
  #secondary {
    float: right;
    display: inline;
    width: 270px;
  }
  
/*

Type

*/
#primary {
  line-height: 1.5em;
}

h1, h2, h3, h4, h5, h6 {
  color: #A81915;
  font-family: Georgia, serif;
  padding-bottom: 1em;
  padding-top: 20px;
}

h1 {
  font-size: 24px;
  padding-bottom: .5em;
}
  
  ul, ol {
    margin-left: 1em;
    padding-bottom: 1em;
  }
    
    ul li, ol li {
      padding-top: .5em;
    }

#lead-in {
  margin-bottom: 30px;
  width: 100%;
}

  #lead-in h1 {
/*    border-bottom: 1px solid #67483B;*/
    padding-bottom: 5px;
    margin-bottom: 10px;
  }
  
  #lead-in p {
    font-size: 18px;
  }
  
#primary p, #secondary p, #product-description p  {
  margin-bottom: 1em;
}

#checkout-views h1 {
  margin-bottom: 15px;
}

  #checkout-views h2, #checkout-views h3 {
    padding-bottom: 0;
  }

hr {
  color: #67483b;
  background-color: #67483b;
  border: none;
  height: 1px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: .75em;
  margin-top: .5em;
}

#primary table, #secondary table {
  background: #C2D69B;
  color: #984807;
  margin: 0 0 1em 0;
  width: 70%;
  border-collapse: collapse;
}
  /* ie and firefox uses javascript to apply the alt class */
  #primary tr.alt th, #primary tr.alt td {
    background: #D6E3BC;
  }

  #primary table th, #secondary table th {
    border-bottom: 1px solid #67483b;
    margin: 0;
    padding: .25em;
  }
  
  #primary table td, #secondary table td {
    margin: 0;
    padding: .25em;
  }
  
  /*
  dark green: #C2D69B
  light green: #D6E3BC
  brown: #984807
  */
/*

General Links
*/
#primary a {
  text-decoration: underline;
}

#primary a:hover, #productNav a:hover {
  background: #42470D;
  color: #ffeaca;
  color: white;
  text-decoration: none;
}

.customize-button {
  float: right;
  display: inline;
}

/*

Faq
*/
.faq-questions {
  font-size: 80%;
}


/*

Navigation
*/
ul.navBar {
  font: normal normal normal 16px/27px Georgia, serif;
  margin: 0;
  padding: 0;
  z-index: 1;
}

ul#navPrimary {
  position: absolute;
  top: 101px;
  left: 0;
  z-index: 1;
}

ul#navSecondary {
  right: 0;
  position: absolute;
  top: 101px;
  z-index: 1;
}

  ul.navBar li {
    display: inline;
    float: left;
    height: 39px;
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    width: auto;
  }
    
  ul.navBar li.hover {
    background: red;
  }
  
    ul.navBar li a {
      position: relative;
      text-transform: lowercase;
      border-right: 1px solid #677114;
      color: #FBF1E5;
      display: block;
      height: 39px;
      line-height: 38px;
      margin: 0;
      padding: 0 1em;
      text-decoration: none;
      font-weight: bold;
      z-index: 1;
    }
    
      ul.navBar li a.first {
        border-left: 1px solid #677114;
      }
    
    ul.navBar li a:hover {
      background: url('../images/nav-hover.png') repeat-x;
      color: white;
    }
    
  
ul#navTop {
  position: absolute;
  top: 20px;
  right: 0;
}

    ul#navTop li {
      margin-left: 20px;
    }
    
      ul#navTop li a {
        color: #FBF1E5;
        font-size: 14px;
      }
      
      ul#navTop li a:hover {
        color: white;
      }

ul#navFoot {
  display: block;
}

a {
  color: #42470D;
  text-decoration: none;
}

/*a:hover {
  color: #67483B;
}
*/

/*


Misc
*/
#cocoDesign {
  display: block;
  height: 16px;
/*  position: absolute;*/
/*  right: 10px;*/
/*  top: 10px;*/
  margin-top: .75em;
  width: 54px;
}

  #cocoDesign img {
    height: 16px;
    width: 54px;
  }

* {
  margin: 0;
  padding: 0;
}

img {
  border: 0;
}
/* for the buddha box thumbnails on the party favors page */
ul.thumbnails {
  margin: 0;
  padding: 0;
}
  
  ul.thumbnails li {
    float: left;
    list-style: none;
    margin: 0;
    padding: 0;
  }

/*
home page
*/
.homepage {
  padding: 0 1px 10px 1px;
}
  
  .homepage p {
    margin: 0;
    padding: 0;
  }
  
  .homepage br {
    display: none;
  }
  
  #home-slideshow {
    height: 306px;
    width: 948px;
  }
    
    #home-slideshow ul {
      margin: 0;
      padding: 0;
    }
    
      #home-slideshow ul li {
        display: block;
        list-style: none;
        margin: 0;
        padding: 0;
        position: absolute;
      }
      
  .homepage ul {
    margin: 0;
    padding: 0;
  }
    
    .homepage ul li {
      display: inline;
      list-style: none;
      margin: 0;
      padding: 0;
    }
  
  
/*


Comes in Handy Sometimes
*/
.NoMargin {
  margin: 0 !important;
}

.clear, .clearme {
  clear: both;
}

.right {
  clear: both;
  float: right;
  margin-left: 20px;
}

.left {
  clear: both;
  float: left;
  margin-right: 20px;
}

ul.inline-list {

}

  ul.inline-list li {
    display: inline;
    float: left;
    list-style: none;
  }
  
    ul.inline-list li a {
      float: left;
    }

/*

finish order view
*/
.finish_order, .confirm_order {
  padding: 30px 0;
}

.finish_order h2, .confirm_order h2 {
  padding-bottom: 0.5em;
}

#thank-you-printme-text {
  display: none;
}
  
  .multiple_shipping_table {
    font-size: 14px;
  }
    
    .multiple_shipping_table td {
      padding: 10px 5px !important;
      vertical-align: top;
    }

/*
starfield site seal that appears in the foot
*/
#siteseal {
  position: absolute;
  right: 0px;
  top: 50px;
}

/*SUBTRUCT STUFF*/

/* BEGIN TABLE LIST CSS */

div.listContainer {
	height:300px;
	width: 100%;
	border: 1px solid #666666;
	background-color: #fff;
	overflow: auto;
}


.list {
	border: 1px solid #666666;
	border-right: none;
	width: 100%;
}
/* don't put a border around tables contained by a div */
div.listContainer .list {
	border: 0px;
	width: 100%;
}

.list td {
/*  background-color: #fff;*/
	padding: 2px 6px;
	border-right: 1px solid #666;
}

.list tr.odd td {
  background-color: #FFEACA;
}

.list tr.even td, .even {
  background-color: #FFEACA;
}
.numeric, .list .numeric {
	text-align:right;
}
.list th, .list tr.header td, .list td.header {
	font-weight: bold;
/*  background-color: #777777;*/
  background: #EFDFC1;
/*  background-image:url(/plugin_assets/substruct/images/table_header_bg.png);*/
/*  color: #eeeeee;*/
  color: #353708;
	border-bottom: 1px solid #666666;
  border-right: 1px solid #666666;
	text-transform:capitalize;
	padding: 4px;
	text-align: left;
}

.list tr.footer td {
	font-weight:normal;
	font-style:italic;
/*  color: #333333;*/
  background-color: #EFDFC1;
	border-top: 1px solid #666;
	text-transform:capitalize;
}

.list td.borderTop {
	border-top:1px solid #999999;
}

/* END TABLE LIST CSS */

div.float, div.floatHalf {
  display: inline;
	float:left;
	margin-right:10px;
}
div.floatHalf {
	width:45%;
}

/* MAIN TRI FLOATS */

div.floatTri {
  display: inline;
	float: left;
	width: 31%;
	margin-right: 20px;
	background-image: url(/plugin_assets/substruct/images/public-ui/column-fade-middle.gif);
	background-repeat: repeat-x;
}
div.floatTri h2 {
	text-align: center;
	margin-bottom: 10px;
}

div.floatTri h4 {
	margin-left: 20px;
}

div.floatTri p {
	margin-top: 0px;
	margin-left: 20px;
	margin-right: 20px;
}
div.floatTri form {
	margin-left: 20px;
	margin-right: 20px;
}

.floatTri .left {
	float: left;
	background-image: url(/plugin_assets/substruct/images/public-ui/column-fade-left.gif);
	background-repeat: no-repeat;
	width: 10px;
	height: 150px;
}
.floatTri .right {
	float: right;
	background-image: url(/plugin_assets/substruct/images/public-ui/column-fade-right.gif);
	background-repeat: no-repeat;
	width: 10px;
	height: 150px;
}
.floatTri .middle {
	padding-top: 20px;
}

/* /MAIN TRI FLOATS */


.content_pad {
	padding: 20px;
	padding-top: 0px;
}

.fieldWithErrors input, .fieldWithErrors * option, .fieldWithErrors * {
  background-color: #dddddd;
}

.formError {
	color: red;
	font-style: italic;
	padding-bottom: 5px;
	padding-left: 10px;
}

#ErrorExplanation {
  width: 400px;
  border: 2px solid red;
  padding: 7px;
  padding-bottom: 12px;
  margin-bottom: 20px;
  background-color: #f0f0f0;
}

#ErrorExplanation h2 {
  text-align: left;
  font-weight: bold;
  padding: 5px 5px 5px 15px;
  font-size: 12px;
  margin: -7px;
  background-color: #c00;
  color: #fff;
}

#ErrorExplanation p {
  color: #333;
  margin-bottom: 0;
  padding: 5px;
}

#ErrorExplanation ul li {
  font-size: 12px;
  list-style: square;
}

div.error {
	margin:10px;
	background-color:#FFFF99;
	border:1px solid #804D68;
	font-weight: bold;
	padding: 20px;
	text-align:center;
	color: #804D68;
}
input.error {
	background-color: #FFD3E3;
}
.textInput {
	color: #333;
	line-height: 1em !important;
}

.textInput, .textArea, textarea.gift_message {
	border: 1px solid #7d6a55;
	padding: 4px;
}

textarea.gift_message {
  width: 96%;
}

  .character-count {
    position: absolute;
    margin: 0;
    padding: 0;
    right: 20px;
    top: 0;
/*    left: 310px;*/
  }
.textInput.big {
	border: 2px solid #7d6a55;
	height: 25px;
	color: #8a8075;
	font-size: 18px;
	line-height: 28px;
	padding-top: 7px;
	background-image: url(/plugin_assets/substruct/images/public-ui/input-bg.gif);
	background-repeat: repeat-x;
}


/* CLASSES */
.minor_callout {
	margin-bottom: 20px;
}
.minor_callout p {
}
.main_block {
	margin-bottom: 20px;
	margin-left: 10px;
	margin-right: 10px;
}
.form_block {
	margin: 10px 0px 20px 0px;
/*  padding: 20px;*/
  padding: 5px;
  position: relative;
/*  background-image: url(/plugin_assets/substruct/images/public-ui/column-fade-middle.gif);*/
	background-repeat: repeat-x;
  border-top: 1px solid #67483B;
}
.form_block h2 {
	margin-bottom: 10px;
}

#checkout-views label {
	clear:both;
	font-weight:bold;
/*  color: #666666;*/
	display:block;
	padding-bottom: 5px;
}

  #checkout-views table {
    width: 100%;
  }

.info {
	font-size: 11px;
	font-style:italic;
/*  color: #666666;*/
	line-height:14px;
}

/*rails flash growl message*/
/*#backdrop {
  background: #000;
  height: 100%;
  left: 0;
  opacity: .7;
  filter: alpha(opacity=70);
  position: fixed;
  top: 0;
  width: 100%;
  z-index:98;
}
*/

/*#flash {
  background: url('../images/growl/growl-bottom.png') no-repeat center bottom;
  color: white !important;
  position: fixed;
  font-size: 12px !important;
  right: 20px;
  text-align: left;
  top: 20px;
  width: 180px;
  padding: 0 10px 10px 10px;
  cursor: pointer;
  z-index: 99;
}

  #flash #close-button {
    position: absolute;
    top: -6px;
    right: 4px;
    background: url('../images/growl/growl-close.png') no-repeat;
    width: 17px;
    height: 17px;
    z-index: 15;
  }

  div#flash.hover {
    background: url('../images/growl/growl-bottom-hover.png') center bottom no-repeat;
  }
  
    div#flash.hover #flash-top {
      background: url('../images/growl/growl-top-hover.png') top center no-repeat;
    }

  #flash-top {
    display: block;
    background: url('../images/growl/growl-top.png') top center no-repeat;
    height: 10px;
    position: absolute;
    top: -10px;
    width: 200px;
    left: 0;
  }
  
  #flash p {
    padding: 5px 0;
  }
  
  #flash h3 {
    color: white;
    padding: 0 0 2px 0;
  }*/
  
  #flash {
    background: #A81915;
    border-top: 10px solid #FFEDD0;
    color: white;
    padding: 20px 10px;
    width: 50%;
  }
  
  #flash h3 {
    color: white;
    margin: 0;
    padding: 0;
  }
  
  .checkout {
    display: block;
    background: url('../images/cart-button.jpg') no-repeat;
    font-family: Georgia;
    font-weight: bold;
    text-align: center;
    color: white;
    height: 44px;
    line-height: 44px;
    width: 180px;
  }

#email-sign-up {
  border: 1px solid #313902;
  background: #FFEACA;
  top: -80px;
  left: 260px;
  padding: 20px;
  height: 50px;
  position: absolute;
  width: 200px;
  z-index: 100;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

  #email-sign-up #close{
    cursor: pointer;
    position: absolute;
    top: 10px;
    right: 10px;
  }

  #email-sign-up label {
/*    color: white;*/
  }