/* ═══════════════════════════════════════════════════════════════
   Mesa — DA « Minimal sable »
   sable #F6F4EF · ink #221D18 · sauge #7E8F6E · noyer #5C4B3A · Albert Sans
   ═══════════════════════════════════════════════════════════════ */

html{overflow-x:hidden;}
body{
	background:var(--ms-sand);
	color:var(--ms-ink);
	font-family:'Albert Sans',-apple-system,sans-serif;
	overflow-x:hidden;
}
body,button,input,select,textarea,.button{font-family:'Albert Sans',-apple-system,sans-serif;}
h1,h2,h3,h4,h5,h6{font-family:'Albert Sans',sans-serif;color:var(--ms-ink);font-weight:700;letter-spacing:-.02em;}
a{color:var(--ms-walnut);}
a:hover{color:var(--ms-sage-d);}

/* ── Topbar — bandeau sable discret, filet bas ─────────────── */
.ms-topbar{background:var(--ms-sand);border-bottom:1px solid var(--ms-line);color:var(--ms-muted);font-size:12.5px;font-weight:500;letter-spacing:.02em;}
.ms-topbar__in{max-width:1320px;margin:0 auto;padding:8px 24px;display:flex;align-items:center;justify-content:center;gap:14px;}
.ms-topbar__dot{width:3px;height:3px;border-radius:50%;background:var(--ms-line);display:inline-block;}
.ms-topbar a{color:var(--ms-walnut);font-weight:600;text-decoration:none;border-bottom:1px solid var(--ms-line);}
.ms-topbar a:hover{color:var(--ms-sage-d);border-color:var(--ms-sage);}
@media(max-width:767px){
	.ms-topbar__alt{display:none;}
	.ms-topbar__in{padding:7px 14px;gap:10px;}
}

/* ── Header — blanc, épuré, soulignés noyer ────────────────── */
.ms-head{background:var(--ms-white);border-bottom:1px solid var(--ms-line);position:relative;z-index:900;}
.ms-head__in{max-width:1320px;margin:0 auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.ms-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0;line-height:1;}
.ms-logo__mk{width:36px;height:36px;border-radius:10px;background:var(--ms-sand);border:1px solid var(--ms-line);color:var(--ms-walnut);display:grid;place-items:center;flex-shrink:0;}
.ms-logo__mk svg{width:21px;height:21px;}
.ms-logo__txt{font-family:'Albert Sans',sans-serif;font-size:23px;font-weight:800;letter-spacing:-.04em;color:var(--ms-ink);}
.ms-logo__dot{color:var(--ms-sage);}
.ms-nav{display:flex;gap:28px;align-items:center;}
.ms-nav a{font-size:14.5px;font-weight:500;color:var(--ms-ink);text-decoration:none;padding:6px 0;position:relative;white-space:nowrap;transition:color .2s;}
.ms-nav a::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1.5px;background:var(--ms-walnut);transform:scaleX(0);transform-origin:left;transition:transform .25s;}
.ms-nav a:hover{color:var(--ms-walnut);}
.ms-nav a:hover::after{transform:scaleX(1);}
.ms-head__actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}
.ms-icobtn{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;color:var(--ms-ink);background:transparent;border:1px solid var(--ms-line);text-decoration:none;position:relative;transition:background .2s,color .2s,border-color .2s;}
.ms-icobtn svg{width:20px;height:20px;}
.ms-icobtn:hover{background:var(--ms-sage);border-color:var(--ms-sage);color:#fff;}
.ms-cart-count{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--ms-sage);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;line-height:1;}
.ms-burger{display:none;width:40px;height:40px;border-radius:10px;border:1px solid var(--ms-line);background:transparent;color:var(--ms-ink);cursor:pointer;place-items:center;padding:0;}
.ms-burger svg{width:22px;height:22px;}
.ms-mobnav{display:none;}
@media(max-width:900px){
	.ms-nav{display:none;}
	.ms-burger{display:grid;}
	.ms-head__in{padding:12px 14px;}
	.ms-mobnav{display:flex;flex-direction:column;border-top:1px solid var(--ms-line);background:var(--ms-white);padding:8px 14px 14px;}
	.ms-mobnav[hidden]{display:none;}
	.ms-mobnav a{padding:12px 6px;font-size:15.5px;font-weight:500;color:var(--ms-ink);text-decoration:none;border-bottom:1px solid var(--ms-sand);}
	.ms-mobnav a:last-child{border-bottom:0;}
}

