/*@import url("fonts.css") screen;*/
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&family=Roboto+Slab:wght@400;700&display=swap');



*{ padding:0; margin:0; box-sizing:border-box; }

body{
	font:14px/21px 'Open Sans', sans-serif;
	color:#333;
	background:#EFEFEF
}

#mobile-header{
	display:none;
	height:0;
	z-index:-99999; 
}

#cookieWarning{
	position:fixed;
	width:100%;
	left:0;
	bottom:0;
	z-index:9999;
	background: rgba(0,0,0,0.85);
	color:#FFF;
	font-size:13px;
	padding:24px 0;
    text-align: center
}

#cookieWarning.hidden{
    display: none
}
#cookieWarning a{
    font-weight: bold;
    color: white
}
#cookieWarning a.btn{
    display: inline-block;
    color: white;
    background: #02AE4A;
    padding: 4px 6px;
    text-decoration: none;
    border-radius: 0.1rem;
    margin-top: 6px
}


a#cart{
	position:absolute;
	background:#2175B1;
	display:block;
	padding:0 16px;
	width:auto;
	left:50%;
	margin-left:280px;
	height:60px;
	line-height:60px;
	color:#FFF;
	text-decoration:none;
	z-index:999;
}

a#cart:hover{
	opacity:0.9
}

a#cart i{
	font-size:32px;
	position:relative;
	top:4px;
}



#cart #cart-items{
	position:absolute;
	top:6px;
	left:26px;
	background:#02AE4A;
	color:#FFF;
	height:18px;
	width:18px;
	line-height:18px;
	text-align:center;
	border-radius:50%;
	display:none;
	font-size:11px;
}


#top{
	background:#2175B1;
	height:60px;
	line-height:60px;
}

#top ul li{
	display:inline-block;
	list-style-type:none;
	margin-left:16px;
}

#top a{
	color:#FFF;
	text-decoration:none;
}

#top a:hover{
	text-decoration:underline;
}


.wrapper{
	width:1240px;
	margin:auto;
	position:relative;
}



header{
	height:144px;
	background:#EEE url(../images/king-snake.jpg) no-repeat center top;
	position:relative;
}

a#logo{
	background:#FFF url(../images/logo.png) no-repeat center;
	display:block;
	height:204px;
	width:200px;
	position:absolute;
	top:-60px;
}

.language-choice{
	margin-left:200px;
}

nav{
	background:#02AE4A
}

nav li{
	list-style-type:none;
	display:inline-block;
	margin-right:24px;
	position: relative;
}

nav li a{
	color:#FFF;
	text-decoration:none;
	font-weight:600;
	text-transform:uppercase;
	padding: 16px;
	display: inline-block;
}
nav li a:hover{
	text-decoration:none;
}
nav li:hover a{
	background: white;
	color: #2175B1;
}
nav li a.active{
	text-decoration:underline;
	font-weight:700
}

nav li ul{
	display: none;
	line-height: normal;
	position: absolute;
	z-index: 9;
	background-color: white;
	width: 400px;
	max-width: 400px;
	overflow: hidden;
	margin:0 !important;
	padding: 8px 0;
	box-shadow: 0 2px 4px rgba( 0, 0, 0, .3 );
}
nav li ul li{
	display: block;
	margin:0 !important;
}


nav li ul li a{
	padding: 8px 16px;
	display: block;
	text-transform: none;
	color: #151515;
	font-weight: 400;
}
nav li ul li a:hover{
	background-color: #EFEFEF;
}

nav li ul li ul{
	position: relative;
	padding-left: 8px !important;
	padding: 0;
	border: none;
	box-shadow: none;
}

nav li:hover ul{
	display: block;
}



#main .wrapper{
	background:#FFF;
	padding:32px;
	min-height:800px;
}


li.search-wrapper{
	position:relative;
}

input#main-search{
	border:1px solid #FFF;
	padding:8px;
	width:200px;
}

#search-results{
	position:absolute;
	top:50px;
	right:0;
	background:#FFF;
	width:320px;
	max-height:300px;
	z-index:9999;
	line-height:18px;
	padding:16px;
	box-shadow:0 1px 2px #CCC;
	overflow-y:auto;
	display:none;
}
#search-results i.fa-spin{
	font-size:21px;
}
#search-results a.result{
	color:#151515;
	font-size:13px;
	border-bottom:1px solid #EEE;
	padding:8px 0;
	display:block;
	margin:0 -16px 0 -16px;
}
#search-results a.result:hover{
	background:#FAFAFA;
}

.search-result-image{
	border:1px solid #EEE;
	padding:4px;
	display:block;
	background:#FFF;
	margin:0 0 0 8px
}

