body {
    font-family: "neue-haas-grotesk-display", sans-serif;
}

/* 
--e-global-color-36a2ed4: #040407; jet-black
--e-global-color-9f5bfbc: #CCCCCC;	gray
--e-global-color-d90eeda: #FFFFFF; white
--e-global-color-90f20e2: #F5F2EF; brand light
*/

/*--------------------------------------------*/
/* Elementor screen padding
/*--------------------------------------------*/

body>.elementor>.elementor-element:not(.px-0),
.page-content>.wpb-content-wrapper>.elementor>.elementor-element:not(.px-0),
.page-content>.elementor>.elementor-element:not(.px-0) {
    padding: 0 24px !important;
}

.px-0 {
    padding-inline: 0;
}

.elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 0;
}

/*--------------------------------------------*/
/* Custom Styles
/*--------------------------------------------*/

/* Remove default sub menu border */
.elementor-sub-item {
    border: none !important;
}


@media screen and (min-width: 1025px) {
    .hide-desktop {
        display: none !important;
    }
}


p:last-child {
    margin-bottom: 0;
}

strong {
    color: #040407;
}


body .img-1x1 img{
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

body .img-3x2 img{
    aspect-ratio: 3 / 2;
    object-fit: cover;
}

body .img-2x3 img{
    aspect-ratio: 2 / 3;
    object-fit: cover;
}

body .img-4x3 img{
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

body .img-3x4 img{
    aspect-ratio: 3 / 4;
    object-fit: cover;
}

body .img-16x9 img{
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

body .img-9x16 img{
    aspect-ratio: 9 / 16;
    object-fit: cover;
}

.page-content ol,
.page-content ul, 
.page-content ul li {
    margin-bottom: 1rem;
}

.pdf-link a {
    white-space: nowrap;
}

.pdf-link a:before {
    --pdf-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 640'%3E%3Cpath d='M240 112L128 112C119.2 112 112 119.2 112 128L112 512C112 520.8 119.2 528 128 528L208 528L208 576L128 576C92.7 576 64 547.3 64 512L64 128C64 92.7 92.7 64 128 64L261.5 64C278.5 64 294.8 70.7 306.8 82.7L429.3 205.3C441.3 217.3 448 233.6 448 250.6L448 400.1L400 400.1L400 272.1L312 272.1C272.2 272.1 240 239.9 240 200.1L240 112.1zM380.1 224L288 131.9L288 200C288 213.3 298.7 224 312 224L380.1 224zM272 444L304 444C337.1 444 364 470.9 364 504C364 537.1 337.1 564 304 564L292 564L292 592C292 603 283 612 272 612C261 612 252 603 252 592L252 464C252 453 261 444 272 444zM304 524C315 524 324 515 324 504C324 493 315 484 304 484L292 484L292 524L304 524zM400 444L432 444C460.7 444 484 467.3 484 496L484 560C484 588.7 460.7 612 432 612L400 612C389 612 380 603 380 592L380 464C380 453 389 444 400 444zM432 572C438.6 572 444 566.6 444 560L444 496C444 489.4 438.6 484 432 484L420 484L420 572L432 572zM508 464C508 453 517 444 528 444L576 444C587 444 596 453 596 464C596 475 587 484 576 484L548 484L548 508L576 508C587 508 596 517 596 528C596 539 587 548 576 548L548 548L548 592C548 603 539 612 528 612C517 612 508 603 508 592L508 464z'/%3E%3C/svg%3E");
    content: "";
    width: 20px;
    height: 20px;
    margin-right: 4px;
    margin-bottom: 4px;
    background-color: var(--e-global-color-secondary);
    mask: var(--pdf-svg);
    -webkit-mask: var(--pdf-svg);
}

.sub-arrow {
    width: 100%;
    justify-content: flex-end;
}

@media screen and (max-width: 992px) {
    ul.sub-menu {
        padding-left: 1rem !important;
    }
}

.grad-bg {
    background-image: linear-gradient(90deg, var(--e-global-color-secondary) 0%, var(--e-global-color-primary) 100%);
}

.grad-text {
    background: linear-gradient(90deg, var(--e-global-color-secondary) 0%, var(--e-global-color-primary) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent;
}

.grad-icon .elementor-icon {
    background: linear-gradient(90deg, var(--e-global-color-secondary) 0%, var(--e-global-color-primary) 100%);
}


.jet-filters-pagination__link,
.single_add_to_cart_button,
.frm_button_submit,
.elementor-button {
    background: linear-gradient(to right, var(--e-global-color-secondary), var(--e-global-color-secondary), var(--e-global-color-primary)) !important;
    background-size: 200% 100% !important;
    background-position: 100% 0 !important;
    border-radius: 1000em !important;
    color: white !important;
    font-size: 16px !important;
    padding: 12px 24px !important;
    font-weight: normal !important;
    line-height: 1.5 !important;
    
}
.jet-filters-pagination__link:hover,
.single_add_to_cart_button:hover,
.frm_button_submit:hover,
.elementor-button:hover {
    background-position: 0 0 !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.15) !important;
}

/* Loading state for add to cart button */
.single_add_to_cart_button.loading {
    position: relative;
    pointer-events: none;
    opacity: 0.7;
    color: transparent !important;
}

.single_add_to_cart_button.loading::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -10px;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: h3-spin 0.8s linear infinite;
}

/* Hide default WooCommerce loader */
.single_add_to_cart_button.loading::after {
    display: none !important;
}

/* Gradient Button */
.elementor-button-info .elementor-button {
    background: var(--e-global-color-36a2ed4) !important;
}

.elementor-button-info .elementor-button:hover {
    /* background: var(--e-global-color-secondary) !important; */
    /* background: var(--e-global-color-36a2ed4) !important; */
    fill: var(--e-global-color-36a2ed4) !important;
    background: transparent !important;
    color: var(--e-global-color-36a2ed4) !important;
    box-shadow: inset 0 0 0px 2px var(--e-global-color-36a2ed4), 0 4px 4px rgba(0, 0, 0, 0.15) !important;
}

/* Outline Button */
.elementor-button-success .elementor-button {
    fill: var(--e-global-color-secondary) !important;
    color: var(--e-global-color-secondary) !important;
    background: none !important;
    box-shadow: inset 0 0 0px 2px var(--e-global-color-secondary);
    /* border: 2px solid var(--e-global-color-secondary) !important; */
    border-color: var(--e-global-color-secondary) !important;
}

.elementor-button-success .elementor-button:hover {
    background: var(--e-global-color-secondary) !important;
    fill: white !important;
    color: white !important;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.15) !important;
}




/*--------------------------------------------*/
/* Formidable Override
/*--------------------------------------------*/

/* Update formidable placeholder color */
.frm_style_h3-style.with_frm_style input::placeholder,
.frm_style_h3-style.with_frm_style textarea::placeholder {
    color: #757575;
}


.frm_combo_inputs_container,
.frm_grid_container,
.frm_form_fields .frm_section_heading,
.frm_form_fields .frm_fields_container {
    gap: 0 24px;
}

.frm_form_field:not(.frm_compact) .frm_dropzone {
    max-width: 100%;
}

.frm_button_submit {
    border: none !important;
}



/*--------------------------------------------*/
/* Product Filter Styles
/*--------------------------------------------*/

.product-filter-container {
    margin-bottom: 2rem;
    padding: 1.5rem;
    border: 1px solid var(--e-global-color-9f5bfbc);
    border-radius: 8px;
    background: #FFFFFF;
}

.product-filter-title {
    margin: 0 0 1rem 0;
    color: var(--e-global-color-36a2ed4);
    font-size: 18px;
    font-weight: 600;
}

.product-filter-checkboxes {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.product-filter-checkbox {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 14px;
    user-select: none;
    position: relative;
    padding-left: 2rem;
    margin-bottom: 0;
    line-height: 1.4;
}

.product-filter-checkbox input[type="checkbox"] {
    margin-right: 8px;
    cursor: pointer;
}

.product-filter-checkbox .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 18px;
    width: 18px;
    background-color: #FFFFFF;
    border: 2px solid var(--e-global-color-9f5bfbc);
    border-radius: 3px;
    transition: all 0.2s ease;
}

.product-filter-checkbox:hover input ~ .checkmark {
    border-color: var(--e-global-color-36a2ed4);
    background-color: #F8F8F8;
}

.product-filter-checkbox input:checked ~ .checkmark {
    background-color: var(--e-global-color-36a2ed4);
    border-color: var(--e-global-color-36a2ed4);
}

.product-filter-checkbox .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

.product-filter-checkbox input:checked ~ .checkmark:after {
    display: block;
    left: 5px;
    top: 2px;
    width: 4px;
    height: 8px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.product-filter-checkbox .term-count {
    color: var(--e-global-color-9f5bfbc);
    margin-left: 0.25rem;
}

/* Disabled checkbox styles */
.product-filter-checkbox.disabled {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

.product-filter-checkbox.disabled input[type="checkbox"] {
    cursor: not-allowed;
    pointer-events: none;
}

.product-filter-checkbox.disabled .checkmark {
    background-color: #f0f0f0;
    border-color: #ddd;
    cursor: not-allowed;
}

.product-filter-checkbox.disabled:hover .checkmark {
    background-color: #f0f0f0 !important;
    border-color: #ddd !important;
}

.product-filter-select {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 2px solid var(--e-global-color-9f5bfbc);
    border-radius: 6px;
    background: #FFFFFF;
    font-size: 14px;
    color: var(--e-global-color-36a2ed4);
    margin-bottom: 1rem;
    transition: border-color 0.2s ease;
}

.product-filter-select:focus {
    outline: none;
    border-color: var(--e-global-color-36a2ed4);
    box-shadow: 0 0 0 3px rgba(4, 4, 7, 0.1);
}

.filter-clear-btn {
    background: transparent;
    border: 2px solid var(--e-global-color-9f5bfbc);
    color: var(--e-global-color-9f5bfbc);
    padding: 0.5rem 1rem;
    border-radius: 6px;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-weight: 500;
}

.filter-clear-btn:hover {
    background: var(--e-global-color-9f5bfbc);
    color: #FFFFFF;
    transform: translateY(-1px);
}

.product-filter-no-results {
    grid-column: 1 / -1;
    text-align: center;
    padding: 3rem 1rem;
    background: #F8F8F8;
    border-radius: 8px;
    margin-top: 2rem;
}

/* Product count display */
.product-count {
    display: inline-block;
    font-size: 14px;
    /* font-weight: 600; */
    color: var(--e-global-color-36a2ed4);
    /* padding: 0.5rem 1rem; */
    /* background: #F8F8F8; */
    /* border-radius: 6px; */
    /* border: 1px solid var(--e-global-color-9f5bfbc); */
}

/* Filtered out products */
.filtered-out {
    display: none !important;
}

/* Responsive design */
@media screen and (max-width: 768px) {
    .product-filter-container {
        padding: 1rem;
        margin-bottom: 1.5rem;
    }
    
    .product-filter-checkboxes {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    
    .product-filter-title {
        font-size: 16px;
    }
}

@media screen and (max-width: 480px) {
    .product-filter-container {
        padding: 0.75rem;
        margin-bottom: 1rem;
    }
    
    .product-filter-checkbox {
        font-size: 13px;
        padding-left: 1.75rem;
    }
    
    .product-filter-checkbox .checkmark {
        height: 16px;
        width: 16px;
    }
    
    .product-filter-checkbox .checkmark:after {
        left: 4px;
        top: 1px;
        width: 3px;
        height: 7px;
    }
}

/*--------------------------------------------*/
/* Products filtering
/*--------------------------------------------*/

.jet-filter-items-scroll::-webkit-scrollbar {
    width: 4px;
}

.jet-filter-items-scroll::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.jet-filter-items-scroll::-webkit-scrollbar-thumb {
    background-color: var(--e-global-color-primary);
    border-radius: 4px;
}


/* No results */
.jet-smart-filters-elementor-loop-no-result {
    text-align: center;
    padding-block: 60px;
}





/*--------------------------------------------*/
/* Product Details Shortcode Styles
/*--------------------------------------------*/


.product-details-container {
    border: 1px solid #CCCCCC;
    border-radius: 8px;
    overflow: hidden;
}

.product-details-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    background: #FFFFFF;
    border: none;
}

.product-details-table td {
    padding: 12px 16px;
    border: 1px solid #CCCCCC;
    vertical-align: top;
}

.product-details-table tr:first-child td {
    border-top: none;
}
.product-details-table tr:last-child td {
    border-bottom: none;
}
.product-details-table td:first-child {
    border-left: none;
}
.product-details-table td:last-child {
    border-right: none;
}

.product-details-table td:nth-child(odd) {
    background-color: #F5F2EF;
    font-weight: 600;
    width: 25%;
}

.product-details-table td:nth-child(even) {
    background-color: #FFFFFF;
    width: 25%;
}

.product-details-table strong {
    color: #040407;
    font-weight: 600;
}

@media screen and (max-width: 768px) {
    .product-details-table {
        font-size: 14px;
    }
    
    .product-details-table td {
        padding: 8px 12px;
    }
    
}

@media screen and (max-width: 480px) {
    
    .product-details-table td {
        display: block;
        width: 100% !important;
    }
    
    
} 


#variation-cta {
    display: none;
}



.product-details-simple {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    /* gap: 1rem; */
    column-gap: 0;
    font-size: 15px;
    line-height: 2;
    margin: 0;
    /* margin-block: 1rem; */
    color: var(--e-global-color-text);
    /* padding: 1rem; */
    /* border: 1px solid var(--e-global-color-text); */
    
}

.product-details-simple .detail-item {
    break-inside: avoid;
    /* border-top: 1px solid #ddd; */
    padding-inline: 8px;
    /* text-indent: 6px; */
}

.product-details-simple .detail-item strong {
    display: block;
    /* margin-bottom: 0.25rem; */
    color: var(--e-global-color-text);
    font-weight: 900;
    text-transform: uppercase;
    background-color: #eee;
    font-size: 12px;
    /* padding-block: 3px; */
    /* margin-bottom: 3px; */
    margin-inline: -8px;
    padding-left: 8px;
}

@media screen and (max-width: 768px) {
    .product-details-simple {
        grid-template-columns: repeat(2, 1fr);
        font-size: 14px;
    }
}

@media screen and (max-width: 480px) {
    .product-details-simple {
        grid-template-columns: 1fr;
        /*padding: 0.75rem;*/
    }
}







.var-btn {
    display: inline-block;
    padding: 0.4rem .8rem !important;
    margin: 0.4rem 0.5rem 0.4rem 0;
    border: 1px solid var(--e-global-color-text) !important;
    border-radius: 8px;
    background: transparent;
    color: var(--e-global-color-text) !important;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
}

.var-btn.active {
    background: linear-gradient(90deg, var(--e-global-color-text) 0%, var(--e-global-color-text) 100%);
    border-color: transparent;
    color: white !important;
} 

.var-btn.disabled {
    opacity: 0.35;
    cursor: not-allowed;
    pointer-events: none;
}

.var-btn:hover {
    background: var(--e-global-color-text) !important;
    color: white !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.var-btn.active:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    color: white !important;
    
    &:focus {
        color: white !important;
        background: var(--e-global-color-text) !important;
    }
    
}

.var-btn.active:focus {
    border: none;
    color: white !important;
    background: var(--e-global-color-text) !important;
}
.var-btn:focus {
    border: none;
    background: transparent  !important;
}

.var-btn:focus:hover {
    border: none;
    color: white !important;
    background: var(--e-global-color-text) !important;
}

/* Remove button styles */
.var-btn .remove-btn {
    margin-left: 8px;
    display: inline-block;
    width: 20px;
    height: 20px;
    /* border: 1px solid red; */
    font-size: 16px;
    font-weight: bold;
    line-height: 18px;
    position: relative;
    top: -1px;
    cursor: pointer;
    border-radius: 99999em;
    background-color: rgba(255, 255, 255, 0.2);
    transition: background-color 0.2s ease;
}

.var-btn.active .remove-btn {
    color: white;
}

.var-btn.active .remove-btn:hover {
    background-color: rgba(255, 255, 255, 0.5);
    /* filter: invert(1); */
}









/* JetSmartFilters options with 0 results */
.jet-filter-row.jet-filter-row-disable {
    /* display: none !important; */
    opacity: .3 !important;
}




/*--------------------------------------------*/
/* Product Filter Loading States
/*--------------------------------------------*/

/* Loading state for Elementor widgets */
.elementor-loading {
    position: relative;
    opacity: 0.6;
    pointer-events: none;
}

.elementor-loading::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 24px;
    height: 24px;
    border: 3px solid #f3f3f3;
    border-top: 3px solid #3498db;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    z-index: 10;
}

@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}

