/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

@import url('../css/normalize.css');
@import url('../css/bootstrap.css');

html,
button,
input,
select,
textarea {
    color: #222;
}

body {
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
 */

img {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* =============================================================================
   FDP Resets
============================================================================= */

.content_image_box {
border-color: transparent;
border-width: 0;
background-image: none;
background-color: transparent;
width: auto;
}

.oldie .content_image_box {
display:inline;
}

/* =============================================================================
   Structure
============================================================================= */

body {
margin: 0;
padding: 0;
background: url('../graphics/layout/bg_body.jpg') repeat-x top left #63051A;
}

.group {
margin: 0 auto;
padding: 0;
width: 960px;
position: relative;
}
   .group:after {
   content: ".";
   display: block;
   height: 0;
   clear: both;
   visibility: hidden;
   }

#container, .wrap {
width: 962px;
margin: 0 auto;
position: relative;
}

.clear {
clear: both; 
height: 0;
overflow: hidden;
}

/* Helper Classes */

.left { float: left; }
.right { float: right; }
.clear {clear: both; }

.block li { display: block; }
.inline li { display: inline; }
.inline-block li { display: inline-block; }

.helper_block { display: block; }
li.helper_inline { display: inline; }
.helpder_iblock { display: inline-block; }


/* =============================================================================
   Typography                                                                 
============================================================================= */

body {
font-family: 'Open Sans', sans-serif;
font-size: 16px;
color: #434343;
}

button, input, select, textarea {
font-family: 'Helvetica', 'Arial', sans-serif;
}

a:link, a:visited {
color: #63051a;
text-decoration: none;
}

a:hover, a:active { text-decoration: underline; }

/* =============================================================================
   Header
============================================================================= */

header {
height: 554px;
overflow: hidden;
}

#logo {
position: absolute;
top: 53px;
z-index: 9999 !important;
left: 34px;
}

/* =============================================================================
   Top Navigation
============================================================================= */

#top_nav {
height: 41px;
overflow: hidden;
}

#top_nav ul {
margin: 0;
padding: 0;
list-style: none;
float: right;
}

#top_nav ul li {
float: left;
padding-right: 20px;
}

#top_nav a {
color: #ffffff;
font-weight: 400;
font-style: italic;
font-size: 14px;
text-decoration: none;
line-height: 43px;
}
#top_nav a:link, #top_nav a:visited {}
#top_nav a:hover, #top_nav a:active {}

#top_nav .collection_item_description { display: none; }

/* =============================================================================
   Search
============================================================================= */

#top_nav #search {
float: right;
background: url('../graphics/layout/bg_search.jpg') no-repeat top left;
width: 178px;
height: 29px;
color: #63051a;
font-weight: 600;
font-style: italic;
font-size: 14px;
position: relative;
margin-top: 5px;
margin-right: 23px;
}

#search input.google_site_search_form_textbox {
background: none !important;
border: none;
color: #63051a;
font-weight: 600;
font-style: italic;
font-size: 14px;
width: 145px;
margin-top: 1px;
}

#search input.google_site_search_form_search_button {
background: url('../graphics/layout/bg_search_btn.png') no-repeat center center;
position: absolute;
height: 29px;
width: 29px;
border: none;
font-size: 0;
}


/* =============================================================================
   Navigation
============================================================================= */

nav {
z-index: 9001;
position: absolute;
top: 42px;
height: 64px;
background: rgba(20, 31, 43, 0.8);
width: 945px;
text-align: right;
padding-right: 16px;
}

nav ul {
margin: 0;
padding: 0;
}

nav ul li {
position: relative;
line-height: 78px;
padding: 0;
}

