@charset "UTF-8";

/* FONTS */

/* AT Rotis Sans Serif Light */
@font-face
{
    font-family: "ATRotisSansSerifLight";
    font-style: normal;
    font-weight: normal;
    src: url("atrotissansseriflight-webfont.eot?#iefix") format("embedded-opentype"), url("atrotissansseriflight-webfont.woff") format("woff"), url("atrotissansseriflight-webfont.ttf") format("truetype"), url("atrotissansseriflight-webfont.svg#ATRotisSansSerifLight") format("svg");
}

/* AT Rotis Sans Serif Regular */
@font-face
{
    font-family: "ATRotisSemisansRegular";
    font-style: normal;
    font-weight: normal;
    src: url("atrotissemisans-webfont.eot?#iefix") format("embedded-opentype"), url("atrotissemisans-webfont.woff") format("woff"), url("atrotissemisans-webfont.ttf") format("truetype"), url("atrotissemisans-webfont.svg#ATRotisSemisansRegular") format("svg");
}

/* Rotis Semi Sans Regular */
@font-face
{
    font-family: "RotisSemiSansLight";
    font-style: normal;
    font-weight: normal;
    src: url("rotissemsanlig-webfont.eot?#iefix") format("embedded-opentype"), url("rotissemsanlig-webfont.woff") format("woff"), url("rotissemsanlig-webfont.ttf") format("truetype"), url("rotissemsanlig-webfont.svg#RotisSemiSansLight") format("svg");
}

/* BASIC CLASSES */

.box .chevron { vertical-align: 5%; }

.box .clr { clear: both; }

.box .dark
{
    margin-bottom: 5px;
    padding: 5px;
    
    background-color: #ECEDED;
}

.box .hide
{
    position: absolute;

    width: 0;
    height: 0;

    top: -1000px;
    left: -1000px;

    overflow: hidden;
}

.box .open,
.box .close
{
    display: block;
    
    padding: 5px 0;
    
    font-size: 1.2em;
    
    text-decoration: none;
    text-transform: uppercase;
    
    background-image: url("../Images/details_open.png");
    background-repeat: no-repeat;
    background-position: right center;
}

.box .close { background-image: url("../Images/details_close.png"); }

/* BOXES */

.box
{
    position: relative;
    display: block;

    width: auto;
    height: auto;

    margin-bottom: 10px;
    border: 1px solid #B1B0AB;
    padding: 10px;

    font-family: Arial, sans-serif;

    background-color: #FFFFFF;
}

.box h1,
.box h2,
.box h3
{
    margin-bottom: 10px;
    
    color: #324139;
    
    font-weight: normal;
    
    text-transform: uppercase;
}

.box h1,
.box h2
{
    font-family: ATRotisSansSerifLight;
    font-size: 20px;
    
    line-height: 25px;
}

.box h1 { margin-bottom: 0; }

.box h1 a { font-size: 20px; }

.box ul,
.box li
{
    margin: 0;
    padding: 0;
    
    list-style-type: none;
}

.box a,
.box input,
.box li,
.box p,
.box td
{
    color: #666666;

    font-size: 12px;
}

.box strong { font-weight: bold; }

.box input[type="text"],
.box input[type="password"],
.box .faux-input
{
    position: relative;
    display: block;

    width: 100%;
    height: 20px;

    margin: 0;
    border: 1px solid #ECEDED;
    padding: 0 5px;

    line-height: 20px;
}

/* link button */
.box .link-button,
.box .link-button-small,
.box .link-button-medium
{
    position: relative;
    display: inline-block;

    float: right;

    border: 1px solid #ECEDED;
    padding: 5px;

    font-size: 10px;

    text-align: center;
    text-decoration: none;
    text-transform: uppercase;

    background-color: #ECEDED;

    cursor: pointer;
}

.box .link-button-small { min-width: 55px; }

.box .link-button-medium
{ 
   min-width: 80px;
   
   margin-bottom: 10px;
}

