/* Gabriela Bloom – shared catalogue corrections, version 1.2 */
@import url('/user/documents/upload/gabriela-bloom-shop-v1_1.css?v=1');

/* One visual rhythm for the six catalogue categories. */
body.in-sperky-nahrdelniky .gb-necklace-hero,
body.in-nausnice-2 .gb-earrings-hero,
body.in-naramky .gb-bracelets-hero,
body.in-prstene .gb-rings-hero,
body.in-klucenky-2 .gb-keychains-hero,
body.in-kvetinove-drahokamy .gb-floral-gems-hero {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

body.in-sperky-nahrdelniky .gb-necklace-hero img,
body.in-nausnice-2 .gb-earrings-hero img,
body.in-naramky .gb-bracelets-hero img,
body.in-prstene .gb-rings-hero img,
body.in-klucenky-2 .gb-keychains-hero img,
body.in-kvetinove-drahokamy .gb-floral-gems-hero img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

/* Product area stays spacious and readable instead of touching screen edges. */
body.in-sperky-nahrdelniky #products.products-page,
body.in-nausnice-2 #products.products-page,
body.in-naramky #products.products-page,
body.in-prstene #products.products-page,
body.in-klucenky-2 #products.products-page,
body.in-kvetinove-drahokamy #products.products-page,
body.in-sperky-nahrdelniky .gb-category-controls,
body.in-nausnice-2 .gb-category-controls,
body.in-naramky .gb-category-controls,
body.in-prstene .gb-category-controls,
body.in-klucenky-2 .gb-category-controls,
body.in-kvetinove-drahokamy .gb-category-controls {
  box-sizing: border-box !important;
  max-width: 1440px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* The same four-column catalogue and card rhythm on every numbered page. */
body.gb-pagination-layout #content .products.products-page.products-block {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 34px 22px !important;
}

body.gb-pagination-layout #content .products.products-page.products-block > .product {
  width: 100% !important;
  margin: 0 !important;
}

body.gb-pagination-layout #content .products.products-page .image {
  width: 100% !important;
  aspect-ratio: 3 / 4 !important;
  overflow: hidden !important;
}

body.gb-pagination-layout #content .products.products-page .image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

body.gb-pagination-layout #content .products.products-page .p-in {
  padding: 0 16px !important;
  text-align: left !important;
}

body.gb-pagination-layout #content .products.products-page .p-in-in,
body.gb-pagination-layout #content .products.products-page .ratings-wrapper {
  display: contents !important;
}

body.gb-pagination-layout #content .products.products-page .p-code {
  display: block !important;
  margin: 0 0 9px 16px !important;
  padding-top: 16px !important;
  border-top: 0 !important;
  color: #9a8b7a !important;
  font-size: 10px !important;
  letter-spacing: .1em !important;
  text-align: left !important;
}

body.gb-pagination-layout #content .products.products-page .name {
  display: block !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 0 6px !important;
  color: #4b392a !important;
  font: 400 16px/1.3 Georgia, serif !important;
  text-align: left !important;
}

body.gb-pagination-layout #content .products.products-page .p-bottom {
  margin: 0 !important;
  padding: 0 0 18px !important;
  text-align: left !important;
}

body.gb-pagination-layout #content .products.products-page .price-final {
  margin: 6px 0 4px !important;
}

body.gb-pagination-layout #content .products.products-page .price-final strong {
  color: #5b402b !important;
  font-size: 18px !important;
}

body.gb-pagination-layout #content .products.products-page .availability {
  display: block !important;
  margin: 0 0 12px !important;
  color: #7c6d5d !important;
  font-size: 13px !important;
  text-align: left !important;
}

body.gb-pagination-layout #content .products.products-page .p-tools {
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

body.gb-pagination-layout #content .products.products-page .btn-cart,
body.gb-pagination-layout #content .products.products-page .p-tools a.btn {
  margin: 0 !important;
  border: 1px solid #9a7445 !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: #4b392a !important;
}

/* Suppress the original page-two header, bestsellers and detached sidebar. */
body.gb-pagination-layout #content > h1,
body.gb-pagination-layout .category-title,
body.gb-pagination-layout .products-top-wrapper,
body.gb-pagination-layout .filters-unveil-button-wrapper,
body.gb-pagination-layout #filters,
body.gb-pagination-layout #filters-wrapper,
body.gb-pagination-layout .filters-wrapper,
body.gb-pagination-layout .gb-shop-toolbar {
  display: none !important;
}

body.gb-pagination-layout .gb-paged-controls {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  box-sizing: border-box !important;
  max-width: 1440px !important;
  margin: 0 auto 28px !important;
  padding: 0 24px !important;
}

body.gb-pagination-layout .gb-paged-controls__left {
  position: relative !important;
  display: flex !important;
  min-height: 32px !important;
}

body.gb-pagination-layout .gb-paged-controls aside.sidebar-left {
  position: relative !important;
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.gb-pagination-layout .gb-paged-controls .gb-is-collapsed .sidebar-inner,
body.gb-pagination-layout .gb-paged-controls .gb-is-collapsed .sidebar__heading {
  display: none !important;
}

body.gb-pagination-layout .gb-paged-controls aside.sidebar-left .sidebar-inner {
  position: absolute !important;
  z-index: 30 !important;
  top: calc(100% + 8px) !important;
  left: 0 !important;
  width: min(340px, calc(100vw - 28px)) !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(75, 42, 23, .14) !important;
}

body.gb-pagination-layout .gb-paged-controls button {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 32px !important;
  padding: 0 12px !important;
  border: 1px solid #b89563 !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: #4b2a17 !important;
  font: 700 11px/1 Arial, sans-serif !important;
  letter-spacing: .02em !important;
}

body.gb-pagination-layout .gb-paged-controls__right { margin-left: auto !important; }
body.gb-pagination-layout .gb-paged-controls .listSorting { margin: 0 !important; }
body.gb-pagination-layout .gb-paged-controls .listSorting__controls { display: none !important; }
body.gb-pagination-layout .gb-paged-controls .listSorting.gb-is-open .listSorting__controls { display: flex !important; }

/* Shop keeps its editorial layout, but uses the same content width and gutters. */
body.in-shop #content.content {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 1440px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

@media (max-width: 767px) {
  body.in-sperky-nahrdelniky #products.products-page,
  body.in-nausnice-2 #products.products-page,
  body.in-naramky #products.products-page,
  body.in-prstene #products.products-page,
  body.in-klucenky-2 #products.products-page,
  body.in-kvetinove-drahokamy #products.products-page,
  body.in-sperky-nahrdelniky .gb-category-controls,
  body.in-nausnice-2 .gb-category-controls,
  body.in-naramky .gb-category-controls,
  body.in-prstene .gb-category-controls,
  body.in-klucenky-2 .gb-category-controls,
  body.in-kvetinove-drahokamy .gb-category-controls,
  body.gb-pagination-layout .gb-paged-controls,
  body.in-shop #content.content { padding-left: 14px !important; padding-right: 14px !important; }

  body.gb-pagination-layout #content .products.products-page.products-block {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px 14px !important;
  }

  body.gb-pagination-layout .gb-paged-controls { margin-bottom: 18px !important; }
}
