/* Accueil et pages d'activité : utilisent les jetons et composants de css/systeme.css. Une idée par section, un bouton principal par écran. */
.e{color:var(--encre);font-family:var(--police-texte);font-size:var(--t-m);line-height:1.55}
.e *{box-sizing:border-box}
:where(.e) :where(h1,h2,p,ul,ol,figure,blockquote){margin:0;padding:0}
.e-sec{padding:var(--e-8) 0;background:var(--blanc)}
@media(min-width:900px){.e-sec{padding:var(--e-12) 0}}
.e-sec-alt{background:var(--fond-doux)}
.e-sec h2{font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-2xl);line-height:1.08;letter-spacing:var(--titre-esp);color:var(--vert-fonce);max-width:18ch}
@media(min-width:900px){.e-sec h2{font-size:var(--t-3xl)}}
.e-sec h2 + p{margin-top:var(--e-2);color:var(--gris);font-size:var(--t-l);line-height:1.45;max-width:36ch}
.e-h3{font-size:var(--t-xl)!important;max-width:none!important}
.e-link{display:inline-flex;align-items:center;min-height:44px;margin-top:var(--e-2);color:var(--vert);font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.e-boutons{display:flex;flex-wrap:wrap;gap:var(--e-1);margin-top:var(--e-3)}
@media(max-width:520px){.e-boutons > *{flex:1 1 100%}}
.e-etoiles{color:#F5C451;letter-spacing:1px}

/* 1. Ouverture : vidéo (ou son image d'attente), une promesse, une action */
.e-hero{position:relative;overflow:hidden;color:var(--blanc);min-height:min(86vh,760px);display:flex;align-items:flex-end;background:var(--vert-fonce)}
.e-hero-fond{position:absolute;inset:0}
.e-hero-fond img,.e-hero-fond video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.e-hero-fond video{opacity:0;transition:opacity .4s}
.e-hero-fond video.lu{opacity:1}
.e-hero-fond::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,18,14,.2) 0%,rgba(10,18,14,.55) 45%,rgba(10,18,14,.9) 100%)}
@media(min-width:900px){.e-hero{align-items:center}.e-hero-fond::after{background:linear-gradient(100deg,rgba(10,18,14,.9) 0%,rgba(10,18,14,.7) 45%,rgba(10,18,14,.2) 100%)}}
.e-hero-c{position:relative;z-index:1;padding-top:var(--e-12);padding-bottom:var(--e-6)}
.e-hero h1{font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-3xl);line-height:1.04;letter-spacing:var(--titre-esp);color:var(--blanc);max-width:14ch}
@media(min-width:900px){.e-hero h1{font-size:var(--t-4xl)}}
.e-hero-p{margin-top:var(--e-2);font-size:var(--t-l);line-height:1.45;color:rgba(255,255,255,.9);max-width:32ch}
.e-hero-preuve{margin-top:var(--e-2);font-size:var(--t-s);font-weight:600;color:rgba(255,255,255,.88)}
.e-hero .bouton-secondaire{background:rgba(255,255,255,.12);color:var(--blanc);box-shadow:inset 0 0 0 2px rgba(255,255,255,.5)}
.e-hero .bouton-secondaire:hover{background:rgba(255,255,255,.22);box-shadow:inset 0 0 0 2px var(--blanc)}

/* 2. La preuve : avant / après à faire glisser */
.e-ba-grille{display:grid;gap:var(--e-4);align-items:center}
@media(min-width:900px){.e-ba-grille{grid-template-columns:5fr 7fr;gap:var(--e-8)}}
.e-ba{position:relative;border-radius:var(--rayon-l);overflow:hidden;aspect-ratio:4/3;background:var(--vert-pale);box-shadow:var(--ombre);user-select:none;touch-action:pan-y;--pos:50%}
.e-ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.e-ba-apres{clip-path:inset(0 0 0 var(--pos))}
.e-ba-tag{position:absolute;top:var(--e-2);z-index:2;background:rgba(10,18,14,.75);color:var(--blanc);font-size:var(--t-xs);font-weight:600;padding:4px 12px;border-radius:40px;pointer-events:none}
.e-ba-tag-g{left:var(--e-2)}.e-ba-tag-d{right:var(--e-2);background:var(--vert)}
.e-ba-ligne{position:absolute;top:0;bottom:0;left:var(--pos);width:3px;margin-left:-1.5px;background:var(--blanc);z-index:2;pointer-events:none}
.e-ba-ligne span{position:absolute;top:50%;left:50%;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;background:var(--blanc);box-shadow:0 4px 14px rgba(0,0,0,.25)}
.e-ba-ligne span::before{content:'';position:absolute;inset:0;background:no-repeat center/22px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F3D24' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 6-6 6 6 6M15 6l6 6-6 6'/%3E%3C/svg%3E")}
.e-ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:3;margin:0}
.e-ba input:focus-visible ~ .e-ba-ligne span{outline:3px solid var(--vert-clair);outline-offset:2px}

