/* faroProp Phase 0.9.2.1 — Commercial strip rendering hotfix */
.fp-commercial-strip {
  --fp-strip-gap: .72rem;
  margin: .45rem 0 1.1rem;
  max-width: 100%;
  border: 1px solid #e6e9ef;
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 .14rem .45rem rgba(0,0,0,.045);
  contain: layout paint;
}
.fp-commercial-strip + .fp-catalog-grid { margin-top: .1rem; }
.fp-catalog-grid + .fp-commercial-strip { margin-top: 1rem; }

.fp-strip-viewport {
  width: 100%;
  height: 116px;
  overflow: hidden;
  padding: 10px 0;
  box-sizing: border-box;
}
.fp-strip-track {
  display: flex;
  flex-flow: row nowrap;
  align-items: stretch;
  width: max-content;
  height: 96px;
  gap: var(--fp-strip-gap);
  will-change: transform;
}
.fp-strip-group {
  display: flex;
  flex-flow: row nowrap;
  align-items: stretch;
  gap: var(--fp-strip-gap);
  flex: 0 0 auto;
}
.fp-strip-track.is-animated {
  animation: fp-strip-walk var(--fp-strip-duration, 42s) linear infinite;
}
.fp-commercial-strip:hover .fp-strip-track.is-animated,
.fp-commercial-strip:focus-within .fp-strip-track.is-animated {
  animation-play-state: paused;
}
@keyframes fp-strip-walk {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(calc(-50% - (var(--fp-strip-gap) / 2)),0,0); }
}

.fp-strip-card {
  box-sizing: border-box;
  width: 286px;
  min-width: 286px;
  max-width: 286px;
  height: 96px;
  min-height: 96px;
  max-height: 96px;
  display: grid;
  grid-template-columns: 96px minmax(0,1fr);
  grid-template-rows: 96px;
  flex: 0 0 286px;
  border: 1px solid #e8ebf0;
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  background: #fff;
  color: #111827;
  box-shadow: 0 1px 4px rgba(0,0,0,.04);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.fp-strip-card:hover,
.fp-strip-card:focus {
  color: #111827;
  transform: translateY(-2px);
  border-color: rgba(213,176,72,.9);
  box-shadow: 0 5px 14px rgba(0,0,0,.09);
}
.fp-strip-media {
  position: relative;
  width: 96px;
  height: 96px;
  min-width: 96px;
  min-height: 96px;
  max-width: 96px;
  max-height: 96px;
  background: #f3f4f6;
  overflow: hidden;
}
.fp-strip-media img {
  width: 96px !important;
  height: 96px !important;
  min-width: 96px;
  min-height: 96px;
  max-width: 96px;
  max-height: 96px;
  object-fit: cover;
  object-position: center;
  display: block;
}
.fp-strip-placeholder {
  width: 96px;
  height: 96px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.45rem;
  color:#98a2b3;
}
.fp-strip-label {
  position:absolute;
  left:.28rem;
  top:.28rem;
  max-width: calc(100% - .56rem);
  padding:.16rem .34rem;
  border-radius:999px;
  background:rgba(17,24,39,.88);
  color:#fff;
  font-size:.58rem;
  line-height:1;
  font-weight:700;
  letter-spacing:.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.fp-strip-copy {
  min-width:0;
  height:96px;
  max-height:96px;
  overflow:hidden;
  padding:.55rem .65rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-sizing:border-box;
}
.fp-strip-copy strong {
  font-size:.81rem;
  line-height:1.16;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.fp-strip-copy span {
  margin-top:.22rem;
  color:#667085;
  font-size:.68rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fp-strip-copy em {
  margin-top:.32rem;
  font-size:.72rem;
  font-weight:700;
  color:#344054;
  font-style:normal;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Guardrail: strip content can never expand the page vertically. */
.fp-commercial-strip img { max-block-size: 96px !important; }
.fp-commercial-strip .fp-strip-track,
.fp-commercial-strip .fp-strip-group,
.fp-commercial-strip .fp-strip-card { overflow-block: hidden; }

@media (max-width:575.98px) {
  .fp-strip-viewport { height: 104px; padding: 9px 0; }
  .fp-strip-track { height: 86px; }
  .fp-strip-card {
    width: 238px;
    min-width:238px;
    max-width:238px;
    height:86px;
    min-height:86px;
    max-height:86px;
    grid-template-columns:86px minmax(0,1fr);
    grid-template-rows:86px;
    flex-basis:238px;
  }
  .fp-strip-media,
  .fp-strip-media img,
  .fp-strip-placeholder {
    width:86px !important;
    min-width:86px;
    max-width:86px;
    height:86px !important;
    min-height:86px;
    max-height:86px;
  }
  .fp-strip-copy { height:86px; max-height:86px; padding:.48rem .56rem; }
  .fp-commercial-strip img { max-block-size: 86px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .fp-strip-track.is-animated { animation: none !important; transform:none !important; }
  .fp-strip-viewport { overflow-x:auto; overflow-y:hidden; scrollbar-width:thin; }
  .fp-strip-group[aria-hidden="true"] { display:none; }
  .fp-strip-card { transition:none; }
}
