/*
Theme Name: Hara
Theme URI: https://hara.thembaydev.com/
Author: Thembay
Author URI: https://thembay.com
Description: Beauty and Cosmetics Shop WooCommerce Theme
Version: 1.2.20
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready
Text Domain: hara
Domain Path: /languages/
Requires PHP: 7.0
Requires at least: 5.0
Tested up to: 5.5

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/


/**
 * Table of Contents
 *
 * 1.0 - Reset
 * 2.0 - Genericons
 * 3.0 - Typography
 * 4.0 - Elements
 * 5.0 - Forms
 * 6.0 - Navigations
 *   6.1 - Links
 *   6.2 - Menus
 * 7.0 - Accessibility
 * 8.0 - Alignments
 * 9.0 - Clearings
 * 10.0 - Header
 * 11.0 - Widgets
 * 12.0 - Content
 *    12.1 - Posts and pages
 *    12.2 - Post Formats
 *    12.3 - Comments
 * 13.0 - Footer
 * 14.0 - Media
 *    14.1 - Captions
 *    14.2 - Galleries
 * 15.0 - Multisite
 * 16.0 - Media Queries
 *    16.1 - Mobile Large
 *    16.2 - Tablet Small
 *    16.3 - Tablet Large
 *    16.4 - Desktop Small
 *    16.5 - Desktop Medium
 *    16.6 - Desktop Large
 *    16.7 - Desktop X-Large
 * 17.0 - Print
 */


/**
 * 1.0 - Reset
 *
 * Resetting and rebuilding styles have been helped along thanks to the fine
 * work of Eric Meyer, Nicolas Gallagher, Jonathan Neal, and Blueprint.
 */
 h3,h4,h5{font-weight:normal;}
img {
  max-width: 100%;
  height: auto;
}

.sticky {
  background: #FFFFFF;
}

.alignnone {
  margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 5px auto;
}

.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}

a img.alignnone {
  margin: 5px 20px 20px 0;
}

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto
}

.wp-caption {
  background: #fff;
  max-width: 96%;
  /* Image does not overflow the content area */
  padding: 5px 3px 10px;
  color: #333;
}

.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
  margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto;
}

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

.gallery-caption,
.bypostauthor {
  font-style: italic;
  font-size: 12px;
  color: #757575;
}

/**
 *  Gallery
 * -----------------------------------------------------------------------------
 */
#tbay-main-content .single-post .gallery {
  padding-top: 30px;
  margin-right: -25px;
}

.gallery .gallery-item a {
  margin: 0;
}

.gallery .gallery-item {
  float: left;
  margin: 0 4px 4px 0;
  overflow: hidden;
  padding: 0;
  position: relative;
}

.gallery-columns-1 .gallery-item {
  max-width: 100%;
  width: auto;
}

.gallery-columns-2 .gallery-item {
  max-width: 48%;
  max-width: -webkit-calc(50% - 14px);
  max-width: calc(50% - 14px);
  width: auto;
}

.gallery-columns-3 .gallery-item {
  max-width: 32%;
  max-width: -webkit-calc(33.3% - 11px);
  max-width: calc(33.3% - 11px);
  width: auto;
}

.gallery-columns-4 .gallery-item {
  max-width: 23%;
  max-width: -webkit-calc(25% - 9px);
  max-width: calc(25% - 9px);
  width: auto;
}

.gallery-columns-5 .gallery-item {
  max-width: 19%;
  max-width: -webkit-calc(20% - 8px);
  max-width: calc(20% - 8px);
  width: auto;
}

.gallery-columns-6 .gallery-item {
  max-width: 15%;
  max-width: -webkit-calc(16.7% - 7px);
  max-width: calc(16.7% - 7px);
  width: auto;
}

.gallery-columns-7 .gallery-item {
  max-width: 13%;
  max-width: -webkit-calc(14.28% - 7px);
  max-width: calc(14.28% - 7px);
  width: auto;
}

.gallery-columns-8 .gallery-item {
  max-width: 11%;
  max-width: -webkit-calc(12.5% - 6px);
  max-width: calc(12.5% - 6px);
  width: auto;
}

.gallery-columns-9 .gallery-item {
  max-width: 9%;
  max-width: -webkit-calc(11.1% - 6px);
  max-width: calc(11.1% - 6px);
  width: auto;
}

.gallery-columns-1 .gallery-item:nth-of-type(1n),
.gallery-columns-2 .gallery-item:nth-of-type(2n),
.gallery-columns-3 .gallery-item:nth-of-type(3n),
.gallery-columns-4 .gallery-item:nth-of-type(4n),
.gallery-columns-5 .gallery-item:nth-of-type(5n),
.gallery-columns-6 .gallery-item:nth-of-type(6n),
.gallery-columns-7 .gallery-item:nth-of-type(7n),
.gallery-columns-8 .gallery-item:nth-of-type(8n),
.gallery-columns-9 .gallery-item:nth-of-type(9n) {
  margin-right: 0;
}

.gallery .gallery-caption {
  background-color: rgba(0, 0, 0, .7);
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  font-size: 12px;
  line-height: 1.5;
  margin: 0;
  max-height: 85%;
  opacity: 0;
  padding: 6px 8px;
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: left;
  width: 100%;
}

.gallery .gallery-caption:before {
  content: "";
  height: 100%;
  min-height: 49px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.gallery-item:hover .gallery-caption {
  opacity: 1;
}

.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
  display: none;
}