/* 3. Le prix */
.e-prix-grille{display:grid;gap:var(--e-4)}
@media(min-width:900px){.e-prix-grille{grid-template-columns:5fr 7fr;gap:var(--e-8);align-items:center}}
.e-offre{margin:var(--e-2) 0 var(--e-3);font-size:var(--t-m);line-height:1.5;max-width:40ch}
.e-offre b{display:inline-block;background:var(--vert-fonce);color:var(--blanc);border-radius:var(--e-1);padding:0 var(--e-1);margin-right:4px}
.e-prix{list-style:none;background:var(--blanc);border-radius:var(--rayon-l);box-shadow:inset 0 0 0 1px var(--ligne)}
.e-prix li + li{border-top:1px solid var(--ligne)}
.e-prix a{display:grid;grid-template-columns:1fr auto;grid-template-areas:"n p" "d p";column-gap:var(--e-2);padding:var(--e-2) var(--e-3);min-height:64px;text-decoration:none;color:inherit;border-radius:var(--rayon-l)}
.e-prix a:hover span{color:var(--vert)}
.e-prix span{grid-area:n;font-weight:700;font-size:var(--t-m);color:var(--vert-fonce)}
.e-prix small{grid-area:d;color:var(--gris);font-size:var(--t-xs);margin-top:2px}
.e-prix b{grid-area:p;align-self:center;font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-2xl);line-height:1;color:var(--vert);font-variant-numeric:lining-nums}
.e-prix b small{display:inline;font-family:var(--police-texte);font-size:var(--t-xs);font-weight:600;color:var(--gris);margin-right:4px}

/* 4. Comment ça se passe (vraie suite d'étapes : la numérotation a un sens) */
.e-etapes{list-style:none;counter-reset:s;display:grid;gap:var(--e-4);margin-top:var(--e-4)}
@media(min-width:800px){.e-etapes{grid-template-columns:repeat(3,1fr);gap:var(--e-4)}}
.e-etapes li{counter-increment:s;position:relative;padding-top:var(--e-8)}
.e-etapes li::before{content:counter(s);position:absolute;top:0;left:0;font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-4xl);line-height:1;color:var(--vert)}
.e-etapes h3{font-size:var(--t-l);font-weight:700;color:var(--vert-fonce);margin:0}
.e-etapes p{margin-top:var(--e-1);color:var(--gris);line-height:1.6;max-width:34ch}

/* 5. Les avis */
.e-sec-foncee{background:var(--vert-fonce);color:var(--blanc)}
.e-sec-foncee h2{color:var(--blanc)}
.e-avis{display:grid;gap:var(--e-4)}
@media(min-width:900px){.e-avis{grid-template-columns:7fr 5fr;gap:var(--e-8);align-items:end}}
.e-avis-grand blockquote{font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-2xl);line-height:1.18}
@media(min-width:900px){.e-avis-grand blockquote{font-size:var(--t-3xl)}}
.e-avis figcaption{margin-top:var(--e-2);font-size:var(--t-s);color:rgba(255,255,255,.8)}
.e-avis-cote{display:grid;gap:var(--e-3)}
.e-avis-cote figure{border-left:3px solid var(--vert-clair);padding-left:var(--e-2)}
.e-avis-cote blockquote{font-size:var(--t-m);line-height:1.55}
.e-avis-cote figcaption{margin-top:var(--e-1)}
.e-sec-foncee .e-link{color:var(--blanc);margin-top:0}

