/* ЗооМир r99 — route-scoped UX/a11y patch over r98. */

/* HOME: turn the former hidden H1 block into a compact semantic intro. */
#common-home.zm-home-layout-r34 {
  padding-top: clamp(8px, 1vw, 14px) !important;
}

#common-home .zoomag-home-hero-banner.zm-home-intro-r99 {
  display: block !important;
  position: relative !important;
  margin: clamp(12px, 1.6vw, 20px) 0 12px !important;
  padding: clamp(18px, 2vw, 26px) !important;
  overflow: hidden !important;
  border: 1px solid #dce9e1 !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 92% 6%, rgba(243, 111, 33, .16), transparent 28%),
    linear-gradient(135deg, #f5fbf7 0%, #fff9ee 100%) !important;
  box-shadow: 0 12px 32px rgba(25, 76, 50, .08) !important;
  transform: none !important;
  transition: none !important;
}

#common-home .zm-home-intro-r99:hover {
  transform: none !important;
}

#common-home .zm-home-intro-r99 .zoomag-home-banner-content {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(190px, 220px) !important;
  gap: clamp(18px, 2.5vw, 34px) !important;
  align-items: center !important;
  max-width: none !important;
}

#common-home .zm-home-intro-r99__eyebrow {
  margin: 0 0 7px !important;
  color: #087a4c !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  letter-spacing: .07em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
}

#common-home .zm-home-intro-r99 .zoomag-home-banner-title {
  margin: 0 0 10px !important;
  color: #17251f !important;
  font-size: clamp(28px, 2.6vw, 38px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
  text-shadow: none !important;
  animation: none !important;
}

#common-home .zm-home-intro-r99 .zoomag-home-brand-highlight,
#common-home .zm-home-intro-r99 .zoomag-home-brand-highlight::after {
  color: #087a4c !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  animation: none !important;
}

#common-home .zm-home-intro-r99 .zoomag-home-brand-highlight::after {
  content: none !important;
}

#common-home .zm-home-intro-r99 .zoomag-home-banner-subtitle {
  max-width: 900px !important;
  margin: 0 !important;
  color: #596a62 !important;
  font-size: clamp(15px, 1.2vw, 17px) !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
  animation: none !important;
}

#common-home .zm-home-intro-r99 .zoomag-home-banner-features {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 15px 0 0 !important;
}

#common-home .zm-home-intro-r99 .zoomag-home-feature-badge {
  width: auto !important;
  max-width: none !important;
  padding: 6px 10px !important;
  border: 1px solid #d8e9df !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .82) !important;
  box-shadow: none !important;
  color: #315142 !important;
  cursor: default !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-align: left !important;
  animation: none !important;
  transform: none !important;
}

#common-home .zm-home-intro-r99__actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 0;
}

#common-home .zm-home-intro-r99__actions a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 17px;
  border: 2px solid #087a4c;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
}

#common-home .zm-home-intro-r99__primary {
  background: #087a4c;
  color: #fff;
}

#common-home .zm-home-intro-r99__secondary {
  background: #fff;
  color: #087a4c;
}

#common-home .zm-home-intro-r99__actions a:hover {
  box-shadow: 0 8px 18px rgba(8, 122, 76, .14);
  transform: translateY(-1px);
}

#common-home .zm-home-intro-r99__actions a:focus-visible {
  outline: 3px solid #f36f21;
  outline-offset: 3px;
}

/* Remove stacked legacy margins around the actual campaign banner. */
#common-home.zm-home-layout-r34 .zm-home-slot-r19--banners {
  margin-top: 0 !important;
}

#common-home #zm-home-main-banners > .zoomag-banner-shell:first-child {
  margin-top: 0 !important;
}

/* CATEGORY: preserve both sidebars; use three cards only when the centre is wide enough. */
@media (min-width: 1280px) and (max-width: 1399.98px) {
  body #product-category #product-list.zm-final-grid,
  body.zm-final-grid-mode #product-category #product-list,
  body #product-category #product-list.zoomag-products-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }

  body #product-category #product-list .petz-product-card {
    min-height: 510px !important;
  }

  body #product-category #product-list .petz-image-section {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
    flex-basis: 220px !important;
  }

  body #product-category #product-list .petz-content-section {
    padding: 13px !important;
    gap: 8px !important;
  }

  body #product-category #product-list .petz-product-name a {
    font-size: 15px !important;
  }

  body #product-category #product-list .petz-price-main,
  body #product-category #product-list .petz-special-price {
    font-size: 22px !important;
  }
}

@media (max-width: 767.98px) {
  #common-home .zoomag-home-hero-banner.zm-home-intro-r99 {
    margin-top: 10px !important;
    padding: 20px 17px !important;
    border-radius: 18px !important;
    text-align: left !important;
  }

  #common-home .zm-home-intro-r99 .zoomag-home-banner-title {
    font-size: clamp(27px, 8.8vw, 36px) !important;
  }

  #common-home .zm-home-intro-r99 .zoomag-home-banner-content {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  #common-home .zm-home-intro-r99 .zoomag-home-banner-features {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  #common-home .zm-home-intro-r99 .zoomag-home-feature-badge {
    width: 100% !important;
  }

  #common-home .zm-home-intro-r99__actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  #common-home .zm-home-intro-r99__actions a {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  #common-home .zm-home-intro-r99 *,
  #common-home .zm-home-intro-r99 *::before,
  #common-home .zm-home-intro-r99 *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
}
