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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
   margin: 0;
   padding: 0;
   border: 0;
   font-size: 100%;
   font: inherit;
   vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

blockquote, q { quotes: none; }
blockquote:before, blockquote:after,
q:before, q:after {
   content: '';
   content: none;
}

/* typekit-set class to target the brief moment of unstyled text before font loads */
.wf-loading * { visibility:hidden; }
.wf-loading #bg-top, .wf-loading #b_anchor, .wf-loading #c_anchor, .wf-loading #b_foot, .wf-loading #b_main_nav, .wf-loading .b_nav, .wf-loading #b_nav, .wf-loading #b_nav ul, .wf-loading #b_basket, .wf-loading #c_anchor .logo, .wf-loading #b_search, .wf-loading #b_search_go, .wf-loading #b_header_social, .wf-loading #b_header_social li, .wf-loading #b_header_social a, .wf-loading #basket
{ visibility: visible; }

html {
   height: 100%;
   margin: 0;
   padding: 0;

   font: normal 10px/10px adobe-caslon-pro,serif;

   color: #333;
   background: #B3C1C1;
}

body {
   height: 100%;
   margin: 0;
   padding: 0;

   font-size: 1.3em;
   font-weight: 600;
   line-height: 2em;

   color: #766c69;
}

input, select, textarea {
   font-family: adobe-caslon-pro,serif;
   font-weight: 600;
}

textarea {
   line-height: 21px !important;
}

table {
   border-collapse: collapse;
   border-spacing: 0;
}
   td { vertical-align: top; }


p { 
   margin: 1em 0; 
}


blockquote {
   padding: 0 20px;

   font-size: 16px;
   font-weight: 600;
   line-height: 24px;

   color: #766c69;

   background: url('img/blockquote-open.png') no-repeat 0 3px;
}

   blockquote p:last-child:after {
      content: url('img/blockquote-close.png');
   }


ol, ul {
   margin: 1em 0;
   padding: 0 0 0 1.5em;
}
   ol li, ul li { margin: 0; }


a, a:link, a:visited    { color: #472a14; }
a:active, a:hover, a.on { color: #902314; }

   a.on { text-decoration: underline; }
   a img { border: 0; }


em { font-style: italic; }
b, strong { font-weight: bold; }

h1 {
   font-size: 25px;
   line-height: 30px;
   font-weight: 600;
}

h2 {
   margin: 1em 0;

   font-size: 16px;
   font-weight: 600;
   line-height: 21px;

	color: #766c69;
}

   h2.large {
      font-size: 18px;
      line-height: 28px;
   }

h3 {
   margin: 1em 0;
   font-size: 1.1em;
   font-weight: 600;
}

/* ---------------------------------------------------------------------- */


#b_anchor {
   position: relative;
   min-height: 100%;

   background: #fff url('/themes/ttv/css/img/content-bg.jpg');

   overflow: hidden;
}
   
   #c_anchor {
      min-height: 529px;
      padding: 18px 0;

      background: url('/themes/ttv/css/img/header-bg.jpg') no-repeat;
   }

      #b_content {
         position: relative;
         padding: 30px 20px 2em;
      }

        #b_content iframe { max-width: 100%; }

         #b_content .product_scroller h2 {
            margin-top: 3em;
         }


/* ----------------------------------------- */


ul.product_list {
   margin: 0;
   padding: 0;
   list-style-type: none;
}

ul.product_list li {
   float: left;

	height: auto;
	min-height: 335px;

  text-align: center;

	padding: 0;
	margin: 0 23px 4em 0;
}


