/* ==========================================================================
   Le Labo du Chai — « La dame-jeanne et le mustimètre » (29/10/2026)
   01 · polices auto-hébergées, jetons, base, boutons, formulaires, composants partagés
   ========================================================================== */
@font-face{font-family:'Petrona';font-style:normal;font-weight:400 900;font-display:swap;src:url(../fonts/Petrona-var-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Petrona';font-style:normal;font-weight:400 900;font-display:swap;src:url(../fonts/Petrona-var-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Albert Sans';font-style:normal;font-weight:300 900;font-display:swap;src:url(../fonts/AlbertSans-var-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Albert Sans';font-style:normal;font-weight:300 900;font-display:swap;src:url(../fonts/AlbertSans-var-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* --- Jetons : tuffeau (pierre de cave), verre de bouteille, paille (vin blanc), lie (repère), encre. Mode clair uniquement. --- */
:root{
	--tuffeau:#E9ECE4; --verre:#1F4A3A; --verre-fonce:#173A2E; --verre-clair:#DCE7DF; --lie:#7A2335; --lie-fonce:#5E1A28;
	--paille:#E7BE45; --paille-fonce:#D4A62C; --paille-clair:#F7EBC6; --encre:#1C2A24; --doux:#4A5751; --blanc:#FFFFFF;
	--texte:var(--encre); --filet:rgba(23,58,46,.14); --filet-fort:rgba(23,58,46,.3);
	--ombre:0 22px 44px -22px rgba(23,58,46,.42); --ombre-forte:0 34px 60px -26px rgba(23,58,46,.55);
	--r-carte:18px; --r-photo:24px;
	--t-titre:'Petrona',Georgia,'Times New Roman',serif;
	--t-texte:'Albert Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
	--h-entete:80px;
	--graduee:repeating-linear-gradient(0deg, rgba(23,58,46,.07) 0 1px, transparent 1px 26px), repeating-linear-gradient(0deg, rgba(23,58,46,.10) 0 2px, transparent 2px 130px);
	/* alias lus par les blocs figés repris (06/08/09) */
	--ardoise:#173A2E; --sapin:var(--verre); --sapin-fonce:var(--verre-fonce); --laiton:var(--paille); --sauge:var(--verre-clair); --lin:var(--tuffeau);

	/* jetons des blocs figés (--sb-*) */
	--sb-conteneur:1240px; --sb-lecture:720px; --sb-rail:340px; --sb-gouttiere:44px;
	--sb-accent:var(--verre); --sb-accent-clair:var(--paille); --sb-encre:var(--encre); --sb-doux:var(--doux); --sb-filet:var(--filet);
	--sb-fond-carte:#FFFFFF; --sb-rayon:20px; --sb-rayon-grand:26px; --sb-ombre:var(--ombre); --sb-ombre-forte:var(--ombre-forte);
	--sb-titre:var(--t-titre); --sb-texte:var(--t-texte); --sb-surf:var(--verre-clair); --sb-fonce:var(--verre-fonce); --sb-sur-fonce:#FFFFFF;
}
@media (max-width:1100px){ :root{ --sb-gouttiere:28px; } }
@media (max-width:640px){ :root{ --sb-gouttiere:20px; --h-entete:66px; } }

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:110px; }
body{ margin:0; min-height:100vh; min-height:100dvh; display:flex; flex-direction:column; background:var(--tuffeau); color:var(--texte); font:400 18px/1.65 var(--t-texte); -webkit-font-smoothing:antialiased; overflow-x:clip; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } *{ transition:none !important; animation:none !important; } }
img,svg{ max-width:100%; } img{ height:auto; }
[hidden]{ display:none !important; }
h1,h2,h3,h4{ font-family:var(--t-titre); font-weight:700; color:var(--ardoise); margin:0; text-wrap:balance; letter-spacing:-.005em; }
h3,h4{ font-family:var(--t-texte); font-weight:800; letter-spacing:0; }
p{ margin:0 0 1em; }
a{ color:var(--verre); text-decoration-thickness:2px; text-underline-offset:3px; }
a:hover{ color:var(--verre-fonce); }
:focus-visible{ outline:3px solid var(--paille); outline-offset:3px; border-radius:6px; }
.ldc-main{ flex:1 0 auto; display:block; }
.ldc-evitement{ position:absolute; left:-9999px; top:8px; z-index:300; background:#fff; color:var(--encre); padding:12px 18px; border-radius:12px; font-weight:700; }
.ldc-evitement:focus{ left:12px; }

/* --- Mise en page --- */
.ldc-c, .sbt-conteneur{ width:100%; max-width:calc(var(--sb-conteneur) + 2 * var(--sb-gouttiere)); margin-inline:auto; padding-inline:var(--sb-gouttiere); }
.ldc-c--etroit{ max-width:calc(860px + 2 * var(--sb-gouttiere)); }
.ldc-sec{ position:relative; padding-block:clamp(52px,6vw,84px); }
.ldc-sec--tuffeau{ background:var(--paille-clair); background-image:var(--graduee); }
.ldc-sec--verre{ background:var(--verre); color:#EAF4F2; }
.ldc-sec__tete{ max-width:760px; margin-bottom:clamp(26px,3vw,40px); }
.ldc-sec__tete--ligne{ max-width:none; display:flex; align-items:flex-end; justify-content:space-between; gap:18px 32px; flex-wrap:wrap; }
.ldc-sec__tete--ligne > div{ max-width:720px; }
.ldc-sec__chapo{ margin:12px 0 0; font-size:clamp(18px,1.4vw,20px); line-height:1.55; color:var(--doux); max-width:44em; }
.ldc-sec--verre .ldc-sec__chapo{ color:#D7ECE9; }
.ldc-h1{ font-size:clamp(34px,4vw,56px); line-height:1.08; }
.ldc-h2{ font-size:clamp(28px,2.9vw,42px); line-height:1.12; }
.ldc-h2--moyen{ font-size:clamp(25px,2.3vw,34px); }
.ldc-h2--clair{ color:#fff; }
.ldc-grille{ display:grid; gap:24px; }
.ldc-grille--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.ldc-grille--produits{ grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:1100px){ .ldc-grille--produits{ grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:900px){ .ldc-grille--3{ grid-template-columns:repeat(2,minmax(0,1fr)); } .ldc-grille--produits{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; } }
@media (max-width:620px){ .ldc-grille--3{ grid-template-columns:minmax(0,1fr); } }

/* --- Boutons --- */
.ldc-btn, .sbt-btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:0 26px; border:0; border-radius:999px; font:700 18px/1.2 var(--t-texte); text-decoration:none; cursor:pointer; transition:background .18s, transform .18s, box-shadow .18s; }
.ldc-btn--paille, .sbt-btn{ background:var(--paille); color:var(--verre-fonce); box-shadow:0 12px 24px -12px rgba(122,90,20,.75); }
.ldc-btn--paille:hover, .sbt-btn:hover{ background:var(--paille-fonce); color:var(--verre-fonce); transform:translateY(-1px); }
.ldc-btn--contour{ background:#fff; color:var(--verre); box-shadow:inset 0 0 0 2px var(--verre); }
.ldc-btn--contour:hover{ background:var(--verre); color:#fff; }
.ldc-btn--grand{ min-height:58px; padding:0 32px; font-size:19px; }
.ldc-btn--plein{ width:100%; }
.ldc-btn[disabled]{ cursor:not-allowed; transform:none; }
.ldc-lien-fort{ display:inline-flex; align-items:center; gap:8px; min-height:44px; font-weight:800; color:var(--verre); text-decoration:none; border-bottom:3px solid var(--paille); }
.ldc-lien-fort::after{ content:""; width:18px; height:18px; background:currentColor; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat; }
.ldc-lien-fort:hover{ color:var(--lie); }

/* --- Pastilles, ruban « bientôt » --- */
.ldc-pastille, .sbt-article-pastille{ display:inline-flex; align-items:center; min-height:32px; padding:4px 14px; border-radius:999px; background:var(--paille); color:#22302B; font:800 15px/1.2 var(--t-texte); text-decoration:none; }
a.ldc-pastille:hover{ background:#fff; color:#22302B; }
.ldc-ruban{ display:inline-block; padding:8px 16px 8px 18px; background:var(--paille); color:var(--verre-fonce); font:800 15.5px/1.2 var(--t-texte); border-radius:4px 14px 14px 4px; box-shadow:0 12px 24px -12px rgba(23,58,46,.7); white-space:nowrap; }
.ldc-ruban--petit{ padding:5px 12px; font-size:13.5px; }

/* --- Graduation de mustimètre (motif du site) --- */
.ldc-graduation{ display:block; overflow:visible; }
.ldc-graduation__tige{ fill:rgba(255,255,255,.9); stroke:rgba(23,58,46,.25); stroke-width:1; }
.ldc-graduation__trait{ stroke:var(--verre-fonce); stroke-width:2.4; stroke-linecap:round; }
.ldc-graduation__chiffre{ font:700 15px var(--t-texte); fill:var(--verre-fonce); }
.ldc-graduation__niveau{ fill:var(--lie); }

/* --- Formulaires --- */
.ldc-champ{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.ldc-champ > span, .ldc-champ > label{ font-size:15.5px; font-weight:700; color:var(--encre); }
.ldc-champ input, .ldc-champ select, .ldc-champ textarea{ width:100%; min-height:52px; padding:12px 16px; border:2px solid #C9D8D4; border-radius:14px; background:#fff; color:var(--encre); font:400 17px/1.4 var(--t-texte); }
.ldc-champ textarea{ min-height:96px; resize:vertical; }
.ldc-champ input:focus, .ldc-champ select:focus, .ldc-champ textarea:focus{ outline:none; border-color:var(--verre); box-shadow:0 0 0 4px rgba(31,74,58,.16); }
.ldc-champ.est-invalide input, .ldc-champ.est-invalide textarea{ border-color:var(--lie); }
.ldc-champ--compact input{ min-height:48px; }
.ldc-accord{ display:flex; align-items:flex-start; gap:10px; font-size:15px; line-height:1.45; color:var(--doux); cursor:pointer; }
.ldc-accord input{ flex:none; width:22px; height:22px; margin:1px 0 0; accent-color:var(--verre); }
.ldc-accord--compact{ font-size:14px; }
.ldc-piege, .ldc-hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden; }

/* --- Formulaire « me prévenir » (3 étapes) --- */
.ldc-prevenir{ position:relative; display:flex; flex-direction:column; gap:14px; padding:22px 24px 20px; background:#fff; border-radius:24px; box-shadow:var(--ombre-forte); color:var(--encre); }
.ldc-prevenir__tete{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.ldc-prevenir__titre{ margin:0; font:700 23px/1.15 var(--t-titre); color:var(--ardoise); }
.ldc-prevenir__etape{ margin:0; flex:none; font-size:14.5px; font-weight:800; color:var(--doux); }
.ldc-prevenir__jauge{ height:6px; border-radius:6px; background:var(--verre-clair); overflow:hidden; }
.ldc-prevenir__jauge span{ display:block; height:100%; width:33.4%; background:var(--verre); border-radius:inherit; transition:width .3s; }
.ldc-prevenir__pas{ margin:0; padding:0; border:0; min-width:0; display:flex; flex-direction:column; gap:14px; }
.ldc-prevenir__pas legend{ padding:0; margin-bottom:12px; font-weight:800; font-size:17px; }
.ldc-prevenir__rayons{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.ldc-tuile{ position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; min-height:96px; padding:12px 6px; border:2px solid #D3E2DE; border-radius:16px; background:var(--tuffeau); color:var(--verre); text-align:center; font-weight:800; font-size:15px; line-height:1.2; cursor:pointer; transition:border-color .15s, background .15s; }
.ldc-tuile input{ position:absolute; opacity:0; inset:0; cursor:pointer; }
.ldc-tuile span{ color:var(--encre); }
.ldc-tuile:has(input:checked){ border-color:var(--verre); background:var(--verre-clair); box-shadow:inset 0 0 0 1px var(--verre); }
.ldc-tuile:has(input:focus-visible){ outline:3px solid var(--paille); outline-offset:2px; }
.ldc-prevenir__choix{ display:grid; gap:10px; }
.ldc-choix{ position:relative; display:flex; align-items:center; min-height:52px; padding:0 18px; border:2px solid #D3E2DE; border-radius:14px; background:var(--tuffeau); font-weight:700; cursor:pointer; }
.ldc-choix input{ position:absolute; opacity:0; inset:0; cursor:pointer; }
.ldc-choix:has(input:checked){ border-color:var(--verre); background:var(--verre-clair); }
.ldc-prevenir__ligne{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:10px; }
.ldc-prevenir__nav{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.ldc-lien-retour{ min-height:44px; padding:0 6px; border:0; background:none; color:var(--doux); font:700 16px var(--t-texte); text-decoration:underline; cursor:pointer; }
.ldc-prevenir__retour{ margin:0; font-weight:700; font-size:15.5px; min-height:0; }
.ldc-prevenir__retour:empty{ display:none; }
.ldc-prevenir__retour.est-ok{ color:var(--verre); } .ldc-prevenir__retour.est-erreur{ color:var(--lie); }
@media (max-width:520px){ .ldc-prevenir{ padding:18px 16px; } .ldc-prevenir__ligne{ grid-template-columns:minmax(0,1fr); } .ldc-tuile{ min-height:84px; font-size:14px; } }

/* --- Cartes d'article --- */
.ldc-carte{ display:flex; flex-direction:column; min-width:0; background:#fff; border-radius:var(--r-carte); overflow:hidden; box-shadow:var(--ombre); transition:transform .2s, box-shadow .2s; }
.ldc-carte:hover{ transform:translateY(-3px); box-shadow:var(--ombre-forte); }
.ldc-carte__photo{ display:block; aspect-ratio:3/2; overflow:hidden; background:var(--verre-clair); }
.ldc-carte__img{ width:100%; height:100%; object-fit:cover; display:block; }
.ldc-carte__corps{ display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:18px 20px 20px; }
.ldc-carte__titre{ font:800 20px/1.3 var(--t-texte); }
.ldc-carte__titre a{ color:var(--ardoise); text-decoration:none; }
.ldc-carte__titre a:hover{ color:var(--lie); }
.ldc-carte__extrait{ margin:0; font-size:16.5px; line-height:1.55; color:var(--doux); }
.ldc-carte__meta{ margin:0; font-size:14.5px; font-weight:700; color:var(--doux); }

/* --- Cartes produit --- */
.ldc-produit-carte{ display:flex; flex-direction:column; min-width:0; background:#fff; border-radius:var(--r-carte); box-shadow:var(--ombre); overflow:hidden; }
.ldc-produit-carte__photo{ position:relative; display:block; aspect-ratio:1/1; overflow:hidden; background:var(--verre-clair); }
.ldc-produit-carte__img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s; }
.ldc-produit-carte:hover .ldc-produit-carte__img{ transform:scale(1.04); }
.ldc-produit-carte .ldc-ruban{ position:absolute; top:12px; left:12px; }
.ldc-produit-carte__corps{ display:flex; flex-direction:column; gap:4px; padding:14px 16px 18px; }
.ldc-produit-carte__rayon{ font-size:14px; font-weight:800; color:var(--lie); }
.ldc-produit-carte__nom{ font:800 19px/1.25 var(--t-texte); }
.ldc-produit-carte__nom a{ color:var(--ardoise); text-decoration:none; }
.ldc-produit-carte__nom a:hover{ color:var(--lie); }
.ldc-produit-carte__origine{ margin:0; font-size:15px; color:var(--doux); line-height:1.4; }

/* --- Étiquettes de lien (noms de produits, recettes) --- */
.ldc-etiquettes{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.ldc-etiquettes a{ display:inline-flex; align-items:center; min-height:40px; padding:4px 14px; border-radius:999px; background:var(--tuffeau); border:1.5px solid #D3E2DE; color:var(--encre); font-size:15px; font-weight:700; text-decoration:none; }
.ldc-etiquettes a:hover{ border-color:var(--lie); color:var(--lie); }

.ldc-voir-plus{ display:flex; justify-content:center; margin-top:34px; }
.ldc-vide{ display:flex; flex-direction:column; align-items:center; gap:18px; padding:48px 24px; background:#fff; border-radius:var(--r-carte); text-align:center; box-shadow:var(--ombre); }
.ldc-picto{ display:block; flex:none; }
/* 02 · en-tête, menu, menu mobile */
.ldc-entete{
	position:sticky; top:0; z-index:60; height:var(--h-entete); background:#fff;
}
.ldc-entete__frise{ position:absolute; left:0; right:0; bottom:-8px; height:8px; background:repeating-linear-gradient(90deg, var(--verre-fonce) 0 2px, transparent 2px 14px) left top/100% 5px no-repeat, repeating-linear-gradient(90deg, var(--verre-fonce) 0 2px, transparent 2px 70px) left top/100% 8px no-repeat, #fff; opacity:.9; pointer-events:none; box-shadow:0 8px 14px -8px rgba(23,58,46,.25); }
.ldc-entete__in{ height:100%; max-width:1400px; margin-inline:auto; padding-inline:32px; display:flex; align-items:center; gap:28px; }
.ldc-marque{ display:flex; align-items:center; gap:12px; flex:none; color:var(--ardoise); text-decoration:none; }
.ldc-marque:hover{ color:var(--ardoise); }
.ldc-marque__logo{ width:46px; height:46px; border-radius:12px; display:block; }
.ldc-marque__txt{ display:block; }
.ldc-marque__nom{ display:block; font:800 25px/1 var(--t-titre); color:var(--ardoise); }
.ldc-marque__devise{ display:block; margin-top:5px; font:700 14.5px/1.1 var(--t-texte); color:var(--lie); }
.ldc-nav{ display:flex; align-items:center; gap:22px; margin-left:auto; }
.ldc-nav__liste{ display:flex; gap:2px; list-style:none; margin:0; padding:0; }
.ldc-nav__liste a{
	display:block; padding:11px 12px; border-radius:10px; font:700 16px/1.2 var(--t-texte); color:var(--ardoise); text-decoration:none; white-space:nowrap;
}
.ldc-nav__liste a:hover{ background:var(--sauge); color:var(--ardoise); }
.ldc-nav__liste a[aria-current="page"]{ box-shadow:inset 0 -4px 0 var(--lie); border-radius:10px 10px 0 0; }
.ldc-nav__cta{ flex:none; min-height:48px; padding:0 22px; font-size:17px; }
.ldc-burger{ display:none; }

@media (max-width:1360px){
	.ldc-entete__in{ padding-inline:20px; gap:14px; }
	.ldc-burger{
		display:flex; align-items:center; gap:10px; margin-left:auto; min-height:48px; min-width:48px; padding:0 16px; border-radius:12px;
		border:2px solid var(--filet-fort); background:#fff; color:var(--ardoise); font:700 16px/1 var(--t-texte); cursor:pointer;
	}
	.ldc-burger__traits{ width:22px; height:16px; background:linear-gradient(var(--ardoise),var(--ardoise)) 0 0/100% 3px no-repeat, linear-gradient(var(--ardoise),var(--ardoise)) 0 50%/100% 3px no-repeat, linear-gradient(var(--ardoise),var(--ardoise)) 0 100%/100% 3px no-repeat; }
	.ldc-nav{
		position:fixed; top:var(--h-entete); left:0; right:0; z-index:59; display:none; flex-direction:column; align-items:stretch; gap:14px;
		margin:0; padding:10px 20px 22px; background:#fff; border-bottom:1px solid var(--filet); box-shadow:0 24px 40px -24px rgba(23,58,46,.4);
	}
	.ldc-entete.is-open .ldc-nav{ display:flex; }
	.ldc-nav__liste{ flex-direction:column; gap:0; }
	.ldc-nav__liste a{ display:flex; align-items:center; min-height:56px; padding:8px 4px; font-size:19px; border-radius:0; border-bottom:1px solid var(--filet); }
	.ldc-nav__liste a[aria-current="page"]{ box-shadow:none; border-bottom:4px solid var(--lie); }
	.ldc-nav__cta{ min-height:56px; font-size:18px; }
}
@media (max-width:420px){ .ldc-marque__devise{ display:none; } .ldc-marque__nom{ font-size:22px; } }

/* sans JavaScript : le menu reste visible, sous le logo */
html:not(.js) .ldc-entete{ height:auto; position:static; }
html:not(.js) .ldc-entete__in{ flex-wrap:wrap; padding-block:10px; }
html:not(.js) .ldc-burger{ display:none; }
html:not(.js) .ldc-nav{ position:static; display:flex; flex-direction:row; flex-wrap:wrap; box-shadow:none; border:0; padding:0; }
html:not(.js) .ldc-nav__liste{ flex-direction:row; flex-wrap:wrap; }
html:not(.js) .ldc-nav__liste a{ min-height:44px; border:0; font-size:16px; }

/* barre de progression de lecture (articles) */
.ldc-progression{ position:fixed; top:0; left:0; right:0; height:5px; z-index:90; pointer-events:none; }
.ldc-progression__barre{ display:block; height:100%; background:var(--lie); transform-origin:0 50%; transform:scaleX(var(--lu,0)); }
@media (max-width:440px){ .ldc-burger{ padding:0 12px; } .ldc-burger__txt{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); } .ldc-marque__nom{ font-size:21px; } .ldc-marque__logo{ width:40px; height:40px; } }
/* 03 · premier écran : titre deux tons + photo de cave voûtée découpée en silhouette de dame-jeanne,
   graduation de mustimètre en surimpression qui déborde + carte « Me prévenir » posée sur la photo. Tient entier dans 1440×780 et 1920×950. */
.ldc-hero{ position:relative; padding:40px 0 30px; background:linear-gradient(180deg, var(--tuffeau) 0 64%, var(--verre-clair) 64% 100%); overflow:hidden; }
.ldc-hero::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:30%; background:var(--graduee); opacity:.3; pointer-events:none; }
.ldc-hero__in{ position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:56px; align-items:center; }
.ldc-hero__texte{ min-width:0; padding-bottom:12px; }
.ldc-hero__titre{ font-size:clamp(40px,3.9vw,62px); line-height:1.02; font-weight:800; color:var(--ardoise); }
.ldc-hero__titre > span{ display:block; }
.ldc-ton2{ color:var(--verre); }
.ldc-hero__chapo{ margin:22px 0 0; max-width:34em; font-size:clamp(18px,1.35vw,21px); line-height:1.55; color:var(--doux); }
.ldc-preuves{ list-style:none; margin:24px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:10px; }
.ldc-preuves li{ display:flex; align-items:baseline; gap:8px; padding:10px 16px; background:#fff; border-radius:14px; box-shadow:0 10px 22px -16px rgba(23,58,46,.6); }
.ldc-preuves strong{ font:800 26px/1 var(--t-texte); color:var(--lie); font-variant-numeric:tabular-nums; }
.ldc-preuves span{ font-weight:700; font-size:15.5px; color:var(--encre); }
.ldc-preuves--clair li{ background:rgba(255,255,255,.95); }
.ldc-hero__actions{ display:flex; align-items:center; flex-wrap:wrap; gap:14px 24px; margin-top:22px; }
.ldc-hero__cta-mobile{ display:none; }

/* dame-jeanne */
.ldc-hero__visuel{ position:relative; min-width:0; display:flex; justify-content:center; }
.ldc-dj{ position:relative; height:clamp(380px,calc(100vh - 250px),610px); aspect-ratio:.94/1; max-width:100%; margin-left:auto; margin-right:7%; }
.ldc-dj__defs{ position:absolute; width:0; height:0; }
.ldc-dj__photo{ position:absolute; inset:0; clip-path:url(#ldc-dj-forme); background:var(--verre); }
.ldc-dj::before{ content:""; position:absolute; inset:2% -1.2% -2.4% 1.2%; clip-path:url(#ldc-dj-forme); background:rgba(23,58,46,.28); filter:blur(2px); z-index:-1; }
.ldc-dj__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 55%; }
.ldc-dj__photo::after{ content:""; position:absolute; inset:0; background:radial-gradient(120% 70% at 30% 35%, rgba(255,255,255,.22), transparent 45%), linear-gradient(180deg, transparent 55%, rgba(23,58,46,.35)); pointer-events:none; }
.ldc-dj__graduation{ position:absolute; right:-34px; top:14%; height:74%; width:auto; z-index:3; filter:drop-shadow(0 10px 14px rgba(23,58,46,.35)); }
.ldc-dj__repere{ position:absolute; right:0; top:calc(14% - 40px); z-index:3; padding:5px 10px; border-radius:999px; background:var(--lie); color:#fff; font:700 13.5px/1.2 var(--t-texte); white-space:nowrap; box-shadow:0 10px 18px -10px rgba(94,26,40,.8); }
.ldc-hero__carte{ position:absolute; left:-28px; bottom:-8px; z-index:4; width:min(370px,60%); }
.ldc-hero__carte .ldc-prevenir{ box-shadow:0 34px 60px -24px rgba(23,58,46,.65); }

@media (min-width:1700px){ .ldc-hero{ padding-top:56px; } }
@media (max-width:1100px){ .ldc-hero__in{ gap:40px; } .ldc-hero__carte{ left:-24px; } }
@media (max-width:960px){
	.ldc-hero{ padding:30px 0 28px; }
	.ldc-hero__in{ grid-template-columns:minmax(0,1fr); gap:26px; }
	.ldc-hero__titre{ font-size:clamp(34px,8.6vw,52px); }
	.ldc-hero__chapo{ margin-top:14px; font-size:17.5px; }
	.ldc-preuves{ margin-top:16px; gap:8px; } .ldc-preuves li{ padding:8px 12px; } .ldc-preuves strong{ font-size:22px; } .ldc-preuves span{ font-size:14.5px; }
	.ldc-hero__actions{ margin-top:16px; }
	.ldc-hero__cta-mobile{ display:inline-flex; width:100%; }
	.ldc-hero__visuel{ padding-left:0; }
	.ldc-hero__visuel{ flex-direction:column; align-items:center; }
	.ldc-dj{ height:auto; width:min(86%,420px); margin:0 auto; }
	.ldc-dj__graduation{ right:-26px; }
	.ldc-dj__repere{ display:none; }
	.ldc-hero__carte{ position:relative; left:auto; bottom:auto; width:100%; margin:-70px 0 0; }
}
@media (max-width:600px){
	.ldc-hero{ padding-top:22px; }
	.ldc-hero__chapo{ font-size:16.5px; line-height:1.5; }
	.ldc-preuves{ flex-wrap:nowrap; } .ldc-preuves li{ padding:7px 10px; gap:5px; } .ldc-preuves strong{ font-size:19px; } .ldc-preuves span{ font-size:13.5px; }
	.ldc-hero__actions{ margin-top:14px; gap:10px; }
	.ldc-hero__in{ gap:18px; }
}
@media (max-width:600px){ .ldc-hero__chapo .ldc-long{ display:none; } .ldc-hero__chapo{ margin-top:10px; } }
@media (min-width:1600px){ .ldc-hero .ldc-hero__in{ max-width:1640px; gap:88px; } .ldc-hero__titre{ font-size:clamp(58px,3.4vw,68px); } }
/* 04 · accueil : rayons en fiches de cuve, étagère (rail), carnet, fonctionnement, FAQ. Chaque section ≤ 700 px à 1440. */

/* rayons : « fiches de cuve » — carte blanche au bord gauche gradué comme une jauge de cuve, pastille ronde à cheval sur la photo */
.ldc-rayons__grille{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; }
.ldc-cuve{ position:relative; display:flex; flex-direction:column; min-width:0; background:#fff; border-radius:var(--r-carte); box-shadow:var(--ombre); overflow:hidden; padding-left:14px; }
.ldc-cuve::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:14px; background:repeating-linear-gradient(180deg, transparent 0 11px, rgba(255,255,255,.75) 11px 13px), var(--verre); }
.ldc-cuve::after{ content:""; position:absolute; left:0; top:46%; width:22px; height:5px; border-radius:0 4px 4px 0; background:var(--lie); }
.ldc-cuve__photo{ position:relative; display:block; height:130px; overflow:hidden; background:var(--verre); }
.ldc-cuve__img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .45s cubic-bezier(.2,.7,.2,1); }
.ldc-cuve:hover .ldc-cuve__img{ transform:scale(1.04); }
.ldc-cuve__corps{ position:relative; padding:0 24px 20px; }
.ldc-cuve__picto{ display:inline-flex; align-items:center; justify-content:center; width:60px; height:60px; margin:-30px 0 12px; border-radius:50%; background:var(--paille); color:var(--ardoise); box-shadow:0 0 0 5px #fff; }
.ldc-cuve__titre{ font:800 27px/1.1 var(--t-titre); margin-bottom:8px; }
.ldc-cuve__titre a{ color:var(--ardoise); text-decoration:none; }
.ldc-cuve__titre a:hover{ color:var(--lie); }
.ldc-cuve p{ margin:0; font-size:16.5px; line-height:1.5; color:var(--doux); }
.ldc-cuve .ldc-etiquettes{ gap:6px; margin-top:12px; }
.ldc-cuve .ldc-etiquettes a{ min-height:34px; padding:3px 12px; font-size:14.5px; }
@media (max-width:960px){ .ldc-rayons__grille{ grid-template-columns:minmax(0,1fr); gap:20px; } .ldc-cuve{ display:grid; grid-template-columns:150px minmax(0,1fr); } .ldc-cuve__photo{ height:100%; min-height:180px; } .ldc-cuve__corps{ padding:18px; } .ldc-cuve__picto{ margin:0 0 8px; width:48px; height:48px; } }
@media (max-width:520px){ .ldc-cuve{ grid-template-columns:minmax(0,1fr); } .ldc-cuve__photo{ height:150px; min-height:0; } .ldc-cuve__picto{ margin:-24px 0 8px; } }

/* étagère : rail horizontal de cartes produit */
.ldc-rail-nav{ display:flex; gap:10px; }
.ldc-rail-btn{ display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border:0; border-radius:50%; background:#fff; color:var(--verre); box-shadow:var(--ombre); cursor:pointer; }
.ldc-rail-btn:hover{ background:var(--verre); color:#fff; }
.ldc-rail{ display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 4 * 22px) / 5); gap:22px; overflow-x:auto; scroll-snap-type:x mandatory; padding:4px 4px 22px; margin:0 -4px; scrollbar-width:thin; scrollbar-color:var(--verre) transparent; }
.ldc-rail > *{ scroll-snap-align:start; }
.ldc-rail .ldc-produit-carte__photo{ aspect-ratio:4/3; }
@media (max-width:1100px){ .ldc-rail{ grid-auto-columns:calc((100% - 2 * 22px) / 3); } }
@media (max-width:700px){ .ldc-rail{ grid-auto-columns:72%; gap:16px; } .ldc-rail-nav{ display:none; } }

/* carnet : une grande fiche + liste de guides */
.ldc-carnet-accueil__grille{ display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:28px; align-items:start; }
.ldc-page-carnet{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); min-width:0; background:#fff; border-radius:var(--r-carte); box-shadow:var(--ombre); overflow:hidden; }
.ldc-page-carnet__photo{ position:relative; display:block; min-height:300px; max-height:420px; }
.ldc-page-carnet__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.ldc-page-carnet__corps{ display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:26px 26px 24px; }
.ldc-page-carnet__titre{ font:800 27px/1.15 var(--t-titre); }
.ldc-page-carnet__titre a{ color:var(--ardoise); text-decoration:none; }
.ldc-page-carnet__titre a:hover{ color:var(--lie); }
.ldc-page-carnet__corps p{ margin:0; color:var(--doux); font-size:16.5px; }
.ldc-carnet-accueil__liste{ display:flex; flex-direction:column; gap:14px; }
.ldc-ligne-guide{ display:grid; grid-template-columns:104px minmax(0,1fr); gap:16px; align-items:center; padding:10px; background:#fff; border-radius:18px; box-shadow:0 12px 26px -20px rgba(23,58,46,.6); text-decoration:none; color:var(--encre); transition:transform .2s; }
.ldc-ligne-guide:hover{ transform:translateX(4px); color:var(--lie); }
.ldc-ligne-guide__img{ width:104px; height:84px; object-fit:cover; border-radius:12px; display:block; }
.ldc-ligne-guide__rub{ display:block; font-size:14px; font-weight:800; color:var(--lie); }
.ldc-ligne-guide__titre{ display:block; font-weight:800; font-size:18px; line-height:1.3; }
@media (max-width:1100px){ .ldc-carnet-accueil__grille{ grid-template-columns:minmax(0,1fr); } }
@media (max-width:640px){ .ldc-page-carnet{ grid-template-columns:minmax(0,1fr); } .ldc-page-carnet__photo{ min-height:220px; } .ldc-ligne-guide{ grid-template-columns:84px minmax(0,1fr); } .ldc-ligne-guide__img{ width:84px; height:70px; } }

/* fonctionnement : 3 étapes (vraie séquence) sur bande verre de bouteille */
.ldc-fonctionne .ldc-h2{ margin-bottom:30px; }
.ldc-etapes{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; counter-reset:etape; }
.ldc-etapes li{ position:relative; display:flex; flex-direction:column; gap:8px; padding:26px 24px 24px 24px; background:#fff; color:var(--encre); border-radius:var(--r-carte); box-shadow:0 24px 40px -24px rgba(0,0,0,.5); counter-increment:etape; }
.ldc-etapes li::before{ content:counter(etape); position:absolute; top:-16px; right:20px; width:40px; height:40px; border-radius:50%; background:var(--paille); color:var(--ardoise); font:800 20px/40px var(--t-texte); text-align:center; }
.ldc-etapes .ldc-picto{ color:var(--verre); }
.ldc-etapes strong{ font-size:20px; color:var(--ardoise); }
.ldc-etapes span{ font-size:16.5px; line-height:1.5; color:var(--doux); }
@media (max-width:860px){ .ldc-etapes{ grid-template-columns:minmax(0,1fr); gap:24px; } }

/* FAQ de l'accueil */
.ldc-faq-accueil__in{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:40px; align-items:start; }
@media (max-width:900px){ .ldc-faq-accueil__in{ grid-template-columns:minmax(0,1fr); gap:20px; } }

/* hauteurs : chaque section de l'accueil tient dans la fenêtre utile (≈ 700 px à 1440×780) */
.ldc-rayons, .ldc-etagere, .ldc-carnet-accueil, .ldc-fonctionne, .ldc-faq-accueil{ padding-block:clamp(44px,4.4vw,64px); }
.ldc-rayons .ldc-sec__tete, .ldc-etagere .ldc-sec__tete, .ldc-carnet-accueil .ldc-sec__tete{ margin-bottom:24px; }
.ldc-rail .ldc-produit-carte__photo{ aspect-ratio:3/2; }
.ldc-rail .ldc-produit-carte__origine{ display:none; }
.ldc-rail .ldc-produit-carte__corps{ padding:12px 16px 16px; }

/* repères du carnet : une règle graduée de mustimètre traitée comme un objet (carte sombre), repères tirés des guides */
.ldc-reperes{ background:var(--verre-clair); }
.ldc-regle{ display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:22px; padding:30px 32px; border-radius:26px; background:var(--verre-fonce); color:#fff; box-shadow:var(--ombre-forte); }
.ldc-regle__echelle{ position:relative; min-width:0; padding:18px 0 0; }
.ldc-regle__graduee{ height:58px; border-radius:12px; background:repeating-linear-gradient(90deg, rgba(255,255,255,.55) 0 2px, transparent 2px calc(100% / 50)) left bottom/100% 22px no-repeat, repeating-linear-gradient(90deg, #fff 0 3px, transparent 3px calc(100% / 5)) left bottom/100% 40px no-repeat, linear-gradient(90deg, rgba(231,190,69,.30), rgba(231,190,69,.06) 80%, rgba(122,35,53,.55)); box-shadow:inset 0 0 0 1px rgba(255,255,255,.25); }
.ldc-regle__chiffres{ list-style:none; margin:8px 0 0; padding:0; display:flex; justify-content:space-between; font:700 15px/1 var(--t-texte); font-variant-numeric:tabular-nums; color:#D9E6DE; }
.ldc-regle__fleche{ margin-top:22px; display:flex; align-items:center; gap:12px; font-size:16.5px; line-height:1.45; color:#E6EEE8; }
.ldc-regle__fleche::before{ content:""; flex:none; width:64px; height:14px; background:linear-gradient(var(--paille),var(--paille)) left center/100% 3px no-repeat; -webkit-mask:linear-gradient(#000,#000); clip-path:polygon(0 40%, 80% 40%, 80% 0, 100% 50%, 80% 100%, 80% 60%, 0 60%); }
.ldc-regle__fin{ margin-top:14px; margin-left:auto; max-width:330px; padding:14px 16px; border-radius:14px; background:#fff; color:var(--encre); box-shadow:0 18px 30px -18px rgba(0,0,0,.6); border-left:6px solid var(--lie); }
.ldc-regle__fin strong{ display:block; font:800 18px/1.25 var(--t-texte); color:var(--lie); }
.ldc-regle__fin span{ display:block; margin-top:4px; font-size:15.5px; color:var(--doux); }
.ldc-regle__tuiles{ display:grid; gap:12px; align-content:center; min-width:0; }
.ldc-regle__tuile{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr); gap:14px; align-items:center; padding:14px 18px; border-radius:16px; background:rgba(255,255,255,.08); box-shadow:inset 0 0 0 1px rgba(255,255,255,.14); }
.ldc-regle__tuile strong{ font:800 24px/1.1 var(--t-texte); color:var(--paille); font-variant-numeric:tabular-nums; }
.ldc-regle__tuile span{ font-size:15.5px; line-height:1.4; color:#E6EEE8; }
@media (max-width:960px){ .ldc-regle{ grid-template-columns:minmax(0,1fr); padding:22px 18px; } .ldc-regle__fin{ margin-left:0; } }
@media (max-width:520px){ .ldc-regle__chiffres li:nth-child(even){ visibility:hidden; } .ldc-regle__chiffres li:last-child{ visibility:visible; } .ldc-regle__tuile{ grid-template-columns:minmax(0,1fr); gap:4px; } .ldc-regle__tuile strong{ font-size:21px; } }
.ldc-reperes{ padding-block:clamp(44px,4.4vw,64px); }
/* 05 · rubrique, en-têtes de page, pages annexes en panneaux, catalogue, fiche produit, carnet, à propos, équipe, auteur, contact */

/* ---- rubrique du carnet : bandeau photo vu à travers les alvéoles d'un casier à bouteilles, carte à cheval ---- */
.ldc-rubrique{ position:relative; background:var(--lin); }
.ldc-rubrique__bandeau{ position:relative; height:clamp(200px,24vw,320px); background:var(--verre); overflow:hidden; }
.ldc-rubrique__casier{ position:absolute; inset:0; z-index:1; background:radial-gradient(circle at 50% 50%, transparent 0 25px, rgba(23,58,46,.86) 26px 100%) 0 0/62px 62px; -webkit-mask:linear-gradient(90deg, #000 0 26%, transparent 46% 100%); mask:linear-gradient(90deg, #000 0 26%, transparent 46% 100%); pointer-events:none; }
.ldc-rubrique__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.ldc-rubrique__carte{
	position:relative; z-index:2; margin-top:-84px; max-width:780px; padding:28px 34px 26px; background:#fff; border-radius:var(--r-carte); box-shadow:var(--ombre);
}
.ldc-rubrique__carte::before{ content:""; position:absolute; left:34px; top:-4px; width:84px; height:9px; border-radius:5px; background:var(--lie); }
.ldc-rubrique__titre{ margin:6px 0 10px; }
.ldc-rubrique__chapo{ margin:0 0 14px; font-size:19px; line-height:1.55; color:var(--doux); max-width:60ch; }
.ldc-rubrique__compteur{ display:inline-flex; align-items:baseline; gap:8px; margin:0; padding:6px 16px; border-radius:999px; background:var(--sauge); font:700 17px/1.2 var(--t-texte); color:var(--ardoise); }
.ldc-rubrique__compteur b{ font:700 24px/1 var(--t-titre); color:var(--sapin); }
@media (max-width:640px){
	.ldc-rubrique__carte{ margin-top:-60px; padding:22px 20px 20px; }
	.ldc-rubrique__carte::before{ left:20px; }
}
.ldc-grille--liste{ margin-top:8px; }

/* ---- en-tête de page (verre de bouteille) ---- */
.ldc-entete-page{ padding:30px 0 44px; }
.ldc-entete-page--verre{ position:relative; background:var(--verre); color:#EAF4F2; margin-bottom:22px; }
.ldc-entete-page--verre::after{ content:""; position:absolute; left:0; right:0; bottom:-12px; height:12px; background:repeating-linear-gradient(90deg, rgba(255,255,255,.85) 0 2px, transparent 2px 14px) left top/100% 7px no-repeat, repeating-linear-gradient(90deg, rgba(255,255,255,.95) 0 2px, transparent 2px 70px) left top/100% 12px no-repeat, var(--verre); }
.ldc-entete-page--verre .ldc-h1{ color:#fff; }
.ldc-entete-page--verre .ldc-sec__chapo, .ldc-entete-page--verre .sbt-fil-ariane, .ldc-entete-page--verre .sbt-fil-ariane a{ color:#D9E6DE; }
.ldc-entete-page__in{ position:relative; }
.ldc-entete-page .sbt-fil-ariane{ padding-block:0 14px; }
.ldc-entete-page .ldc-h1{ max-width:24em; }
.ldc-entete-page .ldc-recherche-dep, .ldc-recherche{ max-width:640px; margin-top:22px; }
.ldc-recherche{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:start; }
.ldc-recherche .ldc-champ input{ height:60px; }
.ldc-recherche-dep--grande{ grid-template-columns:minmax(0,1fr) auto; align-items:start; }
.ldc-recherche-dep--grande .ldc-recherche-dep__msg{ grid-column:1 / -1; }
@media (max-width:640px){ .ldc-recherche, .ldc-recherche-dep--grande{ grid-template-columns:minmax(0,1fr); } }

.sbt-fil-ariane{ display:flex; flex-wrap:wrap; gap:6px; padding-block:14px; font-size:15px; color:var(--doux); }
.sbt-fil-ariane a{ color:var(--doux); text-decoration:none; }
.sbt-fil-ariane a:hover{ color:var(--ardoise); text-decoration:underline; }

/* ---- pages annexes : panneaux et blocs, jamais un mur de texte ---- */
.ldc-page__grille{ display:grid; grid-template-columns:minmax(0,1fr); gap:32px; align-items:start; }
.ldc-page__grille--toc{ grid-template-columns:260px minmax(0,1fr); gap:40px; }
.ldc-page__toc{ position:sticky; top:96px; background:#fff; border:1px solid var(--filet); border-radius:var(--r-carte); box-shadow:var(--ombre); padding:20px 22px; }
.ldc-page__toc-titre{ margin:0 0 10px; font:700 18px/1.2 var(--t-titre); color:var(--ardoise); }
.ldc-page__toc ol{ list-style:none; margin:0; padding:0; display:grid; gap:2px; }
.ldc-page__toc a{ display:block; padding:9px 10px; border-radius:10px; font-size:16px; line-height:1.35; color:var(--texte); text-decoration:none; }
.ldc-page__toc a:hover{ background:var(--sauge); color:var(--ardoise); }
.ldc-page__panneaux{ display:grid; gap:22px; min-width:0; }
.ldc-page__panneaux--seul{ margin-top:40px; max-width:860px; margin-inline:auto; }
.ldc-panneau{ background:#fff; border:1px solid var(--filet); border-radius:var(--r-carte); box-shadow:var(--ombre); padding:26px 30px 28px; scroll-margin-top:96px; min-width:0; }
.ldc-panneau--intro{ background:var(--ardoise); border-color:transparent; color:#fff; }
.ldc-panneau--intro a{ color:#fff; }
.ldc-panneau--intro p{ font-size:20px; }
.ldc-panneau__tete{ display:flex; align-items:center; gap:14px; margin-bottom:14px; padding-bottom:14px; border-bottom:4px solid var(--sauge); }
.ldc-panneau__tete h2{ font-size:clamp(22px,2vw,28px); line-height:1.2; }
.ldc-panneau__icone{ flex:none; width:52px; height:52px; display:flex; align-items:center; justify-content:center; border-radius:14px; background:var(--sauge); color:var(--sapin); }
.ldc-panneau__corps{ font-size:18px; line-height:1.65; max-width:72ch; }
.ldc-panneau__corps > :last-child{ margin-bottom:0; }
.ldc-panneau__corps h3{ margin:1.4em 0 .4em; font-size:21px; }
.ldc-panneau__corps ul, .ldc-panneau__corps ol{ padding-left:0; list-style:none; display:grid; gap:8px; margin:0 0 1em; }
.ldc-panneau__corps li{ position:relative; padding-left:34px; }
.ldc-panneau__corps ul li::before{ content:""; position:absolute; left:2px; top:.5em; width:18px; height:18px; border-radius:50%; background:var(--laiton) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231E2B45' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 12px no-repeat; }
.ldc-panneau__corps ol{ counter-reset:bb; }
.ldc-panneau__corps ol li{ counter-increment:bb; }
.ldc-panneau__corps ol li::before{ content:counter(bb); position:absolute; left:0; top:.1em; width:26px; height:26px; border-radius:50%; background:var(--ardoise); color:#fff; font:700 15px/26px var(--t-texte); text-align:center; }
.ldc-panneau__corps .sbt-faq{ margin:1em 0; padding:0; background:transparent; border:0; }
.ldc-credits{ font-size:16px; }
.ldc-credits li{ padding-left:0 !important; }
.ldc-credits li::before{ display:none !important; }
@media (max-width:900px){ .ldc-page__grille--toc{ grid-template-columns:minmax(0,1fr); } .ldc-page__toc{ position:static; } .ldc-panneau{ padding:22px 20px; } }

/* ---- auteur ---- */
.ldc-auteur-page__in{ display:grid; grid-template-columns:200px minmax(0,1fr); gap:34px; align-items:center; }
.ldc-auteur-page__role{ margin:0 0 12px; font:700 19px/1.3 var(--t-texte); color:var(--sapin); }
@media (max-width:700px){ .ldc-auteur-page__in{ grid-template-columns:minmax(0,1fr); } .ldc-auteur-page .ldc-portrait--grand{ width:140px; height:140px; margin-inline:0; } }

/* ---- contact : formulaire compact, entier dans 390 × 700 ---- */
.ldc-contact{ padding:36px 0 56px; }
.ldc-contact__grille{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,520px); gap:clamp(28px,5vw,72px); align-items:start; }
.ldc-contact__aide{ list-style:none; margin:26px 0 0; padding:0; display:grid; gap:14px; }
.ldc-contact__aide li{ display:flex; gap:14px; align-items:flex-start; font-size:17px; line-height:1.5; }
.ldc-contact__aide .ldc-picto{ flex:none; color:var(--sapin); margin-top:2px; }
.ldc-contact__form{ display:grid; gap:12px; padding:24px; background:#fff; border:1px solid var(--filet); border-radius:var(--r-carte); box-shadow:var(--ombre); }
.ldc-contact__form .ldc-champ input, .ldc-contact__form .ldc-champ select{ height:56px; }
.ldc-contact__retour{ margin:0; font-weight:700; }
.ldc-contact__retour:empty{ display:none; }
.ldc-contact__retour.est-erreur{ color:#8A1C14; }
.ldc-contact__retour.est-ok{ color:var(--sapin); }
@media (max-width:900px){
	.ldc-contact{ padding:12px 0 24px; }
	.ldc-contact__grille{ grid-template-columns:minmax(0,1fr); gap:10px; }
	.ldc-contact__intro .ldc-h1{ font-size:27px; margin-bottom:2px; }
	.ldc-contact__intro .ldc-sec__chapo{ display:none; }
	.ldc-contact__aide{ display:none; }
	.ldc-contact__form{ gap:8px; padding:14px; box-shadow:none; }
	.ldc-contact__form .ldc-champ input, .ldc-contact__form .ldc-champ select{ height:48px; min-height:48px; padding:8px 14px; }
	.ldc-contact__form .ldc-champ textarea{ min-height:72px; }
	.ldc-contact__form .ldc-champ > label{ font-size:14.5px; }
	.ldc-contact__form .ldc-accord{ font-size:14px; line-height:1.3; }
	.ldc-contact__form .ldc-btn{ min-height:54px; }
}


/* ---- catalogue : devanture + rayons ---- */
.ldc-devanture{ position:relative; padding:26px 0 44px; background:var(--verre); color:#EAF4F2; margin-bottom:22px; }
.ldc-devanture::after{ content:""; position:absolute; left:0; right:0; bottom:-12px; height:12px; background:repeating-linear-gradient(90deg, rgba(255,255,255,.85) 0 2px, transparent 2px 14px) left top/100% 7px no-repeat, repeating-linear-gradient(90deg, rgba(255,255,255,.95) 0 2px, transparent 2px 70px) left top/100% 12px no-repeat, var(--verre); }
.ldc-devanture__in{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,420px); gap:48px; align-items:center; }
.ldc-devanture .ldc-h1{ color:#fff; } .ldc-devanture .ldc-sec__chapo, .ldc-devanture .sbt-fil-ariane, .ldc-devanture .sbt-fil-ariane a{ color:#D9E6DE; }
.ldc-sauts{ list-style:none; margin:24px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:10px; }
.ldc-sauts a{ display:inline-flex; align-items:center; gap:10px; min-height:52px; padding:0 20px; border-radius:999px; background:#fff; color:var(--ardoise); font-weight:800; text-decoration:none; box-shadow:0 12px 22px -14px rgba(0,0,0,.6); }
.ldc-sauts a:hover{ background:var(--paille); }
.ldc-sauts .ldc-picto{ color:var(--lie); }
@media (max-width:960px){ .ldc-devanture__in{ grid-template-columns:minmax(0,1fr); gap:26px; } }
.ldc-rayon{ scroll-margin-top:100px; }
.ldc-rayon + .ldc-rayon{ padding-top:0; }
.ldc-rayon__tete{ display:flex; align-items:flex-start; gap:18px; margin-bottom:26px; }
.ldc-rayon__picto{ flex:none; display:flex; align-items:center; justify-content:center; width:64px; height:64px; border-radius:18px; background:var(--paille); color:var(--ardoise); }

/* ---- fiche produit : photo longée d'une graduation, étiquette de cuve ---- */
.ldc-fiche{ padding:38px 0 10px; }
.ldc-fiche__in{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(30px,4vw,64px); align-items:start; }
.ldc-fiche__visuel{ position:relative; min-width:0; margin-left:34px; }
.ldc-fiche__graduation{ position:absolute; left:-30px; top:8%; height:84%; width:auto; z-index:3; filter:drop-shadow(0 10px 14px rgba(23,58,46,.35)); }
.ldc-fiche__photo{ position:relative; aspect-ratio:3/2; max-height:calc(100vh - 220px); width:100%; border-radius:var(--r-photo); overflow:hidden; box-shadow:var(--ombre-forte); background:var(--verre-clair); }
.ldc-fiche__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.ldc-fiche__ruban{ position:absolute; right:-12px; bottom:28px; z-index:3; transform:rotate(-3deg); }
.ldc-fiche__texte{ min-width:0; }
.ldc-fiche__texte .sbt-fil-ariane{ padding-top:0; }
.ldc-fiche__titre{ margin:14px 0 0; }
.ldc-fiche__chapo{ margin:16px 0 0; font-size:20px; line-height:1.55; color:var(--doux); }
.ldc-etiquette-cuve{ position:relative; margin:24px 0 0; padding:20px 22px 20px 34px; display:grid; grid-template-columns:minmax(0,1fr); gap:14px; background:#fff; border-radius:18px; box-shadow:var(--ombre); overflow:hidden; }
.ldc-etiquette-cuve::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:12px; background:repeating-linear-gradient(180deg, transparent 0 11px, rgba(255,255,255,.75) 11px 13px), var(--verre); }
.ldc-etiquette-cuve div{ min-width:0; }
.ldc-etiquette-cuve dt{ display:flex; align-items:center; gap:8px; font-weight:800; font-size:15.5px; color:var(--lie); }
.ldc-etiquette-cuve dd{ margin:4px 0 0; font-size:16.5px; line-height:1.5; color:var(--encre); }
.ldc-achat{ margin-top:24px; display:flex; flex-direction:column; gap:10px; align-items:flex-start; }
.ldc-achat__btn{ background:#E4E7E5; color:#3C4743; box-shadow:inset 0 0 0 2px #C3CBC7; }
.ldc-achat__note{ margin:0; font-size:15.5px; color:var(--doux); max-width:40em; }
.ldc-fiche__suite{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,380px); gap:40px; align-items:start; padding-block:48px 64px; }
.ldc-fiche__description{ min-width:0; padding:clamp(22px,3vw,40px); background:#fff; border-radius:var(--r-photo); box-shadow:var(--ombre); }
.ldc-fiche__prevenir{ position:sticky; top:110px; }
@media (max-width:960px){ .ldc-fiche__in, .ldc-fiche__suite{ grid-template-columns:minmax(0,1fr); } .ldc-fiche__prevenir{ position:static; } .ldc-fiche{ padding-top:24px; } .ldc-fiche__visuel{ margin-left:26px; } .ldc-fiche__graduation{ left:-26px; } }
@media (max-width:520px){ .ldc-etiquette-cuve{ grid-template-columns:minmax(0,1fr); } }

/* ---- page du carnet : registre de cave en deux colonnes ---- */
.ldc-registre-tete{ position:relative; padding:30px 0 40px; background:var(--tuffeau); background-image:var(--graduee); overflow:hidden; }
.ldc-registre-tete__in{ display:grid; grid-template-columns:64px minmax(0,1fr); gap:24px; align-items:center; }
.ldc-registre-tete__graduation{ height:190px; width:auto; }
.ldc-registre-tete__texte .ldc-h1{ max-width:20em; }
@media (max-width:640px){ .ldc-registre-tete__in{ grid-template-columns:minmax(0,1fr); } .ldc-registre-tete__graduation{ display:none; } }
.ldc-registre{ padding-top:clamp(30px,4vw,48px); }
.ldc-registre__colonnes{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(24px,3vw,40px); align-items:start; }
.ldc-registre__colonne{ min-width:0; scroll-margin-top:100px; }
.ldc-registre__entete{ display:flex; flex-direction:column; gap:6px; padding:0 0 16px 18px; border-left:6px solid var(--lie); margin-bottom:20px; }
.ldc-registre__entete a{ color:var(--ardoise); text-decoration:none; } .ldc-registre__entete a:hover{ color:var(--lie); }
.ldc-registre__entete p{ margin:0; color:var(--doux); font-size:16.5px; line-height:1.5; }
.ldc-registre__une{ display:flex; flex-direction:column; background:#fff; border-radius:var(--r-carte); box-shadow:var(--ombre); overflow:hidden; text-decoration:none; color:var(--encre); transition:transform .2s; }
.ldc-registre__une:hover{ transform:translateY(-3px); color:var(--encre); }
.ldc-registre__img{ display:block; width:100%; aspect-ratio:16/9; height:auto; object-fit:cover; }
.ldc-registre__une-corps{ display:flex; flex-direction:column; gap:8px; padding:20px 22px 22px; }
.ldc-registre__une-titre{ font:800 24px/1.2 var(--t-titre); color:var(--ardoise); }
.ldc-registre__une:hover .ldc-registre__une-titre{ color:var(--lie); }
.ldc-registre__une-extrait{ font-size:16.5px; line-height:1.55; color:var(--doux); }
.ldc-registre__lignes{ list-style:none; margin:14px 0 0; padding:0; display:grid; gap:10px; counter-reset:reg; }
.ldc-registre__lignes li{ counter-increment:reg; }
.ldc-registre__ligne{ position:relative; display:grid; grid-template-columns:96px minmax(0,1fr); gap:16px; align-items:center; padding:10px 14px 10px 10px; background:#fff; border-radius:14px; box-shadow:0 12px 26px -20px rgba(23,58,46,.6); text-decoration:none; color:var(--encre); }
.ldc-registre__ligne:hover{ color:var(--lie); }
.ldc-registre__mini{ width:96px; height:72px; object-fit:cover; border-radius:10px; display:block; }
.ldc-registre__ligne-titre{ display:block; font-weight:800; font-size:17.5px; line-height:1.3; }
@media (max-width:900px){ .ldc-registre__colonnes{ grid-template-columns:minmax(0,1fr); } }
.ldc-registre-prevenir{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,420px); gap:40px; align-items:center; }
.ldc-sec__chapo--clair{ color:#D9E6DE; }
.ldc-lien-fort--clair{ color:#fff; } .ldc-lien-fort--clair:hover{ color:var(--paille); }
@media (max-width:900px){ .ldc-registre-prevenir{ grid-template-columns:minmax(0,1fr); } }

/* ---- qui sommes-nous ---- */
.ldc-apropos-tete{ position:relative; padding:30px 0 54px; background:var(--verre); color:#EAF4F2; margin-bottom:22px; }
.ldc-apropos-tete::after{ content:""; position:absolute; left:0; right:0; bottom:-12px; height:12px; background:repeating-linear-gradient(90deg, rgba(255,255,255,.85) 0 2px, transparent 2px 14px) left top/100% 7px no-repeat, repeating-linear-gradient(90deg, rgba(255,255,255,.95) 0 2px, transparent 2px 70px) left top/100% 12px no-repeat, var(--verre); }
.ldc-apropos-tete__in{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:48px; align-items:center; }
.ldc-apropos-tete .ldc-h1{ color:#fff; } .ldc-apropos-tete .ldc-sec__chapo, .ldc-apropos-tete .sbt-fil-ariane, .ldc-apropos-tete .sbt-fil-ariane a{ color:#D9E6DE; }
.ldc-apropos-tete__visuel{ position:relative; margin-left:34px; }
.ldc-apropos-tete__graduation{ position:absolute; left:-30px; top:8%; height:84%; width:auto; z-index:2; }
.ldc-apropos-tete__img{ display:block; width:100%; height:clamp(260px,32vw,400px); object-fit:cover; border-radius:var(--r-photo); box-shadow:var(--ombre-forte); }
@media (max-width:900px){ .ldc-apropos-tete__in{ grid-template-columns:minmax(0,1fr); gap:28px; } }
.ldc-engagement{ padding:26px 24px; background:#fff; border-radius:var(--r-carte); box-shadow:var(--ombre); border-top:6px solid var(--paille); }
.ldc-engagement__picto{ display:inline-flex; width:58px; height:58px; align-items:center; justify-content:center; border-radius:16px; background:var(--verre-clair); color:var(--verre); margin-bottom:14px; }
.ldc-engagement h3{ font-size:20px; margin-bottom:8px; color:var(--ardoise); }
.ldc-engagement p{ margin:0; color:var(--doux); font-size:16.5px; line-height:1.55; }
.ldc-membre{ display:flex; align-items:center; gap:18px; padding:18px 20px; background:#fff; border-radius:var(--r-carte); box-shadow:var(--ombre); }
.ldc-portrait{ display:block; flex:none; border-radius:50%; background:#fff; }
.ldc-membre__nom{ font-size:20px; } .ldc-membre__nom a{ color:var(--ardoise); text-decoration:none; } .ldc-membre__nom a:hover{ color:var(--lie); }
.ldc-membre__role{ margin:4px 0 0; color:var(--doux); font-size:15.5px; }

/* ---- notre équipe ---- */
.ldc-equipe__liste{ display:grid; gap:26px; }
.ldc-equipier{ display:grid; grid-template-columns:160px minmax(0,1fr); gap:34px; align-items:start; padding:30px; background:#fff; border-radius:var(--r-photo); box-shadow:var(--ombre); }
.ldc-equipier__portrait{ box-shadow:0 0 0 6px var(--paille-clair); }
.ldc-equipier__role{ margin:6px 0 12px; font-weight:800; color:var(--lie); }
.ldc-equipier p{ max-width:68ch; color:var(--encre); }
.ldc-equipier .ldc-etiquettes{ margin-bottom:14px; }
@media (max-width:700px){ .ldc-equipier{ grid-template-columns:minmax(0,1fr); gap:16px; padding:22px; } .ldc-equipier__portrait{ width:110px; height:110px; } }
.ldc-portrait--grand{ width:200px; height:200px; box-shadow:0 0 0 6px rgba(255,255,255,.4); }

/* ---- 404 ---- */
.ldc-404__tuiles{ margin-top:30px; }
.ldc-tuile-lien{ display:flex; flex-direction:column; align-items:center; gap:10px; padding:24px; background:#fff; border-radius:var(--r-carte); box-shadow:var(--ombre); color:var(--ardoise); font-weight:800; text-decoration:none; }
.ldc-tuile-lien .ldc-picto{ color:var(--lie); }
.ldc-signature{ display:flex; align-items:center; gap:14px; margin-top:26px; padding-top:20px; border-top:2px solid var(--verre-clair); font-size:16px; color:var(--doux); }
.ldc-signature p{ margin:0; }
.ldc-signature__nom{ font-weight:800; color:var(--ardoise); }
.ldc-contact__grille{ align-items:stretch; }
.ldc-contact__intro{ display:flex; flex-direction:column; }
.ldc-contact__photo{ position:relative; flex:1; min-height:180px; margin:24px 0 0; border-radius:var(--r-photo); overflow:hidden; box-shadow:var(--ombre); }
.ldc-contact__photo img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
@media (max-width:900px){ .ldc-contact__grille{ display:flex; flex-direction:column; } .ldc-contact__intro{ display:contents; } .ldc-contact__intro .ldc-h1{ order:1; } .ldc-contact__form{ order:2; } .ldc-contact__photo{ order:3; flex:none; height:140px; min-height:0; margin-top:8px; } }
/* 06 · article : blocs figés (single, rail, sommaire, encadrés, FAQ, auteur) habillés « La dame-jeanne et le mustimètre » */

/* ---- en-tête « fiche de cuve » : bande verre de bouteille au filet gradué, photo arrondie alignée sur le titre,
   longée d'une graduation de mustimètre, repère de niveau (rubrique) posé à cheval ---- */
.sbt-article-entete.ldc-cuve-entete{ position:relative; max-width:none; margin:0; padding:0 0 22px; background:var(--verre-fonce); color:#fff; }
.sbt-article-entete.ldc-cuve-entete::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:12px; background:repeating-linear-gradient(90deg, rgba(255,255,255,.55) 0 2px, transparent 2px 14px) left bottom/100% 6px no-repeat, repeating-linear-gradient(90deg, rgba(255,255,255,.8) 0 2px, transparent 2px 70px) left bottom/100% 12px no-repeat; pointer-events:none; }
.ldc-cuve-entete__in{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,440px); gap:calc(var(--sb-gouttiere) + 30px); align-items:center; padding-block:10px 28px; }
.ldc-cuve-entete__texte{ min-width:0; }
.ldc-cuve-entete .sbt-fil-ariane, .ldc-cuve-entete .sbt-fil-ariane a{ color:#D9E6DE; }
.sbt-article-pastille{ margin:0; }
.ldc-cuve-entete h1{ margin:16px 0 0; color:#fff; font-size:clamp(32px,3.4vw,50px); line-height:1.1; font-weight:800; }
.ldc-cuve-entete .sbt-article-chapo{ margin-top:18px; color:#E6EEE8; }
.sbt-article-chapo{ margin:0; font-family:var(--t-texte); font-style:normal; font-size:clamp(18px,1.5vw,21px); line-height:1.55; color:var(--texte); max-width:38em; }
.sbt-article-meta{ display:flex; align-items:center; flex-wrap:wrap; gap:6px 12px; margin-top:22px; font-size:16px; color:#D9E6DE; }
.sbt-article-meta img{ width:44px; height:44px; border-radius:50%; object-fit:cover; background:#fff; box-shadow:0 0 0 3px var(--paille); }
.sbt-article-meta-auteur{ color:#fff; font-weight:700; text-decoration:none; }
.sbt-article-meta-auteur:hover{ text-decoration:underline; color:#fff; }
.ldc-cuve-entete__photo{ position:relative; aspect-ratio:16/10; border-radius:var(--r-photo); min-width:0; box-shadow:0 30px 50px -24px rgba(0,0,0,.6); }
.ldc-cuve-entete__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; border-radius:inherit; }
.ldc-cuve-entete__graduation{ position:absolute; left:-30px; top:6%; height:88%; width:auto; z-index:2; }
.ldc-cuve-entete .ldc-graduation__tige{ fill:rgba(255,255,255,.14); stroke:rgba(255,255,255,.35); }
.ldc-cuve-entete .ldc-graduation__trait{ stroke:#fff; } .ldc-cuve-entete .ldc-graduation__chiffre{ display:none; }
.ldc-cuve-entete__niveau{ position:absolute; right:18px; bottom:-16px; z-index:3; display:inline-flex; align-items:center; gap:8px; min-height:36px; padding:6px 16px 6px 12px; border-radius:999px; background:var(--paille); color:var(--verre-fonce); font:800 15px/1.2 var(--t-texte); box-shadow:0 12px 22px -12px rgba(0,0,0,.6); max-width:calc(100% - 36px); }
.ldc-cuve-entete__niveau::before{ content:""; width:18px; height:5px; border-radius:3px; background:var(--lie); }
@media (max-width:900px){
	.ldc-cuve-entete__in{ grid-template-columns:minmax(0,1fr); gap:22px; padding-bottom:34px; }
	.ldc-cuve-entete__photo{ aspect-ratio:16/9; margin-left:26px; }
	.ldc-cuve-entete__graduation{ left:-26px; }
}
.ldc-apropos-tete .ldc-graduation__tige{ fill:rgba(255,255,255,.14); stroke:rgba(255,255,255,.35); }
.ldc-apropos-tete .ldc-graduation__trait{ stroke:#fff; } .ldc-apropos-tete .ldc-graduation__chiffre{ fill:#fff; }

/* ---- grille corps + rail : minmax(0,1fr) 340px, gouttière 44 px, jamais space-between ---- */
.sbt-article-mise-en-page{
	display:grid; grid-template-columns:minmax(0,1fr) var(--sb-rail); column-gap:var(--sb-gouttiere); row-gap:var(--sb-gouttiere);
	max-width:calc(var(--sb-conteneur) + 2 * var(--sb-gouttiere)); margin-inline:auto; padding:40px var(--sb-gouttiere) 64px;
	align-items:start; justify-content:start;
}
@media (max-width:1080px){
	.sbt-article-mise-en-page{ grid-template-columns:minmax(0,1fr); padding-top:28px; padding-bottom:40px; }
	.sbt-article-principal, .sbt-rail{ min-width:0; }
}
.sbt-article-principal{ min-width:0; padding:clamp(22px,3.6vw,48px); background:#fff; border:1px solid var(--filet); border-radius:var(--r-photo); box-shadow:var(--ombre); }

/* ---- corps de texte : 18 px / 1,65, lignes ≤ 72 caractères ---- */
.sbt-article-corps{ font:400 18px/1.65 var(--t-texte); color:var(--texte); max-width:72ch; margin-inline:auto; }
.sbt-article-corps > *:first-child{ margin-top:0; }
.sbt-article-corps h2{ margin:2em 0 .6em; font-size:clamp(25px,2.2vw,32px); line-height:1.2; }
.sbt-article-corps h2::before{ content:""; display:block; width:56px; height:8px; margin-bottom:14px; border-radius:5px; background:var(--laiton); }
.sbt-article-corps h3{ margin:1.7em 0 .45em; font:600 clamp(20px,1.7vw,23px)/1.28 var(--t-titre); }
.sbt-article-corps p{ margin:0 0 1.3em; }
.sbt-article-corps a{ color:var(--sapin); }
.sbt-article-corps strong{ color:var(--ardoise); }
.sbt-article-corps img{ border-radius:var(--r-photo); margin-block:1.6em; width:100%; height:auto; }
.sbt-article-corps figure{ margin:1.6em 0; }
.sbt-article-corps figcaption{ margin-top:-.8em; font-size:15px; color:var(--doux); }
.sbt-article-corps blockquote{
	margin:1.8em 0; padding:20px 26px; border-left:8px solid var(--laiton); background:var(--sauge); border-radius:0 var(--r-carte) var(--r-carte) 0;
	font-style:normal; font-size:19px; color:var(--ardoise);
}
.sbt-article-corps blockquote p:last-child{ margin-bottom:0; }
/* listes : jamais de puces brutes — pastilles laiton et numéros */
.sbt-article-corps ul, .sbt-article-corps ol{ list-style:none; margin:0 0 1.4em; padding:0; display:grid; gap:10px; }
.sbt-article-corps li{ position:relative; padding-left:36px; }
.sbt-article-corps ul > li::before{
	content:""; position:absolute; left:2px; top:.45em; width:20px; height:20px; border-radius:50%;
	background:var(--laiton) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231E2B45' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 13px no-repeat;
}
.sbt-article-corps ol{ counter-reset:bbn; }
.sbt-article-corps ol > li{ counter-increment:bbn; }
.sbt-article-corps ol > li::before{ content:counter(bbn); position:absolute; left:0; top:.15em; width:28px; height:28px; border-radius:50%; background:var(--ardoise); color:#fff; font:700 15px/28px var(--t-texte); text-align:center; }
/* tableaux : défilables, lisibles */
.sbs_tableau{ overflow-x:auto; margin:1.8em 0; border:1px solid var(--filet); border-radius:var(--r-carte); -webkit-overflow-scrolling:touch; }
.sbs_tableau table{ width:100%; min-width:520px; border-collapse:collapse; font-size:16.5px; line-height:1.45; }
.sbs_tableau th{ background:var(--ardoise); color:#fff; text-align:left; font-weight:700; padding:13px 16px; }
.sbs_tableau td{ padding:12px 16px; border-top:1px solid var(--filet); vertical-align:top; }
.sbs_tableau tbody tr:nth-child(even) td{ background:var(--lin); }
.sbs_tableau td:first-child{ font-weight:700; color:var(--ardoise); }

/* ---- rail collant : sommaire + mini-formulaire, UN SEUL bloc ----
   ⛔ jamais de overflow-y ni de max-height sur le rail : il accompagne toute la lecture. */
.sbt-rail{
	position:sticky; top:96px; align-self:start; display:flex; flex-direction:column; gap:0; padding:0; border:1px solid var(--filet);
	background:#fff; border-radius:var(--r-carte); box-shadow:var(--ombre);
}
.sbt-rail-carte{ background:transparent; border:0; border-radius:0; padding:20px 22px; }
.sbt-rail-carte--sommaire{ padding-bottom:16px; }
.ldc-rail-boutique{ order:-1; background:var(--sauge); border-bottom:1px solid var(--filet); border-radius:var(--r-carte) var(--r-carte) 0 0; padding:18px 22px 16px; }
.sbt-rail-carte--sommaire{ border-radius:0 0 var(--r-carte) var(--r-carte); }
.sbt-rail .sbt-sommaire a, .sbt-rail .sbt-sommaire li{ font-size:15px; line-height:1.3; }
.ldc-rail-boutique__titre{ margin:0 0 4px; font:700 20px/1.25 var(--t-titre); color:var(--ardoise); }
.ldc-rail-boutique__sous{ margin:0 0 10px; font-size:15px; line-height:1.4; color:var(--doux); }
.ldc-rail-tuiles{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.ldc-rail-tuiles .ldc-tuile-mini{ min-height:68px; font-size:15.5px; padding:6px; }
@media (max-width:1080px){
	.sbt-rail{ position:static; margin-top:0; }
	.sbt-rail-carte--sommaire{ display:none; }
	.ldc-rail-tuiles{ grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:640px){ .ldc-rail-tuiles{ grid-template-columns:1fr 1fr; } }

/* ---- sommaire ---- */
.sbt-sommaire{ background:transparent; border:0; border-radius:0; padding:0; }
.sbt-sommaire-titre{ display:flex; align-items:center; justify-content:space-between; min-height:30px; font:700 20px/1.25 var(--t-titre); color:var(--ardoise); cursor:pointer; list-style:none; }
.sbt-sommaire-titre::-webkit-details-marker{ display:none; }
.sbt-sommaire ol{ list-style:none; margin:12px 0 0; padding:0; display:flex; flex-direction:column; gap:2px; }
.sbt-sommaire li{ padding:0; }
.sbt-sommaire li::before{ display:none; }
.sbt-sommaire li a{ display:flex; align-items:center; gap:10px; min-width:0; min-height:36px; padding:4px 8px; margin-inline:-8px; border-radius:10px; font-size:16px; line-height:1.3; color:var(--texte); text-decoration:none; }
.sbt-sommaire li a:hover{ background:var(--sauge); color:var(--ardoise); text-decoration:none; }
.sbt-sommaire li a.is-actif{ background:var(--sauge); color:var(--ardoise); font-weight:700; box-shadow:inset 4px 0 0 var(--laiton); }
.sbt-sommaire-num{ flex:none; width:26px; height:26px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--sauge); color:var(--ardoise); font:700 13px/1 var(--t-texte); }
.sbt-sommaire li a.is-actif .sbt-sommaire-num{ background:var(--ardoise); color:#fff; }
.sbt-sommaire-libelle{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.sbt-sommaire-mobile{ display:none; }
@media (max-width:1080px){
	.sbt-sommaire-mobile{ display:block; margin-bottom:24px; }
	.sbt-sommaire-mobile .sbt-sommaire{ padding:14px 18px; background:var(--sauge); border-radius:var(--r-carte); }
	.sbt-sommaire-mobile .sbt-sommaire-libelle{ white-space:normal; }
	.sbt-sommaire-mobile .sbt-sommaire li a:hover{ background:#fff; }
	.sbt-sommaire-mobile .sbt-sommaire-num{ background:#fff; }
}

/* ---- encadrés : points à retenir, le saviez-vous ---- */
.sbt-encadre{ margin-block:2em; border-radius:var(--r-photo); max-width:none; }
.sbt-encadre-titre{ margin:0 0 12px; font:700 20px/1.25 var(--t-titre); text-transform:none; letter-spacing:0; }
.sbt-encadre--retenir{ background:var(--ardoise); color:#fff; padding:28px 30px; }
.sbt-encadre--retenir .sbt-encadre-titre{ color:var(--laiton); }
.sbt-retenir-liste, .sbt-article-corps .sbt-retenir-liste{ list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.sbt-retenir-liste li, .sbt-article-corps .sbt-retenir-liste li{ position:relative; margin:0; padding-left:38px; text-indent:0; font-size:17.5px; line-height:1.55; color:#fff; counter-increment:none; }
.sbt-retenir-liste li::before, .sbt-article-corps .sbt-retenir-liste li::before{
	content:""; position:absolute; left:0; top:.15em; width:26px; height:26px; border-radius:50%; font-size:0;
	background:var(--laiton) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231E2B45' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 15px no-repeat;
}
.sbt-encadre--saviez{ display:grid; grid-template-columns:52px minmax(0,1fr); gap:6px 16px; align-items:start; padding:22px 26px; background:var(--sauge); border-left:8px solid var(--laiton); border-radius:0 var(--r-photo) var(--r-photo) 0; }
.sbt-encadre--saviez::before{
	content:"?"; grid-row:1 / span 2; width:52px; height:52px; border-radius:14px; display:flex; align-items:center; justify-content:center;
	background:var(--sapin); color:#fff; font:700 26px/1 var(--t-titre);
}
.sbt-encadre--saviez .sbt-encadre-titre{ grid-column:2; margin:0; color:var(--ardoise); }
.sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column:2; margin:0; font-size:18px; line-height:1.55; color:var(--ardoise); }
@media (max-width:620px){
	.sbt-encadre--saviez{ grid-template-columns:minmax(0,1fr); padding:20px; }
	.sbt-encadre--saviez::before{ grid-row:1; }
	.sbt-encadre--saviez .sbt-encadre-titre, .sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column:1; }
	.sbt-encadre--retenir{ padding:22px 20px; }
}

/* ---- sources en carte ---- */
.ldc-sources{ margin:2.4em 0 0; padding:26px 28px; background:var(--lin); border:1px solid var(--filet); border-radius:var(--r-carte); }
.sbt-article-corps .ldc-sources h2{ margin:0 0 .6em; font-size:22px; }
.sbt-article-corps .ldc-sources h2::before{ width:40px; height:6px; margin-bottom:10px; }
.ldc-sources ul, .ldc-sources ol{ gap:8px; margin:0; font-size:16px; line-height:1.5; }
.ldc-sources p{ font-size:16px; margin-bottom:.8em; }
.ldc-sources li{ padding-left:30px; }

/* ---- FAQ en accordéon (natif details/summary) ---- */
.sbt-faq{ margin:2.6em 0; padding:26px; border-radius:var(--r-photo); background:var(--sauge); border:1px solid var(--filet); }
.sbt-faq-liste{ display:grid; gap:10px; }
.sbt-faq-liste details{ background:#fff; border:2px solid var(--filet) !important; border-radius:14px; padding:0 !important; transition:border-color .25s ease, box-shadow .25s ease; }
.sbt-faq-liste details[open]{ border-color:var(--sapin) !important; box-shadow:var(--ombre); }
.sbt-faq-liste summary{
	list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:60px; padding:14px 18px;
	font:700 18px/1.4 var(--t-texte); color:var(--ardoise);
}
.sbt-faq-liste summary::-webkit-details-marker{ display:none; }
.sbt-faq-liste summary::after{
	content:""; flex:none; width:34px; height:34px; border-radius:50%; transition:transform .3s ease;
	background:var(--sauge) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314615A' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 16px no-repeat;
}
.sbt-faq-liste details[open] summary::after{ transform:rotate(135deg); }
.sbt-faq-liste summary:hover{ color:var(--sapin); }
.sbt-faq-reponse{ padding:0 18px 18px; font-size:17px; line-height:1.65; color:var(--texte); }
.sbt-faq-reponse p{ margin:0 0 12px; }
.sbt-faq-reponse p:last-child{ margin-bottom:0; }
@media (max-width:760px){ .sbt-faq{ padding:16px; } }

/* ---- boîte auteur ---- */
.sbt-auteur{ display:grid; grid-template-columns:120px minmax(0,1fr); gap:26px; margin:2.6em 0 0; padding:28px; border-radius:var(--r-photo); background:var(--sauge); border:1px solid var(--filet); }
.sbt-auteur-photo img{ width:120px; height:120px; border-radius:50%; object-fit:cover; background:#fff; box-shadow:0 0 0 5px #fff, 0 0 0 9px var(--laiton); }
.sbt-auteur-sur{ margin:0 0 2px; font-size:15px; text-transform:none; letter-spacing:0; color:var(--doux); }
.sbt-auteur-nom{ margin:0 0 4px; font:700 24px/1.2 var(--t-titre); }
.sbt-auteur-nom a{ color:var(--ardoise); text-decoration:none; }
.sbt-auteur-nom a:hover{ text-decoration:underline; }
.sbt-auteur-role{ margin:0 0 12px; font:700 16px/1.4 var(--t-texte); color:var(--sapin); text-transform:none; letter-spacing:0; }
.sbt-auteur-bio{ margin:0 0 16px; font-size:17px; line-height:1.6; color:var(--texte); }
.sbt-auteur-chiffres{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:16px; }
.sbt-auteur-chiffres span{ background:#fff; border-radius:12px; padding:8px 12px; font-size:15px; color:var(--doux); }
.sbt-auteur-chiffres b{ color:var(--ardoise); margin-right:4px; }
.sbt-auteur-der{ margin-bottom:18px; }
.sbt-auteur-der p{ margin:0 0 6px; font-size:15px; text-transform:none; letter-spacing:0; color:var(--doux); }
.sbt-auteur-der a{ display:block; padding:8px 0; font-size:16px; font-weight:700; color:var(--ardoise); text-decoration:none; border-bottom:1px dashed var(--filet-fort); }
.sbt-auteur-der a:hover{ color:var(--sapin); }
.sbt-auteur-actions{ display:flex; flex-wrap:wrap; gap:10px; }
@media (max-width:700px){ .sbt-auteur{ grid-template-columns:minmax(0,1fr); padding:22px 18px; } .sbt-auteur-photo img{ width:96px; height:96px; } }

/* ---- « À lire aussi » : section pleine largeur, 3 cartes photo ---- */
.ldc-alire{ margin:0; padding:8px 0 72px; margin-top:0; border:0; }
.ldc-alire .ldc-h2{ margin-bottom:22px; }
@media (max-width:700px){ .ldc-alire{ padding-bottom:44px; } }

/* ---- infographies du socle (shortcodes [sbs_…]) : éléments personnalisés stylés ici ---- */
sbs-lieu, sbs-tarifs, sbs-frise, sbs-jauges{ display:block; margin:2em 0; padding:22px 24px; background:var(--lin); border:1px solid var(--filet); border-radius:var(--r-carte); }
.sbs_tarifs_titre, .sbs_frise_titre, .sbs_jauges_titre, .sbs_lieu_nom{ display:block; margin-bottom:12px; font:700 21px/1.25 var(--t-titre); color:var(--ardoise); }
sbs-tarif{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px 16px; align-items:center; padding:12px 0; border-top:1px dashed var(--filet-fort); }
.sbs_tarif_libelle{ font-size:17px; color:var(--texte); }
.sbs_tarif_prix{ font:700 21px/1.1 var(--t-titre); color:var(--sapin); }
.sbs_tarif_barre{ grid-column:1 / -1; width:100%; height:10px; border:0; border-radius:5px; background:var(--sauge); }
.sbs_tarif_barre::-webkit-meter-bar{ background:var(--sauge); border:0; border-radius:5px; height:10px; }
.sbs_tarif_barre::-webkit-meter-optimum-value, .sbs_tarif_barre::-webkit-meter-suboptimum-value, .sbs_tarif_barre::-webkit-meter-even-less-good-value{ background:var(--sapin); border-radius:5px; }
.sbs_tarif_barre::-moz-meter-bar{ background:var(--sapin); border-radius:5px; }
.sbs_tarifs_notes, .sbs_source{ display:block; margin-top:12px; font-size:15px; color:var(--doux); }
sbs-frise{ padding-left:34px; border-left:8px solid var(--laiton); border-radius:4px 18px 18px 4px; }
sbs-etape{ position:relative; display:block; padding-bottom:18px; }
sbs-etape::before{ content:""; position:absolute; left:-47px; top:6px; width:18px; height:18px; border-radius:50%; background:var(--ardoise); box-shadow:0 0 0 4px var(--lin); }
.sbs_etape_date{ display:block; font:700 15px/1.3 var(--t-texte); color:var(--sapin); }
.sbs_etape_titre{ display:block; font:600 19px/1.3 var(--t-titre); color:var(--ardoise); }
.sbs_etape_desc{ display:block; font-size:16.5px; line-height:1.5; color:var(--doux); }
sbs-jauges{ display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:14px; }
sbs-jauges > .sbs_jauges_titre, sbs-jauges > .sbs_source{ grid-column:1 / -1; margin:0; }
sbs-jauge{ display:flex; flex-direction:column; gap:2px; padding:16px; background:#fff; border-radius:14px; border:1px solid var(--filet); }
.sbs_jauge_valeur{ font:700 34px/1.1 var(--t-titre); color:var(--sapin); }
.sbs_jauge_libelle{ order:-1; font-size:15px; font-weight:700; color:var(--ardoise); }
.sbs_jauge_unite{ font-size:15px; color:var(--doux); }
.sbs_lieu_adresse{ display:block; font-style:normal; font-size:17px; margin-bottom:8px; }
.sbs_lieu_acces{ display:block; font-size:16px; color:var(--doux); }
.sbs_lieu_carte{ display:inline-flex; align-items:center; gap:8px; margin-top:12px; font-weight:700; }
.sbs_icone_repere{ fill:var(--sapin); }

/* rail : mini-formulaire « me prévenir » sous le sommaire (un seul bloc collant) */
.ldc-rail-boutique{ padding:20px 22px 22px; background:var(--verre-clair); }
.ldc-rail-boutique__titre{ font:400 21px/1.2 var(--t-titre); }
.ldc-rail-boutique__form{ display:grid; gap:10px; margin:0; }
.ldc-rail-boutique__form .ldc-btn{ min-height:50px; }

/* « Dans la boutique » : produits de la recette, dans le corps */
.ldc-dans-boutique{ margin:2.2em 0; padding:22px 24px 20px; background:var(--paille-clair); background-image:var(--graduee); border-radius:22px; }
.ldc-dans-boutique__titre{ margin:0 0 14px; font:400 22px/1.2 var(--t-titre); color:var(--ardoise); }
.ldc-dans-boutique__liste{ display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),220px)); gap:14px; margin-bottom:14px; }
.ldc-dans-boutique__produit{ display:flex; flex-direction:column; background:#fff; border-radius:16px; overflow:hidden; text-decoration:none; color:var(--encre); box-shadow:0 12px 24px -16px rgba(23,58,46,.6); }
.ldc-dans-boutique__img{ width:100%; aspect-ratio:4/3; height:auto; object-fit:cover; display:block; margin:0 !important; border-radius:0 !important; }
.ldc-dans-boutique__nom{ padding:10px 12px 2px; font-weight:800; font-size:16px; line-height:1.3; }
.ldc-dans-boutique__etat{ padding:0 12px 12px; font-size:13.5px; font-weight:700; color:var(--lie); }
.ldc-dans-boutique__produit:hover .ldc-dans-boutique__nom{ color:var(--lie); }
.sbt-article-corps figcaption.ldc-dans-boutique__titre{ font:400 22px/1.2 var(--t-titre); color:var(--ardoise); text-align:left; }
.ldc-encadre-repere{ display:block; margin:1.8em 0; padding:20px 24px 18px 26px; background:#fff; border:2px solid var(--paille); border-left:10px solid var(--lie); border-radius:6px 22px 22px 6px; box-shadow:var(--ombre); }
.ldc-encadre-repere .sbt-encadre-titre{ margin:0 0 6px; font:400 20px/1.2 var(--t-titre); color:var(--lie); }
.ldc-encadre-repere p:last-child{ margin:0; font-size:18.5px; line-height:1.55; color:var(--ardoise); font-weight:600; }
.ldc-encadre-savoir{ display:block; margin:1.8em 0; padding:22px 26px; background:var(--verre-clair); border-radius:22px; border-top:6px solid var(--verre); }
.ldc-encadre-savoir .sbt-encadre-titre{ margin:0 0 8px; font:400 21px/1.2 var(--t-titre); color:var(--verre-fonce); }
.ldc-encadre-savoir > :last-child{ margin-bottom:0; }

/* fenêtres basses (1440×780) : le formulaire de la colonne tient entier au-dessus du pli */
@media (min-width:1081px) and (max-height:880px){ .ldc-rail-boutique__sous{ display:none; } .sbt-article-mise-en-page{ padding-top:26px; } .ldc-cuve-entete h1{ font-size:clamp(30px,3vw,44px); } }
/* 08 · pied de page (bloc figé habillé) : verre de bouteille, filet gradué en tête, colonnes équilibrées */
.sbt-footer{ position:relative; margin-top:0; padding-block:clamp(60px,6vw,80px) 22px; background:var(--ardoise); color:#fff; }
.sbt-footer .ldc-filet-pied{ position:absolute; top:0; left:0; right:0; height:12px; background:repeating-linear-gradient(90deg, rgba(255,255,255,.4) 0 2px, transparent 2px 14px) left top/100% 6px no-repeat, repeating-linear-gradient(90deg, var(--paille) 0 2px, transparent 2px 70px) left top/100% 12px no-repeat; }
.sbt-footer a{ color:#D9E6DE; text-decoration:none; }
.sbt-footer a:hover{ color:#fff; text-decoration:underline; }
.sbt-footer a.sbt-btn, .sbt-footer a.sbt-btn:hover{ color:var(--verre-fonce); text-decoration:none; }

.sbt-footer-cta{
	display:flex; align-items:center; justify-content:space-between; gap:20px 32px; flex-wrap:wrap; margin-bottom:34px; padding:26px 30px;
	background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.16); border-radius:var(--r-carte);
}
.sbt-footer-cta .sbt-t3{ margin:0 0 4px; font:700 24px/1.25 var(--t-titre); color:#fff; }
.sbt-footer-cta p{ margin:0; max-width:48ch; color:#D9E6DE; font-size:17px; line-height:1.5; }
.sbt-footer-cta .sbt-btn{ min-height:56px; padding:0 30px; font-size:18px; background:var(--paille); color:#22302B; }
.sbt-footer-cta .sbt-btn:hover{ background:#fff; color:#22302B; }
@media (max-width:600px){ .sbt-footer-cta{ padding:20px; } .sbt-footer-cta .sbt-btn{ width:100%; } }

.sbt-footer-grille{ display:grid; grid-template-columns:1.3fr repeat(3,1fr); gap:32px 40px; padding-bottom:32px; border-bottom:1px solid rgba(255,255,255,.18); }
@media (max-width:980px){ .sbt-footer-grille{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px){ .sbt-footer-grille{ grid-template-columns:minmax(0,1fr); gap:26px; } }
.sbt-footer-colonne .sbt-t4{ margin:0 0 12px; font:700 19px/1.2 var(--t-titre); color:#fff; text-transform:none; letter-spacing:0; }
.sbt-footer-colonne ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:2px; }
.sbt-footer-colonne ul a{ display:flex; align-items:center; min-height:44px; font-size:17px; }
.sbt-footer-logo{ display:flex; align-items:center; gap:12px; margin-bottom:14px; font:700 24px/1 var(--t-titre); color:#fff; }
.sbt-footer-logo img{ width:40px; height:40px; border-radius:10px; }
.sbt-footer-desc{ margin:0; max-width:34ch; color:#D9E6DE; font-size:16.5px; line-height:1.55; }

.sbt-footer-bas{ display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:10px 24px; padding-top:20px; font-size:15px; line-height:1.5; color:#CFE2DF; }
.sbt-footer-bas > span:first-child{ max-width:70ch; }
.sbt-footer-legal{ display:flex; gap:6px 22px; flex-wrap:wrap; }
.sbt-footer-legal a{ display:inline-flex; align-items:center; min-height:44px; color:#fff; font-size:16px; }
/* Listes du corps d'article rendues en blocs (29/10) */
.ldc-liste{list-style:none;margin:1.6rem 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.ldc-liste>li{position:relative;margin:0;padding:16px 18px 16px 54px;background:#fff;border:1px solid #D7E3DF;border-radius:16px;box-shadow:0 10px 24px -18px rgba(23,58,55,.35);line-height:1.55}
.ldc-liste--coches>li::before{content:"";position:absolute;left:16px;top:17px;width:24px;height:24px;border-radius:50%;background:#0E5C5A url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}
.ldc-liste--etapes{counter-reset:bbetape}
.ldc-liste--etapes>li{counter-increment:bbetape}
.ldc-liste--etapes>li::before{content:counter(bbetape);position:absolute;left:14px;top:14px;width:28px;height:28px;border-radius:50%;background:#F2B33D;color:#173A2E;font:700 15px/28px 'Albert Sans',system-ui,sans-serif;text-align:center}
/* Tableaux d'article rendus en cartes comparatives (29/10) */
.ldc-comparatif{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;margin:1.8rem 0}
.ldc-comparatif__carte{background:#fff;border:1px solid #D7E3DF;border-radius:18px;padding:18px 20px;box-shadow:0 14px 30px -20px rgba(23,58,55,.4);border-top:6px solid #F2B33D}
.ldc-comparatif__titre{font:700 19px/1.3 'Albert Sans',system-ui,sans-serif;color:#173A2E;margin:0 0 10px}
.ldc-comparatif dl{margin:0;display:grid;gap:8px}
.ldc-comparatif dl>div{display:grid;gap:2px;padding-top:8px;border-top:1px dashed #D7E3DF}
.ldc-comparatif dt{font-size:14px;color:#4E5C57;font-weight:600}
.ldc-comparatif dd{margin:0;color:#22302B;overflow-wrap:break-word}
[data-grille-voirplus]:not(.ldc-tout) > .ldc-carte:nth-child(n+13){ display:none; }
.entry-content p, .entry-content li, .sbt-corps p, .sbt-corps li, article p, article li{ overflow-wrap:break-word; }
