:root{
  --ink:#0B1420;--ink-2:#132135;--gold:#C9A24A;--gold-2:#E4C57A;--water:#1E7FB8;--aqua:#38B6D1;
  --bg:#F4F7F9;--surface:#FFFFFF;--mist:#E6EDF2;--text:#13202E;--muted:#5B6B7B;--line:#D7E0E7;
  --hero-txt:#FFFFFF;--shadow:0 12px 40px rgba(11,20,32,.10);
  --font-d:"Sora",ui-sans-serif,system-ui,"Segoe UI",Roboto,sans-serif;--font-b:"Manrope",ui-sans-serif,system-ui,"Segoe UI",Roboto,sans-serif;
}
.dps-home *{box-sizing:border-box}
.dps-home{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
.dps-home{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-b);font-size:16px;line-height:1.6;overflow-x:hidden}
.dps-home img{max-width:100%;display:block}
.dps-home a{color:inherit}
.dps-home h1,.dps-home h2,.dps-home h3{font-family:var(--font-d);line-height:1.15;margin:0;text-wrap:balance;letter-spacing:-.01em}
.dps-home h2{font-size:clamp(1.6rem,1.1rem + 2.2vw,2.5rem);font-weight:700}
.dps-home h3{font-size:1.1rem;font-weight:600}
.dps-home p{margin:0}
.wrap{width:min(1180px,100% - 2rem);margin-inline:auto}
.eyebrow{font-family:var(--font-d);font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--water)}
.sec{padding:clamp(3rem,6vw,5.5rem) 0}
.sec-head{max-width:680px;margin:0 auto 2.5rem;text-align:center;display:grid;gap:.8rem}
.sec-head p{color:var(--muted);font-size:1.05rem}
.btn{display:inline-flex;align-items:center;gap:.55rem;white-space:nowrap;padding:.9rem 1.4rem;border-radius:999px;font-family:var(--font-d);font-weight:600;font-size:.95rem;text-decoration:none;border:1.5px solid transparent;transition:transform .2s,box-shadow .2s,background .2s;cursor:pointer;min-height:48px}
.btn:hover{transform:translateY(-2px)}
.btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
.btn-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1A1406;box-shadow:0 8px 24px rgba(201,162,74,.35)}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.55);backdrop-filter:blur(6px)}
.btn-ink{background:var(--ink);color:#fff}
.btn svg{width:18px;height:18px;flex:none}
.btn-xl{font-size:1.1rem;padding:1.05rem 1.7rem;animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{box-shadow:0 8px 24px rgba(201,162,74,.35)}50%{box-shadow:0 8px 34px rgba(201,162,74,.7)}}

/* NAV */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:1rem;height:78px}
.nav .btn{padding:.6rem 1.1rem;min-height:42px;font-size:.9rem;box-shadow:none}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-family:var(--font-d)}
.brand img{height:56px;width:auto;object-fit:contain}
.brand b{display:none}
.brand small{display:none}
.menu{display:flex;gap:1.25rem;margin-left:auto;list-style:none;padding:0;margin-block:0}
.menu a{text-decoration:none;font-weight:600;font-size:.86rem;white-space:nowrap;color:var(--text);padding:.4rem 0;border-bottom:2px solid transparent}
.menu a:hover,.menu a[aria-current]{border-color:var(--gold)}
.menu li{position:relative}
.menu .sub{position:absolute;top:100%;left:-.6rem;min-width:230px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:.5rem;list-style:none;margin:0;display:none;z-index:60}
.menu .sub a{display:block;padding:.5rem .7rem;border:0;border-radius:8px;font-size:.86rem}
.menu .sub a:hover{background:var(--bg)}
.menu .has-sub:hover .sub,.menu .has-sub:focus-within .sub{display:block}
.nav-cta{display:flex;gap:.6rem;align-items:center}
.tel{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-d);font-weight:700;text-decoration:none;color:var(--text);font-size:.92rem;white-space:nowrap}
.tel svg{width:18px;height:18px;color:var(--gold)}
.burger{display:none;margin-left:auto;background:none;border:1.5px solid var(--line);border-radius:10px;width:44px;height:44px;color:var(--text)}
@media (max-width:1180px){.menu,.nav-cta .btn{display:none}.burger{display:grid;place-items:center}.nav-cta{margin-left:0}}
@media (max-width:1180px){.tel{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--gold-2),var(--gold));justify-content:center;margin-left:auto}.tel svg{color:#1A1406;width:20px;height:20px}.tel span{display:none}.burger{margin-left:0}}
.drawer{position:fixed;inset:78px 0 0;background:var(--surface);z-index:49;padding:1.5rem;display:none;flex-direction:column;gap:.2rem;overflow:auto}
.drawer[open]{display:flex}
.drawer a{padding:1rem .5rem;border-bottom:1px solid var(--line);text-decoration:none;font-family:var(--font-d);font-weight:600;font-size:1.05rem}
.drawer .btn{margin-top:1rem;justify-content:center}

/* HERO SLIDER (canvas) */
.hero{position:relative;min-height:min(86vh,760px);height:auto;display:grid;align-items:center;color:var(--hero-txt);background:var(--ink);overflow:hidden;isolation:isolate;touch-action:pan-y}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.hero-bg{position:absolute;inset:0;z-index:-2;display:block}.hero-bg img{width:100%;height:100%;object-fit:cover;display:block}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,20,32,.5) 0%,rgba(11,20,32,.3) 45%,rgba(11,20,32,.6) 100%)}
.hero .wrap{padding:clamp(4rem,10vh,6rem) 0 clamp(4.5rem,10vh,6rem);display:grid;gap:1.2rem;max-width:860px;text-align:center;justify-items:center}
.hero .eyebrow{color:var(--gold-2)}
.hero h1{font-size:clamp(2rem,1.2rem + 4.2vw,4rem);font-weight:800;color:#fff;text-shadow:0 4px 30px rgba(0,0,0,.35)}
.hero h1 em{font-style:normal;color:var(--gold-2)}
.hero .lede{font-size:clamp(1rem,.9rem + .5vw,1.2rem);max-width:600px;color:rgba(255,255,255,.9)}
.hero .lede b{color:#fff}
.hero .actions{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center;margin-top:.4rem}
.hero .proof{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;justify-content:center;font-size:.9rem;color:rgba(255,255,255,.88);margin-top:.6rem}
.hero .proof span{display:inline-flex;gap:.4rem;align-items:center}
.hero .proof svg{width:15px;height:15px;color:var(--gold-2)}
.slide-txt{transition:opacity .5s,transform .5s}
.slide-txt.out{opacity:0;transform:translateY(8px)}
.dots{position:absolute;left:50%;bottom:1.4rem;transform:translateX(-50%);display:flex;gap:.5rem;z-index:2}
.dots button{width:38px;height:4px;border-radius:2px;border:0;background:rgba(255,255,255,.35);padding:0;cursor:pointer;overflow:hidden;position:relative}
.dots button i{position:absolute;inset:0;background:var(--gold-2);transform-origin:left;transform:scaleX(0)}
.dots button.on i{animation:fill var(--dur,7s) linear forwards}
@keyframes fill{to{transform:scaleX(1)}}
.hero-tabs{position:absolute;top:1rem;left:50%;transform:translateX(-50%);display:flex;gap:.3rem;background:rgba(11,20,32,.45);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:.3rem;z-index:2}
.hero-tabs button{background:none;border:0;color:rgba(255,255,255,.75);font-family:var(--font-d);font-weight:600;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;padding:.5rem .9rem;border-radius:999px;cursor:pointer;min-height:36px}
.hero-tabs button.on{background:var(--gold);color:#1A1406}
@media (max-width:640px){.hero-tabs button{padding:.45rem .6rem;font-size:.68rem}.hero .wrap{padding-top:5rem}}
.arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(11,20,32,.35);color:#fff;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px)}
.arrow.l{left:1rem}.arrow.r{right:1rem}
@media (max-width:900px){.arrow{display:none}}

/* STATS */
.stats{background:var(--surface);border-bottom:1px solid var(--line)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.6rem 0}
.stat{text-align:center}
.stat b{display:block;font-family:var(--font-d);font-size:clamp(1.5rem,1rem + 1.8vw,2.2rem);font-weight:800;color:var(--gold);font-variant-numeric:tabular-nums}
.stat span{font-size:.85rem;color:var(--muted)}
@media (max-width:640px){.stats .wrap{grid-template-columns:repeat(2,1fr)}}

/* UNIVERS */
.univers{background:var(--surface);border-bottom:1px solid var(--line);padding:1.8rem 0 1.4rem;position:relative;z-index:3}
.ugrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.ucard{display:grid;gap:.3rem;justify-items:center;text-align:center;text-decoration:none;padding:1.2rem 1rem 1rem;border-radius:18px;border:1.5px solid var(--line);background:var(--bg);transition:transform .2s,border-color .2s,box-shadow .2s}
.ucard:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:var(--shadow)}
.ucard .uic{font-size:1.8rem;line-height:1}
.ucard b{font-family:var(--font-d);font-size:1.15rem}
.ucard span:not(.uic){font-size:.82rem;color:var(--muted)}
.ucard em{font-style:normal;margin-top:.5rem;display:inline-flex;gap:.4rem;align-items:center;font-family:var(--font-d);font-weight:700;font-size:.85rem;color:#1A1406;background:linear-gradient(135deg,var(--gold-2),var(--gold));padding:.55rem .9rem;border-radius:999px;min-height:40px}
.ucard em svg{width:15px;height:15px}
.ustats{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 2rem;margin-top:1.2rem;font-size:.9rem;color:var(--muted)}
.ustats b{font-family:var(--font-d);color:var(--gold);font-size:1.05rem}
@media (max-width:900px){.ugrid{grid-template-columns:repeat(2,1fr);gap:.7rem}.ucard{padding:1rem .6rem .8rem}.ucard span:not(.uic){display:none}.ucard em{font-size:.78rem;padding:.5rem .7rem}}
/* PILLARS */
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.pillar{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:1.5rem;display:grid;gap:.7rem;align-content:start;box-shadow:var(--shadow)}
.pillar .ic{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--water),var(--aqua));color:#fff}
.pillar .ic svg{width:24px;height:24px}
.pillar.gold .ic{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1A1406}
.pillar p{color:var(--muted);font-size:.95rem}
@media (max-width:980px){.pillars{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.pillars{grid-template-columns:1fr}}

/* SERVICES */
.services{background:var(--surface)}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.svc{position:relative;background:var(--bg);border:1px solid var(--line);border-radius:18px;padding:1.5rem;display:grid;gap:.6rem;align-content:start;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
.svc:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold)}
.svc .ic{width:44px;height:44px;border-radius:12px;background:#E3F0F8;color:var(--water);display:grid;place-items:center}
.svc .ic svg{width:22px;height:22px}
.svc p{color:var(--muted);font-size:.95rem}
.svc .more{color:var(--water);font-weight:700;font-size:.9rem;margin-top:.3rem}
.svc.urgent{background:linear-gradient(160deg,#FFF8E6,#FDF1D2);border-color:var(--gold)}
.svc.urgent .ic{background:rgba(201,162,74,.22);color:#8A6A1F}
.svc.urgent .more{color:#8A6A1F}
.svc .call{display:inline-flex;gap:.4rem;align-items:center;font-family:var(--font-d);font-weight:700;font-size:.9rem;color:var(--text);margin-top:.2rem}
.svc .call svg{width:16px;height:16px;color:var(--gold)}
.svc .badge{position:absolute;top:1rem;right:1rem;font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:var(--gold);color:#1A1406;padding:.25rem .55rem;border-radius:999px}
@media (max-width:980px){.svc-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.svc-grid{grid-template-columns:1fr}}

/* PROCESS */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:s}
.step{position:relative;padding:1.4rem;border-left:3px solid var(--gold);background:var(--surface);border-radius:0 16px 16px 0;box-shadow:var(--shadow)}
.step::before{counter-increment:s;content:counter(s,decimal-leading-zero);font-family:var(--font-d);font-weight:800;font-size:1.8rem;color:var(--gold);line-height:1;display:block;margin-bottom:.6rem}
.step p{color:var(--muted);font-size:.93rem;margin-top:.3rem}
@media (max-width:980px){.steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}

/* GALLERY */
.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:150px;gap:.8rem}
.g{position:relative;border-radius:16px;overflow:hidden;background:var(--mist);cursor:zoom-in}
.g img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.g:hover img{transform:scale(1.05)}
.g figcaption{display:none;position:absolute;left:0;right:0;bottom:0;padding:1.4rem .9rem .8rem;font-size:.8rem;font-weight:600;color:#fff;background:linear-gradient(transparent,rgba(11,20,32,.85))}
.gallery{grid-template-columns:repeat(4,1fr);grid-auto-rows:auto}.g{aspect-ratio:1}
.g.more{display:none}.gallery.open .g.more{display:block}
@media (max-width:760px){.gallery{grid-template-columns:repeat(2,1fr)}}
.lb{position:fixed;inset:0;background:rgba(11,20,32,.92);display:none;place-items:center;z-index:99;padding:1rem}
.lb[open]{display:grid}
.lb img{max-height:90vh;max-width:min(100%,900px);border-radius:12px;object-fit:contain}
.lb button{position:absolute;top:1rem;right:1rem;width:44px;height:44px;border-radius:50%;border:0;background:#fff;font-size:1.3rem;cursor:pointer}

/* WHY */
.why{background:linear-gradient(180deg,#EAF3F9,#F4F7F9)}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.why-item{border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:18px;padding:1.4rem;background:var(--surface);display:grid;gap:.5rem;align-content:start;box-shadow:var(--shadow)}
.why-item .ic{color:var(--gold);width:28px;height:28px}
.why-item p{color:var(--muted);font-size:.93rem}
@media (max-width:980px){.why-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.why-grid{grid-template-columns:1fr}}

/* ZONES */
.zones{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;max-width:900px;margin:0 auto}
.zone{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-weight:600;font-size:.9rem;text-decoration:none}
.zone:hover{border-color:var(--gold)}
.zone b{font-family:var(--font-d);color:var(--gold);font-variant-numeric:tabular-nums}

/* BRANDS */
.brands{background:var(--surface);border-block:1px solid var(--line)}
.marquee{overflow:hidden;mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.marquee ul{display:flex;gap:3rem;list-style:none;padding:0;margin:0;width:max-content;animation:mq 40s linear infinite}
.marquee li{font-family:var(--font-d);font-weight:700;font-size:1.1rem;color:var(--muted);letter-spacing:.04em;white-space:nowrap}
@keyframes mq{to{transform:translateX(-50%)}}

/* TESTIMONIALS */
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.rev{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:1.5rem;display:grid;gap:.7rem;align-content:start}
.rev .stars{color:var(--gold);letter-spacing:.1em;font-size:.9rem}
.rev q{font-size:1rem;line-height:1.55}
.rev q::before,.rev q::after{color:var(--gold)}
.rev .who{font-size:.85rem;color:var(--muted)}
.rev .who b{color:var(--text)}
@media (max-width:900px){.reviews{grid-template-columns:1fr}}

/* CTA */
.cta{background:var(--surface)}
.cta-box{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center;background:linear-gradient(160deg,#EAF3F9,#FFFFFF);border:1px solid var(--line);border-radius:24px;padding:clamp(1.6rem,4vw,3rem);position:relative;overflow:hidden;box-shadow:var(--shadow)}
.cta-box::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-120px;top:-160px;background:radial-gradient(circle,rgba(201,162,74,.25),transparent 70%)}
.cta-box p{color:var(--muted);margin-top:.6rem}
.form{display:grid;gap:.7rem;position:relative}
.form input,.form select,.form textarea{width:100%;padding:.85rem 1rem;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--text);font:inherit;font-size:1rem;min-height:48px}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--gold);border-color:var(--gold)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.form small{color:var(--muted);font-size:.78rem}
@media (max-width:860px){.cta-box{grid-template-columns:1fr}.form .row{grid-template-columns:1fr}}

/* BOUTIQUE */
.prod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.prod{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:1rem 1rem 1.2rem;display:grid;gap:.5rem;align-content:start;transition:transform .2s,box-shadow .2s}
.prod:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.pimg{aspect-ratio:4/3;border-radius:12px;background:#fff;display:grid;place-items:center;overflow:hidden}
.pimg img{width:100%;height:100%;object-fit:contain;padding:.6rem}
.pcat{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.prod h3{font-size:.98rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.price{font-family:var(--font-d);font-weight:800;font-size:1.15rem;color:var(--text);font-variant-numeric:tabular-nums}
.price small{font-weight:500;color:var(--muted);font-size:.75rem}
.prod .btn{justify-content:center;padding:.7rem 1rem;min-height:44px;font-size:.88rem}
@media (max-width:980px){.prod-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.prod-grid{grid-template-columns:1fr 1fr;gap:.7rem}.prod{padding:.7rem}.prod h3{font-size:.85rem}.price{font-size:1rem}}
/* QUI */
.qui{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center}
.qui-img{border-radius:24px;overflow:hidden;aspect-ratio:4/5;max-height:520px;box-shadow:var(--shadow)}
.qui-img img{width:100%;height:100%;object-fit:cover}
.ticks{list-style:none;padding:0;margin:1.4rem 0 0;display:grid;gap:.6rem;font-weight:600}
.ticks li::before{content:"✓";display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--gold);color:#1A1406;font-size:.8rem;margin-right:.6rem}
@media (max-width:860px){.qui{grid-template-columns:1fr}.qui-img{aspect-ratio:16/10}}
/* LOGOS */
.logos{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem}
.logos li{background:#fff;border:1px solid var(--line);border-radius:14px;height:90px;display:grid;place-items:center;padding:.8rem;transition:border-color .2s,transform .2s}
.logos li:hover{border-color:var(--gold);transform:translateY(-2px)}
.logos img{max-height:56px;width:auto;max-width:100%;object-fit:contain}
@media (max-width:560px){.logos{grid-template-columns:repeat(3,1fr);gap:.5rem}.logos li{height:70px;padding:.5rem}}
/* FOOTER */

.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}




.legal{margin-top:2.5rem;padding-top:1.2rem;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}
@media (max-width:860px){.fgrid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.fgrid{grid-template-columns:1fr}}

/* FAB desktop */
.dps-fab{font-family:var(--font-d)!important;font-size:1.05rem!important;position:fixed;right:1.4rem;bottom:1.4rem;z-index:60;display:flex;align-items:center;gap:.7rem;padding:.8rem 1.2rem .8rem .9rem;border-radius:999px;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1A1406;text-decoration:none;font-family:var(--font-d);font-weight:800;font-size:1.05rem;box-shadow:0 12px 32px rgba(201,162,74,.45);animation:pulse 2.4s infinite}
.dps-fab svg{width:22px;height:22px}
.dps-fab small{display:block;font-weight:600;font-size:.7rem;opacity:.8}
@media (max-width:980px){.dps-fab{display:none}}
/* MOBILE STICKY BAR */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;grid-template-columns:1fr 1fr;gap:.5rem;padding:.6rem .8rem calc(.6rem + env(safe-area-inset-bottom));background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-top:1px solid var(--line)}
.mbar .btn{justify-content:center;padding:.8rem}
@media (max-width:980px){.mbar{display:grid}}

.reveal,.reveal.in{animation:none!important;opacity:1!important;transform:none!important}
@keyframes rise{from{opacity:.25;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}

/* ===== Intégration thème Martfury (v1.0.2) ===== */
html,body{overflow-x:hidden}
.dps-home{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;overflow-x:hidden}
.page-template-home-dps .site-content{padding-top:0!important;padding-bottom:0!important}
.dps-home-tpl .site-header,.dps-home-tpl #colophon.site-footer,.dps-home-tpl .header-mobile,.dps-home-tpl .mobile-menu,.dps-home-tpl .header-department-top{display:none!important}
.dps-home-tpl .site{padding-top:0!important}
.page-template-home-dps .site-content>.container{max-width:none;padding:0}
.page-template-home-dps .site-content>.container>.row{margin:0}
.page-template-home-dps .entry-header,.page-template-home-dps .page-header,.page-template-home-dps .breadcrumbs{display:none}
.dps-home .btn{display:inline-flex!important;align-items:center;gap:.55rem;padding:.9rem 1.4rem!important;border-radius:999px!important;font-family:var(--font-d)!important;font-weight:600!important;font-size:.95rem!important;line-height:1.2!important;text-transform:none!important;letter-spacing:0!important;border:1.5px solid transparent!important;text-decoration:none!important;height:auto!important;min-height:48px}
.dps-home .btn-xl{font-size:1.1rem!important;padding:1.05rem 1.7rem!important}
.dps-home .btn-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold))!important;color:#1A1406!important}
.dps-home .btn-ghost{background:rgba(255,255,255,.08)!important;color:#fff!important;border-color:rgba(255,255,255,.55)!important}
.dps-home .btn-ink{background:var(--ink)!important;color:#fff!important}
.dps-home .prod .btn{padding:.7rem 1rem!important;min-height:44px;font-size:.88rem!important}
.dps-home .price{font-size:1.15rem;color:var(--text)}
.dps-home ul{list-style:none;padding:0;margin:0}
.dps-home .ticks{margin-top:1.4rem;display:grid;gap:.6rem}
.dps-home input,.dps-home select,.dps-home textarea{height:auto}
.page-template-home-dps #dpscb-bar,.page-template-home-dps .phone-footer-container,.page-template-home-dps #btn-phone-rapide,.page-template-home-dps .dpscb-fab{display:none!important}

.dps-fab{right:1.4rem;bottom:5.2rem}
@media (max-width:980px){.dps-fab{display:none!important}}

@media (max-width:560px){.page-template-home-dps .site-header .devis-gratuit{display:none!important}}
.page-template-home-dps .wn-background-template-type-0,.page-template-home-dps [class*="wn-notification"]{display:none!important}

/* ===== HEADER DPS (v1.1.0) ===== */
.dps-nav{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.dps-nav>.wrap{display:flex;align-items:center;gap:1rem;height:78px}
.dps-nav .brand img{height:56px;width:auto;object-fit:contain}
.dps-menu{display:flex;align-items:center;gap:.2rem;margin-left:auto}
.dps-menu ul.menu{display:flex;gap:.2rem;list-style:none;margin:0;padding:0}
.dps-menu ul.menu>li{position:relative}
.dps-menu ul.menu>li>a{display:block;padding:.5rem .65rem;font-family:var(--font-d);font-weight:600;font-size:.86rem;white-space:nowrap;color:var(--text)!important;text-decoration:none!important;border-radius:8px}
.dps-menu ul.menu>li>a:hover,.dps-menu ul.menu>li.current-menu-item>a{background:var(--bg);color:#8A6A1F!important}
.dps-menu ul.menu>li>a .caret{display:none}
.dps-menu ul.menu>li.menu-item-has-children>a::after,.dps-menu ul.menu>li.hasmenu>a::after{content:"";display:inline-block;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:0 0 3px 6px;opacity:.6}
.dps-menu ul.menu ul{position:absolute;top:100%;left:0;min-width:240px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:.5rem;list-style:none;margin:0;display:none;z-index:95}
.dps-menu ul.menu ul li a{display:block;padding:.55rem .75rem;border-radius:8px;font-size:.88rem;font-weight:500;color:var(--text)!important;text-decoration:none!important;white-space:nowrap}
.dps-menu ul.menu ul li a:hover{background:var(--bg);color:#8A6A1F!important}
.dps-menu ul.menu>li:hover>ul,.dps-menu ul.menu>li:focus-within>ul{display:block}
.dps-menu ul.menu a span{display:inline}
.dps-nav .nav-cta{display:flex;align-items:center;gap:.6rem;margin-left:.4rem}
.dps-nav .cart{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);color:var(--text)!important}
.dps-nav .cart svg{width:20px;height:20px}
.dps-nav .cart .count{position:absolute;top:-4px;right:-4px;background:var(--gold);color:#1A1406;font-size:.65rem;font-weight:800;min-width:18px;height:18px;border-radius:9px;display:grid;place-items:center;padding:0 4px}
.dps-nav .tel{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-d);font-weight:800;font-size:.95rem;color:var(--text)!important;text-decoration:none!important;white-space:nowrap}
.dps-nav .tel svg{width:18px;height:18px;color:var(--gold)}
.dps-nav .btn{padding:.6rem 1.1rem!important;min-height:42px;font-size:.9rem!important;box-shadow:none}
.dps-nav .burger{display:none;background:none;border:1.5px solid var(--line);border-radius:10px;width:44px;height:44px;color:var(--text);place-items:center;padding:0;cursor:pointer}
.dps-nav .drawer{display:none;position:fixed;inset:78px 0 0;background:#fff;z-index:89;padding:1rem 1.2rem 6rem;overflow:auto;flex-direction:column;gap:.4rem}
.dps-nav .drawer[open]{display:flex}
.dps-nav .drawer ul.dmenu{list-style:none;margin:0;padding:0}
.dps-nav .drawer ul.dmenu>li>a{display:block;padding:.9rem .4rem;border-bottom:1px solid var(--line);font-family:var(--font-d);font-weight:700;font-size:1.05rem;color:var(--text)!important;text-decoration:none!important}
.dps-nav .drawer ul.dmenu ul{list-style:none;margin:0;padding:0 0 .4rem .8rem}
.dps-nav .drawer ul.dmenu ul li a{display:block;padding:.55rem .4rem;font-size:.95rem;color:var(--muted)!important;text-decoration:none!important}
.dps-nav .drawer .btn{justify-content:center;margin-top:.6rem}
@media (max-width:1280px){.dps-menu ul.menu>li>a{font-size:.8rem;padding:.5rem .45rem}.dps-nav .tel span{display:none}}
@media (max-width:1100px){.dps-menu,.dps-nav .nav-cta .btn{display:none}.dps-nav .burger{display:grid}.dps-nav .nav-cta{margin-left:auto}.dps-nav .tel{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--gold-2),var(--gold));justify-content:center}.dps-nav .tel svg{color:#1A1406}}
@media (max-width:480px){.dps-nav>.wrap{height:66px}.dps-nav .brand img{height:46px}.dps-nav .drawer{inset:66px 0 0}}
/* ===== FOOTER DPS ===== */
.dps-footer{background:#0F1A28;color:rgba(255,255,255,.82);padding:3.5rem 0 6rem}
.dps-footer .fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:2.5rem}
.dps-footer .about p{margin:1rem 0 1.2rem;font-size:.93rem;max-width:34ch;color:rgba(255,255,255,.7)}
.dps-footer .brand img{height:60px;width:auto;background:#fff;border-radius:12px;padding:.4rem}
.dps-footer h3{color:#fff;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;margin:0 0 1rem;font-family:var(--font-d)}
.dps-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:.5rem;font-size:.93rem}
.dps-footer ul li a{color:rgba(255,255,255,.78)!important;text-decoration:none!important}
.dps-footer ul li a:hover{color:var(--gold-2)!important}
.dps-footer .legal{margin-top:2.5rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.12);font-size:.8rem;color:rgba(255,255,255,.55);display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;justify-content:space-between;align-items:center}
.dps-footer .legal-menu{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem}
.dps-footer .legal-menu a{color:rgba(255,255,255,.6)!important}
@media (max-width:900px){.dps-footer .fgrid{grid-template-columns:1fr 1fr;gap:2rem}}
@media (max-width:540px){.dps-footer .fgrid{grid-template-columns:1fr;gap:1.8rem}.dps-footer{padding-bottom:7rem}}
/* reviews shortcode : hide duplicate title, contain */
.dps-home .glsr .titleSection h2{display:none}
.dps-home .glsr .container{max-width:100%;padding:0}
.dps-home .glsr img{display:inline-block}
/* hero polish */
.hero::after{background:linear-gradient(180deg,rgba(11,20,32,.55) 0%,rgba(11,20,32,.18) 40%,rgba(11,20,32,.7) 100%)!important}
.hero .wrap{padding-top:clamp(5rem,12vh,7rem)!important}
.hero h1{letter-spacing:-.02em}

/* v1.1.1 fixes */
.dps-nav .brand{flex:none;display:block}
.dps-nav .brand img{width:56px!important;height:56px!important;max-width:none}
.dps-home .dps-footer{background:#0F1A28!important;color:rgba(255,255,255,.82)!important;border-top:0}
.dps-home .dps-footer h3{color:#fff!important}
.dps-home .dps-footer ul li{color:rgba(255,255,255,.78)}
.dps-home .dps-footer ul li a{color:rgba(255,255,255,.78)!important}
.dps-home .dps-footer .legal,.dps-home .dps-footer .legal a{color:rgba(255,255,255,.55)!important}
.dps-home .dps-footer .brand img{width:auto!important;height:60px!important}
.dps-home-tpl .backtotop,.dps-home-tpl #scroll-top,.dps-home-tpl .mf-backtotop{display:none!important}
/* v1.1.2 : panier flottant du plugin masqué sur mobile (chevauche la barre d'appel) */
@media (max-width:980px){.dps-home-tpl .vi-wcaio-sidebar-cart-icon-wrap{display:none!important}}
.dps-home-tpl .vi-wcaio-sidebar-cart-icon-wrap-bottom_left{bottom:1.4rem!important;left:1.2rem!important}
/* ===== v1.2.0 — header : neutralisation totale des styles du thème ===== */
.dps-home .dps-nav,.dps-home .dps-nav *{box-sizing:border-box}
.dps-home .dps-nav{height:auto;line-height:1.3}
.dps-home .dps-nav>.wrap{height:76px!important;gap:1.2rem}
.dps-home .dps-nav .brand{flex:none;display:block;padding:0;margin:0;border:0;background:none}
.dps-home .dps-nav .brand img{width:auto!important;height:54px!important;max-height:54px;padding:0;margin:0;border:0;box-shadow:none;background:none}
.dps-home .dps-menu{display:flex;align-items:center;gap:0;margin-left:auto;margin-right:.5rem}
.dps-home .dps-menu ul,.dps-home .dps-menu li{list-style:none!important;margin:0!important;padding:0!important;background:none!important;box-shadow:none!important;border:0!important;float:none!important;line-height:1.3!important}
.dps-home .dps-menu ul.menu{display:flex!important;align-items:center;gap:.1rem!important}
.dps-home .dps-menu ul.menu>li{position:relative;display:block!important}
.dps-home .dps-menu ul.menu>li>a,.dps-home .dps-menu ul.menu>li>a.dropdown-toggle{display:inline-flex!important;align-items:center;gap:.3rem;height:38px!important;padding:0 .7rem!important;margin:0!important;font-family:var(--font-d)!important;font-weight:600!important;font-size:.86rem!important;line-height:1!important;letter-spacing:0!important;text-transform:none!important;color:var(--text)!important;text-decoration:none!important;background:none!important;border:0!important;border-radius:8px!important;box-shadow:none!important;white-space:nowrap}
.dps-home .dps-menu ul.menu>li>a span{background:none!important;padding:0!important;margin:0!important;border:0!important;color:inherit!important;font:inherit!important}
.dps-home .dps-menu ul.menu>li>a:hover,.dps-home .dps-menu ul.menu>li.current-menu-item>a{background:var(--bg)!important;color:#8A6A1F!important}
.dps-home .dps-menu ul.menu a i,.dps-home .dps-menu ul.menu a .caret,.dps-home .dps-menu ul.menu a svg,.dps-home .dps-menu ul.menu a img,.dps-home .dps-menu ul.menu .menu-item-icon,.dps-home .dps-menu ul.menu .toggle-submenu,.dps-home .dps-menu ul.menu .mf-sub-toggle{display:none!important}
.dps-home .dps-menu ul.menu>li.menu-item-has-children>a::after,.dps-home .dps-menu ul.menu>li.hasmenu>a::after{content:""!important;display:inline-block!important;width:5px;height:5px;border:0!important;border-right:1.5px solid currentColor!important;border-bottom:1.5px solid currentColor!important;transform:translateY(-2px) rotate(45deg);margin-left:.15rem;opacity:.55;background:none!important}
.dps-home .dps-menu ul.menu ul,.dps-home .dps-menu ul.menu ul.dropdown-submenu,.dps-home .dps-menu ul.menu ul.sub-menu{position:absolute!important;top:100%!important;left:0!important;min-width:250px!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:12px!important;box-shadow:0 16px 40px rgba(11,20,32,.14)!important;padding:.45rem!important;margin:.35rem 0 0!important;display:none!important;z-index:95!important;opacity:1!important;visibility:visible!important;transform:none!important;transition:none!important;width:auto!important;text-align:left!important}
.dps-home .dps-menu ul.menu>li:hover>ul,.dps-home .dps-menu ul.menu>li:focus-within>ul{display:block!important}
.dps-home .dps-menu ul.menu ul li{display:block!important;width:100%!important}
.dps-home .dps-menu ul.menu ul li a{display:block!important;padding:.6rem .8rem!important;margin:0!important;border:0!important;border-radius:8px!important;font-family:var(--font-b)!important;font-size:.9rem!important;font-weight:500!important;line-height:1.3!important;color:var(--text)!important;text-decoration:none!important;background:none!important;box-shadow:none!important;white-space:nowrap;text-transform:none!important}
.dps-home .dps-menu ul.menu ul li a:hover{background:var(--bg)!important;color:#8A6A1F!important}
.dps-home .dps-menu ul.menu.menu-extra{margin-left:.35rem!important;padding-left:.5rem!important;border-left:1px solid var(--line)!important;border-radius:0!important}
.dps-home .dps-nav .nav-cta{display:flex;align-items:center;gap:.7rem;margin:0;flex:none}
.dps-home .dps-nav .cart{position:relative;display:grid!important;place-items:center;width:40px!important;height:40px!important;padding:0!important;margin:0!important;border-radius:50%!important;border:1px solid var(--line)!important;background:#fff!important;color:var(--text)!important;box-shadow:none!important}
.dps-home .dps-nav .cart svg{width:19px!important;height:19px!important;display:block!important}
.dps-home .dps-nav .cart .count{position:absolute;top:-5px;right:-5px;background:var(--gold)!important;color:#1A1406!important;font-size:.62rem!important;font-weight:800;min-width:18px;height:18px;line-height:18px;border-radius:9px;text-align:center;padding:0 4px;border:0;box-shadow:none}
.dps-home .dps-nav .tel{display:inline-flex!important;align-items:center;gap:.4rem;height:40px;padding:0!important;margin:0!important;font-family:var(--font-d)!important;font-weight:800!important;font-size:.95rem!important;line-height:1!important;color:var(--text)!important;text-decoration:none!important;background:none!important;border:0!important;box-shadow:none!important;white-space:nowrap}
.dps-home .dps-nav .tel svg{width:18px!important;height:18px!important;color:var(--gold)!important;display:block!important}
.dps-home .dps-nav .nav-cta .btn,.dps-home .dps-nav .nav-cta .btn.btn-gold{display:inline-flex!important;align-items:center;justify-content:center;height:40px!important;min-height:0!important;padding:0 1.1rem!important;margin:0!important;font-family:var(--font-d)!important;font-size:.88rem!important;font-weight:700!important;line-height:1!important;border-radius:999px!important;border:0!important;background:linear-gradient(135deg,var(--gold-2),var(--gold))!important;color:#1A1406!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;animation:none!important;transform:none!important}
.dps-home .dps-nav .burger{display:none;width:42px!important;height:42px!important;padding:0!important;margin:0!important;border:1.5px solid var(--line)!important;border-radius:10px!important;background:#fff!important;color:var(--text)!important;box-shadow:none!important;place-items:center;cursor:pointer}
@media (max-width:1380px){.dps-home .dps-menu ul.menu>li>a{font-size:.8rem!important;padding:0 .5rem!important}.dps-home .dps-nav .tel span{display:none}}
@media (max-width:1180px){.dps-home .dps-menu,.dps-home .dps-nav .nav-cta .btn{display:none!important}.dps-home .dps-nav .burger{display:grid!important}.dps-home .dps-nav .nav-cta{margin-left:auto}.dps-home .dps-nav .tel{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--gold-2),var(--gold))!important;justify-content:center}.dps-home .dps-nav .tel svg{color:#1A1406!important}}
@media (max-width:480px){.dps-home .dps-nav>.wrap{height:64px!important}.dps-home .dps-nav .brand img{height:44px!important}.dps-home .dps-nav .drawer{inset:64px 0 0}}

/* ===== v1.3.0 — HEADER 2 niveaux + typographie ===== */
.dps-home .dps-nav{background:#fff;border-bottom:1px solid var(--line)}
.dps-home .dps-nav .dps-topbar{background:var(--ink);color:rgba(255,255,255,.85);font-size:.8rem;line-height:1}
.dps-home .dps-nav .dps-topbar .wrap{display:flex;align-items:center;justify-content:space-between;height:36px;gap:1rem}
.dps-home .dps-nav .dps-topbar ul{display:flex;gap:1.4rem;list-style:none;margin:0!important;padding:0!important}
.dps-home .dps-nav .dps-topbar li{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap;margin:0!important;padding:0!important}
.dps-home .dps-nav .dps-topbar li svg{width:14px;height:14px;color:var(--gold-2);flex:none}
.dps-home .dps-nav .dps-topbar a{display:inline-flex;align-items:center;gap:.4rem;color:#fff!important;text-decoration:none!important;font-weight:600}
.dps-home .dps-nav .dps-topbar a:hover{color:var(--gold-2)!important}
.dps-home .dps-nav>.wrap.mainbar{height:84px!important;gap:1.4rem}
.dps-home .dps-nav .brand{display:flex!important;align-items:center;gap:.7rem;text-decoration:none!important}
.dps-home .dps-nav .brand img{height:62px!important;max-height:62px}
.dps-home .dps-nav .brand-txt{display:flex;flex-direction:column;line-height:1}
.dps-home .dps-nav .brand-txt b{font-family:var(--font-d);font-size:1.25rem;font-weight:800;letter-spacing:.06em;color:var(--ink)}
.dps-home .dps-nav .brand-txt small{font-family:var(--font-d);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:.25rem;white-space:nowrap}
.dps-home .dps-menu ul.menu>li>a,.dps-home .dps-menu ul.menu>li>a.dropdown-toggle{font-size:.95rem!important;height:42px!important;padding:0 .8rem!important}
.dps-home .dps-menu ul.menu ul li a{font-size:.95rem!important;padding:.65rem .9rem!important}
.dps-home .dps-menu ul.menu.menu-extra{margin-left:.5rem!important;padding-left:.6rem!important}
.dps-home .dps-nav .nav-cta .btn.btn-call{background:linear-gradient(135deg,var(--gold-2),var(--gold))!important;color:#1A1406!important;height:44px!important;padding:0 1.15rem!important;font-size:.95rem!important;gap:.5rem}
.dps-home .dps-nav .nav-cta .btn.btn-call svg{width:18px!important;height:18px!important}
.dps-home .dps-nav .nav-cta .btn.btn-devis{background:#fff!important;color:var(--ink)!important;border:1.5px solid var(--ink)!important;height:44px!important;padding:0 1.1rem!important;font-size:.92rem!important}
.dps-home .dps-nav .nav-cta .btn.btn-devis:hover{background:var(--ink)!important;color:#fff!important}
.dps-home .dps-nav .cart{width:44px!important;height:44px!important}
@media (max-width:1500px){.dps-home .dps-nav .brand-txt{display:none}.dps-home .dps-menu ul.menu>li>a{font-size:.88rem!important;padding:0 .6rem!important}}
@media (max-width:1380px){.dps-home .dps-nav .nav-cta .btn.btn-call span{display:none}.dps-home .dps-nav .nav-cta .btn.btn-call{width:44px;padding:0!important;justify-content:center}.dps-home .dps-menu ul.menu>li>a{font-size:.84rem!important;padding:0 .5rem!important}}
@media (max-width:1180px){.dps-home .dps-nav .dps-topbar .tb-left li:nth-child(n+2){display:none}.dps-home .dps-nav .nav-cta .btn.btn-devis{display:none!important}.dps-home .dps-nav .tel{display:none!important}}
@media (max-width:640px){.dps-home .dps-nav .dps-topbar .wrap{justify-content:center}.dps-home .dps-nav .dps-topbar .tb-left{display:none}.dps-home .dps-nav .dps-topbar .tb-right li:first-child{display:none}.dps-home .dps-nav>.wrap.mainbar{height:68px!important}.dps-home .dps-nav .brand img{height:48px!important}.dps-home .dps-nav .drawer{inset:104px 0 0}}
/* typographie : lisibilité (base 17px, hiérarchie claire) */
.dps-home{font-size:17px;line-height:1.65}
.dps-home h2{font-size:clamp(1.9rem,1.25rem + 2.4vw,2.9rem);line-height:1.12}
.dps-home h3{font-size:1.2rem}
.dps-home .sec-head{max-width:760px}
.dps-home .sec-head p{font-size:1.1rem;line-height:1.6}
.dps-home .eyebrow{font-size:.78rem}
.dps-home .pillar p,.dps-home .svc p,.dps-home .why-item p,.dps-home .step p{font-size:1rem}
.dps-home .hero h1{font-size:clamp(2.1rem,1.2rem + 4vw,4.2rem)}
.dps-home .hero .lede{font-size:clamp(1.05rem,.95rem + .5vw,1.3rem)}
.dps-home .hero .proof{font-size:.95rem}
.dps-home .ucard b{font-size:1.25rem}
.dps-home .ucard span:not(.uic){font-size:.9rem}
.dps-home .ustats{font-size:1rem}
.dps-home .prod h3{font-size:1rem}
.dps-home .zone{font-size:.98rem;padding:.7rem 1.1rem}
.dps-home .logos li{height:96px}
.dps-home .rev q{font-size:1.05rem}
.dps-home .dps-footer{font-size:1rem}
.dps-home .dps-footer ul{font-size:.98rem}

/* v1.3.1 : typographie forcée face au thème */
.dps-home h1,.dps-home h2,.dps-home h3{font-family:var(--font-d)!important;margin:0!important;line-height:1.15!important;letter-spacing:-.01em!important;text-transform:none!important;color:inherit}
.dps-home h2{font-size:clamp(1.9rem,1.25rem + 2.4vw,2.9rem)!important;font-weight:700!important}
.dps-home h3{font-size:1.2rem!important;font-weight:600!important}
.dps-home .prod h3{font-size:1rem!important}
.dps-home .hero h1{font-size:clamp(2.1rem,1.2rem + 4vw,4.2rem)!important;font-weight:800!important;color:#fff!important}
.dps-home p{font-size:inherit;line-height:inherit;margin:0}
.dps-home .sec-head p{font-size:1.1rem!important}
.dps-home .dps-nav .dps-topbar{display:block!important}

/* v1.3.3 : topbar fond nuit (le thème stylait .topbar), header compact ≤1600px */
.dps-home .dps-nav .dps-topbar{background:var(--ink)!important;color:rgba(255,255,255,.85)!important}
@media (max-width:1600px){.dps-home .dps-nav .brand-txt{display:none}.dps-home .dps-nav .nav-cta .btn.btn-call span{display:none}.dps-home .dps-nav .nav-cta .btn.btn-call{width:44px;padding:0!important;justify-content:center}.dps-home .dps-menu ul.menu>li>a{font-size:.9rem!important;padding:0 .6rem!important}}
@media (max-width:1380px){.dps-home .dps-menu ul.menu>li>a{font-size:.84rem!important;padding:0 .45rem!important}.dps-home .dps-nav>.wrap.mainbar{gap:.8rem}}
/* ===== v1.3.4 — grille et gouttières unifiées ===== */
.dps-home{--gutter:clamp(1rem,4vw,2.5rem);--container:1240px}
.dps-home .wrap{width:min(var(--container),100% - 2*var(--gutter))!important;max-width:none;margin-inline:auto!important;padding:0!important;box-sizing:border-box}
.dps-home .sec{padding:clamp(3.5rem,7vw,6rem) 0!important}
.dps-home .sec-head{margin:0 auto 3rem!important}
.dps-home .univers{padding:2rem 0 1.6rem!important}
.dps-home .hero .wrap{max-width:900px!important;padding-left:0!important;padding-right:0!important}
.dps-home .pillars,.dps-home .svc-grid,.dps-home .prod-grid,.dps-home .steps,.dps-home .why-grid,.dps-home .reviews,.dps-home .logos,.dps-home .ugrid{gap:1.25rem}
.dps-home .gallery{margin:0!important;width:100%!important;gap:.8rem!important;padding:0!important}
.dps-home .g{margin:0!important;width:auto!important}
.dps-home .prod-grid>*,.dps-home .svc-grid>*,.dps-home .pillars>*,.dps-home .ugrid>*{min-width:0}
.dps-home .prod{overflow:hidden}
.dps-home .prod .btn{white-space:normal!important;text-align:center;line-height:1.2!important}
.dps-home .prod h3{overflow-wrap:anywhere}
.dps-home #avis .wrap{overflow:hidden}
.dps-home .glsr,.dps-home .glsr *{max-width:100%!important;box-sizing:border-box}
.dps-home .glsr .row{margin:0!important}
.dps-home .glsr [class*="col-"]{padding-left:0!important;padding-right:0!important}
.dps-home .lm-widget-wrapper{width:100%!important;overflow:hidden}
.dps-home .cta-box{padding:clamp(1.25rem,4vw,3rem)!important}
.dps-home .dps-footer{padding:4rem 0 6.5rem!important}
@media (max-width:560px){.dps-home .prod-grid{grid-template-columns:1fr 1fr;gap:.75rem}.dps-home .prod{padding:.7rem}.dps-home .ugrid{gap:.75rem}.dps-home .gallery{gap:.5rem!important}.dps-home .logos{gap:.5rem}}
@media (max-width:400px){.dps-home .prod-grid{grid-template-columns:1fr}}

/* v1.4.0 : FAQ + titres secondaires */
.dps-home .h2like{font-size:clamp(1.9rem,1.25rem + 2.4vw,2.9rem)!important;font-weight:700!important;line-height:1.12!important}
.dps-home .faq{max-width:860px;margin:0 auto;display:grid;gap:.7rem}
.dps-home .faq-item{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:0 1.2rem}
.dps-home .faq-item summary{cursor:pointer;list-style:none;padding:1.05rem 2.2rem 1.05rem 0;font-family:var(--font-d);font-weight:700;font-size:1.05rem;position:relative}
.dps-home .faq-item summary::-webkit-details-marker{display:none}
.dps-home .faq-item summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-weight:700;color:#8A6A1F}
.dps-home .faq-item[open] summary::after{content:"–"}
.dps-home .faq-item p{padding:0 0 1.1rem;color:var(--muted);font-size:1rem;line-height:1.6}
.dps-home .g img{width:100%;height:100%;object-fit:cover}

/* v1.5.0 : anti-CLS */
.dps-home .hero{min-height:min(86vh,760px);contain:layout paint}
.dps-home .cta-box .form{height:820px;min-height:820px;overflow:hidden}
.dps-home .cta-box .form iframe{height:800px!important;min-height:800px!important}
.dps-home #avis{min-height:420px}
.dps-home .logos li{contain:layout}
.dps-home .g{contain:layout paint}
@media (max-width:640px){.dps-home .cta-box .form{height:860px;min-height:860px}.dps-home .cta-box .form iframe{height:840px!important;min-height:840px!important}}

/* v1.6.0 : pas d'animation au scroll, transitions légères */
.dps-home .reveal{animation:none!important;opacity:1!important;transform:none!important}
.dps-home .pillar,.dps-home .svc,.dps-home .prod,.dps-home .ucard,.dps-home .why-item,.dps-home .logos li{transition:box-shadow .2s,border-color .2s!important;transform:none!important}
.dps-home .g img{transition:none!important}
.dps-home .btn{transition:background .2s,color .2s!important}
.dps-home .btn:hover{transform:none!important}
.dps-home .hero canvas{will-change:contents}

/* v1.7.1 — hero mobile façon maquette : photo lisible en haut, texte en bas */
@media (max-width:640px){
  .dps-home .hero{min-height:min(92svh,820px)!important;align-items:end}
  .dps-home .hero::after{background:linear-gradient(180deg,rgba(11,20,32,.42) 0%,rgba(11,20,32,.06) 22%,rgba(11,20,32,.55) 48%,rgba(11,20,32,.9) 100%)!important}
  .dps-home .hero .wrap{padding-top:40vh!important;padding-bottom:3.2rem!important;gap:.9rem}
  .dps-home .hero h1{font-size:clamp(2rem,9vw,2.6rem)!important;line-height:1.08}
  .dps-home .hero .lede{font-size:1rem!important}
}

/* v2.0.0 — header/footer DPS sur les pages du thème (html à 62,5 % dans Martfury : on compense) */
.dps-chrome{zoom:1.6;width:100%!important;left:auto!important;right:auto!important;margin-left:0!important;margin-right:0!important;--container:775px}
.dps-chrome-head{position:relative;z-index:1000;overflow:visible!important}
body.dps-chrome-page #dpscb-bar,body.dps-chrome-page .dpscb-bar{display:none!important}
body.dps-chrome-page .site{padding-top:0!important}
.dps-chrome-foot{overflow:visible!important}
@media (max-width:900px){body.dps-chrome-page{padding-bottom:72px}}

/* v2.0.3 — tiroir mobile sur les pages du thème : neutralise les règles .drawer de Martfury/Elementor */
.dps-chrome .dps-nav .drawer{position:fixed!important;top:78px!important;right:0!important;bottom:auto!important;left:0!important;height:calc(100vh / 1.6 - 78px)!important;width:auto!important;max-height:none!important;z-index:2147483000!important;transform:none!important;visibility:visible!important;opacity:1!important}
.dps-chrome .dps-nav .drawer:not([open]){display:none!important}
@media (max-width:480px){.dps-chrome .dps-nav .drawer{top:66px!important;height:calc(100vh / 1.6 - 66px)!important}}

/* v2.1.0 — avis (cartes DPS) + menu plus compact sur les pages du thème */
.dps-home .rev-summary{text-align:center;margin:0 0 1.4rem;color:var(--muted,#4a5568)}
.dps-home .rev-summary .stars{color:var(--gold,#c9a24a);letter-spacing:.1em}
.dps-home .rev .who{margin:.6rem 0 0;font-size:.9rem;color:var(--muted,#4a5568)}
.dps-chrome .mainbar{gap:.7rem}
.dps-chrome .dps-menu .menu>li>a{padding-left:.55rem;padding-right:.55rem;font-size:.92rem}
.dps-chrome .nav-cta .btn{padding-left:.9rem;padding-right:.9rem}

/* v2.1.1 — barre de navigation : tient dans 1240 px avec 7 entrées de menu */
.dps-nav .mainbar{gap:.8rem}
.dps-nav .dps-menu .menu>li>a{padding-left:.5rem!important;padding-right:.5rem!important;font-size:.9rem!important}
.dps-nav .dps-menu{min-width:0}
.dps-nav .btn-call span{display:none}.dps-nav .btn-call{padding-left:.85rem!important;padding-right:.85rem!important}
.dps-nav .nav-cta{flex:0 0 auto}.dps-nav .dps-menu{flex:0 1 auto;min-width:0}
@media (max-width:1400px) and (min-width:901px){.dps-nav .dps-menu .menu>li>a{font-size:.84rem!important;padding-left:.4rem!important;padding-right:.4rem!important}.dps-nav .btn-devis{padding-left:.8rem!important;padding-right:.8rem!important}}


/* v2.1.3 — nav dynamique : le JS mesure si le menu tient ; sinon .dps-nav.is-compact => burger, à toute largeur / zoom / page. */
.dps-nav .mainbar{flex-wrap:nowrap}
.dps-nav .dps-menu{flex:0 0 auto;min-width:0}
.dps-nav .nav-cta{flex:0 0 auto;margin-left:auto}
.dps-nav .dps-menu .menu>li>a{white-space:nowrap}
.dps-nav.is-measuring .dps-menu{display:flex!important;visibility:hidden;position:absolute;left:-9999px;top:0;width:max-content;margin:0}
.dps-nav.is-compact .dps-menu,.dps-nav.is-compact .nav-cta .btn{display:none!important}
.dps-nav.is-compact .burger{display:grid!important}
.dps-nav.is-compact .nav-cta{margin-left:auto}
.dps-nav.is-compact .tel{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--gold-2),var(--gold))!important;justify-content:center}
.dps-nav.is-compact .tel svg{color:#1A1406!important}
.dps-nav.is-compact .tel span{display:none}
.dps-nav:not(.is-compact) .drawer[open]{display:none}
/* v2.1.5 — pages hors template (conteneur plafonné) : menu un peu plus compact pour tenir jusqu'au burger. */
.dps-chrome .dps-nav .dps-menu .menu>li>a{font-size:.8rem!important;padding-left:.38rem!important;padding-right:.38rem!important}
.dps-chrome .dps-nav .mainbar{gap:.6rem}
/* v2.1.6 — le menu ne rétrécit jamais (sinon ses listes débordent) ; s'il ne tient pas, le JS bascule en burger. */
.dps-nav .dps-menu,.dps-nav .dps-menu ul.menu{flex-shrink:0!important}
/* v2.1.7 — tailles desktop cohérentes sur toutes les pages : le menu complet tient dans le conteneur, sinon burger (JS). */
.dps-home .dps-nav .dps-menu ul.menu>li>a,.dps-nav .dps-menu ul.menu>li>a{font-size:.82rem!important;padding-left:.45rem!important;padding-right:.45rem!important;letter-spacing:0!important}
.dps-home .dps-nav>.wrap.mainbar,.dps-nav .mainbar{gap:.8rem!important}
.dps-chrome .dps-nav .dps-menu ul.menu>li>a{font-size:.76rem!important;padding-left:.3rem!important;padding-right:.3rem!important}
.dps-chrome .dps-nav .mainbar{gap:.5rem!important}

/* ===== v2.2.0 — Panier DPS ===== */
.dps-cart #content.site-content{padding:32px 0 56px}
.dps-cart .entry-content>.woocommerce{--ink:#0B1420;--gold:#C9A24A;--gold-2:#E4C57A;--bg:#F4F7F9;--text:#13202E;--muted:#5B6B7B;--line:#D7E0E7;font-family:"Manrope",ui-sans-serif,system-ui,sans-serif;color:var(--text);font-size:15px;line-height:1.5}
.dps-cart .woocommerce-notices-wrapper:empty{display:none}
.dps-cart .woocommerce .woocommerce-message,.dps-cart .woocommerce .woocommerce-info,.dps-cart .woocommerce .woocommerce-error{border:1px solid var(--line)!important;border-left:4px solid var(--gold)!important;background:#fff!important;border-radius:12px;padding:14px 18px!important;font-size:14px;margin:0 0 20px!important;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.dps-cart .woocommerce .woocommerce-message .button{order:2;margin-left:auto;background:var(--ink)!important;color:#fff!important;border-radius:999px!important;padding:8px 16px!important;font-size:13px!important}
.dps-cart .dps-cart-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 22px}
.dps-cart .dps-cart-head h1{font-family:"Sora",ui-sans-serif,system-ui,sans-serif;font-size:30px;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:0 0 4px;color:var(--ink)}
.dps-cart .dps-cart-head p{margin:0;color:var(--muted);font-size:14px}
.dps-cart .dps-cart-back{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--ink)!important;text-decoration:none!important;border:1.5px solid var(--line);border-radius:999px;padding:9px 16px;background:#fff}
.dps-cart .dps-cart-back svg{width:16px;height:16px}
.dps-cart .dps-cart-back:hover{border-color:var(--ink)}
/* grille : articles | récap */
.dps-cart .entry-content>.woocommerce{display:grid;grid-template-columns:minmax(0,1fr) 380px;column-gap:32px;align-items:start}
.dps-cart .entry-content>.woocommerce>.woocommerce-notices-wrapper,.dps-cart .entry-content>.woocommerce>.dps-cart-head,.dps-cart .entry-content>.woocommerce>.cart-empty,.dps-cart .entry-content>.woocommerce>.return-to-shop{grid-column:1/-1}
.dps-cart .woocommerce-cart-form{grid-column:1;margin:0}
.dps-cart .cart-collaterals{grid-column:2;position:sticky;top:96px;margin:0}
.dps-cart .cart-collaterals .row{margin:0;display:block}
.dps-cart .cart-collaterals [class*="col-"]{width:100%;padding:0;float:none}
/* tableau produits en cartes */
.dps-cart table.shop_table.cart{border:0!important;margin:0;background:transparent}
.dps-cart table.shop_table.cart thead{display:none}
.dps-cart table.shop_table.cart tbody{display:block}
.dps-cart table.shop_table.cart tr.cart_item{display:grid;grid-template-columns:96px minmax(0,1fr) auto auto;grid-template-areas:"img name qty sub";column-gap:18px;row-gap:6px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin:0 0 12px}
.dps-cart table.shop_table.cart td{border:0!important;padding:0!important;background:transparent!important;display:block;text-align:left!important}
.dps-cart table.shop_table.cart td::before{display:none!important}
.dps-cart td.product-thumbnail{grid-area:img}
.dps-cart td.product-thumbnail img{width:96px;height:96px;object-fit:contain;border-radius:10px;background:var(--bg);padding:6px;display:block}
.dps-cart td.product-name{grid-area:name;min-width:0}
.dps-cart td.product-name a{font-family:"Sora",ui-sans-serif,system-ui,sans-serif;font-weight:700;font-size:16px;color:var(--ink)!important;text-decoration:none!important;line-height:1.3;display:block}
.dps-cart td.product-name .variation,.dps-cart td.product-name dl{font-size:13px;color:var(--muted);margin:4px 0 0}
.dps-cart td.product-price{grid-area:name;align-self:end;margin-top:34px!important;font-size:14px;color:var(--muted)}
.dps-cart td.product-price .amount{color:var(--text)!important;font-weight:600}
.dps-cart td.product-quantity{grid-area:qty;display:flex!important;align-items:center;gap:12px}
.dps-cart td.product-subtotal{grid-area:sub;text-align:right!important;min-width:110px}
.dps-cart td.product-subtotal .amount{font-family:"Sora",ui-sans-serif,system-ui,sans-serif;font-weight:800;font-size:18px;color:var(--ink)!important}
.dps-cart .woocommerce .amount,.dps-cart .woocommerce .amount bdi{color:inherit!important}
.dps-cart td.product-remove,.dps-cart tr.cart_item>td.product-remove{grid-area:sub;align-self:end;justify-self:end;margin-top:44px!important}
.dps-cart .product-remove a.remove,.dps-cart td.product-quantity .product-remove a.remove{display:inline-flex;align-items:center;gap:6px;width:auto!important;height:auto!important;font-size:12px!important;line-height:1!important;color:var(--muted)!important;background:none!important;border:0!important;border-radius:0!important;text-decoration:none!important;font-weight:600}
.dps-cart .product-remove a.remove::after{content:"Retirer"}
.dps-cart .product-remove a.remove:hover{color:#B42318!important}
/* quantité */
.dps-cart .quantity{display:inline-flex!important;align-items:center;border:1.5px solid var(--line);border-radius:999px;overflow:hidden;background:#fff;height:40px}
.dps-cart .quantity input.qty{width:44px!important;height:38px!important;border:0!important;text-align:center;font-weight:700;font-size:15px;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important;-moz-appearance:textfield}
.dps-cart .quantity input.qty::-webkit-inner-spin-button,.dps-cart .quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none}
.dps-cart .quantity .increase,.dps-cart .quantity .decrease,.dps-cart .quantity span[class*="qty"]{width:36px;height:38px;display:grid;place-items:center;cursor:pointer;font-size:18px;color:var(--ink);position:static!important;border:0!important;background:transparent!important;user-select:none}
/* actions (retour boutique / update) */
.dps-cart table.shop_table.cart tr:not(.cart_item){display:block}
.dps-cart td.actions{display:flex!important;align-items:center;gap:12px;padding:4px 0 0!important}
.dps-cart td.actions .btn-shop{display:none}
.dps-cart td.actions .btn-update{display:none!important}
.dps-cart td.actions .coupon{display:flex;gap:8px;width:100%}
/* coupon (bloc Martfury sous le tableau) */
.dps-cart .col-coupon{padding:0;width:100%;margin:6px 0 0}
.dps-cart .col-coupon .coupon{display:flex;align-items:center;gap:10px;background:#fff;border:1px dashed var(--line);border-radius:14px;padding:12px 14px}
.dps-cart .col-coupon label{margin:0;font-weight:700;font-size:14px;white-space:nowrap}
.dps-cart .col-coupon input.input-text{flex:1;min-width:0;height:42px;border:1.5px solid var(--line);border-radius:10px;padding:0 12px;font-size:14px}
.dps-cart .col-coupon input.button,.dps-cart .col-coupon button.button{height:42px;border-radius:999px;background:var(--ink);color:#fff;border:0;padding:0 18px;font-weight:700;font-size:14px;cursor:pointer}
.dps-cart .woocommerce-cart-form .coupon-toggle,.dps-cart .woocommerce-cart-form .mf-coupon-toggle{display:none}
/* récapitulatif */
.dps-cart .cart_totals{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 22px 20px;box-shadow:0 10px 30px rgba(11,20,32,.06)}
.dps-cart .cart_totals h2{font-family:"Sora",ui-sans-serif,system-ui,sans-serif;font-size:20px;font-weight:800;margin:0 0 14px;color:var(--ink);letter-spacing:-.01em}
.dps-cart .cart_totals table.shop_table{border:0!important;margin:0;width:100%}
.dps-cart .cart_totals table.shop_table th,.dps-cart .cart_totals table.shop_table td{border:0!important;border-top:1px solid var(--line)!important;padding:12px 0!important;background:transparent!important;font-size:14px;font-weight:500;color:var(--muted)}
.dps-cart .cart_totals table.shop_table tr:first-child th,.dps-cart .cart_totals table.shop_table tr:first-child td{border-top:0!important}
.dps-cart .cart_totals table.shop_table td{text-align:right!important;color:var(--text);font-weight:600}
.dps-cart .cart_totals tr.order-total th,.dps-cart .cart_totals tr.order-total td{font-family:"Sora",ui-sans-serif,system-ui,sans-serif;font-size:17px;font-weight:800;color:var(--ink);padding-top:14px!important}
.dps-cart .cart_totals tr.order-total .amount{font-size:22px;color:var(--ink)!important}
.dps-cart .cart_totals .includes_tax,.dps-cart .cart_totals .tax_label,.dps-cart .cart_totals small{font-size:12px;color:var(--muted);font-weight:500}
.dps-cart .cart_totals .woocommerce-shipping-destination,.dps-cart .cart_totals .woocommerce-shipping-calculator{font-size:13px}
.dps-cart .cart_totals ul#shipping_method{list-style:none;margin:0;padding:0}
.dps-cart .wc-proceed-to-checkout{padding:16px 0 0!important;margin:0}
.dps-cart .wc-proceed-to-checkout a.checkout-button{display:flex!important;align-items:center;justify-content:center;height:52px;border-radius:999px!important;background:linear-gradient(135deg,var(--gold-2),var(--gold))!important;color:#1A1406!important;font-family:"Sora",ui-sans-serif,system-ui,sans-serif;font-weight:800!important;font-size:16px!important;border:0!important;margin:0!important;padding:0 20px!important;text-transform:none!important;box-shadow:0 8px 20px rgba(201,162,74,.35)}
.dps-cart .wc-proceed-to-checkout a.checkout-button:hover{filter:brightness(1.04)}
.dps-cart .dps-cart-trust{list-style:none;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--line);display:grid;gap:12px}
.dps-cart .dps-cart-trust li{display:flex;gap:12px;align-items:flex-start;font-size:13px;color:var(--muted);line-height:1.4}
.dps-cart .dps-cart-trust li b{color:var(--text);font-weight:700}
.dps-cart .dps-cart-trust li a{color:var(--ink)!important;font-weight:700;text-decoration:none!important}
.dps-cart .dps-cart-trust svg{width:20px;height:20px;flex:none;color:var(--gold);margin-top:1px}
/* panier vide */
.dps-cart .cart-empty{background:#fff;border:1px solid var(--line);border-radius:16px;padding:40px 24px 16px;text-align:center;font-family:"Sora",ui-sans-serif,system-ui,sans-serif;font-size:20px;font-weight:700;color:var(--ink);margin:0}
.dps-cart .return-to-shop{text-align:center;background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 16px 16px;padding:0 24px 40px;margin:0}
.dps-cart .return-to-shop a.button{display:inline-flex;align-items:center;height:48px;padding:0 24px;border-radius:999px;background:var(--ink);color:#fff;font-weight:700;text-decoration:none}
/* responsive */
@media (max-width:1100px){.dps-cart .entry-content>.woocommerce{grid-template-columns:minmax(0,1fr) 320px;column-gap:24px}}
@media (max-width:900px){.dps-cart .entry-content>.woocommerce{grid-template-columns:1fr}.dps-cart .woocommerce-cart-form,.dps-cart .cart-collaterals{grid-column:1}.dps-cart .cart-collaterals{position:static;margin-top:20px}.dps-cart .dps-cart-head h1{font-size:26px}}
@media (max-width:640px){
  .dps-cart #content.site-content{padding:20px 0 40px}
  .dps-cart table.shop_table.cart tr.cart_item{grid-template-columns:72px minmax(0,1fr);grid-template-areas:"img name" "img price" "qty sub";column-gap:12px;padding:12px}
  .dps-cart td.product-thumbnail img{width:72px;height:72px}
  .dps-cart td.product-name a{font-size:15px}
  .dps-cart td.product-price{grid-area:price;margin-top:0!important;align-self:start}
  .dps-cart td.product-quantity{grid-area:qty;margin-top:8px}
  .dps-cart td.product-subtotal{grid-area:sub;align-self:center;margin-top:8px}
  .dps-cart tr.cart_item>td.product-remove{grid-area:sub;margin-top:0!important;align-self:start}
  .dps-cart .col-coupon .coupon{flex-wrap:wrap}
  .dps-cart .col-coupon label{width:100%}
  .dps-cart .cart_totals{padding:18px 16px}
  .dps-cart .dps-cart-back{padding:8px 14px;font-size:13px}
}

/* v2.2.1 — correctifs panier (template WooCommerce standard) */
.dps-cart td.actions button[name="update_cart"]{display:none!important}
.dps-cart td.actions{display:block!important;padding:6px 0 0!important}
.dps-cart td.actions .coupon{display:flex;align-items:center;gap:10px;background:#fff;border:1px dashed var(--line);border-radius:14px;padding:12px 14px;width:100%;float:none!important}
.dps-cart td.actions .coupon label{margin:0;font-weight:700;font-size:14px;white-space:nowrap;display:block}
.dps-cart td.actions .coupon input.input-text{flex:1;min-width:0;width:auto!important;height:42px;border:1.5px solid var(--line);border-radius:10px;padding:0 12px;font-size:14px;margin:0;float:none!important}
.dps-cart td.actions .coupon button.button{height:42px;border-radius:999px;background:var(--ink)!important;color:#fff!important;border:0;padding:0 18px;font-weight:700;font-size:14px;cursor:pointer;float:none!important;margin:0}
.dps-cart .quantity label.label,.dps-cart .quantity .screen-reader-text{display:none!important}
.dps-cart .quantity .qty-box{display:flex;align-items:center}
.dps-cart .quantity .decrease,.dps-cart .quantity .increase{font-family:inherit!important;font-weight:700}
.dps-cart .quantity .decrease::before{content:"−"!important;font-family:inherit!important}
.dps-cart .quantity .increase::before{content:"+"!important;font-family:inherit!important}
.dps-cart .cart_totals table.shop_table,.dps-cart .cart_totals table.shop_table tbody,.dps-cart .cart_totals table.shop_table tr{background:transparent!important}
.dps-cart td.product-remove{display:none!important}
.dps-cart td.product-subtotal{display:flex!important;flex-direction:column;align-items:flex-end;gap:6px}
.dps-cart td.product-subtotal .dps-remove{font-size:12px;font-weight:600;color:var(--muted)!important;text-decoration:none!important}
.dps-cart td.product-subtotal .dps-remove:hover{color:#B42318!important}
@media (max-width:640px){
  .dps-cart .entry-content>.woocommerce{padding:0 14px}
  .dps-cart .dps-cart-head{flex-direction:column;align-items:flex-start;gap:10px}
  .dps-cart td.actions .coupon{flex-wrap:wrap}
  .dps-cart td.actions .coupon label{width:100%}
  .dps-cart td.actions .coupon input.input-text{flex:1 1 120px}
}
/* v2.2.2 — finitions panier */
.dps-cart .quantity .qty-box .decrease,.dps-cart .quantity .qty-box .increase{display:grid!important;width:36px;height:38px;opacity:1!important;visibility:visible!important;font-size:18px;line-height:1}
.dps-cart td.product-subtotal,.dps-cart td.product-price{white-space:nowrap}
.dps-cart td.product-subtotal .amount{display:inline}
.dps-cart td.actions .coupon label::after,.dps-cart td.actions .coupon label::before{display:none!important;content:none!important}
@media (max-width:980px){.dps-cart #content.site-content{padding-bottom:120px}}
/* v2.2.4 — quantité visible (le thème force width:0/overflow:hidden), sous-total sur une ligne */
.dps-cart .quantity{width:auto!important;min-width:118px!important;max-width:none!important;overflow:visible!important;padding:0!important;margin:0!important}
.dps-cart td.product-subtotal{display:block!important;text-align:right!important;white-space:nowrap}
.dps-cart td.product-subtotal .dps-remove{display:block;margin-top:6px}
@media (max-width:640px){.dps-cart td.product-subtotal{justify-self:end}}
/* v2.2.5 — +/− centrés verticalement */
.dps-cart .quantity .qty-box{display:flex!important;align-items:center;height:38px}
.dps-cart .quantity .qty-box .decrease,.dps-cart .quantity .qty-box .increase{position:static!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important;margin:0!important;padding:0!important;height:38px!important;line-height:38px!important;display:flex!important;align-items:center;justify-content:center}
.dps-cart .quantity .qty-box .decrease::before,.dps-cart .quantity .qty-box .increase::before{line-height:1;position:static!important}
/* v2.2.6 — le tableau panier en bloc (sinon hauteur 0 avec tbody en bloc → footer qui recouvre) */
.dps-cart table.shop_table.cart,.dps-cart table.shop_table.cart tbody,.dps-cart table.shop_table.cart tr{display:block!important;width:100%}
.dps-cart table.shop_table.cart tr.cart_item{display:grid!important}
.dps-cart .woocommerce-cart-form{display:block;width:100%}

/* ==========================================================================
 * v2.3.0 — NAVIGATION DPS : bloc unique, toutes pages, tous écrans.
 * Desktop : items uniformes (même couleur, aucun fond), dropdowns propres.
 * Mobile  : tiroir plein écran déplacé dans <body> par le JS (indépendant de la barre).
 * ========================================================================== */
.dps-nav .dps-menu ul.menu>li{position:relative;margin:0!important;padding:0!important;background:none!important}
.dps-nav .dps-menu ul.menu>li>a,.dps-nav .dps-menu ul.menu>li.current-menu-item>a,.dps-nav .dps-menu ul.menu>li.current-menu-ancestor>a,.dps-nav .dps-menu ul.menu>li.hasmenu>a,.dps-nav .dps-menu ul.menu>li.dropdown>a{display:inline-flex!important;align-items:center;gap:.3rem;height:40px!important;padding:0 .55rem!important;margin:0!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;font-family:var(--font-d)!important;font-weight:700!important;font-size:.82rem!important;line-height:1!important;letter-spacing:0!important;text-transform:none!important;color:var(--text)!important;text-decoration:none!important;white-space:nowrap;transition:color .15s,background .15s}
.dps-nav .dps-menu ul.menu>li>a:hover,.dps-nav .dps-menu ul.menu>li:hover>a,.dps-nav .dps-menu ul.menu>li:focus-within>a{background:var(--bg)!important;color:var(--ink)!important}
.dps-nav .dps-menu ul.menu>li.current-menu-item>a{box-shadow:inset 0 -2px 0 var(--gold)!important;border-radius:8px 8px 0 0!important}
.dps-nav .dps-menu ul.menu>li>a::after{display:none!important}
.dps-nav .dps-menu ul.menu>li.menu-item-has-children>a::after,.dps-nav .dps-menu ul.menu>li.hasmenu>a::after{content:""!important;display:inline-block!important;width:5px;height:5px;border:0!important;border-right:1.5px solid currentColor!important;border-bottom:1.5px solid currentColor!important;transform:rotate(45deg);margin:0 0 3px 2px;opacity:.7}
.dps-nav .dps-menu ul.menu ul{position:absolute!important;top:100%!important;left:0!important;min-width:240px!important;width:auto!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:12px!important;box-shadow:0 16px 40px rgba(11,20,32,.14)!important;padding:.4rem!important;margin:.3rem 0 0!important;display:none!important;z-index:95!important;opacity:1!important;visibility:visible!important;transform:none!important;transition:none!important;text-align:left!important;list-style:none}
.dps-nav .dps-menu ul.menu>li:hover>ul,.dps-nav .dps-menu ul.menu>li:focus-within>ul{display:block!important}
.dps-nav .dps-menu ul.menu ul li{display:block!important;width:100%!important;margin:0!important;padding:0!important}
.dps-nav .dps-menu ul.menu ul li a{display:block!important;padding:.55rem .75rem!important;margin:0!important;border:0!important;border-radius:8px!important;font-family:var(--font-b)!important;font-size:.86rem!important;font-weight:500!important;line-height:1.3!important;color:var(--text)!important;text-decoration:none!important;background:none!important;box-shadow:none!important;white-space:nowrap;text-transform:none!important}
.dps-nav .dps-menu ul.menu ul li a:hover{background:var(--bg)!important;color:var(--ink)!important}
.dps-nav .dps-menu ul.menu ul li a::after{display:none!important}
.dps-nav .dps-menu ul.menu.menu-extra{margin-left:.4rem!important;padding-left:.5rem!important;border-left:1px solid var(--line)!important}
/* dernier dropdown : ouvrir vers la gauche pour ne pas sortir de l'écran */
.dps-nav .dps-menu ul.menu.menu-extra>li>ul{left:auto!important;right:0!important}
/* tiroir mobile (hébergé dans body) */
.dps-drawer-host{--ink:#0B1420;--gold:#C9A24A;--gold-2:#E4C57A;--bg:#F4F7F9;--text:#13202E;--muted:#5B6B7B;--line:#D7E0E7;--font-d:"Sora",ui-sans-serif,system-ui,sans-serif;--font-b:"Manrope",ui-sans-serif,system-ui,sans-serif;position:fixed;inset:0;z-index:2147483000;display:none;font-family:var(--font-b);color:var(--text);font-size:16px;line-height:1.5;width:auto;margin:0;left:0;right:0}
.dps-drawer-host.is-open{display:block}
.dps-drawer-host .dps-drawer-bg{position:absolute;inset:0;background:rgba(11,20,32,.45)}
.dps-drawer-host .drawer{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;width:min(100%,400px)!important;height:auto!important;max-height:none!important;margin:0!important;padding:0 0 2rem!important;background:#fff!important;display:flex!important;flex-direction:column;overflow:auto!important;box-shadow:-20px 0 60px rgba(11,20,32,.25);transform:translateX(0);animation:dpsDrawerIn .22s ease-out}
@keyframes dpsDrawerIn{from{transform:translateX(30px);opacity:0}to{transform:none;opacity:1}}
.dps-drawer-host .drawer-head{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:2}
.dps-drawer-host .drawer-head img{height:44px;width:auto}
.dps-drawer-host .drawer-close{width:42px;height:42px;border:1.5px solid var(--line);border-radius:10px;background:#fff;display:grid;place-items:center;color:var(--text);cursor:pointer;padding:0}
.dps-drawer-host .drawer-close svg{width:20px;height:20px}
.dps-drawer-host ul.dmenu{list-style:none;margin:0;padding:.4rem 1rem 0}
.dps-drawer-host ul.dmenu+ul.dmenu{padding-top:0;margin-top:.4rem;border-top:1px solid var(--line)}
.dps-drawer-host ul.dmenu>li{border-bottom:1px solid var(--line)}
.dps-drawer-host ul.dmenu>li>a{display:flex;align-items:center;justify-content:space-between;padding:.95rem .2rem;font-family:var(--font-d);font-weight:700;font-size:1.02rem;color:var(--text)!important;text-decoration:none!important;line-height:1.2}
.dps-drawer-host ul.dmenu>li>a::after{display:none!important}
.dps-drawer-host ul.dmenu>li.has-sub>a{padding-right:2.6rem;position:relative}
.dps-drawer-host ul.dmenu>li.has-sub>button.sub-toggle{position:absolute;right:0;top:.45rem;width:40px;height:40px;border:0;background:none;display:grid;place-items:center;color:var(--muted);cursor:pointer;padding:0}
.dps-drawer-host ul.dmenu>li.has-sub{position:relative}
.dps-drawer-host ul.dmenu>li.has-sub>button.sub-toggle svg{width:18px;height:18px;transition:transform .2s}
.dps-drawer-host ul.dmenu>li.has-sub.open>button.sub-toggle svg{transform:rotate(180deg)}
.dps-drawer-host ul.dmenu ul{list-style:none;margin:0;padding:0 0 .6rem .6rem;display:none}
.dps-drawer-host ul.dmenu>li.has-sub.open>ul{display:block}
.dps-drawer-host ul.dmenu ul li a{display:block;padding:.55rem .4rem;font-size:.95rem;color:var(--muted)!important;text-decoration:none!important;border-left:2px solid var(--line);padding-left:.8rem}
.dps-drawer-host ul.dmenu ul li a::after{display:none!important}
.dps-drawer-host .drawer-ctas{display:grid;gap:.6rem;padding:1rem 1rem 0}
.dps-drawer-host .drawer .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:50px;border-radius:999px;font-family:var(--font-d);font-weight:700;font-size:1rem;text-decoration:none!important;margin:0!important}
.dps-drawer-host .drawer .btn svg{width:18px;height:18px}
.dps-drawer-host .drawer .btn-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1A1406!important}
.dps-drawer-host .drawer .btn-ink{background:var(--ink);color:#fff!important}
.dps-drawer-host .drawer-info{padding:1rem 1rem 0;font-size:.85rem;color:var(--muted);line-height:1.5}
.dps-drawer-host.dps-chrome{zoom:1.6}
.dps-nav .drawer{display:none!important}
.dps-nav .burger{cursor:pointer}

/* v2.4.0 — header identique sur toutes les pages : html 16px partout (fin du zoom 1.6 de compensation). */
.dps-chrome{zoom:1!important;--container:1240px!important}
.dps-drawer-host.dps-chrome{zoom:1!important}
.dps-chrome .dps-nav .dps-menu ul.menu>li>a,.dps-chrome .dps-nav .dps-menu .menu>li>a{font-size:.82rem!important;padding-left:.55rem!important;padding-right:.55rem!important}
.dps-chrome .dps-nav .mainbar,.dps-chrome .mainbar{gap:.8rem!important}
.dps-chrome .nav-cta .btn{padding-left:1.1rem!important;padding-right:1.1rem!important}
@media (max-width:900px){body.dps-chrome-page{padding-bottom:88px}}

/* v2.4.1 — header sticky sur toutes les pages : le bandeau noir (36px) défile, la barre de menu reste collée. */
.dps-home>.dps-nav,.dps-chrome-head{position:sticky!important;top:-36px!important;z-index:1000!important}
.dps-chrome-head .dps-nav{position:static!important}
.dps-nav{background:#fff!important;transition:box-shadow .2s}
.dps-nav.is-stuck{box-shadow:0 6px 24px rgba(11,20,32,.10)}
.dps-nav .dps-menu ul.menu ul{z-index:1001!important}
html{scroll-padding-top:96px}
/* v2.4.2 — sticky réel : overflow-x:clip (ne crée pas de conteneur de défilement, contrairement à hidden) */
html.dps-home-tpl-html,body.dps-home-tpl{overflow-x:clip!important;overflow-y:visible!important}
.dps-home{overflow-x:clip!important;overflow-y:visible!important}
body.dps-home-tpl #page,body.dps-home-tpl #content,body.dps-home-tpl .site-content{overflow:visible!important}

/* ==========================================================================
 * v2.5.0 — PAGES SERVICES DPS (page-templates/service-dps.php)
 * ========================================================================== */
.dps-service .crumbs{background:var(--surface);border-bottom:1px solid var(--line);font-size:.82rem;color:var(--muted)}
.dps-service .crumbs .wrap{display:flex;gap:.5rem;align-items:center;padding:.55rem 0;flex-wrap:wrap}
.dps-service .crumbs a{color:var(--muted);text-decoration:none}.dps-service .crumbs a:hover{color:var(--ink)}
.dps-service .crumbs b{color:var(--text);font-weight:600}
.dps-service .shero{position:relative;background:var(--ink);color:#fff;overflow:hidden;isolation:isolate}
.dps-service .shero-bg{position:absolute;inset:0;z-index:-1}
.dps-service .shero-bg img{width:100%;height:100%;object-fit:cover;object-position:center}
.dps-service .shero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,20,32,.92) 0%,rgba(11,20,32,.78) 45%,rgba(11,20,32,.35) 100%)}
.dps-service .shero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:2.5rem;align-items:center;padding:clamp(3rem,7vh,5rem) 0 clamp(3rem,7vh,5rem)}
.dps-service .shero .eyebrow{color:var(--gold-2)}
.dps-service .shero h1{font-family:var(--font-d);font-size:clamp(1.9rem,1.1rem+2.8vw,3.1rem);font-weight:800;line-height:1.1;letter-spacing:-.02em;color:#fff;margin:.6rem 0 1rem;text-wrap:balance}
.dps-service .shero h1 em{font-style:normal;color:var(--gold-2)}
.dps-service .shero .lead{font-size:1.08rem;color:rgba(255,255,255,.88);max-width:60ch;line-height:1.6}
.dps-service .shero-bullets{list-style:none;margin:1.2rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem 1.4rem}
.dps-service .shero-bullets li{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;font-size:.95rem}
.dps-service .shero-bullets svg{width:18px;height:18px;color:var(--gold-2);flex:none}
.dps-service .shero .actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem}
.dps-service .shero .actions .btn-ghost{border:1.5px solid rgba(255,255,255,.55)}
.dps-service .shero .proof{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;margin-top:1.2rem;font-size:.88rem;color:rgba(255,255,255,.85)}
.dps-service .shero .proof b{color:var(--gold-2)}
.dps-service .shero-card{background:#fff;color:var(--text);border-radius:22px;padding:1.6rem;box-shadow:0 30px 60px rgba(0,0,0,.35);display:grid;gap:.7rem}
.dps-service .shero-card h2{font-family:var(--font-d);font-size:1.35rem;font-weight:800;color:var(--ink);line-height:1.2}
.dps-service .shero-card .big-tel{font-family:var(--font-d);font-weight:800;font-size:clamp(1.6rem,1.2rem+1.5vw,2.1rem);color:var(--ink);text-decoration:none;letter-spacing:-.01em;display:block;padding:.6rem .9rem;border-radius:14px;background:linear-gradient(135deg,var(--gold-2),var(--gold));text-align:center}
.dps-service .shero-card p{color:var(--muted);font-size:.93rem}
.dps-service .shero-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.4rem;font-size:.92rem}
.dps-service .shero-card li{padding-left:1.4rem;position:relative}
.dps-service .shero-card li::before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:800}
.dps-service .shero-card .btn{justify-content:center;margin-top:.3rem}
.dps-service .sec.alt{background:var(--surface)}
.dps-service .center{text-align:center;margin-top:2.2rem}
.dps-service .pillars.four{grid-template-columns:repeat(3,1fr)}
.dps-service .svc em{display:block;margin-top:.6rem;font-style:normal;font-weight:700;font-size:.85rem;color:var(--water)}
.dps-service .svc.urgent em{color:#8A6A1F}
.dps-service .links{text-align:center;margin-top:2rem;color:var(--muted);font-size:.95rem}
.dps-service .links a{color:var(--ink);font-weight:600}
.dps-service .cta-tel{margin-top:1.2rem}
.dps-service .cta .small{margin-top:1rem;font-size:.85rem}
.dps-service .prod-grid{grid-template-columns:repeat(4,1fr)}
.dps-service .rev-summary{margin:0}
@media (max-width:1100px){.dps-service .prod-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:980px){.dps-service .shero-grid{grid-template-columns:1fr;gap:1.6rem}.dps-service .pillars.four{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.dps-service .shero-grid{padding:2rem 0 2.2rem}.dps-service .shero .lead{font-size:1rem}.dps-service .shero .actions .btn{width:100%;justify-content:center}.dps-service .pillars.four{grid-template-columns:1fr}.dps-service .shero-bg::after{background:linear-gradient(180deg,rgba(11,20,32,.85),rgba(11,20,32,.9))}}

/* ==========================================================================
 * v3.0.0 — PAGES SERVICES (refonte visuelle) + composants partagés (avis, bandeau, zigzag)
 * Espacements : échelle unique --sp (section) / --gap. Rien n'est en px figé côté mobile.
 * ========================================================================== */
.dps-home{--sp:clamp(2.75rem,6vw,5.5rem);--gap:clamp(1rem,2.4vw,1.6rem);--r:20px;--r-s:14px}
.dps-service .sec{padding:var(--sp) 0}
.dps-service .sec.alt{background:var(--surface)}
.dps-service .sec-head{margin-bottom:clamp(1.6rem,3vw,2.6rem)}
.dps-service .btn svg,.dps-home .btn svg{width:18px;height:18px;flex:none}
.dps-home .btn-outline{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}
.dps-home .btn-outline:hover{background:var(--ink);color:#fff}
/* fil d'ariane */
.dps-service .crumbs{background:var(--surface);border-bottom:1px solid var(--line);font-size:.8rem;color:var(--muted)}
.dps-service .crumbs-in{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;min-height:38px}
.dps-service .crumbs a{color:var(--muted);text-decoration:none}.dps-service .crumbs a:hover{color:var(--ink)}
.dps-service .crumbs b{color:var(--text);font-weight:600}
/* HERO */
.dps-service .s-hero{background:linear-gradient(180deg,#F8FAFC 0%,var(--bg) 100%);padding:clamp(2rem,5vw,4.5rem) 0 clamp(4.5rem,8vw,7rem);position:relative}
.dps-service .s-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.dps-service .s-hero h1{font-family:var(--font-d);font-size:clamp(1.85rem,1.1rem+2.6vw,3rem);font-weight:800;line-height:1.08;letter-spacing:-.025em;color:var(--ink);margin:.5rem 0 1rem;text-wrap:balance}
.dps-service .s-hero h1 em{font-style:normal;color:#8A6A1F;background:linear-gradient(120deg,#8A6A1F,#C9A24A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.dps-service .s-hero .lead{font-size:1.05rem;color:var(--muted);max-width:56ch;line-height:1.6}
.dps-service .s-bullets{list-style:none;margin:1.1rem 0 0;padding:0;display:grid;gap:.45rem}
.dps-service .s-bullets li{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.95rem;color:var(--text)}
.dps-service .s-bullets svg{width:20px;height:20px;color:#fff;background:var(--gold);border-radius:50%;padding:3px;flex:none}
.dps-service .s-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}
.dps-service .s-proof{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;margin-top:1.1rem;font-size:.86rem;color:var(--muted)}
.dps-service .s-proof span{display:inline-flex;align-items:center;gap:.35rem}
.dps-service .s-proof svg{width:16px;height:16px;color:var(--gold)}
.dps-service .s-proof .rating i{font-style:normal;color:var(--gold)}
.dps-service .s-proof .rating b{color:var(--ink)}
.dps-service .s-hero-visual{position:relative;aspect-ratio:1.05;max-width:560px;margin-left:auto;width:100%}
.dps-service .s-hero-visual figure{margin:0;overflow:hidden;background:var(--mist);box-shadow:0 24px 60px rgba(11,20,32,.18)}
.dps-service .s-hero-visual img{width:100%;height:100%;object-fit:cover;display:block}
.dps-service .v-main{position:absolute;inset:0 8% 10% 0;border-radius:28px}
.dps-service .v-a{position:absolute;right:0;bottom:0;width:42%;aspect-ratio:1;border-radius:22px;border:6px solid #fff}
.dps-service .v-b{position:absolute;left:-4%;bottom:-2%;width:30%;aspect-ratio:1;border-radius:18px;border:5px solid #fff}
.dps-home .v-badge{position:absolute;top:6%;right:0;transform:translateX(18%);background:var(--ink);color:#fff;border-radius:999px;padding:.55rem .95rem .55rem .6rem;display:flex;align-items:center;gap:.55rem;box-shadow:0 12px 30px rgba(11,20,32,.3);font-size:.78rem;line-height:1.15}
.dps-home .v-badge svg{width:32px;height:32px;padding:7px;border-radius:50%;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1A1406;flex:none}
.dps-home .v-badge b{display:block;font-family:var(--font-d);font-size:.92rem}
/* BARRE CONTACT (chevauche le hero) */
.dps-service .s-contact{margin-top:calc(-1 * clamp(2.5rem,5vw,4rem));position:relative;z-index:2}
.dps-service .s-contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:0 20px 50px rgba(11,20,32,.10);display:grid;grid-template-columns:1.2fr 1fr auto;gap:var(--gap);align-items:center;padding:clamp(1.1rem,2.4vw,1.6rem) clamp(1.1rem,2.6vw,1.8rem)}
.dps-service .c-main strong{display:block;font-family:var(--font-d);font-size:1.12rem;color:var(--ink);margin:.25rem 0 .3rem;line-height:1.25}
.dps-service .c-main p{color:var(--muted);font-size:.9rem;line-height:1.5}
.dps-service .c-points{list-style:none;margin:0;padding:0 var(--gap);border-left:1px solid var(--line);display:grid;gap:.5rem;font-size:.9rem;font-weight:600}
.dps-service .c-points li{display:flex;gap:.5rem;align-items:center}
.dps-service .c-points svg{width:18px;height:18px;color:var(--gold);flex:none}
.dps-service .c-cta{display:grid;gap:.6rem;justify-items:stretch;min-width:240px}
.dps-service .big-tel{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-d);font-weight:800;font-size:1.35rem;color:#1A1406;text-decoration:none;letter-spacing:-.01em;padding:.75rem 1.2rem;border-radius:999px;background:linear-gradient(135deg,var(--gold-2),var(--gold));box-shadow:0 8px 22px rgba(201,162,74,.35)}
.dps-service .big-tel svg{width:22px;height:22px}
.dps-service .c-cta .btn{justify-content:center}
/* CARTES PANNES */
.dps-service .s-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.dps-service .s-card{position:relative;display:grid;gap:.55rem;align-content:start;padding:1.35rem;background:#fff;border:1px solid var(--line);border-radius:var(--r);text-decoration:none;color:var(--text);transition:border-color .2s,box-shadow .2s}
.dps-service .s-card:hover{border-color:var(--gold);box-shadow:0 14px 36px rgba(11,20,32,.10)}
.dps-service .s-card .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#EAF3F9;color:var(--water)}
.dps-service .s-card .ic svg{width:26px;height:26px}
.dps-service .s-card h3{font-family:var(--font-d);font-size:1.05rem;font-weight:700;color:var(--ink);line-height:1.25;margin:.2rem 0 0}
.dps-service .s-card p{color:var(--muted);font-size:.92rem;line-height:1.5}
.dps-service .s-card em{font-style:normal;font-weight:700;font-size:.85rem;color:var(--water);margin-top:.2rem}
.dps-service .s-card.urgent{background:linear-gradient(160deg,#FFF8E6,#fff);border-color:#E8D6A6}
.dps-service .s-card.urgent .ic{background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1A1406}
.dps-service .s-card.urgent em{color:#8A6A1F}
.dps-service .s-card .badge{position:absolute;top:1rem;right:1rem;background:var(--ink);color:#fff;font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .55rem;border-radius:999px}
/* ZIGZAG PRESTATIONS */
.dps-service .s-zig{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.4rem,4vw,3.5rem);align-items:center;padding:clamp(1.2rem,3vw,2.2rem) 0}
.dps-service .s-zig+.s-zig{border-top:1px solid var(--line)}
.dps-service .s-zig.rev .z-img{order:2}
.dps-service .z-img{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;background:var(--mist);box-shadow:0 18px 44px rgba(11,20,32,.12)}
.dps-service .z-img img{width:100%;height:100%;object-fit:cover;display:block}
.dps-service .z-txt{display:grid;gap:1.1rem}
.dps-service .z-item{display:flex;gap:.9rem;align-items:flex-start}
.dps-service .z-item .ic{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1A1406;display:grid;place-items:center;flex:none}
.dps-service .z-item .ic svg{width:20px;height:20px}
.dps-service .z-item h3{font-family:var(--font-d);font-size:1.08rem;font-weight:700;color:var(--ink);margin:0 0 .25rem;line-height:1.25}
.dps-service .z-item p{color:var(--muted);font-size:.95rem;line-height:1.55}
.dps-service .z-cta{margin-top:.4rem}
/* ÉTAPES */
.dps-service .s-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);counter-reset:s;position:relative}
.dps-service .s-steps li{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.5rem 1.3rem 1.3rem;display:grid;gap:.45rem;align-content:start}
.dps-service .s-steps .n{width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;font-family:var(--font-d);font-weight:800;display:grid;place-items:center;font-size:1rem;margin-bottom:.3rem}
.dps-service .s-steps li:not(:last-child)::after{content:"";position:absolute;top:2.7rem;right:calc(-1 * var(--gap));width:var(--gap);height:2px;background:linear-gradient(90deg,var(--gold),var(--line))}
.dps-service .s-steps h3{font-family:var(--font-d);font-size:1.02rem;font-weight:700;color:var(--ink);line-height:1.25}
.dps-service .s-steps p{color:var(--muted);font-size:.92rem;line-height:1.5}
/* BANDEAU PHOTO */
.dps-home .s-band{position:relative;isolation:isolate;color:#fff;padding:var(--sp) 0;overflow:hidden;background:var(--ink)}
.dps-home .s-band .band-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.55}
.dps-home .s-band::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(11,20,32,.95) 0%,rgba(11,20,32,.75) 55%,rgba(11,20,32,.35) 100%)}
.dps-home .band-in{max-width:640px}
.dps-home .band-in .eyebrow{color:var(--gold-2)}
.dps-home .band-in h2{font-family:var(--font-d);font-size:clamp(1.6rem,1rem+2vw,2.4rem);font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1.12;margin:.4rem 0 1.4rem}
.dps-home .band-list{list-style:none;margin:0 0 1.6rem;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.4rem}
.dps-home .band-list li{display:flex;gap:.8rem;align-items:flex-start}
.dps-home .band-list .ic{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;flex:none;color:var(--gold-2)}
.dps-home .band-list .ic svg{width:20px;height:20px}
.dps-home .band-list b{display:block;font-family:var(--font-d);font-size:1rem;margin-bottom:.15rem}
.dps-home .band-list p{color:rgba(255,255,255,.78);font-size:.9rem;line-height:1.5}
/* AVIS (widget partagé) */
.dps-reviews .reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.dps-reviews .rev{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.4rem;display:grid;gap:.8rem;align-content:start}
.dps-reviews .rev header{display:flex;align-items:center;gap:.7rem}
.dps-reviews .rev header>div{display:grid;line-height:1.2;flex:1;min-width:0}
.dps-reviews .rev header b{font-family:var(--font-d);font-size:.98rem;color:var(--ink)}
.dps-reviews .rev header small{color:var(--muted);font-size:.78rem}
.dps-reviews .avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#EAF3F9,#D7E0E7);color:var(--ink);font-family:var(--font-d);font-weight:800;display:grid;place-items:center;flex:none}
.dps-reviews .stars{color:var(--gold);letter-spacing:.05em;font-size:.9rem;white-space:nowrap}
.dps-reviews .rev p{color:var(--text);font-size:.95rem;line-height:1.6}
.dps-reviews .rev footer{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--muted)}
.dps-reviews .rev footer svg{width:14px;height:14px;color:var(--gold)}
.dps-reviews .rev-summary{margin:0;color:var(--muted)}
.dps-reviews .rev-summary b{color:var(--ink)}
.dps-reviews .rev-summary a{color:var(--water);font-weight:600}
/* FAQ 2 colonnes */
.dps-service .s-faq{display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr;gap:clamp(1.4rem,4vw,3.5rem);align-items:start}
.dps-service .faq-side{position:sticky;top:110px;display:grid;gap:1rem}
.dps-service .faq-side h2{font-family:var(--font-d);font-size:clamp(1.5rem,1rem+1.6vw,2.1rem);font-weight:800;color:var(--ink);letter-spacing:-.02em;line-height:1.15}
.dps-service .faq-img{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;background:var(--mist)}
.dps-service .faq-img img{width:100%;height:100%;object-fit:cover;display:block}
.dps-service .links{text-align:center;margin-top:1.6rem;color:var(--muted);font-size:.95rem}
.dps-service .links a{color:var(--ink);font-weight:600}
.dps-service .cta-tel{margin-top:1.2rem}
.dps-service .cta .small{margin-top:1rem;font-size:.85rem}
.dps-service .prod-grid{grid-template-columns:repeat(4,1fr)}
/* RESPONSIVE */
@media (max-width:1100px){.dps-service .prod-grid{grid-template-columns:repeat(2,1fr)}.dps-service .s-contact-card{grid-template-columns:1fr 1fr}.dps-service .c-cta{grid-column:1/-1;grid-template-columns:1fr 1fr}}
@media (max-width:980px){
  .dps-service .s-hero-grid{grid-template-columns:1fr;gap:1.6rem}
  .dps-service .s-hero-visual{max-width:none;aspect-ratio:16/11;margin:0}
  .dps-service .s-cards{grid-template-columns:repeat(2,1fr)}
  .dps-service .s-steps{grid-template-columns:repeat(2,1fr)}
  .dps-service .s-steps li:nth-child(2)::after{display:none}
  .dps-service .s-faq{grid-template-columns:1fr}
  .dps-service .faq-side{position:static}
  .dps-reviews .reviews{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .dps-service .s-hero{padding:1.4rem 0 3.6rem}
  .dps-service .s-hero-grid{gap:1.2rem}
  .dps-service .s-hero-visual{order:-1;aspect-ratio:4/3}
  .dps-service .v-main{inset:0;border-radius:18px}
  .dps-service .v-a{width:34%;border-width:4px;right:-2%;bottom:-6%}
  .dps-service .v-b{display:none}
  .dps-home .v-badge{top:auto;bottom:-14px;left:12px;right:auto;transform:none}
  .dps-service .s-hero h1{font-size:clamp(1.65rem,1.2rem+3.6vw,2.2rem)}
  .dps-service .s-actions .btn{width:100%;justify-content:center}
  .dps-service .s-contact{margin-top:-2.2rem}
  .dps-service .s-contact-card{grid-template-columns:1fr;padding:1.1rem}
  .dps-service .c-points{border-left:0;padding:0;border-top:1px solid var(--line);padding-top:.9rem}
  .dps-service .c-cta{grid-template-columns:1fr;min-width:0}
  .dps-service .s-cards{grid-template-columns:1fr}
  .dps-service .s-card{padding:1.1rem}
  .dps-service .s-zig{grid-template-columns:1fr;gap:1rem;padding:1.2rem 0}
  .dps-service .s-zig.rev .z-img{order:0}
  .dps-service .s-steps{grid-template-columns:1fr}
  .dps-service .s-steps li::after{display:none!important}
  .dps-home .band-list{grid-template-columns:1fr}
  .dps-reviews .reviews{grid-template-columns:1fr}
  .dps-service .sec-head h2,.dps-home .sec-head h2{font-size:clamp(1.5rem,1.1rem+3vw,2rem)}
}

/* v3.0.0 — performance : plus d'animation continue coûteuse (halo pulsé = repaint permanent), plus de flou de fond sur la barre. */
.dps-home .btn-xl,.btn-xl{animation:none!important}
.dps-home .btn-gold:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(201,162,74,.45)}
.dps-nav,.nav,.dps-home .dps-nav{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fff!important}
.dps-home .marquee ul{will-change:transform}

/* v3.0.0 — accueil : split photo/texte + mosaïque */
.dps-home .hp-split-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.6rem,4vw,4rem);align-items:center}
.dps-home .hp-split h2{font-family:var(--font-d);font-size:clamp(1.7rem,1.1rem+2vw,2.5rem);font-weight:800;letter-spacing:-.02em;line-height:1.12;color:var(--ink);margin:.4rem 0 .9rem}
.dps-home .hp-split .lead{color:var(--muted);font-size:1.02rem;line-height:1.6}
.dps-home .hp-points{list-style:none;margin:1.4rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.2rem}
.dps-home .hp-points li{display:flex;gap:.75rem;align-items:flex-start}
.dps-home .hp-points .ic{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1A1406;display:grid;place-items:center;flex:none}
.dps-home .hp-points .ic svg{width:20px;height:20px}
.dps-home .hp-points b{display:block;font-family:var(--font-d);font-size:.98rem;color:var(--ink);margin-bottom:.15rem}
.dps-home .hp-points p{color:var(--muted);font-size:.9rem;line-height:1.5}
.dps-home .hp-cta{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.5rem}
.dps-home .hp-mosaic{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:.8rem;aspect-ratio:1;max-width:540px;margin-left:auto;width:100%}
.dps-home .hp-mosaic figure{margin:0;border-radius:18px;overflow:hidden;background:var(--mist);box-shadow:0 14px 34px rgba(11,20,32,.12)}
.dps-home .hp-mosaic img{width:100%;height:100%;object-fit:cover;display:block}
.dps-home .hp-mosaic .m1{grid-row:1/3;border-radius:24px}
.dps-home .hp-mosaic .v-badge{position:absolute;left:-6%;bottom:8%;transform:none}
@media (max-width:980px){.dps-home .hp-split-grid{grid-template-columns:1fr}.dps-home .hp-mosaic{max-width:none;margin:0;aspect-ratio:16/10}}
@media (max-width:640px){.dps-home .hp-points{grid-template-columns:1fr}.dps-home .hp-mosaic{aspect-ratio:4/3;gap:.5rem}.dps-home .hp-mosaic .v-badge{left:8px;bottom:-14px}.dps-home .hp-cta .btn{width:100%;justify-content:center}}

/* v3.0.2 — badge : taille intrinsèque (enfant absolu d'une grille = zone entière sinon) */
.dps-home .v-badge{width:max-content!important;height:auto!important;max-width:calc(100% - 16px);top:auto;right:auto;align-self:start;justify-self:start}
.dps-service .s-hero-visual .v-badge{top:6%;right:0;left:auto;bottom:auto;transform:translateX(18%)}
@media (max-width:640px){.dps-service .s-hero-visual .v-badge{top:auto;bottom:-14px;left:12px;right:auto;transform:none}}

/* v3.0.3 — finitions : bouton contour visible, badge mobile sans chevauchement */
.dps-home .btn.btn-outline{background:transparent!important;color:var(--ink)!important;border:1.5px solid var(--ink)!important;box-shadow:none!important}
.dps-home .btn.btn-outline:hover{background:var(--ink)!important;color:#fff!important}
@media (max-width:640px){.dps-service .s-hero-visual{margin-bottom:1.4rem}}

/* v3.0.4 — blocs mobiles du thème Martfury (servis uniquement aux user-agents mobiles) : jamais affichés sur les pages DPS */
body.dps-home-tpl #colophon,body.dps-home-tpl .site-footer,body.dps-home-tpl #footer-widgets,body.dps-home-tpl .footer-widgets,body.dps-home-tpl .footer-links,body.dps-home-tpl .footer-info,body.dps-home-tpl .footer-newsletter,
body.dps-home-tpl .phone-footer-container,body.dps-home-tpl .numero-telephone,body.dps-home-tpl .menu-header-button-container,body.dps-home-tpl #btn-phone-rapide,
body.dps-home-tpl #mf-els-modal-mobile,body.dps-home-tpl .mf-els-modal-mobile,body.dps-home-tpl #mf-navigation-mobile,body.dps-home-tpl .mf-navigation-mobile,body.dps-home-tpl #mf-cart-mobile,body.dps-home-tpl #mf-category-mobile-nav,body.dps-home-tpl .primary-mobile-nav,body.dps-home-tpl .mf-els-item,
body.dps-home-tpl #mf-catalog-sorting,body.dps-home-tpl .mf-catalog-sorting-popup,body.dps-home-tpl .header-mobile,body.dps-home-tpl .mobile-menu,body.dps-home-tpl #message-purchased,body.dps-home-tpl #dpscb-bar,body.dps-home-tpl .dpscb-bar,body.dps-home-tpl .footer-recently-viewed{display:none!important}

/* v3.0.5 — reset minimal (les styles du thème sont retirés sur les templates DPS) */
body.dps-home-tpl{margin:0!important;padding-left:0!important;padding-right:0!important}
body.dps-home-tpl.mobile-version #page,body.dps-home-tpl.mobile-version #content,body.dps-home-tpl.mobile-version .site-content>.container,body.dps-home-tpl.mobile-version .site-content>.container>.row{margin:0!important;padding:0!important;max-width:none!important}

/* v3.0.6 — mobile : heros plus compacts, image remontée, espaces réduits */
@media (max-width:640px){
  /* accueil : hero 70 % de l'écran max, texte qui commence plus haut */
  .dps-home .hero{min-height:min(72svh,600px)!important;height:auto!important}
  .dps-home .hero .wrap{padding-top:clamp(7rem,24svh,12rem)!important;padding-bottom:2.2rem!important;gap:.7rem!important}
  .dps-home .hero-tabs{top:.7rem}
  /* pages services : fil d'Ariane compact, image collée sous la barre */
  .dps-service .crumbs-in{min-height:30px;font-size:.74rem;gap:.35rem}
  .dps-service .s-hero{padding:.7rem 0 3.2rem}
  .dps-service .s-hero-grid{gap:.9rem}
  .dps-service .s-hero-visual{margin-bottom:.4rem;aspect-ratio:16/11}
  .dps-service .v-a{width:32%;right:2%;bottom:3%}
  .dps-service .v-badge{bottom:10px;left:10px}
  .dps-service .s-hero h1{margin:.35rem 0 .7rem}
  .dps-service .s-bullets{margin-top:.8rem;gap:.35rem}
  .dps-service .s-actions{margin-top:1.1rem}
  .dps-service .s-proof{margin-top:.9rem}
  .dps-service .s-contact{margin-top:-2rem}
  /* barre supérieure mobile plus fine */
  .dps-home .dps-nav .dps-topbar .wrap{height:30px}
  .dps-home .dps-nav .dps-topbar{font-size:.78rem}
}

/* v3.1.0 — modèles de piscine */
.dps-service .s-models{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.dps-service .s-model{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:grid;grid-template-rows:auto 1fr;transition:box-shadow .2s,border-color .2s}
.dps-service .s-model:hover{border-color:var(--gold);box-shadow:0 14px 36px rgba(11,20,32,.10)}
.dps-service .s-model figure{margin:0;position:relative;aspect-ratio:2/1;background:var(--mist)}
.dps-service .s-model img{width:100%;height:100%;object-fit:cover;display:block}
.dps-service .s-model .city{position:absolute;left:.8rem;bottom:.8rem;display:inline-flex;align-items:center;gap:.35rem;background:rgba(11,20,32,.85);color:#fff;font-size:.74rem;font-weight:700;padding:.35rem .6rem;border-radius:999px}
.dps-service .s-model .city svg{width:14px;height:14px;color:var(--gold-2)}
.dps-service .s-model .body{padding:1.1rem 1.2rem 1.2rem;display:grid;gap:.45rem;align-content:start}
.dps-service .s-model h3{font-family:var(--font-d);font-size:1.08rem;font-weight:800;color:var(--ink);line-height:1.2}
.dps-service .s-model .dims{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;font-size:.86rem;color:#8A6A1F}
.dps-service .s-model .dims svg{width:16px;height:16px}
.dps-service .s-model p{color:var(--muted);font-size:.9rem;line-height:1.5}
.dps-service .s-model a{color:var(--water);font-weight:700;font-size:.86rem;text-decoration:none;margin-top:.2rem}
.dps-service .s-models-cta{margin-top:var(--gap);background:linear-gradient(135deg,#FFF8E6,#fff);border:1px solid #E8D6A6;border-radius:var(--r);padding:1.3rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.dps-service .s-models-cta b{font-family:var(--font-d);font-size:1.05rem;color:var(--ink)}
.dps-service .s-models-cta p{color:var(--muted);font-size:.92rem;margin-top:.2rem}
@media (max-width:980px){.dps-service .s-models{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.dps-service .s-models{grid-template-columns:1fr}.dps-service .s-models-cta .btn{width:100%;justify-content:center}}

/* ==========================================================================
 * v3.3.0 — PAGES INFO (qui sommes-nous, marques, partenaires) + ARCHIVES BOUTIQUE
 * ========================================================================== */
.dps-info .sec{padding:var(--sp) 0}.dps-info .sec.alt{background:var(--surface)}
.dps-info .crumbs{background:var(--surface);border-bottom:1px solid var(--line);font-size:.8rem;color:var(--muted)}
.dps-info .crumbs-in{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;min-height:38px}
.dps-info .crumbs a{color:var(--muted);text-decoration:none}.dps-info .crumbs b{color:var(--text);font-weight:600}
.dps-info .i-hero{background:linear-gradient(180deg,#F8FAFC,var(--bg));padding:clamp(2rem,5vw,4.5rem) 0 clamp(2rem,4vw,3rem)}
.dps-info .i-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.dps-info h1{font-family:var(--font-d);font-size:clamp(1.85rem,1.1rem+2.6vw,3rem);font-weight:800;line-height:1.08;letter-spacing:-.025em;color:var(--ink);margin:.5rem 0 1rem;text-wrap:balance}
.dps-info h1 em{font-style:normal;background:linear-gradient(120deg,#8A6A1F,#C9A24A);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.dps-info .lead{font-size:1.05rem;color:var(--muted);max-width:58ch;line-height:1.6}
.dps-info .s-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}
.dps-info .s-proof{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;margin-top:1rem;font-size:.86rem;color:var(--muted)}
.dps-info .s-proof span{display:inline-flex;align-items:center;gap:.35rem}.dps-info .s-proof svg{width:16px;height:16px;color:var(--gold)}.dps-info .s-proof .rating i{font-style:normal;color:var(--gold)}.dps-info .s-proof .rating b{color:var(--ink)}
.dps-info .s-bullets{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.45rem}
.dps-info .s-bullets li{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.95rem}
.dps-info .s-bullets svg{width:20px;height:20px;color:#fff;background:var(--gold);border-radius:50%;padding:3px;flex:none}
.dps-info .i-hero-img{margin:0;border-radius:28px;overflow:hidden;aspect-ratio:5/4;background:var(--mist);box-shadow:0 24px 60px rgba(11,20,32,.16)}
.dps-info .i-hero-img img{width:100%;height:100%;object-fit:cover;display:block}
.dps-info .i-stats{list-style:none;margin:clamp(1.6rem,4vw,3rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap)}
.dps-info .i-stats li{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.1rem 1.2rem;display:grid;gap:.1rem}
.dps-info .i-stats b{font-family:var(--font-d);font-size:1.7rem;font-weight:800;color:var(--ink);letter-spacing:-.02em}
.dps-info .i-stats span{color:var(--muted);font-size:.9rem}
.dps-info .i-logos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:var(--gap)}
.dps-info .i-logos li{background:#fff;border:1px solid var(--line);border-radius:16px;height:110px;display:grid;place-items:center;padding:1rem;transition:box-shadow .2s,border-color .2s}
.dps-info .i-logos li:hover{border-color:var(--gold);box-shadow:0 12px 30px rgba(11,20,32,.08)}
.dps-info .i-logos img{max-width:100%;max-height:70px;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.8;transition:filter .2s,opacity .2s}
.dps-info .i-logos li:hover img{filter:none;opacity:1}
.dps-info .i-blocks{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--gap)}
.dps-info .i-block{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.6rem;display:grid;gap:.6rem;align-content:start}
.dps-info .i-block .ic{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--gold-2),var(--gold));color:#1A1406;display:grid;place-items:center}
.dps-info .i-block .ic svg{width:24px;height:24px}
.dps-info .i-block h2{font-family:var(--font-d);font-size:1.2rem;font-weight:800;color:var(--ink);line-height:1.25}
.dps-info .i-block p{color:var(--muted);font-size:.96rem;line-height:1.6}
.dps-info .i-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.dps-info .i-gallery figure{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;background:var(--mist)}
.dps-info .i-gallery img{width:100%;height:100%;object-fit:cover;display:block}
.dps-info .i-content{max-width:760px;margin:0 auto;font-size:1.02rem;line-height:1.7;color:var(--text)}
.dps-info .i-cta{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(1.4rem,4vw,3rem);align-items:center;background:linear-gradient(160deg,#EAF3F9,#FFFFFF);border:1px solid var(--line);border-radius:var(--r);padding:clamp(1.4rem,3.5vw,2.6rem)}
.dps-info .i-cta h2{font-family:var(--font-d);font-size:clamp(1.4rem,1rem+1.6vw,2rem);font-weight:800;color:var(--ink);line-height:1.15;margin:.3rem 0 .6rem}
.dps-info .i-cta p{color:var(--muted)}.dps-info .i-cta .small{font-size:.85rem;margin-top:.9rem}
.dps-info .i-links{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.dps-info .i-links a{display:flex;align-items:center;justify-content:space-between;gap:.6rem;background:#fff;border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem;color:var(--ink);font-weight:700;text-decoration:none}
.dps-info .i-links a:hover{border-color:var(--gold)}.dps-info .i-links svg{width:16px;height:16px;color:var(--gold)}
/* boutique */
.dps-cat .cat-sub{padding:1rem 0 0}
.dps-cat .cat-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.dps-cat .cat-chips a{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.5rem .9rem;font-weight:600;font-size:.88rem;color:var(--ink);text-decoration:none}
.dps-cat .cat-chips span{background:var(--bg);border-radius:999px;padding:.1rem .45rem;font-size:.75rem;color:var(--muted)}
.dps-cat .cat-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem;color:var(--muted);font-size:.9rem}
.dps-cat .cat-toolbar select{border:1.5px solid var(--line);border-radius:10px;padding:.5rem .8rem;font-size:.9rem;background:#fff}
.dps-cat .cat-grid{grid-template-columns:repeat(4,1fr)}
.dps-cat .prod{position:relative}
.dps-cat .prod-img{display:block;aspect-ratio:1;background:#fff;border-radius:14px;overflow:hidden}
.dps-cat .prod-img img{width:100%;height:100%;object-fit:contain;display:block}
.dps-cat .prod .badge{position:absolute;top:.8rem;left:.8rem;background:var(--gold);color:#1A1406;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .55rem;border-radius:999px}
.dps-cat .prod h3{font-family:var(--font-d);font-size:.95rem;font-weight:700;line-height:1.3;min-height:2.6em}
.dps-cat .prod h3 a{color:var(--ink);text-decoration:none}
.dps-cat .prod .price{font-family:var(--font-d);font-weight:800;color:var(--ink);font-size:1.05rem}
.dps-cat .prod .btn{justify-content:center;font-size:.85rem;padding:.7rem 1rem}
.dps-cat .cat-pager{margin-top:2rem}.dps-cat .cat-pager ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}
.dps-cat .cat-pager a,.dps-cat .cat-pager span{display:inline-block;padding:.55rem .9rem;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);text-decoration:none;font-weight:600;font-size:.9rem}
.dps-cat .cat-pager .current{background:var(--ink);color:#fff;border-color:var(--ink)}
.dps-cat .cat-empty{text-align:center;color:var(--muted);padding:2rem 0}
@media (max-width:1100px){.dps-cat .cat-grid{grid-template-columns:repeat(3,1fr)}.dps-info .i-logos{grid-template-columns:repeat(4,1fr)}}
@media (max-width:900px){.dps-info .i-hero-grid{grid-template-columns:1fr;gap:1.4rem}.dps-info .i-hero-img{aspect-ratio:16/10}.dps-info .i-stats{grid-template-columns:repeat(2,1fr)}.dps-info .i-blocks{grid-template-columns:1fr}.dps-info .i-cta{grid-template-columns:1fr}.dps-cat .cat-grid{grid-template-columns:repeat(2,1fr)}.dps-info .i-gallery{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.dps-info .i-hero{padding:1.2rem 0 1.8rem}.dps-info .i-hero-img{order:-1;aspect-ratio:4/3;border-radius:18px}.dps-info .s-actions .btn{width:100%;justify-content:center}.dps-info .i-logos{grid-template-columns:repeat(3,1fr);gap:.6rem}.dps-info .i-logos li{height:84px;padding:.7rem}.dps-info .i-stats{gap:.6rem}.dps-info .i-stats li{padding:.9rem 1rem}.dps-info .i-stats b{font-size:1.4rem}.dps-cat .cat-grid{grid-template-columns:repeat(2,1fr);gap:.7rem}.dps-cat .prod{padding:.7rem}.dps-cat .prod h3{font-size:.85rem}.dps-cat .cat-toolbar{flex-direction:column;align-items:flex-start}.dps-info .i-gallery{grid-template-columns:1fr 1fr;gap:.6rem}}

/* v3.3.2 — boutique : tri simple, chips compactes */
.dps-cat .cat-order{display:flex;align-items:center;gap:.5rem;font-size:.88rem;color:var(--muted)}
.dps-cat .cat-sub{padding:.6rem 0 0}
.dps-cat #produits{padding-top:1.6rem}
.dps-cat .woocommerce-ordering,.dps-cat .woocommerce-result-count{display:none!important}
