/* Catalogue mobile: chaque collection devient un carrousel tactile. */
@media (max-width: 999px){
  .p-catalogue .cat-ess__stream{
    display:flex!important;
    flex-flow:row nowrap!important;
    gap:14px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scroll-padding-inline:4vw!important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    padding:8px 4vw 22px!important;
    margin:0!important;
  }
  .p-catalogue .cat-ess__stream > .cat-ess__item,
  .p-catalogue .cat-ess__stream > .ref-card{
    flex:0 0 min(86vw,420px)!important;
    width:min(86vw,420px)!important;
    min-width:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    position:relative!important;
    inset:auto!important;
    grid-column:auto!important;
    grid-row:auto!important;
    transform:none!important;
    scroll-snap-align:start;
  }
  .p-catalogue .cat-ess__stream > .cat-ess__item .cat-ess__btn,
  .p-catalogue .cat-ess__stream > .ref-card .ref-photo{
    display:block!important;
    width:100%!important;
    height:min(72vh,520px)!important;
    min-height:300px!important;
    aspect-ratio:auto!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:18px!important;
  }
  .p-catalogue .cat-ess__stream > .cat-ess__item .cat-ess__btn img{
    display:block!important;width:100%!important;height:100%!important;
    object-fit:cover!important;object-position:center!important;
  }
  .p-catalogue .cat-ess__stream > .cat-ess__item .cat-ess__cap{display:block!important;margin-top:8px!important}
  .p-catalogue .cat-ess__stream::-webkit-scrollbar{height:5px}
  .p-catalogue .cat-ess__stream::-webkit-scrollbar-thumb{background:#229ad6;border-radius:99px}
}
@media (max-width:540px){
  .p-catalogue .cat-ess__stream > .cat-ess__item,
  .p-catalogue .cat-ess__stream > .ref-card{flex-basis:84vw!important;width:84vw!important}
  .p-catalogue .cat-ess__stream > .cat-ess__item .cat-ess__btn,
  .p-catalogue .cat-ess__stream > .ref-card .ref-photo{height:68vh!important;min-height:280px!important}
}

/* Totem et PLV : afficher toute la sélection sur mobile, sans galerie
   horizontale qui laisse les images suivantes hors écran. */
@media (max-width:999px){
  .p-catalogue #panel-totem .cat-ess__stream,
  .p-catalogue #panel-plv .cat-ess__stream{
    display:flex!important;
    flex-flow:column nowrap!important;
    overflow:visible!important;
    gap:16px!important;
    padding:8px 0 22px!important;
    scroll-snap-type:none!important;
  }
  .p-catalogue #panel-totem .cat-ess__stream > .cat-ess__item,
  .p-catalogue #panel-totem .cat-ess__stream > .ref-card,
  .p-catalogue #panel-plv .cat-ess__stream > .cat-ess__item,
  .p-catalogue #panel-plv .cat-ess__stream > .ref-card{
    flex:0 0 auto!important;
    width:100%!important;
    max-width:none!important;
    scroll-snap-align:none!important;
  }
  .p-catalogue #panel-totem .cat-ess__stream > .cat-ess__item .cat-ess__btn,
  .p-catalogue #panel-totem .cat-ess__stream > .ref-card .ref-photo,
  .p-catalogue #panel-plv .cat-ess__stream > .cat-ess__item .cat-ess__btn,
  .p-catalogue #panel-plv .cat-ess__stream > .ref-card .ref-photo{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:3/4!important;
  }
  .p-catalogue #panel-totem .cat-ess__stream > .cat-ess__item .cat-ess__btn img,
  .p-catalogue #panel-plv .cat-ess__stream > .cat-ess__item .cat-ess__btn img{
    object-fit:contain!important;
  }
}

/* Tablettes : les cartes restent dans la largeur de leur colonne. */
@media (min-width:541px) and (max-width:1199px){
  .p-catalogue .cat-panel:not(#panel-adheclean) :is(.cat-ess__stream,.ref-grid) > :is(.cat-ess__item,.ref-card):nth-child(n){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
}
