/*! Voltez Events · conception et développement : Rodolphe Thomas (Rod Services) · © 2026 · Tous droits réservés. Reproduction ou réutilisation interdite sans autorisation écrite. */
/* Catalogue de location : s'appuie sur les variables du thème Voltez */
.vzc{margin-top:24px;padding-bottom:40px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Barre d'outils */
.vzc-outils{border-top:1px solid var(--filet);border-bottom:1px solid var(--filet);padding:20px 0;margin-bottom:56px;display:grid;gap:18px}
.vzc-filtres{display:flex;flex-wrap:wrap;gap:8px}
.vzc button:not(:where(.vz-cal-panneau button)){font:400 14px/1 Poppins,sans-serif;color:var(--os);background:none;border:1px solid var(--filet);border-radius:var(--r-btn);padding:11px 16px;cursor:pointer;transition:border-color .15s ease-out,color .15s,background .15s}
.vzc button:not(:where(.vz-cal-panneau button)):hover:not(:disabled){border-color:#5a5f63;color:var(--blanc)}
.vzc button:not(:where(.vz-cal-panneau button)):disabled{opacity:.35;cursor:default}
.vzc .vzc-filtre[aria-pressed=true],.vzc-taxe [aria-pressed=true]{border-color:var(--blanc);color:var(--blanc)}
.vzc-reglages{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center}
.vzc-recherche{flex:1 1 280px}
.vzc-recherche input{width:100%;background:#000;color:var(--blanc);border:1px solid var(--filet);border-radius:var(--r-btn);padding:12px 14px;font:300 15px Poppins,sans-serif}
.vzc-recherche input:focus{outline:none;border-color:var(--blanc)}
.vzc-recherche input::placeholder{color:var(--fer)}
.vzc-duree{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--cendre)}
.vzc-stepper,.vzc-qte{display:inline-flex;align-items:center;border:1px solid var(--filet);border-radius:var(--r-btn)}
.vzc .vzc-stepper button,.vzc .vzc-qte button{border:0;padding:10px 14px;font-size:16px}
.vzc-jours{min-width:68px;text-align:center;color:var(--blanc);font-size:14px}
.vzc-taxe{display:inline-flex;gap:6px}
.vzc .vzc-taxe button{padding:10px 14px}
.vzc-note{margin:0;font-size:13px;color:var(--cendre)}
.vzc-note a{color:var(--os)}

/* Rayons */
.vzc-rayon{margin-bottom:80px;padding:0}
.vzc-rayon > h2{font:500 clamp(30px,3.4vw,46px)/1.05 Biarty,sans-serif;letter-spacing:-.03em;color:var(--blanc);margin:0 0 28px!important}
.vzc-groupe{margin-bottom:44px}
.vzc-groupe > h3{font:400 15px Poppins,sans-serif!important;color:var(--cendre)!important;letter-spacing:0!important;margin:0 0 16px!important;padding-bottom:12px;border-bottom:1px solid var(--filet)}
.vzc-grille{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.vzc-rayon[data-rayon=packs] .vzc-grille{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Article */
.vzc-article{display:flex;flex-direction:column;border:1px solid var(--filet);border-radius:var(--r-carte);overflow:hidden}
.vzc-article[hidden],.vzc-groupe[hidden],.vzc-rayon[hidden]{display:none}
.vzc-visuel{position:relative;aspect-ratio:1/1;background:#fff;display:grid;place-items:center;overflow:hidden}
.vzc-rayon[data-rayon=packs] .vzc-visuel{aspect-ratio:3/1}
.vzc-visuel img{position:absolute;inset:16px;width:calc(100% - 32px)!important;height:calc(100% - 32px)!important;max-width:none;object-fit:contain;mix-blend-mode:multiply;border:0!important;border-radius:0!important}
.vzc-sans-photo{background:radial-gradient(closest-side,rgba(223,4,125,.16),transparent 75%),#000;border-bottom:1px solid var(--filet)}
.vzc-sans-photo span{font:400 clamp(13px,1.2vw,16px)/1.3 Onder,sans-serif;color:var(--os);text-align:center;letter-spacing:.02em}
.vzc-badge{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;gap:8px;background:#000;color:var(--blanc);border-radius:999px;padding:6px 12px;font-size:12px}
.vzc-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange)}
.vzc-corps{display:flex;flex-direction:column;gap:10px;padding:18px 18px 20px;flex:1}
.vzc-corps h4{font:400 15px/1.4 Poppins,sans-serif;color:var(--blanc);margin:0}
.vzc-desc{margin:0!important;font-size:13px;line-height:1.55;color:var(--cendre)!important}
.vzc-prix{margin:auto 0 0!important;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;padding-top:6px}
.vzc-des{font-size:13px;color:var(--cendre)}
.vzc-montant{font:500 24px/1 Biarty,sans-serif;letter-spacing:-.02em;color:var(--blanc)}
.vzc-unite{font-size:12px;color:var(--cendre)}
.vzc-action{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.vzc .vzc-ajouter{width:100%;padding:11px 12px;font-size:13px}
.vzc-qte output{min-width:28px;text-align:center;color:var(--blanc);font-size:14px}
.vzc-ajoute{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--os)}
.vzc-ajoute::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange)}

/* Grille des coefficients */
.vzc-coefficients{border-top:1px solid var(--filet);padding-top:24px;margin-bottom:40px}
.vzc-coefficients summary{cursor:pointer;color:var(--blanc);font:400 16px Poppins,sans-serif}
.vzc-coefficients p{font-size:14px;color:var(--cendre)!important;max-width:680px;margin:16px 0}
.vzc-table{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid var(--filet);border-radius:var(--r-btn);overflow:hidden}
.vzc-table span{display:flex;justify-content:space-between;gap:8px;padding:9px 12px;font-size:13px;color:var(--os);border-bottom:1px solid var(--filet);border-right:1px solid var(--filet)}
.vzc-table b{font-weight:300;color:var(--cendre)}

/* Barre de sélection */
.vzc-panier{position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(0,0,0,.86);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--filet)}
.vzc-panier .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;max-width:none!important}
.vzc-panier-resume{margin:0!important;font-size:15px;color:var(--os)}
.vzc-panier-resume b{font-weight:400;color:var(--blanc)}
.vzc-panier-resume span{display:block;font-size:12px;color:var(--cendre)}
.vzc-panier-actions{display:flex;gap:10px;align-items:center}
.vzc .vzc-panier .btn{padding:12px 18px}
body:has(.vzc-panier:not([hidden])) .pied{padding-bottom:110px}
.vzc-vide{border:1px solid var(--filet);border-radius:var(--r-btn);padding:18px 20px;max-width:680px}

/* Sélection rappelée sur la page contact */
.vzd-selection{border:1px solid var(--filet);border-radius:var(--r-carte);padding:22px 24px;margin:0 0 36px}
.vzd-selection-titre{margin:0 0 10px!important;color:var(--blanc)!important;font-weight:400}
.vzd-selection ul{margin:0 0 12px;padding:0;list-style:none;font-size:14px}
.vzd-selection li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--filet)}
.vzd-selection li:last-child{border-bottom:0}
.vzd-retirer{flex:none;min-height:32px;padding:4px 12px;border:1px solid var(--filet);border-radius:999px;background:transparent;color:inherit;font:400 13px Poppins,sans-serif;cursor:pointer}
.vzd-retirer:hover,.vzd-retirer:focus-visible{border-color:#DF047D;color:#DF047D;outline:none}
.vzd-selection-total{margin:0!important;font-size:14px;color:var(--cendre)!important}

@media (max-width:1000px){
  .vzc-grille{grid-template-columns:repeat(3,minmax(0,1fr))}
  .vzc-table{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:640px){
  .vzc-grille,.vzc-rayon[data-rayon=packs] .vzc-grille{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .vzc-corps{padding:14px 12px 14px}
  .vzc-montant{font-size:20px}
  .vzc-filtres{flex-wrap:nowrap;overflow-x:auto;margin:0 -16px;padding:0 16px 4px;scrollbar-width:none}
  .vzc-filtres button{flex:none}
  .vzc-panier .wrap{flex-direction:column;align-items:stretch;gap:10px}
  .vzc-panier-actions{justify-content:space-between}
  .vzc-panier-actions .btn{flex:1;justify-content:center}
  .vzc-table{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:420px){
  .vzc-rayon[data-rayon=packs] .vzc-grille{grid-template-columns:1fr}
}

/* ---------- Lien des cartes vers la fiche ---------- */
.vzc-corps h4 a{color:inherit;text-decoration:none}
.vzc-corps h4 a:hover{text-decoration:underline;text-decoration-color:var(--filet);text-underline-offset:4px}
a.vzc-visuel{text-decoration:none}

/* ---------- Fiche produit ---------- */
.vzc-page{padding:120px 0 40px}
.vzc-ariane{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--cendre);margin-bottom:28px}
.vzc-ariane a{color:var(--cendre);text-decoration:none}
.vzc-ariane a:hover{color:var(--blanc)}
.vzc-ariane [aria-current]{color:var(--os)}
.vzc-fiche{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:start;margin:0}
.vzc-fiche-visuel{position:sticky;top:100px;aspect-ratio:1/1;background:#fff;border-radius:var(--r-carte);overflow:hidden;display:grid;place-items:center}
.vzc-fiche-visuel img{position:absolute;inset:7%;width:86%;height:86%;object-fit:contain;mix-blend-mode:multiply}
.vzc-fiche-visuel.vzc-sans-photo{background:radial-gradient(closest-side,rgba(223,4,125,.18),transparent 75%),#000;border:1px solid var(--filet)}
.vzc-fiche-visuel.vzc-sans-photo span{font:400 clamp(18px,2vw,28px)/1.3 Onder,sans-serif;color:var(--os)}
.vzc-fiche-meta{display:flex;gap:18px;margin:0 0 14px;font-size:14px;color:var(--cendre)}
.vzc-fiche-achat h1{font-size:clamp(32px,3.4vw,50px);margin-bottom:18px}
.vzc-fiche-accroche{color:var(--os);font-size:17px;max-width:46ch;margin:0 0 28px}
.vzc-fiche-prix{border-top:1px solid var(--filet);padding-top:24px;margin-bottom:24px}
.vzc-fiche-prix .vzc-prix{padding:0;margin:0}
.vzc-fiche-prix .vzc-montant{font-size:44px}
.vzc-fiche-prix .vzc-unite{font-size:15px}
.vzc-fiche-ttc{margin:6px 0 0;font-size:14px;color:var(--cendre)}
.vzc-fiche-reglages{display:flex;flex-wrap:wrap;gap:18px 24px;margin-bottom:22px}
.vzc-champ-fiche{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--cendre)}
.vzc-champ-fiche input{background:#000;color:var(--blanc);border:1px solid var(--filet);border-radius:var(--r-btn);padding:10px 12px;font:300 15px Poppins,sans-serif;color-scheme:dark}
.vzc-champ-fiche input:focus{outline:none;border-color:var(--blanc)}
.vzc-qte-val{min-width:40px;text-align:center;color:var(--blanc);font-size:15px}
.vzc-fiche-total{margin:0 0 18px;font-size:15px;color:var(--os)}
.vzc-fiche-total b{font-weight:500;color:var(--blanc)}
.vzc-fiche-total span{color:var(--cendre);font-size:14px}
.vzc-fiche-boutons{display:flex;flex-wrap:wrap;gap:12px}
.vzc .vzc-fiche-ajouter{background:var(--blanc);color:#000;border-color:var(--blanc);padding:14px 22px;font-size:15px}
.vzc .vzc-fiche-ajouter:hover{background:transparent;color:var(--blanc)}
.vzc-fiche-etat{min-height:1.5em;margin:14px 0 0;font-size:14px;color:var(--os)}
.vzc-fiche-etat:not(:empty)::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--orange);margin-right:10px;vertical-align:middle}
.vzc-rassurance{list-style:none;padding:0;margin:28px 0 0;border-top:1px solid var(--filet)}
.vzc-rassurance li{padding:14px 0;border-bottom:1px solid var(--filet);font-size:14px;color:var(--cendre)}
.vzc-rassurance b{font-weight:400;color:var(--os)}
.vzc-fiche-details{display:grid;gap:64px;max-width:820px;margin:96px 0 0}
.vzc-bloc,.vzc-associes{padding:0}
.vzc-bloc h2{font:500 clamp(26px,2.6vw,36px)/1.1 Biarty,sans-serif;letter-spacing:-.03em;color:var(--blanc);margin:0 0 22px}
.vzc-texte{color:var(--os);max-width:68ch}
.vzc-texte p{margin:0 0 1em}
.vzc-specs{margin:0;border-top:1px solid var(--filet)}
.vzc-specs div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:24px;padding:14px 0;border-bottom:1px solid var(--filet);font-size:15px}
.vzc-specs dt{color:var(--cendre)}
.vzc-specs dd{margin:0;color:var(--os)}
.vzc-inclus{margin:0;padding:0;list-style:none;border-top:1px solid var(--filet)}
.vzc-inclus li{padding:12px 0 12px 22px;border-bottom:1px solid var(--filet);position:relative;color:var(--os);font-size:15px}
.vzc-inclus li::before{content:"";position:absolute;left:0;top:22px;width:10px;height:1px;background:var(--orange)}
.vzc-associes{margin:110px 0 40px}
.vzc-associes > h2{font:500 clamp(26px,2.6vw,36px)/1.1 Biarty,sans-serif;letter-spacing:-.03em;color:var(--blanc);margin:0 0 24px}

@media (max-width:900px){
  .vzc-fiche{grid-template-columns:minmax(0,1fr);gap:32px}
  .vzc-fiche-visuel{position:relative;top:0;max-height:70vh}
  .vzc-fiche-details{margin-top:64px}
}
@media (max-width:640px){
  .vzc-page{padding-top:100px}
  .vzc-specs div{grid-template-columns:1fr;gap:2px}
  .vzc-fiche-prix .vzc-montant{font-size:36px}
  .vzc-fiche-boutons > *{flex:1;justify-content:center}
}

/* Quantités en parc */
.vzc-indispo{font-size:13px;color:var(--cendre);padding:11px 0}
.vzc-parc{font-size:13px;color:var(--cendre)}
.vzc button:not(:where(.vz-cal-panneau button)):disabled{opacity:.35;cursor:default}

/* ---------- Animations du catalogue ---------- */
/* Catégorie choisie : le bouton se remplit */
.vzc .vzc-filtre{transition:background .25s ease-out,color .25s ease-out,border-color .25s ease-out,transform .2s ease-out}
.vzc .vzc-filtre[aria-pressed=true]{background:var(--blanc);color:#000;border-color:var(--blanc)}
.vzc .vzc-filtre:active{transform:scale(.96)}
.vzc-taxe [aria-pressed=true]{background:var(--blanc);color:#000!important}

/* Articles qui entrent en cascade après un filtre ou une recherche */
@keyframes vzcEntre{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}
.vzc-article.vzc-entre{animation:vzcEntre .55s cubic-bezier(.2,.7,.2,1) backwards;animation-delay:calc(var(--i,0) * 40ms)}

/* Cartes : élévation et zoom de la photo au survol */
.vzc-article{transition:border-color .2s ease-out,transform .3s cubic-bezier(.2,.7,.2,1)}
.vzc-article:hover{border-color:#5a5f63;transform:translateY(-4px)}
.vzc-visuel img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.vzc-article:hover .vzc-visuel img{transform:scale(1.06)}

/* Ajout à la sélection : la carte s'illumine */
@keyframes vzcPulse{0%{box-shadow:0 0 0 0 rgba(235,95,41,.55);border-color:var(--orange)}100%{box-shadow:0 0 0 14px rgba(235,95,41,0);border-color:var(--filet)}}
.vzc-article.vzc-pulse{animation:vzcPulse .7s ease-out}
.vzc-point-vol{position:fixed;z-index:60;width:12px;height:12px;border-radius:50%;background:var(--orange);box-shadow:0 0 18px rgba(235,95,41,.8);pointer-events:none}

/* Prix qui changent : petit défilement vertical */
@keyframes vzcTic{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.vzc-tic{display:inline-block;animation:vzcTic .35s cubic-bezier(.2,.7,.2,1)}
.vzc-fiche-total.vzc-tic{display:block}

/* Barre de sélection : glisse depuis le bas, le résumé rebondit quand il change */
@keyframes vzcPanier{from{transform:translateY(100%)}to{transform:none}}
.vzc-panier:not([hidden]){animation:vzcPanier .5s cubic-bezier(.2,.8,.2,1)}
@keyframes vzcRebond{0%{transform:scale(1)}35%{transform:scale(1.06)}100%{transform:scale(1)}}
.vzc-rebond{animation:vzcRebond .45s cubic-bezier(.3,.7,.3,1);transform-origin:left center}

/* Fiche : bouton validé */
@keyframes vzcValide{0%{box-shadow:0 0 0 0 rgba(235,95,41,.6)}100%{box-shadow:0 0 0 16px rgba(235,95,41,0)}}
.vzc .vzc-valide{animation:vzcValide .7s ease-out}

@media (prefers-reduced-motion:reduce){
  .vzc-article,.vzc-article:hover,.vzc-article:hover .vzc-visuel img{transform:none!important}
  .vzc-entre,.vzc-pulse,.vzc-tic,.vzc-rebond,.vzc-valide,.vzc-panier:not([hidden]){animation:none!important}
}

/* ---------- Barre des catégories : collante, pastille qui glisse, compteurs ---------- */
.vzc-repere{height:1px;margin-bottom:-1px}
.vzc-barre{position:sticky;top:76px;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;margin:0 0 4px;background:transparent;transition:background .25s ease-out,box-shadow .25s ease-out}
body.admin-bar .vzc-barre{top:108px}
.vzc-barre.colle{background:rgba(0,0,0,.86);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 1px 0 var(--filet),-50vw 0 0 rgba(0,0,0,.86),50vw 0 0 rgba(0,0,0,.86)}
.vzc-filtres{position:relative;isolation:isolate}
.vzc-pastille{position:absolute;left:0;top:0;z-index:-1;border-radius:var(--r-btn);background:var(--blanc);transition:transform .45s cubic-bezier(.65,0,.25,1),width .45s cubic-bezier(.65,0,.25,1)}
.vzc .vzc-filtre{display:inline-flex;align-items:center;gap:8px;background:transparent!important}
.vzc .vzc-filtre[aria-pressed=true]{color:#000;border-color:transparent}
.vzc-nb{font-size:11px;line-height:1;padding:3px 6px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--cendre);transition:background .3s,color .3s}
.vzc-filtre[aria-pressed=true] .vzc-nb{background:rgba(0,0,0,.1);color:#000}
.vzc-compte{flex:none;font-size:14px;color:var(--cendre);white-space:nowrap}
.vzc-outils{border-top:0}

/* Arrivée des articles, nettement plus visible */
@keyframes vzcEntre{from{opacity:0;transform:translateY(42px) scale(.94);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
.vzc-article.vzc-entre{animation:vzcEntre .7s cubic-bezier(.16,.8,.24,1) backwards;animation-delay:calc(var(--i,0) * 55ms + 40ms)}
/* Titre du rayon dévoilé de gauche à droite */
@keyframes vzcTitre{from{clip-path:inset(0 100% 0 0);transform:translateX(-12px)}to{clip-path:inset(0 0 0 0);transform:none}}
.vzc-rayon > h2.vzc-titre-entre{animation:vzcTitre .7s cubic-bezier(.65,0,.25,1)}

@media (max-width:640px){
  .vzc-barre{flex-direction:column;align-items:stretch;gap:6px;padding:8px 0}
  .vzc-compte{font-size:12px}
}
@media (prefers-reduced-motion:reduce){
  .vzc-pastille{transition:none}
  .vzc-titre-entre{animation:none!important}
}

/* =====================================================================
   Couleurs de la marque autour des produits (pages claires)
   ===================================================================== */
/* Vignette : halo orange et magenta, onde du logo en filigrane */
body:not(.home) .vzc-visuel,body:not(.home) .vzc-fiche-visuel{
  background:
    radial-gradient(110% 80% at 85% 100%,rgba(223,4,125,.13),transparent 62%),
    radial-gradient(90% 70% at 10% 0%,rgba(235,95,41,.12),transparent 60%),
    #fff;
  isolation:isolate}
body:not(.home) .vzc-visuel::before,body:not(.home) .vzc-fiche-visuel::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:url(onde.svg) no-repeat 50% 78%/150% auto;opacity:.09;
  transition:opacity .45s ease-out,transform .7s cubic-bezier(.2,.7,.2,1)}
body:not(.home) .vzc-article:hover .vzc-visuel::before{opacity:.2;transform:scale(1.06)}
body:not(.home) .vzc-fiche-visuel::before{opacity:.12;background-size:130% auto}
body:not(.home) .vzc-visuel img,body:not(.home) .vzc-fiche-visuel img{z-index:1}
body:not(.home) .vzc-sans-photo::before{opacity:.25}

/* Carte : contour en dégradé au survol */
body:not(.home) .vzc-article:hover{border-color:transparent;background:linear-gradient(#fff,#fff) padding-box,var(--degrade) border-box}
body:not(.home) .vzc-visuel{border-bottom:0;box-shadow:inset 0 -1px 0 var(--filet)}

/* Catégorie choisie : pastille en dégradé, texte blanc */
body:not(.home) .vzc-pastille{background:var(--degrade);box-shadow:0 6px 18px rgba(223,4,125,.25)}

/* Bouton d'ajout : se remplit du dégradé */
body:not(.home) .vzc .vzc-ajouter:hover{background:var(--degrade)!important;color:#fff!important;border-color:transparent!important}
body:not(.home) .vzc-qte{border-color:rgba(223,4,125,.35)}

/* Mentions et titres de rayons */
body:not(.home) .vzc-badge{background:var(--degrade);color:#fff}
body:not(.home) .vzc-badge::before{background:#fff}
body:not(.home) .vzc-rayon > h2::after,body:not(.home) .vzc-bloc h2::after{content:"";display:block;width:56px;height:3px;border-radius:2px;margin-top:10px;background:var(--degrade)}
body:not(.home) .vzc-montant{color:#000}

/* Fiche produit et barre de sélection : actions principales en dégradé */
body:not(.home) .vzc .vzc-fiche-ajouter{background:var(--degrade);border-color:transparent;color:#fff}
body:not(.home) .vzc .vzc-fiche-ajouter:hover:not(:disabled){background:var(--degrade);color:#fff;filter:brightness(1.1)}
body:not(.home) .vzc-panier .btn-plein{background:var(--degrade);border-color:transparent;color:#fff}
body:not(.home) .vzc-panier .btn-plein:hover{background:#000;color:#fff}
body:not(.home) .vzc-inclus li::before{background:var(--degrade);height:2px}

/* =====================================================================
   Refonte 2026-10 : cartes produits plus haut de gamme
   ===================================================================== */
/* Vignette « studio » : fond clair dégradé, plus d'onde en filigrane derrière les photos */
body:not(.home) .vzc-visuel:not(.vzc-sans-photo)::before,body:not(.home) .vzc-fiche-visuel:not(.vzc-sans-photo)::before{display:none}
body:not(.home) .vzc-visuel:not(.vzc-sans-photo),body:not(.home) .vzc-fiche-visuel:not(.vzc-sans-photo){
  background:radial-gradient(75% 60% at 50% 46%,#fff 0%,#fff 45%,#fbeff1 100%)}
body:not(.home) .vzc-visuel img{inset:22px;width:calc(100% - 44px)!important;height:calc(100% - 44px)!important}

/* Carte : sans filet, ombre douce, trait dégradé qui se dessine au survol */
body:not(.home) .vzc-grille{gap:20px}
body:not(.home) .vzc-article,body:not(.home) .vzc-article:hover{border:0;background:#fff}
body:not(.home) .vzc-article{position:relative;border-radius:18px;box-shadow:0 1px 0 rgba(120,40,70,.05),0 14px 34px rgba(160,40,70,.07);transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
body:not(.home) .vzc-article:hover{transform:translateY(-6px);box-shadow:0 2px 0 rgba(120,40,70,.05),0 30px 60px rgba(160,40,70,.16)}
body:not(.home) .vzc-article::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--degrade);transform:scaleX(0);transform-origin:left;transition:transform .55s cubic-bezier(.65,0,.25,1)}
body:not(.home) .vzc-article:hover::after{transform:scaleX(1)}
body:not(.home) .vzc-visuel{box-shadow:none}
body:not(.home) .vzc-corps{padding:20px 20px 22px;gap:12px}
body:not(.home) .vzc-corps h4{font:400 15px/1.45 Poppins,sans-serif;color:#111}
body:not(.home) .vzc-montant{font-size:28px}

/* Bouton d'ajout : noir plein, dégradé au survol */
body:not(.home) .vzc .vzc-ajouter{background:#000;border-color:#000;color:#fff;font-weight:400;padding:12px;transition:background .25s,border-color .25s,color .25s}
body:not(.home) .vzc .vzc-ajouter:hover:not(:disabled){background:var(--degrade);border-color:transparent;color:#fff}

/* Filtres en pastilles */
body:not(.home) .vzc .vzc-filtre{border-radius:999px;padding:11px 18px}
body:not(.home) .vzc .vzc-filtre[aria-pressed=false]:hover{border-color:rgba(223,4,125,.4);color:#000}
body:not(.home) .vzc-outils{border:0;padding:0;margin-bottom:64px}

/* Rayons : titre plus présent, espace entre les rayons */
body:not(.home) .vzc-rayon{margin-bottom:110px}
body:not(.home) .vzc-groupe > h3{font-weight:500!important;color:#1d1d20!important}

@media (max-width:640px){
  body:not(.home) .vzc-grille{gap:10px}
  body:not(.home) .vzc-visuel img{inset:12px;width:calc(100% - 24px)!important;height:calc(100% - 24px)!important}
  body:not(.home) .vzc-corps{padding:14px 12px 14px}
  body:not(.home) .vzc-montant{font-size:22px}
}
@media (prefers-reduced-motion:reduce){body:not(.home) .vzc-article::after{transition:none}}

/* =====================================================================
   Page Location (2026-10) : barre des catégories sur une seule ligne,
   pastille dégradée aux mêmes arrondis que les boutons, catalogue plus vite atteint
   ===================================================================== */
body:not(.home) .vzc-pastille{border-radius:999px;box-shadow:none}
body:not(.home) .vzc .vzc-filtre{padding:10px 15px;font-size:14px;border-color:rgba(29,29,32,.14)}
body:not(.home) .vzc .vzc-filtre[aria-pressed=true]{color:#fff!important;border-color:transparent}
body:not(.home) .vzc-filtre[aria-pressed=true] .vzc-nb{background:rgba(255,255,255,.22);color:#fff}
.vzc-barre{gap:20px}
.vzc-filtres{flex:1;min-width:0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:2px 0}
.vzc-filtres::-webkit-scrollbar{display:none}
.vzc-filtres .vzc-filtre{flex:none}
.vzc-compte{flex:none;white-space:nowrap}
body:not(.home) .vzc-barre.colle{background:rgba(247,239,236,.97);box-shadow:0 1px 0 var(--filet),-50vw 0 0 rgba(247,239,236,.97),50vw 0 0 rgba(247,239,236,.97)}

/* Photo d'en-tête plus basse : les articles arrivent plus tôt à l'écran */
.page-id-15 .page-entete + .cinema{height:min(46vh,440px)}
.page-id-15 .page-entete + .cinema img{object-position:50% 55%}
@media (min-width:641px){
  .vzc-barre{align-items:flex-start}
  .vzc-filtres{flex-wrap:wrap;overflow:visible;row-gap:8px}
  .vzc-compte{padding-top:11px}
}

/* Petits écrans : bouton d'ajout sur une ligne (« Ajouter »), libellé complet conservé pour les lecteurs d'écran */
@media (max-width:640px){
  .vzc-long{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  body:not(.home) .vzc .vzc-ajouter{padding:11px 10px;font-size:14px}
}

/* Barre des catégories sur une seule ligne (ordinateur et mobile). Les compteurs par rayon
   restent lus par les lecteurs d'écran ; le total filtré s'affiche à droite de la barre. */
.vzc-barre{align-items:center!important}
.vzc-filtres{flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden}
.vzc .vzc-filtre .vzc-nb{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.vzc-compte{padding-top:0!important}
body:not(.home) .vzc .vzc-filtre{padding:10px 18px}
.vzc-filtres.deborde{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent)}
body:not(.home) .vzc .vzc-filtre{padding:10px 16px}
@media (max-width:640px){.vzc-barre{align-items:stretch!important}}
/* Survol (souris ou clavier) : contour au dégradé de la charte */
body:not(.home) .vzc-article,body:not(.home) .vzc-article:hover{border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,transparent border-box}
body:not(.home) .vzc-article:hover,body:not(.home) .vzc-article:focus-within{background:linear-gradient(#fff,#fff) padding-box,var(--degrade) border-box}
/* Fiche produit : bouton de retour au catalogue */
.vzc-retour{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;padding:9px 18px 9px 12px;border:1px solid rgba(29,29,32,.14);border-radius:999px;background:#fff;color:#1d1d20;font:400 14px/1 Poppins,sans-serif;text-decoration:none;transition:border-color .2s}
.vzc-retour:hover,.vzc-retour:focus-visible{border-color:var(--magenta)}
/* Fiche produit : photo principale et vignettes des autres photos */
.vzc-fiche-photos{position:sticky;top:100px;align-self:start}
.vzc-fiche-photos .vzc-fiche-visuel{position:relative;top:0}
.vzc-vignettes{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.vzc-vignettes button{width:76px;height:76px;padding:6px;border:2px solid transparent;border-radius:12px;background:linear-gradient(#fff,#fff) padding-box,rgba(29,29,32,.12) border-box;cursor:pointer}
.vzc-vignettes button[aria-pressed=true],.vzc-vignettes button:hover{background:linear-gradient(#fff,#fff) padding-box,var(--degrade) border-box}
.vzc-vignettes img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
@media (max-width:900px){.vzc-fiche-photos{position:relative;top:0}}

/* Tri et marque */
.vzc-choix{display:inline-flex;align-items:center;gap:10px;font-size:14px;color:var(--cendre)}
.vzc-choix select{appearance:none;-webkit-appearance:none;padding:11px 38px 11px 16px;border:1px solid rgba(29,29,32,.14);border-radius:999px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6.5l4 4 4-4' fill='none' stroke='%231d1d20' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center/14px;font:400 14px/1 Poppins,sans-serif;color:#1d1d20;cursor:pointer}
.vzc-choix select:focus-visible{outline:2px solid var(--magenta);outline-offset:2px}
@media (max-width:640px){.vzc-choix{flex:1 1 45%}.vzc-choix select{width:100%}}

/* Bande des marques (page Location) */
.vzc-marques{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:28px;margin:0 0 40px;padding:18px 0;border-top:1px solid var(--filet);border-bottom:1px solid var(--filet)}
.vzc-marques-titre{margin:0!important;font-size:14px;color:var(--cendre);white-space:nowrap}
.vzc-marques .logos{gap:56px!important;animation-duration:36s!important}
.vzc-marques button{flex:none;display:block;padding:6px 4px;border:0;background:none;cursor:pointer;border-radius:6px}
.vzc-marques button:focus-visible{outline:2px solid var(--magenta);outline-offset:4px}
.logos-defile .vzc-marques img,.vzc-marques .logos-defile .logos img{height:26px!important;max-height:26px!important;width:auto!important;max-width:150px!important;filter:grayscale(1);opacity:.62;mix-blend-mode:multiply;transition:filter .3s,opacity .3s}
.vzc-marques button:hover img,.vzc-marques button:focus-visible img{filter:none;opacity:1}
.vzc-marques .logos-defile:focus-within .logos{animation-play-state:paused}
@media (max-width:640px){.vzc-marques{grid-template-columns:minmax(0,1fr);gap:10px}.vzc-marques img{height:22px!important}}
/* Logos de marques : encre noire uniforme, couleurs d'origine au survol */
.vzc-marques .logos-defile .logos img{mix-blend-mode:normal!important;filter:grayscale(1) brightness(0)!important;opacity:.5!important}
.vzc-marques .logos-defile .logos button:hover img,.vzc-marques .logos-defile .logos button:focus-visible img{filter:none!important;opacity:1!important}
.vzc-marques .logos-defile .logos img[src*="/jbl."]{height:40px!important;max-height:40px!important}
.vzc-marques .logos-defile .logos img[src*="/martin."]{height:34px!important;max-height:34px!important}
@media (max-width:640px){
  .vzc-marques .logos{gap:34px!important}
  .vzc-marques .logos-defile .logos img{height:20px!important;max-height:20px!important;max-width:120px!important}
  .vzc-marques .logos-defile .logos img[src*="/jbl."]{height:32px!important;max-height:32px!important}
  .vzc-marques .logos-defile .logos img[src*="/martin."]{height:27px!important;max-height:27px!important}
}
.vzc-marques img{border:0!important;border-radius:0!important}

/* Ajout au devis : message de confirmation et compteur sur « Demander un devis » */
.vzc-nb-devis{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;border-radius:999px;background:#fff;color:#DF047D;font:600 12px/1 Poppins,sans-serif;vertical-align:middle}
.menu-devis .vzc-nb-devis{background:var(--degrade,#DF047D);color:#fff}
.vzc-pop{animation:vzcPop .5s cubic-bezier(.34,1.36,.64,1)}
@keyframes vzcPop{0%{transform:scale(.4);opacity:0}100%{transform:scale(1);opacity:1}}
.vzc-toast{position:fixed;z-index:60;top:84px;right:16px;display:flex;align-items:center;gap:14px;max-width:min(420px,calc(100vw - 32px));padding:14px 16px;border-radius:16px;background:#111;color:#fff;box-shadow:0 18px 40px rgba(0,0,0,.25);font:400 14px/1.4 Poppins,sans-serif;opacity:0;transform:translateY(-8px);filter:blur(2px);pointer-events:none;visibility:hidden;transition:opacity .35s cubic-bezier(.22,1,.36,1),transform .35s cubic-bezier(.22,1,.36,1),filter .35s,visibility 0s .35s}
.vzc-toast.vzc-toast-on{opacity:1;transform:none;filter:none;pointer-events:auto;visibility:visible;transition-delay:0s}
.vzc-toast-ok{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(90deg,#EB5F29,#DF047D)}
.vzc-toast-ok svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.vzc-toast-texte{flex:1;min-width:0;color:rgba(255,255,255,.72);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vzc-toast-texte b{display:block;color:#fff;font-weight:500}
.vzc-toast a{flex:none;padding:9px 14px;border-radius:999px;background:#fff;color:#000!important;text-decoration:none!important;font-weight:500;font-size:13px}
.vzc-toast a:hover,.vzc-toast a:focus-visible{background:linear-gradient(90deg,#EB5F29,#DF047D);color:#fff!important}
.vzc-fiche-etat a{color:inherit;font-weight:500;text-decoration:underline;text-underline-offset:3px}
@media (max-width:640px){.vzc-toast{top:auto;bottom:calc(16px + env(safe-area-inset-bottom));left:16px;right:16px;max-width:none;transform:translateY(8px)}body:has(.vzc-panier:not([hidden])) .vzc-toast{bottom:150px}}
@media (prefers-reduced-motion:reduce){.vzc-toast{transition:opacity .2s,visibility 0s .2s;transform:none;filter:none}.vzc-pop{animation:none}}

/* Rayons : égaliseur au survol (sans changer la largeur des boutons) */
.vzc .vzc-filtre{position:relative}
.vzc-libelle{display:inline-block;transition:transform .3s cubic-bezier(.22,1,.36,1)}
.vzc-eq{position:absolute;right:7px;top:50%;height:11px;margin-top:-6px;display:flex;align-items:flex-end;gap:2px;opacity:0;transform:scale(.5);transition:opacity .2s,transform .3s cubic-bezier(.22,1,.36,1);pointer-events:none}
.vzc-eq i{display:block;width:2px;height:100%;border-radius:1px;background:linear-gradient(#EB5F29,#DF047D);transform-origin:bottom;transform:scaleY(.3)}
.vzc-filtre[aria-pressed=true] .vzc-eq i{background:#fff}
@media (hover:hover){
  .vzc-filtre:hover .vzc-libelle{transform:translateX(-8px)}
  .vzc-filtre:hover .vzc-eq{opacity:1;transform:none}
  .vzc-filtre:hover .vzc-eq i{animation:vzcVu .7s ease-in-out infinite alternate}
  .vzc-filtre:hover .vzc-eq i:nth-child(2){animation-delay:-.25s}
  .vzc-filtre:hover .vzc-eq i:nth-child(3){animation-delay:-.5s}
  .vzc-filtre:hover .vzc-eq i:nth-child(4){animation-delay:-.1s}
}
@keyframes vzcVu{0%{transform:scaleY(.25)}50%{transform:scaleY(1)}100%{transform:scaleY(.45)}}
@media (prefers-reduced-motion:reduce){.vzc-filtre:hover .vzc-eq i{animation:none;transform:scaleY(.7)}.vzc-libelle{transition:none}}

/* Coloris (moquette…) : pastilles de couleur sur la fiche, surface en m² */
.vzc-coloris{border:0;margin:0 0 22px;padding:0;min-width:0}
.vzc-coloris legend{font-size:14px;margin-bottom:10px;padding:0}
.vzc-coloris-choix{font-weight:500}
.vzc-coloris-titre{margin:10px 0 8px!important;font-size:12px;letter-spacing:.06em;text-transform:uppercase;opacity:.65}
.vzc-col-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:8px;max-width:520px}
.vzc-col{position:relative;display:block;aspect-ratio:1;cursor:pointer}
.vzc-col input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.vzc-col span{display:block;width:100%;height:100%;border-radius:50%;background:var(--c);box-shadow:inset 0 0 0 1px rgba(0,0,0,.18);transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s}
.vzc-col:hover span{transform:scale(1.08)}
.vzc-col input:checked+span{box-shadow:inset 0 0 0 1px rgba(0,0,0,.18),0 0 0 2px #fff,0 0 0 4px #DF047D;transform:scale(1.05)}
.vzc-col input:focus-visible+span{box-shadow:0 0 0 2px #fff,0 0 0 4px #EB5F29}
.vzc-coloris-plus{margin-top:12px}
.vzc-coloris-plus summary{cursor:pointer;font-size:14px;text-decoration:underline;text-underline-offset:3px}
.vzc .vzc-surface{width:110px}
.vzc a.vzc-choisir{display:block;text-align:center;text-decoration:none}
@media (prefers-reduced-motion:reduce){.vzc-col span{transition:none}}

/* Fiche moquette : le rouleau dessiné prend la couleur choisie */
.vzc-moq-svg{display:block;width:100%;height:auto}
.vzc-moq-svg [style*="--moq"]{transition:fill .45s ease}
.vzc-fiche-visuel:has(.vzc-moq-svg){background:#f4efec}

/* Liens texte du catalogue : zone de clic d'au moins 24 px sans décaler la mise en page */
.vzc-corps h4 a,.vzc-note a{padding-block:4px}

/* Page Location sur téléphone : en-tête réduit et photo masquée, le catalogue arrive tout de suite */
@media (max-width:640px){
  body:has(.vzc-grille) .page-entete{padding:110px 0 32px}
  body:has(.vzc-grille) .cinema{display:none}
}
/* Téléphone : champs en 16 px (sinon l'iPhone zoome la page au toucher), libellé au-dessus du menu de tri pour que « Par défaut » tienne */
@media (max-width:640px){
  .vzc-recherche input,.vzc-choix select{font-size:16px}
  .vzc-choix{flex-direction:column;align-items:stretch;gap:6px}
}

/* Vue « Tout » : deux rangées par rayon dans une seule grille, puis « Voir tout le rayon » */
.vzc-apercu .vzc-rayon:not([data-rayon=packs]){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.vzc-apercu .vzc-rayon[hidden]{display:none}
.vzc-apercu .vzc-rayon > h2,.vzc-sous,.vzc-voir-tout{grid-column:1/-1}
.vzc-apercu .vzc-rayon:not([data-rayon=packs]) .vzc-groupe,.vzc-apercu .vzc-rayon:not([data-rayon=packs]) .vzc-grille{display:contents}
.vzc-apercu .vzc-groupe > h3{display:none}
.vzc-apercu .vzc-rayon{margin-bottom:72px}
@media (max-width:1000px){.vzc-apercu .vzc-rayon:not([data-rayon=packs]){grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.vzc-apercu .vzc-rayon{margin-bottom:64px}}
@media (max-width:640px){.vzc-apercu .vzc-rayon:not([data-rayon=packs]){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
.vzc-voir-tout{justify-self:center;min-width:min(100%,340px);margin-top:10px;padding:15px 28px;border:1.5px solid #1d1d20;border-radius:999px;background:transparent;color:#1d1d20;font:500 15px/1.2 Poppins,sans-serif;cursor:pointer;transition:border-color .15s ease-out,color .15s ease-out}
.vzc-voir-tout:hover,.vzc-voir-tout:focus-visible{border-color:#eb5f29;color:#b5420f}
.vzc-voir-tout[hidden]{display:none}
@media (max-width:640px){.vzc-voir-tout{justify-self:stretch}}

/* Pastilles des sous-rayons */
.vzc-sous{display:flex;flex-wrap:wrap;gap:8px;margin-block:-8px 28px}
.vzc-apercu .vzc-sous{margin-block:-8px 4px}
.vzc-sous[hidden],.vzc-sous button[hidden]{display:none}
.vzc-sous button{padding:9px 15px;border:1px solid rgba(0,0,0,.14);border-radius:999px;background:#fff;color:#1d1d20;font:400 14px/1.2 Poppins,sans-serif;cursor:pointer;transition:border-color .15s ease-out,color .15s ease-out}
.vzc-sous button:hover,.vzc-sous button:focus-visible{border-color:#eb5f29;color:#b5420f}
@media (max-width:1000px){
  .vzc-sous{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%)}
  .vzc-sous::-webkit-scrollbar{display:none}
  .vzc-sous button{flex:0 0 auto;padding:10px 15px}
}

/* Barre du bas : « Voir ma sélection » déplie la liste des articles */
.vzc-voir-sel{cursor:pointer}
.vzc-panier-liste{max-height:min(50vh,420px);overflow-y:auto;border-bottom:1px solid var(--filet);padding:6px max(16px,calc(50vw - 640px))}
.vzc-panier-liste[hidden]{display:none}
.vzc-panier-liste ul{list-style:none;margin:0 auto;padding:0;max-width:760px}
.vzc-panier-liste li{display:grid;grid-template-columns:1fr auto auto;gap:6px 16px;align-items:center;padding:10px 0;border-top:1px solid var(--filet)}
.vzc-panier-liste li:first-child{border-top:0}
.vzc-sel-nom{font-size:14px;line-height:1.35}
.vzc-panier-liste .vzc-qte{justify-self:start}
.vzc-panier-liste .vzc-qte button{padding:6px 12px;cursor:pointer}
.vzc-panier-liste .vzc-qte button:disabled{opacity:.35;cursor:default}
.vzc-sel-prix{min-width:72px;text-align:right;font-size:14px;font-weight:500;white-space:nowrap}
@media (max-width:640px){
  .vzc-panier-liste li{grid-template-columns:1fr auto}
  .vzc-sel-nom{grid-column:1/-1}
  .vzc-voir-sel{flex:1 1 100%;justify-content:center}
  .vzc-panier-actions{flex-wrap:wrap}
}

/* Dates de l'événement dans les réglages du catalogue */
.vzc-choix input[type=date]{padding:10px 14px;border:1px solid rgba(29,29,32,.14);border-radius:999px;background:#fff;color:#1d1d20;font:400 15px Poppins,sans-serif;color-scheme:light;min-height:44px}
.vzc-choix input[type=date]:focus-visible{outline:2px solid var(--magenta);outline-offset:2px}

/* Calendrier noir dans le catalogue : pas de cadre de photo autour du logo */
.vzc .vz-cal-tete img{border:0;border-radius:0}

/* Réglages : ligne 1 recherche + Filtres + Trier, ligne 2 dates, durée et HT/TTC */
.vzc-reglages{position:relative;gap:12px 14px}
.vzc-reglages-prix{gap:12px 28px}
.vzc-periode{display:flex;align-items:center;gap:12px 18px}
.vzc .vzc-btn-filtres{display:inline-flex;align-items:center;gap:9px;height:48px;padding:0 18px;border:1px solid rgba(29,29,32,.14);border-radius:999px;background:#fff;color:#1d1d20;font:500 15px/1 Poppins,sans-serif}
.vzc .vzc-btn-filtres:hover,.vzc .vzc-btn-filtres[aria-expanded=true],.vzc .vzc-btn-filtres.actif{border-color:#1d1d20;color:#1d1d20}
.vzc-btn-filtres svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.vzc-nb-filtres{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--degrade,#DF047D);color:#fff;font:600 12px/1 Poppins,sans-serif}
.vzc-nb-filtres[hidden]{display:none}
.vzc-tri-compact{position:relative;display:inline-flex;align-items:center;gap:9px;height:48px;padding-left:18px;border:1px solid rgba(29,29,32,.14);border-radius:999px;background:#fff;color:#1d1d20;font:500 15px Poppins,sans-serif;cursor:pointer}
.vzc-tri-compact svg{flex:none;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.vzc-tri-compact:hover,.vzc-tri-compact:focus-within{border-color:#1d1d20}
body:not(.home) main .vzc-tri-compact select{appearance:none;-webkit-appearance:none;height:100%;margin:0;padding:0 40px 0 0;border:0;background:transparent!important;color:#1d1d20!important;font:500 15px/1 Poppins,sans-serif;cursor:pointer;outline:none}
.vzc-tri-compact::after{content:"";position:absolute;right:18px;top:50%;width:7px;height:7px;margin-top:-6px;border-right:1.6px solid #1d1d20;border-bottom:1.6px solid #1d1d20;transform:rotate(45deg);pointer-events:none}

/* Panneau Filtres : noir comme le calendrier */
.vzc-panneau-filtres{position:absolute;z-index:55;top:calc(100% + 10px);right:0;width:min(560px,100%);padding:20px 20px 18px;background:#0c0c0e;border:1px solid rgba(255,255,255,.08);border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.35);color:#fff;animation:vzcPf .22s cubic-bezier(.22,1,.36,1)}
.vzc-panneau-filtres[hidden]{display:none}
@keyframes vzcPf{from{opacity:0;transform:translateY(-6px)}}
.vzc-pf-tete{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.vzc-pf-tete p{margin:0!important;font:500 20px/1 Biarty,sans-serif;letter-spacing:-.01em;color:#fff}
.vzc .vzc-pf-fermer{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:none;color:#fff}
.vzc .vzc-pf-fermer:hover{border-color:#eb5f29;color:#fff}
.vzc-pf-fermer svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.vzc-pf-titre{margin:0 0 10px!important;font-size:13px;color:rgba(255,255,255,.6)!important}
.vzc-pf-marques{display:flex;flex-wrap:wrap;gap:8px;max-height:320px;overflow-y:auto}
.vzc .vzc-pf-marques button{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:none;color:#fff;font:400 14px/1.1 Poppins,sans-serif}
.vzc .vzc-pf-marques button:hover{border-color:#eb5f29;color:#fff}
.vzc .vzc-pf-marques button[aria-pressed=true]{background:var(--degrade,#DF047D);border-color:transparent;color:#fff}
.vzc-pf-marques button[hidden]{display:none}
.vzc-pf-marques .vzc-nb{position:static;width:auto;height:auto;clip:auto;padding:0;background:none;color:rgba(255,255,255,.55);font-size:12px}
.vzc-pf-marques button[aria-pressed=true] .vzc-nb{color:rgba(255,255,255,.85)}
.vzc-pf-pied{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
.vzc .vzc-pf-effacer{padding:8px 2px;border:0;background:none;color:rgba(255,255,255,.75);text-decoration:underline;text-underline-offset:3px}
.vzc .vzc-pf-effacer:hover{color:#fff}
.vzc .vzc-pf-voir{padding:13px 22px;border:0;border-radius:999px;background:var(--degrade,#DF047D);color:#fff;font:500 15px/1 Poppins,sans-serif}
.vzc .vzc-pf-voir:hover{filter:brightness(1.08);color:#fff}
.vzc-pf-voile{display:none}
@media (prefers-reduced-motion:reduce){.vzc-panneau-filtres{animation:none}}

@media (max-width:640px){
  .vzc-recherche{flex:1 1 100%}
  .vzc .vzc-btn-filtres{flex:0 0 auto}
  .vzc-tri-compact{flex:1 1 0;min-width:0}
  body:not(.home) main .vzc-tri-compact select{flex:1;min-width:0;font-size:16px}
  .vzc-panneau-filtres{position:fixed;z-index:1001;top:auto;left:0;right:0;bottom:0;width:auto;max-height:82vh;overflow-y:auto;border-radius:22px 22px 0 0;padding-bottom:calc(18px + env(safe-area-inset-bottom));animation-name:vzcPfBas}
  @keyframes vzcPfBas{from{transform:translateY(40px);opacity:0}}
  .vzc-pf-marques{max-height:none}
  .vzc .vzc-pf-marques button{padding:11px 15px;font-size:15px}
  .vzc-pf-pied{position:sticky;bottom:calc(-18px - env(safe-area-inset-bottom));background:#0c0c0e;padding-bottom:4px}
  .vzc .vzc-pf-voir{flex:1}
  .vzc-pf-voile:not([hidden]){display:block;position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.45)}
  html.vzc-filtres-ouverts{overflow:hidden}
  .vzc-reglages-prix{gap:12px 14px}
  .vzc-periode{flex:1 1 100%;gap:10px}
  .vzc-periode .vzc-choix{flex:1 1 0;min-width:0}
  .vzc-choix input[type=date]{width:100%;min-width:0;font-size:16px;padding-inline:12px}
  .vzc-reglages-prix .vzc-duree{flex:1 1 auto}
}
.vzc-outils{grid-template-columns:minmax(0,1fr)}
.vzc .vz-cal-champ{width:100%;min-width:0}
@media (max-width:640px){.vzc-periode{min-width:0;max-width:100%}}
@media (max-width:640px){.vzc .vzc-btn-filtres{font-size:16px}}

/* Bouton et menu Trier : comme Filtres, menu noir */
.vzc-tri-compact[hidden]{display:none}
.vzc .vzc-btn-tri{position:relative;display:inline-flex;align-items:center;gap:9px;height:48px;padding:0 44px 0 18px;border:1px solid rgba(29,29,32,.14);border-radius:999px;background:#fff;color:#1d1d20;font:500 15px/1 Poppins,sans-serif;white-space:nowrap}
.vzc .vzc-btn-tri:hover,.vzc .vzc-btn-tri[aria-expanded=true],.vzc .vzc-btn-tri.actif{border-color:#1d1d20;color:#1d1d20}
.vzc-btn-tri svg{flex:none;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.vzc-btn-tri::after{content:"";position:absolute;right:20px;top:50%;width:7px;height:7px;margin-top:-6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.vzc-btn-tri[aria-expanded=true]::after{transform:translateY(3px) rotate(225deg)}
.vzc-menu-tri{position:absolute;z-index:55;top:calc(100% + 10px);right:0;min-width:230px;padding:8px;background:#0c0c0e;border:1px solid rgba(255,255,255,.08);border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.35);animation:vzcPf .22s cubic-bezier(.22,1,.36,1)}
.vzc-menu-tri[hidden]{display:none}
.vzc .vzc-menu-tri button{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:0;border-radius:12px;background:none;color:#fff;font:400 15px/1.2 Poppins,sans-serif;text-align:left}
.vzc .vzc-menu-tri button::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:transparent}
.vzc .vzc-menu-tri button[aria-checked=true]{font-weight:500}
.vzc .vzc-menu-tri button[aria-checked=true]::before{background:var(--degrade,#DF047D)}
.vzc .vzc-menu-tri button:hover,.vzc .vzc-menu-tri button:focus-visible{background:rgba(255,255,255,.08);color:#fff;outline:none}
@media (prefers-reduced-motion:reduce){.vzc-menu-tri{animation:none}.vzc-btn-tri::after{transition:none}}
@media (max-width:640px){.vzc .vzc-btn-tri{flex:1 1 0;min-width:0;font-size:16px}.vzc-btn-tri span{overflow:hidden;text-overflow:ellipsis}.vzc-menu-tri{left:auto;width:min(260px,calc(100vw - 32px))}}

/* Panneau Filtres allégé : liste à cocher en colonnes */
.vzc-panneau-filtres{width:min(640px,100%);padding:22px 22px 18px}
.vzc-pf-tete p{font-size:18px}
.vzc-pf-marques{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 14px;max-height:340px}
.vzc .vzc-pf-marques button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 8px;border:0;border-radius:10px;background:none;color:rgba(255,255,255,.88);font:400 14px/1.2 Poppins,sans-serif;text-align:left}
.vzc .vzc-pf-marques button::before{content:"";flex:none;width:18px;height:18px;border:1.5px solid rgba(255,255,255,.32);border-radius:5px;box-sizing:border-box;transition:background .15s,border-color .15s}
.vzc .vzc-pf-marques button:hover{background:rgba(255,255,255,.06);color:#fff;border:0}
.vzc .vzc-pf-marques button[aria-pressed=true]{background:none;color:#fff;font-weight:500}
.vzc .vzc-pf-marques button[aria-pressed=true]::before{border-color:transparent;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat,var(--degrade,#DF047D)}
.vzc-pf-nom{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vzc-pf-marques .vzc-nb{margin-left:auto;color:rgba(255,255,255,.4);font-size:12px}
.vzc-pf-marques button[aria-pressed=true] .vzc-nb{color:rgba(255,255,255,.7)}
.vzc-pf-marques:not(.tout) button[data-secondaire]:not([aria-pressed=true]){display:none}
.vzc .vzc-pf-plus{margin-top:8px;padding:8px;border:0;background:none;color:rgba(255,255,255,.7);font:400 13px Poppins,sans-serif;text-decoration:underline;text-underline-offset:3px}
.vzc .vzc-pf-plus:hover{color:#fff;border:0}
.vzc-pf-plus[hidden]{display:none}
.vzc-pf-pied{margin-top:14px}
@media (max-width:640px){
  .vzc-pf-marques{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px}
  .vzc .vzc-pf-marques button{padding:11px 6px;font-size:15px}
}

/* Barre de défilement des panneaux noirs : fine et discrète */
@supports (-moz-appearance:none){.vzc-pf-marques,.vzc-panneau-filtres{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}}
.vzc-pf-marques::-webkit-scrollbar-button,.vzc-panneau-filtres::-webkit-scrollbar-button{display:none;height:0}
.vzc-pf-marques::-webkit-scrollbar,.vzc-panneau-filtres::-webkit-scrollbar{width:6px}
.vzc-pf-marques::-webkit-scrollbar-track,.vzc-panneau-filtres::-webkit-scrollbar-track{background:transparent}
.vzc-pf-marques::-webkit-scrollbar-thumb,.vzc-panneau-filtres::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:3px}
.vzc-pf-marques::-webkit-scrollbar-thumb:hover,.vzc-panneau-filtres::-webkit-scrollbar-thumb:hover{background:#eb5f29}
.vzc-pf-marques{padding-right:4px}
/* Caution sur la fiche article */
.vzc-fiche-caution{margin:10px 0 0;font-size:14px;font-weight:500}.vzc-fiche-caution span{font-weight:400;color:var(--cendre)}
.vzd-selection-caution{margin:6px 0 0!important;font-size:14px;color:var(--cendre)!important}
