/* ========================== SYS eCommerce Style CSS Document ======================== */ 
/* Copyright 2015. All Rights Reserved.
/* #eCommerce Styles
============================================================================= */

/* ===== SHOP RESETS ===== */

    .shop-main ul {
        margin: 0;
        padding: 0;
    }
    .shop-main li {
        list-style: none;
    }

/* ===== OVERALL LAYOUT ===== */

    .container .twelve.columns.shop-main {
        float: right;
    }
    .shop-header {
        margin-bottom: 15px;
    }
    .product-large .twelve.columns.shop-header {
        width: calc(100% - 20px);
    }
    .shop-main .breadcrumbs {
        border-bottom: 1px solid #eee;
        height: 27px;
        line-height: 27px;
        padding: 0 0 5px;
    }
    .shop-main .description ul {
        margin: 0 0 0 18px;
        padding: 0;
    }
    .shop-main .description li {
        list-style: square;
    }
    li.catalogueItemNotFound,
    li.productItemNotFound {
        display: none !important;
    }

/* ===== LOGIN ===== */

    .cart-summary, .log-summary {
        float: left;
        line-height: 45px;
    }
    .log1 .login, .log1 .back-login, .logout {
        display: none !important;
    }
    .log1 .shop-checkout.shop-form {
        display: block !important;
    }
	.log1 .logout {
    	display: inline-block !important;
	}
    .log1 .box-row.account {
        padding: 20px 0 0;
    }
    .log1 .box-row.account * {
        display: none;
    }
    .log-summary .sf-menu.logout > li > a,
	.log-summary > a {
        display: inline-block;
        padding-right: 8px;
        margin: 0 8px 0 0;
        line-height: 45px;
    }
    div.login {
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 40px;
        background: #EEE;
        margin-bottom: 20px !important;
    }

    .login .heading:before {
        border-color: #CCC;
    }
    .login .heading h3 {
        display: inline;
        position: relative;
        background-color: #EEE;
        z-index: 2;
        padding: 0 4px;
        margin: 0 0 0 10px;
        font-size: 24px;
        line-height: 24px;
    }
    .login form {
        margin-bottom: 0;
    }
	.login form label {
		clear: both;
	}
	.login form > .half {
		float: left;
		width: calc(50% - 5px);
		margin-bottom: 20px;
	}
	.login form > .half:nth-of-type(odd) {
        margin-right: 10px;
    }
	.login form input.field {
		float: left;
		width: 100% !important;
	}
	.login .full {
		clear: both;
		padding-top: 20px;
		border-top: 1px solid #CCC;
	}
	.log-in, .continue {
		text-align: right;
	}
	.log-in input[type=submit], button.btn {
		display: inline-block;
		text-align: left;
		background: #70B622;
		color: #FFF;
		min-width: 120px;
		line-height: 20px;
		padding: 8px 10px;
		font-size: 14px;
		margin: 0 0 20px;
	}
    a.reset {
        margin-right: 12px;
    }
    .back-login a {
        text-decoration: underline;
    }
    .sf-menu.logout ul {
        box-shadow: 2px 2px 10px -4px #000;
        border: 1px solid #DDD;
        margin: 0;
    }
    .sf-menu.logout ul li a {
        background: #FFFFFF;
        padding: 6px 15px;
        border-bottom: 1px solid #DDD;
        min-width: 120px;
        text-align: left;
        display: block;
        color: #555;
    }
	.sf-menu.logout ul li a:hover {
		background: #EEE
	}
    .sf-menu.logout ul li {
        margin-bottom: 0;
    }
    .sf-menu.logout li li:last-child a {
        border-bottom: 0;
    }

    .logged-in {
        display: none;
    }
    .log1 .logged-in {
        display: block;
    }
    .page-content .uneditable li {
        border: 1px solid #CCC;
        margin: 0 0 -1px;
        padding: 10px;
    }
    .page-content .uneditable li:before {
        content: none;
    }
    .page-content .uneditable span {
        display: inline-block;
        font-weight: 700;
        width: 210px;
    }

