/*
Theme Name: Divi - Child theme
Theme URI: 
Version: 1
Description: Divi - Child 
Author: Agronomic House
Author URI: https://agronomichouse.gr
Template: Divi
*/
/*@import url(../Divi/style.css);*/
/* =Theme customization starts here

------------------------------------------------------- */

/*882600892878*/


:root {
	--main: #016448;
	--cream: #F1EBDD;
	--dark: #023528;
	--yellow: #f4c542;
	--brown: #ceb9a7;
	--light-brown: #f0e3cd;
}

body {
	background-color: var(--cream);	
}

header .promo {
    text-align: center;
    background-color: var(--dark);
    color: white;
    padding: 5px 10px;
    font-size: 15px;
} 

.hm-cat .et_pb_column {
	display: flex;
	flex-wrap: wrap;
	gap: 50px 5.33%;
}

.hm-cat .et_pb_column .et_pb_blurb {
	margin: 0;
	flex: 0 1 21%;
	position: relative;
	z-index: 1;
	display: block;
	overflow: visible;
	box-shadow: var(--main) 0px 0px 0;
	background-color: var(--light-brown);
	transition: all 1s ease;
}

.hm-cat .et_pb_column .et_pb_blurb.et_had_animation {
	box-shadow: var(--main) 15px 15px 0;
}

footer .et_pb_blurb .et_pb_main_blurb_image {
	width: 45px;
	min-width: 45px;
	height: 45px;
	background: #007f57;
	display: flex !important;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	margin: 0 !important;
}

footer .et_pb_blurb .et_pb_blurb_content {
	display: flex !important;
}

footer a {
	position: relative;
}

footer .et_pb_section {
	border-top-left-radius: 45px;
	border-top-right-radius: 45px;
	box-shadow: 12px -12px 0px var(--brown);	
}

footer ul.menu a:after {
	content: '';
	position: absolute;
	width: 100%;
	transform: scaleX(0);
	height: 2px;
	bottom: 0;
	left: 0;
	background-color: var(--cream);
	transition: transform 0.25s ease-out;
}

footer a:hover:after {
	transform: scaleX(1);
}

.hm-about .et_pb_column:first-of-type {
	border-top-left-radius: 45px;
	border-bottom-left-radius: 45px;
	display: flex;
}

.hm-about .et_pb_column:first-of-type * {
	display: flex;
	width: 100%;
	height: 100%;
}

.hm-about .et_pb_column video {
    position: absolute;
    object-fit: cover;
}

.hm-about .et_pb_column:first-of-type {
    border-top-left-radius: 45px;
    border-bottom-left-radius: 45px;
    display: flex;
    min-height: 84vh;
    aspect-ratio: 10 / 11;
    width: auto;
}

.hm-about .et_pb_column:last-of-type {
	border-top-right-radius: 45px;
	border-bottom-right-radius: 45px;
	border: 4px solid var(--brown);
}

.hm-viral.title.et_pb_row {
	border: 2px solid var(--brown);
	border-top-left-radius: 45px;
	border-top-right-radius: 45px;
}

.hm-viral.products.et_pb_row {
	border: 2px solid var(--brown);
	border-top: none;
	padding: 0;
	border-bottom-left-radius: 45px;
	border-bottom-right-radius: 45px;
}

.hm-viral.products ul.products {
	margin: 0;
}

.hm-viral.products .et_pb_shop_grid .woocommerce ul.products {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
}

.hm-viral.products .et_pb_shop_grid .woocommerce ul.products li.product {
	width: 25% !important;
	min-width: 25% !important;
	margin-right: 0 !important;
	margin-bottom: 0 !important;
	padding: 30px 1.5%;
    margin-bottom: 0 !important;
}

.hm-viral.products .et_pb_shop_grid .woocommerce ul.products li.product:not(:last-of-type) {
	border-right: 2px solid var(--brown);
}

.hm-viral .arrow {
	position: absolute;
	left: -3%;
	top: 0;
	bottom: 0;
	margin: auto !important;
	height: fit-content;
	cursor: pointer;
	user-select: none;
}

.hm-viral .arrow.next {
	left: auto;
	right: -3%;
}

.hm-viral .et_pb_shop_grid .woocommerce ul.products li.product {
    width: 100% !important;
    max-width: 400px;
}

