.comments-area a,.page-content a{text-decoration:underline}.alignright{float:right;margin-left:1rem}.alignleft{float:left;margin-right:1rem}.aligncenter{clear:both;display:block;margin-inline:auto}.alignwide{margin-inline:-80px}.alignfull{margin-inline:calc(50% - 50vw);max-width:100vw}.alignfull,.alignfull img{width:100vw}.wp-caption{margin-block-end:1.25rem;max-width:100%}.wp-caption.alignleft{margin:5px 20px 20px 0}.wp-caption.alignright{margin:5px 0 20px 20px}.wp-caption img{display:block;margin-inline:auto}.wp-caption-text{margin:0}.gallery-caption{display:block;font-size:.8125rem;line-height:1.5;margin:0;padding:.75rem}.pagination{display:flex;justify-content:space-between;margin:20px auto}.sticky{display:block;position:relative}.bypostauthor{font-size:inherit}.hide{display:none!important}.post-password-form{margin:50px auto;max-width:500px}.post-password-form p{align-items:flex-end;display:flex;width:100%}.post-password-form [type=submit]{margin-inline-start:3px}.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#eee;clip:auto!important;clip-path:none;color:#333;display:block;font-size:1rem;height:auto;left:5px;line-height:normal;padding:12px 24px;text-decoration:none;top:5px;width:auto;z-index:100000}.post .entry-title a{text-decoration:none}.post .wp-post-image{max-height:500px;-o-object-fit:cover;object-fit:cover;width:100%}@media(max-width:991px){.post .wp-post-image{max-height:400px}}@media(max-width:575px){.post .wp-post-image{max-height:300px}}#comments .comment-list{font-size:.9em;list-style:none;margin:0;padding:0}#comments .comment,#comments .pingback{position:relative}#comments .comment .comment-body,#comments .pingback .comment-body{border-block-end:1px solid #ccc;display:flex;flex-direction:column;padding-block-end:30px;padding-block-start:30px;padding-inline-end:0;padding-inline-start:60px}#comments .comment .avatar,#comments .pingback .avatar{border-radius:50%;left:0;margin-inline-end:10px;position:absolute}body.rtl #comments .comment .avatar,body.rtl #comments .pingback .avatar,html[dir=rtl] #comments .comment .avatar,html[dir=rtl] #comments .pingback .avatar{left:auto;right:0}#comments .comment-meta{display:flex;justify-content:space-between;margin-block-end:.9rem}#comments .comment-metadata,#comments .reply{font-size:11px;line-height:1}#comments .children{list-style:none;margin:0;padding-inline-start:30px;position:relative}#comments .children li:last-child{padding-block-end:0}#comments ol.comment-list .children:before{content:"↪";display:inline-block;font-size:1em;font-weight:400;left:0;line-height:100%;position:absolute;top:45px;width:auto}body.rtl #comments ol.comment-list .children:before,html[dir=rtl] #comments ol.comment-list .children:before{content:"↩";left:auto;right:0}@media(min-width:768px){#comments .comment-author,#comments .comment-metadata{line-height:1}}@media(max-width:767px){#comments .comment .comment-body{padding:30px 0}#comments .children{padding-inline-start:20px}#comments .comment .avatar{float:left;position:inherit}body.rtl #comments .comment .avatar,html[dir=rtl] #comments .comment .avatar{float:right}}.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{margin-inline-end:auto;margin-inline-start:auto;width:100%}@media(max-width:575px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{padding-inline-end:10px;padding-inline-start:10px}}@media(min-width:576px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:500px}.site-footer.footer-full-width .footer-inner,.site-header.header-full-width .header-inner{max-width:100%}}@media(min-width:768px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:600px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:992px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:800px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:1200px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:1140px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}.site-header+.elementor{min-height:calc(100vh - 320px)}


/* ========== GREENROOTS CUSTOM STYLES ========== */
/* ===== GREENROOTS CUSTOM CSS ===== */
/* ============================================================
   GreenRoots - Custom CSS
   Site: https://plants.ecomlab.xyz.lk/
   Theme: Premium Plant & Crop eCommerce
   ============================================================ */

/* ── Google Fonts Import ── */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600&display=swap');

