/* =========================================================================
   Greenzone storefront — responsive / UI fixes
   Added 2026-06-29. Loaded LAST (after demo1.css) so it overrides safely.
   Goal: remove mobile horizontal overflow & broken-element artefacts without
   changing the (working) desktop layout. Keep rules additive & low-specificity.
   ========================================================================= */

/* 1) No element may create a horizontal scrollbar on the page. The legacy
      footer contact block, the off-canvas side-nav, the scroll-to-top button
      and owl carousel stages all extend past the viewport on phones; the page
      is never meant to scroll sideways, so clip it. position:fixed overlays
      (side-nav, scroll-to-top) are unaffected by this. */
html, body {
    max-width: 100%;
    overflow-x: hidden;
}

/* 2) Footer contact block: it is display:inline-block with no width, so on a
      narrow screen it shrink-wraps to the long address / e-mail / URL and
      forces the body to ~815px wide. Force it to fill its column and wrap. */
footer .inline-block {
    display: block;
    width: 100%;
    max-width: 100%;
}
footer .contct_details,
footer .contct_details li,
footer .contct_details .title,
footer .contct_details a,
footer .f-14 {
    white-space: normal;
    word-break: break-word;
    overflow-wrap: anywhere;
    max-width: 100%;
}

/* 3) Carousels: never let an owl stage (or any slider track) widen the page. */
.owl-carousel,
.owl-stage-outer,
.bx-wrapper,
.carousel-wrap {
    max-width: 100%;
}
.owl-stage-outer {
    overflow: hidden;
}

/* 4) Generic guard: media never overflows its box. */
img.responsive-img,
.owl-carousel .item img {
    max-width: 100%;
    height: auto;
}