.gallery-columns-2 .gallery-item:nth-child(odd),
.gallery-columns-3 .gallery-item:nth-child(3n+1),
.gallery-columns-4 .gallery-item:nth-child(4n+1),
.gallery-columns-5 .gallery-item:nth-child(5n+1),
.gallery-columns-6 .gallery-item:nth-child(6n+1),
.gallery-columns-7 .gallery-item:nth-child(7n+1),
.gallery-columns-8 .gallery-item:nth-child(8n+1),
.gallery-columns-9 .gallery-item:nth-child(9n+1) {
  clear: both;
}

/* Custom  */

.woocommerce-product-details__short-description ul{list-style:none;padding-left:0;}
.woocommerce-product-details__short-description ul li::before {
  content: "";
  display: inline-block;
  height: 20px; /* Adjust height */
  width: 20px;  /* Adjust width */
  background-image: url('assets/images/leaf.png');
  background-size: contain; /* Scales image to fit */
  background-repeat: no-repeat;
  margin-right: 15px; /* Spacing between icon and text */
  vertical-align: middle;
}
.single-product .product h2{text-align: center;}
#cf7-quote-popup-overlay {
    position: fixed;
    z-index: 99999;
    left: 0; top: 0;
    width: 100%; height: 100%;
    background: rgba(0,0,0,0.8);
    display: none; /* Controlled by JS */
    justify-content: center; align-items: center;
}


#close-cf7-popup {
    position: absolute;
    right: 20px; top: 15px;
    font-size: 28px;
    cursor: pointer;
    color: #333;
}

/* Adjusting CF7 internal styles */
.quote-form-container input {
    width: 100%;
    margin-top: 5px;
}

.date-qty-row {
    display: flex;
    gap: 15px;
}

#trigger-quote-form, 
.custom-loop-button-wrapper .button {
    background-color: var(--e-global-color-25d450c) !important;
    color: var(--e-global-color-accent) !important;
    padding: 12px 28px !important;
    border-radius: 8px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border: none !important;
    display: inline-block !important;
    transition: background-color 0.3s ease, transform 0.2s ease !important;
    cursor: pointer !important;
    width: auto !important;
    line-height:1;
}

#trigger-quote-form:hover, 
.custom-loop-button-wrapper .button:hover {
    background-color: var(--e-global-color-accent) !important;
	color: var(--e-global-color-3085eed) !important;
    transform: translateY(-2px);
}

/* Ensure the shop loop button is centered or left-aligned as per your design */
.custom-loop-button-wrapper {
    margin-top: 15px;
}

/* Responsive Popup Container */
#cf7-quote-popup-content {
    background: #fff;
    padding: 50px; /* Increased padding for a more premium feel */
    width: 90%; 
    max-width: 800px; /* Increased from 500px to 800px for desktop */
    max-height: 85vh; 
    overflow-y: auto;
    border-radius: 15px;
    position: relative;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
}
@media (min-width: 768px) {
    .quote-form-container .date-qty-row {
        display: flex;
        gap: 20px;
    }
    .quote-form-container .date-qty-row p {
        flex: 1;
    }
}

/* Mobile Tweak (Keep it narrow for phones) */
@media (max-width: 767px) {
    #cf7-quote-popup-content {
        padding: 25px;
        width: 95%;
        max-width: 100%;
    }
}
@media (max-width: 600px) {
    #cf7-quote-popup-content {
        padding: 20px;
        width: 90%;
    }
    
    #cf7-quote-popup-content h3 {
        font-size: 1.2rem;
    }
}
@media (min-width: 600px) {
    .form-row {
        display: flex;
        gap: 20px;
    }
    .form-row p {
        flex: 1;
    }
}

.quote-form-container input {
    width: 100% !important;
    padding: 10px !important;
    border: 1px solid #ddd !important;
    border-radius: 5px !important;
}
.quote-form-container input[type="submit"]{
  background: var(--e-global-color-primary);
    color: #fff;
    width: auto !important;
    line-height: 1;

}
/* Container styling */
.shop-category-nav-wrapper {
    width: 100%;
    border-bottom: 1px solid #efefef; /* Light grey line across the bottom */
    margin-bottom: 40px;
    padding-top: 20px;
}

/* Tab List */
.shop-category-tabs {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    justify-content: center; /* Centers the tabs like the screenshot */
    gap: 40px; /* Space between categories */
    overflow-x: auto;
}

/* Individual Tab Link */
.shop-category-tabs li a {
    text-decoration: none;
    color: var(--e-global-color-text); /* Grey text for inactive items */
    font-size: 15px;
    font-weight: 500;
    padding: 15px 5px;
    display: inline-block;
    border-bottom: 3px solid transparent; /* Hidden underline */
    transition: all 0.3s ease;
    white-space: nowrap;
}

/* Active State (The Green Underline) */
.shop-category-tabs li a.active-cat {
    color: var(--e-global-color-accent); /* Dark green text to match the line */
    border-bottom: 3px solid var(--e-global-color-accent) /* The green line from your screenshot */
}

/* Hover State */
.shop-category-tabs li a:hover {
    color: var(--e-global-color-primary);
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .shop-category-tabs {
        justify-content: flex-start;
        gap: 25px;
        padding-left: 15px !important;
    }
    .shop-category-nav-wrapper {
        margin-left: -15px; /* Pull to edges on mobile */
        margin-right: -15px;
    }
}

/* 2. Rounded Images */
ul.products li.product img {
    border-radius: 15px !important; /* Matches the screenshot curvature */
    margin-bottom: 15px !important;
    object-fit: cover;
}

