/*
 * 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
   ========================================================================== */

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

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
body { font-family: 'Arvo', serif;}
.uppercase { text-transform: uppercase }
a { color: inherit; text-decoration: none; }
hr { border-color: #000000; margin: 13px 0 20px 0; }
h1, h2, h3, h4, h5, h6 { margin-top: 0; }
.serif { font-family: Arvo, serif;}
.sans-serif { font-family: Arial, sans-serif; }
.hr { border-top:1px solid #DAD3CC; height:1px; font-size:0; margin-bottom:20px; clear:both; }
.hr.topspace { margin-top: 20px; }

.message { font-family: Arial, sans-serif; font-size: 14px; font-weight: bold; text-align: center; border: 1px solid black; height: 30px; line-height: 30px; margin-bottom: 15px; cursor: pointer; }
.message.success { background: #efe; }
.message.failed { background: #fee; }

.button { margin: 10px 0; padding: 5px 10px; color: #ffffff; background-color: #c00; font-size: 16px; border: none; transition: all 0.2s; }
.button:hover { background-color: #c44; }
a.button { color: #fff !important }
input.button { color: #fff !important; }
input.button.black { background-color: #000 !important; }

#maincolumn {  width: auto; margin: 0; padding: 0; }
.section-outer { clear: both; width: 100%; min-width: 1000px; }
.section-inner { width: 1000px; max-width: 1000px; margin: 0 auto; padding: 0; position: relative; }

#topbar { height: 53px; line-height: 52px; text-transform: uppercase; font-size: 16px; }
#topbar-left { float: left; padding-left: 20px; }
#topbar-right { float: right; }
#social-top a { text-decoration: none; }
#callus { color: #000; }
#callus a { color: #000; text-decoration: none; }
#topbar-left .separator { margin: 0 15px; font-size: 18px; vertical-align: middle; }
.top-button { display: inline; padding: 5px;  }
.top-button a { display: inline-block; height: 24px; line-height: 24px; font-size: 14px; color: #ffffff; text-decoration: none; border-radius: 12px; margin-right: 5px; padding-right: 5px; transition: all 0.2s; }
.top-button img { height: 16px; padding: 0 5px; margin: 0;  }
.top-button span { margin: 0 5px; }
.login-button { background: #cc0000 url(/img/lock.png) left center no-repeat;  padding-left: 24px;}
.login-button:hover { background-color: #cc5050;}
.contact-button { background: #cc0000; padding: 0 5px; }
.contact-button:hover { background-color: #cc5050; }
#cart-topline { background: #333333 url(/img/cart.png) left center no-repeat; padding-left: 30px; text-align: right; }
#cart-topline:hover { background-color: #666666; }
#cart-rest { margin: 0; padding: 0; display: none; position: absolute; }

#top-separator { height: 26px; line-height: 26px; width: 100%; min-width: 1000px; background: url(/img/dots-light-bg.png);}

#menubar { height: 43px; background-color: #333333; }
#menubar ul { color: #ffffff; list-style: none; padding: 0; margin: 0; height: 43px; line-height: 43px; }
#menubar li { display: inline-block; text-align: center; margin: 0;  transition: background-color 0.2s; }
.lt-ie8 #menubar li { float: left; }
#menubar li a { display: inline-block; height: 40px; margin: 0; padding: 0; color: #fff; text-decoration: none; font-weight: bold; font-size: 15px; }
#menubar li:hover, #menubar li.active { background: #CC0000 url(/img/down-arrow.png) center bottom no-repeat; }
#menulist-left { float: left; }
#menulist-left li a { padding: 0 19px; }
#menulist-right { float: right; }
#menulist-right li a { padding: 0 11px; }

#logo { position: absolute; height: 152px; width: 152px; top: 21px; left: 500px; margin: -76px 0 0 -76px; vertical-align: middle; }
#logo a { text-decoration: none; }
#logo img { width: 152px; height: auto; }

#message-section { background: url(/img/hatch-bg.png) repeat; }
#message { height: 63px; text-align: center; padding: 83px 0 44px 0; }
#message span { display: block; line-height: 34px; font-weight: bold; font-size: 36px; }
#message .message-top { color: #333333; }
#message .message-bottom { color: #EB1920; }

#title-section { background: url(/img/dots-dark-bg.png) repeat; height: 46px; line-height: 46px; color: #ffffff; font-size: 30px; text-align: center; margin: 0; }

.home-slider-image { transition: all 0.2s; }
.home-slider-image:hover { z-index: 1000; opacity: 0.85; box-shadow: 0 0 8px #000; }

#standard-section { min-height: 300px; padding: 20px 0; } /* background: #fafafa; looks nice? */
#standard-section a { color: #c00;}
#standard-section-centre { float: left; width: 550px; padding-left: 20px; margin-bottom: 20px; font-family: Arial, sans-serif; font-size: 14px; }
#standard-section-centre.no-image { width: 750px; }
#standard-section h2, #standard-section h3, #standard-section h4 { margin-top: 0; font-weight: bold; color: #666666; font-family: Arvo, serif; }
#standard-section-sidebar-right { float: right; width: 200px; padding-left: 20px; margin-bottom: 20px; text-align: right; }
#standard-section hr { margin: 10px 0; }
#standard-section-right { float: left; width: 750px; padding-left: 20px; margin-bottom: 20px; }

#menu-left { float: left; width: 190px; margin: 0 10px 20px 0; }
#menu-left ul { margin-top: 0; font-size: 16px; line-height: 25px; color: #666666; padding-left: 5px; list-style-position: inside; }
#menu-left li a { color: #666666; }
#menu-left li { list-style-position: outside; margin-left: 20px; }
#menu-left li.active { color: #EB1921; list-style-image: url(/img/gt-list-icon.png); }
#menu-left li a:hover { color: #EB1922; }
#menu-left li.active > a { color: #EB1922; font-weight: bold; }
#menu-left li.parent-menu.active ul.child-menu { margin-left: 0; }
#menu-left ul.child-menu { margin-left: 15px; margin-bottom: 0px; }

#breadcrumb { font-family: Arial, sans-serif; font-size: 11px; line-height: 17px; color: #666666; }
#breadcrumb a { color: #666666; }
#breadcrumb a:hover { color: #000000; }
#breadcrumb .breadcrumb-active { color: #CC0000; }

#login-left { float: left; width: 450px; text-align: right; padding-right: 50px; margin: 0; }
#login-left form { float: right; width: 300px; }
#login-right { float: left; width: 375px;  padding-left: 50px; border-left: 1px solid #aaa; }
form.login label { float: left; clear: both; }
form.login input { margin-bottom: 5px; float: right; clear: right; }
form.login fieldset { border-left: 1px solid #ddd; padding-left: 10px; margin-bottom: 20px; text-align: right; }
form.login legend { font-weight: bold; text-align: left; }

.account-table { width: 100%; border: 1px solid black; font-size: 14px; }
.account-table th { text-align: center; }
.account-table tr { border: 1px solid #aaa; }
.account-table tbody tr { font-family: Arial, sans-serif; text-align: left; }
.account-table tbody tr td, .account-table tbody tr th { padding: 5px 12px; }
.account-table tr.cert-expired { background-color: #ffe0e0;}
.account-table .cert-expired .date { font-weight: bold; color: #c00; }
.account-table tr.cert-expiring-soon { background-color: #ffebcd;}
.account-table tr.cert-in-date { background-color: #efe;}
.account-table .even-row { background-color: #f4f4f4; }
.even-shading tr:nth-child(even) { background-color: #f4f4f4; }
.odd-shading tr:nth-child(odd) { background-color: #f4f4f4; }


#pager { float: left; }
.page-number { background: #fff; color: #000; padding: 2px 4px; min-width: 8px; text-align: center; border: 1px solid #c00; }
.page-number.current { background: #c00; color: #fff; }

.advert { margin-bottom: 20px; }
.advert img { max-width: 175px; border-radius: 4px; }

#products-section { margin: 20px 0; }
#products-left { float: left; max-width: 200px; margin: 0; margin-bottom: 20px; }
#products-left ul { margin-top: 0; font-size: 16px; line-height: 25px; color: #666666; list-style: none; padding-left: 5px; }
#products-left li a { color: #666666; display: block; line-height: 18px; margin: 8px auto; }
#products-left li { background: url(/img/circle-list-icon.png) left center no-repeat; padding-left: 16px; }
#products-left li.active { color: #EB1921; background: url(/img/gt-list-icon.png) left center no-repeat; }
#products-left li a:hover { color: #EB1922; }
#products-left li.active a { color: #EB1922; font-weight: bold; }
#products-filter { margin-right: 25px; text-align: right; margin-bottom: 15px; }
#products-search-box { margin-bottom: 5px; }
#products-search-box.main-products-page { text-align: right; margin-bottom: 5px; margin-right: 40px; }
#products-search-box input[type=submit] { min-width: 60px; }
#products-search-box input[type=text] { width: 115px; margin-left: 5px; }
#products-filter-form span { font-weight: bold; color: #666666; }
#products-filter-form select { min-width: 180px; margin-left: 5px; }

#product-details, #products-list { float: right; width: 780px; margin-bottom: 50px; font-family: Arial, sans-serif; font-size: 12px; }
#products-category-description { color: #666; font-family: Arvo, serif; font-size: 14px; }
#products-category-description p { margin-top: 0; }
#products-list-items { overflow-y: auto; overflow-x: hidden; }
#products-list-items h2 { font-family: Arvo, serif; }
.products-box { float: left; position: relative; width: 175px; min-height: 240px; padding: 0 15px 0 0; margin-bottom: 15px; }
.products-box:hover .products-box-image { border: 1px solid #EE1C25; }
.products-box-image { position: relative; width: 170px; height: auto; border: 1px solid #CCCCCC; margin-bottom: 5px; padding: 5px; }
.products-box-image img { max-width: 170px; height: auto; background: #ffffff url(/img/white-square.png); }
.products-box-manufacturer, .products-box-name { color: #666666; margin: 5px 0; clear: both; }
.products-box-manufacturer:hover, .products-box-name:hover { color: #000; }
.products-box-name { font-weight: bold; }
.products-box-description { font-style: italic; }
.products-box-name, .products-box-description { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.products-box.in-cart .products-box-image { border: 1px solid #EE1C25; background: url(/img/product-box-corner.png) top right no-repeat; }
.products-box img.in-cart-img { position: absolute; top: 0; right: 0; width: 40px; height: 35px;}
.products-box img.on-offer-img { position: absolute; top: 0; left: 0; width: 40px; height: 35px;}
.category.products-box-image { width: 170px; padding: 0; }
.category.products-box-name { font-size: 16px; font-weight: bold; }

#product-details-left { float: left; width: 370px; margin-right: 20px; }
#product-details-imgcontainer { width: 370px; height: 370px; overflow: hidden; background: url(/img/product-details-border.png) center no-repeat; padding: 1px; }
#product-details-imgcontainer img { position: relative; z-index: -1; width: 350px; height: auto; margin: 10px; }
#product-details-priceline { float: left; margin: 10px 0; font-size: 20px; line-height: 24px; font-weight: bold; color: #CC0000; }
#product-details-priceline .price-number { color: #333333; }
#product-details-addtocart .button { float: right; height: 30px; background: #CC0000 url(/img/basket-icon.png) right center no-repeat; padding: 0 35px 0 15px; }
#product-details-variations-box { float: right; clear: right; }
#product-details-right { float: right; width: 360px; font-size: 13px; }
#product-details-title { color: #666666; font-family: Arvo, serif; font-size: 21px; font-weight: normal; }
#product-details-manufacturer, #product-details-description p, #product-details-backlink { margin: 0 0 25px 0; font-weight: bold; }
#product-details-description p { color: #666666; }
#product-details-backlink a { color: #CC0000; }

.cart-table { width: 100%; }
.cart-table tbody { border: 1px solid #ddd; }
.cart-table th { background-color: #f7f7f7; border-bottom: 1px solid #ddd; padding: 10px; text-align: left;  }
.cart-table td { padding: 5px 10px; }
.cart-quantity-form-button { width: 20px; text-indent: -10000px; border: 1px solid #ddd; background-color: #fff; }
.cart-quantity-form-button.update { background: #fff url(/img/reload.png) center no-repeat; }
.cart-quantity-form-button.delete { background: #fff url(/img/cross.gif) center no-repeat; }
.cart-table .cart-product-image img { border: 1px solid #eee; background-color: #fff; padding: 10px; }
.cart-table tbody tr { border-bottom: 1px dashed #eee; text-align: left; }
.cart-table tbody tr:hover { background-color: #f5f5f5; }
.cart-table-sub-line, .cart-table-sub-line .space { font-weight: bold; border-right: 1px solid #ddd; }
.cart-table-sub-line .subtotal-text { text-align: right; padding-right: 45px; border-bottom: 1px solid #ddd; }
.cart-table-sub-line .subtotal-number { text-align: left; border-bottom: 1px solid #ddd; }
.cart-table #checkout-line { padding: 10px 0; }
.cart-table a#cart-checkout-button { color: #fff; font-weight: bold; }

.checkout-center-column { width: 500px; margin: 0 auto; float: none; }
.checkout-center-column h3 { margin: 1.5em 0 5px 0 !important; }
#checkout-progress { text-align: center; }
#checkout-progress ul { list-style: none; padding-left: 0; }
#checkout-progress ul li { display: inline; display: inline-block; padding: 5px; border-radius: 5px; cursor: default; }
#checkout-progress li .check { display: none; }
#checkout-progress li.current { border: 1px solid #c00; }
#checkout-progress li.done { border: 1px solid #c00; background: #fdd; }
#checkout-progress li.done .check { display: inline; }
#checkout-progress li.done .number { display: none; }
.checkout-confirm-table { text-align: left; }
.checkout-confirm-table td, .checkout-confirm-table th { padding: 2px 5px }

#contact-section { margin: 20px 0; }
#contact-section .section-inner { min-height: 420px; width: 1000px; padding: 0; }
#contact-section .bg-image { float: right; max-width: 200px; }
#contact-left { width: 392px; min-height: 392px; float: left; background: url(/img/map-bg.png) center top no-repeat; }
#contact-map { padding: 20px; }
#contact-right { float: left; width: 420px; padding-left: 20px; }
#contact-right h2 { font-size: 21px; font-weight: normal; color: #666666; }
#contact-right #wheretofind { margin: 0; }
#contact-right #askus { margin: 40px 0 0 0; }
#contact-right p { margin: 15px 0; }
#contact-right p, #contact-right ul, #contact-form { color: #666666; font-family: Arial, sans-serif; font-weight: normal; font-size: 13px; line-height: 18px; }
#contact-right p .label, #contact-form label { color: #000000; font-weight: bold; }
#contact-numbers a { color: #666666; }
#contact-numbers #contact-email { color: #CC0000; }
form { font-family: Arial, sans-serif; font-size: 12px; }
.form-row { max-width: 400px; margin: 0; padding-top: 15px; clear: both; }
.form-row.wide { max-width: 600px; }
.form-row label { padding-right: 4px; }
.form-row input, .form-row label { color: #000000; float: left; width: 145px; max-width: 145px; margin-right: 35px; }
.form-row.wide input { max-width: 245px; width: 200px; }
.form-row.separate label { border-top: 1px solid #ccc; padding-top: 15px; }
.form-row.separate input { margin-top: 15px; }
.form-row textarea { color: #000000; width: 330px; min-height: 105px; }
#form-send { width: auto; margin: 10px 10px 60px 0; height: 30px; line-height: 30px; color: #ffffff; font-size: 16px; background: #CC0000; padding: 0 15px; border: none; transition: box-shadow 0.2s; }
.form-error { background: #f8ecec; border: 1px solid #000; }
#form-error { font-style: italic; color: #666666; }
.required {transition: background-color 0.2s; }

div.training-course { float: left; width: 50%; margin: 0; padding: 0; }
.training-course h3.training-heading { font-size: 16px; color: #c00 !important; margin: 0 10px; }
.training-course .training-content { font-size: 12px; font-family: Arial, sans-serif; padding: 20px; }
.training-course .training-content h3 { font-size: 15px; font-family: Arvo, serif; }
.training-course .training-content ul { padding-left: 15px; }
.training-course.left { clear: both; }
.training-course:target .training-heading { position: relative; background: url(/img/gt-list-icon.png) left center no-repeat; padding-left: 16px; }

#news-section { float: left; max-width: 550px; width: 550px; margin: 0 0 20px 0; padding: 0; }
#news-section h2 { margin: 0 0 10px 0; }
#news-archive { float: right; width: 180px; padding: 10px; border: 1px solid #eee; max-height: 500px; overflow: auto; }
#news-archive a.show-more { display: none; font-size: 11; font-style: italic; }
.news-item { clear: both; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 1px solid #f4f4f4; }
.news-date-box { float: left; clear: both; text-align: center;  color: #ccc; width: 50px; padding: 3px; padding-right: 15px; margin-right: 15px; border-right: 1px solid #ccc; }
.news-date-box .day { font-size: 40px; font-weight: bold; line-height: 30px; margin: 5px 0; }
.news-date-box .month, .news-date-box .year { font-size: 12px; font-family: Arial; line-height: 13px; }
.news-date-line { color: #aaa; font-style: italic; }
.news-header, .news-summary { margin: 0 0 5px 85px; }
.news-summary, #news-content { font-family: Arial, sans-serif; }
.news-image { border: 1px solid #eee; padding: 3px; }
.news-item .news-image { float: right; }


#slider-section { height: 575px; }
#slider-section .flexslider, #slider-section .flex-viewport { height: 520px; max-width: 950px; margin: 0 auto; }

#middle-section { background: url(/img/dots-dark-bg.png) repeat; height: 358px; padding: 24px 0 0 0; }
#middle-section .section-inner, #middle-section-small .section-inner { display: table; max-width: 1000px; }
.middle-section-box { display: inline; display: table-cell; width: 333px; max-width: 333px; padding: 0; text-align: center; }
.lt-ie8 .middle-section-box, .lt-ie8 .middle-section-small-box { float: left; width: 330px; margin: 0; padding: 0; }
.middle-section-box h3 { color: #ffffff; font-weight: bold; font-size: 30px; margin: 10px 0 0 0; }
.middle-section-box h4 { color: #333333; font-weight: normal; font-size: 20px; line-height: 22px; margin: 0;}
.middle-section-box p { max-width: 240px; margin: 10px auto 0 auto; padding: 0; color: #333333; font-family: Arial, sans-serif; font-weight: normal; font-size: 15px; line-height: 17px;  }

#middle-section-small { background: url(/img/dots-dark-bg.png) repeat; height: 101px; padding: 12px 0; }
.middle-section-small-box { display: table-cell; max-width: 333px; min-width: 330px; padding: 0; margin: 0; text-align: left; }
.middle-section-small-box img { float: left; padding: 15px 35px; }
.middle-section-small-box h3 { color: #ffffff; font-weight: bold; font-size: 25px; margin: 10px 0 0 0; line-height: 22px; }
.middle-section-small-box h4 { color: #333333; font-weight: normal; font-size: 20px; margin: 5px 0 0 0; line-height: 25px; }


#bottom-section .section-inner { display: table;  max-width: 1000px; padding: 30px 0; height: 195px; }
.bottom-section-box { display: table-cell; vertical-align: top; max-width: 210px; min-width: 210px; margin: 0; padding-left: 40px; }
.lt-ie8 .bottom-section-box { float: left; }
.bottom-section-box h4 { color: #000000; margin: 0; max-width: 200px; font-weight: normal; }
.bottom-section-box p { max-width: 200px; color: #666666; margin-top: 5px; line-height: 22px; }
.bottom-section-box p.fast-fact {  }
.bottom-section-box ul { padding-left: 20px; margin-top: 5px; list-style: none; line-height: 19px; }
.bottom-section-box ul li { list-style-type: disc; list-style-position: outside; color: #666; }
.bottom-section-box ul li a { color: #666666; text-decoration: none; }
.bottom-section-box ul li a:hover { color: #000000; }

#footer { padding: 15px 0; color: #CCCCCC; background: #333333; font-family: Arial, sans-serif; font-size: 12px; }
#copyright { float: left; padding-left: 40px; }
#copyright .devs { display: block; font-size: 11px; }
#copyright .devs a { color: #C72121; }
#social-bottom { float: right; padding-right: 40px; max-width: 200px; }
#social-bottom span { margin-right: 15px; }

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

/* FlexSlider */
/* Browser Resets */
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus  {outline: none;}
.slides,
.flex-control-nav,
.flex-direction-nav {margin: 0; padding: 0; list-style: none;}
/* FlexSlider Necessary Styles
*********************************/
.flexslider {margin: 0; padding: 0;}
.flexslider .slides > li {display: none; -webkit-backface-visibility: hidden;} /* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {width: 100%; display: block;}
.flex-pauseplay span {text-transform: capitalize;}
/* Clearfix for the .slides element */
.slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}
html[xmlns] .slides {display: block;}
* html .slides {height: 1%;}
/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {display: block;}
/* FlexSlider Default Theme
*********************************/
.flexslider {margin: 0 0 60px; background: #fff; border: 4px solid #fff; position: relative; -webkit-border-radius: 4px; -moz-border-radius: 4px; -o-border-radius: 4px; border-radius: 4px; box-shadow: 0 1px 4px rgba(0,0,0,.2); -webkit-box-shadow: 0 1px 4px rgba(0,0,0,.2); -moz-box-shadow: 0 1px 4px rgba(0,0,0,.2); -o-box-shadow: 0 1px 4px rgba(0,0,0,.2); zoom: 1;}
.flex-viewport {max-height: 2000px; -webkit-transition: all 1s ease; -moz-transition: all 1s ease; transition: all 1s ease;}
.loading .flex-viewport {max-height: 300px;}
.flexslider .slides {zoom: 1;}
.carousel li {margin-right: 5px}
/* Direction Nav */
/*.flex-direction-nav {*height: 0;}*/
.flex-direction-nav a {width: 30px; height: 40px; margin: -20px 0 0; display: block; background: url(../img/bg_direction_nav.png) no-repeat 0 0; position: absolute; top: 50%; z-index: 10; cursor: pointer; text-indent: -9999px; opacity: 0.7; -webkit-transition: all .3s ease;}
.flex-direction-nav .flex-next {background-position: 100% 0; right: -36px; }
.flex-direction-nav .flex-prev {left: -36px; }
.flexslider:hover .flex-next {opacity: 0.8; }
.flexslider:hover .flex-prev {opacity: 0.8; }
.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {opacity: 1;}
.flex-direction-nav .flex-disabled {opacity: .3!important; filter:alpha(opacity=30); cursor: default;}
/* Control Nav */
.flex-control-nav {width: 100%; position: absolute; bottom: -40px; text-align: center;}
.flex-control-nav li {margin: 0 6px; display: inline-block; zoom: 1; *display: inline;}
.flex-control-paging li a {width: 16px; height: 16px; display: block; background: url(/img/slide-pager-dark.png) center no-repeat; cursor: pointer; text-indent: -9999px; }
.flex-control-paging li a:hover { background: url(/img/slide-pager-red.png) center no-repeat; opacity: 0.8; }
.flex-control-paging li a.flex-active { background: url(/img/slide-pager-red.png) center no-repeat;  cursor: default; }
.flex-control-thumbs {margin: 5px 0 0; position: static; overflow: hidden;}
.flex-control-thumbs li {width: 25%; float: left; margin: 0;}
.flex-control-thumbs img {width: 100%; display: block; opacity: .7; cursor: pointer;}
.flex-control-thumbs img:hover {opacity: 1;}
.flex-control-thumbs .flex-active {opacity: 1; cursor: default;}
@media screen and (max-width: 860px) {
    .flex-direction-nav .flex-prev {opacity: 1; left: 0;}
    .flex-direction-nav .flex-next {opacity: 1; right: 0;}
}

/*
 * Cookie control
 */

#cookie-control { position: fixed; left: 0; right: 0; bottom: 0; height: auto; line-height: 20px; padding: 10px 0; color: #fff; background: #333; background: rgba(51, 51, 51, 0.75); text-align: center; }
#cookie-control .cookie-control-text { font-family: "Trebuchet MS" , Arial, sans-serif; font-size: 10pt; }
#cookie-control a { width: 70px; margin: 0 0 0 20px; color: #ffffff !important; font-size: 16px; background: #c00; padding: 0 15px; text-decoration: none; transition: background-color 0.2s; }
#cookie-control a:hover { background-color: #c33; }

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