header .et-cart-info {
	display: none;
}

.et_pb_shop ul.products li.product .onsale {
	z-index: 999;	
}

.hm-viral-products .et_pb_shop_grid .woocommerce ul.products li.product {
	margin-bottom: 15px !important;
}

#main-header ul.nav li ul.sub-menu {
	background-color: var(--main);
	border: 2px solid var(--brown);
    border-radius: 10px;
}

#main-header ul.nav li ul.sub-menu li a {
	line-height: 1.2em;
}

.nav ul li a:before {
	content: '';
	position: absolute;
	width: 100px;
	transform: scaleX(0);
	height: 2px;
	bottom: 0;
	left: 17px;
	background-color: var(--brown);
	transition: transform 0.25s ease-out;
}

.nav ul li a:hover:before {
	transform: scaleX(1);
}

.nav ul li a:hover {
	background-color: transparent;
	opacity: 1;
}

/* 1. Base positioning */
.woocommerce ul.products li.product {
	position: relative;
}

@media all and (min-width: 981px) {	
	/* 2. Hide icons by default */
	.woocommerce ul.products li.product .mini-cart-icon,
	.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button {
		opacity: 0;
		pointer-events: none;
		transform: translateX(10px);
		transition: all .25s ease;
	}

	/* 3. Show icons on product hover */
	.woocommerce ul.products li.product:hover .mini-cart-icon,
	.woocommerce ul.products li.product:hover .tinvwl_add_to_wishlist_button {
		opacity: 1;
		pointer-events: auto;
		transform: translateX(0);
	}
}

/* 4. Common icon style (white circle) */
.woocommerce ul.products li.product .mini-cart-icon,
.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button {
	position: absolute;
	right: 14px;
	width: 42px;
	height: 42px;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 6px 18px rgba(0,0,0,.15);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10;
	text-decoration: none;
}

/* 5. Cart icon position */
.woocommerce ul.products li.product .mini-cart-icon {
	top: 20px;
}

/* 6. Wishlist icon position (below cart) */
.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button {
	top: 70px;
}

/* 7. Divi cart icon */
.woocommerce ul.products li.product .mini-cart-icon::before {
	font-family: 'ETmodules';
	content: "\e013"; /* Divi cart icon */
	font-size: 18px;
	color: #000;
}

/* 8. Divi heart icon */
.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button::before {
	font-family: 'ETmodules' !important;
	content: "\e089"; /* Divi heart icon */
	font-size: 18px;
	color: #000;
}

/* 9. Remove default wishlist heart styling */
.tinvwl_add_to_wishlist_button {
	background-image: none !important;
}

@media all and (min-width: 981px) {
	/* 10. Hover feedback */
	.woocommerce ul.products li.product .mini-cart-icon:hover,
	.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button:hover {
		transform: scale(1.08);
	}
}

.et-db #et-boc .et-l .et_overlay {
	background: hsl(0deg 0% 100% / 49%);
}
/* ===== SINGLE PRODUCT LAYOUT ===== */

/* Stack quantity above button */
.single-product form.cart {
	display: flex;
	flex-direction: column;
	gap: 14px;
	align-items: stretch;
}

/* Quantity row */
.single-product .quantity {
	display: inline-flex;
	align-items: center;
	width: max-content;
}

/* Qty input */
.single-product .quantity input.qty {
	width: 48px !important;
	height: 40px !important;
	border: none !important;
	text-align: center !important;
	font-size: 15px !important;
	padding: 0 !important;
}

/* Remove browser arrows */
.single-product input.qty::-webkit-outer-spin-button,
.single-product input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
.single-product input.qty {
	appearance: textfield;
	-moz-appearance: textfield;
}

/* +/- buttons */
.single-product .quantity .qty-btn {
	width: 40px;
	height: 40px;
	border: none;
	background: #fff;
	font-size: 18px;
	cursor: pointer;
	line-height: 1;
}

.single-product .quantity .qty-btn:not(:last-child) {
	border-right: 1px solid #ddd;
}

/* FULL WIDTH ADD TO CART */
.single-product button.single_add_to_cart_button {
	width: 100% !important;
	height: 56px;
	background: #000 !important;
	color: #fff !important;
	border-radius: 0 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: .08em;
	text-transform: uppercase;
	border: none !important;
}

