/* Uniform product card images + aligned Add to Cart buttons, site-wide */
.wp-block-post-template.is-layout-grid li.product,
ul.products li.product {
	  display: flex;
	  flex-direction: column;
	  height: 100%;
}
.wp-block-post-template.is-layout-grid li.product .wc-block-components-product-image,
ul.products li.product .wc-block-components-product-image {
	  flex: 0 0 auto;
}
.wp-block-post-template.is-layout-grid li.product .wc-block-components-product-image img,
ul.products li.product a img {
	  width: 100%;
	  height: 220px;
	  object-fit: cover;
	  object-position: center;
}
.wp-block-post-template.is-layout-grid li.product .wp-block-post-title,
.wp-block-post-template.is-layout-grid li.product .wp-block-woocommerce-product-price,
ul.products li.product h2,
ul.products li.product .price {
	  flex: 0 0 auto;
}
.wp-block-post-template.is-layout-grid li.product .wp-block-woocommerce-product-button,
ul.products li.product .add_to_cart_button,
ul.products li.product a.button {
	  margin-top: auto;
}

/* Coral category description blocks ("Products by Category" block) - larger uniform photos, centered, larger text, title above photo, both clickable (single link wraps image+title already) */
.wc-block-grid__product {
	  flex: 0 0 46% !important;
	  max-width: 46% !important;
	  margin: 0 1.15% 32px !important;
	  text-align: center;
}
.wc-block-grid__product-link {
	  display: flex !important;
	  flex-direction: column !important;
}
.wc-block-grid__product-title {
	  font-size: 22px !important;
	  line-height: 1.3;
	  margin: 0 0 10px !important;
	  text-align: center;
}
.wc-block-grid__product-image {
	  display: flex;
	  justify-content: center;
}
.wc-block-grid__product-image img {
	  width: 100% !important;
	  height: 390px !important;
	  object-fit: cover;
	  object-position: center;
	  border-radius: 8px;
}
.wc-block-grid__product-price {
	  text-align: center;
	  font-size: 18px !important;
	  margin-top: 8px !important;
}
.wc-block-grid__product-add-to-cart {
	  text-align: center;
}
@media (max-width: 780px) {
  .wc-block-grid__product {
	    flex: 0 0 70% !important;
	    max-width: 70% !important;
  }
  .wc-block-grid__product-image img {
	    height: 285px !important;
  }
}


/* Coral category subcategory tiles (e.g. Anemones > Bubble Tip, SPS > Acropora) - centered, larger, label above photo (label now precedes photo in markup), both label and photo clickable */
.wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading) {
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  text-align: center;
}
.wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading) > h3.wp-block-heading {
	  font-size: 32px !important;
	  margin: 0 0 16px !important;
}
.wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading) > h3.wp-block-heading a {
	  text-decoration: none;
	  color: inherit;
}
.wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading) > figure.wp-block-image {
	  width: 100%;
	  max-width: 510px;
	  margin: 0 auto;
}
.wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading) > figure.wp-block-image img {
	  width: 100%;
	  height: auto;
	  display: block;
	  margin: 0 auto;
}


/* Bold product titles for coral category product grids (LPS, SPS, Soft Corals, Anemones, Fish, Inverts) */
.wc-block-grid__product-title {
	  font-weight: 700 !important;
}

/* Starter Bundles + Live Rock/Substrate use the default Product Catalog grid - bold + larger title, centered, matching coral categories */
body.term-starter .wp-block-post-template.is-layout-grid li.product .wp-block-post-title,
body.term-lrs .wp-block-post-template.is-layout-grid li.product .wp-block-post-title,
body.term-starter ul.products li.product h2,
body.term-lrs ul.products li.product h2 {
	  font-weight: 700 !important;
	  font-size: 22px !important;
	  text-align: center !important;
}
body.term-starter .wp-block-post-template.is-layout-grid li.product .price,
body.term-lrs .wp-block-post-template.is-layout-grid li.product .price,
body.term-starter ul.products li.product .price,
body.term-lrs ul.products li.product .price {
	  text-align: center !important;
	  display: block;
}


/* Center product rows/tile rows when they don't fill the full row (was clustering left) */
.wc-block-grid__products {
	  justify-content: center !important;
}
.wp-block-columns:has(.wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading)) {
	  justify-content: center !important;
	  flex-wrap: wrap !important;
}


/* Center product grid items when a row has fewer items than columns - fixes left-aligned rows */
.wp-block-post-template.is-layout-grid,
ul.products {
	  display: flex !important;
	  flex-wrap: wrap !important;
	  justify-content: center !important;
	  gap: 24px !important;
}
.wp-block-post-template.is-layout-grid > li.product,
ul.products > li.product {
	  flex: 0 1 384px !important;
	  max-width: 384px !important;
}
@media (max-width: 780px) {
	  .wp-block-post-template.is-layout-grid > li.product,
	  ul.products > li.product {
	    flex: 0 1 100% !important;
	    max-width: 320px !important;
	  }
}