.search-result-image img{
	display:block;
}

.search-result-name{
	font-weight:700;
	display:block;
	color:#02AE4A;
}


h1.alternate-font,
.page h1{
	font-family:'Roboto Slab';	
}
.page h1{
	color:#2175B1;
	margin-bottom:16px;
	border-bottom:1px solid #EFEFEF;
	padding-bottom:16px;
}
.page p{
	margin-bottom:16px;
}
.page h2{
	font-weight:300;
	margin-bottom:4px;
	color:#02AE4A;
	font-size:16px;
}

.page ul,
.page ol{
	margin:0 0 24px 24px;
}

.page img{
	margin:0 8px;
}

.content h2{
	font-weight:400;
	margin-bottom:8px;
	color:#02AE4A;
	font-size:18px;
}

.content h3{
	font-weight:300;
	margin-bottom:4px;
	color:#02AE4A;
	font-size:18px;
}

/* USED AS OPVALLEND BLOK UiT EDITOR */
#homepage .action,
.page .action{
	background:#f57f17;
	padding:8px;
	color:#FFF;
}


/* HOMEPAGE - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
#homepage p{
	margin-bottom:16px;
}

#homepage h1{
	font-weight:300
}

#homepage h2{
	margin-bottom:16px;
	font-weight:700;
	font-size:19px;
	font-family:'Roboto Slab';	
}

#homepage-sidebar{
	/*border-left:1px solid #EFEFEF;*/
	padding:0 0 0 16px;
}

.tile{
	border:1px solid #EEE;
	padding:16px;
	margin-bottom:16px;
	position:relative;
}

.tile h4{
	color:#2175B1;
	line-height:18px;
	font-size:16px;
	font-weight:400;
	margin-bottom:8px;
	height:40px;
}

.tile h3{
	font-weight:400;
	font-size:16px;
	margin-bottom:8px;
	font-family:'Roboto Slab';
}


.tile img{
	max-width:100%;
}

.tile-image{
	height:110px;
	background-repeat:no-repeat;
	background-size:contain;
	background-color:#FAFAFA;
	background-position:center;
	margin-bottom:8px;
}

.tile p.tile-max-height{
	height:170px;
	overflow:hidden;
}


a.row.listing{
	border-bottom:1px solid #EEE;
	margin-bottom:8px;
	padding-bottom:8px;
	display:block;
	color:#252525;
}

a.row.listing p{
	font-size:13px;
	line-height:17px;
	margin-bottom:8px;
}

.listing .listing-image{
	border:1px solid #EFEFEF;
	padding:4px;
}
.listing .listing-image img{
	max-width:100%;
	display:block;
}

.listing span.name,
.listing span.price,
.listing span.percentage{
	display:block;
}

.listing span.name{
	font-weight:400;
	color:#02AE4A;
	font-size:16px;
	margin-bottom:8px;
	font-family:'Roboto Slab';
}
.listing span.price{
	font-size:18px;
	font-weight:700;
	margin-bottom:8px;
	color:#2175B1
}

.listing span.default_price{
	font-size:12px;
	text-decoration:line-through;
	font-weight:300;
	margin-left:8px;
}






h1{
	margin-bottom:16px;
}


ul.tree{

}

ul.tree li{
	list-style-type:none;
	line-height:18px;
	border-bottom:1px solid #DDD;
}
ul.tree li a{
	display:block;
	padding:8px 0;
	font-weight:400;
	color:#2175B1;
	text-decoration:none;

}

ul.tree li a:hover,
ul.tree li a.active{
	text-decoration:underline;
	color:#02AE4A;
}

ul.tree li ul{
	margin-bottom:8px;
}
ul.tree li ul li{
	border:none;
}
ul.tree li ul li a{
	text-transform:none;
	font-size:14px;
	padding:0 8px;
	font-weight:300
}
/*
ul.tree li:hover ul{
	max-height:200px;
}
*/


/* THIRD LEVEL */
ul.tree li ul li ul li{
	border:none;
}
ul.tree li ul li ul li a{
	font-weight:300;
	padding:0 16px;
}

ul.tree.group-dealer li{
	margin-bottom:2px;
}
ul.tree.group-dealer li a{
	background:#2175B1;
	color:#FFF;
	padding:6px 8px;
	border-radius:2px;	
}



.box{
	background:#EFEFEF;
	padding:24px;
}


.box h3{
	margin-bottom:16px;
}


table{
	border-collapse:collapse;
}
table td,
table th{
	vertical-align:top;
	border-bottom:1px solid #EEE;
	padding:8px 0;
	font-size:13px;
}