/* ── Footer — blanc, filets fins, bas sable ────────────────── */
.ms-foot{background:var(--ms-white);border-top:1px solid var(--ms-line);margin-top:72px;}
.ms-foot__in{max-width:1320px;margin:0 auto;padding:56px 24px 44px;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;}
.ms-foot__brand p{font-size:14px;line-height:1.7;color:var(--ms-muted);margin:10px 0 0;max-width:330px;}
.ms-foot__tag{color:var(--ms-walnut) !important;font-weight:600;margin-top:16px !important;}
.ms-foot__col{display:flex;flex-direction:column;gap:10px;}
.ms-foot__col h4{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--ms-walnut);margin:0 0 8px;}
.ms-foot__col a{color:var(--ms-muted);text-decoration:none;font-size:14px;transition:color .2s;}
.ms-foot__col a:hover{color:var(--ms-sage-d);}
.ms-foot__bottom{background:var(--ms-sand);border-top:1px solid var(--ms-line);}
.ms-foot__bottom-in{max-width:1320px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;gap:16px;font-size:13px;color:var(--ms-muted);flex-wrap:wrap;}
@media(max-width:900px){.ms-foot__in{grid-template-columns:1fr 1fr;padding:40px 20px 28px;gap:28px;}.ms-foot__brand{grid-column:1/-1;}}

/* ── Étoiles (vrais avis uniquement) ───────────────────────── */
.ms-stars{display:inline-flex;align-items:center;gap:2px;}
.ms-stars__n{font-size:12.5px;color:var(--ms-muted);margin-left:4px;font-weight:600;}

/* ── Contenu général / pages ───────────────────────────────── */
.site-content{background:var(--ms-sand);}
.hentry .entry-header h1,.page .entry-title,h1.entry-title{font-weight:700;letter-spacing:-.025em;}
.site-main{padding-top:24px;}
body.page .entry-content{background:var(--ms-white);border:1px solid var(--ms-line);border-radius:var(--ms-r);padding:36px 40px;max-width:860px;margin:0 auto 48px;}
body.page .entry-content h3{margin-top:1.6em;font-size:20px;}
body.page .entry-content hr{border:0;border-top:1px solid var(--ms-line);margin:26px 0;}
body.woocommerce-page .entry-content,body.woocommerce .entry-content{background:transparent;border:0;padding:0;max-width:none;}
body.home .entry-content{background:transparent;border:0;padding:0;max-width:none;}

