/**
 * CSS Projet Jean Dubost - V1
 */

@font-face {
    font-family: 'GravureFont';
    src: url('/css/mobile/fonts/Monotype-Corsiva-Regular-Italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5, Opera 10+, Safari 3—5 */
}

html,
body {
	background-color: #FFF;
	font-family: "Rambla", sans-serif;
}
body{
max-width : 970px;
display : block;
}
header,
main,
footer {
    margin: 0 16px;
}
.row {
    --bs-gutter-x: 32px;
}
:focus-visible, :focus {
    border-color: transparent!important;
    outline: 0 !important;
	box-shadow: none  !important;
}
.btn-check:checked+.btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active {
    border: 0px;
}
/* 1-GENERAL ---------------------------------------- */
h1{
	font-weight : 700;
	font-size : 26px;
	color : #524640;
	hyphens: auto;
}
h2{
	font-weight : 700;
	font-size : 24px;
	color : #524640;
	hyphens: auto;
}
h3{
	font-weight : 400;
	font-size : 15px;
	color : #524640;
	text-transform : uppercase;
	line-height: 20px;
	hyphens: auto;
}
p{
	font-size : 18px;
	color : #000;
	margin-bottom : 8px;
}
ol, ul {
    padding-left: 20px;
}
img {
    width: auto;
    height: auto;
    max-width: 100%;
}
a{
	font-weight : 700;
	text-decoration : underline;
	color : #524640;
}
section{
	margin-bottom : 20px;
}
.btn-primary{
	color : #fff;
	background-color : #524640;
	text-transform : uppercase;
	font-size : 18px;
	font-weight : 700;
	border-radius : 8px;
	padding : 16px 24px;
	border: 1px solid #524640 ;
	margin-bottom : 12px;
	line-height : normal;
}
.btn-secondary{
	color : #524640;
	background: transparent;
	font-weight : 400;
	text-transform : uppercase;
	font-size : 18px;
	border-radius : 8px;
	padding : 16px 24px;
	border: 1px solid #524640 ;
	margin-bottom : 12px;
	line-height : normal;
}
.page-title{
	margin : 30px 0 10px;
}
input {
    border: 1px solid #D9D9D9;
    padding: 16px 20px;
    margin: 0;
    line-height: normal;
    border-radius: 8px;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}
input[type="number"] {
    -moz-appearance: textfield !important;
}
/* 2-HEADER ---------------------------------------- */
/* Bandeau promo  */
.topbar{
	background-color : #524640;
	padding : 3px;
	overflow: hidden;
	display: flex;
	align-items: center;
}
.defile {
  width: 100%;
  overflow: hidden;
  -webkit-tap-highlight-color: transparent;
}
.marquee-inner {
	display: flex;
	align-items: center;
	will-change: transform;
	animation: marquee var(--marquee-duration, 10s) linear infinite;
}
.marquee-item {
	flex: none;
	white-space: nowrap;
	padding-right: 2rem;
	color : #fff;
	font-size : 18px;
	line-height : 28px;
	margin : 0px;
}
.topbar .marquee-item b{
	text-transform : uppercase;
	color : #D9E021;
	font-size : 26px;
	font-weight : 700;
	margin : 0 10px 0 25px;
}
@keyframes marquee {
  from { transform: translateX(0); }
  to   { transform: translateX(calc(var(--marquee-translate, 0px) * -1)); }
}

/* Logo + menu   */
header {
    margin: 0 16px;
}
.header {
	background-color : #F4EFEA;
	padding : 16px;
	align-items: center;
}
.header .btn-menu{
	padding : 0px;
}
.header .btn-menu img{
	width : 100%;
}
.header .btn-menu{
	padding : 0px;
    border: 0px;
    background: transparent;
}
.header .logo{
    display: flex;
	column-gap: 20px;
	align-items : center;
	padding : 0px;
}
.header .logo .img-logo{
    max-width : 215px;
	width : 100%;
}
.header .actions {
    display: flex;
    justify-content: end;
    align-items: center;
	column-gap: 20px;
	padding: 0;
}
.header .actions img{
    width : 100%;
}
/* Recherche */
.search{
	background-color : #F4EFEA;
	padding : 0 16px 16px 16px;
}
.search form {
    width: 100%;
    background: #fff;
    border-radius: 8px;
    padding: 13px 8px;
}
.search form input {
    margin: 0px;
    padding: 0px;
    border: 0px;
	line-height: 28px;
	width: calc(100% - 50px);
}

.search form input::placeholder {
	font-size : 18px;
	color : #808080;
	line-height : 28px;
}
.search button.search-btn {
    border: 0px;
    background: transparent;
    padding: 0 8px;
}
/* 3-OFFCANVAS ---------------------------------------- */
/* Général  */
.offcanvas.offcanvas-start{
    width: 100%;
    max-width: 1002px;
	padding: 0;
	border: 0px;
}
.offcanvas .offcanvas-header{
	display : block;
    padding: 0px;
	background-color: #F4EFEA;
    padding: 0px 16px;
}
.offcanvas-header .btn-close {
    padding: 0px;
    position: relative;
    margin: 0px;
	background: transparent;
	opacity: 1;
}
.offcanvas-body {
    background-color: #F4EFEA;
    padding: 0;
	overflow-x: hidden;
}
/* Menu  */
.menu-wrapper {
	position: relative;
}
.menu-level {
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    height: 0px !important;
    display: block;
    overflow: hidden;
    transition: left 0.3s ease;
}
.menu-level.active {
    left: 0;
    overflow: visible;
    display: block;
    height: 100% !important;
    position: relative;
}
.menu-level.exit-left {
	left: -100%;
}
.menu-level.exit-right {
	left: 100%;
}
.menu-next,
.menu-back {
	display: block;
	width: 100%;
}
.menu-level .menu-level-2 .menu-back:before {
    content: '';
    width: 6px;
    height: 10px;
    display: inline-block;
    background: url(/img/mobile/arrow-back.svg);
    padding: 0 10px 0 0;
    background-repeat: no-repeat;
}
.menu-level ul {
    padding : 12px 0px;
}
.menu-level li {
    list-style: none;
    padding: 0px 30px;
}
.menu-level .menu-principal,
.menu-level .menu-level-2{
	background-color : #fff;
}
.menu-level .menu-principal a {
    text-transform: uppercase;
    font-weight: 700;
    text-decoration: none;
    font-size: 18px;
    padding: 16px 0;
    color: #524640;
    display: block;
	line-height: 20px;
	cursor: pointer;
}
.menu-compte {
    padding : 12px 0px;
}
.menu-compte  li {
    list-style: none;
    padding: 0px 30px;
}
.menu-compte a {
    font-weight: 700;
    text-decoration: none;
    font-size: 18px;
    padding: 16px 0;
    color: #524640;
    display: block;
	line-height: 20px;
	cursor: pointer;
}
.menu-next:after{
	content: ' ';
    width: 11px;
    height: 20px;
    background: url(/img/mobile/arrow-right.svg);
    position: absolute;
    right: 30px;
    background-repeat: no-repeat;
    background-position: center;
}
.menu-level .menu-level-2 .menu-back {
    display: block;
    border: 0px;
    background: transparent;
    text-decoration: underline;
    font-weight: 700;
    font-size: 14px;
    color: #808080;
    padding: 20px 30px;
    text-align: left;
}
.menu-level .menu-level-2 p {
    display: block;
    font-weight: 700;
    font-size: 26px;
    color: #524640;
    padding: 0px 30px;
	margin : 0px;
}
.menu-level .menu-level-2 a {
    text-transform: uppercase;
    font-weight: 700;
    text-decoration: none;
    font-size: 18px;
    padding: 16px 0;
    color: #524640;
    display: block;
	line-height: 20px;
	cursor: pointer;
}
.menu-level a[aria-expanded="false"]:after {
    content: ' ';
    width: 15px;
    height: 15px;
    background: url(/img/mobile/plus.svg);
    position: absolute;
    right: 30px;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform 0.3s ease;
}
.menu-level a[aria-expanded="true"]:after {
    content: ' ';
    width: 15px;
    height: 15px;
    background: url(/img/mobile/plus.svg);
    position: absolute;
    right: 30px;
    background-repeat: no-repeat;
    background-position: center;
	transform: rotate(45deg);
    transition: transform 0.3s ease;
}
.menu-level .menu-level-2 ul.menu-level-3 {
	padding : 0px;
}
.menu-level .menu-level-2  ul.menu-level-3 li {
    list-style: none;
    padding: 0px 0 0 10px;
}
.menu-level .menu-level-2 ul.menu-level-3 a {
    text-transform: uppercase;
    font-weight: 400;
    text-decoration: none;
    font-size: 16px;
    padding: 8px 0;
    color: #524640;
    display: block;
	line-height: 20px;
	cursor: pointer;
}
/* Style spécifique pour menu "Marques" */
#menu-marques ul{
	display: flex;
    flex-wrap: wrap;
}
#menu-marques ul li{
	flex: 0 0 46%;
    margin: 10px 0 0 10px;
    background-color: #736357;
    border-radius: 10px;
}
#menu-marques ul a{
	text-transform: uppercase;
    font-weight: 400;
    text-decoration: none;
    font-size: 16px;
    padding: 8px 0;
    color: #fff;
    display: block;
	line-height: 20px;
	cursor: pointer;
	text-align : center;
}
#menu-marques ul a img {
    width: 100%;
    display: block;
    height: 100px;
}
/* 4-FOOTER ---------------------------------------- */
/* Newsletter + Réseaux */
.footer-top{
	background-color : #F4EFEA;
	padding : 30px 0;
}
.footer-top p{
	font-size : 18px;
	color : #524640;
	margin-bottom : 8px;
}
.footer-top .title-footer{
	color :#524640;
	font-weight : 700;
	font-size : 26px;
	margin: 0px;
}
.footer-top .newsletter-form {
    display: flex;
	margin-bottom : 30px;
}
.footer-top  .newsletter-form input {
    width: calc(100% - 45px);
    border: 0;
    padding: 16px 20px;
    margin: 0;
    line-height: normal;
	border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}