table.zebra td{
	padding:8px 4px;
}
table.zebra tr:nth-child(even) td{
	background:#FAFAFA;
}


/* [PRODUCT] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */


.product_content p{
	margin-bottom:16px;
}

.product_content h3{
	color:#02AE4A;
	font-weight:300
}

.product_content ul{
	margin:16px;
}

.product_content ul li{
	margin-bottom:8px;
}

.product_content table{
	width:100%;
	border-collapse: collapse;
	border:1px solid #DDD;
	border-width:1px 1px 0 0 ;
}

.product_content table td,
.product_content table th{
	border:1px solid #DDD;
	border-width:0 0 1px 1px;
	padding:8px;
}

.product_content table tr:nth-child(even) td{
	background:#FAFAFA;
}

a.toggle-view{
	background:#EFEFEF;
	display:inline-block;
	width:24px;
	height:24px;
	line-height:24px;
	text-align:center;
	color:#CCC;
	font-size:14px;
}

a.toggle-view:hover,
a.toggle-view.active{
	background:#CCC;
	color:#333
}


.section-header{
	padding:0 0 16px 0;
	border:1px solid #EFEFEF;
	border-width:0 0 1px 0;
	margin-bottom:24px;
}
.section-header span{
	margin:0;
	padding:0;
	color:#AAA;
	font-size: 0.85rem;
	text-transform: capitalize;
}

.section-header span a{
	text-decoration:none;
	color:#333;
	font-weight:300;
}



h1.product-current-product,
h1.cart{
	font-size:28px;
	font-weight:600;
	margin-bottom:24px;
	border-bottom:1px solid #EFEFEF;
	padding-bottom:16px;
	font-family:'Roboto Slab', sans-serif;
	color:#2175B1;
}

h1.product_cat_name{
	font-size:28px;
	font-weight:600;
	margin-bottom:8px;
	padding-bottom:0;
	font-family:'Roboto Slab', sans-serif;
	color:#2175B1;
}
div.product_cat_body{
	margin-bottom: 24px;
}

div.product_cat_body p{
	margin-bottom: 16px;
}

div.product_cat_body a{
	color: #2878AD;
}

div.product_cat_body h2,
div.product_cat_body h3{
	margin-bottom: 4px;
	font-weight: 700;
	color: #24AE54;
	font-size: 1.2rem;
}

.option-select-wrapper,
.add2cartWapper{
	margin-bottom:16px;
}

.option-select-wrapper label,
.add2cartWapper label{
	display:inline-block;
	min-width:80px;
}

select.option_select{
	padding:4px;
	border:1px solid #CCC;
	width:160px;
	font-size:14px;
	font-family:'Muli';
}
select.option_select.error{
	border:1px solid #f44336;
	margin-right:8px;
}




.filter{
	margin-top:32px;
	border-bottom:1px solid #DDD;
	padding-bottom:8px;
}

.filter-name{
	display:block;
	font-weight:700;
	font-size:15px;
	margin-bottom:4px;
	color:#02AE4A;
	text-transform:capitalize;
}

.filter-items{
	display:block;
}

.filter-items label{
	display:block;
}

.filter-items label input{
	margin-right:8px;
}

#products{
	position:relative;
	min-height:600px;
}

#productsLoadscreen,
#productsLoadscreenIcon{
	display:none;
}
#productsLoadscreen.active{
	display:block;	
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:#FFF;
	opacity:0.8;
	z-index:998;
}
#productsLoadscreenIcon.active{
	display:block;		
	position:absolute;
	left:48px;
	top:48px;
	z-index:999;
	font-size:28px;
	color:#2175B1
}

/* PRODUCT LISTING - GRID VIEW*/

#products a.product{
	width:23.5%;
	margin-right:2%;
	margin-bottom:2%;
	display:block;
	height:345px;
	border:1px solid #EEE;
	float:left;
	padding:8px;
	text-decoration:none;
	position:relative;
	background:#FFF;
	border-radius:4px;
	font-weight:300;
}
#products a.product:hover{
	border:1px solid #CCC;
	box-shadow:0 0 2px #CCC;
}

#products a.product:nth-child(4n+4){
	margin-right:0;
}