/* ── Boutons — sauge arrondis, ombre à peine visible ───────── */
.button,button.button,input[type=submit],.woocommerce #respond input#submit,
.wc-block-components-button,.added_to_cart{
	background:var(--ms-sage) !important;color:#fff !important;
	border:0 !important;border-radius:999px !important;
	font-weight:600 !important;letter-spacing:0 !important;text-transform:none !important;
	box-shadow:0 8px 20px -12px rgba(126,143,110,.55) !important;
	transition:background .2s,transform .15s !important;
}
.button:hover,button.button:hover,input[type=submit]:hover,.added_to_cart:hover{
	background:var(--ms-sage-d) !important;color:#fff !important;transform:translateY(-1px);
}
.single_add_to_cart_button,.checkout-button{
	background:var(--ms-sage) !important;color:#fff !important;
	box-shadow:0 10px 24px -14px rgba(126,143,110,.7) !important;
}
.single_add_to_cart_button:hover,.checkout-button:hover{background:var(--ms-sage-d) !important;color:#fff !important;}

/* ── Grilles produits (boutique + catégories) ──────────────── */
ul.products li.product{
	background:var(--ms-white);border:1px solid var(--ms-line);border-radius:var(--ms-r);
	padding:14px;box-shadow:none;
	transition:box-shadow .25s,transform .25s,border-color .25s;
}
ul.products li.product:hover{box-shadow:var(--ms-shadow);transform:translateY(-3px);border-color:#D8D1C2;}
ul.products li.product img{border-radius:calc(var(--ms-r) - 3px);background:#fff;}
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product h2{font-size:15.5px;font-weight:600;color:var(--ms-ink);letter-spacing:-.01em;}
ul.products li.product .price,.price{color:var(--ms-sage-d) !important;font-weight:700;}
.price del{color:var(--ms-muted) !important;font-weight:500;opacity:.7;}
.price ins{color:var(--ms-sage-d) !important;text-decoration:none;}
.onsale,span.onsale{
	background:var(--ms-walnut) !important;color:#F6F4EF !important;
	border-radius:999px !important;font-weight:700 !important;
	padding:4px 12px !important;min-width:0 !important;min-height:0 !important;line-height:1.5 !important;
}
.woocommerce-breadcrumb,.shoptimizer-breadcrumb{color:var(--ms-muted);font-size:13px;background:transparent;}
.woocommerce-breadcrumb a{color:var(--ms-muted);}
.woocommerce-result-count{color:var(--ms-muted);}
.woocommerce-ordering select{border:1px solid var(--ms-line);border-radius:8px;background:#fff;color:var(--ms-ink);}
.woocommerce-pagination ul.page-numbers{border:0;}
.woocommerce-pagination ul.page-numbers li{border:0;margin:0 3px;}
.woocommerce-pagination ul.page-numbers li .page-numbers{
	border-radius:8px;border:1px solid var(--ms-line);background:#fff;color:var(--ms-ink);
	padding:9px 14px;font-weight:600;
}
.woocommerce-pagination ul.page-numbers li .page-numbers.current{background:var(--ms-walnut);border-color:var(--ms-walnut);color:#fff;}

/* ── Pages collection : pleine largeur, pas de colonne fantôme ── */
body.archive .widget-area,body.woocommerce-page .widget-area,
body.post-type-archive-product .widget-area{display:none !important;}
body.archive #primary.content-area,body.woocommerce-page #primary.content-area,
body.post-type-archive-product #primary.content-area{
	width:100% !important;max-width:none !important;float:none !important;
	margin-left:0 !important;margin-right:0 !important;flex:1 1 100% !important;
}
body[class*="woocommerce-sidebar"] #primary.content-area{width:100% !important;}

/* ── Fiche produit ─────────────────────────────────────────── */
.single-product div.product .woocommerce-product-gallery__wrapper,
.single-product div.product .woocommerce-product-gallery img{border-radius:var(--ms-r);background:#fff;}
.single-product div.product .product_title{font-size:30px;font-weight:700;letter-spacing:-.025em;}
.single-product div.product p.price{font-size:24px;color:var(--ms-sage-d) !important;font-weight:700;}
.single-product div.product .woocommerce-product-details__short-description{color:var(--ms-muted);line-height:1.7;}
.single-product div.product form.cart div.quantity .qty{border:1px solid var(--ms-line);border-radius:8px;background:#fff;}
.single-product div.product .product_meta{color:var(--ms-muted);font-size:13.5px;border-top:1px solid var(--ms-line);padding-top:16px;}
.single-product div.product .product_meta a{color:var(--ms-walnut);font-weight:600;}
.woocommerce-tabs ul.tabs li{border:0 !important;background:transparent !important;}
.woocommerce-tabs ul.tabs li a{font-weight:600;color:var(--ms-muted);}
.woocommerce-tabs ul.tabs li.active a{color:var(--ms-walnut);border-bottom:2px solid var(--ms-sage);}
.woocommerce-tabs .panel{background:var(--ms-white);border:1px solid var(--ms-line);border-radius:var(--ms-r);padding:28px 30px;}
.related.products > h2,.up-sells > h2{font-size:24px;letter-spacing:-.02em;}
.woocommerce-product-gallery__trigger{border-radius:50%;}
.star-rating span::before{color:#C9A227;}
p.stars a{color:#C9A227;}

/* ── Panier ────────────────────────────────────────────────── */
.woocommerce-cart table.cart{background:#fff;border:1px solid var(--ms-line) !important;border-radius:var(--ms-r);overflow:hidden;}
.woocommerce-cart table.cart th{background:var(--ms-sand);color:var(--ms-ink);font-weight:600;}
.woocommerce-cart table.cart td{border-color:var(--ms-line) !important;}
.woocommerce-cart table.cart img{border-radius:8px;background:#fff;}
.cart_totals{background:#fff;border:1px solid var(--ms-line);border-radius:var(--ms-r);padding:22px;}
.cart_totals h2{font-size:20px;}
.cart_totals table{border:0 !important;}
.woocommerce-cart .cart-collaterals .cart_totals tr td,.woocommerce-cart .cart-collaterals .cart_totals tr th{border-color:var(--ms-line);}
.coupon .input-text{border:1px solid var(--ms-line);border-radius:8px;}
.woocommerce-message,.woocommerce-info,.woocommerce-noreviews{
	background:#fff;border:1px solid var(--ms-line);border-left:4px solid var(--ms-sage);
	border-radius:var(--ms-r);color:var(--ms-ink);
}
.woocommerce-message::before,.woocommerce-info::before{color:var(--ms-sage-d);}
.woocommerce-error{border-radius:var(--ms-r);}

/* ── Formulaires / compte ──────────────────────────────────── */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
input[type=text],input[type=email],input[type=tel],input[type=password],textarea{
	border:1px solid var(--ms-line);border-radius:8px;background:#fff;color:var(--ms-ink);
}
.woocommerce form .form-row input.input-text:focus,input:focus,textarea:focus{border-color:var(--ms-sage);outline:0;box-shadow:0 0 0 3px rgba(126,143,110,.16);}
.woocommerce-MyAccount-navigation ul li a{color:var(--ms-ink);font-weight:600;}
.woocommerce-MyAccount-navigation ul li.is-active a{color:var(--ms-walnut);}

/* ── Fix police : kirki-inline-styles sort après le child → Albert Sans partout ── */
body, p, li, td, th, dd, dt, label, input, select, textarea, button,
.site-main, .woocommerce-breadcrumb, .woocommerce-ordering select {
  font-family: "Albert Sans", system-ui, -apple-system, sans-serif !important;
}
h1, h2, h3, h4, h5, h6, .price, .woocommerce-loop-product__title {
  font-family: "Albert Sans", system-ui, sans-serif !important;
}

/* ══ Fiche produit — description stable (sans JS) ══ */
.woocommerce-tabs ul.wc-tabs { display: none !important; }
.woocommerce-tabs .woocommerce-Tabs-panel {
  display: block !important; width: 100% !important; max-width: 100% !important;
  float: none !important; opacity: 1 !important; padding: 24px 0 8px !important;
}
.woocommerce-Tabs-panel--description, .woocommerce-Tabs-panel--description p, .woocommerce-Tabs-panel--description li, .woocommerce-Tabs-panel--description td { color: #4A443C !important; font-size: 16px; line-height: 1.75; }
.woocommerce-Tabs-panel--description h1, .woocommerce-Tabs-panel--description h2,
.woocommerce-Tabs-panel--description h3, .woocommerce-Tabs-panel--description h4, .woocommerce-Tabs-panel--description strong, .woocommerce-Tabs-panel--description b { color: #221D18 !important; }
.woocommerce-Tabs-panel--description a { color: #5C4B3A !important; }
.woocommerce-Tabs-panel--description hr { border: 0; border-top: 1px solid #E7E2D8; margin: 28px 0; }

/* ══ Encart réassurance fiche produit — DA Minimal sable ══ */
.ms-reassure { margin-top: 30px; background: #FFFFFF; border: 1px solid #E7E2D8; border-radius: 10px; overflow: hidden; }
.ms-reassure__head { padding: 12px 20px; border-bottom: 1px solid #EFEBE2; font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #5C4B3A; background: #F6F4EF; }
.ms-reassure__item { display: flex; gap: 14px; align-items: flex-start; padding: 14px 20px; border-bottom: 1px solid #EFEBE2; }
.ms-reassure__item:last-child { border-bottom: 0; }
.ms-reassure__item svg { flex: 0 0 22px; width: 22px; height: 22px; color: #7E8F6E; margin-top: 2px; }
.ms-reassure__item strong { display: block; font-weight: 600; font-size: 15px; color: #221D18; margin-bottom: 2px; }
.ms-reassure__item span { font-size: 13.5px; line-height: 1.5; color: #7A7266; }

/* ── logo : « Maison » épuré ── */
.ms-logo__m { font-weight: 500; color: #7E8F6E; }
