/**
Theme Name: Astra Child
Template: astra
Text Domain: astra-child
Version: 1.0.1
*/

/* ================================
   DESIGN TOKENS
================================== */
:root{
  --kw-green:#0B6623;
  --kw-green-2:#228B22;
  --kw-head:#222;
  --kw-text:#444;
  --kw-soft:#E6E6E6;
  --kw-bg:#f7f9fb;
  --kw-shadow-sm:0 1px 3px rgba(0,0,0,.08);
  --kw-shadow-md:0 6px 18px rgba(0,0,0,.08);
  --kw-shadow-lg:0 14px 28px rgba(0,0,0,.12);
}

/* Typography + base colors */
body{color:var(--kw-text);}
h1,h2,h3,h4{color:var(--kw-head); letter-spacing:.1px;}
a{color:var(--kw-green);}
a:hover{color:var(--kw-green-2);}

/* Container + section spacing */
.site-content .ast-container{max-width:1200px;}
.entry-content > .wp-block-group{padding-block:48px;}
@media (min-width:992px){
  .entry-content > .wp-block-group{padding-block:72px;}
}
section{scroll-margin-top:90px;}

/* Focus ring (a11y) */
a:focus, button:focus, [type="submit"]:focus{
  outline:2px solid var(--kw-green-2);
  outline-offset:2px;
}

/* ================================
   HERO
================================== */
/* If using WP Cover block in hero */
.wp-block-cover{background-blend-mode:multiply;}
.wp-block-cover__background{opacity:.55 !important;}

/* CTA buttons (global) */
.wp-block-button__link, .button, .ast-button, .woocommerce a.button{
  background:var(--kw-green); color:#fff; border:0;
  border-radius:28px; padding:.8rem 1.4rem;
  box-shadow:0 6px 14px rgba(11,102,35,.18);
  transition:transform .15s ease, background .2s ease, box-shadow .2s ease;
}
.wp-block-button__link:hover, .button:hover, .ast-button:hover, .woocommerce a.button:hover{
  background:var(--kw-green-2); transform:translateY(-1px);
}

/* ================================
   FEATURES ROW (your 4 icons)
================================== */
.kw-features .kw-icon{width:56px;height:56px}
.kw-features .kw-title{margin:0 0 4px;font-size:1.15rem;font-weight:700}
.kw-features .kw-text{margin:0;font-size:.98rem;line-height:1.65}

/* ================================
   SHOP BY CATEGORY (shortcode grid)
================================== */
/* Uniform, elegant tiles */
.woocommerce ul.products li.product-category{
  text-align:center; background:#fff; border:1px solid var(--kw-soft);
  border-radius:14px; padding:18px 12px; box-shadow:var(--kw-shadow-sm);
  transition:transform .18s ease, box-shadow .18s ease;
}
.woocommerce ul.products li.product-category:hover{
  transform:translateY(-3px); box-shadow:var(--kw-shadow-md);
}
/* Consistent icon sizing without weird gaps */
.woocommerce ul.products li.product-category a img{
  width:140px; height:140px; object-fit:contain; display:block; margin:6px auto 14px;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.03));
}
/* Title */
.woocommerce ul.products li.product-category h2,
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{
  font-size:1rem; font-weight:700; color:var(--kw-head); letter-spacing:.2px;
  margin-top:0;
}

/* ================================
   FROM THE BLOG — card layout
   Add class "blog-cards" to your Latest Posts block group
================================== */
.blog-cards{display:grid; gap:22px;}
@media (min-width:782px){.blog-cards{grid-template-columns:repeat(2,1fr);}}
.blog-cards li{
  list-style:none; background:#fff; border:1px solid var(--kw-soft);
  border-radius:16px; padding:18px; box-shadow:var(--kw-shadow-sm);
}
.blog-cards li:hover{box-shadow:var(--kw-shadow-md);}
.blog-cards .wp-block-latest-posts__featured-image img{
  border-radius:12px; width:100%; height:160px; object-fit:cover; margin-bottom:10px;
}
.blog-cards .wp-block-latest-posts__post-title{font-weight:700; color:var(--kw-head);}
.blog-cards .wp-block-latest-posts__post-excerpt{margin-top:6px; color:var(--kw-text);}
.blog-cards time{font-size:.85rem; color:#666;}

/* ================================
   FEATURED DEALS (product cards)
================================== */
.woocommerce ul.products{row-gap:22px;}
.woocommerce ul.products li.product{
  background:#fff; border:1px solid var(--kw-soft); border-radius:16px;
  padding:14px; box-shadow:var(--kw-shadow-sm);
  transition:transform .18s ease, box-shadow .18s ease;
  min-height:360px; display:flex; flex-direction:column;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-4px); box-shadow:var(--kw-shadow-md);
}
/* Product image */
.woocommerce ul.products li.product a img{
  height:180px; object-fit:contain; margin:auto;
}
/* Title clamping to keep rows tidy */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  min-height:3.2em; line-height:1.6;
}
/* Price + button */
.woocommerce ul.products li.product .price{color:var(--kw-green); font-weight:700;}
.woocommerce ul.products li.product a.button{
  margin-top:auto; border-radius:24px; padding:.55rem 1rem;
}