.footer-top  .newsletter-btn {
    width: 45px;
    border: 0px;
    color: #fff;
    background-color: #524640;
    margin: 0px;
    padding: 16px 0px;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    line-height: normal;
	font-size : 18px;
}
.footer-top  .newsletter-form input::placeholder {
	font-size : 18px;
	color : #808080;
	line-height : 28px;
}
.footer-top .social-list{
	padding : 0px;
}
.footer-top .social-list li{
	list-style : none;
	display :inline-block;
	padding :  12px 16px 0 0;
}
.footer-top .social-list li:last-child{
	padding-right : 0;
}
/* Réassurance */
.reinsurance {
	padding-top : 30px;
	padding-bottom : 30px;
}
.reinsurance .items-reinsurance{
	display : flex;
	gap : 24px;
	align-items: center;
	margin-bottom : 20px;
}
.reinsurance .items-reinsurance:last-child {
	margin-bottom : 0px;
}
.reinsurance .items-reinsurance img{
	flex : 0 0 34px;
	max-width : 34px;
	width : 100%;
}
.reinsurance .items-reinsurance p{
	text-transform : uppercase;
	color : #524640;
	font-size : 15px;
	line-height : 20px;
	margin : 0px;
}
.reinsurance .items-reinsurance a{
	display : flex;
    font-weight: normal;
    text-decoration: none;
}
/* Menu pied de page */
.footer-links .nav-footer{
	border-top : 1px solid #808080;
	padding : 12px 0 0px;
}
.footer-links .nav-footer li{
	list-style : none;
	display : block;
	margin : 12px 0px;
}
.footer-links .nav-footer li a{
	color : #808080;
	text-decoration : none;
	text-align : center;
	font-size : 15px;
	text-transform : uppercase;
	display : block;
}
/* Logo certification */
.footer-bottom .certifications {
    display: flex;
    justify-content: center;
    margin: 30px 0;
    gap: 30px;
}
/* 5-ACCUEIL ---------------------------------------- */
.home .select-offers .offers{
	margin : 0px -8px;
}
.select-products{
	margin-bottom: 12px;
}
.select-offers .row.offers{
	--bs-gutter-x: 12px;
}
.select-offers .offer a{
	border : 2px solid #F4EFEA;
	padding: 30px 15px;
    display: block;
	text-align : center;
	text-decoration : none;
}
.select-offers .offer .offer-image  {
	height : 75px;
	margin : 0 0 20px;
}
.select-offers .offer .offer-image img {
	height : 100%;
}
.select-offers .offer .offer-title p{
	font-weight: 700;
    font-size: 18px;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    margin: 0px;
	line-height: normal;
    min-height: 45px;
}
.select-offers .offer.fidelite .offer-title p{
	color : #8CC63F;
}
.select-offers .offer.parrainage .offer-title p{
	color : #FBB03B;
}
/* 6-LISTE PRODUIT ---------------------------------------- */
.row.products{
	--bs-gutter-x: 12px;
    display: grid;
    column-count: 2;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 12px;
}
.row.products.full-size{
	--bs-gutter-x: 12px;
    display: block;
    background: #F4EFEA;
    padding-top: 10px;
    padding-bottom: 10px;
}
.product{
	display: flex;
	width: 100%;
}
.product a {
    background: #F4EFEA;
    display: block;
	border : 2px solid #F4EFEA;
	text-decoration : none;
	width: 100%;
}
.product-image {
    position: relative;
    background: #fff;
	aspect-ratio: 1 / 1;
	width : 100%;
	margin: 0 auto;
}
.product-image img {
    width: auto;
    height: auto;
    margin: auto;
    display: block;
    object-fit: contain;
    aspect-ratio: 1 / 1;
}
.product-image .tag {
    position: absolute;
    top: 10px;
    left: 10px;
    border-radius: 4px;
    padding: 6px;
    color: #fff;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 700;
    line-height: 12px;
	z-index: 10;
    width: auto;
}
.product-image .tag.promo {
    background: #8CC63F;
}
.product-image .tag.new {
    background: #FBB03B;
}
.product .tag.promo {
    border-radius: 4px;
    padding: 6px;
    color: #fff;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 700;
    line-height: 12px;
	z-index: 10;
    width: auto;
    background: #8CC63F;
}
.product .product-infos {
    padding: 16px 8px;
    min-height: 150px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.product .product-infos p {
    font-weight: normal;
    font-size: 14px;
}
.price span {
    font-size: 24px;
    font-weight: 700;
	display: block;
	line-height: normal;
}
.price .standard-price {
    color: #524640;
}
.price .promotional-price {
    color: #8CC63F;
}
.price .original-price {
    color: #808080;
	font-size: 18px;
	font-weight : 400;
	text-decoration : line-through;
}
/* 7-Ajout au panier ---------------------------------------- */
body.page-product footer{
	margin-bottom : 200px;
}
.product-cart {
	max-width : 1002px;
	margin-bottom: 0px;
    position: fixed;
    bottom: 0px;
    width: 100%;
    background: #fff;
    left: 0;
    padding: 20px;
    z-index: 100;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    box-shadow: 0px 2px 6px rgba(0, 0, 0, 15);
}
.product-cart .form-qty {
    max-width: 150px;
    margin: 0 0 0 auto;
}
.product-cart .price-qty {
    margin-bottom: 15px;
	align-items: end;
}
.form-qty .btn-qty{
    border: 1px solid #D9D9D9;
    background: #fff;
    font-size: 20px;
    color: #524640;
    font-weight: 400;
	width: 45px;
    line-height: 45px;
}
.form-qty .btn-qty.minus{
    border-radius: 4px 0 0 4px;
}
.form-qty .btn-qty.plus{
    border-radius:  0 4px 4px 0;
}
.form-qty .btn-qty:disabled{
	color : #D9D9D9;
}
.form-qty input{
	text-align : center;
	color : #524640;
	font-size : 18px;
	font-weight : 700;
	padding : 0px;
	line-height : normal;
}

.product-cart button{
	display: block;
    width: 100%;
	margin-bottom: 0px;
}
.price .standard-price,
.price .promotional-price {
    font-size: 32px;
}

.product-cart #divToRefresh .resume-gravure button,
.product-cart #divToRefresh .form-perso button{
    width: auto;
    float: left;
    padding-left: 20px;
    padding-right: 20px;
}
.product-cart #divToRefresh .resume-gravure button+button,
.product-cart #divToRefresh .form-perso button+button{
    margin-left: 3px;
}

