/* Dorina — v18/v19 · composants (Sur mesure, commande express, configurateur) au style « Atelier » de la v17.
   Les polices et le style global viennent de v17.css ; ce fichier ne fait que compléter. */

:root{
  --blanc:#FFFFFF;--chaux:#F4EEE6;--ivoire:#EAE3DA;--sable:#E6DCCF;--encre:#1C1410;--pierre:#6B5E54;--brume:#A89888;--ligne:#E2D7CA;--ligne2:#D8CCBE;
  --argile:#8A5A35;--detroit:#2F45C4;--laiton:#8A5A35;--or:#C9A27A;--noyer:#3A2A20;--brun:#2A1F18;--texte:#4A3D34;--ok:#0F7A3F;--wa:#0F7A3F;--wa2:#0B6332;
  --gut:20px;
}
@media(min-width:900px){:root{--gut:48px}}
body{font-variant-numeric:lining-nums}

/* ── Logo : le « O » est un miroir ── */
.logo-w{display:inline-flex;align-items:center;font-family:var(--f-d);font-weight:800;letter-spacing:.06em;margin-right:0}
.logo-w>span{display:inline-flex;align-items:center}
.logo-o{width:.66em;height:.94em;margin:0 .04em 0 .02em;transform:translateY(-.02em);color:var(--argile)}
.hd.over:not(.solid) .logo-o,.ft .logo-o{color:var(--or)}
.logo-d{font-size:10px;letter-spacing:.2em;text-transform:uppercase}

