/* ==========================================================================
   Comfee DA 2026 — couche de style au-dessus de Flatsome
   Ne change aucun contenu : typographie, couleurs, espacements, composants.
   Toutes les règles sont préfixées par body.da26 (classe posée par l'extension).
   ========================================================================== */

body.da26 {
	--ink: #0e1b2a;
	--text: #3b4856;
	--muted: #6a7785;
	--line: #e4e9ee;
	--canvas: #f4f6f8;
	--tint: #eaf5fb;
	--brand: #0b93d4;
	--brand-ink: #0a6ea3;
	--brand-soft: #dff1fa;
	--star: #f4a72a;
	--radius-s: 10px;
	--radius-m: 14px;
	--radius-l: 22px;
	--shadow-1: 0 1px 2px rgba(14, 27, 42, .05), 0 4px 14px rgba(14, 27, 42, .05);
	--shadow-2: 0 2px 6px rgba(14, 27, 42, .06), 0 18px 40px rgba(14, 27, 42, .10);
	--ease: cubic-bezier(.2, .7, .2, 1);
	--font-head: 'Outfit', ui-sans-serif, system-ui, sans-serif;
	--font-body: 'DM Sans', ui-sans-serif, system-ui, sans-serif;
	/* variables des blocs HTML personnalisés (Mag, Pourquoi Comfee) réalignées sur la palette */
	--comfee-blue: #0b93d4;
	--comfee-blue-dark: #0a6ea3;
	--comfee-blue-light: #eaf5fb;
	--comfee-dark: #0e1b2a;
	--comfee-navy: #16273b;
	--comfee-accent: #0b93d4;
	--comfee-light: #f4f6f8;

	font-family: var(--font-body);
	color: var(--text);
	font-size: 16px;
	line-height: 1.65;
	background: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

/* Débordement horizontal (colonnes Flatsome à marges négatives) */
body.da26 #wrapper { overflow-x: clip; }
html:has(body.da26) { scroll-behavior: smooth; }

/* Animations d'apparition Flatsome : leur script est différé par WP Rocket,
   les blocs restaient invisibles. On les affiche directement. */
body.da26 [data-animate] {
	opacity: 1 !important;
	transform: none !important;
	filter: none !important;
	transition: none !important;
}

/* ---------- Typographie ---------- */
body.da26 h1, body.da26 h2, body.da26 h3, body.da26 h4, body.da26 h5, body.da26 h6,
body.da26 .heading-font, body.da26 .product-title, body.da26 .section-title,
body.da26 .banner h1, body.da26 .banner h2, body.da26 .banner h3 {
	font-family: var(--font-head);
	color: var(--ink);
	font-weight: 600;
	letter-spacing: -0.02em;
	text-wrap: balance;
}
body.da26 h1 { font-size: clamp(2rem, 1.2rem + 2.6vw, 3.25rem); line-height: 1.08; }
body.da26 h2 { font-size: clamp(1.6rem, 1.1rem + 1.5vw, 2.4rem); line-height: 1.15; }
body.da26 h3 { font-size: clamp(1.25rem, 1rem + .7vw, 1.6rem); line-height: 1.25; }
body.da26 h4 { font-size: 1.1rem; line-height: 1.35; }
body.da26 p, body.da26 li { text-wrap: pretty; }
body.da26 strong, body.da26 b { font-weight: 600; color: var(--ink); }
body.da26 a { color: var(--brand-ink); transition: color .2s var(--ease); }
body.da26 a:hover { color: var(--brand); }
body.da26 .uppercase, body.da26 span.widget-title, body.da26 .breadcrumbs,
body.da26 .nav-uppercase > li > a, body.da26 .section-title b, body.da26 .is-uppercase {
	text-transform: none !important;
	letter-spacing: normal;
}
body.da26 .alt-font { font-family: var(--font-head); }
body.da26 .is-divider { background: var(--brand); height: 3px; border-radius: 3px; max-width: 36px; opacity: 1; }
body.da26 hr { border-color: var(--line); }

/* ---------- Barre du haut ---------- */
body.da26 #top-bar.header-top {
	background: var(--ink) !important;
	min-height: 36px;
}
body.da26 #top-bar .html_topbar_left,
body.da26 #top-bar .html_topbar_left strong {
	color: #fff;
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .02em;
	text-transform: none !important;
}
body.da26 #top-bar .html_topbar_left strong::before {
	content: "";
	display: inline-block;
	width: 6px; height: 6px;
	margin: 0 10px 2px 0;
	border-radius: 50%;
	background: #4fd18b;
	box-shadow: 0 0 0 4px rgba(79, 209, 139, .18);
}