/* Hover (optional subtle) */
.woocommerce.single-product.woocommerce-page button.button.single_add_to_cart_button:hover {
	background: var(--main) !important;
	color: white !important;
}


.woocommerce .quantity input.qty, .woocommerce-page .quantity input.qty {
	background: white;
	color: black;
}

.product-info .tinv-wishlist .tinvwl_add_to_wishlist_button.tinvwl-icon-heart.no-txt:before {
    color: var(--main);
    font-size: 36px;	
}

section.related.products h2 {
	margin-bottom: 30px;
}

.wp-block-woocommerce-cart-cross-sells-block {
	display: none;
}

.filter-btns.et_pb_section {
    position: fixed !important;
    bottom: 147px;
    right: 16px;
    background-color: transparent !important;
    width: 62px;
    height: 62px;
	box-shadow: none;
	z-index: 9999;
}

.filter-btn {
	cursor: pointer;
	position: absolute !important;
	top: 0;
	left: 0;
}

.filters.et_pb_section {
    position: fixed !important;
    top: 244px;
    left: -15px;
    width: fit-content;
    z-index: 99;
    border-radius: 0 30px 30px 0;
    box-shadow: 10px 9px 0px var(--main);
    padding-left: 30px !important;
    padding-right: 30px !important;
	transition: all 1s ease;
	transform: translatex(-100%);
}

.filters.et_pb_section.open {
	transform: translatex(0%);
}

#close-filter {
	display: none;
}

.product-tabs-wrap {
    display: flex;
    justify-content: center;
    gap: 10px;
}

.product-tabs-wrap .tab {
    padding: 14px 30px;
    background: transparent;
    border-radius: 30px;
    border: 2px solid var(--main);
    cursor: pointer;
	transition: all 0.5s ease;
}

.product-tabs-wrap .tab h3 {
    padding: 0;
    color: var(--main);
}

.product-tabs-wrap .tab.active {
	background: var(--main);
}

.product-tabs-wrap .tab:not(.active):hover {
	box-shadow:var(--brown) 9px 8px 0px;
}

.product-tabs-wrap .tab.active h3 {
	color: white;
}

.product-tabs-content .content:not(.active) {
	display: none;
} 

.product-tabs-content {
    max-width: 900px;
    margin: 0 auto;
    padding: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #b4a89e24;
    margin-top: 31px;
    max-height: 500px;
    overflow: auto;
    scrollbar-width: thin;
}

.woocommerce-product-gallery img {
    max-height: 680px;
    margin: 0 auto;
}

.product-tabs-content a {
	color: var(--main);
	font-weight: 700;
}

.woocommerce ul.products li.product .bio-badge {
	position: absolute;
    left: 15px;
    top: 15px;
    z-index: 1;
}

.woocommerce ul.products li.product .bio-badge img {
	width: auto;
}

.woocommerce ul.products li.product .et_shop_image img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}

.woocommerce ul.products li.product .et_shop_image {
	background: white;
}

.orderby, .woocommerce div.product form.cart .variations td select {
    padding: 10px;	
    background-color: white;
}

.woocommerce table.shop_attributes, .woocommerce table.shop_attributes th, .woocommerce table.shop_attributes td {
    border-bottom: solid;
    border-top: solid;
    border-width: 1px;
    border-color: #cfccbc;
}

.woocommerce table.shop_attributes {
	margin-bottom: 0;
}

.woocommerce div.product form.cart div.quantity, .woocommerce-page div.product form.cart div.quantity {
    margin: 0 20px 8px 0 !important;
}

.cat-shortcode .et_pb_text_inner {
    padding-bottom: 20px !important;
    display: flex;
    width: 100%;
}

.cat-shortcode.et_pb_text {
    overflow: auto;
}

.sub-cat-wrap {
    display: flex;
    gap: 30px;
    justify-content: center;
    line-height: 1;
	flex: 1;
}

.sub-cat-wrap .item {
    flex: 1;
    text-align: center;
    font-weight: bold;
    min-width: 170px;
}

.sub-cat-wrap .item a .title {
    font-size: 18px;
    color: var(--main);
}

.xoo-wsc-img-col img {
    height: 100px;
    object-fit: contain;
}