.product-cart #divToRefresh .resume-gravure,
.product-cart #divToRefresh .form-perso{
    margin-bottom: 15px;
}

/* Bottom sheet */
.bottom-sheet {
	position: fixed;
	inset: 0;
	z-index: 1050;
	pointer-events: none;
	max-width : 1002px;
}
.bottom-sheet .backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.30);
	opacity: 0;
	transition: opacity 280ms ease;
}
.bottom-sheet .sheet {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	background: #fff;
	border-radius: 16px 16px 0 0;
	box-shadow: 0px 2px 6px rgba(0, 0, 0, 15);
	transform: translateY(100%);
	transition: transform 300ms cubic-bezier(.2,.8,.2,1);
	max-height: 75vh;
	display: flex;
	flex-direction: column;
	-webkit-overflow-scrolling: touch;
	padding: 0 24px 24px;
}
.sheet-body {
	overflow-y: auto;
}
.bottom-sheet.active {
	pointer-events: auto;
}
.bottom-sheet.active .backdrop {
	opacity: 1;
}
.bottom-sheet.active .sheet {
	transform: translateY(0);
}
.sheet-handle {
    width: 110px;
    height: 4px;
    background: #D9D9D9;
    border-radius: 4px;
    margin: 20px auto 20px;
}
.sheet-header {
    position: absolute;
    right: 24px;
    top: 10px;
}
.close-btn {
	background: none;
	border: none;
	line-height: 1;
	padding: 6px;
}
.sheet-body .title-bottomSheet{
	color : #524640;
	font-weight : 700;
	font-size : 26px;
	text-align : center;
	margin: 0 0 20px;
    line-height: normal;
}
.produit-add-cart  {
    --bs-gutter-x: 12px;
	margin : 0 0 20px;
}
.produit-add-cart img {
    border: 2px solid #F4EFEA;
}
.produit-add-cart h2 {
    font-size : 15px;
	text-transform : uppercase;
	font-weight: 400;
	margin : 0px 0px 15px;
}
.reference-cart {
    font-size : 12px;
	text-transform : uppercase;
	font-weight: 400;
	color : #808080;
	margin : 0px 0px 10px;
}
.produit-add-cart p.qty-cart {
    font-size : 12px;
	text-transform : uppercase;
	font-weight: 700;
	color : #524640;
	margin : 0px 0px 10px;
}
.produit-add-cart .price-cart-modal{
	display : flex;
	gap: 15px;
    align-items: center;
}
.sheet-body .action-add-cart button {
    display: block;
    width: 100%;
}
/* 8-Page de détail d'un produit ---------------------------------------- */
/* Fil d'ariane */
.breadcrumbs nav{
	margin : 12px 0;
}
.breadcrumb-item+.breadcrumb-item::before{
	color: #808080 ;
}
.breadcrumbs a {
    color: #808080;
    text-decoration: none;
	line-height: normal;
}
.breadcrumb-item.active{
	font-weight : 700;
	color : #808080;
	line-height: normal;
}
.breadcrumbs nav li {
    padding-left: 0 !important;
    padding-right: 5px;
}
/* Images produit */
.product-image .tag{
	font-size : 14px;
}
.owl-carousel{
	padding : 0px;
}
.owl-carousel .owl-nav {
	position: absolute;
	top: 45%;
	width: auto;
	right: 0px;
    left: 0px;
	display: flex;
	justify-content: space-between;
	transform: translateY(-45%);
	pointer-events: none;
}
.owl-carousel .owl-dots.disabled,
.owl-carousel .owl-nav.disabled {
	display: none;
}
.owl-carousel button.owl-prev,
.owl-carousel button.owl-next {
	background-color: rgba(255, 255, 255, 0.6) !important;
	width: 40px;
	border-radius: 0;
	height: 40px;
	pointer-events: all;
}
.owl-carousel button.owl-prev span,
.owl-carousel button.owl-next span {
	width: 16px;
	height: 16px;
	display: block;
	margin: 0 auto;
}
.owl-carousel button.owl-prev span {
	background: url(/img/mobile/arrow-left.svg) no-repeat center;
}
.owl-carousel button.owl-next span {
	background: url(/img/mobile/arrow-right.svg) no-repeat center;
}
.presentation {
    margin: 40px 0 0 0;
}
.presentation .marque{
	font-size : 15px;
	font-weight : 400;
	text-transform : uppercase;
	color : #808080;
}
.presentation p.surmesure,
.resume-gravure p.surmesure,
.product .row .gravure-resume p.surmesure{
	margin-top: 25px;
    display: block;
    background-color: #f4efea !important;
    border-radius: 15px;
    padding: 15px;

}
.resume-gravure p.surmesure,
.product .row .gravure-resume p.surmesure{
    margin-top: 0;
    margin-bottom: 15px;
}
.product .row .gravure-resume p.surmesure{
    width: 110%;
    font-size: 15px;
    padding: 10px 15px;
    margin-top: 5px;
    margin-bottom: 25px;
    margin-right: 0;
    border-radius: 5px;
}
.presentation p.surmesure img{
	float: left;
    margin: 5px 15px 15px 0;
}

