@font-face{font-family:'Catamaran';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/catamaran-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:'Catamaran';font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/catamaran-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:'League Spartan';font-style:normal;font-weight:700 900;font-display:swap;src:url(../fonts/league-spartan-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:'League Spartan';font-style:normal;font-weight:700 900;font-display:swap;src:url(../fonts/league-spartan-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:'Saira Stencil One';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/saira-stencil-one-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:'Saira Stencil One';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/saira-stencil-one-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}

/*
Theme Name: ag-paliers
Theme URI: https://achat-gros.com/
Description: Le guide de l'achat en gros — l'escalier de cartons, le ruban adhésif imprimé, la cannelure. Mode clair.
Version: 1.0.0
Text Domain: ag-paliers
*/

/* ============ Jetons (DA §2-§4) ============ */
:root{
	--sb-fond:#FBF8F3; --sb-fond-kraft:#EFE2CC; --sb-kraft:#C4955C; --sb-kraft-fonce:#8A6537;
	--sb-encre:#191C28; --sb-encre-douce:#4B5061; --sb-filet:#E2D3BB;
	--sb-action:#E0115F; --sb-action-texte:#C80E55; --sb-action-fonce:#A80C47;
	--sb-porte-revendeurs:#1F5FD1; --sb-porte-particuliers:#23804F; --sb-porte-particuliers-texte:#1D6B42;
	--ag-rose-pale:#FCE4EC; --ag-bleu-pale:#E3ECFC; --ag-vert-pale:#E2F2E8;
	--sb-ombre:0 2px 0 rgba(25,28,40,.06), 0 18px 40px -8px rgba(25,28,40,.18);
	--sb-ombre-forte:0 2px 0 rgba(25,28,40,.08), 0 28px 60px -12px rgba(25,28,40,.32);
	--sb-rayon:14px; --sb-rayon-xl:24px; --sb-rayon-pilule:999px; --sb-rayon-grand:24px;
	--ag-titre:'League Spartan', 'Arial Black', system-ui, sans-serif;
	--ag-texte:'Catamaran', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--ag-marquage:'Saira Stencil One', 'League Spartan', sans-serif;
	--ag-entete-h:72px;
	--ag-gout:clamp(16px, 5.56vw, 80px);
	/* habillage des blocs figés */
	--sb-accent:var(--sb-action); --sb-accent-clair:var(--ag-rose-pale);
	--sb-doux:var(--sb-encre-douce); --sb-surf:var(--sb-fond-kraft); --sb-fond-carte:#FFFFFF;
	--sb-fonce:var(--sb-encre); --sb-sur-fonce:#FBF8F3;
	--sb-titre:var(--ag-titre); --sb-texte:var(--ag-texte);
	--sb-conteneur:1280px; --sb-lecture:740px; --sb-rail:372px; --sb-gouttiere:24px;
}
@media (min-width:1700px){ :root{ --ag-entete-h:76px; } }

/* ============ Base ============ */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-padding-top:calc(var(--ag-entete-h) + 16px); }
[hidden]{ display:none!important; }
body{
	margin:0; background:var(--sb-fond); color:var(--sb-encre);
	font-family:var(--ag-texte); font-size:18px; line-height:1.65; font-variant-numeric:lining-nums;
	-webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
@media (min-width:1700px){ body{ font-size:19px; } }
@media (max-width:767px){ body{ font-size:17px; line-height:1.6; } }
img,svg,video{ max-width:100%; height:auto; display:block; }
a{ color:var(--sb-action-texte); text-underline-offset:3px; text-decoration-thickness:1.5px; }
a:hover{ color:var(--sb-action-fonce); }
h1,h2,h3,h4{ font-family:var(--ag-titre); color:var(--sb-encre); line-height:1.08; letter-spacing:-.01em; margin:0 0 .5em; font-weight:800; }
h1{ font-size:clamp(2rem, 1.2rem + 2.6vw, 3.5rem); }
h2{ font-size:clamp(1.875rem, 1.3rem + 1.6vw, 3rem); }
h3{ font-size:clamp(1.3rem, 1.1rem + .5vw, 1.625rem); font-weight:700; }
p{ margin:0 0 1em; }
button,input,select,textarea{ font:inherit; color:inherit; }
:focus-visible{ outline:3px solid var(--sb-porte-revendeurs); outline-offset:3px; border-radius:4px; }
.screen-reader-text,.ag-sr{ position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.ag-lien-evitement{ position:absolute; left:-999px; top:8px; z-index:200; background:var(--sb-encre); color:#fff; padding:10px 16px; border-radius:8px; }
.ag-lien-evitement:focus{ left:8px; }

.ag-conteneur{ max-width:calc(1440px + 2 * 80px); margin-inline:auto; padding-inline:var(--ag-gout); }
@media (max-width:1700px){ .ag-conteneur{ max-width:calc(1280px + 2 * 80px); } }

/* Marquage au pochoir : mots courts, capitales, jamais de chiffre (DA §3). */
.ag-marquage{ font-family:var(--ag-marquage); font-weight:400; text-transform:uppercase; letter-spacing:.08em; font-size:14px; line-height:1.2; }
@media (min-width:1700px){ .ag-marquage{ font-size:15px; } }
@media (max-width:767px){ .ag-marquage{ font-size:13px; } }
.ag-chiffre{ font-family:var(--ag-titre); font-weight:900; font-variant-numeric:lining-nums tabular-nums; letter-spacing:-.02em; }

/* ============ Boutons (gros, partout) ============ */
.ag-btn{
	display:inline-flex; align-items:center; justify-content:center; gap:10px;
	min-height:56px; padding:14px 26px; border-radius:var(--sb-rayon); border:2px solid transparent;
	background:var(--sb-action); color:#fff; font-family:var(--ag-titre); font-weight:700; font-size:18px; line-height:1.15;
	text-decoration:none; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.ag-btn:hover{ background:var(--sb-action-texte); color:#fff; transform:translateY(-2px); box-shadow:0 10px 22px -8px rgba(224,17,95,.55); }
.ag-btn:active{ transform:translateY(0); }
.ag-btn--encre{ background:var(--sb-encre); }
.ag-btn--encre:hover{ background:#2B2F3F; box-shadow:0 10px 22px -8px rgba(25,28,40,.5); }
.ag-btn--clair{ background:#fff; color:var(--sb-encre); border-color:var(--sb-encre); }
.ag-btn--clair:hover{ background:var(--sb-encre); color:#fff; }
.ag-btn--grand{ min-height:64px; padding-inline:32px; font-size:19px; }
.ag-btn .ag-picto{ width:22px; height:22px; flex-shrink:0; }

/* ============ En-tête ============ */
.ag-entete{
	position:sticky; top:0; z-index:60; height:var(--ag-entete-h);
	background:rgba(251,248,243,.94); backdrop-filter:saturate(1.4) blur(10px); -webkit-backdrop-filter:saturate(1.4) blur(10px);
	border-bottom:1px solid var(--sb-filet); transition:box-shadow .2s ease;
}
.ag-entete.est-defile{ box-shadow:0 10px 30px -18px rgba(25,28,40,.35); }
.admin-bar .ag-entete{ top:32px; }
.ag-entete-in{ height:100%; display:flex; align-items:center; gap:28px; }
.ag-logo{ display:flex; align-items:center; flex-shrink:0; text-decoration:none; }
.ag-logo-svg{ height:34px; width:auto; }
.ag-nav{ margin-left:auto; }
.ag-nav ul{ list-style:none; margin:0; padding:0; display:flex; align-items:center; gap:4px; }
.ag-nav a{
	display:flex; align-items:center; height:44px; padding:0 14px; border-radius:10px;
	font-family:var(--ag-titre); font-weight:700; font-size:17px; color:var(--sb-encre); text-decoration:none; white-space:nowrap;
	position:relative;
}
.ag-nav a::after{ content:""; position:absolute; left:14px; right:14px; bottom:6px; height:3px; border-radius:2px; background:var(--sb-action); transform:scaleX(0); transform-origin:left; transition:transform .2s ease; }
.ag-nav a:hover{ background:var(--sb-fond-kraft); color:var(--sb-encre); }
.ag-nav a:hover::after,.ag-nav a[aria-current="page"]::after{ transform:scaleX(1); }
.ag-nav a[aria-current="page"]{ color:var(--sb-action-texte); }
.ag-entete-cta{ min-height:48px; padding:10px 20px; font-size:16px; flex-shrink:0; }
.ag-burger{ display:none; width:48px; height:48px; border-radius:12px; border:2px solid var(--sb-encre); background:#fff; align-items:center; justify-content:center; cursor:pointer; margin-left:auto; }
.ag-burger .ag-picto{ width:24px; height:24px; }
@media (max-width:1180px){ .ag-nav a{ padding:0 10px; font-size:16px; } .ag-entete-in{ gap:16px; } }
@media (max-width:1023px){
	:root{ --ag-entete-h:64px; }
	.ag-nav,.ag-entete-cta{ display:none; }
	.ag-burger{ display:flex; }
	.ag-logo-svg{ height:30px; }
}
/* Tiroir mobile */
.ag-tiroir{ position:fixed; inset:0; z-index:120; display:none; }
.ag-tiroir.est-ouvert{ display:block; }
.ag-tiroir-fond{ position:absolute; inset:0; background:rgba(25,28,40,.55); }
.ag-tiroir-boite{ position:absolute; right:0; top:0; bottom:0; width:min(360px, 88vw); background:var(--sb-fond); padding:20px 20px 32px; display:flex; flex-direction:column; gap:8px; overflow-y:auto; box-shadow:var(--sb-ombre-forte); }
.ag-tiroir-haut{ display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.ag-tiroir-fermer{ width:48px; height:48px; border-radius:12px; border:2px solid var(--sb-encre); background:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer; }
.ag-tiroir-fermer .ag-picto{ width:22px; }
.ag-tiroir a.ag-tiroir-lien{ display:flex; align-items:center; gap:14px; min-height:56px; padding:0 14px; border-radius:12px; background:#fff; border:1px solid var(--sb-filet); font-family:var(--ag-titre); font-weight:700; font-size:18px; color:var(--sb-encre); text-decoration:none; }
.ag-tiroir a.ag-tiroir-lien .ag-picto{ width:24px; color:var(--sb-action); }
.ag-tiroir .ag-btn{ margin-top:10px; }

/* Barre basse mobile (une seule entrée, jamais par-dessus le formulaire du hero) */
.ag-barre-basse{ display:none; }
@media (max-width:767px){
	.ag-barre-basse{
		display:flex; position:fixed; left:12px; right:12px; bottom:12px; z-index:70; gap:8px;
		transform:translateY(140%); transition:transform .25s ease;
	}
	.ag-barre-basse.est-visible{ transform:none; }
	.ag-barre-basse .ag-btn{ flex:1; box-shadow:var(--sb-ombre-forte); }
}

/*
 * BLOC FIGÉ — ARTICLE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-article*` /
 * `.cdw-fil-ariane` / `.cdw-a-lire` / `.cdw-carte*` (renommées `.sbt-*` ici).
 * Couleurs/polices/espacements uniquement en `var(--sb-*, repli)` : un site neuf peut
 * utiliser ce fichier tel quel sans avoir encore défini ses propres variables.
 *
 * INTERDIT DE MODIFIER : voir single-article.php (un seul <article>, « à lire aussi »
 * en <div>). LIBRE DE MODIFIER : toutes les valeurs des var() ci-dessous.
 */

.sbt-conteneur{ max-width: var(--sb-conteneur, 1240px); margin-inline: auto; padding-inline: var(--sb-gouttiere, 24px); }

.sbt-fil-ariane{ font-size: .8125rem; color: var(--sb-doux, #55607a); display: flex; gap: 6px; flex-wrap: wrap; padding-block: 16px; }
.sbt-fil-ariane a{ color: var(--sb-doux, #55607a); text-decoration: none; }
.sbt-fil-ariane a:hover{ color: var(--sb-encre, #0f172a); }

.sbt-article-entete{ max-width: var(--sb-lecture, 720px); margin-inline: auto; padding-block: 8px 24px; }
.sbt-article-pastille{
	display: inline-block; background: var(--sb-surf, #f4f5fa); color: var(--sb-encre, #0f172a);
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: .75rem;
	text-transform: uppercase; letter-spacing: .04em; padding: 6px 12px; border-radius: 999px; margin-bottom: 16px;
	text-decoration: none;
}
.sbt-article-entete h1{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); line-height: 1.15; margin: 0; }
.sbt-article-chapo{ font-family: var(--sb-texte, 'Inter', system-ui, sans-serif); font-style: italic; font-size: clamp(1.0625rem,1rem + .3vw,1.3125rem); color: var(--sb-doux, #55607a); margin-top: 16px; }
.sbt-article-meta{ display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 20px; font-size: .875rem; color: var(--sb-doux, #55607a); }
.sbt-article-meta img{ width: 32px; height: 32px; border-radius: 50%; object-fit: cover; }
.sbt-article-meta-auteur{ color: inherit; font-weight: 600; text-decoration: none; }

.sbt-article-une{ max-width: var(--sb-conteneur, 1240px); margin: 28px auto 32px; padding-inline: var(--sb-gouttiere, 24px); }
.sbt-article-une-cadre{ aspect-ratio: 2.4 / 1; max-height: min(520px, 46vh); overflow: hidden; /* 01/10 : à 1440×900 le texte passait sous la ligne de flottaison (B-ART-09) */ border-radius: var(--sb-rayon, 14px); box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); }
.sbt-article-une-cadre img{ width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 640px){ .sbt-article-une-cadre{ aspect-ratio: auto; height: 220px; max-height: 220px; } }

/* Grille corps + rail — align-items:start obligatoire pour que le rail sticky
   (cf. partial-sidebar.css) tienne sur toute la hauteur du contenu. */
.sbt-article-mise-en-page{
	display: grid; grid-template-columns: minmax(0, var(--sb-lecture, 720px)) var(--sb-rail, 340px);
	column-gap: var(--sb-gouttiere, 24px); row-gap: var(--sb-gouttiere, 24px);
	max-width: var(--sb-conteneur, 1240px); margin-inline: auto;
	padding: 32px var(--sb-gouttiere, 24px) 64px; align-items: start; justify-content: center;
}
@media (max-width: 1080px){ .sbt-article-mise-en-page{ grid-template-columns: minmax(0,1fr); } .sbt-article-principal, .sbt-rail{ min-width: 0; } }
.sbt-article-mise-en-page--suite{ padding-top: 0; }

.sbt-article-corps{ font-size: 1.0625rem; line-height: 1.7; color: var(--sb-encre, #0f172a); font-family: var(--sb-texte, 'Inter', system-ui, sans-serif); }
.sbt-article-corps h2{ margin-top: 2.2em; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-article-corps h3{ margin-top: 1.8em; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-article-corps p{ margin-bottom: 1.3em; }
.sbt-article-corps img{ border-radius: var(--sb-rayon, 14px); margin-block: 1.6em; width: 100%; height: auto; }
.sbt-article-corps blockquote{
	margin: 1.8em 0; padding: 18px 24px; border-left: 4px solid var(--sb-accent, #2563eb);
	background: var(--sb-surf, #f4f5fa); border-radius: 8px; font-style: italic;
}

/* Sommaire replié en accordéon sur mobile uniquement (en desktop, il vit dans le rail —
   cf. partial-sidebar.php / partial-sommaire.php). */
.sbt-sommaire-mobile{ display: none; }
@media (max-width: 1080px){ .sbt-sommaire-mobile{ display: block; margin-bottom: 24px; } }
/* 01/10/2026 (baliturismo, juge visuel) : sous 1080px le rail passe SOUS l'article ; sa carte sommaire
   faisait doublon avec le sommaire mobile de tête (erreur n°6 « sommaire en double »). */
@media (max-width: 1080px){ .sbt-rail-carte--sommaire{ display: none; } }

/* « À lire aussi » (toujours un <div>, jamais un <article> — cf. single-article.php) */
.sbt-a-lire{ margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--sb-filet, #e2e5ef); }
.sbt-kicker{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .9375rem; font-weight: 700; margin-bottom: 12px; }
.sbt-grille{ display: grid; gap: var(--sb-gouttiere, 24px); }
.sbt-grille--3{ grid-template-columns: repeat(3, minmax(0,1fr)); }
@media (max-width: 760px){ .sbt-grille--3{ grid-template-columns: 1fr; } }
.sbt-carte{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-radius: var(--sb-rayon, 14px); overflow: hidden; box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08));
	transition: transform .2s ease, box-shadow .2s ease;
}
.sbt-carte:hover{ transform: translateY(-4px); box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); }
.sbt-carte a{ display: block; color: inherit; text-decoration: none; }
.sbt-carte img{ width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.sbt-carte-corps{ padding: 18px; }
.sbt-carte-corps h3{ margin: 0; font-size: 1.0625rem; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }

.sbt-article-commentaires{ margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--sb-filet, #e2e5ef); }

/* 01/10 (accessoiriste.net) : un seul sommaire visible par largeur — la carte du rail se masque quand l'accordéon mobile s'affiche. */
@media (max-width: 1080px){ .sbt-rail-carte--sommaire{ display: none; } }
/* 05/10 (operations-digestives, juge visuel) : sous-titres collés au paragraphe suivant (marge basse 0 px mesurée) */
.sbt-article-corps h2{ margin-bottom: .6em; }
.sbt-article-corps h3{ margin-bottom: .45em; }

/*
 * BLOC FIGÉ — BARRE LATÉRALE D'ARTICLE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-rail` / `.cdw-rail-carte`
 * (lignes ~854-861, renommées `.sbt-rail*` ici) — commentaire garde-fou d'origine
 * CONSERVÉ TEL QUEL ci-dessous (règle la plus importante de ce bloc).
 *
 * Inspiration secondaire documentée (pas copiée en entier) : amatauto.fr fait basculer
 * sa colonne latérale en bloc STATIQUE empilé sous le texte à partir de 1100px
 * (assets/css/v2.css, `.a2-art__cote { position: sticky; ... }` +
 * `@media (max-width: 1100px) { .a2-art__cote { position: static; } }`) — repris ici en
 * option mobile (media query 1080px, cohérente avec le point de rupture de
 * `.sbt-article-mise-en-page` dans single-article.css).
 */

/* Rail sticky — collé à la colonne de texte, séparation par un filet interne, jamais un
   gap blanc entre les deux colonnes. */
.sbt-rail{
	position: sticky; top: 96px; align-self: start;
	display: flex; flex-direction: column; gap: 20px;
	border-left: 1px solid var(--sb-filet, #e2e5ef); padding-left: 20px;
}
/* ⛔ GARDE-FOU (conservé tel quel depuis curieux-du-web.com, retour Mathias ×3) : jamais
   de overflow-y ni de max-height ici — la colonne reste collante et accompagne TOUTE la
   lecture de l'article jusqu'en bas, sans sa propre barre de défilement interne. */
.sbt-rail-carte{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-radius: var(--sb-rayon, 14px); padding: 18px;
}
.sbt-rail-carte .sbt-t4, .sbt-rail-carte h4{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .875rem;
	text-transform: uppercase; letter-spacing: .04em; color: var(--sb-doux, #55607a); margin: 0 0 10px;
}

/* Option mobile (inspirée d'amatauto.fr, cf. en-tête) : sous 1080px, la grille parente
   passe déjà en une colonne (cf. .sbt-article-mise-en-page dans single-article.css) — le
   rail redevient donc naturellement un bloc statique empilé sous le texte. */
@media (max-width: 1080px){
	.sbt-rail{ position: static; border-left: 0; padding-left: 0; border-top: 1px solid var(--sb-filet, #e2e5ef); padding-top: 20px; }
}

/* Sommaire tel qu'affiché dans le rail (cf. partial-sommaire.css pour le détail des
   classes `.sbt-sommaire*`) : pas de style supplémentaire ici, la carte du rail suffit. */

/*
 * BLOC FIGÉ — SOMMAIRE (thématique) — CSS
 * CSS volontairement simple (voir partial-sommaire.php : la robustesse de ce bloc est
 * dans le PHP — ids séquentiels, exclusion FAQ/Sources, seuil de 3 titres — pas dans son
 * habillage). Inspiré du rendu `<details>` natif de health-nutrition-cambrai.fr
 * (« Bien Vivre Santé »), classes renommées `.sbt-sommaire*`.
 */

.sbt-sommaire{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-left: 4px solid var(--sb-accent, #2563eb); border-radius: var(--sb-rayon, 14px);
	padding: 16px 20px;
}
.sbt-sommaire-titre{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700;
	font-size: .9375rem; cursor: pointer; list-style: none;
}
.sbt-sommaire-titre::-webkit-details-marker{ display: none; }
.sbt-sommaire ol{ list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.sbt-sommaire li a{
	display: flex; align-items: baseline; gap: 10px; font-size: .9375rem;
	color: var(--sb-encre, #0f172a); text-decoration: none;
}
.sbt-sommaire li a:hover{ color: var(--sb-accent, #2563eb); text-decoration: underline; }
.sbt-sommaire-num{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: .75rem;
	color: var(--sb-encre, #0f172a); background: var(--sb-surf, #f4f5fa); border-radius: 50%;
	width: 20px; height: 20px; flex-shrink: 0; display: flex; align-items: center; justify-content: center;
}

/*
 * BLOC FIGÉ — ENCADRÉS « LE SAVIEZ-VOUS » / « POINTS À RETENIR » (thématique) — CSS
 * Origine : amatauto.fr, assets/css/v2.css, règles `.amat-encadre--retenir` / `.a2-saviez`
 * (renommées `.sbt-encadre--retenir` / `.sbt-encadre--saviez` ici). Habillage simplifié
 * (gradients/decorations ::before retirés pour rester générique et léger), la structure
 * (grille icône + texte pour « le saviez-vous », liste à puces pour « points à retenir »)
 * est conservée.
 */

.sbt-encadre{ margin-block: 2em; border-radius: var(--sb-rayon-grand, 22px); }

.sbt-encadre-titre{
	margin: 0 0 12px; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif);
	font-weight: 700; font-size: .8125rem; text-transform: uppercase; letter-spacing: .08em;
}

/* « Points à retenir » — fond foncé, liste à puces check. */
.sbt-encadre--retenir{
	background: var(--sb-fonce, #141733); color: var(--sb-sur-fonce, #ffffff);
	padding: 28px 30px;
}
.sbt-encadre--retenir .sbt-encadre-titre{ color: var(--sb-accent-clair, #93c5fd); }
.sbt-retenir-liste{ list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.sbt-retenir-liste li{
	position: relative; padding-left: 32px; font-size: 1rem; line-height: 1.55;
}
.sbt-retenir-liste li::before{
	content: ""; position: absolute; left: 0; top: .15em; width: 20px; height: 20px; border-radius: 50%;
	background: var(--sb-accent, #2563eb)
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' 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;
}

/* « Le saviez-vous ? » — encadré clair, icône ampoule. */
.sbt-encadre--saviez{
	display: grid; grid-template-columns: 48px 1fr; gap: 16px; align-items: start;
	padding: 22px 24px; background: var(--sb-surf, #f4f5fa);
}
.sbt-encadre--saviez::before{
	content: "?"; grid-row: 1 / span 2; width: 48px; height: 48px; border-radius: 14px;
	background: var(--sb-accent, #2563eb); color: #fff; display: flex; align-items: center; justify-content: center;
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: 1.375rem;
}
.sbt-encadre--saviez .sbt-encadre-titre{ grid-column: 2; margin: 0; color: var(--sb-encre, #0f172a); }
.sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column: 2; margin: 0; font-size: 1rem; line-height: 1.6; color: var(--sb-encre, #0f172a); }

@media (max-width: 620px){
	.sbt-encadre--saviez{ grid-template-columns: 1fr; }
	.sbt-encadre--saviez::before{ grid-row: 1; }
	.sbt-encadre--saviez .sbt-encadre-titre, .sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column: 1; }
}
/* 04/10/2026 (invalidcast.com) : la règle de liste du corps d'article écrasait le retrait → la coche mangeait la 1re lettre. */
.sbt-article-corps .sbt-retenir-liste{ padding: 0; margin: 0; list-style: none; }
.sbt-article-corps .sbt-retenir-liste li{ padding-left: 34px; margin: 0; text-indent: 0; }

/*
 * BLOC FIGÉ — FAQ EN ACCORDÉON (thématique) — CSS
 * Visuel inspiré du rendu RÉEL de solutionminceur.fr, classes `.smr-faq*` récupérées par
 * un unique curl en lecture seule sur
 * `https://solutionminceur.fr/wp-content/themes/solutionminceur-v2/roxane.css`
 * (fichier CSS distant, absent du mirroir local du chantier — ce curl a RÉUSSI, voir
 * README). Classes renommées `.sbt-faq*` ici, variables de couleur remplacées par des
 * `var(--sb-*, repli)` génériques.
 *
 * Mécanisme accordéon (natif <details>/<summary>, sans JS) : cf. partial-faq.php, origine
 * health-nutrition-cambrai.fr.
 */

.sbt-faq{ margin: 56px 0; padding: 30px; border-radius: var(--sb-rayon-grand, 22px); background: var(--sb-surf, #f4f5fa); border: 1px solid var(--sb-filet, #e2e5ef); }
.sbt-faq-liste{ display: grid; gap: 10px; }
.sbt-faq-liste details{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef) !important;
	border-radius: 14px; padding: 0 !important; transition: box-shadow .25s ease, border-color .25s ease;
}
.sbt-faq-liste details[open]{ box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); border-color: var(--sb-accent, #2563eb) !important; }
.sbt-faq-liste summary{
	list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center;
	gap: 18px; padding: 18px 20px; font-size: 1.03rem; font-weight: 600; line-height: 1.45; color: var(--sb-encre, #0f172a);
}
.sbt-faq-liste summary::-webkit-details-marker{ display: none; }
.sbt-faq-liste summary::after{
	content: ""; width: 30px; height: 30px; flex: none; border-radius: 50%;
	background: var(--sb-surf, #f4f5fa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 15px no-repeat;
	transition: transform .3s ease;
}
.sbt-faq-liste details[open] summary::after{ transform: rotate(135deg); }
.sbt-faq-liste summary:hover{ color: var(--sb-accent, #2563eb); }
.sbt-faq-reponse{ padding: 0 20px 18px; font-size: .96875rem; line-height: 1.75; color: var(--sb-doux, #55607a); }
.sbt-faq-reponse p{ margin: 0 0 14px; }
.sbt-faq-reponse p:last-child{ margin-bottom: 0; }

@media (max-width: 760px){
	.sbt-faq{ padding: 20px; }
}

/*
 * BLOC FIGÉ — SIGNATURE / BOÎTE AUTEUR (thématique) — CSS
 * Visuel inspiré du rendu RÉEL de solutionminceur.fr, classes `.smr-auteur*` récupérées
 * par le même curl en lecture seule que partial-faq.css (roxane.css, voir README).
 * Classes renommées `.sbt-auteur*` ici, variables de couleur remplacées par des
 * `var(--sb-*, repli)` génériques.
 */

.sbt-auteur{
	display: grid; grid-template-columns: 120px 1fr; gap: 26px; margin: 54px 0 10px;
	padding: 30px; border-radius: var(--sb-rayon-grand, 22px);
	background: var(--sb-surf, #f4f5fa); border: 1px solid var(--sb-filet, #e2e5ef);
}
.sbt-auteur-photo img{
	width: 120px; height: 120px; border-radius: 50%; object-fit: cover;
	box-shadow: 0 0 0 5px var(--sb-fond-carte, #ffffff), var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08));
}
.sbt-auteur-sur{ margin: 0 0 2px; font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; color: var(--sb-doux, #55607a); }
.sbt-auteur-nom{ font-size: 1.5rem; margin: 0 0 4px; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-auteur-nom a{ color: var(--sb-encre, #0f172a); text-decoration: none; }
.sbt-auteur-nom a:hover{ text-decoration: underline; }
.sbt-auteur-role{ margin: 0 0 12px; font-size: .8125rem; font-weight: 600; color: var(--sb-accent, #2563eb); text-transform: uppercase; letter-spacing: .05em; }
.sbt-auteur-bio{ font-size: .96875rem; line-height: 1.7; color: var(--sb-encre, #0f172a); margin: 0 0 16px; }
.sbt-auteur-chiffres{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.sbt-auteur-chiffres span{ background: var(--sb-fond-carte, #ffffff); border-radius: 12px; padding: 8px 12px; font-size: .78125rem; color: var(--sb-doux, #55607a); }
.sbt-auteur-chiffres b{ color: var(--sb-encre, #0f172a); margin-right: 4px; }
.sbt-auteur-der{ margin-bottom: 18px; }
.sbt-auteur-der p{ margin: 0 0 6px; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; color: var(--sb-doux, #55607a); }
.sbt-auteur-der a{ display: block; font-size: .9375rem; font-weight: 500; padding: 6px 0; color: var(--sb-encre, #0f172a); text-decoration: none; border-bottom: 1px dashed var(--sb-filet, #e2e5ef); }
.sbt-auteur-der a:hover{ color: var(--sb-accent, #2563eb); }
.sbt-auteur-actions{ display: flex; flex-wrap: wrap; gap: 10px; }
.sbt-auteur-actions .sbt-btn{
	display: inline-block; padding: 10px 18px; border-radius: 999px; font-size: .875rem; font-weight: 600;
	text-decoration: none; background: var(--sb-accent, #2563eb); color: #fff;
}
.sbt-auteur-actions .sbt-btn--fantome{ background: transparent; border: 1.5px solid var(--sb-filet, #e2e5ef); color: var(--sb-encre, #0f172a); }

@media (max-width: 700px){
	.sbt-auteur{ grid-template-columns: 1fr; padding: 22px; }
	.sbt-auteur-photo img{ width: 88px; height: 88px; }
}

/*
 * BLOC FIGÉ — PIED DE PAGE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-footer*` / `.cdw-cookies*` /
 * `.cdw-popup-sortie*` / `.cdw-btn*` (renommées `.sbt-footer*` / `.sbt-cookies*` /
 * `.sbt-popup-sortie*` / `.sbt-btn*` ici).
 */

.sbt-btn{
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 13px 24px; border-radius: 999px; font-weight: 700; font-size: 1rem;
	background: var(--sb-accent, #2563eb); color: #fff; text-decoration: none; border: 0; cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease;
}
.sbt-btn:hover{ transform: translateY(-2px); box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); }
.sbt-btn--petit{ padding: 10px 18px; font-size: .875rem; }
.sbt-btn--fantome{ background: transparent; border: 1.5px solid rgba(255,255,255,.5); color: inherit; }

.sbt-footer{ background: var(--sb-fonce, #141733); color: var(--sb-sur-fonce, #ffffff); padding-block: clamp(40px,6vw,64px) 24px; }
.sbt-footer a{ color: #c4c7e4; text-decoration: none; }
.sbt-footer a:hover{ color: #fff; }

.sbt-footer-cta{
	display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
	padding: 24px 28px; margin-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.12);
}
@media (max-width: 600px){ .sbt-footer-cta{ padding: 20px; } } /* 04/10/2026 (invalidcast.com) : texte collé au bord dès qu'un thème donne un fond de carte au bandeau */
.sbt-footer-cta .sbt-t3{ color: #fff; margin: 0 0 4px; font-size: 1.25rem; }
.sbt-footer-cta p{ color: #a9acd0; margin: 0; max-width: 46ch; }

.sbt-footer-grille{ display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: 32px; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.12); }
@media (max-width: 980px){ .sbt-footer-grille{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 560px){ .sbt-footer-grille{ grid-template-columns: 1fr; } }
.sbt-footer-colonne .sbt-t4{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .8125rem; text-transform: uppercase; letter-spacing: .06em; color: #8b8fb5; margin: 0 0 14px; }
.sbt-footer-colonne ul{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.sbt-footer-colonne ul a{ font-size: .875rem; }
.sbt-footer-logo{ display: block; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: 1.125rem; color: #fff; margin-bottom: 14px; }
.sbt-footer-desc{ color: #a9acd0; font-size: .9375rem; margin: 0; max-width: 32ch; }
.sbt-footer-contact{ display: flex; flex-direction: column; gap: 8px; font-size: .875rem; }

.sbt-footer-bas{ padding-top: 20px; font-size: .8125rem; color: #8b8fb5; }

/* Bandeau cookies — deux boutons de MÊME poids (même classe .sbt-btn/.sbt-btn--petit),
   jamais un seul « J'ai compris » qui vaudrait acceptation forcée. */
.sbt-cookies{
	position: fixed; left: 8px; right: 8px; bottom: 8px; z-index: 80;
	background: var(--sb-fonce, #141733); color: #fff; border-radius: 12px;
	padding: 10px 14px; display: none; align-items: center; gap: 12px;
	box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); max-height: 64px; overflow: hidden;
}
.sbt-cookies.est-visible{ display: flex; }
.sbt-cookies p{ margin: 0; flex: 1; min-width: 0; font-size: .75rem; line-height: 1.3; }
.sbt-cookies-actions{ display: flex; gap: 8px; flex-shrink: 0; }
.sbt-cookies .sbt-btn{ flex-shrink: 0; padding: 8px 14px; min-height: 32px; font-size: .8125rem; }

/* Popup de sortie — jamais de colonne image vide : si pas d'image, la boîte bascule sur
   une seule colonne (cf. .sbt-popup-sortie-boite--sans-image). */
.sbt-popup-sortie{ position: fixed; inset: 0; z-index: 90; display: none; align-items: center; justify-content: center; padding: 20px; }
.sbt-popup-sortie.est-ouvert{ display: flex; }
.sbt-popup-sortie-fond{ position: absolute; inset: 0; background: rgba(15,23,42,.7); }
.sbt-popup-sortie-boite{
	position: relative; z-index: 1; background: var(--sb-fond-carte, #ffffff); border-radius: var(--sb-rayon, 14px);
	max-width: 720px; width: 100%; display: grid; grid-template-columns: 1fr 1fr; overflow: hidden;
	box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); max-height: 90vh;
}
.sbt-popup-sortie-boite--sans-image{ grid-template-columns: 1fr; max-width: 480px; }
@media (max-width: 640px){ .sbt-popup-sortie-boite{ grid-template-columns: 1fr; max-height: 85vh; overflow-y: auto; } }
.sbt-popup-sortie-image{ min-height: 220px; }
.sbt-popup-sortie-image img{ width: 100%; height: 100%; object-fit: cover; }
.sbt-popup-sortie-texte{ padding: 28px; color: var(--sb-encre, #0f172a); }
.sbt-popup-sortie-fermer{
	position: absolute; top: 12px; right: 12px; z-index: 2; width: 40px; height: 40px; border-radius: 50%;
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	display: flex; align-items: center; justify-content: center; cursor: pointer;
}
.sbt-popup-sortie-fermer svg{ width: 20px; height: 20px; }

/* =====================================================================
   ag-paliers — habillage (achat-gros.com). Assemblé après style.css et les blocs figés.
   ===================================================================== */

/* ---------- Matériaux : scotch, cannelure, repli photo ---------- */
.ag-scotch{
	position:absolute; z-index:5; display:inline-flex; align-items:center; gap:7px; padding:7px 18px 6px;
	background:rgba(224,17,95,.93); color:#fff; white-space:nowrap; pointer-events:none;
	transform:rotate(var(--r,-6deg)); box-shadow:0 3px 8px -2px rgba(25,28,40,.28);
	clip-path:polygon(0 6%,2% 0,98% 0,100% 8%,98.6% 22%,100% 36%,98.6% 50%,100% 64%,98.6% 78%,100% 92%,98% 100%,2% 100%,0 94%,1.4% 80%,0 66%,1.4% 52%,0 38%,1.4% 24%);
}
.ag-scotch i{ font-style:normal; font-family:var(--ag-marquage); letter-spacing:.08em; font-size:14px; line-height:1; }
.ag-scotch b{ font-family:var(--ag-titre); font-weight:900; font-size:19px; line-height:1; }
.ag-scotch--kraft{ background:rgba(196,149,92,.92); color:var(--sb-encre); }
/* 08/10 (sortie n°1, hors_cadre) : un ruban ou une pastille « à cheval » reste DANS la boîte de son parent
   positionné. Le parent est .ag-debord : un cadre transparent, aux dimensions de la carte AGRANDIES de la
   marge du débordement (--dh haut, --dd droite, --db bas, --dg gauche). L'effet visuel ne bouge pas. */
.ag-debord{ position:absolute; top:calc(-1 * var(--dh,0px)); right:calc(-1 * var(--dd,0px)); bottom:calc(-1 * var(--db,0px)); left:calc(-1 * var(--dg,0px)); pointer-events:none; z-index:5; }
.ag-debord--carton{ --db:30px; z-index:2; }
.ag-debord--pastille{ --db:20px; z-index:2; }
.ag-debord--ruban{ --dd:36px; z-index:3; }
.ag-portes-section{ overflow-x:clip; } /* le cadre du ruban dépasse la carte : jamais de défilement horizontal sur mobile */
.ag-debord--coin{ --dh:30px; }
.ag-debord--carte{ --dh:34px; --dd:44px; }
.ag-debord--marque{ --dh:36px; z-index:3; }
.ag-form--rail .ag-debord--carte{ display:none; }

.ag-cannelure{
	height:14px; width:100%;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14' viewBox='0 0 28 14'%3E%3Cpath d='M0 7 Q7 1 14 7 T28 7' fill='none' stroke='%238A6537' stroke-width='1.8'/%3E%3Cpath d='M0 1h28M0 13h28' stroke='%238A6537' stroke-width='1.6'/%3E%3C/svg%3E") repeat-x left center / 28px 14px;
}
.ag-cannelure--haut{ position:absolute; left:0; right:0; top:0; }
.ag-cannelure--bas{ position:absolute; left:0; right:0; bottom:0; }

.ag-repli{
	--fond:var(--sb-fond-kraft); --trait:var(--sb-kraft-fonce);
	position:relative; display:flex; align-items:center; justify-content:center; width:100%; height:100%; min-height:60px;
	background-color:var(--fond); overflow:hidden; color:var(--trait);
	background-image:repeating-linear-gradient(90deg, rgba(25,28,40,.045) 0 2px, transparent 2px 14px);
}
.ag-repli::after{
	content:""; position:absolute; left:0; right:0; bottom:10%; height:14px; opacity:.55;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14' viewBox='0 0 28 14'%3E%3Cpath d='M0 7 Q7 1 14 7 T28 7' fill='none' stroke='%23191C28' stroke-width='1.4'/%3E%3Cpath d='M0 1h28M0 13h28' stroke='%23191C28' stroke-width='1.1'/%3E%3C/svg%3E") repeat-x left center / 28px 14px;
}
.ag-repli-picto{ position:relative; z-index:1; width:clamp(30px, 38%, 150px); aspect-ratio:1; display:block; }
.ag-repli-picto svg{ width:100%; height:100%; }
.ag-repli--vert{ --fond:var(--ag-vert-pale); --trait:var(--sb-porte-particuliers-texte); }
.ag-repli--bleu{ --fond:var(--ag-bleu-pale); --trait:var(--sb-porte-revendeurs); }
.ag-repli--rose{ --fond:var(--ag-rose-pale); --trait:var(--sb-action-texte); }
.ag-repli--kraft{ --fond:var(--sb-fond-kraft); --trait:var(--sb-kraft-fonce); }
.ag-repli--rose-vif{ --fond:var(--sb-action); --trait:rgba(255,255,255,.9); background-image:repeating-linear-gradient(90deg, rgba(255,255,255,.07) 0 2px, transparent 2px 14px); }
.ag-repli--rose-vif::after{ filter:invert(1); opacity:.25; }

/* ---------- Sections ---------- */
.ag-section{ position:relative; padding-block:clamp(56px, 5.2vw, 76px); }
.ag-section--fin{ padding-bottom:clamp(72px, 7vw, 104px); }
.ag-bande-kraft{ background:var(--sb-fond-kraft); padding-top:calc(clamp(56px, 5.2vw, 76px) + 6px); }
.ag-bande-kraft.ag-section--fin{ margin-bottom:clamp(56px, 6vw, 88px); }
.ag-bande-encre{ background:var(--sb-encre); color:#FBF8F3; }
.ag-section-tete{ display:flex; align-items:baseline; justify-content:space-between; gap:12px 40px; flex-wrap:wrap; margin-bottom:clamp(24px, 2.6vw, 36px); }
.ag-section-tete h2{ margin:0; }
.ag-section-tete p{ margin:0; color:var(--sb-encre-douce); max-width:62ch; }
.ag-section-tete--ligne{ align-items:flex-end; }
.ag-section-tete--ligne > div{ display:flex; align-items:baseline; gap:10px 32px; flex-wrap:wrap; }
.ag-surtitre{ color:var(--sb-action-texte); margin:0 0 14px; }
.ag-surtitre--clair{ color:#FF7AA7; }
.ag-lien-fleche{ display:inline-flex; align-items:center; gap:8px; font-family:var(--ag-titre); font-weight:700; font-size:17px; color:var(--sb-action-texte); text-decoration:underline; text-underline-offset:5px; text-decoration-thickness:2px; min-height:44px; }
.ag-pilules{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.ag-pilules-titre{ font-family:var(--ag-titre); font-weight:700; margin-right:4px; }
.ag-pilule{ display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:0 18px; border-radius:999px; background:#fff; border:2px solid var(--sb-filet); color:var(--sb-encre); font-family:var(--ag-titre); font-weight:700; font-size:16px; text-decoration:none; transition:border-color .15s, transform .15s; }
.ag-pilule:hover{ border-color:var(--sb-porte-revendeurs); color:var(--sb-porte-revendeurs); transform:translateY(-2px); }
.ag-pilule .ag-picto{ width:18px; height:18px; color:var(--sb-porte-revendeurs); }
.ag-cadre-decale{ position:absolute; inset:18px -18px -18px 18px; border:3px solid #fff; border-radius:var(--sb-rayon-xl); pointer-events:none; }

/* Pastilles de rubrique / porte */
.ag-pastille{
	display:inline-flex; align-items:center; gap:8px; min-height:34px; padding:4px 14px; border-radius:999px;
	font-family:var(--ag-titre); font-weight:700; font-size:14px; line-height:1.1; color:#fff; background:var(--sb-encre); text-decoration:none;
}
.ag-pastille .ag-picto{ width:17px; height:17px; flex-shrink:0; }
.ag-pastille--vert{ background:var(--sb-porte-particuliers-texte); }
.ag-pastille--bleu{ background:var(--sb-porte-revendeurs); }
.ag-pastille--rose{ background:var(--sb-action-texte); }
.ag-pastille--kraft{ background:var(--sb-encre); }
a.ag-pastille:hover{ color:#fff; filter:brightness(1.1); }

/* HERO : voir le bloc « 09/10 — juge n°1 » en fin de feuille. */
/* =====================================================================
   FORMULAIRE — étiquette d'expédition
   ===================================================================== */
.ag-form-carte{
	position:relative; background:#fff; border-radius:var(--sb-rayon-xl); border:1px solid #E9DDC8;
	box-shadow:var(--sb-ombre-forte); text-align:left; color:var(--sb-encre);
}
.ag-form--hero{ position:relative; width:100%; z-index:4; }
.ag-form-bandeau{
	display:flex; align-items:center; justify-content:flex-start; gap:18px; min-height:46px; padding:10px 120px 10px 22px;
	background:var(--sb-encre); color:#FBF8F3; border-radius:var(--sb-rayon-xl) var(--sb-rayon-xl) 0 0;
}
.ag-form-bandeau .ag-marquage{ font-size:13px; }
.ag-form-compteur{ display:inline-flex; align-items:baseline; gap:6px; white-space:nowrap; }
.ag-form-compteur b{ font-family:var(--ag-titre); font-weight:800; font-size:16px; letter-spacing:0; }
.ag-form-total{ font-family:var(--ag-titre); font-weight:700; font-size:15px; opacity:.8; margin-left:-5px; }
.ag-form-escalier{ display:flex; align-items:flex-end; gap:4px; height:36px; padding:12px 22px 0; }
.ag-form-escalier i{ flex:1; height:calc(6px + var(--n) * 3px); border-radius:3px 3px 1px 1px; background:transparent; border:1.5px solid var(--sb-filet); transition:background-color .2s, border-color .2s; }
.ag-form-escalier i.est-fait{ background:var(--sb-kraft); border-color:var(--sb-kraft); }
.ag-form-escalier i.est-cours{ background:var(--sb-action); border-color:var(--sb-action); }
.ag-form{ padding:12px 22px 16px; margin:0; }
.ag-form-corps{ position:relative; }
.ag-form--hero .ag-form-corps{ min-height:326px; }
.ag-form-etape{ border:0; margin:0; padding:0; min-width:0; display:none; }
.ag-form-etape.est-active{ display:block; }
@media (prefers-reduced-motion:no-preference){ .ag-form-etape.est-active.est-entree{ animation:ag-etape .28s ease both; } }
@keyframes ag-etape{ from{ opacity:0; transform:translateX(14px); } to{ opacity:1; transform:none; } }
.ag-form-question{ display:block; width:100%; padding:0; margin:2px 0 14px; font-family:var(--ag-titre); font-weight:800; font-size:24px; line-height:1.12; letter-spacing:-.01em; color:var(--sb-encre); }
.ag-piege{ position:absolute!important; left:-9999px; width:1px; height:1px; overflow:hidden; }

.ag-tuile{
	position:relative; width:100%; min-height:64px; justify-content:flex-start; text-align:left; gap:14px; padding:10px 16px;
	background:#fff; color:var(--sb-encre); border:2px solid var(--sb-filet); border-radius:var(--sb-rayon);
	font-family:var(--ag-titre); font-weight:700; font-size:16.5px; line-height:1.18;
}
.ag-tuile:hover{ background:#fff; color:var(--sb-encre); border-color:#CDB896; transform:translateY(-2px); box-shadow:0 12px 22px -12px rgba(25,28,40,.4); }
.ag-tuile .ag-picto{ width:28px; height:28px; flex-shrink:0; }
.ag-tuile.est-choisi{ border-color:var(--sb-action); box-shadow:inset 0 0 0 1px var(--sb-action); }
.ag-tuile.est-choisi::after{
	content:""; position:absolute; top:-9px; right:-9px; width:26px; height:26px; border-radius:50%;
	background:var(--sb-action) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5 10 17l9-10'/%3E%3C/svg%3E") center / 15px no-repeat;
	box-shadow:0 2px 6px rgba(224,17,95,.45);
}
.ag-portes{ display:flex; flex-direction:column; gap:10px; }
.ag-tuile--porte{ border-left-width:8px; }
.ag-tuile--vert{ border-left-color:var(--sb-porte-particuliers); }
.ag-tuile--vert .ag-picto{ color:var(--sb-porte-particuliers-texte); }
.ag-tuile--bleu{ border-left-color:var(--sb-porte-revendeurs); }
.ag-tuile--bleu .ag-picto{ color:var(--sb-porte-revendeurs); }
.ag-tuile--rose{ border-left-color:var(--sb-action); }
.ag-tuile--rose .ag-picto{ color:var(--sb-action-texte); }
.ag-tuile--porte.est-suggere{ background:#FFFBF5; border-color:#CDB896; }
.ag-tuile--porte.est-choisi{ border-left-width:8px; }
.ag-rassure{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:4px 16px; font-size:14px; line-height:1.35; color:var(--sb-encre-douce); }
.ag-rassure li{ display:flex; align-items:flex-start; gap:6px; }
.ag-rassure li:last-child{ flex-basis:100%; }
.ag-rassure .ag-picto{ width:16px; height:16px; color:var(--sb-porte-particuliers); flex-shrink:0; margin-top:2px; stroke-width:3; }

.ag-choix{ display:grid; gap:10px; }
.ag-choix--grille{ grid-template-columns:1fr 1fr; }
.ag-choix--grille .ag-tuile{ font-size:15.5px; padding:8px 12px; min-height:74px; }
.ag-choix--pile{ grid-template-columns:1fr; }
.ag-marches{ display:flex; align-items:flex-end; gap:8px; }
.ag-marche{
	flex:1 1 0; min-width:0; min-height:calc(100px + var(--m) * 32px); flex-direction:column; justify-content:flex-end; align-items:flex-start;
	padding:10px 10px 12px; font-size:15px; border-top:7px solid #D4A971; border-radius:10px 10px var(--sb-rayon) var(--sb-rayon);
}
.ag-marche span{ hyphens:auto; }
.ag-tuile--lien{ display:inline-flex; width:auto; min-height:44px; margin-top:12px; padding:0 4px; border:0; background:none; font-family:var(--ag-texte); font-weight:700; font-size:15px; text-decoration:underline; text-underline-offset:4px; color:var(--sb-encre-douce); }
.ag-tuile--lien:hover{ transform:none; box-shadow:none; color:var(--sb-encre); }
.ag-tuile--lien.est-choisi::after{ display:none; }
.ag-bascule{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:14px; }
.ag-tuile--bascule{ flex-direction:column; align-items:flex-start; justify-content:center; gap:4px; min-height:88px; }

.ag-champ{ display:block; margin:0; }
.ag-champ > span{ display:block; font-weight:700; font-size:14px; line-height:1.2; margin-bottom:5px; color:var(--sb-encre); }
.ag-champ input,.ag-champ select,.ag-champ textarea{
	width:100%; height:56px; padding:0 16px; border:2px solid var(--sb-filet); border-radius:12px; background:#fff;
	font-size:17px; color:var(--sb-encre); transition:border-color .15s, box-shadow .15s;
}
.ag-champ textarea{ height:auto; padding:12px 16px; resize:vertical; min-height:96px; }
.ag-champ input:focus,.ag-champ select:focus,.ag-champ textarea:focus{ outline:none; border-color:var(--sb-porte-revendeurs); box-shadow:0 0 0 4px rgba(31,95,209,.15); }
.ag-champ.est-erreur input{ border-color:#B3123F; }
.ag-erreur{ display:block; font-style:normal; color:#B3123F; font-size:13.5px; font-weight:600; line-height:1.3; }
.ag-erreur:not(:empty){ margin-top:4px; }
.ag-puces{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.ag-puce{ min-height:40px; padding:0 14px; border-radius:999px; border:1.5px solid var(--sb-filet); background:var(--sb-fond); font-weight:700; font-size:15px; cursor:pointer; }
.ag-puce:hover{ border-color:var(--sb-kraft); }
.ag-coords{ display:grid; grid-template-columns:1fr 1fr; gap:8px 12px; }
.ag-coords .ag-champ > span{ font-size:13px; margin-bottom:3px; }
.ag-coords .ag-champ input{ height:50px; font-size:16px; }
.ag-form-etape--coords .ag-form-question{ margin-bottom:10px; font-size:22px; }
.ag-rgpd{ display:flex; align-items:flex-start; gap:10px; margin:12px 0 0; font-size:13.5px; line-height:1.35; color:var(--sb-encre-douce); cursor:pointer; }
.ag-rgpd input{ width:22px; height:22px; flex-shrink:0; margin:0; accent-color:var(--sb-action); }
.ag-btn--envoi{ width:100%; margin-top:12px; min-height:58px; font-size:19px; }
.ag-btn--envoi.est-envoi{ opacity:.7; pointer-events:none; }
.ag-form-nav{ display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:0; }
.ag-form-nav:has(:not([hidden])){ margin-top:10px; }
.ag-retour{ display:inline-flex; align-items:center; gap:6px; min-height:44px; padding:0 4px; border:0; background:none; cursor:pointer; color:var(--sb-encre-douce); font-weight:700; font-size:15px; }
.ag-retour .ag-picto{ width:18px; height:18px; }
.ag-retour:hover{ color:var(--sb-encre); }
.ag-btn--nav{ margin-left:auto; min-width:170px; }
.ag-date{ margin-top:12px; }
.ag-scotch--carte{ top:calc(var(--dh,0px) - 15px); right:calc(var(--dd,0px) + var(--sr,-30px)); --r:9deg; }
.ag-form-merci{ padding:26px 22px 24px; position:relative; }
.ag-scotch--merci{ position:relative; display:inline-flex; --r:-3deg; margin-bottom:16px; }
.ag-form-recap{ margin:12px 0; padding:12px 14px; background:var(--sb-fond); border-radius:12px; font-size:15px; }
.ag-form-recap:empty{ display:none; }
.ag-form-recap p{ margin:0; }
.ag-form-merci-liens{ display:flex; flex-direction:column; gap:6px; margin:0; }
.ag-form-merci-liens:empty{ display:none; }

/* Variante barre latérale d'article : compacte */
.ag-rail-form{ padding:0; border:0; background:transparent; }
.ag-form--rail{ box-shadow:var(--sb-ombre); border-radius:18px; }
.ag-form--rail .ag-scotch--carte{ display:none; }
.ag-form--rail .ag-form-bandeau{ border-radius:18px 18px 0 0; min-height:40px; padding:8px 18px; }
.ag-form--rail .ag-form-escalier{ padding:10px 18px 0; height:30px; }
.ag-form--rail .ag-form{ padding:10px 18px 14px; }
.ag-form--rail .ag-form-question{ font-size:20px; margin-bottom:10px; }
.ag-form--rail .ag-tuile{ min-height:52px; font-size:15px; padding:8px 12px; gap:10px; }
.ag-form--rail .ag-tuile .ag-picto{ width:24px; height:24px; }
.ag-form--rail .ag-portes{ gap:8px; }
.ag-form--rail .ag-rassure{ margin-top:10px; font-size:13px; }
.ag-form--rail .ag-rassure li:last-child{ display:none; }
.ag-form--rail .ag-choix--grille{ grid-template-columns:1fr; }
.ag-form--rail .ag-coords{ grid-template-columns:1fr; }

/* =====================================================================
   ACCUEIL — sections
   ===================================================================== */
/* 2. Les 3 portes */
.ag-portes-grille{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:28px; align-items:end; padding-top:18px; }
.ag-porte{
	position:relative; display:flex; flex-direction:column; background:#fff; border-radius:var(--sb-rayon); text-decoration:none; color:var(--sb-encre);
	box-shadow:var(--sb-ombre); border:1px solid #EDE2D0; transition:transform .2s ease, box-shadow .2s ease;
}
.ag-porte:hover{ color:var(--sb-encre); transform:translateY(-4px); box-shadow:var(--sb-ombre-forte); }
.ag-porte-rabats::before,.ag-porte-rabats::after{ content:""; position:absolute; bottom:calc(100% - 3px); width:50%; height:22px; background:#D4A971; border-radius:5px 5px 1px 1px; z-index:0; }
.ag-porte-rabats::before{ left:2px; transform-origin:bottom left; transform:rotate(-7deg); }
.ag-porte-rabats::after{ right:2px; transform-origin:bottom right; transform:rotate(6deg); background:#C99A60; }
.ag-porte-photo{ position:relative; display:block; height:166px; z-index:1; }
.ag-porte--haute .ag-porte-photo{ height:190px; }
.ag-porte-photo > img,.ag-porte-photo > .ag-repli{ width:100%; height:100%; object-fit:cover; border-radius:var(--sb-rayon) var(--sb-rayon) 0 0; }
.ag-porte-pastille{ position:absolute; left:20px; bottom:calc(var(--db,0px) - 17px); z-index:2; display:inline-flex; align-items:center; gap:8px; height:34px; padding:0 14px; border-radius:999px; background:var(--sb-encre); color:#fff; }
.ag-porte-pastille .ag-marquage{ font-size:13px; }
.ag-porte-pastille .ag-chiffre{ font-size:17px; font-weight:800; }
.ag-porte--vert .ag-porte-pastille{ background:var(--sb-porte-particuliers-texte); }
.ag-porte--bleu .ag-porte-pastille{ background:var(--sb-porte-revendeurs); }
.ag-porte--rose .ag-porte-pastille{ background:var(--sb-action-texte); }
.ag-porte-corps{ display:flex; flex-direction:column; gap:8px; padding:28px 22px 20px; flex:1; }
.ag-porte-titre{ font-family:var(--ag-titre); font-weight:800; font-size:23px; line-height:1.12; }
.ag-porte-texte{ font-size:16px; line-height:1.45; color:var(--sb-encre-douce); }
.ag-porte-btn{ align-self:flex-start; margin-top:4px; }
.ag-porte--vert .ag-porte-btn{ background:var(--sb-porte-particuliers-texte); }
.ag-porte--bleu .ag-porte-btn{ background:var(--sb-porte-revendeurs); }
.ag-porte:hover .ag-porte-btn{ filter:brightness(1.08); }
.ag-scotch--ruban{ top:22px; right:calc(var(--dd,0px) - 18px); --r:8deg; z-index:3; }

/* 3. L'outil */
.ag-outil{ background:var(--sb-encre); color:#E9E6EF; overflow:hidden; }
.ag-outil h2{ color:#fff; }
.ag-outil-in{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:56px; align-items:center; }
.ag-outil-texte > p{ color:#C9CCD8; max-width:34em; }
.ag-outil-curseur{ display:block; margin-top:26px; }
.ag-outil-curseur input{ width:100%; height:44px; accent-color:var(--sb-action); cursor:pointer; }
.ag-outil-graduations{ display:flex; justify-content:space-between; font-family:var(--ag-titre); font-weight:700; font-size:14px; color:#A9ADBD; }
.ag-outil-objet{ background:#22263A; border:1px solid #33384E; border-radius:var(--sb-rayon-xl); padding:28px 28px 26px; box-shadow:0 30px 60px -30px rgba(0,0,0,.7); }
.ag-outil-marches{ display:flex; align-items:flex-end; gap:12px; height:212px; margin-bottom:22px; border-bottom:3px solid #3A4057; padding-bottom:0; }
.ag-outil-marche{
	flex:1; height:calc(80px + var(--m) * 42px); display:flex; flex-direction:column; justify-content:flex-end; align-items:flex-start; gap:8px;
	padding:14px; border-radius:12px 12px 2px 2px; background:#2E3349; border:2px solid #3E4460; color:#E9E6EF; cursor:pointer;
	transition:background-color .25s, box-shadow .25s, transform .2s;
}
.ag-outil-marche .ag-picto{ width:30px; height:30px; color:#E9C99A; }
.ag-outil-marche .ag-marquage{ font-size:13px; text-align:left; }
.ag-outil-marche:hover{ transform:translateY(-3px); }
.ag-outil-marche.est-passee{ background:#4A3D2E; border-color:#6E5A40; }
.ag-outil-marche.est-allumee{ background:var(--sb-action); border-color:#FF5C93; color:#fff; box-shadow:0 0 0 4px rgba(224,17,95,.22), 0 22px 44px -12px rgba(224,17,95,.7); }
.ag-outil-marche.est-allumee .ag-picto{ color:#fff; }
.ag-outil-canal{ font-family:var(--ag-titre); font-weight:800; font-size:25px; line-height:1.15; color:#fff; margin:0 0 10px; }
.ag-outil-qui{ display:flex; align-items:center; gap:8px; font-weight:700; color:#E9C99A; margin:0 0 8px; }
.ag-outil-qui .ag-picto{ width:18px; height:18px; stroke-width:3; }
.ag-outil-detail{ color:#C9CCD8; margin:0 0 14px; font-size:16.5px; }
.ag-outil-actions{ display:flex; align-items:center; flex-wrap:wrap; gap:12px 24px; }
.ag-outil .ag-lien-fleche{ color:#FF7AA7; }
.ag-outil-panneau{ min-height:150px; }

/* 4. Les quais */
.ag-quais-rangee{ display:grid; grid-template-columns:repeat(8, minmax(0,1fr)); gap:16px; }
.ag-quai{ display:flex; flex-direction:column; text-decoration:none; color:var(--sb-encre); }
.ag-quai-photo{ position:relative; display:block; height:200px; border:6px solid var(--sb-encre); border-bottom-width:10px; border-radius:6px 6px 2px 2px; overflow:hidden; background:var(--ag-bleu-pale); }
.ag-quai-photo > img,.ag-quai-photo > .ag-repli{ width:100%; height:100%; object-fit:cover; }
.ag-quai-photo .ag-repli-picto{ width:40%; margin-top:40%; }
.ag-quai-rideau{
	position:absolute; left:6px; right:6px; top:6px; height:calc(200px * .45); z-index:2; transform-origin:top; transition:transform .35s ease;
	background:repeating-linear-gradient(180deg, #D7DCE5 0 14px, #C3C9D4 14px 17px, #E3E7EE 17px 18px);
	border-bottom:6px solid #8E96A6; display:flex; align-items:center; justify-content:center;
}
.ag-quai{ position:relative; }
.ag-quai:hover .ag-quai-rideau{ transform:scaleY(.72); }
.ag-quai-num{ font-size:46px; color:#fff; line-height:1; text-shadow:0 2px 0 rgba(25,28,40,.35), 0 0 1px rgba(25,28,40,.5); -webkit-text-stroke:1.5px rgba(25,28,40,.28); }
.ag-quai-etiquette{ display:flex; flex-direction:column; gap:2px; padding-top:10px; }
.ag-quai-etiquette .ag-marquage{ font-size:12px; color:var(--sb-porte-revendeurs); }
.ag-quai-ville{ font-family:var(--ag-titre); font-weight:800; font-size:18px; line-height:1.1; }
.ag-quai-nb{ font-size:14px; color:var(--sb-encre-douce); }
.ag-quais .ag-pilules{ margin-top:24px; }

/* 5. Le rayonnage */
.ag-rayonnage{ display:grid; grid-template-columns:repeat(7, minmax(0,1fr)); gap:16px 14px; }
.ag-case{ position:relative; display:flex; flex-direction:column; text-decoration:none; color:var(--sb-encre); }
.ag-case-photo{ display:block; height:96px; border-radius:var(--sb-rayon) var(--sb-rayon) 0 0; overflow:hidden; }
.ag-case-photo > img,.ag-case-photo > .ag-repli{ width:100%; height:100%; object-fit:cover; }
.ag-case-photo .ag-repli-picto{ width:44%; }
.ag-case-lisse{ display:block; height:14px; background:var(--sb-porte-revendeurs); border-radius:2px; box-shadow:inset 0 -3px 0 rgba(0,0,0,.18); }
.ag-case-etiquette{
	position:relative; margin:-7px 8px 0; padding:10px 12px 11px; background:#fff; border-radius:10px; box-shadow:var(--sb-ombre);
	display:flex; flex-direction:column; gap:3px; flex:1; transition:transform .2s;
}
.ag-case:hover .ag-case-etiquette{ transform:translateY(-3px); }
.ag-case-etiquette .ag-marquage{ font-size:12px; color:var(--sb-porte-revendeurs); }
.ag-case-nom{ font-family:var(--ag-titre); font-weight:800; font-size:16px; line-height:1.15; }
.ag-case-nb{ font-size:13.5px; color:var(--sb-encre-douce); margin-top:auto; }
.ag-case--tous .ag-case-photo{ background:var(--sb-encre); display:flex; align-items:center; justify-content:center; color:#fff; }
.ag-case--tous .ag-case-photo .ag-picto{ width:52px; height:52px; }

/* 6. Goodies */
.ag-goodies{ background:var(--sb-action); color:#fff; overflow:hidden; }
.ag-goodies-fond{ position:absolute; inset:0; }
.ag-goodies-fond > img,.ag-goodies-fond > .ag-repli{ width:100%; height:100%; object-fit:cover; }
.ag-goodies-fond .ag-repli-picto{ position:absolute; left:3%; bottom:-8%; width:300px; opacity:.16; }
.ag-goodies-fond::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(200,14,85,.92) 0%, rgba(224,17,95,.55) 55%, rgba(224,17,95,.2) 100%); }
.ag-goodies-in{ position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) 440px; gap:64px; align-items:center; }
.ag-goodies h2{ color:#fff; font-size:clamp(2rem, 1.2rem + 1.9vw, 3.25rem); line-height:1.05; margin-bottom:18px; }
.ag-vignette{ display:inline-block; vertical-align:middle; width:1.5em; height:1.05em; border-radius:12px; overflow:hidden; border:4px solid #fff; transform:rotate(-5deg); box-shadow:0 8px 18px -6px rgba(0,0,0,.35); margin:0 .08em; }
.ag-vignette--b{ transform:rotate(4deg); }
.ag-vignette > img,.ag-vignette > .ag-repli{ width:100%; height:100%; object-fit:cover; min-height:0; }
.ag-vignette .ag-repli::after{ display:none; }
.ag-goodies-texte > p{ font-size:18px; max-width:36em; color:#fff; }
.ag-goodies-points{ list-style:none; margin:20px 0 0; padding:0; display:flex; flex-direction:column; gap:8px; font-weight:700; }
.ag-goodies-points li{ display:flex; align-items:center; gap:10px; }
.ag-goodies-points .ag-picto{ width:22px; height:22px; background:#fff; color:var(--sb-action); border-radius:50%; padding:3px; stroke-width:3.4; }
.ag-goodies-carte{ position:relative; }
.ag-goodies-carte .ag-form-carte{ position:relative; z-index:1; }
.ag-goodies-carte .ag-scotch--carte{ --sr:-14px; }

/* 7. Derniers guides */
.ag-guides-grille{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:20px 24px; }

/* Cartes d'article */
.ag-carte-art{ min-width:0; }
.ag-carte-art.est-cachee{ display:none; }
.ag-carte-art > a{ display:flex; flex-direction:column; height:100%; background:#fff; border:1px solid #EDE2D0; border-radius:var(--sb-rayon); overflow:hidden; text-decoration:none; color:var(--sb-encre); box-shadow:0 2px 0 rgba(25,28,40,.05); transition:transform .2s ease, box-shadow .2s ease; }
.ag-carte-art > a:hover{ color:var(--sb-encre); transform:translateY(-4px); box-shadow:var(--sb-ombre); }
.ag-carte-art-photo{ position:relative; display:block; aspect-ratio:3/2; overflow:hidden; }
.ag-carte-art-photo > img,.ag-carte-art-photo > .ag-repli{ width:100%; height:100%; object-fit:cover; }
.ag-carte-art-photo .ag-repli-picto{ width:30%; }
.ag-carte-art-photo .ag-pastille{ position:absolute; left:12px; bottom:12px; font-size:13px; min-height:30px; padding:3px 12px; z-index:1; }
.ag-carte-art-corps{ display:flex; flex-direction:column; gap:8px; padding:16px 18px 18px; flex:1; }
.ag-carte-art-titre{ font-family:var(--ag-titre); font-weight:700; font-size:19px; line-height:1.22; }
.ag-carte-art-date{ margin-top:auto; font-size:14px; color:var(--sb-encre-douce); }
.ag-carte-art--compacte .ag-carte-art-photo{ aspect-ratio:auto; height:104px; }
.ag-carte-art--compacte .ag-repli-picto{ width:auto; height:64%; margin-left:46%; }
.ag-carte-art--compacte .ag-carte-art-corps{ padding:14px 16px 16px; gap:6px; }
.ag-carte-art--compacte .ag-carte-art-titre{ font-size:17.5px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

/* 8. Chiffres + méthode */
.ag-chiffres-in{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:56px; align-items:center; }
.ag-chiffres h2{ margin-bottom:6px; }
.ag-chiffres-date{ color:var(--sb-encre-douce); font-size:15px; margin:0 0 24px; }
.ag-tuiles{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:18px; }
.ag-tuile-carton{
	position:relative; display:flex; flex-direction:column; gap:4px; padding:16px 20px 18px; border-radius:var(--sb-rayon);
	background:#E4C99F; background-image:linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,0) 60%); box-shadow:var(--sb-ombre);
	border:2px solid #C99A60;
}
.ag-tuile-carton::after{ content:""; position:absolute; top:-2px; left:44%; width:12%; height:34px; background:rgba(224,17,95,.85); clip-path:polygon(0 0,100% 0,100% 85%,80% 100%,60% 85%,40% 100%,20% 85%,0 100%); }
.ag-tuile-marquage{ font-size:12px; color:#6E5530; }
.ag-tuile-chiffre{ font-size:clamp(56px, 3.2vw + 20px, 96px); line-height:.95; color:var(--sb-encre); }
.ag-tuile-legende{ font-weight:700; font-size:16px; line-height:1.25; }
.ag-methode{ background:#fff; border-radius:var(--sb-rayon-xl); padding:26px 28px; box-shadow:var(--sb-ombre); }
.ag-methode-tete{ display:flex; align-items:center; gap:18px; margin-bottom:16px; }
.ag-methode-tete h3{ margin:0!important; }
.ag-methode-photo{ display:block; width:96px; height:96px; flex-shrink:0; border-radius:50%; overflow:hidden; border:4px solid var(--sb-fond-kraft); }
.ag-methode-photo > img,.ag-methode-photo > .ag-repli{ width:100%; height:100%; object-fit:cover; }
.ag-methode h3{ font-size:23px; margin:0 0 12px; }
.ag-methode-etapes{ list-style:none; margin:0 0 10px; padding:0; display:flex; flex-direction:column; gap:10px; }
.ag-methode-etapes li{ display:flex; gap:12px; align-items:flex-start; font-size:16px; line-height:1.4; }
.ag-methode-etapes b{ flex-shrink:0; width:30px; height:30px; border-radius:8px; background:var(--sb-encre); color:#fff; display:flex; align-items:center; justify-content:center; font-size:16px; }

/* 9. FAQ + dernier appel */
.ag-fin{ padding-top:52px; padding-bottom:88px; }
.ag-fin-faq h2{ margin-bottom:16px!important; }
.ag-fin .sbt-faq-liste summary{ min-height:56px; }
.ag-fin-in{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:56px; align-items:start; }
.ag-fin-faq h2{ margin-bottom:20px; }
.ag-fin-appel{ position:relative; background:var(--sb-fond-kraft); border-radius:var(--sb-rayon-xl); padding:40px 34px 32px; box-shadow:var(--sb-ombre); margin-top:8px; }
.ag-scotch--coin{ top:calc(var(--dh,0px) - 14px); right:28px; --r:5deg; }
.ag-fin-picto{ display:flex; width:60px; height:60px; border-radius:16px; background:var(--sb-encre); color:#fff; align-items:center; justify-content:center; margin-bottom:16px; }
.ag-fin-picto .ag-picto{ width:30px; height:30px; }
.ag-fin-appel h3{ font-size:28px; line-height:1.1; margin-bottom:12px; }
.ag-fin-appel p{ color:var(--sb-encre-douce); }
.ag-fin-note{ display:flex; align-items:center; gap:8px; margin:14px 0 0; font-size:15px; }
.ag-fin-note .ag-picto{ width:18px; height:18px; color:var(--sb-porte-particuliers); stroke-width:3; }

/* FAQ figée : habillage */
.ag-fin .sbt-faq{ background:transparent; padding:0; border:0; box-shadow:none; }
.sbt-faq-liste details{ background:#fff; border:1px solid var(--sb-filet); border-radius:var(--sb-rayon); }
.sbt-faq-liste summary{ font-family:var(--ag-titre); font-weight:700; font-size:19px; line-height:1.25; min-height:60px; }
.sbt-faq-reponse{ font-size:16.5px; }

/* =====================================================================
   ARTICLE — en-tête « coupe cannelée » + corps (blocs figés habillés)
   ===================================================================== */
.ag-entete-art{ position:relative; background:var(--sb-fond-kraft); padding:4px 0 58px; }
.ag-entete-art-in{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:56px; align-items:start; }
.ag-entete-art .sbt-fil-ariane{ padding-block:16px 14px; font-size:14px; }
.ag-entete-art .sbt-fil-ariane a{ color:var(--sb-encre-douce); }
.ag-entete-art h1{ font-size:clamp(2rem, 1.15rem + 2.45vw, 3.5rem); font-weight:800; line-height:1.04; letter-spacing:-.02em; margin:18px 0 0; max-width:17em; }
.ag-chapo{ font-size:clamp(1.0625rem, .98rem + .35vw, 1.25rem); line-height:1.5; color:var(--sb-encre-douce); margin:16px 0 0; max-width:38em; }
.ag-auteur-ligne{ display:flex; align-items:center; gap:14px; margin-top:22px; font-size:15px; }
.ag-auteur-ligne img,.ag-auteur-photo{ width:48px!important; height:48px!important; border-radius:50%; object-fit:cover; border:2px solid #fff; box-shadow:0 2px 6px rgba(25,28,40,.15); flex-shrink:0; }
.ag-auteur-ligne > span{ display:flex; flex-direction:column; line-height:1.35; }
.ag-auteur-nom{ font-family:var(--ag-titre); font-weight:700; font-size:16px; color:var(--sb-encre); text-decoration:none; }
.ag-auteur-nom:hover{ text-decoration:underline; }
.ag-auteur-dates{ color:var(--sb-encre-douce); font-size:14.5px; }
.ag-auteur-dates--page{ margin:18px 0 0; }
.ag-entete-art-photo{ position:relative; margin-top:54px; }
.ag-entete-art-cadre{ display:block; aspect-ratio:4/3; max-height:380px; width:100%; border-radius:18px; overflow:hidden; box-shadow:var(--sb-ombre-forte); background:#fff; }
.ag-entete-art-cadre > img,.ag-entete-art-cadre > .ag-repli{ width:100%; height:100%; object-fit:cover; }
.ag-tirette{ position:absolute; z-index:2; left:22px; right:22px; top:-13px; border-top:2px dashed rgba(25,28,40,.55); }
.ag-tirette span{ position:absolute; right:0; top:-14px; padding:4px 10px 3px; background:var(--sb-kraft); color:var(--sb-encre); border-radius:4px 4px 0 0; font-size:11px; }
.ag-scotch--travers{ top:14px; left:-24px; width:140px; height:32px; padding:0; --r:-9deg; }
.ag-lot{ position:absolute; z-index:3; left:24px; bottom:-20px; display:inline-flex; align-items:center; gap:10px; max-width:calc(100% - 48px); padding:9px 18px; background:var(--sb-encre); color:#fff; border-radius:999px; box-shadow:0 6px 14px -6px rgba(25,28,40,.5); }
.ag-lot .ag-marquage{ font-size:12px; color:#E9C99A; }
.ag-lot-nom{ font-family:var(--ag-titre); font-weight:700; font-size:15px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* Corps : rythme vertical serré, jamais de trou de 100 px */
.sbt-article-mise-en-page{ padding:48px var(--ag-gout) 72px; max-width:calc(1280px + 2 * 80px); justify-content:stretch; }
@media (min-width:1081px){ .sbt-article-mise-en-page{ grid-template-columns:minmax(0,1fr) 392px; column-gap:64px; } .sbt-article-principal{ max-width:780px; } }
@media (min-width:1700px){ .sbt-article-mise-en-page{ max-width:calc(1440px + 160px); grid-template-columns:minmax(0,1fr) 420px; } .sbt-article-principal{ max-width:820px; } }
.sbt-article-corps{ font-size:18px; line-height:1.68; color:var(--sb-encre); overflow-wrap:break-word; }
.sbt-article-corps a{ overflow-wrap:anywhere; }
@media (min-width:1700px){ .sbt-article-corps{ font-size:19px; } }
.sbt-article-corps > *:first-child{ margin-top:0; }
.sbt-article-corps p{ margin:0 0 1em; }
.sbt-article-corps h2{ font-size:clamp(1.625rem, 1.25rem + 1vw, 2.125rem); font-weight:800; line-height:1.12; margin:1.45em 0 .45em; scroll-margin-top:calc(var(--ag-entete-h) + 20px); }
.sbt-article-corps h3{ font-size:clamp(1.25rem, 1.1rem + .4vw, 1.4375rem); font-weight:700; line-height:1.2; margin:1.25em 0 .4em; }
.sbt-article-corps h2 + h3{ margin-top:.5em; }
.sbt-article-corps ul,.sbt-article-corps ol{ margin:0 0 1.1em; padding-left:1.3em; }
.sbt-article-corps li{ margin-bottom:.35em; }
.sbt-article-corps a{ color:var(--sb-action-texte); font-weight:600; }
.sbt-article-corps img{ margin-block:1.2em; }
.sbt-article-corps table{ width:100%; border-collapse:collapse; margin:0 0 1.2em; font-size:16px; }
.sbt-article-corps th,.sbt-article-corps td{ padding:10px 12px; border-bottom:1px solid var(--sb-filet); text-align:left; }
.sbt-article-corps th{ font-family:var(--ag-titre); background:var(--sb-fond-kraft); }
.sbt-article-corps blockquote{ background:var(--sb-fond-kraft); border-left-color:var(--sb-kraft); font-style:normal; }
.sb-encadre{ position:relative; margin:1.4em 0; padding:22px 24px 18px; background:var(--ag-vert-pale); border-radius:var(--sb-rayon); border:1px solid #C9E5D3; }
.sb-encadre::before{ content:"Conseil"; display:inline-block; font-family:var(--ag-marquage); text-transform:uppercase; letter-spacing:.08em; font-size:13px; color:var(--sb-porte-particuliers-texte); margin-bottom:6px; }
.sb-encadre p:last-child{ margin-bottom:0; }
.sbt-encadre{ border-radius:var(--sb-rayon); }
.sbt-encadre-titre{ font-family:var(--ag-marquage)!important; text-transform:uppercase; letter-spacing:.08em; font-weight:400!important; }
.sbt-encadre--retenir{ background:var(--sb-encre)!important; color:#F3EEE6; }
.sbt-encadre--retenir .sbt-encadre-titre{ color:#E9C99A!important; }
.ag-fin-article{ display:flex; align-items:center; gap:18px; margin:32px 0 28px; padding:20px 22px; background:var(--ag-bleu-pale); border-radius:var(--sb-rayon); border:1px solid #C9D8F4; }
.ag-fin-article p{ margin:0; flex:1; display:flex; flex-direction:column; line-height:1.4; }
.ag-fin-article strong{ font-family:var(--ag-titre); font-size:19px; }
.ag-fin-article span{ font-size:15px; color:var(--sb-encre-douce); }
.ag-fin-article-picto{ display:flex; width:52px; height:52px; border-radius:14px; background:var(--sb-porte-revendeurs); color:#fff; align-items:center; justify-content:center; flex-shrink:0; }
.ag-fin-article-picto .ag-picto{ width:28px; height:28px; }

/* Barre latérale : UN bloc collant (sommaire + formulaire), plus court que l'écran */
.sbt-rail{ top:calc(var(--ag-entete-h) + 16px); border-left:0; padding-left:0; gap:14px; }
.sbt-rail-carte{ border-radius:18px; border-color:#EDE2D0; }
.sbt-rail-carte--sommaire{ padding:0; border:0; background:transparent; }
.sbt-sommaire{ background:#fff; border:1px solid #EDE2D0; border-left:0; border-top:6px solid var(--sb-kraft); border-radius:16px; padding:12px 16px 14px; }
.sbt-sommaire-titre{ font-family:var(--ag-marquage); font-weight:400; text-transform:uppercase; letter-spacing:.08em; font-size:13px; color:var(--sb-encre-douce); }
.sbt-sommaire ol{ margin-top:10px; gap:5px; }
.sbt-sommaire li a{ font-size:14.5px; line-height:1.3; gap:9px; align-items:flex-start; }
.sbt-sommaire li a.est-lu,.sbt-sommaire li a[aria-current]{ color:var(--sb-action-texte); font-weight:700; }
.sbt-sommaire-num{ width:22px; height:22px; border-radius:6px; background:var(--sb-fond-kraft); font-size:11.5px; margin-top:-1px; font-variant-numeric:lining-nums tabular-nums; }
.sbt-sommaire-mobile .sbt-sommaire{ border-top-width:6px; }

/* À lire aussi */
.sbt-a-lire{ border-top:0; margin-top:24px; padding-top:0; }
.sbt-kicker{ font-family:var(--ag-titre); font-weight:800; font-size:26px; margin-bottom:16px; }
.sbt-carte{ border-color:#EDE2D0; box-shadow:0 2px 0 rgba(25,28,40,.05); }
.sbt-carte-photo{ display:block; aspect-ratio:16/10; overflow:hidden; }
.sbt-carte-photo > img,.sbt-carte-photo > .ag-repli{ width:100%; height:100%; object-fit:cover; aspect-ratio:auto; }
.sbt-carte-photo .ag-repli-picto{ width:30%; }
.sbt-carte-corps h3{ font-size:17px; line-height:1.25; }
.sbt-article-mise-en-page--suite{ padding-bottom:clamp(72px, 7vw, 104px); }

/* Boîte auteur */
.sbt-auteur{ border-radius:var(--sb-rayon-xl); background:#fff; border:1px solid #EDE2D0; }
.sbt-auteur-sur{ font-family:var(--ag-marquage); text-transform:uppercase; letter-spacing:.08em; }
.sbt-auteur-photo img{ border-radius:50%; }

/* Pied figé : habillage */
.sbt-btn{ border-radius:var(--sb-rayon); font-family:var(--ag-titre); min-height:48px; }
.sbt-footer{ position:relative; overflow:hidden; background:var(--sb-encre); padding-top:76px; padding-bottom:28px; margin-top:0; }
.sbt-conteneur{ max-width:calc(1280px + 2 * 80px); padding-inline:var(--ag-gout); }
@media (min-width:1700px){ .sbt-conteneur{ max-width:calc(1440px + 160px); } }
.sbt-footer-colonne li{ line-height:1.3; }
.sbt-footer::before{
	content:"ACHAT-GROS.COM \2022  LE GUIDE DE L’ACHAT EN GROS \2022  ACHAT-GROS.COM \2022  LE GUIDE DE L’ACHAT EN GROS \2022  ACHAT-GROS.COM \2022  LE GUIDE DE L’ACHAT EN GROS \2022  ACHAT-GROS.COM \2022  LE GUIDE DE L’ACHAT EN GROS \2022  ACHAT-GROS.COM \2022  LE GUIDE DE L’ACHAT EN GROS \2022  ACHAT-GROS.COM \2022  LE GUIDE DE L’ACHAT EN GROS \2022";
	position:absolute; left:-20px; right:-20px; top:14px; height:34px; display:flex; align-items:center; overflow:hidden; white-space:nowrap;
	padding-left:24px; font-family:var(--ag-marquage); font-size:14px; letter-spacing:.12em; color:var(--sb-encre);
	background:rgba(196,149,92,.95); transform:rotate(-.8deg);
	clip-path:polygon(0 0,100% 0,100% 100%,0 100%);
}
.sbt-footer a{ color:#E6DCCB; }
.sbt-footer a:hover{ color:#fff; text-decoration:underline; }
.sbt-footer-cta{ background:#242839; border-radius:var(--sb-rayon-xl); border:0; padding:26px 30px; margin-bottom:40px; }
.sbt-footer-cta .sbt-t3{ font-family:var(--ag-titre); font-size:24px; }
.sbt-footer-cta p{ color:#C9CCD8; }
.sbt-footer-cta .sbt-btn{ background:var(--sb-action); padding:14px 28px; font-size:17px; }
/* 08/10 (contraste_reel) : « .sbt-footer a » teintait le bouton en crème (3,5:1 sur le rose) → texte blanc, 4,7:1. */
.sbt-footer .sbt-btn,.sbt-footer .sbt-btn:hover{ color:#fff; }
/* 08/10 (contraste_reel) : date « consulté le » des sources (mu-plugin, non modifié) à 2,16:1 → encre douce opaque. */
[class*="sbsrc-"][class$="__date"],[class*="sbsrc-"][class*="__date "]{ color:#55596A !important; opacity:1 !important; }
.sbt-footer-grille{ grid-template-columns:1.25fr 1.6fr 1fr 1.6fr .9fr; gap:32px; border-bottom-color:rgba(255,255,255,.1); }
.sbt-footer-colonne .sbt-t4{ font-family:var(--ag-marquage); font-weight:400; font-size:13px; letter-spacing:.1em; color:#E9C99A; }
.sbt-footer-colonne ul{ gap:9px; }
.sbt-footer-colonne ul a{ font-size:15px; }
.sbt-footer-grille > .sbt-footer-colonne:nth-child(2) ul,.ag-footer-villes ul{ display:grid; grid-template-columns:1fr 1fr; gap:9px 18px; }
.sbt-footer-logo{ margin-bottom:16px; }
.sbt-footer-logo .ag-logo-svg{ height:32px; width:auto; }
.sbt-footer-desc{ color:#C9CCD8; font-size:15px; }
.sbt-footer-bas{ color:#A9ADBD; font-size:14px; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.sbt-footer-bas::after{
	content:""; height:26px; width:min(360px, 60%); opacity:.22;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='26' viewBox='0 0 120 26' fill='none' stroke='%23FBF8F3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 22V6M4.5 9.5 8 6l3.5 3.5M16 22V6M12.5 9.5 16 6l3.5 3.5'/%3E%3Cpath d='M38 3h10l-1 6a4 4 0 0 1-8 0zM43 13v8M39.5 23h7'/%3E%3Cpath d='M64 13a9 9 0 0 1 18 0zM73 13v7a2 2 0 0 1-4 0'/%3E%3Crect x='96' y='13' width='16' height='9'/%3E%3Crect x='96' y='4' width='16' height='9'/%3E%3Cpath d='M94 2h20'/%3E%3C/svg%3E") repeat-x left center / 120px 26px;
}
.sbt-cookies{ background:var(--sb-encre); left:12px; right:auto; max-width:560px; bottom:12px; border:1px solid #33384E; }
.sbt-cookies .sbt-btn{ min-height:36px; }
@media (max-width:1180px){ .sbt-footer-grille{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:767px){
	.sbt-footer{ padding-top:70px; padding-bottom:96px; }
	.sbt-footer-grille{ grid-template-columns:1fr 1fr; gap:28px 20px; }
	.sbt-footer-grille > .sbt-footer-colonne:first-child,.sbt-footer-grille > .sbt-footer-colonne:nth-child(2),.ag-footer-villes{ grid-column:1 / -1; }
	.sbt-cookies{ left:8px; right:8px; max-width:none; bottom:84px; }
	.ag-rubrique-in{ gap:0; }
}

/* =====================================================================
   PAGES
   ===================================================================== */
.ag-page-legale{ max-width:820px; margin:0 auto; padding:48px var(--ag-gout) clamp(72px, 7vw, 104px); }

/* Page ville — rideau de quai */
.ag-ville-hero{ position:relative; }
.ag-ville-scene{ position:relative; height:clamp(560px, calc(100vh - var(--ag-entete-h) - 40px), 700px); overflow:hidden; background:var(--ag-bleu-pale); }
.ag-ville-photo{ position:absolute; inset:0; }
.ag-ville-photo > img,.ag-ville-photo > .ag-repli{ width:100%; height:100%; object-fit:cover; }
.ag-ville-photo .ag-repli-picto{ position:absolute; right:38%; bottom:8%; width:200px; opacity:.5; }
.ag-ville-scene.a-photo .ag-ville-photo::after{ content:""; position:absolute; inset:0; background:linear-gradient(0deg, rgba(25,28,40,.82) 0%, rgba(25,28,40,.25) 55%, rgba(25,28,40,0) 70%); }
.ag-rideau{ position:absolute; left:0; right:0; top:0; height:44%; z-index:1; overflow:hidden; border-bottom:14px solid #8E96A6; box-shadow:0 10px 24px -10px rgba(25,28,40,.5); }
.ag-rideau-lames{ position:absolute; inset:0; background:repeating-linear-gradient(180deg, #D7DCE5 0 26px, #C3C9D4 26px 30px, #E6E9EF 30px 31px); }
.ag-rideau-num{ position:absolute; left:max(var(--ag-gout), calc((100vw - 1280px) / 2)); bottom:-.12em; font-size:clamp(120px, 14vw, 230px); line-height:.8; color:#fff; letter-spacing:-.04em; text-shadow:0 4px 0 rgba(25,28,40,.28); -webkit-text-stroke:2px rgba(25,28,40,.22); }
.ag-rideau-barre{ position:absolute; left:50%; bottom:6px; width:90px; height:10px; margin-left:-45px; border-radius:5px; background:#6F7788; }
.ag-ville-in{ position:relative; z-index:2; height:100%; display:grid; grid-template-columns:minmax(0,1fr) 420px; gap:48px; }
.ag-ville-texte{ align-self:end; padding-bottom:40px; max-width:640px; }
.ag-ville-texte .sbt-fil-ariane{ padding-block:0 8px; font-size:14px; }
.ag-ville-quai{ display:inline-flex; align-items:center; gap:10px; margin:0 0 10px; padding:6px 14px; background:var(--sb-encre); color:#fff; border-radius:8px; }
.ag-ville-quai .ag-marquage{ color:#E9C99A; font-size:13px; }
.ag-ville-quai-nom{ font-family:var(--ag-titre); font-weight:800; font-size:16px; }
.ag-ville-texte h1{ font-size:clamp(2.25rem, 1.4rem + 2.4vw, 3.5rem); font-weight:900; line-height:1; margin:0 0 10px; }
.ag-ville-sous{ font-size:20px; font-weight:600; margin:0 0 16px; }
.ag-ville-chiffres{ list-style:none; margin:0; padding:0; display:flex; gap:12px; flex-wrap:wrap; }
.ag-ville-chiffres li{ display:flex; flex-direction:column; padding:10px 16px; background:rgba(255,255,255,.88); border-radius:12px; box-shadow:0 4px 14px -8px rgba(25,28,40,.4); }
.ag-ville-chiffres b{ font-family:var(--ag-titre); font-weight:800; font-size:24px; line-height:1.1; }
.ag-ville-chiffres span{ font-size:13.5px; color:var(--sb-encre-douce); }
.ag-ville-scene.a-photo .ag-ville-texte,.ag-ville-scene.a-photo .ag-ville-texte h1,.ag-ville-scene.a-photo .ag-ville-texte a{ color:#fff; }
.ag-ville-carte{ position:relative; padding-top:24px; }
.ag-ville-carte .ag-form--hero{ position:relative; top:0; left:0; width:100%; }
.ag-ville-corps{ display:grid; grid-template-columns:minmax(0,1fr) 400px; gap:56px; align-items:start; padding-top:48px; padding-bottom:32px; }
.ag-ville-texte-long > p:first-child{ font-size:20px; line-height:1.55; }
.ag-ville-texte-long sbs-lieu{ margin:0 0 14px; }
.ag-acc{ background:#fff; border:1px solid #EDE2D0; border-radius:var(--sb-rayon); margin:0 0 12px; box-shadow:0 2px 0 rgba(25,28,40,.04); }
.ag-acc > summary{ list-style:none; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 20px; cursor:pointer; min-height:64px; }
.ag-acc > summary::-webkit-details-marker{ display:none; }
.ag-acc > summary h2{ margin:0!important; font-size:clamp(1.25rem, 1.1rem + .5vw, 1.5rem)!important; }
.ag-acc-ic{ width:24px; height:24px; flex-shrink:0; transform:rotate(90deg); transition:transform .2s; color:var(--sb-action); }
.ag-acc[open] .ag-acc-ic{ transform:rotate(-90deg); }
.ag-acc-corps{ padding:0 20px 8px; }
.ag-faq-ville{ margin-top:28px; }
.ag-ville-colonne{ position:sticky; top:calc(var(--ag-entete-h) + 16px); }
.ag-ville-colonne-titre{ font-family:var(--ag-titre); font-weight:800; font-size:22px; line-height:1.15; margin:0 0 14px; }
.ag-ville-autres{ padding-top:24px; }
.ag-ville-autres h2{ font-size:clamp(1.5rem, 1.2rem + .8vw, 2rem); }

/* Infographies du socle */
sbs-lieu,sbs-tarifs,sbs-frise,sbs-jauges,sbs-tarif,sbs-etape,sbs-jauge{ display:block; }
.sbs_lieu{ position:relative; margin:1.2em 0; padding:18px 20px 16px 72px; background:#fff; border:1px solid #EDE2D0; border-radius:var(--sb-rayon); box-shadow:0 2px 0 rgba(25,28,40,.04); }
.sbs_lieu::before{ content:""; position:absolute; left:18px; top:18px; width:38px; height:38px; border-radius:10px; background:var(--sb-porte-revendeurs) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21V9l9-6 9 6v12'/%3E%3Cpath d='M7 21v-8h10v8'/%3E%3C/svg%3E") center / 22px no-repeat; }
.sbs_lieu_nom{ display:block; font-family:var(--ag-titre); font-weight:800; font-size:20px; line-height:1.2; }
.sbs_lieu_adresse{ font-style:normal; font-weight:600; margin:4px 0; }
.sbs_lieu_acces{ display:block; font-size:15px; color:var(--sb-encre-douce); line-height:1.45; }
.sbs_lieu_carte{ display:inline-flex; align-items:center; gap:6px; margin-top:8px; font-weight:700; font-size:15px; min-height:40px; }
.sbs_lieu_carte svg{ width:18px; height:18px; fill:currentColor; }
.sbs_source{ display:block; margin-top:6px; font-size:13px; color:var(--sb-encre-douce); }
.sbs_tarifs,.sbs_frise,.sbs_jauges{ margin:1.4em 0; padding:20px 22px; background:#fff; border:1px solid #EDE2D0; border-radius:var(--sb-rayon); }
.sbs_tarifs_titre,.sbs_frise_titre,.sbs_jauges_titre{ display:block; font-family:var(--ag-titre); font-weight:800; font-size:19px; margin-bottom:12px; }
.sbs_tarif{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:12px; align-items:center; padding:7px 0; border-bottom:1px dashed var(--sb-filet); }
.sbs_tarif_libelle{ font-size:15.5px; font-weight:600; }
.sbs_tarif_barre{ width:100%; height:28px; }
.sbs_tarif_barre::-webkit-meter-bar{ background:var(--sb-fond-kraft); border:0; border-radius:6px; height:28px; }
.sbs_tarif_barre::-webkit-meter-optimum-value{ background:var(--sb-kraft); border-radius:6px; }
.sbs_tarif_barre::-moz-meter-bar{ background:var(--sb-kraft); }
.sbs_tarifs_notes{ display:block; margin-top:10px; font-size:14px; color:var(--sb-encre-douce); }
.sbs_frise{ counter-reset:etape; }
.sbs_etape{ position:relative; padding:0 0 16px 46px; }
.sbs_etape::before{ counter-increment:etape; content:counter(etape); position:absolute; left:0; top:0; width:32px; height:32px; border-radius:8px; background:var(--sb-encre); color:#fff; font-family:var(--ag-titre); font-weight:800; display:flex; align-items:center; justify-content:center; font-size:16px; }
.sbs_etape::after{ content:""; position:absolute; left:15px; top:36px; bottom:2px; width:2px; background:var(--sb-filet); }
.sbs_etape:last-of-type::after{ display:none; }
.sbs_etape_date{ display:block; font-family:var(--ag-titre); font-weight:700; font-size:14px; color:var(--sb-action-texte); }
.sbs_etape_titre{ display:block; font-family:var(--ag-titre); font-weight:800; font-size:18px; line-height:1.25; }
.sbs_etape_desc{ display:block; font-size:15.5px; color:var(--sb-encre-douce); line-height:1.45; }
.sbs_jauges{ display:grid; grid-template-columns:repeat(auto-fit, minmax(160px, 1fr)); gap:14px; }
.sbs_jauges_titre,.sbs_jauges > .sbs_source{ grid-column:1 / -1; margin-bottom:0; }
.sbs_jauge{ padding:14px 16px; border-radius:12px; background:var(--sb-fond-kraft); display:flex; flex-direction:column; gap:4px; }
.sbs_jauge_libelle{ font-size:14px; font-weight:700; line-height:1.3; }
.sbs_jauge_valeur{ font-family:var(--ag-titre); font-weight:900; font-size:34px; line-height:1; font-variant-numeric:lining-nums tabular-nums; }
.sbs_jauge_unite{ font-size:13.5px; color:var(--sb-encre-douce); }

/* Rubrique — mur de cartons gerbés */
.ag-rubrique{ position:relative; background:var(--sb-fond-kraft); padding:4px 0 60px; }
.ag-rubrique-in{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:56px; align-items:center; }
.ag-rubrique .sbt-fil-ariane{ padding-block:16px 10px; font-size:14px; }
.ag-rubrique h1{ font-size:clamp(2rem, 1.3rem + 2vw, 3rem); font-weight:900; margin:0 0 10px; }
.ag-rubrique .ag-chapo{ margin:0 0 20px; max-width:34em; }
.ag-gerbage{ display:flex; align-items:center; gap:18px; }
.ag-gerbage-picto{ position:relative; width:132px; height:132px; color:var(--sb-encre); flex-shrink:0; }
.ag-gerbage-picto svg{ width:100%; height:100%; }
.ag-gerbage-picto b{ position:absolute; left:0; right:0; top:33%; bottom:8%; display:flex; align-items:center; justify-content:center; font-size:52px; line-height:1; }
.ag-gerbage-legende{ font-family:var(--ag-titre); font-weight:700; font-size:18px; line-height:1.25; max-width:12em; }
.ag-mur{ position:relative; display:grid; grid-template-columns:repeat(7, minmax(0,1fr)); grid-template-rows:auto auto; gap:12px 10px; padding-top:20px; }
.ag-mur-carton{ position:relative; height:150px; padding:7px; border-radius:9px; background:#C99A60; box-shadow:var(--sb-ombre); display:flex; flex-direction:column; overflow:hidden; }
.ag-mur-carton--0{ grid-row:1; grid-column:2 / 4; }
.ag-mur-carton--1{ grid-row:1; grid-column:4 / 6; }
.ag-mur-carton--2{ grid-row:1; grid-column:6 / 8; }
.ag-mur-carton--3{ grid-row:2; grid-column:1 / 3; }
.ag-mur-carton--4{ grid-row:2; grid-column:3 / 5; }
.ag-mur-carton--5{ grid-row:2; grid-column:5 / 7; }
.ag-mur-photo{ flex:1; min-height:0; border-radius:5px; overflow:hidden; }
.ag-mur-photo > img,.ag-mur-photo > .ag-repli{ width:100%; height:100%; object-fit:cover; min-height:0; }
.ag-mur-photo .ag-repli-picto{ width:36%; }
.ag-mur-titre{ display:block; margin-top:6px; padding:6px 8px; background:#fff; border-radius:5px; font-family:var(--ag-titre); font-weight:700; font-size:13px; line-height:1.2; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.ag-mur-carton--plein{ align-items:center; justify-content:center; background-image:repeating-linear-gradient(180deg, rgba(255,255,255,.08) 0 2px, transparent 2px 10px); }
.ag-mur-picto{ width:58px; height:58px; color:rgba(25,28,40,.72); }
.ag-mur-picto svg{ width:100%; height:100%; }
.ag-scotch--mur{ top:6px; right:4%; width:150px; height:30px; padding:0; --r:10deg; }
.ag-liste{ padding-top:48px; }
.ag-grille-art{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px; }
.ag-plus{ display:flex; justify-content:center; margin-top:32px; }
.ag-vide{ max-width:640px; margin:0 auto; text-align:center; padding:40px 28px; background:#fff; border:2px dashed var(--sb-filet); border-radius:var(--sb-rayon-xl); }
.ag-vide-picto{ display:inline-flex; width:72px; height:72px; color:var(--sb-kraft-fonce); margin-bottom:8px; }
.ag-vide-picto svg{ width:100%; height:100%; }
.ag-vide-titre{ font-family:var(--ag-titre); font-weight:800; font-size:24px; }
.ag-rubrique-pied{ background:var(--sb-fond); border-top:1px solid var(--sb-filet); }
.ag-rubrique-pied-in{ display:grid; grid-template-columns:minmax(0,1fr) 420px; gap:56px; align-items:start; }
.ag-rubrique-pied-in--seul{ grid-template-columns:minmax(0,560px); justify-content:center; }
.ag-rubrique-desc h2{ margin-top:0; }
.ag-rubrique-form{ position:sticky; top:calc(var(--ag-entete-h) + 16px); }

/* Bandeau des listes (archives, recherche, auteur) */
.ag-bandeau-liste{ position:relative; background:var(--sb-fond-kraft); padding:24px 0 60px; }
.ag-bandeau-liste h1{ font-size:clamp(2rem, 1.3rem + 2vw, 3rem); font-weight:900; margin:0; }
.ag-recherche{ display:flex; gap:10px; margin-top:20px; max-width:620px; }
.ag-recherche input{ flex:1; min-width:0; height:56px; padding:0 18px; border:2px solid var(--sb-filet); border-radius:12px; background:#fff; font-size:17px; }
.ag-auteur-entete-in{ display:grid; grid-template-columns:180px minmax(0,1fr); gap:32px; align-items:center; }
.ag-auteur-grande-photo img{ width:180px; height:180px; border-radius:50%; object-fit:cover; border:5px solid #fff; box-shadow:var(--sb-ombre); }

/* Page devis */
.ag-devis-hero{ position:relative; overflow:hidden; padding:20px 0 64px; }
.ag-hero-aplat--devis{ left:40%; }
.ag-escalier--fond{ position:absolute; right:auto; left:calc(max(var(--ag-gout), (100vw - 1280px) / 2) + 614px); bottom:58px; --k:.8; z-index:1; }
@media (min-width:1700px){ .ag-escalier--fond{ left:calc((100vw - 1440px) / 2 + 700px); --k:.95; } }
.ag-devis-in{ position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1fr) 460px; gap:64px; align-items:start; }
.ag-devis-texte{ max-width:600px; }
@media (min-width:1700px){ .ag-devis-texte{ max-width:680px; } }
.ag-devis-texte{ padding-top:4px; }
.ag-devis-texte .sbt-fil-ariane{ padding-block:0 18px; font-size:14px; }
.ag-devis-texte h1{ font-size:clamp(2.25rem, 1.4rem + 2.4vw, 3.75rem); font-weight:900; line-height:1; margin:0 0 18px; }
.ag-devis-intro{ font-size:19px; color:var(--sb-encre-douce); max-width:34em; }
.ag-devis-etapes{ list-style:none; margin:26px 0 0; padding:0; display:flex; flex-direction:column; gap:14px; }
.ag-devis-etapes li{ display:flex; gap:14px; align-items:center; font-weight:600; }
.ag-devis-etapes b{ width:40px; height:40px; flex-shrink:0; border-radius:10px; background:var(--sb-encre); color:#fff; display:flex; align-items:center; justify-content:center; font-size:20px; }
.ag-devis-carte{ position:relative; padding-top:10px; }
.ag-devis-carte .ag-cadre-decale{ border-color:var(--sb-action); }
.ag-devis-carte .ag-form--hero{ position:relative; top:0; width:100%; }
.ag-devis-colonnes{ columns:2 420px; column-gap:24px; }
.ag-devis-colonnes > *{ break-inside:avoid; margin-bottom:24px; }
.ag-devis-bloc{ background:#fff; border:1px solid #EDE2D0; border-radius:var(--sb-rayon); padding:24px 26px 10px; font-size:17px; }
.ag-devis-bloc h2{ font-size:24px; margin-top:0; }

/* Qui sommes-nous / méthode */
.ag-marque-hero{ position:relative; overflow:hidden; padding:16px 0 72px; }
.ag-marque-hero-in{ position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:56px; align-items:center; }
.ag-marque-hero .sbt-fil-ariane{ padding-block:4px 20px; font-size:14px; }
.ag-marque-titre mark.ag-scotch-mot::before{ display:none; }
.ag-marque-titre mark.ag-scotch-mot{ background:linear-gradient(176deg, transparent 24%, rgba(196,149,92,.5) 24%, rgba(196,149,92,.5) 94%, transparent 94%); }
.ag-marque-titre{ font-size:clamp(2.5rem, 1.2rem + 3.2vw, 4.75rem); font-weight:900; line-height:1; letter-spacing:-.025em; margin:0 0 24px; }
.ag-marque-intro{ font-size:20px; line-height:1.55; color:var(--sb-encre-douce); max-width:34em; }
.ag-marque-visuel{ position:relative; display:flex; flex-direction:column; align-items:center; gap:34px; padding-top:20px; }
.ag-marque-logo{ background:#fff; padding:18px 26px; border-radius:18px; box-shadow:var(--sb-ombre); }
.ag-marque-logo .ag-logo-svg{ height:56px; }
.ag-marque-portes{ display:flex; align-items:flex-end; gap:22px; }
.ag-marque-carton{ position:relative; width:170px; height:calc(170px + var(--i) * 48px); }
.ag-marque-carton .ag-carton-rabat{ height:26px; }
.ag-marque-carton-face{ position:absolute; inset:0; z-index:2; border-radius:10px; background:#C99A60; box-shadow:var(--sb-ombre); padding:18px 16px; display:flex; flex-direction:column; justify-content:flex-end; gap:6px; color:var(--sb-encre); }
.ag-marque-carton-face .ag-picto{ width:44px; height:44px; margin-bottom:auto; padding:8px; border-radius:12px; background:#fff; box-sizing:content-box; }
.ag-marque-carton--vert .ag-picto{ color:var(--sb-porte-particuliers-texte); }
.ag-marque-carton--bleu .ag-picto{ color:var(--sb-porte-revendeurs); }
.ag-marque-carton--rose .ag-picto{ color:var(--sb-action-texte); }
.ag-marque-carton-face .ag-marquage{ font-size:13px; }
.ag-marque-carton-face .ag-chiffre{ font-size:40px; line-height:.9; }
.ag-marque-carton-nom{ font-family:var(--ag-titre); font-weight:800; font-size:19px; }
.ag-marque-carton .ag-carton-tranche{ --k:1; }
.ag-marque-chiffres-in{ display:flex; flex-wrap:wrap; align-items:flex-end; gap:28px 56px; }
.ag-marque-chiffre{ display:flex; flex-direction:column; gap:6px; }
.ag-marque-chiffre b{ font-size:clamp(52px, 3vw + 20px, 84px); line-height:.9; color:#fff; }
.ag-marque-chiffre span{ color:#C9CCD8; font-weight:600; max-width:14em; line-height:1.3; }
.ag-marque-date{ flex-basis:100%; margin:0; color:#A9ADBD; font-size:14px; }
.ag-marque-grille{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:44px 32px; align-items:start; }
.ag-marque-bloc{ position:relative; background:#fff; border:1px solid #EDE2D0; border-radius:var(--sb-rayon-xl); padding:42px 30px 18px; box-shadow:var(--sb-ombre); }
.ag-marque-bloc--1{ margin-top:48px; }
.ag-marque-bloc-rabat{ position:absolute; left:24px; right:24px; top:-12px; height:24px; background:#D4A971; border-radius:6px 6px 0 0; clip-path:polygon(4% 0, 96% 0, 100% 100%, 0 100%); }
.ag-marque-bloc-marquage{ position:absolute; top:calc(var(--dh,0px) - 22px); right:28px; padding:8px 14px; background:var(--sb-encre); color:#E9C99A; border-radius:8px; transform:rotate(3deg); }
.ag-marque-bloc .sbt-article-corps h2{ margin-top:0; font-size:28px; }
.ag-marque-bloc .sbt-article-corps{ font-size:17px; }
/* 08/10 (P-542) : « Nos rubriques » en tuiles-cartons, sans puces (ag_marque_tuiles). */
.sbt-article-corps ul.ag-tuiles-rubriques{ list-style:none; margin:18px 0 6px; padding:0; display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
.ag-tuiles-rubriques > li.ag-tuile-rub{ list-style:none; margin:0; padding:0; }
.ag-tuiles-rubriques > li.ag-tuile-rub::before,.ag-tuiles-rubriques > li.ag-tuile-rub::marker{ content:none; display:none; }
.ag-tuile-rub > a,.ag-tuile-rub > div{ display:flex; flex-direction:column; gap:4px; height:100%; padding:14px 16px 14px 18px; border-radius:var(--sb-rayon); background:var(--sb-fond); border:1px solid #EDE2D0; border-left:5px solid var(--sb-kraft); color:var(--sb-encre); text-decoration:none; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.ag-tuile-rub > a:hover{ transform:translateY(-2px); box-shadow:var(--sb-ombre); border-left-color:var(--sb-action); color:var(--sb-encre); }
.ag-tuile-rub > a:focus-visible{ outline:3px solid var(--sb-porte-revendeurs); outline-offset:2px; }
.ag-tuile-rub-nom{ font-family:var(--ag-titre); font-weight:800; font-size:18px; line-height:1.15; }
.ag-tuile-rub-texte{ font-size:15px; line-height:1.45; color:var(--sb-encre-douce); }
.ag-tuile-rub-lien{ margin-top:auto; padding-top:6px; font-size:14px; font-weight:700; color:var(--sb-action-texte); }
@media (max-width:767px){ .sbt-article-corps ul.ag-tuiles-rubriques{ grid-template-columns:1fr; } }
.ag-marque-portes-grille{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:20px; margin-top:8px; }
.ag-marque-porte{ display:flex; flex-direction:column; gap:10px; padding:24px; background:#fff; border-radius:var(--sb-rayon); text-decoration:none; color:var(--sb-encre); box-shadow:var(--sb-ombre); border-top:8px solid var(--sb-encre); transition:transform .2s; }
.ag-marque-porte:hover{ color:var(--sb-encre); transform:translateY(-4px); }
.ag-marque-porte .ag-picto{ width:36px; height:36px; }
.ag-marque-porte--vert{ border-top-color:var(--sb-porte-particuliers); }
.ag-marque-porte--vert .ag-picto{ color:var(--sb-porte-particuliers-texte); }
.ag-marque-porte--bleu{ border-top-color:var(--sb-porte-revendeurs); }
.ag-marque-porte--bleu .ag-picto{ color:var(--sb-porte-revendeurs); }
.ag-marque-porte--rose{ border-top-color:var(--sb-action); }
.ag-marque-porte--rose .ag-picto{ color:var(--sb-action-texte); }
.ag-marque-porte-nom{ font-family:var(--ag-titre); font-weight:800; font-size:22px; }
.ag-marque-appel{ display:flex; align-items:center; flex-wrap:wrap; gap:14px 18px; margin-top:32px; }
.ag-marque-appel p{ margin:0 12px 0 0; font-family:var(--ag-titre); font-weight:700; font-size:20px; }

/* Contact */
.ag-contact{ position:relative; overflow:hidden; padding:16px 0 clamp(72px, 7vw, 104px); }
.ag-contact-in{ position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) 480px; gap:64px; align-items:start; }
.ag-contact-texte .sbt-fil-ariane{ padding-block:4px 16px; font-size:14px; }
.ag-contact-texte h1{ font-size:clamp(2.25rem, 1.4rem + 2.4vw, 3.5rem); font-weight:900; margin:0 0 16px; }
.ag-contact-texte > p:not(.ag-surtitre){ font-size:18px; color:var(--sb-encre-douce); }
.ag-page-contact .sbt-footer-cta{ display:none; }
.ag-contact-plis{ margin-top:18px; }
.ag-contact-plis .ag-acc > summary{ min-height:56px; padding:12px 18px; }
.ag-contact-plis .ag-acc > summary h2{ font-size:19px!important; }
.ag-contact-plis .ag-acc-corps{ font-size:16px; }
.ag-contact-devis{ display:flex; align-items:center; gap:12px; margin-top:20px; font-weight:600; }
.ag-contact-devis .ag-picto{ width:28px; height:28px; color:var(--sb-action); flex-shrink:0; }
.ag-contact-carte{ margin-top:8px; }
.ag-form--contact{ display:flex; flex-direction:column; gap:12px; padding:18px 24px 24px; }
.ag-coords--deux{ grid-template-columns:1fr 1fr; }
.ag-form--contact .ag-btn--envoi{ margin-top:4px; }

/* 404 */
.ag-404-in{ display:grid; grid-template-columns:260px minmax(0,1fr); gap:48px; align-items:center; max-width:980px; }
.ag-404-carton{ aspect-ratio:1; background:#C99A60; border-radius:18px; box-shadow:var(--sb-ombre-forte); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; color:var(--sb-encre); transform:rotate(-4deg); }
.ag-404-carton .ag-picto{ width:96px; height:96px; }
.ag-404-liens{ display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }

/* =====================================================================
   TABLETTE ET MOBILE
   ===================================================================== */
@media (max-width:1300px){
	.ag-quais-rangee{ grid-template-columns:repeat(4, minmax(0,1fr)); }
	.ag-rayonnage{ grid-template-columns:repeat(5, minmax(0,1fr)); }
	.ag-goodies-in{ grid-template-columns:minmax(0,1fr) 420px; gap:40px; }
}
@media (max-width:1180px){
	.ag-entete-art-in,.ag-ville-corps,.ag-rubrique-pied-in{ gap:36px; }
	.ag-ville-in{ grid-template-columns:minmax(0,1fr) 380px; }
	.ag-ville-corps{ grid-template-columns:minmax(0,1fr) 360px; }
}
@media (max-width:1023px){
	.ag-form--hero .ag-form-corps,.ag-form--bande .ag-form-corps{ min-height:0; }
	.ag-scotch--carte{ --sr:10px; }
	.ag-debord--carte{ --dd:0px; }
	.ag-goodies-carte .ag-debord--carte{ --dd:24px; }
	.ag-form-bandeau{ padding-right:104px; }
	.ag-portes-grille{ grid-template-columns:1fr; gap:44px; max-width:560px; margin-inline:auto; }
	.ag-porte--haute .ag-porte-photo{ height:188px; }
	.ag-outil-in,.ag-chiffres-in,.ag-fin-in,.ag-goodies-in{ grid-template-columns:1fr; gap:32px; }
	.ag-goodies-carte{ max-width:560px; }
	.ag-guides-grille,.ag-grille-art{ grid-template-columns:repeat(2, minmax(0,1fr)); }
	.ag-entete-art-in,.ag-rubrique-in,.ag-ville-corps,.ag-rubrique-pied-in,.ag-devis-in,.ag-contact-in,.ag-marque-hero-in{ grid-template-columns:minmax(0,1fr); }
	.ag-entete-art-photo{ margin-top:8px; max-width:640px; }
	.ag-ville-scene{ height:auto; }
	.ag-ville-photo{ bottom:auto; height:340px; }
	.ag-rideau{ height:170px; }
	.ag-ville-in{ grid-template-columns:minmax(0,1fr); gap:20px; padding-top:190px; padding-bottom:28px; }
	.ag-ville-texte{ padding-bottom:0; }
	.ag-ville-carte{ padding-top:34px; max-width:560px; }
	.ag-contact-texte{ display:contents; }
	.ag-contact-in{ display:flex; flex-direction:column; gap:0; }
	.ag-contact-texte > .sbt-fil-ariane{ order:1; } .ag-contact-texte > .ag-surtitre{ order:2; } .ag-contact-texte > h1{ order:3; } .ag-contact-texte > p:not(.ag-surtitre):not(.ag-contact-devis){ order:4; }
	/* 08/10 (premier_ecran, pli 390) : le bouton « Envoyer le message » doit tenir dans le premier écran mobile →
	   le chapeau passe sous le formulaire, le message est plus compact. */
	.ag-contact-texte > p:not(.ag-surtitre):not(.ag-contact-devis){ order:6; margin-top:4px; }
	.ag-contact-carte{ order:5; margin:4px 0 24px; } .ag-contact-plis{ order:7; } .ag-contact-devis{ order:8; }
	.ag-form--contact textarea{ min-height:84px; height:84px; }
	.ag-contact-texte h1{ margin-bottom:10px; }
	.ag-ville-photo .ag-repli-picto,.ag-ville-photo .ag-repli::after{ display:none; }
	.ag-ville-colonne,.ag-rubrique-form{ position:static; }
	.ag-escalier--fond{ display:none; }
	.ag-marque-visuel{ align-items:flex-start; }
}
@media (max-width:767px){
	.ag-section{ padding-block:48px; }
	.ag-section--fin{ padding-bottom:72px; }
	.ag-form-bandeau{ padding:10px 16px; }
	.ag-form-escalier{ padding:10px 16px 0; }
	.ag-form{ padding:10px 16px 16px; }
	.ag-form-question{ font-size:21px; }
	.ag-tuile{ min-height:56px; }
	.ag-marche{ min-height:calc(64px + var(--m) * 18px); }
	.ag-tuile--porte{ font-size:16px; }
	.ag-choix--grille{ grid-template-columns:1fr; }
	.ag-choix--grille .ag-tuile{ min-height:52px; }
	.ag-coords{ grid-template-columns:1fr; }
	.ag-marche{ font-size:13.5px; padding:8px 7px 10px; }
	.ag-btn--nav{ min-width:140px; }
	.ag-quais-rangee,.ag-rayonnage{
		display:grid; grid-auto-flow:column; grid-template-columns:none; grid-auto-columns:150px; overflow-x:auto; scroll-snap-type:x mandatory;
		margin-inline:calc(-1 * var(--ag-gout)); padding:4px var(--ag-gout) 14px; scroll-padding-inline:var(--ag-gout);
	}
	.ag-quai,.ag-case{ scroll-snap-align:start; }
	.ag-rayonnage{ grid-auto-columns:160px; }
	.ag-outil-objet{ padding:20px 16px; }
	.ag-outil-marches{ height:170px; gap:8px; }
	.ag-outil-marche{ height:calc(64px + var(--m) * 34px); padding:10px 8px; }
	.ag-outil-marche .ag-marquage{ font-size:11px; }
	.ag-outil-marche .ag-picto{ width:24px; height:24px; }
	.ag-guides-grille,.ag-grille-art{ grid-template-columns:1fr; }
	.ag-tuiles{ gap:12px; }
	.ag-tuile-carton{ padding:14px 14px 16px; }
	.ag-methode{ padding:22px; }
	.ag-methode-photo{ width:72px; height:72px; }
	.ag-fin-appel{ padding:34px 22px 26px; }
	.ag-goodies-carte .ag-cadre-decale{ inset:12px -8px -12px 8px; }
	.ag-goodies-carte .ag-scotch--carte{ --sr:8px; }
	.ag-entete-art{ padding-bottom:50px; }
	.ag-entete-art h1{ font-size:32px; }
	.ag-scotch--travers{ left:-8px; width:110px; }
	.ag-tirette{ left:14px; right:14px; }
	.sbt-article-mise-en-page{ padding-top:28px; }
	.sbt-article-corps{ font-size:17px; }
	.ag-fin-article{ flex-wrap:wrap; }
	.ag-ville-texte h1{ font-size:34px; }
	.ag-ville-sous{ font-size:17px; }
	.ag-rideau{ height:150px; }
	.ag-rideau-num{ font-size:120px; }
	.ag-ville-in{ padding-top:168px; }
	.ag-ville-photo{ height:300px; }
	.sbs_lieu{ padding:16px 16px 14px 62px; }
	.sbs_lieu::before{ left:14px; width:34px; height:34px; }
	.ag-mur{ gap:8px 6px; }
	.ag-mur-carton{ height:104px; padding:5px; }
	.ag-mur-titre{ font-size:11.5px; padding:4px 5px; -webkit-line-clamp:2; }
	.ag-gerbage-picto{ width:96px; height:96px; }
	.ag-gerbage-picto b{ font-size:38px; }
	.ag-gerbage-legende{ font-size:16px; }
	.ag-devis-texte h1{ font-size:34px; }
	.ag-marque-portes{ gap:10px; width:100%; }
	.ag-marque-carton{ width:calc((100% - 20px) / 3); height:calc(130px + var(--i) * 30px); }
	.ag-marque-carton-face{ padding:10px; }
	.ag-marque-carton-face .ag-picto{ width:28px; height:28px; padding:5px; }
	.ag-marque-carton-face .ag-chiffre{ font-size:28px; }
	.ag-marque-carton-nom{ font-size:14px; }
	.ag-marque-carton-face .ag-marquage{ font-size:11px; }
	.ag-marque-grille,.ag-marque-portes-grille{ grid-template-columns:1fr; }
	.ag-marque-bloc--1{ margin-top:0; }
	.ag-marque-bloc{ padding:38px 20px 12px; }
	.ag-coords--deux{ grid-template-columns:1fr; }
	.ag-auteur-entete-in,.ag-404-in{ grid-template-columns:1fr; }
	.ag-404-carton{ width:180px; }
	.ag-recherche{ flex-direction:column; }
	.ag-section-tete--ligne{ align-items:flex-start; }
}
/* 08/10 (sortie n°1, rendu_page mobile) : le mur de cartons n'est plus masqué sur mobile (sa 1re photo, cachée,
   passait pour une image de tête non affichée) → bande compacte de 3 cartons-photos, sans titres. */
@media (max-width:767px){
	.ag-rubrique .ag-mur{ grid-template-columns:repeat(3, minmax(0,1fr)); grid-template-rows:auto; gap:8px; padding-top:16px; }
	.ag-rubrique .ag-mur-carton--0,.ag-rubrique .ag-mur-carton--1,.ag-rubrique .ag-mur-carton--2{ grid-row:1; grid-column:auto; height:88px; padding:5px; }
	.ag-rubrique .ag-mur-carton--3,.ag-rubrique .ag-mur-carton--4,.ag-rubrique .ag-mur-carton--5,.ag-rubrique .ag-scotch--mur,.ag-rubrique .ag-mur-titre{ display:none; }
}
@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{ animation-duration:.01ms!important; transition-duration:.01ms!important; }
}

/* Liens vers les pages entreprises (bande goodies de l'accueil) */
.ag-goodies-liens{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.25rem}
.ag-goodies-lien{display:inline-flex;align-items:center;min-height:44px;padding:.55rem 1rem;border-radius:999px;background:#fff;color:var(--sb-encre,#1a1a2e);font-weight:700;text-decoration:none;box-shadow:0 2px 0 rgba(0,0,0,.12);transition:transform .15s ease}
.ag-goodies-lien:hover,.ag-goodies-lien:focus-visible{transform:translateY(-2px)}

/* Pages entreprises : le formulaire de devis remplace la photo dans l'en-tête */
.ag-entete-art-form{position:relative;align-self:start;margin:.25rem 0 1.5rem;width:100%;max-width:520px;justify-self:end;z-index:2}
.ag-entete-art-form .ag-form-carte{margin:0}
@media (max-width:900px){.ag-entete-art-form{justify-self:stretch;max-width:none;margin-top:1rem}}

/* 08/10 (sortie n°1, rendu_page + règle « pas de tableau dans les articles ») : les anciens tableaux deviennent
   des fiches-cartons (div.ag-fiches > div.ag-fiche), jamais plus larges que la colonne. */
.sbt-article-corps .ag-fiches{ display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 240px), 1fr)); gap:14px; margin:1.4em 0 1.6em; }
.sbt-article-corps .ag-fiche{ min-width:0; background:#fff; border:1px solid #EDE2D0; border-top:4px solid var(--sb-kraft); border-radius:var(--sb-rayon); padding:14px 16px 12px; box-shadow:0 1px 0 rgba(25,28,40,.04); overflow-wrap:anywhere; }
.sbt-article-corps .ag-fiche p{ margin:0 0 .45em; font-size:15.5px; line-height:1.5; }
.sbt-article-corps .ag-fiche p:last-child{ margin-bottom:0; }
.sbt-article-corps .ag-fiche-titre{ font-family:var(--ag-titre); font-size:18px !important; line-height:1.2 !important; padding-bottom:6px; border-bottom:1px dashed var(--sb-filet); margin-bottom:.6em !important; }
.sbt-article-corps .ag-fiche-titre strong{ font-weight:800; }
.sbt-article-corps .ag-fiche-cle{ font-weight:700; color:var(--sb-encre); }

/* =====================================================================
   09/10/2026 — corrections après le juge visuel n°1 (WOW 7/10)
   ===================================================================== */

/* ---------- Pièces communes : carton, code-barres d'étiquette ---------- */
.ag-carton{ position:relative; width:calc(var(--w) * var(--k, 1)); height:calc(var(--h) * var(--k, 1)); flex-shrink:0; }
.ag-carton--1{ --w:120px; --h:150px; }
.ag-carton--2{ --w:150px; --h:196px; }
.ag-carton--3{ --w:184px; --h:244px; }
.ag-carton--4{ --w:226px; --h:300px; }
.ag-carton-face{
	position:absolute; inset:0; border-radius:9px; background:#C99A60;
	background-image:linear-gradient(180deg, rgba(255,255,255,.12), rgba(0,0,0,.06));
	padding:calc(26px * var(--k, 1)) 8% 8%; box-shadow:var(--sb-ombre); z-index:2;
}
.ag-carton-face > img,.ag-carton-face > .ag-repli{ display:block; width:100%; height:100%; object-fit:cover; border-radius:6px; box-shadow:inset 0 0 0 2px rgba(25,28,40,.08); }
.ag-carton-tranche{
	position:absolute; top:0; bottom:0; right:calc(-14px * var(--k, 1)); width:calc(15px * var(--k, 1)); z-index:1;
	background:repeating-linear-gradient(180deg, #9C6F3D 0 3px, #B98B55 3px 6px);
	clip-path:polygon(0 0, 100% 9px, 100% 100%, 0 calc(100% - 4px));
}
.ag-carton-rabat{ position:absolute; bottom:calc(100% - 2px); width:49%; height:calc(24px * var(--k, 1)); background:#D4A971; border-radius:4px 4px 1px 1px; z-index:1; box-shadow:inset 0 -3px 0 rgba(0,0,0,.06); }
.ag-carton-rabat--g{ left:1%; transform-origin:bottom left; transform:rotate(-24deg); }
.ag-carton-rabat--d{ right:1%; transform-origin:bottom right; transform:rotate(20deg); }
.ag-carton-scotch{ position:absolute; z-index:3; top:-1px; left:38%; width:24%; height:12%; background:rgba(224,17,95,.9); clip-path:polygon(0 0,100% 0,100% 82%,85% 100%,70% 86%,55% 100%,40% 86%,25% 100%,10% 86%,0 100%); }
.ag-carton-label{ position:absolute; top:calc(7px * var(--k, 1)); left:8%; right:22%; color:var(--sb-encre); font-size:12px; line-height:1.1; white-space:nowrap; overflow:hidden; }
.ag-etiq-code{
	display:block; height:10px;
	background:repeating-linear-gradient(90deg, var(--sb-encre) 0 2px, transparent 2px 3px, var(--sb-encre) 3px 4px, transparent 4px 7px, var(--sb-encre) 7px 10px, transparent 10px 11px, var(--sb-encre) 11px 12px, transparent 12px 15px);
	opacity:.88;
}
.ag-devis-hero .ag-hero-aplat{ position:absolute; top:0; bottom:0; right:0; left:40%; background-color:var(--sb-fond-kraft); background-image:repeating-linear-gradient(90deg, rgba(138,101,55,.07) 0 2px, transparent 2px 16px); clip-path:polygon(22% 0, 100% 0, 100% 100%, 0 100%); }
.ag-escalier--fond{ display:flex; align-items:flex-end; gap:calc(16px * var(--k)); }

/* ---------- HERO de l'accueil : le quai de chargement ----------
   Formulaire à gauche, titre à droite, l'escalier de cartons posé sur le sol de quai pleine largeur ;
   les chiffres (comptés sur le site) sont imprimés sur les étiquettes d'expédition des cartons. */
.ag-hero{ --k:.8; --ag-sol:104px; position:relative; overflow:hidden; height:clamp(600px, calc(100vh - var(--ag-entete-h) - 8px), 820px); background:var(--sb-fond); }
@media (min-width:1301px){ .ag-hero{ --k:.9; } }
@media (min-width:1700px){ .ag-hero{ --k:1.05; } }
.ag-hero .ag-carton-scotch{ display:none; }
.ag-quai-sol{ position:absolute; left:0; right:0; bottom:0; height:var(--ag-sol); background-color:var(--sb-fond-kraft); background-image:repeating-linear-gradient(90deg, rgba(138,101,55,.10) 0 2px, transparent 2px 64px); }
.ag-quai-sol::before{ content:""; position:absolute; left:0; right:0; top:0; height:14px; background:repeating-linear-gradient(-45deg, var(--sb-encre) 0 14px, #E9C99A 14px 28px); }
.ag-quai-sol-bord{ position:absolute; left:0; right:0; top:14px; height:7px; background:linear-gradient(180deg, rgba(25,28,40,.22), rgba(25,28,40,0)); }
.ag-hero-in{ position:relative; height:100%; display:grid; grid-template-columns:clamp(380px, 29vw, 440px) minmax(0,1fr); column-gap:clamp(40px, 4vw, 72px); }
.ag-hero-form{ position:relative; z-index:4; padding-top:26px; }
.ag-hero-form .ag-form-carte{ box-shadow:0 2px 0 rgba(25,28,40,.08), 0 34px 60px -18px rgba(25,28,40,.42); }
.ag-hero-texte{ position:relative; height:100%; padding-top:38px; z-index:2; }
.ag-hero-titre{ font-weight:900; font-size:clamp(2.5rem, .6rem + 3.6vw, 5.25rem); line-height:.98; letter-spacing:-.025em; margin:0 0 18px; }
.ag-hero-titre > span{ display:block; }
mark.ag-scotch-mot{ position:relative; z-index:0; background:none; color:inherit; padding:0 .06em; -webkit-box-decoration-break:clone; box-decoration-break:clone; }
mark.ag-scotch-mot::before{
	content:""; position:absolute; z-index:-1; left:-.1em; right:-.12em; top:.2em; bottom:.02em;
	background:rgba(196,149,92,.5); transform:rotate(-1.5deg);
	clip-path:polygon(0 8%,2.5% 0,97% 2%,100% 12%,98.4% 28%,100% 44%,98.4% 60%,100% 76%,98.6% 100%,2% 98%,0 88%,1.6% 72%,0 56%,1.6% 40%,0 24%);
}
.ag-hero-sous{ font-size:clamp(1.0625rem, .95rem + .3vw, 1.1875rem); color:var(--sb-encre-douce); max-width:34em; margin:0; line-height:1.5; }
.ag-preuves{ list-style:none; margin:0; padding:0; }
.ag-preuves--mobile{ display:none; }
.ag-hero .ag-escalier{ position:absolute; left:0; bottom:calc(var(--ag-sol) - 6px); display:flex; align-items:flex-end; gap:calc(24px * var(--k)); z-index:1; }
@media (prefers-reduced-motion:no-preference){
	.ag-hero .ag-carton{ animation:ag-monte .6s cubic-bezier(.2,.8,.2,1.05) both; animation-delay:calc(var(--i) * 110ms + 80ms); }
}
@keyframes ag-monte{ from{ transform:translateY(34px) scale(.94); } to{ transform:none; } }
.ag-etiq{
	position:absolute; left:6%; right:12%; bottom:7%; z-index:3; display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:7px; align-items:center;
	padding:5px 7px 6px; background:#fff; border-radius:4px; box-shadow:0 8px 16px -6px rgba(25,28,40,.5); transform:rotate(-2deg); color:var(--sb-encre);
}
.ag-carton--3 .ag-etiq{ transform:rotate(1.5deg); }
.ag-etiq .ag-etiq-code{ grid-column:1 / -1; margin-bottom:5px; height:9px; }
.ag-etiq b{ font-size:calc(30px * var(--k)); line-height:.9; }
.ag-etiq-leg{ font-weight:700; font-size:12px; line-height:1.12; }
.ag-quai-fleche{ position:absolute; left:0; bottom:26px; z-index:2; display:flex; align-items:center; gap:14px; margin:0; color:var(--sb-encre); }
.ag-quai-fleche svg{ width:150px; height:22px; flex-shrink:0; }
.ag-quai-fleche span{ font-family:var(--ag-marquage); text-transform:uppercase; letter-spacing:.08em; font-size:14px; line-height:1.2; }

/* ---------- En-tête d'article et de page : l'étiquette d'expédition sur bandeau photo pleine largeur ---------- */
.ag-colis{ --t:var(--sb-kraft); position:relative; background:var(--sb-fond); padding-bottom:34px; }
.ag-colis--vert{ --t:var(--sb-porte-particuliers); }
.ag-colis--bleu{ --t:var(--sb-porte-revendeurs); }
.ag-colis--rose{ --t:var(--sb-action); }
.ag-colis-photo{ position:absolute; left:0; right:0; top:0; height:var(--ag-colis-h, 380px); overflow:hidden; background:var(--sb-encre); }
.ag-colis-photo img{ display:block; width:100%; height:100%; object-fit:cover; }
.ag-colis-photo::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(25,28,40,.7) 0%, rgba(25,28,40,.32) 46%, rgba(25,28,40,.06) 78%), linear-gradient(0deg, rgba(25,28,40,.3), rgba(25,28,40,0) 40%); }
.ag-colis--sans-photo::before{ content:""; position:absolute; left:0; right:0; top:0; height:var(--ag-colis-h, 380px); background-color:var(--sb-fond-kraft); background-image:repeating-linear-gradient(90deg, rgba(138,101,55,.09) 0 2px, transparent 2px 16px); }
.ag-colis-in{ position:relative; z-index:1; }
.ag-colis .sbt-fil-ariane{ padding-block:16px 14px; font-size:14px; color:#fff; text-shadow:0 1px 2px rgba(0,0,0,.4); }
.ag-colis .sbt-fil-ariane a{ color:#fff; }
.ag-colis--sans-photo .sbt-fil-ariane,.ag-colis--sans-photo .sbt-fil-ariane a{ color:var(--sb-encre-douce); text-shadow:none; }
.ag-colis-grille{ display:block; }
.ag-colis--form .ag-colis-grille{ display:grid; grid-template-columns:minmax(0,1fr) clamp(380px, 31vw, 460px); gap:clamp(32px, 4vw, 64px); align-items:start; }
.ag-etiquette{
	position:relative; max-width:800px; background:#fff; border-radius:8px; padding:20px 32px 24px 48px;
	border-top:8px solid var(--t); transform:rotate(-.7deg);
	box-shadow:0 2px 0 rgba(25,28,40,.08), 0 34px 64px -22px rgba(25,28,40,.6);
}
.ag-etiquette::after{ content:""; position:absolute; top:-18px; right:54px; width:118px; height:32px; background:rgba(224,17,95,.9); transform:rotate(7deg); clip-path:polygon(0 6%,2% 0,98% 0,100% 8%,98.6% 30%,100% 52%,98.6% 74%,100% 92%,98% 100%,2% 100%,0 94%,1.4% 72%,0 50%,1.4% 28%); }
.ag-etiquette-trous{ position:absolute; left:16px; top:22px; bottom:22px; width:12px; border-right:2px dashed var(--sb-filet); background:radial-gradient(circle at 4px 50%, var(--sb-fond-kraft) 3px, transparent 3.6px) 0 0 / 12px 18px repeat-y; }
.ag-etiquette-tete{ display:flex; align-items:center; flex-wrap:wrap; gap:10px 28px; padding-bottom:14px; margin-bottom:16px; border-bottom:2px dashed var(--sb-filet); }
.ag-etiquette-champ{ display:flex; flex-direction:column; gap:4px; }
.ag-etiquette-champ .ag-marquage{ font-size:11.5px; color:var(--sb-encre-douce); }
.ag-etiquette-champ > b{ font-family:var(--ag-titre); font-weight:800; font-size:17px; line-height:1.1; }
.ag-etiquette-champ .ag-pastille{ align-self:flex-start; }
.ag-etiquette-tete > .ag-etiq-code{ margin-left:auto; width:132px; height:34px; }
.ag-etiquette h1{ font-size:clamp(2rem, 1.2rem + 2vw, 3.25rem); font-weight:900; line-height:1.03; letter-spacing:-.02em; margin:0; }
.ag-etiquette .ag-chapo{ margin:12px 0 0; font-size:clamp(1.0625rem, 1rem + .25vw, 1.1875rem); max-width:none; }
.ag-etiquette .ag-auteur-ligne{ margin-top:16px; }
.ag-etiquette .ag-auteur-dates--page{ margin:14px 0 0; }
.ag-colis-form{ position:relative; z-index:2; padding-top:4px; }

/* ---------- Monogrammes d'auteur (tampon aux couleurs du site) ---------- */
.ag-mono{ display:inline-block; width:var(--ag-mono, 96px); height:var(--ag-mono, 96px); flex-shrink:0; border-radius:50%; }
.ag-mono svg{ display:block; width:100%; height:100%; }
.ag-auteur-ligne .ag-mono{ width:56px; height:56px; box-shadow:0 3px 8px -2px rgba(25,28,40,.3); }
.ag-auteur-grande-photo .ag-mono{ width:180px; height:180px; box-shadow:var(--sb-ombre); }
.sbt-auteur-photo .ag-mono{ width:120px; height:120px; }

/* ---------- Rubrique : l'allée d'entrepôt ---------- */
.ag-allee{ --t:var(--sb-action-texte); position:relative; overflow:hidden; background:var(--sb-fond-kraft); }
.ag-allee--vert{ --t:var(--sb-porte-particuliers-texte); }
.ag-allee--bleu{ --t:var(--sb-porte-revendeurs); }
.ag-allee--kraft{ --t:#8A6537; }
.ag-allee::before{ content:""; position:absolute; inset:0 0 72px 0; background-image:repeating-linear-gradient(90deg, rgba(138,101,55,.09) 0 2px, transparent 2px 72px); }
.ag-allee-sol{ position:absolute; left:0; right:0; bottom:0; height:72px; background:#E3D0AE; }
.ag-allee-sol::before{ content:""; position:absolute; left:0; right:0; top:0; height:12px; background:repeating-linear-gradient(-45deg, var(--sb-encre) 0 12px, #E9C99A 12px 24px); }
.ag-allee-in{ position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:clamp(32px, 4vw, 64px); align-items:end; }
.ag-allee-texte{ padding-bottom:104px; }
.ag-allee .sbt-fil-ariane{ padding-block:16px 6px; font-size:14px; }
.ag-panneau{ position:relative; display:inline-flex; align-items:center; gap:22px; margin-top:44px; padding:16px 30px 16px 16px; background:var(--sb-encre); color:#fff; border-radius:14px; box-shadow:var(--sb-ombre-forte); max-width:100%; }
.ag-panneau-chaines{ position:absolute; left:16%; right:16%; top:-40px; height:40px; border-left:3px dotted #6F7788; border-right:3px dotted #6F7788; }
.ag-panneau-lettre{ display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(92px, 7.6vw, 124px); aspect-ratio:1; border-radius:10px; background:var(--t); color:#fff; font-family:var(--ag-titre); font-weight:900; font-size:clamp(68px, 6vw, 100px); line-height:1; padding-top:.1em; }
.ag-panneau-lettre .ag-picto{ width:56%; height:56%; margin-top:-.1em; }
.ag-panneau-txt{ display:flex; flex-direction:column; gap:8px; min-width:0; }
.ag-panneau-txt .ag-marquage{ color:#E9C99A; font-size:13px; }
.ag-panneau h1{ color:#fff; margin:0; font-size:clamp(1.875rem, 1.1rem + 1.8vw, 3rem); font-weight:900; line-height:1.02; letter-spacing:-.02em; }
.ag-allee .ag-chapo{ margin:22px 0 0; max-width:34em; }
.ag-allee-actions{ display:flex; align-items:center; flex-wrap:wrap; gap:16px 30px; margin-top:24px; }
.ag-allee-compteurs{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:14px 26px; }
.ag-allee-compteurs li{ display:flex; align-items:center; gap:10px; }
.ag-allee-compteurs b{ font-size:44px; line-height:1; color:var(--t); }
.ag-allee-compteurs span{ font-weight:700; font-size:15px; line-height:1.2; max-width:8.5em; }
.ag-rack{ position:relative; height:clamp(380px, 31vw, 460px); margin-bottom:62px; padding:0 22px; display:grid; grid-template-rows:minmax(0,1fr) 16px minmax(0,1.12fr) 16px; }
.ag-rack-montant{ position:absolute; top:0; bottom:-4px; width:16px; z-index:3; border-radius:2px; background:repeating-linear-gradient(180deg, transparent 0 10px, rgba(255,255,255,.55) 10px 15px) center / 5px 100% no-repeat, var(--sb-porte-revendeurs); box-shadow:inset -3px 0 0 rgba(0,0,0,.18); }
.ag-rack-montant--g{ left:0; }
.ag-rack-montant--d{ right:0; }
.ag-rack-lisse{ position:relative; z-index:2; display:block; margin:0 -2px; height:16px; background:var(--sb-action); box-shadow:inset 0 -4px 0 rgba(0,0,0,.2); }
.ag-rack-etiq{ position:absolute; left:50%; top:1px; height:14px; transform:translateX(-50%); padding:0 8px; display:flex; align-items:center; background:#fff; border-radius:2px; white-space:nowrap; }
.ag-rack-etiq .ag-marquage{ font-size:10px; color:var(--sb-encre); }
.ag-rack-niveau{ position:relative; min-height:0; }
.ag-rack-niveau--haut{ display:flex; align-items:flex-end; justify-content:space-around; gap:16px; padding:30px 18px 0; }
.ag-rack-carton{ position:relative; flex:1 1 0; max-width:210px; height:84%; }
.ag-rack-carton--1{ height:98%; }
.ag-rack-carton--2{ height:72%; }
.ag-rack-carton .ag-carton-rabat{ height:20px; }
.ag-rack-carton-face{ position:absolute; inset:0; z-index:2; padding:8px; border-radius:8px; background:#C99A60; box-shadow:var(--sb-ombre); }
.ag-rack-carton-face img{ display:block; width:100%; height:100%; object-fit:cover; border-radius:5px; }
.ag-rack-niveau--bas{ display:flex; align-items:flex-end; padding:22px 30px 0; }
.ag-rack-palette{ position:relative; display:flex; flex-direction:column; width:100%; height:100%; }
.ag-rack-palette-photo{ flex:1; min-height:0; overflow:hidden; border-radius:6px 6px 0 0; box-shadow:var(--sb-ombre); }
.ag-rack-palette-photo img{ display:block; width:100%; height:100%; object-fit:cover; }
.ag-rack-film{ position:absolute; inset:0 0 18px 0; border-radius:6px 6px 0 0; pointer-events:none; background:repeating-linear-gradient(115deg, rgba(255,255,255,.2) 0 2px, transparent 2px 26px), linear-gradient(90deg, rgba(255,255,255,.2), rgba(255,255,255,0) 30%, rgba(255,255,255,.14) 72%, rgba(255,255,255,0)); }
.ag-rack-bois{ display:block; height:18px; background:repeating-linear-gradient(90deg, #B98B55 0 52px, #6B4A2A 52px 66px); box-shadow:inset 0 3px 0 rgba(255,255,255,.18), inset 0 -3px 0 rgba(0,0,0,.2); }

/* Pied de rubrique : jamais décalé d'un côté (texte + étapes + autres rayons à gauche, formulaire à droite) */
.ag-rubrique-pied-in{ display:grid; grid-template-columns:minmax(0,1fr) 420px; gap:clamp(36px, 5vw, 72px); align-items:start; }
.ag-rubrique-desc h2{ margin:0 0 14px; font-size:clamp(1.625rem, 1.25rem + 1vw, 2.25rem); }
.ag-rubrique-desc .sbt-article-corps{ font-size:17px; margin-bottom:18px; }
.ag-rubrique-etapes{ list-style:none; margin:0 0 26px; padding:0; display:flex; flex-direction:column; gap:12px; }
.ag-rubrique-etapes li{ display:flex; gap:14px; align-items:center; font-weight:600; font-size:17px; line-height:1.4; }
.ag-rubrique-etapes b{ flex-shrink:0; width:40px; height:40px; border-radius:10px; background:var(--sb-encre); color:#fff; display:flex; align-items:center; justify-content:center; font-size:20px; }
.ag-rubrique-autres-titre{ font-family:var(--ag-titre); font-weight:800; font-size:19px; margin:0 0 12px; }
.ag-guides-pros{ margin-top:26px; padding-top:20px; border-top:2px dashed var(--sb-filet); }
.ag-guides-pros-titre{ display:flex; align-items:center; gap:8px; margin:0 0 12px; font-family:var(--ag-titre); font-weight:700; font-size:16px; color:var(--sb-encre-douce); }
.ag-guides-pros-titre .ag-picto{ width:20px; height:20px; }
.ag-pilule--discrete{ background:transparent; font-size:15px; }

/* ---------- Grilles : jamais de case vide ---------- */
.ag-rayonnage{ grid-template-columns:repeat(7, minmax(0,1fr)); }
.ag-rayonnage--8{ grid-template-columns:repeat(4, minmax(0,1fr)); }
.ag-rayonnage--9,.ag-rayonnage--10{ grid-template-columns:repeat(5, minmax(0,1fr)); }
.ag-rayonnage--11,.ag-rayonnage--12{ grid-template-columns:repeat(6, minmax(0,1fr)); }
.ag-rayonnage--9 .ag-case-photo,.ag-rayonnage--10 .ag-case-photo,.ag-rayonnage--8 .ag-case-photo{ height:150px; }
.ag-case-photo > img{ display:block; }
.ag-quai-photo > img{ display:block; }

/* « À lire aussi » (pleine largeur) et « Dans la même rubrique » (cartes avec photo) */
.ag-suite{ background:#fff; border-top:1px solid var(--sb-filet); }
.ag-suite-grille{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:22px; }
.ag-suite-grille--3{ grid-template-columns:repeat(3, minmax(0,1fr)); }
.ag-suite-grille--2{ grid-template-columns:repeat(2, minmax(0,1fr)); }
.ag-suite-grille--1{ grid-template-columns:minmax(0,1fr); }
.ag-suite-grille--1 .ag-suite-carte,.ag-suite-grille--2 .ag-suite-carte{ flex-direction:row; align-items:stretch; }
.ag-suite-grille--1 .ag-suite-photo,.ag-suite-grille--2 .ag-suite-photo{ width:44%; flex-shrink:0; aspect-ratio:auto; min-height:200px; }
.ag-suite-grille--1 .ag-suite-titre,.ag-suite-grille--2 .ag-suite-titre{ align-self:center; font-size:20px; padding:20px 24px; }
.ag-suite-carte{ display:flex; flex-direction:column; min-width:0; background:#fff; border:1px solid #EDE2D0; border-radius:var(--sb-rayon); overflow:hidden; text-decoration:none; color:var(--sb-encre); box-shadow:0 2px 0 rgba(25,28,40,.05); transition:transform .2s ease, box-shadow .2s ease; }
.ag-suite-carte:hover{ color:var(--sb-encre); transform:translateY(-4px); box-shadow:var(--sb-ombre); }
.ag-suite-photo{ position:relative; display:block; aspect-ratio:3/2; overflow:hidden; background:var(--sb-fond-kraft); }
.ag-suite-photo img{ display:block; width:100%; height:100%; object-fit:cover; margin:0 !important; }
.ag-suite-photo .ag-pastille{ position:absolute; left:12px; bottom:12px; font-size:13px; min-height:30px; padding:3px 12px; }
.ag-suite-titre{ display:block; padding:14px 16px 18px; font-family:var(--ag-titre); font-weight:700; font-size:18px; line-height:1.22; }
.ag-maillage{ margin:36px 0 8px; padding:20px 20px 16px; background:var(--sb-fond-kraft); border-radius:18px; }
.ag-maillage-titre{ font-family:var(--ag-titre); font-weight:800; font-size:22px; margin:0 0 14px !important; }
.ag-maillage-grille{ display:grid; grid-template-columns:repeat(auto-fit, minmax(190px, 1fr)); gap:14px; }
.sbt-article-corps a.ag-suite-carte{ color:var(--sb-encre); font-weight:400; text-decoration:none; }
.ag-maillage .ag-suite-titre{ font-size:16px; padding:12px 14px 14px; }
.ag-maillage .ag-lien-fleche,.ag-maillage-seul .ag-lien-fleche{ margin-top:10px; }
.sbt-article-mise-en-page{ padding-bottom:56px; }

/* ---------- Bon de réception (accueil, section « adresses vérifiées ») ---------- */
.ag-bon{ display:flex; flex-direction:column; gap:12px; max-width:580px; padding:22px 26px 20px; background:#fff; border-radius:8px; border-top:8px solid var(--sb-kraft); box-shadow:var(--sb-ombre); transform:rotate(-.8deg); }
.ag-bon-tete{ display:flex; justify-content:space-between; align-items:center; gap:16px; padding-bottom:10px; border-bottom:2px dashed var(--sb-filet); }
.ag-bon-tete .ag-marquage{ color:var(--sb-encre-douce); }
.ag-bon-tete .ag-etiq-code{ width:120px; height:26px; }
.ag-bon-ligne{ display:flex; align-items:center; gap:20px; }
.ag-bon-chiffre{ font-size:clamp(72px, 5vw, 104px); line-height:.9; color:var(--sb-encre); }
.ag-bon-leg{ font-weight:700; font-size:18px; line-height:1.3; }
.ag-bon-pied{ display:flex; gap:8px; align-items:center; font-size:15px; color:var(--sb-encre-douce); }
.ag-bon-pied .ag-picto{ width:18px; height:18px; color:var(--sb-porte-particuliers); stroke-width:3; flex-shrink:0; }

/* ---------- Pages marque (Qui sommes-nous, Notre méthode) ---------- */
.ag-marque-hero{ position:relative; overflow:hidden; padding:8px 0 76px; background:var(--sb-fond); }
.ag-marque-hero-in{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:clamp(36px, 5vw, 80px); align-items:center; }
.ag-marque-liens{ display:flex; flex-wrap:wrap; gap:14px; margin-top:28px; }
.ag-boite{ position:relative; justify-self:center; width:min(100%, 540px); aspect-ratio:1.18; margin-top:56px; }
.ag-boite-face{ position:absolute; inset:0 24px 0 0; z-index:2; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:64px 32px 40px; border-radius:12px; background:#C99A60; background-image:linear-gradient(180deg, rgba(255,255,255,.14), rgba(0,0,0,.07)); box-shadow:var(--sb-ombre-forte); color:var(--sb-encre); }
.ag-boite-logo img{ display:block; width:clamp(90px, 9vw, 130px); height:auto; }
.ag-boite-nom{ font-family:var(--ag-titre); font-weight:900; font-size:clamp(40px, 4.2vw, 66px); line-height:1; letter-spacing:-.035em; }
.ag-boite-nom span{ color:#fff; }
.ag-boite-picto{ display:flex; gap:12px; opacity:.78; }
.ag-boite-picto .ag-picto{ width:32px; height:32px; }
.ag-boite-etiq{ position:absolute; right:34px; bottom:-26px; z-index:4; display:flex; flex-direction:column; gap:3px; width:230px; padding:12px 14px; background:#fff; border-radius:4px; box-shadow:0 14px 28px -10px rgba(25,28,40,.5); transform:rotate(3deg); font-size:13.5px; line-height:1.3; }
.ag-boite-etiq .ag-marquage{ font-size:11px; color:var(--sb-encre-douce); }
.ag-boite-etiq b{ font-family:var(--ag-titre); font-weight:800; font-size:17px; line-height:1.15; }
.ag-boite-etiq .ag-etiq-code{ height:22px; margin-top:6px; }
.ag-boite-tranche{ position:absolute; top:0; bottom:0; right:0; width:26px; z-index:1; background:repeating-linear-gradient(180deg, #9C6F3D 0 3px, #B98B55 3px 6px); clip-path:polygon(0 0, 100% 14px, 100% 100%, 0 calc(100% - 6px)); }
.ag-boite-rabat{ position:absolute; bottom:calc(100% - 3px); width:47%; height:46px; z-index:1; background:#D4A971; border-radius:6px 6px 1px 1px; box-shadow:inset 0 -4px 0 rgba(0,0,0,.06); }
.ag-boite-rabat--g{ left:0; transform-origin:bottom left; transform:rotate(-14deg); }
.ag-boite-rabat--d{ right:24px; transform-origin:bottom right; transform:rotate(12deg); }
.ag-boite-ruban{ position:absolute; left:-12px; right:12px; top:22px; z-index:3; height:40px; display:flex; align-items:center; justify-content:center; overflow:hidden; background:rgba(224,17,95,.92); transform:rotate(-2deg); box-shadow:0 3px 8px -2px rgba(25,28,40,.3); }
.ag-boite-ruban i{ font-style:normal; font-family:var(--ag-marquage); letter-spacing:.14em; font-size:14px; color:#fff; white-space:nowrap; }
.ag-ruban-imprime{ position:relative; height:58px; overflow:hidden; margin-top:-6px; }
.ag-ruban-imprime span{ position:absolute; left:-60px; right:-60px; top:10px; padding:9px 0 8px; background:var(--sb-encre); color:#E9C99A; transform:rotate(-.6deg); white-space:nowrap; overflow:hidden; font-family:var(--ag-marquage); letter-spacing:.16em; font-size:15px; text-align:center; }
.ag-marque-portes-section .ag-section-tete{ display:block; }
.ag-marque-portes-section .ag-section-tete p{ margin-top:8px; }
.ag-marque-portes-grille{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px; margin-top:8px; }
.ag-marque-porte{ display:flex; flex-direction:column; gap:0; padding:0; overflow:hidden; background:#fff; border-radius:var(--sb-rayon); text-decoration:none; color:var(--sb-encre); box-shadow:var(--sb-ombre); border-top:8px solid var(--sb-encre); transition:transform .2s; }
.ag-marque-porte-photo{ position:relative; display:block; height:210px; overflow:hidden; }
.ag-marque-porte-photo img{ display:block; width:100%; height:100%; object-fit:cover; }
.ag-marque-porte-num{ position:absolute; left:16px; bottom:14px; display:inline-flex; align-items:center; gap:8px; height:36px; padding:0 14px; border-radius:999px; background:var(--sb-encre); color:#fff; }
.ag-marque-porte-num .ag-marquage{ font-size:12px; }
.ag-marque-porte-num b{ font-size:18px; }
.ag-marque-porte--vert .ag-marque-porte-num{ background:var(--sb-porte-particuliers-texte); }
.ag-marque-porte--bleu .ag-marque-porte-num{ background:var(--sb-porte-revendeurs); }
.ag-marque-porte--rose .ag-marque-porte-num{ background:var(--sb-action-texte); }
.ag-marque-porte-corps{ display:flex; flex-direction:column; gap:8px; padding:20px 22px 24px; font-size:16.5px; line-height:1.45; color:var(--sb-encre-douce); }
.ag-marque-porte-nom{ display:flex; align-items:center; gap:10px; font-family:var(--ag-titre); font-weight:800; font-size:23px; color:var(--sb-encre); }
.ag-marque-porte-nom .ag-picto{ width:28px; height:28px; }
.ag-paliers-section .ag-section-tete{ display:block; margin-bottom:28px; }
.ag-paliers-section .ag-section-tete p{ margin-top:8px; }
.ag-paliers{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:20px; align-items:start; }
.ag-paliers--3{ grid-template-columns:repeat(3, minmax(0,1fr)); }
.ag-paliers--2{ grid-template-columns:repeat(2, minmax(0,1fr)); }
.ag-palier{ position:relative; margin-top:calc((3 - var(--k)) * 46px); padding:12px 12px 14px; border-radius:12px; background:#C99A60; background-image:linear-gradient(180deg, rgba(255,255,255,.14), rgba(0,0,0,.05)); box-shadow:var(--sb-ombre); }
.ag-paliers--3 .ag-palier{ margin-top:calc((2 - var(--k)) * 52px); }
.ag-paliers--2 .ag-palier{ margin-top:calc((1 - var(--k)) * 60px); }
.ag-palier::before{ content:""; position:absolute; top:-1px; left:42%; width:16%; height:26px; background:rgba(224,17,95,.88); clip-path:polygon(0 0,100% 0,100% 82%,85% 100%,70% 86%,55% 100%,40% 86%,25% 100%,10% 86%,0 100%); }
.ag-palier-tete{ display:flex; align-items:center; gap:10px; padding:6px 6px 12px; color:var(--sb-encre); }
.ag-palier-tete .ag-picto{ width:30px; height:30px; }
.ag-palier-tete .ag-marquage{ font-size:14px; }
.ag-palier-papier{ background:#fff; border-radius:8px; padding:18px 18px 6px; font-size:16.5px !important; line-height:1.6; }
.ag-palier-papier h2{ font-size:22px !important; margin:0 0 .5em !important; }
.ag-paliers-suite{ max-width:820px; margin-top:32px; }
.ag-marque-signatures-in{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:clamp(32px, 5vw, 72px); align-items:center; }
.ag-marque-signatures h2{ margin-bottom:12px; }
.ag-marque-signatures p{ color:var(--sb-encre-douce); margin:0; }
.ag-signatures{ display:flex; flex-wrap:wrap; gap:18px; }
.ag-signature{ display:flex; align-items:center; gap:16px; padding:12px 26px 12px 12px; background:#fff; border:1px solid #EDE2D0; border-radius:999px; text-decoration:none; color:var(--sb-encre); box-shadow:var(--sb-ombre); transition:transform .2s; }
.ag-signature:hover{ color:var(--sb-encre); transform:translateY(-3px); }
.ag-signature > span{ display:flex; flex-direction:column; gap:2px; }
.ag-signature b{ font-family:var(--ag-titre); font-weight:800; font-size:20px; }
.ag-signature > span > span{ font-size:15px; color:var(--sb-encre-douce); }
.ag-marque-chiffres-in{ display:flex; flex-wrap:wrap; align-items:stretch; gap:22px; }
.ag-marque-chiffre{ display:flex; flex-direction:column; gap:6px; min-width:200px; flex:1 1 200px; padding:14px 18px 16px; background:#fff; color:var(--sb-encre); border-radius:6px; transform:rotate(-1deg); }
.ag-marque-chiffre:nth-child(even){ transform:rotate(1deg); }
.ag-marque-chiffre .ag-etiq-code{ width:96px; height:16px; margin-bottom:6px; }
.ag-marque-chiffre b{ font-size:clamp(48px, 2.6vw + 18px, 76px); line-height:.9; color:var(--sb-encre); }
.ag-marque-chiffre span{ color:var(--sb-encre-douce); font-weight:700; line-height:1.3; }
.ag-marque-date{ flex-basis:100%; margin:4px 0 0; color:#A9ADBD; font-size:14px; }
.ag-marque-fin{ padding-top:56px; }
.ag-marque-appel{ position:relative; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px 32px; margin:0; padding:40px 44px; background:var(--sb-fond-kraft); border-radius:var(--sb-rayon-xl); box-shadow:var(--sb-ombre); }
.ag-marque-appel h2{ margin:0 0 8px; font-size:clamp(1.5rem, 1.2rem + .9vw, 2.125rem); }
.ag-marque-appel p{ margin:0; font-family:var(--ag-texte); font-weight:400; font-size:17px; color:var(--sb-encre-douce); }
.ag-marque-appel-btns{ display:flex; flex-wrap:wrap; gap:14px; }

/* ---------- Formulaire : GROS boutons partout, zéro hésitation ---------- */
.ag-puce{ min-height:48px; padding:0 18px; font-size:16px; }
.ag-coords .ag-champ input{ height:56px; font-size:17px; }
.ag-rgpd input{ width:26px; height:26px; }
.ag-rgpd{ font-size:14.5px; }
.ag-retour{ min-height:52px; font-size:16px; padding:0 10px; }
.ag-btn--nav{ min-height:56px; font-size:18px; }
.ag-form--rail .ag-tuile{ min-height:58px; font-size:16px; }
.ag-form--rail .ag-champ input{ height:56px; }
.ag-choix--grille .ag-tuile{ min-height:76px; }

/* ---------- Barre latérale : sommaire toujours ouvert et complet ---------- */
.sbt-rail .sbt-sommaire-titre{ pointer-events:none; }
.sbt-rail .sbt-sommaire-libelle{ white-space:normal; overflow:visible; }

/* ---------- Page ville : sans photo, le rideau descend en entier ---------- */
.ag-ville-scene.sans-photo .ag-rideau{ height:100%; border-bottom:0; }

/* =====================================================================
   09/10 — tablette et mobile
   ===================================================================== */
@media (max-width:1300px) and (min-width:1024px){
	.ag-hero{ --k:.7; }
	.ag-rayonnage--10 .ag-case-photo,.ag-rayonnage--9 .ag-case-photo{ height:120px; }
}
@media (max-width:1180px){
	.ag-suite-grille{ grid-template-columns:repeat(2, minmax(0,1fr)); }
	.ag-paliers{ grid-template-columns:repeat(2, minmax(0,1fr)); }
	.ag-palier,.ag-paliers--3 .ag-palier{ margin-top:0; }
}
@media (max-width:1023px){
	.ag-hero{ --k:.36; --ag-sol:30px; height:auto; }
	.ag-quai-sol{ display:none; }
	.ag-hero-in{ display:flex; flex-direction:column; height:auto; padding-top:16px; padding-bottom:30px; }
	.ag-hero-texte{ display:contents; }
	.ag-hero .ag-surtitre{ display:none; }
	.ag-hero-titre{ order:1; margin-bottom:12px; }
	.ag-hero .ag-escalier{ order:2; position:relative; left:auto; bottom:auto; justify-content:center; gap:10px; margin:0 calc(-1 * var(--ag-gout)); padding:16px var(--ag-gout) 26px; }
	.ag-hero .ag-escalier::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:30px; z-index:-1; background:linear-gradient(180deg, transparent 0 8px, var(--sb-fond-kraft) 8px), repeating-linear-gradient(-45deg, var(--sb-encre) 0 8px, #E9C99A 8px 16px); }
	.ag-hero .ag-escalier .ag-etiq,.ag-hero .ag-carton-label{ display:none; }
	.ag-hero-form{ order:3; padding-top:0; margin-top:-16px; width:100%; max-width:560px; align-self:center; }
	.ag-hero-sous{ order:4; margin:22px 0 14px; }
	.ag-preuves--mobile{ order:5; display:flex; gap:0; }
	.ag-preuves--mobile li{ display:flex; flex-direction:column; padding:0 16px; border-left:2px solid var(--sb-kraft); }
	.ag-preuves--mobile li:first-child{ padding-left:0; border-left:0; }
	.ag-preuves--mobile .ag-chiffre{ font-size:32px; line-height:1; }
	.ag-preuves--mobile li > span:last-child{ font-size:13.5px; color:var(--sb-encre-douce); margin-top:4px; line-height:1.3; }
	.ag-quai-fleche{ display:none; }
	.ag-colis-grille,.ag-colis--form .ag-colis-grille{ grid-template-columns:minmax(0,1fr); }
	.ag-colis-form{ max-width:560px; }
	.ag-allee-in,.ag-rubrique-pied-in,.ag-marque-signatures-in,.ag-marque-hero-in{ grid-template-columns:minmax(0,1fr); }
	.ag-allee-texte{ padding-bottom:8px; }
	.ag-rack{ height:300px; margin-bottom:58px; max-width:620px; }
	.ag-boite{ width:min(100%, 440px); margin-top:40px; margin-bottom:24px; }
	.ag-marque-portes-grille{ grid-template-columns:minmax(0,1fr); max-width:560px; }
	.ag-ville-colonne{ display:none; }
	.ag-devis-texte{ display:contents; }
	.ag-devis-in{ display:flex; flex-direction:column; gap:0; }
	.ag-devis-texte > .sbt-fil-ariane{ order:1; } .ag-devis-texte > .ag-surtitre{ order:2; } .ag-devis-texte > h1{ order:3; }
	.ag-devis-carte{ order:4; margin:6px 0 22px; } .ag-devis-intro{ order:5; } .ag-devis-etapes{ order:6; }
	.ag-rayonnage--8 .ag-case-photo,.ag-rayonnage--9 .ag-case-photo,.ag-rayonnage--10 .ag-case-photo{ height:110px; }
}
@media (max-width:767px){
	.ag-hero-titre{ font-size:36px; }
	.ag-colis{ --ag-colis-h:220px; padding-bottom:24px; }
	.ag-colis-grille{ margin-top:96px; }
	.ag-etiquette{ padding:16px 18px 18px 34px; transform:rotate(-.4deg); }
	.ag-etiquette-trous{ left:10px; width:10px; }
	.ag-etiquette::after{ right:24px; width:90px; height:26px; top:-14px; }
	.ag-etiquette h1{ font-size:30px; }
	.ag-etiquette-tete{ gap:8px 18px; }
	.ag-etiquette-tete > .ag-etiq-code{ display:none; }
	.ag-etiquette .ag-chapo{ font-size:17px; }
	.ag-panneau{ gap:14px; padding:12px 18px 12px 12px; margin-top:36px; }
	.ag-panneau-lettre{ width:72px; font-size:56px; }
	.ag-panneau h1{ font-size:28px; }
	.ag-allee-compteurs b{ font-size:34px; }
	.ag-rack{ height:240px; padding:0 14px; }
	.ag-rack-niveau--haut{ gap:8px; padding:22px 10px 0; }
	.ag-rack-niveau--bas{ padding:16px 16px 0; }
	.ag-suite-grille,.ag-suite-grille--3,.ag-suite-grille--2{ grid-template-columns:minmax(0,1fr); }
	.ag-suite-grille--1 .ag-suite-carte,.ag-suite-grille--2 .ag-suite-carte{ flex-direction:column; }
	.ag-suite-grille--1 .ag-suite-photo,.ag-suite-grille--2 .ag-suite-photo{ width:100%; min-height:0; aspect-ratio:3/2; }
	.ag-suite-grille--1 .ag-suite-titre,.ag-suite-grille--2 .ag-suite-titre{ font-size:18px; padding:14px 16px 18px; }
	.ag-paliers,.ag-paliers--3,.ag-paliers--2{ grid-template-columns:minmax(0,1fr); }
	.ag-palier,.ag-paliers--3 .ag-palier,.ag-paliers--2 .ag-palier{ margin-top:0; }
	.ag-boite-etiq{ width:190px; right:20px; }
	.ag-boite-face{ padding:56px 20px 36px; }
	.ag-marque-appel{ padding:30px 22px; }
	.ag-marque-chiffre{ min-width:0; flex-basis:calc(50% - 11px); }
	.ag-signature{ width:100%; }
	.ag-bon-ligne{ flex-direction:column; align-items:flex-start; gap:6px; }
	.ag-rayonnage[class]{ grid-template-columns:none; grid-auto-columns:200px; }
	.ag-rayonnage .ag-case-photo{ height:120px; }
}
/* 09/10 (passe 2) : chiffres lisibles sur la photo de la page ville ; respiration au-dessus du rayonnage de rubrique */
.ag-ville-scene.a-photo .ag-ville-chiffres b,.ag-ville-scene.a-photo .ag-ville-chiffres span{ color:var(--sb-encre); }
.ag-ville-scene.a-photo .ag-ville-chiffres span{ color:var(--sb-encre-douce); }
.ag-allee-in{ padding-top:28px; }
.ag-allee-in .ag-allee-texte{ margin-top:-28px; }
/* Barre latérale trop haute pour l'écran : le FORMULAIRE se compacte (le sommaire reste entier et lisible). */
.sbt-rail.est-compact .ag-rassure,.sbt-rail.est-compact .ag-form-escalier{ display:none; }
.sbt-rail.est-compact .ag-form--rail .ag-form{ padding-top:12px; }
.sbt-rail.est-compact .ag-form--rail .ag-tuile{ min-height:52px; }
.sbt-rail.est-compact .ag-form--rail .ag-form-question{ font-size:19px; margin-bottom:8px; }
.sbt-rail.est-compact{ gap:10px; }
.sbt-rail.est-compact .sbt-sommaire{ padding:10px 14px 12px; }
.sbt-rail.est-compact .sbt-sommaire ol{ gap:3px; margin-top:8px; }
.sbt-rail.est-compact .sbt-sommaire li a{ font-size:14px; line-height:1.25; }
.sbt-rail.est-compact .ag-form--rail .ag-form-bandeau{ min-height:36px; padding-block:6px; }
.sbt-rail.est-compact .ag-form--rail .ag-portes{ gap:6px; }
/* Grille de tarifs : libellé | barre | prix écrit (09/10, juge n°1 : « les barres n'affichent aucun prix ») */
.sbs_tarif{ grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) auto; }
.ag-tarif-prix{ font-family:var(--ag-titre); font-weight:800; font-size:16px; white-space:nowrap; color:var(--sb-encre); }
@media (max-width:767px){ .sbs_tarif{ grid-template-columns:minmax(0,1fr) auto; } .sbs_tarif_barre{ grid-column:1 / -1; grid-row:2; } }
/* passe 3 : section des secteurs ≤ 704 px à 1440 ; page ville sans photo : le numéro du quai en haut du rideau, loin du titre */
.ag-rayonnage--9 .ag-case-photo,.ag-rayonnage--10 .ag-case-photo,.ag-rayonnage--8 .ag-case-photo{ height:100px; }
@media (min-width:1700px){ .ag-rayonnage--9 .ag-case-photo,.ag-rayonnage--10 .ag-case-photo,.ag-rayonnage--8 .ag-case-photo{ height:130px; } }
.ag-ville-scene.sans-photo .ag-rideau-num{ bottom:auto; top:24px; }
@media (max-width:1023px){ .ag-ville-scene.sans-photo .ag-rideau{ height:170px; } .ag-ville-scene.sans-photo .ag-rideau-num{ top:auto; bottom:-.12em; } }
/* passe 4 (RE-0242 « hero détaché du menu ») : le bandeau photo ne colle jamais au menu — il est encadré, à 16 px du menu */
.ag-colis{ padding-top:16px; }
.ag-colis-photo{ top:16px; left:16px; right:16px; border-radius:22px; }
.ag-colis--sans-photo::before{ top:16px; left:16px; right:16px; border-radius:22px; }
.ag-colis .sbt-fil-ariane{ padding-top:20px; }
@media (max-width:767px){ .ag-colis{ padding-top:10px; } .ag-colis-photo,.ag-colis--sans-photo::before{ top:10px; left:10px; right:10px; border-radius:16px; } }
/* Monogramme : la marque (l'escalier du logo) posée sous les initiales */
.ag-mono{ position:relative; }
.ag-mono-marque{ position:absolute; left:50%; bottom:17%; width:17%; height:auto; transform:translateX(-50%); z-index:1; pointer-events:none; }
.ag-mono svg text{ dominant-baseline:auto; }
/* Contact mobile : le bouton « Envoyer le message » reste au-dessus du pli (champs à 50 px sur cette page seulement) */
@media (max-width:767px){ .ag-form--contact .ag-coords .ag-champ input{ height:50px; } }
/* passe 4 bis : la petite marque du monogramme échappe aux règles « photo d'auteur » (48 px / 120 px, ronde) */
.ag-mono > img.ag-mono-marque{ position:absolute !important; left:50% !important; bottom:19% !important; width:17% !important; height:auto !important; max-width:none !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; object-fit:contain !important; margin:0 !important; transform:translateX(-50%); }

/* =====================================================================
   09/10/2026 — juge visuel n°2 (contenus + photos) — ui-ux-pro-max invoqué
   ===================================================================== */
/* Blocs tirés du texte : variantes des fiches-cartons */
.sbt-article-corps .ag-fiches--pieges .ag-fiche{ border-top-color:var(--sb-action); background:#FFF7FA; }
.sbt-article-corps .ag-fiches--pieges .ag-fiche-titre{ color:var(--sb-action-fonce); }
.sbt-article-corps .ag-fiches--simples .ag-fiche{ border-top-width:1px; border-left:6px solid var(--sb-kraft); display:flex; align-items:center; }
.sbt-article-corps .ag-fiches--simples .ag-fiche p{ font-weight:600; font-size:16px; }
.sbt-article-corps .ag-fiches--simples.ag-fiches--pieges .ag-fiche{ border-left-color:var(--sb-action); }
.sbt-article-corps .ag-fiches--h3{ grid-template-columns:repeat(auto-fill, minmax(min(100%, 280px), 1fr)); }
.sbt-article-corps .ag-fiches--h3 h3.ag-fiche-titre{ margin-top:0; scroll-margin-top:96px; }
/* Encadré « points de vigilance / avertissement » : une fiche kraft cousue au texte */
.sbt-article-corps .ag-encadre{ margin:1.8em 0; padding:22px 24px 8px; background:var(--sb-fond-kraft); border:2px dashed var(--sb-kraft); border-radius:var(--sb-rayon); }
.sbt-article-corps .ag-encadre > h2{ margin-top:0; font-size:1.35em; }
.sbt-article-corps .ag-encadre > p{ color:var(--sb-encre); }
/* Page ville : les deux tuiles du premier écran, encre foncée sur fond plein (contraste > 12:1) */
.ag-ville-chiffres li{ background:#FFFFFF; }
.ag-ville-chiffres b,.ag-ville-scene.a-photo .ag-ville-chiffres b{ color:var(--sb-encre); }
.ag-ville-chiffres span,.ag-ville-scene.a-photo .ag-ville-chiffres span{ color:var(--sb-encre-douce); }
/* Bandeau photo d'en-tête : l'aperçu flou peint en fond tant que la photo arrive (jamais un bandeau vide) */
.ag-colis-photo[style],.ag-ville-photo[style]{ background-color:var(--sb-fond-kraft); }
/* Dernière section avant le pied : toujours une marge franche */
.ag-main > :last-child:not(.ag-section--fin){ margin-bottom:clamp(64px, 7vw, 104px); }
/* Formulaire : de GROS boutons partout (Mathias) */
.ag-puce{ min-height:48px; padding:0 18px; font-size:16px; }
.ag-retour{ min-height:52px; padding:0 18px; border:2px solid var(--sb-filet); border-radius:999px; background:#fff; color:var(--sb-encre); }
.ag-tuile--lien{ min-height:52px; padding:0 8px; font-size:16px; }
.ag-form--rail .ag-tuile{ min-height:58px; font-size:15.5px; }
.ag-btn--nav{ min-height:56px; font-size:18px; }
/* Accueil : l'escalier (posé au sol, en bas du premier écran) ne mord jamais le texte sous le titre, quelle que soit
   la hauteur d'écran — les cartons rapetissent sur les écrans bas (mesuré : 1440×780, 1366×768, 1280×720, 1440×700). */
@media (min-width:1301px) and (max-height:860px){ .ag-hero{ --k:.8; } }
@media (min-width:1301px) and (max-height:800px){ .ag-hero{ --k:.74; } }
@media (min-width:1024px) and (max-height:740px){ .ag-hero{ --k:.62; } }
@media (min-width:1024px) and (max-height:710px){ .ag-hero{ --k:.54; } }
@media (min-width:1024px) and (max-height:680px){ .ag-hero{ --k:.46; } }
/* 09/10 reprise : accès au devis dès le premier écran des pages entreprises sur mobile. */
.ag-colis-demande{ display:none; }
.ag-ville-demande{ display:none; }
@media (min-width:1081px){ .sbt-article-mise-en-page{ grid-template-columns:minmax(0,780px) 392px; justify-content:center; } }
@media (min-width:1700px){ .sbt-article-mise-en-page{ grid-template-columns:minmax(0,820px) 420px; } }
@media (max-width:767px){
 .ag-colis-demande{ display:inline-flex; margin-top:16px; min-height:48px; font-size:16px; }
 .ag-ville-demande{ display:inline-flex; margin:4px 0 12px; min-height:48px; font-size:16px; }
 .ag-ville-scene.a-photo .ag-ville-sous{ display:table; color:var(--sb-encre); background:var(--ag-bleu-pale); padding:6px 10px; border-radius:6px; }
 #ag-form-entreprise,#ag-form-ville{ scroll-margin-top:88px; }
}

/* 09/10 reprise : fil lisible sur toute photo, y compris une interface logicielle. */
.ag-colis:not(.ag-colis--sans-photo) .sbt-fil-ariane{ background:#191c28; border-radius:6px; text-shadow:none; padding-inline:10px; }

/* Page auteur : rubriques couvertes (10/10) */
.ag-auteur-rubriques{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:14px 0 0; }
.ag-auteur-rubriques span{ font-family:var(--ag-marquage); font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--sb-encre-douce); margin-right:4px; }
.ag-auteur-rubriques a{ display:inline-block; padding:6px 12px; border-radius:999px; background:#fff; border:1px solid #EDE2D0; color:var(--sb-encre); font-size:14px; font-weight:600; text-decoration:none; }
.ag-auteur-rubriques a:hover{ border-color:#E0115F; color:#E0115F; }
.ag-auteur-rubriques{ margin-bottom:12px; }
/* Actualites accueil (10/10) */ .ag-actus{ padding-top:0; } .ag-actus .ag-conteneur{ border-top:2px dashed var(--sb-filet); padding-top:40px; } .ag-actus-grille .ag-pastille{ background:var(--sb-encre,#2b2118); color:#fff; } @media (max-width:640px){ .ag-actus .ag-conteneur{ padding-top:28px; } }
