/*
Theme Name: GreenLeaf Flatsome
Description: Flatsome child theme for GreenLeaf Nursery — Premium US plant e-commerce
Author: Developer
Template: flatsome
Version: 1.0.0
Text Domain: greenleaf-flatsome
*/

/* Design Tokens */
:root {
  --gl-primary:#2D6A4F; --gl-primary-dark:#1B4332; --gl-primary-light:#40916C;
  --gl-secondary:#95D5B2; --gl-secondary-light:#D8F3DC;
  --gl-accent:#E76F51; --gl-accent-hover:#D4573B;
  --gl-surface:#FAFDF7; --gl-surface-warm:#F5F0E8;
  --gl-text:#1B4332; --gl-text-muted:#52796F; --gl-text-light:#74A892;
  --gl-border:#D8F3DC; --gl-white:#FFFFFF; --gl-star:#F59E0B;
  --gl-font-heading:'Outfit',sans-serif; --gl-font-body:'Work Sans',sans-serif;
  --gl-radius-sm:8px; --gl-radius-md:12px; --gl-radius-lg:16px; --gl-radius-pill:9999px;
  --gl-shadow-lg:0 12px 32px rgba(45,106,79,0.12);
  --gl-shadow-glow:0 4px 16px rgba(231,111,81,0.3);
}

/* Global */
body,.page-wrapper{background-color:var(--gl-surface)!important;color:var(--gl-text);font-family:var(--gl-font-body)}
h1,h2,h3,h4,h5,h6,.entry-title,.product-title,.header-title{font-family:var(--gl-font-heading)!important;color:var(--gl-primary-dark);font-weight:600}
a{color:var(--gl-primary);transition:color .2s}a:hover{color:var(--gl-primary-light)}
.container,.row{max-width:1280px}

/* Header */
.header-wrapper{background:rgba(255,255,255,.85)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--gl-border)!important}
.header-nav .nav>li>a,
.header-nav-main .nav>li>a,
ul.header-nav-main>li>a{
  font-family:var(--gl-font-body)!important;
  font-weight:500!important;
  font-size:15px!important;
  color:var(--gl-text-muted)!important;
  text-transform:none!important;
  letter-spacing:0!important;
  transition:all .2s!important;
  padding:8px 14px!important;
  border-radius:var(--gl-radius-sm)!important;
}
.header-nav .nav>li>a:hover,
.header-nav-main .nav>li>a:hover,
ul.header-nav-main>li>a:hover{
  color:var(--gl-primary)!important;
  background:rgba(45,106,79,.08)!important;
}
.header-nav .nav>li.active>a,
.header-nav .nav>li.current-menu-item>a,
.header-nav .nav>li.current_page_item>a,
.header-nav-main .nav>li.current-menu-item>a{
  color:var(--gl-primary)!important;
  font-weight:600!important;
}
.logo-title{font-family:var(--gl-font-heading)!important;font-weight:600;color:var(--gl-primary-dark)!important}
.header-cart .cart-icon .image-icon::after,.cart-item-count{background-color:var(--gl-accent)!important}
.off-canvas .nav>li>a{font-family:var(--gl-font-body)!important;text-transform:none!important}
.top-bar{background-color:var(--gl-primary-dark)!important;color:rgba(255,255,255,.8)!important;font-size:13px}

/* Buttons */
.button.primary,.button.checkout,.button.alt,.single_add_to_cart_button,a.button.primary{background-color:var(--gl-accent)!important;color:var(--gl-white)!important;border:none!important;border-radius:var(--gl-radius-pill)!important;font-family:var(--gl-font-heading)!important;font-weight:600;text-transform:none!important;box-shadow:var(--gl-shadow-glow);transition:all .2s}
.button.primary:hover,.button.checkout:hover,.button.alt:hover,.single_add_to_cart_button:hover,a.button.primary:hover{background-color:var(--gl-accent-hover)!important;box-shadow:0 6px 24px rgba(231,111,81,.45)}
.button.secondary,a.button.secondary{background:transparent!important;color:var(--gl-primary)!important;border:2px solid var(--gl-primary)!important;border-radius:var(--gl-radius-pill)!important;font-family:var(--gl-font-heading)!important;font-weight:500;text-transform:none!important;transition:all .2s}
.button.secondary:hover,a.button.secondary:hover{background:var(--gl-primary)!important;color:var(--gl-white)!important}

