.elementor-kit-1345{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-1345 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.read-more-wrap {
  display: -webkit-box;
  -webkit-line-clamp: 10;   /* Show 10 lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 10px;
}

.read-more-state {
  display: none;
}

.read-more-state:checked ~ .read-more-wrap {
  -webkit-line-clamp: unset;
  overflow: visible;
}

.read-more-trigger {
  display: inline-block;
  color: #0073e6;
  font-weight: bold;
  cursor: pointer;
}

.read-more-trigger::before {
  content: "Read more";
}

.read-more-state:checked ~ .read-more-trigger::before {
  content: "Read less";
}
/* Prevent disappearing on hover/click */
.iksm-term__link:hover,
.iksm-term__link:focus,
.iksm-term__link:active {
    background-color: #f0f0f0; /* Light gray background on hover */
    color: #0073aa !important; /* Change to your preferred active text color */
    font-weight: 700;
    text-decoration: none;
    outline: none;
    display: flex;
}

/* Optional: Add an 'active' style to currently selected subcategory */
.iksm-term__link.active {
    background-color: #e0f7ff;  /* Highlight active category */
    color: #0073aa !important;
    font-weight: 700;
}
/* Highlight the active subcategory properly */
.iksm-5002 .iksm-term--child.iksm-term--current > .iksm-term__inner .iksm-term__link {
    background-color: #e0f7ff; /* Light blue background */
    color: #0073aa !important; /* Blue text color */
    font-weight: 700;
    border-radius: 4px;
}


/* Fix uneven button heights and alignment in WooCommerce product grid */

.woocommerce ul.products li.product .button {
    min-height: 48px;              /* Force consistent button height */
    display: inline-flex;          /* Flex to center contents */
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 15px 20px;            /* Consistent padding */
    white-space: nowrap;          /* Prevent button text from wrapping */
    overflow: hidden;
    text-overflow: ellipsis;      /* Gracefully handle overflow text */
}

/* Optional: Ensure entire product card aligns elements consistently */
.woocommerce ul.products li.product {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
mmerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button {
    margin-top: auto !important;
    align-self: flex-start; /* optional: keep it left aligned */
}
/* Additional padding fix for cart drawer */
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart {
    padding: 2.3em !important;
    flex: 1 !important;
    overflow: auto !important;
}
/* Move close (remove) button higher */
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart a.remove {
    position: absolute;
    top: -0.5em; /* Move it higher */
    right: 0;
    width: 20px;
    height: 20px;
    line-height: 16px;
    z-index: 10; /* Ensure it stays on top */
}

/* Optional: Adjust the parent container if needed */
.woocommerce .widget_shopping_cart .cart_list li,
.woocommerce.widget_shopping_cart .cart_list li {
    position: relative;
    padding-top: 2em; /* Leave space for button */
}
/* Increase Astra cart drawer width */
.ast-desktop .astra-cart-drawer {
    width: 450px !important;
}

/* Optional: Ensure inner content fits */
.astra-cart-drawer .astra-cart-drawer-content {
    max-width: 100%;
    overflow-x: auto;
}
/* Base style: remove button position */
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart a.remove {
    position: absolute;
    top: -0.5em;
    right: 0;
    width: 20px;
    height: 20px;
    line-height: 16px;
    z-index: 10;
}

/* Parent item padding to avoid overlap */
.woocommerce .widget_shopping_cart .cart_list li,
.woocommerce.widget_shopping_cart .cart_list li {
    position: relative;
    padding-top: 2em;
}

/* 🔸 Mobile-only: adjust close button a bit lower */
@media (max-width: 767px) {
    .astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart a.remove {
        top: 0.6em !important; /* Adjusted from -0.2em to 0.4em */
    }

    .woocommerce .widget_shopping_cart .cart_list li,
    .woocommerce.widget_shopping_cart .cart_list li {
        padding-top: 3em; /* Keep extra space for the button */
    }
}

/* Reduce top padding only */
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart {
    padding: 0.8em 2.0em 1.3em !important; /* top right/left bottom */
    flex: 1 !important;
    overflow: auto !important;
}

.password-wrapper {
  position: relative;
  width: 100%;
}

.password-wrapper input[type="password"],
.password-wrapper input[type="text"] {
  width: 100%;
  padding-right: 3em; /* space for the eye icon */
  background: var(--ast-comment-inputs-background);
  box-sizing: border-box;
}

.toggle-password {
  position: absolute;
  top: 50%;
  right: 0.8em;
  transform: translateY(-50%);
  cursor: pointer;
  font-size: 1.1em;
  color: var(--ast-global-color-5);
  background: transparent;
  border: none;
  padding: 0;
  line-height: 1;
  z-index: 10;
}



/* Target only the "previous" arrow */
.woocommerce nav.woocommerce-pagination ul li:first-child a.page-numbers {
    padding-top: 8px;
    padding-bottom: 13.3px;
    padding-left: 12px;
    padding-right: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Target only the "next" arrow */
.woocommerce nav.woocommerce-pagination ul li:last-child a.page-numbers {
    padding-top: 9px;
    padding-bottom: 13.3px;
    padding-left: 12px;
    padding-right: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}





/* ✅ Pagination list items styling */
.woocommerce .woocommerce-pagination ul.page-numbers li,
.woocommerce-page .woocommerce-pagination ul.page-numbers li {
  display: inline-block;
  height: 40px;
}

/* ✅ Custom product grid border radius on mobile */
@media (max-width: 767px) {
  .custom-product-grid ul li {
    border-radius: 0px !important;
  }
}


/* Make product cards uniform in height */
ul.products.elementor-grid.columns-3 > li {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Inner wrapper grows to fill space */
ul.products.elementor-grid.columns-3 > li .astra-shop-summary-wrap {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

/* Add spacing between elements */
ul.products.elementor-grid.columns-3 li .ast-woo-product-category {
  margin-bottom: 5px;
}

ul.products.elementor-grid.columns-3 li h2.woocommerce-loop-product__title {
  margin-bottom: 10px;
  line-height: 1.4;
  font-size: 16px;
  word-break: break-word;
}

/* Keep price and button at bottom */
ul.products.elementor-grid.columns-3 > li .astra-shop-summary-wrap .price {
  margin-top: auto;
  margin-bottom: 10px;
}

/* Align Add to Cart button */
ul.products.elementor-grid.columns-3 > li .button {
  align-self: flex-start;
}



/* Ensure pagination buttons fill completely with background */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  line-height: 40px;
  padding: 0;
  box-sizing: border-box;
}

/* Style for current page */
.woocommerce nav.woocommerce-pagination ul li > span.current,
.woocommerce nav.woocommerce-pagination ul li > .page-numbers {
  border-color: #055cbe;
}

/* Hover/focus + active page styling */
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: #055cbe;
  color: var(--ast-global-color-5);
  border-color: #055cbe;
}

/* Remove unwanted outline/shadow */
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li span:focus {
  outline: none;
  box-shadow: none;
}

.woocommerce-js div.product form.cart .button.single_add_to_cart_button {
    padding: 12.5px 20px !important;
}


@media screen and (min-width: 451px) and (max-width: 768px) {
    .elementor-6705 .elementor-element.elementor-element-ea3815d img {
        width: 39%;
        padding-bottom: 45px;
    }
}



@media (min-width: 1025px) and (max-width: 1105px) {
  ul.products.elementor-grid.columns-3 > li {
    display: flex;
    flex-direction: column;
  }

  ul.products.elementor-grid.columns-3 > li .astra-shop-summary-wrap {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    min-height: 300px;
  }

  ul.products.elementor-grid.columns-3 > li .astra-shop-summary-wrap .price {
    position: relative;
    z-index: 2;
    background: #fff;
    padding: 2px 0;
    margin-top: auto;
  }
}




.woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce-page ul.products li.product .woocommerce-loop-product__title, .wc-block-grid .wc-block-grid__products .wc-block-grid__product .wc-block-grid__product-title {

    padding-bottom: 25px;
}



.page-id-998 .woocommerce .button.wc-backward {
  justify-content: center;
  align-items: center;
  height: 50px;
  padding: 0 24px !important;   /* remove vertical padding */
  line-height: 1.2 !important;
  font-size: 14px;              /* optional: adjust as needed */
  text-align: center;
}


.tribe-common h1, .tribe-common h2, .tribe-common h3, .tribe-common h4, .tribe-common h5, .tribe-common h6, .tribe-common p {
    text-align: justify;
}

@media (max-width: 767px) {
  .elementor-8961 .elementor-element.elementor-element-6494542 .elementor-heading-title {
    font-size: 36px;
  }
}

.tribe-common--breakpoint-full.tribe-events .tribe-events-c-top-bar__datepicker-desktop {
    font-size: 16px;
    
}/* End custom CSS */