/* Filter container loading state */
.product-filter-container.loading {
    opacity: 0.7;
}

.product-filter-container.loading .product-filter-checkboxes {
    pointer-events: none;
}

/* General refreshing state */
.refreshing-content {
    transition: opacity 0.3s ease;
    opacity: 0.8;
}

/* Visual feedback for filter changes */
.product-filter-checkbox input[type="checkbox"]:focus {
    box-shadow: 0 0 3px rgba(52, 152, 219, 0.5);
    outline: none;
}







/*--------------------------------------------*/
/* Woocommerce Overrides
/*--------------------------------------------*/    


.variations_form a.reset_variations {
        display: none !important;
    
} 

.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th{
    background-color: transparent;
    display: block;
    text-align: left;
    padding: 0;
} 



.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,
.woocommerce div.product div.images .flex-control-thumbs li img:hover {
    border-color: #333;
}

/* Temporary hiding for demo */
.woocommerce-notices-wrapper,
.elementor-menu-cart__subtotal,
.elementor-menu-cart__product-price {
	display:none;
}


.widget_shopping_cart_content:after {
    text-align: center;
    content: 'Quote Request Form Goes Here';
    margin-top: 1rem;
    border: 1px solid #ccc;
    padding: 1rem;
}


/*--------------------------------------------*/
/* Dynamic Product Details Container
/*--------------------------------------------*/