.ajax_block_product {
	height: auto;
	min-height: 335px;

	padding: 0;
	margin: 0 0 4em 0;
}

   .ajax_block_product a.product_img_link {
      display: block;
      margin-right: 0.6em;

      width: 158px !important;
      height: 222px !important;

      border: 1px dashed #d1cfcc;
   }

      .ajax_block_product a.product_img_link:hover {
         border-color: #AAA39B;
      }
   
   .ajax_block_product a.product_img_link img {
      display: block;
      width: 100% !important;
      height: auto !important;
      max-width: 100%;

      vertical-align: bottom; 
   }

   .ajax_block_product a {
      text-decoration: none;
      color: #64615f;
   }

   .ajax_block_product h3 {
      height: 32px;
      margin: 0.5em 0 1em 0;

      font-size: 15px;
      line-height: 17px;
      font-weight: 600;
   }

   .ajax_block_product div.center_block { margin: 8px 0; }

   .ajax_block_product .discount, 
   .ajax_block_product .on_sale,
   .ajax_block_product .online_only {
      color: #da0f00;
      text-transform: uppercase;
      font-weight: bold;
      display: block
   }

   .ajax_block_product .reduction {
      display: block;
      margin-bottom: 0.3em
   }

   .ajax_block_product .price {
      display: block;

      font-size: 14px;
      line-height: 18px;
      font-weight: 700;
      text-align: center;

      color: #472a14;
   }

   .ajax_block_product span.availability {
      color: #488c40;
      font-size: 0.9em
   }

   .ajax_block_product img.on_sale_img { float: left }
   .ajax_block_product span.on_sale {
      display: block;
      float: left;
      width: 33px;
      height: 15px;
      margin-right: 7px;

      text-indent: 9999px;
      overflow: hidden;

      background: url('/themes/ttv/css/img/on-sale.png') no-repeat;
   }

   .ajax_block_product span.discount {
      display: block;
      float: left;
      width: 57px;
      height: 15px;
      margin-right: 7px;

      text-indent: 9999px;
      overflow: hidden;

      background: url('/themes/ttv/css/img/reduced.png') no-repeat;
   }

   .ajax_block_product span.new {
      display: block;
      float: left;
      width: 33px;
      height: 15px;
      margin-right: 7px;

      text-indent: 9999px;
      overflow: hidden;

      background: url('/themes/ttv/css/img/new.png') no-repeat;
   }

   .ajax_block_product .old_price {
      margin-right: 5px;

      font-size: 12px;
      text-decoration: line-through;
      color: #f26322;
   }


   .ajax_block_product a.add_to_cart,
   .ajax_block_product span.out_of_stock {
      display: block;
      padding: 0 0 0 13px;

      font-size: 11px;
      line-height: 14px;
      font-weight: 700;
      text-transform: uppercase;

      color: #472a14;
      background: url('/themes/ttv/css/img/link-arrow.png') no-repeat;
   }

      .ajax_block_product a.add_to_cart { cursor: pointer; }
      .ajax_block_product a.add_to_cart:hover {
         color: #bf2e1a;
      }

   .ajax_block_product span.out_of_stock {
      padding-left: 0;

      color: #bf2e1a;
      background: none;
   }



.flash_message_error, .flash_message_info {
   margin: 1em 0;
   padding: 10px 20px;

   font-size: 14px;

   background: #EEEAE4;
   border: 1px solid #ada8a3;
}


.news-archives-btn {
   float: right;
   margin-left: 20px;
}


#b_main { position: relative; }
#b_main.has-left #left_column { display: none; }
#b_main.has-right #right_column { display: none; }
#b_main.has-both #right_column { display: none; }
#b_main.has-large-right #b_content { margin-right: 257px; }
#b_main.has-large-right.has-both #b_content { margin-right: 0; }

#b_main.has-right #mobile-store-cells #right_column { display: block; }

#mobile-store-cells #right_column {
  float: none;
  width: auto;
  margin-left: 20px;
  margin-right: 20px;
  padding: 50px 0;
  border-top: 1px dashed #ADA8A4;
}

  #mobile-store-cells #right_column .pullout { width: auto; }
  #mobile-store-cells #right_column iframe { width: 100% !important; }
  #mobile-store-cells #right_column .ttv-location-map { width: 100%; }

#left_column_features { margin-bottom: 40px; }

   #left_column_features h1 {
      font-size: 16px;
      font-weight: 600;
      line-height: 21px;
	   color: #766c69;
   }


#right_column {
   float: right;
   width: 203px;
   padding-top: 30px;
   margin-left: 24px;
}

   #right_column.large {
      width: 233px;
   }

   #right_column .product_scroller.featurette {
      margin-bottom: 6em;
   }

   #right_column .featurette {
      margin-bottom: 3em;
   }



.right-only #right_column { width: 293px; }



.f_overlay {
  display: none;
   position: absolute;
   top: 115px;
   left: 40px;
   
   font-size: 16px;
   font-weight: 600;
   line-height: 26px;

   width: 400px;

   color: #534c4a;
}

   .f_overlay h2 {
      margin: 0;

      font-size: 42px;
      font-weight: 600;
      line-height: 40px;

      color: #534c4a;
   }


  .ttv-hs-desktop { display: none; }
  .ttv-hs-mobile { 
    position: relative;
    height: 255px;

    overflow: none;
  }

    .ttv-hs-mobile img {
      display: block;
      position: absolute;
      top: 0;
      left: 0;

      width: 750px;
      min-width: 750px;
    }