nav ul li a {
font-size: 14px;
color: white;
text-decoration: none;
font-weight: 600;
text-transform: uppercase;
padding: 0 13px;
}
nav ul li a:link, nav ul li a:visited { color: #ffffff; text-decoration: none; }
nav ul li a:hover, nav ul li a:active {
background: #63051A;
padding: 10px 13px 15px;
}

nav ul li:hover a,
nav ul li.current_page a {
background: #63051A;
padding: 10px 13px 15px;
}

nav ul li ul {
position: absolute;
left: 0;
visibility: hidden;
top: 64px;
background: #63051A;
text-align: left;
width: 250px;
padding: 0 10px;
}

nav ul li ul li {
display: block !important;
line-height: 16px;
padding: 15px 10px;
border-bottom: 1px solid #702F3D;
}

nav ul li ul li a:link, nav ul li ul li a:visited {
  text-transform: none;
  display: block;
}
nav ul li ul li a:hover, nav ul li ul li a:active {
  text-decoration: underline;
}

nav ul li:hover ul li a {
background: none;
padding: 0 10px;
}

nav ul li ul li ul {
  left: 260px;
  top: 0;
}

nav ul li ul li.arrow {
background: url('../graphics/layout/arrow.png') no-repeat 235px center;
}

/* =============================================================================
   Spotlight
============================================================================= */
#spotlight {
position: absolute;
top: 21px;
z-index: 2;
}

#spotlight .content_image img { margin: 5px 0; }

#spotlight ul { list-style: none; }

#spotlight .collection_item_label,
#spotlight .collection_item_description { display: none; }

#spotlight .content_image_box {
height: 517px;
overflow: hidden;
}


#spotlight_nav {
position: absolute;
bottom: 35px;
left: 0;
width: 960px;
text-align: center;
z-index: 9000;
}

   #spotlight_nav a {
   text-indent: -9999px;
   padding: 0 4px;
   display: inline-block;
   outline: 0 none;
   height: 10px;
   width: 6px;
   background: url('../graphics/layout/spotnav.png') no-repeat top center;
   }

      .ie7 #spotlight_nav a {
      text-indent: 0;
      line-height: 0;
      font-size: 0;
      }

   #spotlight_nav a.activeSlide {
   background: url('../graphics/layout/spotnav_h.png') no-repeat top center;
   }


/* =============================================================================
   Content
============================================================================= */

h4 {
font-size: 25px;
margin: 27px 0 13px;
color: #63051A;
text-transform: uppercase;
font-weight: 600;
}

p { margin-top: 0; }

#content {
background: url('../graphics/layout/bg_content_int.gif') repeat top left #D6D6D6;
margin-top: 39px;
border-top: 5px solid #63051A;
padding-bottom: 2em;
}

#content .left {
width: 460px;
padding-right: 32px;
}

/* ======================================================= FEATURED ===== */ 

#featured { 
width: 962px;
margin: 0 auto;
}

#featured ul { list-style: none; margin: 0; padding: 0; }

#featured ul li {
width: 221px;
float: left;
padding-right: 26px;
padding-top: 74px;
position: relative;
}

#featured ul li.last { padding-right: 0; }

#featured .content_image img { margin: 0; }

#featured .collection_item_label {
position: absolute;
top: 32px;
width: 221px;
text-align: center;
color: #ffffff;
font-size: 20px;
font-weight: 600;
text-transform: uppercase;
}

#featured .collection_item_label a:link,
#featured .collection_item_label a:visited {
color: #ffffff;
text-decoration: none;
}

#featured .collection_item_label a:hover, 
#featured .collection_item_label a:active { color: #a2a2a2; }

#featured .collection_item_description {
position: absolute;
top: 93px;
width: 185px;
left: 18px;
color: white;
font-size: 15px;
font-weight: 600;
text-shadow: 1px 1px 1px #2A2A2A;
-moz-text-shadow: 1px 1px 1px #2A2A2A;
-webkit-text-shadow: 1px 1px 1px #2A2A2A;
line-height: 24px;
}
   
/* ======================================================= NEWS ===== */

#content .news {
width: 468px;
background: url('../graphics/layout/bg_news.png') repeat top left;
position: relative;
min-height: 235px;
}

