body
{
  overflow: hidden !important;
  overflow-y: auto !important;
}

.vc_general.vc_cta3.vc_cta3-style-classic,
.vc_general.vc_cta3.vc_cta3-style-custom
{
  background-color: transparent;
  border: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

#mega-menu-wrap-mega_menu #mega-menu-mega_menu > li.mega-menu-item > a.mega-menu-link
{
  line-height: inherit;
  height: unset;
  font-size: 15px;
  font-weight: 700;
}

.vc_general.vc_cta3.vc_cta3-actions-right .vc_cta3-content
{
  vertical-align: middle;
}

.vc_general.vc_cta3.vc_cta3-actions-right .vc_cta3-content p
{
  font-size: 16px;
  font-weight: 700;
  color: #fff;
}

a.vc_general.vc_btn3.vc_btn3-size-md.vc_btn3-shape-square.vc_btn3-style-modern.vc_btn3-color-grey
{
  text-decoration: none;
  border: 0 !important;
  letter-spacing: 2px;
  padding: 8px 18px !important;
  background-color: var(--red) !important;
  font-size: var(--xs) !important;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block !important;
  width: 100% !important;
  text-align: center !important;
  color: var(--white) !important;
}

.vc_do_btn
{
  margin-top: 0;
  margin-bottom: 0;
}

#mega-menu-wrap-mega_menu #mega-menu-mega_menu > li.mega-menu-item > a.mega-menu-link:hover
{
  background-color: rgba(255, 255, 255, 0.15);
  font-weight: 700 !important;
}

.mega-sub-menu ul li ul
{
  display: flex;
  flex-direction: column;
  align-items: start;
  padding-left: 15px;
}

.mega-sub-menu ul li ul li a
{
  line-height: 1.5;
  color: var(--black);
  text-decoration: none;
  font-size: var(--xs) !important;
  display: block;
  padding: 5px 0;
  -webkit-transition: color 0.2s;
  -o-transition: color 0.2s;
  transition: color 0.2s;
  border: 0;
  font-weight: 600;
}

.mega-sub-menu ul li ul li a:hover
{
  color: var(--blue) !important;
}

.mega-block-title
{
  color: var(--black) !important;
  font-size: var(--lg) !important;
  font-weight: 700;
  margin-bottom: 5px !important;
  padding-bottom: 8px;
  border-bottom: 0;
}

.site-header
{
  z-index: 999;
}

#mega-menu-wrap-mega_menu #mega-menu-mega_menu > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item
{
  margin-bottom: 0;
  border: 1px solid rgba(146, 146, 146, 0.17);
  border-radius: 10px;
  padding: 10px 20px !important;
  margin-bottom: 2;
}

#mega-menu-wrap-mega_menu #mega-menu-mega_menu[data-effect="slide_up"] li.mega-menu-item.mega-menu-megamenu.mega-toggle-on ul.mega-sub-menu
{
  display: flex;
  row-gap: 20px;
}

#mega-menu-wrap-mega_menu #mega-menu-mega_menu > li.mega-menu-megamenu > ul.mega-sub-menu
{
  width: calc(100% + 160px);
  max-width: none;
  left: -70px;
}

.tab-content h2
{
  color: #6a6b6c;
}

.product-actions
{
  display: flex;
  column-gap: 15px;
  align-items: center;
  margin-top: 30px;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt
{
  display: inline-block !important;
  background-image: none !important;
  border-radius: 0 !important;
  font-size: var(--lg) !important;
  font-weight: bold !important;
  color: var(--white) !important;
  text-decoration: none !important;
  text-align: center !important;
  padding: 18px !important;
  border: 0 !important;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2);
  box-shadow: rgba(0, 0, 0, 0.2);
  letter-spacing: 2px;
  background: hsla(100, 100%, 27%, 1) !important;
  text-transform: capitalize !important;
  width: 230px;
}

.woocommerce .quantity .qty
{
  width: 1.5em;
  border: 0;
  font-weight: 700;
  color: rgb(106, 107, 108);
  font-size: var(--lg2);
}

.product-category:hover {
	filter: brightness(75%);
}

.product-category:hover h2 {
	opacity: 0.75;
}

.woocommerce-loop-category__title {
	color: #000000;
	font-size: 1.1rem!important;
	text-align: center;
}

.woocommerce-loop-category__title .count {
	display: none;
}

.woocommerce {
	margin-top: 2rem;
}

.woocommerce-result-count {
	font-size: 1.1rem;
	font-weight: lighter;
}

.orderby {
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	padding: 10px 25px 10px 10px;
	border: solid 1px rgba(151,151,151,.5);
	border-radius: 3px;
	font-size: 1rem;
}

.woocommerce ul.products li.product {
	text-align: center;
}

.woocommerce ul.products li.product a {
	border-bottom: none;
}

.woocommerce-loop-product__title {
	color: #000000;
	font-size: 1.1rem!important;
	text-align: center;
}

.woocommerce-Price-amount {
	color: #000000!important;
	font-size: 1rem;
	font-weight: lighter;
}

.product-subtitle {
	font-family: WB2, "Brush Script MT", cursive;
	color: #d41247;
	font-size: 2rem;
}

.products .product:hover {
	opacity: 0.8;
}

.products .product:hover h2 {
	opacity: 0.8;
}

.woocommerce .page-numbers {
	font-size: 1.1rem;
}

.variation-row {
	display: flex;
	flex-direction: row;
	gap: 1rem;
}

.variation-row select {
	min-width: 15rem!important;
	max-width: 75%!important;
	padding: 10px 25px 10px 10px;
	border: solid 1px rgba(151,151,151,.5);
	border-radius: 3px;
	font-size: 1rem;
}

.product-actions-block {
	
}

.variations .woocommerce-Price-amount {
	font-size: 1.5rem;
}

/* Cart Animation Styles */
.cart-animation-dot {
    box-shadow: 0 2px 8px rgba(76, 175, 80, 0.4);
    transition: all 0.1s ease;
}

/* Pulsate animation for the dot */
.cart-dot-pulsate {
    animation: cart-dot-pulse 0.3s ease-in-out;
}

@keyframes cart-dot-pulse {
    0% { 
        transform: scale(1); 
        opacity: 1;
    }
    50% { 
        transform: scale(3); 
        opacity: 0.8;
    }
    100% { 
        transform: scale(3); 
        opacity: 0.8;
    }
}

/* Optional bounce effect for target */
.card-bttn.cart-bounce {
    animation: cart-bounce 0.3s ease-in-out;
    transform-origin: center;
}

@keyframes cart-bounce {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.1); }
}