/* ---------- En-tête ---------- */
body.da26 .header-main {
	background: rgba(255, 255, 255, .92);
	border-bottom: 1px solid var(--line);
}
body.da26 .stuck .header-main {
	background: rgba(255, 255, 255, .86);
	-webkit-backdrop-filter: saturate(160%) blur(14px);
	backdrop-filter: saturate(160%) blur(14px);
	box-shadow: 0 6px 24px rgba(14, 27, 42, .06);
}
body.da26 .header-main .nav > li > a {
	font-family: var(--font-body);
	font-size: 15px;
	font-weight: 500;
	color: var(--ink);
	text-transform: none;
	letter-spacing: 0;
	padding: 8px 4px;
}
body.da26 .header-main .nav > li { margin: 0 10px; }
body.da26 .header-main .nav > li > a:hover,
body.da26 .header-main .nav > li.active > a,
body.da26 .header-main .nav > li.current-menu-item > a { color: var(--brand-ink); }
body.da26 .header-main .nav > li > a > i.icon-angle-down { opacity: .5; }
body.da26 .nav-dropdown {
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-m);
	box-shadow: var(--shadow-2);
	padding: 10px;
}
body.da26 .nav-dropdown > li > a,
body.da26 .nav-dropdown li a {
	border-radius: var(--radius-s);
	padding: 9px 14px !important;
	color: var(--text);
	font-weight: 500;
	text-transform: none;
}
body.da26 .nav-dropdown li a:hover { background: var(--canvas); color: var(--ink); }
body.da26 .header-divider { display: none; }
body.da26 .header-cart-link .header-cart-title { color: var(--ink); font-weight: 500; text-transform: none; }
body.da26 .cart-icon strong {
	border-radius: 8px;
	border-color: var(--ink);
	color: var(--ink);
	font-family: var(--font-body);
}
body.da26 .cart-icon strong::after { border-color: var(--ink); }
body.da26 .header-main .icon-user,
body.da26 .header-main .icon-search,
body.da26 .header-main .icon-menu { color: var(--ink); }

/* ---------- Boutons ---------- */
body.da26 .button,
body.da26 button.button,
body.da26 input[type="submit"].button,
body.da26 .single_add_to_cart_button {
	font-family: var(--font-body);
	text-transform: none !important;
	letter-spacing: 0 !important;
	font-weight: 600;
	border-radius: 12px !important;
	min-height: 46px;
	line-height: 1.2;
	padding: 13px 24px !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	box-shadow: none;
	transition: transform .2s var(--ease), background-color .2s var(--ease), color .2s var(--ease), box-shadow .2s var(--ease), border-color .2s var(--ease);
}
body.da26 .button:active, body.da26 .single_add_to_cart_button:active { transform: translateY(1px) scale(.99); }
body.da26 .button.primary:not(.is-outline),
body.da26 .button.secondary:not(.is-outline),
body.da26 .button.alt:not(.is-outline),
body.da26 .button.success:not(.is-outline),
body.da26 a.button:not(.is-outline):not(.is-link):not(.icon):not(.is-transparent),
body.da26 .single_add_to_cart_button {
	background-color: var(--ink) !important;
	border: 1px solid var(--ink) !important;
	color: #fff !important;
}
body.da26 .button.primary:not(.is-outline):hover,
body.da26 .button.secondary:not(.is-outline):hover,
body.da26 .button.alt:not(.is-outline):hover,
body.da26 a.button:not(.is-outline):not(.is-link):not(.icon):not(.is-transparent):hover,
body.da26 .single_add_to_cart_button:hover {
	background-color: var(--brand-ink) !important;
	border-color: var(--brand-ink) !important;
	box-shadow: 0 10px 24px rgba(10, 110, 163, .25) !important;
	transform: translateY(-1px);
	color: #fff !important;
}
body.da26 .button.is-outline {
	background: transparent !important;
	border: 1.5px solid var(--ink) !important;
	color: var(--ink) !important;
}
body.da26 .button.is-outline:hover {
	background: var(--ink) !important;
	color: #fff !important;
}
body.da26 .button.icon.circle { border-radius: 50% !important; min-height: 0; padding: 0 !important; }
body.da26 :focus-visible {
	outline: 2px solid var(--brand) !important;
	outline-offset: 3px;
	border-radius: 6px;
}