#content .news h4 {
background: url('../graphics/layout/bg_news_headline.png') no-repeat center center;
width: 468px;
text-align: center;
margin-bottom: 3px;
}

  #content .news h4::before {
  content: url('../graphics/layout/news_icon.png');
  }

.news h3.content_news_article_headline a {
color: #434343;
font-size: 16px;
font-weight: 400;
text-decoration: none;
}
.news h3.content_news_article_headline a:hover,
.news h3.content_news_article_headline a:active { text-decoration: underline; }

.news .news_articles { min-height: 115px; }

.news .news_articles ul {
margin: 0;
padding: 0 95px;
list-style: none;
width: 280px !important;
text-align: center;
}

.news .news_articles ul li {
width: 280px !important;
margin-left: 95px;
margin-top: 22px;
}

.news .content_news_article_by_line { color: #63051A; }

.news .next, .news .prev {
position: absolute;
top: 110px;
height: 24px;
width: 10px;
z-index: 9998;
text-decoration: none;
font-size: 0;
}

.news .next { background: url('../graphics/layout/next.png') no-repeat top left; right: 50px; }
.news .prev { background: url('../graphics/layout/prev.png') no-repeat top left; left: 50px; }

.news .news_archives { text-align: right; padding-top: 15px; }
.news .news_archives a {
color: #414343;
font-weight: 600;
font-style: italic;
text-decoration: none;
padding-right: 20px;
}

.news .news_archives a:hover, .news .news_archives a:active {
color: #63051a;
}

#undernews { width: 468px; }

/* =============================================================================
   Footer
============================================================================= */

#social_media {
color: #ffffff;
font-size: 16px;
text-transform: uppercase;
font-weight: 600;
line-height: 42px;
height: 42px;
text-align: center;
background: #1A1A1A;
}

#social_media ul { list-style: none; padding: 0; margin: 0; }

#social_media ul::before {
content: "Keep in Touch";
}

#social_media ul li { display: inline-block; padding: 0 5px; }

#social_media ul li:hover { background: #63051A; }

#social_media ul li a { display: block; }

#social_media .collection_item_label, 
#social_media .collection_item_description { display: none; }
   
footer {
background: #63051A;
color: white;
font-size: 14px;
font-weight: 400;
}

.locations { padding: 10px; }

.locations_website_title,
.location_info,
.location_social_media,
.location_email,
.location_phone+.location_phone,
.location_phone_label { display: none; }

.location_address,
.location_addresses,
.location_phones,
.locations { 
float: left;
padding-right: 5px;
}

.location_addresses {
background: url('../graphics/layout/location.png') no-repeat left center;
padding-left: 20px;
}

.location_phones {
background: url('../graphics/layout/phone.png') no-repeat left center;
padding-left: 20px;
}

.copyright {
float: right;
padding: 20px;

}

/* =============================================================================
   Internal
============================================================================= */

.internal { background: url('../graphics/layout/bg_body_int.gif') repeat-x top left #63051A; }

.internal header {
height: 106px;
}

.internal #content {
background: url('../graphics/layout/bg_content_int.gif') repeat top left;
margin-top: 0;
border-top: 0 none;
max-height: 100%;
padding-top: 86px;
}

.internal h4.sectionname { 
color: #151515;
margin-top: 0;
line-height: 20px;
margin-bottom: 4px;
}

#content aside.left {
width: 250px;
padding-right: 0;
}

aside ul { 
list-style: none;
padding: 0;
margin: 0;
}

aside ul li { 
padding: 14px 0;
border-top: 1px solid #BBB;
}

  aside ul li.last { border-bottom: 1px solid #BBB; }

aside ul li a:link, aside ul li a:visited {
color: #151515;
font-size: 16px;
font-weight: 700;
text-decoration: none;
padding-right: 20px;
width: 200px;
display: block;
}

aside ul li.current_page, aside ul li:hover {
background: url('../graphics/layout/next.png') no-repeat 225px center;
}

.internal .content { width: 658px; margin-bottom: 3em; }

.internal .masthead .content_image_box { background-color: #ffffff; }

#tagline {
height: 83px;
line-height: 83px;
text-align: center;
border-top: 5px solid #63051A;
font-size: 30px;
color: #222;
font-weight: 600;
font-style: italic;
}

#tagline p::before {
content: url('../graphics/layout/left_quote.png');
padding-right: 5px;
}