/* 3. Category Badge (The pill shape) */
ul.products li.product .ast-loop-product__category, 
ul.products li.product .woocommerce-loop-product__category {
    display: inline-block;
    background: transparent;
    border: 1px solid #4A634F; /* The green from your tabs */
    color: #4A634F;
    padding: 2px 12px;
    border-radius: 20px;
    font-size: 12px;
    margin-bottom: 8px;
    text-transform: none;
}

/* 4. Product Title */
ul.products li.product .woocommerce-loop-product__title,
ul.products li.product h2 {
	font-family: 'Noto sans TC';
    font-size: 20px !important;
    font-weight: normal !important;
    color: #333;
    padding: 0 5px;
    line-height: 1.4;
    margin-bottom: 10px !important;
}

/* 5. Hide Price & Add to Cart (since this is for Quotes) */
ul.products li.product .price,
ul.products li.product .add_to_cart_button {
    display: none !important;
}

/* Force images to be the same height for a clean grid */
ul.products li.product a img {
    width: 100%;
    display: block;
}



/* Hide the default theme title and category if they appear outside our custom logic */
.product .ast-loop-product__category,
.product .ast-woo-product-category,
.woocommerce ul.products li.product .product-details > div.product-category-wrapper,
.woocommerce ul.products.product-style-default li.product .product-details > div.product-title:first-child > h5 {
    display: none !important;
}
.woocommerce .product-block .image {border-radius: 15px 15px 0 0;}
/* Ensure OUR custom versions stay visible */
/* We will target them by the class we created in the previous step */
.product .woocommerce-loop-product__category,
.product h2.woocommerce-loop-product__title {
    display: block !important;
}

.custom-product-card-info {
    text-align: left;
    padding: 0 10px;
}

.custom-cat-badge {
    display: inline-block;
	  border: 1px solid var(--e-global-color-ce2df87);
    color: var(--e-global-color-accent);
    border-radius: 10px;
    padding: 2px 12px;
    font-size: 14px;
    margin: 15px;
}

.custom-product-title {
    font-size: 20px !important;
    font-weight: 600 !important;
    line-height: 1.4;
    margin: 0px 15px !important;
    color: #333;
}
/* 1. Apply this to the PARENT container */
.job-ref {
    display: flex;
    flex-wrap: wrap; 
    gap: 20px;       
    padding: 20px;
}

/* 2. Your updated gallery item CSS (Mobile First - 1 column) */
.job-ref .gallery-item {
    background: #fff;
    height: 150px;
    flex: 1 1 100%; 
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #000;
    padding: 20px;
    box-sizing: border-box;
     width:100%;
}
.job-ref .gallery-item .gallery-icon{width:100%;height:100%;}
@media (min-width: 480px) {
    .job-ref .elementor-image-gallery .gallery-columns-10 .gallery-item {
        max-width: 100%;
    }
    .job-ref .gallery-item {
        flex: 1 1 calc(100% - 10px); 
       
    }
}

/* 3. Tablets (2 columns) */
@media (min-width: 600px) {
    .job-ref .gallery-item {
        flex: 1 1 calc(50% - 10px); 
    }
    
}
@media (min-width: 768px) {
    .job-ref  .gallery-item {
        max-width: 25%!important;
    }
}
/* 4. Desktops (3 columns) */
@media (min-width: 900px) {
    .job-ref .gallery-item {
        flex: 1 1 calc(33% - 14px); 
		max-width: 25%!important;
    }
}
@media (min-width: 1280px) {
    .job-ref .gallery-item {
        flex: 1 1 calc(33% - 14px); 
		max-width: 12.5%!important;
    }
}
/* 
.job-ref .gallery-item  {
	background:#fff;
    height: 150px !important;
    width: 100%;
    background:#fff;
    margin:20px!important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    border:1px solid #000;
    padding:20px;
} */
.job-ref .gallery-item a{margin-bottom:0}
.job-ref .gallery-item img {height:100%;width: 100%;object-fit: contain;}


.elegant-divider {
  position: relative;
  width: 100%;
  height: 90px; /* Gives the waves and botanical structure room to breathe */
  overflow: hidden;
}

/* The soft, layered wave shadow effect */
.elegant-divider::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  
  /* Creates the soft, shaded under-glow beneath the wave line */
  background: linear-gradient(to bottom, transparent 45%, rgba(206, 193, 175, 0.35) 68%, transparent 78%);
  
  /* Smooth double-wave curve mask matching image_039d02.png */
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,45 C250,95 400,20 680,82 C920,125 1080,65 1200,45 L1200,120 L0,120 Z' fill='%23000'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,45 C250,95 400,20 680,82 C920,125 1080,65 1200,45 L1200,120 L0,120 Z' fill='%23000'/%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