#products a.product .product-image{
	height:180px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:auto 140px;
	margin:-8px -8px 8px -8px;
}
#products a.product .product-text{
	padding:0 0 16px 0;
}
#products a.product .product-text h3{
	color:#2175B1;
	font-family:'Roboto Slab';
	font-size:14px;
	border-bottom:1px solid #EEE;
	margin-bottom:8px;
	padding:0 0 8px 0;
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;	
}
#products a.product .product-text p{
	height: 56px;
	overflow:hidden;
	text-overflow: ellipsis;
	font-size:12px;
	line-height:19px;
	color:#151515;
	opacity: 0.7;
	font-weight: 400;
}
#products a.product .product-price-wrapper{
	text-align:center;
	padding:8px 0;
	background:#EFEFEF;	
}
#products a.product.is_discount .product-price-wrapper{
	text-align:center;
	padding:8px 0;
	background:#f44336;	
}
#products a.product .product-price-wrapper .default-price{
	display:none;
}
#products a.product.is_discount .product-price-wrapper .default-price{
	display:inline;
	text-decoration:line-through;
	color:#000;
	font-size:12px;
	font-weight:300
}
#products a.product .product-price-wrapper .price{
	color:#2175B1;
	font-size:16px;
	font-weight:700;
	font-family:'Roboto Slab';	
}
#products a.product.is_discount .product-price-wrapper .price{
	color:#FFF;
	font-size:19px;
	font-weight:700;
	font-family:'Roboto Slab';	
}




/* PRODUCT LISTING - LIST VIEW*/

#products.list a.product{
	width:100%;
	margin-right:0%;
	margin-bottom:2%;
	display:block;
	height:auto;
	min-height:156px;
	border:1px solid #EEE;
	border-width:0 0 1px 0;
	float:none;
	padding:8px 8px 16px 8px;
	text-decoration:none;
	position:relative;
}


#products.list a.product .product-image{
	height:120px;
	width:120px;
	position:absolute;
	background-position:center;
	background-repeat:no-repeat;
	background-size:auto 110px;
	margin:0
}

#products.list a.product .product-text{
	margin-left:128px;
	padding:0;
	margin-bottom:8px;

}

#products.list a.product .product-text h3{
	border:none;
	margin-bottom:0;
	padding:0;
	height:auto;
}

#products.list a.product .product-text p{
	height:53px;
}


#products.list a.product .product-price-wrapper{
	margin-left:128px;
	text-align:left;
	padding:8px;
	background:none;
	display:inline-block;
	margin-top:2px;
}
#products.list a.product.is_discount .product-price-wrapper{
	text-align:left;
	padding:8px;
}

#products.list a.product.is_discount .product-price-wrapper .price{
	color:#f44336;
}


/* PRODUCT PAGE */

.price-wrapper{
	display:block;
	margin-bottom:16px;
	text-align:right
}

.discount-default-price{
	text-decoration:line-through;
}

.price-tag{
	font-size:28px;
	font-weight:900;
	color:#02AE4A
}

.product_content span.highlight{
	background:#ffc107;
}

.add2cartWapper{
	height:42px;
	line-height:42px;
}
.add2cartWapper input{
	border:1px solid #CCC;
	padding:8px;
}

.ui-effects-transfer{
	border:2px dashed #000;
	background:#5EB762;
}

#product-main-image a{
	overflow:hidden;
	height:300px;
	text-align:center;
	background:#FAFAFA;
	display:block;
	width:100%;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:contain;
}
#product-main-image img{
	height:300px;
	width:auto;
	display:inline-block;
}

#product-thumbnails a{
	width:100%;
	height:0;
	padding-bottom:100%;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
	display:inline-block;
	position:relative;
	border:1px solid #CCC;
}
#product-thumbnails a img{
	display:none;
}

#product-thumbnails a i{
	position:absolute;
	left:-16px;
	margin-left:50%;
	margin-top:30%;
	width:32px;
	height:32px;
	line-height:32px;
	color:#FFF;
	text-align:center;
	border-radius:2px;
	transition:ease-in-out 0.2s;
}

#product-thumbnails a:hover i{
	background:#000
}


#product-no-image{
	border:1px solid #CCC;
	text-align:center;
	background:#EFEFEF;
	height:256px;
	line-height:256px;
	color:#666;
	font-size:24px;
	font-family:'Roboto Slab';
	font-weight:700
}

h3.subtitle{
	font-weight:300;
	margin-bottom:8px;
}

ul.inline{
	margin:0 0 0 16px;
}

ul.no-liststyle{
	list-style-type:none;
	margin:0 !important;
}

a.product_download{
	background:#FAFAFA;
	border:1px solid #CCC;
	display:block;
	color:#151515;
	border-radius:2px;
	margin-bottom:2px;
	text-decoration:none;
	padding:0 4px;
	font-size:12px;
	min-width:240px;
	overflow: hidden;
	text-overflow: ellipsis;
	height:32px;
	line-height:32px;
	white-space: nowrap;	
}
a.product_download:hover{
	opacity:0.9
}

a.product_download i{
	margin:0 8px;
}