/* remove button */
.box .remove
{
    position: relative;
    display: block;

    float: left;

    width: 10px;
    height: 20px;

    margin-right: 5px;

    text-decoration: none;

    background-image: url("../Images/remove.png");
    background-repeat: no-repeat;
    background-position: center center;
}

/* radio button */
.box .faux-radio-on,
.box .faux-radio-off
{
    position: relative;
    display: block;
    
    width: 15px;
    height: 20px;
    
    float: left;
    
    background-image: url("../Images/radio_off.png");
    background-position: center;
    background-repeat: no-repeat;
}

.box .faux-radio-on { background-image: url("../Images/radio_on.png"); }

.box .faux-radio-group label
{
    padding-left: 5px;
    
    cursor: pointer;
}

/* checkbox */
.box .faux-checkbox-on,
.box .faux-checkbox-off
{
    position: absolute;
    display: block;
    
    width: 16px;
    height: 16px;
    
    top: 2px;
    
    background-image: url("../Images/checkbox_off.png");
    background-position: center;
    background-repeat: no-repeat;
}

.box .faux-checkbox-on { background-image: url("../Images/checkbox_on.png"); }

.box .faux-checkbox-label
{
    position: relative;
    display: block;
    
    margin-left: 16px;
    padding-left: 15px;
    
    line-height: 20px;
    
    cursor: pointer;
}

