/* -------------------------------------------------------------------
---------------------------------------------------------------------- 
								BOUTIQUE
---------------------------------------------------------------------- 
---------------------------------------------------------------------- */

/* Vue générique
---------------------------------------------------------------------- */
.shop-view { display:flex; flex-direction: row-reverse; margin: 15px auto; max-width: var(--wrap-width, 1200px); }
.shop-view > aside { width: 240px; }
.shop-view > section { flex: 1 1; padding-right:40px; }

/* Affichage prix
---------------------------------------------------------------------- */
.price { padding: 5px 0; display: flex; flex-direction: column; align-items: center; background: var(--accent-color); color: #fefefe; border-radius: 5px; }
.price > span { display: block; }
.price > .actual { font-size: 1.3em; font-weight: bold; }
.price > .public { margin-top: 5px; text-decoration: line-through; }
.price .amount:after { font-size: 0.7em; }
.price .amount.ht:after { content: ' HT'; }

/* Rubriques produits
---------------------------------------------------------------------- */

.shop-categories { display: flex; justify-content: center; flex-wrap: wrap; max-width: var(--wrap-width, 1200px); margin: 0 auto; }
.shop-categories > article { flex: 1 1; min-width: 250px; max-width: 350px; margin: 5px; }
.shop-categories > article > a { display: flex; flex-direction: column; justify-content: center; width: 100%; height: 100%; padding: 10px; background: rgba(0, 0 , 0, 0.3); transition: background 0.4s ease; }
.shop-categories > article > a:hover { background: rgba(0, 0, 0, 0.5); }
.shop-categories > article h2 { margin: 0; color: #fff; text-align: center; font-size: 28px; }
.shop-categories > article .chapo { margin-top: 10px; color: #fff; font-size: 14px; line-height: 1.2em; text-align: justify; }
.shop-categories > article.noimg { background-color: #888; }
.shop-categories > article.hasimg { position: relative; height: 200px; background-size: cover; background-position: center center; }

/* Produit - encart
---------------------------------------------------------------------- */

/* Liste de produits
---------------------------------------------------------------------- */
.prodsList { display: flex; flex-wrap: wrap; justify-content: center; }

/* Produit - Liste
---------------------------------------------------------------------- */
.shop-products .product-list {
	padding: 0 15px;
}
.shop-products .prodsList {padding-top:35px;}


.prodsList > .prod { box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.15); border-radius: 5px; overflow: hidden; }
.prodsList > .prod .picture-frame { position: relative; }
.prodsList > .prod img { display: block; object-fit: cover; object-position: center center; }
.prodsList > .prod img.no-pic { padding: 30%; object-fit: contain; }
.prodsList > .prod header > h2 { font-size: 16px; text-transform: none; margin: 0 0 10px 0; height: 2em; text-align: center; }
.prodsList > .prod header > h2::after {	content: none;}
.prodsList > .prod header > h2 > a {font-size: 16px; text-align: center; }
.prodsList > .prod .prod-flags {position:absolute; top:8px; right:0;}
.prodsList > .prod .prod-flags .flag {--flag-color: #bbb; background: var(--flag-color); color:#fff; position: relative; height: 20px; display: block; padding:3px 4px; margin-bottom: 5px;}
.prodsList > .prod .prod-flags .flag::before {content:""; position:absolute; top:0; left:-10px; border-bottom: 10px solid var(--flag-color); border-top: 10px solid var(--flag-color); border-left: 10px solid transparent; }
.prodsList > .prod .prod-flags .flag.new {--flag-color: #ae1e3b; }
.prodsList > .prod .prod-flags .flag.best {--flag-color: #50bfd6; }
.prodsList > .prod .prod-flags .flag.promo {--flag-color: #f15c84; }

/* Produit - Liste (mosaïque)
----------------------------------------------------------------------- */
.prodsList.style-mosaic > .prod { display: flex; flex-direction: column; flex: 1 1 260px; max-width: 260px; margin: 15px; overflow: hidden; }
.prodsList.style-mosaic > .prod > figure > a { display: block; }
.prodsList.style-mosaic > .prod img { width: 100%; height: 275px;}
.prodsList.style-mosaic > .prod > .desc { position: relative; display: flex; flex-direction: column; flex: 1 1; background: #fff; padding: 10px; }
.prodsList.style-mosaic > .prod .price > span { text-align: center; }
.prodsList.style-mosaic > .prod header { flex: 1 1; }
.prodsList.style-mosaic > .prod header > div {
	font-size: 13px;
	text-align: justify;
	line-height: 1.1em;
	margin-bottom: 10px;
}

.prodsList.style-mosaic > .prod > .desc > section { text-align: center; user-select: none; -moz-user-select: none; -webkit-user-select: none; }

.prodsList.style-mosaic > .prod .quantity-modifier { text-align: center; }
.prodsList.style-mosaic > .prod .quantity-modifier span.minus,
.prodsList.style-mosaic > .prod .quantity-modifier span.plus,
.prodsList.style-mosaic > .prod .quantity-modifier input { display: none; }

/* Produit - Liste (liste)
------------------------------------------- */
.prodsList.style-list {display: flex; flex-direction: column;}
.prodsList.style-list > .prod {
	display: flex;
	flex-direction: row;
	align-items: center;
	
	max-width: 100%;
	width: 100%;
	
	margin: 15px 0;
}
.prodsList.style-list > .prod > .desc { flex: 1 1; padding: 10px 10px 10px 25px; }
.prodsList.style-list > .prod header > h2 { font-size: 22px; text-align: left;}
.prodsList.style-list > .prod header > h2 > a { font-size: 22px;}
.prodsList.style-list > .prod header > div { font-size: 16px; margin: 10px 0 20px 0;}
.prodsList.style-list > .prod > .desc .price > .actual { font-size: 16px;}
.prodsList.style-list > .prod > .picture-frame a { display: block; width: 100%;}
.prodsList.style-list > .prod > .picture-frame img { height: 275px; object-fit: cover;}
.prodsList.style-list > .prod > .picture-frame img.no-pic { width: 100%;}
.prodsList.style-list > .prod > .picture-frame .quantity-modifier { display: none;}
.prodsList.style-list > .prod > .desc .quantity-modifier { display: block; margin: 25px 0;}
.prodsList.style-list > .prod > .desc .quantity-modifier > .addToBasket > i { margin-right: 0.6em; }
.prodsList.style-list > .prod > .desc .quantity-modifier .product-more { display: inline-block; font-size: 14px; padding: 0 10px; margin-top: 10px;}
.prodsList.style-list > .prod > .desc .quantity-modifier .product-more > i { margin-right: 0.6em;}

@media (max-width: 899px) {
	.prodsList.style-list > .prod {
		flex-direction: column;
	}
}

/* Produit - Fiche
---------------------------------------------------------------------- */
.product-wrapper { max-width: var(--wrap-width); margin: 0 auto; }
.product-wrapper > .prod { display: flex; flex-direction: row; border-style: solid; border-width: 0 1px 1px 0; border-color: var(--border-color);}

.product-wrapper > .prod > .picture-frame { display: flex; flex-direction: column; flex: 1 1; }
.product-wrapper > .prod > .picture-frame img { display: block; width: 100%; height: 100%; max-height: 70vh; object-fit: cover; }
.product-wrapper > .prod > .picture-frame img.no-pic { padding: 30%; object-fit: contain; }

.product-wrapper > .prod > .details { display: flex; flex-direction: column; min-width: 300px; width: 30%; background: #fefefe; color: var(--text-color); padding: 15px; }
.product-wrapper > .prod > .details > .ref { font-size: 0.9em; }
.product-wrapper > .prod > .details > .ref > span { font-weight: bold; }
.product-wrapper > .prod > .details h1 { color: var(--text-color); font-size: 22px; line-height: 28px; padding: 0; margin: 0; text-align: left; }
.product-wrapper > .prod > .details h1::after { content: none; }
.product-wrapper > .prod > .details > .desc { margin: 15px 0; font-size: 14px; line-height: 1.2em; }

.product-wrapper > .prod > .details .add-to-basket { margin-top: auto; padding: 15px 0; }
.product-wrapper > .prod > .details .add-to-basket > .btn.addToBasket > i { margin-right: 1em; }

.product-wrapper > .prod > .sell { display: flex; flex-direction: column; padding: 15px; }
.product-wrapper > .prod > .sell .price { font-size: 1.4em; }
@media (max-width: 899px) {
	.product-wrapper > .prod { flex-direction: column; }

	.product-wrapper > .prod > .details { width: 100%; padding: 30px; }
	.product-wrapper > .prod > .details .add-to-basket { display: flex; flex-direction: row; }
	.product-wrapper > .prod > .details .add-to-basket .quantity-modifier { flex: 1 1; }
	
	.product-wrapper > .prod > .sell { width: 100%; padding: 30px; }
}

/* Colonne boutique
---------------------------------------------------------------------- */
.shopColumn {}
.shopColumn > .shop-catalog { margin: 10px 0; --level-pad: 15px; }
.shopColumn > .shop-catalog li > a { display: block; font-size: 14px; text-transform: uppercase; padding: 5px; }
.shopColumn > .shop-catalog li.cat-level1 { padding-left: calc(1 * var(--level-pad)); }
.shopColumn > .shop-catalog li.cat-level2 { padding-left: calc(2 * var(--level-pad)); }
.shopColumn > .shop-catalog li.cat-level3 { padding-left: calc(3 * var(--level-pad)); }

/* Barre de tri et disposition
---------------------------------------------------------------------- */
.listBar { display: flex; padding: 10px 0; margin-top: 25px; border: solid #ccc; border-width: 1px 0; }
.listBar > .styles { margin-left: auto; }
.listBar > ul > li { display: inline-block; }
.listBar > ul > li > a,
.listBar > ul > li > i { display: inline-block; padding: 6px; font-size: 15px; cursor: pointer; color: #444; }
.listBar > ul > li > a.on,
.listBar > ul > li.on > i { background: #444; color: #fff; }
.listBar > ul > li > a.on i { color: #fff; }

/* Moteur de recherche
---------------------------------------------------------------------- */
.header-container .header-right {text-align: center; display:flex; flex-direction: column; justify-content: center;}
.header-container .search {display:inline-block; max-width: 400px; align-self: center;}
.header-container .search form {display:flex;}
.header-container .search form input {background: #fff; box-shadow: none; border:1px solid #eee; font-size:12px; width:300px;}
.header-container .search form input::-webkit-input-placeholder{ color:#aaa; font-style: italic;}
.header-container .search form input::-moz-placeholder{ color:#aaa; font-style: italic;}
.header-container .search form input:-ms-input-placeholder { color:#aaa; font-style: italic;}
.header-container .search form input:-moz-placeholder{ color:#aaa; font-style: italic;}
.header-container .search form button {}

/* Modificateur de Quantité
---------------------------------------------------------------------- */
.quantity-modifier {
	transition: bottom 0.3s ease-in, background 0.3s ease-in;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
}

.quantity-modifier input {max-width:50px; text-align: center; vertical-align: middle;margin: 0 5px;}

.quantity-modifier .minus,
.quantity-modifier .plus {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	
	margin: 1%;
	background-color:#4343da;
	text-align: center;
	
	width: 26px;
	height: 26px;
	
	border-radius: 50%;
	font-size: 0;
	color: #fff;
	cursor:pointer;
}

.quantity-modifier .minus::before,
.quantity-modifier .plus::before {
	font-family: FontAwesome;
	font-size: 11px;
}

.quantity-modifier .minus::before { content: '\f068'; }
.quantity-modifier .plus::before { content: '\f067'; }

/* Processus de commande
---------------------------------------------------------------------- */
.processPage { padding: 0 15px;}
.processPage .content { padding: 0 15px;}
.processPage nav { text-align: right;}

.process-cmd {margin:20px 0; width:100%;}
.process-cmd ul {border:1px solid #eee; display:flex;}
.process-cmd ul li {border-right:1px solid #eee; padding:10px; text-align: center; font-size:14px; text-transform: uppercase; display: inline-block; flex:1; color:#888;}
.process-cmd ul li:last-child {border-right:none;}
.process-cmd ul li.on {font-weight: bold; background: #f9f9f9; color: #000;}
.process-cmd ul li.pass {font-weight: bold; background: #fbfbfb; color: #000; cursor: pointer;}

/* Login & création compte
---------------------------------------------------------------------- */
.processPage .auth {display:flex; justify-content: space-between;}
.processPage .auth > article {width:calc(50% - 20px); background: #fbfbfb; border:1px solid #eee; padding:30px; display:flex; flex-direction: column; justify-content: space-between;}
.processPage .auth > article div {font-size:12px; line-height: 14px;}
.processPage .auth > article .digiForm {margin-top:10px;}
.processPage .auth > article .digiForm nav {text-align: center;}

/* Panier (page)
---------------------------------------------------------------------- */
.basket-page {	padding: 0 15px;}


/* Panier (bloc du panier)
---------------------------------------------------------------------- */
.basket-page .basket {width:100%; border:solid #eee; border-width: 0 0 1px 1px; }
.basket-page .basket.empty td {text-align: center; padding: 15px;}
.basket-page .basket thead {background: #fbfbfb;}
.basket-page .basket thead tr {}
.basket-page .basket thead tr td {border:solid #eee; border-width: 1px 1px 0 0; padding:12px; color:#000;}
.basket-page .basket thead tr td.price,
.basket-page .basket thead tr td.qtty {text-align: center;}
.basket-page .basket tbody {margin-bottom: 10px; background: #fbfbfb;}
.basket-page .basket tbody tr {}
.basket-page .basket tbody tr td {border:solid #eee; border-width: 1px 1px 0 0;}
.basket-page .basket tbody tr td.product {width: 60%; font-size:0;}
.basket-page .basket tbody tr td.product figure {width:30%; display: inline-block; vertical-align: top;}
.basket-page .basket tbody tr td.product figure img {width:100%;}
.basket-page .basket tbody tr td.product figure img.no-pic {padding: 20%;}
.basket-page .basket tbody tr td.product article {width:70%; padding:0 20px 5px 20px; display: inline-block; vertical-align: top;}
.basket-page .basket tbody tr td.product article h2 {font-size:18px; text-align: left; text-transform: none; font-variant: none; }
.basket-page .basket tbody tr td.product article h2::after {content:none;}
.basket-page .basket tbody tr td.product article span.ref {display: block; font-size:12px; margin-bottom: 15px; }
.basket-page .basket tbody tr td.product article a {font-size: 12px;}
.basket-page .basket tbody tr td.qtty {text-align: center;  padding:4px;}
.basket-page .basket tbody tr td.price {text-align: center;  padding:12px;}
.basket-page .basket tbody tr td.totalpriceHT {text-align: right; width:120px;}
.basket-page .basket tbody tr td.del {text-align: center;}
.basket-page .basket.foot {margin:20px 0; border:none;}
.basket-page .basket tfoot {}
.basket-page .basket tfoot td.corner {width:70%; border:none; border-right:1px solid #eee; vertical-align: top}
.basket-page .basket tfoot td.corner section.corner {display:flex;}
.basket-page .basket tfoot tr:first-child td.subtotal,
.basket-page .basket tfoot tr:first-child td.subprice {border:solid #eee; border-width: 1px;}
.basket-page .basket tfoot tr td.price {width:120px; text-align: right;}
.basket-page .basket tfoot tr td.subtotal,
.basket-page .basket tfoot tr td.subprice,
.basket-page .basket tfoot tr td.price,
.basket-page .basket tfoot tr td.total {border:solid #eee; border-width: 0px 1px 1px 0px; padding:12px; font-size:14px; text-align: right; background: #fbfbfb;}
.basket-page .basket tfoot tr td.subtotal,
.basket-page .basket tfoot tr td.total {font-weight: bold; color:#000;}

.basket-page .basket + .information {margin-top:20px; }

.basket-page .basket .quantity-modifier {display: inline-block; white-space: nowrap;}

.basket-page .basket .corner .codepromo {width:300px;}
.basket-page .basket .corner h2 {font-size:12px; color:#444; text-transform: none; font-variant: none; text-align: left; padding:0; margin:4px 0;}
.basket-page .basket .corner h2::after {content:none;}
.basket-page .basket .corner input {background: #eee;}
.basket-page .basket .corner .deliveryDate {}
.basket-page .basket .corner .deliveryDate > div {color:#000;}
.basket-page .basket .corner .deliveryDate > div button{margin-right: 10px;}


/* Choix Adresse
---------------------------------------------------------------------- */
/* digi-addresses : vieux module js Multi-adresse, pas finalisé ? */
.digi-addresses ul li.address.chosen {border-color: #f15c84 !important;}
.digi-addresses ul li.address.chosen::after {color: #f15c84 !important; border-color: #f15c84 !important;}
.digi-addresses ul li.new:hover {color: #f15c84 !important;	border-color: #f15c84 !important;}

.addressChoice {padding:5px 0;}
.addressChoice > ul {}
.addressChoice > ul > li {padding:8px 4px; }
.addressChoice > ul > li > input {display:inline-block; margin-right: 10px; vertical-align: top;}
.addressChoice > ul > li > label {display:inline-block; width:calc(100% - 50px); vertical-align: top;}
.addressChoice > ul > li > label span.n {display:block; font-size:14px; line-height: 18px;}
.addressChoice > ul > li > label span.n > * {vertical-align: middle;}
.addressChoice > ul > li > label span.addr {display:block; font-size:12px; line-height: 15px;}
.addressChoice > ul > li.newAddr {padding-left:30px; font-size:14px;}
.addressChoice > ul > li.newAddr button {margin-top:8px;}
.addressChoice > ul > li:not(.newAddr):hover {background: #eee;}


/* Choix Livraison
---------------------------------------------------------------------- */
.shipModes {margin:20px 0;}
.shipModes li {padding:10px 0; border-bottom: 1px solid #eee; transition: all 0.3s ease;}
.shipModes li input {vertical-align: top;}
.shipModes li label {vertical-align: top; padding-left:12px; display: inline-block; width:calc(100% - 30px);}
.shipModes li label h5 {margin:0; color:#000; font-weight: bold; font-size:16px;}
.shipModes li label .price {color: #36c2d9;}
.shipModes li label .price > .tax {font-size: 0.6em;}
.shipModes li div {padding:12px 0px; line-height: 18px; font-size:13px;}
.shipModes li:last-child {border:none;}
.shipModes li:hover {background: #eee;}

.infoShip {line-height: 18px;}
.infoShip h4 {}
.infoShip b {font-size:14px;}
.infoShip address {font-size: 14px;}


/* Récapitulatif (validation)
---------------------------------------------------------------------- */
.processPage .basket {width:100%; border:solid #eee; border-width: 0 0 1px 1px; margin:20px 0;}
.processPage .basket thead {background: #fbfbfb;}
.processPage .basket thead tr td {border:solid #eee; border-width: 1px 1px 0 0; padding:12px; color:#000;}
.processPage .basket thead tr td.price,
.processPage .basket thead tr td.qtty {text-align: center;}
.processPage .basket tbody {margin-bottom: 10px; background: #fff;}
.processPage .basket tbody tr td { border: 1px solid #eee; padding:12px; background: #fff;}
.processPage .basket tbody tr td.product { width: 70%; padding: 12px;}
.processPage .basket tbody tr td.qtty {text-align: center;  padding:4px;}
.processPage .basket tbody tr td.price {text-align: center;  padding:12px;}
.processPage .basket tbody tr td.totalpriceHT {text-align: right; width:120px;}
.processPage .basket.foot {margin:20px 0; border:none;}
.processPage .basket tfoot {}
.processPage .basket tfoot td.corner {width:70%; border:none; border-right:1px solid #eee; vertical-align: top}
.processPage .basket tfoot td.corner section.corner {display:flex;}
.processPage .basket tfoot tr:first-child td.subtotal,
.processPage .basket tfoot tr:first-child td.subprice {border:solid #eee; border-width: 1px;}
.processPage .basket tfoot tr td.price {width:120px; text-align: right;}
.processPage .basket tfoot tr td.shipping,
.processPage .basket tfoot tr td.shippingprice,
.processPage .basket tfoot tr td.subtotal,
.processPage .basket tfoot tr td.subprice,
.processPage .basket tfoot tr td.price,
.processPage .basket tfoot tr td.total {border:solid #eee; border-width: 0px 1px 1px 0px; padding:12px; font-size:14px; text-align: right; background: #fbfbfb;}
.processPage .basket tfoot tr td.subtotal,
.processPage .basket tfoot tr td.total {font-weight: bold; color:#000;}

.processPage .basket tfoot tr td.shipping,
.processPage .basket tfoot tr td.shippingprice {font-size:11px;}


.processPage .payModes {display: flex; justify-content: center; flex-wrap: wrap; margin: 25px 0;}
.processPage .payModes li {margin: 15px; padding: 15px; }
.processPage .payModes li.select {border: 1px solid #ccc; box-shadow: 0 0 15px rgba(0, 0, 0, 0.2); background: linear-gradient(to bottom, #fff, #efefef);}
.processPage .payModes li img {display: block; width: 150px;}
.processPage .payModes li span {display: block;	text-align: center;	margin-top: 10px;}
.processPage .cgv {margin: 25px 0; font-size:14px;}

.processPage .addresses {}
.processPage .addresses article {padding-bottom: 16px; line-height: 18px;}
.processPage .addresses article b {color:#000; font-size:14px;}
.processPage .addresses article b > * {vertical-align: middle;}
.processPage .addresses article address {font-size:14px;}
.processPage .addresses article address b {color:#888;}


/* Confirmation de commande
---------------------------------------------------------------------- */
.processPage .orderRef {font-size:24px;}
.processPage .content strong {color:#000; font-weight: 900; font-size:1.2em;}

/* Paiement par carte
---------------------------------------------------------------------- */
.processPage .payment_form .chapo {
	margin-bottom: 15px;
	text-align: center;
}

.processPage .payment_form form > div {
	text-align: center;
}

/* Panier (base)
---------------------------------------------------------------------- */

/* Panier (default)
---------------------------------------------------------------------- */
.basket.default {width:100%; border:solid #eee; border-width: 0 0 1px 1px; }
.basket.default thead {background: #fbfbfb;}
.basket.default thead tr td {border:solid #eee; border-width: 1px 1px 0 0; padding:12px; color:#000;}
.basket.default thead tr td.price,
.basket.default thead tr td.qtty {text-align: center;}
.basket.default tbody {margin-bottom: 10px; background: #fbfbfb;}
.basket.default tbody tr td { border: 1px solid #eee; }
.basket.default tbody tr td.product { width: 70%; padding: 12px;}
.basket.default tbody tr td.qtty {text-align: center;  padding:4px;}
.basket.default tbody tr td.price {text-align: center;  padding:12px;}
.basket.default tbody tr td.totalpriceHT {text-align: right; width:120px;}

.basket.default.foot {margin:20px 0; border:none;}
.basket.default.foot tfoot {}
.basket.default.foot tfoot td.corner {width:70%; border:none; border-right:1px solid #eee; vertical-align: top}
.basket.default.foot tfoot td.corner section.corner {display:flex;}
.basket.default.foot tfoot tr:first-child td.subtotal,
.basket.default.foot tfoot tr:first-child td.subprice {border:solid #eee; border-width: 1px;}
.basket.default.foot tfoot tr td.price {width:120px; text-align: right;}
.basket.default.foot tfoot tr td.subtotal,
.basket.default.foot tfoot tr td.subprice,
.basket.default.foot tfoot tr td.price,
.basket.default.foot tfoot tr td.total {border:solid #eee; border-width: 0px 1px 1px 0px; padding:12px; font-size:14px; text-align: right; background: #fbfbfb;}
.basket.default.foot tfoot tr td.subtotal,
.basket.default.foot tfoot tr td.total {font-weight: bold; color:#000;}
.basket.default.foot.no-corner {
	background: #fbfbfb;
	
	width: 320px;
	max-width: 100%;
	
	margin-top: 20px;
	margin-left: auto;
	
	border: 1px solid #eee;
	border-collapse: collapse;
}

.basket.default.foot.no-corner td {
	padding: 10px;
	border: 1px solid #eee;
	text-align: right;
}

/* Panier (mini)
---------------------------------------------------------------------- */
.shop-mini-basket {background: #fff; padding:15px; margin-top:30px; cursor: auto;}
.shop-mini-basket .basket.mini {border-collapse:collapse;border-spacing:0; width: 100%;}
.shop-mini-basket .basket.mini tbody tr {border-bottom:1px solid #444}
.shop-mini-basket .basket.mini tbody td {padding:0;}
.shop-mini-basket .basket.empty tbody td {color: #000; text-align: center; padding: 10px;}
.shop-mini-basket .basket.mini .picture {width:50px; font-size: 0; padding: 5px 0;}
.shop-mini-basket .basket.mini .picture img {width:100%;}
.shop-mini-basket .basket.mini .product {font-size: 11px; color:#000; padding:5px 6px;}
.shop-mini-basket .basket.mini .product .price {padding-top:4px; font-size: 12px;}
.shop-mini-basket .basket.mini .del a {color:#000; font-weight: bold;}

.shop-mini-basket .basket.mini tfoot {}
.shop-mini-basket .basket.mini tfoot td {padding:10px 0;}
.shop-mini-basket .basket.mini .subtotal {color:#000; border-bottom:1px solid #444; text-align: left;}
.shop-mini-basket .basket.mini .subprice {color:#000; border-bottom:1px solid #444; text-align: right;}
.shop-mini-basket .basket.mini .total {color:#000; font-weight: bold; text-align: left;}
.shop-mini-basket .basket.mini tfoot .price {color:#000; font-weight: bold; text-align: right;}

.shop-mini-basket nav.actions { text-align: center; padding-top: 10px; }

/* Panier (mini) - Déroulant
---------------------------------------------------------------------- */
.top-basket .cart .basketQtty {position:absolute; top:2px; left:22px; background: rgba(0,0,0,0.5); border-radius: 20px; width:18px; height: 18px; font-size:10px; font-weight: bold; padding:4px 0; text-align: center; }
.top-basket .cart .basketQtty:empty {display: none;}
.top-basket { position: relative; }
.top-basket .basket-dropdown.shop-mini-basket {
	position: absolute; top: -100vh; right: 0;
	z-index: -1; background: #fff; border:1px solid #111; width: 320px; transition: all 0.3s ease; margin-top:0px
}
.top-basket:hover .basket-dropdown.shop-mini-basket { top:100%; }


/* Popin ajout / ajouté au panier
---------------------------------------------------------------------- */
.modal .product {padding:20px;}
.modal .product > section {display:flex;}
.modal .product > section aside {width:40%;}
.modal .product > section aside figure {width:100%; padding:0;}
.modal .product > section aside figure img {width:100%; border-radius: 8px;}
.modal .product > section aside figure img.no-pic {padding:20%;}
.modal .product > section article {width:60%; padding-left:20px;}
.modal .product > section article .title {font-size:18px; margin-bottom: 10px;}
.modal .product > section article .error {font-size:14px; color:#d00;margin:15px 0; padding:10px; border:#d00; background: #fdd;}
.modal .product > section article .price {color:#50bfd6; font-size:18px;}
.modal .product > section article .oldPrice {color:#ec5b84; font-size:18px; text-decoration: line-through;}
.modal .product > section article .package {font-size:13px;padding-top:10px;}
.modal .product > section article .quantity {padding-top:10px;}
.modal nav {margin-top:20px; text-align: right;}
.modal nav.actions {display:flex; justify-content: space-between;}
.modal .product .quantity-modifier {margin:6px 0; }
.modal .assoc-products {}
.modal .assoc-products h4 {padding-left:20px; margin-bottom: 5px;}