/* The botanical illustration on the right */
.elegant-divider::after {
  content: "";
  position: absolute;
  right: 25px;
  bottom: 12px;
  width: 140px;
  height: 75px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom right;
  z-index: 2;
  background-image: url('./assets/images/plant.png')
  /* Precise SVG structure recreating the 3 sage leaves & 3 peach berries */
  /* background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 75'%3E%3Cg fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3C!-- Main stem & Leaves (Muted Sage Green) --%3E%3Cpath d='M10,62 C25,58 45,54 65,56 C80,50 98,35 125,48 M65,56 C75,45 92,40 110,48' stroke='%238fa89b' stroke-width='1.8'/%3E%3C!-- Large Top Right Leaf --%3E%3Cpath d='M98,35 C112,18 132,15 140,22 C132,38 112,45 98,35 Z' fill='%23b2c4ba' fill-opacity='0.7' stroke='%237d9689' stroke-width='1.2'/%3E%3C!-- Middle Left Leaf --%3E%3Cpath d='M68,54 C58,40 70,25 82,32 C82,45 76,52 68,54 Z' fill='%23c1cec6' fill-opacity='0.6' stroke='%238fa89b' stroke-width='1'/%3E%3C!-- Drooping Bottom Left Leaf --%3E%3Cpath d='M45,55 C35,55 22,65 25,72 C35,70 42,62 45,55 Z' fill='%23a4bba0' fill-opacity='0.6' stroke='%237d9689' stroke-width='1'/%3E%3C!-- Berry Stems (Soft Tan/Peach) --%3E%3Cpath d='M102,32 C106,20 112,12 120,8 M106,20 C112,16 124,18 130,16 M111,14 C111,6 114,2 115,0' stroke='%23cbab92' stroke-width='1.2'/%3E%3C!-- 3 Berries --%3E%3Ccircle cx='120' cy='8' r='3.5' fill='%23e6cca9' fill-opacity='0.9'/%3E%3Ccircle cx='130' cy='16' r='3' fill='%23eecfae' fill-opacity='0.9'/%3E%3Ccircle cx='115' cy='2' r='3' fill='%23ebd3b6' fill-opacity='0.9'/%3E%3C/g%3E%3C/svg%3E"); */
}

.elegant-divider-2 {
  position: relative;
  width: 100%;
  height: 30px; /* Adjust height based on how deep you want the curve */
      margin-top: -50px;
    overflow: hidden;
  overflow: hidden;
}

/* The sweeping curved shadow */
.elegant-divider-2::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  
  /* Soft, warm-toned gradient for the shadow blur */
  background: linear-gradient(to bottom, transparent 30%, rgba(195, 175, 160, 0.25) 55%, transparent 75%);
  
  /* An ultra-wide, shallow SVG curve mask */
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' preserveAspectRatio='none'%3E%3Cpath d='M0,40 Q400,65 720,55 T1440,35 L1440,100 L0,100 Z' fill='%23000'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' preserveAspectRatio='none'%3E%3Cpath d='M0,40 Q400,65 720,55 T1440,35 L1440,100 L0,100 Z' fill='%23000'/%3E%3C/svg%3E");
  
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.contact-card {
  position: relative;
  width: 100%;
  min-height: 250px;
  /* padding: 30px; */
  background-color: #f6ebd9; 
  background-image: radial-gradient(rgba(255,255,255,0.4) 1px, transparent 0); /* Subtle texture simulation */
  background-size: 24px 24px;
  /* border-radius: 12px; */
  box-sizing: border-box;
  overflow: hidden;
}

/* Responsive Botanical Decoration */
.contact-card::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  
  /* Responsive sizing: scales beautifully from mobile to desktop */
  width: 35%; 
  max-width: 180px;
  min-width: 110px;
  height: 65%;
  
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: contain;
  pointer-events: none; /* Allows clicks to pass through if overlapping text */
  z-index: 1;

  /* Inline SVG recreating the exact leaf & flower stem formation from the bottom right */
  background-image: url('./images/contact-card-plant.png');
}
.woocommerce .product-block{
	background: #fff;
    border-radius: 15px;
    transition: transform 0.3s ease;
    text-align: left;
    border: 1px solid #dedede !important;
	padding: 0px !important;
	width: 100% !important;
}
.woocommerce .add-cart{    
  text-align: center;
    margin: 20px 0;
  }
 .woocommerce .add-cart .button:hover {
    background:var(--e-global-color-primary);
    color:#fff;
  }
 .woocommerce .add-cart .button {
    color:var(--e-global-color-primary);
    border:1px solid var(--e-global-color-primary);
    background:#fff;
    font-weight: normal;
    margin-top: 20px;
  }
 .woocommerce .woocommerce-product-details__short-description ul{list-style:none;padding:0;}
 .woocommerce .woocommerce-product-details__short-description ul li:before{
    content: "";
    display: inline-block;
    height: 20px;
    width: 20px;
    background-image: url('images/leaf.png');
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 15px;
    vertical-align: middle;
 }
.class-session .elementor-image-box-description{
	padding: 0 10px 10px;
}
.application-session h4 {margin-top:0;}
.application-session .elementor-image-box-content{padding:15px;}

ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important; 
	margin: 0 auto !important;
  width: 80%!important;
}

ul.products li.product {
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
}
ul.products li.product.isotope-grid-sizer{display:none!important;}
.woocommerce ul.products li.product .product-thumb .image .product-thumb-overlay {
    height: auto !important;
}
ul.products .wdt-button{    
	padding: 10px 16px!important;
    min-height: 0!important;
}

@media only screen and (min-width: 1025px) and (max-width: 1280px) {
  ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
	width: 90% !important;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
	.woocommerce ul.products:not(.product-thumb-bg-image) li.product .product-thumb a.image>div[class*="image"] img {
	    max-height: 230px;
	}
}