/* 6. Dernière action */
.e-fin p{max-width:44ch}

/* 7. Activités et questions */
.e-plus-grille{display:grid;gap:var(--e-6)}
@media(min-width:900px){.e-plus-grille{grid-template-columns:4fr 8fr;gap:var(--e-8)}}
.e-autres{list-style:none;margin-top:var(--e-2);display:grid;gap:var(--e-1)}
.e-autres a{display:inline-flex;align-items:center;min-height:44px;color:var(--vert-fonce);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--ligne)}
.e-autres a:hover{text-decoration-color:var(--vert)}
.e-faq{margin-top:var(--e-1)}
.e-faq details{border-bottom:1px solid var(--ligne)}
.e-faq summary{cursor:pointer;list-style:none;padding:var(--e-2) var(--e-4) var(--e-2) 0;min-height:48px;font-weight:700;color:var(--vert-fonce);position:relative;line-height:1.4}
.e-faq summary::-webkit-details-marker{display:none}
.e-faq summary::after{content:'+';position:absolute;right:4px;top:12px;font-size:var(--t-l);font-weight:400;color:var(--vert)}
.e-faq details[open] summary::after{content:'−'}
.e-faq details p{padding:0 0 var(--e-2);color:var(--gris);line-height:1.6;max-width:62ch}

/* ══ Pages d'activité (canapé, tapis, matelas…) ══ */
/* Ouverture : texte à gauche, vraie photo à droite (sous le texte sur téléphone) */
.p-hero{background:var(--fond-doux);padding:var(--e-4) 0 var(--e-6)}
@media(min-width:900px){.p-hero{padding:var(--e-8) 0}}
.p-hero-grille{display:grid;gap:var(--e-4);align-items:center}
@media(min-width:900px){.p-hero-grille{grid-template-columns:7fr 5fr;gap:var(--e-6)}}
.p-hero h1{font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-2xl);line-height:1.08;letter-spacing:var(--titre-esp);color:var(--vert-fonce);max-width:20ch}
@media(min-width:900px){.p-hero h1{font-size:var(--t-4xl)}}
.p-hero-p{margin-top:var(--e-2);font-size:var(--t-l);line-height:1.45;color:var(--encre-douce);max-width:36ch}
.p-hero-preuve{margin-top:var(--e-2);font-size:var(--t-s);color:var(--gris)}
.p-hero-preuve .e-etoiles{color:var(--etoile)}
.p-photo{border-radius:var(--rayon-l);overflow:hidden;aspect-ratio:4/3;background:var(--vert-pale)}
.p-photo img{width:100%;height:100%;object-fit:cover;display:block}
.p-photo-l{margin-top:var(--e-1);font-size:var(--t-xs);color:var(--gris)}

/* Avant / après : deux photos côte à côte */
.p-duo{display:grid;grid-template-columns:1fr 1fr;gap:var(--e-1)}
@media(min-width:900px){.p-duo{gap:var(--e-2)}}
.p-duo figure{position:relative;border-radius:var(--rayon-l);overflow:hidden;aspect-ratio:4/5;background:var(--vert-pale)}
.p-duo img{width:100%;height:100%;object-fit:cover;display:block}
.p-duo figcaption{position:absolute;top:var(--e-1);left:var(--e-1);background:rgba(10,18,14,.75);color:var(--blanc);font-size:var(--t-xs);font-weight:600;padding:4px 12px;border-radius:40px}
.p-duo figure + figure figcaption{background:var(--vert)}

/* Listes de prix et d'options dans une section */
.p-liste{margin-top:var(--e-3)}
.p-liste h3{font-size:var(--t-l);font-weight:700;color:var(--vert-fonce);margin:var(--e-4) 0 0}
.p-note{margin-top:var(--e-2);font-size:var(--t-s);color:var(--gris);max-width:60ch}

/* Étiquettes de tissus et de modèles */
.p-tags{list-style:none;display:flex;flex-wrap:wrap;gap:var(--e-1);margin-top:var(--e-3);padding:0}
.p-tags li{padding:var(--e-1) var(--e-2);border-radius:40px;background:var(--blanc);box-shadow:inset 0 0 0 1px var(--ligne);font-size:var(--t-s)}
.e-sec-alt .p-tags li{background:var(--blanc)}