.bio-badge {
    margin-bottom: 12px;
}

button.bapf_button.bapf_reset {
    background: transparent;
    box-shadow: none;
    text-shadow: none;
    border: none;
}

.bapf_sfilter input[type="checkbox"] {
    accent-color: var(--main);
}


/* ===== CHECKOUT ===== */

.woocommerce-privacy-policy-text {
    line-height: 1.2em;
    margin-top: 10px;
}

@media (min-width: 981px) {
    /* 1. The Main Layout */
    form.woocommerce-checkout {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 60px !important;
        align-items: flex-start !important;
    }

    /* 2. Left Column (Billing) */
    #customer_details {
        flex: 1 !important;
        min-width: 0 !important; /* Prevents flex overflow */
    }

    /* 3. Right Column (The White Box) */
    #order_review {
        flex: 0 0 400px !important;
        background: #ffffff !important;
        padding: 40px 30px 30px 30px !important;
        border-radius: 16px !important;
        box-shadow: 0 10px 40px rgba(0,0,0,0.06) !important;
        position: sticky !important;
        top: 120px !important;
        margin-top: 0 !important;
    }

    /* 4. Hide the ugly floating "Your Order" heading */
    #order_review_heading {
        display: none !important;
    }

    /* 5. Create a new Modern Title INSIDE the box */
    #order_review::before {
        content: "Order Summary"; /* Or "Your Order" */
        display: block;
        font-size: 22px;
        font-weight: 600;
        margin-bottom: 20px;
        color: #000;
        border-bottom: 1px solid #f0f0f0;
        padding-bottom: 15px;
    }

    /* 6. Clean up the Table */
    #order_review table.shop_table {
        border: none !important;
        background: transparent !important;
    }



    #order_review table.shop_table th, 
    #order_review table.shop_table td {
        border: none !important;
        padding: 10px 0 !important;
        background: transparent !important;

    }

    /* Make total row stand out */
    #order_review table.shop_table tr.order-total th,
    #order_review table.shop_table tr.order-total td {
        border-top: 2px solid #f0f0f0 !important;
        padding-top: 20px !important;
    }

}

/* Fix for input field styling to match your clean look */
.woocommerce-checkout .form-row input.input-text, 
.woocommerce-checkout .form-row textarea {
    background-color: #f6f6f6 !important;
    border: none !important;
    border-radius: 4px !important;
    padding: 15px !important;
}

/* 1. Stack Billing and Additional Info vertically on the left */
#customer_details.col2-set {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
}



/* 2. Ensure each section takes full width of that left column */
#customer_details .col-1, 
#customer_details .col-2 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin-bottom: 40px !important; 

}

/* 3. Optional: Make the Order Notes textarea height smaller to keep it clean */
#order_comments {
    height: 100px !important;
    min-height: 100px !important;
}

/* 4. Visual Polish: Make the Billing Details header match the Summary style */
.woocommerce-billing-fields h3, 
.woocommerce-additional-fields h3 {
    font-size: 22px !important;
    font-weight: 600 !important;
    margin-bottom: 20px !important;
    text-transform: none !important;
}

/* 1. Typography and Headings */
.woocommerce-checkout h3 {
    font-size: 20px !important;
    font-weight: 600 !important;
    letter-spacing: -0.5px !important;
    margin-bottom: 24px !important;
    color: #1a1a1a !important;
}

/* 2. Modern Inputs (Clean & Thin) */
.woocommerce-checkout .form-row input.input-text, 
.woocommerce-checkout .form-row textarea,
.select2-container--default .select2-selection--single {
    background-color: #fff !important;
    border: 1px solid #1a1a1a !important; /* Dark thin border as per image */
    border-radius: 4px !important;
    padding: 12px 15px !important;
    /*height: 48px !important;*/
    font-size: 14px !important;
    color: #1a1a1a !important;
}

/* Textarea height adjustment */
.woocommerce-checkout .form-row textarea {
    height: 80px !important;
}

/* 3. The Order Summary Box (Sleek version) */
#order_review {
    background: #ffffff !important;
    padding: 25px !important;
    border: 1px solid #e2e2e2 !important;
    border-radius: 8px !important;
	box-shadow: none !important;
}

