/* Leafcrest Theme Layer v1.0 (Oct 2026)
   Loaded after Customizer CSS (brand.css). Page bodies (.lc-root <style>) load later still,
   so rules that must beat them use an extra parent selector. */

@font-face{font-family:'Inter Fallback';src:local('Arial'),local('Arimo'),local('Liberation Sans');size-adjust:107%;ascent-override:90.5%;descent-override:22.5%;line-gap-override:0%}
@font-face{font-family:'Poppins Fallback';src:local('Arial'),local('Arimo'),local('Liberation Sans');size-adjust:112%;ascent-override:93.6%;descent-override:31.2%;line-gap-override:8.9%}
:root{
  --lc-g9:#12331a;--lc-g8:#1a4320;--lc-g7:#245c27;--lc-g6:#2f7d32;--lc-g5:#3a8c3d;--lc-g2:#d6e6cc;--lc-g1:#e7f0e0;--lc-g0:#f2f7ee;
  --lc-sand0:#fbf9f4;--lc-sand1:#f5f0e6;--lc-sand2:#e9e1d1;
  --lc-ink:#16231a;--lc-body:#4b594e;--lc-muted:#64726a;--lc-line:#e4e8de;--lc-field:#76837a;
  --lc-r-sm:10px;--lc-r:14px;--lc-r-lg:22px;
  --lc-head:'Poppins','Poppins Fallback',-apple-system,BlinkMacSystemFont,sans-serif;
  --lc-sans:'Inter','Inter Fallback',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
}

/* ---------- Footer CTA band ----------
   .lc-cta-in also carries .lc-wrap, and brand.css ".lc-root .lc-wrap{padding:0 24px}" wiped its vertical padding. */