.product-attributes{
	background:#EFEFEF;
	margin:16px 0;
	padding:8px 8px 4px 8px;
}



.product-attributes dt{
	font-weight:700;
}

.product-attributes dd{
	font-weight:400;
	margin-bottom:8px;
}


input#quantity{
	width:60px !important;
	text-align:center;
	height:40px;
	border:1px solid #CCC;
	border-radius:2px;
}

/* [CART] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */


#cart-steps{
	overflow:hidden;
	background:#EEE;
	margin-bottom:24px;
}
#cart-steps .step{
	background:#EEE;
	display:inline-block;
	color:#000;
	padding:8px 16px 8px 24px;
	position:relative;
	margin-right:26px;
	text-transform:uppercase;
	font-weight:300
}

#cart-steps .step:after{
	position:absolute;
	content:'';
	height:100%;
	background:#FFF;
	width:34px;
	z-index:8;
	top:0;
	right:-40px;
	transform:rotate(45deg)
}
#cart-steps .step:before{
	position:absolute;
	content:'';
	height:100%;
	background:#EEE;
	width:34px;
	z-index:9;
	top:0;
	right:-28px;
	transform:rotate(45deg)
}

#cart-steps .step.active{
	background:#4CAF50;
	color:#FFF;
	padding:8px 24px 8px 24px;	
}
#cart-steps .step.active:after{
	right:-34px;
}
#cart-steps .step.active:before{
	background:#4CAF50;
	right:-20px;
}

.inline-error{
	color:#FFF;
	margin:16px 0;
	background:#f44336;
	padding:8px;
}

.cartActions{
	margin-left:16px;
}

a.cartBtn{
	border:1px solid #CCC;
	display:inline-block;
	width:24px;
	height:24px;
	text-align:center;
	line-height:24px;
	background:#EEE;
	color:#000
}



ul.key-value-pair{
	list-style-type:none;
}
ul.key-value-pair li{
	margin-bottom:8px;
}
ul.key-value-pair li span.key{
	display:block;
	font-weight:700
}
ul.key-value-pair li span.value{
	display:block;
	font-weight:400
}

.payment-method{
	border:1px solid;
	margin-bottom:8px;
}
.payment-method-name{
	display:block;
}
a.payment-method-issuer{
	display:inline-block;
	width:110px;
	height:110px;
	background:#EEE;
	margin:0 2px 2px 0
}


/* [CARD] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
.card{
	background:#FFF;
	padding:16px;
	border:1px solid #F0F0F0;
}

.card h2{
	font-family:'Muli';
	font-weight:400;
	color:#151515;
	background:#EFEFEF;
	margin:-16px -16px 16px -16px;
	padding:16px;
	font-size:16px;
}


/* [FORM] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */



.form-group{
	margin-bottom:16px;
}

.form-group label{
	display:block;
	margin-bottom:4px;
	font-weight:500
}

.form-group label i{
	font-size:11px;
	margin-left:2px;
	color:red
}

.form-group input[type=text],
.form-group input[type=email],
.form-group input[type=password],
.form-group select,
.form-group textarea{
	border:1px solid #CCC;
	font-family:'Muli', sans-serif;
	padding:6px;
	font-weight:300;
	width:100%;
}

.form-group textarea{
	height:128px;
	font-size:12px;
}

.form-group input[type=text].error,
.form-group input[type=email].error,
.form-group input[type=password].error{
	border:1px solid red;
}

.form-group input[type=text]:required,
.form-group input[type=email]:required,
.form-group input[type=password]:required{
	border:1px solid #AAA;
}

/* [BUTTON] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */



button,
a.button{
	background:#4caf50;
	color:#FFF !important;
	border:none;
	padding:8px;
	display:block;
	margin-right:8px;
	cursor:pointer;
	border-radius:2px;
	font-family:'Muli', sans-serif;
	font-weight:400;
	text-decoration:none;
	min-width:80px;
	text-align:center;
	height:40px;
	line-height:20px;
	font-size:13px;
	float:left
}

a.button{
	line-height:24px;
}

button:hover,
a.button:hover{
	opacity:0.9
}

button.small,
a.button.small{
	padding:2px 4px;
	height:26px;
	line-height:24px;
	font-weight:400
}

