/* MECA Remorques — styles du thème
   Couleurs : anthracite #15181C, acier #3A4350, gris texte #5A626B,
   gris clair #EEF0F2, bordure #D6DADF, jaune signalisation #F5B800. */

@font-face { font-family: "Barlow"; font-weight: 400; font-style: normal; font-display: swap; src: url("../fonts/barlow-400.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-weight: 500; font-style: normal; font-display: swap; src: url("../fonts/barlow-500.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-weight: 600; font-style: normal; font-display: swap; src: url("../fonts/barlow-600.woff2") format("woff2"); }
@font-face { font-family: "Barlow"; font-weight: 700; font-style: normal; font-display: swap; src: url("../fonts/barlow-700.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-weight: 700; font-style: normal; font-display: swap; src: url("../fonts/barlow-condensed-700.woff2") format("woff2"); }
@font-face { font-family: "Barlow Condensed"; font-weight: 800; font-style: normal; font-display: swap; src: url("../fonts/barlow-condensed-800.woff2") format("woff2"); }

:root {
	--meca-noir: #15181C;
	--meca-acier: #3A4350;
	--meca-doux: #5A626B;
	--meca-fond: #EEF0F2;
	--meca-bord: #D6DADF;
	--meca-champ: #B8BEC6;
	--meca-jaune: #F5B800;
	--meca-titre: "Barlow Condensed", "Arial Narrow", sans-serif;
	--meca-texte: "Barlow", system-ui, sans-serif;
}

body {
	font-family: var(--meca-texte);
	color: var(--meca-noir);
	background: #FFFFFF;
	font-size: 17px;
	line-height: 1.5;
}

a { color: var(--meca-noir); }
a:hover, a:focus { color: var(--meca-acier); }
:focus-visible { outline: 3px solid var(--meca-jaune); outline-offset: 2px; }

h1, h2, h3, h4 { font-family: var(--meca-titre); font-weight: 800; line-height: 1.05; }
h1, h2 { text-transform: uppercase; }

.meca-conteneur { max-width: 1280px; margin: 0 auto; padding-left: 24px; padding-right: 24px; box-sizing: border-box; }
.meca-icone { flex: none; }
.meca-accent { color: var(--meca-jaune); }

/* ---------- Boutons ---------- */
.meca-bouton,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 48px; padding: 0 22px; border: 2px solid var(--meca-noir); border-radius: 6px;
	background: var(--meca-noir); color: #FFFFFF; font-family: var(--meca-texte);
	font-weight: 700; font-size: 16px; line-height: 1.2; text-decoration: none; cursor: pointer;
}
.meca-bouton:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover {
	background: var(--meca-acier); border-color: var(--meca-acier); color: #FFFFFF;
}
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce #place_order {
	background: var(--meca-jaune); border-color: var(--meca-jaune); color: var(--meca-noir);
}
.meca-bouton--plein { width: 100%; }

/* ---------- En-tête ---------- */
.meca-header { background: #FFFFFF; border-bottom: 1px solid var(--meca-bord); }
.meca-bandeau { background: var(--meca-noir); color: #C9CED4; font-size: 14px; }
.meca-bandeau__inner { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 24px; padding-top: 8px; padding-bottom: 8px; }
.meca-bandeau__droite { display: flex; flex-wrap: wrap; gap: 6px 24px; }
.meca-bandeau__droite > * { display: inline-flex; align-items: center; gap: 6px; }
.meca-bandeau .meca-icone { width: 16px; height: 16px; }
.meca-bandeau a { color: #FFFFFF; font-weight: 600; text-decoration: none; }
.meca-bandeau a:hover { color: var(--meca-jaune); }

.meca-header__principal { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 32px; padding-top: 16px; padding-bottom: 16px; }

.meca-logo { display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--meca-noir); }
.meca-logo__marque { width: 44px; height: 44px; border-radius: 6px; background: var(--meca-jaune); color: var(--meca-noir); display: flex; align-items: center; justify-content: center; }
.meca-logo__texte { display: flex; flex-direction: column; line-height: 1; }
.meca-logo__nom { font-family: var(--meca-titre); font-weight: 800; font-size: 28px; text-transform: uppercase; letter-spacing: .02em; }
.meca-logo__sous { font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: var(--meca-doux); }
.custom-logo { max-height: 56px; width: auto; }

.meca-recherche { flex: 1 1 320px; display: flex; min-width: 0; }
.meca-recherche input[type="search"] {
	flex: 1; min-width: 0; height: 48px; margin: 0; padding: 0 16px; border: 1px solid var(--meca-champ);
	border-right: 0; border-radius: 6px 0 0 6px; font: inherit; font-size: 16px; background: #FFFFFF;
}
.meca-recherche button {
	height: 48px; margin: 0; padding: 0 20px; border: 0; border-radius: 0 6px 6px 0;
	background: var(--meca-noir); color: #FFFFFF; font: inherit; font-weight: 600; cursor: pointer;
}
.meca-recherche button:hover { background: var(--meca-acier); }

.meca-header__actions { display: flex; align-items: center; gap: 8px; }
.meca-header__lien { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 12px; border-radius: 6px; font-weight: 600; text-decoration: none; }
.meca-header__panier { background: var(--meca-fond); }
.meca-header__compteur { min-width: 22px; height: 22px; padding: 0 6px; border-radius: 11px; background: var(--meca-jaune); color: var(--meca-noir); font-size: 13px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; }

.meca-categories { border-top: 1px solid #E3E6EA; overflow-x: auto; }
.meca-categories__liste { display: flex; gap: 4px; margin: 0; padding: 0; list-style: none; white-space: nowrap; }
.meca-categories__liste a { display: block; padding: 14px 12px 11px; border-bottom: 3px solid transparent; font-weight: 600; font-size: 15px; text-decoration: none; }
.meca-categories__liste .current-menu-item > a,
.meca-categories__liste .current-product_cat-ancestor > a,
.meca-categories__liste a:hover { border-bottom-color: var(--meca-jaune); color: var(--meca-noir); }

@media (max-width: 767px) {
	.meca-header__lien span:not(.meca-header__compteur) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.meca-header__principal { gap: 12px 16px; }
	.meca-recherche { order: 3; flex-basis: 100%; }
	.meca-header__actions { margin-left: auto; }
}

/* ---------- Pied de page ---------- */
.meca-footer { background: var(--meca-noir); color: #C9CED4; font-size: 15px; line-height: 1.55; }
.meca-footer a { color: #E3E6EA; text-decoration: none; }
.meca-footer a:hover { color: var(--meca-jaune); }
.meca-footer .meca-icone { width: 18px; height: 18px; }

.meca-footer__appel { background: var(--meca-jaune); color: var(--meca-noir); }
.meca-footer__appel-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px 40px; padding-top: 32px; padding-bottom: 32px; }
.meca-footer__appel-texte { flex: 1 1 420px; }
.meca-footer__appel-texte p { margin: 0; font-size: 17px; }
.meca-footer__appel .meca-footer__appel-titre { font-family: var(--meca-titre); font-weight: 800; font-size: clamp(26px, 3vw, 34px); line-height: 1.05; text-transform: uppercase; margin-bottom: 6px; }
.meca-footer__appel-boutons { display: flex; flex-wrap: wrap; gap: 12px; }
.meca-footer__appel a.meca-footer__bouton { display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 22px; border: 2px solid var(--meca-noir); border-radius: 6px; color: var(--meca-noir); font-weight: 700; font-size: 17px; }
.meca-footer__appel a.meca-footer__bouton--plein { background: var(--meca-noir); color: #FFFFFF; }
.meca-footer__appel a.meca-footer__bouton:hover { background: #FFFFFF; color: var(--meca-noir); border-color: #FFFFFF; }

.meca-footer ul.meca-footer__engagements { list-style: none; margin: 0; padding: 40px 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 24px; border-bottom: 1px solid #2E343B; }
.meca-footer__engagements li { display: flex; align-items: flex-start; gap: 14px; font-size: 14px; }
.meca-footer__engagements strong { display: block; color: #FFFFFF; font-size: 16px; margin-bottom: 2px; }
.meca-footer__pastille { flex: none; width: 44px; height: 44px; border-radius: 8px; background: #22272D; color: var(--meca-jaune); display: flex; align-items: center; justify-content: center; }
.meca-footer__pastille .meca-icone { width: 22px; height: 22px; }

.meca-footer__colonnes { display: grid; grid-template-columns: 1.3fr 1.4fr 1fr 1.2fr; gap: 40px; padding: 56px 0 48px; }
@media (max-width: 1024px) { .meca-footer__colonnes { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .meca-footer__colonnes { grid-template-columns: 1fr; gap: 32px; padding-top: 40px; } }

.meca-footer .meca-logo { color: #FFFFFF; margin-bottom: 18px; }
.meca-footer .meca-logo:hover { color: #FFFFFF; }
.meca-footer .meca-logo__sous { color: #C9CED4; }
.meca-footer__presentation { margin: 0 0 20px; max-width: 30ch; }
.meca-footer__reseaux { display: flex; gap: 10px; }
.meca-footer__reseaux a { width: 44px; height: 44px; border-radius: 50%; border: 1px solid #3A4350; display: flex; align-items: center; justify-content: center; }
.meca-footer__reseaux a:hover { border-color: var(--meca-jaune); }

.meca-footer__titre { color: #FFFFFF; font-family: var(--meca-titre); font-weight: 700; font-size: 20px; text-transform: uppercase; letter-spacing: .03em; margin: 0 0 16px; padding-bottom: 10px; border-bottom: 2px solid var(--meca-jaune); display: inline-block; }
.meca-footer__sous-titre { color: #FFFFFF; font-weight: 700; font-size: 14px; margin: 24px 0 10px; }
.meca-footer ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px; }
.meca-footer__menu--catalogue ul { display: grid; grid-template-columns: 1fr; gap: 9px; }
.meca-footer a.meca-footer__tout { color: var(--meca-jaune); font-weight: 700; }
.meca-footer__compte { margin-top: 9px !important; }
.meca-footer__contact li { display: flex; gap: 10px; align-items: flex-start; }
.meca-footer__contact li .meca-icone { margin-top: 3px; color: var(--meca-jaune); }
.meca-footer ul.meca-footer__paiements { flex-direction: row; flex-wrap: wrap; gap: 6px; }
.meca-footer__paiements li { padding: 4px 10px; border: 1px solid #3A4350; border-radius: 4px; font-size: 13px; color: #E3E6EA; }

.meca-footer__bas { background: #0E1013; font-size: 13px; color: #A9B0B8; }
.meca-footer__bas-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px; padding-top: 18px; padding-bottom: 18px; }
.meca-footer__legal { display: flex; flex-wrap: wrap; gap: 6px 20px; }
.meca-footer__bas a { color: #C9CED4; }
.meca-footer a.meca-footer__haut { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; font-weight: 600; }
.meca-footer__haut .meca-icone { width: 16px; height: 16px; }

/* ---------- Page d'accueil (Elementor) ---------- */
.meca-hero .elementor-heading-title .meca-accent { color: var(--meca-jaune); }

.meca-carte-categorie { position: relative; border: 1px solid var(--meca-bord); border-radius: 10px; overflow: hidden; background: #FFFFFF; transition: border-color .15s, box-shadow .15s; }
.meca-carte-categorie:hover { border-color: var(--meca-noir); box-shadow: 0 6px 18px rgba(21, 24, 28, .08); }
.meca-carte-categorie .elementor-image-box-wrapper { display: flex; flex-direction: column; height: 100%; }
.meca-carte-categorie .elementor-image-box-img { display: block; margin: 0 !important; width: 100% !important; background: var(--meca-fond); }
.meca-carte-categorie .elementor-image-box-img img { display: block; width: 100%; aspect-ratio: 5 / 3; object-fit: cover; }
.meca-carte-categorie .elementor-image-box-content { padding: 18px 20px 20px; text-align: left; flex: 1; display: flex; flex-direction: column; }
.meca-carte-categorie .elementor-image-box-title { margin: 0 0 8px; font-family: var(--meca-titre); font-weight: 700; font-size: 25px; line-height: 1.05; text-transform: uppercase; }
.meca-carte-categorie .elementor-image-box-title a { text-decoration: none; color: inherit; }
.meca-carte-categorie .elementor-image-box-title a::after { content: ""; position: absolute; inset: 0; }
.meca-carte-categorie .elementor-image-box-description { margin: 0 0 14px; font-size: 15px; line-height: 1.45; flex: 1; }
.meca-carte-categorie .elementor-image-box-content::after { content: "Voir les modèles →"; font-weight: 700; font-size: 15px; color: var(--meca-noir); }

.meca-badge-permis .elementor-heading-title { min-width: 72px; height: 48px; padding: 0 12px; border-radius: 6px; display: flex; align-items: center; justify-content: center; box-sizing: border-box; }
.meca-badge-permis--jaune .elementor-heading-title { background: var(--meca-jaune); }
.meca-badge-permis--noir .elementor-heading-title { background: var(--meca-noir); }
.meca-badge-permis + .elementor-widget-text-editor p,
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }

/* Recherche guidée [meca_recherche] */
.meca-trouver { background: #FFFFFF; color: var(--meca-noir); border-radius: 10px; padding: 32px; display: flex; flex-direction: column; gap: 18px; }
.meca-trouver__titre { margin: 0; font-size: 30px; font-weight: 700; color: var(--meca-noir); }
.meca-champ { display: flex; flex-direction: column; gap: 6px; }
.meca-champ label { font-weight: 600; font-size: 15px; }
.meca-champ select, .woocommerce-ordering select {
	height: 48px; padding: 0 12px; border: 1px solid var(--meca-champ); border-radius: 6px;
	font: inherit; font-size: 16px; background: #FFFFFF; color: var(--meca-noir);
}
@media (max-width: 767px) { .meca-trouver { padding: 24px 20px; } }

/* ---------- Listes de produits ---------- */
.woocommerce-page .site-main, .post-type-archive-product .site-main, .tax-product_cat .site-main {
	max-width: 1280px; margin: 0 auto; padding: 0 24px 80px; box-sizing: border-box;
}
.meca-bandeau-liste { margin: 0 0 40px; padding: 28px 0 32px; background: var(--meca-fond); box-shadow: 0 0 0 100vmax var(--meca-fond); clip-path: inset(0 -100vmax); }
.meca-bandeau-liste__haut { display: flex; flex-wrap: wrap; align-items: center; gap: 24px 48px; }
.meca-bandeau-liste__texte { flex: 1 1 520px; min-width: 0; }
.meca-bandeau-liste .woocommerce-breadcrumb { font-size: 14px; color: var(--meca-doux); margin: 0 0 12px; }
.meca-bandeau-liste .woocommerce-breadcrumb a { color: var(--meca-acier); }
.meca-bandeau-liste__titre { margin: 0 0 12px; font-size: clamp(40px, 6vw, 64px); line-height: 1; }
.meca-bandeau-liste__description { max-width: 42rem; font-size: 18px; color: var(--meca-acier); }
.meca-bandeau-liste__description p { margin: 0; }
.meca-bandeau-liste__visuel { flex: 0 1 260px; }
.meca-bandeau-liste__visuel img { display: block; width: 100%; height: auto; border-radius: 8px; mix-blend-mode: multiply; }
@media (max-width: 767px) { .meca-bandeau-liste__visuel { display: none; } }

.meca-pastilles { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.meca-pastilles a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border-radius: 999px; background: #FFFFFF; border: 1px solid var(--meca-champ); font-weight: 600; text-decoration: none; }
.meca-pastilles a:hover { border-color: var(--meca-noir); }

.meca-liste { display: flex; flex-wrap: wrap; gap: 40px; align-items: flex-start; }
.meca-liste__filtres { flex: 1 1 240px; min-width: 0; }
.meca-liste__resultats { flex: 999 1 560px; min-width: 0; }
.meca-liste__details > summary { list-style: none; cursor: pointer; font-family: var(--meca-titre); font-weight: 700; font-size: 26px; text-transform: uppercase; margin-bottom: 16px; }
.meca-liste__details > summary::-webkit-details-marker { display: none; }
.meca-filtre { padding: 0 0 20px; margin: 0 0 20px; border-bottom: 1px solid var(--meca-bord); }
.meca-filtre__titre { margin: 0 0 12px; font-family: var(--meca-texte); font-size: 16px; font-weight: 700; text-transform: none; }
.meca-filtre ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.meca-filtre ul a { display: inline-flex; align-items: center; min-height: 36px; gap: 10px; text-decoration: none; font-size: 15px; }
.meca-filtre ul a::before { content: ""; width: 18px; height: 18px; border: 2px solid var(--meca-champ); border-radius: 4px; box-sizing: border-box; flex: none; }
.meca-filtre ul .chosen a::before { background: var(--meca-noir); border-color: var(--meca-noir); box-shadow: inset 0 0 0 3px #FFFFFF; }
.meca-filtre .count { color: var(--meca-doux); font-size: 13px; }
.meca-filtre .price_slider_wrapper .ui-slider .ui-slider-range, .meca-filtre .price_slider_wrapper .ui-slider .ui-slider-handle { background-color: var(--meca-noir); }
@media (max-width: 767px) {
	.meca-liste__details:not([open]) > summary { margin-bottom: 0; }
	.meca-liste__details > summary { font-size: 22px; padding: 12px 16px; border: 1px solid var(--meca-champ); border-radius: 6px; }
}

.woocommerce .woocommerce-result-count { margin: 12px 0 20px; font-weight: 600; }
.woocommerce .woocommerce-ordering { margin: 0 0 20px; }

.woocommerce ul.products { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 20px; margin: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product {
	position: relative; width: auto !important; margin: 0 !important; float: none !important;
	display: flex; flex-direction: column; border: 1px solid var(--meca-bord); border-radius: 10px; overflow: hidden; background: #FFFFFF;
}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link { display: flex; flex-direction: column; flex: 1; text-decoration: none; color: inherit; padding-bottom: 8px; }
.woocommerce ul.products li.product a img { margin: 0 0 16px; aspect-ratio: 4 / 3; object-fit: cover; background: var(--meca-fond); }
.woocommerce ul.products li.product .meca-carte__categorie,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .meca-pastilles-produit,
.woocommerce ul.products li.product .price { padding-left: 20px; padding-right: 20px; }
.meca-carte__categorie { font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--meca-doux); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: var(--meca-texte); font-size: 19px; font-weight: 700; line-height: 1.25; text-transform: none; padding-top: 6px; padding-bottom: 10px; }
.woocommerce ul.products li.product .price { margin-top: auto; color: var(--meca-noir); font-family: var(--meca-titre); font-weight: 800; font-size: 28px; }
.woocommerce ul.products li.product .price del { font-size: 18px; color: var(--meca-doux); }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button { display: flex; align-items: center; justify-content: center; text-align: center; padding-top: 0; padding-bottom: 0; margin: 8px 20px 20px; }
.woocommerce ul.products li.product .added_to_cart { margin: -12px 20px 16px; font-weight: 600; }
.woocommerce span.onsale { background: var(--meca-noir); color: #FFFFFF; border-radius: 4px; min-height: 0; min-width: 0; line-height: 1; padding: 6px 10px; top: 12px; right: 12px; left: auto; margin: 0; font-weight: 700; }

.meca-dispo { position: absolute; top: 12px; left: 12px; z-index: 2; padding: 4px 10px; border-radius: 4px; background: var(--meca-jaune); color: var(--meca-noir); font-size: 13px; font-weight: 700; }
.meca-dispo--commande { background: var(--meca-noir); color: #FFFFFF; }

.meca-pastilles-produit { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; font-size: 13px; font-weight: 600; }
.meca-pastilles-produit span { padding: 4px 10px; border-radius: 4px; background: var(--meca-fond); }

.woocommerce nav.woocommerce-pagination ul { border: 0; display: flex; justify-content: center; gap: 8px; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { min-width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--meca-champ); border-radius: 6px; font-weight: 700; box-sizing: border-box; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--meca-noir); color: #FFFFFF; border-color: var(--meca-noir); }

/* ---------- Fiche produit ---------- */
.single-product .site-main { padding-top: 32px; }
.single-product .product_title { font-size: clamp(34px, 4vw, 48px); text-transform: uppercase; }
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--meca-noir); font-family: var(--meca-titre); font-weight: 800; font-size: 36px; }
.woocommerce div.product .meca-pastilles-produit { font-size: 14px; }
.meca-conseil { margin: 24px 0; padding: 18px 20px; background: var(--meca-fond); border-radius: 8px; }
.meca-conseil p { margin: 0 0 6px; }
.meca-conseil p:last-child { margin: 0; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { border-bottom-color: #FFFFFF; }
.woocommerce table.shop_attributes th { font-weight: 700; }

/* Ajouter au panier (secondaire) + Commander (principal) */
.woocommerce div.product form.cart:not(.variations_form),
.woocommerce div.product .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.woocommerce div.product form.cart::before, .woocommerce div.product form.cart::after,
.woocommerce div.product .woocommerce-variation-add-to-cart::before, .woocommerce div.product .woocommerce-variation-add-to-cart::after { display: none; }
.woocommerce div.product form.cart div.quantity { float: none; margin: 0; }
.woocommerce div.product form.cart .quantity .qty { height: 52px; width: 4.5em; border: 1px solid var(--meca-champ); border-radius: 6px; font: inherit; font-size: 16px; }
.woocommerce div.product form.cart .button { float: none; min-height: 52px; padding: 0 24px; font-size: 17px; }
.woocommerce div.product form.cart .single_add_to_cart_button { background: #FFFFFF; border-color: var(--meca-noir); color: var(--meca-noir); }
.woocommerce div.product form.cart .single_add_to_cart_button:hover { background: var(--meca-fond); color: var(--meca-noir); }
.woocommerce div.product form.cart .meca-commander { background: var(--meca-jaune); border-color: var(--meca-jaune); color: var(--meca-noir); text-transform: uppercase; letter-spacing: .04em; }
.woocommerce div.product form.cart .meca-commander:hover { background: var(--meca-noir); border-color: var(--meca-noir); color: #FFFFFF; }
@media (max-width: 767px) {
	.woocommerce div.product form.cart .button { flex: 1 1 100%; }
}

/* ---------- Pages simples ---------- */
.page:not(.elementor-page):not(.woocommerce-page) .site-main,
.single-post .site-main { max-width: 820px; margin: 0 auto; padding: 48px 24px 80px; box-sizing: border-box; }
.page:not(.elementor-page) .page-header .entry-title { font-size: clamp(36px, 5vw, 56px); }