.site-footer .lc-root .lc-cta{background:var(--lc-g7);position:relative;overflow:hidden}
.site-footer .lc-root .lc-cta::after{content:"";position:absolute;right:-120px;top:-160px;width:420px;height:420px;border-radius:50%;background:rgba(255,255,255,.06);pointer-events:none}
.site-footer .lc-root .lc-cta .lc-cta-in{position:relative;z-index:1;max-width:1240px;padding:52px 20px;gap:28px}
.site-footer .lc-root .lc-cta h2{font-size:clamp(24px,2.6vw,32px);font-weight:800;letter-spacing:-.02em;margin-bottom:6px;color:#fff}
.site-footer .lc-root .lc-cta p{font-size:16px;color:rgba(255,255,255,.82)}
.site-footer .lc-root .lc-cta .lc-btn{min-height:50px;padding:14px 24px;border-radius:12px;font-size:15.5px}
.site-footer .lc-root .lc-cta .lc-cta-ic{width:64px;height:64px}
@media(max-width:600px){
  .site-footer .lc-root .lc-cta .lc-cta-in{padding:40px 20px;align-items:flex-start}
  .site-footer .lc-root .lc-cta-l{align-items:flex-start}
  .site-footer .lc-root .lc-cta .lc-cta-ic{width:52px;height:52px}
  .site-footer .lc-root .lc-cta-btns{width:100%}
  .site-footer .lc-root .lc-cta-btns .lc-btn{flex:1 1 auto;justify-content:center}
}
.site-footer .lc-root .lc-cta p{color:rgba(255,255,255,.92)}
.site-footer .lc-root .lc-btn:focus-visible,.site-footer .lc-news button:focus-visible,.lc-wa:focus-visible{outline:3px solid #fff!important;outline-offset:3px}
.site-footer .lc-news form:focus-within{box-shadow:0 0 0 2px #9fd49b}
.site-footer .lc-fcol a:focus-visible{outline:2px solid #9fd49b;outline-offset:2px}

/* ---------- Global type ----------
   Astra falls back to the system stack outside .lc-root; bring header, Woo pages and banners onto Inter. */
body,button,input,select,textarea,.main-header-menu .menu-link,#cookie-notice,#cn-notice-text{font-family:var(--lc-sans)}
.woocommerce h1,.woocommerce h2,.woocommerce h3,.woocommerce-page h1,.woocommerce-page h2,.entry-title,.woocommerce-products-header__title{font-family:var(--lc-head)}

/* ---------- Free-delivery band (leafcrest-store) -> brand deep green ---------- */
#lc-ship-band{background:var(--lc-g9)!important}

/* ---------- Header ---------- */
.ast-primary-header-bar,.ast-primary-header-bar.site-primary-header-wrap{border-bottom:1px solid #e8ece4!important}
.main-header-menu>.menu-item>.menu-link{font-family:var(--lc-sans)!important;font-weight:500!important;color:#2c3a30!important;transition:color .15s}
.main-header-menu>.menu-item:not(.lc-hdr-quote)>.menu-link:hover{color:var(--lc-g6)!important}
.main-header-menu>.current-menu-item:not(.lc-hdr-quote)>.menu-link{color:var(--lc-g6)!important;box-shadow:inset 0 -2px 0 var(--lc-g6)}
#ast-desktop-header .main-header-menu>.menu-item.lc-hdr-quote>.menu-link{padding:10px 18px!important;font-weight:600!important;font-size:14.5px!important;border-radius:10px!important;background:var(--lc-g7)!important;color:#fff!important;line-height:1.2!important;box-shadow:0 6px 14px -8px rgba(36,92,39,.6);transition:background .18s}
#ast-desktop-header .main-header-menu>.menu-item.lc-hdr-quote>.menu-link:hover{background:var(--lc-g8)!important}
#ast-desktop-header .main-header-menu>.menu-item.lc-hdr-quote>.menu-link:focus-visible{outline:2px solid var(--lc-g6)!important;outline-offset:3px}
.main-header-menu>.menu-item:not(.lc-hdr-quote)>.menu-link:focus-visible{outline:2px solid var(--lc-g6)!important;outline-offset:-4px}
.ast-header-account-link:focus-visible,.ast-site-header-cart .cart-container:focus-visible,.menu-toggle:focus-visible{outline:2px solid var(--lc-g6)!important;outline-offset:2px}
#ast-desktop-header .site-branding,#ast-desktop-header .custom-logo-link{flex-shrink:0}
@media(min-width:922px) and (max-width:960px){#ast-desktop-header .custom-logo{max-width:130px!important}}
@media(min-width:922px) and (max-width:960px),(min-width:1000px) and (max-width:1060px){.site-header .main-header-menu>.menu-item:not(.lc-hdr-quote)>.menu-link{padding-left:6px!important;padding-right:6px!important}}
@media(min-width:1000px) and (max-width:1150px){
  .site-header .main-header-menu>.menu-item>.menu-link{font-size:15px!important;padding-left:8px!important;padding-right:8px!important}
  #ast-desktop-header .main-header-menu>.menu-item.lc-hdr-quote>.menu-link{padding:9px 14px!important}
}
@media(min-width:922px) and (max-width:999px){
  #ast-desktop-header .main-header-menu>.menu-item.lc-hdr-quote>.menu-link{padding:8px 12px!important;font-size:13.5px!important}
}
/* account + cart: same 42px rounded hit area, ink icons, brand badge */
.ast-header-account-wrap .ast-header-account-link{display:flex!important;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;transition:background .15s}
.ast-header-account-wrap .ast-header-account-link:hover{background:var(--lc-g0)}
.ast-header-account-wrap .ast-header-account-link svg{width:21px!important;height:21px!important;fill:#2c3a30!important}
.ast-header-account-wrap .ast-header-account-link svg path,.ast-header-account-wrap .ast-header-account-link svg circle{fill:#2c3a30!important}
.ast-site-header-cart.ast-menu-cart-outline .ast-addon-cart-wrap,.ast-site-header-cart .ast-addon-cart-wrap{border:0!important;border-radius:12px!important;padding:10px!important;background:transparent!important;transition:background .15s}
.ast-site-header-cart .cart-container:hover .ast-addon-cart-wrap{background:var(--lc-g0)!important}
.ast-site-header-cart .ast-icon svg,.ast-site-header-cart .ast-icon-shopping-bag svg{fill:#2c3a30!important;width:22px!important;height:22px!important}
.ast-site-header-cart .ast-icon-shopping-bag::after,.ast-icon-shopping-bag::after{font-family:var(--lc-sans)!important;font-weight:700!important;font-size:10.5px!important;background:var(--lc-g7)!important;color:#fff!important;min-width:18px!important;height:18px!important;line-height:18px!important;border-radius:9px!important;top:-7px!important;right:-9px!important;box-shadow:0 0 0 2px #fff}
.ast-icon-shopping-bag[data-cart-total="0"]::after{display:none!important}
/* mobile header: keyed on Astra's body class (it switches at its own breakpoint, incl. exactly 922px) */
.ast-header-break-point #ast-mobile-header .ast-primary-header-bar{min-height:64px!important}
.ast-header-break-point #ast-mobile-header .custom-logo,.ast-header-break-point #ast-mobile-header .custom-logo-link img{max-height:38px!important;width:auto!important}
.ast-header-break-point #ast-mobile-header .menu-toggle{width:44px;height:44px;display:flex!important;align-items:center;justify-content:center;border:0!important;border-radius:12px!important;background:transparent!important;outline:none}
.ast-header-break-point #ast-mobile-header .menu-toggle:focus-visible{box-shadow:0 0 0 2px var(--lc-g6)}
.ast-header-break-point #ast-mobile-header .menu-toggle svg{fill:#2c3a30!important;width:22px;height:22px}
.ast-header-break-point .ast-mobile-header-content{border-top:1px solid #e8ece4;box-shadow:0 24px 30px -20px rgba(18,51,26,.28)}
.ast-header-break-point .ast-mobile-header-content .main-header-menu,.ast-header-break-point .ast-mobile-header-content .main-header-menu .menu-item{background:#fff!important}
.ast-header-break-point .ast-mobile-header-content .main-header-menu>.menu-item>.menu-link{padding:0 20px!important;font:500 16px/54px var(--lc-sans)!important;background:#fff!important;color:#2c3a30!important;border-bottom:1px solid #eef2ea!important;box-shadow:none!important}
.ast-header-break-point .ast-mobile-header-content .main-header-menu>.current-menu-item>.menu-link{color:var(--lc-g6)!important;font-weight:600!important}
.ast-header-break-point .ast-mobile-header-content .main-header-menu>.menu-item.lc-hdr-quote{padding:16px 20px 22px!important;margin:0!important;width:100%!important;border:0!important}
.ast-header-break-point .ast-mobile-header-content .main-header-menu>.menu-item.lc-hdr-quote>.menu-link{display:flex!important;justify-content:center;align-items:center;min-height:50px!important;padding:14px 20px!important;line-height:1.2!important;border:0!important;border-radius:12px!important;background:var(--lc-g7)!important;color:#fff!important;font-weight:600!important;margin:0!important;width:100%!important}

body:not(.ast-header-break-point) .main-header-menu .lc-mob-only{display:none!important}
.ast-header-break-point .ast-mobile-header-content .main-header-menu{flex-direction:column!important;flex-wrap:nowrap!important}
.ast-header-break-point .ast-mobile-header-content .main-navigation,.ast-header-break-point .ast-mobile-header-content .ast-builder-menu,.ast-header-break-point .ast-mobile-header-content .main-header-menu>.menu-item{width:100%}

/* ---------- Floating buttons ---------- */
#ast-scroll-top{display:none!important} /* the WhatsApp button owns this corner */
.lc-wa{bottom:24px!important;transition:transform .25s ease!important}
.lc-wa:hover{transform:scale(1.07)}
body.lc-consent-open .lc-wa{transform:translateY(calc(-1 * var(--lc-cb-h,0px) - 8px))}
@media(max-width:600px){
  .lc-wa{right:16px!important;bottom:18px!important;width:52px!important;height:52px!important;background-size:28px 28px!important}
}
@media(max-width:921px){.site-footer .lc-root .lc-foot-bottom{padding-bottom:92px!important}}

/* ---------- Cookie consent (leafcrest-theme includes/consent.php) ---------- */
.lc-consent{position:fixed;left:0;right:0;bottom:0;z-index:99999;padding:0 16px 16px;pointer-events:none}
.lc-consent[hidden]{display:none}
.lc-consent__in{pointer-events:auto;max-width:1208px;margin:0 auto;display:flex;align-items:center;gap:28px;background:#fff;border:1px solid var(--lc-line);border-radius:18px;padding:20px 24px;box-shadow:0 24px 60px -20px rgba(18,51,26,.45);font-family:var(--lc-sans)}
.lc-consent__txt{flex:1;min-width:0}
.lc-consent__title{margin:0 0 4px!important;font:700 16px/1.3 var(--lc-head);color:var(--lc-ink)}
.lc-consent__txt p:not(.lc-consent__title){margin:0!important;font-size:14px;line-height:1.55;color:var(--lc-body)}
.lc-consent__txt a{color:var(--lc-g7);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.lc-consent__btns{display:flex;gap:10px;flex:0 0 auto}
.lc-consent__btn{min-height:48px;min-width:132px;padding:12px 22px!important;border:0!important;border-radius:12px!important;font:600 15px/1 var(--lc-sans)!important;color:#fff!important;cursor:pointer;box-shadow:none!important;transition:background .15s}
.lc-consent__btn--accept{background:var(--lc-g7)!important}
.lc-consent__btn--accept:hover{background:var(--lc-g8)!important}
.lc-consent__btn--reject{background:var(--lc-ink)!important}
.lc-consent__btn--reject:hover{background:#000!important}
.lc-consent__btn:focus-visible,.lc-consent__txt a:focus-visible{outline:3px solid var(--lc-g6)!important;outline-offset:3px}
@media(max-width:760px){
  .lc-consent{padding:0 10px 10px}
  .lc-consent__in{flex-direction:column;align-items:stretch;gap:14px;padding:16px 16px 14px;border-radius:16px}
  .lc-consent__txt p:not(.lc-consent__title){font-size:13.5px}
  .lc-consent__btns{display:grid;grid-template-columns:1fr 1fr}
  .lc-consent__btn{min-width:0}
}
.site-footer .lc-cookie-settings{background:none!important;border:0!important;box-shadow:none!important;padding:4px 2px!important;margin-left:6px;color:#cfe6cd!important;font:inherit;font-size:12.5px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.site-footer .lc-cookie-settings:hover{color:#fff!important}
.site-footer .lc-cookie-settings:focus-visible{outline:2px solid #9fd49b;outline-offset:2px}

/* ---------- Cookie banner polish (legacy Cookie Notice, inactive) ---------- */
#cookie-notice,#cn-notice-text,#cookie-notice .cn-button{font-family:var(--lc-sans)!important}
#cn-notice-text{font-size:13.5px!important;line-height:1.5!important}
#cn-accept-cookie,#cookie-notice .cn-button{min-height:40px;padding:10px 26px!important;border-radius:10px!important}

/* ---------- Footer ---------- */
.site-footer .lc-footer{padding-top:64px}
.site-footer .lc-foot-grid{max-width:1240px}
.site-footer .lc-foot-brand .lc-logo{display:inline-flex;align-items:center;gap:11px;font-size:22px}
.site-footer .lc-foot-brand .lc-logo img{width:40px;height:40px;border-radius:50%;box-shadow:0 0 0 2px rgba(255,255,255,.08)}
.site-footer .lc-fcol h4,.site-footer .lc-root .lc-fcol h2{color:#fff;font-family:var(--lc-sans);font-size:14px;font-weight:700;line-height:1.3;letter-spacing:.01em;margin:0 0 18px}
.site-footer .lc-foot-brand>p:empty{display:none}
.site-footer .lc-fcol a{transition:color .15s}
.site-footer .lc-fcontact ul{gap:12px}
.site-footer .lc-fcontact li{margin-bottom:0!important;align-items:flex-start;gap:10px;line-height:1.5}
.site-footer .lc-fcontact li::before{content:"";flex:0 0 16px;height:16px;margin-top:2px;background:center/contain no-repeat}
.site-footer .lc-fcontact li:nth-child(1)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238fc48f' stroke-width='1.8'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M4 7l8 6 8-6' stroke-linecap='round'/%3E%3C/svg%3E")}
.site-footer .lc-fcontact li:nth-child(2)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238fc48f' stroke-width='1.8'%3E%3Cpath d='M5 4h4l2 5-3 2a12 12 0 0 0 5 5l2-3 5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2Z' stroke-linejoin='round'/%3E%3C/svg%3E")}
.site-footer .lc-fcontact li:nth-child(3)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%238fc48f'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15l-1.3 4.7 4.8-1.3A10 10 0 1 0 12 2Zm0 18.2c-1.6 0-3.1-.4-4.4-1.2l-.3-.2-2.9.8.8-2.8-.2-.3A8.2 8.2 0 1 1 12 20.2Zm4.5-6.1c-.2-.1-1.5-.7-1.7-.8-.2-.1-.4-.1-.6.1l-.8 1c-.1.2-.3.2-.5.1-.7-.3-2.2-1-3-2.7-.2-.4.2-.4.6-1.2.1-.1 0-.3 0-.4l-.8-1.9c-.2-.5-.4-.4-.6-.4h-.5c-.2 0-.4.1-.6.3-.2.2-.8.8-.8 2s.8 2.3.9 2.5c.1.2 1.7 2.6 4.1 3.6 1.5.7 2.1.7 2.9.6.5-.1 1.5-.6 1.7-1.2.2-.6.2-1.1.2-1.2-.1-.2-.3-.2-.5-.3Z'/%3E%3C/svg%3E")}
.site-footer .lc-fcontact li:nth-child(4)::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238fc48f' stroke-width='1.8'%3E%3Cpath d='M12 21s-7-6-7-11a7 7 0 0 1 14 0c0 5-7 11-7 11Z' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")}
.site-footer .lc-fcontact li>svg{display:none}
.site-footer .lc-fcontact a{color:#a9bcac;white-space:nowrap}
.site-footer .lc-fcontact a:hover{color:#fff}
.site-footer .lc-news form{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:12px!important;overflow:hidden}
.site-footer .lc-news input,.site-footer .lc-news input[type=email]{font-size:16px!important;background:transparent!important;border:0!important;color:#fff!important;box-shadow:none!important;border-radius:0!important;padding:12px 14px!important;min-height:46px}
.site-footer .lc-news input::placeholder{color:#8fa493!important}
.site-footer .lc-foot-bottom{padding:22px 24px!important;color:#8fa493!important;font-size:12.5px;line-height:1.6}
@media(min-width:601px) and (max-width:960px){
  .site-footer .lc-foot-grid{grid-template-columns:repeat(3,1fr)!important;gap:36px 28px}
  .site-footer .lc-foot-brand{grid-column:1/-1}
  .site-footer .lc-news{grid-column:1/-1;max-width:440px}
}
@media(max-width:600px){
  .site-footer .lc-footer{padding-top:48px}
  .site-footer .lc-foot-grid{grid-template-columns:1fr 1fr!important;gap:32px 20px;padding-left:20px;padding-right:20px;padding-bottom:36px}
  .site-footer .lc-foot-brand,.site-footer .lc-fcontact,.site-footer .lc-news{grid-column:1/-1}
  .site-footer .lc-fcol:not(.lc-fcontact) ul{gap:0}
  .site-footer .lc-fcol:not(.lc-fcontact) ul a{display:block;padding:9px 0;line-height:1.35}
  .site-footer .lc-fcontact a{display:inline-block;padding:6px 0;margin:-6px 0}
}
.site-footer .lc-root .lc-cta .lc-cta-ic{display:none}

/* =====================================================================
   SHOP / CATEGORY
   ===================================================================== */
.post-type-archive-product .woocommerce-products-header,.tax-product_cat .woocommerce-products-header{padding:0 0 30px;margin-bottom:34px;border-bottom:1px solid var(--lc-line)}
.woocommerce-products-header__title.page-title{font-family:var(--lc-head)!important;font-weight:800!important;letter-spacing:-.025em;color:var(--lc-ink)!important;font-size:clamp(32px,4vw,48px)!important;line-height:1.1!important;margin:6px 0 14px!important}
.woocommerce-products-header .page-description,.woocommerce-products-header .term-description{max-width:780px;font-size:16.5px;line-height:1.65;color:var(--lc-body)}
.woocommerce-products-header .page-description a,.woocommerce-products-header .term-description a{color:var(--lc-g7);font-weight:600;text-decoration:underline;text-decoration-color:rgba(47,125,50,.35);text-underline-offset:3px}
.post-type-archive-product .woocommerce-result-count,.post-type-archive-product .woocommerce-ordering,.tax-product_cat .woocommerce-result-count,.tax-product_cat .woocommerce-ordering{display:none!important}
.woocommerce-breadcrumb{font-size:13.5px!important;color:var(--lc-muted)!important}
.woocommerce-breadcrumb a{color:var(--lc-muted)!important}
.woocommerce-breadcrumb a:hover{color:var(--lc-g6)!important}

/* product cards (shop, category, related) */
.woocommerce ul.products li.product .ast-woo-product-category{display:none!important}
.woocommerce ul.products li.product{background:#fff;border:1px solid var(--lc-line);border-radius:var(--lc-r-lg);padding:14px 14px 20px!important;display:flex!important;flex-direction:column;transition:box-shadow .25s,transform .25s,border-color .25s}
.woocommerce ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 26px 46px -30px rgba(30,70,30,.38);border-color:#d3e2cb}
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap{border-radius:14px;overflow:hidden;margin-bottom:16px}
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap img{margin:0!important;border-radius:14px;transition:transform .5s}
.woocommerce ul.products li.product:hover .astra-shop-thumbnail-wrap img{transform:scale(1.03)}
.woocommerce ul.products li.product .astra-shop-summary-wrap{display:flex;flex-direction:column;flex:1;padding:0 6px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--lc-head)!important;font-size:19px!important;font-weight:700!important;letter-spacing:-.01em;color:var(--lc-ink)!important;margin:0 0 6px!important}
.woocommerce ul.products li.product .price{font-family:var(--lc-head);font-size:20px!important;font-weight:700;color:var(--lc-ink)!important;margin-bottom:2px!important}
.woocommerce ul.products li.product .price .woocommerce-Price-amount{color:var(--lc-ink)!important}
.woocommerce ul.products li.product .price .woocommerce-price-suffix,.woocommerce div.product p.price .woocommerce-price-suffix{font-family:var(--lc-sans);font-size:13px!important;font-weight:500;color:var(--lc-muted)!important}
.lc-loop-pack,.woocommerce ul.products li.product .lc-loop-pack{font-size:13.5px;color:var(--lc-muted);margin:2px 0 16px}
.woocommerce ul.products li.product .button{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:48px;margin-top:auto!important;border-radius:12px!important;font-weight:600!important;font-size:15px!important;background:var(--lc-g7)!important;color:#fff!important}
.woocommerce ul.products li.product .button:hover{background:var(--lc-g8)!important}
.woocommerce ul.products li.product .button:focus-visible,.woocommerce ul.products li.product a.added_to_cart:focus-visible,.woocommerce div.product form.cart .single_add_to_cart_button:focus-visible,.wc-block-components-button:focus-visible{outline:3px solid var(--lc-g6)!important;outline-offset:3px!important}
.woocommerce ul.products li.product a.added_to_cart{display:inline-block;margin-top:10px;font-weight:600;font-size:14px;color:var(--lc-g7)!important;text-decoration:underline;text-underline-offset:3px}
@media(min-width:922px){
  .woocommerce ul.products.columns-4{grid-template-columns:repeat(3,minmax(0,1fr))!important;column-gap:28px!important;row-gap:32px!important}
}
@media(max-width:921px) and (min-width:601px){
  .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
}
@media(max-width:600px){
  .woocommerce-products-header .page-description p,.woocommerce-products-header .term-description p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .woocommerce ul.products{grid-template-columns:1fr!important;row-gap:14px!important}
  .woocommerce ul.products li.product{display:grid!important;grid-template-columns:128px 1fr;gap:0 14px;align-items:center;padding:12px!important;margin:0!important;width:auto!important}
  .woocommerce ul.products li.product .astra-shop-thumbnail-wrap{margin:0;grid-row:1/3}
  .woocommerce ul.products li.product .astra-shop-summary-wrap{padding:0}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:17px!important}
  .woocommerce ul.products li.product .price{font-size:18px!important}
  .woocommerce ul.products li.product .lc-loop-pack{font-size:12.5px;margin:2px 0 10px}
  .woocommerce-products-header p.lc-open{display:block;-webkit-line-clamp:unset;overflow:visible}
  .lc-more,.woocommerce-products-header .lc-more,.woocommerce-products-header .lc-more:hover,.woocommerce-products-header .lc-more:focus{background:none!important;border:0!important;box-shadow:none!important;padding:10px 0!important;min-height:44px;color:var(--lc-g7)!important;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
  .woocommerce-products-header .lc-more:focus-visible{outline:2px solid var(--lc-g6)!important;outline-offset:2px;border-radius:6px}
  .woocommerce ul.products li.product .button{min-height:44px;font-size:14.5px!important;padding:8px 12px!important}
}

/* =====================================================================
   SINGLE PRODUCT
   ===================================================================== */
@media(max-width:1200px){.single-product #primary{margin-top:28px!important;margin-bottom:56px!important}}
@media(max-width:600px){.single-product #primary{margin-top:14px!important;margin-bottom:44px!important}}
.single-product .summary .single-product-category{display:none!important}
.single-product .product_meta{display:none!important}
.single-product .summary .woocommerce-breadcrumb{margin-bottom:14px!important}
.woocommerce div.product .product_title{font-family:var(--lc-head)!important;font-size:clamp(28px,2.8vw,38px)!important;font-weight:800!important;letter-spacing:-.025em;line-height:1.1!important;color:var(--lc-ink)!important;margin:0 0 12px!important}
.woocommerce div.product p.price{font-family:var(--lc-head);font-size:30px!important;font-weight:700;color:var(--lc-ink)!important;margin:0 0 18px!important;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.woocommerce div.product p.price .woocommerce-Price-amount{color:var(--lc-ink)!important}
.woocommerce div.product p.price .woocommerce-price-suffix{font-size:15px!important}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:16px;line-height:1.65;color:var(--lc-body);padding-bottom:20px;border-bottom:1px solid var(--lc-line)}
.woocommerce div.product .woocommerce-product-details__short-description p{margin-bottom:10px}
.woocommerce div.product .woocommerce-product-details__short-description p:last-child{margin-bottom:0;font-weight:600;color:var(--lc-ink)}
/* quantity + add to cart */
.woocommerce div.product form.cart{display:flex!important;align-items:stretch;gap:12px;margin:22px 0 14px!important;flex-wrap:wrap}
.woocommerce div.product form.cart::before,.woocommerce div.product form.cart::after{display:none!important}
.woocommerce div.product form.cart .quantity{margin:0!important;float:none!important;display:flex}
.woocommerce div.product form.cart .quantity input.qty{width:88px!important;height:56px!important;border:1.5px solid #d9e2d3!important;border-radius:12px!important;font:600 18px/1 var(--lc-sans)!important;color:var(--lc-ink)!important;background:#fff!important;text-align:center}
.woocommerce div.product form.cart .quantity input.qty:focus{border-color:var(--lc-g6)!important;outline:none;box-shadow:0 0 0 3px rgba(47,125,50,.15)}
.woocommerce div.product form.cart .single_add_to_cart_button{flex:1 1 220px;max-width:none;height:56px!important;line-height:1!important;padding:0 28px!important;font-size:16.5px!important;font-weight:600!important;border-radius:12px!important;background:var(--lc-g7)!important;color:#fff!important;float:none!important;box-shadow:0 10px 22px -12px rgba(36,92,39,.7)}
.woocommerce div.product form.cart .single_add_to_cart_button:hover{background:var(--lc-g8)!important}
/* express pay: keep Stripe (Apple/Google Pay, Link) under a label; PayPal stays in cart & checkout */
.single-product .summary #wc-stripe-express-checkout-element{margin:6px 0 8px!important}
.single-product .summary .ppc-button-wrapper,.single-product .summary .ppcp-messages{display:none!important}
/* notices (added to cart, errors) */
.woocommerce-notices-wrapper .woocommerce-message,.woocommerce-notices-wrapper .woocommerce-info{background:var(--lc-g0)!important;border:1px solid #dbe8d3!important;border-radius:14px!important;color:var(--lc-ink)!important;font-family:var(--lc-sans)}
.woocommerce-notices-wrapper .woocommerce-error{background:#fdf2f2!important;border:1px solid #f0c9c9!important;border-radius:14px!important;color:#7a1f1f!important}
.woocommerce-notices-wrapper [tabindex="-1"]:focus{outline:none}
.woocommerce-notices-wrapper .woocommerce-message .button{border-radius:12px!important;min-height:44px}
@media(min-width:601px){.woocommerce-notices-wrapper .woocommerce-message{display:flex;align-items:center;gap:16px}.woocommerce-notices-wrapper .woocommerce-message::before{top:50%!important;transform:translateY(-50%)}.woocommerce-notices-wrapper .woocommerce-message .button{order:2;margin:0 0 0 auto!important;float:none!important;flex:none}}
.woocommerce-no-products-found .woocommerce-info{background:var(--lc-g0)!important;border:1px solid #dbe8d3!important;border-radius:14px!important;color:var(--lc-ink)!important}
/* trust list (leafcrest-theme hook) */
.lc-buy-trust{list-style:none!important;margin:18px 0 0!important;padding:18px 0 0!important;border-top:1px solid var(--lc-line);display:grid;gap:11px}
.lc-buy-trust li{position:relative;padding-left:30px;font-size:14.5px;line-height:1.45;color:var(--lc-body)}
.lc-buy-trust li::before{content:"";position:absolute;left:0;top:0;width:20px;height:20px;background:center/contain no-repeat}
.lc-buy-trust li.i-truck::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f7d32' stroke-width='1.8'%3E%3Cpath d='M3 6h11v9H3zM14 9h4l3 3v3h-7z' stroke-linejoin='round'/%3E%3Ccircle cx='7' cy='18' r='1.7'/%3E%3Ccircle cx='17' cy='18' r='1.7'/%3E%3C/svg%3E")}
.lc-buy-trust li.i-box::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f7d32' stroke-width='1.8'%3E%3Cpath d='M12 3l8 4.5v9L12 21l-8-4.5v-9L12 3Z' stroke-linejoin='round'/%3E%3Cpath d='M4 7.5l8 4.5 8-4.5M12 12v9' stroke-linejoin='round'/%3E%3C/svg%3E")}
.lc-buy-trust li.i-lock::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f7d32' stroke-width='1.8'%3E%3Crect x='4' y='10' width='16' height='11' rx='2.5'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3' stroke-linecap='round'/%3E%3C/svg%3E")}
/* gallery */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,.woocommerce div.product div.images .flex-viewport{border-radius:20px;overflow:hidden;background:#fff}
.woocommerce div.product div.images .woocommerce-product-gallery__image img{aspect-ratio:1/1;object-fit:cover;width:100%}
.woocommerce div.product div.images .flex-viewport{aspect-ratio:1/1;height:auto!important}
.woocommerce div.product div.images .flex-control-thumbs{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px!important}
.woocommerce div.product div.images .flex-control-thumbs li{width:auto!important;margin:0!important;float:none!important;padding:0!important}
.woocommerce div.product div.images .flex-control-thumbs li img{opacity:1!important;border-radius:12px;border:2px solid transparent;aspect-ratio:1/1;object-fit:cover;transition:border-color .15s}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce div.product div.images .flex-control-thumbs li img:hover{border-color:var(--lc-g6)}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger{background:rgba(255,255,255,.92)!important;border-radius:50%!important;box-shadow:0 4px 14px rgba(0,0,0,.12)}
@media(max-width:600px){.woocommerce div.product div.images .woocommerce-product-gallery__trigger{display:none!important}}
/* tabs */
.woocommerce div.product .woocommerce-tabs{margin-top:56px}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex!important;gap:4px;border-bottom:1px solid var(--lc-line)!important;padding:0!important;margin:0 0 30px!important;overflow-x:auto}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{display:block!important;background:none!important;border:0!important;margin:0!important;padding:0!important;border-radius:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:14px 4px!important;margin-right:20px;font-family:var(--lc-sans);font-weight:600!important;font-size:16px;color:var(--lc-muted)!important;border-bottom:2px solid transparent}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--lc-ink)!important;border-bottom-color:var(--lc-g6)}
.woocommerce div.product .woocommerce-tabs .panel>h2:first-child{display:none}
.single-product #tab-description{max-width:820px}
.single-product #tab-description p,.single-product #tab-description li{font-size:16.5px;line-height:1.7;color:var(--lc-body)}
.single-product #tab-description h2,.single-product #tab-description h3{font-family:var(--lc-head)!important;font-size:22px!important;font-weight:700!important;letter-spacing:-.015em;color:var(--lc-ink)!important;margin:30px 0 12px!important}
.single-product #tab-description ul{padding-left:0;margin-left:0;list-style:none}
.single-product #tab-description ul li{position:relative;padding-left:28px;margin-bottom:8px}
.single-product #tab-description ul li::before{content:"";position:absolute;left:0;top:6px;width:18px;height:18px;border-radius:50%;background:var(--lc-g1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f7d32' stroke-width='3'%3E%3Cpath d='M6 12l4 4 8-8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}
.single-product #tab-description a{color:var(--lc-g7);font-weight:600;text-decoration:underline;text-decoration-color:rgba(47,125,50,.35);text-underline-offset:3px}
.single-product #tab-description table{width:100%;border-collapse:separate!important;border-spacing:0;border:1px solid var(--lc-line)!important;border-radius:16px;overflow:hidden;margin:22px 0 28px;font-size:15px}
.single-product #tab-description table td,.single-product #tab-description table th{border:0!important;border-bottom:1px solid var(--lc-line)!important;padding:13px 18px!important;text-align:left;vertical-align:top}
.single-product #tab-description table tr:last-child td{border-bottom:0!important}
.single-product #tab-description table tr:nth-child(odd) td{background:var(--lc-sand0)}
.single-product #tab-description table td:first-child{width:38%;font-weight:600;color:var(--lc-ink)}
/* related */
.single-product .related.products{margin-top:72px;padding-top:56px;border-top:1px solid var(--lc-line)}
.single-product .related.products>h2{font-family:var(--lc-head)!important;font-size:clamp(24px,2.4vw,30px)!important;font-weight:800!important;letter-spacing:-.02em;color:var(--lc-ink)!important;margin-bottom:24px!important}
@media(min-width:922px){
  .single-product .related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important}
  .single-product .related.products ul.products li.product{display:grid!important;grid-template-columns:180px 1fr;gap:0 22px;align-items:center}
  .single-product .related.products ul.products li.product .astra-shop-thumbnail-wrap{margin:0;grid-row:1/3}
}
@media(max-width:600px){
  .woocommerce div.product form.cart .quantity input.qty{width:76px!important;height:54px!important}
  .woocommerce div.product form.cart .single_add_to_cart_button{height:54px!important;max-width:none;flex:1 1 0;min-width:0;padding:0 16px!important}
  .woocommerce div.product div.images .flex-control-thumbs{gap:8px}
  .woocommerce div.product .woocommerce-tabs{margin-top:40px}
  .single-product #tab-description table td{padding:11px 13px!important;font-size:14px}
}

/* =====================================================================
   CONTENT PAGES (elementor_header_footer + .lc-root)
   Astra boxes the page content at 1240px with 20px padding, so banners and tinted
   sections stopped short of the screen edges. Every section carries its own .lc-wrap. */
.page-template-elementor_header_footer #content>.ast-container{max-width:none!important;padding-left:0!important;padding-right:0!important}
.page-template-elementor_header_footer .site-content .entry-content>.lc-root{max-width:none}
/* align page content with the header logo (content box 1200 starting where the logo starts) */
.site-content .lc-root .lc-wrap,.site-footer .lc-root .lc-wrap{max-width:1240px;padding-left:20px;padding-right:20px}
/* brand.css ".lc-root .lc-wrap{padding:0 24px}" also zeroed the footer grid's bottom padding */
.site-footer .lc-root .lc-wrap.lc-foot-grid{padding-bottom:48px}
/* readable muted text on light backgrounds (old #8a978c was ~3:1) */
.site-content .lc-root{--muted:#64726a}
.site-content .lc-root h1,.site-content .lc-root h2{text-wrap:balance}
/* banner: page-specific height on phones */
@media(max-width:600px){.site-content .lc-root .lc-phero{padding:54px 0 46px!important}}
.site-content .lc-root .lc-phero{background:linear-gradient(115deg,rgba(15,45,22,.93) 0%,rgba(22,64,31,.84) 42%,rgba(36,92,39,.74) 100%),url("/wp-content/uploads/2026/07/leafcrest-banner.jpg") center/cover no-repeat!important}
.site-content .lc-root .lc-phero p{color:#fff;max-width:620px;text-wrap:balance}
@media(min-width:561px) and (max-width:820px){.site-content .lc-root .lc-vals.lc-vals-6{grid-template-columns:repeat(2,1fr)}}
.site-content .lc-root .lc-cinfo a{display:inline-block;padding:10px 0;margin:-10px 0}
/* long-form pages (legal, FAQ): .lc-wrap.lc-prose lost its 840px reading width to .lc-root .lc-wrap */
.site-content .lc-root .lc-wrap.lc-prose{max-width:720px}
.site-content .lc-root .lc-wrap>.lc-prose{max-width:640px}
.site-content .lc-root .lc-prose p:not(.updated),.site-content .lc-root .lc-prose li{font-size:16.5px;line-height:1.75}
.site-content .lc-root .lc-prose li::marker{color:var(--lc-g6)}
.site-content .lc-root .lc-prose .updated{color:#64726a}
/* value cards are not links: no fake hover lift */
.site-content .lc-root div.lc-val:hover{transform:none;box-shadow:none}
/* outline buttons: brand.css's transparent border won; make them visible everywhere */
.site-content .lc-root .lc-btn-outline{border-color:#cfdac8!important;background:#fff;color:var(--lc-g7)!important}
.site-content .lc-root .lc-btn-outline:hover{border-color:var(--lc-g6)!important;background:var(--lc-g0)}

/* ---------- Forms (Fluent: contact + quote) ---------- */
.site-content .lc-root .lc-ffwrap{background:#fff;border:1px solid var(--lc-line);border-radius:22px;padding:32px 30px;box-shadow:0 24px 50px -34px rgba(30,70,30,.35)}
@media(max-width:600px){.site-content .lc-root .lc-ffwrap{padding:22px 18px;border-radius:18px}}
.fluentform input[type=text],.fluentform input[type=email],.fluentform input[type=tel],.fluentform input[type=number],.fluentform textarea,.fluentform select,.fluentform .ff-el-form-control{border:1.5px solid var(--lc-field)!important;border-radius:10px!important;color:var(--lc-ink)!important;background:#fff!important;font-family:var(--lc-sans)!important;font-size:16px!important;min-height:48px}
.fluentform textarea.ff-el-form-control{min-height:140px}
.fluentform .ff-el-form-control:focus{border-color:var(--lc-g6)!important;box-shadow:0 0 0 3px rgba(47,125,50,.15)!important;outline:0}
.fluentform .ff-el-form-control::placeholder{color:#6b7a6e}
.fluentform .ff-el-input--label label{font-family:var(--lc-sans)!important;font-weight:600!important;color:var(--lc-ink)!important}
.fluentform .ff-btn.ff-btn-submit{min-height:50px;padding:14px 30px!important;border-radius:12px!important;font-weight:600!important;font-size:16px!important}
.site-content .lc-root .lc-ffwrap .ff_submit_btn_wrapper{margin-bottom:0}
.fluentform .ff-btn-submit:focus-visible{outline:3px solid var(--lc-g6)!important;outline-offset:3px!important;opacity:1!important}
@media(max-width:600px){.fluentform .ff-btn-submit{width:100%!important}}

/* ---------- FAQ accordions on content pages ---------- */
@media(hover:hover){.site-content .lc-root .lc-faq summary:hover{background:var(--lc-g0)}}
.site-content .lc-root .lc-faq .a{font-size:15.5px}
.site-content .lc-root .lc-faq summary:focus-visible{outline:2px solid var(--lc-g6);outline-offset:-3px}

/* ---------- Size guide table ---------- */
.site-content .lc-root .lc-sg-table{border:0!important}
.site-content .lc-root .lc-sg-table th,.site-content .lc-root .lc-sg-table td{border-left:0!important;border-right:0!important;border-top:0!important}
.site-content .lc-root .lc-sg-table th:first-child,.site-content .lc-root .lc-sg-table td:first-child{position:sticky;left:0;z-index:1;background:#fff;box-shadow:1px 0 0 var(--lc-line)}
.site-content .lc-root .lc-sg-table thead th:first-child{background:var(--soft,#eef5ea);z-index:2}
@media(max-width:1199px){.site-content .lc-root .lc-sg-table th,.site-content .lc-root .lc-sg-table td{padding-left:10px;padding-right:10px}}
@media(min-width:1000px){.site-content .lc-root .lc-sg-small{display:none}}
/* size guide: one left edge for cards, table and text */
.page-id-255 .site-content .lc-root .lc-wrap.lc-prose{max-width:1240px}
.page-id-255 .site-content .lc-root .lc-wrap.lc-prose>*{max-width:680px}
.site-content .lc-root .lc-sg-inch,.site-content .lc-root .lc-sg-body li span{color:#64726a}

/* =====================================================================
   CART / CHECKOUT / ACCOUNT (WooCommerce blocks)
   ===================================================================== */
/* page-top gap under the header below 1200px (Astra sets #primary margin 0) */
@media(max-width:1200px){body:not(.page-template-elementor_header_footer).ast-plain-container.ast-no-sidebar #primary{margin-top:36px!important;margin-bottom:56px!important}}
@media(max-width:600px){body:not(.page-template-elementor_header_footer).ast-plain-container.ast-no-sidebar #primary{margin-top:22px!important;margin-bottom:44px!important}}
/* known alignwide -20px shift also happens between 922 and 1200px */
@media(max-width:1200px){.entry-content>.wp-block-woocommerce-checkout.alignwide,.entry-content>.wp-block-woocommerce-cart.alignwide,.entry-content[data-ast-blocks-layout]>.wp-block-woocommerce-checkout.alignwide,.entry-content[data-ast-blocks-layout]>.wp-block-woocommerce-cart.alignwide{margin-left:0!important;margin-right:0!important}}
.woocommerce-cart .entry-title,.woocommerce-checkout .entry-title,.woocommerce-account .entry-title{font-family:var(--lc-head)!important;font-weight:800!important;letter-spacing:-.025em;color:var(--lc-ink)!important}
/* type */
.wc-block-cart,.wc-block-checkout,.wc-block-components-sidebar,.wc-block-components-totals-item,.wc-block-components-product-name,.wc-block-components-checkbox__label,.wc-block-components-radio-control__label,.wc-block-components-title,.wc-block-components-checkout-step__title,.wc-block-components-order-summary{font-family:var(--lc-sans)!important}
.wc-block-components-checkout-step__title,.wc-block-components-title.wc-block-components-title{font-family:var(--lc-head)!important;font-weight:700!important;color:var(--lc-ink)!important;letter-spacing:-.01em}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{font-family:var(--lc-head)!important;font-weight:700!important;color:var(--lc-ink)!important}
.wc-block-components-product-name{font-weight:600!important;color:var(--lc-ink)!important;text-decoration:none!important}
/* inputs */
.wc-block-components-text-input input[type=email],.wc-block-components-text-input input[type=text],.wc-block-components-text-input input[type=tel],.wc-block-components-text-input input[type=number],.wc-block-components-text-input input[type=password],.wc-blocks-components-select .wc-blocks-components-select__select,.wc-block-components-textarea{border:1.5px solid var(--lc-field)!important;border-radius:10px!important;background:#fff!important;color:var(--lc-ink)!important}
.wc-block-components-text-input input:focus,.wc-blocks-components-select .wc-blocks-components-select__select:focus,.wc-block-components-textarea:focus{border-color:var(--lc-g6)!important;box-shadow:0 0 0 3px rgba(47,125,50,.15)!important;outline:0!important}
.wc-block-components-text-input.is-active label,.wc-block-components-text-input label{color:#5b6a5e!important}
/* radios / checkboxes / option cards */
.wc-block-components-radio-control__input:not(:checked),.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:not(:checked){border-color:var(--lc-field)!important}
.wc-block-components-radio-control__input:checked{border-color:var(--lc-g6)!important}
.wc-block-components-radio-control__input:checked::before{background:var(--lc-g6)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked{background:var(--lc-g6)!important;border-color:var(--lc-g6)!important}
.wc-block-components-checkbox .wc-block-components-checkbox__mark{fill:#fff!important}
.wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,.wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted{box-shadow:inset 0 0 0 2px var(--lc-g6)!important;border-radius:12px!important}
.wc-block-components-radio-control--highlight-checked{border-radius:12px!important}
/* buttons */
.wc-block-components-button:not(.is-link),.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{border-radius:12px!important;font-weight:600!important;min-height:52px;font-family:var(--lc-sans)!important}
.wc-block-components-checkout-place-order-button{font-size:17px!important}
/* summary card */
.wc-block-checkout__sidebar .wc-block-components-order-summary,.wp-block-woocommerce-checkout-order-summary-block{border-color:var(--lc-line)!important;border-radius:18px!important}
.wc-block-components-sidebar .ppcp-messages{margin-top:12px}
/* cart: brand CTA first, express buttons after the "or" divider */
.wp-block-woocommerce-cart-totals-block{display:flex;flex-direction:column}
.wp-block-woocommerce-cart-totals-block>.wp-block-woocommerce-cart-order-summary-block{order:1}
.wp-block-woocommerce-cart-totals-block>.wp-block-woocommerce-proceed-to-checkout-block,.wp-block-woocommerce-cart-totals-block>.wc-block-cart__submit{order:2;margin:10px 0 18px}
.wp-block-woocommerce-cart-totals-block>.wp-block-woocommerce-cart-express-payment-block,.wp-block-woocommerce-cart-totals-block>.wc-block-cart__payment-options{order:3}
.wp-block-woocommerce-cart-totals-block>.wp-block-woocommerce-cart-accepted-payment-methods-block{order:4}
.wp-block-woocommerce-cart-totals-block .wc-block-cart__payment-options{display:flex;flex-direction:column}
.wp-block-woocommerce-cart-totals-block .wc-block-cart__payment-options>.wc-block-components-express-payment--cart{width:100%}
.wp-block-woocommerce-cart-totals-block .wc-block-components-express-payment-continue-rule--cart{order:-1;margin:0 0 16px!important}
.wp-block-woocommerce-cart-totals-block>.ppcp-messages{order:5;margin-top:12px}
@media(min-width:783px){.wc-block-cart__submit-container--sticky{display:block!important;position:static!important;padding:0!important;box-shadow:none!important;background:transparent!important}}
/* quantity + remove tap targets */
.wc-block-components-quantity-selector{border-radius:10px!important;border-color:#cfd9ca!important}
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button{min-width:40px!important}
.wc-block-cart-item__remove-link{min-width:36px;min-height:36px;display:inline-flex!important;align-items:center;justify-content:center}
.wc-block-cart.is-mobile .wc-block-cart-items .wc-block-cart-items__row{grid-template-columns:64px minmax(0,1fr) auto!important}
.wc-block-components-address-form .wc-block-components-checkbox{margin-top:16px}
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input{padding-left:4px!important;padding-right:4px!important;min-width:44px!important}
/* trust line under Place Order */
.wp-block-woocommerce-checkout-actions-block::after{content:"Secure checkout. Cards, Apple Pay and Google Pay are processed by Stripe, PayPal by PayPal. We never see or store your card details.";display:block;margin-top:14px;padding-left:24px;font:400 13.5px/1.55 var(--lc-sans);color:#5b6a5e;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f7d32' stroke-width='2'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") left 2px/16px no-repeat}
/* free delivery progress (leafcrest-theme script) */
#lc-freeship-bar{margin:0 0 26px;padding:16px 20px;border-radius:16px;background:var(--lc-g0);border:1px solid #dbe8d3;font-family:var(--lc-sans)}
#lc-freeship-bar p{margin:0 0 10px;font-size:15px;color:var(--lc-ink)}
#lc-freeship-bar .t{display:block;height:8px;border-radius:8px;background:#dce8d5;overflow:hidden}
#lc-freeship-bar .t i{display:block;height:100%;width:100%;background:var(--lc-g6);transform:scaleX(0);transform-origin:left center;transition:transform .4s ease}
#lc-freeship-bar.done{background:#e6f2df}
#lc-freeship-bar[hidden]{display:none}
/* empty cart */
.wp-block-woocommerce-empty-cart-block .with-empty-cart-icon::before{background-color:var(--lc-g6)!important}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{justify-content:center;padding-left:0!important}
@media(min-width:481px){.wp-block-woocommerce-empty-cart-block .wc-block-grid.has-4-columns .wc-block-grid__product{flex:0 0 33.333%!important;max-width:33.333%!important}}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link{text-decoration:none!important}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product,.wp-block-woocommerce-empty-cart-block .wc-block-grid__product>*{text-align:center!important}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{font:700 16px/1.3 var(--lc-head)!important;color:var(--lc-ink)!important}
.wp-block-woocommerce-empty-cart-block .wp-block-button__link{min-height:46px;border-radius:12px!important}
/* WhatsApp bubble hides on account too (forms underneath on mobile) */
.woocommerce-account .lc-wa{display:none!important}
/* my account (logged out) */
.woocommerce-account #customer_login h2{font-family:var(--lc-head)!important;font-size:22px!important;font-weight:700!important;color:var(--lc-ink)!important;margin-bottom:14px}
.woocommerce-account #customer_login .u-column1,.woocommerce-account #customer_login .u-column2{display:flex;flex-direction:column}
.woocommerce-account #customer_login form.woocommerce-form{flex:1;border:1px solid var(--lc-line)!important;border-radius:18px!important;padding:26px!important;margin-top:0!important}
.woocommerce-account .woocommerce form .form-row input.input-text{border:1.5px solid var(--lc-field)!important;border-radius:10px!important;min-height:48px;padding:0 14px!important;background:#fff!important;font-size:16px}
.woocommerce-account .woocommerce form .form-row input.input-text:focus{border-color:var(--lc-g6)!important;box-shadow:0 0 0 3px rgba(47,125,50,.15)}
.woocommerce-account .woocommerce-form-login__submit,.woocommerce-account .woocommerce-form-register__submit{min-height:48px;padding:0 28px!important;border-radius:12px!important}
@media(min-width:922px){.woocommerce-account #customer_login.u-columns{display:flex;gap:48px}.woocommerce-account #customer_login.u-columns::before,.woocommerce-account #customer_login.u-columns::after{display:none}.woocommerce-account #customer_login .u-column1,.woocommerce-account #customer_login .u-column2{float:none!important;width:auto!important;flex:1 1 0;min-width:0}}
.woocommerce-form-login .woocommerce-form__input-checkbox{width:18px;height:18px;accent-color:var(--lc-g6);vertical-align:-3px;margin-right:8px}
/* header mini-cart dropdown */
#ast-desktop-header .ast-site-header-cart .widget_shopping_cart{border:1px solid var(--lc-line)!important;border-radius:16px!important;box-shadow:0 24px 48px -24px rgba(18,51,26,.3)!important;padding:18px!important;font-family:var(--lc-sans)!important}
#ast-desktop-header .widget_shopping_cart .woocommerce-mini-cart__empty-message{color:#5b6a5e}
.widget_shopping_cart .woocommerce-mini-cart__buttons .button{border-radius:12px!important;min-height:46px;display:flex!important;align-items:center;justify-content:center;white-space:nowrap;padding:10px 16px!important}
.widget_shopping_cart .woocommerce-mini-cart__buttons .button:not(.checkout){background:#fff!important;color:var(--lc-g7)!important;border:1.5px solid #cfdac8!important}

/* =====================================================================
   404 + SEARCH (Astra templates)
   ===================================================================== */
body.error404{background:var(--lc-sand0)!important}
.error404 .ast-404-layout-1,.error404 .error-404{text-align:center}
.error404 .page-title{font-family:var(--lc-head)!important;font-weight:800!important;color:var(--lc-ink)!important;letter-spacing:-.02em}
.error404 .page-sub-title{font-family:var(--lc-sans)!important;font-size:17px!important;font-weight:400!important;color:#5b6a5e!important;line-height:1.6!important;max-width:560px;margin-left:auto;margin-right:auto}
.error404 .woocommerce-product-search,.error404 .search-form{display:flex;gap:10px;max-width:520px;margin:26px auto 0}
.error404 .woocommerce-product-search .search-field,.error404 .search-form .search-field{flex:1;min-height:50px;border:1.5px solid var(--lc-field)!important;border-radius:12px!important;padding:0 16px!important;font-size:16px!important;background:#fff!important}
.error404 .woocommerce-product-search button,.error404 .search-form button{min-height:50px;border-radius:12px!important;padding:0 22px!important;background:var(--lc-g7)!important;color:#fff!important;font-weight:600}
.error404 .woocommerce-product-search .search-field:focus,.lc-noresults .search-field:focus{border-color:var(--lc-g6)!important;box-shadow:0 0 0 3px rgba(47,125,50,.18)!important;outline:0!important}
.error404 .woocommerce-product-search button:focus-visible,.lc-noresults button:focus-visible{outline:2px solid var(--lc-g6)!important;outline-offset:3px!important}
.error404 .woocommerce-product-search .search-field::placeholder,.lc-noresults .search-field::placeholder{color:#6b776e;opacity:1}
.error404 .error-404{border:1px solid var(--lc-line);border-radius:var(--lc-r-lg)}
@media(max-width:544px){.error404 #content>.ast-container{padding-left:20px!important;padding-right:20px!important}}
body.search{background:#fff!important}
.lc-noresults{margin:24px 0 8px}
.lc-noresults .woocommerce-product-search{display:flex;gap:10px;max-width:520px}
.lc-noresults .woocommerce-product-search .search-field{flex:1;min-height:50px;border:1.5px solid var(--lc-field)!important;border-radius:12px!important;padding:0 16px!important;font-size:16px!important}
.lc-noresults .woocommerce-product-search button{min-height:50px;border-radius:12px!important;padding:0 22px!important;background:var(--lc-g7)!important;color:#fff!important;font-weight:600}
.lc-noresults p{margin-top:16px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.lc-noresults p a:not(.button){color:var(--lc-g7);font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* =====================================================================
   PRODUCT PAGE on tablet portrait: two columns instead of a 1.5-screen gallery
   ===================================================================== */
@media(min-width:700px) and (max-width:921px){
  .single-product div.product{display:grid;grid-template-columns:minmax(0,46%) minmax(0,1fr);gap:28px;align-items:start}
  .single-product div.product .woocommerce-product-gallery,.single-product div.product .summary{width:auto!important;float:none!important;margin:0!important}
  .single-product div.product>.woocommerce-tabs,.single-product div.product>.related,.single-product div.product>.up-sells{grid-column:1/-1}
  .single-product div.product{row-gap:0}
  .single-product div.product>.woocommerce-tabs{margin-bottom:0}
  .single-product div.product .woocommerce-tabs .panel{margin-bottom:0}
}
@media(max-width:921px) and (min-width:601px){.single-product .related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
