/*
 * 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');
@import url('../css/printgps.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
============================================================================= */

html {
  background: #e6e6e6;
}

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

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

#container {
width: 960px;
margin: 0 auto;
position: relative;
}

/* Helper Classes */

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

.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: 'Lato', sans-serif;
font-size: 14px;
color: #4d4d4f;
}

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

h1 {
font-weight: bold;
font-size: 25px;
text-transform: uppercase;
}

h4 {
font-size: 18px;
color: #000000;
margin: 0;
}


a:link, a:visited {
color: #7ac141;
}

a:hover, a:active {
color: #626262;
}

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

header {
height: 112px;
}

#logo {
float: left;
padding: 20px 0;
}
#logo img { padding: 0; }

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

.top_nav {
float: right;
}

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

.top_nav ul li {
float: left;
padding: 2px 20px;
margin-top: 18px; 
border-right: 1px solid #e5e5e5;
letter-spacing: 1px;
}
.top_nav ul li.last { border-right: none; }

.top_nav a:link, .top_nav a:visited {
color: #000000;
font-size: 13px;
text-decoration: none;
}
.top_nav a:hover, .top_nav a:active { color: #c17b2f;}

.top_nav .collection_item_description { display: none; }

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

#search {
float: right;
clear: right;
background: none;
height: 36px;
width: 210px;
position: relative;
margin-top: 15px;
}

#search input.google_site_search_form_textbox {
background-image: none !important;
background-color: transparent !important;
border: none;
padding-top: 9px;
margin: 1px;
color: #7ac141;
font-family: "lato", sans-serif;
font-size: 15px;
font-style: italic;
font-weight: 300;
}

#search input.google_site_search_form_search_button {
position: absolute;
top: 0;
right: 0;
width: 35px;
height: 35px;
background: none;
border: none;
font-size: 0;
}


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

nav.pnav {
z-index: 9001;
background: url('../graphics/layout/bg_nav.png') no-repeat top left;
height: 45px;
width: 975px;
position: absolute;
top: 112px;
left: -8px;
}

nav.pnav ul {
list-style: none;
padding: 0;
margin: 1px 0 0 0;
text-align: center;
}

nav.pnav ul li {
position: relative;
display:inline-block;
padding: 0 15px;
margin: 0 10px;
}

nav.pnav ul li:hover {
background: #323232;
}

nav.pnav ul li a {
line-height: 42px;
color:#fff;
font-size: 15px;
text-transform: uppercase;
display: block;
}
nav.pnav ul li a:link, nav.pnav ul li a:visited { text-decoration: none; }
nav.pnav ul li a:hover, nav.pnav ul li a:active {}

nav.pnav ul li ul {
position: absolute;
margin:0;
left: 0;
top: 42px;
visibility:hidden;
background: #323232;
width:243px;
text-align: left;
}

nav.pnav ul li ul li {
padding:0 15px;
display: block;
margin: 0;
}

 .fdpc_level_1 li.fdpc_section, .fdpc_level_1 li.fdpc_section:hover { background: url('../graphics/layout/arrow.jpg') no-repeat 225px center;}

nav.pnav ul li ul li:hover a { color: #7ac142; }
nav.pnav ul li ul li:hover ul li a { color: #fff; }

nav.pnav ul li ul li a {
text-transform: none;
font-size: 14px;
}

nav.pnav ul li ul li a:link, nav.pnav ul li ul li a:visited {}
nav.pnav ul li ul li a:hover, nav.pnav ul li ul li a:active { color: #7ac142;}

nav.pnav ul li ul li ul {
position: absolute;
left: 243px;
top: 5px;
}

nav.pnav ul li ul li ul li:hover a, nav.pnav ul li ul li ul li a:hover, nav.pnav ul li ul li ul li a:active { color: #7ac142; }

/*
nav ul li.first ul { visibility: visible !important;}

/* =============================================================================
   Spotlight
============================================================================= */

#spotlight { 
height: 340px;
margin-top: 23px;
position: relative;
}

#spotlight ul { list-style: none; padding: 0; margin: 0;}
#spotlight ul li { display: none;}
#spotlight ul li img { margin: 0; }

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

#spotlight #prev,
#spotlight #next {
  display: block;
  text-decoration: none;
  height: 55px;
  width: 55px;
  position: absolute;
  top: 145px;
  z-index: 8000;
}

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

/* =============================================================================
   Featured
============================================================================= */

#featured { margin-bottom: 2em;}

.featured_title h2 {
background: #7ac141;
margin: 10px 0;
text-align: center;
padding: 8px 0;
color: #fff;
font-size: 20px;
text-transform: uppercase;
font-weight: 400;
}

#featured ul { list-style: none; padding: 0; margin: 0;}
#featured ul li { 
width: 24.85%;
float: left;
text-align: center;
border-left: 1px solid #e6e6e6;
}
#featured ul li.last { border-right: 1px solid #e6e6e6; }

#featured .collection_item_label { background: url('../graphics/layout/bg_featured.png') no-repeat top center; }

#featured .collection_item_label,
#featured .collection_item_label a {
font-size: 18px;
text-decoration: none;
text-transform: uppercase;
font-weight: bold;
color: #000000;
padding-top: 10px;
}

#featured a.btn {
background: url('../graphics/layout/bg_btn.png') repeat-x top left;
padding: 10px 20px;
width: 140px;
border: none;
border-radius: 12px;
-moz-border-radius: 12px;
-webkit-border-radius: 12px;
text-shadow: none;
color: #fff;
text-decoration: none;
text-transform: none;
font-style: normal;
font-size: 15px;
}
#featured a.btn:hover { text-decoration: underline; }