/* ── CSS Variables ── */
:root {
  --primary-green:   #2E7D32;
  --light-green:     #81C784;
  --background:      #F8F9FA;
  --dark-text:       #263238;
  --accent:          #A5D6A7;
  --white:           #FFFFFF;
  --gray-light:      #ECEFF1;
  --gray-mid:        #90A4AE;
  --danger:          #E53935;
  --warning:         #FFB300;
  --shadow-sm:       0 2px 8px rgba(46,125,50,0.08);
  --shadow-md:       0 6px 24px rgba(46,125,50,0.14);
  --shadow-lg:       0 12px 48px rgba(46,125,50,0.18);
  --radius-sm:       6px;
  --radius-md:       12px;
  --radius-lg:       20px;
  --transition:      all 0.3s ease;
}

/* ── Global Reset & Base ── */
*, *::before, *::after { box-sizing: border-box; }
body { font-family: 'Inter', sans-serif; color: var(--dark-text); background-color: var(--background); line-height: 1.7; margin: 0; padding: 0; }
h1, h2, h3, h4, h5, h6 { font-family: 'Poppins', sans-serif; font-weight: 700; color: var(--dark-text); line-height: 1.25; margin-bottom: 0.5em; }
a { color: var(--primary-green); text-decoration: none; transition: var(--transition); }
a:hover { color: var(--light-green); }
img { max-width: 100%; height: auto; display: block; }
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--gray-light); }
::-webkit-scrollbar-thumb { background: var(--primary-green); border-radius: 4px; }

/* ============================================================
   HEADER / NAVIGATION
   ============================================================ */
.ekit-nav-bar, .elementor-header-sticky { position: sticky; top: 0; z-index: 9999; }
.site-header { background: var(--white); box-shadow: var(--shadow-sm); padding: 0; }
.header-top-bar { background: var(--primary-green); color: var(--white); font-size: 13px; padding: 8px 0; text-align: center; }
.header-main { padding: 16px 0; background: var(--white); }
.site-logo img { height: 52px; width: auto; }
.site-logo .logo-text { font-family: 'Poppins', sans-serif; font-size: 26px; font-weight: 800; color: var(--primary-green); letter-spacing: -0.5px; }
.site-logo .logo-text span { color: var(--light-green); }
.ekit-nav-bar .nav-link, .elementor-nav-menu a { font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 500; color: var(--dark-text) !important; padding: 8px 16px !important; border-radius: var(--radius-sm); transition: var(--transition); }
.ekit-nav-bar .nav-link:hover, .elementor-nav-menu a:hover { color: var(--primary-green) !important; background: var(--accent); }
.header-search { position: relative; max-width: 340px; width: 100%; }
.header-search input { width: 100%; padding: 10px 44px 10px 18px; border: 1.5px solid var(--accent); border-radius: 30px; font-family: 'Inter', sans-serif; font-size: 14px; background: var(--background); transition: var(--transition); outline: none; }
.header-search input:focus { border-color: var(--primary-green); box-shadow: 0 0 0 3px rgba(46,125,50,0.12); }
.header-search button { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); background: var(--primary-green); color: var(--white); border: none; border-radius: 50%; width: 32px; height: 32px; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: var(--transition); }
.header-search button:hover { background: var(--light-green); }
.header-cart { position: relative; display: inline-flex; align-items: center; }
.header-cart .cart-count { position: absolute; top: -8px; right: -8px; background: var(--danger); color: white; font-size: 11px; font-weight: 700; width: 20px; height: 20px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }

/* ============================================================
   HERO BANNER
   ============================================================ */