.pullout {
   padding: 5px 7px 15px 7px;

   background: #fbf6ef;
   border: 1px solid #a5a4a2;
   box-shadow: 0 0 8px #777;
}

   #right_column .pullout { width: 280px; }


.btn-more {
   display: block;
   padding: 0 0 0 13px;

   font-size: 11px;
   line-height: 14px;
   font-weight: 700;
   text-decoration: none;
   text-transform: uppercase;

   color: #472a14;
   background: url('/themes/ttv/css/img/link-arrow.png') no-repeat;
}


.story-listing,
.story-summary {
   width: 100%;
   height: auto;

   background: #f2eee9;
   border: 1px dashed #cbc9c6;
}

   .story-listing {
      width: 113px;
      height: 113px;
   }

   .story-feature h3,
   .story-summary h3 {
      margin: 0.25em 0;
      font-size: 18px;
   }

   .story-listing h3 {
      margin: 0.25em 0;
      font-size: 14px;
      line-height: 18px;
   }

   .story-listing h3 a,
   .story-feature h3 a,
   .story-summary h3 a {
      text-decoration: none;
      color: #766c69;
   }

   .story-feature .content,
   .story-summary .content {
      padding: 17px;

      font-size: 13px;
      line-height: 22px;
   }

   .story-listing .content {
      padding: 1px 6px;
   }


.story-feature {
   background: #f2eee9;
   border: 1px dashed #cbc9c6;
}

.story-item {
   float: left;
   margin: 0 0 11px 0;
   width: 100%;

   cursor: pointer;
}

  .story-item img { width: 100%; }

   #right_column .story-item { margin: 0 3px 3px 0; }

.recipe-item {
   float: left;

   width: 50%;
   line-height: 18px;
   margin: 0 0 10px 0;
}

   .recipe-archives h2,
   .bfcms-articles h2 {
      margin: 0.2em 0 0.75em 0;

      font-size: 18px;
      line-height: 22px;
   }

.story-archives,
.recipe-archives {
   margin-top: 2em;
   padding-top: 2em;

   text-align: right;
   
   border-top: 1px dashed #ada8a4;
}

   .story-archives .btn-brown,
   .recipe-archives .btn-brown {
      margin-top: -2px;
   }


.artisan .image {
   border: 1px dashed #d1cfcc;
}

.ttv-artisan-summary {
   margin: 1.5em 0;
   min-height: 237px;
}

   .ttv-artisan-name {
      margin: 0.15em 0 0.5em 0;
      font-size: 19px;
      line-height: 26px;
      color: #5f584e;
   }

      .ttv-artisan-featurette .ttv-artisan-name {
         height: 44px;
         margin: 1em 0;

         font-size: 15px;
         line-height: 17px;
      }
      
         .ttv-artisan-featurette .ttv-artisan-name a {
            text-decoration: none;
            color: #64615F;
         }

   .ttv-artisan-thumb {
      position: relative; 

      width: 158px !important;
      height: 222px !important;

      border: 1px dashed #d1cfcc; 

      overflow: hidden;
   }

   .ttv-artisan-content { margin-left: 182px; }
      .ttv-artisan-featurette .ttv-artisan-content {
         margin: 0 1px;
         width: 100%; 

         line-height: 17px; 

         text-align: center;
      }

      .ttv-artisan-featurette .text-fade {
         max-height: 58px;
         overflow: hidden;
      }
         
         .ttv-artisan-featurette .text-fade .fade { bottom: -5px; }

   .ttv-artisan-more { margin: 1.5em 0 0 0; }

   .ttv-artisan-feature,
   .ttv-artisan-feature:link,
   .ttv-artisan-feature:visited {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      overflow: hidden;

      height: 22px;

      font-size: 11px;
      line-height: 25px;
      text-align: center;
      text-decoration: none;
      text-transform: uppercase;

      color: #fff;
      background: url('img/artisan-btn.png') no-repeat;
      border-top: 1px dashed #d1cfcc;
   }


.ttv-artisan-map .ttv-artisan-content { line-height: 19px; }
   
   .ttv-artisan-map .ttv-artisan-content.no-thumb {
      margin-left: 0;
   }

.ttv-artisan-map .ttv-artisan-name {
   margin: 0.15em 0 -0.1em 0;
   font-size: 18px;
   line-height: 19px;
}

.ttv-artisan-map .ttv-artisan-more {
   margin-top: -0.5em;
}

.ttv-artisan-country {
   margin-bottom: 2em;
}

   .ttv-artisan-country h2 {
      margin: 0.25em 0;
      padding: 5px 0 0 0;

      font-size: 21px;
      font-weight: 600;

      color: #5f584e;
   }

