/**
 * Un marche du catalogue produit. « Nos realisations » etait la porte d'entree
 * du catalogue sur le site d'origine, pas un mur de photographies.
 */
.dec-cat{margin:0}
.dec-cat .cat-tete{display:flex;align-items:baseline;justify-content:space-between;gap:24px;
 padding-bottom:16px;border-bottom:2px solid var(--encre);margin-bottom:26px;flex-wrap:wrap}
.dec-cat .cat-tete h3{font-size:clamp(22px,2.4vw,32px);font-weight:800;letter-spacing:-.04em;
 color:var(--encre)}
.dec-cat .cat-tete a{font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;
 text-transform:uppercase;color:var(--olive);text-decoration:none;display:inline-flex;
 align-items:center;gap:9px}
.dec-cat .cat-tete a i{width:26px;height:26px;border-radius:50%;border:1px solid var(--olive);
 display:grid;place-items:center;font-style:normal;
 transition:background .22s,color .22s,transform .22s var(--ease)}
.dec-cat .cat-tete a:hover i{background:var(--olive);color:var(--papier);transform:translateX(3px)}
.dec-cat .cat-grille{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.dec-cat .fiche{position:relative;display:flex;flex-direction:column;text-decoration:none;
 color:var(--encre);border:1px solid var(--trait);border-radius:var(--r-l);overflow:hidden;
 background:var(--papier);
 transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease)}
.dec-cat .fiche:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(20,23,25,.12);
 border-color:var(--olive)}
.dec-cat .vign{aspect-ratio:4/3;overflow:hidden;background:var(--calque);position:relative}
.dec-cat .vign img{width:100%;height:100%;object-fit:cover;display:block;
 transition:transform .8s var(--ease)}
.dec-cat .fiche:hover .vign img{transform:scale(1.06)}
/* Fiche sans photographie : on ne fabrique pas d'illustration et on n'illustre
   pas un doublage avec une photo de cabine. On assume le motif de marque, en le
   faisant varier pour qu'il se lise comme un parti pris et non comme une case vide. */
.dec-cat .vign.motif{background:var(--olive-p);display:grid;place-items:center}
.dec-cat .vign.motif::before{content:'';position:absolute;inset:0;
 background:radial-gradient(120% 100% at 24% 8%,rgba(142,235,0,.26) 0%,transparent 58%)}
.dec-cat .vign.motif .dec-anneaux{position:static;color:rgba(78,129,0,.34);width:62%}
.dec-cat .fiche:nth-of-type(3n) .vign.motif .dec-anneaux{width:86%;transform:translate(16%,-12%)}
.dec-cat .fiche:nth-of-type(3n+1) .vign.motif .dec-anneaux{width:54%;transform:translate(-14%,10%)}
.dec-cat .fiche:nth-of-type(4n) .vign.motif{background:var(--calque)}
.dec-cat .fiche:nth-of-type(4n) .vign.motif .dec-anneaux{width:96%;transform:translate(-22%,18%)}
.dec-cat .fiche .corps{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1}
.dec-cat .fiche h4{font-size:17.5px;font-weight:700;letter-spacing:-.025em;line-height:1.24;
 margin-bottom:8px}
.dec-cat .fiche p{font-size:13.5px;line-height:1.5;color:var(--encre2);max-width:none;flex:1}
.dec-cat .fiche .db{display:inline-flex;align-items:center;gap:7px;margin-top:14px;
 font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--olive-t);
 font-weight:600;background:var(--olive-p);padding:7px 12px;border-radius:var(--r-pill);
 align-self:flex-start}
.dec-cat .fiche .db b{width:7px;height:7px;border-radius:50%;background:var(--olive);flex:none}
@media(max-width:1080px){.dec-cat .cat-grille{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.dec-cat .cat-grille{grid-template-columns:1fr}}
