
/*
Theme Name: TBFR Child Theme
Theme URI: https://elementor.com/
Description: A child theme for Hello Elementor
Author: Christopher Duncan
Author URI: https://tbfr.com
Template: hello-elementor
Version: 1.0.0
*/

ul.pewc-product-extra-groups {
	padding-left:0;
}

/* elementor form field fixes */
/* Target checkbox options */
.elementor-field-type-checkbox .elementor-field-option {
    display: flex;
    align-items: center;
}

/* Move label to the right of the checkbox */
.elementor-field-type-checkbox .elementor-field-option input[type="checkbox"] + label {
    margin-left: 8px;
    display: inline-block;
}
.elementor-field-type-checkbox .elementor-field-label {
    display: none;
}

/* Force the submit button to break out of inline layout */
.elementor-field-type-submit.elementor-field-group {
  display: block;
  width: 100%;
  clear: both;
  margin-top: 20px;
}

/* match appearance woocommerce buttons to global buttons */
a.button.product_type_simple.add_to_cart_button {
    background-color: #003366 !important;
    color: #F5F5DC !important;
    border-radius: 5px;
}
a.button.product_type_simple.add_to_cart_button:hover {
    background-color: #FF6F61 !important;
	box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.3);
}

/* Center align products when fewer than 4 are shown */
.elementor-widget-woocommerce-products ul.products {
  justify-content: center !important;
  display: flex !important;
  flex-wrap: wrap;
  gap: 20px; /* optional: controls spacing between items */
  padding: 0;
  margin: 0;
  list-style: none;
}
.elementor-widget-woocommerce-products ul.products li.product {
  flex: 0 0 calc(25% - 20px); /* 4 per row with gap */
  max-width: calc(25% - 20px);
}


.elementor-widget-woocommerce-notices .e-woocommerce-notices-wrapper:has(.woocommerce-notices-wrapper:empty) {
    display: none;
}
.elementor-widget-woocommerce-notices:has(.woocommerce-notices-wrapper:empty) {
    margin: 0 !important;
    padding: 0 !important;
}

/*the following code was added to the custom css in elementor pro for the container background showing the featured image

selector {
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}
*/


 

@media (max-width: 768px) {
/* Center align products when fewer than 4 are shown */
  .elementor-widget-woocommerce-products ul.products li.product {
    flex: 0 0 calc(50% - 20px); /* 2 per row on tablet */
    max-width: calc(50% - 20px);
  }
}

@media (max-width: 480px) {
/* Center align products when fewer than 4 are shown */
  .elementor-widget-woocommerce-products ul.products li.product {
    flex: 0 0 100%; /* 1 per row on mobile */
    max-width: 100%;
  }
}