.shop_productlist { overflow: auto; }
.shop_productlist li { width: 25%; float: left; padding: 0px 0px 20px 0px; text-align: center; }
.shop_productlist li .name {font-size: 150%;}
.shop_productlist li .price {font-size:110%;}
.shop_productlist li .price:after {content: 'Buy'; font-family: "AvenirLTStdHeavy";text-align: center;display: block;width: 100px;margin: 10px auto 0px auto;border: 3px solid #8f702b;border-radius: 20px;text-transform:uppercase;box-shadow: 0px 10px 13px -1px rgba(0,0,0,0.55);}
div.listprice {text-decoration: line-through;}

@media( max-width: 799px )
{
    .shop_productlist li { width: 50%; }
}

@media( max-width: 399px )
{
    .shop_productlist li { width: 100%; }
}

.shop_product {max-width: 940px;margin: 0px auto 0px auto;padding: 0px 50px 50px 50px;clear:both;}
.shop_product .image {float: right; margin: 0px 0px 30px 30px; }
.shop_product .details { margin: 0px 0px 10px 0px; }
.shop_product .details * { display: inline-block; font-size: 90%;  }
.shop_product .details .label { margin-right: 5px; }
.shop_product .summary { font-family: "AvenirLTStdHeavy",sans-serif; margin: 0px 0px 10px 0px; }
.shop_product .price { font-family: "AvenirLTStdHeavy",sans-serif; padding: 0px 0px 20px 0px;}
.shop_product .options .label, .shop_product .quantity .label { clear: left; float: left; padding: 0px 10px 20px 0px; } 
.shop_product .options .value, .shop_product .quantity .value { float: left; padding: 0px 0px 20px 0px; } 
.shop_product .addtobasket { clear: both; padding: 20px 0px 0px 0px; }

@media( max-width: 649px )
{
    .shop_product .image {float: none;margin: 0px 0px 30px 0px;}
    .shop_product .image img { display: block; margin: 0px auto 0px auto; }
}

.shop_basket table {width: 100%;margin-bottom: 50px;}
.shop_basket td, .shop_basket th { padding: 5px; text-align: left; border-bottom: solid #dddddd 1px; }
.shop_basket .price, .shop_basket .quantity, .shop_basket .total, .shop_basket .remove { text-align: right; }
.shop_basket .discount { display: none; }
.shop_basketpage .errors { text-align: center; color: #ff0000; padding-bottom: 20px; }

.shop_basket .buttons { clear: both; padding: 30px 0px 0px 0px; }
.shop_basket .buttons input { margin-right: 10px; }

.shop_basket .contact { width: 50%; float: left; }
.shop_basket .billing { width: 50%; float: left; }
.shop_basket .contact h2, .shop_basket .billing h2 { text-align: left; }
.shop_basket .payment { clear: both; padding: 50px 0px 0px 0px; }

.shop_basket .complete { max-width: 700px; margin: 0px auto 0px auto; }
.shop_basket .complete h2 { text-transform: none; font-size: 350%; margin-bottom: 30px; }
.shop_basket .complete h3 { text-transform: none; font-size: 200%; font-family: AvenirLTStdHeavy; margin-bottom: 30px; }
.shop_basket .complete p.receipt { text-align: center; padding-top: 10px; }
.shop_basket .complete p.link { text-align: center; clear: both; padding-top: 20px; }
.shop_basket .complete img { float: left; margin-right: 20px; }

@media( min-width: 900px )
{
    .shop_basket .complete p.receipt { padding-top: 20px; width: 525px; float: right; }
}

.shop_subscriptions .links { margin: 0px 0px 30px 0px; text-align: center; }
.shop_subscriptions .links li { display: inline-block; padding: 0px 10px 0px 10px; }

.shop_subscriptions .subscription { width: 100%; border: solid #000000 1px; border-radius: 10px; margin: 0px 0px 20px 0px; }
.shop_subscriptions .subscription h3, .shop_subscriptions h4 { text-align: left; }
.shop_subscriptions .subscription h4 { margin-bottom: 10px; }
.shop_subscriptions .subscription .details { clear: both; }
.shop_subscriptions .subscription td { padding: 10px; }
.shop_subscriptions .subscription .devices { width: 100%; }
.shop_subscriptions .subscription .devices th, .shop_subscriptions .subscription .devices td {width: 30%;padding: 5px 0px 5px 0px;border-bottom: solid #dddddd 1px;}
.shop_subscriptions .subscription .devices th:first-child, .shop_subscriptions .subscription .devices td:first-child { width: 40%; }

.shop_subscriptions .paymentmethod { max-width: 500px; margin: 0px auto 0px auto; }
.shop_subscriptions .paymentmethod .formbuilder { padding: 20px; border: solid #000000 1px; border-radius: 10px; }
.shop_subscriptions .paymentmethod .field { padding: 0px; }
.shop_subscriptions .paymentmethod .label { display: none; }
.shop_subscriptions .paymentmethod .input { width: 100%; float: none; }
.shop_subscriptions .paymentmethod .buttons { clear: both; padding: 50px 0px 0px 0px; text-align: center; }

.shop_subscriptions .paymentmethods { text-align: center; }
.shop_subscriptions .paymentmethods .buttons { clear: both; padding: 50px 0px 0px 0px; text-align: center; }

@media(min-width: 600px)
{
	.shop_subscriptions .label {display: none;}
}
@media(max-width: 599px)
{
    .shop_basket td.remove {font-size:0; padding: 0; color: #ffffff;}
    .shop_basket .image {font-size: 0; padding: 0; color: #ffffff;}
    .shop_basket td.image img {display: none;}
    .shop_subscriptions .subscription .devices td {display: block; border-bottom: 0px; width: 100%;}
    .shop_subscriptions .subscription .devices th {display: none;}
    .shop_subscriptions .subscription .label {font-family: AvenirLTStdHeavy;}
}

.paymentform #card-errors {margin-top: 30px;}

