/* Shared card language for the Ecosystem company and product directories. */
body.company-directory-page,
body.product-directory-page {
  --ed-ink: #171713;
  --ed-muted: rgba(23, 23, 19, .58);
  --ed-inset: #fbfaf7;
  --ed-hover: #fffefa;
  background: #efeee9 !important;
}

/* Directory feedback: make zero-result states recoverable without sending
   people back through the filter drawer. */
html body :is(.directory-empty-state.eco-empty, .directory-empty-state.directory__empty) {
  grid-column: 1 / -1 !important;
  display: grid !important;
  justify-items: start !important;
  gap: 7px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 24px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .62) !important;
  color: #171713 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-sizing: border-box !important;
}

html body .directory-empty-state__title {
  font-size: 14px !important;
  font-weight: 720 !important;
  line-height: 1.25 !important;
}

html body .directory-empty-state__copy {
  max-width: 42ch !important;
  color: rgba(20, 20, 16, .58) !important;
  font-size: 11.5px !important;
  line-height: 1.45 !important;
}

html body .directory-empty-state__action {
  min-height: 34px !important;
  margin-top: 5px !important;
  padding: 0 12px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: #171713 !important;
  color: #fff !important;
  font: 700 10.5px/1 var(--site-body, Inter, system-ui, sans-serif) !important;
  cursor: pointer !important;
}

html body .directory-empty-state__action:hover {
  background: #2f684d !important;
}

@media (max-width: 720px) {
  html body :is(.directory-empty-state.eco-empty, .directory-empty-state.directory__empty) {
    padding: 20px !important;
    border-radius: 14px !important;
  }
}

/* Quickview control authority: one geometry and one interaction model across
   company, product, supplier and component directories. */
html body.company-directory-page .company-quickview__actions,
html body.product-directory-page .product-quickview__actions,
html body.supplier-directory-page .supplier-quickview__actions,
html body.component-directory-page .product-quickview__actions {
  top: 18px !important;
  right: 66px !important;
  align-items: center !important;
  gap: 8px !important;
}

html body.company-directory-page .company-quickview__close,
html body.product-directory-page.product-directory-page .product-quickview__close,
html body.supplier-directory-page .supplier-quickview__close,
html body.component-directory-page .product-quickview__close,
html body.company-directory-page .company-quickview__watch,
html body.product-directory-page .product-quickview__actions .k-watch,
html body.supplier-directory-page .supplier-quickview__watch,
html body.component-directory-page .product-quickview__actions .k-watch {
  display: inline-flex !important;
  flex: 0 0 38px !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #e8e7e1 !important;
  box-shadow: none !important;
}

html body.company-directory-page .company-quickview__close,
html body.product-directory-page.product-directory-page .product-quickview__close,
html body.supplier-directory-page .supplier-quickview__close,
html body.component-directory-page .product-quickview__close {
  top: 18px !important;
  right: 18px !important;
  color: #171713 !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

html body.company-directory-page .company-quickview__watch,
html body.product-directory-page .product-quickview__actions .k-watch,
html body.supplier-directory-page .supplier-quickview__watch,
html body.component-directory-page .product-quickview__actions .k-watch {
  color: #994a42 !important;
}

html body :is(
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch
) :is(.k-watch__label, .k-watch__count) {
  display: none !important;
}

html body :is(
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch
) .k-watch__icon {
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
}

html body :is(
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch
) .k-watch__icon svg {
  width: 18px !important;
  height: 18px !important;
}

html body :is(
  .company-quickview__profile,
  .supplier-quickview__actions .supplier-quickview__button--dark,
  .product-quickview__actions .product-quickview__button--dark
) {
  display: inline-flex !important;
  height: 38px !important;
  min-height: 38px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #171713 !important;
  color: #fbfaf7 !important;
  font: 700 12px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body :is(
  .company-quickview__close,
  .product-quickview__close,
  .supplier-quickview__close,
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch,
  .company-quickview__profile,
  .supplier-quickview__actions .supplier-quickview__button--dark,
  .product-quickview__actions .product-quickview__button--dark
):is(:hover, :focus-visible) {
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(47, 107, 76, .10) !important;
}

html body.supplier-directory-page .supplier-quickview__panel,
html body.supplier-directory-page .supplier-quickview__media,
html body.supplier-directory-page .supplier-quickview__intro,
html body.supplier-directory-page .supplier-quickview__facts,
html body.supplier-directory-page .supplier-quickview__section {
  overflow: hidden !important;
}

html body.supplier-directory-page .supplier-quickview__media img {
  border-radius: 14px !important;
  clip-path: inset(18px round 14px) !important;
}

html body.supplier-directory-page .supplier-quickview__logo-plate {
  display: flex !important;
  width: calc(100% - 36px) !important;
  max-height: calc(100% - 36px) !important;
  aspect-ratio: 16 / 9 !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  border-radius: 16px !important;
  background: #fff !important;
  clip-path: inset(0 round 16px) !important;
}

html body.supplier-directory-page .supplier-quickview__logo-plate img {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border-radius: 0 !important;
  object-fit: contain !important;
  clip-path: none !important;
}

@media (max-width: 700px) {
  html body.company-directory-page .company-quickview__actions,
  html body.product-directory-page .product-quickview__actions,
  html body.supplier-directory-page .supplier-quickview__actions,
  html body.component-directory-page .product-quickview__actions {
    top: 14px !important;
    right: 62px !important;
  }

  html body.company-directory-page .company-quickview__close,
  html body.product-directory-page.product-directory-page .product-quickview__close,
  html body.supplier-directory-page .supplier-quickview__close,
  html body.component-directory-page .product-quickview__close {
    top: 14px !important;
    right: 14px !important;
  }
}

/* Shared directory pagination — match the rounded toolbar and card language. */
html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination {
  min-height: 64px !important;
  margin-top: 20px !important;
  padding: 10px 0 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination-summary {
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 550 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: rgba(23, 23, 19, .5) !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination-controls {
  gap: 8px !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination-btn {
  min-width: 40px !important;
  height: 40px !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, .76) !important;
  box-shadow: inset 0 0 0 1px rgba(23, 23, 19, .07) !important;
  color: #171713 !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: none !important;
  transition: background-color .16s ease, box-shadow .16s ease, transform .16s ease !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination-btn:hover:not([disabled]) {
  background: #fff !important;
  box-shadow: inset 0 0 0 1px rgba(23, 23, 19, .12), 0 5px 14px rgba(23, 23, 19, .06) !important;
  transform: translateY(-1px) !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination-btn:focus-visible {
  outline: 2px solid #171713 !important;
  outline-offset: 2px !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination-btn.is-active {
  background: #171713 !important;
  box-shadow: none !important;
  color: #fff !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination-btn[disabled] {
  opacity: .38 !important;
  transform: none !important;
}

@media (max-width: 680px) {
  html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination {
    gap: 10px !important;
  }

  html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination-controls {
    width: 100% !important;
    flex-wrap: nowrap !important;
  }

  html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) .directory__pagination-btn {
    min-width: 38px !important;
    height: 38px !important;
    padding-inline: 11px !important;
  }
}

html:has(body.company-directory-page),
html:has(body.product-directory-page) {
  min-height: 100%;
  background: #efeee9 !important;
}

html body.company-directory-page header.site-header,
html body.product-directory-page header.site-header {
  height: 70px !important;
  background: #efeee9 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

html body.company-directory-page header.site-header nav.site-header-nav-desktop,
html body.product-directory-page header.site-header nav.site-header-nav-desktop {
  display: flex !important;
  align-items: center !important;
  gap: 2px !important;
  min-height: 44px !important;
  padding: 5px !important;
  border: 1px solid rgba(17, 17, 15, .055) !important;
  border-radius: 16px !important;
  background: #faf9f6 !important;
  box-shadow: 0 14px 34px -30px rgba(17, 17, 15, .58) !important;
}

html body.company-directory-page header.site-header nav.site-header-nav-desktop > a,
html body.product-directory-page header.site-header nav.site-header-nav-desktop > a,
html body.company-directory-page header.site-header nav.site-header-nav-desktop > .nav-dropdown > .nav-dropdown-toggle,
html body.product-directory-page header.site-header nav.site-header-nav-desktop > .nav-dropdown > .nav-dropdown-toggle {
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 10px !important;
  border-radius: 11px !important;
}

html body.company-directory-page header.site-header nav.site-header-nav-desktop > a,
html body.product-directory-page header.site-header nav.site-header-nav-desktop > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

html body.company-directory-page header.site-header nav.site-header-nav-desktop > a.active,
html body.product-directory-page header.site-header nav.site-header-nav-desktop > a.active,
html body.company-directory-page header.site-header nav.site-header-nav-desktop > .nav-dropdown > .nav-dropdown-toggle.active,
html body.product-directory-page header.site-header nav.site-header-nav-desktop > .nav-dropdown > .nav-dropdown-toggle.active {
  background: #efeee8 !important;
  color: #171713 !important;
  box-shadow: 0 8px 20px -18px rgba(17, 17, 15, .6) !important;
}

html body.company-directory-page header.site-header .home-logo-text,
html body.product-directory-page header.site-header .home-logo-text,
html body.company-directory-page header.site-header > nav > a,
html body.product-directory-page header.site-header > nav > a,
html body.company-directory-page header.site-header .site-header-nav-desktop > a,
html body.product-directory-page header.site-header .site-header-nav-desktop > a,
html body.company-directory-page header.site-header .nav-dropdown-toggle,
html body.product-directory-page header.site-header .nav-dropdown-toggle,
html body.company-directory-page header.site-header .home-site-search-trigger,
html body.product-directory-page header.site-header .home-site-search-trigger {
  color: #171713 !important;
}

html body.company-directory-page header.site-header .home-menu-toggle__bar,
html body.product-directory-page header.site-header .home-menu-toggle__bar {
  background: #171713 !important;
}

html body.company-directory-page header.site-header .nav-dropdown-menu,
html body.product-directory-page header.site-header .nav-dropdown-menu {
  background: #fbfaf7 !important;
}

html body.company-directory-page header.site-header .nav-dropdown-menu a,
html body.product-directory-page header.site-header .nav-dropdown-menu a {
  color: #171713 !important;
  text-shadow: none !important;
}

html body.product-directory-page .k-section.signal-feed-page {
  min-height: calc(100dvh - var(--site-header-h, 57px)) !important;
  background: #efeee9 !important;
}

html body.product-directory-page .product-directory-shell {
  background: transparent !important;
  box-shadow: none !important;
}

html body.company-directory-page .page-content {
  width: calc(100% - 48px) !important;
  max-width: 1440px !important;
  min-height: calc(100dvh - var(--site-header-h, 57px) - 48px) !important;
  margin: 24px auto !important;
  padding: 24px !important;
  border-radius: 24px !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.company-directory-page .ecosystem-directory-shell,
html body.company-directory-page .ecosystem-main {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.company-directory-page .site-footer {
  border-top-color: rgba(23, 23, 19, .12) !important;
  background: #efeee9 !important;
  color: rgba(23, 23, 19, .68) !important;
}

html body.company-directory-page .site-footer a {
  color: #171713 !important;
}

/* Fixed directory workspace: sidebar stays put; the result pane owns scrolling. */
html body.product-directory-page.product-directory-page {
  height: 100dvh !important;
  overflow-x: hidden !important;
  overflow-y: hidden !important;
}

html body.product-directory-page.product-directory-page.filter-drawer-open {
  overflow: hidden !important;
}

html body.product-directory-page.product-directory-page .k-section.signal-feed-page {
  height: calc(100dvh - 70px) !important;
  min-height: 0 !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
}

html body.product-directory-page.product-directory-page .product-directory-shell {
  height: 100% !important;
  max-height: 100% !important;
  padding-bottom: 0 !important;
  overflow: hidden !important;
  align-items: stretch !important;
}

html body.product-directory-page.product-directory-page .product-directory-main {
  height: 100% !important;
  max-height: 100% !important;
  box-sizing: border-box !important;
  padding-right: 18px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(23, 23, 19, .28) transparent !important;
}

html body.product-directory-page.product-directory-page .product-sidebar {
  position: relative !important;
  top: auto !important;
  height: 100% !important;
  max-height: 100% !important;
  overflow-y: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(23, 23, 19, .24) transparent !important;
}

/* Every filter row uses one centred grid, including selected highlights. */
html body.product-directory-page.product-directory-page .facet-options {
  display: grid !important;
  gap: 2px !important;
}

html body.product-directory-page.product-directory-page .facet-option {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) auto !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 6px 14px !important;
  gap: 9px !important;
  box-sizing: border-box !important;
}

html body.product-directory-page.product-directory-page .facet-option input,
html body.product-directory-page.product-directory-page .facet-option__label,
html body.product-directory-page.product-directory-page .facet-option__count {
  align-self: center !important;
  margin-block: 0 !important;
}

html body.product-directory-page.product-directory-page .facet-option input {
  justify-self: center !important;
}

html body.product-directory-page.product-directory-page .facet-option__count {
  padding-top: 0 !important;
  line-height: 1.25 !important;
}

html body.product-directory-page.product-directory-page .product-directory-main::-webkit-scrollbar,
html body.product-directory-page.product-directory-page .product-sidebar::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
}

html body.product-directory-page.product-directory-page .product-directory-main,
html body.product-directory-page.product-directory-page .product-sidebar {
  scrollbar-width: none !important;
}

html body.product-directory-page.product-directory-page .product-directory-main::-webkit-scrollbar-thumb,
html body.product-directory-page.product-directory-page .product-sidebar::-webkit-scrollbar-thumb {
  border: 2px solid transparent !important;
  border-radius: 999px !important;
  background: rgba(23, 23, 19, .28) !important;
  background-clip: padding-box !important;
}

html body.company-directory-page .eco-card-grid,
html body.product-directory-page #directory-results.directory__results:not(.directory__results--table) {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
}

html body.company-directory-page .eco-company-card,
html body.product-directory-page #directory-results .product-card {
  min-width: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: var(--ed-inset) !important;
  box-shadow: 0 7px 20px rgba(31, 29, 24, .055) !important;
  clip-path: inset(0 round 18px) !important;
  transition: transform 150ms ease, box-shadow 150ms ease, background-color 150ms ease !important;
}

html body.company-directory-page .eco-company-card:hover,
html body.product-directory-page #directory-results .product-card:hover {
  border: 0 !important;
  border-radius: 18px !important;
  background: var(--ed-hover) !important;
  box-shadow: 0 12px 26px rgba(31, 29, 24, .085) !important;
  transform: translateY(-2px) !important;
}

html body.company-directory-page .eco-company-card__visual,
html body.product-directory-page #directory-results .product-card__media {
  display: flex !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.company-directory-page .eco-company-card__visual img,
html body.product-directory-page #directory-results .product-card__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

html body.company-directory-page .eco-company-card:hover .eco-company-card__visual img,
html body.product-directory-page #directory-results .product-card:hover .product-card__media img {
  transform: none !important;
}

html body.company-directory-page .eco-company-card__visual.is-fallback,
html body.product-directory-page #directory-results .product-card__media-placeholder {
  background: #e7e5de !important;
}

html body.company-directory-page .eco-company-card__body,
html body.product-directory-page #directory-results .product-card__body {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  min-height: 0 !important;
  padding: 16px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.company-directory-page .eco-company-card__name,
html body.product-directory-page #directory-results .product-card__name {
  margin: 0 0 5px !important;
  color: var(--ed-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  letter-spacing: -.02em !important;
  text-decoration: none !important;
  text-transform: none !important;
}

html body.company-directory-page .eco-company-card:hover .eco-company-card__name,
html body.product-directory-page #directory-results .product-card__name:hover {
  text-decoration: none !important;
}

html body.company-directory-page .eco-company-card__location,
html body.product-directory-page #directory-results .product-card__line {
  margin: 0 0 10px !important;
  color: var(--ed-muted) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .eco-company-card__meta-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.45fr) minmax(52px, .55fr) !important;
  gap: 9px 12px !important;
  margin-top: 8px !important;
}

html body.company-directory-page .eco-company-card__meta-label {
  margin-bottom: 3px !important;
  color: rgba(23, 23, 19, .42) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
}

html body.company-directory-page .eco-company-card__meta-value,
html body.company-directory-page .eco-company-card__footer {
  color: rgba(23, 23, 19, .74) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 550 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .eco-company-card__sector {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-height: 24px !important;
  align-items: center !important;
  padding: 4px 8px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: var(--ed-ink) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

html body.company-directory-page .eco-company-card__view {
  display: inline-flex !important;
  width: fit-content !important;
  min-width: 64px !important;
  min-height: 34px !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 14px !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: var(--ed-ink) !important;
  color: #fff !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .eco-company-card__footer {
  margin-top: auto !important;
  padding-top: 10px !important;
  border: 0 !important;
}

html body.product-directory-page #directory-results .product-card__meta {
  display: grid !important;
  gap: 7px !important;
  margin: 0 !important;
}

html body.product-directory-page #directory-results .product-card__classification {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-height: 26px !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 4px 9px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: var(--ed-ink) !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

html body.product-directory-page #directory-results .product-card__classification {
  gap: 6px !important;
}

html body.product-directory-page #directory-results .product-card__classification-row {
  display: flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-height: 26px !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 0 12px !important;
}

html body.product-directory-page #directory-results .product-card__country-flag {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.product-directory-page #directory-results .product-card__country-flag .directory-country-flag {
  flex: 0 0 28px !important;
  width: 28px !important;
  min-width: 28px !important;
  height: 19px !important;
  border-radius: 5px !important;
}

html body.product-directory-page #directory-results .product-card__classification .directory-country-flag {
  flex: 0 0 22px !important;
  width: 22px !important;
  min-width: 22px !important;
  height: 15px !important;
  border-radius: 4px !important;
  box-shadow: none !important;
}

html body.product-directory-page #directory-results .product-card__classification-separator {
  margin: 0 -2px !important;
}

html body.product-directory-page #directory-results .product-card__detail {
  display: inline-flex !important;
  width: fit-content !important;
  min-width: 64px !important;
  min-height: 34px !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: auto !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: var(--ed-ink) !important;
  color: #fff !important;
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

html body.product-directory-page #directory-results .product-card__detail:hover,
html body.product-directory-page #directory-results .product-card__detail:focus-visible {
  background: #2a2a25 !important;
  outline: none !important;
}

html body.company-directory-page .eco-company-card .k-watch,
html body.product-directory-page #directory-results .product-card .k-watch {
  border: 0 !important;
  box-shadow: 0 4px 12px rgba(20, 19, 16, .08) !important;
}

@media (max-width: 1200px) {
  html body.company-directory-page .eco-card-grid,
  html body.product-directory-page #directory-results.directory__results:not(.directory__results--table) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  html body.company-directory-page .eco-card-grid,
  html body.product-directory-page #directory-results.directory__results:not(.directory__results--table) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 620px) {
  html body.company-directory-page .page-content {
    width: calc(100% - 24px) !important;
    min-height: calc(100dvh - var(--site-header-h, 57px) - 24px) !important;
    margin: 12px auto !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  html body.company-directory-page .ecosystem-main {
    padding: 18px 0 44px !important;
  }

  html body.company-directory-page .eco-card-grid,
  html body.product-directory-page #directory-results.directory__results:not(.directory__results--table) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.company-directory-page .eco-company-card__body,
  html body.product-directory-page #directory-results .product-card__body {
    padding: 12px !important;
  }

  html body.company-directory-page .eco-company-card__name,
  html body.product-directory-page #directory-results .product-card__name {
    font-size: 16px !important;
  }

  html body.company-directory-page .eco-company-card__meta-grid {
    gap: 8px !important;
  }

  html body.company-directory-page .eco-company-card__country {
    gap: 5px !important;
  }

  html body.company-directory-page .eco-company-card__country .directory-country-flag {
    flex-basis: 22px !important;
    width: 22px !important;
    height: 15px !important;
  }
}

/* Supplier quickview: stronger text hierarchy and compact, consistent footer actions. */
html body.supplier-directory-page .supplier-quickview__title {
  margin-bottom: 10px !important;
  font: 760 30px/1.08 Inter, system-ui, sans-serif !important;
  letter-spacing: -.035em !important;
}

html body.supplier-directory-page .supplier-quickview__summary {
  max-width: 62ch !important;
  margin-bottom: 26px !important;
  color: rgba(31, 29, 24, .68) !important;
  font: 450 15px/1.55 Inter, system-ui, sans-serif !important;
}

html body.supplier-directory-page .supplier-quickview__section > .supplier-quickview__label {
  margin-bottom: 16px !important;
  font: 750 18px/1.2 Inter, system-ui, sans-serif !important;
  letter-spacing: -.015em !important;
}