#resumeGravure .accordion-item .accordion-header .accordion-button{
    display: flex !important;
}

#collapseResumeGravure{
    margin-bottom: 15px;
}

.clear {
    clear: both;
}

.picto ul {
	padding: 0;
    margin: 40px auto;
    align-items: center;
    display: flex;
    justify-content: center;
    gap: 10px;
}
.picto ul li{
	list-style: none;
}
.information button{
	font-weight : 400;
	font-size : 15px;
	display : block;
	width: 100%;
}
.detail{
	 margin: 40px auto;
}
.accordion-item {
    color: #524640;
    background-color: #fff;
    border: 0;
    padding: 0px;
    border-radius: 0px !important;
    border-top: 1px solid #524640 !important;
}
.accordion-item:last-child {
    border-bottom: 1px solid #524640 !important;
}
.accordion-button {
    border-radius: 0px !important;
    padding: 24px 0px;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    color: #524640;
	line-height: normal;
	outline: 0 !important;
    box-shadow: none !important;
}
.accordion-body {
    padding: 0 0 10px 0;
}
.accordion-button:not(.collapsed) {
    color: #524640;
    background-color: #fff;
    box-shadow: none;
}
.accordion-button:after{
    background-image: url(/img/mobile/arrow-bottom.svg);
}
.accordion-button:not(.collapsed):after {
    background-image: url(/img/mobile/arrow-bottom.svg);
}
/* Gifts */
.gift {
    background: #F4EFEA;
    padding: 16px;
    margin: 0 -16px;
    --bs-gutter-x: 16px;
    align-items: center;
}
.gift h3{
	font-size: 26px;
	color : #8CC63F;
	font-weight : 700;
	text-transform : none;
}
.gift .gift-img img{
    margin: 0 auto;
    display: block;
}
.gift p{
	color : #524640;
	line-height : normal;
}

