:root{--papier:#f6f3ec;--panneau:#fbf9f4;--encre:#161310;--shu:#b8372a;--trait:rgba(22,19,16,.16);
--mincho:"Hiragino Mincho ProN","Yu Mincho","Noto Serif JP","Noto Serif SC",serif}
*{box-sizing:border-box}html{background:var(--papier)}body{margin:0;background:var(--papier);color:var(--encre);font-family:var(--mincho);font-size:17px;line-height:1.8}
a{color:inherit}[data-l]{display:none}html[lang=ja] [data-l=ja],html[lang=en] [data-l=en],html[lang=fr] [data-l=fr],html[lang=zh] [data-l=zh]{display:revert}
.f-entete{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 16px;background:rgba(246,243,236,.94);border-bottom:1px solid var(--encre)}
.f-marque{text-decoration:none;font-size:1.2rem;letter-spacing:.06em}.f-marque b{color:var(--shu);font-weight:700}
.f-entete nav{display:flex;gap:1.3rem;align-items:center;flex-wrap:wrap}.f-entete nav a{text-decoration:none;min-height:44px;display:inline-flex;align-items:center;gap:.4rem}
.f-retour img{width:22px;height:22px}
main{max-width:76rem;margin:0 auto;padding:0 16px 4rem}
.famille-titre{font-size:1.6rem;font-weight:700;margin:3rem 0 .2rem;letter-spacing:.06em;color:var(--shu)}
.petites .spec img{width:clamp(48px,6vw,84px);height:clamp(48px,6vw,84px)}.petites .famille{padding:1rem 0}
.venir{font-size:1.1rem}.bouton.dl{display:inline-block;padding:.8rem 1.4rem}
.f-vitrine h1{font-weight:400;font-size:clamp(2.2rem,6vw,4.4rem);letter-spacing:.04em;margin:3rem 0 .4rem}.f-vitrine h1 b{color:var(--shu)}
.chapeau{font-size:1.1rem;max-width:40rem;margin:0 0 2.4rem}
.famille{display:grid;grid-template-columns:1fr 18rem;gap:1.5rem;align-items:center;text-decoration:none;border-top:1px solid var(--encre);padding:1.6rem 0}
.famille:last-child{border-bottom:1px solid var(--encre)}.famille:hover .spec img{opacity:.8}
.spec{display:flex;flex-wrap:wrap;gap:0}.spec img{width:clamp(64px,10vw,140px);height:clamp(64px,10vw,140px)}
.f-info{display:flex;flex-direction:column;gap:.2rem}.f-info b{font-size:1.35rem;font-weight:400}.f-prix{color:var(--shu)}
.f-tete{padding:3rem 0 1.5rem;border-bottom:1px solid var(--encre)}.f-tete h1{font-weight:400;font-size:clamp(2rem,5vw,3.6rem);margin:0;letter-spacing:.05em}
.f-sous{margin:.2rem 0 1.4rem;font-size:1.1rem}.spec.grand img{width:clamp(80px,17vw,230px);height:clamp(80px,17vw,230px)}
.f-bloc{padding:2rem 0;border-bottom:1px solid var(--trait)}.f-bloc h2{font-size:1.45rem;font-weight:700;margin:0 0 1rem;letter-spacing:.06em}
.essai-barre{display:flex;flex-wrap:wrap;gap:1rem 1.6rem;align-items:flex-end;margin-bottom:1rem}
.champ{flex:1 1 20rem;display:flex;flex-direction:column;gap:.3rem;font-weight:700}
.titre-champ span[data-l]{margin-left:.3rem}
.champ textarea{font:inherit;font-weight:400;font-size:1.1rem;padding:.5rem .6rem;border:1.5px solid var(--encre);background:#fff;border-radius:0;box-shadow:0 0 0 4px rgba(184,55,42,.12)}
.taille{display:flex;flex-direction:column;gap:.3rem;font-weight:700}.taille input{width:14rem;accent-color:var(--shu)}
.sens{display:flex}.sens button,.langues button{font:inherit;min-height:44px;padding:0 1rem;border:1.5px solid var(--encre);background:#fff;color:var(--encre);cursor:pointer;border-radius:0}
.sens button+button{border-left:0}.sens button.actif{background:var(--encre);color:var(--papier)}
.essai{background:#fff;border:1px solid var(--encre);padding:1rem;min-height:12rem;overflow:auto;display:flex;gap:.2em}
.essai.v{flex-direction:row-reverse;justify-content:flex-start;height:min(80vh,8.4em);align-items:flex-start}
.essai.h{flex-direction:column}.essai .ligne{display:flex;flex-wrap:wrap}.essai.v .ligne{flex-direction:column;flex-wrap:nowrap}
.essai .car{width:1em;height:1em;line-height:1;flex:none;display:inline-flex;align-items:center;justify-content:center}
.essai img,.essai .manque{width:1em;height:1em;flex:none}.essai .manque{display:inline-flex;align-items:center;justify-content:center;color:rgba(22,19,16,.28);font-size:.82em;width:1.22em;height:1.22em}
.note{margin:.5rem 0 0}
.cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem}
.carte{border:1px solid var(--encre);background:var(--panneau);padding:1.3rem;display:flex;flex-direction:column;gap:.5rem}
.carte h3{margin:0;font-size:1.15rem;color:var(--shu);font-weight:700}.carte .prix{font-size:1.9rem;margin:0;line-height:1.2}.carte .prix small{font-size:.9rem;margin-left:.4rem}
.carte p{margin:0}.carte p:nth-of-type(2){flex:1}
.bouton{display:block;text-align:center;padding:.8rem;background:var(--shu);color:#fff;text-decoration:none;font-size:1.05rem}.bouton.inactif{background:#fff;color:var(--encre);border:1.5px dashed var(--encre)}
.collec{margin:1rem 0 0}
.fiche{display:grid;grid-template-columns:9rem 1fr;gap:.5rem 1.2rem;margin:0}.fiche dt{font-weight:700}.fiche dd{margin:0}
.planche{width:100%;height:auto;background:#fff;border:1px solid var(--trait)}
.f-licence{max-width:46rem;padding:2rem 0}.f-licence h1{font-size:1.8rem;font-weight:400}.f-licence h2{font-size:1.25rem;font-weight:700;margin:2rem 0 .6rem;border-bottom:1px solid var(--encre)}
.f-pied{max-width:76rem;margin:0 auto;padding:1.5rem 16px 3rem;border-top:1px solid var(--encre)}.langues{display:flex;gap:.5rem;flex-wrap:wrap}
.langues button.actif{background:var(--encre);color:var(--papier)}
@media (max-width:700px){.famille{grid-template-columns:1fr}.fiche{grid-template-columns:1fr}.fiche dt{margin-top:.6rem}.f-entete{flex-wrap:wrap}.taille input{width:100%}}
