/* GG CHENN Shop — Framer /read-to-wear match */

body.ggchenn-shop {
  background: var(--gg-bg, #faf8fb) !important;
  color: #000;
}

body.ggchenn-shop #content,
body.ggchenn-shop .site-main,
body.ggchenn-shop .content-area,
body.ggchenn-shop .woocommerce {
  max-width: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide WooCommerce chrome Framer doesn't have */
body.ggchenn-shop .woocommerce-breadcrumb,
body.ggchenn-shop .woocommerce-products-header,
body.ggchenn-shop .woocommerce-result-count,
body.ggchenn-shop .woocommerce-ordering,
body.ggchenn-shop .woocommerce-notices-wrapper:empty,
body.ggchenn-shop .woocommerce-pagination,
body.ggchenn-shop ul.products .button,
body.ggchenn-shop ul.products .added_to_cart,
body.ggchenn-shop ul.products .add_to_cart_button,
body.ggchenn-shop ul.products .product_type_variable,
body.ggchenn-shop .onsale,
body.ggchenn-shop .star-rating {
  display: none !important;
}

body.ggchenn-shop #site-footer,
body.ggchenn-shop .site-footer {
  display: none !important;
}

/* 4-col product grid — Framer: 40px sides, 20px gap, ~40px top */
body.ggchenn-shop ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  column-gap: 20px !important;
  row-gap: 40px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 40px 40px 80px !important;
  list-style: none !important;
  box-sizing: border-box !important;
}

body.ggchenn-shop ul.products::before,
body.ggchenn-shop ul.products::after {
  display: none !important;
  content: none !important;
}

body.ggchenn-shop ul.products li.product,
body.ggchenn-shop ul.products li.product.first,
body.ggchenn-shop ul.products li.product.last {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  clear: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

body.ggchenn-shop ul.products li.product .woocommerce-LoopProduct-link {
  display: contents !important;
  text-decoration: none !important;
  color: inherit !important;
}

/* Portrait image ~2:3 — tight Framer-style crop; text stays visible below */
body.ggchenn-shop ul.products li.product {
  overflow: visible !important;
  display: grid !important;
  grid-template-areas:
    "media"
    "title"
    "price";
  grid-template-rows: auto auto auto;
}

body.ggchenn-shop ul.products li.product .gg-shop-product-media {
  grid-area: media;
  overflow: hidden !important;
  width: 100% !important;
  aspect-ratio: 2 / 3 !important;
  margin: 0 0 12px !important;
  background: #fff !important;
}

body.ggchenn-shop ul.products li.product .gg-shop-product-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center 22% !important;
  margin: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  transform: scale(1.24);
  transform-origin: center 28%;
}

body.ggchenn-shop ul.products li.product img,
body.ggchenn-shop ul.products li.product .attachment-large,
body.ggchenn-shop ul.products li.product .size-large,
body.ggchenn-shop ul.products li.product .attachment-woocommerce_thumbnail,
body.ggchenn-shop ul.products li.product .wp-post-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 2 / 3 !important;
  object-fit: cover !important;
  object-position: center 22% !important;
  margin: 0 0 12px !important;
  border-radius: 0 !important;
  background: #fff !important;
  transform: scale(1.24);
  transform-origin: center 28%;
}

/* Title — Times 14 / rgb(55,55,55) */
body.ggchenn-shop ul.products li.product .woocommerce-loop-product__title {
  grid-area: title;
  font-family: var(--gg-serif) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  letter-spacing: 0.01em !important;
  color: rgb(55, 55, 55) !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  text-align: left !important;
  text-transform: none !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Price — Times 12 / rgb(110,110,110) with £ symbol */
body.ggchenn-shop ul.products li.product .price,
body.ggchenn-shop ul.products li.product .price .amount,
body.ggchenn-shop ul.products li.product .price bdi {
  grid-area: price;
  font-family: var(--gg-serif) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.01em !important;
  color: rgb(110, 110, 110) !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  display: block !important;
  position: relative !important;
  z-index: 1 !important;
}

body.ggchenn-shop ul.products li.product .price del {
  display: none !important;
}

body.ggchenn-shop ul.products li.product .price ins {
  text-decoration: none !important;
  background: none !important;
}

/* Framer-style copyright */
.gg-shop-footer {
  padding: 48px 40px 40px;
  text-align: center;
  font-family: var(--gg-serif);
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.01em;
  color: rgb(110, 110, 110);
}

@media (max-width: 1100px) {
  body.ggchenn-shop ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  body.ggchenn-shop ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    row-gap: 28px !important;
    padding: 24px 20px 56px !important;
  }

  .gg-shop-footer {
    padding: 32px 20px;
  }
}