/* Optional tiny rating row you can inject as HTML */
.kw-stars{color:#f0b90b; font-size:.9rem; letter-spacing:1px; margin:.25rem 0 .35rem}

/* ================================
   WHY CHOOSE US (icon trio)
================================== */
.why-icons .wp-block-column{
  background:#fff; border:1px solid var(--kw-soft); border-radius:14px; padding:18px;
  box-shadow:var(--kw-shadow-sm);
}
.why-icons .wp-block-column:hover{box-shadow:var(--kw-shadow-md);}
.why-icons svg{width:36px;height:36px;color:var(--kw-green);}

/* ================================
   CTA STRIP (replace purple demo)
   Give the Group block class "deals-cta"
================================== */
.deals-cta{
  background:radial-gradient(1200px 600px at 20% 10%, #1e7a35 0%, #0B6623 28%, #0a3d1b 100%);
  color:#fff; text-align:center; padding:64px 20px; border-radius:20px;
}
.deals-cta .wp-block-button__link{
  background:#fff; color:var(--kw-green); box-shadow:var(--kw-shadow-md);
}
.deals-cta .wp-block-button__link:hover{background:#f3faf5;}

/* ================================
   FOOTER (content + form)
================================== */
.site-footer .ast-container,.site-footer .ast-footer-overlay{max-width:100% !important;}
.site-footer .ast-builder-html-element{font-size:14px; line-height:1.65; color:#333;}
.site-footer .ast-builder-html-element a{color:var(--kw-green); text-decoration:none;}
.site-footer .ast-builder-html-element a:hover{text-decoration:underline;}

/* Copyright / below-footer compact */
.site-below-footer-wrap{padding-block:6px !important;}
.ast-footer-copyright{margin:0 !important; padding:0 !important; font-size:13px; text-align:center;}
.site-below-footer-wrap[data-section="section-below-footer-builder"] .ast-builder-grid-row{min-height:0;}

/* WPForms in footer (no hard-coded form ID) */
.site-footer .wpforms-container input[type="text"],
.site-footer .wpforms-container input[type="email"]{
  height:44px; border-radius:10px; border:1px solid #dcdcdc; padding:10px 12px; width:100%;
}
.site-footer .wpforms-submit{
  background:var(--kw-green) !important; color:#fff !important;
  border-radius:10px; padding:.7rem 1.2rem; border:0; width:100%;
}
.site-footer .wpforms-submit:hover{background:var(--kw-green-2) !important;}

/* Optional: center the form and limit width */
.site-footer .wpforms-container{max-width:480px; margin:0 auto;}
@media (max-width:640px){ .site-footer .wpforms-container{padding-inline:16px;} }

/* =========================
   BLOG → turn list into clean cards
   Works for BOTH Latest Posts AND Query Loop blocks
========================= */

/* Latest Posts – grid mode */
.wp-block-latest-posts.is-grid{display:grid; gap:22px;}
@media (min-width:782px){ .wp-block-latest-posts.is-grid{grid-template-columns:repeat(2,1fr);} }
.wp-block-latest-posts__featured-image img{
  width:100%; height:160px; object-fit:cover; border-radius:12px; display:block;
}
.wp-block-latest-posts.is-grid li{
  list-style:none; background:#fff; border:1px solid var(--kw-soft);
  border-radius:16px; padding:18px; box-shadow:var(--kw-shadow-sm);
  transition:box-shadow .18s ease;
}
.wp-block-latest-posts.is-grid li:hover{ box-shadow:var(--kw-shadow-md); }
.wp-block-latest-posts__post-title{font-weight:700; color:var(--kw-head);}
.wp-block-latest-posts__post-excerpt{margin-top:6px; color:var(--kw-text);}
.wp-block-latest-posts__post-date{font-size:.85rem; color:#666;}

/* If using Query Loop instead of Latest Posts */
.wp-block-query .wp-block-post{
  background:#fff; border:1px solid var(--kw-soft); border-radius:16px;
  padding:18px; box-shadow:var(--kw-shadow-sm); transition:box-shadow .18s ease;
}
.wp-block-query .wp-block-post:hover{box-shadow:var(--kw-shadow-md);}
.wp-block-query .wp-block-post-featured-image img{
  width:100%; height:160px; object-fit:cover; border-radius:12px;
}
.wp-block-query .wp-block-post-title a{color:var(--kw-head); font-weight:700;}
.wp-block-query .wp-block-post-excerpt{color:var(--kw-text);}

/* Make sure the section becomes a grid (group → 2 cols on ≥782px) */
.kw-blog-grid{display:grid; gap:22px;}
@media (min-width:782px){ .kw-blog-grid{grid-template-columns:repeat(2,1fr);} }

/* =========================
   CATEGORY GRID polish
========================= */
.woocommerce ul.products{row-gap:22px;}
.woocommerce ul.products li.product-category{
  text-align:center; background:#fff; border:1px solid var(--kw-soft);
  border-radius:14px; padding:18px 12px; box-shadow:var(--kw-shadow-sm);
  transition:transform .18s ease, box-shadow .18s ease;
}
.woocommerce ul.products li.product-category:hover{
  transform:translateY(-3px); box-shadow:var(--kw-shadow-md);
}
.woocommerce ul.products li.product-category a img{
  width:140px; height:140px; object-fit:contain; margin:6px auto 14px; display:block;
}

/* Title tidy + count as a soft pill */
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{
  font-size:1rem; font-weight:700; color:var(--kw-head); letter-spacing:.2px; margin:0;
}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title .count{
  display:inline-block; margin-left:.4em; padding:.15em .5em;
  font-size:.8em; background:#f1f3f4; color:#667085; border-radius:999px;
}

/* If any theme style forces UPPERCASE category titles, normalize them */
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{text-transform:none;}

/* =========================
   PRODUCT CARD small refinement
========================= */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  min-height:3.2em; line-height:1.6;
}
.woocommerce ul.products li.product a.button{font-weight:600}

/* =========================
   SPACING touch-ups for section headings
========================= */
h2.wp-block-heading{margin-bottom:20px;}
.wp-block-group:has(> .wp-block-latest-posts),
.wp-block-group:has(> .wp-block-query){
  padding-top:40px; padding-bottom:40px;
}

/* =========================
   OPTIONAL: lighter hero image if it's too strong under gradient
========================= */
.wp-block-cover__image-background{filter:saturate(.95) contrast(.95) brightness(.95);}

/* ==== CATEGORY GRID: fix hidden images + pro look ==== */

/* Make the whole tile a flexible vertical layout */
.woocommerce ul.products li.product-category a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;                 /* space between image and title */
  padding: 8px 6px;
  height: 100%;
}

/* Reserve enough vertical room for image + title */
.woocommerce ul.products li.product-category {
  min-height: 260px; /* adjust if you use longer titles */
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Uniform, non-cropping image box */
.woocommerce ul.products li.product-category a img{
  width: 140px;
  height: 140px;
  max-width: 100%;
  object-fit: contain;       /* never crop; fit inside square */
  aspect-ratio: 1 / 1;       /* modern browsers keep perfect square */
  display: block;
  margin: 6px auto 6px;
  transform: translateZ(0);  /* prevent odd clipping on some browsers */
}

/* Title + count tidy (2-line clamp to avoid tall tiles) */
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{
  text-transform: none;
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
  color: var(--kw-head);
  line-height: 1.35;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;     /* keep to two lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title .count{
  display:inline-block;
  margin-left:.4em; padding:.15em .5em;
  font-size:.8em; background:#f1f3f4; color:#667085; border-radius:999px;
}

/* Card polish + hover */
.woocommerce ul.products li.product-category{
  background:#fff;
  border:1px solid var(--kw-soft);
  border-radius:14px;
  box-shadow: var(--kw-shadow-sm);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.woocommerce ul.products li.product-category:hover{
  transform: translateY(-3px);
  box-shadow: var(--kw-shadow-md);
  border-color: rgba(11,102,35,.2);
}

/* Grid spacing consistency */
.woocommerce ul.products { row-gap: 22px; }

/* ==== SECTION HEADINGS: a touch more elegance ==== */
h2.wp-block-heading{
  font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem);
  letter-spacing: .2px;
  margin-bottom: 18px;
}

/* ==== OPTIONAL: soften the blog list if not using cards yet ==== */
.wp-block-latest-posts:not(.is-grid) li{
  padding: 10px 0; border-bottom: 1px solid #eef1f4;
}
/* ===== FOOTER FORM: inputs same width as Submit ===== */
.site-footer .wpforms-container { max-width: 520px; margin: 0 auto; }
.site-footer .wpforms-field-container { display:block; gap:0; }
.site-footer .wpforms-field { width:100% !important; margin:0 0 12px; }
.site-footer .wpforms-field input[type="text"],
.site-footer .wpforms-field input[type="email"]{
  width:100% !important; box-sizing:border-box;
  height:48px; padding:12px 14px; border-radius:10px; border:1px solid #dcdcdc;
}
.site-footer .wpforms-submit-container{ width:100%; margin-top:4px; }
.site-footer .wpforms-submit{
  width:100% !important; height:48px; line-height:48px; font-weight:700;
}

/* ===== CATEGORY GRID: show images at full size inside card ===== */
/* Bigger, uniform image box (increase to 180–200 if you want) */
.woocommerce ul.products li.product-category { min-height: 300px; }
.woocommerce ul.products li.product-category a {
  display:flex; flex-direction:column; align-items:center; gap:12px; height:100%;
}
.woocommerce ul.products li.product-category a img{
  width: 100%;               /* fill the available width */
  max-width: 220px;          /* prevent overgrow on large screens */
  height: 180px;             /* bigger visual impact */
  object-fit: contain;       /* never crop */
  margin: 6px auto 2px; display:block;
}
/* Title tidy + count pill */
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{
  text-align:center; font-size:1rem; font-weight:700; color:var(--kw-head);
  line-height:1.35; margin:0 10px 6px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title .count{
  display:inline-block; margin-left:.4em; padding:.15em .5em;
  font-size:.8em; background:#f1f3f4; color:#667085; border-radius:999px;
}

/* Card hover + grid spacing */
.woocommerce ul.products { row-gap:24px; }
.woocommerce ul.products li.product-category{
  background:#fff; border:1px solid var(--kw-soft); border-radius:14px;
  box-shadow:var(--kw-shadow-sm);
  transition:transform .18s ease, box-shadow .18s ease;
}
.woocommerce ul.products li.product-category:hover{
  transform:translateY(-3px); box-shadow:var(--kw-shadow-md);
}

/* ===== Section polish ===== */
h2.wp-block-heading{ margin-bottom:20px; letter-spacing:.2px; }

/* ===== WPForms Footer Form Full Width Fix ===== */
#wpforms-34987 .wpforms-field-container {
  display: block !important;
}

#wpforms-34987 .wpforms-field,
#wpforms-34987 .wpforms-field input[type="text"],
#wpforms-34987 .wpforms-field input[type="email"] {
  width: 100% !important;
  max-width: 100% !important;
  display: block;
  box-sizing: border-box;
}

#wpforms-34987 .wpforms-field input {
  height: 48px;
  padding: 12px 14px;
  border: 1px solid #dcdcdc;
  border-radius: 8px;
  font-size: 15px;
  margin-bottom: 12px;
}

/* Submit button full width */
#wpforms-34987 .wpforms-submit-container {
  width: 100% !important;
  margin-top: 4px;
}

#wpforms-34987 .wpforms-submit {
  width: 100% !important;
  height: 48px;
  line-height: 48px;
  font-weight: 700;
  background: var(--kw-green) !important;
  color: #fff !important;
  border: 0;
  border-radius: 8px;
  transition: background .2s ease, transform .15s ease;
}

#wpforms-34987 .wpforms-submit:hover {
  background: var(--kw-green-2) !important;
  transform: translateY(-2px);
}
/* ================================
   SINGLE PRODUCT — KoreWay theme
   (safe CSS: no :has, no aspect-ratio)
================================== */

