.catalog-video-hero {
  min-height: 420px;
  background-position: center;
  background-size: cover;
}

.catalog-video-hero::before {
  background: linear-gradient(90deg, rgba(12, 16, 19, .84), rgba(12, 16, 19, .28));
}

.catalog-exact-directory .head_block {
  display: block !important;
  max-width: 820px;
  margin: 0 0 28px;
  text-align: left;
}

.catalog-exact-directory .cat-sub-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.catalog-exact-card {
  overflow: hidden;
  border: 1px solid #dedede;
  border-radius: 4px;
  background: #fff;
  color: #25292d;
}

.catalog-exact-card .cat-sub-img {
  aspect-ratio: 1 / 1;
  border-bottom: 1px solid #25292d;
}

.catalog-exact-card.is-dark .cat-sub-img,
.catalog-exact-card.is-dark .cat-sub-img img {
  background: #090b0d;
}

.catalog-exact-card .cat-sub-img img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center;
}

.catalog-exact-card:hover .cat-sub-img img {
  transform: scale(1.025);
}

.catalog-exact-card .cat-sub-txt {
  min-height: 198px;
  padding: 18px 18px 14px;
}

.catalog-exact-card .cat-sub-txt small {
  min-height: 16px;
  margin: 0 0 7px;
  color: #e56f0a;
  font-weight: 800;
  text-transform: uppercase;
}

.catalog-exact-card .cat-sub-txt h3 {
  min-height: 62px;
  margin: 0 0 9px;
  font-size: 16px;
  line-height: 1.3;
}

.catalog-exact-card .cat-sub-txt p {
  display: -webkit-box;
  overflow: hidden;
  min-height: 38px;
  margin: 0 0 9px;
  color: #60676c;
  font-size: 12px;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.catalog-exact-card .cat-sub-txt > span {
  color: #83898e;
  font-size: 11px;
}

.catalog-exact-card .architecture-view-detail {
  display: block;
  padding: 12px 18px;
  border-top: 1px solid #ededed;
  color: #d86300;
  font-size: 12px;
  font-weight: 800;
}

.catalog-common-banner {
  height: clamp(280px, 35vw, 480px);
  background: #11161a;
}

.catalog-common-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(12, 16, 19, .56), rgba(12, 16, 19, .08));
}

.catalog-common-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.catalog-common-banner .stc-page-banner-h1 {
  z-index: 2;
}

.catalog-exact-detail .product-detail-hero {
  align-items: start;
}

.catalog-exact-detail .catalog-exact-gallery {
  height: auto !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  background: transparent !important;
}

.catalog-exact-detail .stc-product-gallery-main {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border: 1px solid #dfe2e4;
  border-radius: 4px;
  background: #fff;
}

.catalog-exact-detail .catalog-exact-gallery.is-dark .stc-product-gallery-main,
.catalog-exact-detail .catalog-exact-gallery.is-dark .stc-product-gallery-main img,
.catalog-exact-detail .catalog-exact-gallery.is-dark .stc-product-gallery-thumbs button,
.catalog-exact-detail .catalog-exact-gallery.is-dark .stc-product-gallery-thumbs img {
  background: #090b0d;
}

.catalog-exact-detail .stc-product-gallery-main img,
.catalog-exact-detail .stc-product-gallery-thumbs img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center;
}

.catalog-exact-detail .product-detail-summary h1 {
  overflow-wrap: anywhere;
}

.catalog-exact-detail .product-detail-actions {
  display: none !important;
}

.catalog-linked-card {
  display: block;
  color: inherit;
}

.catalog-linked-card:hover h3 {
  color: #d86300;
}

body:has(.catalog-exact-directory) #staecore-b2b-bar,
body:has(.actual-product-directory) #staecore-b2b-bar,
body:has(.source-catalog-section) #staecore-b2b-bar,
body:has(.catalog-exact-detail) #staecore-b2b-bar {
  display: none !important;
}

@media (max-width: 1180px) {
  .catalog-exact-directory .cat-sub-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 575px) {
  .catalog-video-hero { min-height: 340px; }
  .catalog-exact-directory .cat-sub-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .catalog-exact-card .cat-sub-txt { min-height: 168px; padding: 12px 10px 10px; }
  .catalog-exact-card .cat-sub-txt h3 { min-height: 70px; font-size: 13px; }
  .catalog-exact-card .cat-sub-txt p { min-height: 35px; font-size: 10px; }
  .catalog-exact-card .cat-sub-txt > span,
  .catalog-exact-card .architecture-view-detail { font-size: 10px; }
  .catalog-exact-card .architecture-view-detail { padding: 10px; }
  .catalog-common-banner { height: 260px; }
  .catalog-exact-detail .product-detail-applications { grid-template-columns: 1fr; }
}