/* ===== CATALOGUES ===== */

    li.catalogueItem {
        display: inline;
    }
	/* Flex Grid */
    .catalogueList {
        overflow: hidden;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .catalogueList > li {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        float: left;
    }
    .shop-catalogue .image {
        margin: 0 auto;
    }
    .shop-catalogue .image img {
        display: block;
        max-width: 100%;
    }
    .detail {
        position: relative;
        background: #333;
    }
    .detail:before {
        content: "";
        display: block;
        position: absolute;
        left: 10%;
        top: -13px;
        z-index: 1;
        width: 0;
        height: 0;
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        border-bottom: 15px solid #333;
    }
    .detail a {
        position: relative;
        display: block;
        color: #FFF;
        font-size: 16px;
        padding: 15px 4%;
    }
    .detail .more {
        display: none;
    }

/* ===== CATALOGUES LIST DUMP ===== */

    .catalogue-nav {
        background-color: #EEE;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 10px;
        margin-bottom: 20px;
    }
	.catalogue-nav .cta-feature,
    .product-large .catalogue-nav {
        display: none;
    }
    .catalogue-nav .cta .accordion > div {
        padding: 10px 0;
    	background: transparent;
    }
    .catalogue-nav h4 {
        border-top: 1px solid #CCC;
        padding: 20px 0 0;
        margin-bottom: 10px;
    }
    .catalogueitemdump li {
        font-size: 16px;
        line-height: 18px;
        margin-left: 10px;
    }
    .catalogueitemdump li:before {
        content: "\f105";
        display: inline-block;
        margin-right: 8px;
        font: 18px/1 'FontAwesome', sans-serif;
    }

/* ===== SHOPPING CART SUMMARY ===== */

    .cartSummary .fa {
        position: relative;
        line-height: 45px;
    }
    .cartSummary .fa:before {
        font-size: 30px;
        margin-right: 12px;
    }
    .cartSummary a:hover {
        color: #70B622;
    }
    .cartSummary .fa span {
        position: absolute;
        top: 5px;
        right: 0;
        color: #FFF;
        background-color: #555;
        border: 2px solid #FFF;
        border-radius: 50%;
        min-width: 13px;
        height: 19px;
        padding: 0 3px;
        text-align: center;
        font: 14px/19px Arial, san-serif normal;
    }
    div#messageBox {
        position: fixed;
        top: 20px;
        left: 0;
        right: 0;
        z-index: 999;
        font-family: Arial, Helvetica, Sans-Serif;
        font-size: 14px;
        display: none;
        width: 240px;
        margin: 0 auto;
        border: 2px solid #EE4E3A;
        background-color: #FFF !important;
        padding: 12px 20px;
        margin-bottom: 0;
        line-height: 20px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        box-shadow: 0 0 10px;
        text-align: left;
        color: #333;
    }
	.product-large div#messageBox {
		border: 2px solid #70B622;
	}    
    div#messageBox br:first-of-type {
    	display: none;
    }