.select-offers 	.offers{
	margin : 40px 0;
}
.related-product{
	margin-bottom : 0px;
}
.related-product .row {
    background: #f4efea;
    padding: 16px;
}
.related-product .row .owl-carousel .owl-nav{
	right: -16px;
    left: -16px;
}
.related-product .row h2 {
    margin: 15px 0px 24px !important;
    padding: 0 !important;
}
.related-product .price .standard-price,
.related-product .price .promotional-price {
    font-size: 24px;
}
.price .original-price{
	font-size: 18px;
}
/* 9-Page panier - Détail de commande---------------------------------------- */
.back-shop {
	display: block;
	width: 100%;
}
.btn-back {
    display: block;
    border: 0px;
    background: transparent;
    text-decoration: underline;
    font-weight: 700;
    font-size: 14px;
    color: #808080;
    padding: 20px 0px 0px;
    text-align: left;
}
.btn-back:before {
    content: '';
    width: 6px;
    height: 10px;
    display: inline-block;
    background: url(/img/mobile/arrow-back.svg);
    padding: 0 10px 0 0;
    background-repeat: no-repeat;
}
/* Etapes de commande */
.checkout-steps {
    padding: 0px;
    width: 100%;
    margin: 20px 0 0;
    display: flex;
    justify-content: space-between;
	gap: 10px;
	overflow-y: auto;
}
.checkout-steps .step {
    list-style: none;
}
.checkout-steps .step .step-number {
    background: #fff;
	border : 1px solid #C6B198;
    line-height: 24px;
    border-radius: 50%;
    width: 24px;
    display: block;
    text-align: center;
    color: #C6B198;
    font-weight: 400;
    margin: 0 auto;
}
.checkout-steps .step.active .step-number {
    background: #524640;
	border-color : #524640;
    color: #fff;
    font-weight: 700;
}
.checkout-steps .step .step-label {
    color: #C6B198;
    font-weight: 400;
    font-size: 13px;
    text-transform: uppercase;
    line-height: normal;
    display: block;
    text-align: center;
    margin: 6px 0 10px;
}
.checkout-steps .step.active .step-label {
    color : #524640;
    font-weight: 700;
}
/* Liste des produits */
.list-cart .product{
	padding : 0px 0px 20px;
	margin : 20px 0px 20px 0px;
	border-bottom : 1px solid #504640;
}
.list-cart .product:last-child{
	border : 0px;
}
.list-cart .product{
	display : block;
}
.list-cart .product .row {
    margin: 0;
}
.product-info-cart {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}
.list-cart .product  .product-image{
	border: 2px solid #F4EFEA;
	width : 41.66666667%;
	padding : 0px;
	margin : 0 0 20px;
}
.list-cart .product h2{
	font-size : 15px;
	text-transform : uppercase ;
	font-weight : 400;
 }
 .delete a {
    background: transparent;
    border: 0px;
    width: 26px;
}
.list-cart .qty{
	padding : 0px;
}
.list-cart  .price-cart {
    text-align: right;
}
.list-cart .product .cart-qty-price {
    align-items: end;
}
/* Code promo */
.coupon-form {
    display: flex;
	flex-wrap : wrap;
}
.coupon-form label {
    flex: 0 0 100%;
	font-size : 18px;
	font-weight: 400px;
	color : #524640;
	margin : 0 0 12px;
}
.coupon-form input {
    width: calc(100% - 45px);
    border: 1px solid #D9D9D9;
    padding: 16px 20px;
    margin: 0;
    line-height: normal;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}
