:root{--bg:#f5f5f2;--text:#11120f;--muted:#70716c;--soft:#cdcec9;--mid:#b6b5b0;--ink:#292927;--line:rgba(17,18,15,.12);--font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.dark{--bg:#11120f;--text:#f5f5f2;--muted:#b6b5b0;--line:rgba(245,245,242,.18)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:#f5f5f2;color:#11120f;font-family:var(--font);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;animation:pageIn .6s ease both}
body.leaving{opacity:0;transition:opacity .25s}
@keyframes pageIn{from{opacity:0}to{opacity:1}}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid #292927;outline-offset:3px}
.dark :focus-visible{outline-color:#f5f5f2}
.wrap{width:min(100% - 2.5rem,1100px);margin-inline:auto}
h1,h2,h3{letter-spacing:-.035em;line-height:1.05;font-weight:600}
h1{font-size:clamp(2.8rem,7.5vw,5.6rem)}
h2{font-size:clamp(2.2rem,5.5vw,4.4rem)}
h3{font-size:1.2rem;letter-spacing:-.02em}
.lead{color:var(--muted);font-size:clamp(1.05rem,2vw,1.4rem);max-width:40ch;margin:1.2rem auto 0;line-height:1.4}

/* Loader + progression */
.loader{position:fixed;inset:0;z-index:100;background:#f5f5f2;display:grid;place-items:center;animation:loaderOut .7s 1.3s forwards}
.loader img{width:100px;filter:invert(1);animation:logoPop 1.2s ease both}
@keyframes logoPop{0%{opacity:0;transform:scale(.6) rotate(-8deg);filter:invert(1) blur(10px)}60%{opacity:1;transform:scale(1.05);filter:invert(1) blur(0)}100%{transform:scale(1)}}
@keyframes loaderOut{to{opacity:0;visibility:hidden}}
.progress{position:fixed;top:0;left:0;height:2px;width:0;background:#11120f;z-index:60}

/* Header : fond plein + fondu vers le bas (pas de verre) */
header{position:sticky;top:0;z-index:50;background:#f5f5f2}
header::before{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(17,18,15,.12);opacity:0;transition:opacity .3s}
header::after{content:"";position:absolute;left:0;right:0;top:100%;height:44px;background:linear-gradient(#f5f5f2 8%,rgba(245,245,242,0));pointer-events:none}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px;gap:1.5rem}
header.small::before{opacity:1}
.logo{display:flex;align-items:center;gap:.6rem;font-weight:700;font-size:1.05rem;letter-spacing:-.02em}
.logo img{height:26px;width:auto;filter:invert(1);transition:transform .5s}
.logo:hover img{transform:rotate(-8deg) scale(1.1)}
.nav ul{display:flex;list-style:none;gap:2rem;font-size:.88rem;color:#292927}
.nav ul a{position:relative;padding:.3rem 0;opacity:.75;transition:opacity .2s}
.nav ul a:hover,.nav ul a.on{opacity:1}
.nav ul a::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .3s}
.nav ul a:hover::after,.nav ul a.on::after{transform:scaleX(1);transform-origin:left}
.nav-act{display:flex;gap:.6rem}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.6rem;border-radius:999px;font-weight:500;font-size:.95rem;border:1px solid transparent;cursor:pointer;font-family:inherit;transition:transform .25s,background .25s,color .25s,border-color .25s}
.btn:hover{transform:scale(1.04)}
.btn-p{background:var(--text);color:var(--bg)}
.btn-p:hover{background:var(--muted)}
.btn-g{background:transparent;border-color:var(--text);color:var(--text)}
.btn-g:hover{background:var(--text);color:var(--bg)}
.btn-sm{padding:.5rem 1rem;font-size:.85rem}
.acts{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}

/* Sections plein écran centrées */
.sec{position:relative;min-height:100vh;display:grid;place-items:center;text-align:center;padding:7rem 0 5rem;background:var(--bg);color:var(--text);overflow:hidden}
.sec.tall{min-height:auto;padding:8rem 0}
.sec.soft{background:#cdcec9}
.hero{min-height:calc(100vh - 68px);padding-top:4rem}
.bgv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.16;z-index:0}
.sec>.wrap{position:relative;z-index:1}
.type{border-right:3px solid currentColor;padding-right:.12em;animation:caret .8s step-end infinite}
@keyframes caret{50%{border-color:transparent}}
.grad{background:linear-gradient(90deg,#11120f,#70716c,#11120f);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s linear infinite}
.dark .grad{background-image:linear-gradient(90deg,#f5f5f2,#70716c,#f5f5f2);background-size:200% auto;-webkit-background-clip:text;background-clip:text}
@keyframes shine{to{background-position:200% center}}

/* Grande image centrale */
.shot{position:relative;width:min(100%,1040px);aspect-ratio:16/9;margin:3.5rem auto 0;border-radius:32px;overflow:hidden;background:linear-gradient(135deg,#cdcec9,#b6b5b0);box-shadow:0 40px 80px -30px rgba(17,18,15,.35)}
.dark .shot{background:linear-gradient(135deg,#292927,#11120f);box-shadow:0 40px 80px -30px rgba(0,0,0,.7)}
.shot::before{content:attr(data-ph);position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:.85rem}
.shot img{position:relative;width:100%;height:100%;object-fit:cover;transform:scale(1.15);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.shot.in img{transform:scale(1)}
.shot:hover img{transform:scale(1.04)}
.pills{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}
.pill{padding:.55rem 1.15rem;border-radius:99px;background:rgba(17,18,15,.07);font-size:.92rem;transition:background .25s,color .25s,transform .25s}
.dark .pill{background:rgba(245,245,242,.1)}
.pill:hover{background:var(--text);color:var(--bg);transform:translateY(-3px)}
.more{display:inline-block;margin-top:1.5rem;font-size:1.05rem;position:relative}
.more::after{content:" ›";transition:margin .25s}.more:hover::after{margin-left:.35rem}

/* Vidéo */
.vid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.chips{position:absolute;top:1.1rem;left:1.1rem;right:1.1rem;display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;z-index:2}
.chip{font-size:.78rem;padding:.3rem .8rem;border-radius:99px;background:rgba(17,18,15,.55);color:#cdcec9;animation:chip 8s infinite;animation-delay:calc(var(--i)*2s)}
@keyframes chip{0%,22%{background:#f5f5f2;color:#11120f}28%,100%{background:rgba(17,18,15,.55);color:#cdcec9}}
.play{position:absolute;z-index:3;top:50%;left:50%;translate:-50% -50%;width:84px;height:84px;border-radius:50%;background:#f5f5f2;color:#11120f;border:0;cursor:pointer;display:grid;place-items:center;transition:transform .3s,opacity .3s}
.play:hover{transform:scale(1.12)}
.play svg{width:28px;height:28px;fill:currentColor;margin-left:3px}
.vid.playing .play,.vid.playing .chips{opacity:0;pointer-events:none}

/* Logos défilants */
.marquee{overflow:hidden;padding:2.6rem 0;background:#f5f5f2;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.track{display:flex;align-items:center;gap:4.5rem;width:max-content;animation:scroll 30s linear infinite;color:#70716c}
.marquee:hover .track{animation-play-state:paused}
@keyframes scroll{to{transform:translateX(-50%)}}
.lg{display:flex;align-items:center;flex:none;opacity:.8;transition:color .3s,opacity .3s,transform .3s}
.lg:hover{color:#11120f;opacity:1;transform:scale(1.12)}
.lg svg{width:auto;display:block}

/* Étapes */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:4rem;counter-reset:s;text-align:left}
.step{counter-increment:s;padding-top:1.2rem;border-top:1px solid var(--line);transition:border-color .3s}
.step:hover{border-color:var(--text)}
.step::before{content:counter(s);display:block;font-size:2.6rem;font-weight:600;letter-spacing:-.04em;color:var(--mid);margin-bottom:.8rem;transition:color .3s}
.step:hover::before{color:var(--text)}
.step p{color:var(--muted);font-size:.92rem;margin-top:.4rem}

/* Formulaire */
form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:min(100%,680px);margin:3rem auto 0;text-align:left;background:rgba(17,18,15,.04);border:1px solid var(--line);border-radius:28px;padding:2rem}
label{display:grid;gap:.4rem;font-size:.82rem;color:var(--muted)}
.full{grid-column:1/-1}
input,select,textarea{width:100%;background:#fff;border:1px solid var(--line);border-radius:14px;color:#11120f;padding:.8rem .9rem;font:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{border-color:#11120f;outline:none;box-shadow:0 0 0 4px rgba(17,18,15,.08)}
textarea{min-height:120px;resize:vertical}
.note{font-size:.78rem;color:var(--muted)}
.ok{display:none;color:#292927;font-size:.9rem}.ok.on{display:block}
.contact-row{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;margin-top:2rem;color:var(--muted)}

/* Pages légales */
.phead{padding:5rem 0 3rem}.bg{display:none}
.doc{max-width:760px}
.doc h1{font-size:clamp(2rem,5vw,3.2rem)}
.doc h2{font-size:1.25rem;letter-spacing:-.02em;margin:2.5rem 0 .75rem}
.doc p,.doc li{color:#292927;font-size:.96rem;margin-bottom:.6rem}
.doc ul{padding-left:1.2rem;margin-bottom:.6rem}
.upd{color:var(--muted);font-size:.85rem;margin-top:1rem}
.ph{background:rgba(17,18,15,.07);border:1px dashed var(--mid);border-radius:6px;padding:0 .35rem;font-size:.9em}

/* Footer */
footer{position:relative;overflow:hidden;background:#f5f5f2;border-top:1px solid var(--line);padding:3.5rem 0 2rem}
.foot{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:2rem}
.foot h4{font-size:.82rem;margin-bottom:.9rem}
.foot ul{list-style:none;display:grid;gap:.55rem;font-size:.86rem;color:var(--muted)}
.foot a:hover{color:#11120f}
.foot p{color:var(--muted);font-size:.88rem;max-width:32ch;margin-top:.75rem}
.legal{margin-top:3rem;font-size:.78rem;color:var(--muted);position:relative;z-index:1}
.giant{position:absolute;right:-10px;bottom:-20px;width:clamp(160px,22vw,300px);aspect-ratio:959/691;background:rgba(17,18,15,.06);-webkit-mask:url(assets/logo.png) center/contain no-repeat;mask:url(assets/logo.png) center/contain no-repeat;animation:floaty 6s ease-in-out infinite}
@keyframes floaty{50%{transform:translateY(-12px)}}

/* Apparition au scroll */
.rv{opacity:0;transform:translateY(36px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.rv.in{opacity:1;transform:none}
.shot.rv{transform:translateY(60px) scale(.96)}.shot.rv.in{transform:none}

@media (max-width:900px){.nav ul{display:none}.steps{grid-template-columns:1fr 1fr}.foot{grid-template-columns:1fr 1fr}.sec{min-height:auto}.shot{border-radius:22px;aspect-ratio:4/3}}
@media (max-width:560px){.steps{grid-template-columns:1fr}form{grid-template-columns:1fr;padding:1.4rem}.nav-act .btn-g{display:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}.loader{display:none}.shot img{transform:none}}
/* Réinitialise le style générique des formulaires (hérité de la maquette) : chaque formulaire se style via sa classe */
form{display:block;grid-template-columns:none;width:auto;max-width:none;margin:0;padding:0;background:none;border:0;border-radius:0;box-shadow:none;text-align:inherit}
/* ===== Boutique, blog, configurateur : composants ===== */
.skip{position:absolute;left:-999px;top:0;background:#11120f;color:#f5f5f2;padding:.6rem 1rem;z-index:200}.skip:focus{left:0}
.announce{background:#11120f;color:#cdcec9;text-align:center;font-size:.8rem;padding:.5rem 1rem}
.hide-s{display:inline-flex}
.menu{list-style:none}
.cart{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;transition:background .2s}.cart:hover{background:rgba(17,18,15,.07)}
.cart b{position:absolute;top:2px;right:0;min-width:18px;height:18px;border-radius:9px;background:#11120f;color:#f5f5f2;font-size:.7rem;display:grid;place-items:center;padding:0 4px}
.burger{display:none;width:40px;height:40px;border:0;background:none;cursor:pointer;position:relative}
.burger span{position:absolute;left:10px;right:10px;height:2px;background:#11120f;transition:transform .3s,top .3s}.burger span:first-child{top:15px}.burger span:last-child{top:23px}
.burger[aria-expanded=true] span:first-child{top:19px;transform:rotate(45deg)}.burger[aria-expanded=true] span:last-child{top:19px;transform:rotate(-45deg)}
.mmenu{display:none}
.alert{margin:1rem 0;padding:.9rem 1.1rem;border-radius:14px;font-size:.95rem;background:rgba(17,18,15,.06);border:1px solid var(--line)}.alert.err{background:#f3dcd8;border-color:#d9a79f;color:#5b1f17}.alert.ok{background:#e1ebdc;border-color:#aec3a4;color:#223a1a}.alert ul{padding-left:1.1rem}
.crumbs{font-size:.82rem;color:var(--muted);padding:1rem 0 0}.crumbs a:hover{color:#11120f}
.page{padding:2.5rem 0 5rem}.page h1{font-size:clamp(2rem,5vw,3.4rem);margin-bottom:.8rem}.page h2{font-size:clamp(1.4rem,3vw,2rem);margin:2.5rem 0 1rem}
.page .lead{margin-left:0;margin-right:0;max-width:60ch}
.narrow{max-width:780px;margin-inline:auto}.page.narrow,.wrap.narrow{width:min(100% - 2.5rem,780px)}.center{text-align:center}.center .lead,.center .acts{margin-inline:auto;justify-content:center}.left{text-align:left;justify-content:flex-start}.acts.left{justify-content:flex-start}
.empty{padding:2rem;border:1px dashed var(--mid);border-radius:20px;color:var(--muted)}
/* Accueil */
.trust{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.6rem;margin-top:2rem;font-size:.9rem;color:var(--muted)}.trust li::before{content:"✓ ";color:#11120f}
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:3rem;text-align:left}
.dev,.post{display:flex;flex-direction:column;gap:.7rem;padding:1.6rem;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.55);transition:transform .3s,border-color .3s,box-shadow .3s}
.dev:hover,.post:hover{transform:translateY(-6px);border-color:#11120f;box-shadow:0 24px 50px -28px rgba(17,18,15,.4)}
.dev .sub,.post p{color:var(--muted);font-size:.92rem}.dev ul{list-style:none;display:grid;gap:.5rem;margin:.6rem 0}.dev li{display:flex;justify-content:space-between;gap:1rem;font-size:.93rem;border-bottom:1px solid var(--line);padding-bottom:.5rem}.dev li b{white-space:nowrap;font-weight:600}
.tag{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.post img{border-radius:14px;aspect-ratio:16/9;object-fit:cover;width:100%}.post.wide{grid-column:span 2}
.dark .dev{background:rgba(245,245,242,.06)}
.sec .narrow{max-width:780px}
/* Produits */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.2rem;margin-top:2rem;text-align:left}
.pcard{display:flex;flex-direction:column;background:rgba(255,255,255,.6);border:1px solid var(--line);border-radius:24px;overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s}
.pcard:hover{transform:translateY(-6px);border-color:#11120f;box-shadow:0 26px 50px -28px rgba(17,18,15,.45)}
.pimg{position:relative;display:grid;place-items:center;aspect-ratio:4/3;background:linear-gradient(135deg,#cdcec9,#b6b5b0);overflow:hidden}.pimg img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.pcard:hover .pimg img{transform:scale(1.07)}
.ph-i{font-weight:700;font-size:1.6rem;letter-spacing:.1em;color:#70716c}.ph-i.big{font-size:3rem}
.sale{position:absolute;top:.7rem;left:.7rem;background:#11120f;color:#f5f5f2;font-style:normal;font-size:.72rem;padding:.2rem .6rem;border-radius:99px}
.pbody{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.1rem 1.2rem;flex:1}.pbody h3{font-size:1rem;line-height:1.25}.pbody form{margin-top:auto;padding-top:.6rem}
.brand{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;min-height:1em}
.price{font-weight:600;font-size:1.15rem}.price s{font-weight:400;font-size:.9rem;color:var(--muted)}.price.big{font-size:2rem;margin:.6rem 0}
.dly{font-size:.8rem;color:var(--muted);display:flex;gap:.45rem;align-items:center}.dly::before{content:"";width:8px;height:8px;border-radius:50%;background:#b6b5b0;flex:none}.dly.ok::before{background:#4a8a3a}.dly.wait::before{background:#c28a1d}
.shop-layout{display:grid;grid-template-columns:240px 1fr;gap:2.5rem;margin-top:2rem}
.filters{display:grid;gap:1rem;align-content:start;position:sticky;top:90px;font-size:.92rem}.filters h2{font-size:.85rem;margin:0;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.filters ul{list-style:none;display:grid;gap:.3rem}.filters a{display:block;padding:.4rem .7rem;border-radius:10px}.filters a:hover,.filters a.on{background:#11120f;color:#f5f5f2}
.search{display:flex;gap:.4rem}.count{color:var(--muted);font-size:.9rem}
.pager{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:2rem}.pager a{min-width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px}.pager a.on,.pager a:hover{background:#11120f;color:#f5f5f2}
.prod{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:start}
.pgal{border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#cdcec9,#b6b5b0);aspect-ratio:4/3;display:grid;place-items:center}.pgal img{width:100%;height:100%;object-fit:cover}
.pinfo h1{font-size:clamp(1.8rem,4vw,2.6rem)}.short{color:var(--muted);margin-top:.6rem}
.dbox{display:grid;gap:.2rem;padding:1rem 1.2rem;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.6);margin:1rem 0}.dbox.ok{border-color:#9bc08e}.dbox.wait{border-color:#e0bb6c}.dbox small{color:var(--muted)}
.buy{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.qty{width:90px}
.bul{list-style:none;display:grid;gap:.5rem;margin:1.2rem 0;color:#292927;font-size:.93rem}.bul li::before{content:"✓ ";font-weight:700}.cols2{grid-template-columns:repeat(2,1fr)}
.tbl{width:100%;border-collapse:collapse;font-size:.92rem}.tbl td,.tbl th{text-align:left;padding:.65rem .5rem;border-bottom:1px solid var(--line)}.tbl th{color:var(--muted);font-weight:500;width:40%}
.rel{margin-top:4rem}
/* Panier, commande */
.cart-layout{display:grid;grid-template-columns:1fr 340px;gap:2.5rem;align-items:start;margin-top:1.5rem}
.cline{display:grid;grid-template-columns:1fr auto auto auto;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line)}.cname{display:grid;gap:.2rem}.cname a{font-weight:600}
.qf input{width:72px}.x{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:none;cursor:pointer;font-size:1.2rem}.x:hover{background:#11120f;color:#f5f5f2}
.grp{font-size:1rem!important;margin:1.6rem 0 0!important;color:var(--muted)}
.sumbox{position:sticky;top:90px;padding:1.5rem;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.6);display:grid;gap:.7rem}.sumbox.left{position:static;margin:2rem 0}.sumbox h2{margin:0!important;font-size:1.2rem!important}
.row{display:flex;justify-content:space-between;gap:1rem}.row.small{font-size:.88rem;color:var(--muted)}.row.tot{font-size:1.25rem;border-top:1px solid var(--line);padding-top:.7rem}.full{width:100%}
fieldset{border:0;display:grid;gap:.8rem;margin-bottom:1.6rem}legend{font-weight:600;font-size:1.1rem;margin-bottom:.8rem}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.g2 .full{grid-column:1/-1}
.opt{display:flex;gap:.8rem;align-items:flex-start;padding:1rem;border:1px solid var(--line);border-radius:16px;cursor:pointer;color:#11120f;font-size:1rem;transition:border-color .2s,background .2s}
.opt:has(input:checked){border-color:#11120f;background:rgba(17,18,15,.04)}.opt input{width:auto;margin-top:.3rem}.opt span{display:grid;gap:.2rem}.opt em{font-style:normal;color:var(--muted);margin-left:.4rem}.opt small{color:var(--muted);font-size:.84rem}.opt.off{opacity:.45;pointer-events:none}
.check{display:flex;gap:.6rem;align-items:flex-start;font-size:.9rem;color:#292927}.check input{width:auto;margin-top:.25rem}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.inline{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}.inline label{flex:1;min-width:200px}
.card-form{display:grid;gap:1.2rem;margin-top:2rem}
.flow{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:.5rem 0}.flow li{padding:.35rem .8rem;border-radius:99px;background:rgba(17,18,15,.07);font-size:.8rem;color:var(--muted)}.flow li.done{background:#11120f;color:#f5f5f2}
/* Réparation */
.rblock{display:grid;grid-template-columns:1fr 1.2fr;gap:2.5rem;padding:2rem 0;border-top:1px solid var(--line);align-items:start}.rblock h2{margin-top:0!important}
.svc{display:grid;gap:.8rem;margin:1rem 0}.svc-i{display:flex;justify-content:space-between;gap:1.5rem;align-items:center;padding:1.2rem 1.4rem;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.55);transition:border-color .3s,transform .3s}.svc-i:hover{border-color:#11120f;transform:translateX(4px)}.svc-i p{color:var(--muted);font-size:.9rem}.svc-p{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;justify-content:flex-end;font-size:.9rem}.svc-p span{color:var(--muted)}
.pills.left{justify-content:flex-start}.pill.on{background:#11120f;color:#f5f5f2}
/* Blog */
.prose{font-size:1.05rem;line-height:1.75;color:#292927}.prose h2{margin:2.2rem 0 .8rem;font-size:1.6rem}.prose h3{margin:1.6rem 0 .5rem}.prose p,.prose ul,.prose ol{margin-bottom:1.1rem}.prose ul,.prose ol{padding-left:1.4rem}.prose a{text-decoration:underline}.prose blockquote{border-left:3px solid #11120f;padding:.4rem 1.2rem;background:rgba(17,18,15,.05);border-radius:0 14px 14px 0;margin:1.4rem 0}.prose img{border-radius:18px;margin:1.4rem 0}.prose table{border-collapse:collapse;width:100%}.prose td,.prose th{border:1px solid var(--line);padding:.5rem .7rem}.prose iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:18px}
.cover{border-radius:24px;margin:1.5rem 0;width:100%;aspect-ratio:16/9;object-fit:cover}
.faq{display:grid;gap:.8rem;margin-top:2rem;text-align:left}.faq details{border:1px solid var(--line);border-radius:18px;padding:1.1rem 1.3rem;background:rgba(255,255,255,.55)}.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:1rem}.faq summary::after{content:"+";transition:transform .3s}.faq details[open] summary::after{transform:rotate(45deg)}.faq .prose{margin-top:.8rem;font-size:.97rem}
/* Configurateur */
.cfg{display:grid;grid-template-columns:1fr 360px;gap:2rem;align-items:start;margin-top:2rem}
.step-c{border:1px solid var(--line);border-radius:22px;padding:1.2rem 1.4rem;margin-bottom:1rem;background:rgba(255,255,255,.55);transition:border-color .3s}.step-c.sel{border-color:#11120f}
.step-c h2{font-size:1.05rem!important;margin:0 0 .7rem!important;display:flex;justify-content:space-between;gap:1rem}.step-c h2 small{font-weight:400;color:var(--muted);font-size:.8rem}
.copts{display:grid;gap:.5rem}.copt{display:flex;gap:.8rem;align-items:flex-start;padding:.8rem 1rem;border:1px solid var(--line);border-radius:14px;cursor:pointer;font-size:.92rem;transition:border-color .2s,background .2s}.copt input{width:auto;margin-top:.3rem}.copt:has(input:checked){border-color:#11120f;background:rgba(17,18,15,.05)}
.copt.bad{opacity:.5;cursor:not-allowed}.copt .meta{display:grid;gap:.15rem;flex:1}.copt small{color:var(--muted);font-size:.8rem}.copt .why{color:#8a3a2e}.copt b{white-space:nowrap}
.cfg-sum .msg{font-size:.85rem;padding:.6rem .8rem;border-radius:12px;background:#f3dcd8;color:#5b1f17;margin:.2rem 0}.cfg-sum .msg.w{background:#f2e6c8;color:#5a4410}
#sum-list p{display:flex;justify-content:space-between;gap:.8rem;font-size:.88rem;margin:.2rem 0}
@media(max-width:1100px){.cols3{grid-template-columns:repeat(2,1fr)}.post.wide{grid-column:span 2}.cfg{grid-template-columns:1fr}.cfg-sum{position:static}}
@media(max-width:900px){
 .burger{display:block}.hide-s{display:none}
 .mmenu{display:none;position:absolute;left:0;right:0;top:100%;background:#f5f5f2;padding:1rem 1.25rem 1.5rem;border-bottom:1px solid var(--line);max-height:calc(100vh - 80px);overflow:auto}.mmenu.open{display:grid;gap:1rem}
 .mmenu ul{list-style:none;display:grid;gap:.2rem}.mmenu a:not(.btn){display:block;padding:.8rem .2rem;font-size:1.1rem;border-bottom:1px solid var(--line)}
 header::after{display:none}.shop-layout{grid-template-columns:1fr}.filters{position:static}.prod,.cart-layout,.rblock{grid-template-columns:1fr}.sumbox{position:static}
 .page{padding-bottom:3rem}
}
@media(max-width:700px){.cols3,.cols2{grid-template-columns:1fr}.post.wide{grid-column:auto}.g2{grid-template-columns:1fr}.cline{grid-template-columns:1fr auto;}.cline .qf,.cline b{justify-self:start}.svc-i{flex-direction:column;align-items:flex-start}.svc-p{justify-content:flex-start}.pgrid{grid-template-columns:repeat(2,1fr);gap:.8rem}.pbody{padding:.8rem}.buy .btn{flex:1}.inline{display:grid}.hero{padding-top:2.5rem}.trust{gap:.4rem 1rem;font-size:.82rem}}
@media(max-width:420px){.pgrid{grid-template-columns:1fr}h1{font-size:2.4rem}}

/* ===== Boutons : moins ronds, bien centrés ===== */
.btn{border-radius:12px;min-height:48px;padding:.8rem 1.5rem;text-align:center;line-height:1.2;gap:.5rem}
.btn-sm{min-height:40px;padding:.5rem 1.1rem;border-radius:10px}
.pbody form{width:100%}.btn.add,.btn.full{display:flex;width:100%;justify-content:center;align-items:center;text-align:center}
.nav-act .btn-sm{min-height:40px}
.pill,.chip2,.tagc,.pager a{border-radius:10px}
.pager a{border-radius:10px}.cart{border-radius:12px}.x{border-radius:10px}
/* ===== Coches et cases : style soigné ===== */
input[type=checkbox],input[type=radio]{-webkit-appearance:none;appearance:none;width:22px!important;height:22px!important;min-height:0!important;padding:0!important;flex:none;display:inline-grid;place-content:center;border:1.5px solid #70716c;background:#fff;cursor:pointer;margin:0;transition:background .2s,border-color .2s,box-shadow .2s}
input[type=checkbox]{border-radius:7px}input[type=radio]{border-radius:50%}
input[type=checkbox]::after,input[type=radio]::after{content:"";width:14px;height:14px;transform:scale(0);transition:transform .22s cubic-bezier(.3,1.7,.5,1)}
input[type=checkbox]::after{background:#f5f5f2;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center/contain no-repeat}
input[type=radio]::after{width:10px;height:10px;border-radius:50%;background:#f5f5f2}
input[type=checkbox]:checked,input[type=radio]:checked{background:#11120f;border-color:#11120f}
input[type=checkbox]:checked::after,input[type=radio]:checked::after{transform:scale(1)}
input[type=checkbox]:hover,input[type=radio]:hover{border-color:#11120f}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid #11120f;outline-offset:3px}
.check,.chk,.opt,.copt{align-items:center}
/* Listes à coches : pastille arrondie avec coche dessinée */
.bul li,.trust li{position:relative;padding-left:2rem}.trust li{padding-left:1.9rem}
.bul li::before,.trust li::before{content:"";position:absolute;left:0;top:.12em;width:1.35rem;height:1.35rem;border-radius:8px;color:inherit;font-weight:400;background:#11120f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5f5f2' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center/72% no-repeat;box-shadow:0 4px 10px -4px rgba(17,18,15,.5);transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.bul li:hover::before,.trust li:hover::before{transform:scale(1.15) rotate(-6deg)}
.dark .bul li::before,.dark .trust li::before{background-color:#f5f5f2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2311120f' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E")}
.trust{gap:.6rem 1.8rem}.trust li{font-size:.92rem;color:#292927}.dark .trust li{color:#cdcec9}
/* ===== Champs de texte plus grands (tout le site) ===== */
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select,textarea{min-height:56px;padding:1rem 1.15rem;font-size:1.05rem;border:1.5px solid #b6b5b0;border-radius:14px;background:#fff;color:#11120f;transition:border-color .2s,box-shadow .2s}
input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:#11120f;box-shadow:0 0 0 4px rgba(17,18,15,.1);outline:none}
select{padding-right:2.6rem;-webkit-appearance:none;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2311120f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 1rem center/18px no-repeat}
textarea{min-height:180px;line-height:1.5}
label{font-size:.95rem;font-weight:500;color:#292927;gap:.55rem}
.opt,.copt,.check{font-weight:400}
::placeholder{color:#70716c;opacity:1}
.bigsearch{display:flex;gap:.7rem;margin:1.8rem 0 1rem}.bigsearch input{flex:1;min-width:0;min-height:64px;font-size:1.15rem;padding:1.1rem 1.4rem}.bigsearch .btn{min-height:64px;padding:0 2rem;flex:none}
.card-form{gap:1.6rem;padding:2rem;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.55)}.card-form .g2{gap:1.3rem}
.page.narrow.wide{width:min(100% - 2.5rem,920px)}.wide .card-form fieldset{border:0;padding:0}
.wide legend{font-size:1.15rem;margin-bottom:1rem}
.optrow{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.optrow .opt{padding:1.1rem}
.estimate{padding:1.1rem 1.3rem;border-radius:16px;background:#e1ebdc;border:1px solid #aec3a4;color:#223a1a}.estimate.none{background:rgba(17,18,15,.05);border-color:var(--line);color:#292927}.estimate strong{font-size:1.4rem;display:block}
/* ===== Boutique : cases 1:1, marques, arbre de catégories, tags ===== */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:2rem}
.tile11{position:relative;display:block;aspect-ratio:1/1;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#cdcec9,#70716c);isolation:isolate}
.hubh{margin:4rem 0 1.4rem!important}
.brandgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem}
.brandc{display:grid;justify-items:center;align-content:center;gap:.9rem;padding:1.6rem 1rem;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.6);text-align:center;transition:transform .3s,border-color .3s,box-shadow .3s}
.brandc img{height:52px;width:auto;max-width:80%;object-fit:contain}.brandc strong{font-size:1rem;letter-spacing:-.01em}
.brandc:hover{transform:translateY(-6px);border-color:#11120f;box-shadow:0 22px 40px -26px rgba(17,18,15,.5)}
.ctree{list-style:none;display:grid;gap:.15rem}.ctree .ctree{padding-left:1rem;margin-left:.5rem;border-left:1px solid var(--line)}
.crow{display:flex;align-items:center;justify-content:space-between;gap:.3rem;border-radius:10px}.crow a{flex:1;padding:.5rem .7rem;border-radius:10px}.crow:hover{background:rgba(17,18,15,.06)}
.ctree li.current>.crow{background:#11120f}.ctree li.current>.crow a{color:#f5f5f2}
.tog{width:34px;height:34px;border:0;background:none;cursor:pointer;border-radius:8px;position:relative;flex:none}
.tog::before{content:"";position:absolute;left:11px;top:12px;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .3s}
li.open>.crow .tog::before{transform:rotate(45deg);top:10px}.ctree li.current>.crow .tog{color:#f5f5f2}
.sub{display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s ease}.sub>ul{overflow:hidden;min-height:0}li.open>.sub{grid-template-rows:1fr}
.subchips,.tagbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.5rem 0 1rem}.tagbar span{color:var(--muted);font-size:.9rem}
.chip2{padding:.55rem 1.1rem;border:1.5px solid #11120f;font-size:.92rem;transition:background .2s,color .2s}.chip2:hover{background:#11120f;color:#f5f5f2}
.tagc{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .8rem;background:rgba(17,18,15,.07);font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;transition:background .2s,color .2s}.tagc small{opacity:.6;font-weight:500}
.tagc:hover,.tagc.on{background:#11120f;color:#f5f5f2}.tagc.sm{padding:.2rem .55rem;font-size:.7rem}
.tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:.2rem 0}
.activef{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.88rem;color:var(--muted);margin:.4rem 0}.activef a{padding:.25rem .7rem;border-radius:8px;background:rgba(17,18,15,.07)}.activef a:hover{background:#11120f;color:#f5f5f2}
.fform{display:grid;gap:1rem;margin-top:1rem}
/* Blog : images dans le texte */
.prose .fig{margin:1.8rem 0;text-align:center}.prose .fig img{margin:0 auto;border-radius:16px;box-shadow:0 18px 40px -24px rgba(17,18,15,.5);border:1px solid var(--line)}.prose .fig figcaption{margin-top:.6rem;font-size:.88rem;color:var(--muted)}
.prose img.inl{display:inline-block;height:1.7em;width:auto;vertical-align:-.45em;margin:0 .2em;border-radius:8px;border:1px solid var(--line);box-shadow:0 2px 6px -2px rgba(17,18,15,.35)}
.prose ol>li{margin-bottom:.8rem}
@media(max-width:1000px){.brandgrid{grid-template-columns:repeat(3,1fr)}.optrow{grid-template-columns:1fr}}
@media(max-width:700px){.tiles{grid-template-columns:repeat(2,1fr);gap:.7rem}.tile11{border-radius:16px}.tile11 .tl{padding:.9rem}.brandgrid{grid-template-columns:repeat(2,1fr);gap:.7rem}.bigsearch{flex-direction:column}.bigsearch .btn{width:100%}.card-form{padding:1.2rem}}

/* ===== Cases de la boutique : grille adaptative, image seule (sans fondu ni titre) ===== */
.tiles{display:grid;gap:1.1rem;margin-top:2rem}
.tile11{background:#cdcec9;border-radius:22px}
.tile11::before{content:attr(data-title);position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:1rem;font-weight:600;color:#70716c}
.tile11::after{display:none}
.tile11 img{filter:none;z-index:1}.tile11:hover img{filter:none;transform:scale(1.05)}
.tile11{transition:transform .4s,box-shadow .4s}.tile11:hover{transform:translateY(-6px);box-shadow:0 28px 50px -26px rgba(17,18,15,.55)}
.tiles.n1{grid-template-columns:minmax(0,640px);justify-content:center}
.tiles.n2,.tiles.n4{grid-template-columns:repeat(2,1fr)}
.tiles.n3,.tiles.n6{grid-template-columns:repeat(3,1fr)}
.tiles.many{grid-template-columns:repeat(4,1fr)}
.tiles.n5{grid-template-columns:repeat(4,1fr)}
.tiles.n5 .tile11:first-child{grid-column:3/5;grid-row:1/3;aspect-ratio:auto}
.tiles.n5.bigleft .tile11:first-child{grid-column:1/3}
@media(max-width:1000px){.tiles.many{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){
 .tiles{gap:.7rem}.tile11{border-radius:16px}
 .tiles.n1,.tiles.n2{grid-template-columns:1fr}
 .tiles.n3,.tiles.n4,.tiles.n6,.tiles.many,.tiles.n5{grid-template-columns:repeat(2,1fr)}
 .tiles.n3 .tile11:first-child{grid-column:1/-1}
 .tiles.n5 .tile11:first-child,.tiles.n5.bigleft .tile11:first-child{grid-column:1/-1;grid-row:auto;aspect-ratio:1/1}
}
/* ===== Galerie produit ===== */
.gwrap{display:grid;gap:.8rem}.pgal{position:relative}.gzoom{display:block;width:100%;height:100%;border:0;padding:0;background:none;cursor:zoom-in}
.pgal img{transition:opacity .25s}.pgal img.swap{opacity:0}
.gthumbs{display:flex;gap:.6rem;overflow-x:auto;padding-bottom:.3rem;scrollbar-width:thin}
.gth{flex:none;width:84px;height:64px;border-radius:12px;overflow:hidden;border:2px solid transparent;padding:0;background:#cdcec9;cursor:pointer;opacity:.7;transition:opacity .2s,border-color .2s,transform .2s}
.gth img{width:100%;height:100%;object-fit:cover}.gth:hover{opacity:1;transform:translateY(-2px)}.gth.on{opacity:1;border-color:#11120f}
.pimg .img2{position:absolute;inset:0;opacity:0;transition:opacity .45s}.pcard:hover .pimg .img2{opacity:1}
.lbx{position:fixed;inset:0;z-index:300;background:rgba(17,18,15,.92);display:grid;place-items:center;padding:2rem;cursor:zoom-out;animation:lbin .25s}
.lbx img{max-width:100%;max-height:100%;border-radius:14px}@keyframes lbin{from{opacity:0}}
/* ===== Suivi de commande animé ===== */
.tkpage .inline{margin-top:1.4rem}
.tk-wrap{margin-top:2.2rem;display:grid;gap:1.6rem}
.tk-head{display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;align-items:end}
.tk-num{font-size:.85rem;color:var(--muted);letter-spacing:.04em}.tk-head h2{margin:.3rem 0 0!important;font-size:clamp(1.8rem,4vw,2.6rem)!important}
.tk-eta{display:grid;gap:.15rem;text-align:right;padding:1rem 1.3rem;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.6)}.tk-eta>span:first-child{font-size:.82rem;color:var(--muted)}.tk-eta b{font-size:1.35rem;letter-spacing:-.02em}.tk-eta small{color:var(--muted);font-size:.82rem}
.tk{position:relative;list-style:none;display:grid;grid-template-columns:repeat(var(--n),1fr);padding:1.6rem .5rem 1.2rem;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.55)}
.tk-line{position:absolute;top:calc(1.6rem + 31px);left:calc(50% / var(--n));right:calc(50% / var(--n));height:4px;border-radius:4px;background:rgba(17,18,15,.1);overflow:hidden}
.tk-line i{display:block;height:100%;width:var(--p);border-radius:4px;background:linear-gradient(90deg,#11120f,#70716c,#11120f);background-size:200% 100%;animation:tkfill 1.6s cubic-bezier(.2,.7,.2,1) .3s both,tkflow 2.4s linear 1.9s infinite}
@keyframes tkfill{from{width:0}}@keyframes tkflow{to{background-position:-200% 0}}
.tk-s{position:relative;display:grid;justify-items:center;gap:.8rem;text-align:center;padding:0 .3rem}
.dot{position:relative;display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:#e8e8e4;color:#70716c;border:2px solid rgba(17,18,15,.12);z-index:1;animation:tkpop .6s cubic-bezier(.3,1.6,.5,1) calc(.15s + var(--k)*.2s) both}
.dot svg{width:28px;height:28px}
@keyframes tkpop{from{transform:scale(0);opacity:0}}
.tk-s.done .dot{background:#11120f;color:#f5f5f2;border-color:#11120f}
.tk-s.now .dot{background:#f5f5f2;color:#11120f;border-color:#11120f;box-shadow:0 0 0 6px rgba(17,18,15,.1)}
.tk-s.now .dot::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid #11120f;animation:tkring 1.8s ease-out infinite}
@keyframes tkring{from{transform:scale(.85);opacity:.7}to{transform:scale(1.5);opacity:0}}
.dot .ok{position:absolute;right:-4px;bottom:-4px;width:24px;height:24px;border-radius:50%;background:#f5f5f2;color:#11120f;display:grid;place-items:center;border:2px solid #11120f;animation:tkpop .5s cubic-bezier(.3,1.7,.5,1) calc(.5s + var(--k)*.2s) both}.dot .ok svg{width:13px;height:13px}
.st-expediee .s-expediee.now svg{animation:tkdrive 1.4s ease-in-out infinite}.st-preparation .s-preparation.now svg{animation:tkwig 1.2s ease-in-out infinite;transform-origin:50% 60%}.st-attente_paiement .s-attente_paiement.now svg,.st-paiement_recu .s-paiement_recu.now svg{animation:tkbeat 1.6s ease-in-out infinite}.st-pret .s-pret.now svg{animation:tkbob 1.4s ease-in-out infinite}
@keyframes tkdrive{0%,100%{transform:translateX(-3px)}50%{transform:translateX(3px)}}@keyframes tkwig{0%,100%{transform:rotate(-14deg)}50%{transform:rotate(14deg)}}@keyframes tkbeat{50%{transform:scale(1.14)}}@keyframes tkbob{50%{transform:translateY(-3px)}}
.tk-t{display:grid;gap:.15rem}.tk-t strong{font-size:.95rem;line-height:1.2}.tk-t small{color:var(--muted);font-size:.8rem}.tk-s.todo .tk-t strong{color:var(--muted);font-weight:500}.tk-s.now .tk-t strong{font-size:1rem}
.tk.cancelled .dot{filter:grayscale(1);opacity:.5}
.tk-now{display:flex;gap:1.1rem;align-items:flex-start;padding:1.3rem 1.5rem;border-radius:20px;background:#11120f;color:#f5f5f2;animation:tkup .7s ease .9s both}
@keyframes tkup{from{opacity:0;transform:translateY(14px)}}
.tk-now p{color:#cdcec9;margin-top:.3rem}.tk-next{font-size:.88rem;color:#b6b5b0!important}
.tk-pulse{flex:none;width:14px;height:14px;margin-top:.35rem;border-radius:50%;background:#f5f5f2;box-shadow:0 0 0 0 rgba(245,245,242,.6);animation:tkpulse 1.8s infinite}@keyframes tkpulse{70%{box-shadow:0 0 0 14px rgba(245,245,242,0)}100%{box-shadow:0 0 0 0 rgba(245,245,242,0)}}
.tk-pay,.tk-sum{padding:1.3rem 1.5rem;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.6);animation:tkup .7s ease 1.1s both}
.tk-pay h3,.tk-sum h3{margin-bottom:.8rem}.cp{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap;padding:.55rem 0;border-bottom:1px solid var(--line)}.cp span{width:90px;color:var(--muted);font-size:.88rem}.cp strong{flex:1;word-break:break-all}
.cpy{border:1.5px solid #11120f;background:none;border-radius:10px;padding:.35rem .8rem;font:inherit;font-size:.82rem;cursor:pointer;transition:background .2s,color .2s}.cpy:hover,.cpy.done{background:#11120f;color:#f5f5f2}
.tk-sum ul{list-style:none;display:grid;gap:.5rem}.tk-sum li{display:flex;justify-content:space-between;gap:1rem}.tk-sum li.tot{border-top:1px solid var(--line);padding-top:.7rem;font-size:1.1rem}
@media(max-width:700px){
 .tk{grid-template-columns:1fr;gap:1.4rem;padding:1.4rem 1.2rem 1.4rem 1.4rem}
 .tk-line{top:2rem;bottom:2rem;left:calc(1.4rem + 30px);right:auto;width:4px;height:auto}.tk-line i{width:100%;height:var(--p);animation-name:tkfillv,tkflow}@keyframes tkfillv{from{height:0}}
 .tk-s{grid-template-columns:62px 1fr;justify-items:start;align-items:center;gap:1rem;text-align:left}.tk-eta{text-align:left;width:100%}
}

/* ===== Rachat : recherche, cartes, étapes ===== */
.rsearch input{width:100%;min-height:68px!important;font-size:1.2rem!important;padding:1.1rem 1.5rem!important;border-radius:18px!important;margin-top:1.6rem}
.rbrands{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0 .5rem}.rbrands .chip2{background:none;font:inherit;font-size:.92rem;cursor:pointer;color:inherit}.rbrands .chip2 small{opacity:.55;margin-left:.2rem}.rbrands .chip2.on{background:#11120f;color:#f5f5f2}
.rgroup{margin-top:2.2rem}.rgroup h2{margin:0 0 1rem!important;font-size:1.3rem!important}
.rgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem}
.mcard{display:grid;gap:.4rem;padding:1rem;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.6);transition:transform .3s,border-color .3s,box-shadow .3s}
.mcard:hover{transform:translateY(-6px);border-color:#11120f;box-shadow:0 24px 44px -26px rgba(17,18,15,.5)}
.mcard[hidden],.rgroup[hidden]{display:none}
.mimg{position:relative;display:grid;place-items:center;aspect-ratio:4/3;border-radius:14px;background:linear-gradient(135deg,#cdcec9,#b6b5b0);overflow:hidden;margin-bottom:.4rem}
.mimg img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover}.mimg.logo img{width:46%;height:60%;object-fit:contain;transition:transform .4s}.mcard:hover .mimg.logo img{transform:scale(1.12)}
.mimg b{position:absolute;color:#70716c;font-size:1.6rem;letter-spacing:.08em}.mimg img+b{z-index:0}
.mcard strong{font-size:1rem;line-height:1.25}.mcard small{color:var(--muted);font-size:.85rem}
.rother{display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:3rem;padding:1.4rem 1.6rem;border:1px dashed var(--mid);border-radius:20px}
.back{display:inline-block;margin-bottom:1rem;color:var(--muted);transition:color .2s,transform .2s}.back:hover{color:#11120f;transform:translateX(-4px)}
.rhead{display:flex;gap:1.5rem;align-items:center;margin-bottom:1rem}.rhead .mimg{width:130px;flex:none;margin:0}.rhead h1{margin:0!important}
.rpage{max-width:960px}.rform{display:grid;gap:1.4rem;margin-top:1.5rem;counter-reset:st}
.rstep{counter-increment:st;display:grid;gap:1.1rem;padding:1.7rem;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.55)}
.rstep>h2{margin:0!important;font-size:1.3rem!important;display:flex;align-items:center;gap:.8rem}
.rstep>h2::before{content:counter(st);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#11120f;color:#f5f5f2;font-size:.9rem;flex:none}
.js .rstep.locked{display:none}.rstep.in{animation:rin .55s cubic-bezier(.2,.7,.2,1)}@keyframes rin{from{opacity:0;transform:translateY(22px)}}
.ocards{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}.ccards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.9rem}
.ocard,.ccard{position:relative;cursor:pointer}.ocard input,.ccard input{position:absolute;opacity:0;pointer-events:none;width:1px!important;height:1px!important}
.oc,.cc{display:grid;gap:.4rem;align-content:start;height:100%;padding:1.2rem;border:1.5px solid var(--line);border-radius:18px;background:#fff;text-align:left;transition:transform .25s,border-color .25s,box-shadow .25s,background .25s}
.oc svg{width:34px;height:34px;margin-bottom:.3rem}.oc small,.cc small{color:var(--muted);font-size:.84rem;line-height:1.35}
.ocard:hover .oc,.ccard:hover .cc{transform:translateY(-4px);border-color:#70716c}
.ocard input:checked+.oc,.ccard input:checked+.cc{border-color:#11120f;background:#11120f;color:#f5f5f2;box-shadow:0 18px 34px -20px rgba(17,18,15,.7);transform:translateY(-3px)}
.ocard input:checked+.oc small,.ccard input:checked+.cc small{color:#cdcec9}
.ocard input:focus-visible+.oc,.ccard input:focus-visible+.cc{outline:2px solid #11120f;outline-offset:3px}
.qd{display:flex;gap:4px;margin-bottom:.4rem}.qd i{width:9px;height:9px;border-radius:50%;background:rgba(17,18,15,.18);transition:background .3s}.qd i.on{background:#11120f}.ccard input:checked+.cc .qd i{background:rgba(245,245,242,.3)}.ccard input:checked+.cc .qd i.on{background:#f5f5f2}
.roffer{display:grid;gap:.3rem;padding:1.5rem 1.7rem;border-radius:20px;background:#e1ebdc;border:1px solid #aec3a4;color:#223a1a;animation:rin .5s}.roffer[hidden]{display:none}
.roffer strong{font-size:clamp(2.2rem,6vw,3.4rem);letter-spacing:-.04em;line-height:1}.roffer small{color:#3b5a30}.roffer.none{background:rgba(17,18,15,.05);border-color:var(--line);color:#292927}.roffer.none small{color:var(--muted)}
.etat{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:600;padding:.2rem .6rem;border-radius:8px;background:rgba(17,18,15,.07);width:fit-content}.etat::before{content:"";width:7px;height:7px;border-radius:50%;background:#70716c}
.etat.e-neuf::before,.etat.e-recond::before{background:#11120f}.etat.e-tres_bon::before{background:#3f8a3a}.etat.e-bon::before{background:#8aa63a}.etat.e-correct::before{background:#c28a1d}
.etatbox{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:.6rem 0;color:var(--muted);font-size:.9rem}
@media(max-width:700px){.ocards{grid-template-columns:1fr}.rhead{flex-direction:column;align-items:flex-start}.rhead .mimg{width:100px}.rstep{padding:1.2rem}.rgrid{grid-template-columns:repeat(2,1fr);gap:.7rem}.mcard{padding:.7rem}}

/* Cases : image pure, aucun voile sombre */
.tile11 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;filter:none;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.tile11:hover img{transform:scale(1.05)}
/* Hero : bouton dans le cadre de l'image (bas à droite) + vidéo */
.shotbtn{position:absolute;right:1.2rem;bottom:1.2rem;z-index:3;display:inline-flex;align-items:center;gap:.6rem;padding:.95rem 1.5rem;border-radius:12px;background:#f5f5f2;color:#11120f;font-weight:600;font-size:.98rem;box-shadow:0 14px 34px -12px rgba(17,18,15,.55);transition:transform .3s,box-shadow .3s,background .3s}
.shotbtn svg{transition:transform .3s}.shotbtn:hover{transform:translateY(-3px);box-shadow:0 20px 40px -14px rgba(17,18,15,.6)}.shotbtn:hover svg{transform:translateX(4px)}
.vidshot video,.vidshot iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0;z-index:1;background:#000}
@media(max-width:700px){.shotbtn{right:.7rem;bottom:.7rem;padding:.75rem 1.1rem;font-size:.9rem}}

[hidden]{display:none!important}

/* ===== Codes promo, newsletter, suivi prérempli ===== */
.pin{display:flex;gap:.5rem;align-items:stretch}.pin input{flex:1;min-width:0}.pin .btn{flex:none}
.promof,.promobox{display:grid;gap:.4rem;padding:.9rem 0;border-top:1px solid var(--line)}.promobox{display:flex;justify-content:space-between;align-items:center;gap:.8rem;flex-wrap:wrap}.promobox label{width:100%}
.row.promo{color:#2f6b2a}.row.promo b{color:#2f6b2a}
.lnkbtn{border:0;background:none;font:inherit;font-size:.88rem;color:var(--muted);text-decoration:underline;cursor:pointer;padding:0;text-align:left}.lnkbtn:hover{color:#11120f}
.nlform{display:grid;grid-template-columns:1fr minmax(260px,420px);gap:1.2rem;align-items:center;margin-top:2.2rem;padding:1.3rem 1.5rem;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.55)}
.nlform label{display:grid;gap:.15rem;font-weight:400}.nlform label span{color:var(--muted);font-size:.88rem}
@media(max-width:700px){.nlform{grid-template-columns:1fr}.pin{flex-direction:column}}
.btn.go{animation:gopulse 1.8s ease-in-out infinite}@keyframes gopulse{0%,100%{box-shadow:0 0 0 0 rgba(17,18,15,.45)}60%{box-shadow:0 0 0 14px rgba(17,18,15,0)}}
