/* Scoped to shop archive, product detail, About, posts and Contact. */
body.pamtech-compact-pages .pamtech-page-heading {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 8px 20px 16px;
  background: #111518;
  color: #fff;
  text-align: center;
}
body.pamtech-compact-pages .pamtech-page-heading__inner {
  width: 100%;
  max-width: 1228px;
  margin-inline: auto;
}
body.pamtech-compact-pages .pamtech-page-heading__breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  min-height: 0;
  margin: 0 0 2px;
  padding: 0;
  list-style: none;
  font-size: 13px;
  line-height: 1.5;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0;
}
body.pamtech-compact-pages .pamtech-page-heading__breadcrumbs li { margin: 0; }
body.pamtech-compact-pages .pamtech-page-heading__breadcrumbs a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: #c5cbd3;
  text-decoration: none;
}
body.pamtech-compact-pages .pamtech-page-heading__breadcrumbs a:hover {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 4px;
}
body.pamtech-compact-pages .pamtech-page-heading__breadcrumbs a:focus-visible {
  outline: 2px solid #c4b5fd;
  outline-offset: 3px;
  border-radius: 3px;
}
body.pamtech-compact-pages .pamtech-page-heading__separator { color: #aeb7c2; }
body.pamtech-compact-pages #pamtech-page-title {
  margin: 0;
  padding: 0;
  color: #fff;
  font-size: clamp(30px, 2.8vw, 40px);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -0.025em;
  text-transform: none;
  overflow-wrap: anywhere;
}
/* Match the header surface while preserving navigation and its responsive behavior. */
body.pamtech-compact-pages #header [data-row="middle"] { background: #111518; border-bottom: 0; min-height: 0; }
body.pamtech-compact-pages #header,
body.pamtech-compact-pages #header [data-device],
body.pamtech-compact-pages #header [data-row="middle"] { position: relative !important; }
body.pamtech-compact-pages #header .site-logo-container img { filter: none; }

body.pamtech-compact-pages #main > [data-vertical-spacing] { padding-top: 28px; }
body.pamtech-compact-pages.pamtech-about-page #main > [data-vertical-spacing] { padding-top: 0; }

/* Product detail uses the same band as the catalog and drops the old trail. */
body.pamtech-compact-pages.single-product .ct-breadcrumbs,
body.pamtech-compact-pages.single-product .woocommerce-breadcrumb {
  display: none;
}
body.pamtech-compact-pages.single-product .pamtech-page-heading__breadcrumbs li[aria-current="page"] {
  max-width: min(100%, 46ch);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* The About introduction is content, not another oversized hero. */
body.pamtech-compact-pages.pamtech-about-page .pamtech-about__hero {
  min-height: 0;
  margin: 0;
  padding: 32px 20px 24px;
  border: 0;
  border-radius: 0;
  background: #fff;
  color: #111518;
  box-shadow: none;
}
body.pamtech-compact-pages.pamtech-about-page .pamtech-about__eyebrow { display: none; }
body.pamtech-compact-pages.pamtech-about-page .pamtech-about__title {
  margin: 0;
  color: #111518;
  font-size: clamp(24px, 2.4vw, 32px);
  line-height: 1.25;
  letter-spacing: -0.02em;
}
body.pamtech-compact-pages.pamtech-about-page .pamtech-about__lead {
  margin: 16px auto 0;
  color: #4d5d6d;
  max-width: 820px;
  font-size: 16px;
  line-height: 1.75;
}
body.pamtech-compact-pages.pamtech-about-page .pamtech-about__body { padding-top: 24px; }

/* Keep useful catalog controls and bring the first row into view. */
body.pamtech-compact-pages.woocommerce-shop .pamtech-shop-search { margin-bottom: 12px; }
body.pamtech-compact-pages.woocommerce-shop .woo-listing-top { margin-bottom: 20px; }
body.pamtech-compact-pages.woocommerce-shop .pamtech-shop-search__input { font-size: 16px; }
body.pamtech-compact-pages.woocommerce-shop ul.products { gap: 24px; }
body.pamtech-compact-pages.woocommerce-shop ul.products li.product .woocommerce-loop-product__title {
  min-height: 2.6em;
  line-height: 1.3;
  -webkit-line-clamp: 2;
}
body.pamtech-compact-pages.woocommerce-shop ul.products li.product .price { margin-bottom: 6px; }
body.pamtech-compact-pages.woocommerce-shop ul.products li.product .entry-meta { margin-top: 4px; }
body.pamtech-compact-pages.woocommerce-shop ul.products li.product .ct-woo-card-actions { padding-top: 12px; }
body.pamtech-compact-pages.woocommerce-shop ul.products li.product > figure {
  aspect-ratio: auto;
  height: clamp(180px, 20vw, 250px);
}
body.pamtech-compact-pages.woocommerce-shop ul.products li.product > figure .ct-media-container {
  height: 100%;
  max-height: none;
  aspect-ratio: auto;
}
body.pamtech-compact-pages.woocommerce-shop ul.products li.product > figure img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100%;
  max-height: 100% !important;
  object-fit: contain !important;
}

