/* =========================================================
   Genetrix Natura — theme overrides for the Unimart template
   1. Brand colors: blue → Genetrix green
   2. Enquiry-only site (no prices / no cart UI)
   3. Topbar: phone + email + social icons
   4. Header: bigger logo, only search icon, no hamburger
   5. Template boxed widths kept as-is (design same)
   ========================================================= */
:root {
    --color-primary: #2f7d32;
    --color-secondary: #f59e0b;
    --color-green: #2f7d32;
    --color-light-green: #eef7ee;
    --color-brand-200: #eaf4ea;
    --color-brand-300: #d3e8d3;
    --color-brand-400: #bcd9bf;
    --color-brand-500: #a4cda6;
    --color-brand-600: #7ba87c;
    --color-brand-700: #648e5f;
    --color-element-bg-blue: #eaf6ea;
    --color-extra-five: #eaf6ea;
    --color-extra-seven: #d3ecd3;
    --color-extra-six: #e0eee2;
}

/* ============ Template boxed widths — UNCHANGED ============ */
/* (full-bleed overrides removed per user request) */

/* hero banner content readable on light bg */
.rbt-product-banner.rbt-banner-four-var-two {
    background: #f4f9f3;
}

/* product card enquiry buttons green */
.rbt-card-footer.footer-content-btn .rbt-btn {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

/* =========================================================
   ENQUIRY-ONLY SITE — sales UI hidden (no prices / no cart)
   ========================================================= */
.pricing-part,
.rbt-pricing-part,
.rbt-price-desc-text,
.rbt-offer-badge,
.rbt-remaining-popup {
    display: none !important;
}

/* deal countdown section hidden (enquiry model, no sales) */
.rbt-counterdown-area {
    display: none !important;
}

/* =========================================================
   HEADER — logo bada, sirf search icon, hamburger hidden
   ========================================================= */
.mobile-menu-bar,
.hamberger-button { display: none !important; }

.rbt-header .logo img {
    height: 64px !important;
    width: auto !important;
    max-height: 64px !important;
    object-fit: contain !important;
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .rbt-header .logo img { height: 54px !important; max-height: 54px !important; }
}
@media (max-width: 991px) {
    .rbt-header .logo img { height: 44px !important; max-height: 44px !important; }
}
@media (max-width: 575px) {
    .rbt-header .logo img { height: 36px !important; max-height: 36px !important; }
}

/* header icons: sirf SEARCH li dikhe */
.rbt-quick-access > li:nth-child(n+2) { display: none !important; }

/* =========================================================
   TOPBAR — left: phone | right: email
   ========================================================= */
.rbt-header-campaign .inner.gn-topbar-flex {
    display: flex !important;
    align-items: center;
    justify-content: space-between !important;
    gap: 18px;
    padding: 9px 0;
}
.gn-topbar-contact { display: flex; align-items: center; gap: 16px; white-space: nowrap; min-width: 0; }
.gn-topbar-contact a {
    color: #fff; font-size: 14px; font-weight: 500;
    display: inline-flex; align-items: center; gap: 8px; text-decoration: none;
}
.gn-topbar-contact a:hover { color: #d6f5d7; }
.gn-topbar-contact i { font-size: 13px; }

.gn-topbar-mail-wrap { display: flex; align-items: center; justify-content: flex-end; min-width: 0; }
.gn-topbar-mail {
    display: inline-flex; align-items: center; gap: 8px;
    color: #fff; font-size: 14px; font-weight: 500;
    text-decoration: none; white-space: nowrap;
}
.gn-topbar-mail i { font-size: 13px; }
.gn-topbar-mail:hover { color: #d6f5d7; }

@media (max-width: 767.98px) {
    .rbt-header-campaign .inner.gn-topbar-flex { padding: 8px 0; gap: 10px; }
    .gn-topbar-contact a, .gn-topbar-mail { font-size: 12.5px; }
    .gn-topbar-contact i, .gn-topbar-mail i { font-size: 12px; }
}
@media (max-width: 479.98px) {
    .gn-topbar-contact a, .gn-topbar-mail { font-size: 11.5px; gap: 5px; }
}

/* =========================================================
   HEADER LAYOUT — logo left, nav centre, icons right (desktop)
   burger (mobile) below 992px
   ========================================================= */
@media (min-width: 992px) {
    .rbt-header .mainbar-row {
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        gap: 22px;
        min-height: 74px;
        position: relative;
    }
    .rbt-header .header-left,
    .rbt-header .header-right { flex: 0 0 auto; display: flex; align-items: center; }
    .rbt-header .header-left .rbt-header-content { display: flex; align-items: center; gap: 0; }

    /* logo: stop centring it with absolute positioning */
    .rbt-header .header-info .logo {
        position: static !important;
        left: auto !important;
        transform: none !important;
    }
    .rbt-header .header-info .logo img {
        height: 60px !important;
        max-height: 60px !important;
        width: auto !important;
    }

    /* navigation container */
    .rbt-header .mainbar-row > .rbt-header-content {
        display: flex !important;
        align-items: center;
        justify-content: center;
        flex: 1 1 auto;
        min-width: 0;
    }
    .rbt-header .header-info.d-none.d-xl-block { display: block !important; width: 100%; }
    .rbt-header .rbt-mainmenu-nav { display: block !important; }
    .rbt-header .mainmenu {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        flex-wrap: nowrap;
        margin: 0;
        padding: 0;
        list-style: none;
    }
    .rbt-header .mainmenu > li > a {
        display: inline-block;
        font-size: 14.5px;
        padding: 10px 12px;
        white-space: nowrap;
    }
    .rbt-header .mainbar-row > .header-info.d-xl-none.d-block { display: none !important; }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .rbt-header .mainmenu > li > a { font-size: 13.5px; padding: 9px 8px; }
    .rbt-header .header-info .logo img { height: 52px !important; max-height: 52px !important; }
}
@media (max-width: 991.98px) {
    .mobile-menu-bar,
    .hamberger-button,
    .hamberger { display: flex !important; }
}

/* the campaign-bar close (X) overlaps the email — not needed anymore */
.rbt-header-campaign .icon-close { display: none !important; }

/* =========================================================
   ENQUIRY BUTTONS consistent green
   ========================================================= */
.rbt-card-footer .rbt-btn,
.rbt-btn-enquiry {
    background: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
    color: #fff !important;
}
.rbt-card-footer .rbt-btn:hover,
.rbt-btn-enquiry:hover {
    background: #1e5c23 !important;
    border-color: #1e5c23 !important;
    color: #fff !important;
}

/* bottom nav badge counters hidden (enquiry-only) */
.access-box-count { display: none !important; }
.gn-hide { display: none !important; }

/* sale / discount badges hidden (enquiry-only) */
.rbt-product-badge { display: none !important; }

/* =========================================================
   PRELOADER — not required
   ========================================================= */
.rbt-preloader { display: none !important; }

/* =========================================================
   PRODUCTS dropdown — simple, clean
   ========================================================= */
.rbt-mainmenu-nav .mainmenu li.has-dropdown > .submenu {
    min-width: 258px;
    padding: 10px 0;
    border-radius: 0 0 12px 12px;
    box-shadow: 0 18px 38px rgba(24, 52, 26, .12);
    border-top: 2px solid var(--color-primary);
}
.rbt-mainmenu-nav .mainmenu li.has-dropdown > .submenu > li > a {
    padding: 9px 20px;
    font-size: 15px;
    font-weight: 500;
    color: #33402f;
    transition: all .2s ease;
}
.rbt-mainmenu-nav .mainmenu li.has-dropdown > .submenu > li > a:hover {
    color: var(--color-primary);
    background: #f1f8f1;
    padding-left: 26px;
}

/* =========================================================
   CLIENTS LOGO STRIP
   ========================================================= */
.gn-clients-area {
    padding: 78px 0 34px;
    background: #fff;
}
.gn-clients-head {
    text-align: center;
    margin-bottom: 34px;
}
.gn-clients-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}
.gn-client-chip {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 18px 16px;
    border: 1px solid #e6efe6;
    border-radius: 14px;
    background: #fbfdfb;
    transition: all .25s ease;
}
.gn-client-chip:hover {
    border-color: var(--color-primary);
    box-shadow: 0 12px 26px rgba(47, 125, 50, .12);
    transform: translateY(-2px);
}
.gn-client-mark {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #eaf4ea;
    color: var(--color-primary);
    font-weight: 800;
    font-size: 14px;
    letter-spacing: .5px;
}
.gn-client-name {
    font-weight: 600;
    color: #2b3b2c;
    font-size: 15px;
}

/* =========================================================
   TESTIMONIALS
   ========================================================= */
.gn-testimonials-area {
    padding: 82px 0 92px;
    background: #f4f9f3;
}
.gn-testi-head {
    margin-bottom: 42px;
}
.gn-testi-sub {
    color: #6b7a6b;
    margin: 12px auto 0;
    max-width: 620px;
}
.gn-testi-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}
.gn-testi-card {
    position: relative;
    background: #fff;
    border: 1px solid #e6efe6;
    border-radius: 18px;
    padding: 30px 28px 26px;
    margin: 0;
    box-shadow: 0 8px 26px rgba(30, 60, 32, .06);
    transition: all .28s ease;
    display: flex;
    flex-direction: column;
}
.gn-testi-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 44px rgba(30, 60, 32, .13);
    border-color: #cfe4d0;
}
.gn-testi-quote {
    width: 46px;
    height: 46px;
    border-radius: 13px;
    background: #eaf4ea;
    color: var(--color-primary);
    display: grid;
    place-items: center;
    font-size: 18px;
    margin-bottom: 16px;
}
.gn-stars {
    color: #f5a623;
    font-size: 14px;
    letter-spacing: 2px;
    margin-bottom: 12px;
}
.gn-testi-card blockquote {
    margin: 0 0 22px;
    padding: 0;
    border: 0;
    font-size: 15.5px;
    line-height: 1.75;
    color: #3c4a3d;
}
.gn-testi-card figcaption {
    display: flex;
    align-items: center;
    gap: 12px;
    border-top: 1px solid #eef4ee;
    padding-top: 18px;
    margin-top: auto;
}
.gn-avatar {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 50%;
    background: var(--color-primary);
    color: #fff;
    display: grid;
    place-items: center;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: .5px;
}
.gn-who {
    display: flex;
    flex-direction: column;
    line-height: 1.35;
}
.gn-who strong {
    font-size: 15px;
    color: #22301f;
}
.gn-who small {
    font-size: 12.5px;
    color: #7b8a7b;
}
.gn-verified {
    margin-left: auto;
    font-size: 12px;
    color: var(--color-primary);
    font-weight: 600;
    white-space: nowrap;
}
.gn-verified i { margin-right: 4px; }

@media (max-width: 991px) {
    .gn-clients-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gn-testi-grid { grid-template-columns: 1fr; }
    .gn-clients-area { padding: 56px 0 20px; }
    .gn-testimonials-area { padding: 60px 0 70px; }
}
@media (max-width: 575px) {
    .gn-clients-grid { grid-template-columns: 1fr; }
    .gn-testi-card { padding: 24px 20px; }
    .gn-verified { display: none; }
}
