/* Go-Doodles Shop 1.2.0 */

:root {
  --gds-radius: 14px;
  --gds-border: #e6e2dc;
  --gds-muted: #7a746d;
  --gds-accent: #2f6f4e;
  --gds-accent-soft: #e7f2ec;
}

/* Category tiles (shop landing) */
.gds-catnav { margin: 0 0 2rem; clear: both; }
.gds-catnav__title { font-size: 1.15rem; margin: 0 0 .9rem; }
.gds-catnav__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .75rem; }

.gds-catnav--tiles .gds-catnav__list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 1rem;
}
.gds-tile a {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  text-decoration: none; color: inherit;
  border: 1px solid var(--gds-border); border-radius: var(--gds-radius);
  padding: 1rem .75rem; background: #fff;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.gds-tile a:hover { transform: translateY(-2px); box-shadow: 0 8px 22px rgba(0,0,0,.07); border-color: var(--gds-accent); }
.gds-tile__img { width: 96px; height: 96px; border-radius: 50%; overflow: hidden; background: #f4f1ec; margin-bottom: .7rem; display: block; }
.gds-tile__img img, .gds-tile__placeholder { width: 100%; height: 100%; object-fit: cover; display: block; }
.gds-tile__name { font-weight: 600; line-height: 1.25; }
.gds-tile__count { font-size: .8rem; color: var(--gds-muted); margin-top: .2rem; }

/* Chips (category pages, paginated shop) */
.gds-chip a {
  display: inline-flex; align-items: center; gap: .4rem;
  padding: .45rem .95rem; border-radius: 999px;
  border: 1px solid var(--gds-border); background: #fff;
  text-decoration: none; color: inherit; font-size: .92rem; line-height: 1;
}
.gds-chip a:hover { border-color: var(--gds-accent); color: var(--gds-accent); }
.gds-chip.is-active a { background: var(--gds-accent); border-color: var(--gds-accent); color: #fff; }
.gds-chip__count { font-size: .75rem; opacity: .7; }
.gds-subnav { margin: -1.25rem 0 1.75rem; }
.gds-chip--sub a { font-size: .85rem; padding: .35rem .8rem; }

/* Result count + sorting on one tidy line */
.gds-shop .woocommerce-notices-wrapper:empty { display: none; }
.gds-shop .woocommerce-result-count { color: var(--gds-muted); font-size: .9rem; margin: .4rem 0 1.25rem; }
.gds-shop .woocommerce-ordering select { border-radius: 999px; padding: .4rem 2rem .4rem .9rem; border: 1px solid var(--gds-border); }

/* Grid: column count comes from the settings page */
.gds-shop ul.products { display: grid; grid-template-columns: repeat(var(--gds-cols, 4), 1fr); gap: 1.25rem; }
.gds-shop ul.products li.product { width: 100% !important; margin: 0 !important; float: none !important; clear: none !important; }
@media (max-width: 900px) { .gds-shop ul.products { grid-template-columns: repeat(2, 1fr); gap: .9rem; } }

/* Width of the whole shop area */
.gds-width-wide .woocommerce,
.gds-width-wide .site-main, .gds-width-wide .content-area, .gds-width-wide .e-con-inner,
.gds-width-wide .elementor-section.elementor-section-boxed > .elementor-container { max-width: 1400px !important; width: 100%; margin-left: auto; margin-right: auto; }
.gds-width-full .woocommerce,
.gds-width-full .site-main, .gds-width-full .content-area, .gds-width-full .e-con-inner,
.gds-width-full .elementor-section.elementor-section-boxed > .elementor-container { max-width: none !important; width: 100%; padding-left: 2rem; padding-right: 2rem; box-sizing: border-box; }

/* Spacing presets */
.gds-shop { --gds-gap: 1.25rem; --gds-pad: 1rem; --gds-imgpad: .75rem; }
.gds-spacing-compact { --gds-gap: .75rem; --gds-pad: .7rem; --gds-imgpad: .4rem; }
.gds-spacing-roomy   { --gds-gap: 2rem;   --gds-pad: 1.5rem; --gds-imgpad: 1.25rem; }
.gds-shop ul.products { gap: var(--gds-gap); }

/* Text alignment under the photo */
/* Themes wrap the summary in their own containers (flex, left-aligned), so force it on every level */
.gds-align-center ul.products li.product,
.gds-align-center ul.products li.product > *,
.gds-align-center ul.products li.product .woocommerce-loop-product__title,
.gds-align-center ul.products li.product .price,
.gds-align-center ul.products li.product .astra-shop-summary-wrap,
.gds-align-center ul.products li.product .ct-card-content,
.gds-align-center ul.products li.product .product-details,
.gds-align-center ul.products li.product .wc-block-grid__product-onsale,
.gds-align-center ul.products li.product .ast-woo-product-category,
.gds-align-center ul.products li.product .entry-meta,
.gds-align-center ul.products li.product .product__categories { text-align: center !important; align-items: center !important; justify-content: center !important; margin-left: auto !important; margin-right: auto !important; width: 100%; }
.gds-align-center ul.products li.product .price { display: block !important; }
.gds-align-center ul.products li.product .woocommerce-loop-product__title,
.gds-align-center ul.products li.product h2 { padding-left: var(--gds-pad); padding-right: var(--gds-pad); }
.gds-align-center ul.products li.product .button { margin-left: var(--gds-pad) !important; margin-right: var(--gds-pad) !important; width: calc(100% - 2 * var(--gds-pad)); }
.gds-align-left ul.products li.product { text-align: left; }

/* Equal heights: grid rows stretch, button pinned to the bottom */
.gds-equal ul.products { align-items: stretch; }
.gds-equal ul.products li.product { height: 100%; }
.gds-equal ul.products li.product .woocommerce-loop-product__title,
.gds-equal ul.products li.product h2 {
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
  min-height: 2.6em; max-height: 2.6em;
}
.gds-equal ul.products li.product .price { min-height: 1.4em; }
.gds-equal ul.products li.product .button { margin-top: auto; }
.gds-equal ul.products li.product .star-rating { margin-left: auto; margin-right: auto; }

/* Product cards */
.gds-shop ul.products li.product {
  border: 1px solid var(--gds-border); border-radius: var(--gds-radius);
  overflow: hidden; background: #fff; display: flex; flex-direction: column;
  transition: box-shadow .15s ease, transform .15s ease;
}
.gds-shop ul.products li.product:hover { box-shadow: 0 8px 22px rgba(0,0,0,.07); transform: translateY(-2px); }
/* Square image box, whole photo always visible, never cropped, never oversized */
.gds-shop ul.products li.product img.attachment-woocommerce_thumbnail,
.gds-shop ul.products li.product img.attachment-woocommerce_single,
.gds-shop ul.products li.product > a.woocommerce-LoopProduct-link img,
.gds-shop ul.products li.product .woocommerce-loop-product__link img,
.gds-shop ul.products li.product figure img,
.gds-shop ul.products li.product .astra-shop-thumbnail-wrap img,
.gds-shop ul.products li.product .ct-media-container img {
  display: block; width: 100% !important; height: auto !important; max-width: 100%;
  aspect-ratio: 1 / 1 !important; object-fit: contain !important; object-position: center !important;
  background: #fff; padding: var(--gds-imgpad); box-sizing: border-box; margin: 0 !important;
}
.gds-shop ul.products li.product figure,
.gds-shop ul.products li.product .astra-shop-thumbnail-wrap,
.gds-shop ul.products li.product .ct-media-container { margin: 0; padding: 0; aspect-ratio: auto !important; height: auto !important; overflow: visible; }
.gds-shop ul.products li.product .woocommerce-loop-product__title,
.gds-shop ul.products li.product h2 {
  font-size: .98rem; line-height: 1.3; padding: .25rem var(--gds-pad) 0; margin: 0; min-height: 2.6em;
}
.gds-shop ul.products li.product .woocommerce-loop-category__title,
.gds-shop ul.products li.product .product__categories,
.gds-shop ul.products li.product .product-category { font-size: .75rem; color: var(--gds-muted); }
.gds-shop ul.products li.product .price { padding: .4rem var(--gds-pad) 0; font-weight: 700; font-size: 1.05rem; color: #1e1e1e; margin: 0; }
.gds-shop ul.products li.product .button {
  margin: .9rem var(--gds-pad) var(--gds-pad); display: block; text-align: center;
  border-radius: 999px; background: var(--gds-accent); color: #fff; font-weight: 600;
}
.gds-shop ul.products li.product .button:hover { filter: brightness(.93); }
.gds-shop ul.products li.product .added_to_cart { margin: -.6rem var(--gds-pad) var(--gds-pad); text-align: center; font-size: .85rem; }

/* Pagination */
.gds-shop .woocommerce-pagination { margin-top: 2rem; }
.gds-shop .woocommerce-pagination ul.page-numbers { border: 0; display: flex; gap: .4rem; justify-content: center; flex-wrap: wrap; }
.gds-shop .woocommerce-pagination ul.page-numbers li { border: 0; }
.gds-shop .woocommerce-pagination .page-numbers li a,
.gds-shop .woocommerce-pagination .page-numbers li span {
  border: 1px solid var(--gds-border); border-radius: 999px; padding: .5rem .95rem; line-height: 1;
}
.gds-shop .woocommerce-pagination .page-numbers li span.current { background: var(--gds-accent); border-color: var(--gds-accent); color: #fff; }

@media (max-width: 640px) {
  .gds-catnav--tiles .gds-catnav__list { grid-template-columns: repeat(2, 1fr); gap: .7rem; }
  .gds-tile__img { width: 72px; height: 72px; }
  .gds-shop ul.products li.product .woocommerce-loop-product__title { font-size: .9rem; }
}
