.wp-grid-builder .wpgb-card {
  /* -------------------------
   * Term 
   * ------------------------- */
  /* -------------------------
   * Button 
   * ------------------------- */
  /* ------------------------- 
   * Product Attributes
   * ------------------------- */
  /* ------------------------- 
   * Product Labels
   * ------------------------- */
}
.wp-grid-builder .wpgb-card .wooptima-term-block {
  --text-size: 1rem;
  --text-color: #434343;
  --text-color--hover: #414141;
  --spacing: calc(var(--text-size) / 2.25);
  --transition: all 400ms ease-in-out;
}
.wp-grid-builder .wpgb-card .wooptima-term-block > div, .wp-grid-builder .wpgb-card .wooptima-term-block a {
  display: flex;
  align-items: center;
  font-size: var(--text-size);
  transition: var(--transition);
  color: var(--text-color);
}
.wp-grid-builder .wpgb-card .wooptima-term-block > div:hover, .wp-grid-builder .wpgb-card .wooptima-term-block a:hover {
  color: var(--text-color--hover);
}
.wp-grid-builder .wpgb-card .wooptima-term-block .wooptima-term-icon {
  width: calc(var(--text-size) * 1.35) !important;
  height: calc(var(--text-size) * 1.35) !important;
  margin-right: calc(var(--spacing) * 1.25);
}
.wp-grid-builder .wpgb-card .wooptima-term-block .wooptima-term-label__prefix {
  margin-right: var(--spacing);
}
.wp-grid-builder .wpgb-card .wooptima-term-block .wooptima-term-label__suffix {
  margin-left: var(--spacing);
}
.wp-grid-builder .wpgb-card .wooptima-term-block img {
  object-fit: contain;
  object-position: center;
}
.wp-grid-builder .wpgb-card .wooptima-term-block svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}
.wp-grid-builder .wpgb-card .wooptima-button-block {
  --roundness: 0.5rem;
  --padding: 0.625rem 1.35rem;
  --border-width: 1px;
  --border-color: #212121;
  --bg-color: transparent;
  --text-color: #212121;
  --bg-color--hover: #212121;
  --text-color--hover: #fff;
  --transition: all 400ms ease-in-out;
}
.wp-grid-builder .wpgb-card .wooptima-button-block a {
  width: fit-content;
  height: fit-content;
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: var(--padding);
  border: var(--border-width) var(--border-color) solid;
  border-radius: var(--roundness);
  color: var(--text-color);
  background: var(--bg-color);
  transition: var(--transition);
}
.wp-grid-builder .wpgb-card .wooptima-button-block a:hover {
  color: var(--text-color--hover);
  background: var(--bg-color--hover);
}
.wp-grid-builder .wpgb-card .wooptima-button-block img {
  object-fit: contain;
  object-position: center;
}
.wp-grid-builder .wpgb-card .wooptima-button-block svg {
  width: 1.25rem !important;
  height: 1.25rem !important;
  margin-right: 1rem;
  fill: currentColor;
}
.wp-grid-builder .wpgb-card .wooptima-button-block img, .wp-grid-builder .wpgb-card .wooptima-button-block svg, .wp-grid-builder .wpgb-card .wooptima-button-block span {
  pointer-events: none;
}
.wp-grid-builder .wpgb-card .wooptima-product-attributes-block {
  --roundness: 0.5rem;
  --padding-block: 0.5rem;
  --padding-inline: 1.25rem;
  --border-width: 1px;
  --border-color: #212121;
  --spacing: 1rem;
  --text-size: 1rem;
  --bg-color: transparent;
  --text-color: #212121;
  --bg-color--hover: #212121;
  --text-color--hover: #fff;
  --border-width--hover: 1px;
  --border-color--hover: #212121;
  --transition: all 400ms ease-in-out;
  --item-height: calc((2 * var(--padding-block)) + var(--spacing) + var(--text-size) + calc(2 * var(--border-width)));
  --rows: 1;
}
.wp-grid-builder .wpgb-card .wooptima-product-attributes-block {
  display: flex;
  flex-direction: column;
  transition: var(--transition);
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translateY(100%);
  opacity: 0;
}
.wp-grid-builder .wpgb-card .wooptima-product-attributes-block .product-attributes {
  display: flex;
  max-height: calc(var(--item-height) * var(--rows) - 1rem);
  overflow: hidden;
  flex-flow: row wrap;
  gap: 1rem;
  transition: var(--transition);
}
.wp-grid-builder .wpgb-card .wooptima-product-attributes-block .product-attributes:not(:last-child) {
  margin-bottom: 1em;
}
.wp-grid-builder .wpgb-card .wooptima-product-attributes-block .product-attributes a {
  font-size: var(--text-size);
  line-height: 1;
  padding-top: var(--padding-block);
  padding-bottom: var(--padding-block);
  padding-left: var(--padding-inline);
  padding-right: var(--padding-inline);
  color: var(--text-color);
  border: var(--border-width) var(--border-color) solid;
}
.wp-grid-builder .wpgb-card .wooptima-product-attributes-block .product-attributes a:hover {
  color: var(--text-color--hover);
  background: var(--bg-color--hover);
	border: var(--border-width--hover) var(--border-color--hover) solid;
}
.wp-grid-builder .wpgb-card:hover .wooptima-product-attributes-block {
  transform: translateY(1px);
  opacity: 1;
}
.wp-grid-builder .wpgb-card .wooptima-product-labels-block {
  --roundness: 0.15rem;
  --padding: 0.25rem 0.5rem;
  --spacing: 0.5rem;
  --text-size: 0.85rem;
  --stock-status-color: #3978ff;
  --free-shipping-color: #03b215;
  --sale-percentage-color: #f00000;
  --delivery-time-color: #f0d400;
  --delivery-time-color-instock: #26b11a;
  --delivery-time-color-outofstock: #b1241a;
  --delivery-time-color-onbackorder: #ff7a00;
}
.wp-grid-builder .wpgb-card .wooptima-product-labels-block {
  display: flex;
  flex-direction: column;
  gap: var(--spacing);
}
.wp-grid-builder .wpgb-card .wooptima-product-labels-block > span {
  width: fit-content;
  font-size: var(--text-size);
  border-radius: var(--roundness);
  padding: var(--padding);
  color: #fff;
}
.wp-grid-builder .wpgb-card .wooptima-product-labels-block .wooptima-product-label__free_shipping {
  background: var(--free-shipping-color);
}
.wp-grid-builder .wpgb-card .wooptima-product-labels-block .wooptima-product-label__stock_status {
  background: var(--stock-status-color);
}
.wp-grid-builder .wpgb-card .wooptima-product-labels-block .wooptima-product-label__sale_percentage {
  background: var(--sale-percentage-color);
}
.wp-grid-builder .wpgb-card .wooptima-product-labels-block .wooptima-product-label__delivery_time.instock {
  color: var(--delivery-time-color-instock);
}
.wp-grid-builder .wpgb-card .wooptima-product-labels-block .wooptima-product-label__delivery_time.outofstock {
  color: var(--delivery-time-color-outofstock);
}
.wp-grid-builder .wpgb-card .wooptima-product-labels-block .wooptima-product-label__delivery_time.onbackorder {
  color: var(--delivery-time-color-onbackorder);
}