.coupon-form .coupon-btn {
    width: 45px;
    border: 0px;
    color: #fff;
    background-color: #524640;
    margin: 0px;
    padding: 16px 0px;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    line-height: normal;
    font-size: 18px;
}
.coupon-form p{
    width: 100%;
}
.coupon-form .coupon-btn-delete {
    float: right;
    width: 45px;
    border: 0px;
    color: #fff;
    background-color: #524640;
    margin: 0px;
    padding: 16px 0px;
    line-height: normal;
    font-size: 18px;
    border-radius: 8px;
}
.total-cart .francoPort {
    font-size: 15px;
    margin: 15px 0 0 0;
}
/* Total */
.total-cart{
	margin-bottom : 0px;
}
.total-cart dl {
    border-bottom: 1px solid #524640;
    display: flex;
    justify-content: space-between;
	flex-wrap : wrap;
	align-items: center;
    padding: 20px 16px;
    margin: 0px;
}
.total-cart dt,
.total-cart dd {
    width: 50%;
    flex: 0 0 50%;
	color : #524640;
}
.total-cart dt{
	font-weight : 400;
	font-size : 15px;
	text-transform : uppercase;
}
.total-cart dl.total{
	background: #F4EFEA;
    border-bottom:0;
}
.total-cart dl.total dt{
	font-weight : 700;
	font-size : 18px;
}
.total-cart dl.total dd{
	font-weight : 700;
	font-size : 32px;
	text-align : right;
}
.total-cart dl.total dt.tva{
	font-weight : 200;
	font-size : 14px;
}
.total-cart dl.total dd.tva{
	font-weight : 200;
	font-size : 14px;
	text-align : right;
}
.total-cart dl.shipping-total dd{
	font-size : 24px;
	font-weight : 400;
	text-align: right;
}
.total-cart dl.products-total dd {
	font-weight : 700;
	font-size : 24px;
	text-align : right;
}
.total-cart .country-form select{
	border : 1px solid #D9D9D9;
	padding : 12px;
	border-radius: 8px;
	font-size: 15px;
	font-weight: 400;
	min-width: 130px;
    text-align: left;
  -webkit-appearance: none !important;
}
.total-cart  .country-form{
	position : relative;
}
.total-cart  .country-form .country-arrow {
	position: absolute;
    width: 12px;
    height: 100%;
    top: 0;
    right: 10px;
}
.total-cart .country-form .country-arrow:after {
    content: '';
    background: url(/img/mobile/arrow-bottom.svg);
    width: 12px;
    background-size: contain;
    background-repeat: no-repeat;
    height: 100%;
    background-position: center;
    display: block;
}
/* Boutons action panier */
.total-cart .action-cart{
	padding : 0 16px;
	background: #F4EFEA;
	border-bottom : 5px solid #fff;
}
/* Coordonnées */
.coordo-cart{
	margin : 0 0 20px;
}
.title-forward h2{
	color : #524640;
	font-size : 18px;
	font-weight : 700;
	text-transform : uppercase;
	margin : 20px 0 10px;
}
.info-forward{
	background : #F4EFEA;
	padding : 12px 20px;
	margin-bottom : 12px;
}
.info-forward p {
	color : #504640;
	font-size : 16px;
}
.info-forward .title {
	font-size : 18px;
}
.edit-coordo .action-cart {
    padding: 16px;
}
.title-forward {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}
.info-forward > a{
	text-align: right;
    display: block;
    font-size: 14px;
}

