.divi-quantity-selector {
    margin: 25px 0;
}

.divi-quantity-selector h3 {
    margin: 0 0 12px;
    font-size: 22px;
    font-weight: 600;
    color: #21201c;
}

/* Packs grid */
.divi-pack-selection {
    display: flex;
    justify-content: space-evenly;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.divi-pack {
    position: relative;
    width: 98px;
    height: 78px;
    cursor: pointer;
    user-select: none;
}

.divi-pack-bg {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
     width: 94px;
        height: 78px;
        background-color: #f4f1eb;
        border-radius: 10.27px;
        transition: background-color 0.3s;
}

.divi-pack-top {
    position: absolute;
        top: 1px;
        left: 0;
        width: 94px;
        height: 26px;
        background-color: #c3b189;
        border-radius: 10.27px 10.27px 0px 0px;
        transition: background-color 0.3s;
}

.divi-pack-qty {
    position: absolute;
        top: 40px;
        left: 50%;
        transform: translateX(-50%);
        width: 66px;
        font-family: "Open Sans-SemiBold", Helvetica;
        font-weight: 600;
        color: #21201c;
        font-size: 18px;
        text-align: center !important;
}

.divi-pack-discount {
    position: absolute;
        top: 2px;
        left: 50%;
        transform: translateX(-50%);
        width: 60px;
        font-family: "Open Sans-SemiBold", Helvetica;
        font-weight: 600;
        color: #f4f1eb;
        font-size: 14.5px;
        text-align: center !important;
}

/* Selected state */
.divi-pack.selected .divi-pack-bg { background-color: #e0d9cf; }
.divi-pack.selected .divi-pack-top { background-color: #a89f7e; }
.divi-pack.selected .divi-pack-qty { color: #383B13; }
 /* Custom styling for the native Add to Cart button */
    .woocommerce-page button.single_add_to_cart_button.button.alt {
        border: none !important;
        background-color: #383B13 !important;
        color: white !important;
        width: 250px !important;
        padding: 12px  !important;
        border-radius: 2px !important;
        cursor: pointer !important;
        font-size: 16px !important;
        font-weight: bold !important;
        text-align: center !important;
        transition: background-color 0.3s ease !important;
		margin:0!important;
    }
    .woocommerce-page button.single_add_to_cart_button.button.alt:hover {
        background-color: #2E3110 !important;
    }
    .woocommerce-page button.single_add_to_cart_button.button.alt:selected {
        background-color: #232508 !important;
    }
    .woocommerce-page button.single_add_to_cart_button.button.alt:disabled {
        background-color: #A8AD8C !important;
        cursor: not-allowed !important;
    }
.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled{
/* display:flex!important;
flex-direction:column!important;
justify-content:space-between!important;
gap:15px!important; */
display:grid!important;
grid-template-columns: repeat(2, 1fr)!important;
row-gap:20px;
}
/* Styled native quantity input */
.bos4w-display-wrap{
grid-column:1/3!important;
}
.bos4w-display-plan-text{
margin-bottom:10px;
}
.bos4w-display-options ul li{
color:#000!important;
}
/* ── Main options container ── */
.bos4w-display-options {
    margin: 0;
    padding: 0;
    list-style: none;
}
.bos4w-display-options > ul {
    margin: 0;
    padding: 0;
}
.bos4w-display-options li {
    margin: 0.5rem 0;
}
/* ── Radio label styling ── */
.bos4w-display-options ul li::marker{
display:none!important;
}
.bos4w-display-options ul{
list-style:none!important;
padding:0!important;
}
.bos4w-display-options label {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 14px 18px;
    border: 2px solid #d8d8d0;
    border-radius: 10px;
    cursor: pointer;
    font-size: 1.05rem;
    color: #2c2c24;
    background: white;
    transition: all 0.22s ease;
    position: relative;
}
/* Hover & focus states */
.bos4w-display-options label:hover {
    border-color: #a89f7e;
    background: rgba(168, 159, 126, 0.08);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
/* Selected / checked state */
.bos4w-display-options input[type="radio"]:checked + label,
.bos4w-display-options label:has(input[type="radio"]:checked) {
    border-color: #383B13;
    background: rgba(56, 59, 19, 0.08);
    font-weight: 600;
    box-shadow: 0 2px 10px rgba(56, 59, 19, 0.15);
}
/* Radio button itself - modern accent */
.bos4w-display-options input[type="radio"] {
    width: 20px;
    height: 20px;
    accent-color: #383B13;
    margin: 0;
}
/* ── Dropdown / Frequency selector ── */
.bos4w-display-dropdown {
    margin-top: 1rem;
}
.bos4w-display-dropdown select,
.bos4w-display-dropdown .bos4w-frequency-select {
    width: 100%;
    max-width: 340px;
    padding: 0.75rem 1rem;
    border: 1.5px solid #ccc;
    border-radius: 8px;
    font-size: 1rem;
    background: white;
    color: #21201c;
    transition: border-color 0.2s;
}
.bos4w-display-dropdown select:focus {
    outline: none;
    border-color: #383B13;
    box-shadow: 0 0 0 3px rgba(56, 59, 19, 0.15);
}
/* Discount text / savings badge (common in plugin) */
.bos4w-display-options .bos4w-savings,
.bos4w-display-options .discount-amount,
.bos4w-display-options .save-text {
    color: #2e7d32;
    font-weight: 700;
    margin-left: 8px;
    font-size: 0.95em;
}
/* ── When nothing is selected / initial state ── */
.bos4w-display-dropdown[style*="display: none"],
.bos4w-display-dropdown:not([style*="block"]) {
    opacity: 0;
    height: 0;
    margin: 0;
    overflow: hidden;
}
    .woocommerce .quantity {
        position: relative!important;
        width: 120px!important;
    }
    .woocommerce .quantity input.qty {
        width: 100%!important;
        height: 50px!important;
        padding: 0 40px!important;
        text-align: center!important;
        border: none!important;
        background-color: #fbf9f6!important;
        border-radius: 8px!important;
        font-size: 16px!important;
        font-weight: 600!important;
        color: #383B13!important;
        appearance: none!important;
		margin:0!important;
    }
    .woocommerce .quantity .qty-adjust {
        position: absolute!important;
        top: 50%!important;
        transform: translateY(-50%)!important;
        width: 30px!important;
        height: 30px!important;
        background: transparent!important;
        border: none!important;
        font-size: 24px!important;
        font-weight: bold!important;
        color: #21201c!important;
        cursor: pointer!important;!important
        user-select: none!important;
    }
    
/* Responsive adjustments */
@media (max-width: 980px) {
    .divi-pack-selection { justify-content: flex-start; }
    .divi-pack { width: 92px; height: 74px; }
    .divi-pack-qty { font-size: 16px; top: 36px; }
    .divi-pack-discount { font-size: 12.5px; }
}
 /* ========================= */
/* TABLET RESPONSIVE */
/* ========================= */
@media (max-width: 992px) {
	.card-add-to-cart .single_add_to_cart_button {
		padding: 0.6rem 1.2rem!important;
		font-size: 0.9rem;
	}

	.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled, .woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-disabled {
		grid-template-columns: 1fr 1fr !important;
		gap: 8px;
	}

	.quantity input {
		width: 45px;
		padding: 8px;
		font-size: 0.9rem;
	}

	.bos4w-display-wrap {
		font-size: 0.9rem;
	}

	.bos4w-display-options ul li {
		font-size: 0.9rem;
	}
}

/* ========================= */
/* MOBILE RESPONSIVE */
/* ========================= */
@media (max-width: 768px) {
	/* Stack quantity and button vertically */ .woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled, .woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-disabled {
		grid-template-columns: 1fr !important;
	}

	.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled .quantity {
		grid-area: auto !important;
	}
	.woocommerce-page button.single_add_to_cart_button.button.alt {
		grid-area: auto !important;
		width: 100%!important;
		padding: 1.2rem!important;
		
	}
	
	.quantity input {
		width: 40px;
		padding: 6px;
		font-size: 0.85rem;
	}

	.bos4w-display-wrap {
		font-size: 0.85rem;
	}

	.bos4w-display-options ul li {
		font-size: 0.85rem;
	}

	.no-products {
		padding: 3rem 1rem;
		font-size: 0.9rem;
	}
}
@media (max-width: 600px) {
	.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled,
	.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-disabled {
		grid-template-columns: 1fr !important;
		grid-template-rows: repeat(3, auto) !important;
	}
.woocommerce .quantity{
		width:100%!important;
	}
	.bos4w-display-wrap {
		grid-column: 1 / 2 !important;
	}
	.single_add_to_cart_button.button.alt {
		grid-area: auto !important;
		width: 100%!important;
		padding:1.2rem!important;
		
	}
}
/* ========================= */
/* SMALL PHONES */
/* ========================= */
@media (max-width: 480px) {

	.quantity input {
		width: 36px;
		padding: 5px;
		font-size: 0.8rem;
	}

	.bos4w-display-wrap {
		font-size: 0.8rem;
	}

	.bos4w-display-options ul li {
		font-size: 0.8rem;
	}
}