.product-details-dynamic-container {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background-color: #f9f9f9;
    margin: 20px 0;
    transition: all 0.3s ease;
}

.product-details-dynamic-container .product-details-simple {
    padding: 20px;
}

.product-details-dynamic-container .detail-item {
    margin-bottom: 8px;
    padding: 4px 0;
    border-bottom: 1px solid #f0f0f0;
}

.product-details-dynamic-container .detail-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.product-details-dynamic-container .detail-item strong {
    color: #333;
    margin-right: 8px;
    min-width: 120px;
    display: inline-block;
}

/* Loading states */
.product-details-dynamic-container .loading {
    opacity: 0.6;
    pointer-events: none;
}

/*--------------------------------------------*/
/* Product Details Table (matching image format)
/*--------------------------------------------*/

.product-details-table-container {
    padding: 20px;
}

.product-details-table {
    width: 100%;
    border-collapse: collapse;
    background-color: #ffffff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.product-details-table td {
    padding: 12px 15px;
    border: 1px solid #e0e0e0;
    vertical-align: top;
}

.product-details-table td.label {
    background-color: #f5f5f5;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 12px;
    color: #666;
    width: 16.66%; /* 6 columns, so each is about 16.66% */
    letter-spacing: 0.5px;
}

.product-details-table td.value {
    background-color: #ffffff;
    color: #333;
    font-size: 14px;
    font-weight: normal;
}