/* Order Summary Table styling */
#order_review table.shop_table td, 
#order_review table.shop_table th {
    font-size: 14px !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid #f2f2f2 !important;
}

/* 4. Payment/Notice Box (The red box in your image) */
.woocommerce-checkout-payment {
    background: transparent !important;
}

/* 1. Base style for all notice boxes */
.woocommerce-error, 
.woocommerce-info, 
.woocommerce-message {
    border-radius: 4px !important;
    padding: 15px 20px !important;
    font-size: 14px !important;
    margin-bottom: 25px !important;
    list-style: none !important;
	line-height: 1.2em;
    border: 1px solid !important;
}

/* 2. Red: Errors (No payment methods, missing fields) */
.woocommerce-error {
    background-color: #fff5f5 !important;
    border-color: #e5a9a9 !important;
    color: #c02b2b !important;
}

/* 3. Gray/Blue: Info */
.woocommerce-info {
    background-color: #f8f8f8 !important;
    border-color: #d1d1d1 !important;
    color: #333 !important;
}


/* 4. Green: Success (Coupon applied successfully) */
.woocommerce-message {
    background-color: #f6fff5 !important;
    border-color: #aad4a7 !important;
    color: #2b7a2d !important;
}

/* 5. Fix for the "Click here" link in info boxes */
.woocommerce-info a {
    color: #000 !important;
    text-decoration: underline !important;
    font-weight: 600 !important;
}

/* 5. The "Place Order" Button */
#place_order {
	background-color: var(--main) !important;
    color: #fff !important;
    padding: 15px 30px !important;
    font-size: 19px !important;
    font-weight: 500 !important;
    border-radius: 0 !important;
    float: right !important;
    transition: all 0.3s ease !important;
    border: none;
    width: 100%;
    margin-top: 14px;
}

#place_order:hover {
    background-color: #000 !important;
}

/* 6. Return to Cart Link (Left side bottom) */
.woocommerce-checkout .showcoupon, 
.woocommerce-checkout .woocommerce-privacy-policy-text {
    font-size: 13px !important;
    color: #666 !important;
}

/* 1. Style the Coupon Box Container */
form.checkout_coupon.woocommerce-form-coupon {
    border: 1px solid #e2e2e2 !important;
    padding: 30px !important;
    border-radius: 8px !important;
    display: flex;
    align-items: center !important;
    gap: 15px !important; /* Space between input and button */
    background: #fff !important;
    margin-bottom: 30px !important;
}

/* 2. Fix the Coupon Input Field */
form.checkout_coupon .form-row-first {
    flex: 1 !important; /* Makes input take up remaining space */
    width: auto !important;
    margin: 0 !important;
    float: none !important;
}

form.checkout_coupon #coupon_code {
    width: 100% !important;
    height: 48px !important;
    border: 1px solid #1a1a1a !important; /* Matches your address fields */
    border-radius: 4px !important;
    padding: 0 15px !important;
}

/* 3. Style the "Apply coupon" Button */
form.checkout_coupon .form-row-last {
    width: auto !important;
    margin: 0 !important;
    float: none !important;
}

form.checkout_coupon button[name="apply_coupon"] {
    background-color: #33383c !important; /* Matches your Place Order button */
    color: #fff !important;
    height: 48px !important;
    padding: 0 30px !important;
    border-radius: 4px !important; /* Slightly rounded or 0 for sharp */
    font-size: 14px !important;
    font-weight: 500 !important;
    border: none !important;
    cursor: pointer !important;
    transition: background 0.3s ease !important;
}

form.checkout_coupon button[name="apply_coupon"]:hover {
    background-color: #000 !important;
}

/* 4. Hide the annoying "::before" icons if Divi added any */
form.checkout_coupon::before, 
form.checkout_coupon::after {
    display: none !important;
}

form.checkout_coupon button[name="apply_coupon"]:after {
    font-size: 17px !important;
    top: 16px;
}

/* 1. Reset the wrapper */
.woocommerce-checkout .form-row {
    position: relative !important;
    display: block;
}

/* 2. Initial State: Label sits inside the box */
.woocommerce-checkout #customer_details label {
    display: block !important;
    position: absolute !important;
    top: 20px !important; /* Center it vertically */
    left: 15px !important;
    font-size: 15px !important;
    color: #999 !important;
    transition: all 0.2s ease-out !important;
    pointer-events: none !important;
    z-index: 10 !important;
    margin: 0 !important;
}