/* ===== PRODUCT (SMALL) ===== */

    [class*="productItem"] {
        display: inline;
    }
    .productSmall {
        overflow: hidden;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .productSmall > li {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        float: left;
    }
    .shop-product-small h4 a {
        color: #1969bc ;
    }
    .shop-product-small h5 {
        font-size: 15px;
        height: 48px;
        line-height: 16px;
        margin: 0 0 3px;
        background: #DDD;
        padding: 10px;
    }
    .shop-product-small h5 a {
        color: #1969bc;
        text-decoration: none;
    }
    .shop-product-small h5 a:hover {
        text-decoration: underline;
    }
    .shop-product-small h6 {
        margin-bottom: 6px;
        color: #333;
    }
    .shop-product-small > ul {
    	position: relative;
    	background: #F0F0F0;
    }
    .stock-overlay .in-stock:before,
    .stock-overlay .out-stock:before {
        content: "";
        display: block;
        position: absolute;
        left: 10%;
        bottom: -2px;
        z-index: 1;
        width: 0;
        height: 0;
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        border-bottom: 15px solid #70b622;
    }
    .shop-product-small ul li {
        font-size: 11px;
        margin: 0 0 6px;
        padding: 10px 10px 0;
    }
    .shop-product-small li.price {
        font-size: 11px;
        margin: 0;
    }
    .price-box {
        box-sizing: border-box;
        display: inline-block;
        font-size: 14px;
        padding: 5px 8px;
        border: 1px solid #d9d9d9;
        width: 100%;
    }
    .price-box > span {
        display: none;
        margin-right: 5px;
    }
    li.reduced .price-box span {
        display: inline-block;
    }
    li.reduced .price-box span {
        text-decoration: line-through;
    }
    .price-box li.stock {
        font-size: 11px;
    }
    .price-box li.stock strong {
        color: #666;
        margin-left: 3px;
    }
	.shop-product-small .quantity-add span {
		float: left;
	}
    .shop-product-small .image {
        margin: 0 auto;
    }
    .shop-product-small .image img {
        display: block;
        max-width: 100%;
    }
    .shop-product-small li.quantity {
        line-height: 30px;
        padding: 10px;
    }
	.shop-product-small li.stock-out-msg .remove-bottom {
		line-height: 19px;
	}    
    li.quantity img {
        position: relative;
        top: 8px;
    }
    .shop-product-small li.quantity input.productTextInput {
        width: 50px;
        margin: 0;
        background: #FFF;
        border-radius: 0;
        border: 1px solid #d9d9d9;
    }
    .shop-product-small li.quantity input.productSubmitInput {
		background: none;
		margin-bottom: 0;
		line-height: 24px;
		width: 100%;
		max-width: none;
		text-align: left;
		position: relative;
		z-index: 2;
    }

/* ===== PRODUCT (LARGE) ===== */

	.large-info {
		float: left;
		width: calc(75% - 10px);
		margin-right: 10px;
	}
	.cart-quantity {
		float: left;
		width: calc(25% - 10px);
		margin-left: 10px;
	}
    .shop-product-large {
        margin: 0 0 18px;
        overflow: hidden;
    }
	.shop-product-large .description {
		float: left;
		width: 100%;
	}
    .top ul {
        overflow: hidden;
    }
    .shop-product-large h1 {
        font-size: 30px;
        line-height: 32px;
    }
    .shop-product-large .image {
        position: relative;
        float: left;
        width: 40%;
        margin-bottom: 20px;
    }
    .shop-product-large .image img {
        position: relative;
        display: block;
        max-width: 100%;
        z-index: 2;
    }
    .shop-product-large .shop-product-small .image {
        margin: 0;
        min-height: 160px; 
        padding: 18px;
        text-align: center;
        width: auto;
    }
	.large-img {
		position: relative;
	}    
    .poplets {
        position: relative;
        overflow: hidden;
        padding: 10px 0;
    }
	.large-img > a {
		position: absolute;
		display: block;
		bottom: 0;
		right: 0;
		padding: 10px;
		background: rgba(0,0,0,0.9);
		color: #FFF;
		font-size: 20px;
		z-index: 5;
	}
	.large-img > a.poplet-expand {
		top: 0;
		bottom: auto;
	}
	.large-img > a:hover {
		background: rgba(112,182,34,0.9);
	}
	.large-img > a span {
		margin-left: 10px;
	}
    .poplet-thumb {
        position: relative;
        float: left;
        width: calc(25% - 9px);
        margin-right: 12px;
    }
	.poplet-thumb:nth-of-type(4n) {
		margin-right: 0;
	}
	.poplet-thumb:nth-of-type(n+5) {
		display: none;
	}	
    .shop-product-large .shop-product-small ul {
        padding: 9px;
    }
    .shop-product-large .shop-product-small ul,
	.shop-product-large .shop-product-small li  {
        margin: 0;
    }
    .shop-product-large li.price {
        width: 100px;
        float: left;
        margin: 0 10px 0 0;
    }
    .shop-product-large .price-box {
        padding: 10px 15px;
        font-size: 18px;
        line-height: 22px;
    }
    .shop-product-large li.saved {
        display: none;
        vertical-align: middle;
        margin: 0;
        font-size: 16px;
        line-height: 68px;
        color: #EE4E3A;
    }
    .reduced li.saved {
        display: inline-block;
    }
    .shop-product-large .price-box span {
        font-size: 16px;
    }
    .shop-product-large li.quantity input.productTextInput {
        display: inline-block;
        width: 50px;
        margin-bottom: 0;
    }
    .shop-product-large .details {
    	-moz-box-sizing: border-box;
    	-webkit-box-sizing: border-box;
    	box-sizing: border-box;
    	float: left;
    	padding: 0 18px 18px;
    	width: 60%;
    }
    .shop-product-large ul {
        margin: 0 0 20px;
        padding: 0;
    }
    .shop-product-large .cart-quantity ul {
        margin-bottom: 10px;
    }
    .shop-product-large li {
        margin: 9px 0;
    }
    .cart-quantity .inner {
        background-color: #EEE;
        padding: 10px;
    }
    .shop-product-large li.quantity {
        display: block;
    }
    .stock-out li.quantity {
        display: none;
    }
    li.stock-out-msg {
        display: none;
    }
    .stock-out li.stock-out-msg {
        display: block;
        padding: 10px;
    }
    .shop-product-large input.productSubmitInput {
        width: 100%;
        max-width: none;
        font-size: 16px;
        padding: 7px 0 7px 12px;
        text-align: left;
        margin-bottom: 0;
        background-color: transparent;
        position: relative;
        z-index: 2;
    }
    .stock-overlay {
    	overflow: hidden;
    	margin-top: -26px;
    	position: relative;
    	z-index: 10;
    }
    .stock, .stock-out .in-stock {
        display: none;
    }
    [class*="-stock"] {
        position: relative;
        border-bottom: 4px solid #DDD;
        -webkit-filter: drop-shadow(0 -2px 5px rgba(0,0,0,.7));
        -moz-filter: drop-shadow(0 -2px 5px rgba(0,0,0,.7));
        -ms-filter: progid:DXImageTransform.Microsoft.Dropshadow(OffX=5, OffY=-2, Color='#444');
        filter: drop-shadow(0 -2px 5px rgba(0,0,0,.7));
    }
    .label {
        position: relative;
        display: inline-block;
        padding: 6px 10px 2px;
        background-color: #DDD;
        font-family: 'Open Sans Condensed', sans-serif;
        color: #FFF;
        z-index: 10;
    }
    .out-stock .label {
        background-color: #EE4E3A;
    }
    .out-stock {
    	display: none;
        border-bottom-color: #EE4E3A;
    }
    .in-stock .label {
        background-color: #70B622;
    }
    .in-stock {
        border-bottom-color: #70B622;
    }
    .stock-out .out-stock {
        display: block;
    }
	.stock-overlay .out-stock:before {
		border-bottom-color: #ee4e3a;
	}
    .cart-add {
        position: relative;
        background-color: #70B622;
        overflow: hidden;
        box-shadow: inset 0 50px 0 rgba(255, 255, 255, 0);
        -webkit-transition: all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
    }

.cart-add:hover {
    box-shadow: inset 0 50px 0 rgba(255, 255, 255, 0.15);
}
    .quantity-add {
        margin-bottom: 13px;
    }
    .quantity-add span {
        display: inline-block;
        margin-right: 10px;
        font-size: 16px;
        vertical-align: middle;
    }
    .cart-add .fa {
        position: absolute;
        right: 12px;
        top: 2px;
        font-size: 28px;
        color: #FFF;
    }
    .cart-add:hover .fa:before {
        content: "\f217";
    }

/* ===== SHOPPING CART ===== */

    .shopping-cart .catalogue-nav {
        display: none;
    }
    div#catCartDetails > a {
        display: block;
        margin: 0 auto 20px;
        padding: 20px;
        width: 40%;
        background-color: #EEE;
        border: 1px solid #CCC;
    }
    table.cart {
        background: #fff;
        border-collapse:collapse;
        border-spacing:0;
        border: 1px solid #ddd;
        font-size: 11px;
        width: 100%;
        margin-bottom: 20px;
    }
    table.cart td {
        vertical-align: top;
    }
    table.cart td img {
        width: 150px;
        margin: 0 10px 0 0;
    }
    table.cart a {
        color: #1969bc;
    }
    table.cart td.prodname a {
        font-size: 20px;
        line-height: 24px;
        margin-right: 10px;
    }
    .remove .productitemcell a {
        font-size: 16px;
        line-height: 28px;
        display: block;
        text-align: center;
        color: #444;
    }
    table.cart th, table.cart td {
        color: #666;
    }
    tr.val td {
        border-bottom: 1px solid #eee;
    }
    tr.val td {
        padding: 10px 0 10px;
    }
    tr.val td:first-child {
        padding: 10px 0 10px 10px;
    }
    tr.val td:last-child, tr.var th:last-child {
        padding: 10px 10px 10px 0;
        width: 30px;
    }
    tr.shipping td {
        border-bottom: 1px solid #ddd;
    }
    tr.discount td.quantity, tr.shipping td.quantity {
        text-align: right;
    }
    td.quantity input.update {
        margin: 0 0 0 3px;
    }
    table.cart th {
        background: #f9f9f9;
        border-bottom: 1px solid #eee;
        color: #000;
        font-size: 15px;
        font-weight: normal;
        text-align: left;
        padding: 10px 0 5px;
    }
    table.cart th:first-child {
        padding-left: 10px;
    }
    input.cartInputText {
        width: 30px;
        margin: 0 10px 0 0;
        background-color: #EEE;
        border: 1px solid #CCC;
        padding: 6px;
    }
    input#DiscountCode, input#GiftVoucher {
        background-color: #EEE;
        border: 1px solid #CCC;
        width: 90%;
        padding: 7px 5px;
        margin: 0 auto;
        box-sizing: border-box;
    }
	.cart-options {
		margin-bottom: 20px;
	}
	.cart-options ul {
		clear: both;
		overflow: hidden;
	}
	.cart-options li {
		float: left;
		margin: 0;
	}
	.cart-options li#clear-shop {
		float: right;
	}
	.cart-options ul a {
		display: inline-block;
		padding: 5px 10px;
		font-size: 14px;
	}
    .codes {
        overflow: hidden;
        margin-bottom: 15px;
    }
	.codes a {
		display: block;
		margin-bottom: 10px;
		text-align: center;
	}
	.inputs input {
		margin: 0 10px 0 0;
		display: block;
	}
	.gift, .disc {
		margin-bottom: 0;
		line-height: 32px;
		float: left;
		width: 100%;
	}
	.gift > span, .disc > span {
		float: right;
		display: block;
		margin-right: 12px;
		font-size: 16px;
	}