/* ---------- Champs ---------- */
body.da26 input[type="text"], body.da26 input[type="email"], body.da26 input[type="search"],
body.da26 input[type="tel"], body.da26 input[type="number"], body.da26 input[type="password"],
body.da26 textarea, body.da26 select {
	border: 1px solid var(--line);
	border-radius: 12px;
	box-shadow: none;
	background-color: #fff;
	font-family: var(--font-body);
	color: var(--ink);
	min-height: 46px;
	padding: 0 14px;
	font-size: 15px;
}
body.da26 textarea { padding: 12px 14px; }
body.da26 input:focus, body.da26 textarea:focus, body.da26 select:focus {
	border-color: var(--brand);
	box-shadow: 0 0 0 4px var(--brand-soft);
}

/* ---------- Titres de section ([title]) ---------- */
body.da26 .section-title-container { margin-bottom: 28px; }
body.da26 .section-title {
	border: 0 !important;
	align-items: flex-end;
}
body.da26 .section-title b { display: none; }
body.da26 .section-title .section-title-main {
	font-family: var(--font-head);
	font-size: clamp(1.6rem, 1.1rem + 1.5vw, 2.4rem);
	font-weight: 600;
	color: var(--ink);
	border: 0 !important;
	padding: 0;
	letter-spacing: -0.02em;
	text-transform: none !important;
	font-size: clamp(1.6rem, 1.1rem + 1.5vw, 2.4rem) !important;
}

