#content > div > div.elementor.elementor-37078.elementor-location-single.post-1821.product.type-product.status-publish.has-post-thumbnail.product_cat-all.product_cat-alloygator-sets.product_cat-alloygators.product_cat-gifts.product_tag-alloygators.product_tag-black.product_tag-blue.product_tag-bronze.product_tag-gold.product_tag-graphite.product_tag-green.product_tag-orange.product_tag-pink.product_tag-purple.product_tag-red.product_tag-silver.product_tag-sky-blue.product_tag-white.product_tag-yellow.product_shipping_class-all-products.ast-article-single.desktop-align-center.tablet-align-center.mobile-align-center.ast-product-gallery-layout-horizontal.ast-product-gallery-with-no-image.ast-product-single-variable.ast-product-tabs-layout-horizontal.first.instock.featured.taxable.shipping-taxable.purchasable.product-type-variable.has-default-attributes.product > section.elementor-section.elementor-top-section.elementor-element.elementor-element-59a36bcf.elementor-section-stretched.elementor-section-boxed.elementor-section-height-default.elementor-section-height-default > div > div > div > section > div > div.elementor-column.elementor-col-50.elementor-inner-column.elementor-element.elementor-element-4e7614ac > div > div.elementor-element.elementor-element-271a35ec.elementor-add-to-cart--align-left.e-add-to-cart--show-quantity-yes.elementor-widget.elementor-widget-woocommerce-product-add-to-cart > div > div > form > div > div.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled{
  display: block;
}

body.postid-1821 .woocommerce-js div.product form.cart .variations th{
  margin-bottom: 0;
  margin-top: 20px;
}

body #closest-fitter-container{
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

body.postid-1821 div.woocommerce-variation-price > span > span.woocommerce-Price-amount.amount > bdi{
  /* display: none !important; */
}

body.postid-1821 .fitting-option-price{
  font-size: 14px;
  color: #92c516;
}

.fitting-option-note{
  font-size: 14px;
  color: #92c516;
  /* font-weight: normal; */
  font-style: italic;
}

body .variations span.cfvsw-selected-label{
  font-weight: 400;

}

body .invalid-input-border{
  border: 1px solid red !important;
}

#search-for-fitter {
  flex: 0 0 auto;
  background-color: #a9d934;
  color: #ffffff !important;
  border: none;
  border-radius: 4px;
  padding: 12px 25px;
  text-transform: uppercase;
  font-weight: bold;
  cursor: pointer;
  height: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: normal;
  box-sizing: border-box;
  margin: 0;
  order: 2;
}

body.postid-1821 .woocommerce-Price-amount.amount bdi span:nth-child(3){
  display: none !important;
}

body.postid-1821 .woocommerce-js div.product form.cart .variations,
#content > div > div.elementor.elementor-37078.elementor-location-single.post-1821.product.type-product.status-publish.has-post-thumbnail.product_cat-all.product_cat-alloygator-sets.product_cat-alloygators.product_cat-gifts.product_tag-alloygators.product_tag-black.product_tag-blue.product_tag-bronze.product_tag-gold.product_tag-graphite.product_tag-green.product_tag-orange.product_tag-pink.product_tag-purple.product_tag-red.product_tag-silver.product_tag-sky-blue.product_tag-white.product_tag-yellow.product_shipping_class-all-products.ast-article-single.desktop-align-center.tablet-align-center.mobile-align-center.ast-product-gallery-layout-horizontal.ast-product-gallery-with-no-image.ast-product-single-variable.ast-product-tabs-layout-horizontal.first.instock.featured.taxable.shipping-taxable.purchasable.product-type-variable.product > section.elementor-section.elementor-top-section.elementor-element.elementor-element-59a36bcf.elementor-section-stretched.elementor-section-boxed.elementor-section-height-default.elementor-section-height-default > div > div > div > section > div > div.elementor-column.elementor-col-50.elementor-inner-column.elementor-element.elementor-element-4e7614ac > div > div.elementor-element.elementor-element-271a35ec.elementor-add-to-cart--align-left.e-add-to-cart--show-quantity-yes.elementor-widget.elementor-widget-woocommerce-product-add-to-cart > div > div > form > table
{
  border-bottom: none !important;
}

body .single_variation_wrap .price{
  /* display: none; */
}

body #customer_faf_address {
  width: calc(100% - 150px);
  background-color: #e9eff7;
  border: 1px solid #cedaeb;
  border-radius: 4px;
  padding: 12px 15px;
  height: auto;
  box-sizing: border-box;
  margin: 0;
  order: 1;
}

body #customer_faf_address:focus {
  border-color: #92c518;
  box-shadow: 0 0 0 1px #92c518;
  outline: none;
}

@keyframes ldio-rabauixy9kj { 0% { transform: rotate(0) } 100% { transform: rotate(360deg); } }
.ldio-rabauixy9kj > div {
  animation: ldio-rabauixy9kj 1s infinite linear;
  transform-origin: 100px 100px;
}
.ldio-rabauixy9kj > div div { position: absolute; }
.ldio-rabauixy9kj > div div:nth-child(1), .ldio-rabauixy9kj > div div:nth-child(2) {
  width: 164px;
  height: 164px;
  border: 24px solid;
  border-radius: 50%;
  border-color: transparent #acd55d #acd55d #acd55d;
  box-sizing: border-box;
  position: absolute;
  transform: rotate(45deg);
  transform-origin: 100px 100px;
}
.ldio-rabauixy9kj > div div:nth-child(1) {
  transform: rotate(45deg) translate(18px, 18px);
}
.ldio-rabauixy9kj > div div:nth-child(2) {
  transform: rotate(0deg) translate(18px, 18px);;
}
.ldio-rabauixy9kj > div div:nth-child(3) {
  width: 0;
  height: 0;
  border: 24px solid;
  border-color: transparent transparent transparent #acd55d;
  transform: translate(100px, 6px);
}
.loadingio-spinner-reload-2yxo86hepmh {
  width: 100%;
  height: 200px;
  display: inline-block;
  overflow: hidden;
  background: #ffffffb4;
  position: absolute;
  top: 0;
}
.ldio-rabauixy9kj {
  width: 100%;
  height: 100%;
  position: relative;
  transform: translateZ(0) scale(1);
  backface-visibility: hidden;
  transform-origin: 0 0; /* see note above */
}
.ldio-rabauixy9kj div { box-sizing: content-box; }
/* generated by https://loading.io/ */