/* 5) Small-screen polish ------------------------------------------------ */
@media only screen and (max-width: 600px) {

    /* keep the container padding consistent so cards never touch the edge */
    .container {
        width: 92%;
    }

    /* product cards inside carousels: let the card use the full slide width
       and stop the "Add to Basket" button / price text from being clipped */
    .owl-item .product-card,
    .owl-item .pro-box,
    .owl-item .pro-box1,
    .owl-item .card {
        width: 100%;
        max-width: 100%;
    }
    .owl-item .add-cart-btn,
    .owl-item .btn,
    .owl-item button {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

/* =========================================================================
   Mobile header (icon row + collapsible search) and footer (logo/alignment)
   Added 2026-06-29 (round 2). Scoped to <=600px so desktop is untouched.
   ========================================================================= */
@media only screen and (max-width: 600px) {

    /* --- header: keep wishlist / cart / account (and the search toggle) on
           ONE aligned row instead of wrapping into two --- */
    .site-right-icon { padding-top: 0; padding-bottom: 0; }
    .site-right-icon .menu-app > ul {
        display: flex !important;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: flex-end;
        gap: 2px;
        margin: 0;
        padding: 0;
    }
    .site-right-icon .menu-app > ul > li {
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        list-style: none;
    }
    .site-right-icon .menu-app > ul > li > a { display: inline-flex; align-items: center; }
    .site-right-icon .header-cart-icon img,
    .site-right-icon .profileicon img { width: 26px !important; height: auto; }
    .site-right-icon .menu-app .icon-name { display: none; }   /* drop the "Login" text label to save room */
    /* logo is a 500x500 square; demo.css forces width:155px!important which, capped
       by a height limit, stretched it. Keep it a clean square on mobile. */
    .main-header-fixed .main_logo img,
    .main_logo img { width: 46px !important; height: 46px !important; max-height: 46px; }

    /* --- search collapses to an icon; tapping it reveals the search box --- */
    .mobile-search-toggle { display: list-item !important; }
    .mobile-device-search { display: none !important; }
    /* header uses a display:table grid, so float/clear can't drop the box to a new
       row -- reveal it as a full-width overlay anchored just below the header bar */
    #myheader.mobile-search-open .mobile-device-search {
        display: block !important;
        position: absolute;
        left: 0;
        right: 0;
        top: 100%;
        width: 100%;
        background: #fff;
        padding: 8px 12px 10px;
        z-index: 1200;
        box-shadow: 0 6px 8px -4px rgba(0, 0, 0, 0.25);
    }
    #myheader.mobile-search-open .mobile-device-search .search-wrapper { width: 100%; }
    #myheader.mobile-search-open .mobile-device-search #searchBoxMobile { width: 100%; }

    /* --- footer: stop the logo blowing up to full width; tidy columns --- */
    footer.page-footer .footer_in img[alt="Logo"] {
        max-width: 150px;
        width: auto;
        height: auto;
        display: block;
        margin: 0 auto 8px;
    }
    footer.page-footer .footer_in > .row > .col { margin-bottom: 4px; }
    footer.page-footer .zoo-widget-title-sm { margin-top: 8px; }
    footer.page-footer .followusContainer.center { text-align: center; }
}
@media only screen and (min-width: 601px) {
    .mobile-search-toggle { display: none !important; }   /* desktop keeps its full search box */
}

/* =========================================================================
   Home: root-category slider dot + section spacing (added 2026-06-29 r3)
   ========================================================================= */

/* 1) Root category slider: when every category fits (one page) owl still draws
      a single lone pagination dot. Hide it; keep dots when there are 2+ pages. */
.owl-carousel-category .owl-dots .owl-dot:only-child { display: none; }

/* 2) Desktop/tablet: the fixed-header spacer (#index-banner-new & friends) was
      223px but the header now extends ~262px because of the category slider, so
      the hero banner overlapped it by ~40px. Clear the header properly.
      (<=600px already uses margin-top:0, so this only touches >600px.) */
@media only screen and (min-width: 601px) {
    #index-banner-new,
    .product-section,
    .login-section,
    .enquiry,
    .forget-password,
    .terms-panel,
    #shopCart,
    .static_page,
    .consultVaidhya {
        margin-top: 210px;
    }
    /* breathing room between the hero banner and the SHOP BY CATEGORY section */
    .shop_category.section-gap { margin-top: 26px; }
}

/* =========================================================================
   Product detail page tweaks (added 2026-06-29 r4) — apply at all widths
   ========================================================================= */

/* short description was orange + heavy-looking; keep it black, normal weight,
   same font family/size as the rest of the copy */
.product-des-short {
    color: #000 !important;
    font-weight: 400 !important;
}

/* the whole "Product Description" tab section sat on an orange band
   (.user-tabs background #ff7d23) — make it white */
.user-tabs {
    background: #fff !important;
}

/* =========================================================================
   "Why Choose Us" section (added 2026-06-29 r5) — intro + 4 feature cards
   ========================================================================= */
.why-choose-us-section {
    background: #fff;
    padding: 46px 0;
}
.why-choose-us-section .wcu-head {
    max-width: 760px;
    margin: 0 auto 32px;
    text-align: center;
}
.why-choose-us-section .wcu-eyebrow {
    font-size: 13px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #00aa4f;
    font-weight: 700;
    margin: 0 0 8px;
}
.why-choose-us-section .wcu-title {
    font-size: 28px;
    line-height: 1.2;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 12px;
}
.why-choose-us-section .wcu-desc {
    font-size: 15px;
    line-height: 1.6;
    color: #666;
    margin: 0;
}
.why-choose-us-section .wcu-cards {
    display: flex;
    flex-wrap: wrap;
}
.why-choose-us-section .wcu-col {
    flex: 0 0 25%;
    max-width: 25%;
    padding: 10px;
    box-sizing: border-box;
    display: flex;
}
.why-choose-us-section .wcu-card {
    width: 100%;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 12px;
    padding: 28px 20px;
    text-align: center;
    transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}
.why-choose-us-section .wcu-card:hover {
    box-shadow: 0 10px 26px rgba(0, 0, 0, .08);
    border-color: #cdefdc;
    transform: translateY(-4px);
}
.why-choose-us-section .wcu-icon {
    width: 66px;
    height: 66px;
    line-height: 66px;
    margin: 0 auto 18px;
    border-radius: 50%;
    background: #e9f7ef;
    color: #00aa4f;
    font-size: 26px;
}
.why-choose-us-section .wcu-icon .fa { line-height: 66px; }
.why-choose-us-section .wcu-card-title {
    font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0 0 10px;
}
.why-choose-us-section .wcu-card-text {
    font-size: 14px;
    line-height: 1.55;
    color: #666;
    margin: 0;
}
@media only screen and (max-width: 992px) {
    .why-choose-us-section .wcu-col { flex: 0 0 50%; max-width: 50%; }
}
@media only screen and (max-width: 600px) {
    .why-choose-us-section { padding: 32px 0; }
    .why-choose-us-section .wcu-col { flex: 0 0 100%; max-width: 100%; }
    .why-choose-us-section .wcu-title { font-size: 23px; }
}

/* ==========================================================================
   MODERN POLISH  (added 2026-07-05)  — site-wide UI refresh, loaded last.
   To REVERT: delete everything below this banner.
   Keeps Green Zone's green+orange brand; adds a cohesive palette, type scale,
   soft shadows, rounded consistent buttons + hover, and cleaner inputs.
   ========================================================================== */
:root{
  --gz-green:#1a9c53; --gz-green-d:#158043; --gz-orange:#f47b20; --gz-orange-soft:#fff3ea;
  --gz-ink:#1f2a30; --gz-muted:#6b7a82; --gz-line:#e9edf0; --gz-bg:#f7f9f8;
  --gz-radius:12px; --gz-radius-sm:9px;
  --gz-shadow:0 2px 10px rgba(20,40,30,.06); --gz-shadow-h:0 8px 26px rgba(20,60,40,.13);
  --gz-t:.2s ease;
}
/* Typography ------------------------------------------------------------- */
body, .comman-body{ font-family:'Quicksand',-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important; color:var(--gz-ink); }
h1,h2,h3,h4,.registerTtile,.Logintitle,.cart-title{ letter-spacing:.1px !important; font-weight:700 !important; }
/* tame the over-wide letter-spacing that reads dated */
.checkoutBtn, .themebtn, .card-btn, .btnLabel, .cart-title, .existing-title, .order-summary-price-label{ letter-spacing:.2px !important; }

/* Buttons ---------------------------------------------------------------- */
.themebtn, .checkoutBtn, .card-btn, .pro-add-to-cart, .add-basket, .loginBtn, .btnPoup,
.btn.themebtn, .waves-effect.checkoutBtn, .btn-block, .add-to-cart-mt, button.btnPoup{
  border-radius:var(--gz-radius-sm) !important;
  transition:transform var(--gz-t), box-shadow var(--gz-t), background-color var(--gz-t) !important;
  box-shadow:0 2px 6px rgba(20,120,70,.18);
  letter-spacing:.2px;
}
.themebtn:hover, .checkoutBtn:hover, .card-btn:hover, .pro-add-to-cart:hover, .add-basket:hover,
.loginBtn:hover, .btnPoup:hover, .btn-block:hover, .add-to-cart-mt:hover{
  transform:translateY(-1px); box-shadow:0 8px 20px rgba(20,120,70,.26) !important; filter:saturate(1.05);
}
/* green primary buttons stay green but crisper */
.checkoutBtn, .pro-add-to-cart, .add-basket, .loginBtn, .themebtn-button{ background-color:var(--gz-green) !important; }
.checkoutBtn:hover, .pro-add-to-cart:hover, .add-basket:hover, .loginBtn:hover{ background-color:var(--gz-green-d) !important; }

/* Inputs ----------------------------------------------------------------- */
input[type=text], input[type=password], input[type=email], input[type=tel], input[type=number],
select, textarea, .search-box input, #searchBoxWeb, .form-control{
  border-radius:var(--gz-radius-sm) !important; border:1px solid var(--gz-line) !important;
  transition:border-color var(--gz-t), box-shadow var(--gz-t) !important;
}
input:focus, select:focus, textarea:focus, .form-control:focus, #searchBoxWeb:focus{
  border-color:var(--gz-green) !important; box-shadow:0 0 0 3px rgba(26,156,83,.15) !important; outline:none;
}
.search-box, .searchboxdiv{ border-radius:var(--gz-radius) !important; }