.product-details-table tr:first-child td {
    border-top: none;
}

.product-details-table td:first-child {
    border-left: none;
}

.product-details-table td:last-child {
    border-right: none;
}

.product-details-table tr:last-child td {
    border-bottom: none;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .product-details-table {
        font-size: 12px;
    }
    
    .product-details-table td {
        padding: 8px 10px;
    }
    
    .product-details-table td.label {
        font-size: 10px;
    }
    
    .product-details-table td.value {
        font-size: 12px;
    }
}









/* Hide "cart" in menu until filled */
/*
.elementor-widget-woocommerce-menu-cart {
    display: none;
}

.elementor-widget-woocommerce-menu-cart:has(.woocommerce-cart-form__cart-item) {
    display: block;
}*/

/*--------------------------------------------*/
/* Mini Cart Shortcode Styles
/*--------------------------------------------*/

.h3-mini-cart-items {
    list-style: none;
    padding: 0;
    margin: 0;
}

.h3-mini-cart-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
    transition: opacity 0.3s ease;
    position: relative;
    font-size: 16px;
}

.h3-mini-cart-item:last-child {
    border-bottom: none;
}

.h3-mini-cart-item__thumbnail {
    flex-shrink: 0;
}

.h3-mini-cart-item__thumbnail img {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 4px;
}