.layerBeige{
    background: #F4EFEA;
}

.form-client form input[ type=submit ],
.already-client form input[ type=submit ]{
    width: 100%;
}
.form-client form {
    padding: 15px 5px;
    margin-bottom : 0;
}
.form-client form input {
    width: 100%;
    border: 0;
    padding: 16px 20px;
    margin: 0;
    line-height: normal;
	border-radius: 8px;
}
.form-client form input[ type=submit ] {
    width: 100%;
    border: 0px;
    color: #fff;
    background-color: #524640;
    margin: 0px;
    padding: 16px 0px;
    border-radius: 8px;
    line-height: normal;
	font-size : 18px;
}
.form-client form input::placeholder {
	font-size : 18px;
	color : #808080;
	line-height : 28px;
}

.form-contact form input[ type=submit ],
.already-client form input[ type=submit ]{
    width: 100%;
}
.form-contact form {
    padding: 15px 5px;
    margin-bottom : 0;
}
.form-contact form input {
    width: 100%;
    border: 1px solid #D9D9D9;
    padding: 16px 20px;
    margin: 0;
    line-height: normal;
	border-radius: 8px;
}
.form-contact form input[ type=submit ] {
    width: 100%;
    border: 0px;
    color: #fff;
    background-color: #524640;
    margin: 0px;
    padding: 16px 0px;
    border-radius: 8px;
    line-height: normal;
	font-size : 18px;
}
.form-contact form input::placeholder {
	font-size : 18px;
	color : #808080;
	line-height : 28px;
}
.form-contact form select {
    width: 100%;
    border : 1px solid #D9D9D9;
	padding: 16px 20px;
    margin: 0;
	border-radius: 8px;
	font-size: 18px;
	font-weight: 400;
	text-align: left;
  -webkit-appearance: none !important;
}
.form-contact form textarea {
    width: 100%;
    border: 1px solid #D9D9D9;
    padding: 16px 20px;
    margin: 0;
    line-height: normal;
	border-radius: 8px;
}
.form-contact form textarea::placeholder {
	font-size : 18px;
	color : #808080;
	line-height : 28px;
}