/* Cards / panels --------------------------------------------------------- */
.login-panel, .register-panel, .common-card-details, .checkout-summary, .order-summary-box,
.card-panel, .product-card, .prd-card, .cart-summary, .userAccountCard, .account-card,
.pay-option, .checkoutcard, .white-box{
  border-radius:var(--gz-radius) !important;
  box-shadow:var(--gz-shadow) !important; border:1px solid var(--gz-line) !important;
  transition:box-shadow var(--gz-t), transform var(--gz-t) !important;
}
.product-card:hover, .prd-card:hover{ box-shadow:var(--gz-shadow-h) !important; transform:translateY(-3px); }

/* Category circle nav: uniform sizing + tidy 2-line labels ---------------- */
.category_nav .cat-icon, .categorySlider img, .category-circle img{ border-radius:50% !important; }
.category_nav .cat-title, .category-title{ white-space:normal !important; line-height:1.2; font-size:13px !important; font-weight:600; }

/* Price accents ---------------------------------------------------------- */
.product-price, .prd-price, .final-pay-amount, .order-total-price, .netPayable{ color:var(--gz-green-d) !important; font-weight:700 !important; }

/* Section backgrounds & spacing ------------------------------------------ */
.recently-viewed-title:after, .heading-underline{ background:var(--gz-orange) !important; }
.breadcrumb-bar, .breadcrumbs{ background:var(--gz-bg) !important; }