#tagline p::after {
content: url('../graphics/layout/right_quote.png');
padding-left: 5px;
}

/* =============================================================================
   Gallery Slider
============================================================================= */

#gallery_slider {
background: #1d1d1d;
padding-top: 30px;
border-top: 5px solid #63051A;
margin-top: 3em;
}

#gallery_slider #window {
width: 960px;
margin: 0 auto;
overflow: hidden;
}

#gallery_slider span {
height: 198px;
width: 198px !important;
overflow: hidden;
}

#gallery_slider img {
height: 198px;
width: 198px;
}

#gallery_slider .content_gallery_wrapper {
width: 90%;
overflow: hidden;
padding-left: 53px;
}


#gallery_slider table.collection_gallery_table td {
padding-right: 22px;
padding-bottom: 22px;
}

#gallery_slider .collection_gallery_pagination_link_current {
border: none;
background: transparent;
padding: 3px;
color: white;
}

#gallery_slider a:link, #gallery_slider a:visited {
color: white;
}

#gallery_slider .collection_gallery_pagination_link_prev, 
#gallery_slider .collection_gallery_pagination_link_next {
border: none;
background: transparent;
padding: 3px;
}

#gallery_slider .collection_gallery_pagination_link_prev a, 
#gallery_slider .collection_gallery_pagination_link_next a {

}


#gallery_slider .collection_gallery_pagination_link_prev {
background: url('../graphics/layout/prev.png') no-repeat center left;
width: 10px !important;
height: 24px;
padding: 0 0 0 15px;
}

#gallery_slider .collection_gallery_pagination_link_next {
background: url('../graphics/layout/next.png') no-repeat center right;
width: 10px !important;
height: 24px;
overflow: visible;
padding: 0 15px 0 0;
}

#gallery_slider .collection_item_gallery_label {
margin-top: -20px;
}

#gallery_slider h1 {
width: 866px;
margin: 0 auto 0.5em;
color: white;
text-transform: uppercase;
font-weight: normal;
text-align: center;
background: url('../graphics/layout/gallery_bkgrd.png') no-repeat right center;
padding-left: 10px;
}

/* =============================================================================
   General QA
============================================================================= */


#logo img { position: static; }

#social_media ul { padding-top: 7px; }

#social_media ul::before { vertical-align: bottom; }

#social_media ul li { vertical-align: bottom; }

.internal #content { padding-bottom: 0; }

nav ul li.last ul { width: 235px; }

.masthead img {
padding: 5px;
background: white;
max-height: 243px;
max-width: 650px;
overflow: hidden;
}

.content h4 { margin-top: 0; line-height: 25px; }

.internal .content .content_image_box {
background-color: #ffffff;
}

/* =============================================================================
   Browser QA
============================================================================= */

/* Modern =================================================================== */

  @-moz-document url-prefix() { 
    nav ul li a:hover, nav ul li a:active { padding: 10px 13px 13px; }
    nav ul li:hover a, nav ul li.current_page a { padding: 10px 13px 13px; }
  } 

/* IE (.ie) ================================================================= */

   .ie #spotlight { top: 26px; }
   .ie nav { background: #000000; }
   .ie nav ul li a { font-weight: 400; }
   .ie #container { overflow: hidden; }
   .ie .internal #container { overflow: visible; }
   .ie #featured .collection_item_label { font-weight: 400; }
   .ie #featured .collection_item_description { font-size: 12px; font-weight: 400; }
   .ie .news .news_articles ul li { background: transparent !important; }

/* IE9 (.ie9) =============================================================== */

   

/* IE8 (.ie8) =============================================================== */

   

/* IE8 & IE7 (.oldie) ======================================================= */

   

/* IE7 (.ie7) =============================================================== */

   .ie7 .clear { height: 1px; }
   .ie7 #social_media ul { padding-top: 8px; }
   .ie7 #social_media ul li { display: inline; }

/* =============================================================================
   FDP Styles
============================================================================= */

#catalog {
margin:1.14em 0;
position:relative;
}