.form-contact form p.radio-checkbox {
    display: flex;
    margin-top: 20px;
    margin-bottom: 20px;
    margin-left: 3px;
}
.form-contact form p.radio-checkbox input[ type=checkbox ],
.form-contact form p.radio-checkbox input[ type=radio ] {
    width: auto;
}
.form-contact form p.radio-checkbox input[ type=radio ] {
    margin-left: 20px;
    margin-right: 5px;
}
.form-contact form fieldset{
    margin-top: 35px;
}
.form-contact form fieldset legend{
    font-size : 22px;
    font-weight: bold;
}

.link-all{
	font-size: 14px;
}
.link-all:after {
    content: '';
    background: url(/img/mobile/arrow-right.svg);
	width: 12px;
    height: 12px;
    margin-left: 6px;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;

}

#imgWithText{
				height:92px;
				width:100%;
				position:relative;
			}

			#imgWithText img{
				position:absolute;
				left:0;
				top:0;
			}

			#imgWithText p{
				/* font-family: Monotype Corsiva,'Rambla', Arial, Helvetica, sans-serif; */
                font-family: GravureFont,'Rambla', Arial, Helvetica, sans-serif;
				/*font-size:32px !important;*/
				width: auto !important;
				color: #000 !important;
				margin: 0 !important;
				padding: 0 !important;
				position:absolute;
				left:30px;
				top:30px;
			}
            #imgWithText p.uneligne{
                font-size: 26px !important;
                line-height: 26px !important;
            }
            #imgWithText p.deuxlignes{
                font-size: 22px !important;
                line-height: 22px !important;
            }
            #imgWithText p.troislignes{
                font-size: 18px !important;
                line-height: 18px !important;
            }

.form-perso p.note1{
    font-size: 12px;
}
.form-perso p.note2{
    font-size: 16px;
}

#resumeGravure {
    margin-bottom: 15px;
}

.produits-cart .list-cart .product .row .product-image a{
    background: none;
    display: inherit;
    border: none;
    text-decoration: none;
    width: auto;
}

.gravure-resume{
    margin: -15px;
    font-size: 14px;
}

.precisions{
    background: #F4EFEA;
    margin: 0px;
    padding: 10px 20px 30px 20px;
    font-size: 14px;
    font-weight: 100;
}

#nextStep{
    padding: 0;
}
#nextStep .btn-primary,
#nextStep .btn-secondary{
    width: 100%;
}

.paiement p{
    margin: 25px 0;
}
.logo-paiements{
    display: flex;
}
.logo-paiements img{
    width: 25px;
    margin: 0 2px;
}

/* FIltres recherche pages liste */
.filter-form {
    display: flex;
	flex-wrap : wrap;
    width: 100%;
    margin-bottom: 25px;
}
.filter-form label {
    flex: 0 0 100%;
	font-size : 18px;
	font-weight: 400px;
	color : #524640;
	margin : 0 0 12px;
}
.filter-form input {
    width: calc(100% - 45px);
    border: 1px solid #D9D9D9;
    padding: 16px 20px;
    margin: 0;
    line-height: normal;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}
.filter-form .filter-btn {
    width: 45px;
    border: 0px;
    color: #fff;
    background-color: #524640;
    margin: 0px;
    padding: 16px 0px;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    line-height: normal;
    font-size: 18px;
}
.filter-form p{
    width: 100%;
    margin-top: 5px;
}
.filter-form p.radio-checkbox {
    display: block;
    margin-top: -10px;
    margin-bottom: 20px;
    margin-left: 3px;
}
.filter-form p.radio-checkbox input[ type=checkbox ],
.filter-form p.radio-checkbox input[ type=radio ] {
    width: auto;
}
.filter-form p.radio-checkbox label{
    display: block;
}
.filter-form p.radio-checkbox span.title{
    display: block;
    font-weight: bold;
    margin-bottom: 10px;
    padding: 15px;
    background : #F4EFEA;
}
.filter-form p.radio-checkbox label.indent{
    margin-left: 20px;
}
.filter-form .accordion-body .btn-secondary{
    width: 100%;
    margin-top: -10px;
    margin-bottom: 25px;
}
.slider-prix-global{
    font-family: "Rambla", sans-serif !important;
    width: 100%;
    font-size: 18px;
    margin-top: 35px;
    padding: 0 10px;
}
.slider-prix-global span,
.slider-prix-global div{
    font-size: 18px !important;
    font-family: "Rambla", sans-serif !important;
}
.slider-prix-global div.jslider-value{
    margin-top: -10px;
}
.slider-prix-global label#slider-title{
    margin-bottom: 25px !important;
}
#navigFilters{
    width: 100%;
    margin-top: 40px;
    margin-bottom: 20px;
}
#navigFilters #collapseFilters .accordion-body{
    padding: 10px;
}