/* Scroll-to-top FAB ------------------------------------------------------ */
#scrollToTop, .scrollup, .back-to-top{ box-shadow:0 6px 18px rgba(20,120,70,.35) !important; transition:transform var(--gz-t) !important; }
#scrollToTop:hover, .scrollup:hover, .back-to-top:hover{ transform:translateY(-2px) scale(1.05); }

/* Softer top info bar (keep orange identity, refine) --------------------- */
.top-header, .topbar, .top-strip{ background:linear-gradient(90deg,var(--gz-orange),#f68b3c) !important; }

/* ---------- MODERN POLISH · Round 2 (product cards, header, footer) ------- */
/* Product cards: soft card + hover lift + gentle image zoom */
.product-item{
  border-radius:var(--gz-radius) !important; background:#fff;
  box-shadow:var(--gz-shadow) !important; border:1px solid var(--gz-line) !important;
  overflow:hidden; transition:box-shadow var(--gz-t), transform var(--gz-t) !important;
}
.product-item:hover{ box-shadow:var(--gz-shadow-h) !important; transform:translateY(-4px); }
.product-item img{ transition:transform .35s ease !important; }
.product-item:hover img{ transform:scale(1.05); }
.product-item .product-name, .product-item .prd-name{ font-weight:600 !important; color:var(--gz-ink) !important; }

/* Search box: pill + subtle inner shadow */
#searchBoxWeb, .search-box input{ background:#f4f7f5 !important; }
.search-box, form[role=search], .searchboxdiv{ border-radius:999px !important; overflow:hidden; }

/* Header: light hairline under it for separation */
header, .main-header, .header-middle{ border-bottom:1px solid var(--gz-line); }

/* Section headings: cleaner + orange accent underline */
.section-title, .shop-by-category-title, .home-section-title{
  font-weight:700 !important; letter-spacing:.2px !important;
}
.section-title:after, .home-section-title:after{
  content:""; display:block; width:56px; height:3px; margin:10px auto 0;
  background:var(--gz-orange); border-radius:3px;
}

/* Footer: calmer background, hover on links */
footer, .footer{ background:var(--gz-bg) !important; }
.footer a, .footer-link a, footer a{ transition:color var(--gz-t) !important; }
.footer a:hover, footer a:hover{ color:var(--gz-green) !important; }

/* Quantity steppers / small controls: rounded */
.qty-box, .quantity-box, input[type=number]{ border-radius:var(--gz-radius-sm) !important; }

/* Badges (cart/wishlist counts): crisper */
.cart-count, .wishlist-count, .badge{ box-shadow:0 1px 4px rgba(0,0,0,.2); }

/* ==========================================================================
   MODERN POLISH · Product Detail Page (scoped to .product-section)  2026-07-05
   Delivers the approved PDP redesign look via CSS; commerce logic untouched.
   ========================================================================== */
.product-section{ font-family:var(--sans); }
.product-section .breadcrumbs-section{ background:transparent; padding:14px 0 2px; }
.product-section .breadcrumbs-section a,.product-section .breadcrumbs-section span{ color:var(--muted); font-size:13px; }
.product-section .container{ display:flex; flex-wrap:wrap; gap:38px; align-items:flex-start; }
.product-section #product-image-content{ flex:1 1 380px; max-width:520px; }
.product-section .col.m6.l6.s12:not(#product-image-content){ flex:1 1 420px; }

/* gallery stage — Swiper 11 gallery (.pdp-*, see product-gallery.css).
   Was #ninja-slider / #thumbnail-slider (menucool trialware), removed 2026-07-14. */
.product-section .product-view{
  border-radius:var(--gz-radius) !important;
  background:linear-gradient(160deg,#f2f7ee,#e7f1e2) !important;
  border:1px solid var(--line) !important; box-shadow:var(--gz-shadow) !important;
  overflow:hidden !important; position:relative; padding:10px;
}
/* the fullscreen gallery is a viewport-level layer — the stage box must not
   re-apply its padded, gradient, clipped frame around it */
.product-section .product-view:has(.pdp-gallery--fs){
  background:transparent !important; border:0 !important; box-shadow:none !important; padding:0;
}
.product-section .pdp-main{ box-shadow:var(--gz-shadow); }

/* title + short desc */
.product-section h1.productName,
.product-section .product-details-heading{
  font-family:var(--serif) !important; font-weight:600 !important;
  font-size:34px !important; line-height:1.12 !important; letter-spacing:.2px !important;
  color:var(--ink) !important; text-wrap:balance; margin:4px 0 8px !important;
}
.product-section .product-des-short{ color:var(--muted) !important; font-size:15px !important; max-width:60ch; }

/* brand pill + in-stock (added markup) */
.gz-brandrow{ display:flex; gap:10px; align-items:center; margin-bottom:2px; }
.gz-brandpill{ font-size:11.5px; font-weight:700; letter-spacing:.6px; text-transform:uppercase;
  color:var(--herb); background:var(--chip); padding:5px 11px; border-radius:999px; }
.gz-instock{ font-size:12.5px; color:var(--ok); font-weight:600; display:inline-flex; gap:6px; align-items:center; }
.gz-instock::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--ok); box-shadow:0 0 0 3px rgba(22,122,69,.18); }

/* rating */
.product-section .ratings{ display:flex; align-items:center; gap:10px; margin:6px 0 14px; }
.product-section .ratings .rating-icons img{ width:16px; height:16px; }
.product-section .ratings .label{ color:var(--muted); font-size:13.5px; }

/* brand / delivery selector -> clean rows */
.product-section .product__selector{
  display:flex; gap:10px; flex-wrap:wrap; margin:14px 0 16px; padding:0; border:0;
}
.product-section .product__sele{
  background:var(--card); border:1px solid var(--line); border-radius:12px;
  padding:11px 16px; box-shadow:var(--gz-shadow); display:flex; flex-direction:column; gap:3px; align-items:flex-start; min-width:150px;
}
.product-section .product__sele > div:first-child{ color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.5px; font-weight:600; }
.product-section .product__sele > div:last-child{ font-weight:700; color:var(--ink); font-size:14.5px; }

/* price / total cost */
.product-section .total-product-cost{ color:var(--muted) !important; font-size:12.5px !important; font-weight:600 !important; letter-spacing:.4px; }
.product-section #finalTotalPrice,
.product-section .product-detail-price{ color:var(--herb-d) !important; font-weight:700 !important; }
.product-section .product__sele.pl-0,.product-section .price-summary.product-detail-price{ display:block; }
.product-section #finalTotalPrice{ font-size:30px !important; font-variant-numeric:tabular-nums; }

/* qty stepper */
.product-section .qtybtn-inner{ display:inline-flex; align-items:center; gap:10px; background:var(--card);
  border:1px solid var(--line); border-radius:12px; padding:6px 12px; box-shadow:var(--gz-shadow); }
.product-section .qtybtn-inner label{ color:var(--muted); font-weight:700; font-size:12px; letter-spacing:.4px; }
.product-section #totalQty{ width:56px; border:0 !important; background:transparent !important; font-weight:700; text-align:center; font-size:16px; color:var(--ink); }

/* add to basket CTA */
.product-section .add-basket{
  background:var(--herb) !important; color:#fff !important; border:0 !important;
  border-radius:12px !important; padding:0 26px !important; height:54px !important;
  font-weight:700 !important; font-size:15.5px !important; letter-spacing:.3px;
  box-shadow:0 6px 18px rgba(22,122,69,.28) !important; transition:.2s !important;
  display:inline-flex !important; align-items:center; gap:10px;
}
.product-section .add-basket:hover{ background:var(--herb-d) !important; transform:translateY(-1px); box-shadow:0 12px 26px rgba(22,122,69,.34) !important; }
.product-section .out-stock-actn-div .add_btn_rtl{ border-radius:12px !important; height:54px; }

/* spec list */
.product-section .product-detail ul{ display:flex; flex-direction:column; gap:8px; padding:0; margin:12px 0; }
.product-section .product-detail ul li{ list-style:none; color:var(--muted); font-size:14px; display:flex; gap:8px; align-items:center; }

/* trust badges (added markup) */
.gz-trust{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin:20px 0 6px; max-width:520px; }
.gz-trust .tb{ background:var(--card); border:1px solid var(--line); border-radius:12px; padding:12px 8px; text-align:center; box-shadow:var(--gz-shadow); }
.gz-trust .tb .ic{ width:36px; height:36px; border-radius:50%; background:var(--chip); color:var(--herb); display:grid; place-items:center; margin:0 auto 7px; font-size:16px; font-weight:700; }
.gz-trust .tb small{ display:block; font-size:11px; font-weight:600; color:var(--ink); line-height:1.3; }

@media(max-width:860px){
  .product-section .container{ gap:22px; } .product-section h1.productName{ font-size:27px !important; }
  .gz-trust{ grid-template-columns:repeat(2,1fr); }
}

/* ---- palette tokens used by the PDP / trust / pill styles (define once) ---- */
:root{
  --herb:#167a45; --herb-d:#0f5e34; --leaf:#2ea45f; --turmeric:#df8724; --turmeric-d:#c06f14;
  --card:#ffffff; --ink:#182a20; --muted:#5f7367; --line:#e2ebe0; --chip:#eef4ea; --ok:#167a45;
  --serif:'Palatino Linotype','Iowan Old Style',Palatino,Georgia,'Times New Roman',serif;
  --sans:'Quicksand',system-ui,-apple-system,'Segoe UI',sans-serif;
}

/* ---- header cart / wishlist count badges: white pill, legible BLACK number ---- */
#cartTotalItem, #wishlistItem,
.cart__indicate, .heart__indicate,
.withbadges .badge{
  background:#ffffff !important;
  color:#000000 !important;
  border:1.6px solid var(--herb) !important;
  min-width:19px !important; height:19px !important; padding:0 4px !important;
  border-radius:999px !important;
  font-family:"Work Sans","HelveticaNeue","Helvetica Neue",Arial,sans-serif !important;
  font-size:11.5px !important; font-weight:800 !important; line-height:15px !important;
  text-align:center !important;
  box-shadow:0 1px 5px rgba(20,50,32,.22) !important;
  position:absolute !important; top:-8px !important; right:-9px !important;
  box-sizing:border-box !important;
}
/* the material-icons cart/heart glyphs themselves stay neutral (not orange) */
.header-cart-icon.carticon, .header-cart-icon{ color:var(--ink) !important; }

/* ==========================================================================
   MODERN POLISH · Home page (scoped .home-page-modern + gz-usp / gz-consult) 2026
   ========================================================================== */
.home-page-modern{ font-family:var(--sans); }
/* hero banner -> rounded framed */
.home-page-modern .mobile-banner-top{ padding-top:22px !important; }
.home-page-modern .mobile-banner-top .owl-carousel .item img,
.home-page-modern .mobile-banner-top .item img{ border-radius:20px !important; box-shadow:var(--gz-shadow-h) !important; }
/* section headings */
.home-page-modern .main_title,
.home-page-modern .card-title,
.home-page-modern .recently-title{
  font-family:var(--serif) !important; font-weight:600 !important; font-size:25px !important;
  color:var(--ink) !important; letter-spacing:.5px !important; border:0 !important;
}
.home-page-modern .main_title .sub_title{
  font-family:var(--sans) !important; font-weight:500 !important; font-size:13.5px !important;
  color:var(--muted) !important; letter-spacing:0 !important; margin-top:5px !important;
}
.home-page-modern .main_title .see-btn,
.home-page-modern .main_title .view-all a{
  font-family:var(--sans) !important; font-weight:700 !important; font-size:13.5px !important; color:var(--herb) !important;
}
.home-page-modern .main_title .see-btn:hover{ text-decoration:underline !important; }
/* product cards */
.home-page-modern .cards, .home-page-modern .card{
  border-radius:var(--gz-radius) !important; box-shadow:var(--gz-shadow) !important;
  border:1px solid var(--line) !important; overflow:hidden;
  transition:transform var(--gz-t), box-shadow var(--gz-t) !important;
}
.home-page-modern .cards:hover, .home-page-modern .card:hover{ transform:translateY(-4px); box-shadow:var(--gz-shadow-h) !important; }
.home-page-modern .crossprice{ color:var(--muted) !important; }

/* USP / trust strip */
.gz-usp-wrap{ margin:22px auto 6px; }
.gz-usp{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.gz-usp .u{ display:flex; gap:12px; align-items:center; background:var(--card); border:1px solid var(--line); border-radius:14px; padding:14px 16px; box-shadow:var(--gz-shadow); }
.gz-usp .u .ic{ flex:none; width:44px; height:44px; border-radius:12px; background:var(--chip); color:var(--herb); display:grid; place-items:center; font-size:19px; }
.gz-usp .u b{ font-size:14px; display:block; color:var(--ink); } .gz-usp .u small{ color:var(--muted); font-size:12.5px; }

/* consult with Dr. Neha band */
.gz-consult-wrap{ margin:34px auto 8px; }
.gz-consult{ border-radius:22px; overflow:hidden; color:#fff; box-shadow:var(--gz-shadow-h);
  background:linear-gradient(120deg,#0f5e34,#167a45 55%,#2ea45f);
  display:grid; grid-template-columns:1.5fr 1fr; gap:20px; align-items:center; padding:32px 40px; }
.gz-consult .k{ font-size:12px; font-weight:700; letter-spacing:.6px; text-transform:uppercase; opacity:.85; }
.gz-consult h3{ font-family:var(--serif); font-weight:600; font-size:26px; margin:6px 0 8px; color:#fff; }
.gz-consult p{ opacity:.92; font-size:14.5px; max-width:52ch; }
.gz-consult .cta{ text-align:right; }
.gz-consult .price{ font-size:15px; opacity:.92; } .gz-consult .price b{ font-size:32px; } .gz-consult .price s{ opacity:.7; }
.gz-consult .cbtn{ display:inline-block; margin-top:12px; background:#fff; color:var(--herb-d) !important; border-radius:11px; padding:13px 24px; font-weight:700; transition:var(--gz-t); }
.gz-consult .cbtn:hover{ transform:translateY(-1px); box-shadow:0 10px 24px rgba(0,0,0,.25); }

@media(max-width:900px){
  .gz-usp{ grid-template-columns:repeat(2,1fr); }
  .gz-consult{ grid-template-columns:1fr; } .gz-consult .cta{ text-align:left; }
}

/* =========================================================================
   Category nav (text pills) — keep a single, stable-height row so the fixed
   header stays ~204px and the recalibrated content offset (210px) never gaps
   or overlaps. Center when it fits; scroll horizontally when it doesn't.
   ========================================================================= */
.gz-catnav-roots{ flex-wrap: nowrap !important; width: max-content; max-width: 100%;
    margin: 0 auto; overflow-x: auto; scrollbar-width: none; }
.gz-catnav-roots::-webkit-scrollbar{ display: none; }
.gz-cat-root{ white-space: nowrap; flex: 0 0 auto; }

/* category name pills — listing pages (search sub-nav + category grid).
   Base pill style also defined inline in header for the home nav. */
.gz-cat-parent{ display:inline-block; background:#fff; border:1px solid #e0e8e3; color:#2f4a3a;
    font-size:13px; font-weight:500; padding:6px 13px; border-radius:16px; text-decoration:none; transition:all .15s; }
.gz-cat-parent:hover{ border-color:#2e7d32; color:#2e7d32; background:#eef6ef; }
.gz-cat-parent-active{ background:#14532d; border-color:#14532d; color:#fff; }
.gz-listnav{ display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 6px; align-items:center; }