#catalog_order_details th {
padding:4px 10px;
}

#internal div.dlCategoriesContainer h4 {
color:#edecea;
font-size:1.1em;
margin:0;
}

#message_details .value {
padding-left:10px;
}

#order_details_cart_actions,.dlItemDetailsFormSubmitContainer,.dlItemDetailsCategory {
font-size:0.9em;
}

.catalog_order_details_section .catalog_order_items_reorder_button {
bottom:0;
clear:both;
margin-top:-1.14em;
position:relative;
right:0;
}

.column_title,table#content_online_proof tbody tr td {
padding:4px 10px 4px 0;
}

.dlItemDetailsPhotoContainer img.dlDetailsPhoto,.dlPhotoContainer img.dlPhoto {
border-color:rgba(0,0,0,0.1);
}

.dlListHeadingContainer a {
color:#edecea;
}

div.dlSpecifyDetailsLinkContainer a:hover,div.dlSpecifyDetailsLinkContainer a:active {
background:#edecea;
color:#B78B90;
}

div.form_row_submit,table#content_online_proof thead tr,#internal h5.form_title,div.dlItemDetailsHeading,div.dlSpecifyDetailsLinkContainer a:link,div.dlSpecifyDetailsLinkContainer a:visited,.dlListHeadingContainer,.dlCategoriesTitle {
background:#e8e8e6;
color:#edecea;
font-size:0.9em;
}

h5.form_title {
clear:both;
}


table.content_data_table td.row_odd,table.express_order p.category_title,#catalog_order_details th,.catalog_order_details_wrapper .catalog_order_section_row .catalog_order_section .catalog_order_section_title,#message_details .label.online_proof_details_label,table.express_order td.order_details_subtotal_value,table.express_order td.order_details_tax_value,table.express_order td.order_details_total_value,.dlItemDetailsFormHeading,.dlItemDetailsCategory {
background: transparent;
color:#555;
vertical-align:middle;
}

table.express_order tr.category,table.express_order tr.category td {
background:transparent none;
}

/* =============================================================================
|   Form Reset                                                                 |
============================================================================= */

button, input, select {
   height: 22px;
   font-size: 12px;
   line-height: 14px;
   }

button, input { padding: 2px 10px; }

input.content_login_portal_password, input.content_login_portal_username, .form_row_submit {
   width: 100%;
   margin: 0;
   padding: 0;
   }

table.calendar tbody td span.day, table.calendar thead th, table.content_data_table th.column_label, div.catalog_display_express p.continue_button, table.express_order th, .dlItemDetailsFormSubmitContainer, div.content_catalog_cart_navigation a:hover {
   background: #E8E8E6;
   color: #333;
   }

table.express_order tr.item td { padding: 7px; }

.dlCategoriesTitle h4, .dlListHeadingContainer a,  { color: #333; }

div.form_row_submit, table#content_online_proof thead tr, #internal h5.form_title, div.dlItemDetailsHeading, div.dlSpecifyDetailsLinkContainer a:link, div.dlSpecifyDetailsLinkContainer a:visited, .dlListHeadingContainer, .dlCategoriesTitle {
   background: #E8E8E6;
   color: #333;
   }

div.required_form_label { color: #EF3A35; }

div.portal_login { clear: both; }

/* =============================================================================
   Sticky Footer -- Comment In If Desired
============================================================================= */


html, body {
	height: 100%;
	}

.wrapper {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -101px;
	}

.push   {
	height: 101px;
	}

/*Opera Fix*/
body:before {
	content:"";
	height:100%;
	float:left;
	width:0;
	margin-top:-32767px;/
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 100%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   Theses examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
       only screen and (min-resolution: 144dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow:none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}