/* ==========================================================================
   Sieste : design system en flat design de moncanapeconvertible.net.
   Aplats de couleur pleine, aucune ombre, aucun dégradé, aucune texture.
   La profondeur vient de la couleur et de l'espace ; l'interaction se
   reconnaît à la couleur pleine, au pictogramme et au changement de teinte.
   Mobile d'abord : paliers à 700, 1000 et 1200 px.
   Les couleurs, polices, arrondis et largeurs sont surchargés par le
   Personnaliser (variables posées en ligne par le thème).
   ========================================================================== */

@font-face{font-family:'Manrope';src:url('../fonts/manrope.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:'Figtree';src:url('../fonts/figtree.woff2') format('woff2');font-weight:300 900;font-style:normal;font-display:swap}
@font-face{font-family:'Manrope repli';src:local('Arial');size-adjust:104%;ascent-override:96%;descent-override:27%;line-gap-override:0%}
@font-face{font-family:'Figtree repli';src:local('Arial');size-adjust:97%;ascent-override:97%;descent-override:26%;line-gap-override:0%}

:root{
  /* Couleurs (Personnaliser) */
  --paper:#ffffff;--surface:#ffffff;--soft:#eef2fc;
  --ink:#111a33;--text:#2a3350;--muted:#586079;--line:#d9e0f2;
  --accent:#1e4fd6;--accent-hover:#163a9e;--accent-text:#1a44b8;--on-accent:#ffffff;
  --accent-deco:#ffc845;--accent-3:#ff7a59;--footer-bg:#0d1b4a;
  /* Teintes pâles dérivées : elles suivent les couleurs choisies */
  --bleu-p:color-mix(in srgb,var(--accent) 12%,#fff);
  --jaune-p:color-mix(in srgb,var(--accent-deco) 28%,#fff);
  --corail-p:color-mix(in srgb,var(--accent-3) 16%,#fff);
  --stock:#1d7348;--limite:#8a5500;--rupture:#b3261e;
  /* Typographie : cinq tailles, pas une de plus */
  --font-title:'Manrope','Manrope repli',system-ui,sans-serif;
  --font-body:'Figtree','Figtree repli',system-ui,sans-serif;
  --title-weight:800;--title-spacing:-.02em;--font-scale:100%;--read-line:1.7;
  --t-1:.875rem;                                   /* 14 : méta, étiquettes */
  --t-2:1.0625rem;                                 /* 17 : texte */
  --t-3:1.3125rem;                                 /* 21 : intertitres, chapô */
  --t-4:clamp(1.65rem,1.25rem + 1.6vw,2.25rem);     /* 26 → 36 : H2 */
  --t-5:clamp(2.15rem,1.45rem + 3vw,3.5rem);        /* 34 → 56 : H1 */
  /* Formes et rythme */
  --radius:10px;--max:1240px;--gutter:20px;--mesure:44rem;
  --e1:8px;--e2:16px;--e3:24px;--e4:32px;--e5:48px;--e6:72px;--section:clamp(48px,7vw,96px);
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{font-size:var(--font-scale);scroll-behavior:smooth;scroll-padding-top:var(--e3);-webkit-text-size-adjust:100%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
body{margin:0;background:var(--paper);color:var(--text);font-family:var(--font-body);font-size:var(--t-2);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body:has(dialog[open]){overflow:hidden}
::selection{background:var(--accent-deco);color:var(--ink)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
img,svg{max-width:100%}
img{height:auto;display:block}
figure{margin:0}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3{color:var(--ink);font-family:var(--font-title);font-weight:var(--title-weight);line-height:1.12;letter-spacing:var(--title-spacing);text-wrap:balance}
h1{font-size:var(--t-5)}
h2{font-size:var(--t-4)}
h3{font-size:var(--t-3)}
h4{color:var(--ink);font-size:var(--t-2);font-weight:800}
p+p{margin-top:1em}
ul,ol{padding-left:1.25rem}
:is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--accent-deco);outline-offset:3px;border-radius:2px}
section[id],h2[id],h3[id]{scroll-margin-top:var(--e3)}
[hidden]{display:none!important}
.container{width:calc(100% - var(--gutter)*2);max-width:var(--max);margin-inline:auto}
.section{padding-block:var(--section)}
.section-teinte{background:var(--soft)}
.screen-reader-text,.skip-link:not(:focus-visible){position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus-visible{position:fixed;left:16px;top:16px;z-index:999;padding:12px 18px;background:var(--accent-deco);color:var(--ink);font-weight:800}
.icon{width:20px;height:20px;flex:none;vertical-align:middle}
.small{font-size:var(--t-1);color:var(--muted)}

/* Couleurs des illustrations : reliées au Personnaliser */
.a-bleu{fill:var(--accent)}.a-bleu-f{fill:var(--accent-hover)}.a-bleu-p{fill:var(--bleu-p)}
.a-jaune{fill:var(--accent-deco)}.a-corail{fill:var(--accent-3)}.a-encre{fill:var(--ink)}
.a-blanc{fill:#fff}.a-pale{fill:var(--soft)}
.illu{display:block;width:100%;height:auto}
.picto{flex:none}

/* ---------- Éléments récurrents ---------- */
.etiquette,.eyebrow{display:inline-block;margin-bottom:var(--e2);padding:5px 10px;background:var(--bleu-p);color:var(--accent-text);font-size:var(--t-1);font-weight:800;line-height:1.3;border-radius:var(--radius)}
.etiquette-claire{background:var(--accent-deco);color:var(--ink)}

/* Les boutons : un aplat plein, un libellé gras, une flèche. Aucune ombre. */
.bouton,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 22px;border:2px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-family:var(--font-body);font-size:var(--t-2);font-weight:800;line-height:1.2;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s}
.bouton:hover,.wp-block-button__link:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--on-accent)}
.bouton:active{transform:translateY(1px)}
.bouton .icon{width:20px;height:20px;transition:transform .15s}
.bouton:hover .icon{transform:translateX(3px)}
.bouton-pale{background:var(--bleu-p);border-color:var(--bleu-p);color:var(--accent-text)}
.bouton-pale:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.bouton-jaune{background:var(--accent-deco);border-color:var(--accent-deco);color:var(--ink)}
.bouton-jaune:hover{background:#fff;border-color:#fff;color:var(--ink)}
.bouton-outline{background:transparent;border-color:currentColor;color:inherit}
.bouton-outline:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.boutons-contour .bouton:not(.bouton-pale):not(.bouton-jaune){background:transparent;color:var(--accent-text)}
.boutons-contour .bouton:not(.bouton-pale):not(.bouton-jaune):hover{background:var(--accent);color:var(--on-accent)}
.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--accent-text);font-weight:800;font-size:var(--t-2)}
.text-link .icon{width:18px;height:18px;transition:transform .15s}
.text-link:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.25em}
.text-link:hover .icon{transform:translateX(3px)}
.icon-button{display:inline-grid;place-items:center;min-width:44px;min-height:44px;padding:10px;background:none;border:0;border-radius:var(--radius);color:var(--ink)}
.icon-button:hover{background:var(--soft)}

/* ---------- Bandeau et en-tête ---------- */
.announcement{background:var(--accent-deco);color:var(--ink);font-size:var(--t-1);font-weight:700;text-align:center;padding:8px 16px}
.bandeau{position:relative;z-index:30;background:var(--paper)}
.has-sticky-header .bandeau{position:sticky;top:0}
.bandeau.is-stuck{border-bottom:2px solid var(--soft)}
.header-main{display:flex;align-items:center;gap:12px;min-height:68px}
.brand{display:inline-flex;align-items:center;gap:10px;flex:none;color:var(--ink);text-decoration:none}
.brand-picto{width:36px;height:36px}
.brand-nom{display:flex;flex-direction:column;font-family:var(--font-title);line-height:1}
.brand-nom span{font-size:.9rem;font-weight:700;color:var(--muted)}
.brand-nom strong{font-size:1.2rem;font-weight:800;letter-spacing:-.02em;color:var(--ink)}
.brand-clair .brand-nom span{color:#ffffffb3}.brand-clair .brand-nom strong{color:#fff}
.custom-logo-link img{max-width:180px;max-height:48px;width:auto}
.header-tagline{display:none;margin-left:auto;font-size:var(--t-1);color:var(--muted)}
.header-actions{display:flex;align-items:center;gap:4px;margin-left:auto}
.header-link{display:none;align-items:center;gap:8px;padding:10px 16px;background:var(--bleu-p);color:var(--accent-text);border-radius:var(--radius);font-weight:800;font-size:var(--t-1)}
.header-link:hover{background:var(--accent);color:var(--on-accent)}
.header-link .icon{width:16px;height:16px}

/* Menu : replié sur mobile (bouton), déplié sur ordinateur */
.main-navigation{background:var(--soft)}
.js .main-navigation{display:none}
.js .main-navigation.is-open{display:block;max-height:75vh;overflow:auto}
.main-navigation .menu{margin:0;padding:var(--e1) 0;list-style:none}
.main-navigation .menu>.menu-item{position:relative}
.main-navigation .menu>.menu-item>a{display:block;padding:13px 52px 13px 0;font-weight:700;color:var(--ink)}
.main-navigation a:hover{color:var(--accent-text)}
.main-navigation .current-menu-item>a,.main-navigation .current-menu-ancestor>a{color:var(--accent-text)}
.submenu-toggle{position:absolute;right:0;top:2px;display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none}
.submenu-toggle svg{transition:transform .15s}
.expanded>.submenu-toggle svg{transform:rotate(180deg)}
.sub-menu{display:none;list-style:none}
.main-navigation .sub-menu{margin:0 0 var(--e1);padding:4px 0 4px 14px;border-left:3px solid var(--accent-deco)}
.main-navigation .sub-menu a{display:block;padding:8px 0;font-size:var(--t-1);font-weight:600}
.main-navigation .menu-item.expanded>.sub-menu,.main-navigation .menu-item:focus-within>.sub-menu{display:block}

/* ---------- Accueil ---------- */
.une{background:var(--bleu-p);padding-block:var(--e5) var(--e4)}
.une-grille{display:grid;gap:var(--e4)}
.une h1{margin-bottom:var(--e3)}
.une-intro{font-size:var(--t-3);line-height:1.5;color:var(--text);max-width:34rem}
.une-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--e4)}
.une-actions .bouton{flex:1 1 auto}
.une-illu{align-self:center}
.une-legende{display:flex;justify-content:space-between;margin-top:var(--e1);padding-inline:6%;font-size:var(--t-1);font-weight:800;color:var(--accent-text)}
.reperes{background:var(--accent);color:var(--on-accent)}
.reperes ul{display:grid;grid-template-columns:1fr 1fr;gap:var(--e2);margin-block:0;padding:var(--e3) 0;list-style:none}
.reperes li{display:flex;align-items:center;gap:12px;font-weight:800;font-size:var(--t-1);line-height:1.3}
.reperes .picto{width:40px;height:40px;padding:6px;background:#fff;border-radius:var(--radius)}
.section-heading{margin-bottom:var(--e4)}
.section-heading>p{margin-top:12px;color:var(--muted)}
.section-heading>.text-link{margin-top:var(--e2)}
.tuiles{display:grid;grid-template-columns:1fr;gap:var(--e2)}
.tuile{display:flex;flex-direction:column;border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--ink);transition:background-color .15s}
.tuile-1{background:var(--bleu-p)}.tuile-2{background:var(--jaune-p)}.tuile-3{background:var(--corail-p)}
.tuile-illu{display:block;padding:var(--e3) var(--e4) var(--e1)}
.tuile-illu .illu{max-height:150px;margin-inline:auto}
.tuile-pied{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:var(--e2) var(--e3) var(--e3)}
.tuile-pied h3{font-size:var(--t-3)}
.tuile-fleche{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:var(--radius);background:var(--ink);color:#fff;transition:background-color .15s}
.cartes-teinte .tuile:hover .tuile-fleche{background:var(--accent)}
.cartes-teinte .tuile-1:hover{background:color-mix(in srgb,var(--accent) 20%,#fff)}
.cartes-teinte .tuile-2:hover{background:color-mix(in srgb,var(--accent-deco) 42%,#fff)}
.cartes-teinte .tuile-3:hover{background:color-mix(in srgb,var(--accent-3) 28%,#fff)}
.bande{background:var(--footer-bg);color:#fff;padding-block:var(--section)}
.bande-grille{display:grid;gap:var(--e4);align-items:center}
.bande h2{color:#fff;margin-bottom:var(--e3)}
.bande p:not(.etiquette){color:#ffffffd9;max-width:34rem}
.bande .bouton{margin-top:var(--e4)}
.bande-illu{background:#ffffff14;border-radius:var(--radius);padding:var(--e3)}
.bande-illu .a-pale{fill:#ffffff26}

/* ---------- Cartes d'articles et de tests ---------- */
.post-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--e3)}
.post-card{display:flex;flex-direction:column;background:var(--soft);border-radius:var(--radius);overflow:hidden;transition:background-color .15s}
.section-teinte .post-card{background:#fff}
.post-card>:not(.post-image){margin-inline:var(--e3)}
.post-image{display:block;aspect-ratio:4/3;background:var(--soft)}
/* Jamais un canapé coupé : la photo entière, posée sur l'aplat. */
.post-image img{width:100%;height:100%;object-fit:contain}
.image-placeholder{display:grid;place-items:center;height:100%}
.post-card-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin:var(--e2) 0 var(--e1);font-size:var(--t-1);color:var(--muted)}
.post-card-meta a{color:var(--accent-text);font-weight:800}
.post-card-title{font-size:var(--t-3);line-height:1.25;margin-bottom:var(--e1)}
.post-card-title a:hover{color:var(--accent-text)}
.post-card p{font-size:var(--t-1);color:var(--muted);margin-bottom:var(--e2)}
.post-card>.text-link{margin-top:auto;margin-bottom:var(--e3);align-self:flex-start}
.cartes-teinte .post-card:hover{background:var(--bleu-p)}

/* ---------- Pied de page ---------- */
.site-footer{background:var(--footer-bg);color:#fff;padding-top:var(--e5)}
.site-footer a:hover{color:var(--accent-deco)}
.footer-main{display:grid;grid-template-columns:1fr 1fr;gap:var(--e4) var(--e3);padding-bottom:var(--e4)}
.footer-brand{grid-column:1/-1}
.footer-brand>p{max-width:24rem;margin-top:var(--e2);font-size:var(--t-1);color:#ffffffbf}
.footer-heading{margin-bottom:var(--e2);font-size:var(--t-1);font-weight:800;color:var(--accent-deco)}
.site-footer ul{list-style:none;margin:0;padding:0}
.site-footer li{margin-bottom:10px}
.site-footer li a{font-size:var(--t-1);color:#ffffffd9}
.site-footer .sub-menu{display:none}
.site-footer :is(h1,h2,h3,h4){color:#fff}
.footer-bottom{display:flex;flex-direction:column;gap:12px;padding-block:var(--e3);border-top:2px solid #ffffff1f;font-size:var(--t-1);color:#ffffffbf}
.footer-bottom .legal-links ul{display:flex;flex-wrap:wrap;gap:6px 20px}
.footer-bottom li{margin:0}
.footer-bottom a{color:#ffffffbf}
.footer-extra{padding-bottom:var(--e4)}

/* ---------- Fil d'Ariane, archives, pages ---------- */
.breadcrumbs{padding-block:var(--e2);font-size:var(--t-1);color:var(--muted)}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:4px 8px;margin:0;padding:0;list-style:none}
.breadcrumbs li+li::before{content:'›';margin-right:8px;color:var(--accent)}
.breadcrumbs a{color:var(--accent-text);font-weight:700}
.breadcrumbs a:hover{text-decoration:underline}
.breadcrumbs li:last-child{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.archive-main,.page-main{padding-top:var(--e2)}
.archive-heading{max-width:52rem;margin-bottom:var(--e4)}
.archive-heading h1{margin-bottom:var(--e2)}
.archive-description{font-size:var(--t-3);line-height:1.5;color:var(--muted)}
.archive-description a{color:var(--accent-text);text-decoration:underline}
.pagination,.nav-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:var(--e5)}
.page-numbers{display:inline-grid;place-items:center;min-width:46px;height:46px;padding:0 14px;background:var(--soft);border-radius:var(--radius);font-weight:800}
.page-numbers:hover{background:var(--bleu-p)}
.page-numbers.current{background:var(--accent);color:var(--on-accent)}
.empty-state{padding:var(--e4);background:var(--soft);border-radius:var(--radius)}
.empty-state h2{font-size:var(--t-3);margin-bottom:var(--e1)}
.empty-state .text-link{margin-top:var(--e2)}
.page-main>.entry-content,.page-main>.archive-heading{max-width:var(--mesure);margin-inline:auto}
.page-featured{width:100%;max-height:560px;object-fit:contain;background:var(--soft);margin-bottom:var(--e5);border-radius:var(--radius)}

/* ---------- Article ---------- */
.article-hero{display:flex;flex-direction:column;gap:var(--e3);padding-bottom:var(--e4)}
.article-gallery,.article-intro{min-width:0}
.gallery-main{position:relative;display:block;background:var(--soft);border-radius:var(--radius);overflow:hidden}
.gallery-main img{width:100%;height:auto;max-height:620px;object-fit:contain}
.gallery-expand{position:absolute;right:12px;bottom:12px;padding:6px 12px;background:var(--ink);color:#fff;border-radius:var(--radius);font-size:var(--t-1);font-weight:800}
.article-intro h1{margin-bottom:var(--e2)}
.byline{display:flex;flex-wrap:wrap;gap:2px 0;font-size:var(--t-1);color:var(--muted)}
.byline>span:not(:last-child)::after{content:'·';margin:0 8px}
.byline em{font-style:italic;color:var(--text)}
.byline a{color:var(--accent-text);text-decoration:underline}
.article-deck{margin-top:var(--e3);font-size:var(--t-3);line-height:1.5;color:var(--muted)}
.article-offer{display:flex;align-items:center;flex-wrap:wrap;gap:var(--e2);margin-top:var(--e3)}
.article-read{margin-top:var(--e3)}
.price{font-family:var(--font-title);font-size:var(--t-4);font-weight:800;line-height:1.1;color:var(--ink)}
.price strong{font-weight:inherit}
.price del{font-size:.5em;font-weight:600;color:var(--muted);margin-right:6px}
.article-body{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--e3);max-width:52rem;padding-block:var(--e4)}
.article-sidebar:has(.table-of-contents[hidden]){display:none}
.table-of-contents{padding:var(--e3);background:var(--soft);border-radius:var(--radius)}
.toc-title{margin-bottom:var(--e1);font-size:var(--t-1);font-weight:800;color:var(--accent-text)}
.table-of-contents ol,.toc-feuille ol{list-style:none;counter-reset:toc;padding:0;margin:0}
.table-of-contents li,.toc-feuille li{counter-increment:toc;display:flex;gap:10px;padding:8px 0;font-size:var(--t-1);line-height:1.4}
.table-of-contents li::before,.toc-feuille li::before{content:counter(toc);flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:var(--radius);background:var(--paper);font-size:.75rem;font-weight:800;color:var(--accent-text)}
.table-of-contents a:hover,.toc-feuille a:hover{color:var(--accent-text)}
.table-of-contents a[aria-current="true"],.toc-feuille a[aria-current="true"]{color:var(--accent-text);font-weight:800}
.table-of-contents li:has(a[aria-current="true"])::before{background:var(--accent);color:var(--on-accent)}
.article-main{min-width:0}

/* ---------- Texte rédigé ---------- */
.entry-content{font-size:var(--t-2);line-height:var(--read-line);overflow-wrap:anywhere;min-width:0}
.entry-content>*+*{margin-top:1.1em}
.entry-content>:first-child{margin-top:0}
.entry-content h2{position:relative;margin-top:2.2em;padding-top:var(--e2);font-size:var(--t-4)}
.entry-content h2::before{content:'';position:absolute;left:0;top:0;width:40px;height:6px;border-radius:3px;background:var(--accent-deco)}
.entry-content h3{margin-top:1.8em;font-size:var(--t-3)}
.entry-content h2+*,.entry-content h3+*{margin-top:.7em}
.entry-content a:not(.bouton):not(.wp-block-button__link){color:var(--accent-text);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.entry-content a:not(.bouton):not(.wp-block-button__link):hover{background:var(--jaune-p);text-decoration-thickness:2px}
.entry-content strong{font-weight:800;color:var(--ink)}
.entry-content li+li{margin-top:.4em}
.entry-content ul li::marker{color:var(--accent)}
.entry-content ol li::marker{color:var(--accent-text);font-weight:800}
.entry-content img{height:auto;max-width:100%;border-radius:var(--radius)}
.entry-content iframe{max-width:100%}
.entry-content .wp-block-embed iframe,.entry-content iframe[src*="youtube"]{width:100%;height:auto;aspect-ratio:16/9}
.entry-content blockquote{margin:2em 0;padding:var(--e3);background:var(--soft);border-radius:var(--radius)}
.entry-content blockquote>p:first-child strong{display:inline-block;margin-bottom:4px;padding:3px 8px;background:var(--accent-deco);border-radius:var(--radius);font-size:var(--t-1);color:var(--ink)}
.entry-content blockquote ul{margin:var(--e1) 0 0}
.entry-content table{width:100%;border-collapse:collapse;font-size:var(--t-1);line-height:1.5}
.entry-content th,.entry-content td{padding:12px 14px;text-align:left;vertical-align:top}
.entry-content tbody tr:nth-child(odd){background:var(--soft)}
.entry-content thead th{background:var(--accent);color:var(--on-accent);font-weight:800}
.entry-content .wp-block-table,.entry-content figure:has(>table){overflow-x:auto}
.entry-content figcaption{margin-top:var(--e1);font-size:var(--t-1);color:var(--muted)}
.entry-content details{padding:var(--e2) 0;border-bottom:2px solid var(--soft)}
.entry-content summary{font-weight:800;cursor:pointer}
.entry-content hr{border:0;height:6px;width:60px;margin:2.5em 0;border-radius:3px;background:var(--accent-deco)}
.entry-content .alignwide{max-width:1240px}
/* Les classes posées par le robot de rédaction */
.entry-content .chapeau{font-size:var(--t-3);line-height:1.55;color:var(--ink)}
.entry-content .methodo{padding:10px 14px;background:var(--soft);border-radius:var(--radius);font-size:var(--t-1);color:var(--muted)}
.entry-content .methodo__l{white-space:nowrap}
.entry-content .lien-categorie,.entry-content [class="lien-catégorie"]{padding:12px 16px;background:var(--bleu-p);border-radius:var(--radius);font-size:var(--t-1);font-weight:700}
.entry-content .vif{color:var(--accent-text);font-weight:800;background:linear-gradient(transparent 62%,var(--jaune-p) 0)}
.entry-content .table-wrap{margin:1.8em 0;overflow-x:auto;border-radius:var(--radius)}
.entry-content .table-wrap table{margin:0}
.entry-content .table-wrap caption{caption-side:bottom;padding:10px 0 0;font-size:var(--t-1);color:var(--muted);text-align:left}
.entry-content .table-wrap thead th{white-space:nowrap}
.entry-content .table-wrap tr.is-ref{background:var(--jaune-p)!important}
.entry-content .table-wrap tr.is-ref th:first-child{box-shadow:inset 5px 0 0 var(--accent-deco)}
.tri-colonne{display:inline-flex;align-items:center;gap:6px;padding:0;background:none;border:0;color:inherit;font:inherit;cursor:pointer}
.tri-colonne::after{content:'↕';opacity:.6}
th[aria-sort=ascending] .tri-colonne::after{content:'↑';opacity:1}
th[aria-sort=descending] .tri-colonne::after{content:'↓';opacity:1}
.plage{display:block;position:relative;height:6px;margin-top:7px;min-width:90px;background:var(--line);border-radius:3px}
.plage::after{content:'';position:absolute;top:0;bottom:0;left:var(--debut);right:calc(100% - var(--fin));min-width:6px;background:var(--accent);border-radius:3px}

/* Encadrés : un carré de couleur, un pictogramme, un titre court. */
.entry-content .exergue{position:relative;margin:2em 0;padding:var(--e3) var(--e3) var(--e3) 84px;background:var(--jaune-p);border-radius:var(--radius)}
.entry-content .exergue::before{content:'';position:absolute;left:var(--e3);top:var(--e3);width:44px;height:44px;border-radius:var(--radius);background:var(--accent-deco)}
.entry-content .exergue::after{content:'';position:absolute;left:34px;top:34px;width:24px;height:24px;background:var(--ink);-webkit-mask:var(--picto) center/contain no-repeat;mask:var(--picto) center/contain no-repeat}
.entry-content .exergue--conseil{background:var(--bleu-p)}
.entry-content .exergue--conseil::before{background:var(--accent)}
.entry-content .exergue--conseil::after{background:var(--on-accent)}
.entry-content .exergue--attention{background:var(--corail-p)}
.entry-content .exergue--attention::before{background:var(--accent-3)}
.entry-content .exergue{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7.5v.5'/%3E%3C/svg%3E")}
.entry-content .exergue--conseil{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2.1h5c0-.9.4-1.6 1-2.1A6 6 0 0 0 12 3z'/%3E%3C/svg%3E")}
.entry-content .exergue--attention{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 2 20h20L12 3zM12 10v4M12 17v.5'/%3E%3C/svg%3E")}
.entry-content .exergue--chiffre{--picto:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8h18v8H3zM7 8v3M11 8v4M15 8v3M19 8v4'/%3E%3C/svg%3E")}
.entry-content .exergue .exergue__titre{margin:0 0 4px;font-size:var(--t-1);font-weight:800;color:var(--ink)}
.entry-content .exergue p{margin:0;font-size:var(--t-2);line-height:1.55;color:var(--ink)}
/* Les photos du test dans le texte : entières, sur un aplat, cliquables vers le marchand. */
.test-illustration{margin:2em 0;background:var(--soft);border-radius:var(--radius);overflow:hidden}
.test-illustration a{position:relative;display:block;text-decoration:none!important;background:none!important}
.test-illustration img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border-radius:0}
.test-illustration-cta{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius);font-size:var(--t-1);font-weight:800}
.test-illustration a:hover .test-illustration-cta{background:var(--accent-hover)}
.test-illustration-cta .icon{width:16px;height:16px}
.test-illustration figcaption{margin:0;padding:10px 16px;background:var(--ink);color:#fff;font-size:var(--t-1);font-weight:600}

/* ---------- Blocs des fiches (données du Socle) ---------- */
.bloc-title{display:flex;align-items:center;gap:8px;margin-bottom:var(--e1);font-size:var(--t-1);font-weight:800;color:var(--accent-text)}
.bloc-title .icon{width:18px;height:18px}
.bloc-bref{width:calc(100% - var(--gutter)*2);max-width:52rem;margin:0 auto var(--e2);padding:var(--e3);background:var(--bleu-p);border-radius:var(--radius)}
.bloc-points,.bloc-faq,.bloc-achat,.bloc-specs,.bloc-alternatives,.bloc-video{margin-top:var(--e5)}
.bloc-points h2,.bloc-faq h2,.bloc-specs h2,.bloc-alternatives h2{font-size:var(--t-4);margin-bottom:var(--e3)}
.bloc-points-grid{display:grid;gap:var(--e2)}
.bloc-points-col{padding:var(--e3);border-radius:var(--radius)}
.bloc-points-col.is-plus{background:var(--bleu-p)}
.bloc-points-col.is-minus{background:var(--corail-p)}
.bloc-points-col ul{list-style:none;margin:0;padding:0}
.bloc-points-col li{display:flex;gap:10px;padding:6px 0;font-size:var(--t-1)}
.bloc-points-col .icon{width:18px;height:18px;margin-top:2px}
.is-plus .icon{color:var(--stock)}
.is-minus .icon{color:var(--rupture)}
.bloc-ideal{margin-top:var(--e2);font-size:var(--t-1)}
.bloc-verdict{margin-top:var(--e2);padding:var(--e3);background:var(--ink);color:#fff;border-radius:var(--radius)}
.bloc-verdict .bloc-title{color:var(--accent-deco)}
.bloc-verdict p:last-child{font-family:var(--font-title);font-weight:700;font-size:var(--t-3);line-height:1.35}
.bloc-faq details{margin-bottom:8px;background:var(--soft);border-radius:var(--radius)}
.bloc-faq summary{display:flex;justify-content:space-between;align-items:center;gap:var(--e2);padding:var(--e2) var(--e3);list-style:none;font-weight:800;color:var(--ink);cursor:pointer}
.bloc-faq summary::-webkit-details-marker{display:none}
.bloc-faq summary .icon{flex:none;transition:transform .15s}
.bloc-faq details[open]{background:var(--bleu-p)}
.bloc-faq details[open] summary .icon{transform:rotate(180deg)}
.bloc-faq details>div{padding:0 var(--e3) var(--e2);color:var(--text)}
.bloc-achat{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--e2);padding:var(--e3);background:var(--soft);border-radius:var(--radius)}
.bloc-achat .bouton{width:100%}
.transparence{display:flex;gap:10px;margin-top:var(--e4);padding:12px 16px;background:var(--soft);border-radius:var(--radius);font-size:var(--t-1);color:var(--muted)}
.transparence .icon{width:18px;height:18px;margin-top:2px}
.transparence a{color:var(--accent-text);text-decoration:underline}
.specs-cles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 var(--e2);padding:0;list-style:none}
.specs-cles li{display:flex;flex-direction:column;padding:12px 14px;background:var(--soft);border-radius:var(--radius)}
.specs-cles span{font-size:var(--t-1);color:var(--muted)}
.specs-cles strong{color:var(--ink)}
.specs-table{overflow-x:auto}
.specs-table table{width:100%;border-collapse:collapse;font-size:var(--t-1)}
.specs-table th,.specs-table td{padding:10px 14px;text-align:left;vertical-align:top}
.specs-table tr:nth-child(odd){background:var(--soft)}
.specs-table th{width:40%;font-weight:700;color:var(--muted)}
.bloc-galerie ul{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 var(--e3);padding:0;list-style:none}
.bloc-galerie img{width:100%;aspect-ratio:1;object-fit:contain;background:var(--soft);border-radius:var(--radius)}
.bloc-alternatives{padding:var(--e3);background:var(--jaune-p);border-radius:var(--radius)}
.bloc-alternatives ul{list-style:none;margin:var(--e2) 0 0;padding:0}
.bloc-alternatives li a{display:flex;justify-content:space-between;gap:12px;padding:12px 0;font-weight:800;color:var(--ink)}
.bloc-alternatives li a:hover{color:var(--accent-text)}
.bloc-reassurance{background:var(--soft)}
.bloc-reassurance ul{display:flex;flex-wrap:wrap;gap:var(--e1) var(--e4);margin-block:0;padding:var(--e3) 0;list-style:none;font-size:var(--t-1)}
.bloc-reassurance li{display:flex;align-items:center;gap:8px}
.bloc-reassurance .icon{color:var(--stock)}
.badge-dispo{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius);font-size:var(--t-1);font-weight:800;line-height:1.3;color:#fff}
.badge-dispo::before{content:'';width:8px;height:8px;border-radius:50%;background:currentColor}
.badge-dispo.is-succes{background:var(--stock)}.badge-dispo.is-alerte{background:var(--limite)}.badge-dispo.is-rupture{background:var(--rupture)}
.badge-remise{display:inline-block;vertical-align:middle;padding:3px 8px;background:var(--accent-3);color:var(--ink);border-radius:var(--radius);font-family:var(--font-body);font-size:var(--t-1);font-weight:800;line-height:1.3}

/* ---------- Le test : fiche produit ---------- */
.test-hero{display:flex;flex-direction:column;gap:var(--e3);padding-bottom:var(--e4)}
.test-titre,.test-visuels,.test-donnees{min-width:0}
.test-titre h1{font-size:clamp(1.9rem,1.3rem + 2.4vw,2.9rem);margin-bottom:var(--e2)}
.test-pastilles{display:flex;flex-wrap:wrap;gap:8px;margin:var(--e2) 0 0;padding:0;list-style:none}
.test-pastilles li{padding:5px 10px;background:var(--jaune-p);border-radius:var(--radius);font-size:var(--t-1);font-weight:800;color:var(--ink)}
.test-visuel-principal{position:relative;display:block;aspect-ratio:4/3;background:var(--soft);border-radius:var(--radius);overflow:hidden}
.test-visuel-principal img{width:100%;height:100%;object-fit:contain}
.test-vignettes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:8px 0 0;padding:0;list-style:none}
.test-vignettes button{display:block;width:100%;aspect-ratio:4/3;padding:0;background:var(--soft);border:3px solid transparent;border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:border-color .15s}
.test-vignettes button:hover{border-color:var(--bleu-p)}
.test-vignettes button.is-active{border-color:var(--accent)}
.test-vignettes img{width:100%;height:100%;object-fit:contain}
.test-video{margin-top:8px}
.test-video-facade{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;background:var(--ink);border:0;border-radius:var(--radius);overflow:hidden;cursor:pointer}
.test-video-facade img{width:100%;height:100%;object-fit:cover;opacity:.75;transition:opacity .15s}
.test-video-facade:hover img{opacity:.95}
.test-video-play{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:64px;height:64px;transform:translate(-50%,-50%);background:var(--accent-deco);color:var(--ink);border-radius:var(--radius)}
.test-video-label{position:absolute;left:12px;bottom:12px;padding:5px 10px;background:#fff;border-radius:var(--radius);font-size:var(--t-1);font-weight:800;color:var(--ink)}
.test-video iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:var(--radius)}
.test-offre{display:grid;gap:12px;padding:var(--e3);background:var(--bleu-p);border-radius:var(--radius)}
.test-prix{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.test-offre .small{margin:0}
.test-offre .bouton{width:100%}
.test-rassure{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;list-style:none;font-size:var(--t-1);font-weight:700}
.test-rassure li{display:flex;align-items:center;gap:6px}
.test-rassure .icon{width:16px;height:16px;color:var(--stock)}
.test-cases,.test-coloris,.test-specs,.couchage{margin-top:var(--e3)}
.test-cases-titre,.couchage-titre{margin:0 0 12px;font-family:var(--font-title);font-size:var(--t-3);font-weight:800;color:var(--ink)}
.test-cases dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.test-cases dl>div{display:flex;flex-direction:column;gap:2px;padding:12px 14px;background:var(--soft);border-radius:var(--radius)}
.test-cases dt{font-size:var(--t-1);color:var(--muted)}
.test-cases dd{margin:0;font-weight:800;color:var(--ink);line-height:1.35}

/* La carte « Le couchage » : le bloc propre au site */
.couchage{padding:var(--e3);background:var(--jaune-p);border-radius:var(--radius)}
.couchage-meca{display:flex;align-items:center;gap:var(--e2);padding:12px 14px;background:#fff;border-radius:var(--radius)}
.picto-meca{flex:none;width:64px;height:40px}
.couchage-meca-nom{font-weight:800;color:var(--ink)}
.couchage-meca-geste{margin-top:2px;font-size:var(--t-1);color:var(--text)}
.couchage-plan{margin-top:var(--e2);padding:var(--e2);background:#fff;border-radius:var(--radius)}
.couchage-dessin{display:block;width:100%;max-width:300px;height:auto;margin-inline:auto}
.couchage-plan figcaption{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 14px;margin-top:10px;font-size:var(--t-1);color:var(--muted)}
.cle{display:inline-block;width:14px;height:14px;border-radius:3px;vertical-align:-2px}
.cle-bleu{background:var(--accent)}.cle-pale{background:var(--soft);outline:1px solid var(--line)}
.couchage-donnees{display:grid;grid-template-columns:1fr;gap:8px;margin:var(--e2) 0 0;padding:0;list-style:none}
.couchage-donnees li{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#fff;border-radius:var(--radius)}
.couchage-donnees .picto{width:32px;height:32px}
.couchage-donnees li>span{display:flex;flex-direction:column}
.couchage-cle{font-size:var(--t-1);color:var(--muted)}
.couchage-donnees strong{color:var(--ink);line-height:1.35}

/* Coloris : des ronds de couleur, le nom au survol */
.test-coloris ul{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}
.teinte-pastille{position:relative;display:block;width:30px;height:30px;border-radius:50%;background:var(--c,var(--soft));box-shadow:inset 0 0 0 1px #0000001f;cursor:default}
.teinte-pastille.is-inconnue{background:repeating-linear-gradient(45deg,var(--soft) 0 4px,#fff 4px 8px)}
.teinte-pastille:hover,.teinte-pastille:focus-visible{outline:3px solid var(--accent-deco);outline-offset:2px}
.teinte-pastille:hover::after,.teinte-pastille:focus-visible::after{content:attr(data-teinte);position:absolute;left:50%;bottom:calc(100% + 10px);z-index:5;padding:5px 10px;background:var(--ink);color:#fff;border-radius:var(--radius);font-size:var(--t-1);font-weight:700;white-space:nowrap;transform:translateX(-50%);pointer-events:none}
.test-coloris li:first-child .teinte-pastille::after{left:0;transform:none}

/* Toutes les caractéristiques, en accordéon */
.test-specs{background:var(--soft);border-radius:var(--radius)}
.test-specs summary{display:flex;align-items:center;gap:12px;padding:14px 18px;font-weight:800;color:var(--ink);cursor:pointer;list-style:none}
.test-specs summary::-webkit-details-marker{display:none}
.test-specs summary .icon{margin-left:auto;transition:transform .15s}
.test-specs[open] summary .icon{transform:rotate(180deg)}
.test-specs-nombre{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 6px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius);font-size:var(--t-1);font-weight:800}
.test-specs .specs-table{max-height:420px;overflow:auto;background:#fff}

/* L'essentiel en 30 secondes */
.test-bref{display:grid;gap:var(--e2);width:calc(100% - var(--gutter)*2);max-width:56rem;margin:0 auto var(--e5);padding:var(--e3);background:var(--accent);color:var(--on-accent);border-radius:var(--radius)}
.test-bref-tete{display:flex;align-items:center;gap:12px}
.test-bref-tete svg{flex:none;width:44px;height:44px}
.essentiel-titre{margin:0;font-family:var(--font-title);font-size:var(--t-3);font-weight:800;color:inherit}
.test-bref-texte{margin:0;font-size:var(--t-3);line-height:1.5;font-weight:600}
.test-bref-points{display:grid;gap:8px;margin:0;padding:0;list-style:none;font-size:var(--t-1);font-weight:700}
.test-bref-points li{display:flex;align-items:flex-start;gap:10px}
.test-bref-points .icon{flex:none;width:22px;height:22px;padding:3px;border-radius:var(--radius);background:#fff;color:var(--stock);stroke-width:2.6}
.test-bref-points .is-minus .icon{color:var(--rupture)}
.test-bref-cta{display:flex;flex-direction:column;gap:var(--e2);padding:var(--e2);background:#fff;border-radius:var(--radius);color:var(--text)}
.test-bref-prix{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px}
.test-bref .price{margin:0}
.test-bref .bouton{background:var(--accent-deco);border-color:var(--accent-deco);color:var(--ink)}
.test-bref .bouton:hover{background:var(--ink);border-color:var(--ink);color:#fff}

.test-guides{margin-top:var(--e5);padding:var(--e3);background:var(--soft);border-radius:var(--radius)}
.test-guides h2{font-size:var(--t-3);margin-bottom:var(--e1)}
.test-guides ul{list-style:none;margin:0 0 var(--e2);padding:0}
.test-guides li a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:2px solid #fff;font-weight:800;color:var(--ink)}
.test-guides li a:hover{color:var(--accent-text)}

/* La barre d'achat, collée en bas de l'écran */
.barre-achat{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:var(--ink);color:#fff}
.barre-achat-inner{display:flex;align-items:center;gap:12px}
.barre-achat-photo,.barre-achat-modele{display:none}
.barre-achat-offre{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;margin-right:auto}
.barre-achat-prix{margin:0;font-family:var(--font-title);font-weight:800;font-size:1.3rem;line-height:1.1;white-space:nowrap}
.barre-achat-prix del{font-size:.6em;color:#ffffffa6}
.barre-achat-prix .badge-remise{font-size:.65rem}
.barre-achat .badge-dispo{padding:2px 8px;font-size:.72rem}
.barre-achat .bouton{flex:none;min-height:48px;padding-inline:16px;background:var(--accent-deco);border-color:var(--accent-deco);color:var(--ink);font-size:var(--t-1)}
.barre-achat .bouton:hover{background:#fff;border-color:#fff}
.has-barre-achat .site-footer{padding-bottom:96px}
.has-barre-achat .back-to-top{bottom:92px}
.cta-collant{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));background:var(--ink);color:#fff}
.cta-collant p{display:flex;flex-direction:column;font-size:var(--t-1);min-width:0}
.cta-collant-model{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- Repères de lecture : progression, retour en haut, sommaire flottant ---------- */
.reading-progress{position:fixed;left:0;right:0;top:0;z-index:60;height:4px;pointer-events:none}
.reading-progress span{display:block;height:100%;width:100%;background:var(--accent-deco);transform-origin:left;transform:scaleX(0)}
.admin-bar .reading-progress{top:32px}
.back-to-top{position:fixed;right:16px;bottom:16px;z-index:45;display:grid;place-items:center;width:48px;height:48px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s,transform .2s,visibility .2s,background-color .15s}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}
.back-to-top:hover{background:var(--accent-hover)}
.toc-flottant{position:fixed;right:16px;bottom:76px;z-index:45;display:flex;align-items:center;gap:8px;height:44px;padding:0 14px;border:0;border-radius:var(--radius);background:var(--ink);color:#fff;font-size:var(--t-1);font-weight:800;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s,transform .2s,visibility .2s}
.toc-flottant.is-visible{opacity:1;visibility:visible;transform:none}
.toc-flottant.is-discret,.back-to-top.is-visible.is-discret{opacity:.45}
.has-barre-achat .toc-flottant{bottom:152px}
.toc-feuille{position:fixed;inset:auto 0 0 0;width:100%;max-width:none;max-height:75vh;margin:0;padding:var(--e3) var(--gutter) calc(var(--e3) + env(safe-area-inset-bottom));overflow:auto;border:0;border-radius:var(--radius) var(--radius) 0 0;background:var(--paper);color:var(--text)}
.toc-feuille-tete{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--e1)}
.toc-feuille-tete .toc-title{margin:0}
.toc-feuille .dialog-close{position:static}
.toc-feuille li{border-bottom:2px solid var(--soft)}

/* ---------- Recherche, visionneuse, formulaires ---------- */
.search-form{display:flex;gap:8px;max-width:640px;margin-block:var(--e3)}
.search-form input{flex:1;min-width:0;padding:13px 16px;border:2px solid var(--line);border-radius:var(--radius);background:#fff;font-size:max(16px,var(--t-2))}
.search-form input:focus{border-color:var(--accent);outline:none}
.search-form .bouton{padding-inline:18px}
.fenetre-recherche{width:min(820px,calc(100% - 32px));padding:0;border:0;border-radius:var(--radius);background:var(--paper);color:var(--ink)}
dialog::backdrop{background:#111a33cc}
.fenetre-recherche-inner{position:relative;padding:56px 22px 28px}
.fenetre-recherche h2{font-size:var(--t-4)}
.search-hint{font-size:var(--t-1);color:var(--muted)}
.dialog-close{position:absolute;right:12px;top:12px;z-index:1}
.lightbox{max-width:95vw;max-height:95vh;padding:44px 10px 10px;border:0;border-radius:var(--radius);background:#fff}
.lightbox img{max-width:85vw;max-height:80vh;object-fit:contain}
.wpcf7 form{max-width:var(--mesure)}
.wpcf7 label{display:block;font-size:var(--t-1);font-weight:800}
.wpcf7 :is(input[type=text],input[type=email],input[type=url],input[type=tel],select,textarea){width:100%;margin-top:6px;padding:12px 14px;border:2px solid var(--line);border-radius:var(--radius);background:#fff;font-size:max(16px,var(--t-2))}
.wpcf7 :is(input,select,textarea):focus{border-color:var(--accent);outline:none}
.wpcf7 textarea{min-height:180px}
.wpcf7 input[type=submit]{width:100%;min-height:52px;padding:14px 26px;border:0;border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-weight:800;cursor:pointer}
.wpcf7 input[type=submit]:hover{background:var(--accent-hover)}
.wpcf7 .wpcf7-not-valid-tip{font-size:var(--t-1);color:var(--rupture)}
.wpcf7 .wpcf7-response-output{margin:var(--e2) 0 0!important;padding:12px 16px!important;border-radius:var(--radius);font-size:var(--t-1)}

/* ---------- Divers ---------- */
.author-box{display:flex;gap:var(--e2);margin-top:var(--e5);padding:var(--e3);background:var(--soft);border-radius:var(--radius)}
.author-box img{width:64px;height:64px;border-radius:50%}
.author-name{font-weight:800;margin-bottom:4px}
.related-section{background:var(--soft);max-width:none;width:100%;padding-inline:max(var(--gutter),calc((100% - var(--max))/2))}
.related-section .post-card{background:#fff}
.home-guide{padding-bottom:0}
.home-guide .guide-heading h2{max-width:50rem}
.encart{margin-block:0}
.comments-area{margin-top:var(--e5)}
.comments-area h2{font-size:var(--t-3);margin-bottom:var(--e2)}
.comment-list{padding-left:0;list-style:none;font-size:var(--t-1)}
.comment-body{padding:var(--e2) 0;border-bottom:2px solid var(--soft)}
.comment-form label{display:block;font-size:var(--t-1);font-weight:800;margin-bottom:4px}
.comment-form input:not([type=checkbox]):not([type=submit]),.comment-form textarea{width:100%;padding:12px 14px;border:2px solid var(--line);border-radius:var(--radius);background:#fff}
.comment-form input[type=submit]{padding:14px 24px;border:0;border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-weight:800}
.not-found{max-width:52rem;padding-block:var(--e5) var(--e6)}
.not-found h1{margin-bottom:var(--e3)}
.not-found>p{font-size:var(--t-3);color:var(--muted)}
.not-found .text-link{margin-top:var(--e3)}

/* ==========================================================================
   ≥ 700 px : tablette
   ========================================================================== */
@media(min-width:700px){
  :root{--gutter:clamp(24px,4vw,56px)}
  .header-main{min-height:80px}
  .brand-picto{width:40px;height:40px}
  .brand-nom strong{font-size:1.35rem}
  .header-link{display:inline-flex}
  .une{padding-block:var(--e6) var(--e5)}
  .une-actions .bouton{flex:0 0 auto}
  .reperes ul{grid-template-columns:repeat(4,1fr);padding-block:var(--e3)}
  .section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--e4)}
  .section-heading>p{max-width:22rem;margin-top:0}
  .section-heading>.text-link{margin-top:0;flex:none}
  .tuiles{grid-template-columns:repeat(2,1fr)}
  .post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-main{grid-template-columns:2fr 1fr 1fr}
  .footer-brand{grid-column:auto}
  .footer-bottom{flex-direction:row;justify-content:space-between;align-items:center}
  .breadcrumbs li:last-child{max-width:520px}
  .bloc-points-grid{grid-template-columns:1fr 1fr}
  .bloc-achat .bouton{width:auto}
  .specs-cles{grid-template-columns:repeat(3,minmax(0,1fr))}
  .test-offre{grid-template-columns:1fr auto;align-items:center}
  .test-offre .small{grid-column:1}
  .test-offre .bouton{grid-column:2;grid-row:1/span 2;width:auto}
  .test-rassure{grid-column:1/-1}
  .test-cases dl{grid-template-columns:repeat(3,minmax(0,1fr))}
  .couchage-donnees{grid-template-columns:1fr 1fr}
  .test-bref{padding:var(--e4)}
  .test-bref-cta{flex-direction:row;align-items:center;justify-content:space-between}
  .barre-achat-photo{display:block;width:52px;height:52px;object-fit:contain;background:#fff;border-radius:var(--radius)}
  .barre-achat-modele{display:flex;flex-direction:column;min-width:0;margin:0;line-height:1.25}
  .barre-achat-modele strong{font-family:var(--font-title);font-weight:800;font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .barre-achat-modele span{font-size:var(--t-1);color:#ffffffa6}
  .barre-achat-offre{flex-direction:row;align-items:center;gap:14px;margin-left:auto;margin-right:12px}
  .barre-achat-prix{font-size:1.5rem}
  .fenetre-recherche-inner{padding:64px}
  .lightbox{padding:44px}
}

/* ==========================================================================
   ≥ 1000 px : ordinateur
   ========================================================================== */
@media(min-width:1000px){
  .header-main{min-height:84px;gap:var(--e3)}
  .menu-toggle{display:none}
  .header-tagline{display:block}
  .main-navigation,.js .main-navigation{display:block;max-height:none;overflow:visible}
  .main-navigation .menu{display:flex;flex-wrap:wrap;gap:0 var(--e3);padding:0}
  .main-navigation .menu>.menu-item{display:flex;align-items:center}
  .main-navigation .menu>.menu-item>a{padding:14px 0;font-size:var(--t-1)}
  .submenu-toggle{position:static;width:24px;height:44px}
  .main-navigation .sub-menu{position:absolute;left:-16px;top:100%;width:270px;margin:0;padding:10px 16px;border-left:0;border-top:4px solid var(--accent-deco);background:var(--paper);border-radius:0 0 var(--radius) var(--radius);z-index:10}
  .une-grille{grid-template-columns:1fr 1.05fr;align-items:center;gap:var(--e5)}
  .tuiles{grid-template-columns:repeat(3,1fr)}
  .post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .bande-grille{grid-template-columns:1.1fr .9fr;gap:var(--e6)}
  .article-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--e5);align-items:center}
  .article-body{grid-template-columns:230px minmax(0,1fr);gap:var(--e5);max-width:var(--max)}
  .article-sidebar:has(.table-of-contents[hidden]){display:block}
  .table-of-contents{position:sticky;top:var(--e3)}
  .test-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-areas:"visuels titre" "visuels donnees";grid-template-rows:auto 1fr;column-gap:var(--e5);row-gap:var(--e2);align-items:start;padding-top:var(--e1)}
  .test-titre{grid-area:titre}
  /* Les deux colonnes restent collées au défilement : leurs bas s'alignent. */
  .test-visuels{grid-area:visuels;position:sticky;top:var(--e3)}
  .test-donnees{grid-area:donnees;position:sticky;top:var(--e3);align-self:start}
  .test-hero .test-cases dl{grid-template-columns:repeat(3,minmax(0,1fr))}
  .test-offre{grid-template-columns:1fr}
  .test-offre .bouton{grid-column:1;grid-row:auto;width:100%}
  .toc-flottant{display:none!important}
}
@media(hover:hover) and (min-width:1000px){.main-navigation .menu-item:hover>.sub-menu{display:block}}

/* ==========================================================================
   ≥ 1200 px : grand écran
   ========================================================================== */
@media(min-width:1200px){
  .test-offre{grid-template-columns:1fr auto}
  .test-offre .bouton{grid-column:2;grid-row:1/span 2;width:auto}
}

@media print{
  .bandeau,.announcement,.site-footer,.article-sidebar,.fenetre-recherche,.lightbox,.related-section,.gallery-expand,.comments-area,.cta-collant,.encart,.barre-achat,.back-to-top,.toc-flottant,.toc-feuille,.reading-progress,.test-vignettes,.test-video{display:none!important}
  .article-hero,.article-body,.test-hero{display:block}
  body{font-size:11pt}
}

/* ---------- Ajustements de contraste sur les aplats ---------- */
.une .etiquette{background:#fff}
.une .bouton-pale{background:#fff;border-color:#fff}
.une .bouton-pale:hover{background:var(--accent);border-color:var(--accent)}
.une-legende{padding-inline:12%;margin-top:0}
.bande .a-encre{fill:#fff}
@media(min-width:1000px){
  .main-navigation{background:none;border-top:2px solid var(--soft)}
}
/* Les photos des marchands sont détourées sur blanc : cadre blanc, liseré d'aplat. */
.test-visuel-principal,.test-vignettes button,.test-illustration,.post-image,.bloc-galerie img,.barre-achat-photo{background:#fff}
.test-visuel-principal{border:2px solid var(--soft)}
.test-vignettes button{border-color:var(--soft)}
.test-illustration{border:2px solid var(--soft)}
.couchage-dessin .a-pale{fill:var(--line)}