button.block,
a.button.block{
	display:block;
	width:100%;
	margin-bottom:2px;
	font-size:12px;
}
.button.error{ background:#f44336 !important; transition:ease-in-out 0.3s }
.amber{ background:#ffa000; }
.grey{ background:#999 !important; }
.alternate{ background: #2175B1 !important}

.button.grey{
	border:1px solid #888;
}

/* [FOOTER] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */

footer{
}
#main footer .wrapper{
	background:#FAFAFA;
	height:auto;
	min-height:0;
	color:#666;
	font-size:13px;	
}

footer h4{
	font-family:'Roboto Slab';
	color:#2175B1;
	font-size:16px;
	margin-bottom:8px;
}

footer ul{
	margin:0 0 0 16px;
	list-style-type:square;
}
footer ul li{
	color:#999
}
footer ul li a{
	text-decoration:none;
	color:#666;
}


#overlay{ 
	z-index:-9999;
	transition:ease-in-out 0.2s;
	opacity:0;
}
#overlay-cart{
	position:fixed;
	top:-700px;
	width:600px;
	max-width:100%;
	left:-300px;
	margin-left:50%;
	background:#FFF;
	padding:24px;
	z-index:9999;
	border-radius:4px;
	box-shadow:0 0 16px #000;
	transition:ease-in-out 0.3s;
	transform:scale(0.1,0.1);
}

#overlay.active{
	background:#000;
	position:fixed;
	width:100%;
	height:100%;
	left:0;
	top:0;
	z-index:9998;
	opacity:0.7
}

#overlay-cart.active{
	top:100px;
	transform:scale(1,1);	
}


#overlay-findproduct{
	position:fixed;
	top:-700px;
	width:600px;
	max-width:100%;
	left:-300px;
	margin-left:50%;
	background:#FFF;
	padding:24px;
	z-index:9999;
	border-radius:4px;
	box-shadow:0 0 16px #000;
	transition:ease-in-out 0.3s;
	transform:scale(0.1,0.1);
	max-height:80%;
	overflow-y:scroll;
}
#overlay-findproduct.active{
	top:100px;
	transform:scale(1,1);	
}

.notify{
	margin:0 0 8px 0;
	border:1px solid #fbc02d;
	padding:16px;
	background:#ffecb3;
}

.notice{
	margin:0 0 16px 0;
	border:1px solid #EEE;
	padding:16px;
	background:#FAFAFA;
	color:#2175B1
}