/* Mobile fixes: tile photos were cramped/small, and grids were hugging the left edge */
@media (max-width: 600px) {
	  .wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading) {
	    width: 100% !important;
	  }
	  .wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading) > figure.wp-block-image {
	    max-width: 94% !important;
	    width: 94% !important;
	    margin: 0 auto !important;
	  }
	  .wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading) > figure.wp-block-image img {
	    width: 100% !important;
	    height: auto !important;
	  }
	  .wp-block-columns:has(.wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading)) {
	    justify-content: center !important;
	  }
	  .wc-block-grid__products,
	  .wp-block-post-template.is-layout-grid,
	  ul.products {
	    justify-content: center !important;
	    display: flex !important;
	    flex-wrap: wrap !important;
	  }
	  .wc-block-grid__product {
	    flex: 0 0 92% !important;
	    max-width: 92% !important;
	  }
	  .wc-block-grid__product-image img {
	    height: auto !important;
	    max-height: 340px;
	  }
	  .wp-block-post-template.is-layout-grid > li.product,
	  ul.products > li.product {
	    flex: 0 1 92% !important;
	    max-width: 92% !important;
	  }
}


/* More breathing room between tile title and photo on mobile */
@media (max-width: 600px) {
	  .wp-block-column:has(> figure.wp-block-image):has(> h3.wp-block-heading) > h3.wp-block-heading {
	    margin: 0 0 32px !important;
	  }
}


/* === UWG 2026-07-11: bigger product grid photos (all category pages) === */
.wc-block-grid{max-width:1240px;margin-left:auto;margin-right:auto;}
.wc-block-grid.has-4-columns .wc-block-grid__product{flex:0 0 50%;max-width:50%;padding:0 14px 28px;}
@media (max-width:767px){.wc-block-grid.has-4-columns .wc-block-grid__product{flex:0 0 100%;max-width:100%;}}
.wc-block-grid__product-image img{width:100%;height:auto;border-radius:16px;}

/* === UWG 2026-07-11: category type cards aligned + bolder labels === */
.wp-block-column>.wp-block-image.has-custom-border img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:24px;}
.wp-block-column>.wp-block-heading{font-size:2.4rem;font-weight:800;letter-spacing:.5px;}

/* === UWG 2026-07-11b: category cards — label overlay + hover === */
.wp-block-column:has(>.wp-block-image.has-custom-border){position:relative;overflow:hidden;border-radius:24px;box-shadow:0 8px 24px rgba(0,0,0,.28);}
.wp-block-column:has(>.wp-block-image.has-custom-border)>.wp-block-image.has-custom-border{margin:0;}
.wp-block-column:has(>.wp-block-image.has-custom-border) img{border-radius:24px;transition:transform .4s ease;display:block;}
.wp-block-column:has(>.wp-block-image.has-custom-border):hover img{transform:scale(1.06);}
.wp-block-column:has(>.wp-block-image.has-custom-border)>.wp-block-heading{position:absolute;left:0;right:0;bottom:0;z-index:2;margin:0;padding:56px 12px 18px;color:#fff!important;font-size:2rem;font-weight:800;text-align:center;letter-spacing:1px;text-shadow:0 2px 8px rgba(0,0,0,.9);background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.78) 78%);border-radius:0 0 24px 24px;pointer-events:none;}

/* === UWG 2026-07-11c: kill baseline gap under category card images === */
.wp-block-column:has(>.wp-block-image.has-custom-border)>.wp-block-image.has-custom-border{line-height:0;margin:0;}
.wp-block-column:has(>.wp-block-image.has-custom-border)>.wp-block-image.has-custom-border :is(a,img){display:block;width:100%;}

/* === UWG 2026-07-11d: larger nav menu text === */
.wp-block-navigation a.wp-block-navigation-item__content{font-size:1.35rem;}

/* === UWG 2026-07-11e: align Add to Cart in wc-block grids site-wide === */
.wc-block-grid__product{display:flex;flex-direction:column;height:100%;}
.wc-block-grid__product .wc-block-grid__product-link{display:flex;flex-direction:column;flex:1 1 auto;}
.wc-block-grid__product .wc-block-grid__product-title{margin-top:auto;}
.wc-block-grid__product .wc-block-grid__product-add-to-cart{margin-top:auto;padding-bottom:8px;}
.wc-block-grid__products{align-items:stretch;}

/* === Header nav: spacing + readable dropdown arrows (added 2026-08-17) === */
header .wp-block-navigation .wp-block-navigation__container,
header .wp-block-navigation ul.wp-block-navigation__container {
  gap: 18px !important;
}
header .wp-block-navigation .wp-block-navigation-item__content {
  padding-top: 10px;
  padding-bottom: 10px;
}
header .wp-block-navigation__submenu-icon {
  margin-left: 6px !important;
}
header .wp-block-navigation__submenu-icon svg {
  width: 11px;
  height: 11px;
  stroke-width: 2.5;
}

/* === Teal banner: keep on one line where it fits === */
header .wp-block-group p {
  max-width: none;
}