/* ===== RIGHT COLUMNS ===== */
    
    .proceed {
        padding: 10px;
        border: 1px solid #DDD;
        margin-bottom: 20px;
    }
    .pandp {
        max-width: 380px;
        margin: 0 auto;
    }
    span#shippingSpan {
        display: none;
    }
    select.shippingDropDown {
        width: 90%;
        padding: 7px 5px;
        margin: 0 auto;
        background: #EFF0F3;
        background: -webkit-linear-gradient(top, #F7F8FA, #E7E9EC);
        background: linear-gradient(to bottom, #F7F8FA, #E7E9EC);
        border: 1px solid #CCC;
        cursor: pointer;
    }
    select.shippingDropDown:hover {
        background: #E0E3E8;
        background: -webkit-linear-gradient(top, #E7EAF0, #D9DCE1);
        background: linear-gradient(to bottom, #E7EAF0, #D9DCE1);
    }
    table.cart th.quantity {
        text-align: right;
    }
    table.cart td.quantity {
        text-align: right;
    }
    .cart .productitemcell {
        min-height: 60px;
        line-height: 20px;
        padding-bottom: 10px;
        margin: 0 0 9px 0;
        border-bottom: 1px solid #CCC;
    }
    .price .productitemcell {
        font-size: 16px;
        line-height: 28px;
        padding-right: 10px;
    }
    tr.val td .productitemcell:last-child {
        border-bottom: 0;
        padding-bottom: 0;
        margin-bottom: 0;
    }
    table.cart td.actions {
        text-align: right;
    }
    table.cart td.actions a {
        font-size: 12px;
        font-weight: bold;
        margin: 0 18px 0 0;
        text-decoration: none;
    }
    table.cart strong {
        font-size: 14px;
    }
    .subtotal td {
        padding: 10px 0;
        border: 1px solid #DDD;
        border-top: 0;
        text-align: right;
        font-size: 18px;
    }
    .subtotal span {
        color: #549709;
        font-weight: 700;
        padding-right: 10px;
    }
    .shopping-cart .calc {
        width: 90%;
        text-align: right;
        margin: 10px auto;
        font-size: 16px;
        line-height: 20px;
        font-weight: bold;
        font-family: 'Open Sans Condensed', sans-serif;
    }
    .calc span {
        display: inline-block;
        width: 70px;
        font-weight: normal;
    }
    .shippingDiv {
        padding-bottom: 14px;
        border-bottom: 1px solid #DDD;
    }
    .order-tot {
        display: inline-block;
        padding-top: 4px;
        border-top: 1px solid #DDD;
        margin-top: 5px;
        color: #549709;
    }
    .order-tot span {
        font-weight: bold;
    }
    a#catshopbuy, .submit-order {
        position: relative;
        display: block;
        width: calc(90% - 10px);
        padding: 7px 5px;
        margin: 0 auto;
        background: #f3D078;
        background: -webkit-linear-gradient(top, #F7DFA5, #F0C14B);
        background: linear-gradient(to bottom, #Ff7DFA5, #F0C14B);
        border: 1px solid;
        border-color: #A88734 #9C7E31 #846A29;
        cursor: pointer;
        border-radius: 2px;
        color: #000;
        text-align: center;
        margin-bottom: 5px;
    }
    a#catshopbuy .fa, .submit-order .fa {
        position: absolute;
        right: 12px;
        top: 4px;
        font-size: 28px;
        color: #846A29;
    }
    a#catshopbuy:hover, .submit-order:hover {
        background: #F1C860;
        background: -webkit-linear-gradient(top, #F5D78E, #EEB933);
        background: linear-gradient(to bottom, #F5D78E, #EEB933);
    }
    .vat-summary .accordion {
        text-align: center;
    }
    .vat-summary .accordion h3 {
        display: inline-block;
        font-size: 14px;
        color: #846A29;
    }
    .vat-summary .ui-accordion-header-icon {
        position: relative;
        float: right;
        margin-left: 5px;
        margin-top: 7px;
    }
    .vat-summary .accordion > div {
        text-align: left;
    }

/* ===== CHECKOUT (REGISTRATION - BUY) ===== */

    .shopping-cart.checkout input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
    .shopping-cart.checkout select,
    .shopping-cart.checkout textarea,
    .login input:not([type="submit"]) {
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        background-color: #FFF !important;
        padding: 6px;
        margin-bottom: 0;
        line-height: 20px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        border: 2px solid #CCC;
        width: 70%;
    }
    .shopping-cart.checkout input:focus:not(.read-only):not[type="submit"],
    .shopping-cart.checkout select:focus:not(.read-only):not[type="submit"],
    .login input:focus:not(.read-only):not([type="submit"]):not[type="submit"] {
    	border: 2px solid #52B152 !important;
    }
	.shopping-cart.checkout input:not([type="submit"]):not(.read-only):hover,
	.shopping-cart.checkout select:hover,
	.shopping-cart.checkout textarea:hover,
	.shopping-cart.checkout .radio:hover,
	.shopping-cart.checkout .check:hover {
		-moz-box-shadow: 0 0 12px -4px rgba(0, 0, 0, 0.5) !important;
		-webkit-box-shadow: 0 0 12px -4px rgba(0, 0, 0, 0.5) !important;
		box-shadow: 0 0 12px -4px rgba(0, 0, 0, 0.5) !important;
	}
    .shopping-cart.checkout select {
        padding: 6px 2px;
    }
    .shopping-cart.checkout select.cat_dropdown_half {
        float: left;
        width: calc(35% - 5px);
    }
    .shopping-cart.checkout select.cat_dropdown_half:first-of-type {
        margin-right: 10px;
    }
    .shop-form {
        margin: 0 0 18px;
    }
    .shop-form ul.form {
        background: #f9f9f9;
        border: 1px solid #eee;
        padding: 18px;
    }
    .shop-form label {
        font-size: 16px;
    }
    .box-row.account label {
        line-height: 22px;
    }
    .box-row .fa-info-circle {
        cursor: help;
    }
    .shop-form ul.form li {
        margin: 0;
        padding: 9px 0;
    }
    .shop-form li.last {
        border-top: 1px solid #eee;
    }
    input.PaymentMethodType {
        margin: 0 6px 0 0;
    }
    .shop-form ul.form input.cat_textbox,
    .shop-form ul.form select.cat_dropdown,
    .shop-form ul.form textarea.cat_listbox {
        width: 260px;
    }
    .shop-form textarea.cat_listbox {
        height: 100px;
    }
    .shopping-cart.checkout input#Amount, .shopping-cart.checkout .amount span {
        background-color: transparent !important;
        border: 0;
        font-size: 22px;
        font-weight: 700;
        color: #549709;
        display: inline;
        padding-left: 0;
    }
	.submit-order {
		padding: 0;
		margin: 0;
	}
	.submit-order input[type=submit] {
		margin: 0;
		position: relative;
		width: 100%;
		background-color: transparent;
		font-size: 14px;
		color: #000;
	}

/* ===== CHECKOUT (REGISTRATION - BUY) - TABLE ===== */

    .boxer {
        margin: 0 auto;
        overflow: hidden;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 40px 18% 40px 8%;
        background-color: #EEE;
    }
	.box-group {
		position: relative;
		float: left;
		padding-left: 10%;
		border-left: 6px solid #FFF;
		padding-bottom: 40px;
		width: 100%;
	}
	.box-group:before {
		display: block;
		position: relative;
		content: attr(data-label);
		line-height: 70px;
		font-size: 22px;
		font-weight: bold;
	}
	.box-group:after {
		display: block;
		position: absolute;
		top: 0;
		left: -38px;
		width: 70px;
		height: 70px;
		border-radius: 50%;
		background-color: #FFF;
		font-family: "FontAwesome";
		text-align: center;
		line-height: 70px;
		font-size: 40px;
	}
	.box-group[data-label*="1"]:after {
		content: "\f007";
	}
    .box-group[data-label*="2"]:after {
        content: "\f09d";
    }
    .box-group[data-label*="3"]:after {
        content: "\f0d1";
		-moz-transform: scale(-1, 1);
		-webkit-transform: scale(-1, 1);
		-o-transform: scale(-1, 1);
		-ms-transform: scale(-1, 1);
		transform: scale(-1, 1);
    }
    .box-group[data-label*="4"]:after {
        content: "\f154";
    }
	.box-group[data-label*="5"]:after {
		content: "\f046";
	}
    .boxer .box-row {
        float: left;
        width: 100%;
        padding: 10px 0;
    }
	.box-row.account {
		border-bottom: 1px solid #CCC;
		padding: 20px 0;
	}
	.boxer > .box-group > .box-row:last-child {
		padding-bottom: 30px;
		border-bottom: 1px solid #CCC;
	}
	.box-row.create {
		border-bottom: 1px solid #CCC;
		padding: 20px 0;
	}
    .box-row .box-row:last-child,
	.box-row.same-ship {
        padding-bottom: 0;
    }
    .box-row.ship {
        padding-top: 0;
	}
    .box-row > div:not(.box-row) {
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        float: left;
    }
    .box-row > div:not(.box-row):first-child {
      width: 30%;
      line-height: 36px;
      padding-right: 15px;
    }
    .box-row > div:not(.box-row):nth-child(2) {
      width: 55%;
    }
    .box-row > div:not(.box-row):nth-child(3) {
      width: 15%;
      line-height: 36px;
      font-size: 18px;
      color: #1176D0;
    }
    .box-row.same-ship > div:not(.box-row):first-child,
    .box-row.pay-select > div:not(.box-row):first-child {
        line-height: 26px;
    }
	.box-row.account input[type=checkbox], .box-row .pay-method input[type=radio] {
		visibility: hidden;
	}
	.check {
		width: 28px;
		height: 28px;
		background: #CCC;
		border-radius: 5px;
		position: relative;
	}
	.check label {
		cursor: pointer;
		position: absolute;
		width: 24px;
		height: 24px;
		left: 2px;
		top: 2px;
		border-radius: 4px;
		background: #FFF;
	}
	.check label:after, .radio label:after {
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
		filter: alpha(opacity=0);
		opacity: 0.5;
		content: '';
		position: absolute;
		width: 10px;
		height: 5px;
		background: transparent;
		top: 6px;
		left: 6px;
		border: 3px solid #CCC;
		border-top: none;
		border-right: none;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.check label:hover::after, .radio label:hover::after {
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
		filter: alpha(opacity=30);
		opacity: 0.8;
	}
	.check input[type=checkbox]:checked + label:after, .radio input[type=radio]:checked + label:after {
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
		filter: alpha(opacity=100);
		opacity: 1;
		border-color: #52B152;
	}
    .radio {
        width: 28px;
        height: 28px;
        background: #CCC;
		-webkit-border-radius: 50px;
        -moz-border-radius: 50px;
        border-radius: 50px;
        position: relative;
        margin-bottom: 10px;
    }
    .radio label {
        cursor: pointer;
        position: absolute;
        width: 24px;
        height: 24px;
        -webkit-border-radius: 50px;
        -moz-border-radius: 50px;
        border-radius: 50px;
        left: 2px;
        top: 2px;
        background: #FFF;
    }
    .radio label:after {
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        filter: alpha(opacity=0);
        opacity: 0;
	}
    .radio span {
        position: absolute;
        left: 38px;
        width: 200px;
        line-height: 28px;
    }

/* ===== ORDER CONFIRMATION (RECEIPT - BUY) ===== */

    .shop-receipt, .shop-quote-receipt {
        background: #f9f9f9;
        border: 1px solid #eee;
        margin: 18px;
        padding: 18px;
    }
    .shop-receipt h1, .shop-quote-receipt h1 {
        border-bottom: 1px solid #ccc;
        padding: 0 0 3px;
    }
    .shop-receipt h2, .shop-quote-receipt h2 {
        font-size: 12px;
        font-weight: normal;
    }

/* Above Tablet Portrait Sizes (devices and browser) ============================= */
@media only screen and (min-width: 1280px) {

    .productSmall > li {
        width: calc(25% - 15px);
        margin: 0 20px 20px 0;
    }
    .productSmall > li:nth-of-type(4n) {
        margin-right: 0;
    }

}

/* Above Tablet Portrait Sizes (devices and browser) ============================= */
@media only screen and (min-width: 960px) and (max-width: 1279px) {

    .productSmall > li {
        width: calc((100% / 3) - (40px / 3));
        margin: 0 20px 20px 0;
    }
    .productSmall > li:nth-of-type(3n) {
        margin-right: 0;
    }

}

/* Tablet Portrait Size to Wide 1280 (devices and browsers) ========== */
@media only screen and (min-width: 768px) and (max-width: 1279px) {

    .catalogueitemdump li {
        font-size: 14px;
    }
    a#catshopbuy {
        text-align: left;
        text-indent: 4px;
    }
    .shopping-cart .accordion .calc {
        font-size: 14px;
    }
    .ship-tot tabhide {
        display: none;
    }
    
}

/* Above Mobile Sizes (devices and browser) ============================= */
@media only screen and (min-width: 768px) {

    .cartSummary.notEmpty1 {
        display: none;
    }
    .twelve.columns li:nth-child(3n) > .four.columns {
        margin-right: 0;
    }
    .stock-overlay .label {
        margin-left: -155px;
    }
    .stock-overlay .in-stock .label {
        margin-left: -95px;
    }
    li[class*="productItem"]:hover .stock-overlay .label {
        margin-left: 0;
    }
    html.product-large .container .twelve.columns.shop-main {
        width: calc(100% - 20px);
    }
    .catalogueList > li {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
    
        width: calc((100% / 3) - (40px / 3));
        margin: 0 20px 20px 0;
        float: left;
    }
    .catalogueList > li:nth-of-type(3n) {
        margin-right: 0;
    }

}

/* Tablet Portrait size to standard 960 (devices and browsers) ========== */
@media only screen and (min-width: 768px) and (max-width: 959px) {

    .productSmall > li {
        width: calc((100% / 3) - (40px / 3));
        margin: 0 20px 20px 0;
    }
    .productSmall > li:nth-of-type(3n) {
        margin-right: 0;
    }
    .box-row > div:not(.box-row):first-child {
      width: 40%;
    }
    .box-row > div:not(.box-row):nth-child(2) {
      width: 55%;
    }
    .box-row > div:not(.box-row):nth-child(3) {
      width: 5%;
    }
	.shopping-cart.checkout input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
	.shopping-cart.checkout select,
	.shopping-cart.checkout textarea {
		width: 85%;
	}
	.shopping-cart.checkout select.cat_dropdown_half {
		float: left;
		width: calc(42.5% - 5px);
	}
	.large-img > a {
		font-size: 16px;
		padding: 7px;
	}
	.poplet-thumb {
		width: calc(33.33333% - 4px);
		margin: 0 6px 5px 0;
	}
	.poplet-thumb:nth-of-type(3n) {
		margin-right: 0;
	}
	.poplet-thumb:nth-of-type(n+4) {
		display: none;
	}
	.shop-product-large h1 {
		font-size: 22px;
		line-height: 26px;
	}
	.shop-product-large li.price {
		font-size: 16px;
	}
	.shop-product-large .price-box span {
		font-size: 14px;
	}
	.reduced li.saved {
		font-size: 14px;
	}

}

/* All Mobile Sizes (devices and browser) =============================== */
@media only screen and (max-width: 959px) {

    .detail .more {
        position: absolute;
        display: block;
        top: 10px;
        right: 10px;
        width: 28px;
        height: 28px;
        border: 1px solid #fff;
        border-radius: 50%;
    }
    .detail .more span {
        position: relative;
        display: block;
        float: left;
        border: 1px solid #FFF;
        border-radius: 50%;
        margin: 0 2px;
        top: 13px;
        left: 5px;
    }
    .detail a {
        font-size: 14px;
        padding: 15px 45px 15px 4%;
    }
    
}

/* All Mobile Sizes (devices and browser) =============================== */
@media only screen and (max-width: 767px) {

	.cartSummary.empty1 {
		display: none;
	}
    .cartSummary .fa {
        line-height: 45px;
    }
    .cartSummary .fa:before {
        font-size: 28px;
    }
    .cartSummary .fa span {
        top: 4px;
    }
    .product-large .twelve.columns.shop-header {
        width: 100%;
        margin-bottom: 20px;
    }	
    .shop-main .breadcrumbs {
        height: 27px;
        overflow: hidden;
        position: relative;
        margin-bottom: 15px;
    }
    .shop-main .breadcrumbs .inner {
        -webkit-user-select: none;
        display: block;
        overflow-y: hidden;
        padding: 0;
        position: relative;
        -webkit-overflow-scrolling: touch;
        overflow-x: scroll;
        white-space: nowrap;
        height: 50px;
    }
    .shop-main .breadcrumbs .shade {
        background: -webkit-gradient(linear,left top,right top,color-stop(0%,rgba(248,248,248,0)),color-stop(100%,rgba(255, 255, 255, 1)));
        position: absolute;
        pointer-events: none;
        right: 0;
        top: 0;
        bottom: 5px;
        width: 24px;
        z-index: 2;
    }
    .breadcrumbs a {
        display: inline-block;
        padding: 0 8px;
        margin-bottom: 4px;
        background-color: #EEE;
    }
    .breadcrumbs a:last-child {
        margin-right: 24px;
    }
	.large-info,
	.cart-quantity {
		width: 100%;
		margin: 0 0 10px;
	}
    .shop-product-large h1 {
        font-size: 20px;
        line-height: 24px;
        margin-bottom: 6px;
    }
    div#catCartDetails > a {
        width: 340px;
        max-width: 100%;
    }
    table.cart td.prodname a {
        font-size: 14px;
        line-height: 16px;
    }
    input.cartInputText {
        width: 30px;
    }
    .price .productitemcell {
        font-size: 12px;
    }
    .box-row > div:not(.box-row):first-child {
      width: 100%;
    }
    .box-row > div:not(.box-row):nth-child(2) {
      width: 90%;
    }
    .box-row > div:not(.box-row):nth-child(3) {
      width: 10%;
    }
	.shopping-cart.checkout input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
	.shopping-cart.checkout select,
	.shopping-cart.checkout textarea {
		width: 85%;
	}
	.shopping-cart.checkout select.cat_dropdown_half {
		float: left;
		width: calc(42.5% - 5px);
	}
	.boxer .box-row {
		padding: 5px 0;
	}
	.boxer {
		padding: 30px 5% 30px 5%;
	}
	.box-group {
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		border: 0;
		padding: 0;
		margin: 20px 0 0;
	}
	.box-group:after {
		left: 0;
		width: 40px;
		height: 40px;
		font-size: 24px;
		line-height: 40px;
	}
	.box-group:before {
		left: 50px;
		font-size: 18px;
		line-height: 40px;
	}
    .box-row.account > div:not(.box-row):first-child,
    .box-row.same-ship > div:not(.box-row):first-child {
        width: 60%;
    }
    .box-row.account > div:not(.box-row):nth-child(2),
    .box-row.same-ship > div:not(.box-row):nth-child(2) {
        width: 30%;
    }
    .box-row.account {
        padding-bottom: 30px;
    }
    .pay-method {
        padding: 10px 0 0 40px;
    }
    
}

/* Mobile Only 620 (devices and browsers) ========================== */
@media only screen and (max-width: 619px) {

    th.itemtitle span {
        display: none;
    }
    tr.val td:first-child .productitemcell {
        display: none;
    }
    div.login {
        padding: 25px;
    }
    .login form > .half {
        width: 100%;
        margin: 0 0 10px;
    }
}

/* Mobile Only 560 to Tablet Portrait (devices and browsers) ========================== */
@media only screen and (min-width: 560px) and (max-width: 767px) {
    
    .catalogueList > li,
    .productSmall > li {
        width: calc((100% / 3) - (40px / 3));
        margin: 0 20px 20px 0;
    }
    .catalogueList > li:nth-of-type(3n),
    .productSmall > li:nth-of-type(3n) {
        margin-right: 0;
    }
	.poplet-thumb {
		width: calc(33.33333% - 2px);
		margin: 0 3px 5px 0;
	}
	.poplet-thumb:nth-of-type(3n) {
		margin-right: 0;
	}
	.poplet-thumb:nth-of-type(n+4) {
		display: none;
	}
    
}

/* Mobile Only 560px (devices and browsers) ========================== */
@media only screen and (max-width: 559px) {

    .catalogueList > li,
    .productSmall > li {
        width: calc(50% - 10px);
        margin: 0 20px 20px 0;
    }
    .catalogueList > li:nth-of-type(2n),
    .productSmall > li:nth-of-type(2n) {
        margin-right: 0;
    }
    .shop-product-large .image {
        float: none;
        width: 300px;
        max-width: 100%;
        margin: 0 auto;
    }
    .shop-product-large .details {
        float: none;
        width: 100%;
        padding: 0 0 20px;
    }
    .details .top {
        overflow: hidden;
        background: #EEE;
        padding: 20px 20px 0;
    }
    .shop-product-large .details > ul {
        float: right;
        margin-bottom: 0;
    }
    
}

/* Mobile Only 560px (devices and browsers) ========================== */
@media only screen and (min-width: 420px) and (max-width: 559px) {

	.shop-product-large .image {
		width: 100%;
		overflow: hidden;
	}
	.large-img {
		float: left;
		width: calc(70% - 6px);
		margin: 0 6px 20px 0;
	}
	.poplets {
		float: left;
		width: 30%;
		padding: 0;
	}
	.poplet-thumb {
		width: calc(50% - 3px);
		margin: 0 6px 6px 0;
	}
	.poplet-thumb:nth-of-type(2n) {
		margin-right: 0;
	}
	.poplet-thumb:nth-of-type(n+5) {
		display: inline;
	}
	.poplet-thumb:nth-of-type(n+9) {
		display: none;
	}
	
}
	
/* Mobile Portrait Only (devices and browsers) ========================== */
@media only screen and (max-width: 419px) {

	.poplet-thumb {
		width: calc(33.33333% - 2px);
		margin: 0 3px 5px 0;
	}
	.poplet-thumb:nth-of-type(3n) {
		margin-right: 0;
	}
	.poplet-thumb:nth-of-type(n+4) {
		display: none;
	}

}
	
/* Mobile Portrait Only (devices and browsers) ========================== */
@media only screen and (max-width: 369px) {

    .catalogueList > li,
    .productSmall > li {
        width: 100%;
        margin-right: 0;
    }
	
}


/* Mobile Portrait Only (devices and browsers) ========================== */
@media only screen and (max-width: 339px) {
 
    .detail a {
        font-size: 4.1vw;
    }
    
}