.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { margin: var(--space-4) 0; border: 1px solid var(--c3-border-strong); border-radius: var(--radius-sm); padding: var(--space-4); background: var(--c3-white); color: var(--c3-black); list-style: none; }
.c3-shop-head { padding-block: var(--space-12) var(--space-8); }

.c3-need-compass { padding-bottom: var(--space-12); }
.c3-need-compass__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--space-4); margin-bottom: var(--space-6); }
.c3-need-compass__head h2 { margin: 0; font-size: clamp(1.6rem, 3vw, 2.2rem); }
.c3-need-compass__grid { display: grid; grid-template-columns: 1fr; gap: 1px; background: var(--c3-border); border: 1px solid var(--c3-border); border-radius: var(--radius-lg); overflow: hidden; }
@media (min-width: 768px) { .c3-need-compass__grid { grid-template-columns: repeat(2, 1fr); } }
.c3-need-compass__item { display: grid; grid-template-columns:42px minmax(0,1fr) 20px; align-items: center; gap: var(--space-4); min-height:112px; padding:var(--space-5); background: var(--c3-white); text-decoration: none; color: inherit; transition: background var(--motion-default) ease; }
.c3-need-compass__item.has-photo { grid-template-columns: 72px minmax(0,1fr) 20px; }
.c3-need-compass__item:hover { background: var(--c3-surface); }
.c3-need-compass__item:hover .c3-need-compass__arrow { transform: translateX(4px); }
.c3-need-compass__index { flex: none; font-family: var(--font-serif, inherit); font-size: 1.55rem; font-weight: 500; color: var(--c3-black); line-height: 1; }
.c3-need-compass__media { display: block; width: 72px; height: 72px; overflow: hidden; background: var(--c3-white); }
.c3-need-compass__media img,
.c3-need-compass__img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; background: var(--c3-white); }
.c3-need-compass__body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.c3-need-compass__body strong { font-size:clamp(.98rem,2vw,1.12rem); font-weight: 750; }
.c3-need-compass__body small { font-size:.74rem; letter-spacing:.03em; text-transform:uppercase; color:var(--c3-text-secondary); }
.c3-need-compass__arrow { flex: none; margin-inline-start: auto; width: 18px; height: 18px; color: var(--c3-text-muted); transition: transform var(--motion-default) ease; }
.woocommerce .woocommerce-ordering select, .woocommerce .woocommerce-result-count { min-height: 44px; font-size: var(--fs-small); }
.woocommerce .woocommerce-result-count { float: left; }
.woocommerce .woocommerce-ordering { float: right; }
.woocommerce .products { clear: both; padding-block: var(--space-8) var(--space-16); }
.woocommerce-pagination ul { display: flex; justify-content: center; gap: var(--space-2); border: 0 !important; padding: 0; list-style: none; }
.woocommerce-pagination a, .woocommerce-pagination span { display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid var(--c3-border); }
.woocommerce table.shop_table { width: 100%; border-collapse: collapse; }
.woocommerce table.shop_table th, .woocommerce table.shop_table td { border-bottom: 1px solid var(--c3-border); padding: var(--space-3); text-align: left; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .woocommerce-input-wrapper select { width: 100%; min-height: 48px; border: 1px solid var(--c3-border-strong); border-radius: var(--radius-sm); padding-inline: var(--space-3); background: var(--c3-white); }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button { min-height: 48px; border: 1px solid var(--c3-black); border-radius: var(--radius-sm); padding: 0 var(--space-5); background: var(--c3-black); color: var(--c3-white); font-weight: 700; }
/* ---------- Mon compte ---------- */
body.woocommerce-account .c3-main,
body.woocommerce-account .c3-main.c3-prose {
	width: min(calc(100% - clamp(28px, 6vw, 96px)), 1120px);
	max-width: 1120px !important;
	margin-inline: auto;
	padding-block: clamp(36px, 5vw, 72px) clamp(64px, 8vw, 120px);
}
body.woocommerce-account .c3-main > article,
body.woocommerce-account .c3-main > article .woocommerce {
	max-width: none !important;
	width: 100% !important;
}
body.woocommerce-account .c3-main > article > h1,
body.woocommerce-account .entry-title {
	margin: 0 0 clamp(28px, 4vw, 44px);
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.05;
	text-align: center;
}
/* Neutralise les floats / clearfix WooCommerce core (cause du texte vertical 1 lettre/ligne). */
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after {
	display: none !important;
	content: none !important;
}
.woocommerce-account .woocommerce {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	clear: none !important;
}

/* Connecté : nav + contenu côte à côte uniquement si la nav existe. */
.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: clamp(24px, 3vw, 40px);
	align-items: start;
}
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content {
	float: none !important;
	clear: none !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
}
.woocommerce-MyAccount-navigation ul {
	display: grid;
	margin: 0;
	padding: 0;
	list-style: none;
	border: 1px solid var(--c3-border);
	background: #fff;
}
.woocommerce-MyAccount-navigation li { margin: 0; }
.woocommerce-MyAccount-navigation a {
	display: block;
	border-bottom: 1px solid var(--c3-border);
	padding: 14px 18px;
	color: inherit;
	font-size: .92rem;
	font-weight: 650;
	text-decoration: none;
}
.woocommerce-MyAccount-navigation li:last-child a { border-bottom: 0; }
.woocommerce-MyAccount-navigation .is-active a { background: #000; color: #fff; }
.woocommerce-MyAccount-content {
	color: inherit;
	word-break: normal;
	overflow-wrap: anywhere;
	writing-mode: horizontal-tb !important;
}
.woocommerce-MyAccount-content > p { max-width: 62ch; line-height: 1.55; }
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 { margin: 0 0 16px; font-size: clamp(1.25rem, 2.2vw, 1.65rem); line-height: 1.2; }
.c3-account-section-head { margin:0 0 24px; border-bottom:1px solid #000; padding:0 0 20px; }
.c3-account-section-head .c3-eyebrow { margin:0 0 8px; }
.c3-account-section-head h2 { margin:0 0 8px; font-size:clamp(1.7rem,3vw,2.35rem); }
.c3-account-section-head > p:last-child { max-width:58ch; margin:0; color:#52525b; line-height:1.5; }
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-error {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}

/* Reset floats WooCommerce (login, adresses, formulaires). */
.woocommerce-account .col2-set,
.woocommerce-account .u-columns,
.woocommerce-account .woocommerce-Addresses,
.woocommerce-account .woocommerce-customer-details .addresses {
	display: grid !important;
	grid-template-columns: 1fr;
	gap: 18px;
	width: 100% !important;
	float: none !important;
}
.woocommerce-account .col-1,
.woocommerce-account .col-2,
.woocommerce-account .u-column1,
.woocommerce-account .u-column2,
.woocommerce-account .woocommerce-Address,
.woocommerce-account .woocommerce-column,
.woocommerce-account .woocommerce-Address--billing,
.woocommerce-account .woocommerce-Address--shipping {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}
.woocommerce-account .woocommerce-Address {
	border: 1px solid var(--c3-border);
	padding: 20px;
	background: #fff;
}
.woocommerce-account .woocommerce-Address title,
.woocommerce-account .woocommerce-Address .woocommerce-Address-title,
.woocommerce-account .woocommerce-Address header { margin: 0 0 12px; }
.woocommerce-account .woocommerce-Address address { margin: 0; line-height: 1.5; font-style: normal; }
.woocommerce-account form .form-row-first,
.woocommerce-account form .form-row-last,
.woocommerce-account form .form-row-wide {
	float: none !important;
	width: 100% !important;
	margin-right: 0 !important;
}
.woocommerce-account form .form-row { margin: 0 0 14px; }
.woocommerce-MyAccount-content table.shop_table,
.woocommerce-MyAccount-content table.shop_table_responsive {
	display: table !important;
	width: 100% !important;
	table-layout: auto;
	border-collapse: collapse;
}
.woocommerce-MyAccount-content table.shop_table thead,
.woocommerce-MyAccount-content table.shop_table_responsive thead { display: table-header-group !important; }
.woocommerce-MyAccount-content table.shop_table tbody,
.woocommerce-MyAccount-content table.shop_table_responsive tbody { display: table-row-group !important; }
.woocommerce-MyAccount-content table.shop_table tr,
.woocommerce-MyAccount-content table.shop_table_responsive tr { display: table-row !important; }
.woocommerce-MyAccount-content table.shop_table th,
.woocommerce-MyAccount-content table.shop_table td,
.woocommerce-MyAccount-content table.shop_table_responsive th,
.woocommerce-MyAccount-content table.shop_table_responsive td {
	display: table-cell !important;
	vertical-align: middle;
	word-break: normal;
	overflow-wrap: anywhere;
	white-space: normal;
	writing-mode: horizontal-tb !important;
}
.woocommerce-MyAccount-content table.shop_table_responsive tr td::before { display: none !important; content: none !important; }
.woocommerce-MyAccount-content .woocommerce-orders-table,
.woocommerce-MyAccount-content .woocommerce-orders-table__wrapper {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content .woocommerce-button {
	display: inline-flex !important;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0 16px;
	white-space: nowrap;
}
.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions .button { margin:3px 7px 3px 0; }
.woocommerce-account mark { background: transparent; color: inherit; font-weight: 800; }

/* Portail client : hiérarchie claire, raccourcis tactiles et historique lisible. */
.c3-account-home { display:grid; gap:clamp(24px,3vw,38px); }
.c3-account-home__hero { border:1px solid #000; padding:clamp(24px,4vw,42px); background:#000; color:#fff; }
.c3-account-home__hero .c3-eyebrow { margin:0 0 12px; color:#a1a1aa; }
.c3-account-home__hero h2 { margin:0 0 10px; color:#fff; font-size:clamp(1.8rem,3.5vw,2.8rem); line-height:1; }
.c3-account-home__hero > p:last-child { max-width:56ch; margin:0; color:#d4d4d8; line-height:1.55; }
.c3-account-quicklinks { display:grid; grid-template-columns:1fr; gap:1px; border:1px solid var(--c3-border); background:var(--c3-border); }
.c3-account-quicklinks a { display:grid; grid-template-columns:36px minmax(0,1fr) 22px; grid-template-rows:auto auto; align-items:center; gap:2px 12px; min-height:102px; padding:18px; background:#fff; color:#000; text-decoration:none; }
.c3-account-quicklinks a:hover { background:#f8f8fa; }
.c3-account-quicklinks span { grid-row:1 / 3; color:#71717a; font-family:var(--font-serif,serif); font-size:1.25rem; }
.c3-account-quicklinks strong { align-self:end; font-size:1rem; }
.c3-account-quicklinks small { align-self:start; color:#71717a; font-size:.72rem; }
.c3-account-quicklinks b { grid-column:3; grid-row:1 / 3; font-size:1.2rem; }
.c3-account-recent { border-top:1px solid #000; padding-top:22px; }
.c3-account-recent__head { display:flex; align-items:end; justify-content:space-between; gap:18px; margin-bottom:16px; }
.c3-account-recent__head .c3-eyebrow { margin:0 0 6px; }
.c3-account-recent__head h3 { margin:0; }
.c3-account-recent__head > a { flex:none; color:inherit; font-size:.78rem; font-weight:700; }
.c3-account-order-list { display:grid; gap:10px; }
.c3-account-order-card { display:grid; grid-template-columns:repeat(4,minmax(90px,1fr)) auto; align-items:center; gap:14px; border:1px solid var(--c3-border); padding:16px; background:#fff; }
.c3-account-order-card > div { display:grid; gap:4px; min-width:0; }
.c3-account-order-card small { color:#71717a; font-size:.65rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.c3-account-order-card strong { min-width:0; font-size:.82rem; overflow-wrap:anywhere; }
.c3-account-empty { display:flex; align-items:center; justify-content:space-between; gap:18px; border:1px solid var(--c3-border); padding:20px; background:#f8f8fa; }
.c3-account-empty p { margin:0; }
.woocommerce-account .woocommerce-MyAccount-content fieldset { margin:26px 0 20px; border:1px solid var(--c3-border); padding:20px; }
.woocommerce-account .woocommerce-MyAccount-content fieldset legend { padding:0 8px; font-weight:800; }
.woocommerce-account .woocommerce-MyAccount-content em { display:block; margin-top:6px; color:#71717a; font-size:.72rem; line-height:1.45; }
.woocommerce-account .woocommerce-MyAccount-content form button[type="submit"] { min-width:min(100%,260px); }

@media (min-width: 900px) {
	.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
		grid-template-columns: minmax(200px, 240px) minmax(0, 1fr);
	}
	.woocommerce-account .woocommerce-Addresses,
	.woocommerce-account .woocommerce-customer-details .addresses,
	.woocommerce-MyAccount-content .col2-set:not(#customer_login),
	.woocommerce-MyAccount-content .u-columns:not(#customer_login) {
		grid-template-columns: 1fr 1fr;
	}
	.woocommerce-account #customer_login.col2-set,
	.woocommerce-account #customer_login.u-columns {
		grid-template-columns: 1fr 1fr;
	}
	.c3-account-quicklinks { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width: 760px) {
	body.woocommerce-account .c3-main,
	body.woocommerce-account .c3-main.c3-prose { width:min(calc(100% - 28px),1120px); padding-top:28px; }
	body.woocommerce-account .c3-main > article > h1,
	body.woocommerce-account .entry-title { margin-bottom:24px; text-align:left; }
	.woocommerce-MyAccount-navigation ul { display:flex; gap:0; overflow-x:auto; scroll-snap-type:x proximity; }
	.woocommerce-MyAccount-navigation li { flex:0 0 auto; scroll-snap-align:start; }
	.woocommerce-MyAccount-navigation a { min-height:48px; border-right:1px solid var(--c3-border); border-bottom:0; white-space:nowrap; }
	.c3-account-order-card { grid-template-columns:1fr 1fr; }
	.c3-account-order-card .button { grid-column:1 / -1; width:100%; }
	.c3-account-empty { align-items:flex-start; flex-direction:column; }
	.c3-account-empty .button { width:100%; }
	.woocommerce-MyAccount-content table.shop_table,
	.woocommerce-MyAccount-content table.shop_table_responsive { min-width:620px; }
}

@media (max-width: 360px) {
	.c3-account-home__hero { padding:22px 18px; }
	.c3-account-quicklinks a { padding:15px 14px; }
	.c3-account-recent__head { align-items:flex-start; flex-direction:column; }
	.c3-account-order-card { grid-template-columns:1fr; }
	.c3-account-order-card .button { grid-column:auto; }
}

.c3-empty-cart { display:grid; max-width:720px; min-height:430px; align-content:center; justify-items:center; margin-inline:auto; text-align:center; }
.c3-empty-cart h2 { max-width:620px; margin:.2em 0; font-size:clamp(2.6rem,6vw,5.2rem); line-height:.95; }
.c3-empty-cart > p:not(.c3-eyebrow) { max-width:520px; color:var(--c3-text-secondary); }
.c3-empty-cart__actions { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:24px; }

/* ---------- Page panier (structure Cardon, couleurs Char3i) ---------- */
body.woocommerce-cart { overflow-x: clip; }
body.woocommerce-cart .c3-main { width: min(calc(100% - clamp(32px, 6vw, 96px)), 1100px); max-width: 1100px !important; margin-inline: auto; padding-block: clamp(28px, 4vw, 56px) clamp(72px, 10vw, 140px); }
body.woocommerce-cart .c3-cart-page__title,
body.woocommerce-cart .c3-main > article > h1 {
	margin: 0 0 10px;
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.05;
	text-align: center;
}
body.woocommerce-cart .char3i-cart-intro,
body.woocommerce-cart .c3-checkout-intro { display: none !important; }
.c3-cart-page { padding: 0; }
.c3-cart-page__intro { display: grid; justify-items: center; margin-bottom: clamp(28px, 4vw, 48px); }
.c3-cart-page__continue { color: inherit; font-size: .85rem; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.c3-cart-page__body { display: grid; gap: clamp(28px, 4vw, 48px); width: 100%; max-width: 960px; margin-inline: auto; }
.c3-cart-page__form, .c3-cart-page__collaterals { width: 100% !important; float: none !important; min-width: 0; }

.c3-cart-table { width: 100%; border-collapse: collapse; table-layout: auto; }
.c3-cart-table thead th { border: 0; border-bottom: 1px solid #e5e5e7; padding: 0 12px 14px; background: transparent; color: #71717a; font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-align: left; text-transform: uppercase; }
.c3-cart-table thead th.product-thumbnail { width: 96px; }
.c3-cart-table thead th.product-price,
.c3-cart-table thead th.product-quantity,
.c3-cart-table thead th.product-subtotal { text-align: right; }
.c3-cart-table tbody td { border: 0; border-bottom: 1px solid #e5e5e7; padding: 28px 12px; vertical-align: middle; }
.c3-cart-table tbody tr.woocommerce-cart-form__cart-item:last-of-type td { border-bottom: 1px solid #e5e5e7; }
.c3-cart-table__image,
.c3-cart-table .product-thumbnail img,
.c3-cart-table .product-thumbnail .c3-visual { display: block; width: 88px; height: 88px; object-fit: cover; object-position: center; background: var(--c3-white); border-radius: 0; }
.c3-cart-table .product-name > a:first-child { display: inline; font-weight: 700; text-decoration: none; color: inherit; }
.c3-cart-table .product-name > a:first-child:hover { text-decoration: underline; }
.c3-cart-table .c3-cart-table__remove-link,
.woocommerce-cart .c3-cart-table a.remove,
.woocommerce-cart a.c3-cart-table__remove-link {
	display: block !important;
	width: auto !important; height: auto !important; margin-top: 10px;
	border: 0 !important; border-radius: 0 !important; padding: 0 !important;
	background: transparent !important; color: #71717a !important;
	font-size: .78rem !important; font-weight: 600 !important; line-height: 1.3 !important;
	text-decoration: underline !important; text-underline-offset: 2px;
}
.woocommerce-cart .c3-cart-table a.remove:hover,
.woocommerce-cart a.c3-cart-table__remove-link:hover { color: #000 !important; }
.c3-cart-table .variation, .c3-cart-table dl.variation, .c3-cart-item-meta { display: grid; gap: 2px; margin: 6px 0 0; padding: 0; list-style: none; color: #71717a; font-size: .78rem; line-height: 1.4; }
.c3-cart-table .variation dt { display: none; }
.c3-cart-table .variation dd { margin: 0; }
.c3-cart-table .variation dd p { margin: 0; }
.c3-cart-table .product-price, .c3-cart-table .product-subtotal { font-weight: 600; text-align: right; white-space: nowrap; }
.c3-cart-table .product-quantity { text-align: right; }
.c3-cart-table .quantity .qty { min-height: 44px; width: 64px; border: 1px solid #d4d4d8; border-radius: 0; padding-inline: 8px; background: #fff; text-align: center; }
.c3-cart-table tr.actions td { position: relative; border: 0; padding: 28px 0 0; }
.c3-cart-page__coupon { display: flex; flex-wrap: wrap; gap: 10px; max-width: 420px; }
.c3-cart-page__coupon input#coupon_code { flex: 1 1 160px; min-height: 48px; border: 1px solid #d4d4d8; border-radius: 0; padding-inline: 14px; background: #fff; }
.c3-cart-table tr.actions .c3-button { min-height: 48px; }
.c3-cart-table tr.actions .c3-cart-update,
.c3-cart-table tr.actions button[name="update_cart"],
.woocommerce-cart button[name="update_cart"] {
	position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important;
	margin: 0 !important; padding: 0 !important; overflow: hidden !important; clip: rect(0,0,0,0) !important;
	border: 0 !important; opacity: 0 !important; pointer-events: none !important;
}

.c3-cart-page__collaterals { display: grid; justify-items: stretch; }
.c3-cart-totals { width: min(100%, 360px); margin-left: auto; border: 0; border-radius: 0; padding: 0; background: transparent; }
.c3-cart-totals h2 { display: none; }
.c3-cart-totals__table { width: 100%; border-collapse: collapse; }
.c3-cart-totals__table th, .c3-cart-totals__table td { border: 0; border-top: 1px solid var(--c3-border); padding: 14px 0; text-align: left; font-weight: 500; }
.c3-cart-totals__table th { color: var(--c3-text-secondary); font-weight: 500; }
.c3-cart-totals__table td { text-align: right; }
.c3-cart-totals__table tr:first-child th, .c3-cart-totals__table tr:first-child td { border-top: 0; }
.c3-cart-totals__table tr.order-total th, .c3-cart-totals__table tr.order-total td { border-top: 1px solid var(--c3-black); font-size: 1.1rem; font-weight: 800; }
.c3-cart-totals__vat { margin: 6px 0 0; color: var(--c3-text-muted); font-size: .72rem; }
.c3-cart-totals__checkout { margin-top: 20px; }
.c3-cart-totals__checkout .checkout-button { display: flex; width: 100%; min-height: 58px; align-items: center; justify-content: center; border: 1px solid var(--c3-black); border-radius: var(--radius-sm); background: var(--c3-black); color: var(--c3-white); font-weight: 700; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; transition: background var(--motion-fast) ease; }
.c3-cart-totals__checkout .checkout-button:hover { background: var(--c3-black-hover); }
.c3-cart-confidence { display:grid; gap:14px; margin-top:18px; border-top:1px solid #d4d4d8; padding-top:18px; }
.c3-cart-payment-logos { display:flex; min-width:0; flex-wrap:wrap; align-items:center; justify-content:center; gap:9px; }
.c3-cart-payment-logos > span { width:100%; color:#52525b; font-size:.68rem; font-weight:700; text-align:center; text-transform:uppercase; }
.c3-cart-payment-logos img { display:block; width:auto; max-width:48px; height:24px; object-fit:contain; }
.c3-cart-confidence__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid #e5e5e7; }
.c3-cart-confidence__grid > span { display:flex; min-width:0; align-items:center; justify-content:center; gap:7px; border-right:1px solid #e5e5e7; padding:10px 7px; font-size:.62rem; font-weight:650; line-height:1.3; text-align:center; }
.c3-cart-confidence__grid > span:last-child { border-right:0; }
.c3-cart-confidence__grid .c3-icon { width:18px; height:18px; flex:0 0 18px; }
.c3-cart-confidence > small { color:#71717a; font-size:.68rem; text-align:center; }
.c3-cart-totals__note { margin: 10px 0 0; color: var(--c3-text-muted); font-size: .78rem; }
/* Livraison uniquement au checkout — masquer tout résidu WooCommerce / plugin sur le panier. */
.woocommerce-cart .woocommerce-shipping-totals,
.woocommerce-cart .cart_totals .shipping,
.woocommerce-cart .cart_totals #shipping_method,
.woocommerce-cart .c3-cart-totals #shipping_method,
.woocommerce-cart .woocommerce-shipping-calculator,
.woocommerce-cart .shipping-calculator-button { display: none !important; }

@media (max-width: 767px) {
	.c3-cart-confidence__grid { grid-template-columns:1fr; }
	.c3-cart-confidence__grid > span { justify-content:flex-start; border-right:0; border-bottom:1px solid #e5e5e7; text-align:left; }
	.c3-cart-confidence__grid > span:last-child { border-bottom:0; }
	.c3-cart-table thead { display: none; }
	.c3-cart-table, .c3-cart-table tbody, .c3-cart-table tr, .c3-cart-table td { display: block; width: 100%; }
	.c3-cart-table tr.woocommerce-cart-form__cart-item { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 6px 14px; padding-block: 22px; border-bottom: 1px solid #e5e5e7; }
	.c3-cart-table tr.woocommerce-cart-form__cart-item td { border: 0; padding: 0; text-align: left; }
	.c3-cart-table td.product-thumbnail { grid-column: 1; grid-row: 1 / span 4; }
	.c3-cart-table td.product-name { grid-column: 2; grid-row: 1; }
	.c3-cart-table td.product-price { grid-column: 2; grid-row: 2; color: #71717a; }
	.c3-cart-table td.product-quantity { grid-column: 2; grid-row: 3; margin-top: 4px; }
	.c3-cart-table td.product-subtotal { grid-column: 2; grid-row: 4; margin-top: 4px; font-weight: 700; }
	.c3-cart-table__image, .c3-cart-table .product-thumbnail img { width: 80px; height: 80px; }
	.c3-cart-totals { width: 100%; margin-left: 0; }
	.c3-cart-table td::before { display: none !important; }
}

/* Boutique damier : ul > li valides, échiquier vrai (B/N) en 2 puis 4 colonnes. */
.post-type-archive-product .products {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	margin: 0;
	padding-block: var(--space-8) var(--space-16);
	list-style: none;
	border: 1px solid var(--c3-border);
	background: var(--c3-border);
}
.post-type-archive-product .products::before,
.post-type-archive-product .products::after { display: none !important; content: none !important; }
.post-type-archive-product .products > .c3-product-card {
	width: auto !important;
	margin: 0 !important;
	padding: 0;
	float: none !important;
	list-style: none;
	background: #fff;
	color: inherit;
	transition: background var(--motion-fast) ease;
}
.post-type-archive-product .products > .c3-product-card .c3-product-card__body { padding: clamp(14px, 2.4vw, 24px); }

/* Case noire (mobile 2 cols) : positions 2,3 / 6,7 / … */
.post-type-archive-product .products > .c3-product-card:nth-child(4n+2),
.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) {
	background: #000;
	color: #fff;
}
.post-type-archive-product .products > .c3-product-card:nth-child(4n+2) .c3-product-card__body > p,
.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) .c3-product-card__body > p { color: #d4d4d8; }
.post-type-archive-product .products > .c3-product-card:nth-child(4n+2) .c3-badge,
.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) .c3-badge { border-color: #71717a; color: #fff; }
.post-type-archive-product .products > .c3-product-card:nth-child(4n+2) a,
.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) a,
.post-type-archive-product .products > .c3-product-card:nth-child(4n+2) .c3-product-card__footer strong,
.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) .c3-product-card__footer strong,
.post-type-archive-product .products > .c3-product-card:nth-child(4n+2) .amount,
.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) .amount { color: inherit; }
.post-type-archive-product .products > .c3-product-card:nth-child(4n+2) .c3-small-button,
.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) .c3-small-button {
	border-color: #fff;
	background: #fff;
	color: #000;
}

@media (min-width: 1024px) {
	/* Desktop 4 cols : échiquier 2×2 répété → noires en 2,4,5,7. */
	.post-type-archive-product .products { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.post-type-archive-product .products > .c3-product-card:nth-child(4n+2),
	.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) {
		background: #fff;
		color: inherit;
	}
	.post-type-archive-product .products > .c3-product-card:nth-child(4n+2) .c3-product-card__body > p,
	.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) .c3-product-card__body > p { color: var(--c3-text-secondary); }
	.post-type-archive-product .products > .c3-product-card:nth-child(4n+2) .c3-badge,
	.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) .c3-badge { border-color: var(--c3-border); color: inherit; }
	.post-type-archive-product .products > .c3-product-card:nth-child(4n+2) .c3-small-button,
	.post-type-archive-product .products > .c3-product-card:nth-child(4n+3) .c3-small-button {
		border-color: var(--c3-black);
		background: var(--c3-black);
		color: #fff;
	}
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+2),
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+4),
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+5),
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+7) {
		background: #000;
		color: #fff;
	}
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+2) .c3-product-card__body > p,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+4) .c3-product-card__body > p,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+5) .c3-product-card__body > p,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+7) .c3-product-card__body > p { color: #d4d4d8; }
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+2) .c3-badge,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+4) .c3-badge,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+5) .c3-badge,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+7) .c3-badge { border-color: #71717a; color: #fff; }
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+2) a,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+4) a,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+5) a,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+7) a,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+2) .c3-product-card__footer strong,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+4) .c3-product-card__footer strong,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+5) .c3-product-card__footer strong,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+7) .c3-product-card__footer strong,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+2) .amount,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+4) .amount,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+5) .amount,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+7) .amount { color: inherit; }
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+2) .c3-small-button,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+4) .c3-small-button,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+5) .c3-small-button,
	.post-type-archive-product .products > .c3-product-card:nth-child(8n+7) .c3-small-button {
		border-color: #fff;
		background: #fff;
		color: #000;
	}
}

.woocommerce-cart .c3-cart-page__collaterals .cart_totals { width: 100% !important; float: none !important; }
