@import url('/assets/css/data-marketplace.css?v=20261002b2b1');
/* FirmBaza card system: expressive visual hierarchy with clear actions. */
:root {
  --fb-card-bg: #fff;
  --fb-card-line: #dbe7e5;
  --fb-card-line-hover: #76b9ad;
  --fb-card-shadow: 0 10px 26px rgb(15 53 61 / .075), 0 2px 5px rgb(15 23 42 / .035);
  --fb-card-shadow-hover: 0 20px 42px rgb(15 53 61 / .15), 0 5px 12px rgb(15 23 42 / .06);
}

/* The home catalog already identifies these products; omit the redundant label. */
body .product-card .catalog-image > .badge-popular,
body .jq-card .catalog-image > .badge-popular {
  display: none !important;
}

body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card) {
  position: relative;
  min-width: 0;
  background: var(--fb-card-bg);
  border: 1px solid var(--fb-card-line) !important;
  border-radius: 16px !important;
  box-shadow: var(--fb-card-shadow) !important;
  isolation: isolate;
   transition: transform .32s cubic-bezier(.2,.8,.2,1), border-color .22s ease, box-shadow .32s cubic-bezier(.2,.8,.2,1);
   will-change: transform;
}

/* A restrained accent rail gives cards a recognizable visual signature. */
body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card)::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  z-index: 0;
  height: 4px;
  background: linear-gradient(90deg, #087f75, #79c8b4 58%, #d8f06a);
  opacity: .92;
}

@media (hover: hover) and (pointer: fine) {
body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card):hover {
   border-color: var(--fb-card-line-hover) !important;
   box-shadow: var(--fb-card-shadow-hover) !important;
    transform: translateY(-2px) !important;
}

body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card):hover::before {
  height: 5px;
  background: linear-gradient(90deg, #05665f, #0b9b89 52%, #c8f04b);
}
body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card):active {
   transform: translateY(-3px) scale(.998) !important;
}
}

body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card):focus-within {
  border-color: #087f75 !important;
  box-shadow: 0 0 0 4px rgb(8 127 117 / .14), var(--fb-card-shadow-hover) !important;
}

/* Make the content area breathe and keep the call-to-action at the bottom. */
body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card) > :is(.p-5, .p-6, .p-7, .p-8, .home-map-content) {
  flex: 1 1 auto;
}
body :is(.jq-card, .product-card, .catalog-card) h3,
body :is(.jq-card, .product-card, .catalog-card) h4,
body .home-map-card h3 {
  color: #172b35;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}
body :is(.jq-card, .product-card, .catalog-card) p,
body .home-map-card p {
  color: #64748b;
}

/* The media/brand area becomes a visual anchor instead of an empty header. */
body :is(.product-card, .catalog-card) .jq-card-image-wrap,
body :is(.product-card, .catalog-card) .jq-card-image,
body :is(.product-card, .catalog-card) > img:first-child {
  background: linear-gradient(135deg, #f1faf7, #e5f1ef);
}
body :is(.product-card, .catalog-card) .jq-card-image-wrap img,
body :is(.product-card, .catalog-card) .jq-card-image img {
  transition: transform .28s ease, filter .28s ease;
}
body :is(.product-card, .catalog-card):hover .jq-card-image-wrap img,
body :is(.product-card, .catalog-card):hover .jq-card-image img {
  transform: scale(1.035);
  filter: saturate(1.08);
}

/* Consistent labels and metadata improve scanning without competing with titles. */
body :is(.jq-card, .product-card, .catalog-card, .home-map-card) :is(.badge, .card-date, .home-mp-kicker, .home-map-pill, .mp-eyebrow) {
  font-size: .72rem;
  line-height: 1.35;
  font-weight: 700;
  letter-spacing: .015em;
}
body :is(.jq-card, .product-card, .catalog-card) :is(.price, .product-price, .catalog-price, .home-mp-price) {
  color: #123c46;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.025em;
}
body :is(.jq-card, .product-card, .catalog-card) .jq-btn,
body .home-map-card .jq-btn { min-height: 44px; }
body :is(.jq-card, .product-card, .catalog-card) .jq-btn:first-child,
body .home-map-card .home-map-buy {
  box-shadow: 0 6px 14px rgb(8 127 117 / .18) !important;
}

/* Product/catalog cards: a stable action row prevents buttons jumping between cards. */
body :is(.product-card, .catalog-card) :is(.card-actions, .product-actions, .catalog-actions):last-child {
  margin-top: auto;
}
body :is(.product-card, .catalog-card) img { display: block; }

/* Keep intentional dark bundle/promo cards expressive. */
body a.jq-card[style*="#0f172a"],
body a.jq-card[style*="background:#0f172a"] {
  border-color: #0f172a !important;
  box-shadow: var(--fb-card-shadow) !important;
}
body a.jq-card[style*="#0f172a"]::before,
body a.jq-card[style*="background:#0f172a"]::before {
  background: linear-gradient(90deg, var(--jq-coral, #fb7185), var(--jq-lime, #c8f04b));
}
body a.jq-card[style*="#0f172a"]:hover,
body a.jq-card[style*="background:#0f172a"]:hover {
  box-shadow: var(--fb-card-shadow-hover) !important;
}

@media (max-width: 640px) {
  body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card) { border-radius: 17px !important; }
  body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card):hover { transform: none; }
  body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card) { box-shadow: 0 7px 20px rgb(15 53 61 / .08) !important; }
}
/* Mobile only: баннер «Обновлено …» (div.fb-fresh) — по центру. Десктоп не трогаем. */
@media (max-width: 767px) {
  body div.fb-fresh { margin-left: auto !important; margin-right: auto !important; text-align: center !important; }
}
@media (prefers-reduced-motion: reduce) {
   body :is(.jq-card, .product-card, .catalog-card, .home-map-card, .rel-card) { transition: none; will-change: auto; }
  body :is(.product-card, .catalog-card):hover :is(.jq-card-image-wrap, .jq-card-image) img { transform: none; }
}