.h3-mini-cart-item__name {
    flex-grow: 1;
}

.h3-mini-cart-item__name a {
    color: inherit;
    text-decoration: none;
}

.h3-mini-cart-item__name a:hover {
    color: #040407;
    text-decoration: underline;
}

.h3-mini-cart-item__remove {
    flex-shrink: 0;
}

/* .h3-mini-cart-item__remove a {
    color: #999 !important;
    text-decoration: none;
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
    padding: 5px;
    display: block;
}

.h3-mini-cart-item__remove a:hover {
    color: var(--e-global-color-text) !important;
} */

body.h3-cart-has-items .h3-mini-cart-item__remove a.remove.remove_from_cart_button {
    color: var(--e-global-color-text) !important;
    font-weight: normal !important;
    font-size: 1.5rem !important;
    display: block;
    font-size: 1.5em;
    height: 1em;
    width: 1em;
    text-align: center;
    line-height: 1;
    border-radius: 100%;
    text-decoration: none;
    font-weight: 700;
    border: 0
}
body.h3-cart-has-items .h3-mini-cart-item__remove a.remove.remove_from_cart_button:hover {
    color: white !important;
    background: var(--e-global-color-secondary) !important;
}

.woocommerce-mini-cart__empty-message {
    color: #666;
    text-align: center;
    /* padding: 30px 20px; */
    line-height: 1.5;
    max-width: 420px;
    margin-inline: auto;
}