/* Product Cards */
.product-small .col-inner{background:var(--gl-white);border-radius:var(--gl-radius-lg)!important;border:1px solid rgba(216,243,220,.5);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.product-small .col-inner:hover{transform:translateY(-4px);box-shadow:var(--gl-shadow-lg)}
.product-small .product-title{font-family:var(--gl-font-heading)!important;font-weight:600;font-size:15px;color:var(--gl-primary-dark)}
.product-small .price{font-family:var(--gl-font-heading)!important;font-weight:700;color:var(--gl-primary-dark)}
.badge-inner{font-family:var(--gl-font-heading)!important;font-weight:600;text-transform:none!important;border-radius:var(--gl-radius-pill)!important}
.badge-inner.on-sale{background:linear-gradient(135deg,var(--gl-accent),#F4A261)!important;color:#fff!important;border-radius:var(--gl-radius-pill)!important}
/* Add to cart button — circular "+" icon, subtle green tone */
.product-small .add-to-cart-button{margin-top:8px}
.product-small .add_to_cart_button{
  background:rgba(45,106,79,.1)!important;color:var(--gl-primary)!important;
  border-radius:50%!important;width:40px!important;height:40px!important;min-width:40px!important;
  padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  transition:all .2s;box-shadow:none!important;font-size:0!important;line-height:1!important;
  border:none!important;position:relative;overflow:hidden;
}
.product-small .add_to_cart_button span{display:none!important}
.product-small .add_to_cart_button::after{
  content:"+";font-size:20px!important;font-weight:300;color:var(--gl-primary);
  display:flex!important;align-items:center;justify-content:center;
  width:100%;height:100%;position:absolute;top:0;left:0;
}
.product-small .add_to_cart_button:hover{background:var(--gl-primary)!important}
.product-small .add_to_cart_button:hover::after{color:#fff}
/* Override .button.primary on product grid add-to-cart */
.product-small a.button.primary.add_to_cart_button,
.product-small .button.primary.add_to_cart_button{
  background:rgba(45,106,79,.1)!important;
  color:var(--gl-primary)!important;
  box-shadow:none!important;
  border-radius:50%!important;
  width:40px!important;height:40px!important;min-width:40px!important;
  padding:0!important;font-size:0!important;
}
.product-small a.button.primary.add_to_cart_button:hover,
.product-small .button.primary.add_to_cart_button:hover{
  background:var(--gl-primary)!important;
  color:#fff!important;
}

/* Product card text spacing */
.product-small .box-text{padding:16px 20px 20px!important}
.product-small .title-wrapper{margin-bottom:8px}
.product-small .product-title{margin-bottom:2px!important;font-size:15px!important}
.product-small .product-short-description,.product-small .box-excerpt{color:var(--gl-text-light);font-size:13px;margin-bottom:8px}
.product-small .price-wrapper{margin-bottom:0}
.product-small .price{margin-top:0!important;font-size:18px!important}
.product-small .price del{color:var(--gl-text-light)!important;font-weight:400;font-size:14px!important}
.product-small .price ins{text-decoration:none;font-weight:700}

/* Price + add-to-cart inline (price left, button right) */
.product-small .box-text-products{position:relative}
.product-small .box-text-products .add-to-cart-button{
  position:absolute!important;
  bottom:20px!important;
  right:20px!important;
  margin:0!important;
}
.product-small .box-text-products .price-wrapper{
  padding-right:52px!important;
}

/* Hide category label on product cards */
.product-small .category.product-cat,
.product-small p.product-cat,
.product-small .product-cat{display:none!important}

/* Sale badge — gradient pill like HTML */
.product-small .badge-inner.on-sale,
.badge-inner.on-sale,
span.onsale,
.onsale,
.product-small .onsale,
.product .onsale{
  background:linear-gradient(135deg,#E76F51,#F4A261)!important;
  color:#fff!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:12px!important;
  padding:6px 14px!important;
  border-radius:var(--gl-radius-pill)!important;
  text-transform:none!important;
  line-height:1.3!important;
  display:inline-block!important;
  min-width:auto!important;
  min-height:auto!important;
  width:auto!important;
  height:auto!important;
}
/* "New" badge — pill shape matching sale badge */
.badge-inner.new-badge,
.badge-inner.featured-badge,
.product-small .badge-container .badge-inner.new-badge,
.product-small .badge-container .badge-inner.featured-badge{
  background:linear-gradient(135deg,#E76F51,#F4A261)!important;
  color:#fff!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:12px!important;
  padding:6px 14px!important;
  border-radius:var(--gl-radius-pill)!important;
  text-transform:none!important;
  line-height:1.3!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  display:inline-block!important;
}
/* Badge position + shape override */
.product-small .badge{top:12px!important;left:12px!important}
/* ===== GreenLeaf custom pill badges (PHP-rendered) ===== */
.gl-badge-stack{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  align-items:flex-start!important;
  position:absolute!important;
  top:12px!important;left:12px!important;
  z-index:5!important;
}
.gl-pill-badge{
  display:inline-block!important;
  padding:6px 14px!important;
  border-radius:var(--gl-radius-pill)!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:12px!important;
  line-height:1.3!important;
  text-transform:none!important;
  color:#fff!important;
}
.gl-pill-sale{background:linear-gradient(135deg,#E76F51,#F4A261)!important}
.gl-pill-new{background:var(--gl-primary)!important}

/* Badge container — keep Flatsome default, just adjust position */
.product-small .badge-container{
  padding:12px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  align-items:flex-start!important;
}

/* Force ALL badges in product cards to pill shape */
.product-small .badge-container .badge,
.product-small .badge-container .badge-inner,
.product-small .badge-container .callout,
.product-small .badge-container .callout .badge-inner{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  border-radius:var(--gl-radius-pill)!important;
  padding:0!important;
  line-height:1.3!important;
  text-transform:none!important;
  display:inline-block!important;
  background:transparent!important;
  box-shadow:none!important;
}
/* Sale badge: span.onsale */
.product-small .badge-container span.onsale,
.badge-container span.onsale,
span.onsale{
  background:linear-gradient(135deg,#E76F51,#F4A261)!important;
  color:#fff!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:12px!important;
  padding:6px 14px!important;
  border-radius:var(--gl-radius-pill)!important;
  display:inline-block!important;
  width:auto!important;height:auto!important;
  min-width:0!important;min-height:0!important;
  line-height:1.3!important;
  text-transform:none!important;
}
/* New badge: .new-bubble-auto — all possible selectors */
.new-bubble-auto,
.badge-inner.new-bubble-auto,
.badge-inner.is-small.new-bubble-auto,
div.badge-inner.new-bubble-auto,
div.badge-inner.is-small.new-bubble-auto,
.badge-square .badge-inner.new-bubble-auto,
.badge .badge-inner.new-bubble-auto,
.callout .badge-inner.new-bubble-auto,
.product-small .badge-container .new-bubble-auto,
.product-small .badge-container .badge-inner.new-bubble-auto,
.product-small .callout .new-bubble-auto,
.product-small .badge .new-bubble-auto{
  background:var(--gl-primary)!important;
  color:#fff!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:12px!important;
  padding:6px 14px!important;
  border-radius:var(--gl-radius-pill)!important;
  display:inline-block!important;
  width:auto!important;height:auto!important;
  min-width:0!important;min-height:0!important;
  line-height:1.3!important;
  text-transform:none!important;
}
/* Also style the parent .callout wrapper for new badge */
.badge-container .callout.badge-square{
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  width:auto!important;height:auto!important;
  min-width:0!important;min-height:0!important;
  padding:0!important;
  display:inline-block!important;
}
/* Sale badge wrapper — make transparent so inner span.onsale shows */
.badge-inner.secondary.on-sale,
.callout .badge-inner.secondary.on-sale{
  background:transparent!important;
  padding:0!important;
  border-radius:0!important;
  width:auto!important;height:auto!important;
  min-width:0!important;min-height:0!important;
  box-shadow:none!important;
}
/* The actual visible sale badge */
.badge-inner.secondary.on-sale .onsale{
  background:linear-gradient(135deg,#E76F51,#F4A261)!important;
  color:#fff!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:12px!important;
  padding:6px 14px!important;
  border-radius:var(--gl-radius-pill)!important;
  display:inline-block!important;
  width:auto!important;height:auto!important;
  min-width:0!important;min-height:0!important;
  line-height:1.3!important;
}
/* Badge container layout — stack badges vertically */
.product-small .badge-container{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  align-items:flex-start!important;
  padding:12px!important;
}
.product-small .badge-container .callout{margin:0!important}

/* Product card bottom — price + button inline */
.product-small .product-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important}

/* Outline green button */
.button.is-outline,
a.button.is-outline,
.gl-btn-outline-green,
.gl-btn-outline-green.button{
  color:var(--gl-primary)!important;
  border:2px solid var(--gl-primary)!important;
  background:transparent!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:500!important;
  text-transform:none!important;
  box-shadow:none!important;
}
.button.is-outline:hover,
a.button.is-outline:hover,
.gl-btn-outline-green:hover{
  background:var(--gl-primary)!important;
  color:var(--gl-white)!important;
}

/* PDP */
.product-info .product_title{font-family:var(--gl-font-heading)!important;font-weight:700;font-size:32px;color:var(--gl-primary-dark)}
.product-info .price{font-family:var(--gl-font-heading)!important;font-weight:700;font-size:32px;color:var(--gl-primary-dark)}
.product-info .price del{font-size:22px!important;color:var(--gl-text-light)!important;font-weight:400!important}
.product-info .price ins{font-size:32px!important;color:#dd3333!important;font-weight:700!important;text-decoration:none!important}
.product-info .price .woocommerce-Price-amount{font-size:inherit!important}
/* Variation price range */
.product-info .woocommerce-variation-price .price{font-size:32px!important}
.product-info .woocommerce-variation-price .price del{font-size:22px!important}
.product-info .woocommerce-variation-price .price ins{font-size:32px!important}
.star-rating span::before{color:var(--gl-star)!important}
.woocommerce-tabs .tabs li a{font-family:var(--gl-font-heading)!important;font-weight:500;text-transform:none!important;color:var(--gl-text-muted)}
.woocommerce-tabs .tabs li.active a{color:var(--gl-primary)!important;border-color:var(--gl-primary)!important}

/* PDP category page header */
.single-product .shop-page-title{background-color:#D8F3DC!important}
.single-product .shop-page-title .page-title{color:var(--gl-primary-dark)!important;font-family:var(--gl-font-heading)!important}
.single-product .shop-page-title .breadcrumbs{color:var(--gl-text-light)!important}

/* Related products heading — all selectors */
.related.products>h2,
.upsells.products>h2,
.related-products-wrapper h3,
.product-section-title-related,
h3.product-section-title{
  font-family:var(--gl-font-heading)!important;
  font-weight:700!important;
  font-size:24px!important;
  color:var(--gl-primary-dark)!important;
  text-transform:none!important;
}

/* Related products — full width, aligned to container */
.related-products-wrapper,
.related.products{
  max-width:100%!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
}
.related-products-wrapper .row,
.related.products .row{
  max-width:100%!important;
  width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
/* Remove container-width class padding on heading */
.product-section-title.container-width{
  padding-left:0!important;
  padding-right:0!important;
  max-width:100%!important;
}
/* Fix row align-right pushing related products */
.custom-product-page .row.align-right{
  justify-content:flex-start!important;
}
.related-products-wrapper .large-columns-5,
.related-products-wrapper .large-columns-4{
  --col-count:4;
}
/* Fix product title height in related — truncate long titles */
.related-products-wrapper .product-title,
.related.products .product-title{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  height:auto!important;
  min-height:0!important;
  max-height:44px!important;
}
/* Fix equal box heights forcing misalignment */
.related-products-wrapper .has-equal-box-heights .box-text,
.related-products-wrapper .equalize-box .box-text{
  height:auto!important;
}
.related-products-wrapper .has-equal-box-heights .title-wrapper,
.related-products-wrapper .equalize-box .title-wrapper{
  height:auto!important;
}
.related-products-wrapper .has-equal-box-heights .price-wrapper,
.related-products-wrapper .equalize-box .price-wrapper{
  height:auto!important;
}
.related-products-wrapper .has-equal-box-heights .add-to-cart-button,
.related-products-wrapper .equalize-box .add-to-cart-button{
  height:auto!important;
}

/* Categories */
.product-category .col-inner{border-radius:var(--gl-radius-lg)!important;overflow:hidden}
.product-category .box-image img{transition:transform .5s ease}
.product-category .col-inner:hover .box-image img{transform:scale(1.05)}

/* Blog cards */
.from_the_blog_excerpt .col-inner{background:var(--gl-white);border-radius:var(--gl-radius-lg)!important;border:1px solid rgba(216,243,220,.5);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.from_the_blog_excerpt .col-inner:hover{transform:translateY(-4px);box-shadow:var(--gl-shadow-lg)}
.from_the_blog_excerpt .post-title{font-family:var(--gl-font-heading)!important;font-weight:600;color:var(--gl-primary-dark)}
.from_the_blog_excerpt .post-title a{color:var(--gl-primary-dark)!important}
.from_the_blog_excerpt .post-title a:hover{color:var(--gl-primary)!important}
.from_the_blog_excerpt .box-text{padding:20px 24px 24px!important}
.from_the_blog_excerpt .post-date,.from_the_blog_excerpt .entry-meta{color:var(--gl-text-light)!important;font-size:13px!important}
.from_the_blog_excerpt .from_the_blog_excerpt{color:var(--gl-text-muted)!important;font-size:14px!important;line-height:1.6!important}
/* Blog card image hover */
.from_the_blog_excerpt .box-image img{transition:transform .5s ease}
.from_the_blog_excerpt .col-inner:hover .box-image img{transform:scale(1.03)}
/* Category tag on blog cards */
.from_the_blog_excerpt .post-category,.from_the_blog_excerpt .entry-category{
  font-size:12px!important;font-weight:500!important;
  color:var(--gl-primary)!important;
  background:rgba(216,243,220,.6)!important;
  padding:4px 10px!important;border-radius:var(--gl-radius-pill)!important;
  display:inline-block!important;margin-bottom:8px!important;
  text-transform:none!important;
}
.from_the_blog_excerpt .post-category a,.from_the_blog_excerpt .entry-category a{color:var(--gl-primary)!important;text-decoration:none!important}

/* Testimonials — card style matching HTML demo */
.testimonial-box{
  background:var(--gl-white)!important;
  border-radius:var(--gl-radius-lg)!important;
  border:1px solid rgba(216,243,220,.5)!important;
  padding:24px!important;
}
.testimonial-box .col-inner{padding:0!important}
/* Star rating color */
.testimonial-box .star-rating span::before{color:var(--gl-star)!important}
.testimonial-box .star-rating{margin-bottom:16px!important}
/* Quote text — not italic, normal color */
.testimonial-box .testimonial-text,
.testimonial-box .testimonial-text p{
  font-style:normal!important;
  color:var(--gl-text-muted)!important;
  font-size:14px!important;
  line-height:1.6!important;
}
/* Author meta — avatar initials + name + location */
.testimonial-box .testimonial-meta{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-top:16px!important;
  padding-top:0!important;
}
.testimonial-box .testimonial-name{
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:14px!important;
  color:var(--gl-primary-dark)!important;
}
.testimonial-box .testimonial-company{
  color:var(--gl-text-light)!important;
  font-size:12px!important;
}
.testimonial-box .testimonial-name-divider{display:none!important}
/* Avatar initials circle (added by JS) */
.gl-testimonial-avatar{
  width:40px;height:40px;min-width:40px;
  background:rgba(149,213,178,.4);
  border-radius:50%;
  display:flex!important;align-items:center;justify-content:center;
  font-family:var(--gl-font-heading);
  font-weight:600;font-size:14px;
  color:var(--gl-primary);
  flex-shrink:0;
}
/* Fix testimonial meta layout — name + company stacked */
.testimonial-box .testimonial-meta .testimonial-name,
.testimonial-box .testimonial-meta .testimonial-company{
  display:block!important;
}
/* Wrap name+company in a div-like flow */
.testimonial-box .testimonial-meta{
  flex-wrap:wrap!important;
}

/* Featured Box */
.featured-box .icon-inner{background:rgba(149,213,178,.3)!important;border-radius:var(--gl-radius-lg)!important;color:var(--gl-primary)!important}
.featured-box .featured-box-title{font-family:var(--gl-font-heading)!important;font-weight:600;color:var(--gl-primary-dark)}
.featured-box p{color:var(--gl-text-muted);font-size:14px;line-height:1.6}

/* Team */
.team-member .team-member-name{font-family:var(--gl-font-heading)!important;font-weight:600;color:var(--gl-primary-dark)}

/* Forms */
input[type="text"],input[type="email"],input[type="tel"],textarea,select{border:1px solid var(--gl-border)!important;border-radius:var(--gl-radius-md)!important;background:var(--gl-surface)!important;font-family:var(--gl-font-body);padding:12px 16px;transition:all .2s}
input:focus,textarea:focus,select:focus{border-color:var(--gl-primary)!important;box-shadow:0 0 0 3px rgba(45,106,79,.1)!important;outline:none}

/* Footer */
.footer-wrapper,.absolute-footer{background-color:var(--gl-primary-dark)!important}
.footer-wrapper{padding:64px 0 32px!important}
/* Footer widgets — let Flatsome render the block shortcode */
.footer-wrapper h3,.footer-wrapper h4,.footer-wrapper .widget-title{font-family:var(--gl-font-heading)!important;font-weight:600;text-transform:uppercase!important;letter-spacing:.05em;font-size:13px;color:rgba(255,255,255,.4)!important}
.footer-wrapper a{color:rgba(255,255,255,.6)!important;font-size:14px;transition:color .2s;text-decoration:none!important}
.footer-wrapper a:hover{color:var(--gl-secondary)!important}
.footer-wrapper p,.footer-wrapper li,.footer-wrapper span{color:rgba(255,255,255,.6)!important;font-size:14px!important}
.footer-wrapper ul{list-style:none!important;padding:0!important;margin:0!important}
.footer-wrapper ul li{margin-bottom:12px!important}
.absolute-footer{
  border-top:1px solid rgba(255,255,255,.1)!important;
  padding:16px 0!important;
  min-height:auto!important;
}
.absolute-footer .payment-icons{display:none!important}
.absolute-footer p,.absolute-footer a,.absolute-footer span{
  color:rgba(255,255,255,.4)!important;
  font-size:14px!important;
}
.absolute-footer,.absolute-footer a,.absolute-footer p,.absolute-footer span{color:rgba(255,255,255,.4)!important;font-size:14px!important}
.absolute-footer a:hover{color:rgba(255,255,255,.6)!important}
/* Hide Flatsome default payment icons in footer */
.payment-icons{display:none!important}
/* Hide "Flatsome Theme" default copyright */
.absolute-footer .copyright-footer{display:none!important}

/* WooCommerce */
.page-numbers li span.current{background:var(--gl-primary)!important;color:var(--gl-white)!important;border-radius:var(--gl-radius-sm)!important}

/* Shop ordering dropdown — high specificity to beat Flatsome inline */
.woocommerce-ordering select.orderby,
.woocommerce-ordering select,
.form-flat select.orderby,
.page-title-inner select.orderby,
select.orderby,
form.woocommerce-ordering select,
.flex-col select.orderby{
  border-radius:8px!important;
  padding:10px 36px 10px 14px!important;
  min-width:200px!important;
  max-width:260px!important;
  height:42px!important;
  font-size:13px!important;
  font-family:var(--gl-font-body)!important;
  color:var(--gl-text)!important;
  background:var(--gl-white)!important;
  border:1px solid var(--gl-border)!important;
  -webkit-appearance:menulist!important;
  appearance:menulist!important;
  overflow:visible!important;
  text-overflow:ellipsis!important;
  box-sizing:border-box!important;
}
.woocommerce-ordering{padding:0!important;border:none!important;background:transparent!important;min-width:auto!important;max-width:none!important;border-radius:0!important}
/* Shop result count */
.woocommerce-result-count{
  font-size:14px!important;
  color:var(--gl-text-muted)!important;
}

/* Custom Section Classes */
.gl-hero-gradient{background:linear-gradient(135deg,#D8F3DC 0%,#FAFDF7 50%,#F5F0E8 100%)!important}
.gl-leaf-pattern{background-image:radial-gradient(circle at 20% 80%,rgba(45,106,79,.05) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(149,213,178,.08) 0%,transparent 50%)!important}
.gl-surface-warm{background-color:var(--gl-surface-warm)!important}
.gl-dark{background-color:var(--gl-primary-dark)!important}
.gl-dark h1,.gl-dark h2,.gl-dark h3{color:var(--gl-white)!important}
.gl-dark p{color:rgba(255,255,255,.7)!important}
.gl-green-tint{background-color:rgba(216,243,220,.4)!important}
.gl-badge{background:linear-gradient(135deg,#E76F51,#F4A261);color:white;padding:4px 12px;border-radius:var(--gl-radius-pill);font-family:var(--gl-font-heading);font-weight:600;font-size:12px;display:inline-block}
.gl-social-proof{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;background:rgba(149,213,178,.3);color:var(--gl-primary);font-weight:500;font-size:14px;border-radius:var(--gl-radius-pill)}
.gl-stat-number{font-family:var(--gl-font-heading);font-weight:700;font-size:40px;color:var(--gl-secondary)}
.gl-care-card{background:rgba(216,243,220,.3);border-radius:var(--gl-radius-md);padding:16px}
.gl-callout{background:rgba(231,111,81,.05);border-left:4px solid var(--gl-accent);border-radius:0 var(--gl-radius-md) var(--gl-radius-md) 0;padding:24px}

/* Hero Image with rotated gradient borders + floating badge */
.gl-hero-img-wrap {
  position: relative;
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  aspect-ratio: 1;
}
.gl-hero-img-wrap::before,
.gl-hero-img-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 2rem;
}
.gl-hero-img-wrap::before {
  background: linear-gradient(to bottom right, rgba(149,213,178,0.4), rgba(45,106,79,0.1));
  transform: rotate(3deg);
}
.gl-hero-img-wrap::after {
  background: linear-gradient(to top right, rgba(45,106,79,0.05), rgba(149,213,178,0.2));
  transform: rotate(-3deg);
}
.gl-hero-img-wrap img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2rem;
  box-shadow: 0 20px 40px rgba(45,106,79,0.15);
}
.gl-hero-badge {
  position: absolute;
  bottom: -16px;
  left: -16px;
  z-index: 2;
  background: #fff;
  border-radius: 16px;
  padding: 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.1);
}
.gl-hero-badge-icon {
  width: 40px; height: 40px;
  background: #D8F3DC;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
}
.gl-hero-badge-icon svg { width: 20px; height: 20px; color: var(--gl-primary); }
.gl-hero-badge-text strong {
  display: block;
  font-family: var(--gl-font-heading);
  font-weight: 600; font-size: 14px;
  color: var(--gl-primary-dark);
}
.gl-hero-badge-text span {
  font-size: 12px; color: var(--gl-text-light);
}

/* Newsletter CF7 form — force horizontal layout */
.wpcf7 form .gl-newsletter-form,
.gl-newsletter-form{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  gap:12px!important;
  max-width:480px!important;
  margin:0 auto!important;
  align-items:stretch!important;
}
.gl-newsletter-form p{display:contents!important}
.gl-newsletter-form br{display:none!important}
.gl-newsletter-form .wpcf7-form-control-wrap{flex:1!important;display:block!important}
.gl-newsletter-form input.wpcf7-form-control[type="email"]{
  width:100%!important;
  padding:16px 24px!important;
  border-radius:9999px!important;
  border:1px solid var(--gl-border)!important;
  background:var(--gl-white)!important;
  font-size:14px!important;
  font-family:var(--gl-font-body)!important;
  height:52px!important;
  box-sizing:border-box!important;
}
.gl-newsletter-form input.wpcf7-submit,
.gl-newsletter-form input[type="submit"]{
  padding:0 32px!important;
  height:52px!important;
  border-radius:9999px!important;
  background:var(--gl-accent)!important;
  color:#fff!important;
  border:none!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:14px!important;
  cursor:pointer!important;
  box-shadow:var(--gl-shadow-glow);
  transition:all .2s;
  white-space:nowrap!important;
  text-transform:none!important;
  letter-spacing:0!important;
  box-sizing:border-box!important;
}
.gl-newsletter-form input[type="submit"]:hover{
  background:var(--gl-accent-hover)!important;
}
.gl-newsletter-form .wpcf7-response-output{
  position:absolute!important;
  bottom:-40px;left:0;right:0;
  text-align:center;
}
.gl-newsletter-form .wpcf7-spinner{display:none!important}
.gl-newsletter-form .wpcf7-not-valid-tip{display:none!important}

/* Mini cart + WooCommerce buttons — pill shape */
.woocommerce-mini-cart__buttons .button.wc-forward,
.woocommerce .button,
.woocommerce a.button,
a.button.wc-forward{
  border-radius:var(--gl-radius-pill)!important;
  text-transform:none!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
}
.woocommerce-mini-cart__buttons .button.wc-forward:not(.checkout){
  background:transparent!important;
  color:var(--gl-primary)!important;
  border:2px solid var(--gl-primary)!important;
}
.woocommerce-mini-cart__buttons .button.wc-forward:not(.checkout):hover{
  background:var(--gl-primary)!important;
  color:#fff!important;
}

/* Cart & Checkout pages */
.woocommerce-cart .page-wrapper,
.woocommerce-checkout .page-wrapper,
.woocommerce-order-received .page-wrapper{background:var(--gl-white)!important}

/* Checkout steps breadcrumb */
.woocommerce-checkout-nav{
  font-family:var(--gl-font-heading)!important;
  font-size:13px!important;
  letter-spacing:0.03em;
}
.woocommerce-checkout-nav .step.is-active{color:var(--gl-primary)!important}

/* Place Order button */
#place_order,.woocommerce #place_order{
  background:var(--gl-accent)!important;
  color:#fff!important;
  border-radius:var(--gl-radius-pill)!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;font-size:16px!important;
  text-transform:none!important;
  box-shadow:var(--gl-shadow-glow)!important;
  border:none!important;
  padding:16px 32px!important;
}
#place_order:hover{background:var(--gl-accent-hover)!important}

/* Cart buttons */
.woocommerce-cart .button[name="update_cart"]{background:var(--gl-accent)!important;color:#fff!important}
.woocommerce-cart .checkout-button,.wc-proceed-to-checkout .button{background:var(--gl-accent)!important}

/* Checkout form labels */
.woocommerce-checkout label,
.woocommerce-checkout .form-row label{
  font-family:var(--gl-font-heading)!important;
  font-weight:500!important;
  color:var(--gl-primary-dark)!important;
  font-size:14px!important;
}
/* Section headings */
.woocommerce-checkout h3,
.woocommerce-order h2,
.woocommerce-order-details__title,
.woocommerce-column__title{
  font-family:var(--gl-font-heading)!important;
  font-weight:700!important;
  color:var(--gl-primary-dark)!important;
  font-size:22px!important;
}

/* Order received — thank you box */
.woocommerce-order .is-well{
  background:var(--gl-white)!important;
  border:1px solid var(--gl-border)!important;
  border-radius:var(--gl-radius-lg)!important;
  padding:32px!important;
}
.woocommerce-thankyou-order-received{
  color:var(--gl-primary)!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:18px!important;
}
.woocommerce-order-overview{list-style:none!important;padding:0!important}
.woocommerce-order-overview li{
  padding:8px 0!important;
  border-bottom:1px solid var(--gl-border)!important;
  font-size:15px!important;
  color:var(--gl-text-muted)!important;
}
.woocommerce-order-overview li strong{color:var(--gl-primary-dark)!important}

/* Order details table */
.woocommerce-table--order-details,
.shop_table{border-collapse:collapse!important}
.woocommerce-table--order-details th{
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:13px!important;
  text-transform:uppercase!important;
  letter-spacing:0.03em;
  color:var(--gl-text-muted)!important;
  padding:12px 0!important;
  border-bottom:2px solid var(--gl-border)!important;
}
.woocommerce-table--order-details td{
  padding:16px 0!important;
  border-bottom:1px solid var(--gl-border)!important;
  font-size:15px!important;
  color:var(--gl-text-muted)!important;
}
.woocommerce-table--order-details tfoot th,
.woocommerce-table--order-details tfoot td{
  font-size:15px!important;
  padding:12px 0!important;
}

/* Billing address */
.woocommerce-customer-details address{
  font-style:normal!important;
  color:var(--gl-text-muted)!important;
  font-size:15px!important;
  line-height:1.7!important;
}

/* Cart table */
.woocommerce-cart .shop_table th{
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:13px!important;
  text-transform:uppercase!important;
  color:var(--gl-text-muted)!important;
}
.woocommerce-cart .shop_table td{
  font-size:15px!important;
  color:var(--gl-text-muted)!important;
  vertical-align:middle!important;
}
.woocommerce-cart .product-name a{
  color:var(--gl-primary-dark)!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:500!important;
}
/* Cart totals box */
.cart_totals h2{
  font-family:var(--gl-font-heading)!important;
  font-weight:700!important;
  font-size:18px!important;
  color:var(--gl-primary-dark)!important;
}
/* Coupon input */
.woocommerce-cart .coupon input[type="text"]{
  border-radius:var(--gl-radius-pill)!important;
  padding:10px 16px!important;
}
.woocommerce-cart .coupon .button{
  border-radius:var(--gl-radius-pill)!important;
}

/* Contact form (CF7) */
.gl-contact-form input[type="text"],
.gl-contact-form input[type="email"],
.gl-contact-form select,
.gl-contact-form textarea{
  width:100%!important;
  padding:14px 18px!important;
  border-radius:var(--gl-radius-md)!important;
  border:1px solid var(--gl-border)!important;
  background:var(--gl-surface)!important;
  font-family:var(--gl-font-body)!important;
  font-size:14px!important;
  color:var(--gl-text)!important;
  box-sizing:border-box!important;
}
.gl-contact-form textarea{min-height:140px!important;resize:vertical!important}
.gl-contact-form select,
.gl-contact-form .wpcf7-select{
  -webkit-appearance:menulist!important;
  appearance:menulist!important;
  border-radius:var(--gl-radius-md)!important;
  height:52px!important;
  padding:0 18px!important;
  font-size:14px!important;
  color:var(--gl-text-muted)!important;
  background:var(--gl-surface)!important;
  border:1px solid var(--gl-border)!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.gl-contact-form input[type="submit"]{
  padding:12px 28px!important;
  border-radius:var(--gl-radius-pill)!important;
  background:var(--gl-accent)!important;
  color:#fff!important;
  border:none!important;
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:14px!important;
  cursor:pointer!important;
  box-shadow:var(--gl-shadow-glow)!important;
  text-transform:none!important;
  width:auto!important;
}
.gl-contact-form input[type="submit"]:hover{background:var(--gl-accent-hover)!important}
.gl-contact-form p{margin-bottom:16px!important}
.gl-contact-form .wpcf7-not-valid-tip{font-size:12px!important;color:#E76F51!important}

/* Page Header (title + breadcrumb bar) */
.page-title-inner{padding:40px 0!important}
.page-title-inner .page-title{
  font-family:var(--gl-font-heading)!important;
  font-weight:700!important;
  color:var(--gl-primary-dark)!important;
  font-size:32px!important;
}
.page-title-inner .breadcrumbs{
  color:var(--gl-text-light)!important;
  font-size:14px!important;
}
.page-title-inner .breadcrumbs a{color:var(--gl-text-light)!important}
.page-title-inner .breadcrumbs a:hover{color:var(--gl-primary)!important}

/* Policy page content styling */
.page-wrapper .entry-content h2{
  font-family:var(--gl-font-heading)!important;
  color:var(--gl-primary-dark)!important;
  font-weight:700!important;
  font-size:24px!important;
  margin-top:32px!important;
}
.page-wrapper .entry-content h3{
  font-family:var(--gl-font-heading)!important;
  color:var(--gl-primary-dark)!important;
  font-weight:600!important;
  font-size:18px!important;
}
.page-wrapper .entry-content p,
.page-wrapper .entry-content li{
  color:var(--gl-text-muted)!important;
  font-size:15px!important;
  line-height:1.7!important;
}
.page-wrapper .entry-content table{
  border-collapse:collapse;
  width:100%;
  margin:20px 0;
}
.page-wrapper .entry-content th{
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  color:var(--gl-primary-dark)!important;
  text-transform:uppercase;
  font-size:13px!important;
  letter-spacing:0.03em;
}

/* Blog archive + single post styling */
.blog .page-title-inner,
.single-post .page-title-inner{
  background-color:#D8F3DC!important;
}
/* Blog post titles */
.blog .post-title a,
.single-post .entry-title{
  font-family:var(--gl-font-heading)!important;
  font-weight:700!important;
  color:var(--gl-primary-dark)!important;
}
.blog .post-title a:hover{color:var(--gl-primary)!important}
/* Blog post meta */
.blog .post-date,.blog .entry-meta,
.single-post .post-date,.single-post .entry-meta{
  color:var(--gl-text-light)!important;
  font-size:13px!important;
}
/* Blog post content */
.single-post .entry-content h2{
  font-family:var(--gl-font-heading)!important;
  color:var(--gl-primary-dark)!important;
  font-weight:700!important;
  font-size:24px!important;
  margin-top:32px!important;
}
.single-post .entry-content h3{
  font-family:var(--gl-font-heading)!important;
  color:var(--gl-primary-dark)!important;
  font-weight:600!important;
}
.single-post .entry-content p,
.single-post .entry-content li{
  color:var(--gl-text-muted)!important;
  font-size:16px!important;
  line-height:1.75!important;
}
/* Blog card style in archive */
.blog .col-inner{
  background:var(--gl-white)!important;
  border-radius:var(--gl-radius-lg)!important;
  border:1px solid rgba(216,243,220,.5)!important;
  overflow:hidden!important;
  transition:transform .25s ease,box-shadow .25s ease!important;
}
.blog .col-inner:hover{
  transform:translateY(-4px)!important;
  box-shadow:var(--gl-shadow-lg)!important;
}
/* Blog featured image */
.blog .box-image img{
  transition:transform .5s ease!important;
}
.blog .col-inner:hover .box-image img{
  transform:scale(1.03)!important;
}
/* Blog sidebar */
.blog-sidebar .widget-title,
.sidebar .widget-title{
  font-family:var(--gl-font-heading)!important;
  font-weight:600!important;
  font-size:16px!important;
  color:var(--gl-primary-dark)!important;
  text-transform:none!important;
}
/* Single post — share buttons */
.single-post .blog-share a{
  border-radius:var(--gl-radius-sm)!important;
}
/* Blog post navigation */
.single-post .post-navigation a{
  color:var(--gl-primary)!important;
  font-family:var(--gl-font-heading)!important;
}

/* WooCommerce variation selects — override pill radius */
.variations select,
.variations td.value select,
table.variations select,
.single-product select{
  border-radius:var(--gl-radius-md)!important;
  -webkit-appearance:menulist!important;
  appearance:menulist!important;
  padding:10px 16px!important;
  height:48px!important;
  font-size:14px!important;
  font-family:var(--gl-font-body)!important;
  color:var(--gl-text)!important;
  background:var(--gl-surface)!important;
  border:1px solid var(--gl-border)!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.variations select:focus{
  border-color:var(--gl-primary)!important;
  box-shadow:0 0 0 3px rgba(45,106,79,.1)!important;
  outline:none!important;
}
/* All selects globally — never pill shape */
select{
  border-radius:var(--gl-radius-md)!important;
  -webkit-appearance:menulist!important;
  appearance:menulist!important;
}

/* Responsive */
@media(max-width:549px){.gl-stat-number{font-size:28px}.product-info .product_title{font-size:24px}.product-info .price{font-size:22px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}