@media (max-width: 768px){
  ul.products {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    gap: 16px !important;
	  width: 100%!important;
  }
	.woocommerce ul.products li.product .product-details > div.product-button:last-child, .woocommerce ul.products li.product .product-details > div.product-cart-with-quantity:last-child {display:none;}
	.woocommerce ul.products:not(.product-thumb-bg-image) li.product .product-thumb a.image>div[class*="image"] img {
	    max-height: 200px;
	}
}
.woocommerce .products ul::after,.woocommerce .products ul::before,.woocommerce ul.products::after,.woocommerce ul.products::before {
    display: none!important;
}
ul.products.mantras-related-product-carousel{width: 100%!important;gap: 50px !important;}
.logo-carousle .swiper-slide{height:auto;}
.logo-carousle img{max-height:100px;}
#tbay-header {background:none;}
.tbay-element-button a{border-radius: 2.5em;    padding: 0px 30px;    -webkit-border-radius: 2.5em;}
.secondary.elementor-widget-tbay-button .tbay-element-button a{background: var(--e-global-color-accent);color:#fff;border: 1px solid var(--e-global-color-accent);}
.transparent.elementor-widget-tbay-button .tbay-element-button a{color: var(--e-global-color-accent);background:none;border: 1px solid var(--e-global-color-accent);}
.heading-tbay-title .title{color:var(--e-global-color-primary)}
h1.heading-tbay-title .title,h2.heading-tbay-title .title,h3.heading-tbay-title .title{font-family:'Noto Serif TC';    margin: 0.2em 0;
    line-height: 1.1em;}
.heading-tbay-title .subtitle {font-weight:700;}
body, .heading-tbay-title .subtitle, .heading-tbay-title .description{line-height:1.6em;}
h2.heading-tbay-title {margin-bottom:1;}
h2.heading-tbay-title .title::after {
  content: "";
  display: block;
  width: 320px;       /* Control the total length of the line here */
  height: 28px;       /* Height accommodates the height of the flower icon */
  margin: 15px auto 0; /* Creates spacing below the text and centers the line */
  background-image: 
    /* 1. The Centered Flower Icon (Inline SVG) */
    url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 100 100" style="enable-background:new 0 0 100 100;" xml:space="preserve"><g class="wdt-yoga-2" >	 <g>	<g>		<path d="M50.1,77.6c-4.6,0-9.2-1.2-13.3-3.5C23.5,66.8,18.7,50,26.1,36.8c3.6-6.4,9.4-11.1,16.5-13.1   c7.1-2,14.5-1.2,20.9,2.4c13.3,7.4,18.1,24.1,10.7,37.4l0,0c-3.6,6.4-9.4,11.1-16.5,13.1C55.2,77.3,52.6,77.6,50.1,77.6z    M50.2,23.6c-2.5,0-4.9,0.3-7.3,1c-6.8,2-12.4,6.4-15.9,12.6c-7.1,12.8-2.4,28.9,10.3,36c6.2,3.4,13.3,4.2,20.2,2.3   c6.8-2,12.4-6.4,15.9-12.6l0,0c7.1-12.8,2.5-28.9-10.3-36C59,24.7,54.6,23.6,50.2,23.6z"></path>	</g>	<g>		<path d="M62.9,25.3L62,24.8c3.3-6.8-1.1-10.3-6.2-14.2c-1.9-1.5-3.9-3-5.6-4.9c-1.7,1.8-3.7,3.4-5.7,4.9   c-3.3,2.5-6.4,4.9-7.1,8.1l-1-0.2c0.9-3.5,4.1-6,7.5-8.7c2-1.6,4.2-3.2,5.9-5.2l0.4-0.4l0.4,0.4c1.7,1.9,3.8,3.6,5.9,5.1   C61.6,13.9,66.5,17.7,62.9,25.3z"></path>	</g>	<g>		<path d="M18.2,37c-1.1-2.9-0.7-6.5-0.2-10.3c0.3-2.5,0.6-5.2,0.5-7.8l0-0.6l0.6,0c2.6,0.1,5.2-0.2,7.8-0.5   c6.6-0.8,12.8-1.6,15.6,6.3l-0.9,0.3c-2.5-7.2-8.1-6.5-14.5-5.6c-2.4,0.3-4.9,0.6-7.4,0.5c0.1,2.5-0.2,5-0.5,7.4   c-0.5,3.6-0.9,7.1,0.2,9.8L18.2,37z"></path>	</g>	<g>		<path d="M18.5,63.9c-3.5-0.9-6-4.1-8.7-7.5c-1.6-2-3.2-4.2-5.2-5.9l-0.4-0.4l0.4-0.4c1.9-1.7,3.6-3.8,5.1-5.9   c4.1-5.2,7.9-10.2,15.5-6.5l-0.4,0.9C18,35,14.6,39.4,10.6,44.5c-1.5,1.9-3,3.9-4.9,5.6c1.8,1.7,3.4,3.7,4.9,5.6   c2.5,3.3,4.9,6.3,8.1,7.2L18.5,63.9z"></path>	</g>	<g>		<path d="M32.5,82.7c-1.8,0-3.8-0.2-5.8-0.5c-2.5-0.3-5.2-0.6-7.8-0.5l-0.6,0l0-0.6c0.1-2.6-0.2-5.2-0.5-7.8   c-0.8-6.6-1.6-12.8,6.3-15.6l0.3,0.9c-7.2,2.5-6.5,8.1-5.6,14.5c0.3,2.4,0.6,4.9,0.5,7.4c2.5-0.1,5,0.2,7.4,0.5   c3.6,0.5,7.1,0.9,9.8-0.2L37,82C35.6,82.6,34.1,82.7,32.5,82.7z"></path>	</g>	<g>		<path d="M50.1,96l-0.4-0.4c-1.7-1.9-3.8-3.6-5.9-5.1c-5.2-4.1-10.2-7.9-6.5-15.4l0.9,0.4c-3.3,6.8,1.1,10.3,6.2,14.2   c1.9,1.5,3.9,3,5.6,4.9c1.7-1.8,3.7-3.4,5.6-4.9c3.3-2.5,6.3-4.9,7.2-8.1l1,0.2c-0.9,3.5-4.1,6-7.5,8.7c-2,1.6-4.2,3.2-5.9,5.2   L50.1,96z"></path>	</g>	<g>		<path d="M67.7,82.8c-4.2,0-7.8-1.3-9.8-6.8l0.9-0.3c2.5,7.2,8.1,6.5,14.5,5.6c2.4-0.3,4.9-0.6,7.4-0.5   c-0.1-2.5,0.2-5,0.5-7.4c0.5-3.6,0.9-7.1-0.2-9.8l0.9-0.4c1.1,2.9,0.7,6.5,0.2,10.3c-0.3,2.5-0.6,5.2-0.5,7.8l0,0.6l-0.6,0   c-2.6-0.1-5.2,0.2-7.8,0.5C71.5,82.5,69.5,82.8,67.7,82.8z"></path>	</g>	<g>		<path d="M79.8,64.1c-1.4,0-3-0.4-4.9-1.3l0.4-0.9c6.8,3.3,10.3-1.1,14.2-6.2c1.5-1.9,3-3.9,4.9-5.6   c-1.8-1.7-3.4-3.7-4.9-5.7c-2.5-3.3-4.9-6.4-8.1-7.1l0.2-1c3.5,0.9,6,4.1,8.7,7.5c1.6,2,3.2,4.2,5.2,5.9l0.4,0.4l-0.4,0.4   c-1.9,1.7-3.6,3.8-5.1,5.9C87.3,60.3,84.3,64.1,79.8,64.1z"></path>	</g>	<g>		<path d="M76,42.3l-0.3-0.9c7.2-2.5,6.5-8.1,5.6-14.5c-0.3-2.4-0.6-4.9-0.5-7.4c-2.5,0.1-5-0.2-7.4-0.5   c-3.6-0.5-7.1-0.9-9.8,0.2l-0.4-0.9c2.9-1.1,6.5-0.7,10.3-0.2c2.5,0.3,5.2,0.6,7.8,0.5l0.6,0l0,0.6c-0.1,2.6,0.2,5.2,0.5,7.8   C83.1,33.3,83.9,39.5,76,42.3z"></path>	</g></g><g>	<g>		<path d="M52.6,37.8c-0.2-0.5-0.5-1-0.7-1.4l-0.3-0.5c-0.4-0.6-0.7-1.3-1-1.9l-0.3-0.6c0-0.1-0.1-0.2-0.1-0.3   c0,0.1-0.1,0.2-0.1,0.3l-0.3,0.6c-0.1,0.3-0.3,0.6-0.5,0.8c-0.2,0.3-0.4,0.7-0.6,1.1c-0.4,0.7-0.7,1.3-1,1.9l-0.9-0.4   c0.3-0.6,0.6-1.3,1-2c0.2-0.4,0.4-0.7,0.6-1.1c0.2-0.3,0.3-0.6,0.4-0.8l0.3-0.6c0.2-0.4,0.4-0.8,0.6-1.2l0.5-1l0.5,1   c0.2,0.4,0.4,0.8,0.6,1.2l0.3,0.6c0.3,0.6,0.7,1.2,1,1.9l0.3,0.5c0.3,0.5,0.5,1,0.8,1.5L52.6,37.8z"></path>	</g>	<g>		<path d="M50.1,69.5l-0.5-1c-0.2-0.4-0.4-0.8-0.6-1.2l-0.3-0.6c-0.1-0.3-0.3-0.5-0.4-0.8c-0.2-0.3-0.4-0.7-0.6-1.1   c-0.4-0.7-0.7-1.4-1-2l0.9-0.4c0.3,0.6,0.6,1.2,1,1.9c0.2,0.4,0.4,0.7,0.6,1.1c0.2,0.3,0.3,0.6,0.5,0.8l0.3,0.6   c0,0.1,0.1,0.2,0.1,0.3c0-0.1,0.1-0.2,0.1-0.3l0.3-0.6c0.3-0.6,0.7-1.3,1-1.9l0.3-0.5c0.3-0.5,0.5-0.9,0.7-1.4l0.9,0.4   c-0.2,0.5-0.5,1-0.8,1.5l-0.3,0.5c-0.4,0.6-0.7,1.3-1,1.9l-0.3,0.6c-0.2,0.4-0.4,0.8-0.6,1.2L50.1,69.5z"></path>	</g>	<g>		<path d="M38.6,43.5c-0.2-0.7-0.5-1.4-0.7-2.1c-0.1-0.4-0.2-0.8-0.4-1.2c-0.1-0.3-0.2-0.6-0.3-0.9   c-0.1-0.5-0.3-1-0.5-1.4l-0.5-1.5l1,0.4c0.6,0.2,1.2,0.4,1.9,0.6l0.4,0.1c0.5,0.2,1.1,0.3,1.7,0.5c0.7,0.2,1.4,0.4,2.1,0.7   l-0.3,0.9c-0.7-0.2-1.4-0.5-2.1-0.7c-0.6-0.2-1.1-0.3-1.7-0.5L39,38.3c-0.3-0.1-0.7-0.2-1-0.3c0.1,0.3,0.2,0.6,0.3,1   c0.1,0.3,0.2,0.6,0.3,0.8c0.1,0.4,0.3,0.8,0.4,1.3c0.2,0.7,0.4,1.4,0.7,2.1L38.6,43.5z"></path>	</g>	<g>		<path d="M63.9,63.8l-1.5-0.5c-0.5-0.2-1-0.3-1.4-0.5c-0.3-0.1-0.6-0.2-0.9-0.3c-0.4-0.1-0.8-0.3-1.2-0.4   c-0.7-0.2-1.4-0.4-2.1-0.7l0.3-0.9c0.7,0.2,1.4,0.5,2.1,0.7c0.4,0.1,0.8,0.2,1.3,0.4c0.3,0.1,0.6,0.2,0.8,0.3   c0.3,0.1,0.7,0.2,1,0.3c-0.1-0.3-0.2-0.7-0.3-1l-0.1-0.5c-0.2-0.5-0.3-1.1-0.5-1.6c-0.2-0.7-0.4-1.4-0.7-2.1l0.9-0.4   c0.2,0.7,0.5,1.4,0.7,2.1c0.2,0.5,0.3,1.1,0.5,1.6l0.1,0.4c0.2,0.7,0.4,1.3,0.6,1.9L63.9,63.8z"></path>	</g>	<g>		<path d="M37.3,53.5c-0.6-0.3-1.3-0.6-2-1c-0.4-0.2-0.7-0.4-1-0.6c-0.3-0.2-0.6-0.3-0.8-0.5l-0.6-0.3   c-0.4-0.2-0.8-0.4-1.2-0.6l-1-0.5l1-0.5c0.4-0.2,0.8-0.4,1.2-0.6l0.6-0.3c0.6-0.3,1.2-0.6,1.8-1l0.6-0.3c0.5-0.3,1-0.5,1.5-0.8   l0.4,0.9c-0.5,0.2-0.9,0.5-1.4,0.7l-0.5,0.3c-0.6,0.4-1.3,0.7-1.9,1L33.3,50c-0.1,0-0.2,0.1-0.3,0.1c0.1,0,0.2,0.1,0.3,0.1   l0.6,0.3c0.3,0.2,0.6,0.3,0.9,0.5c0.3,0.2,0.7,0.4,1,0.6c0.7,0.4,1.4,0.7,1.9,1L37.3,53.5z"></path>	</g>	<g>		<path d="M62.9,53.5l-0.4-0.9c0.6-0.3,1.2-0.6,1.9-1c0.4-0.2,0.7-0.4,1-0.6c0.3-0.2,0.6-0.3,0.9-0.5l0.6-0.3   c0.1,0,0.2-0.1,0.3-0.1c-0.1,0-0.2-0.1-0.3-0.1l-0.6-0.3c-0.6-0.3-1.3-0.7-1.9-1l-0.5-0.3c-0.5-0.3-0.9-0.5-1.4-0.7l0.4-0.9   c0.5,0.2,1,0.5,1.5,0.8l0.5,0.3c0.6,0.4,1.3,0.7,1.9,1l0.6,0.3c0.4,0.2,0.8,0.4,1.2,0.6l1,0.5l-1,0.5c-0.4,0.2-0.8,0.4-1.2,0.6   l-0.6,0.3c-0.3,0.1-0.5,0.3-0.8,0.5c-0.3,0.2-0.7,0.4-1,0.6C64.2,52.9,63.5,53.2,62.9,53.5z"></path>	</g>	<g>		<path d="M36.3,63.8l0.4-1c0.2-0.6,0.4-1.2,0.6-1.9l0.1-0.5c0.2-0.5,0.3-1.1,0.5-1.7c0.2-0.7,0.4-1.4,0.7-2.1l0.9,0.3   c-0.2,0.7-0.5,1.4-0.7,2.1c-0.2,0.6-0.3,1.1-0.5,1.6l-0.1,0.4c-0.1,0.3-0.2,0.7-0.3,1c0.3-0.1,0.6-0.2,1-0.3   c0.3-0.1,0.6-0.2,0.8-0.3c0.4-0.1,0.8-0.3,1.2-0.4c0.7-0.2,1.4-0.4,2.1-0.7l0.3,0.9c-0.7,0.2-1.4,0.5-2.1,0.7   c-0.4,0.1-0.8,0.2-1.2,0.4c-0.3,0.1-0.6,0.2-0.9,0.3c-0.5,0.1-1,0.3-1.5,0.5L36.3,63.8z"></path>	</g>	<g>		<path d="M61.6,43.4l-1-0.3l0-0.1c0.2-0.7,0.5-1.4,0.6-2c0.1-0.4,0.2-0.8,0.4-1.3c0.1-0.3,0.2-0.6,0.3-0.8   c0.1-0.3,0.2-0.7,0.3-1c-0.3,0.1-0.7,0.2-1,0.3l-0.4,0.1c-0.5,0.2-1.1,0.3-1.6,0.5c-0.7,0.2-1.4,0.4-2.1,0.7l-0.3-0.9   c0.7-0.2,1.4-0.5,2.1-0.7c0.5-0.2,1.1-0.3,1.6-0.5l0.4-0.1c0.6-0.2,1.3-0.4,1.9-0.6l1-0.4l-0.5,1.5c-0.2,0.5-0.3,1-0.5,1.4   c-0.1,0.3-0.2,0.6-0.3,0.8c-0.1,0.4-0.3,0.8-0.4,1.2C62,42,61.8,42.7,61.6,43.4z"></path>	</g>	<g>		<path d="M50.1,55.8c-3.2,0-5.7-2.6-5.7-5.7c0-3.2,2.6-5.7,5.7-5.7c3.2,0,5.7,2.6,5.7,5.7   C55.8,53.2,53.3,55.8,50.1,55.8z M50.1,45.4c-2.6,0-4.7,2.1-4.7,4.7s2.1,4.7,4.7,4.7s4.7-2.1,4.7-4.7S52.7,45.4,50.1,45.4z"></path>	</g></g></g></svg>'),
    
    /* 2. The Split Horizontal Line (Gradient) */
    linear-gradient(to right, transparent, #df9898 8%, #df9898 42%, transparent 42%, transparent 58%, #df9898 58%, #df9898 92%, transparent);
  
  background-repeat: no-repeat, no-repeat;
  background-position: center center, center center;
  
  /* Icon size is 22px by 22px; Line height is 1px */
  background-size: 22px 22px, 100% 1px; 
}
.contact-us-form .contact-form-details p {
    display: grid;
    grid-template-columns: repeat(2, auto);
    gap: 50px 20px;
    margin-bottom: 30px;
}
.contact-us-form .contact-form-details p input, .contact-us-form .contact-message p textarea {
    padding: 12px 30px;
    padding-left: 0;
    background: #fff0;
    border: 0;
    border-bottom: 1px solid var(--e-global-color-text);
    border-radius: 0;
}
.contact-us-form .contact-form-details p input, .contact-us-form .contact-message p textarea {
    padding: 12px 30px;
    padding-left: 0;
    background: #fff0;
    border: 0;
    border-bottom: 1px solid var(--e-global-color-text);
    border-radius: 0;
}
.wpcf7-form-control-wrap {
    clear: both;
    display: inline-block;
    width: 100%;
    vertical-align: top;
}
.wdt-submit-btn p input {
    background: #fff0;
    color: var(--e-global-color-text);
    border: 1px solid var(--e-global-color-text);
    border-radius: 2.5em;
    -webkit-border-radius: 2.5em;
    grid-area: 1 / -1;
    padding: 16px 30px;
    padding-right: 70px;
}
.wdt-submit-btn p .wdt-submit-icon {
    grid-area: 1 / -1;
    display: block;
    position: relative;
    pointer-events: none;
    width: 25px;
    height: 8px;
    mask-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 17' style='enable-background:new 0 0 50 17;' xml:space='preserve'%3E%3Cpath d='M49.7,9.2c0.4-0.4,0.4-1,0-1.4l-6.5-6.5c-0.4-0.4-1-0.4-1.4,0c-0.4,0.4-0.4,1,0,1.4l5.8,5.8l-5.8,5.8c-0.4,0.4-0.4,1,0,1.4 c0.4,0.4,1,0.4,1.4,0L49.7,9.2z M0,9.5h49v-2H0V9.5z'/%3E%3C/svg%3E%0A");
    -webkit-mask-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 17' style='enable-background:new 0 0 50 17;' xml:space='preserve'%3E%3Cpath d='M49.7,9.2c0.4-0.4,0.4-1,0-1.4l-6.5-6.5c-0.4-0.4-1-0.4-1.4,0c-0.4,0.4-0.4,1,0,1.4l5.8,5.8l-5.8,5.8c-0.4,0.4-0.4,1,0,1.4 c0.4,0.4,1,0.4,1.4,0L49.7,9.2z M0,9.5h49v-2H0V9.5z'/%3E%3C/svg%3E%0A");
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    background: var(--e-global-color-text);
    right: 25px;
}
input[type="submit"], input[type="reset"], input[type="button"], button[type="button"], [role="button"], button, .button, a.button, .wdt-button, .elementor-button.wdt-elementor-button, .yith-wcwl-add-to-wishlist a, .yith-wcqv-button, .wdt-wcsg-button {
    line-height: 1.16;
    letter-spacing: 3px;
    font-size: 14px;
}
.contact-us-form .wdt-submit-btn {
    display: flex;
    justify-content: center;
    margin-top: clamp(3.125rem, 2.875rem + 1.25vw, 4.375rem);
}
.wpcf7-form .with-spinner {
    position: relative;
    display: inline-block;
    margin-bottom: 0;
}

.wdt-submit-btn p {
    display: inline-grid !important;
    place-items: end;
    align-items: center;
    margin-bottom: 0;
}
input[type="text"], input[type="password"], input[type="email"], input[type="url"], input[type="tel"], input[type="number"], input[type="range"], input[type="date"], textarea, input.text, input[type="search"], .select2-container--default .select2-search .select2-search__field, .select2-container--default .select2-search--dropdown .select2-search__field, .select2-container--default .select2-search--inline .select2-search__field {
    border: 1px solid;
    display: block;
    margin: 0;
    padding: 12px 30px;
    width: 100%;
    -webkit-appearance: none;
    appearance: none;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}
.icon-background .elementor-icon-box-icon{
  background: var(--e-global-color-accent);
  padding: 10px 0;
  border-radius: 15px;
}
.singular-shop>.product>div {background:none;}
.tbay-element-button i {line-height: 1.5em;margin-left: 10px;}
.header-btn a{
    background: none;
    border: 1px solid #333;
    color: #333;
    line-height: 2.5em;
}

@media (max-width: 767px) {
    .contact-us-form .contact-form-details p {
        display:grid;
        grid-template-columns: auto;
        gap: 40px;
        margin-bottom: 40px
    }
}

@media (max-width: 575px) {
    .singular-shop>.product div.tabs-fulltext .item-panel {
        padding: 15px 30px !important;
    }
    h2.heading-tbay-title .title::after{width:100%;}
}
.grecaptcha-badge { visibility: hidden; }