/* 4. Input styling to ensure text starts lower down */
.woocommerce-checkout .form-row input.input-text, 
.woocommerce-checkout .form-row textarea {
    padding: 26px 15px 10px 15px !important; /* Pushes typed text below the float */
    height: 62px !important;
    line-height: 1 !important;
}

/* 5. Special fix for Country/State dropdowns (Select2) */
.woocommerce-checkout .form-row .select2-container--default {
    padding-top: 0 !important;
}

/* Force the Country label to stay floated since it's never 'empty' */
.woocommerce-checkout #billing_country_field label,
.woocommerce-checkout #billing_state_field label {
    top: 8px !important;
    font-size: 11px !important;
}

/* 1. Hide the placeholder text so it doesn't double up with the label */
.woocommerce-checkout input::placeholder,
.woocommerce-checkout textarea::placeholder {
    color: transparent !important;
}

/* 2. Fix the initial position of the label to be perfectly centered */
.woocommerce-checkout #customer_details label {
    display: block !important;
    position: absolute !important;
    top: 20px !important; 
    left: 15px !important;
    font-size: 14px !important;
    color: #999 !important;
    transition: all 0.2s ease !important;
    pointer-events: none !important;
    z-index: 10 !important;
    margin: 0 !important;
}

/* 4. Ensure the actual typed text sits below the floating label */
.woocommerce-checkout .form-row input.input-text, 
.woocommerce-checkout .form-row textarea {
    padding: 26px 15px 8px 15px !important;
    height: 60px !important;
}

/* 5. Fix for Select2 (Country/State) which doesn't use placeholders */
.woocommerce-checkout #billing_country_field label,
.woocommerce-checkout #billing_state_field label {
    top: 8px !important;
    font-size: 10px !important;
    text-transform: uppercase !important;
}

/* 1. COMPLETELY WIPE OUT THE PLACEHOLDER TEXT */
/* This stops the 'double text' or ghosting effect */
.woocommerce-checkout input::placeholder,
.woocommerce-checkout textarea::placeholder,
.woocommerce-checkout input::-webkit-input-placeholder,
.woocommerce-checkout input:-moz-placeholder,
.woocommerce-checkout input::-moz-placeholder,
.woocommerce-checkout input:-ms-input-placeholder {
    color: transparent !important;
    opacity: 0 !important;
    display: none !important;
}

/* 2. Style the Label (The only text we want to see) */
.woocommerce-checkout #customer_details .form-row label {
    display: block !important;
    position: absolute !important;
    top: 1px !important;
    left: 15px !important;
    font-size: 16px !important;
    color: #6c6c6c !important;
    transition: all 0.2s ease-in-out !important;
    pointer-events: none !important;
    z-index: 10 !important;
    margin: 0 !important;
}

/* 3. The Float: Move ONLY the label up when clicking or typing */
.woocommerce-checkout #customer_details .form-row:focus-within label,
.woocommerce-checkout #customer_details .form-row.woocommerce-validated label,
.woocommerce-checkout #customer_details.form-row input:not(:placeholder-shown) + label,
.woocommerce-checkout #customer_details .form-row textarea:not(:placeholder-shown) + label {
    top: 5px !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: black !important;
    font-weight: 700 !important;
}

/* 4. Input Field Padding Fix */
.woocommerce-checkout .form-row input.input-text, 
.woocommerce-checkout .form-row textarea {
    padding: 28px 15px 10px 15px !important; /* Pushes typed text down */
    height: 62px !important;
    background-color: #fff !important;
    border: 1px solid #1a1a1a !important;
    line-height: 1.2 !important;
}

/* 5. Special fix for the Country & State fields which never have placeholders */
.woocommerce-checkout #billing_country_field label,
.woocommerce-checkout #billing_state_field label,
.woocommerce-checkout #shipping_country_field label,
.woocommerce-checkout #shipping_state_field label {
    top: 4px !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
}

/* 2. Style the Input wrappers and fields to feel "Block-like" */
.woocommerce-checkout .form-row {
    padding: 0 !important;
    margin-bottom: 15px !important;
}