.hero-section { min-height: 90vh; background: linear-gradient(135deg, #1B5E20 0%, #2E7D32 40%, #388E3C 70%, #43A047 100%); position: relative; display: flex; align-items: center; overflow: hidden; }
.hero-section::before { content: ''; position: absolute; inset: 0; background: url('https://images.unsplash.com/photo-1416879595882-3373a0480b5b?w=1600&q=80') center/cover no-repeat; opacity: 0.18; }
.hero-section::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(27,94,32,0.92) 0%, rgba(46,125,50,0.75) 55%, transparent 100%); }
.hero-content { position: relative; z-index: 2; max-width: 640px; padding: 80px 0; }
.hero-badge { display: inline-block; background: rgba(165,214,167,0.2); border: 1px solid var(--accent); color: var(--accent); font-size: 13px; font-weight: 600; padding: 6px 18px; border-radius: 30px; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 20px; }
.hero-title { font-family: 'Poppins', sans-serif; font-size: clamp(38px, 6vw, 68px); font-weight: 800; color: var(--white); line-height: 1.1; margin-bottom: 20px; }
.hero-title span { color: var(--accent); }
.hero-subtitle { font-family: 'Inter', sans-serif; font-size: 18px; color: rgba(255,255,255,0.85); line-height: 1.7; margin-bottom: 36px; max-width: 520px; }
.hero-stats { display: flex; gap: 32px; margin-bottom: 40px; }
.hero-stat-number { font-family: 'Poppins', sans-serif; font-size: 28px; font-weight: 800; color: var(--white); display: block; }
.hero-stat-label { font-size: 12px; color: var(--accent); font-weight: 500; }

/* Buttons */
.btn-primary, .elementor-button.btn-primary { display: inline-flex; align-items: center; gap: 8px; background: var(--white); color: var(--primary-green); font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 700; padding: 14px 32px; border-radius: 50px; border: none; cursor: pointer; text-decoration: none; box-shadow: 0 4px 20px rgba(0,0,0,0.15); transition: var(--transition); }
.btn-primary:hover, .elementor-button.btn-primary:hover { background: var(--accent); color: var(--primary-green); transform: translateY(-3px); box-shadow: 0 8px 30px rgba(0,0,0,0.2); }
.btn-outline, .elementor-button.btn-outline { display: inline-flex; align-items: center; gap: 8px; background: transparent; color: var(--white); font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 600; padding: 13px 32px; border-radius: 50px; border: 2px solid var(--white); cursor: pointer; text-decoration: none; transition: var(--transition); }
.btn-outline:hover, .elementor-button.btn-outline:hover { background: var(--white); color: var(--primary-green); transform: translateY(-3px); }
.btn-green, .elementor-button.btn-green { background: var(--primary-green); color: var(--white); font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 600; padding: 12px 28px; border-radius: 50px; border: none; cursor: pointer; transition: var(--transition); }
.btn-green:hover, .elementor-button.btn-green:hover { background: #1B5E20; transform: translateY(-2px); box-shadow: var(--shadow-md); }

/* ============================================================
   FEATURE BOXES
   ============================================================ */
.features-section { background: var(--white); padding: 60px 0; margin: -40px 0 0; position: relative; z-index: 3; border-radius: var(--radius-lg) var(--radius-lg) 0 0; }
.feature-box { background: var(--background); border: 1.5px solid var(--gray-light); border-radius: var(--radius-md); padding: 32px 24px; text-align: center; transition: var(--transition); position: relative; overflow: hidden; }
.feature-box::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--primary-green), var(--light-green)); opacity: 0; transition: var(--transition); }
.feature-box:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); border-color: var(--accent); }
.feature-box:hover::before { opacity: 1; }
.feature-icon { width: 64px; height: 64px; background: linear-gradient(135deg, var(--primary-green), var(--light-green)); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 18px; font-size: 26px; color: white; box-shadow: var(--shadow-sm); }
.feature-title { font-family: 'Poppins', sans-serif; font-size: 16px; font-weight: 700; color: var(--dark-text); margin-bottom: 6px; }
.feature-desc { font-size: 13px; color: var(--gray-mid); line-height: 1.6; }

/* ============================================================
   SECTION HEADINGS
   ============================================================ */
.section-header { text-align: center; margin-bottom: 52px; }
.section-badge { display: inline-block; background: linear-gradient(135deg, var(--accent), var(--light-green)); color: var(--primary-green); font-size: 12px; font-weight: 700; padding: 5px 16px; border-radius: 30px; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 12px; }
.section-title { font-family: 'Poppins', sans-serif; font-size: clamp(28px, 4vw, 42px); font-weight: 800; color: var(--dark-text); margin-bottom: 14px; }
.section-title span { color: var(--primary-green); }
.section-divider { width: 60px; height: 4px; background: linear-gradient(90deg, var(--primary-green), var(--light-green)); border-radius: 2px; margin: 0 auto 16px; }
.section-subtitle { font-size: 16px; color: var(--gray-mid); max-width: 560px; margin: 0 auto; }