/* ---------- Cartes produit ---------- */
body.da26 .products .product-small.col { padding-bottom: 28px; }
body.da26 .product-small.box {
	background: transparent;
	border-radius: var(--radius-l);
	transition: transform .35s var(--ease);
}
body.da26 .product-small .box-image {
	background: var(--canvas);
	border-radius: 18px;
	overflow: hidden;
	padding: 18px;
	isolation: isolate;
}
body.da26 .product-small .box-image { aspect-ratio: 1 / 1; display: flex; align-items: center; justify-content: center; }
body.da26 .product-small .box-image > div:first-child,
body.da26 .product-small .box-image > div:first-child > a { display: block; width: 100%; height: 100%; }
body.da26 .product-small .box-image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
	mix-blend-mode: multiply;
	transition: transform .5s var(--ease);
}
body.da26 .product-small.box:hover .box-image img:not(.back-image) { transform: scale(1.04); }
body.da26 .product-small .box-image .back-image { display: none; }
body.da26 .product-small .box-text {
	padding: 14px 4px 0;
	text-align: left;
}
body.da26 .product-small .box-text .category {
	font-size: 12px;
	font-weight: 500;
	color: var(--muted);
	opacity: 1;
	text-transform: none;
	letter-spacing: .01em;
	margin-bottom: 4px;
}
body.da26 .product-small .box-text .name,
body.da26 .product-small .box-text .name a,
body.da26 .product-small .woocommerce-loop-product__title a {
	font-family: var(--font-body);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--ink);
}
body.da26 .product-small .box-text .name a:hover { color: var(--brand-ink); }
body.da26 .product-small .grid-tools { border-radius: 12px; overflow: hidden; margin: 0 14px 14px; width: auto; }
body.da26 .product-small .grid-tools a {
	background: var(--ink) !important;
	color: #fff !important;
	font-weight: 600;
	text-transform: none;
	letter-spacing: 0;
	font-size: 14px;
	padding: 11px 0;
}
body.da26 .product-small .grid-tools a:hover { background: var(--brand-ink) !important; }
body.da26 .star-rating span::before,
body.da26 .star-rating::before,
body.da26 .stars a:hover::after, body.da26 .stars a.active::after { color: var(--star) !important; }
body.da26 .star-rating::before { color: #dfe4e9 !important; }
body.da26 .badge-inner { border-radius: 8px; font-family: var(--font-body); font-weight: 600; }

/* ---------- Bannières et images des pages (UX Builder) ---------- */
body.da26 .banner { border-radius: var(--radius-l); overflow: hidden; }
body.da26 .banner .bg { transition: transform .6s var(--ease); }
body.da26 a.banner:hover .bg, body.da26 .banner:hover .bg { transform: scale(1.03); }
body.da26 .col-inner[style*="background-color"] { border-radius: var(--radius-l); }
body.da26 .img-inner { border-radius: var(--radius-l); }

/* ---------- Accueil : mise en page des blocs existants ---------- */
/* Grand visuel d'ouverture : encadré et arrondi */
body.da26.home #content > .slider-wrapper:first-child { padding: 16px clamp(16px, 2vw, 32px) 0; }
body.da26.home #content > .slider-wrapper:first-child .img-inner {
	border-radius: 24px;
	overflow: hidden;
	margin: 0 !important;
}
body.da26.home #content > .slider-wrapper:first-child .flickity-page-dots,
body.da26.home #content > .slider-wrapper:first-child .flickity-prev-next-button { display: none; }
/* Héros : panneau et vignettes alignés sur les mêmes marges */
body.da26.home #content > .row.row-full-width { padding-left: clamp(16px, 2vw, 32px); padding-right: clamp(16px, 2vw, 32px); }
body.da26.home #content > .row.row-full-width:nth-of-type(2) { margin-top: 48px; }
/* Couleur de fond : la sauge laisse la place à un gris bleuté froid, cohérent avec le bleu Comfee */
body.da26 [style*="229, 235, 228"] { background-color: var(--canvas) !important; }
body.da26.home #content > section.section:nth-of-type(1) { background-color: var(--canvas) !important; }
body.da26.home #content > section.section:nth-of-type(1) .banner { background-color: var(--canvas) !important; }
body.da26.home #content > section.section:nth-of-type(1) .col-inner[style*="252, 252, 252"] { background: #fff !important; box-shadow: var(--shadow-2); }
body.da26.home #content > section.section:nth-of-type(2) { background-color: #fff !important; }
/* Texte d'introduction posé hors conteneur : on lui redonne des marges et une largeur de lecture */
body.da26 #content > h2,
body.da26 #content > p {
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 20px;
}
body.da26.home #content > h2 { margin-top: 72px; text-align: center; }
body.da26.home #content > p { text-align: center; max-width: 820px; font-size: 17px; color: var(--muted); margin-bottom: 72px; }
body.da26.home #content > hr { display: none; }
/* Listes des blocs de présentation */
body.da26 .section ul { list-style: none; margin-left: 0; }
body.da26 .section ul li { position: relative; padding-left: 26px; margin-bottom: 6px; }
body.da26 .section ul li::before {
	content: "";
	position: absolute;
	left: 0; top: .5em;
	width: 14px; height: 14px;
	border-radius: 50%;
	background: var(--brand-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%230a6ea3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 10px no-repeat;
}
body.da26 .section h4 { margin-top: 18px; }
body.da26 .section p, body.da26 .section li { font-size: 16px; line-height: 1.65; }
/* Blocs « Pourquoi Comfee » et « Le Mag » (HTML personnalisé) */
body.da26 .why-comfee-header .wc-accent,
body.da26 .hp-mag-header .mag-accent { background: var(--brand) !important; width: 36px !important; }
body.da26 .wc-card { border-color: var(--line) !important; border-radius: var(--radius-l) !important; transition: transform .3s var(--ease), box-shadow .3s var(--ease); }
body.da26 .wc-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-2) !important; }
body.da26 .hp-mag-cta a {
	background: var(--ink) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	font-family: var(--font-body);
}
body.da26 .hp-mag-cta a:hover { background: var(--brand-ink) !important; }

