:root {
    --woocommerce: #034ea2;
    --primary-color: var(--woocommerce);
    --secondard-color: #FBB040;
}

.product-wrapper {
    display: flex;
    justify-content: center;
}

.product-wrapper .product-content {
    padding: 4rem 1.2rem 2rem;
    max-width: 1400px;
    width: 100%;
}

@media screen and (max-width: 768px) {
    .product-wrapper .product-content {
        max-width: 750px;
        width: 100%;
    }
}

@media screen and (max-width: 1305px) {
    .single-product .product-wrapper {
        padding: 0 1rem;
    }
}

.woocommerce-page .page-title {
    color: var(--woocommerce);
    font-size: 2.5rem;
    font-weight: 700;
}

.woocommerce-loop-product__title {
    text-transform: uppercase;
}

.term-description {
    h1, h2, h3 {
        text-transform: uppercase;
    }
}


.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt {
    background-color: var(--woocommerce);
    border-color: var(--woocommerce);
    color: #fff;
}



.woocommerce div.product .product_title {
    color: var(--woocommerce);
    font-size: 2.5rem;
    font-weight: 700;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price, .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
    color: var(--secondard-color);
    font-size: 1.5rem;
    font-weight: 700;   
}

.woocommerce .quantity .qty {
    width: 3.631em;
    text-align: center;
    border-radius: 0;
    height: 60px;
    min-width: 100px;
    font-weight: 700;
}

.woocommerce div.product form.cart .button {
    vertical-align: middle;
    float: left;
    border-radius: 0;
    padding: 1rem 2rem;
    font-weight: 700;
    background: var(--woocommerce);
    text-transform: uppercase;
    letter-spacing: 2px;
    height: 60px;
    &:hover {
        color: var(--secondard-color) !important;
    }
}

.woocommerce div.product div.images img {
    width: 100%;
    aspect-ratio: 1 / 1;        /* Forces square */
    object-fit: cover;        /* Keeps full image visible */
    object-position: center;    /* Centers image */
    background: #f5f5f5;        /* Optional: background behind image */
}

.related.products {
    clear: both;
}