.woocommerce-mini-cart__empty-message p {
    /* margin: 0 0 15px 0; */
}

.woocommerce-mini-cart__empty-message p:last-child {
    margin-bottom: 0;
}

.woocommerce-mini-cart__empty-message a {
    text-decoration: underline;
    /* color: #040407;
    text-decoration: none;
    font-weight: 500;
    border-bottom: 1px solid #040407;
    transition: all 0.3s ease; */
}

.woocommerce-mini-cart__empty-message a:hover {
    /* color: var(--e-global-color-secondary, #e74c3c); */
    /* border-bottom-color: var(--e-global-color-secondary, #e74c3c); */
}

/* Loading state */
.h3-mini-cart-item.removing {
    opacity: 0.5;
    pointer-events: none;
}

/* Loading overlay */
.h3-cart-item-loading {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    z-index: 10;
}

/* Spinner animation */
.h3-spinner {
    width: 20px;
    height: 20px;
    border: 3px solid #CCCCCC;
    border-top: 3px solid #040407;
    border-radius: 50%;
    animation: h3-spin 0.8s linear infinite;
}

@keyframes h3-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Loading text */
.h3-loading-text {
    font-size: 14px;
    color: #040407;
    font-weight: 500;
}



/* body.h3-cart-empty .header-get-quote, */
body.h3-cart-empty:not(.elementor-editor-active) .quote-form {
    display: none;
}