@media (min-width: 1000px) {
  body.pamtech-compact-pages.woocommerce-shop #main > .ct-container > section:has(> .pamtech-shop-search) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 24px;
    align-items: start;
  }
  body.pamtech-compact-pages.woocommerce-shop .woocommerce-products-header { grid-area: 1 / 1 / 2 / -1; }
  body.pamtech-compact-pages.woocommerce-shop .pamtech-shop-search { grid-area: 2 / 1; margin-bottom: 0; }
  body.pamtech-compact-pages.woocommerce-shop .woo-listing-top {
    grid-area: 2 / 2;
    min-height: 50px;
    gap: 12px;
    margin-bottom: 0;
  }
  body.pamtech-compact-pages.woocommerce-shop .woocommerce-notices-wrapper { grid-area: 3 / 1 / 4 / -1; }
  body.pamtech-compact-pages.woocommerce-shop ul.products { grid-column: 1 / -1; margin-top: 20px; }
  body.pamtech-compact-pages.woocommerce-shop .ct-pagination { grid-column: 1 / -1; }
}
@media (min-width: 1000px) and (max-height: 850px) {
  body.pamtech-compact-pages.woocommerce-shop ul.products li.product > figure { height: 180px; }
}
@media (max-width: 999.98px) {
  body.pamtech-compact-pages .pamtech-page-heading { padding-bottom: 20px; }
  body.pamtech-compact-pages #main > [data-vertical-spacing] { padding-top: 24px; }
  body.pamtech-compact-pages.woocommerce-shop ul.products { gap: 20px; }
}
@media (max-width: 689px) {
  body.pamtech-compact-pages .pamtech-page-heading {
    padding-inline: 16px;
    padding-top: 8px;
    padding-bottom: 14px;
  }
  body.pamtech-compact-pages #pamtech-page-title { font-size: 30px; }
  body.pamtech-compact-pages #main > [data-vertical-spacing] { padding-top: 20px; }
  body.pamtech-compact-pages.woocommerce-shop .woo-listing-top { margin-bottom: 16px; }
  body.pamtech-compact-pages.woocommerce-shop ul.products { gap: 16px; }
  body.pamtech-compact-pages.woocommerce-shop ul.products li.product > figure { height: 220px; }
  body.pamtech-compact-pages.woocommerce-shop ul.products li.product .woocommerce-loop-product__title {
    min-height: 0;
    display: block;
    overflow: visible;
  }
  body.pamtech-compact-pages.pamtech-about-page .pamtech-about__hero { padding: 24px 20px 20px; }
}

/* Product page: title and price sit beside a contained image, like a catalog buy box. */
body.pamtech-compact-pages.single-product .product {
  align-items: flex-start;
}
body.pamtech-compact-pages.single-product h1.product_title {
  display: block;
  margin: 0 0 12px;
  color: #111518;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: -0.02em;
}
body.pamtech-compact-pages.single-product .summary .price,
body.pamtech-compact-pages.single-product .entry-summary .price {
  margin: 0 0 16px;
  color: #111518;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
}
body.pamtech-compact-pages.single-product .woocommerce-product-gallery .flexy-view {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 440px !important;
  max-height: 440px;
  background: #f4f6f8;
  border-radius: 15px;
  overflow: hidden;
}
body.pamtech-compact-pages.single-product .woocommerce-product-gallery .flexy-view img,
body.pamtech-compact-pages.single-product .woocommerce-product-gallery .flexy-view .ct-media-container img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 420px !important;
  object-fit: contain !important;
  margin-inline: auto;
}
body.pamtech-compact-pages.single-product .summary,
body.pamtech-compact-pages.single-product .entry-summary {
  align-self: flex-start;
}
@media (max-width: 999.98px) {
  body.pamtech-compact-pages.single-product .woocommerce-product-gallery .flexy-view {
    height: 300px !important;
    max-height: 300px;
  }
  body.pamtech-compact-pages.single-product .woocommerce-product-gallery .flexy-view img,
  body.pamtech-compact-pages.single-product .woocommerce-product-gallery .flexy-view .ct-media-container img {
    max-height: 280px !important;
  }
  body.pamtech-compact-pages.single-product h1.product_title {
    font-size: 20px;
  }
}

body.pamtech-compact-pages.single-product .single_add_to_cart_button.button {
  min-height: 44px;
}


/* Shop cards: equal square image stage, product centered like a catalog tile. */
body.pamtech-compact-pages.woocommerce-shop ul.products,
body.pamtech-compact-pages.post-type-archive-product ul.products {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
body.pamtech-compact-pages.woocommerce-shop ul.products li.product > figure,
body.pamtech-compact-pages.post-type-archive-product ul.products li.product > figure {
  width: 100%;
  height: auto !important;
  max-height: none;
  aspect-ratio: 1 / 1;
  margin: 0 0 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #f4f6f8;
  border-radius: 12px;
}
body.pamtech-compact-pages.woocommerce-shop ul.products li.product > figure .ct-media-container,
body.pamtech-compact-pages.post-type-archive-product ul.products li.product > figure .ct-media-container {
  width: 100%;
  height: 100%;
  max-height: none;
  aspect-ratio: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  box-sizing: border-box;
  background: transparent;
}
body.pamtech-compact-pages.woocommerce-shop ul.products li.product > figure .ct-media-container img,
body.pamtech-compact-pages.post-type-archive-product ul.products li.product > figure .ct-media-container img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center;
  margin: auto;
  flex: 1 1 auto;
}
@media (max-width: 1199.98px) {
  body.pamtech-compact-pages.woocommerce-shop ul.products,
  body.pamtech-compact-pages.post-type-archive-product ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 999.98px) {
  body.pamtech-compact-pages.woocommerce-shop ul.products,
  body.pamtech-compact-pages.post-type-archive-product ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 689.98px) {
  body.pamtech-compact-pages.woocommerce-shop ul.products,
  body.pamtech-compact-pages.post-type-archive-product ul.products {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.pamtech-compact-pages.woocommerce-shop ul.products li.product > figure,
  body.pamtech-compact-pages.post-type-archive-product ul.products li.product > figure {
    width: min(100%, 280px);
    margin-inline: auto;
  }
}