/* Deux colonnes texte (ex. matelas et tapis) */
.p-deux{display:grid;gap:var(--e-3);margin-top:var(--e-4)}
@media(min-width:800px){.p-deux{grid-template-columns:1fr 1fr}}
.p-deux .carte h3{font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-xl);color:var(--vert-fonce);margin:0}
.p-deux .carte p{margin-top:var(--e-1);color:var(--gris)}
.p-note a{color:var(--vert);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.p-photo-large{aspect-ratio:16/9}
/* Liste à coches (ce qui est compris dans une prestation) */
.liste-coches{list-style:none;margin:var(--e-2) 0 0;padding:0;display:grid;gap:var(--e-1)}
.liste-coches li{position:relative;padding-left:var(--e-4);line-height:1.5}
.liste-coches li::before{content:'';position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:var(--vert-pale) no-repeat center/12px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23166534' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")}
.p-liste h3:first-child{margin-top:0}
.e-prix-grille .p-photo{margin-top:var(--e-3)}
/* Page contact */
.ct-sec{background:var(--fond-doux)}
.ct-tete{text-align:center;margin:0 auto var(--e-6);max-width:40rem}
.ct-tete .titre-1,.ct-tete .intro{margin-left:auto;margin-right:auto;max-width:none}
.ct-h2{margin-bottom:var(--e-2)}
.ct-p{margin-bottom:var(--e-3)}
.ct-zones{margin-top:var(--e-3)}
.ct-zones-t{font-weight:600;margin:0 0 var(--e-1)}
.ct-zones-t a,a.ci-v{color:var(--vert)}
.piege{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
/* Réalisations : une paire avant/après par intervention */
.rea-grille{display:grid;gap:var(--e-6);margin:var(--e-4) 0 var(--e-2)}
@media(min-width:900px){.rea-grille{grid-template-columns:1fr 1fr;gap:var(--e-6) var(--e-4)}}
.rea h3{font-size:var(--t-l);font-weight:700;color:var(--vert-fonce);margin:var(--e-2) 0 0}
.rea p{margin:4px 0 0;color:var(--gris)}
.rea .rea-ville{display:inline-flex;align-items:center;gap:6px;margin-top:var(--e-1);font-size:var(--t-xs);font-weight:600;color:var(--vert-fonce)}
.rea .rea-ville::before{content:'';width:14px;height:14px;background:no-repeat center/14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23166534' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 1 0-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")}

/* Avis : une carte par avis */
.avis-note{display:flex;align-items:center;gap:var(--e-3);flex-wrap:wrap;margin-top:var(--e-3)}
.avis-note b{font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-4xl);line-height:1;color:var(--vert)}
.avis-note .e-etoiles{color:var(--etoile);font-size:var(--t-l)}
.avis-grille{display:grid;gap:var(--e-2);margin-top:var(--e-3)}
@media(min-width:800px){.avis-grille{grid-template-columns:1fr 1fr}}
.avis-carte blockquote{margin:var(--e-1) 0 0;font-size:var(--t-m);line-height:1.55;color:var(--encre)}
.avis-carte figcaption{margin-top:var(--e-2);font-size:var(--t-xs);color:var(--gris)}
.avis-carte figcaption b{color:var(--encre);font-weight:600}
.avis-carte .e-etoiles{color:var(--etoile)}
.e-sec-foncee h2 + p{color:rgba(255,255,255,.85)}

/* ══ Guides : article lisible (70 caractères par ligne), auteur et dates visibles, réservation à la fin ══ */
.g-article{max-width:44rem;margin:0 auto;padding:var(--e-4) var(--e-2) var(--e-8)}
.g-fil{font-size:var(--t-xs);color:var(--gris);margin:0 0 var(--e-2)}
.g-fil a{color:var(--vert)}
.g-article h1{font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-2xl);line-height:1.1;color:var(--vert-fonce);margin:0}
@media(min-width:900px){.g-article h1{font-size:var(--t-3xl)}}
.g-meta{display:flex;flex-wrap:wrap;gap:4px var(--e-2);margin:var(--e-2) 0 0;font-size:var(--t-xs);color:var(--gris)}
.g-meta b{color:var(--encre);font-weight:600}
.g-chapo{margin:var(--e-3) 0 0;font-size:var(--t-l);line-height:1.5;color:var(--encre-douce)}
.g-article h2{font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-xl);line-height:1.2;color:var(--vert-fonce);margin:var(--e-6) 0 0}
.g-article h3{font-size:var(--t-l);font-weight:700;color:var(--vert-fonce);margin:var(--e-4) 0 0}
.g-article p,.g-article li{font-size:var(--t-m);line-height:1.7}
.g-article p{margin:var(--e-2) 0 0}
.g-article ul,.g-article ol{margin:var(--e-2) 0 0;padding-left:var(--e-3)}
.g-article li + li{margin-top:var(--e-1)}
.g-article a{color:var(--vert);font-weight:600}
.g-encadre{margin:var(--e-4) 0 0;padding:var(--e-3);border-radius:var(--rayon);background:var(--fond-doux);border-left:4px solid var(--vert)}
.g-encadre p:first-child{margin-top:0}
.g-attention{border-left-color:#B7791F;background:#FBF6EC}
.g-cta{margin:var(--e-6) 0 0;padding:var(--e-4) var(--e-3);border-radius:var(--rayon-l);background:var(--vert-fonce);color:var(--blanc)}
.g-cta h2{color:var(--blanc);margin:0}
.g-cta p{color:rgba(255,255,255,.88)}
.g-cta .e-boutons{margin-top:var(--e-3)}
.g-auteur{display:flex;gap:var(--e-2);align-items:flex-start;margin:var(--e-6) 0 0;padding-top:var(--e-3);border-top:1px solid var(--ligne)}
.g-auteur img{width:48px;height:48px;border-radius:50%;object-fit:contain;background:var(--vert-pale);flex:none}
.g-auteur p{margin:0;font-size:var(--t-s);color:var(--gris)}
.g-auteur p b{color:var(--encre)}
.g-liens{margin:var(--e-4) 0 0}
.g-liens h2{font-size:var(--t-l);margin:0}
/* Liste des guides : la carte entière est le lien */
.guide-lien{display:block;text-decoration:none;color:inherit;transition:box-shadow .15s}
.guide-lien:hover{box-shadow:inset 0 0 0 2px var(--vert)}
.guide-lien h3{font-family:var(--police-titre);font-weight:var(--titre-poids);font-size:var(--t-l);color:var(--vert-fonce);margin:0}
.guide-lien p{margin:var(--e-1) 0 0;color:var(--gris)}

/* Page sols : une carte par type de sol */
.p-intro{margin-top:var(--e-1);color:var(--gris);max-width:60ch}
.p-intro a{color:var(--vert)}
.p-sols{display:grid;gap:var(--e-2);margin:var(--e-4) 0 var(--e-3)}
.p-sols .carte h3{font-size:var(--t-l);font-weight:700;color:var(--vert-fonce);margin:0;letter-spacing:-.01em}
.p-sols .carte p{margin-top:var(--e-1);color:var(--gris);line-height:1.55}
@media(min-width:640px){.p-sols{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){.p-sols{grid-template-columns:repeat(4,1fr)}}
/* Page zones : une carte par département */
.p-zones{display:grid;gap:var(--e-2);margin-top:var(--e-4)}
.p-zones .carte h3{font-size:var(--t-l);font-weight:800;color:var(--vert-fonce);margin:0;letter-spacing:-.02em}
.p-zones .petit{margin:var(--e-1) 0 0}
.p-zones .p-tags{margin-top:var(--e-2)}
@media(min-width:800px){.p-zones{grid-template-columns:1fr 1fr}}
/* Accueil : bande « Aussi chez IMPEK » sous le haut de page (les autres services, sans voler la place du canapé) */
.e-services{background:var(--fond-doux);padding:var(--e-2) 0}
.e-services .conteneur{display:flex;flex-wrap:wrap;align-items:center;gap:var(--e-1) var(--e-2)}
.e-services p{margin:0;font-size:var(--t-s);font-weight:700;color:var(--gris)}
.e-services ul{display:flex;flex-wrap:wrap;gap:var(--e-1);list-style:none;margin:0;padding:0}
.e-services a{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--e-2);border-radius:var(--rayon-bouton);background:var(--blanc);box-shadow:inset 0 0 0 1.5px var(--ligne);color:var(--vert-fonce);font-size:var(--t-s);font-weight:600;text-decoration:none}
.e-services a:hover{box-shadow:inset 0 0 0 1.5px var(--vert)}
/* Offre « pack canapé + matelas » (montants et fin de l'offre gérés par js/offre.js) */
.e-pack{margin:var(--e-2) 0 var(--e-3);padding:var(--e-3);border-radius:var(--rayon-l);background:var(--blanc);box-shadow:inset 0 0 0 2px var(--vert);max-width:420px}
.e-pack[hidden]{display:none}
.e-pack-t{margin:0;font-weight:800;font-size:var(--t-l);letter-spacing:-.02em;color:var(--vert-fonce)}
.e-pack-d{margin:4px 0 0;color:var(--gris)}
.e-pack-p{margin:var(--e-1) 0 0;display:flex;align-items:baseline;gap:var(--e-1)}
.e-pack-p s{color:var(--gris);font-size:var(--t-m)}
.e-pack-p b{font-weight:800;font-size:var(--t-3xl);line-height:1;letter-spacing:-.03em;color:var(--vert)}
.e-pack-n{margin:var(--e-1) 0 var(--e-2);font-size:var(--t-xs);color:var(--gris);line-height:1.5}
.e-pack .bouton-secondaire{width:100%}
.e-bande-offre{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:var(--e-1);min-height:48px;padding:var(--e-1) var(--e-2);background:var(--vert-fonce);color:var(--blanc);text-decoration:none;font-size:var(--t-s);text-align:center}
.e-bande-offre[hidden]{display:none}
.e-bande-offre b{background:var(--vert-clair);color:var(--vert-fonce);border-radius:var(--e-1);padding:0 var(--e-1);font-weight:800}
.e-bande-offre s{opacity:.75}
.e-bande-offre strong{font-weight:800;text-decoration:underline;text-underline-offset:3px}
/* Accueil : rangée d'avant/après sous le grand avant/après (téléphone : on fait défiler du doigt) */
.e-ba-rangee-t{margin:var(--e-6) 0 0;font-size:var(--t-l);font-weight:800;letter-spacing:-.02em;color:var(--vert-fonce)}
.e-ba-rangee{display:grid;grid-auto-flow:column;grid-auto-columns:86%;gap:var(--e-2);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--e-2);margin:var(--e-2) calc(-1 * var(--e-2)) 0;padding:0 var(--e-2) var(--e-1)}
.e-ba-rangee .rea{scroll-snap-align:start}
.e-ba-rangee h3{margin:var(--e-1) 0 0;font-size:var(--t-m);font-weight:700;color:var(--vert-fonce)}
.e-ba-rangee p{margin:2px 0 0;font-size:var(--t-xs);color:var(--gris)}
@media(min-width:800px){.e-ba-rangee{grid-auto-flow:row;grid-template-columns:1fr 1fr;overflow:visible;margin:var(--e-3) 0 0;padding:0;gap:var(--e-4)}}
/* Barre du bas sur téléphone (pages canapé, matelas, tapis) : remplace les boutons flottants */
.barre-tel{display:none}
@media(max-width:899px){
  .barre-tel{display:flex;gap:var(--e-1);position:fixed;left:0;right:0;bottom:0;z-index:900;padding:var(--e-1) var(--e-2) calc(var(--e-1) + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);box-shadow:0 -6px 20px -10px rgba(19,32,26,.35)}
  .barre-tel .bouton{flex:1;min-height:52px;padding:0 var(--e-2);font-size:var(--t-s);white-space:nowrap}
  .barre-tel .bouton small{font-weight:500;opacity:.85;margin-left:4px}
  .barre-tel-wa{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#25D366;color:#fff}
  .barre-tel-wa svg{width:28px;height:28px}
  body:has(.barre-tel) .float-btns{display:none}
  body:has(.barre-tel){padding-bottom:76px}
  body.offre-ouverte .barre-tel,body.menu-ouvert .barre-tel{display:none}
}
@media(max-width:420px){.e-bande-offre{font-size:var(--t-xs);justify-content:flex-start;text-align:left}}
