.px-afinder{ font-family: inherit; }
.px-afinder__step{ display:none; }
.px-afinder__step.is-active{ display:block; }

.px-afinder__title{
  font-weight:700;
  margin:0 0 12px;
  font-size:16px;
  border-left: 3px solid #e95b09;
  padding-left: 5px;
}

.px-afinder__grid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.px-afinder__chip{
  appearance:none;
  border:1px solid rgba(0,0,0,0.12);
  background:#ffffff;
  padding:10px 12px;
  border-radius:999px;
  cursor:pointer;
  color:inherit;
  transition:.15s ease;
  line-height:1;
}
.px-afinder__chip:hover{ transform:translateY(-1px); }
.px-afinder__chip.is-selected{
  border-color:rgba(36,0,120,0.5);
  background:rgba(36,0,120,0.08);
}

.px-afinder__nav{
  display:flex;
  gap:10px;
  margin-top:14px;
}

.px-afinder__btn {
  border: 0;
  background: #e95b09;
  color: #fff;
  padding: 5px 10px;
  /* border-radius: 10px; */
  cursor: pointer;
  font-weight: 600;
}
.px-afinder__btn:disabled{
  opacity:.5;
  cursor:not-allowed;
}

.px-afinder__filters{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.px-afinder__filter{
  border:1px solid rgba(0,0,0,0.10);
  background:rgba(0,0,0,0.02);
  border-radius:14px;
  padding:12px;
}

.px-afinder__filter-title{
  font-weight:700;
  margin-bottom:10px;
}

.px-afinder__filter-terms{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
}

.px-afinder__check{
  display:flex;
  gap:8px;
  align-items:center;
  cursor:pointer;
}

.px-afinder__loading,
.px-afinder__empty{
  opacity:.75;
  padding:10px 0;
}
.px-afinder__check.is-disabled{
  opacity:.45;
  pointer-events:none;
}
.px-afinder__count{
  font-weight:600;
  opacity:.7;
}

/* Compteur dans le bouton */
.px-afinder__btncount{
  font-weight: 600;
  opacity: .9;
  margin-left: 6px;
}

/* Loader dans le bouton "Voir les produits" */
.px-afinder__go.is-loading{
  position: relative;
  pointer-events: none;
}

/* petit spinner inline avant le texte */
.px-afinder__go.is-loading::before{
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  vertical-align: -2px;
  margin-right: 8px;
  animation: px-afinder-spin .7s linear infinite;
}

@keyframes px-afinder-spin{
  to{ transform: rotate(360deg); }
}

.px-afinder__chip{
  display:flex;
  align-items:center;
  gap:10px;
}

.px-afinder__chip-img{
  width:36px;
  height:36px;
  flex:0 0 36px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:8px;
}

.px-afinder__chip-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* Loader bouton */
.px-afinder__btn.is-loading{
  opacity:.75;
  pointer-events:none;
}

.px-afinder__crumbs-inner{margin-bottom:15px;}

.px-afinder__crumb{
  appearance:none;
  border:1px solid rgba(0,0,0,0.12);
  background:#ffffff;
  padding:10px 12px;
  border-radius:999px;
  cursor:pointer;
  color:inherit;
  transition:.15s ease;
  line-height:1;
}

/* =========================
   FIX FANCYBOX / THEGEM MOBILE
   ========================= */
@media (max-width: 991px) {
  .fancybox-container.overlay-thegem-popup-620281275508 .fancybox-slide--html {
    padding: 15px;
    overflow: hidden !important;
  }

  #thegem-popup-620281275508.px-popup-mobile-open {
    display: flex !important;
    flex-direction: column !important;
    max-width: calc(100vw - 30px) !important;
    max-height: calc(100vh - 30px) !important;
    overflow: hidden !important;
    box-sizing: border-box;
  }

  #thegem-popup-620281275508.px-popup-mobile-open .thegem-template-wrapper {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
}

@media (max-width: 767px) {
  .fancybox-container.overlay-thegem-popup-620281275508 .fancybox-slide--html {
    padding: 10px;
  }

  #thegem-popup-620281275508.px-popup-mobile-open {
    max-width: calc(100vw - 20px) !important;
    max-height: calc(100vh - 20px) !important;
  }
}
/* Croix mobile popup */
.px-popup-close {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 9999;

  width: 36px;
  height: 36px;

  border: none;
  border-radius: 50%;
  background: rgba(0,0,0,0.7);
  color: #fff;

  font-size: 22px;
  line-height: 36px;
  text-align: center;

  cursor: pointer;
}

/* uniquement mobile */
@media (min-width: 992px) {
  .px-popup-close {
    display: none;
  }
}
@media (max-width: 991px) {
  .fancybox-container.overlay-thegem-popup-620281275508,
  .fancybox-container.overlay-thegem-popup-620281275508 .fancybox-stage,
  .fancybox-container.overlay-thegem-popup-620281275508 .fancybox-slide--html {
    touch-action: none !important;
  }

  #thegem-popup-620281275508.px-popup-mobile-open .thegem-template-wrapper {
    touch-action: pan-y !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
}