/* Smooth transitions for better UX */
.single_add_to_cart_button {
    transition: transform 0.1s ease;
}

.single_add_to_cart_button:active {
    transform: scale(0.98);
}

.cart-count {
	background-color: green;
	color: #ffffff;
	border-radius: 50px;
	padding: .3rem;
	width: 2rem;
	height: 2rem;
	text-align: center;
}

.cart-block {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 1rem;
}

.menu-cart-link {
	border-bottom: none!important;
	line-height: inherit;
	font-size: inherit;
}

/* CART */

.wp-block-woocommerce-cart {
	margin-top: 3rem;
}

.wp-block-woocommerce-cart .wc-block-components-totals-footer-item {
	color: green;
}

.wp-block-woocommerce-cart .wc-block-cart-item__image a {
	border-bottom: none;
}

.wp-block-woocommerce-cart a.wc-block-components-product-name {
	border-bottom: none;
}

.wp-block-woocommerce-cart .wc-block-cart__submit-button {
	background-color: green;
	font-size: var(--lg);
	font-weight: bold;
	color: var(--white);
	padding: 18px;
}

.wp-block-woocommerce-checkout .wc-block-checkout {
	margin-bottom: 5rem;
}

.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button {
	background-color: green;
	font-size: var(--lg);
	font-weight: bold;
	color: var(--white);
	padding: 18px;
}