#billing_address_2_field {
    display: none !important;
}

li.wc_payment_method.payment_method_vivacom_smart img {
    max-width: 109px;
}

/* checkout end */

ul.products li.product span.out-of-stock {
    background: var(--wc-red);
    color: white;
    font-size: 12px;
    padding: 3px 10px;
    position: absolute;
    top: 0;
    right: 0;
}

@media (min-width: 981px) {
	.et_pb_gutters3.et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product, .et-db #et-boc .et-l .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product {
        width: 23.875%;
        margin-right: 1.5%;
        margin-bottom: 1.5%;
    }
	
	.et_pb_gutters3.et-db #et-boc .et-l .hm-viral-products .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product, .et-db #et-boc .et-l .hm-viral-products .et_pb_column .et_pb_shop_grid .woocommerce ul.products li.product 	{
	        width: 30.875%;
	}
}

@media all and (max-width: 1445px) {
	.hm-cat .et_pb_column .et_pb_blurb {
    	flex: 0 1 29.6%;
	}
}

@media all and (max-width: 980px) {
	.hm-about .et_pb_column:last-of-type {
    	border-top-right-radius: 0;
	}
	
	.footer-main.et_pb_row {
		padding-bottom: 100px !important;
	}
}

@media (max-width: 980px) {
    footer .footer-main.et_pb_row>.et_pb_column.et_pb_css_mix_blend_mode_passthrough , 
	footer .footer-main.et_pb_row>.et_pb_column.et_pb_css_mix_blend_mode_passthrough, 
	footer .footer-main.et_pb_row.et_pb_row_4col>.et_pb_column.et_pb_css_mix_blend_mode_passthrough {
        width: 100% !important;
        margin-right: 0 !important;
    }
	
	footer .footer-main.et_pb_row .flex-50 {
		flex: 0 1 33.3%;
	}
}

@media (max-width: 980px) {
	.mobile-cart.et_pb_column.et_pb_column_empty {
		display: block !important;
	}

	.fixed-mobile.et_pb_section {
        position: fixed !important;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 9999;
        border-top-left-radius: 30px;
        border-top-right-radius: 30px;
	}
	
	.fixed-mobile .et_pb_row {
		padding: 15px 0 !important;
	}

	.fixed-mobile .et_pb_row {
		flex-wrap: nowrap !important;
	}

	.xoo-wsc-sc-bki {
		font-size: 20px;
		color: white;
	}
	
	.fixed-mobile .et_pb_row .et_pb_column.et_pb_column_1_4 {
		margin: 0 !important;
	}
	
}

@media all and (max-width: 855px) {
	.hm-cat .et_pb_column .et_pb_blurb {
		flex: 0 1 47.3%;
	}
	
	.footer-main ul.menu li, .footer-main h4 {
		text-align: center;
	}
	
	footer .et_pb_blurb .et_pb_blurb_content .et_pb_blurb_description {
		text-align: center;
	}
	
	footer .et_pb_blurb .et_pb_blurb_content {
		flex-direction: column;
		align-items: center;
		gap: 7px;
		max-width: 300px !important;
	}
	
	footer .footer-main.et_pb_row .flex-50 {
		flex: 50%;
	}
}

@media (max-width: 545px) {
	.hm-cat .et_pb_column {
		gap: 50px 2%;
	}
	
	.hm-cat .et_pb_column .et_pb_blurb {
		flex: 0 1 47.3%;
		padding: 13px !important;
	}
	
	.hm-cat .et_pb_column .et_pb_blurb .et_pb_module_header a {
		font-size: 17px;
		line-height: 1.2em;
	}
	
	.hm-cat .et_pb_column .et_pb_blurb .et_pb_module_header a {
		font-size: 17px;
		line-height: 1.2em;
	}
	
	.hm-cat .et_pb_column .et_pb_blurb.et_had_animation {
		box-shadow: var(--main) 10px 10px 0;
	}
	
	.woocommerce ul.products li.product .mini-cart-icon, .woocommerce ul.products li.product .tinvwl_add_to_wishlist_button {
		width: 30px;
  		height: 30px;
	}
	
	.woocommerce ul.products li.product .tinvwl_add_to_wishlist_button {
		top: 60px;
		margin: 0;
	}
	
	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 14px;
	}
}