#featured a.btn::after {
content: url('../graphics/layout/feature_arrow.png');
padding-left: 8px;
position: relative;
top: 3px;
}

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

#content {
width: 562px;
padding: 10px 25px 25px;
border: 2px solid #e5e5e5;
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
color:#626262;
font-size: 14px; 
line-height: 26px;
min-height: 369px;
}

#content h4 {
background: url('../graphics/layout/h4_border.gif') repeat-x bottom left;
padding-bottom: 10px;
}


aside.news {
width: 280px;
background:#f5f5f5;
padding: 10px 20px 20px;
border: 2px solid #e5e5e5;
border-radius: 10px;
-moz-border-radius: 10px;
-webkit-border-radius: 10px;
}

aside.news h4 { border-bottom: 2px solid #7ac141; padding-bottom: 10px;}

aside.news .news_articles { background: #fff; padding: 10px; }

aside.news h3.content_news_article_headline a {
color: #c17b2f;
font-size: 14px;
font-weight: 400;
text-decoration: none;
line-height: 22px;
}
aside.news h3.content_news_article_headline a:hover { text-decoration: underline; }
aside.news ul li { border-bottom: 1px solid #e5e5e5; padding-bottom: 15px; margin-bottom: 10px; }
aside.news ul li.last { border-bottom: none; padding-bottom: 5px; margin-bottom: 0;}

aside.news .news_archives { 
background: #fff;
text-align: center;
padding: 0 10px 10px;
}

aside.news .news_archives a {
display: block;
border-top: 2px dotted #e5e5e5;
padding: 10px;
color: #626262;
font-style: italic;
font-size: 18px;
text-decoration: none;
}

aside.news .news_archives a::after {
content: url('../graphics/layout/archives_arrow.png');
padding-left: 8px;
position: relative;
top: 5px;
}

/* =============================================================================
   Footer
============================================================================= */
   
footer {
margin-top: 2em;
border-top: 2px dotted #e5e5e5;
padding-top: 1.5em;
}

footer .col {
width: 245px;
}

footer .col ul { list-style: none; padding: 0; }
footer .col ul li { clear: both; height: 30px; line-height: 30px;  }
footer .col .collection_item_description { display: none; }
footer .col .collection_item_label { float: left; padding-top: 3px; font-weight: 400; }
footer .col .content_image_box { float: left; display:inline-block; padding-right: 6px; }

footer .col a { color: #4d4d4d; text-decoration: none; }
footer .col a:hover { color: #c17b2f;}

footer .contact { 
width: 220px;
text-align: center;
background:url('../graphics/layout/bg_location.png') no-repeat top center;
padding-top: 100px;
line-height: 26px;
}

.locations_website_title,
.location_phones,
.location_email,
.location_info { display: none;}

.copyright {
background: #e6e6e6;
padding: 10px;
color: #777777;
font-weight: 300;
}

.copyright p { width: 960px; margin: 0 auto;}

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

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

.internal #main { margin-top: 72px; }

.internal #content {
  border-radius: 0;
  border: none;
  padding-top: 30px;
}

.internal h1.pagetitle { line-height: 40px; width: 650px; color: #000000;}

aside.subnav {
width: 289px;
border: 1px solid #d8d8d8;
padding: 5px;
background: #fff;
margin-top: -64px;
}

aside.subnav .featured_title h2 {
margin: 0; 
padding: 12px 0;
}

nav.subnav ul.fdpc_level_0 { 
  padding: 5px;
}

nav.subnav ul li.fdpc_level_0 {
  border-top: 1px solid #e5e5e5;
  padding: 10px; 
}
nav.subnav ul li.last { border-bottom: 1px solid #e5e5e5; }
nav.subnav ul.fdpc_level_1 li.last { border-bottom: none;}


/* Top Tier Links */
nav.subnav ul li.fdpc_level_0 a { 
color: #000000;
text-decoration: none;
font-size: 14px;
text-transform: uppercase;
letter-spacing: 1px;
font-weight: bold;
}

nav.subnav ul.fdpc_level_1 { margin: 0; }

nav.subnav ul.fdpc_level_1 li { padding: 0 0 2px 0; }

/* Second Tier Links */
nav.subnav ul.fdpc_level_1 li a {
color: #626262;
text-transform: none;
font-weight: 400;
}

nav.subnav ul.fdpc_level_1 li a:hover { color: #7ac141; }

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

#content h4.dlLocationStack, 
#content .dlCategoriesTitle h4,
#content .event_calendar_header h4 { background: none; }
.dlCategoriesTitle h4 { color: #222; }
#featured .content_image_box { margin: 0 auto; }

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

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

   

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

   

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

   

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

   

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

   

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

   .ie7 .clear { height: 1px; }
   
   .ie7 nav.pnav ul li { display: inline; }
   .ie7 nav.pnav ul li ul li { display: block; }
   
   .ie7 #featured ul li { width: 24.8%; }
   .ie7 .printgps #featured ul li { width: 32%; }

/* =============================================================================
   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: auto;
   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; }

h5.form_title, 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,
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: #7ac141;
}



/* =============================================================================
   Sticky Footer -- Comment In If Desired
============================================================================= */
/*
*  {
   margin: 0;
   }

html, body {
   height: 100%;
   }

.wrapper {
   min-height: 100%;
   height: auto !important;
   height: 100%;
   margin: 0 auto (footer-height); /* the bottom margin is the negative value of the footer's height *//*
   background: black url('../graphics/bg.jpg') no-repeat top center;
   }

.push   {
   height: (footer-height); /* .push must be the same height as footer */
   }

/*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;
    }

    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;
    }
}