.feature {
   border: 1px dashed #cbc9c6;
   background: #efebe5;
}

.feature2 {
  margin: 1em 0 2em;

  padding: 15px 15px 12px;
  background: #f6ede0;
}


.auto_cols > .featurette {
   width: auto !important;
}


#country-list {
   clear: both;
   position:relative;
   z-index:1500;

   margin: 1em 0;
   padding-top:25px;

   font-size: 12px;
   border-top:1px dashed #ada7a3;
   border-bottom:1px dashed #ada7a3;
}

   #country-list h3 {
      margin-bottom: 5px;
      line-height: 1.2em;
   }

#country-list .column {
  float: none;
  display: inline-block;
  vertical-align: top;

  min-width: 180px;
  margin-left:30px;
}

#country-list .last {padding-right:0;}
#country-list .clear {
    line-height:10px;
}

#country-list ul {
   margin: 5px 0 2em 0;
   padding-left:0;
   list-style-type:none;
}

   #country-list li {
      line-height: 1.8em;
   }


#country-list h2 {font-size:14px; font-weight:bold;}

#country-list a {
   font-weight: normal;
   text-decoration: none;
   color:#766c69;
   font-size:14px;
   cursor: pointer;
}

#country-list a:hover {
   color: #2c7dc5;
}


.product-scroller {
   height: 335px;
}


.ttv-recipes { margin-top: 4em; }

.page-tag-recipe #categories_block_left { top: -25px; }
.page-tag-artisan .product_scroller { 
   clear: both; 
   padding-top: 2em;
}



.event-listing {
   padding: 8px;
   border-top: 1px dashed #aea9a5;
}

   .event-date {
      margin: 1em 0 -0.25em;

      font-size: 9px;
      text-transform: uppercase;
      color: #bf2e1a;
   }

   .event-name {
      margin: 0;

      font-size: 14px;
      line-height: 16px;

      color: #64615f;
   }

   .event-description {
      font-size: 14px;
      line-height: 22px;
   }


.event-calendar-full {
   margin-top: 1em;
   margin-bottom: 4.5em;
}


.bf-form-field-name { min-width: 100%; }
.bf-form input[type="text"], .bf-form input[type="email"], .bf-form input[type="password"] { width: 220px; }
.bf-form textarea { width: 300px; }


#social-media-bar {
   margin: 0.25em 0 1em 0;
   padding: 0;

   list-style: none;
}

   #social-media-bar li {
      display: inline;
      margin-right: 30px;
   }

   .psm-plusone { margin-left: -15px; }
   .psm-twitter { margin-left: -35px; }





.ttv-store-event {
   padding: 0 20px;
   margin: 1em 0;

   border: 1px dashed #cbc9c6;
   background: #efebe5;
}

   .ttv-store-event h3 {
      font-size: 16px;
   }

   .ttv-store-event-date {
      margin-top: -1.5em;
   }


.large {
   font-size: 20px;
   line-height: 25px;
}

.bfcms-ctr-random {
  margin-top: 3em;
}

#ttv-home-products {
  position: relative;
  min-height: 335px;
}

    #ttv-home-products > .f1,
    #ttv-home-products > .f2 {
      float: none;
      width: 160px !important;
      height: 335px;
      margin: 40px auto;
    }

    #ttv-home-products .ttv-product-carousel { width: 167px; }
    #ttv-home-products .ttv-product-carousel .jcarousel-clip { max-height: 335px; }

    ul.product_list li { width: 160px; }


.bf-form {
  display: block;
  width: 100%;
}
.bf-form tr, .bf-form-row { display: block; }
.bf-form tr > td, .bf-form-row > td { display: block; }
  .bf-form td { padding: 0.25em 0; }
  .bf-form .bf-form-field-name { padding: 2em 0 0; }
  .bf-form .bf-form-field { padding: 0; }
  .bf-form textarea { width: 100%; }


.upper { text-transform: uppercase; }


#referral-add-friend {
}

  #referral-add-friend.ttv_form label {
    font-size: 13px;
    line-height: 17px;

    color: #363533;
  }

  #referral-add-friend .ttv_form_row {
    border-bottom: 0;
  }
  #referral-add-friend .ttv_form_row > div { margin-bottom: 0; }
  #referral-add-friend .email-addresses input[type="text"] { height: 23px; margin-top: 10px; }
  #referral-add-friend .email-addresses input[type="text"]:first-of-type { margin-top: 0; }
  #referral-add-friend a { float: right; }