/* error messages */
.box .errors p
{ color: #A9081C; }

/* ESRI MAP */

#map
{
	width: 436px;
	height: 280px;

	border: 1px solid #CCCCCC;
}

/* SEARCH */

#shop-search
{
    margin-top: 95px;
}

#shop-search ul
{
    position: relative;
    display: block;

    width: auto;
    height: auto;
}

#shop-search li
{
    position: relative;
    display: block;

    width: auto;
    height: auto;

    margin-bottom: 10px;
    padding: 0;
    padding-right: 40px;
    
    background: none;
}

#shop-search .icon-search
{
    background-image: url("../Images/icon_search.png");
    background-repeat: no-repeat;
    background-position: center right;
}

/* CART TABLE */

.cart-table
{
    width: 100%;
    height: auto;

    margin: 0;
    border: 0;
    padding: 0;
}

.cart-table th,
.cart-table td
{
    padding: 2px;
    
    vertical-align: middle;
}

.cart-table thead th
{    
    text-align: left;
    text-transform: uppercase;
}

.cart-table .column-tiny { width: 10px; }
.cart-table .column-small { width: 30px; }
.cart-table .column-medium { width: 55px; }

.cart-table .first { padding-left: 0; }

.cart-table .number { text-align: right; }

/* CART */

#cart .icon-cart
{
    background-image: url("../Images/icon_cart.png");
    background-repeat: no-repeat;
    background-position: center right;
}

#cart table tfoot td
{
    padding: 10px 2px;

    font-weight: bold;
}

/* TODO LIST (MERKLISTE) */

#todo .icon-todo
{
    background-image: url("../Images/icon_todo.png");
    background-repeat: no-repeat;
    background-position: center right;
}

#todo li
{    
    margin: 0;
    padding: 0;
    
    line-height: 20px;
    
    background: none;
}

#todo .remove { float: left; }

/* CHECKOUT */

#checkout #steps
{
    position: relative;
    display: block;
    
    width: 440px;
    height: 20px;
    
    background-image: url("../Images/steps.png");
    background-repeat: no-repeat;
    background-position: left center;
}

#checkout #steps li
{
    position: relative;
    display: block;
    
    width: 25%;
    height: 20px;
    
    float: left;
    
    color: #666666;
    
    font-size: 10px;
    font-weight: bold;
    
    line-height: 20px;
    
    text-align: center;
    text-indent: -5px;
    text-transform: uppercase;
}

#checkout #steps .first { width: 80px; }
#checkout #steps .second { width: 120px; }
#checkout #steps .third { width: 140px; }
#checkout #steps .last { width: 100px; }

#checkout #steps .current { color: #a9081c; }

#checkout #steps,
#checkout p,
#checkout table
{
    margin-bottom: 10px;
}

#checkout table input[type="text"]
{
    width: 20px;
   
    
    padding: 0 4px;
    
    text-align: center;
}

#checkout th,
#checkout td
{
    padding: 5px;
}

#checkout td
{
    font-size: 12px;
}

#checkout tfoot td { border-top: 2px solid #ECEDED; }

#checkout th,
#checkout .product-details td
{
    font-size: 10px;
}

#checkout .product-details { display: none; }

#checkout .sum { text-align: right; }

#checkout .sum,
#checkout .product-title
{
    padding-right: 15px;
}

/* DISCLAIMER */
#checkout #shop-disclaimer { margin-bottom: 10px; }

#checkout #shop-disclaimer li
{
    position: relative;
    display: block;
    
    margin-left: 10px;
	
	line-height: 20px;
	clear: both;
}

#checkout #shop-disclaimer li ul
{
	margin-left: 16px;
	padding-left: 15px;
}

/* LOGIN, REGISTRATION, PAYMENT, USERDATA */

#shop-login .errors,
#shop-registration .errors,
#checkout .address-form .errors
{
    margin-bottom: 10px;
}

#shop-login .errors p,
#shop-registration .errors p,
#checkout .address-form .errors p
{
    margin: 0;
}

#shop-login ul,
#shop-registration ul,
#checkout .address-form ul
{
    margin-right: 79px;
}

#shop-payment ul { margin-left: 60px; }

#shop-login li,
#shop-payment li,
#shop-registration li,
.shop_form li,
#checkout .address-form li
{
    clear: both;

    height: 20px;
    
    margin-bottom: 10px;
}

#shop-login label,
#shop-payment label,
#shop-registration label,
.shop_form  label,
#checkout .address-form label,
.box .faux-label
{
    position: relative;
    display: block;
    
    width: 95px;
    height: 20px;
    
    float: left;
    
    text-indent: 10px;
    
    line-height: 20px;
}

.shop_form .box
{
	border:none;
}

#shop-payment label { width: auto; }

#shop-registration .faux-radio-group label,
#checkout .address-form .faux-radio-group label
{
    width: 40px;
}

#shop-login input[type="text"],
#shop-login input[type="password"],
#shop-registration input[type="text"],
#shop-registration input[type="password"],
#checkout .address-form input[type="text"],
#checkout .address-form input[type="password"],
.shop_form  input[type="password"],
.shop_form  input[type="text"],
.box .faux-input
{
    width: 240px;
    
    float: left;
}

#shop-login .half-width,
#shop-registration .half-width,
#checkout .address-form .half-width,
#checkout #shippingAddress .half-width
{
    width: 120px;
}

#shop-login .forgotPassword
{
    position: relative;
    display: block;
    
    width: auto;
    height: auto;
    
    margin-left: 100px;
    
    font-size: 10px;
    
    line-height: 20px;
    
    text-transform: uppercase;
}

#checkout .address-form { margin-bottom: 10px; }

/* SORT */

#sort p,
#sort ul
{
    position: relative;
    display: block;
    
    width: auto;
    height: auto;
    
    float: left;
}

#sort p
{
    width: 40%;
    
    margin: 0;
}

#sort ul { width: 60%; }

#sort li
{
    position: relative;
    display: inline-block;
    
    width: auto;
    height: auto;
    
    float: left;
    
    margin-right: 10px;
    
    text-align: left;
}

#sort p,
#sort li label
{
    line-height: 20px;
}

/* PRODUCT LIST */

#product-list .product
{
    margin-top: 5px;
    border-top: 2px solid #ECEDED;
    padding-top: 10px;
	line-height:18px;
}

#product-list .product-image
{    
    width: 90px;
    height: auto;
    
    float: left;
}

#product-list .product-title,
#product-list .product-description,
#product-list .product-actions,
#product-list .product-details
{
    clear: right;
    
    margin: 0 0 5px 90px;
}

.product-title .details-open,
.product-title .details-close
{
    position: relative;
    display: block;
    
    width: auto;
    height: auto;
    
    float: right;
    
    padding-left: 13px;
    
    font-size: 10px;
    
    background-image: url("../Images/details_open.png");
    background-repeat: no-repeat;
    background-position: left center;
}

.product-title .details-close { background-image: url("../Images/details_close.png"); }

#product-list .product-actions
{
    position: relative;
    display: block;
}

#product-list .product-actions ul
{    
    width: auto;
    height: auto;
    
    float: right;
}

#product-list .product-actions a
{
    position: relative;
    display: block;
    
    width: 20px;
    height: 16px;
    
    float: right;
    
    margin-left: 5px;
}

#product-list .icon-action-cart,
#product-list .icon-action-mail,
#product-list .icon-action-todo
{
    background-image: url('../Images/icon_cart_small.png');
    background-repeat: no-repeat;
    background-position: center;
}

#product-list .icon-action-mail { background-image: url('../Images/icon_mail_small.png'); }
#product-list .icon-action-todo { background-image: url('../Images/icon_todo_small.png'); }

#product-list .product-price { line-height: 16px; }

#product-list .product-details
{
	display: none;
	
	padding-top: 15px;
}
#product-list .product-details a { color: #A9071C; }

/* SHIPPING ADDRESSS */
#checkout #toggleShippingAddress { margin-left: 95px; }
#checkout #toggleShippingAddress li
{
    margin-bottom: 0;
    
    line-height: 20px;
}
#checkout #toggleShippingAddress label
{
    display: inline;
    
    float: none;
}

/* FILTERS */
#filter a { text-decoration: none; }
#filter a:focus,
#filter a:hover,
#filter .active
{
    color: #A9081C;
}

#filter .level-1,
#filter .level-2
{
    margin-bottom: 5px;
    
    padding: 0;
}

#filter .level-1 { padding: 5px 0 0 1%; }

#filter .level-1 a,
#filter .level-2 a
{
    position: relative;
    display: block;
    
    width: auto;
    height: auto;
    
    float: left;
    
    text-align: center;
}

#filter .level-1 a
{
    width: 19%;
    
    margin: 0 1% 5px 0;
    
    line-height: 20px;
    
    background-color: #FFFFFF;
}

#filter .level-2 a
{
    width: 8%;
    
    margin: 0 1%;
    
    line-height: 18px;
}

/* Frontpage Product */
#product-frontpage h3
{
    width: auto;    
    min-height: 23px;
    
    padding-left: 40px;
    
    background-image: url('../Images/book-icon.jpg');
    background-repeat: no-repeat;
    background-position: left center;
}

.product-description-long
{
	padding:15px 0 15px 90px;
	line-height:20px;
}

.desc_long_links
{
	width:90px;
	
}


select.dark
{
	border:none;
	padding:2px 5px !important;
	width:252px;
    float: left;
}

#left .product-description-long a
{
	color:#a9121e;
}

#left .desc_long_links h1
{
background: url("../Images/factdark_bg.png") no-repeat scroll 0 0 transparent;
    border-top: 1px solid #d2d2d2;
    color: #FFFFFF;
    height: 20px;
    padding: 1px 0 0 9px;
    text-transform: uppercase;
	width:71px;
	margin:20px 0 10px 0;
	font-size:12px;
	line-height:14px;
}

.product-image img
{
border: 1px solid #B1B0AB;
}


.shop_form label
{
	width:158px;
	display:inline-block;
}

.shop_form .label
{
	padding-bottom:10px;
}

/* jQuery noUiSlider */

#filter .noUi-target {
	margin: 0 25px;
}

#filter .noUi-target,
#filter .noUi-origin {
	border-radius: 0;
}

#filter .noUi-connect {
	background-color: #A9081C;
}

#shop-registration .invalidinput
{
	border: 1px solid #A9081C;
}

#shop-search .searchbox {
	position: relative;
	display: block;
	width: auto;
	height: auto;
}

.searchbox div {
	position: relative;
    display: block;
    width: auto;
    height: auto;
    margin-bottom: 10px;
    padding: 0;
    padding-right: 40px;
    background: none;
}