:root{--encre:#1d2433;--doux:#5b6475;--fond:#f7f5f1;--carte:#fff;--accent:#0f6e8c;--accent-fonce:#0a5068;--chaud:#e2733a;--filet:#e3ded4;--rayon:10px;--max:46rem}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;padding-top:64px;background:var(--fond);color:var(--encre);font:17px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
main{max-width:var(--max);margin:0 auto;padding:28px 18px 48px}
h1{font-size:clamp(1.7rem,4.5vw,2.4rem);line-height:1.15;margin:.2em 0 .5em;letter-spacing:-.01em}
h2{font-size:1.45rem;line-height:1.25;margin:2em 0 .6em}
h3{font-size:1.15rem;margin:1.6em 0 .4em}
p{margin:0 0 1em}
a{color:var(--accent)}
a:hover{color:var(--accent-fonce)}
img{max-width:100%;height:auto;display:block}
.chapo{font-size:1.12rem;color:var(--doux)}
.maj{font-size:.85rem;color:var(--doux);margin-bottom:1.6em}
.site{position:fixed;top:0;left:0;right:0;height:64px;background:var(--carte);border-bottom:1px solid var(--filet);z-index:10}
.site .int{max-width:62rem;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 18px;gap:12px}
.logo{font-weight:800;text-decoration:none;color:var(--encre);font-size:1.05rem;white-space:nowrap}
.logo span{color:var(--accent)}
.site nav{display:flex;gap:18px;overflow-x:auto}
.site nav a{text-decoration:none;color:var(--encre);font-size:.95rem;white-space:nowrap}
.site nav a:hover{color:var(--accent)}
[id]{scroll-margin-top:84px}
.top{display:grid;gap:14px;margin:1.4em 0 2em}
.produit{background:var(--carte);border:1px solid var(--filet);border-radius:var(--rayon);padding:18px 18px 16px}
.produit::after{content:"";display:block;clear:both}
.produit .photo{float:right;width:150px;height:150px;object-fit:contain;margin:0 0 10px 14px;background:#fff;border-radius:8px}
.produit .rang{display:inline-block;font-weight:800;color:var(--accent);margin-right:6px}
.produit h3{margin:0 0 .3em;font-size:1.12rem}
.produit .verdict{color:var(--doux);margin:0 0 .7em}
.produit dl{display:grid;grid-template-columns:auto 1fr;gap:2px 12px;margin:0 0 12px;font-size:.93rem}
.produit dt{color:var(--doux)}
.produit dd{margin:0}
.bouton{display:inline-block;border:0;border-radius:8px;background:var(--chaud);color:#fff;font:700 .95rem/1 system-ui,sans-serif;padding:12px 16px;cursor:pointer}
.bouton:hover{background:#c95f2a}
.tableau{overflow-x:auto;margin:1.2em 0 1.6em}
table{border-collapse:collapse;width:100%;font-size:.93rem;background:var(--carte)}
th,td{border-bottom:1px solid var(--filet);padding:9px 10px;text-align:left;vertical-align:top}
th{background:#eef3f5}
.note{background:#eef6f8;border-left:4px solid var(--accent);padding:12px 16px;border-radius:0 var(--rayon) var(--rayon) 0;margin:1.4em 0}
.grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:12px;margin:1em 0 2em;padding:0;list-style:none}
.grille li a{display:block;background:var(--carte);border:1px solid var(--filet);border-radius:var(--rayon);padding:14px 16px;text-decoration:none;color:var(--encre);height:100%}
.grille li a:hover{border-color:var(--accent)}
.grille strong{display:block;margin-bottom:2px}
.grille span{color:var(--doux);font-size:.9rem}
.faq h3{margin-top:1.2em}
footer{border-top:1px solid var(--filet);background:var(--carte);font-size:.88rem;color:var(--doux)}
footer .int{max-width:62rem;margin:0 auto;padding:22px 18px;display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:space-between}
footer a{color:var(--doux)}
.lien-legal{cursor:pointer;text-decoration:underline}
@media (max-width:640px){body{font-size:16px}.produit .photo{width:110px;height:110px}.logo{font-size:.95rem}.site nav{gap:12px}.site nav a{font-size:.88rem}.site nav a.option{display:none}}
@media (max-width:400px){.site nav a.option2{display:none}}
