/* Product Images and Hover Effect */
.products .product {
    position: relative;
    overflow: hidden;
}

.products .product .woocommerce-loop-product__link {
    display: block;
    position: relative;
}

.products .product .attachment-woocommerce_thumbnail {
    display: block;
    width: 100%;
    transition: opacity 0.3s ease-in-out;
}

.products .product .secondary-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.products .product.has-secondary-image:hover .attachment-woocommerce_thumbnail {
    opacity: 0;
}

.products .product.has-secondary-image:hover .secondary-image {
    opacity: 1;
}

/* Product Loop Buttons */
.archive .woocommerce-loop-product__buttons {
    margin: 0 0 40px 0;
}

/* Product Subtitle Styling */
#product-subtitle-wrap {
    margin: 20px 0;
}

#product-subtitle-wrap label {
    font-size: 14px;
    font-weight: bold;
}

#product-subtitle-wrap input {
    width: 100%;
    padding: 8px;
    font-size: 14px;
    margin-top: 5px;
}

/* Search Field Styling */
.aws-container .aws-search-form .aws-wrapper {
    border-radius: 0 !important;
}

.aws-container .aws-search-form .aws-wrapper .aws-search-field {
    border: none;
    border-bottom: 1px solid #412d26;
    color: #412d26;
    font-size: 16px;
    border-radius: 0 !important;
    padding: 0;
    margin: 0px !important;
    text-align: left;
    background: url('/wp-content/themes/refreshworks/images/icons/search-icon.svg') no-repeat right center;
    background-size: auto;
}

/* Category Description Styling */
.category-description {
    margin: 0 auto 0 auto;
}

.category-description .elementor-shortcode h1,
.category-description .elementor-shortcode h2,
.category-description .elementor-shortcode h3,
.category-description .elementor-shortcode h4,
.category-description .elementor-shortcode h5,
.category-description .elementor-shortcode h6 {
    color: #412D26;
    font-family: "Reckless Light", Sans-serif;
    font-size: 30px;
    font-weight: 300;
    line-height: 130%;
    letter-spacing: 0.8px;
    margin: 0 0 30px 0;
}

.category-description p {
    color: rgb(65, 45, 38);
    font-family: "SF Pro Display", sans-serif;
    font-size: 15px;
    font-weight: 200;
    line-height: 130%;
    margin: 0 0 30px 0;
    letter-spacing: 1px;
}

.category-description .excerpt {}

.category-description .full-description {
    display: none;
    max-width: 589.63px;
}

.category-description .read-more,
.category-description .read-less {
    display: block;
    margin-top: 20px;
    color: rgb(65, 45, 38);
    font-family: "SF Pro Display", sans-serif;
    font-size: 15px;
    cursor: pointer;
    border-bottom: 1px solid black;
    max-width: fit-content;
    font-weight: 200;
    letter-spacing: 1px;
}

/* Border Styling */
.border-container {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.border-line {
    border-top: 1px solid black;
    flex-grow: 1;
    margin-right: 10px;
}

.border-text {
    font-family: "SF Pro Display", sans-serif;
    font-weight: 300;
}

/* Sale Badge Styling */
.elementor-24389 .elementor-element.elementor-element-2f963a2.elementor-wc-products ul.products li.product span.onsale {
    display: block !important;
    color: #FFFFFF !important;
    background-color: #412D26 !important;
    border-radius: 0px !important;
    max-width: 55px;
    min-width: 55px !important;
    left: auto !important;
    right: 0 !important;
    top: 30px !important;
    margin: 10px !important;
    z-index: 2;
}

/* Image Object Fit */
.img-object-cover img {
    object-fit: cover;
}

/* Center Content Alignment */
.elementor-element .align-content-center {
    align-content: center;
    flex-wrap: wrap;
}

@media (min-width: 768px) {
    .elementor-36251 .elementor-element.elementor-element-e1de594 {
        margin: 0 -40px;
    }

    .elementor-36251 .elementor-element.elementor-element-1a7b9cf {
        margin-right: 20px;
    }
}

.hs-form-iframe .hbspt-form .hs-input {
    background: transparent !important;
    border: none !important;
    color: #412D26 !important;
    font-size: 18px !important;
    padding: 0 0 5px 0 !important;
    margin: 0 0 20px !important;
    border-bottom: 1px solid #412D26 !important;
    border-radius: 0 !important;
}

.hs-form-iframe .hbspt-form input::placeholder {
    color: #412D26 !important;
}

.footer-payment-methods .gallery {
    align-items: center;
    display: flex;
}

.footer-payment-methods .elementor-image-gallery .gallery-item img {
    max-width: 40px;
}