/* Style Messages and Select Box */
#fitter-found-label,
#fitter-not-found-label,
#closest_fitter_select {
    width: 100%;
    order: 3;
    margin-top: 5px;
    box-sizing: border-box;
    flex-basis: 100%;
}

#fitter-found-label {
    color: #92c518;
    font-weight: bold;
    padding: 5px 0;
}

#fitter-not-found-label {
    color: red;
    font-weight: normal;
     padding: 5px 0;
}

#closest_fitter_select {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

/* Add styles for Find a Fitter Option Boxes */
.faf-options-container {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.faf-option-box {
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 15px;
    flex: 1;
    min-width: 200px;
    position: relative;
    cursor: pointer;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.faf-option-box:hover {
    border-color: #bbb;
}

/* Style the radio button itself - hide default, use label for visual */
.faf-fitting-choice-radio,
.faf-diy-tool-radio {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

/* Custom radio button appearance */
.faf-option-label::before {
    content: '';
    display: inline-block;
    width: 18px;
    height: 18px;
    border: 1px solid #ccc;
    border-radius: 50%;
    margin-right: 10px;
    vertical-align: middle;
    background-color: #fff;
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
}

/* Style when radio is checked */
.faf-fitting-choice-radio:checked + .faf-option-label::before,
.faf-diy-tool-radio:checked + .faf-option-label::before {
    background-color: #92c518;
    border-color: #7dab14;
}

/* Add inner circle for checked state */
.faf-fitting-choice-radio:checked + .faf-option-label::after,
.faf-diy-tool-radio:checked + .faf-option-label::after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.faf-fitting-choice-radio:checked + .faf-option-label,
.faf-diy-tool-radio:checked + .faf-option-label {
    /* Optionally add styles to the whole label when checked */
}

/* Add border highlight to the box when checked */
.faf-fitting-choice-radio:checked + .faf-option-label {
   /* We select the parent box from the radio with JS for this */
}

.faf-option-box.faf-selected {
    border-color: #92c518;
    box-shadow: 0 0 5px rgba(146, 197, 24, 0.5);
}

.faf-option-label {
    display: block;
    padding-left: 35px;
    cursor: pointer;
}

.faf-option-title {
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
    color: #333;
}

.faf-option-price {
    display: block;
    color: #555;
    font-size: 0.9em;
}

.faf-option-discount {
    color: #92c518;
    font-weight: normal;
}

.faf-option-subtitle {
    display: block;
    color: #777;
    font-size: 0.9em;
}

/* Hide the <br> tags as flex handles spacing */
#closest-fitter-container br {
    display: none;
}

/* Ensure button text color is white */
#search-for-fitter .elementor-button-text {
    color: #ffffff !important;
}

/* --- New Styles for #five-star-fitters-box Layout --- */

/* Target the specific row for the fitter search */
#five-star-fitters-box {
    /* Make the row behave like a block container */
    display: block;
    width: 100%;
    margin-bottom: 15px; /* Add some space below this section */
}

#five-star-fitters-box th.label,
#five-star-fitters-box td.value {
    display: block; /* Stack label and value cell */
    width: 100%; /* Ensure they take full width */
    padding: 0; /* Reset padding */
    border: none; /* Remove potential table borders */
}

#five-star-fitters-box th.label {
    text-align: left; /* Align title left */
    padding-bottom: 10px; /* Space below title */
    font-weight: bold; /* Make title bold */
    line-height: 1.4;
}

#five-star-fitters-box td.value {
    /* The container #closest-fitter-container is already inside this */
}

/* Ensure the flex container within td.value behaves correctly */
body #closest-fitter-container {
    position: relative; /* Keep for absolute positioned children like loader */
    display: flex;
    flex-wrap: wrap; /* Allow dropdown/messages to wrap below */
    gap: 10px; /* Space between input and button, and rows */
    align-items: center; /* Vertically align input and button */
    width: 100%; /* Ensure it spans the td */
}
/* --- End New Styles --- */

/* --- New Styles for #diy-fitting-box Layout --- */

/* Target the specific row for the DIY tools */
#diy-fitting-box {
    display: block;
    width: 100%;
    margin-bottom: 15px; 
}

#diy-fitting-box th.label,
#diy-fitting-box td.value {
    display: block; /* Stack label and value cell */
    width: 100%; /* Ensure they take full width */
    padding: 0; /* Reset padding */
    border: none; /* Remove potential table borders */
}

#diy-fitting-box th.label {
    text-align: left; 
    padding-bottom: 10px; /* Space below title */
    font-weight: bold; 
    line-height: 1.4;
}

#diy-fitting-box td.value {
    /* The container .faf-diy-tools-container is already inside this */
}

/* Optional: Adjust spacing specifically for the DIY tool container if needed */
.faf-diy-tools-container {
   margin-bottom: 0; /* Remove default bottom margin if label provides enough space */
}
/* --- End New Styles --- */