html body.supplier-directory-page .supplier-quickview__row span:first-child {
  margin-bottom: 5px !important;
  color: rgba(31, 29, 24, .52) !important;
  font: 700 11px/1.25 Inter, system-ui, sans-serif !important;
}

html body.supplier-directory-page .supplier-quickview__row span:last-child {
  color: rgba(31, 29, 24, .82) !important;
  font: 500 14px/1.45 Inter, system-ui, sans-serif !important;
}

html body.supplier-directory-page .supplier-edge-list {
  gap: 0 !important;
}

html body.supplier-directory-page .supplier-edge-list__item {
  grid-template-columns: minmax(170px, .55fr) minmax(0, 1.45fr) !important;
  gap: 24px !important;
  padding: 12px 0 !important;
}

html body.supplier-directory-page .supplier-edge-list__name {
  color: var(--df-ink) !important;
  font: 700 14px/1.35 Inter, system-ui, sans-serif !important;
}

html body.supplier-directory-page .supplier-edge-list__detail,
html body.supplier-directory-page .supplier-edge-list__type,
html body.supplier-directory-page .supplier-edge-list__summary {
  display: block !important;
}

html body.supplier-directory-page .supplier-edge-list__type {
  color: rgba(31, 29, 24, .86) !important;
  font: 650 12.5px/1.35 Inter, system-ui, sans-serif !important;
}

html body.supplier-directory-page .supplier-edge-list__summary {
  margin-top: 3px !important;
  color: rgba(31, 29, 24, .62) !important;
  font: 450 13.5px/1.45 Inter, system-ui, sans-serif !important;
}

html body.supplier-directory-page .supplier-quickview__actions {
  align-items: center !important;
  gap: 10px !important;
  margin-top: 24px !important;
}

html body.supplier-directory-page .supplier-quickview__watch-proxy {
  width: auto !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  gap: 6px !important;
  padding: 0 13px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--df-stone) !important;
  color: #a54c42 !important;
}

html body.supplier-directory-page .supplier-quickview__watch-proxy:hover,
html body.supplier-directory-page .supplier-quickview__watch-proxy:focus-visible {
  background: #e8e6df !important;
  box-shadow: 0 0 0 3px rgba(47, 107, 76, .08) !important;
  outline: none !important;
}

html body.supplier-directory-page .supplier-quickview__watch-proxy .k-watch__icon {
  color: #a54c42 !important;
  font-size: 19px !important;
  line-height: 1 !important;
}

html body.supplier-directory-page .supplier-quickview__watch-count {
  color: var(--df-ink) !important;
  font: 700 12px/1 Inter, system-ui, sans-serif !important;
}

html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark {
  min-height: 44px !important;
  padding: 0 17px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--df-stone) !important;
  color: var(--df-ink) !important;
  font: 700 13px/1 Inter, system-ui, sans-serif !important;
}

html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark:hover,
html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark:focus-visible {
  background: #e8e6df !important;
  color: #24583c !important;
  outline: none !important;
}

@media (max-width: 620px) {
  html body.supplier-directory-page .supplier-edge-list__item {
    grid-template-columns: 1fr !important;
    gap: 5px !important;
    padding: 10px 0 !important;
  }

  html body.supplier-directory-page .supplier-quickview__actions {
    justify-content: flex-start !important;
  }
}

/* Directory parity pass: aligned mastheads, country markers, and contained quick views. */
html body.supplier-directory-page header.site-header nav.site-header-nav-desktop > a,
html body.component-directory-page header.site-header nav.site-header-nav-desktop > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}

html body.supplier-directory-page :where(.supplier-card__location, .directory-country-cell),
html body.component-directory-page :where(.product-card__country, .directory-country-cell),
html body.company-directory-page .eco-company-card__country {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
}

html body.supplier-directory-page .supplier-card__location > span:last-child,
html body.component-directory-page .product-card__country > span:last-child,
html body.company-directory-page .eco-company-card__country > span:last-child {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body.supplier-directory-page :where(.supplier-card__location, .directory-country-cell) .directory-country-flag,
html body.component-directory-page :where(.product-card__country, .directory-country-cell) .directory-country-flag,
html body.company-directory-page .eco-company-card__country .directory-country-flag {
  flex: 0 0 26px !important;
  width: 26px !important;
  height: 18px !important;
}

html body.component-directory-page .product-card__country {
  margin-top: 8px !important;
  color: var(--df-ink) !important;
  font: 500 12px/1.3 Inter, system-ui, sans-serif !important;
}

html body.company-directory-page #company-quickview-content,
html body.supplier-directory-page .supplier-quickview__content,
html body.component-directory-page .product-quickview__content {
  padding: 22px !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

html body.company-directory-page .company-quickview__body,
html body.supplier-directory-page .supplier-quickview__body {
  padding: 0 !important;
  background: transparent !important;
}

html body.company-directory-page .company-quickview__hero,
html body.supplier-directory-page .supplier-quickview__media,
html body.component-directory-page .product-quickview__media,
html body.component-directory-page .product-quickview__media--rounded {
  width: min(100%, 660px) !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 auto 18px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: transparent !important;
  box-shadow: none !important;
  clip-path: inset(0 round 16px) !important;
}

html body.company-directory-page .company-quickview__hero img,
html body.supplier-directory-page .supplier-quickview__media img,
html body.component-directory-page .product-quickview__media img,
html body.component-directory-page .product-quickview__img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  object-fit: cover !important;
  box-shadow: none !important;
  clip-path: inset(0 round 16px) !important;
}

/* Company directory trial: brighter semantic pills and current site control/brand type. */
html body.company-directory-page header.site-header .home-logo-text {
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
  text-transform: uppercase !important;
}

html body.company-directory-page .directory-search {
  border: 1px solid rgba(31, 29, 24, .075) !important;
  background: var(--df-inset) !important;
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease !important;
}

html body.company-directory-page .directory-search:hover {
  border-color: rgba(31, 29, 24, .12) !important;
  background: #fffefa !important;
}

html body.company-directory-page .directory-search:focus-within {
  border-color: rgba(47, 107, 76, .2) !important;
  background: #fffefa !important;
  box-shadow: 0 0 0 3px rgba(47, 107, 76, .07) !important;
}

html body.company-directory-page .directory-search input {
  padding: 0 15px !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

/* Mobile directory controls only. Desktop toolbar geometry stays untouched. */
@media (max-width: 720px) {
  html body.company-directory-page .page-content,
  html body.product-directory-page .k-section.signal-feed-page {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  html body.company-directory-page .directory-toolbar,
  html body.product-directory-page .directory-toolbar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 34px 68px 68px !important;
    gap: 6px !important;
    margin-bottom: 10px !important;
    padding: 0 !important;
    border: 0 !important;
  }

  html body.company-directory-page .directory-search,
  html body.product-directory-page .directory-search {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body.company-directory-page #eco-search,
  html body.product-directory-page #filter-search {
    display: block !important;
    width: 100% !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 12px !important;
    border: 1px solid rgba(20, 20, 16, .14) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 1px 3px rgba(20, 20, 16, .05) !important;
    color: #171713 !important;
    font-size: 11px !important;
    line-height: 36px !important;
    appearance: none !important;
  }

  html body.company-directory-page :is(#eco-sort-wrapper, #eco-sort-direction, #eco-filter-toggle),
  html body.product-directory-page :is(#directory-sort-wrapper, #product-sort-direction, #filter-drawer-toggle) {
    height: 36px !important;
    min-height: 36px !important;
    border: 1px solid rgba(20, 20, 16, .12) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 1px 2px rgba(20, 20, 16, .035) !important;
  }

  html body.company-directory-page #eco-sort-wrapper,
  html body.product-directory-page #directory-sort-wrapper {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 9px !important;
  }

  html body.company-directory-page .directory-sort-label,
  html body.product-directory-page .directory-sort-label {
    display: none !important;
  }

  html body.company-directory-page #eco-sort-direction,
  html body.product-directory-page #product-sort-direction {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    min-width: 34px !important;
    padding: 0 !important;
  }

  html body.company-directory-page #eco-submit-btn,
  html body.product-directory-page #directory-submit-btn,
  html body.company-directory-page #eco-filter-toggle,
  html body.product-directory-page #filter-drawer-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 68px !important;
    min-width: 68px !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 7px !important;
    border-radius: 10px !important;
    font: 700 10px/1 Inter, system-ui, sans-serif !important;
  }

  html body.company-directory-page #eco-submit-btn,
  html body.product-directory-page #directory-submit-btn {
    grid-column: 3 !important;
    grid-row: 2 !important;
  }

  html body.company-directory-page #eco-filter-toggle,
  html body.product-directory-page #filter-drawer-toggle {
    grid-column: 4 !important;
    grid-row: 2 !important;
    color: #171713 !important;
  }
}

/* Final supplier/component quickview layout authority. */
html body.supplier-directory-page .supplier-quickview,
html body.component-directory-page .product-quickview { padding: 18px !important; }

html body.supplier-directory-page .supplier-quickview__panel,
html body.component-directory-page .product-quickview__panel {
  display: flex !important;
  flex-direction: column !important;
  width: min(680px, calc(100vw - 36px)) !important;
  max-height: calc(100dvh - 36px) !important;
  overflow: hidden !important;
  border-radius: 24px !important;
  background: #faf9f6 !important;
  clip-path: inset(0 round 24px) !important;
}

html body.supplier-directory-page .supplier-quickview__content,
html body.component-directory-page .product-quickview__content {
  flex: 1 1 auto !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 22px !important;
  margin: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  box-sizing: border-box !important;
  overscroll-behavior: contain !important;
  scrollbar-width: thin !important;
}

html body.supplier-directory-page .supplier-quickview__media,
html body.component-directory-page .product-quickview__media,
html body.component-directory-page .product-quickview__media--rounded {
  width: min(100%, 560px) !important;
  margin: 0 auto 22px !important;
  border-radius: 18px !important;
  clip-path: inset(0 round 18px) !important;
}