#imagelightbox
		{
			cursor: pointer;
			position: fixed;
			z-index: 10000;

			-ms-touch-action: none;
			touch-action: none;

			-webkit-box-shadow: 0 0 3.125em rgba( 0, 0, 0, .75 ); /* 50 */
			box-shadow: 0 0 3.125em rgba( 0, 0, 0, .75 ); /* 50 */
 -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */			
		}


		/* ACTIVITY INDICATION */

		#imagelightbox-loading,
		#imagelightbox-loading div
		{
			border-radius: 50%;
		}
		#imagelightbox-loading
		{
			width: 2.5em; /* 40 */
			height: 2.5em; /* 40 */
			background-color: #444;
			background-color: rgba( 0, 0, 0, .5 );
			position: fixed;
			z-index: 10003;
			top: 50%;
			left: 50%;
			padding: 0.625em; /* 10 */
			margin: -1.25em 0 0 -1.25em; /* 20 */

			-webkit-box-shadow: 0 0 2.5em rgba( 0, 0, 0, .75 ); /* 40 */
			box-shadow: 0 0 2.5em rgba( 0, 0, 0, .75 ); /* 40 */
		}
			#imagelightbox-loading div
			{
				width: 1.25em; /* 20 */
				height: 1.25em; /* 20 */
				background-color: #fff;

				-webkit-animation: imagelightbox-loading .5s ease infinite;
				animation: imagelightbox-loading .5s ease infinite;
			}

			@-webkit-keyframes imagelightbox-loading
			{
				from { opacity: .5;	-webkit-transform: scale( .75 ); }
				50%	 { opacity: 1;	-webkit-transform: scale( 1 ); }
				to	 { opacity: .5;	-webkit-transform: scale( .75 ); }
			}
			@keyframes imagelightbox-loading
			{
				from { opacity: .5;	transform: scale( .75 ); }
				50%	 { opacity: 1;	transform: scale( 1 ); }
				to	 { opacity: .5;	transform: scale( .75 ); }
			}


		/* OVERLAY */

		#imagelightbox-overlay
		{
			background-color: #fff;
			background-color: rgba( 255, 255, 255, .9 );
			position: fixed;
			z-index: 9998;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
		}


		/* "CLOSE" BUTTON */

		#imagelightbox-close
		{
			width: 2.5em; /* 40 */
			height: 2.5em; /* 40 */
			text-align: left;
			background-color: #666;
			border-radius: 50%;
			position: fixed;
			z-index: 10002;
			top: 2.5em; /* 40 */
			right: 2.5em; /* 40 */

			-webkit-transition: color .3s ease;
			transition: color .3s ease;
		}
		#imagelightbox-close:hover,
		#imagelightbox-close:focus { background-color: #111; }

			#imagelightbox-close:before,
			#imagelightbox-close:after
			{
				width: 2px;
				background-color: #fff;
				content: '';
				position: absolute;
				top: 20%;
				bottom: 20%;
				left: 50%;
				margin-left: -1px;
			}
			#imagelightbox-close:before
			{
				-webkit-transform: rotate( 45deg );
				-ms-transform: rotate( 45deg );
				transform: rotate( 45deg );
			}
			#imagelightbox-close:after
			{
				-webkit-transform: rotate( -45deg );
				-ms-transform: rotate( -45deg );
				transform: rotate( -45deg );
			}


		/* CAPTION */

		#imagelightbox-caption
		{
			text-align: center;
			color: #fff;
			background-color: #666;
			position: fixed;
			z-index: 10001;
			left: 0;
			right: 0;
			bottom: 0;
			padding: 0.625em; /* 10 */
		}


		/* NAVIGATION */

		#imagelightbox-nav
		{
			background-color: #444;
			background-color: rgba( 0, 0, 0, .5 );
			border-radius: 20px;
			position: fixed;
			z-index: 10001;
			left: 50%;
			bottom: 3.75em; /* 60 */
			padding: 0.313em; /* 5 */

			-webkit-transform: translateX( -50% );
			-ms-transform: translateX( -50% );
			transform: translateX( -50% );
		}
			#imagelightbox-nav button
			{
				width: 1em; /* 20 */
				height: 1em; /* 20 */
				background-color: transparent;
				border: 1px solid #fff;
				border-radius: 50%;
				display: inline-block;
				margin: 0 0.313em; /* 5 */
			}
			#imagelightbox-nav button.active
			{
				background-color: #fff;
			}


		/* ARROWS */

		.imagelightbox-arrow
		{
			width: 3.75em; /* 60 */
			height: 7.5em; /* 120 */
			background-color: #444;
			background-color: rgba( 0, 0, 0, .5 );
			vertical-align: middle;
			display: none;
			position: fixed;
			z-index: 10001;
			top: 50%;
			margin-top: -3.75em; /* 60 */
		}
		.imagelightbox-arrow:hover,
		.imagelightbox-arrow:focus	{ background-color: rgba( 0, 0, 0, .75 ); }
		.imagelightbox-arrow:active { background-color: #111; }

			.imagelightbox-arrow-left	{ left: 2.5em; /* 40 */ }
			.imagelightbox-arrow-right	{ right: 2.5em; /* 40 */ }

			.imagelightbox-arrow:before
			{
				width: 0;
				height: 0;
				border: 1em solid transparent;
				content: '';
				display: inline-block;
				margin-bottom: -0.125em; /* 2 */
			}
				.imagelightbox-arrow-left:before
				{
					border-left: none;
					border-right-color: #fff;
					margin-left: -0.313em; /* 5 */
				}
				.imagelightbox-arrow-right:before
				{
					border-right: none;
					border-left-color: #fff;
					margin-right: -0.313em; /* 5 */
				}

		#imagelightbox-loading,
		#imagelightbox-overlay,
		#imagelightbox-close,
		#imagelightbox-caption,
		#imagelightbox-nav,
		.imagelightbox-arrow
		{
			-webkit-animation: fade-in .25s linear;
			animation: fade-in .25s linear;
		}
			@-webkit-keyframes fade-in
			{
				from	{ opacity: 0; }
				to		{ opacity: 1; }
			}
			@keyframes fade-in
			{
				from	{ opacity: 0; }
				to		{ opacity: 1; }
			}

		@media only screen and (max-width: 41.250em) /* 660 */
		{
			#container
			{
				width: 100%;
			}
			#imagelightbox-close
			{
				top: 1.25em; /* 20 */
				right: 1.25em; /* 20 */
			}
			#imagelightbox-nav
			{
				bottom: 1.25em; /* 20 */
			}

			.imagelightbox-arrow
			{
				width: 2.5em; /* 40 */
				height: 3.75em; /* 60 */
				margin-top: -2.75em; /* 30 */
			}
			.imagelightbox-arrow-left	{ left: 1.25em; /* 20 */ }
			.imagelightbox-arrow-right	{ right: 1.25em; /* 20 */ }
		}

		@media only screen and (max-width: 20em) /* 320 */
		{
			.imagelightbox-arrow-left	{ left: 0; }
			.imagelightbox-arrow-right	{ right: 0; }
		}


/* COLS ************************************************************************** */
.row{
	box-sizing: border-box;
	margin-bottom: 2%;
}

.row .col-1,
.row .col-2,
.row .col-3,
.row .col-4,
.row .col-5,
.row .col-6,
.row .col-7,
.row .col-8,
.row .col-9,
.row .col-10,
.row .col-11,
.row .col-12{
	box-sizing: border-box;
	float: left;
	margin-right: 2%;
}
.row.padding .col-1,
.row.padding .col-2,
.row.padding .col-3,
.row.padding .col-4,
.row.padding .col-5,
.row.padding .col-6,
.row.padding .col-7,
.row.padding .col-8,
.row.padding .col-9,
.row.padding .col-10,
.row.padding .col-11,
.row.padding .col-12{
	padding: 16px;
}

.row .col-1{ width: 6.50%;  }
.row .col-2{ width: 15%;  }
.row .col-3{ width: 23.5%;  }
.row .col-4{ width: 32%;  }
.row .col-5{ width: 40.5%;  }
.row .col-6{ width: 49%;  }
.row .col-7{ width: 57.5%;  }
.row .col-8{ width: 66%;  }
.row .col-9{ width: 74.5%;  }
.row .col-10{ width: 83%;  }
.row .col-11{ width: 91.5%;  }
.row .col-12{ width: 100%;  }

.row>:nth-last-child(2){	
	margin: 0;
}
.row:nth-last-child(1){
	margin-bottom: 0
}

.row .col-push-24{
	padding:0 0 0 24px;
}

.page a,
.content a{
	color:#2175B1;
}


/* MISC ************************************************************************** */
hr{ border-left:none; border-right:none; border-top:none; border-bottom:1px solid #EEE; margin:32px 0 }
.clear{ clear:both; }
.inner{ position:relative; }
.margin-bottom-8{ margin-bottom:8px; }
.margin-bottom-16{ margin-bottom:16px; }
.margin-bottom-24{ margin-bottom:24px; }
.margin-bottom-32{ margin-bottom:32px; }
.negative-margin-top-8{ margin-top:-8px }
.negative-margin-top-16{ margin-top:-16px }
.negative-margin-top-24{ margin-top:-24px }
.padding-8{ padding:8px; }
.padding-16{ padding:16px; }
.padding-24{ padding:24px; }
.padding-32{ padding:32px; }
.padding-40{ padding:40px; }
.padding-48{ padding:48px; }
.padding-56{ padding:56px; }
.padding-56-32{ padding:56px 32px; }
.spacer-24{ height:24px; display:block;}
.spacer-48{ height:48px; display:block;}
.text-align-right{ text-align:right }
.float-left{ float:left;}
.float-right{ float:right; }
.min-height{ min-height:800px; }
.responsive{ max-width:100%; }
.shadow{ border:4px solid #FFF; box-shadow:0 0 5px #666 }
.outer-shadow{ box-shadow: 2px 2px 4px #999; position:relative; z-index:999 }
.italic{ font-style:italic }
.light{ font-weight:300 }
.center{ text-align:center;}


ul#knowledgebase{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

ul#knowledgebase li a{ text-decoration: none; color: #24AE54; font-weight: 700; font-size: 1rem; }
ul#knowledgebase ul{ margin-top: 0.5rem; margin-left: 1rem; list-style-type: square;}
ul#knowledgebase ul li a{ font-weight: 400; color: #2878AD;  font-size: 0.9rem;}

.flexpage{
	display: grid;
	grid-template-columns: auto 23.5%;
	gap: 1.5rem;
}


#subcats p{
	margin-bottom: 16px;
}
h2.inline a{
	font-weight: 700;
	color: #2175B1 !important;
	font-size: 1.1rem;
	margin-bottom: 0;
	text-decoration: none !important;
	border: none;
}

.subcat-item{
	display: grid;
	grid-template-columns: 128px auto;
	gap: 1rem;
	margin-bottom: 1.5rem;
}
.subcat-item .image {
	border: 1px solid #EFEFEF;
	width: 128px;
	height: 128px;
}
.subcat-item .image img{
	width: 100%;
	height: 128px;
	object-fit: contain;
}

.page.content img{
	max-width: 100%;
}
.content-homepage .row{
	margin-top: 1.5rem;
}
.content-homepage h1{
	line-height: 28px;
	font-weight: 400 !important;
	font-size: 24px;
}
.content-homepage ul,
.content-homepage ol{
	padding: 0 0 0 1rem;
}

#message-bar{z-index:4; width: 100vw; font-size: 0.8rem; text-transform: uppercase; position: fixed; bottom: 0; background: red; color: white; padding: 8px; text-align: center; }