/* ============================================================
   CATEGORY CARDS
   ============================================================ */
.categories-section { padding: 80px 0; background: var(--background); }
.category-card { position: relative; border-radius: var(--radius-md); overflow: hidden; cursor: pointer; aspect-ratio: 1 / 1.1; transition: var(--transition); box-shadow: var(--shadow-sm); }
.category-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); }
.category-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
.category-card:hover img { transform: scale(1.08); }
.category-overlay { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 30%, rgba(27,94,32,0.88) 100%); display: flex; flex-direction: column; justify-content: flex-end; padding: 20px; transition: var(--transition); }
.category-name { font-family: 'Poppins', sans-serif; font-size: 17px; font-weight: 700; color: var(--white); margin-bottom: 4px; }
.category-count { font-size: 12px; color: var(--accent); font-weight: 500; }
.category-btn { display: inline-block; background: var(--white); color: var(--primary-green); font-size: 12px; font-weight: 700; padding: 6px 16px; border-radius: 20px; margin-top: 10px; opacity: 0; transform: translateY(8px); transition: var(--transition); }
.category-card:hover .category-btn { opacity: 1; transform: translateY(0); }

/* ============================================================
   PRODUCT CARDS (WooCommerce)
   ============================================================ */
.products-section { padding: 80px 0; background: var(--white); }
.woocommerce ul.products, ul.products { display: grid !important; gap: 24px; list-style: none; padding: 0; margin: 0; }
.woocommerce ul.products.columns-4 { grid-template-columns: repeat(4, 1fr); }
.woocommerce ul.products.columns-3 { grid-template-columns: repeat(3, 1fr); }
.woocommerce ul.products.columns-2 { grid-template-columns: repeat(2, 1fr); }
.woocommerce ul.products li.product, ul.products li.product { background: var(--white); border: 1.5px solid var(--gray-light); border-radius: var(--radius-md); overflow: hidden; transition: var(--transition); position: relative; padding: 0 !important; }
.woocommerce ul.products li.product:hover { transform: translateY(-6px); box-shadow: var(--shadow-md); border-color: var(--accent); }
.woocommerce ul.products li.product .woocommerce-loop-product__link { display: block; }
.woocommerce ul.products li.product img { width: 100%; height: 240px; object-fit: cover; display: block; transition: transform 0.5s ease; }
.woocommerce ul.products li.product:hover img { transform: scale(1.04); }
.product-badge { position: absolute; top: 14px; left: 14px; z-index: 2; background: var(--danger); color: white; font-size: 11px; font-weight: 700; padding: 4px 10px; border-radius: 20px; }
.product-badge.new { background: var(--primary-green); }
.product-wishlist-btn { position: absolute; top: 14px; right: 14px; z-index: 2; width: 36px; height: 36px; background: var(--white); border: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: var(--shadow-sm); transition: var(--transition); font-size: 16px; color: var(--gray-mid); }
.product-wishlist-btn:hover { color: var(--danger); transform: scale(1.1); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: 'Poppins', sans-serif; font-size: 15px !important; font-weight: 600; color: var(--dark-text) !important; padding: 16px 16px 4px !important; margin: 0 !important; }
.woocommerce .star-rating { color: var(--warning) !important; font-size: 13px !important; padding: 4px 16px; }
.woocommerce ul.products li.product .price { display: flex; align-items: center; gap: 8px; padding: 4px 16px 14px !important; margin: 0 !important; }
.woocommerce ul.products li.product .price .amount { font-family: 'Poppins', sans-serif; font-size: 18px !important; font-weight: 800; color: var(--primary-green) !important; }
.woocommerce ul.products li.product .price del .amount { font-size: 13px !important; color: var(--gray-mid) !important; font-weight: 400; }
.woocommerce ul.products li.product .button, .woocommerce ul.products li.product a.button { display: block !important; background: var(--primary-green) !important; color: var(--white) !important; font-family: 'Poppins', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; text-align: center !important; padding: 12px 16px !important; margin: 0 16px 16px !important; border-radius: var(--radius-sm) !important; border: none !important; cursor: pointer !important; transition: var(--transition) !important; }
.woocommerce ul.products li.product .button:hover, .woocommerce ul.products li.product a.button:hover { background: #1B5E20 !important; box-shadow: var(--shadow-sm) !important; }

/* ============================================================
   PROMO BANNER & TESTIMONIALS
   ============================================================ */
.promo-banner { background: linear-gradient(135deg, #1B5E20 0%, #2E7D32 50%, #33691E 100%); padding: 80px 0; position: relative; overflow: hidden; }
.promo-content { position: relative; z-index: 2; }
.promo-label { display: inline-block; background: rgba(165,214,167,0.2); border: 1px solid var(--accent); color: var(--accent); font-size: 12px; font-weight: 700; padding: 5px 16px; border-radius: 20px; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 16px; }
.promo-title { font-family: 'Poppins', sans-serif; font-size: clamp(32px, 5vw, 52px); font-weight: 800; color: var(--white); line-height: 1.1; margin-bottom: 16px; }
.promo-title span { color: var(--accent); }
.promo-text { font-size: 17px; color: rgba(255,255,255,0.8); margin-bottom: 32px; }

.testimonials-section { padding: 80px 0; background: var(--background); }
.testimonial-card { background: var(--white); border-radius: var(--radius-lg); padding: 36px 32px; box-shadow: var(--shadow-sm); border: 1.5px solid var(--gray-light); transition: var(--transition); position: relative; }
.testimonial-card:hover { box-shadow: var(--shadow-md); border-color: var(--accent); }
.testimonial-quote { font-size: 48px; color: var(--accent); line-height: 1; font-family: Georgia, serif; margin-bottom: 16px; }
.testimonial-text { font-size: 15px; color: #546E7A; line-height: 1.8; margin-bottom: 24px; font-style: italic; }
.testimonial-author { display: flex; align-items: center; gap: 14px; }
.testimonial-avatar { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; border: 3px solid var(--accent); }
.testimonial-name { font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 700; color: var(--dark-text); display: block; }
.testimonial-role { font-size: 13px; color: var(--primary-green); font-weight: 500; }
.testimonial-stars { color: var(--warning); font-size: 14px; letter-spacing: 2px; margin-bottom: 12px; }

/* ============================================================
   NEWSLETTER
   ============================================================ */
.newsletter-section { background: linear-gradient(135deg, var(--primary-green) 0%, #1B5E20 100%); padding: 80px 0; text-align: center; position: relative; overflow: hidden; }
.newsletter-title { font-family: 'Poppins', sans-serif; font-size: clamp(26px, 4vw, 40px); font-weight: 800; color: var(--white); margin-bottom: 12px; }
.newsletter-subtitle { font-size: 16px; color: var(--accent); margin-bottom: 36px; }
.newsletter-form { display: flex; max-width: 520px; margin: 0 auto; gap: 0; background: var(--white); border-radius: 50px; overflow: hidden; box-shadow: var(--shadow-lg); }
.newsletter-form input { flex: 1; padding: 16px 24px; border: none; outline: none; font-family: 'Inter', sans-serif; font-size: 15px; color: var(--dark-text); background: transparent; }
.newsletter-form button { background: var(--primary-green); color: white; border: none; padding: 16px 32px; font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 700; cursor: pointer; transition: var(--transition); white-space: nowrap; }
.newsletter-form button:hover { background: #1B5E20; }
.elementor-form .elementor-field-group .elementor-field { border-radius: 30px !important; }
.elementor-form .elementor-button { border-radius: 30px !important; background: var(--primary-green) !important; }

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer { background: #1A2332; color: #90A4AE; padding: 64px 0 0; }
.footer-widget-title { font-family: 'Poppins', sans-serif; font-size: 17px; font-weight: 700; color: var(--white); margin-bottom: 24px; position: relative; padding-bottom: 12px; }
.footer-widget-title::after { content: ''; position: absolute; bottom: 0; left: 0; width: 36px; height: 3px; background: var(--primary-green); border-radius: 2px; }
.footer-logo .logo-text { font-family: 'Poppins', sans-serif; font-size: 24px; font-weight: 800; color: white; }
.footer-logo .logo-text span { color: var(--light-green); }
.footer-about { font-size: 14px; line-height: 1.8; margin-bottom: 24px; }
.footer-links { list-style: none; padding: 0; margin: 0; }
.footer-links li { margin-bottom: 10px; }
.footer-links a { color: #90A4AE; font-size: 14px; transition: var(--transition); display: flex; align-items: center; gap: 8px; }
.footer-links a:hover { color: var(--light-green); padding-left: 6px; }
.footer-links a::before { content: '›'; color: var(--primary-green); font-size: 18px; line-height: 1; }
.footer-contact-item { display: flex; gap: 12px; margin-bottom: 16px; font-size: 14px; }
.footer-contact-icon { color: var(--primary-green); font-size: 18px; margin-top: 2px; flex-shrink: 0; }
.footer-social { display: flex; gap: 10px; margin-top: 20px; }
.footer-social a { width: 38px; height: 38px; border-radius: 50%; background: rgba(255,255,255,0.07); display: flex; align-items: center; justify-content: center; color: #90A4AE; font-size: 16px; transition: var(--transition); }
.footer-social a:hover { background: var(--primary-green); color: white; transform: translateY(-3px); }
.footer-bottom { background: #111B22; padding: 20px 0; margin-top: 48px; text-align: center; font-size: 13px; color: #607D8B; }

/* ============================================================
   SHOP PAGE & WOOCOMMERCE
   ============================================================ */
.woocommerce-page .page-title { font-family: 'Poppins', sans-serif; font-size: 32px; font-weight: 800; margin-bottom: 8px; }
.woocommerce-breadcrumb { font-size: 13px; color: var(--gray-mid); margin-bottom: 24px; }
.woocommerce-breadcrumb a { color: var(--primary-green); }
.woocommerce-result-count { font-size: 14px; color: var(--gray-mid); }
.woocommerce-ordering select { border: 1.5px solid var(--accent); border-radius: var(--radius-sm); padding: 8px 14px; font-family: 'Inter', sans-serif; font-size: 14px; color: var(--dark-text); background: var(--white); outline: none; cursor: pointer; transition: var(--transition); }
.widget { margin-bottom: 32px; }
.widget-title { font-family: 'Poppins', sans-serif; font-size: 17px; font-weight: 700; color: var(--dark-text); padding-bottom: 12px; margin-bottom: 18px; border-bottom: 2px solid var(--accent); }
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle { background: var(--primary-green); border-color: var(--primary-green); }
.widget_product_categories ul li a { font-size: 14px; color: var(--dark-text); transition: var(--transition); }
.widget_product_categories ul li a:hover { color: var(--primary-green); padding-left: 4px; }
.widget_product_categories ul li .count { float: right; background: var(--accent); color: var(--primary-green); font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 10px; }
.woocommerce-pagination ul.page-numbers { display: flex; gap: 6px; justify-content: center; list-style: none; padding: 0; margin: 48px 0 0; }
.woocommerce-pagination ul.page-numbers li a, .woocommerce-pagination ul.page-numbers li span { width: 42px; height: 42px; display: flex; align-items: center; justify-content: center; border: 1.5px solid var(--gray-light); border-radius: var(--radius-sm); font-family: 'Poppins', sans-serif; font-size: 14px; font-weight: 600; color: var(--dark-text); text-decoration: none; transition: var(--transition); }
.woocommerce-pagination ul.page-numbers li a:hover, .woocommerce-pagination ul.page-numbers li span.current { background: var(--primary-green); color: white; border-color: var(--primary-green); }

/* ============================================================
   SINGLE PRODUCT PAGE
   ============================================================ */
.woocommerce div.product .woocommerce-product-gallery { border-radius: var(--radius-md); overflow: hidden; }
.woocommerce div.product p.price { font-size: 28px !important; }
.woocommerce div.product p.price .amount { font-family: 'Poppins', sans-serif !important; font-weight: 800 !important; color: var(--primary-green) !important; }
.woocommerce div.product .product_title { font-family: 'Poppins', sans-serif; font-size: 30px; font-weight: 800; }
.woocommerce div.product .stock { font-weight: 600; color: var(--primary-green); }
.woocommerce .quantity .qty { width: 70px; padding: 10px; text-align: center; border: 2px solid var(--accent); border-radius: var(--radius-sm); font-family: 'Poppins', sans-serif; font-size: 18px; font-weight: 700; color: var(--dark-text); outline: none; }
.woocommerce .single_add_to_cart_button { background: var(--primary-green) !important; font-family: 'Poppins', sans-serif !important; font-size: 16px !important; font-weight: 700 !important; padding: 14px 36px !important; border-radius: 50px !important; transition: var(--transition) !important; }
.woocommerce .single_add_to_cart_button:hover { background: #1B5E20 !important; transform: translateY(-2px) !important; box-shadow: var(--shadow-md) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--primary-green) !important; font-weight: 700; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 600; }

/* ============================================================
   CART PAGE
   ============================================================ */
.woocommerce-cart table.shop_table { border-radius: var(--radius-md); overflow: hidden; border: 1.5px solid var(--gray-light) !important; }
.woocommerce-cart table.shop_table th { background: var(--background) !important; font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; color: var(--dark-text) !important; padding: 16px !important; }
.woocommerce-cart table.shop_table td { padding: 20px 16px !important; vertical-align: middle !important; }
.woocommerce-cart table.shop_table td.product-name a { font-family: 'Poppins', sans-serif; font-weight: 600; color: var(--dark-text); }
.woocommerce-cart table.shop_table td.product-price .amount, .woocommerce-cart table.shop_table td.product-subtotal .amount { font-weight: 700; color: var(--primary-green); font-family: 'Poppins', sans-serif; }
.woocommerce-cart .cart_totals h2 { font-family: 'Poppins', sans-serif; font-size: 22px; font-weight: 800; }
.woocommerce #respond input#submit, .woocommerce a.button.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button { background: var(--primary-green) !important; font-family: 'Poppins', sans-serif !important; font-size: 16px !important; font-weight: 700 !important; padding: 14px 36px !important; border-radius: 50px !important; display: block !important; text-align: center !important; transition: var(--transition) !important; }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover { background: #1B5E20 !important; }

/* ============================================================
   CHECKOUT PAGE
   ============================================================ */
.woocommerce-checkout .woocommerce-billing-fields h3, .woocommerce-checkout .woocommerce-shipping-fields h3, .woocommerce-checkout #order_review_heading { font-family: 'Poppins', sans-serif; font-size: 20px; font-weight: 800; margin-bottom: 20px; }
.woocommerce-checkout .woocommerce-input-wrapper input, .woocommerce-checkout .woocommerce-input-wrapper select, .woocommerce-checkout .woocommerce-input-wrapper textarea { border: 1.5px solid var(--gray-light) !important; border-radius: var(--radius-sm) !important; padding: 12px 16px !important; font-family: 'Inter', sans-serif !important; font-size: 14px !important; transition: var(--transition) !important; }
.woocommerce-checkout .woocommerce-input-wrapper input:focus, .woocommerce-checkout .woocommerce-input-wrapper select:focus { border-color: var(--primary-green) !important; box-shadow: 0 0 0 3px rgba(46,125,50,0.1) !important; outline: none !important; }
.woocommerce-checkout #payment { background: var(--background) !important; border-radius: var(--radius-md) !important; padding: 24px !important; }
.woocommerce-checkout #place_order { background: var(--primary-green) !important; font-family: 'Poppins', sans-serif !important; font-size: 18px !important; font-weight: 700 !important; padding: 16px 40px !important; border-radius: 50px !important; width: 100% !important; transition: var(--transition) !important; }
.woocommerce-checkout #place_order:hover { background: #1B5E20 !important; box-shadow: var(--shadow-md) !important; }

/* ============================================================
   ELEMENTOR WIDGET OVERRIDES
   ============================================================ */
.elementor-widget-heading h1.elementor-heading-title, .elementor-widget-heading h2.elementor-heading-title { font-family: 'Poppins', sans-serif !important; font-weight: 800 !important; }
.elementor-widget-heading h3.elementor-heading-title, .elementor-widget-heading h4.elementor-heading-title { font-family: 'Poppins', sans-serif !important; font-weight: 700 !important; }
.elementor-widget-text-editor { font-family: 'Inter', sans-serif !important; color: var(--dark-text) !important; line-height: 1.8 !important; }
.elementor-widget-button .elementor-button { font-family: 'Poppins', sans-serif !important; font-weight: 700 !important; border-radius: 50px !important; }
.elementor-image-box-title { font-family: 'Poppins', sans-serif !important; font-weight: 700 !important; font-size: 17px !important; }
.elementor-image-box-description { font-family: 'Inter', sans-serif !important; font-size: 14px !important; color: var(--gray-mid) !important; line-height: 1.7 !important; }
.elementor-icon-box-title { font-family: 'Poppins', sans-serif !important; font-weight: 700 !important; }
.elementor-icon i { color: var(--primary-green) !important; }
.elementor-slides-wrapper .elementor-slide-heading { font-family: 'Poppins', sans-serif !important; font-weight: 800 !important; }
.elementor-tabs .elementor-tab-title.elementor-active { border-bottom-color: var(--primary-green) !important; color: var(--primary-green) !important; font-family: 'Poppins', sans-serif !important; font-weight: 700 !important; }
.elementor-accordion .elementor-accordion-title { font-family: 'Poppins', sans-serif !important; font-weight: 600 !important; }
.elementor-accordion .elementor-accordion-icon-opened i, .elementor-accordion .elementor-accordion-icon-closed i { color: var(--primary-green) !important; }
.elementor-wc-products .products { gap: 24px !important; }
.elementor-form .elementor-field-label { font-family: 'Inter', sans-serif !important; font-weight: 600 !important; font-size: 14px !important; }

/* ============================================================
   ANIMATIONS
   ============================================================ */
@keyframes fadeInUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }
@keyframes pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.04); } }
@keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-12px); } }
.animate-fade-up { animation: fadeInUp 0.6s ease forwards; }
.animate-pulse { animation: pulse 2.5s ease-in-out infinite; }
.animate-float { animation: float 3s ease-in-out infinite; }

/* ============================================================
   INSTAGRAM SECTION
   ============================================================ */
.instagram-section { padding: 80px 0; background: var(--white); }
.instagram-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; }
.instagram-item { position: relative; overflow: hidden; aspect-ratio: 1; border-radius: var(--radius-sm); cursor: pointer; }
.instagram-item img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.instagram-item:hover img { transform: scale(1.1); }
.instagram-overlay { position: absolute; inset: 0; background: rgba(46,125,50,0.7); display: flex; align-items: center; justify-content: center; opacity: 0; transition: var(--transition); }
.instagram-item:hover .instagram-overlay { opacity: 1; }
.instagram-overlay i { color: white; font-size: 28px; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1200px) { .woocommerce ul.products.columns-4 { grid-template-columns: repeat(3, 1fr); } .instagram-grid { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 992px) { .woocommerce ul.products.columns-4, .woocommerce ul.products.columns-3 { grid-template-columns: repeat(2, 1fr); } .instagram-grid { grid-template-columns: repeat(3, 1fr); } .features-section { margin-top: 0; } }
@media (max-width: 768px) { .hero-title { font-size: 34px; } .hero-stats { gap: 16px; } .instagram-grid { grid-template-columns: repeat(2, 1fr); } .newsletter-form { flex-direction: column; border-radius: var(--radius-md); overflow: visible; background: transparent; box-shadow: none; } .newsletter-form input { border-radius: 50px !important; margin-bottom: 12px; } .newsletter-form button { border-radius: 50px !important; text-align: center; } }
@media (max-width: 480px) { .woocommerce ul.products.columns-4, .woocommerce ul.products.columns-3, .woocommerce ul.products.columns-2 { grid-template-columns: 1fr; } .instagram-grid { grid-template-columns: repeat(2, 1fr); } }

/* ============================================================
   UTILITY CLASSES
   ============================================================ */
.text-primary  { color: var(--primary-green) !important; }
.text-accent   { color: var(--accent) !important; }
.bg-primary    { background-color: var(--primary-green) !important; }
.bg-light      { background-color: var(--background) !important; }
.rounded-full  { border-radius: 50px !important; }
.shadow-md     { box-shadow: var(--shadow-md) !important; }
.font-poppins  { font-family: 'Poppins', sans-serif !important; }
.font-inter    { font-family: 'Inter', sans-serif !important; }