.related.products h2 {
    color: var(--woocommerce);
    font-size: 2.2rem;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    padding: 2rem 0;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title, .woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product h3 {
    color: var(--woocommerce);
    font-size: 1.25rem;
    font-weight: 700;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) ul.products li.product .price {
    color: var(--secondard-color);
    font-size: 1.25rem;
    font-weight: 700;   
}

.woocommerce ul.products li.product .button {
    background-color: var(--woocommerce);
    border-color: var(--woocommerce);
    color: #fff;
    border-radius: 0;
    padding: 1rem 2rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.wc-block-cart__submit {
    background-color: var(--woocommerce);
    border-color: var(--woocommerce);
    color: #fff;
    border-radius: 0;
    padding: 1rem 2rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    a {
        color: #fff;
    }
}

.post-type-archive-product, .woocommerce {
    ul.products li.product, .woocommerce-page ul.products li.product {
        text-align: center;
        h2 {
            font-size: 1.6rem;
        }
    }
    mark.count {
        background-color: transparent;
        color: var(--secondard-color);
    }
}

.woocommerce-page {
    header.header-no-feat-img {
        background: var(--secondard-color);
    }
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    &:hover {
        color: var(--secondard-color);
    }
}

.woocommerce ul.products li.product .button {
    display: none;
}

.woocommerce-cart {
    .wc-block-components-product-name {
        font-size: 1.25rem !important;
        font-weight: 700;
    }
    .wc-block-components-product-metadata {
        display: none;
    }
}

.archive.woocommerce {
    .page-title {
        display: none;
    }
}

.single-product {
    .header-no-feat-img {
        display: none;
    }
    .product_title {
        text-transform: uppercase;
    }
}

.category-policy-content{
    margin-top:40px;
    padding:25px;
    background:#f7f7f7;
    border-radius:6px;
}

.product-poa-wrap {
    margin-top: 1rem;
}

.product-poa-text,
.loop-poa-text {
    font-weight: 700;
    font-size: 1.2rem;
    margin-bottom: 12px;
    display: block;
}

.product-poa-button {
    background-color: var(--woocommerce);
    border-color: var(--woocommerce);
    color: #fff;
    border-radius: 0;
    padding: 1rem 2rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    &:hover {
        background-color: var(--secondard-color) !important;
        border-color: var(--secondard-color) !important;
    }
}



.product-image-wrap {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 1 / 1;
  margin-bottom: 1rem;
}

.product-image-wrap .product-img--main,
.product-image-wrap .product-img--hover {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
  transition: opacity 0.3s ease;
}

.product-image-wrap .product-img--hover {
  opacity: 0;
}

.product-image-wrap:hover .product-img--main {
  opacity: 0;
}

.product-image-wrap:hover .product-img--hover {
  opacity: 1;
}


.category-addition {
  font-size: 0.85em;
  margin-top: -1rem;
  color: #555;
}

/* -------------------------------------------------------------------------
   Muck-Away Zone Pricing
   ------------------------------------------------------------------------- */

.muck-away-zone-form {
  margin: 0.5rem 0 1.75rem;
  padding: 1.25rem 1.5rem;
  background: #f4f7fc;
  border-left: 4px solid var(--woocommerce, #034ea2);
}

.muck-away-zone-form label {
  display: block;
  font-weight: 700;
  margin-bottom: 0.85rem;
  font-size: 1rem;
  color: var(--woocommerce, #034ea2);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.muck-away-input-row {
  display: flex;
  gap: 0;
  align-items: stretch;
  flex-wrap: wrap;
}

.muck-away-input-row input[type="text"] {
  flex: 0 0 auto;
  width: 11rem;
  height: 60px;
  margin: 0;
  border-radius: 0;
  border: 2px solid var(--woocommerce, #034ea2);
  border-right: none;
  padding: 0 1rem;
  font-size: 1.1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  background: #fff;
  color: #222;
  box-shadow: none;
  outline: none;
}

.muck-away-input-row input[type="text"]:focus {
  border-color: var(--secondard-color, #FBB040);
  border-right: none;
}

.muck-away-input-row .button,
#muck-away-get-price {
  flex: 0 0 auto;
  height: 60px;
  margin: 0;
  border-radius: 0 !important;
  background: var(--woocommerce, #034ea2) !important;
  color: #fff !important;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: 0 1.5rem;
  border: 2px solid var(--woocommerce, #034ea2) !important;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  cursor: pointer;
  line-height: 56px;
}

.muck-away-input-row .button:hover,
#muck-away-get-price:hover {
  background: var(--primary-color) !important;
  color: var(--secondard-color) !important;
}

@media screen and (max-width: 480px) {
  .muck-away-input-row {
    flex-direction: column;
    gap: 0.5rem;
  }

  .muck-away-input-row input[type="text"] {
    width: 100%;
    border-right: 2px solid var(--woocommerce, #034ea2);
  }

  .muck-away-input-row input[type="text"]:focus {
    border-color: var(--secondard-color, #FBB040);
    border-right: 2px solid var(--secondard-color, #FBB040);
  }

  .muck-away-input-row .button {
    width: 100%;
    text-align: center;
  }
}

.muck-away-price-result {
  margin-top: 1rem;
}

.muck-away-price-result .price {
  font-size: 1.75rem;
  color: var(--secondard-color, #FBB040);
  font-weight: 700;
  margin: 0;
}

.muck-away-error {
  margin-top: 0.85rem;
  color: #c0392b;
  font-weight: 600;
  font-size: 0.9rem;
}

/* -------------------------------------------------------------------------
   WAPF Radio Button Styling
   ------------------------------------------------------------------------- */

.wapf-field-container.wapf-field-radio {
  margin: 0.5rem 0 1.75rem;
  padding: 1.25rem 1.5rem;
  background: #f4f7fc;
  border-left: 4px solid var(--woocommerce, #034ea2);
}

.wapf-field-container.wapf-field-radio .wapf-field-label label span {
  display: block;
  font-weight: 700;
  margin-bottom: 0.85rem;
  font-size: 1rem;
  color: var(--woocommerce, #034ea2);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.wapf-field-container.wapf-field-radio .wapf-radios {
  display: flex;
  gap: 0;
  flex-wrap: wrap;
}

.wapf-field-container.wapf-field-radio .wapf-checkable {
  flex: 0 0 auto;
}

.wapf-field-container.wapf-field-radio .wapf-input-label {
  display: flex;
  align-items: center;
  cursor: pointer;
  margin: 0;
}

.wapf-field-container.wapf-field-radio .wapf-input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.wapf-field-container.wapf-field-radio .wapf-label-text {
  display: inline-block;
  height: 60px;
  line-height: 60px;
  padding: 0 2rem;
  border: 2px solid var(--woocommerce, #034ea2);
  border-right: none;
  background: #fff;
  color: var(--woocommerce, #034ea2);
  font-weight: 700;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.wapf-field-container.wapf-field-radio .wapf-checkable:last-child .wapf-label-text {
  border-right: 2px solid var(--woocommerce, #034ea2);
}

.wapf-field-container.wapf-field-radio .wapf-input:checked + .wapf-label-text {
  background: var(--woocommerce, #034ea2);
  color: #fff;
}

.wapf-field-container.wapf-field-radio .wapf-input-label:hover .wapf-label-text {
  background: var(--woocommerce, #034ea2);
  color: var(--secondard-color, #FBB040);
}

@media screen and (max-width: 480px) {
  .wapf-field-container.wapf-field-radio .wapf-radios {
    flex-direction: column;
    gap: 0.5rem;
  }

  .wapf-field-container.wapf-field-radio .wapf-label-text {
    border-right: 2px solid var(--woocommerce, #034ea2);
    display: block;
    width: 100%;
    text-align: center;
  }
}

/* -------------------------------------------------------------------------
   WAPF Textarea Styling
   ------------------------------------------------------------------------- */

.wapf-field-container.wapf-field-textarea {
  margin: 0.5rem 0 1.75rem;
  padding: 1.25rem 1.5rem;
  background: #f4f7fc;
  border-left: 4px solid var(--woocommerce, #034ea2);
}

.wapf-field-container.wapf-field-textarea .wapf-field-label label span {
  display: block;
  font-weight: 700;
  margin-bottom: 0.85rem;
  font-size: 1rem;
  color: var(--woocommerce, #034ea2);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.wapf-field-container.wapf-field-textarea textarea.wapf-input {
  width: 100%;
  min-height: 120px;
  padding: 0.75rem 1rem;
  border: 2px solid var(--woocommerce, #034ea2);
  border-radius: 0;
  background: #fff;
  color: #222;
  font-size: 1rem;
  font-family: inherit;
  resize: vertical;
  box-shadow: none;
  outline: none;
  transition: border-color 0.2s ease;
}

.wapf-field-container.wapf-field-textarea textarea.wapf-input:focus {
  border-color: var(--secondard-color, #FBB040);
}


.wc-block-checkout__form {
    h2 {
        color: var(--woocommerce, #034ea2);
        font-size: 2.5rem;
        font-weight: 700;
        text-transform: uppercase;
    }
    h3 {
        color: var(--woocommerce, #034ea2);
        font-weight: 700;
        text-transform: uppercase;
    }
}

.wc-block-checkout__guest-checkout-notice {
    display: none !important;
}

p.dlc-blocks-hint em {
    font-style: normal !important;
}


.footer-container {
    p.contact-big {
        text-transform: uppercase !important;
    }
}