html body.supplier-directory-page .supplier-quickview__body,
html body.supplier-directory-page .supplier-quickview__intro,
html body.supplier-directory-page .supplier-quickview__section,
html body.component-directory-page .product-quickview__top,
html body.component-directory-page .product-quickview__section {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

html body.supplier-directory-page .supplier-quickview__intro {
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-quickview__facts {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px 20px !important;
  margin: 20px 0 0 !important;
  padding: 18px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: #f1f0eb !important;
}

html body.supplier-directory-page .supplier-quickview__fact { min-width: 0 !important; padding: 0 !important; }
html body.supplier-directory-page .supplier-quickview__fact-label { margin-bottom: 4px !important; color: rgba(31,29,24,.55) !important; font-size: 10px !important; }

html body.supplier-directory-page .supplier-quickview__section,
html body.component-directory-page .product-quickview__section {
  margin-top: 24px !important;
  padding: 18px !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #f1f0eb !important;
}

html body.supplier-directory-page .supplier-quickview__section > .supplier-quickview__label,
html body.component-directory-page .product-quickview__section > .product-quickview__label {
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-quickview__rows,
html body.component-directory-page .product-quickview__group-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px 24px !important;
}

html body.supplier-directory-page .supplier-quickview__row,
html body.component-directory-page .product-quickview__row { display: block !important; min-width: 0 !important; padding: 0 !important; }

html body.supplier-directory-page .supplier-quickview__row span,
html body.component-directory-page .product-quickview__row span { display: block !important; min-width: 0 !important; overflow-wrap: anywhere !important; }

html body.supplier-directory-page .supplier-quickview__row span:first-child,
html body.component-directory-page .product-quickview__row span:first-child { margin-bottom: 3px !important; color: rgba(31,29,24,.54) !important; font-size: 10px !important; font-weight: 700 !important; }

html body.component-directory-page .product-quickview__groups { display: grid !important; gap: 20px !important; }
html body.supplier-directory-page .supplier-edge-list { gap: 14px !important; margin-top: 0 !important; border: 0 !important; }
html body.supplier-directory-page .supplier-edge-list__item {
  display: grid !important;
  grid-template-columns: minmax(110px,.65fr) minmax(0,1.35fr) !important;
  gap: 16px !important;
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
html body.supplier-directory-page :where(.supplier-edge-list__name,.supplier-edge-list__detail) { min-width: 0 !important; overflow-wrap: anywhere !important; }

@media (max-width: 620px) {
  html body.supplier-directory-page .supplier-quickview,
  html body.component-directory-page .product-quickview { padding: 10px !important; }
  html body.supplier-directory-page .supplier-quickview__panel,
  html body.component-directory-page .product-quickview__panel {
    width: calc(100vw - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
    border-radius: 20px !important;
    clip-path: inset(0 round 20px) !important;
  }
  html body.supplier-directory-page .supplier-quickview__content,
  html body.component-directory-page .product-quickview__content { padding: 16px !important; }
  html body.supplier-directory-page .supplier-quickview__title,
  html body.component-directory-page .product-quickview__title { font-size: 23px !important; }
  html body.supplier-directory-page .supplier-quickview__facts { grid-template-columns: repeat(2,minmax(0,1fr)) !important; padding: 14px !important; }
  html body.supplier-directory-page .supplier-quickview__section,
  html body.component-directory-page .product-quickview__section { margin-top: 18px !important; padding: 15px !important; border-radius: 16px !important; }
  html body.supplier-directory-page .supplier-quickview__rows,
  html body.component-directory-page .product-quickview__group-list { grid-template-columns: 1fr !important; gap: 11px !important; }
  html body.supplier-directory-page .supplier-edge-list__item { grid-template-columns: 1fr !important; gap: 3px !important; }
  html body.supplier-directory-page #card-grid .supplier-card__body,
  html body.component-directory-page #directory-results .product-card__body { min-height: 118px !important; padding: 10px !important; }
  html body.supplier-directory-page #card-grid .supplier-card__name,
  html body.component-directory-page #directory-results .product-card__name { font-size: 13px !important; line-height: 1.08 !important; }
  html body.supplier-directory-page #card-grid .supplier-card__type,
  html body.component-directory-page #directory-results .product-card__classification { font-size: 8.5px !important; }
}

/* Supplier quickview final visual authority — keep after the shared mobile cascade. */
html body.supplier-directory-page .supplier-quickview__title { margin-bottom: 10px !important; font: 760 30px/1.08 Inter,system-ui,sans-serif !important; letter-spacing: -.035em !important; }
html body.supplier-directory-page .supplier-quickview__summary { max-width: 62ch !important; margin-bottom: 26px !important; color: rgba(31,29,24,.68) !important; font: 450 15px/1.55 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page .supplier-quickview__section > .supplier-quickview__label { margin-bottom: 16px !important; font: 750 18px/1.2 Inter,system-ui,sans-serif !important; letter-spacing: -.015em !important; }
html body.supplier-directory-page .supplier-quickview__row span:first-child { margin-bottom: 5px !important; color: rgba(31,29,24,.52) !important; font: 700 11px/1.25 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page .supplier-quickview__row span:last-child { color: rgba(31,29,24,.82) !important; font: 500 14px/1.45 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page .supplier-edge-list { gap: 0 !important; }
html body.supplier-directory-page .supplier-edge-list__item { grid-template-columns: minmax(170px,.55fr) minmax(0,1.45fr) !important; gap: 24px !important; padding: 12px 0 !important; }
html body.supplier-directory-page .supplier-edge-list__name { color: var(--df-ink) !important; font: 700 14px/1.35 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page :where(.supplier-edge-list__detail,.supplier-edge-list__type,.supplier-edge-list__summary) { display: block !important; }
html body.supplier-directory-page .supplier-edge-list__type { color: rgba(31,29,24,.86) !important; font: 650 12.5px/1.35 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page .supplier-edge-list__summary { margin-top: 3px !important; color: rgba(31,29,24,.62) !important; font: 450 13.5px/1.45 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page .supplier-edge-list__break { display: block !important; }
html body.supplier-directory-page .supplier-quickview__actions { align-items: center !important; justify-content: flex-end !important; gap: 10px !important; margin-top: 24px !important; }
html body.supplier-directory-page .supplier-quickview__watch-proxy { width: auto !important; min-width: 44px !important; height: 44px !important; min-height: 44px !important; gap: 6px !important; padding: 0 13px !important; border: 0 !important; border-radius: 999px !important; background: var(--df-stone) !important; color: #a54c42 !important; }
html body.supplier-directory-page .supplier-quickview__watch-proxy .k-watch__icon { color: #a54c42 !important; font-size: 19px !important; line-height: 1 !important; }
html body.supplier-directory-page .supplier-quickview__watch-count { color: var(--df-ink) !important; font: 700 12px/1 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark { min-height: 44px !important; padding: 0 17px !important; border: 0 !important; border-radius: 999px !important; background: var(--df-stone) !important; color: var(--df-ink) !important; font: 700 13px/1 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark * { color: inherit !important; }
html body.supplier-directory-page :is(.supplier-quickview__watch-proxy,.supplier-quickview__actions .supplier-quickview__button--dark):hover,
html body.supplier-directory-page :is(.supplier-quickview__watch-proxy,.supplier-quickview__actions .supplier-quickview__button--dark):focus-visible { background: #e8e6df !important; color: #24583c !important; box-shadow: 0 0 0 3px rgba(47,107,76,.08) !important; outline: none !important; }
@media (max-width: 620px) {
  html body.supplier-directory-page .supplier-quickview__title { font-size: 23px !important; }
  html body.supplier-directory-page .supplier-edge-list__item { grid-template-columns: 1fr !important; gap: 5px !important; padding: 10px 0 !important; }
  html body.supplier-directory-page .supplier-quickview__actions { justify-content: flex-start !important; }
}

/* Final supplier quickview hierarchy and action authority. */
html body.supplier-directory-page .supplier-quickview__title {
  margin-bottom: 10px !important;
  font: 760 30px/1.08 Inter, system-ui, sans-serif !important;
  letter-spacing: -.035em !important;
}
html body.supplier-directory-page .supplier-quickview__summary {
  max-width: 62ch !important; margin-bottom: 26px !important;
  color: rgba(31,29,24,.68) !important; font: 450 15px/1.55 Inter,system-ui,sans-serif !important;
}
html body.supplier-directory-page .supplier-quickview__section > .supplier-quickview__label {
  margin-bottom: 16px !important; font: 750 18px/1.2 Inter,system-ui,sans-serif !important; letter-spacing: -.015em !important;
}
html body.supplier-directory-page .supplier-quickview__row span:first-child {
  margin-bottom: 5px !important; color: rgba(31,29,24,.52) !important; font: 700 11px/1.25 Inter,system-ui,sans-serif !important;
}
html body.supplier-directory-page .supplier-quickview__row span:last-child {
  color: rgba(31,29,24,.82) !important; font: 500 14px/1.45 Inter,system-ui,sans-serif !important;
}
html body.supplier-directory-page .supplier-edge-list { gap: 0 !important; }
html body.supplier-directory-page .supplier-edge-list__item {
  grid-template-columns: minmax(170px,.55fr) minmax(0,1.45fr) !important; gap: 24px !important; padding: 12px 0 !important;
}
html body.supplier-directory-page .supplier-edge-list__name {
  color: var(--df-ink) !important; font: 700 14px/1.35 Inter,system-ui,sans-serif !important;
}
html body.supplier-directory-page :where(.supplier-edge-list__detail,.supplier-edge-list__type,.supplier-edge-list__summary) { display: block !important; }
html body.supplier-directory-page .supplier-edge-list__type {
  color: rgba(31,29,24,.86) !important; font: 650 12.5px/1.35 Inter,system-ui,sans-serif !important;
}
html body.supplier-directory-page .supplier-edge-list__summary {
  margin-top: 3px !important; color: rgba(31,29,24,.62) !important; font: 450 13.5px/1.45 Inter,system-ui,sans-serif !important;
}
html body.supplier-directory-page .supplier-quickview__actions {
  align-items: center !important; justify-content: flex-end !important; gap: 10px !important; margin-top: 24px !important;
}
html body.supplier-directory-page .supplier-quickview__watch-proxy {
  width: auto !important; min-width: 44px !important; height: 44px !important; min-height: 44px !important;
  gap: 6px !important; padding: 0 13px !important; border: 0 !important; border-radius: 999px !important;
  background: var(--df-stone) !important; color: #a54c42 !important;
}
html body.supplier-directory-page .supplier-quickview__watch-proxy .k-watch__icon { color: #a54c42 !important; font-size: 19px !important; line-height: 1 !important; }
html body.supplier-directory-page .supplier-quickview__watch-count { color: var(--df-ink) !important; font: 700 12px/1 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark {
  min-height: 44px !important; padding: 0 17px !important; border: 0 !important; border-radius: 999px !important;
  background: var(--df-stone) !important; color: var(--df-ink) !important; font: 700 13px/1 Inter,system-ui,sans-serif !important;
}
html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark * { color: inherit !important; }
html body.supplier-directory-page :is(.supplier-quickview__watch-proxy,.supplier-quickview__actions .supplier-quickview__button--dark):hover,
html body.supplier-directory-page :is(.supplier-quickview__watch-proxy,.supplier-quickview__actions .supplier-quickview__button--dark):focus-visible {
  background: #e8e6df !important; color: #24583c !important; box-shadow: 0 0 0 3px rgba(47,107,76,.08) !important; outline: none !important;
}
@media (max-width: 620px) {
  html body.supplier-directory-page .supplier-edge-list__item { grid-template-columns: 1fr !important; gap: 5px !important; padding: 10px 0 !important; }
  html body.supplier-directory-page .supplier-quickview__actions { justify-content: flex-start !important; }
}

/* Desktop directory density: preserve the directory system while using the
   space beneath the site header and control row more efficiently. */
@media (min-width: 901px) {
  html body.company-directory-page .page-content,
  html body.supplier-directory-page main.page,
  html body.supplier-directory-page .k-section.signal-feed-page,
  html body.component-directory-page .k-section.signal-feed-page {
    padding-top: 7px !important;
  }

  html body.company-directory-page .directory-toolbar,
  html body.supplier-directory-page .supplier-searchbar,
  html body.component-directory-page .component-searchbar {
    margin-bottom: 7px !important;
  }

  html body.company-directory-page .ecosystem-active-row,
  html body.supplier-directory-page .active-filter-row,
  html body.component-directory-page .active-filter-row {
    margin-bottom: 7px !important;
  }
}

/* Supplier/component quickview authority: one scroll surface, restrained
   grouping, and plain rows inside each grouped module. */
html body.supplier-directory-page .supplier-quickview,
html body.component-directory-page .product-quickview {
  padding: 18px !important;
}

html body.supplier-directory-page .supplier-quickview__panel,
html body.component-directory-page .product-quickview__panel {
  display: flex !important;
  flex-direction: column !important;
  width: min(680px, calc(100vw - 36px)) !important;
  max-height: calc(100dvh - 36px) !important;
  overflow: hidden !important;
  border-radius: 24px !important;
  background: #faf9f6 !important;
  clip-path: inset(0 round 24px) !important;
}

html body.supplier-directory-page .supplier-quickview__content,
html body.component-directory-page .product-quickview__content {
  flex: 1 1 auto !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 22px !important;
  margin: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  box-sizing: border-box !important;
  overscroll-behavior: contain !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(31, 29, 24, .24) transparent !important;
}

html body.supplier-directory-page .supplier-quickview__media,
html body.component-directory-page .product-quickview__media,
html body.component-directory-page .product-quickview__media--rounded {
  width: min(100%, 560px) !important;
  margin-bottom: 22px !important;
  border-radius: 18px !important;
  clip-path: inset(0 round 18px) !important;
}

html body.supplier-directory-page .supplier-quickview__body,
html body.component-directory-page .product-quickview__top {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

html body.supplier-directory-page .supplier-quickview__intro,
html body.supplier-directory-page .supplier-quickview__section,
html body.component-directory-page .product-quickview__section {
  width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

html body.supplier-directory-page .supplier-quickview__intro {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-quickview__facts {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px 20px !important;
  margin: 20px 0 0 !important;
  padding: 18px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: #f1f0eb !important;
}

html body.supplier-directory-page .supplier-quickview__fact {
  min-width: 0 !important;
  padding: 0 !important;
}

html body.supplier-directory-page .supplier-quickview__fact-label {
  margin-bottom: 4px !important;
  color: rgba(31, 29, 24, .55) !important;
  font-size: 10px !important;
}

html body.supplier-directory-page .supplier-quickview__section,
html body.component-directory-page .product-quickview__section {
  margin-top: 24px !important;
  padding: 18px !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #f1f0eb !important;
}

html body.supplier-directory-page .supplier-quickview__section > .supplier-quickview__label,
html body.component-directory-page .product-quickview__section > .product-quickview__label {
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-quickview__rows,
html body.component-directory-page .product-quickview__group-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px 24px !important;
}

html body.supplier-directory-page .supplier-quickview__row,
html body.component-directory-page .product-quickview__row {
  display: block !important;
  min-width: 0 !important;
  padding: 0 !important;
}

html body.supplier-directory-page .supplier-quickview__row span,
html body.component-directory-page .product-quickview__row span {
  display: block !important;
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}

html body.supplier-directory-page .supplier-quickview__row span:first-child,
html body.component-directory-page .product-quickview__row span:first-child {
  margin-bottom: 3px !important;
  color: rgba(31, 29, 24, .54) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
}

html body.component-directory-page .product-quickview__groups {
  display: grid !important;
  gap: 20px !important;
}

html body.supplier-directory-page .supplier-edge-list {
  gap: 14px !important;
  margin-top: 0 !important;
  border: 0 !important;
}

html body.supplier-directory-page .supplier-edge-list__item {
  display: grid !important;
  grid-template-columns: minmax(110px, .65fr) minmax(0, 1.35fr) !important;
  gap: 16px !important;
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-edge-list__name,
html body.supplier-directory-page .supplier-edge-list__detail {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}

html body.supplier-directory-page .supplier-quickview__actions,
html body.component-directory-page .product-quickview__actions {
  margin-top: 22px !important;
}

@media (max-width: 620px) {
  html body.supplier-directory-page .supplier-quickview,
  html body.component-directory-page .product-quickview {
    padding: 10px !important;
  }

  html body.supplier-directory-page .supplier-quickview__panel,
  html body.component-directory-page .product-quickview__panel {
    width: calc(100vw - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
    border-radius: 20px !important;
    clip-path: inset(0 round 20px) !important;
  }

  html body.supplier-directory-page .supplier-quickview__content,
  html body.component-directory-page .product-quickview__content {
    padding: 16px !important;
  }

  html body.supplier-directory-page .supplier-quickview__title,
  html body.component-directory-page .product-quickview__title {
    font-size: 23px !important;
  }

  html body.supplier-directory-page .supplier-quickview__facts {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    padding: 14px !important;
  }

  html body.supplier-directory-page .supplier-quickview__section,
  html body.component-directory-page .product-quickview__section {
    margin-top: 18px !important;
    padding: 15px !important;
    border-radius: 16px !important;
  }

  html body.supplier-directory-page .supplier-quickview__rows,
  html body.component-directory-page .product-quickview__group-list {
    grid-template-columns: 1fr !important;
    gap: 11px !important;
  }

  html body.supplier-directory-page .supplier-edge-list__item {
    grid-template-columns: 1fr !important;
    gap: 3px !important;
  }

  html body.supplier-directory-page #card-grid .supplier-card__body,
  html body.component-directory-page #directory-results .product-card__body {
    min-height: 128px !important;
    padding: 10px !important;
  }

  html body.supplier-directory-page #card-grid .supplier-card__name,
  html body.component-directory-page #directory-results .product-card__name {
    font-size: 13px !important;
    line-height: 1.08 !important;
  }

  html body.supplier-directory-page #card-grid .supplier-card__type,
  html body.component-directory-page #directory-results .product-card__classification {
    font-size: 8.5px !important;
  }
}

/* Directory quick views use quiet profile links, not oversized CTA buttons. */
html body.company-directory-page .company-quickview__actions,
html body.product-directory-page .product-quickview__actions,
html body.supplier-directory-page .supplier-quickview__actions,
html body.component-directory-page .product-quickview__actions {
  display: flex !important;
  width: 100% !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
}

html body.company-directory-page .company-quickview__profile,
html body.supplier-directory-page .supplier-quickview__button--dark,
html body.component-directory-page .product-quickview__button--dark {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 5px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #171713 !important;
  box-shadow: none !important;
  font: 650 12px/1.25 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
}

html body.company-directory-page .company-quickview__profile:hover,
html body.company-directory-page .company-quickview__profile:focus-visible,
html body.supplier-directory-page .supplier-quickview__button--dark:hover,
html body.supplier-directory-page .supplier-quickview__button--dark:focus-visible,
html body.component-directory-page .product-quickview__button--dark:hover,
html body.component-directory-page .product-quickview__button--dark:focus-visible {
  background: transparent !important;
  color: #24583c !important;
  outline: none !important;
}

/* Final directory interaction authority: one restrained lift in card and table views. */
html body.company-directory-page .eco-company-card,
html body.product-directory-page #directory-results .product-card,
html body.supplier-directory-page .supplier-card,
html body.component-directory-page .product-card {
  cursor: pointer !important;
  transition: transform 160ms ease, box-shadow 160ms ease, background-color 160ms ease !important;
}

html body :is(
  .eco-company-table__row,
  .product-table__row,
  .supplier-table__row,
  .component-table__row,
  tr[data-supplier-quickview-open],
  tr[data-component-specs-open]
) {
  transition: transform 150ms ease, filter 150ms ease !important;
}

@media (hover: hover) and (pointer: fine) {
  html body.company-directory-page .eco-company-card:hover,
  html body.product-directory-page #directory-results .product-card:hover,
  html body.supplier-directory-page .supplier-card:hover,
  html body.component-directory-page .product-card:hover {
    background: #fffefa !important;
    box-shadow: 0 15px 30px rgba(31, 29, 24, .105) !important;
    transform: translateY(-3px) !important;
  }

  html body :is(
    .eco-company-table__row,
    .product-table__row,
    .supplier-table__row,
    .component-table__row,
    tr[data-supplier-quickview-open],
    tr[data-component-specs-open]
  ):hover {
    filter: brightness(1.012) !important;
    transform: translateY(-1px) !important;
  }
}

html body.supplier-directory-page .supplier-card:focus-visible,
html body.component-directory-page .product-card:focus-visible {
  outline: 3px solid rgba(47, 107, 76, .16) !important;
  outline-offset: 2px !important;
}

/* Product quick view remains available through the card without a black INFO button. */
html body.product-directory-page #directory-results .product-card {
  position: relative !important;
}

html body.product-directory-page #directory-results .product-card__detail {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3 !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
}

html body.product-directory-page #directory-results .product-card :is(a, .product-card-watch) {
  position: relative !important;
  z-index: 2 !important;
}

html body.product-directory-page #directory-results .product-card .product-card-watch {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  z-index: 4 !important;
}

/* Directory-card controls are overlays. Keeping them in normal flow creates a
   false header strip and visually detaches the media from the rounded card. */
html body.supplier-directory-page .supplier-card > .product-card-watch,
html body.component-directory-page .product-card > .product-card-watch {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  z-index: 4 !important;
  margin: 0 !important;
}

html body.product-directory-page #directory-results .product-card__body {
  position: static !important;
}

html body.product-directory-page #directory-results .product-card:has(.product-card__detail:focus-visible) {
  outline: 3px solid rgba(47, 107, 76, .16) !important;
  outline-offset: 2px !important;
}

@media (prefers-reduced-motion: reduce) {
  html body :is(.eco-company-card, .product-card, .supplier-card, .eco-company-table__row, .product-table__row, .supplier-table__row, .component-table__row) {
    transition: background-color 120ms ease !important;
    transform: none !important;
  }
}

html body.company-directory-page .ecosystem-active-row:has(> .ecosystem-active-chips:empty),
html body.supplier-directory-page .active-filter-row:has(> .active-filter-chips:empty),
html body.component-directory-page .active-filter-row:has(> .active-filter-chips:empty) {
  display: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.company-directory-page .eco-company-card__sector,
html body.company-directory-page .eco-company-table__sector {
  width: fit-content !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 24px !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: break-word !important;
  text-align: center !important;
}

html body.company-directory-page .eco-company-table__sector {
  padding: 5px 10px !important;
  border-radius: 999px !important;
}

html body.company-directory-page .home-ftag.home-ftag--tint-0 { background: #ffd9d2 !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-1 { background: #d8e7ff !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-2 { background: #d9f2e5 !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-3 { background: #eadcff !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-4 { background: #fff0b8 !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-5 { background: #d5f2ff !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-6 { background: #ffd9e3 !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-7 { background: #d4f3f1 !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-8 { background: #e1ddff !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-9 { background: #e8f5c8 !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-10 { background: #d3eee7 !important; color: #171713 !important; }
html body.company-directory-page .home-ftag.home-ftag--tint-11 { background: #f5d9ef !important; color: #171713 !important; }

html body.company-directory-page .eco-company-table__detail {
  align-items: center !important;
  gap: 6px !important;
}

html body.company-directory-page .eco-company-table__detail-tail {
  display: inline-flex !important;
  min-width: 0 !important;
  max-width: 100% !important;
  align-items: center !important;
  gap: 6px !important;
}

html body.company-directory-page .eco-company-table__detail-tail .eco-company-table__detail-chip:not(.eco-company-table__detail-chip--more) {
  min-width: 0 !important;
  max-width: calc(100% - 26px) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body.company-directory-page .eco-company-table__detail-chip,
html body.company-directory-page .eco-company-table__row:hover .eco-company-table__detail-chip,
html body.company-directory-page .eco-company-table__row:focus-visible .eco-company-table__detail-chip,
html body.company-directory-page .eco-company-table__detail-chip:hover {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-height: 24px !important;
  align-items: center !important;
  padding: 5px 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  filter: none !important;
  outline: 0 !important;
  transform: none !important;
  opacity: 1 !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  text-decoration: none !important;
  transition: none !important;
}

html body.company-directory-page .eco-company-table__detail-chip--more,
html body.company-directory-page .eco-company-table__row:hover .eco-company-table__detail-chip--more,
html body.company-directory-page .eco-company-table__row:focus-visible .eco-company-table__detail-chip--more,
html body.company-directory-page .eco-company-table__detail-chip--more:hover {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 2px 1px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(23, 23, 19, .52) !important;
  flex: 0 0 auto !important;
  white-space: nowrap !important;
  font-size: 10px !important;
  font-weight: 700 !important;
}

/* Removable active filters use one rounded surface across every card directory. */
html body.company-directory-page .ecosystem-chip,
html body.product-directory-page .active-filter-chip,
html body.supplier-directory-page .active-filter-chip,
html body.component-directory-page .active-filter-chip {
  display: inline-flex !important;
  min-height: 34px !important;
  max-width: min(100%, 420px) !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 4px 5px 4px 12px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #fffdfa !important;
  box-shadow: 0 2px 8px rgba(23, 23, 19, .055) !important;
  color: #171713 !important;
}

html body.company-directory-page .ecosystem-chip:hover,
html body.product-directory-page .active-filter-chip:hover,
html body.supplier-directory-page .active-filter-chip:hover,
html body.component-directory-page .active-filter-chip:hover {
  border: 0 !important;
  background: #fffdfa !important;
  box-shadow: 0 2px 8px rgba(23, 23, 19, .055) !important;
  transform: none !important;
}

html body.company-directory-page .ecosystem-chip button,
html body.product-directory-page .active-filter-chip button,
html body.supplier-directory-page .active-filter-chip button,
html body.component-directory-page .active-filter-chip button {
  display: inline-flex !important;
  flex: 0 0 26px !important;
  width: 26px !important;
  height: 26px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(23, 23, 19, .045) !important;
  color: rgba(23, 23, 19, .58) !important;
  box-shadow: none !important;
  font-size: 17px !important;
  font-weight: 450 !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

html body.company-directory-page .ecosystem-chip button:hover,
html body.company-directory-page .ecosystem-chip button:focus-visible,
html body.product-directory-page .active-filter-chip button:hover,
html body.product-directory-page .active-filter-chip button:focus-visible,
html body.supplier-directory-page .active-filter-chip button:hover,
html body.supplier-directory-page .active-filter-chip button:focus-visible,
html body.component-directory-page .active-filter-chip button:hover,
html body.component-directory-page .active-filter-chip button:focus-visible {
  outline: 0 !important;
  background: #dcefe3 !important;
  color: #20583c !important;
  box-shadow: none !important;
  transform: none !important;
}

html body.company-directory-page.is-company-quickview-open,
html body.supplier-directory-page.supplier-quickview-open,
html body.component-directory-page.component-quickview-open {
  height: 100dvh !important;
  overflow: hidden !important;
}

html body.supplier-directory-page .directory-country-flag,
html body.component-directory-page .directory-country-flag {
  position: relative !important;
  display: inline-block !important;
  flex: 0 0 26px !important;
  width: 26px !important;
  height: 18px !important;
  overflow: hidden !important;
  border: 1px solid rgba(17, 17, 15, .12) !important;
  border-radius: 5px !important;
  box-shadow: 0 1px 4px rgba(17, 17, 15, .08) !important;
}

html body.supplier-directory-page .directory-country-flag::before,
html body.supplier-directory-page .directory-country-flag::after,
html body.component-directory-page .directory-country-flag::before,
html body.component-directory-page .directory-country-flag::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

html body.company-directory-page .company-quickview__intro,
html body.supplier-directory-page .supplier-quickview__intro,
html body.company-directory-page .company-quickview__funding,
html body.company-directory-page .company-quickview__events,
html body.supplier-directory-page .supplier-quickview__section,
html body.component-directory-page .product-quickview__section {
  margin: 0 0 12px !important;
  padding: 18px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: var(--df-inset) !important;
  box-shadow: none !important;
}

html body.company-directory-page .company-quickview__title,
html body.supplier-directory-page .supplier-quickview__title {
  margin: 0 48px 10px 0 !important;
}

html body.company-directory-page .company-quickview__summary,
html body.supplier-directory-page .supplier-quickview__summary {
  max-width: 68ch !important;
  margin: 0 !important;
  color: var(--df-ink) !important;
  font: 450 14px/1.5 Inter, system-ui, sans-serif !important;
}

html body.company-directory-page .company-quickview__facts,
html body.supplier-directory-page .supplier-quickview__facts {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 18px 0 0 !important;
  padding: 16px 0 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-top: 1px solid rgba(23, 23, 19, .08) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.company-directory-page .company-quickview__fact,
html body.supplier-directory-page .supplier-quickview__fact {
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.company-directory-page .company-quickview__fact-label,
html body.supplier-directory-page :where(.supplier-quickview__fact-label, .supplier-quickview__row span:first-child),
html body.component-directory-page .product-quickview__row span:first-child {
  display: block !important;
  margin: 0 0 5px !important;
  color: var(--df-ink) !important;
  font: 650 11px/1.25 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .company-quickview__fact-value,
html body.supplier-directory-page :where(.supplier-quickview__fact-value, .supplier-quickview__row span:last-child),
html body.component-directory-page .product-quickview__row span:last-child {
  display: block !important;
  color: var(--df-ink) !important;
  font: 500 13px/1.4 Inter, system-ui, sans-serif !important;
  overflow-wrap: anywhere !important;
}

html body.supplier-directory-page .supplier-quickview__section > .supplier-quickview__label,
html body.component-directory-page .product-quickview__section > .product-quickview__label,
html body.company-directory-page :where(.company-quickview__funding-title, .company-quickview__events-title) {
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--df-ink) !important;
  font: 750 16px/1.2 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.supplier-directory-page .supplier-quickview__rows,
html body.component-directory-page .product-quickview__group-list {
  display: grid !important;
  gap: 9px !important;
}

html body.supplier-directory-page .supplier-quickview__row,
html body.component-directory-page .product-quickview__row {
  display: grid !important;
  grid-template-columns: 150px minmax(0, 1fr) !important;
  gap: 16px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-edge-list {
  display: grid !important;
  gap: 8px !important;
}

html body.supplier-directory-page .supplier-edge-list__item {
  display: grid !important;
  grid-template-columns: 150px minmax(0, 1fr) !important;
  gap: 16px !important;
  padding: 12px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #f1f0ea !important;
}

html body.company-directory-page .company-quickview__funding {
  margin-top: 0 !important;
}

html body.company-directory-page .company-quickview__events {
  border: 0 !important;
}

html body.company-directory-page .company-quickview__event {
  padding: 10px 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.company-directory-page .company-quickview__actions,
html body.supplier-directory-page .supplier-quickview__actions {
  margin: 14px 0 0 !important;
}

html body.component-directory-page .product-quickview__top {
  padding: 24px 24px 10px !important;
  border: 0 !important;
  background: transparent !important;
}

html body.component-directory-page .product-quickview__content {
  padding-top: 8px !important;
}

html body.component-directory-page .product-quickview__actions {
  margin: 0 0 14px !important;
}

html body.component-directory-page .product-quickview__groups {
  display: grid !important;
  gap: 16px !important;
}

html body.component-directory-page .product-quickview__group-title {
  margin: 0 0 9px !important;
  color: var(--df-ink) !important;
  font: 700 13px/1.2 Inter, system-ui, sans-serif !important;
}

@media (max-width: 700px) {
  html body.company-directory-page #company-quickview-content,
  html body.supplier-directory-page .supplier-quickview__content,
  html body.component-directory-page .product-quickview__content {
    padding: 12px !important;
  }

  html body.component-directory-page .product-quickview__top {
    padding: 18px 18px 8px !important;
  }

  html body.company-directory-page .company-quickview__intro,
  html body.supplier-directory-page .supplier-quickview__intro,
  html body.company-directory-page .company-quickview__funding,
  html body.company-directory-page .company-quickview__events,
  html body.supplier-directory-page .supplier-quickview__section,
  html body.component-directory-page .product-quickview__section {
    padding: 15px !important;
    border-radius: 14px !important;
  }

  html body.company-directory-page .company-quickview__facts,
  html body.supplier-directory-page .supplier-quickview__facts {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.supplier-directory-page .supplier-quickview__row,
  html body.supplier-directory-page .supplier-edge-list__item,
  html body.component-directory-page .product-quickview__row {
    grid-template-columns: 1fr !important;
    gap: 3px !important;
  }
}

/* Final mobile toolbar authority. This block is deliberately last so legacy
   directory media rules cannot resize or recolour these controls. */
@media (max-width: 720px) {
  html body.company-directory-page .directory-toolbar,
  html body.product-directory-page .directory-toolbar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 34px 68px 68px !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    border: 0 !important;
  }

  html body.company-directory-page .directory-toolbar .directory-search,
  html body.product-directory-page .directory-toolbar .directory-search {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body.company-directory-page .directory-toolbar #eco-search,
  html body.product-directory-page .directory-toolbar #filter-search {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid rgba(20, 20, 16, .14) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 1px 3px rgba(20, 20, 16, .05) !important;
    color: #171713 !important;
    font-size: 11px !important;
    line-height: 36px !important;
    appearance: none !important;
  }

  html body.company-directory-page .directory-toolbar #eco-sort-wrapper,
  html body.product-directory-page .directory-toolbar #directory-sort-wrapper {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 9px !important;
  }

  html body.company-directory-page .directory-toolbar #eco-sort-direction,
  html body.product-directory-page .directory-toolbar #product-sort-direction {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body.company-directory-page .directory-toolbar #eco-submit-btn,
  html body.product-directory-page .directory-toolbar #directory-submit-btn,
  html body.company-directory-page .directory-toolbar #eco-filter-toggle,
  html body.product-directory-page .directory-toolbar #filter-drawer-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 68px !important;
    min-width: 68px !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 7px !important;
    border-radius: 10px !important;
    font: 700 10px/1 Inter, system-ui, sans-serif !important;
  }

  html body.company-directory-page .directory-toolbar #eco-submit-btn,
  html body.product-directory-page .directory-toolbar #directory-submit-btn {
    grid-column: 3 !important;
    grid-row: 2 !important;
  }

  html body.company-directory-page .directory-toolbar #eco-filter-toggle,
  html body.product-directory-page .directory-toolbar #filter-drawer-toggle {
    grid-column: 4 !important;
    grid-row: 2 !important;
    border: 1px solid rgba(20, 20, 16, .12) !important;
    background: #fff !important;
    color: #171713 !important;
    box-shadow: 0 1px 2px rgba(20, 20, 16, .035) !important;
  }
}

/* Directory card pills stay one compact line. Long classifications truncate
   inside their own column instead of growing taller or colliding with flags. */
html body.company-directory-page .eco-company-card__sector,
html body.product-directory-page #directory-results .product-card__classification {
  box-sizing: border-box !important;
  height: 22px !important;
  min-height: 22px !important;
  max-height: 22px !important;
  max-width: 100% !important;
  padding: 0 8px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  line-height: 22px !important;
}

html body.product-directory-page #directory-results .product-card__classification-label {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

/* Mobile directory header: one real search field and one compact action row. */
@media (max-width: 720px) {
  html body.company-directory-page .ecosystem-directory-shell,
  html body.product-directory-page .product-directory-shell {
    padding-top: 0 !important;
  }

  html body.company-directory-page .ecosystem-main,
  html body.product-directory-page.product-directory-page .product-directory-main {
    padding: 10px 10px 28px !important;
  }

  html body.company-directory-page .directory-toolbar,
  html body.product-directory-page .directory-toolbar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 34px 68px 62px !important;
    align-items: stretch !important;
    gap: 6px !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    border: 0 !important;
  }

  html body.company-directory-page .directory-search,
  html body.product-directory-page .directory-search {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 36px !important;
    min-height: 36px !important;
    align-items: center !important;
    padding: 0 11px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.88) !important;
    box-shadow: none !important;
  }

  html body.company-directory-page .directory-search input,
  html body.product-directory-page .directory-search input {
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 36px !important;
  }

  html body.company-directory-page .directory-sort,
  html body.product-directory-page .directory-sort {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 9px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.88) !important;
    box-shadow: none !important;
  }

  html body.company-directory-page .directory-sort-direction,
  html body.product-directory-page .directory-sort-direction {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: inline-flex !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 36px !important;
    min-height: 36px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.88) !important;
    box-shadow: none !important;
  }

  html body.company-directory-page .submit-source,
  html body.product-directory-page .submit-source {
    grid-column: 3 !important;
    grid-row: 2 !important;
    width: 68px !important;
    min-width: 68px !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 8px !important;
    border-radius: 10px !important;
    font-size: 10px !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  html body.company-directory-page .ecosystem-filter-toggle,
  html body.product-directory-page .filter-drawer-toggle {
    grid-column: 4 !important;
    grid-row: 2 !important;
    display: inline-flex !important;
    width: 62px !important;
    min-width: 62px !important;
    height: 36px !important;
    min-height: 36px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 7px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.88) !important;
    color: #171713 !important;
    box-shadow: none !important;
    font-size: 10px !important;
    font-weight: 650 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }

  html body.company-directory-page .eco-company-card__sector,
  html body.product-directory-page #directory-results .product-card__classification {
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    padding: 0 6px !important;
    font-size: 8px !important;
    line-height: 20px !important;
  }
}

/* Compact country markers for directory table views. */
html body.company-directory-page .directory-country-flag,
html body.product-directory-page .directory-country-flag {
  position: relative !important;
  display: inline-flex !important;
  width: 28px !important;
  min-width: 28px !important;
  height: 19px !important;
  overflow: hidden !important;
  border: 1px solid rgba(23, 23, 19, .11) !important;
  border-radius: 5px !important;
  background: #e8e6df;
  box-shadow: 0 2px 7px rgba(23, 23, 19, .07) !important;
  vertical-align: middle !important;
}

html body.company-directory-page .directory-country-flag::before,
html body.company-directory-page .directory-country-flag::after,
html body.product-directory-page .directory-country-flag::before,
html body.product-directory-page .directory-country-flag::after {
  content: "";
  position: absolute;
}

html body.company-directory-page .directory-country-flag__empty,
html body.product-directory-page .directory-country-flag__empty {
  color: rgba(23, 23, 19, .38) !important;
  font-size: 12px !important;
}

.directory-country-flag--ar { background: linear-gradient(#75aadb 0 33%, #fff 33% 66%, #75aadb 66%) !important; }
.directory-country-flag--at { background: linear-gradient(#c8102e 0 33%, #fff 33% 66%, #c8102e 66%) !important; }
.directory-country-flag--au { background: #012169 !important; }
.directory-country-flag--be { background: linear-gradient(90deg,#111 0 33%,#ffd90c 33% 66%,#ef3340 66%) !important; }
.directory-country-flag--br { background: linear-gradient(145deg,#009b3a 0 100%) !important; }
.directory-country-flag--ca { background: linear-gradient(90deg,#d52b1e 0 25%,#fff 25% 75%,#d52b1e 75%) !important; }
.directory-country-flag--ch { background: #d52b1e !important; }
.directory-country-flag--ch::after { inset: 4px 8px !important; background: linear-gradient(90deg,transparent 34%,#fff 34% 66%,transparent 66%),linear-gradient(transparent 34%,#fff 34% 66%,transparent 66%) !important; }
.directory-country-flag--cn { background: #de2910 !important; }
.directory-country-flag--cn::after { top: 3px !important; left: 4px !important; width: 5px !important; height: 5px !important; border-radius: 50% !important; background: #ffde00 !important; }
.directory-country-flag--cz { background: linear-gradient(#fff 0 50%,#d7141a 50%) !important; }
.directory-country-flag--de { background: linear-gradient(#111 0 33%,#dd0000 33% 66%,#ffce00 66%) !important; }
.directory-country-flag--dk { background: #c60c30 !important; }
.directory-country-flag--dk::after { inset: 0 !important; background: linear-gradient(90deg,transparent 29%,#fff 29% 39%,transparent 39%),linear-gradient(transparent 42%,#fff 42% 58%,transparent 58%) !important; }
.directory-country-flag--ee { background: linear-gradient(#4891d9 0 33%,#111 33% 66%,#fff 66%) !important; }
.directory-country-flag--es { background: linear-gradient(#aa151b 0 25%,#f1bf00 25% 75%,#aa151b 75%) !important; }
.directory-country-flag--fi { background: #fff !important; }
.directory-country-flag--fi::after { inset: 0 !important; background: linear-gradient(90deg,transparent 30%,#002f6c 30% 43%,transparent 43%),linear-gradient(transparent 38%,#002f6c 38% 58%,transparent 58%) !important; }
.directory-country-flag--fr { background: linear-gradient(90deg,#0055a4 0 33%,#fff 33% 66%,#ef4135 66%) !important; }
.directory-country-flag--gb { background: linear-gradient(27deg,transparent 43%,#fff 43% 48%,#c8102e 48% 52%,#fff 52% 57%,transparent 57%),linear-gradient(-27deg,transparent 43%,#fff 43% 48%,#c8102e 48% 52%,#fff 52% 57%,transparent 57%),linear-gradient(90deg,transparent 40%,#fff 40% 46%,#c8102e 46% 54%,#fff 54% 60%,transparent 60%),linear-gradient(transparent 34%,#fff 34% 42%,#c8102e 42% 58%,#fff 58% 66%,transparent 66%),#012169 !important; }
.directory-country-flag--hk,.directory-country-flag--tw { background: #de2910 !important; }
.directory-country-flag--hu { background: linear-gradient(#ce2939 0 33%,#fff 33% 66%,#477050 66%) !important; }
.directory-country-flag--ie { background: linear-gradient(90deg,#169b62 0 33%,#fff 33% 66%,#ff883e 66%) !important; }
.directory-country-flag--il { background: linear-gradient(#fff 0 22%,#0038b8 22% 34%,#fff 34% 66%,#0038b8 66% 78%,#fff 78%) !important; }
.directory-country-flag--in { background: linear-gradient(#ff9933 0 33%,#fff 33% 66%,#138808 66%) !important; }
.directory-country-flag--it { background: linear-gradient(90deg,#009246 0 33%,#fff 33% 66%,#ce2b37 66%) !important; }
.directory-country-flag--jp,.directory-country-flag--kr { background: #fff !important; }
.directory-country-flag--jp::after,.directory-country-flag--kr::after { top: 5px !important; left: 10px !important; width: 7px !important; height: 7px !important; border-radius: 50% !important; background: #bc002d !important; }
.directory-country-flag--nl { background: linear-gradient(#ae1c28 0 33%,#fff 33% 66%,#21468b 66%) !important; }
.directory-country-flag--no { background: #ba0c2f !important; }
.directory-country-flag--no::after { inset: 0 !important; background: linear-gradient(90deg,transparent 29%,#fff 29% 43%,#00205b 43% 49%,transparent 49%),linear-gradient(transparent 37%,#fff 37% 63%,transparent 63%),linear-gradient(transparent 43%,#00205b 43% 57%,transparent 57%) !important; }
.directory-country-flag--pl { background: linear-gradient(#fff 0 50%,#dc143c 50%) !important; }
.directory-country-flag--ru { background: linear-gradient(#fff 0 33%,#0039a6 33% 66%,#d52b1e 66%) !important; }
.directory-country-flag--se { background: #006aa7 !important; }
.directory-country-flag--se::after { inset: 0 !important; background: linear-gradient(90deg,transparent 30%,#fecc00 30% 42%,transparent 42%),linear-gradient(transparent 40%,#fecc00 40% 58%,transparent 58%) !important; }
.directory-country-flag--sg { background: linear-gradient(#ef3340 0 50%,#fff 50%) !important; }
.directory-country-flag--tr { background: #e30a17 !important; }
.directory-country-flag--ua { background: linear-gradient(#0057b7 0 50%,#ffd700 50%) !important; }
.directory-country-flag--ae { background: linear-gradient(90deg,#f00 0 25%,transparent 25%),linear-gradient(#00732f 0 33%,#fff 33% 66%,#111 66%) !important; }
.directory-country-flag--us { background: repeating-linear-gradient(#b22234 0 2px,#fff 2px 4px) !important; }
.directory-country-flag--us::after { top: 0 !important; left: 0 !important; width: 12px !important; height: 9px !important; background: #3c3b6e !important; }

/* Crisp inline vectors for flags whose emblems cannot be represented by plain colour bands. */
.directory-country-flag--au,
.directory-country-flag--br,
.directory-country-flag--ca,
.directory-country-flag--cn,
.directory-country-flag--cz,
.directory-country-flag--gb,
.directory-country-flag--hk,
.directory-country-flag--in,
.directory-country-flag--kr,
.directory-country-flag--sg,
.directory-country-flag--tr,
.directory-country-flag--tw,
.directory-country-flag--us {
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 100% 100% !important;
}
.directory-country-flag--au { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23012169' d='M0 0h30v20H0z'/%3E%3Cpath stroke='%23fff' stroke-width='2.6' d='m0 0 12 8M12 0 0 8'/%3E%3Cpath stroke='%23c8102e' stroke-width='1.2' d='m0 0 12 8M12 0 0 8'/%3E%3Cpath fill='%23fff' d='M5 0h2v8H5zM0 3h12v2H0z'/%3E%3Cpath fill='%23c8102e' d='M5.6 0h.8v8h-.8zM0 3.6h12v.8H0z'/%3E%3Cg fill='%23fff'%3E%3Ccircle cx='20' cy='5' r='1.3'/%3E%3Ccircle cx='24' cy='9' r='1'/%3E%3Ccircle cx='19' cy='14' r='1'/%3E%3Ccircle cx='26' cy='15' r='1.2'/%3E%3C/g%3E%3C/svg%3E") !important; }
.directory-country-flag--br { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23009b3a' d='M0 0h30v20H0z'/%3E%3Cpath fill='%23ffdf00' d='m15 2 11 8-11 8L4 10z'/%3E%3Ccircle cx='15' cy='10' r='4.2' fill='%23002776'/%3E%3Cpath d='M11 9.2c2.7-.7 5.6-.2 8 1.4' fill='none' stroke='%23fff' stroke-width='.7'/%3E%3C/svg%3E") !important; }
.directory-country-flag--ca { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23fff' d='M0 0h30v20H0z'/%3E%3Cpath fill='%23d80621' d='M0 0h6v20H0zM24 0h6v20h-6zM15 3l1.3 3 2.6-1.2-.8 3 2.5 1.2-3 1.8.9 2.4-2.8-.5.3 4.3h-2l.3-4.3-2.8.5.9-2.4-3-1.8 2.5-1.2-.8-3 2.6 1.2z'/%3E%3C/svg%3E") !important; }
.directory-country-flag--cn { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23de2910' d='M0 0h30v20H0z'/%3E%3Cg fill='%23ffde00'%3E%3Cpath d='m5 2 .8 2.2h2.3L6.2 5.6 7 8 5 6.6 3 8l.8-2.4-1.9-1.4h2.3z'/%3E%3Ccircle cx='10' cy='3' r='.7'/%3E%3Ccircle cx='12' cy='5.5' r='.7'/%3E%3Ccircle cx='11.5' cy='8.5' r='.7'/%3E%3Ccircle cx='9' cy='10.5' r='.7'/%3E%3C/g%3E%3C/svg%3E") !important; }
.directory-country-flag--cz { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23fff' d='M0 0h30v10H0z'/%3E%3Cpath fill='%23d7141a' d='M0 10h30v10H0z'/%3E%3Cpath fill='%2311457e' d='m0 0 13 10L0 20z'/%3E%3C/svg%3E") !important; }
.directory-country-flag--gb { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30'%3E%3Cpath fill='%23012169' d='M0 0h60v30H0z'/%3E%3Cpath stroke='%23fff' stroke-width='6' d='m0 0 60 30M60 0 0 30'/%3E%3Cpath stroke='%23c8102e' stroke-width='2.4' d='m0 0 60 30M60 0 0 30'/%3E%3Cpath fill='%23fff' d='M25 0h10v30H25zM0 10h60v10H0z'/%3E%3Cpath fill='%23c8102e' d='M27 0h6v30h-6zM0 12h60v6H0z'/%3E%3C/svg%3E") !important; }
.directory-country-flag--hk { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23de2910' d='M0 0h30v20H0z'/%3E%3Cg fill='%23fff' transform='translate(15 10)'%3E%3Cellipse cy='-3.5' rx='1.3' ry='3.2'/%3E%3Cellipse cy='-3.5' rx='1.3' ry='3.2' transform='rotate(72)'/%3E%3Cellipse cy='-3.5' rx='1.3' ry='3.2' transform='rotate(144)'/%3E%3Cellipse cy='-3.5' rx='1.3' ry='3.2' transform='rotate(216)'/%3E%3Cellipse cy='-3.5' rx='1.3' ry='3.2' transform='rotate(288)'/%3E%3C/g%3E%3C/svg%3E") !important; }
.directory-country-flag--in { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23ff9933' d='M0 0h30v6.67H0z'/%3E%3Cpath fill='%23fff' d='M0 6.67h30v6.66H0z'/%3E%3Cpath fill='%23138808' d='M0 13.33h30V20H0z'/%3E%3Ccircle cx='15' cy='10' r='2.2' fill='none' stroke='%23000080' stroke-width='.7'/%3E%3Ccircle cx='15' cy='10' r='.45' fill='%23000080'/%3E%3C/svg%3E") !important; }
.directory-country-flag--kr { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23fff' d='M0 0h30v20H0z'/%3E%3Cpath fill='%23cd2e3a' d='M19 10a4 4 0 0 0-8 0 2 2 0 0 1 4 0 2 2 0 0 0 4 0z'/%3E%3Cpath fill='%230047a0' d='M11 10a4 4 0 0 0 8 0 2 2 0 0 1-4 0 2 2 0 0 0-4 0z'/%3E%3Cg stroke='%23111' stroke-width='.7'%3E%3Cpath d='m5 4 4 2M4.5 5.5l4 2M21 13l4 2M21.5 11.5l4 2'/%3E%3C/g%3E%3C/svg%3E") !important; }
.directory-country-flag--sg { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23ef3340' d='M0 0h30v10H0z'/%3E%3Cpath fill='%23fff' d='M0 10h30v10H0z'/%3E%3Ccircle cx='7' cy='5' r='3.4' fill='%23fff'/%3E%3Ccircle cx='8.5' cy='4.5' r='3.1' fill='%23ef3340'/%3E%3Cg fill='%23fff'%3E%3Ccircle cx='10.5' cy='2.5' r='.45'/%3E%3Ccircle cx='12' cy='4' r='.45'/%3E%3Ccircle cx='11.4' cy='6' r='.45'/%3E%3Ccircle cx='9.6' cy='6.4' r='.45'/%3E%3C/g%3E%3C/svg%3E") !important; }
.directory-country-flag--tr { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23e30a17' d='M0 0h30v20H0z'/%3E%3Ccircle cx='12' cy='10' r='5' fill='%23fff'/%3E%3Ccircle cx='13.7' cy='10' r='4' fill='%23e30a17'/%3E%3Cpath fill='%23fff' d='m19 7.5.7 1.7 1.8.1-1.4 1.1.5 1.8-1.6-1-1.5 1 .5-1.8-1.4-1.1 1.8-.1z'/%3E%3C/svg%3E") !important; }
.directory-country-flag--tw { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23fe0000' d='M0 0h30v20H0z'/%3E%3Cpath fill='%23000195' d='M0 0h15v10H0z'/%3E%3Ccircle cx='7.5' cy='5' r='2.4' fill='%23fff'/%3E%3Ccircle cx='7.5' cy='5' r='1.5' fill='%23fff' stroke='%23000195' stroke-width='.5'/%3E%3C/svg%3E") !important; }
.directory-country-flag--us { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 20'%3E%3Cpath fill='%23fff' d='M0 0h30v20H0z'/%3E%3Cg fill='%23b22234'%3E%3Cpath d='M0 0h30v1.54H0zM0 3.08h30v1.54H0zM0 6.16h30V7.7H0zM0 9.24h30v1.54H0zM0 12.32h30v1.54H0zM0 15.4h30v1.54H0zM0 18.46h30V20H0z'/%3E%3C/g%3E%3Cpath fill='%233c3b6e' d='M0 0h12.5v10.8H0z'/%3E%3Cg fill='%23fff'%3E%3Ccircle cx='2' cy='2' r='.45'/%3E%3Ccircle cx='5' cy='2' r='.45'/%3E%3Ccircle cx='8' cy='2' r='.45'/%3E%3Ccircle cx='11' cy='2' r='.45'/%3E%3Ccircle cx='3.5' cy='4.8' r='.45'/%3E%3Ccircle cx='6.5' cy='4.8' r='.45'/%3E%3Ccircle cx='9.5' cy='4.8' r='.45'/%3E%3Ccircle cx='2' cy='7.7' r='.45'/%3E%3Ccircle cx='5' cy='7.7' r='.45'/%3E%3Ccircle cx='8' cy='7.7' r='.45'/%3E%3Ccircle cx='11' cy='7.7' r='.45'/%3E%3C/g%3E%3C/svg%3E") !important; }
.directory-country-flag--au::before,
.directory-country-flag--au::after,
.directory-country-flag--br::before,
.directory-country-flag--br::after,
.directory-country-flag--ca::before,
.directory-country-flag--ca::after,
.directory-country-flag--cn::before,
.directory-country-flag--cn::after,
.directory-country-flag--cz::before,
.directory-country-flag--cz::after,
.directory-country-flag--gb::before,
.directory-country-flag--gb::after,
.directory-country-flag--hk::before,
.directory-country-flag--hk::after,
.directory-country-flag--in::before,
.directory-country-flag--in::after,
.directory-country-flag--kr::before,
.directory-country-flag--kr::after,
.directory-country-flag--sg::before,
.directory-country-flag--sg::after,
.directory-country-flag--tr::before,
.directory-country-flag--tr::after,
.directory-country-flag--tw::before,
.directory-country-flag--tw::after,
.directory-country-flag--us::before,
.directory-country-flag--us::after { content: none !important; }

html body.product-directory-page .product-table__name,
html body.product-directory-page .product-table__company {
  display: block !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  -webkit-line-clamp: unset !important;
}

html body.product-directory-page .product-table__product-col { width: 19% !important; }
html body.product-directory-page .product-table__company-col { width: 16% !important; }
html body.product-directory-page .product-table__type-col { width: 12% !important; }
html body.product-directory-page .product-table__country-col { width: 7% !important; }
html body.product-directory-page .product-table__status-col { width: 15% !important; }
html body.product-directory-page .product-table__action-col { width: 7% !important; }
html body.product-directory-page .product-table__country-cell,
html body.company-directory-page .eco-company-table__country-cell { text-align: left !important; }

html body.product-directory-page .product-table td.product-table__action-col {
  padding-right: 36px !important;
}

html body.product-directory-page .product-table__profile {
  position: relative !important;
  right: 14px !important;
}

/* Compact, body-led quick-view hierarchy: headings lead; copy and values support. */
html body.product-directory-page.product-directory-page .product-quickview__title {
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 28px !important;
  font-weight: 720 !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
}

html body.product-directory-page.product-directory-page .product-quickview__sub {
  font-size: 12.5px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  color: rgba(23, 23, 19, .56) !important;
}

html body.product-directory-page.product-directory-page .product-quickview__label {
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: -.01em !important;
  color: #171713 !important;
}

html body.product-directory-page.product-directory-page .product-quickview__copy {
  max-width: 60ch !important;
  margin-top: 10px !important;
  font-size: 14px !important;
  font-weight: 450 !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  color: rgba(23, 23, 19, .72) !important;
}

html body.product-directory-page.product-directory-page .product-sidebar__title,
html body.company-directory-page.company-directory-page .ecosystem-sidebar__title {
  font-family: Inter, var(--site-body), system-ui, sans-serif !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: -.018em !important;
  text-transform: none !important;
  color: #171713 !important;
}

html body.product-directory-page.product-directory-page .product-quickview__group-title {
  margin: 16px 0 5px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: -.005em !important;
  text-transform: none !important;
  color: #171713 !important;
}

html body.product-directory-page.product-directory-page .product-quickview__group:first-child .product-quickview__group-title {
  margin-top: 12px !important;
}

html body.product-directory-page.product-directory-page .product-quickview__row {
  padding-block: 8px !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

html body.product-directory-page.product-directory-page .product-quickview__row span:first-child {
  font-size: 12px !important;
  font-weight: 560 !important;
  color: rgba(23, 23, 19, .52) !important;
}

html body.product-directory-page.product-directory-page .product-quickview__row span:last-child {
  font-size: 13px !important;
  font-weight: 650 !important;
  color: rgba(23, 23, 19, .88) !important;
}

@media (min-width: 981px) and (max-width: 1100px) {
  html body.product-directory-page .directory-toolbar {
    grid-template-columns: minmax(0, 1fr) minmax(145px, 165px) 44px auto 82px !important;
    gap: 8px !important;
  }

  html body.product-directory-page .product-table {
    width: calc(100% - 2px) !important;
    min-width: 0 !important;
  }

  html body.product-directory-page .product-table__action-col {
    padding-inline: 4px !important;
  }

  html body.product-directory-page .product-table__profile {
    min-width: 34px !important;
    padding-inline: 6px !important;
    right: 0 !important;
  }
}

@media (max-width: 820px) {
  html body.product-directory-page .directory-view-toggle {
    display: none !important;
  }
}

/* Unified directory typography: one black Inter system, including quick views and forms. */
html body.company-directory-page :where(.directory-shell, .ecosystem-directory-shell, .ecosystem-sidebar, .corrections-modal),
html body.product-directory-page :where(.product-directory-shell, .directory-shell, .product-sidebar, .product-quickview, .product-quickview__panel, .corrections-modal) {
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  color: #171713 !important;
}

html body.company-directory-page :where(.directory-shell, .ecosystem-directory-shell, .ecosystem-sidebar, .corrections-modal) :where(h1, h2, h3, h4, h5, h6, p, li, dt, dd, label, legend, button, input, select, textarea, th, td, a, span, strong, em),
html body.product-directory-page :where(.product-directory-shell, .directory-shell, .product-sidebar, .product-quickview, .product-quickview__panel, .corrections-modal) :where(h1, h2, h3, h4, h5, h6, p, li, dt, dd, label, legend, button, input, select, textarea, th, td, a, span, strong, em) {
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  color: #171713 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.product-directory-page .product-quickview__sub,
html body.product-directory-page .product-quickview__copy,
html body.product-directory-page .product-quickview__row span:first-child,
html body.product-directory-page .product-quickview__row span:last-child,
html body.product-directory-page .product-quickview__source-link,
html body.company-directory-page :where(.directory-card__meta, .ecosystem-table__meta),
html body.product-directory-page :where(.product-card__meta, .product-table__meta, .directory-count) {
  color: #171713 !important;
}

html body.product-directory-page :where(.product-quickview__title, .product-quickview__label, .product-quickview__group-title, .corrections-modal-title),
html body.company-directory-page :where(.corrections-modal-title) {
  color: #171713 !important;
  font-weight: 750 !important;
  line-height: 1.2 !important;
}

html body.product-directory-page :where(.product-quickview__copy, .product-quickview__sub, .corrections-modal-copy, .corrections-modal-contact),
html body.company-directory-page :where(.corrections-modal-copy, .corrections-modal-contact) {
  color: #171713 !important;
  font-size: 14px !important;
  font-weight: 450 !important;
  line-height: 1.5 !important;
}

html body.company-directory-page :where(.submit-source, .corrections-submit-btn, .eco-company-card__view),
html body.product-directory-page :where(.submit-source, .corrections-submit-btn, .product-card__detail, .product-table__profile, .product-quickview__button--dark, .directory-view-btn.is-active) {
  color: #fff !important;
}

html body.company-directory-page :where(.directory-shell, .ecosystem-directory-shell, .corrections-modal) a,
html body.product-directory-page :where(.product-directory-shell, .directory-shell, .product-quickview, .corrections-modal) a,
html body.company-directory-page :where(.directory-shell, .ecosystem-directory-shell, .corrections-modal) a:hover,
html body.product-directory-page :where(.product-directory-shell, .directory-shell, .product-quickview, .corrections-modal) a:hover,
html body.company-directory-page :where(.directory-shell, .ecosystem-directory-shell, .corrections-modal) a:focus-visible,
html body.product-directory-page :where(.product-directory-shell, .directory-shell, .product-quickview, .corrections-modal) a:focus-visible {
  text-decoration: none !important;
}

/* Shared Product Directory system for Companies, Suppliers, and Components. */
body.company-directory-page,
body.supplier-directory-page,
body.component-directory-page {
  --df-ink: #171713;
  --df-stone: #efeee9;
  --df-inset: #fbfaf7;
  --df-hover: #fffefa;
  --df-green: #2f6b4c;
  min-height: 100dvh !important;
  background: var(--df-stone) !important;
  color: var(--df-ink) !important;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
}

html:has(body.supplier-directory-page),
html:has(body.component-directory-page) {
  min-height: 100%;
  background: var(--df-stone, #efeee9) !important;
}

html body.supplier-directory-page header.site-header,
html body.component-directory-page header.site-header {
  height: 70px !important;
  border: 0 !important;
  background: var(--df-stone) !important;
  box-shadow: none !important;
}

html body.supplier-directory-page header.site-header nav.site-header-nav-desktop,
html body.component-directory-page header.site-header nav.site-header-nav-desktop {
  display: flex !important;
  min-height: 44px !important;
  align-items: center !important;
  gap: 2px !important;
  padding: 5px !important;
  border: 1px solid rgba(17, 17, 15, .055) !important;
  border-radius: 16px !important;
  background: #faf9f6 !important;
  box-shadow: 0 14px 34px -30px rgba(17, 17, 15, .58) !important;
}

html body.supplier-directory-page header.site-header nav.site-header-nav-desktop > a,
html body.component-directory-page header.site-header nav.site-header-nav-desktop > a,
html body.supplier-directory-page header.site-header .nav-dropdown-toggle,
html body.component-directory-page header.site-header .nav-dropdown-toggle {
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 10px !important;
  border-radius: 11px !important;
  color: var(--df-ink) !important;
}

html body.supplier-directory-page header.site-header nav.site-header-nav-desktop > a.active,
html body.component-directory-page header.site-header nav.site-header-nav-desktop > a.active,
html body.supplier-directory-page header.site-header .nav-dropdown-toggle.active,
html body.component-directory-page header.site-header .nav-dropdown-toggle.active {
  background: #e8e7e1 !important;
  color: var(--df-ink) !important;
  box-shadow: none !important;
}

html body.supplier-directory-page .home-logo-text,
html body.component-directory-page .home-logo-text,
html body.supplier-directory-page .home-site-search-trigger,
html body.component-directory-page .home-site-search-trigger {
  color: var(--df-ink) !important;
}

/* Directory wordmarks use the same type family as the redesigned headings;
   positioning remains owned by the shared masthead. */
@media (min-width: 901px) {
  html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page):is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page)
    header.site-header.site-header .home-logo-text {
    font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: -.04em !important;
    text-transform: uppercase !important;
  }
}

html body.component-directory-page #ssr-component-directory {
  display: none !important;
}

@media (min-width: 901px) {
  html body.company-directory-page,
  html body.supplier-directory-page,
  html body.component-directory-page {
    height: 100dvh !important;
    overflow: hidden !important;
  }

  html body.company-directory-page .page-content,
  html body.supplier-directory-page main.page,
  html body.supplier-directory-page .k-section.signal-feed-page,
  html body.component-directory-page .k-section.signal-feed-page {
    width: 100% !important;
    max-width: none !important;
    height: calc(100dvh - 70px) !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 7px 24px 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  html body.supplier-directory-page main.page > .section-divider {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    background: transparent !important;
  }

  html body.company-directory-page .ecosystem-directory-shell,
  html body.supplier-directory-page .supplier-directory-shell,
  html body.component-directory-page .component-directory-shell {
    display: grid !important;
    grid-template-columns: 292px minmax(0, 1fr) !important;
    gap: 24px !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    align-items: stretch !important;
    background: transparent !important;
  }

  html body.company-directory-page .ecosystem-main,
  html body.supplier-directory-page .supplier-main,
  html body.component-directory-page .component-main {
    height: 100% !important;
    min-height: 0 !important;
    padding: 0 14px 32px 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    scrollbar-width: none !important;
  }

  html body.company-directory-page .ecosystem-main::-webkit-scrollbar,
  html body.supplier-directory-page .supplier-main::-webkit-scrollbar,
  html body.component-directory-page .component-main::-webkit-scrollbar {
    width: 0 !important;
  }
}

html body.company-directory-page .ecosystem-sidebar,
html body.supplier-directory-page .supplier-sidebar,
html body.component-directory-page .component-sidebar {
  position: static !important;
  top: auto !important;
  height: 100% !important;
  max-height: 100% !important;
  min-height: 0 !important;
  padding: 20px 14px 24px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border: 0 !important;
  border-radius: 20px !important;
  background: var(--df-inset) !important;
  box-shadow: none !important;
  scrollbar-width: none !important;
  box-sizing: border-box !important;
}

html body.company-directory-page .ecosystem-main,
html body.supplier-directory-page .supplier-main,
html body.component-directory-page .component-main {
  background: transparent !important;
}

html body.company-directory-page .ecosystem-sidebar::-webkit-scrollbar,
html body.supplier-directory-page .supplier-sidebar::-webkit-scrollbar,
html body.component-directory-page .component-sidebar::-webkit-scrollbar {
  width: 0 !important;
}

html body.company-directory-page .ecosystem-sidebar__top,
html body.supplier-directory-page .supplier-sidebar__top,
html body.component-directory-page .component-sidebar__top {
  position: static !important;
  min-height: 38px !important;
  margin: 0 4px 10px !important;
  padding: 0 6px !important;
  border: 0 !important;
  background: transparent !important;
}

html body.company-directory-page .ecosystem-sidebar__title,
html body.supplier-directory-page .supplier-sidebar__title,
html body.component-directory-page .component-sidebar__title {
  color: var(--df-ink) !important;
  font: 800 20px/1.1 Inter, system-ui, sans-serif !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
}

html body.company-directory-page .ecosystem-sidebar__clear,
html body.supplier-directory-page .supplier-sidebar__clear,
html body.component-directory-page .component-sidebar__clear {
  color: var(--df-ink) !important;
  font: 600 12px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  text-transform: none !important;
}

html body.company-directory-page .eco-facet-group,
html body.supplier-directory-page .facet-group,
html body.component-directory-page .facet-group {
  margin: 0 0 4px !important;
  padding: 0 !important;
  border: 0 !important;
}

html body.company-directory-page .eco-facet-group summary,
html body.supplier-directory-page .facet-group summary,
html body.component-directory-page .facet-group summary {
  min-height: 48px !important;
  padding: 0 13px !important;
  border: 0 !important;
  border-radius: 11px !important;
  background: transparent !important;
  color: var(--df-ink) !important;
  font: 700 14px/1.2 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .eco-facet-group summary:hover,
html body.company-directory-page .eco-facet-group[open] summary,
html body.supplier-directory-page .facet-group summary:hover,
html body.supplier-directory-page .facet-group[open] summary,
html body.component-directory-page .facet-group summary:hover,
html body.component-directory-page .facet-group[open] summary {
  background: #efeee9 !important;
}

html body.company-directory-page .eco-facet-options,
html body.supplier-directory-page .facet-options,
html body.component-directory-page .facet-options {
  display: grid !important;
  gap: 2px !important;
  margin: 4px 0 8px !important;
  padding: 0 !important;
}

html body.company-directory-page .eco-facet-option,
html body.supplier-directory-page .facet-option,
html body.component-directory-page .facet-option {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) auto !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 6px 13px 6px 16px !important;
  gap: 9px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: var(--df-ink) !important;
  font: 500 13px/1.25 Inter, system-ui, sans-serif !important;
  box-sizing: border-box !important;
}

html body.company-directory-page .eco-facet-option:hover,
html body.supplier-directory-page .facet-option:hover,
html body.component-directory-page .facet-option:hover {
  background: #f2f1ec !important;
}

html body.company-directory-page .eco-facet-option:has(input:checked),
html body.supplier-directory-page .facet-option:has(input:checked),
html body.component-directory-page .facet-option:has(input:checked) {
  background: #e1ece5 !important;
  color: #24583c !important;
}

html body.company-directory-page .eco-facet-option input,
html body.supplier-directory-page .facet-option input,
html body.component-directory-page .facet-option input {
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  accent-color: var(--df-green) !important;
}

html body.company-directory-page .eco-facet-option__label,
html body.supplier-directory-page .facet-option__label,
html body.component-directory-page .facet-option__label {
  overflow: visible !important;
  color: inherit !important;
  text-overflow: clip !important;
  white-space: normal !important;
}

html body.company-directory-page .eco-facet-option__count,
html body.supplier-directory-page .facet-option__count,
html body.component-directory-page .facet-option__count {
  align-self: center !important;
  color: rgba(23, 23, 19, .46) !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
}

html body.company-directory-page .directory-toolbar,
html body.supplier-directory-page .supplier-searchbar,
html body.component-directory-page .component-searchbar {
  display: grid !important;
  grid-template-columns: minmax(280px, 1fr) minmax(210px, 280px) 44px auto 82px !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 7px !important;
  padding: 0 !important;
  border: 0 !important;
}

html body.company-directory-page .directory-search,
html body.supplier-directory-page .supplier-searchbar > div:first-child,
html body.component-directory-page .component-searchbar > div:first-child,
html body.company-directory-page .directory-sort,
html body.supplier-directory-page .directory-sort,
html body.component-directory-page .directory-sort {
  min-width: 0 !important;
  height: 44px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--df-inset) !important;
  box-shadow: none !important;
}

html body.company-directory-page .directory-search input,
html body.supplier-directory-page .supplier-searchbar input,
html body.component-directory-page .component-searchbar input {
  width: 100% !important;
  height: 44px !important;
  padding: 0 16px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--df-inset) !important;
  color: var(--df-ink) !important;
  font: 500 13px/1 Inter, system-ui, sans-serif !important;
  box-shadow: none !important;
  outline: none !important;
}

html body.company-directory-page .directory-sort,
html body.supplier-directory-page .directory-sort,
html body.component-directory-page .directory-sort {
  display: flex !important;
  align-items: center !important;
  padding: 0 16px !important;
}

html body.company-directory-page .directory-sort-label,
html body.supplier-directory-page .directory-sort-label,
html body.component-directory-page .directory-sort-label {
  margin-right: 7px !important;
  color: rgba(23, 23, 19, .48) !important;
  font: 500 12px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .directory-sort-value,
html body.supplier-directory-page .directory-sort-value,
html body.component-directory-page .directory-sort-value {
  color: var(--df-ink) !important;
  font: 650 13px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .directory-sort-chevron,
html body.supplier-directory-page .directory-sort-chevron,
html body.component-directory-page .directory-sort-chevron {
  display: none !important;
}

html body.company-directory-page .directory-sort-menu,
html body.supplier-directory-page .directory-sort-menu,
html body.component-directory-page .directory-sort-menu {
  margin-top: 7px !important;
  padding: 7px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #fffefa !important;
  box-shadow: 0 18px 46px rgba(31, 29, 24, .14) !important;
}

html body.company-directory-page .directory-sort-menu-item,
html body.supplier-directory-page .directory-sort-menu-item,
html body.component-directory-page .directory-sort-menu-item {
  min-height: 38px !important;
  padding: 10px 12px !important;
  border: 0 !important;
  border-radius: 9px !important;
  color: var(--df-ink) !important;
  font: 500 13px/1.25 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .directory-sort-menu-item:hover,
html body.company-directory-page .directory-sort-menu-item.active,
html body.supplier-directory-page .directory-sort-menu-item:hover,
html body.supplier-directory-page .directory-sort-menu-item.active,
html body.component-directory-page .directory-sort-menu-item:hover,
html body.component-directory-page .directory-sort-menu-item.active {
  background: #e4eee8 !important;
  color: var(--df-ink) !important;
}

html body.company-directory-page .directory-sort-direction,
html body.supplier-directory-page .directory-sort-direction,
html body.component-directory-page .directory-sort-direction {
  width: 44px !important;
  height: 44px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--df-inset) !important;
  color: var(--df-green) !important;
  box-shadow: none !important;
}

html body.company-directory-page .directory-view-toggle,
html body.supplier-directory-page .directory-view-toggle,
html body.component-directory-page .directory-view-toggle {
  width: 162px !important;
  min-width: 162px !important;
  flex: 0 0 162px !important;
  display: inline-flex !important;
  height: 44px !important;
  padding: 4px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--df-inset) !important;
  box-shadow: none !important;
}

html body.company-directory-page .directory-view-btn,
html body.supplier-directory-page .directory-view-btn,
html body.component-directory-page .directory-view-btn {
  min-width: 74px !important;
  padding: 0 11px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: transparent !important;
  color: var(--df-ink) !important;
  font: 600 12px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .directory-view-btn.is-active,
html body.supplier-directory-page .directory-view-btn.is-active,
html body.component-directory-page .directory-view-btn.is-active,
html body.company-directory-page .directory-view-btn.is-active *,
html body.supplier-directory-page .directory-view-btn.is-active *,
html body.component-directory-page .directory-view-btn.is-active * {
  background-color: var(--df-ink) !important;
  color: #fff !important;
}

html body.company-directory-page #directory-submit-btn,
html body.supplier-directory-page #directory-submit-btn,
html body.component-directory-page #directory-submit-btn,
html body.company-directory-page .submit-source,
html body.supplier-directory-page .submit-source,
html body.component-directory-page .submit-source {
  width: 82px !important;
  min-width: 82px !important;
  max-width: 82px !important;
  height: 36px !important;
  min-height: 36px !important;
  justify-self: end !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: var(--df-ink) !important;
  color: #fff !important;
  font: 650 12px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: 0 4px 12px rgba(20, 20, 18, .08) !important;
}

html body.supplier-directory-page .card-grid,
html body.component-directory-page .directory__results:not(.directory__results--table) {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

html body.component-directory-page .component-main[data-view="table"] .directory__results {
  display: none !important;
}

html body.supplier-directory-page .supplier-card,
html body.component-directory-page .product-card {
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: var(--df-inset) !important;
  box-shadow: 0 7px 20px rgba(31, 29, 24, .055) !important;
  clip-path: inset(0 round 18px) !important;
  transition: transform 150ms ease, box-shadow 150ms ease !important;
}

html body.supplier-directory-page .supplier-card:hover,
html body.component-directory-page .product-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 26px rgba(31, 29, 24, .085) !important;
}

html body.supplier-directory-page .supplier-card__visual,
html body.component-directory-page .product-card__media {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-card__visual img,
html body.component-directory-page .product-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border: 0 !important;
  border-radius: 0 !important;
}

html body.supplier-directory-page .supplier-card__body,
html body.component-directory-page .product-card__body {
  display: flex !important;
  min-height: 150px !important;
  flex-direction: column !important;
  padding: 16px !important;
  border: 0 !important;
  background: transparent !important;
}

/* Component cards use the same continuous warm inset surface as Product and Company cards. */
html body.component-directory-page #directory-results .product-card {
  background: var(--df-inset, #fbfaf7) !important;
}

html body.component-directory-page #directory-results :where(
  .product-card__body,
  .product-card__meta,
  .product-card__line
) {
  background: transparent !important;
  background-color: transparent !important;
}

html body.supplier-directory-page .supplier-card__name,
html body.component-directory-page .product-card__name {
  color: var(--df-ink) !important;
  font: 700 18px/1.15 Inter, system-ui, sans-serif !important;
  letter-spacing: -.02em !important;
  text-decoration: none !important;
  text-transform: none !important;
}

html body.supplier-directory-page .supplier-card__location,
html body.supplier-directory-page .supplier-card__score,
html body.component-directory-page .product-card__line,
html body.component-directory-page .product-card__classification {
  color: var(--df-ink) !important;
  font: 500 12px/1.35 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* Supplier card hierarchy: product-directory rhythm, flag-only geography, chromatic company types. */
html body.supplier-directory-page .supplier-card__body {
  min-height: 152px !important;
  padding: 18px !important;
}

html body.supplier-directory-page .supplier-card__body-link {
  display: flex !important;
  min-width: 0 !important;
  height: 100% !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  color: inherit !important;
  text-decoration: none !important;
}

html body.supplier-directory-page .supplier-card__type {
  width: fit-content !important;
  max-width: 100% !important;
  min-height: 25px !important;
  margin-top: 11px !important;
  padding: 6px 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #171713 !important;
  font: 700 10px/1.25 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.supplier-directory-page .supplier-card__meta {
  display: flex !important;
  width: 100% !important;
  min-width: 0 !important;
  margin-top: auto !important;
  padding-top: 20px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

html body.supplier-directory-page .supplier-card__location {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

html body.supplier-directory-page .supplier-card__score {
  min-width: 0 !important;
  margin: 0 !important;
  color: rgba(23, 23, 19, .62) !important;
  text-align: right !important;
}

html body.supplier-directory-page .supplier-table__pill--tint-0 { background: #ffd9d2 !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-1 { background: #d8e7ff !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-2 { background: #d9f2e5 !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-3 { background: #eadcff !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-4 { background: #d5f2ff !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-5 { background: #d4f3f1 !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-6 { background: #ffd9e3 !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-7 { background: #e1ddff !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-8 { background: #d3eee7 !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-9 { background: #e8f5c8 !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-10 { background: #dbe9ff !important; color: #171713 !important; }
html body.supplier-directory-page .supplier-table__pill--tint-11 { background: #f5d9ef !important; color: #171713 !important; }

/* Component type pills: Product Directory proportions with a stable type-led palette. */
html body.component-directory-page #directory-results .product-card__meta {
  display: grid !important;
  gap: 9px !important;
  margin: 10px 0 0 !important;
  background: transparent !important;
}

html body.component-directory-page #directory-results .product-card__line {
  color: rgba(23, 23, 19, .66) !important;
  font: 500 12px/1.3 Inter, system-ui, sans-serif !important;
}

html body.component-directory-page #directory-results .product-card__classification-row {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  min-width: 0 !important;
}

html body.component-directory-page #directory-results .product-card__country {
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

html body.component-directory-page #directory-results .product-card__classification,
html body.component-directory-page .component-table .component-table__pill {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-height: 26px !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 5px 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #171713 !important;
  font: 600 10px/1.2 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
}

html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-0 { background: #ffd9d2 !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-1 { background: #d8e7ff !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-2 { background: #d9f2e5 !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-3 { background: #eadcff !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-4 { background: #d5f2ff !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-5 { background: #d4f3f1 !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-6 { background: #ffd9e3 !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-7 { background: #e1ddff !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-8 { background: #d3eee7 !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-9 { background: #e8f5c8 !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-10 { background: #dbe9ff !important; }
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table .component-table__pill).product-pill--tint-11 { background: #f5d9ef !important; }

html body.company-directory-page :where(.eco-company-card__meta-label, .eco-company-card__meta-value),
html body.supplier-directory-page :where(.supplier-card__location, .supplier-card__score),
html body.component-directory-page :where(.product-card__line, .product-card__classification) {
  color: var(--df-ink) !important;
  font-family: Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.supplier-directory-page .supplier-card__action,
html body.component-directory-page .product-card__action {
  width: auto !important;
  max-width: max-content !important;
  min-width: 64px !important;
  min-height: 34px !important;
  margin: auto 0 0 !important;
  align-self: flex-start !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: var(--df-ink) !important;
  color: #fff !important;
  font: 650 11px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.supplier-directory-page .supplier-card__action:hover,
html body.component-directory-page .product-card__action:hover {
  background: #2a2a25 !important;
  color: #fff !important;
  transform: none !important;
}

html body.company-directory-page :where(.eco-company-table-shell),
html body.supplier-directory-page :where(.supplier-table-wrap),
html body.component-directory-page :where(.component-table-wrap) {
  overflow-x: auto !important;
  overflow-y: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  scrollbar-width: none !important;
}

html body.company-directory-page :where(.eco-company-table-shell)::-webkit-scrollbar,
html body.supplier-directory-page :where(.supplier-table-wrap)::-webkit-scrollbar,
html body.component-directory-page :where(.component-table-wrap)::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
}

html body.supplier-directory-page :where(.supplier-directory-shell, .supplier-quickview) a,
html body.component-directory-page :where(.component-directory-shell, .product-quickview) a,
html body.supplier-directory-page :where(.supplier-directory-shell, .supplier-quickview) a:hover,
html body.component-directory-page :where(.component-directory-shell, .product-quickview) a:hover,
html body.supplier-directory-page :where(.supplier-directory-shell, .supplier-quickview) a:focus-visible,
html body.component-directory-page :where(.component-directory-shell, .product-quickview) a:focus-visible {
  text-decoration: none !important;
}

html body.supplier-directory-page :where(.supplier-table td, .supplier-table button, .supplier-quickview__source a),
html body.component-directory-page :where(.component-table td, .component-table button, .product-quickview__source a) {
  color: var(--df-ink) !important;
}

html body.company-directory-page .eco-company-table,
html body.supplier-directory-page .supplier-table,
html body.component-directory-page .component-table {
  border-collapse: separate !important;
  border-spacing: 0 10px !important;
  background: transparent !important;
}

html body.company-directory-page .eco-company-table th,
html body.supplier-directory-page .supplier-table th,
html body.component-directory-page .component-table th {
  padding: 10px 14px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--df-ink) !important;
  font: 600 11px/1.2 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .eco-company-table td,
html body.supplier-directory-page .supplier-table td,
html body.component-directory-page .component-table td {
  padding: 12px 14px !important;
  border: 0 !important;
  background: var(--df-inset) !important;
  color: var(--df-ink) !important;
  font: 500 12.5px/1.3 Inter, system-ui, sans-serif !important;
}

html body.company-directory-page .eco-company-table td:first-child,
html body.supplier-directory-page .supplier-table td:first-child,
html body.component-directory-page .component-table td:first-child {
  border-radius: 16px 0 0 16px !important;
}

html body.company-directory-page .eco-company-table td:last-child,
html body.supplier-directory-page .supplier-table td:last-child,
html body.component-directory-page .component-table td:last-child {
  border-radius: 0 16px 16px 0 !important;
}

html body.company-directory-page .eco-range-filter {
  gap: 9px !important;
  padding: 8px 14px 14px !important;
}

html body.company-directory-page .eco-range-filter__meta {
  color: var(--df-ink) !important;
  font: 600 11px/1.2 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page .eco-range-filter__sliders::before {
  top: 7px !important;
  height: 4px !important;
  border-radius: 999px !important;
  background: #d7d7d0 !important;
}

html body.company-directory-page .eco-range-filter input[type="range"]::-webkit-slider-thumb {
  width: 16px !important;
  height: 16px !important;
  margin-top: -6px !important;
  border: 3px solid #fff !important;
  border-radius: 50% !important;
  background: var(--df-green) !important;
  box-shadow: 0 1px 5px rgba(23, 23, 19, .2) !important;
}

html body.company-directory-page .eco-range-filter input[type="range"]::-moz-range-thumb {
  width: 12px !important;
  height: 12px !important;
  border: 3px solid #fff !important;
  border-radius: 50% !important;
  background: var(--df-green) !important;
  box-shadow: 0 1px 5px rgba(23, 23, 19, .2) !important;
}

html body.company-directory-page :where(.company-quickview),
html body.supplier-directory-page :where(.supplier-quickview),
html body.component-directory-page :where(.product-quickview) {
  overflow: hidden !important;
  overscroll-behavior: none !important;
}

html body.company-directory-page .company-quickview__panel,
html body.supplier-directory-page .supplier-quickview__panel,
html body.component-directory-page .product-quickview__panel {
  width: min(712px, calc(100vw - 36px)) !important;
  max-height: calc(100dvh - 36px) !important;
  padding: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: var(--df-stone) !important;
  box-shadow: 0 28px 80px rgba(20, 19, 16, .24) !important;
  clip-path: inset(0 round 24px) !important;
  scrollbar-width: none !important;
}

html body.supplier-directory-page .supplier-quickview__content,
html body.component-directory-page .product-quickview__content {
  padding: 22px !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-quickview__media,
html body.component-directory-page .product-quickview__media {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 0 20px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: var(--df-inset) !important;
  clip-path: inset(0 round 18px) !important;
}

html body.supplier-directory-page .supplier-quickview__media img {
  width: 100% !important;
  height: 100% !important;
  padding: clamp(24px, 6vw, 72px) !important;
  object-fit: contain !important;
  box-sizing: border-box !important;
}

html body.supplier-directory-page .supplier-quickview__body {
  padding: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-quickview__title,
html body.component-directory-page .product-quickview__title {
  color: var(--df-ink) !important;
  font: 750 28px/1.08 Inter, system-ui, sans-serif !important;
  letter-spacing: -.035em !important;
}

html body.supplier-directory-page .supplier-quickview__title {
  margin-bottom: 10px !important;
  font-size: 30px !important;
  font-weight: 760 !important;
}

html body.supplier-directory-page .supplier-quickview__summary,
html body.component-directory-page .product-quickview__copy {
  color: var(--df-ink) !important;
  font: 450 14px/1.5 Inter, system-ui, sans-serif !important;
}

html body.supplier-directory-page .supplier-quickview__summary {
  max-width: 62ch !important;
  margin-bottom: 26px !important;
  color: rgba(31,29,24,.68) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

html body.supplier-directory-page :where(.supplier-quickview__facts, .supplier-quickview__section),
html body.component-directory-page :where(.product-quickview__section, .product-quickview__groups, .product-quickview__group-list) {
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body.supplier-directory-page .supplier-quickview__facts {
  gap: 18px !important;
  margin: 24px 0 !important;
}

html body.supplier-directory-page .supplier-quickview__fact,
html body.supplier-directory-page .supplier-quickview__row,
html body.component-directory-page .product-quickview__row {
  border: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page .supplier-quickview__section {
  margin-top: 24px !important;
  padding: 0 !important;
}

html body.supplier-directory-page .supplier-quickview__section > .supplier-quickview__label {
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

html body.supplier-directory-page :where(.supplier-quickview__label, .supplier-quickview__fact-label),
html body.component-directory-page :where(.product-quickview__label, .product-quickview__group-title) {
  color: var(--df-ink) !important;
  font: 750 15px/1.25 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.supplier-directory-page :where(.supplier-quickview__fact-value, .supplier-quickview__row span),
html body.component-directory-page :where(.product-quickview__row span) {
  color: var(--df-ink) !important;
  font: 500 13px/1.4 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.supplier-directory-page .supplier-quickview__row span:last-child {
  color: rgba(31,29,24,.82) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

html body.supplier-directory-page .supplier-quickview__button,
html body.component-directory-page .product-quickview__button {
  min-height: 38px !important;
  border: 0 !important;
  border-radius: 10px !important;
  color: var(--df-ink) !important;
  font: 650 12px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
}

html body.supplier-directory-page .supplier-quickview__button--dark,
html body.component-directory-page .product-quickview__button--dark {
  background: var(--df-ink) !important;
  color: #fff !important;
}

html body.company-directory-page .company-quickview__panel::-webkit-scrollbar,
html body.supplier-directory-page .supplier-quickview__panel::-webkit-scrollbar,
html body.component-directory-page .product-quickview__panel::-webkit-scrollbar {
  width: 0 !important;
}

html body.company-directory-page #company-quickview-content,
html body.supplier-directory-page .supplier-quickview__content,
html body.component-directory-page .product-quickview__content {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

html body.company-directory-page :where(.company-quickview__title, .company-quickview__summary, .company-quickview__fact-label, .company-quickview__fact-value, .company-quickview__event-title),
html body.supplier-directory-page :where(.supplier-quickview__title, .supplier-quickview__summary, .supplier-quickview__label, .supplier-quickview__row span, .supplier-quickview__button),
html body.component-directory-page :where(.product-quickview__title, .product-quickview__sub, .product-quickview__label, .product-quickview__copy, .product-quickview__row span, .product-quickview__button) {
  color: var(--df-ink) !important;
  font-family: Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.company-directory-page :where(.company-quickview__profile),
html body.supplier-directory-page :where(.supplier-quickview__button--dark),
html body.component-directory-page :where(.product-quickview__button--dark),
html body.company-directory-page :where(.company-quickview__profile) *,
html body.supplier-directory-page :where(.supplier-quickview__button--dark) *,
html body.component-directory-page :where(.product-quickview__button--dark) * {
  color: #fff !important;
}

html body.supplier-directory-page .supplier-quickview__actions {
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  margin-top: 24px !important;
}

html body.supplier-directory-page .supplier-quickview__watch-proxy {
  width: auto !important;
  min-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  gap: 6px !important;
  padding: 0 13px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--df-stone) !important;
  color: #a54c42 !important;
}

html body.supplier-directory-page .supplier-quickview__watch-proxy .k-watch__icon {
  color: #a54c42 !important;
  font-size: 19px !important;
  line-height: 1 !important;
}

html body.supplier-directory-page .supplier-quickview__watch-count {
  color: var(--df-ink) !important;
  font: 700 12px/1 Inter,system-ui,sans-serif !important;
}

html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark {
  min-height: 44px !important;
  padding: 0 17px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--df-stone) !important;
  color: var(--df-ink) !important;
  font: 700 13px/1 Inter,system-ui,sans-serif !important;
}

html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark * { color: inherit !important; }

html body.supplier-directory-page :is(.supplier-quickview__watch-proxy,.supplier-quickview__actions .supplier-quickview__button--dark):hover,
html body.supplier-directory-page :is(.supplier-quickview__watch-proxy,.supplier-quickview__actions .supplier-quickview__button--dark):focus-visible {
  background: #e8e6df !important;
  color: #24583c !important;
  box-shadow: 0 0 0 3px rgba(47,107,76,.08) !important;
  outline: none !important;
}

/* Component directory polish: country remains filterable without crowding results. */
html body.component-directory-page,
html body.component-directory-page .k-section.signal-feed-page,
html body.component-directory-page .component-directory-shell,
html body.component-directory-page .component-main {
  background: #efeee9 !important;
}

html body.component-directory-page .site-footer,
html body.component-directory-page .site-footer--editorial {
  background: #efeee9 !important;
}

html body.component-directory-page .product-quickview__panel {
  box-sizing: border-box !important;
  background: #faf9f6 !important;
}

html body.component-directory-page .product-quickview__top,
html body.component-directory-page .product-quickview__content {
  width: 100% !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
  background: transparent !important;
}

html body.component-directory-page :where(.product-card-watch, .product-quickview__actions .k-watch) .k-watch__label,
html body.component-directory-page :where(.product-card-watch, .product-quickview__actions .k-watch) .k-watch__count {
  display: none !important;
}

/* Compact component-card watch controls are icon-only. The shared active
   state normally swaps the heart for a count; counts are intentionally hidden
   here, so retain the filled heart instead of leaving a blank circle. */
html body.component-directory-page .product-card-watch[aria-pressed="true"] .k-watch__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #a64b3e !important;
}

html body.component-directory-page .product-quickview__actions {
  align-items: center !important;
  gap: 14px !important;
}

html body.component-directory-page .product-quickview__actions .product-quickview__button--dark {
  min-height: 36px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--df-ink) !important;
  font-weight: 700 !important;
}

html body.component-directory-page .product-quickview__actions .k-watch {
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #efeee9 !important;
}

html body.component-directory-page .product-quickview__actions .k-watch__icon {
  margin: 0 !important;
  font-size: 20px !important;
}

@media (max-width: 1200px) {
  html body.supplier-directory-page .card-grid,
  html body.component-directory-page .directory__results:not(.directory__results--table) {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  html body.company-directory-page .directory-toolbar,
  html body.supplier-directory-page .supplier-searchbar,
  html body.component-directory-page .component-searchbar {
    grid-template-columns: minmax(250px, 1fr) minmax(180px, 230px) 44px auto 82px !important;
    gap: 9px !important;
  }
}

@media (max-width: 900px) {
  html body.company-directory-page,
  html body.supplier-directory-page,
  html body.component-directory-page {
    height: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  html body.company-directory-page .page-content,
  html body.supplier-directory-page .k-section.signal-feed-page,
  html body.component-directory-page .k-section.signal-feed-page {
    height: auto !important;
    padding: 12px !important;
    overflow: visible !important;
  }

  html body.company-directory-page .ecosystem-directory-shell,
  html body.supplier-directory-page .supplier-directory-shell,
  html body.component-directory-page .component-directory-shell {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
  }

  html body.company-directory-page .ecosystem-main,
  html body.supplier-directory-page .supplier-main,
  html body.component-directory-page .component-main {
    height: auto !important;
    overflow: visible !important;
  }

  html body.company-directory-page .ecosystem-sidebar,
  html body.supplier-directory-page .supplier-sidebar,
  html body.component-directory-page .component-sidebar {
    position: fixed !important;
    inset: 70px auto 0 0 !important;
    z-index: 10000 !important;
    width: min(88vw, 326px) !important;
    height: calc(100dvh - 70px) !important;
    max-height: none !important;
    border-radius: 0 20px 20px 0 !important;
    transform: translateX(-102%) !important;
  }

  html body.company-directory-page.ecosystem-filter-open .ecosystem-sidebar,
  html body.supplier-directory-page.filter-drawer-open .supplier-sidebar,
  html body.component-directory-page.filter-drawer-open .component-sidebar {
    transform: translateX(0) !important;
  }

  html body.company-directory-page .directory-toolbar,
  html body.supplier-directory-page .supplier-searchbar,
  html body.component-directory-page .component-searchbar {
    grid-template-columns: minmax(0, 1fr) 44px 82px !important;
  }

  html body.company-directory-page .directory-toolbar > :first-child,
  html body.supplier-directory-page .supplier-searchbar > :first-child,
  html body.component-directory-page .component-searchbar > :first-child,
  html body.company-directory-page .directory-sort,
  html body.supplier-directory-page .directory-sort,
  html body.component-directory-page .directory-sort {
    grid-column: 1 / -1 !important;
  }

  html body.company-directory-page .directory-view-toggle,
  html body.supplier-directory-page .directory-view-toggle,
  html body.component-directory-page .directory-view-toggle {
    display: none !important;
  }

  html body.supplier-directory-page .card-grid,
  html body.component-directory-page .directory__results:not(.directory__results--table) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Directory taxonomy tags stay compact even when the source label is long. */
html body :is(.home-ftag--tint-12, .product-pill--tint-12, .supplier-table__pill--tint-12) { background: #ffe1c7 !important; color: #5e3515 !important; }
html body :is(.home-ftag--tint-13, .product-pill--tint-13, .supplier-table__pill--tint-13) { background: #dff3c8 !important; color: #35531d !important; }
html body :is(.home-ftag--tint-14, .product-pill--tint-14, .supplier-table__pill--tint-14) { background: #d7edff !important; color: #244c69 !important; }
html body :is(.home-ftag--tint-15, .product-pill--tint-15, .supplier-table__pill--tint-15) { background: #ffd4c8 !important; color: #673023 !important; }
html body :is(.home-ftag--tint-16, .product-pill--tint-16, .supplier-table__pill--tint-16) { background: #eee0ff !important; color: #4e3569 !important; }
html body :is(.home-ftag--tint-17, .product-pill--tint-17, .supplier-table__pill--tint-17) { background: #d5f0ec !important; color: #24534c !important; }
html body :is(.home-ftag--tint-18, .product-pill--tint-18, .supplier-table__pill--tint-18) { background: #fff4c9 !important; color: #62551f !important; }
html body :is(.home-ftag--tint-19, .product-pill--tint-19, .supplier-table__pill--tint-19) { background: #f8dbe6 !important; color: #64344a !important; }
html body :is(.home-ftag--tint-20, .product-pill--tint-20, .supplier-table__pill--tint-20) { background: hsl(20 62% 90%) !important; color: hsl(20 45% 28%) !important; }
html body :is(.home-ftag--tint-21, .product-pill--tint-21, .supplier-table__pill--tint-21) { background: hsl(157 62% 90%) !important; color: hsl(157 45% 28%) !important; }
html body :is(.home-ftag--tint-22, .product-pill--tint-22, .supplier-table__pill--tint-22) { background: hsl(294 62% 92%) !important; color: hsl(294 45% 28%) !important; }
html body :is(.home-ftag--tint-23, .product-pill--tint-23, .supplier-table__pill--tint-23) { background: hsl(71 62% 90%) !important; color: hsl(71 45% 25%) !important; }
html body :is(.home-ftag--tint-24, .product-pill--tint-24, .supplier-table__pill--tint-24) { background: hsl(208 62% 91%) !important; color: hsl(208 45% 28%) !important; }
html body :is(.home-ftag--tint-25, .product-pill--tint-25, .supplier-table__pill--tint-25) { background: hsl(345 62% 91%) !important; color: hsl(345 45% 28%) !important; }
html body :is(.home-ftag--tint-26, .product-pill--tint-26, .supplier-table__pill--tint-26) { background: hsl(122 62% 91%) !important; color: hsl(122 45% 26%) !important; }
html body :is(.home-ftag--tint-27, .product-pill--tint-27, .supplier-table__pill--tint-27) { background: hsl(259 62% 92%) !important; color: hsl(259 45% 28%) !important; }
html body :is(.home-ftag--tint-28, .product-pill--tint-28, .supplier-table__pill--tint-28) { background: hsl(36 62% 89%) !important; color: hsl(36 45% 25%) !important; }
html body :is(.home-ftag--tint-29, .product-pill--tint-29, .supplier-table__pill--tint-29) { background: hsl(173 62% 90%) !important; color: hsl(173 45% 25%) !important; }
html body :is(.home-ftag--tint-30, .product-pill--tint-30, .supplier-table__pill--tint-30) { background: hsl(310 62% 92%) !important; color: hsl(310 45% 28%) !important; }
html body :is(.home-ftag--tint-31, .product-pill--tint-31, .supplier-table__pill--tint-31) { background: hsl(87 62% 90%) !important; color: hsl(87 45% 25%) !important; }
html body :is(.home-ftag--tint-32, .product-pill--tint-32, .supplier-table__pill--tint-32) { background: hsl(224 62% 92%) !important; color: hsl(224 45% 28%) !important; }
html body :is(.home-ftag--tint-33, .product-pill--tint-33, .supplier-table__pill--tint-33) { background: hsl(1 62% 91%) !important; color: hsl(1 45% 28%) !important; }
html body :is(.home-ftag--tint-34, .product-pill--tint-34, .supplier-table__pill--tint-34) { background: hsl(138 62% 91%) !important; color: hsl(138 45% 25%) !important; }
html body :is(.home-ftag--tint-35, .product-pill--tint-35, .supplier-table__pill--tint-35) { background: hsl(275 62% 92%) !important; color: hsl(275 45% 28%) !important; }
html body :is(.home-ftag--tint-36, .product-pill--tint-36, .supplier-table__pill--tint-36) { background: hsl(52 62% 89%) !important; color: hsl(52 45% 24%) !important; }
html body :is(.home-ftag--tint-37, .product-pill--tint-37, .supplier-table__pill--tint-37) { background: hsl(189 62% 91%) !important; color: hsl(189 45% 26%) !important; }
html body :is(.home-ftag--tint-38, .product-pill--tint-38, .supplier-table__pill--tint-38) { background: hsl(326 62% 92%) !important; color: hsl(326 45% 28%) !important; }
html body :is(.home-ftag--tint-39, .product-pill--tint-39, .supplier-table__pill--tint-39) { background: hsl(103 62% 90%) !important; color: hsl(103 45% 25%) !important; }
html body :is(.home-ftag--tint-40, .product-pill--tint-40, .supplier-table__pill--tint-40) { background: hsl(240 62% 93%) !important; color: hsl(240 45% 30%) !important; }
html body :is(.home-ftag--tint-41, .product-pill--tint-41, .supplier-table__pill--tint-41) { background: hsl(17 62% 88%) !important; color: hsl(17 45% 26%) !important; }
html body :is(.home-ftag--tint-42, .product-pill--tint-42, .supplier-table__pill--tint-42) { background: hsl(154 62% 93%) !important; color: hsl(154 45% 27%) !important; }
html body :is(.home-ftag--tint-43, .product-pill--tint-43, .supplier-table__pill--tint-43) { background: hsl(291 62% 89%) !important; color: hsl(291 45% 27%) !important; }
html body :is(.home-ftag--tint-44, .product-pill--tint-44, .supplier-table__pill--tint-44) { background: hsl(68 62% 93%) !important; color: hsl(68 45% 24%) !important; }
html body :is(.home-ftag--tint-45, .product-pill--tint-45, .supplier-table__pill--tint-45) { background: hsl(205 62% 88%) !important; color: hsl(205 45% 26%) !important; }
html body :is(.home-ftag--tint-46, .product-pill--tint-46, .supplier-table__pill--tint-46) { background: hsl(342 62% 93%) !important; color: hsl(342 45% 28%) !important; }
html body :is(.home-ftag--tint-47, .product-pill--tint-47, .supplier-table__pill--tint-47) { background: hsl(119 62% 88%) !important; color: hsl(119 45% 25%) !important; }

html body.company-directory-page :is(.eco-company-card__sector, .eco-company-table__sector),
html body.supplier-directory-page :is(.supplier-card__type, .supplier-table__pill),
html body.component-directory-page :is(#directory-results .product-card__classification, .component-table__pill) {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-height: 22px !important;
  max-height: 22px !important;
  align-items: center !important;
  overflow: hidden !important;
  padding: 3px 7px !important;
  line-height: 16px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

@media (max-width: 620px) {
  html body.supplier-directory-page .card-grid,
  html body.component-directory-page .directory__results:not(.directory__results--table) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.supplier-directory-page .supplier-card__body,
  html body.component-directory-page .product-card__body {
    min-width: 0 !important;
    padding: 12px !important;
  }

  html body.supplier-directory-page .supplier-card__name,
  html body.component-directory-page .product-card__name {
    font-size: 16px !important;
  }

  html body.supplier-directory-page .supplier-card__location,
  html body.supplier-directory-page .supplier-card__score {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* Final direct-media authority: no padded image plate inside directory quick views. */
html body.company-directory-page .company-quickview__hero,
html body.supplier-directory-page .supplier-quickview__media,
html body.component-directory-page .product-quickview__media,
html body.component-directory-page .product-quickview__media--rounded {
  width: min(100%, 660px) !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 auto 18px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: transparent !important;
  box-shadow: none !important;
  clip-path: inset(0 round 16px) !important;
}

html body.company-directory-page .company-quickview__hero img,
html body.supplier-directory-page .supplier-quickview__media img,
html body.component-directory-page .product-quickview__media img,
html body.component-directory-page .product-quickview__img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 16px !important;
  object-fit: cover !important;
  box-shadow: none !important;
  clip-path: inset(0 round 16px) !important;
}

/* Final company toolbar authority: match the current inset control language. */
html body.company-directory-page .directory-search {
  border: 1px solid rgba(31, 29, 24, .075) !important;
  background: var(--df-inset) !important;
  transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease !important;
}

html body.company-directory-page .directory-search:hover {
  border-color: rgba(31, 29, 24, .12) !important;
  background: #fffefa !important;
}

html body.company-directory-page .directory-search:focus-within {
  border-color: rgba(47, 107, 76, .2) !important;
  background: #fffefa !important;
  box-shadow: 0 0 0 3px rgba(47, 107, 76, .07) !important;
}

html body.company-directory-page .directory-search input {
  padding: 0 15px !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

/* Final supplier/component quickview cascade: intentionally last. */
html body.supplier-directory-page .supplier-quickview,
html body.component-directory-page .product-quickview { padding: 18px !important; }
html body.supplier-directory-page .supplier-quickview__panel,
html body.component-directory-page .product-quickview__panel {
  display: flex !important; flex-direction: column !important;
  width: min(680px, calc(100vw - 36px)) !important;
  max-height: calc(100dvh - 36px) !important;
  overflow: hidden !important;
  border-radius: 24px !important; background: #f0efe9 !important;
  clip-path: inset(0 round 24px) !important;
}
html body.supplier-directory-page .supplier-quickview__content,
html body.component-directory-page .product-quickview__content {
  flex: 1 1 auto !important; width: 100% !important; min-width: 0 !important; min-height: 0 !important;
  height: auto !important; max-height: none !important; padding: 22px !important; margin: 0 !important;
  overflow-x: hidden !important; overflow-y: auto !important; box-sizing: border-box !important;
  overscroll-behavior: contain !important; scrollbar-width: thin !important;
}
html body.supplier-directory-page .supplier-quickview__media,
html body.component-directory-page .product-quickview__media,
html body.component-directory-page .product-quickview__media--rounded {
  width: min(100%,560px) !important; margin: 0 auto 22px !important;
  border-radius: 18px !important; clip-path: inset(0 round 18px) !important;
}
html body.component-directory-page .product-quickview__media,
html body.component-directory-page .product-quickview__media--rounded {
  background: #e8e6de !important;
}
html body.component-directory-page .product-quickview__close {
  border: 0 !important; border-radius: 12px !important;
  background: #fbfaf7 !important; color: #171713 !important;
  box-shadow: inset 0 0 0 1px rgba(31,29,24,.06) !important;
}
html body.supplier-directory-page :where(.supplier-quickview__body,.supplier-quickview__intro,.supplier-quickview__section),
html body.component-directory-page :where(.product-quickview__top,.product-quickview__section) {
  width: 100% !important; min-width: 0 !important; box-sizing: border-box !important;
}
html body.supplier-directory-page .supplier-quickview__intro {
  padding: 0 !important; overflow: visible !important; border: 0 !important;
  border-radius: 0 !important; background: transparent !important;
}
html body.supplier-directory-page .supplier-quickview__facts {
  grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 12px 20px !important;
  margin: 20px 0 0 !important; padding: 18px !important; border: 0 !important;
  border-radius: 16px !important; background: #f1f0eb !important;
}
html body.supplier-directory-page .supplier-quickview__fact { min-width: 0 !important; padding: 0 !important; }
html body.supplier-directory-page .supplier-quickview__fact-label { margin-bottom: 4px !important; color: rgba(31,29,24,.55) !important; font-size: 10px !important; }
html body.supplier-directory-page .supplier-quickview__section,
html body.component-directory-page .product-quickview__section {
  margin-top: 24px !important; padding: 18px !important; overflow: visible !important;
  border: 0 !important; border-radius: 16px !important; background: #fbfaf7 !important;
}
html body.supplier-directory-page .supplier-quickview__section > .supplier-quickview__label,
html body.component-directory-page .product-quickview__section > .product-quickview__label {
  margin: 0 0 12px !important; padding: 0 !important; border: 0 !important; background: transparent !important;
}
html body.supplier-directory-page .supplier-quickview__rows,
html body.component-directory-page .product-quickview__group-list {
  display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 12px 24px !important;
}
html body.supplier-directory-page .supplier-quickview__row,
html body.component-directory-page .product-quickview__row { display: block !important; min-width: 0 !important; padding: 0 !important; }
html body.supplier-directory-page .supplier-quickview__row span,
html body.component-directory-page .product-quickview__row span { display: block !important; min-width: 0 !important; overflow-wrap: anywhere !important; }
html body.supplier-directory-page .supplier-quickview__row span:first-child,
html body.component-directory-page .product-quickview__row span:first-child { margin-bottom: 3px !important; color: rgba(31,29,24,.54) !important; font-size: 10px !important; font-weight: 700 !important; }
html body.supplier-directory-page .supplier-quickview__row span:first-child { margin-bottom: 5px !important; font-size: 11px !important; }
html body.component-directory-page .product-quickview__groups { display: grid !important; gap: 20px !important; }
html body.supplier-directory-page .supplier-edge-list { gap: 0 !important; margin-top: 0 !important; border: 0 !important; }
html body.supplier-directory-page .supplier-edge-list__item {
  display: grid !important; grid-template-columns: minmax(170px,.55fr) minmax(0,1.45fr) !important;
  gap: 24px !important; min-width: 0 !important; padding: 12px 0 !important;
  border: 0 !important; border-radius: 0 !important; background: transparent !important;
}
html body.supplier-directory-page :where(.supplier-edge-list__name,.supplier-edge-list__detail) { min-width: 0 !important; overflow-wrap: anywhere !important; }
html body.supplier-directory-page .supplier-edge-list__name { color: var(--df-ink) !important; font: 700 14px/1.35 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page :where(.supplier-edge-list__detail,.supplier-edge-list__type,.supplier-edge-list__summary) { display: block !important; }
html body.supplier-directory-page .supplier-edge-list__type { color: rgba(31,29,24,.86) !important; font: 650 12.5px/1.35 Inter,system-ui,sans-serif !important; }
html body.supplier-directory-page .supplier-edge-list__summary { margin-top: 3px !important; color: rgba(31,29,24,.62) !important; font: 450 13.5px/1.45 Inter,system-ui,sans-serif !important; }

@media (max-width: 620px) {
  html body.supplier-directory-page .supplier-quickview,
  html body.component-directory-page .product-quickview { padding: 10px !important; }
  html body.supplier-directory-page .supplier-quickview__panel,
  html body.component-directory-page .product-quickview__panel {
    width: calc(100vw - 20px) !important; max-height: calc(100dvh - 20px) !important;
    border-radius: 20px !important; clip-path: inset(0 round 20px) !important;
  }
  html body.supplier-directory-page .supplier-quickview__content,
  html body.component-directory-page .product-quickview__content { padding: 16px !important; }
  html body.supplier-directory-page .supplier-quickview__title,
  html body.component-directory-page .product-quickview__title { font-size: 23px !important; }
  html body.supplier-directory-page .supplier-quickview__facts { grid-template-columns: repeat(2,minmax(0,1fr)) !important; padding: 14px !important; }
  html body.supplier-directory-page .supplier-quickview__section,
  html body.component-directory-page .product-quickview__section { margin-top: 18px !important; padding: 15px !important; border-radius: 16px !important; }
  html body.supplier-directory-page .supplier-quickview__rows,
  html body.component-directory-page .product-quickview__group-list { grid-template-columns: 1fr !important; gap: 11px !important; }
  html body.supplier-directory-page .supplier-edge-list__item { grid-template-columns: 1fr !important; gap: 5px !important; padding: 10px 0 !important; }
  html body.supplier-directory-page .supplier-quickview__actions { justify-content: flex-start !important; }
  html body.supplier-directory-page #card-grid .supplier-card__body,
  html body.component-directory-page #directory-results .product-card__body { min-height: 128px !important; padding: 10px !important; }
  html body.supplier-directory-page #card-grid .supplier-card__name,
  html body.component-directory-page #directory-results .product-card__name { font-size: 13px !important; line-height: 1.08 !important; }
  html body.supplier-directory-page #card-grid .supplier-card__type,
  html body.component-directory-page #directory-results .product-card__classification { font-size: 8.5px !important; }
}

/* Directory quick-view header utilities: keep navigation and watch actions
   beside the close control instead of spending a separate content row. */
html body.company-directory-page .company-quickview__actions,
html body.product-directory-page .product-quickview__actions,
html body.supplier-directory-page .supplier-quickview__actions,
html body.component-directory-page .product-quickview__actions {
  position: absolute !important;
  top: 18px !important;
  right: 64px !important;
  left: auto !important;
  z-index: 8 !important;
  width: max-content !important;
  max-width: calc(100% - 154px) !important;
  margin: 0 !important;
  flex-wrap: nowrap !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}

html body.company-directory-page .company-quickview__close,
html body.product-directory-page.product-directory-page .product-quickview__close,
html body.supplier-directory-page .supplier-quickview__close,
html body.component-directory-page .product-quickview__close {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  left: auto !important;
  z-index: 9 !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
}

html body :is(
  .company-quickview__profile,
  .supplier-quickview__button--dark,
  .product-quickview__actions .product-quickview__button--dark
) {
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 10px !important;
  border-radius: 10px !important;
  background: #e8e7e1 !important;
  color: #171713 !important;
  font: 700 11px/1 Inter, system-ui, sans-serif !important;
}

html body.product-directory-page.product-directory-page .product-quickview__actions .product-quickview__button--dark {
  min-height: 34px !important;
  height: 34px !important;
  padding: 0 10px !important;
  border-radius: 10px !important;
  background: #e8e7e1 !important;
  color: #171713 !important;
  font: 700 11px/1 Inter, system-ui, sans-serif !important;
}

html body.product-directory-page.product-directory-page .product-quickview__actions .k-watch__icon {
  color: #8f463d !important;
}

html body :is(
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch-proxy
) {
  width: 34px !important;
  min-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: #eceae5 !important;
  color: #8f463d !important;
  box-shadow: none !important;
}

html body :is(
  .product-quickview__actions .k-watch__icon,
  .supplier-quickview__watch-proxy .k-watch__icon
) {
  margin: 0 !important;
  color: #8f463d !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

html body.product-directory-page.product-directory-page.product-directory-page .product-quickview__top,
html body.component-directory-page .product-quickview__top {
  position: static !important;
  padding-right: 240px !important;
}

html body.company-directory-page .company-quickview__title,
html body.supplier-directory-page .supplier-quickview__title {
  padding-right: 190px !important;
}

@media (max-width: 700px) {
  html body.company-directory-page .company-quickview__actions,
  html body.product-directory-page .product-quickview__actions,
  html body.supplier-directory-page .supplier-quickview__actions,
  html body.component-directory-page .product-quickview__actions {
    top: 14px !important;
    right: 62px !important;
    max-width: calc(100% - 126px) !important;
  }

  html body.company-directory-page .company-quickview__close,
  html body.product-directory-page.product-directory-page .product-quickview__close,
  html body.supplier-directory-page .supplier-quickview__close,
  html body.component-directory-page .product-quickview__close {
    top: 14px !important;
    right: 14px !important;
  }

  html body.product-directory-page.product-directory-page.product-directory-page .product-quickview__top,
  html body.component-directory-page .product-quickview__top {
    padding-right: 190px !important;
  }

  html body.company-directory-page .company-quickview__title,
  html body.supplier-directory-page .supplier-quickview__title {
    padding-right: 150px !important;
  }
}

@media (max-width: 720px) {
  html body.company-directory-page .directory-toolbar,
  html body.product-directory-page .directory-toolbar {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 34px 68px 68px !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    border: 0 !important;
  }
  html body.company-directory-page .directory-toolbar .directory-search,
  html body.product-directory-page .directory-toolbar .directory-search {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  html body.company-directory-page .directory-toolbar #eco-search,
  html body.product-directory-page .directory-toolbar #filter-search {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border: 1px solid rgba(20,20,16,.14) !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 1px 3px rgba(20,20,16,.05) !important;
    color: #171713 !important;
    font-size: 11px !important;
    line-height: 36px !important;
    appearance: none !important;
  }
  html body.company-directory-page .directory-toolbar #eco-sort-wrapper,
  html body.product-directory-page .directory-toolbar #directory-sort-wrapper {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 9px !important;
  }
  html body.company-directory-page .directory-toolbar #eco-sort-direction,
  html body.product-directory-page .directory-toolbar #product-sort-direction {
    grid-column: 2 !important;
    grid-row: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.company-directory-page .directory-toolbar #eco-submit-btn,
  html body.product-directory-page .directory-toolbar #directory-submit-btn,
  html body.company-directory-page .directory-toolbar #eco-filter-toggle,
  html body.product-directory-page .directory-toolbar #filter-drawer-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 68px !important;
    min-width: 68px !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 7px !important;
    border-radius: 10px !important;
    font: 700 10px/1 Inter,system-ui,sans-serif !important;
  }
  html body.company-directory-page .directory-toolbar #eco-submit-btn,
  html body.product-directory-page .directory-toolbar #directory-submit-btn {
    grid-column: 3 !important;
    grid-row: 2 !important;
  }
  html body.company-directory-page .directory-toolbar #eco-filter-toggle,
  html body.product-directory-page .directory-toolbar #filter-drawer-toggle {
    grid-column: 4 !important;
    grid-row: 2 !important;
    border: 1px solid rgba(20,20,16,.12) !important;
    background: #fff !important;
    color: #171713 !important;
    box-shadow: 0 1px 2px rgba(20,20,16,.035) !important;
  }
}

html body.product-directory-page .active-filter-row.no-active-filters {
  display: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.company-directory-page .directory-empty-state__action,
html body.product-directory-page .directory-empty-state__action {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Keep quickview media at profile-overview scale so small brand assets are not enlarged. */
html body.company-directory-page .company-quickview__hero,
html body.supplier-directory-page .supplier-quickview__media {
  width: min(100%, 480px) !important;
  max-height: 270px !important;
}

html body.supplier-directory-page .supplier-quickview__media img {
  padding: 20px !important;
  object-fit: contain !important;
  box-sizing: border-box !important;
}

/* Directory desktop controls and table density use Product Directory as the
   authority. Keep each directory's data columns, but share one interaction
   geometry and one compact row rhythm. */
html body.company-directory-page .directory-view-toggle,
html body.supplier-directory-page .directory-view-toggle,
html body.component-directory-page .directory-view-toggle {
  height: 44px !important;
  padding: 4px !important;
  gap: 2px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #fbfaf7 !important;
  box-shadow: inset 0 0 0 1px rgba(31, 29, 24, .055) !important;
}

html body.component-directory-page .component-searchbar > .directory-view-toggle {
  padding: 4px !important;
}

html body.company-directory-page .directory-view-btn,
html body.supplier-directory-page .directory-view-btn,
html body.component-directory-page .directory-view-btn {
  min-width: 76px !important;
  height: 36px !important;
  padding: 0 12px !important;
  border-radius: 10px !important;
  color: rgba(23, 23, 19, .62) !important;
  font: 650 11px/1 Inter, system-ui, sans-serif !important;
}

html body.company-directory-page .directory-view-btn:hover:not(.is-active),
html body.supplier-directory-page .directory-view-btn:hover:not(.is-active),
html body.component-directory-page .directory-view-btn:hover:not(.is-active) {
  background: #f0efe9 !important;
  color: #24583c !important;
}

html body.company-directory-page .directory-view-btn.is-active,
html body.supplier-directory-page .directory-view-btn.is-active,
html body.component-directory-page .directory-view-btn.is-active {
  border-radius: 10px !important;
  background: #171713 !important;
  color: #fff !important;
  box-shadow: none !important;
}

html body.company-directory-page .directory-view-icon,
html body.supplier-directory-page .directory-view-icon,
html body.component-directory-page .directory-view-icon {
  position: relative !important;
  display: block !important;
  width: 12px !important;
  height: 12px !important;
  flex: 0 0 12px !important;
  font-size: 0 !important;
  opacity: .86 !important;
}

html body.company-directory-page .directory-view-icon--cards,
html body.supplier-directory-page .directory-view-icon--cards,
html body.component-directory-page .directory-view-icon--cards {
  background: linear-gradient(currentColor,currentColor) 0 0/5px 5px no-repeat,
              linear-gradient(currentColor,currentColor) 7px 0/5px 5px no-repeat,
              linear-gradient(currentColor,currentColor) 0 7px/5px 5px no-repeat,
              linear-gradient(currentColor,currentColor) 7px 7px/5px 5px no-repeat !important;
}

html body.company-directory-page .directory-view-icon--table,
html body.supplier-directory-page .directory-view-icon--table,
html body.component-directory-page .directory-view-icon--table {
  background: linear-gradient(currentColor,currentColor) 0 1px/12px 1px no-repeat,
              linear-gradient(currentColor,currentColor) 0 5px/12px 1px no-repeat,
              linear-gradient(currentColor,currentColor) 0 9px/12px 1px no-repeat !important;
}

html body.company-directory-page .eco-company-table,
html body.supplier-directory-page .supplier-table,
html body.component-directory-page .component-table {
  border-spacing: 0 8px !important;
}

html body.company-directory-page .eco-company-table th,
html body.supplier-directory-page .supplier-table th,
html body.component-directory-page .component-table th {
  height: 38px !important;
  padding: 5px 12px !important;
  font: 650 10px/1.2 Inter, system-ui, sans-serif !important;
  letter-spacing: .06em !important;
}

html body.company-directory-page .eco-company-table td,
html body.supplier-directory-page .supplier-table td,
html body.component-directory-page .component-table td {
  height: 60px !important;
  min-height: 0 !important;
  padding: 8px 12px !important;
  font-size: 12px !important;
}

html body.company-directory-page .eco-company-table td:first-child,
html body.supplier-directory-page .supplier-table td:first-child,
html body.component-directory-page .component-table td:first-child {
  border-radius: 14px 0 0 14px !important;
}

html body.company-directory-page .eco-company-table td:last-child,
html body.supplier-directory-page .supplier-table td:last-child,
html body.component-directory-page .component-table td:last-child {
  border-radius: 0 14px 14px 0 !important;
}

@media (max-width: 900px) {
  html body.company-directory-page .directory-view-toggle,
  html body.supplier-directory-page .directory-view-toggle,
  html body.component-directory-page .directory-view-toggle {
    display: none !important;
  }
}

/* Final directory rhythm: selected filters stay subordinate to the toolbar. */
@media (min-width: 901px) {
  html body.company-directory-page .directory-toolbar,
  html body.product-directory-page .directory-toolbar,
  html body.supplier-directory-page .supplier-searchbar,
  html body.component-directory-page .component-searchbar {
    margin-bottom: 14px !important;
  }

  html body.company-directory-page .ecosystem-active-row,
  html body.product-directory-page .active-filter-row,
  html body.supplier-directory-page .active-filter-row,
  html body.component-directory-page .active-filter-row {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 5px !important;
  }

  html body.company-directory-page .ecosystem-active-row,
  html body.supplier-directory-page .active-filter-row,
  html body.component-directory-page .active-filter-row {
    margin-bottom: 8px !important;
  }

  html body.company-directory-page .ecosystem-active-chips,
  html body.product-directory-page .active-filter-chips,
  html body.supplier-directory-page .active-filter-chips,
  html body.component-directory-page .active-filter-chips {
    gap: 5px !important;
  }

  html body.company-directory-page .ecosystem-chip,
  html body.product-directory-page .active-filter-chip,
  html body.supplier-directory-page .active-filter-chip,
  html body.component-directory-page .active-filter-chip {
    min-height: 26px !important;
    padding: 2px 3px 2px 9px !important;
    gap: 6px !important;
    box-shadow: 0 1px 3px rgba(23, 23, 19, .045) !important;
  }

  html body.company-directory-page .ecosystem-chip button,
  html body.product-directory-page .active-filter-chip button,
  html body.supplier-directory-page .active-filter-chip button,
  html body.component-directory-page .active-filter-chip button {
    flex: 0 0 20px !important;
    width: 20px !important;
    height: 20px !important;
    font-size: 15px !important;
  }
}

/* White-field flags need a visible edge on the light directory modules. */
html body.company-directory-page .directory-country-flag,
html body.product-directory-page .directory-country-flag,
html body.supplier-directory-page .directory-country-flag,
html body.component-directory-page .directory-country-flag {
  box-shadow: inset 0 0 0 1px rgba(23, 23, 19, .14), 0 1px 3px rgba(23, 23, 19, .07) !important;
}

/* Directory quick-view mastheads: compact media beside useful profile context. */
html body.company-directory-page .company-quickview__panel,
html body.supplier-directory-page .supplier-quickview__panel {
  width: min(920px, calc(100vw - 36px)) !important;
}

html body.company-directory-page #company-quickview-content,
html body.supplier-directory-page .supplier-quickview__content {
  padding: 22px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  box-sizing: border-box !important;
}

html body.company-directory-page .company-quickview__header,
html body.supplier-directory-page .supplier-quickview__header {
  display: grid !important;
  grid-template-columns: minmax(260px, .88fr) minmax(0, 1.12fr) !important;
  gap: 22px !important;
  align-items: stretch !important;
  width: 100% !important;
  margin: 0 0 18px !important;
}

html body.company-directory-page .company-quickview__hero,
html body.supplier-directory-page .supplier-quickview__media {
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 248px !important;
  max-height: 360px !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  border-radius: 18px !important;
  background: #e8e7e1 !important;
  clip-path: inset(0 round 18px) !important;
}

html body.company-directory-page .company-quickview__hero img {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  object-fit: cover !important;
}

html body.supplier-directory-page .supplier-quickview__media img {
  width: 100% !important;
  height: 100% !important;
  padding: 18px !important;
  object-fit: contain !important;
  box-sizing: border-box !important;
}

html body.company-directory-page .company-quickview__intro,
html body.supplier-directory-page .supplier-quickview__intro {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  min-height: 248px !important;
  margin: 0 !important;
  padding: 26px !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: var(--df-inset) !important;
  box-shadow: none !important;
}

html body.company-directory-page .company-quickview__title,
html body.supplier-directory-page .supplier-quickview__title {
  margin: 0 72px 10px 0 !important;
  font-size: clamp(25px, 2.4vw, 31px) !important;
  line-height: 1.06 !important;
}

html body.company-directory-page .company-quickview__summary,
html body.supplier-directory-page .supplier-quickview__summary {
  margin: 0 0 20px !important;
  color: rgba(31, 29, 24, .68) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

html body.company-directory-page .company-quickview__facts,
html body.supplier-directory-page .supplier-quickview__facts {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px 18px !important;
  margin: auto 0 0 !important;
  padding: 17px 0 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(23, 23, 19, .09) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

html body.company-directory-page .company-quickview__body,
html body.supplier-directory-page .supplier-quickview__body {
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

@media (max-width: 720px) {
  html body.company-directory-page .company-quickview__panel,
  html body.supplier-directory-page .supplier-quickview__panel {
    width: calc(100vw - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
  }

  html body.company-directory-page #company-quickview-content,
  html body.supplier-directory-page .supplier-quickview__content {
    padding: 12px !important;
  }

  html body.company-directory-page .company-quickview__header,
  html body.supplier-directory-page .supplier-quickview__header {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin-bottom: 12px !important;
  }

  html body.company-directory-page .company-quickview__hero,
  html body.supplier-directory-page .supplier-quickview__media {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 16 / 9 !important;
  }

  html body.company-directory-page .company-quickview__intro,
  html body.supplier-directory-page .supplier-quickview__intro {
    min-height: 0 !important;
    padding: 18px !important;
    border-radius: 16px !important;
  }

  html body.company-directory-page .company-quickview__title,
  html body.supplier-directory-page .supplier-quickview__title {
    margin-right: 52px !important;
    font-size: 25px !important;
  }
}

/* Final quickview utility authority. Keep this after every directory-specific
   block so all four directories share the same control size and hierarchy. */
html body.company-directory-page .company-quickview__actions,
html body.product-directory-page .product-quickview__actions,
html body.supplier-directory-page .supplier-quickview__actions,
html body.component-directory-page .product-quickview__actions {
  top: 18px !important;
  right: 66px !important;
  align-items: center !important;
  gap: 8px !important;
}

html body.company-directory-page .company-quickview__close,
html body.product-directory-page.product-directory-page .product-quickview__close,
html body.supplier-directory-page .supplier-quickview__close,
html body.component-directory-page .product-quickview__close,
html body.company-directory-page .company-quickview__watch,
html body.product-directory-page .product-quickview__actions .k-watch,
html body.supplier-directory-page .supplier-quickview__watch,
html body.component-directory-page .product-quickview__actions .k-watch {
  display: inline-flex !important;
  flex: 0 0 38px !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #e8e7e1 !important;
  box-shadow: none !important;
}

html body.company-directory-page .company-quickview__close,
html body.product-directory-page.product-directory-page .product-quickview__close,
html body.supplier-directory-page .supplier-quickview__close,
html body.component-directory-page .product-quickview__close {
  top: 18px !important;
  right: 18px !important;
  color: #171713 !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

html body.company-directory-page .company-quickview__watch,
html body.product-directory-page .product-quickview__actions .k-watch,
html body.supplier-directory-page .supplier-quickview__watch,
html body.component-directory-page .product-quickview__actions .k-watch {
  color: #994a42 !important;
}

html body :is(.company-quickview__watch,.product-quickview__actions .k-watch,.supplier-quickview__watch) :is(.k-watch__label,.k-watch__count) {
  display: none !important;
}

html body :is(.company-quickview__watch,.product-quickview__actions .k-watch,.supplier-quickview__watch) .k-watch__icon,
html body :is(.company-quickview__watch,.product-quickview__actions .k-watch,.supplier-quickview__watch) .k-watch__icon svg {
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
}

html body :is(.company-quickview__profile,.supplier-quickview__actions .supplier-quickview__button--dark,.product-quickview__actions .product-quickview__button--dark) {
  display: inline-flex !important;
  height: 38px !important;
  min-height: 38px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #171713 !important;
  color: #fbfaf7 !important;
  font: 700 12px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body.supplier-directory-page .supplier-quickview__actions .supplier-quickview__button--dark,
html body.product-directory-page.product-directory-page .product-quickview__actions .product-quickview__button--dark,
html body.component-directory-page .product-quickview__actions .product-quickview__button--dark {
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #171713 !important;
  color: #fbfaf7 !important;
  font: 700 12px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

html body :is(.company-quickview__close,.product-quickview__close,.supplier-quickview__close,.company-quickview__watch,.product-quickview__actions .k-watch,.supplier-quickview__watch,.company-quickview__profile,.supplier-quickview__actions .supplier-quickview__button--dark,.product-quickview__actions .product-quickview__button--dark):is(:hover,:focus-visible) {
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(47, 107, 76, .10) !important;
}

html body.supplier-directory-page :is(.supplier-quickview__panel,.supplier-quickview__media,.supplier-quickview__intro,.supplier-quickview__facts,.supplier-quickview__section) {
  overflow: hidden !important;
}

html body.supplier-directory-page .supplier-quickview__media img {
  border-radius: 14px !important;
  clip-path: inset(18px round 14px) !important;
}

html body.supplier-directory-page .supplier-quickview__media .supplier-quickview__logo-plate {
  display: flex !important;
  width: calc(100% - 36px) !important;
  max-height: calc(100% - 36px) !important;
  aspect-ratio: 16 / 9 !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  border-radius: 16px !important;
  background: #fff !important;
  clip-path: inset(0 round 16px) !important;
}

html body.supplier-directory-page .supplier-quickview__media .supplier-quickview__logo-plate img {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  border-radius: 0 !important;
  object-fit: contain !important;
  clip-path: none !important;
}

@media (max-width: 700px) {
  html body.company-directory-page .company-quickview__actions,
  html body.product-directory-page .product-quickview__actions,
  html body.supplier-directory-page .supplier-quickview__actions,
  html body.component-directory-page .product-quickview__actions {
    top: 14px !important;
    right: 62px !important;
  }

  html body.company-directory-page .company-quickview__close,
  html body.product-directory-page.product-directory-page .product-quickview__close,
  html body.supplier-directory-page .supplier-quickview__close,
  html body.component-directory-page .product-quickview__close {
    top: 14px !important;
    right: 14px !important;
  }
}

/* Mobile supplier quickview media: keep the image above the copy on small
   screens, while preventing a logo plate from taking over the popup. */
@media (max-width: 720px) {
  html body.company-directory-page .company-quickview__hero,
  html body.product-directory-page .product-quickview__media,
  html body.supplier-directory-page .supplier-quickview__media,
  html body.component-directory-page .product-quickview__media {
    overflow: hidden !important;
    clip-path: none !important;
    -webkit-mask-image: none !important;
  }

  html body.company-directory-page .company-quickview__hero img,
  html body.product-directory-page .product-quickview__media img,
  html body.supplier-directory-page .supplier-quickview__media img,
  html body.component-directory-page .product-quickview__media img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    clip-path: none !important;
    -webkit-mask-image: none !important;
  }

  html body.supplier-directory-page .supplier-quickview__media {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 2 / 1 !important;
    margin: 0 0 10px !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    clip-path: none !important;
    -webkit-mask-image: none !important;
  }

  html body.supplier-directory-page .supplier-quickview__media .supplier-quickview__logo-plate {
    width: calc(100% - 20px) !important;
    max-height: calc(100% - 20px) !important;
    aspect-ratio: 2 / 1 !important;
    overflow: hidden !important;
    border-radius: 15px !important;
    clip-path: none !important;
    -webkit-mask-image: none !important;
  }
}

/* Desktop supplier hero parity: use the same direct edge-to-edge media stage as
   the company quickview. The logo-plate wrapper remains available to the
   separately tuned mobile composition below 721px. */
@media (min-width: 721px) {
  html body.supplier-directory-page .supplier-quickview__media .supplier-quickview__logo-plate {
    display: contents !important;
  }

  html body.supplier-directory-page .supplier-quickview__media .supplier-quickview__logo-plate img,
  html body.supplier-directory-page .supplier-quickview__media > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: cover !important;
    clip-path: none !important;
  }
}

/* Product card footer authority: reserve a real flag column so long taxonomy
   labels truncate inside the card instead of pushing geography beyond it. */
html body.product-directory-page #directory-results .product-card__classification-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  column-gap: 8px !important;
  overflow: hidden !important;
}

html body.product-directory-page #directory-results .product-card__classification {
  min-width: 0 !important;
  max-width: 100% !important;
  justify-self: start !important;
}

html body.product-directory-page #directory-results .product-card__country-flag {
  grid-column: 2 !important;
  justify-self: end !important;
}

/* Quickview favourites mirror profile hearts: neutral until selected, with
   the authoritative total following the heart instead of replacing it. */
html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page):is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) :is(
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch
) {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  gap: 6px !important;
  padding: 0 11px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #fbfaf7 !important;
  color: #343531 !important;
  box-shadow: 0 1px 3px rgba(20, 20, 16, .08) !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page):is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) :is(
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch
)[aria-pressed="true"] {
  background: #fbfaf7 !important;
  color: #b33838 !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page):is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) :is(
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch
) .k-watch__label {
  display: none !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page):is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) :is(
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch
) .k-watch__icon,
html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page):is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) :is(
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch
)[aria-pressed="true"] .k-watch__icon {
  display: inline-flex !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  color: currentColor !important;
}

html body:is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page):is(.company-directory-page, .product-directory-page, .supplier-directory-page, .component-directory-page) :is(
  .company-quickview__watch,
  .product-quickview__actions .k-watch,
  .supplier-quickview__watch
) .k-watch__count:not(:empty) {
  display: inline-block !important;
  position: static !important;
  min-width: 0 !important;
  padding: 0 !important;
  color: #171713 !important;
  font: 700 12px/1 Inter, system-ui, sans-serif !important;
  letter-spacing: 0 !important;
}

/* Keep the final module visibly clear of every directory quick-view shell. */
html body.company-directory-page #company-quickview-content::after,
html body.product-directory-page .product-quickview__content::after,
html body.supplier-directory-page .supplier-quickview__content::after,
html body.component-directory-page .product-quickview__content::after {
  content: "" !important;
  display: block !important;
  width: 100% !important;
  height: 24px !important;
  flex: 0 0 24px !important;
}