/* Layout: image left, summary right on desktop; stacked on mobile */
.single-product div.product{
  display:flex;
  flex-wrap:wrap;
  gap:28px;
}
.single-product div.product .images,
.single-product div.product .summary{
  width:100%;
}
@media (min-width: 992px){
  .single-product div.product .images{width:52%;}
  .single-product div.product .summary{width:44%;}
}

/* Breadcrumbs */
.woocommerce-breadcrumb{
  font-size:14px;
  color:#6b7280;
  margin-bottom:16px;
}
.woocommerce-breadcrumb a{color:#6b7280;text-decoration:none;}
.woocommerce-breadcrumb a:hover{color:#0B6623;}

/* Gallery panel */
.single-product div.product div.images{
  background:#fff;
  border:1px solid #E6E6E6;
  border-radius:16px;
  padding:18px;
  box-shadow:0 1px 3px rgba(0,0,0,.08);
}
.single-product div.product div.images img{
  width:100%;
  max-height:540px;
  object-fit:contain;
  border-radius:12px;
}
.single-product div.product .flex-control-thumbs{
  margin:10px -6px -6px -6px;
}
.single-product div.product .flex-control-thumbs li{
  margin:6px;
}
.single-product div.product .flex-control-thumbs img{
  height:82px;
  width:100%;
  object-fit:contain;
  background:#fff;
  border:1px solid #eaeaea;
  border-radius:10px;
  transition:transform .15s ease, box-shadow .15s ease;
}
.single-product div.product .flex-control-thumbs img:hover{
  transform:translateY(-2px);
  box-shadow:0 2px 8px rgba(0,0,0,.10);
}

/* Summary card */
.single-product .summary{
  align-self:flex-start;
  background:#fff;
  border:1px solid #E6E6E6;
  border-radius:16px;
  padding:22px 22px 18px;
  box-shadow:0 1px 3px rgba(0,0,0,.08);
  position: -webkit-sticky;
  position: sticky;
  top:90px; /* adjust if header taller */
}

/* Title, price, rating */
.single-product .product_title{
  color:#222;
  font-size:28px;
  line-height:1.25;
  margin:0 0 10px;
}
@media (max-width: 480px){
  .single-product .product_title{font-size:24px;}
}
.single-product .price{
  color:#0B6623;
  font-weight:800;
  font-size:20px;
  margin:6px 0 10px;
}
.single-product .woocommerce-product-rating{margin-bottom:10px;}
.single-product .star-rating span{color:#f0b90b;}

/* Short description */
.single-product .woocommerce-product-details__short-description{
  color:#444;
  line-height:1.7;
  margin-bottom:14px;
}

/* Add to Cart / External button */
.single-product .single_add_to_cart_button,
.single-product .button.alt{
  width:100%;
  background:#0B6623;
  color:#fff;
  border:0;
  border-radius:28px;
  padding:14px 18px;
  font-weight:800;
  font-size:16px;
  box-shadow:0 10px 24px rgba(11,102,35,.18);
  transition:background .2s ease, transform .15s ease, box-shadow .2s ease;
}
.single-product .single_add_to_cart_button:hover,
.single-product .button.alt:hover{
  background:#228B22;
  transform:translateY(-1px);
}

/* Meta (Category / SKU) */
.single-product .product_meta{
  margin-top:12px;
  font-size:14px;
  color:#6b7280;
}
.single-product .product_meta a{color:#6b7280;text-decoration:none;}
.single-product .product_meta a:hover{color:#0B6623;}
/* Hide SKU if you don’t use it */
/* .single-product .product_meta .sku_wrapper{display:none;} */

/* Trust/benefits list (use <ul class="kw-checklist"> in short desc) */
.kw-checklist{margin:12px 0 8px; padding-left:0; list-style:none;}
.kw-checklist li{
  position:relative;
  padding-left:26px;
  margin:6px 0;
  line-height:1.6;
}
.kw-checklist li:before{
  content:"✓";
  position:absolute;
  left:0; top:0;
  color:#0B6623;
  font-weight:900;
}

/* Tabs (Description / Reviews) */
.woocommerce-tabs{
  background:#fff;
  border:1px solid #E6E6E6;
  border-radius:16px;
  padding:18px;
  box-shadow:0 1px 3px rgba(0,0,0,.08);
  margin-top:14px;
}
.woocommerce-tabs ul.tabs{
  display:flex;
  padding-left:0;
  margin:0 0 12px;
  border-bottom:1px solid #eef2f6;
}
.woocommerce-tabs ul.tabs li{
  list-style:none;
  margin:0 8px 0 0;
  border:0;
  background:transparent;
}
.woocommerce-tabs ul.tabs li a{
  display:block;
  padding:9px 12px;
  font-weight:700;
  color:#6b7280;
  text-decoration:none;
  border-radius:10px 10px 0 0;
}
.woocommerce-tabs ul.tabs li.active a{
  color:#0B6623;
  background:#f4faf6;
}

/* Tables and content inside tabs */
.woocommerce-Tabs-panel table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  border:1px solid #eef2f6;
  border-radius:12px;
  overflow:hidden;
}
.woocommerce-Tabs-panel table th,
.woocommerce-Tabs-panel table td{
  padding:10px 12px;
  border-bottom:1px solid #eef2f6;
}
.woocommerce-Tabs-panel table tr:last-child td{border-bottom:0;}
.woocommerce-Tabs-panel table th{
  background:#f9fbfa;
  text-align:left;
  color:#111;
}

/* Related products (match card style) */
.related.products h2{
  margin:26px 0 12px;
}
.related.products ul.products{
  row-gap:22px;
}
.related.products ul.products li.product{
  background:#fff;
  border:1px solid #E6E6E6;
  border-radius:16px;
  padding:14px;
  box-shadow:0 1px 3px rgba(0,0,0,.08);
  transition:transform .18s ease, box-shadow .18s ease;
}
.related.products ul.products li.product:hover{
  transform:translateY(-4px);
  box-shadow:0 6px 18px rgba(0,0,0,.12);
}
.related.products ul.products li.product a img{
  height:180px;
  object-fit:contain;
  margin:auto;
}
.related.products ul.products li.product .price{
  color:#0B6623;
  font-weight:700;
}
.related.products ul.products li.product a.button{
  border-radius:24px;
  padding:.55rem 1rem;
}

/* Small note block (use <div class="kw-disclosure">...</div>) */
.kw-disclosure{
  background:#f7faf8;
  border:1px solid #e5eee6;
  color:#334155;
  border-radius:12px;
  padding:12px 14px;
  font-size:14px;
  margin-top:12px;
}
/* --- Fix: summary overlaps Description while scrolling --- */
/* Default: NO sticky (prevents covering description) */
.single-product .summary{
  position: static !important;
  top: auto !important;
}

/* Optional: re-enable sticky only when there's room (large screens & tall viewports) */
@media (min-width: 1200px) and (min-height: 900px){
  .single-product .summary{
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 96px !important;   /* adjust if your header is taller */
  }
}
/* Sticky navigation header */
.site-header,
.main-header-bar {
  position: sticky;
  top: 0;
  z-index: 9999; /* keep above everything */
  background: linear-gradient(135deg, #1e7a35 0%, #0B6623 40%, #0a3d1b 100%);
  box-shadow: 0 2px 6px rgba(0,0,0,.1);
  transition: background 0.3s ease, box-shadow 0.3s ease;
}

/* Make nav menu links professional */
.main-header-menu a {
  color: #fff;                /* white text on gradient */
  font-weight: 600;
  font-size: 15px;
  text-transform: none;       /* no all-caps */
  padding: 12px 16px;
  transition: color 0.2s ease, background 0.2s ease;
}

/* Hover + active states */
.main-header-menu a:hover,
.main-header-menu .current-menu-item > a {
  color: #f3faf5; /* softer white hover */
  background: rgba(255,255,255,0.1);
  border-radius: 6px;
}

/* Mobile menu toggle */
.ast-button-wrap .menu-toggle {
  color: #fff;
}
.ast-button-wrap .menu-toggle:hover {
  color: #f3faf5;
}
/* Keep header visible & roomy */
.main-header-bar {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: linear-gradient(135deg,#1e7a35 0%,#0B6623 40%,#0a3d1b 100%);
  box-shadow: 0 2px 6px rgba(0,0,0,.10);
  min-height: 70px;                 /* space for logo */
  overflow: visible;                 /* don't clip logo */
}

/* Ensure the logo always shows (normal + sticky + transparent states) */
.site-header .site-branding,
.ast-site-identity .site-logo-img {
  display: flex;
  align-items: center;
}

.site-header .site-branding img,
.ast-site-identity .site-logo-img img,
.custom-logo {
  display: inline-block !important;
  height: auto !important;
  width: auto !important;
  max-height: 52px !important;      /* adjust to taste */
  opacity: 1 !important;
  filter: none !important;           /* undo any theme invert */
}

/* If your logo is an SVG, give it a height too */
.site-header .site-logo-img svg {
  height: 52px !important;
  width: auto !important;
}

/* When header becomes sticky, use the same (normal) logo */
.ast-header-sticked .


/* ===== Sticky header + reliable gradient ===== */

/* 1) Make the actual header bar sticky and prepare for an overlay */
.main-header-bar,
.ast-primary-header-bar {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: transparent !important;   /* let our ::before show */
  min-height: 70px;
  overflow: visible;
}

/* 2) Draw the gradient on a ::before layer so Astra colors can't override it */
.ast-primary-header-bar,
.main-header-bar { position: sticky; } /* ensure positioned ancestor */
.ast-primary-header-bar::before,
.main-header-bar::before {
  content: "";
  position: absolute;
  left: 0; right: 0; top: 0; bottom: 0;
  z-index: -1;                         /* sit behind the header content */
  background: linear-gradient(135deg, #ffffff 0%, #0B6623 40%, #0a3d1b 100%);
  /* Fallbacks for older engines */
  background-image: -webkit-linear-gradient(135deg, #fffff, #0B6623 40%, #0a3d1b);
  background-image: -moz-linear-gradient(135deg, #ffffff, #0B6623 40%, #0a3d1b);
}

/* 3) Mobile breakpoint sometimes re-applies a solid color—neutralize it */
.ast-header-break-point .main-header-bar,
.ast-header-break-point .ast-primary-header-bar {
  background: transparent !important;
}

/* 4) Menu link colors on the dark gradient */
.main-header-menu a { color: #fff; font-weight: 600; }
.main-header-menu a:hover,
.main-header-menu .current-menu-item > a {
  color: #f3faf5;
  background: rgba(255,255,255,.12);
  border-radius: 6px;
}

/* 5) Keep the logo visible on dark gradient (pick ONE of these) */

/* A) If your logo is dark text: flip it to white on dark header */
.site-header .site-logo-img img,
.custom-logo { filter: brightness(0) invert(1); }

/* B) If you uploaded a white logo instead, remove the filter above and enforce size */
 /* .site-header .site-logo-img img, .custom-logo { max-height: 52px; height: auto; width: auto; } */


/* ===== Global sticky header (bulletproof for Astra Free) ===== */

/* Admin bar offset */
:root { --kw-admin: 0px; }
body.admin-bar { --kw-admin: 32px; }
@media (max-width: 782px){ body.admin-bar { --kw-admin: 46px; } }

/* Make the whole site header fixed */
.site-header{
  position: fixed !important;
  top: var(--kw-admin);
  left: 0; right: 0;
  z-index: 99999;
  width: 100%;
  background: linear-gradient(135deg,#1e7a35 0%,#0B6623 40%,#0a3d1b 100%) !important;
  box-shadow: 0 2px 10px rgba(0,0,0,.14);
}

/* Ensure inner bars don’t reapply colors */
.main-header-bar,
.ast-primary-header-bar{ background: transparent !important; }

/* Give the header enough room for the logo/menu */
.site-header .main-header-bar{ min-height: 70px; }

/* Push the page down by the header height (var set by JS below) */
body{ padding-top: var(--kw-header-h, 80px); }

/* Menu link contrast on the gradient */
.main-header-menu a{ color:#fff; font-weight:600; }
.main-header-menu a:hover,
.main-header-menu .current-menu-item > a{
  color:#f3faf5;
  background: rgba(255,255,255,.12);
  border-radius:6px;
}

/* If your current logo is dark text, flip it to white on dark header */
.site-header .site-logo-img img, .custom-logo{ filter: brightness(0) invert(1); }

/* Optional: cap logo size so it never overflows */
.site-header .site-logo-img img, .custom-logo{ max-height: 52px; height:auto; width:auto; }
/* ====== NAV MENU DROPDOWN FIX ====== */

/* Dropdown background */
.main-header-menu .sub-menu {
  background: #ffffff;            /* clean white background */
  border: 1px solid #e5e5e5;      /* subtle border */
  border-radius: 6px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.08);
  padding: 10px 0;
}

/* Dropdown menu links */
.main-header-menu .sub-menu a {
  color: #222 !important;         /* dark text for readability */
  font-size: 15px;
  padding: 10px 18px;
  font-weight: 500;
}

/* Hover effect */
.main-header-menu .sub-menu a:hover {
  background: #f3f7f5;            /* soft gray-green tint */
  color: #0B6623 !important;      /* brand green on hover */
}

/* Parent arrow indicator color fix */
.main-header-menu .menu-item-has-children > a .ast-icon {
  color: #fff !important;         /* keep parent arrow visible on dark header */
}
/* ====== SUBMENU ARROWS (USER FRIENDLY) ====== */

/* Show arrows for parent items */
.main-header-menu .menu-item-has-children > a:after {
  content: "\25B8";                 /* right-pointing arrow ▸ */
  font-size: 12px;
  margin-left: 6px;
  display: inline-block;
  transform: translateY(1px);
  color: #666;                      /* neutral gray by default */
}

/* On hover, turn arrow KoreWay green */
.main-header-menu .menu-item-has-children:hover > a:after {
  color: #0B6623;
}

/* For deeper levels (flyout menus) show arrow to the right */
.main-header-menu .sub-menu .menu-item-has-children > a:after {
  content: "\25B8";                 /* right arrow */
  float: right;
  margin-left: 0;
  margin-right: 6px;
}

/* Ensure arrows are visible on dark header background */
.site-header .main-header-menu > .menu-item-has-children > a:after {
  color: #fff;                      /* white on dark gradient header */
}
/* Bigger, clearer arrows on items that have children */
.main-header-menu .menu-item-has-children > a:after {
  content: "▸";
  font-size: 16px;       /* was 12 – bumped up */
  margin-left: 8px;
  display: inline-block;
  transform: translateY(1px);
  color: #666;
}
.site-header .main-header-menu > .menu-item-has-children > a:after {
  color: #fff;           /* white on dark green top bar */
}
.main-header-menu .menu-item-has-children:hover > a:after {
  color: #0B6623;        /* brand green on hover inside dropdown */
}
/* Hide Astra's built-in arrows ONLY on the "Shop" item (ID 12) — desktop */
@media (min-width: 921px){  /* Astra desktop breakpoint */
  /* Top-level "Shop" */
  #menu-item-12 > a .dropdown-menu-toggle,
  #menu-item-12 > .ast-menu-toggle,
  #menu-item-12 > a .ast-icon.icon-arrow { 
    display: none !important;
  }

  /* Any inner arrows Astra injects inside the Shop dropdown */
  #menu-item-12 .sub-menu a .dropdown-menu-toggle,
  #menu-item-12 .sub-menu a .ast-icon.icon-arrow,
  #menu-item-12 .sub-menu > .menu-item > .ast-menu-toggle {
    display: none !important;
  }
}
/* --- Fix: WP Admin Bar dropdowns appear under sticky site header --- */

/* Always keep the admin bar above everything */
#wpadminbar {
  position: fixed;                 /* WP sets this on mobile; we enforce it everywhere */
  z-index: 100000 !important;      /* higher than your header */
}

/* Put the site header below the admin bar and adjust offset */
:root { --kw-admin: 0px; }
body.admin-bar { --kw-admin: 32px; }        /* desktop admin bar height */
@media (max-width: 782px){ body.admin-bar { --kw-admin: 46px; } }  /* mobile admin bar height */

.site-header {
  top: var(--kw-admin) !important; /* sit just below the admin bar */
  z-index: 9998 !important;        /* below #wpadminbar */
}

/* If you added a gradient overlay via ::before, keep it below everything */
.main-header-bar::before,
.ast-primary-header-bar::before {
  z-index: -1 !important;
}
/* ================================
   Dark Elegant Square Button Style
   (Matches reference screenshot)
================================ */

/* Global WooCommerce & External Buttons */
a.button.product_type_external,
a.button.product_type_simple.add_to_cart_button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  display: inline-block;
  background: #222; /* dark blackish background */
  color: #fff !important;
  border: none;
  border-radius: 4px !important;  /* square with small soft edges */
  padding: 12px 20px;
  font-weight: 500;
  font-size: 0.95rem;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 4px 12px rgba(0,0,0,.25); /* elegant shadow */
  transition: all 0.25s ease-in-out;
  min-width: 130px;
  cursor: pointer;
}

/* Hover state */
a.button.product_type_external:hover,
a.button.product_type_simple.add_to_cart_button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
  background: #000; /* pure black on hover */
  box-shadow: 0 6px 16px rgba(0,0,0,.35);
  transform: translateY(-2px);
  color: #fff !important;
}

/* Active (pressed) state */
a.button:active,
.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active,
.woocommerce #respond input#submit:active {
  transform: scale(0.97);
  box-shadow: 0 2px 6px rgba(0,0,0,.3);
}

/* Force WooCommerce product categories into 1 column on mobile */
@media (max-width: 768px) {
    .woocommerce ul.products.columns-4 li.product,
    .woocommerce-page ul.products.columns-4 li.product {
        width: 100% !important;  /* full width */
        clear: both !important;  /* prevent float overlap */
        margin-right: 0 !important;
    }
}
/* === Force WooCommerce category grid to 1 column on mobile === */
@media (max-width: 768px) {
  /* Handle themes that use flexbox */
  .woocommerce ul.products.columns-4 li.product,
  .woocommerce-page ul.products.columns-4 li.product,
  .woocommerce ul.products li.product-category,
  .woocommerce-page ul.products li.product-category {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;     /* flexbox override */
    -ms-flex: 0 0 100% !important; /* IE fallback */
    float: none !important;         /* legacy float grids */
    margin-right: 0 !important;
  }

  /* Handle themes that set fixed column count on the UL */
  .woocommerce ul.products.columns-4,
  .woocommerce-page ul.products.columns-4 {
    display: block !important;
  }

  /* Handle themes using CSS Grid on the UL */
  .woocommerce ul.products,
  .woocommerce-page ul.products {
    display: grid !important;
    grid-template-columns: 1fr !important; /* 1 column */
    gap: 16px; /* optional spacing */
  }
}