/* ═════════ v18 : bases ═════════ */
.l18{color:var(--encre)}
.l18 p{max-width:none}
.l18-w{max-width:1280px;margin:0 auto;padding:0 var(--gut)}
.l18-sec{padding:56px 0}
.l18-pt{padding-top:28px}.l18-pt0{padding-top:0}
.l18-white{background:var(--blanc)}.l18-sand{background:var(--ivoire)}
.l18-center{text-align:center}
.l18 h2{font-size:36px;line-height:1.06;margin:0 0 22px}
.l18-h1{font-size:42px;line-height:1.04;margin:0}
.l18-k{font:600 11px/1.4 var(--f-u);letter-spacing:.22em;text-transform:uppercase;margin:0 0 12px;color:var(--pierre)}
.l18-k-b{color:var(--argile)}.l18-k-g{color:var(--or)}
.l18-lead{font-size:16px;line-height:1.65;color:var(--texte);margin-top:16px}
.l18-note{margin-top:22px;font-size:13px;color:var(--pierre);text-align:center}
.l18-note a{text-decoration:underline}
.l18-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 26px;font:600 12px/1 var(--f-u);letter-spacing:.16em;text-transform:uppercase;border:1px solid transparent;cursor:pointer;text-align:center;transition:background .25s,color .25s}
.l18-btn-ink{background:var(--encre);color:var(--chaux)}.l18-btn-ink:hover{background:var(--noyer)}
.l18-btn-ivory{background:var(--chaux);color:var(--encre)}.l18-btn-ivory:hover{background:#fff}
.l18-btn-line-l{border-color:var(--or);color:var(--chaux)}.l18-btn-line-l:hover{background:var(--or);color:var(--encre)}
.l18-chip{min-height:44px;padding:0 16px;border:1px solid var(--ligne2);background:transparent;font:600 13px var(--f-u);color:var(--encre);cursor:pointer}
.l18-chip.on{border-color:var(--encre);background:var(--encre);color:var(--chaux)}
.l18-hint{margin-top:14px;font-size:12px;background:rgba(247,243,236,.92);color:var(--encre);padding:8px 10px}
.l18-hint.dark{background:var(--ivoire)}
.mir{display:block;overflow:visible}
.sil{display:block;fill:var(--encre);opacity:.15}

/* ── Héros plein écran ── */
.l18-hero{position:relative;height:100svh;min-height:600px;max-height:920px;overflow:hidden;background:var(--noyer);color:var(--chaux)}
.l18-hero-m,.l18-hero-m picture{position:absolute;inset:0;display:block}
.l18-hero-m img,.l18-hero-m video,.l18-hero-m svg{width:100%;height:100%;object-fit:cover;display:block}
.l18-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(34,26,20,.28) 0,rgba(34,26,20,0) 22%,rgba(34,26,20,0) 42%,rgba(34,26,20,.8) 100%);pointer-events:none}
.l18-hero-t{position:absolute;z-index:1;left:var(--gut);right:var(--gut);bottom:36px}
.l18-hero .l18-k{color:#E6D3B3}
.l18-hero h1{font-size:46px;line-height:1.02;margin:0;color:#FFFDF9}
.l18-hero-p{margin:16px 0 24px;font-size:15px;line-height:1.6;color:#EADFD0;max-width:460px}
.l18-reassure{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 10px;padding:16px;border-bottom:1px solid var(--ligne);font-size:12px;color:var(--pierre);text-align:center;margin:0}
.l18-reassure i{color:var(--laiton);font-style:normal}

/* ── Collection ── */
.l18-tabs{display:flex;overflow-x:auto;gap:22px;padding:0 var(--gut);margin:6px 0 22px;border-bottom:1px solid var(--ligne);scrollbar-width:none}
.l18-tabs::-webkit-scrollbar{display:none}
.l18-tab{flex-shrink:0;background:none;border:0;border-bottom:1px solid transparent;margin-bottom:-1px;padding:12px 0;min-height:46px;font:600 11px var(--f-u);letter-spacing:.16em;text-transform:uppercase;color:var(--brume);cursor:pointer}
.l18-tab span{font-weight:500;letter-spacing:0;margin-left:2px}
.l18-tab.on{color:var(--encre);border-bottom-color:var(--encre)}
.l18-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 12px}
.l18-card{display:flex;flex-direction:column;gap:3px;color:var(--encre)}
.l18-card[hidden]{display:none}
.l18-ph{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:var(--ivoire);margin-bottom:10px}
.l18-ph img{width:100%;height:100%;object-fit:cover;transition:opacity .5s,transform .8s}
.l18-ph .l18-ph2{position:absolute;inset:0;opacity:0}
@media(hover:hover){.l18-card:hover .l18-ph.two .l18-ph2{opacity:1}.l18-card:hover .l18-ph img{transform:scale(1.02)}}
.l18-draw{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:14%}
.l18-draw .mir{width:auto;height:auto;max-width:100%;max-height:100%;filter:drop-shadow(0 12px 14px rgba(60,40,25,.22))}
.l18-tag{position:absolute;left:8px;top:8px;background:rgba(247,243,236,.92);padding:5px 8px;font:600 10px var(--f-u);letter-spacing:.12em;text-transform:uppercase;color:var(--pierre)}
.l18-tag-b{color:var(--argile)}
.l18-card.off .l18-ph img{opacity:.6}
.l18-cn{font:500 21px/1.1 var(--f-d);letter-spacing:.08em;text-transform:uppercase}
.l18-cp{font-size:14px}.l18-cp b{font-weight:600}.l18-cp s{font-size:12px;color:var(--brume)}
.l18-cs{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:12px;color:var(--pierre)}
.l18-cs i{width:11px;height:11px;border-radius:50%;box-shadow:0 0 0 1px var(--ligne2)}
.l18-cs-t{font-family:var(--f-d);font-style:italic;font-size:15px;color:var(--texte)}

/* ── Sur mesure (bandeau) ── */
.l18-perso{display:grid;background:var(--blanc)}
.l18-perso-m{aspect-ratio:4/5;overflow:hidden;background:var(--ivoire)}
.l18-perso-m img,.l18-perso-m svg{width:100%;height:100%;object-fit:cover;display:block}
.l18-perso-t{padding:36px var(--gut) 48px}
.l18-perso-t p{font-size:15px;line-height:1.65;color:var(--texte)}
.l18-duo{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--ligne);margin:22px 0}
.l18-duo>div{padding:14px 0;text-align:center}.l18-duo>div+div{border-left:1px solid var(--ligne)}
.l18-duo dt{font:500 30px/1.1 var(--f-d)}.l18-duo dd{margin:2px 0 0;font:600 10px var(--f-u);letter-spacing:.16em;text-transform:uppercase;color:var(--pierre)}
.l18-trio{grid-template-columns:repeat(3,1fr)}

/* ── Matière ── */
.l18-two{display:grid;gap:28px}
.l18-roman{list-style:none;counter-reset:r;padding:0;margin:0;display:grid;gap:14px}
.l18-roman li{counter-increment:r;position:relative;padding-left:44px;font-size:15px;line-height:1.6}
.l18-roman li::before{content:counter(r,upper-roman);position:absolute;left:0;top:-2px;font:500 22px/1.2 var(--f-d);color:var(--laiton)}
.l18-mat{aspect-ratio:4/3;overflow:hidden;background:#B8956C}
.l18-mat img,.l18-mat svg{width:100%;height:100%;object-fit:cover;display:block}

/* ── Avis ── */
.l18-rate{display:flex;justify-content:center;align-items:center;gap:8px;font-size:14px;margin:0 0 18px}
.l18-rate .d17-stars{color:var(--laiton)}
.l18-quotes{display:grid;gap:26px}
.l18-quotes figure{margin:0}
.l18-quotes blockquote{margin:0;font:italic 500 24px/1.3 var(--f-d)}
.l18-quotes figcaption{margin-top:10px;font:600 11px var(--f-u);letter-spacing:.18em;text-transform:uppercase;color:var(--pierre)}
.l18-ugc{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:28px}
.l18-ugc img{width:100%;aspect-ratio:1;object-fit:cover}

/* ── Étapes ── */
.l18-steps{list-style:none;counter-reset:s;padding:0;margin:0;border-top:1px solid var(--ligne)}
.l18-steps li{counter-increment:s;display:grid;grid-template-columns:40px 1fr;gap:2px 10px;padding:16px 0;border-bottom:1px solid var(--ligne)}
.l18-steps li::before{content:counter(s);grid-row:span 2;font:500 26px/1 var(--f-d);color:var(--laiton)}
.l18-steps b{font-size:15px}.l18-steps span{font-size:14px;color:var(--pierre)}

/* ── Atelier ── */
.l18-atelier{background:var(--encre);color:var(--chaux);padding-bottom:52px}
.l18-at-m{aspect-ratio:16/10;overflow:hidden;margin-bottom:36px}
.l18-at-m img,.l18-at-m video{width:100%;height:100%;object-fit:cover;display:block}
.l18-atelier .l18-w{padding-top:0}
.l18-atelier:not(:has(.l18-at-m)) .l18-w{padding-top:52px}
.l18-atelier h2{color:#FFFDF9}
.l18-atelier p:not(.l18-k){color:#D9CDBF;font-size:15px;line-height:1.65;margin:0 0 24px}

/* ── FAQ & détails ── */
.l18-faq details,.c18-det{border-top:1px solid var(--ligne)}
.l18-faq details:last-child{border-bottom:1px solid var(--ligne)}
.l18-faq summary,.c18-det summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:58px;font-size:15px;font-weight:600}
.l18-faq summary::-webkit-details-marker,.c18-det summary::-webkit-details-marker{display:none}
.l18-faq summary::after,.c18-det summary::after{content:"+";font:400 22px var(--f-u);color:var(--laiton)}
.l18-faq details[open] summary::after,.c18-det[open] summary::after{content:"–"}
.l18-faq details p,.c18-det p{margin:0 0 18px;font-size:14px;line-height:1.65;color:var(--texte)}

/* ── Barre du bas (téléphone) ── */
.l18-bar{position:fixed;left:0;right:0;bottom:0;z-index:45;display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(247,243,236,.97);border-top:1px solid var(--ligne);transform:translateY(110%);transition:transform .3s}
.l18-bar.show,.c18-bar{transform:none}
.l18-bar .l18-btn{flex:1}
.l18-bar-wa{width:54px;height:54px;flex-shrink:0;border:1px solid var(--encre);display:flex;align-items:center;justify-content:center;color:var(--encre)}
body.home .cbar,body.p18 .cbar{bottom:84px}
body.home .ft,body.p18 .ft{padding-bottom:90px}

/* ═════════ Commande express (feuille du bas) ═════════ */
.q18{position:fixed;inset:0;z-index:200}
.q18-scrim{position:absolute;inset:0;background:rgba(34,26,20,.5);opacity:0;transition:opacity .25s}
.q18-sheet{position:absolute;left:0;right:0;bottom:0;max-height:94vh;overflow-y:auto;background:var(--chaux);padding:10px 20px calc(22px + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .3s cubic-bezier(.22,.61,.36,1);box-shadow:0 -10px 30px rgba(0,0,0,.18)}
.q18.open .q18-scrim{opacity:1}.q18.open .q18-sheet{transform:none}
html.q18-on{overflow:hidden}
.q18-grab{display:block;width:44px;height:4px;background:var(--ligne2);margin:0 auto 12px}
.q18-hd{display:flex;justify-content:space-between;align-items:center}
.q18-t{font:500 28px var(--f-d);margin:0}
.q18-x{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:0;cursor:pointer;color:var(--encre)}
.q18-item{display:flex;gap:14px;align-items:center;padding:12px 0 16px;border-bottom:1px solid var(--ligne);margin-bottom:14px}
.q18-img{width:54px;height:68px;background:var(--ivoire);flex-shrink:0;overflow:hidden}.q18-img img{width:100%;height:100%;object-fit:cover}
.q18-n{flex:1;min-width:0}.q18-n b{display:block;font:500 20px var(--f-d);letter-spacing:.06em;text-transform:uppercase}.q18-n small{font-size:12px;color:var(--pierre)}
.q18-p{font-size:16px;font-weight:600;white-space:nowrap}
.q18-l{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;font:600 10px var(--f-u);letter-spacing:.16em;text-transform:uppercase;color:var(--pierre)}
.q18-l em{text-transform:none;letter-spacing:0;font-style:normal;font-weight:400}
.q18-l input,.q18-l select{min-height:52px;border:1px solid var(--ligne2);background:var(--blanc);padding:0 14px;font:500 16px var(--f-u);color:var(--encre);border-radius:0;width:100%;box-sizing:border-box;letter-spacing:0;text-transform:none;-webkit-appearance:none;appearance:none}
.q18-l select{background-image:linear-gradient(45deg,transparent 50%,var(--encre) 50%),linear-gradient(135deg,var(--encre) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat}
.q18-l input:focus,.q18-l select:focus{outline:none;border-color:var(--encre)}
.q18-tel{display:flex}.q18-tel>span{display:flex;align-items:center;padding:0 12px;border:1px solid var(--ligne2);border-right:0;background:var(--ivoire);font:600 15px var(--f-u);color:var(--encre);letter-spacing:0}
.q18-info{font-size:13px;line-height:1.5;color:var(--texte);margin:4px 0 0}
.q18-err{margin:10px 0 0;font-size:14px;font-weight:600;color:#9B2C1F}
.q18-btn{width:100%;min-height:56px;margin-top:16px;border:0;background:var(--encre);color:var(--chaux);font:600 12px var(--f-u);letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.q18-btn:disabled{opacity:.6}
.q18-fine{margin:10px 0 0;font-size:11px;line-height:1.5;color:var(--pierre);text-align:center}
@media(min-width:700px){
  .q18-sheet{left:50%;right:auto;bottom:50%;width:460px;transform:translate(-50%,60%);opacity:0;transition:transform .3s,opacity .25s;padding:18px 28px 26px}
  .q18.open .q18-sheet{transform:translate(-50%,50%);opacity:1}
  .q18-grab{display:none}
}

/* ═════════ Configurateur sur mesure ═════════ */
.l18-bc{padding-top:14px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.l18-bc a{color:var(--pierre)}
.c18-g{display:grid;gap:20px;padding-bottom:40px}
.c18-gal{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:0}
.c18-gal::-webkit-scrollbar{display:none}
.c18-gal figure{flex:0 0 100%;margin:0;scroll-snap-align:start;aspect-ratio:4/5;overflow:hidden;background:var(--ivoire);position:relative}
.c18-gal figure img,.c18-gal figure video{width:100%;height:100%;object-fit:cover}
.c18-scale{background:#E6DACB!important}
.c18-floor{position:absolute;left:0;right:0;bottom:0;height:13%;background:#C7B39C;border-top:5px solid #F1EADF}
.c18-row{position:absolute;left:0;right:0;bottom:13%;display:flex;align-items:flex-end;justify-content:center;gap:34px;transform-origin:bottom center;transform:scale(.82)}
.c18-row .sil{opacity:.2}
#c18-mir{display:block;filter:drop-shadow(0 14px 18px rgba(60,40,25,.28));transition:margin .2s}
.c18-tagl{position:absolute;left:12px;top:12px;z-index:1;background:rgba(247,243,236,.92);padding:6px 9px;font:600 10px var(--f-u);letter-spacing:.12em;text-transform:uppercase}
.c18-swipe{margin:8px var(--gut) 0;font-size:12px;color:var(--pierre);text-align:right}
.c18-c{padding:0 var(--gut)}
.c18-n{font-size:48px;line-height:1;letter-spacing:.08em;margin:0;text-transform:uppercase}
.c18-tl{margin:6px 0 0;font:italic 500 20px/1.3 var(--f-d);color:var(--pierre)}
.c18-price{margin:22px 0 6px;padding:16px 18px;background:var(--encre);color:var(--chaux)}
.c18-price span{display:block;font:600 10px var(--f-u);letter-spacing:.18em;text-transform:uppercase;color:var(--or)}
.c18-price b{display:block;font:500 38px/1.15 var(--f-d)}
.c18-price small{font-size:12px;color:#CDBFAE}
.c18-f{border:0;padding:0;margin:22px 0 0}
.c18-f legend{display:flex;justify-content:space-between;width:100%;padding:0;margin-bottom:10px;font:600 11px var(--f-u);letter-spacing:.16em;text-transform:uppercase}
.c18-f legend span{letter-spacing:0;text-transform:none;font-weight:500;color:var(--pierre)}
.c18-chips{display:flex;flex-wrap:wrap;gap:8px}
.c18-dims{display:flex;align-items:flex-start;gap:10px;margin-top:12px}
.c18-dims label{flex:1;display:flex;flex-direction:column;gap:4px;font:600 10px var(--f-u);letter-spacing:.16em;text-transform:uppercase;color:var(--pierre)}
.c18-dims input{min-height:54px;border:1px solid var(--ligne2);background:var(--blanc);text-align:center;font:500 26px var(--f-d);color:var(--encre);border-radius:0;width:100%;box-sizing:border-box}
.c18-dims small{font-size:11px;letter-spacing:0;text-transform:none;font-weight:500}
.c18-dims>span{font:500 24px var(--f-d);padding-top:30px}
.c18-sw{display:flex;flex-wrap:wrap;gap:10px}
.c18-swb{width:48px;height:48px;border-radius:50%;border:1px solid var(--ligne2);padding:5px;background:none;cursor:pointer}
.c18-swb i{display:block;width:100%;height:100%;border-radius:50%}
.c18-swb.on{border:1.5px solid var(--encre)}
.c18-form{margin-top:28px;padding-top:20px;border-top:1px solid var(--ligne)}
.c18-legend{font:600 11px var(--f-u);letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px}
.c18-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.c18-ok{margin-top:28px;padding:26px 20px;background:var(--blanc);border:1px solid var(--ligne);text-align:center}
.c18-ok h2{font-size:32px;margin:12px 0 8px}
.c18-ok p{font-size:15px;line-height:1.6;color:var(--texte);margin:0 0 20px}
.c18-ok-i{display:inline-flex;width:58px;height:58px;border:1px solid var(--laiton);border-radius:50%;align-items:center;justify-content:center;color:var(--laiton)}
.c18-det:first-of-type{margin-top:30px}
.c18-bar{justify-content:space-between;align-items:center}
.c18-bar-p{display:flex;flex-direction:column}.c18-bar-p b{font-size:17px}.c18-bar-p small{font-size:11px;color:var(--pierre)}
.c18-bar .l18-btn{flex:0 0 auto;min-width:160px}

/* ═════════ Tablette & ordinateur ═════════ */
@media(min-width:700px){
  .l18 h2{font-size:46px}
  .l18-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 22px}
  .l18-grid-p{grid-template-columns:repeat(2,minmax(0,1fr))}
  .l18-quotes{grid-template-columns:repeat(3,1fr);text-align:left}
  .l18-ugc{grid-template-columns:repeat(6,1fr)}
  .l18-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0 28px;border-top:0}
  .l18-steps-4{grid-template-columns:repeat(4,1fr)}
  .l18-steps li{border-top:1px solid var(--encre);border-bottom:0}
}
@media(min-width:1000px){
  .l18-sec{padding:96px 0}
  .l18-hero h1{font-size:84px}
  .l18-hero-t{left:max(48px,calc(50% - 592px));right:auto;bottom:72px;max-width:660px}
  .l18-hero-p{font-size:17px}
  .l18-hero-t .l18-btn{display:inline-flex}
  .l18-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .l18-grid-p{grid-template-columns:repeat(3,minmax(0,1fr))}
  .l18-perso{grid-template-columns:1fr 1fr;align-items:center}
  .l18-perso-m{aspect-ratio:auto;height:100%;min-height:620px}
  .l18-perso-t{padding:64px max(48px,6vw);max-width:620px}
  .l18-perso-t .l18-btn{display:inline-flex}
  .l18-two{grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .l18-top{align-items:end}
  .l18-h1{font-size:64px}
  .l18-faq{max-width:820px}
  .l18-atelier .l18-w{max-width:820px;text-align:center}
  .l18-atelier .l18-btn{display:inline-flex}
  .l18-at-m{aspect-ratio:21/9}
  .l18-bar:not(.c18-bar){display:none}
  .c18-bar{display:none}
  .c18-g{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;max-width:1280px;margin:0 auto;padding:12px var(--gut) 80px}
  .c18-v{position:sticky;top:100px;align-self:start}
  .c18-gal{display:grid;grid-template-columns:1fr 1fr;gap:10px;overflow:visible}
  .c18-gal figure:first-child{grid-column:1/-1;aspect-ratio:16/11}
  .c18-row{transform:scale(1)}
  .c18-swipe{display:none}
  .c18-c{padding:0}
  .c18-n{font-size:64px}
  body.home .cbar,body.p18 .cbar{bottom:16px}
  body.home .ft,body.p18 .ft{padding-bottom:0}
}


/* ═════════ v19 : retour au style Atelier pour les composants v18 ═════════ */
.l18 h2,.l18-h1,.c18-n,.q18-t,.c18-price b,.l18-duo dt,.l18-hero h1,.c18-ok h2{font-family:var(--f-d);font-weight:800;letter-spacing:-.02em}
.l18 h2 i,.l18-h1 i,.l18-hero h1 i{font-style:normal;color:var(--argile)}
.l18-cn,.q18-n b{font-family:var(--f-d);font-weight:800;letter-spacing:.01em;font-size:20px}
.l18-cs-t{font-family:var(--f-u);font-style:normal;font-size:14px}
.c18-tl{font-family:var(--f-u);font-style:normal;font-size:16px}
.c18-n{font-size:44px;letter-spacing:0}
.l18-btn,.q18-btn{border-radius:999px;font:700 16px/1 var(--f-u);letter-spacing:0;text-transform:none}
.l18-chip{border-radius:999px;border-width:1.5px;background:#fff}
.l18-tab{font:700 14px var(--f-u);letter-spacing:0;text-transform:none}
.l18-ph,.c18-gal figure,.l18-mat,.l18-perso-m{border-radius:18px}
.l18-tag{border-radius:999px;font-size:11px;letter-spacing:.04em}
.q18-sheet{border-radius:22px 22px 0 0}
.q18-l,.c18-dims label,.c18-f legend,.c18-legend{font:700 14px var(--f-u);letter-spacing:0;text-transform:none;color:var(--encre)}
.q18-l input,.q18-l select,.c18-dims input{border-radius:12px}
.q18-tel>span{border-radius:12px 0 0 12px}.q18-tel input{border-radius:0 12px 12px 0!important}
.c18-dims input{font:800 24px var(--f-d)}
.c18-price{border-radius:16px}
.c18-price b{font-size:34px}
.c18-swb{width:46px;height:46px}
.c18-ok{border-radius:18px}
.c18-tagl{border-radius:999px}
.l18-duo{border-radius:14px;border:1px solid var(--ligne)}
.l18-steps li::before{font-family:var(--f-d);font-weight:800}
@media(min-width:700px){.q18-sheet{border-radius:22px}}

/* ── Accueil : bandeau Sur mesure ── */
.d19-pm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.d19-pm-c{display:flex;flex-direction:column;gap:4px;background:var(--chaux);border-radius:18px;padding:14px;color:var(--encre)}
.d19-pm-m{display:flex;align-items:center;justify-content:center;aspect-ratio:4/5;border-radius:12px;background:var(--sable);overflow:hidden;margin-bottom:8px}
.d19-pm-m img{width:100%;height:100%;object-fit:cover}
.d19-pm-c b{font:800 19px var(--f-d)}.d19-pm-c span:last-child{font-size:14px;color:var(--pierre)}
@media(min-width:900px){.d19-pm{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}}

/* ── Confiance ── */
.d19-trust{background:#fff}
.d19-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:22px}
.d19-stats div{background:var(--encre);color:#fff;border-radius:16px;padding:18px}
.d19-stats b{display:block;font:800 30px/1.1 var(--f-d)}.d19-stats span{font-size:13px;color:#D9CDBF}
.d19-g{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:12px}
.d19-g li{display:grid;grid-template-columns:48px 1fr;gap:2px 14px;background:var(--chaux);border-radius:16px;padding:16px 18px}
.d19-i{grid-row:span 2;width:48px;height:48px;border-radius:50%;background:#fff;color:var(--argile);display:grid;place-items:center}
.d19-g b{font-size:16px}.d19-g li>span:last-child{font-size:14px;line-height:1.5;color:var(--texte)}
.d19-who{display:grid;gap:16px;margin-top:22px}
.d19-founder{margin:0;display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center;background:var(--sable);border-radius:18px;padding:18px}
.d19-founder img,.d19-av{width:96px;height:96px;border-radius:50%;object-fit:cover}
.d19-av{display:grid;place-items:center;background:var(--encre);color:var(--or);font:800 36px var(--f-d)}
.d19-founder blockquote{margin:0 0 10px;font-size:16px;line-height:1.55}
.d19-founder b{display:block;font:800 18px var(--f-d)}.d19-founder figcaption>span{font-size:13px;color:var(--pierre)}
.d19-contact{background:var(--chaux);border-radius:18px;padding:20px}
.d19-contact p{font-size:15px;line-height:1.6;margin:0}
.d19-contact .d17-k{margin-bottom:8px}
.d19-legal{margin-top:10px!important;font-size:12px!important;color:var(--pierre)}
.d19-contact .d17-btns{margin-top:18px}
@media(min-width:700px){
  .d19-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
  .d19-g{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1000px){
  .d19-g{grid-template-columns:repeat(3,minmax(0,1fr))}
  .d19-who{grid-template-columns:1.2fr 1fr;align-items:stretch}
  .d19-founder{grid-template-columns:150px 1fr;padding:26px}
  .d19-founder img,.d19-av{width:150px;height:150px}
  .d19-founder blockquote{font-size:19px}
}
.d19-pm-m .mir{max-width:72%;max-height:82%;width:auto;height:auto;filter:drop-shadow(0 10px 12px rgba(60,40,25,.22))}
.logo-o{width:.7em}

/* ═════════ v20 : collection, haut de page, à la commande, réassurance ═════════ */
/* Haut de page plein écran : vidéo, photo ou diaporama de vos photos produit */
.h20{position:relative;min-height:560px;height:min(88svh,860px);display:flex;align-items:flex-end;overflow:hidden;background:var(--sable)}
.h20-m{position:absolute;inset:0}
.h20-m video,.h20-m img,.h20-m picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.h20-slide{opacity:0;transition:opacity 1.8s ease;animation:h20kb 14s ease-in-out infinite alternate}
.h20-slide.on{opacity:1}
@keyframes h20kb{from{transform:scale(1)}to{transform:scale(1.08)}}
@media(prefers-reduced-motion:reduce){.h20-slide{animation:none;transition:none}}
.h20.has-m::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,20,16,.05) 30%,rgba(28,20,16,.78) 100%);pointer-events:none}
.h20-t{position:relative;z-index:1;width:100%;padding-bottom:48px}
.h20 h1{font-size:clamp(40px,7vw,88px);line-height:.98;margin:0;max-width:820px}
.h20-p{font-size:17px;line-height:1.6;margin-top:16px;max-width:560px;color:var(--texte)}
.h20.has-m .d17-k{color:#EAD7B9}.h20.has-m h1{color:#fff}.h20.has-m .h20-p{color:#EFE6DA}
.h20-b1{background:var(--encre);color:#fff}.h20-b2{border:2px solid var(--encre);color:var(--encre)}
.h20.has-m .h20-b1{background:#fff;color:var(--encre)}.h20.has-m .h20-b2{border-color:#fff;color:#fff}
.h20-proof{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px;font-size:14px;color:var(--texte)}
.h20.has-m .h20-proof{color:#EFE6DA}.h20.has-m .d17-stars{color:#E9C46A}
@media(max-width:600px){.h20{height:84svh;min-height:520px}.h20-t{padding-bottom:28px}.h20-p{font-size:15px}.h20 .d17-btn{width:100%}}

/* Cartes : une par finition, la photo d'abord, rien par-dessus sauf un badge discret */
.d20-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 12px}
@media(min-width:700px){.d20-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 20px}}
@media(min-width:1100px){.d20-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.d20-card{background:none;border-radius:0;overflow:visible}
.d20-m{position:relative;display:block;aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:var(--sable)}
.d20-m>img{width:100%;height:100%;object-fit:cover;transition:opacity .5s,transform .9s}
.d20-m .d20-m2{position:absolute;inset:0;opacity:0}
@media(hover:hover){.d20-m.two:hover .d20-m2{opacity:1}.d20-m:hover>img{transform:scale(1.03)}}
.d20-draw{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:12%}
.d20-draw .mir{width:auto;height:auto;max-width:100%;max-height:100%;filter:drop-shadow(0 14px 16px rgba(60,40,25,.25))}
.d20-badge{position:absolute;left:10px;top:10px;background:rgba(255,255,255,.92);color:var(--encre);font-size:11px;font-weight:700;padding:5px 10px;border-radius:999px}
.d20-badge.off{color:var(--pierre)}
.is-off .d20-m>img{opacity:.55}
.d20-b{display:flex;flex-direction:column;gap:3px;padding-top:12px;color:var(--encre)}
.d20-n{font:800 19px/1.1 var(--f-d);letter-spacing:.03em;text-transform:uppercase}
.d20-f{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--pierre)}
.d20-f i{width:11px;height:11px;border-radius:50%;box-shadow:0 0 0 1px var(--ligne2);flex-shrink:0}
.d20-p{font-size:15px}.d20-p b{font-weight:700}.d20-p s{font-size:12px;color:var(--brume)}

/* Accueil : collections à la commande */
.d20-cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(min-width:900px){.d20-cats{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}}
.d20-cat{display:flex;flex-direction:column;gap:3px;color:var(--encre)}
.d20-cat-m{display:flex;align-items:center;justify-content:center;aspect-ratio:3/4;border-radius:14px;overflow:hidden;background:var(--sable);margin-bottom:10px}
.d20-cat-m img{width:100%;height:100%;object-fit:cover}
.d20-cat-m .mir{max-width:70%;max-height:80%;width:auto;height:auto}
.d20-cat b{font:800 20px var(--f-d)}.d20-cat span{font-size:14px;color:var(--texte);line-height:1.45}.d20-cat em{font-style:normal;font-size:13px;font-weight:700;color:var(--argile);margin-top:4px}

/* Pages à la commande */
.p20-hero{position:relative;min-height:420px;display:flex;align-items:flex-end;background:var(--sable);overflow:hidden}
.p20-hero.has-m{min-height:min(76svh,720px)}
.p20-hero-m{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.p20-hero.has-m::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,20,16,.05) 25%,rgba(28,20,16,.8) 100%)}
.p20-hero-t{position:relative;z-index:1;width:100%;padding-top:48px;padding-bottom:40px}
.p20-hero h1{font-size:clamp(38px,6vw,76px);line-height:1;margin:0;max-width:860px}
.p20-lead{font-size:17px;line-height:1.6;margin:14px 0 22px;max-width:620px;color:var(--texte)}
.p20-hero.has-m .d17-k{color:#EAD7B9}.p20-hero.has-m h1{color:#fff}.p20-hero.has-m .p20-lead{color:#EFE6DA}.p20-hero.has-m .d17-btn{background:#fff;color:var(--encre)}
.p20-promise{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:-1px auto 0;padding-top:18px;padding-bottom:6px}
.p20-promise li{background:#fff;border-radius:14px;padding:14px}
.p20-promise b{display:block;font:800 17px var(--f-d)}.p20-promise span{font-size:13px;color:var(--pierre);line-height:1.4}
@media(min-width:900px){.p20-promise{grid-template-columns:repeat(4,minmax(0,1fr))}}
.p20-list{padding-top:36px}
.p20-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:26px;scrollbar-width:none}
.p20-tabs a{flex-shrink:0;min-height:44px;display:inline-flex;align-items:center;padding:0 18px;border-radius:999px;border:1.5px solid var(--ligne2);background:#fff;font-weight:700;font-size:14px;color:var(--encre)}
.p20-tabs a.on{background:var(--encre);border-color:var(--encre);color:#fff}
.p20-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 12px}
@media(min-width:700px){.p20-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 20px}}
@media(min-width:1100px){.p20-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.p20-card{display:flex;flex-direction:column;gap:3px;color:var(--encre)}
.p20-ph{position:relative;display:block;aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:var(--sable);margin-bottom:10px}
.p20-ph img{width:100%;height:100%;object-fit:cover;transition:opacity .5s}.p20-ph .p20-ph2{position:absolute;inset:0;opacity:0}
@media(hover:hover){.p20-card:hover .p20-ph2{opacity:1}}
.p20-draw{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:12%}
.p20-draw .mir{width:auto;height:auto;max-width:100%;max-height:100%;filter:drop-shadow(0 14px 16px rgba(60,40,25,.25))}
.p20-cat{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--argile)}
.p20-n{font:800 19px/1.1 var(--f-d);letter-spacing:.03em;text-transform:uppercase}
.p20-s{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--pierre)}.p20-s i{width:11px;height:11px;border-radius:50%;box-shadow:0 0 0 1px var(--ligne2)}
.p20-p{font-size:15px;font-weight:700}
.p20-empty{padding:30px;background:#fff;border-radius:16px;text-align:center}.p20-empty a{text-decoration:underline}
.p20-own{background:#fff}
.p20-own-g{display:grid;gap:26px}
@media(min-width:1000px){.p20-own-g{grid-template-columns:1.2fr 1fr;gap:56px;align-items:center}}
.p20-own p{font-size:16px;line-height:1.6;color:var(--texte)}
.p20-own-s{list-style:none;counter-reset:o;padding:0;margin:0;display:grid;gap:10px}
.p20-own-s li{counter-increment:o;display:grid;grid-template-columns:40px 1fr;gap:2px 12px;background:var(--chaux);border-radius:14px;padding:14px 16px}
.p20-own-s li::before{content:counter(o);grid-row:span 2;width:36px;height:36px;border-radius:50%;background:var(--encre);color:#fff;display:grid;place-items:center;font:800 16px var(--f-d)}
.p20-own-s b{font-size:16px}.p20-own-s span{font-size:14px;color:var(--pierre)}
/* Fiche d'un modèle à la commande */
.p20-bc{padding-top:14px;padding-bottom:10px;font-size:14px;font-weight:600}.p20-bc a{color:var(--pierre)}
.p20-pdp{display:grid;gap:22px;padding-bottom:40px}
@media(min-width:1000px){.p20-pdp{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px}.p20-buy{position:sticky;top:96px;align-self:start}}
.p20-gal{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;scrollbar-width:none;margin:0 calc(-1 * var(--gut));padding:0 var(--gut)}
.p20-gal::-webkit-scrollbar{display:none}
.p20-gal figure{flex:0 0 88%;margin:0;scroll-snap-align:center;aspect-ratio:4/5;border-radius:16px;overflow:hidden;background:var(--sable)}
.p20-gal figure img,.p20-gal figure video{width:100%;height:100%;object-fit:cover}
.p20-gal-d{display:flex;align-items:center;justify-content:center}
.p20-gal-d .mir{max-width:72%;max-height:86%;width:auto;height:auto;filter:drop-shadow(0 18px 22px rgba(60,40,25,.28))}
@media(min-width:1000px){.p20-gal{display:grid;grid-template-columns:1fr 1fr;overflow:visible;margin:0;padding:0}.p20-gal figure{flex:none}.p20-gal figure:first-child{grid-column:1/-1}}
.p20-buy h1{font-size:clamp(36px,5vw,56px);line-height:1;margin:4px 0 0;letter-spacing:.01em;text-transform:uppercase}
.p20-tl{margin:6px 0 0;font-size:15px;color:var(--pierre)}
.p20-hook{margin:14px 0 0;font:700 18px/1.4 var(--f-d);color:var(--argile)}
.p20-price{display:flex;align-items:baseline;gap:12px;margin-top:18px}.p20-price b{font:800 34px var(--f-d)}.p20-price span{font-size:14px;color:var(--pierre)}
.p20-pay{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.p20-pay>div{background:#fff;border-radius:14px;padding:12px 14px}
.p20-pay>div:first-child{background:var(--encre);color:#fff}
.p20-pay span{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.75}
.p20-pay b{display:block;font:800 22px var(--f-d)}.p20-pay small{font-size:12px;opacity:.75}
.p20-f{border:0;padding:0;margin:20px 0 0}.p20-f legend{padding:0;margin-bottom:10px;font-weight:700;font-size:14px}.p20-f legend span{font-weight:500;color:var(--pierre)}
.p20-chips{display:flex;flex-wrap:wrap;gap:8px}
.p20-sw{display:flex;flex-wrap:wrap;gap:10px}
.p20-swb{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--ligne2);padding:5px;background:none;cursor:pointer}.p20-swb i{display:block;width:100%;height:100%;border-radius:50%}
.p20-swb.on{border-color:var(--encre)}
.p20-form{margin-top:22px;padding:18px;background:#fff;border-radius:18px}
.p20-legend{font-weight:700;font-size:15px;margin:0 0 12px}
.p20-go{width:100%;margin-top:6px}
.p20-fine{margin:10px 0 0;font-size:12px;line-height:1.5;color:var(--pierre);text-align:center}
.p20-ok{margin-top:22px}
.p20-acc{margin-top:24px}
.p20-mat{margin:0 0 16px;padding-left:18px;font-size:14px;line-height:1.7;color:var(--texte)}

/* Bloc de réassurance */
.r20{padding:20px 0 10px}
.r20-hook{font:800 clamp(26px,3.6vw,40px)/1.15 var(--f-d);text-align:center;max-width:860px;margin:10px auto 26px}
.r20-g{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:10px}
@media(min-width:700px){.r20-g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.r20-g{grid-template-columns:repeat(4,minmax(0,1fr))}}
.r20-g li{display:grid;grid-template-columns:44px 1fr;gap:2px 12px;background:#fff;border-radius:16px;padding:16px}
.r20-i{grid-row:span 2;width:44px;height:44px;border-radius:50%;background:var(--chaux);color:var(--argile);display:grid;place-items:center}
.r20-g b{font-size:15px}.r20-g li>span:last-child{font-size:13px;line-height:1.45;color:var(--pierre)}
.r20-sec{margin-top:48px}
.r20-sec h2{font-size:clamp(28px,3.6vw,44px);line-height:1.05;margin:0 0 22px}
.r20-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:900px){.r20-steps{grid-template-columns:repeat(6,minmax(0,1fr))}}
.r20-steps li{display:flex;flex-direction:column;gap:6px;background:#fff;border-radius:16px;padding:14px}
.r20-ph{display:block;aspect-ratio:4/5;border-radius:10px;overflow:hidden;background:var(--sable);margin-bottom:6px}.r20-ph img{width:100%;height:100%;object-fit:cover}
.r20-n{width:30px;height:30px;border-radius:50%;background:var(--encre);color:#fff;display:grid;place-items:center;font:800 14px var(--f-d)}
.r20-steps b{font-size:15px}.r20-steps li>span:last-child{font-size:13px;line-height:1.45;color:var(--pierre)}
.r20-pack{display:grid;gap:20px;align-items:center}
@media(min-width:900px){.r20-pack{grid-template-columns:1fr 1fr;gap:48px}}
.r20-pack-m{aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:var(--sable)}.r20-pack-m img,.r20-pack-m svg{width:100%;height:100%;object-fit:cover;display:block}
.r20-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.r20-list li{position:relative;padding-left:30px;font-size:15px;line-height:1.5}
.r20-list li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:50%;background:var(--ok)}
.r20-list li::after{content:"";position:absolute;left:5px;top:8px;width:7px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.r20-rv{display:grid;gap:12px}
@media(min-width:900px){.r20-rv{grid-template-columns:repeat(3,minmax(0,1fr))}}
.r20-rv figure{margin:0;background:#fff;border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:10px}
.r20-rv blockquote{margin:0;font-size:15px;line-height:1.55}
.r20-rv figcaption{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--pierre);margin-top:auto}.r20-rv figcaption img{width:40px;height:40px;border-radius:50%;object-fit:cover}.r20-rv figcaption b{color:var(--encre)}
.pdp-sec+.wrap .r20,.wrap>.r20{padding-top:32px}

/* Mode page d'atterrissage (?lp=1) : pas de menu ni de pied de page */
body.lp .hd-nav,body.lp .hd-burger,body.lp .hd-pro,body.lp .hd-act [data-open="srch"],body.lp .ft-in,body.lp .ft-seo,body.lp .ft-news,body.lp .p20-tabs{display:none!important}
@media(max-width:600px){.p20-gal{margin:0 -16px;padding:0 16px}}

/* v20.3 — vidéos clients : rangée qu'on fait glisser (au lieu d'une grille de 9 vidéos empilées) */
.d17-reels{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}
.d17-reels::-webkit-scrollbar{display:none}
.d17-reels figure{scroll-snap-align:start}
@media(max-width:900px){.d17-reels{grid-template-columns:none;grid-auto-columns:40%}}
@media(max-width:560px){.d17-reels{grid-template-columns:none;grid-auto-columns:64%;gap:10px}}
