/* Canvas Prints hub — split banner + configurator (/canvas-prints) */

.single-product-hero--canvas-prints.home-self-code {
  max-width: none;
  background: #fff;
  color: #222;
  padding-bottom: 0;
  position: relative;
}

.pp-canvas-hub-split {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  box-sizing: border-box;
}

.pp-canvas-hub-split__gallery {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border-radius: 6px;
  background: #111;
}

.pp-canvas-hub-split__gallery .slider.new_slide {
  position: relative;
}

.pp-canvas-hub-split__gallery .category-hero-slide-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pp-canvas-hub-split__config {
  min-width: 0;
  scroll-margin-top: 90px;
}

.single-product-hero--canvas-prints .pp-canvas-hub-split__config .premium-configurator-wrapper--canvas.banner-from-table,
.single-product-hero--canvas-prints .pp-canvas-hub-split__config #cff-order-source.banner-from-table {
  position: static !important;
  right: auto !important;
  left: auto !important;
  top: auto !important;
  bottom: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: auto !important;
}

@media (min-width: 992px) {
  .pp-canvas-hub-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 420px);
    gap: 20px;
    align-items: stretch;
    padding: 8px 16px 0;
  }

  .pp-canvas-hub-split__config {
    align-self: stretch;
  }

  .pp-canvas-hub-split__gallery {
    display: flex;
    flex-direction: column;
    align-self: stretch;
    min-height: 100%;
    height: 100%;
  }

  .pp-canvas-hub-split__gallery .slider.new_slide {
    flex: 1 1 auto;
    height: 100% !important;
    min-height: 100%;
  }

  .pp-canvas-hub-split__gallery .slide_viewer,
  .pp-canvas-hub-split__gallery .slide_group,
  .pp-canvas-hub-split__gallery .slide {
    height: 100% !important;
  }
}

@media (max-width: 991px) {
  .pp-canvas-hub-split {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 0 8px;
  }

  .pp-canvas-hub-split__gallery .slider.new_slide {
    height: clamp(240px, 56vw, 320px);
  }

  .single-product-hero--canvas-prints .premium-configurator-wrapper--canvas.banner-from-table,
  .single-product-hero--canvas-prints #cff-order-source.banner-from-table {
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}