/* ---------- Catégories (boutique) ---------- */
body.da26 .shop-page-title.category-page-title {
	background: var(--canvas);
	border-bottom: 1px solid var(--line);
	padding: 28px 0 22px;
	margin-bottom: 34px;
}
body.da26 .shop-page-title .page-title-inner { align-items: flex-end; min-height: 0; padding-top: 0; }
body.da26 .shop-page-title .breadcrumbs {
	font-family: var(--font-head);
	font-size: clamp(1.6rem, 1.1rem + 1.6vw, 2.5rem) !important;
	font-weight: 600;
	line-height: 1.1;
	color: var(--ink);
	letter-spacing: -0.02em;
}
body.da26 .shop-page-title .breadcrumbs a {
	display: block;
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: 500;
	color: var(--muted);
	letter-spacing: 0;
	margin-bottom: 6px;
}
body.da26 .shop-page-title .breadcrumbs a ~ a { display: inline; }
body.da26 .shop-page-title .breadcrumbs .divider { display: none; }
body.da26 .shop-page-title .woocommerce-result-count {
	font-family: var(--font-body);
	font-size: 14px !important;
	font-weight: 500;
	color: var(--muted);
	margin: 0 16px 0 0;
	align-self: center;
	display: inline-block;
}
body.da26 .shop-page-title .woocommerce-ordering { display: inline-block; margin: 0; }
body.da26 .shop-page-title .woocommerce-ordering select {
	font-size: 14px !important;
	font-weight: 500;
	height: 44px;
	min-height: 44px;
	padding: 0 40px 0 14px;
	margin: 0;
	border-radius: 12px;
	background-color: #fff;
}
body.da26 .shop-page-title .flex-col:last-child { display: flex; align-items: center; }
/* Présentation de la catégorie : repliée en tête (comme le script « Lire plus » existant), sans saut de mise en page */
body.da26 .shop-page-title.page-title::after { display: none !important; }
body.da26 .term-description,
body.da26 .category-description {
	position: relative;
	max-height: 9.5em !important;
	overflow: hidden;
	margin-bottom: 6px;
	-webkit-mask-image: linear-gradient(to bottom, #000 55%, transparent);
	mask-image: linear-gradient(to bottom, #000 55%, transparent);
	transition: max-height .5s var(--ease);
}
body.da26 .category-description.expanded {
	max-height: 4000px !important;
	-webkit-mask-image: none;
	mask-image: none;
}
body.da26 .category-description-container { margin-bottom: 36px; }
body.da26 .read-more {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 4px 0 !important;
	margin: 0 !important;
	color: var(--brand-ink) !important;
	font-family: var(--font-body);
	font-weight: 600;
	font-size: 14px;
	text-transform: none;
	letter-spacing: 0;
	text-decoration: underline;
	text-underline-offset: 4px;
	min-height: 0;
}
body.da26 .read-more:hover { color: var(--ink) !important; }
body.da26 .term-description h1 { font-size: clamp(1.6rem, 1.2rem + 1.2vw, 2.2rem); }
body.da26 .term-description h2 { font-size: 1.45rem; margin-top: 1.6em; }
body.da26 .term-description h3 { font-size: 1.15rem; margin-top: 1.2em; }
body.da26 .term-description p,
body.da26 .term-description ul { max-width: 72ch; }
body.da26 .term-description h1 { margin-bottom: .4em; }

/* ---------- Fiche produit ---------- */
body.da26.single-product .product-main { padding-top: 34px; }
body.da26 .product-gallery .woocommerce-product-gallery__wrapper,
body.da26 .product-gallery .product-gallery-slider {
	background: var(--canvas);
	border-radius: 26px;
	overflow: hidden;
}
body.da26 .product-gallery .woocommerce-product-gallery__image,
body.da26 .product-gallery .slide { padding: clamp(16px, 3vw, 40px); }
body.da26 .product-gallery .woocommerce-product-gallery__image img,
body.da26 .product-gallery .slide img {
	mix-blend-mode: multiply;
	max-height: min(72vh, 640px);
	width: auto !important;
	margin: 0 auto;
	object-fit: contain;
}
body.da26 .product-gallery .woocommerce-product-gallery__image a { display: flex; justify-content: center; }
body.da26 .product-thumbnails .col a,
body.da26 .product-thumbnails .col img { border-radius: 12px; }
body.da26 .product-thumbnails .col a { background: var(--canvas); overflow: hidden; display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; padding: 6px; }
body.da26 .product-thumbnails .col a img { width: 100% !important; height: 100% !important; object-fit: contain; }
body.da26 .product-thumbnails .col img { mix-blend-mode: multiply; opacity: .75; transition: opacity .2s; }
body.da26 .product-thumbnails .is-nav-selected img,
body.da26 .product-thumbnails .col a:hover img { opacity: 1; }
body.da26 .product-thumbnails .is-nav-selected a { box-shadow: inset 0 0 0 2px var(--ink); }
body.da26 .product-info .breadcrumbs {
	font-size: 13px;
	font-weight: 500;
	color: var(--muted);
}
body.da26 .product-info .breadcrumbs a { color: var(--muted); }
body.da26 .product-info .product-title {
	font-size: clamp(1.5rem, 1.1rem + 1.1vw, 2.15rem);
	line-height: 1.15;
	margin: 6px 0 10px;
}
body.da26 .product-info > .is-divider { display: none; }
body.da26 .product-info .woocommerce-product-rating { display: flex; align-items: center; gap: 8px; margin-bottom: 18px; }
body.da26 .product-info .woocommerce-review-link { color: var(--muted); font-size: 14px; }
body.da26 .product-short-description { font-size: 15px; }
body.da26 .product-short-description ul {
	list-style: none;
	margin: 0 0 22px;
	padding: 0;
	border-top: 1px solid var(--line);
}
body.da26 .product-short-description li {
	margin: 0 !important;
	padding: 11px 0;
	border-bottom: 1px solid var(--line);
	color: var(--text);
}
body.da26 .product-short-description li p { margin: 0; }
body.da26 .single_add_to_cart_button {
	min-height: 56px;
	font-size: 17px !important;
	padding: 16px 34px !important;
	border-radius: 14px !important;
	width: 100%;
	max-width: 440px;
}
body.da26 .single_add_to_cart_button::after {
	content: "→";
	font-size: 1.1em;
	transition: transform .2s var(--ease);
}
body.da26 .single_add_to_cart_button:hover::after { transform: translateX(4px); }
body.da26 .product_meta { font-size: 13px; color: var(--muted); }
body.da26 .product_meta > span { border-top: 1px solid var(--line); padding: 10px 0; }
body.da26 .product-section { border-top: 1px solid var(--line); }
body.da26 .product-section-title,
body.da26 .woocommerce-tabs .tabs li a {
	font-family: var(--font-head);
	text-transform: none !important;
	letter-spacing: 0 !important;
	font-weight: 600;
	color: var(--ink);
}
body.da26 .woocommerce-tabs .tabs { border-bottom: 1px solid var(--line); gap: 6px; }
body.da26 .woocommerce-tabs .tabs li.active a { color: var(--brand-ink); }
body.da26 .next-prev-thumbs .button { border-color: var(--line) !important; color: var(--ink) !important; }

/* Bouton d'achat collant (snippet « sticky add to cart ») */
body.da26 .sticky-add-to-cart-custom {
	border-top: 1px solid var(--line);
	box-shadow: 0 -10px 30px rgba(14, 27, 42, .08) !important;
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	background: rgba(255, 255, 255, .94) !important;
}
body.da26 .sticky-add-to-cart-custom .sticky-product-image { border-radius: 12px !important; border-color: var(--line) !important; background: var(--canvas); mix-blend-mode: multiply; }
body.da26 .sticky-add-to-cart-custom .sticky-product-title { font-family: var(--font-body) !important; color: var(--ink) !important; }
body.da26 .sticky-add-to-cart-custom .button.product_type_external {
	background: var(--ink) !important;
	border: 0 !important;
	border-radius: 12px !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	font-size: 15px !important;
	box-shadow: none !important;
}
body.da26 .sticky-add-to-cart-custom .button.product_type_external:hover {
	background: var(--brand-ink) !important;
	transform: translateY(-1px) !important;
}

/* ---------- Avis ---------- */
body.da26 .woocommerce-Reviews .comment_container,
body.da26 .review .comment-text {
	border-radius: var(--radius-m);
}
body.da26 #reviews .commentlist > li { background: var(--canvas); border-radius: var(--radius-m); padding: 18px 20px; margin-bottom: 14px; }

/* ---------- Pied de page ---------- */
body.da26 .footer-wrapper .footer-1 {
	background: var(--ink) !important;
	padding: 64px 0 40px;
}
body.da26 .footer-wrapper .widget-title {
	font-family: var(--font-head);
	font-size: 15px;
	font-weight: 600;
	color: #fff;
	letter-spacing: 0;
}
body.da26 .footer-wrapper .is-divider { display: none; }
body.da26 .footer-wrapper span.widget-title { display: block; margin-bottom: 16px; }
body.da26 .footer-wrapper .textwidget p { margin-bottom: 8px; }
body.da26 .footer-wrapper .textwidget a,
body.da26 .footer-wrapper .textwidget a strong {
	color: rgba(255, 255, 255, .72);
	font-weight: 400;
	font-size: 15px;
}
body.da26 .footer-wrapper .textwidget a:hover,
body.da26 .footer-wrapper .textwidget a:hover strong { color: #fff; }
body.da26 .footer-wrapper h4 { font-family: var(--font-body); font-size: 15px; }
body.da26 .absolute-footer {
	background: #0a1420 !important;
	color: rgba(255, 255, 255, .5);
	border-top: 1px solid rgba(255, 255, 255, .08);
	padding: 22px 0;
}
body.da26 .absolute-footer strong { color: rgba(255, 255, 255, .8); }
body.da26 .back-to-top {
	border-radius: 50% !important;
	background: var(--ink) !important;
	border-color: var(--ink) !important;
	color: #fff !important;
	box-shadow: var(--shadow-2);
}

/* ---------- Bandeau cookies : carte flottante discrète ---------- */
body.da26 #cookie-notice {
	font-family: var(--font-body) !important;
	background: var(--ink) !important;
	left: 16px !important;
	right: 16px !important;
	bottom: 16px !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: 760px;
	margin: 0 auto;
	border-radius: 18px;
	box-shadow: 0 20px 50px rgba(14, 27, 42, .3);
}
body.da26 #cookie-notice.cookie-notice-hidden { display: none !important; }
body.da26 #cookie-notice.cookie-notice-visible .cookie-notice-container { padding: 16px 52px 16px 22px; text-align: left; display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
body.da26 #cookie-notice #cn-notice-text { font-size: 14px; color: rgba(255, 255, 255, .85); flex: 1 1 260px; margin: 0; }
body.da26 #cookie-notice #cn-notice-buttons { display: flex; gap: 8px; flex-wrap: wrap; margin: 0; }
body.da26 #cookie-notice .cn-button {
	border-radius: 10px !important;
	font-family: var(--font-body) !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	padding: 9px 16px !important;
	margin: 0 !important;
	min-height: 0 !important;
	line-height: 1.2 !important;
	border: 1px solid rgba(255, 255, 255, .25) !important;
	background: transparent !important;
	color: #fff !important;
}
body.da26 #cookie-notice #cn-accept-cookie { background: #fff !important; color: var(--ink) !important; border-color: #fff !important; }
body.da26 #cookie-notice #cn-more-info { border-color: transparent !important; text-decoration: underline; text-underline-offset: 3px; }

/* ---------- Mobile ---------- */
@media (max-width: 849px) {
	body.da26 .header-main .nav > li { margin: 0 4px; }
	body.da26 .product-small .box-image { padding: 12px; border-radius: 16px; }
	body.da26 .product-small .box-text .name a { font-size: 14px; }
	body.da26 .single_add_to_cart_button { max-width: none; }
	body.da26.tax-product_cat .shop-container > .term-description { padding: 28px 20px; }
	body.da26 .footer-wrapper .footer-1 { padding: 44px 0 24px; }
}

@media (prefers-reduced-motion: reduce) {
	body.da26 *, body.da26 *::before, body.da26 *::after {
		transition: none !important;
		animation: none !important;
	}
}
