/*
Theme Name: Harvest Horizon Child — AgriDrive
Template: harvest-horizon
Description: AgriDrive EC child theme. Brand palette, typography overrides, WhatsApp widget, schema, GA4.
Version: 1.8.5
Text Domain: harvest-horizon-child
*/

:root {
    --agri-green: #2f4a26;       /* deep forest/olive green */
    --agri-green-dark: #22361c;
    --agri-charcoal: #1b1b18;    /* near-black */
    --agri-offwhite: #f6f3ec;    /* warm off-white */
    --agri-wheat: #c9a35a;       /* muted wheat/brass accent */
}

/* --- AgriDrive brand overrides on Harvest Horizon --- */
body { background: var(--agri-offwhite); }

/* Buttons and links inherit the green, not the theme demo colour.
   Pill geometry sitewide; catalogue contexts add full-width + letter-spacing. */
.button, button[type=submit], .woocommerce a.button, .woocommerce button.button,
.agrfq-btn, .woocommerce .cart-empty + .return-to-shop .button {
    background-color: var(--agri-green);
    background-image: none; /* theme/plugin ship a pink gradient that paints over our colour */
    color: var(--agri-offwhite);
    border: none;
    border-radius: 999px;
    transition: background-color .2s ease, transform .2s ease;
}
.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover,
.agrfq-btn:hover {
    background-color: var(--agri-green-dark);
    background-image: none;
    color: var(--agri-offwhite);
}

/* Display font: Outfit on all headings + product titles (theme intended it but
   never loaded it; we enqueue it in functions.php). */
.woocommerce ul.products li.product .mt-pro-title,
.woocommerce div.product .product_title,
.woocommerce div.product .related > h2,
.woocommerce div.product .woocommerce-Tabs-panel h2,
.agri-specs caption,
.mt-section-title, .entry-title {
    font-family: 'Outfit', 'Open Sans', system-ui, sans-serif;
    letter-spacing: -0.01em;
}

/* Product spec tables (description content from importer): elevated, roomy,
   zebra-striped, with a green header column. */
.agri-specs {
    width: 100%;
    max-width: 560px;
    border-collapse: separate;
    border-spacing: 0;
    margin-top: 14px;
    border: 1px solid #ece7db;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
}
.agri-specs th, .agri-specs td {
    text-align: left;
    padding: 14px 18px;
    border-bottom: 1px solid #f0ebdf;
    line-height: 1.45;
}
.agri-specs tr:last-child th, .agri-specs tr:last-child td { border-bottom: none; }
.agri-specs tr:nth-child(even) td,
.agri-specs tr:nth-child(even) th { background: #faf8f2; }
.agri-specs th {
    color: var(--agri-green);
    font-weight: 600;
    width: 42%;
    background: #f6f3ea;
    border-right: 1px solid #f0ebdf;
}
.agri-specs tr:nth-child(even) th { background: #f1ede2; }

/* Hide any residual Woo price/total elements as a belt-and-braces layer */
.woocommerce .price, .woocommerce-Price-amount, .cart-subtotal, .order-total { display: none !important; }

/* --- Header brand colour (overrides parent theme's hardcoded teal #1B756B) --- */
.mt-main-header,
.mt_header_wrap .mt-main-header {
    background: var(--agri-green) !important;
}

/* --- Logo sizing --- */
.mt-head-logo img {
    max-height: 60px;
    width: auto;
}

/* Kill the parent theme's "Harvest" branded preloader splash */
#mt-preloader { display: none !important; }

/* --- WooCommerce catalogue: quote-first card system --- */

/* Airy grid: wider gutters between cards (theme uses CSS grid columns-4). */
.woocommerce ul.products,
.woocommerce-page ul.products {
    gap: 28px !important;
    margin-bottom: 8px;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    margin: 0 !important;
    float: none;
    padding: 0;
    border: none;
    background: transparent;
}

/* --- Card system (theme uses .mt-eco-product loop markup, not .woocommerce-loop-*) --- */

/* The card shell: white, generous rounding, hairline border, hover lift. */
.woocommerce ul.products li.product .mt-eco-product {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #fff;
    border: 1px solid #ece7db;
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
    /* override the theme's hover padding/margin-collapse trickery for the
       absolutely-positioned hover button, which we no longer use. */
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}
.woocommerce ul.products li.product .mt-eco-product:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 30px rgba(27, 27, 24, .10);
    border-color: #e3dcca;
}

/* Image area: big, airy, product floats centered on white with breathing room. */
.woocommerce ul.products li.product .mt-product-img {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    padding: 22px;
    background: #fff;
    border-bottom: 1px solid #f2eee3;
}
.woocommerce ul.products li.product .mt-product-img img {
    width: auto !important;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    border-radius: 0;
    mix-blend-mode: multiply; /* drops any off-white product backgrounds into the card */
}

/* Category badge pill, top-left over the image (wheat accent). Rendered by the
   loop override at priority 9, so it sits as a sibling before .mt-product-img —
   absolutely position it within the relative .mt-eco-product. */
.woocommerce ul.products li.product .agri-card-badge {
    position: absolute;
    top: 14px;
    left: 14px;
    z-index: 3;
    display: inline-block;
    padding: 5px 12px;
    border-radius: 999px;
    background: var(--agri-green);
    color: var(--agri-offwhite);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    line-height: 1.3;
    max-width: calc(100% - 28px);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-shadow: 0 2px 6px rgba(27, 27, 24, .12);
}

/* Card body. */
.woocommerce ul.products li.product .mt-product-info {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 22px 24px 24px;
}
.woocommerce ul.products li.product .mt-pro-title {
    display: block;
    color: var(--agri-charcoal);
    font-size: 19px;
    line-height: 1.28;
    font-weight: 600;
    margin: 0;
    transition: color .18s ease;
}
.woocommerce ul.products li.product .mt-pro-title:hover { color: var(--agri-green); }

/* Small muted SKU line under the title. */
.woocommerce ul.products li.product .agri-card-sku {
    display: block;
    margin-top: 7px;
    font-size: 12px;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #9a958a;
    font-family: ui-monospace, 'SFMono-Regular', Menlo, monospace;
}

/* Quote catalogue: no prices, no empty rating block, no leftover sale flashes. */
.woocommerce ul.products li.product .mt-pro-price,
.woocommerce ul.products li.product .price,
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale { display: none !important; }
.woocommerce ul.products li.product .mt-pro-rating[title*="Rated 0"] { display: none !important; }

/* "Add to Quote" CTA: full-width green pill, always visible (theme hides it
   until hover), pushed to the bottom of the card so titles can vary in length. */
.woocommerce ul.products li.product .mt-pro-btn.mt-btn,
.woocommerce ul.products li.product .mt-pro-btn,
.woocommerce ul.products li.product a.button.add_to_cart_button {
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    width: 100% !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin: 18px 0 0 !important;
    padding: 13px 18px !important;
    font-size: 14px !important;
    font-weight: 600;
    letter-spacing: .02em;
    text-align: center;
    background: var(--agri-green) !important;
    color: var(--agri-offwhite) !important;
    border-radius: 999px !important;
    border: none !important;
}
/* anchor the CTA to the card bottom regardless of title height */
.woocommerce ul.products li.product .mt-pro-btn { margin-top: auto !important; }
.woocommerce ul.products li.product .mt-pro-btn.mt-btn:hover,
.woocommerce ul.products li.product .mt-pro-btn:hover,
.woocommerce ul.products li.product a.button.add_to_cart_button:hover {
    background: var(--agri-green-dark) !important;
    color: var(--agri-offwhite) !important;
}
/* "View Quote ✓ basket" confirmation link after AJAX add */
.woocommerce ul.products li.product .added_to_cart {
    display: block;
    text-align: center;
    margin-top: 8px;
    font-size: 13px;
    color: var(--agri-green);
    font-weight: 600;
}

/* --- Category pill navigation (rendered by functions.php on shop + cat archives) --- */
.agri-cat-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0 0 26px;
    padding-bottom: 4px;
}
.agri-cat-pill {
    display: inline-block;
    padding: 11px 20px;
    border: 1px solid #ddd6c6;
    border-radius: 999px;
    background: #fff;
    color: var(--agri-charcoal);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.agri-cat-pill:hover {
    border-color: var(--agri-green);
    color: var(--agri-green);
}
.agri-cat-pill.is-active {
    background: var(--agri-green);
    border-color: var(--agri-green);
    color: var(--agri-offwhite);
}

/* --- Toolbar row: result count + ordering select, as soft rounded chips --- */
.woocommerce .woocommerce-result-count,
.woocommerce-page .woocommerce-result-count {
    margin: 0;
    padding: 9px 0;
    color: #6b675e;
    font-size: 14px;
    line-height: 1.4;
}
.woocommerce .woocommerce-ordering,
.woocommerce-page .woocommerce-ordering {
    margin-bottom: 24px;
}
.woocommerce .woocommerce-ordering select,
.woocommerce-page .woocommerce-ordering select,
.woocommerce .woocommerce-ordering .nice-select {
    appearance: none;
    -webkit-appearance: none;
    background: #fff;
    border: 1px solid #ece7db;
    border-radius: 999px;
    padding: 10px 40px 10px 18px;
    font-size: 14px;
    color: var(--agri-charcoal);
    line-height: 1.3;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(27, 27, 24, .04);
    transition: border-color .18s ease;
}
.woocommerce .woocommerce-ordering select:hover,
.woocommerce .woocommerce-ordering .nice-select:hover { border-color: #d6cdb6; }
/* nice-select (theme's custom dropdown) pill treatment + caret */
.woocommerce .woocommerce-ordering .nice-select { position: relative; }
.woocommerce .woocommerce-ordering .nice-select .list {
    border-radius: 12px;
    border: 1px solid #ece7db;
    box-shadow: 0 10px 26px rgba(27, 27, 24, .12);
    margin-top: 6px;
}
.woocommerce .woocommerce-ordering .nice-select .option.selected { color: var(--agri-green); font-weight: 600; }

/* --- Single product: roomy, elevated, quote-first --- */

/* Layout: bigger gallery, comfortable gutter, summary breathes. */
.woocommerce-active div.product .woocommerce-product-gallery {
    width: 52% !important;
    padding-right: 0;
}
.woocommerce-active div.product .summary.entry-summary {
    width: 44% !important;
    padding-left: 44px;
}
@media (max-width: 880px) {
    .woocommerce-active div.product .woocommerce-product-gallery,
    .woocommerce-active div.product .summary.entry-summary {
        width: 100% !important;
        padding-left: 0;
    }
    .woocommerce-active div.product .summary.entry-summary { margin-top: 26px; }
}

/* Gallery frame: large rounded panel, product floats on white. */
.woocommerce-active div.product .woocommerce-product-gallery figure.woocommerce-product-gallery__wrapper {
    border: 1px solid #ece7db !important;
    border-radius: 16px;
    background: #fff;
    overflow: hidden;
    padding: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.woocommerce-active div.product .woocommerce-product-gallery img {
    border-radius: 0;
    mix-blend-mode: multiply;
}

/* Title: large display headline. */
.woocommerce-active div.product .summary .product_title.entry-title {
    color: var(--agri-charcoal);
    font-size: 36px;
    line-height: 1.12;
    font-weight: 700;
    margin: 0 0 14px;
}

/* Comfortable intro paragraph. */
.woocommerce-active div.product .woocommerce-product-details__short-description {
    color: #4a463e;
    font-size: 16px;
    line-height: 1.62;
    margin-bottom: 26px;
}
.woocommerce-active div.product .woocommerce-product-details__short-description p { margin-bottom: 8px; }

/* Quantity stepper: circular green -/+ controls, tidy centered input. */
.woocommerce-active div.product .mt-quantity {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 14px 0 0;
    vertical-align: middle;
}
.woocommerce-active div.product .mt-quantity input.qty,
.woocommerce-active div.product .mt-quantity input {
    width: 58px;
    height: 44px;
    text-align: center;
    border: 1px solid #ece7db;
    border-radius: 12px;
    background: #fff;
    color: var(--agri-charcoal);
    font-size: 16px;
    font-weight: 600;
    margin: 0 2px;
}
.woocommerce-active div.product .mt-quantity button {
    width: 38px;
    height: 38px;
    line-height: 38px;
    border-radius: 50%;
    background: var(--agri-offwhite);
    color: var(--agri-green);
    border: 1px solid #ece7db;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.woocommerce-active div.product .mt-quantity button:hover {
    background: var(--agri-green);
    border-color: var(--agri-green);
}
.woocommerce-active div.product .mt-quantity button:hover i { color: var(--agri-offwhite); }

/* Add to Quote: large green pill (override theme's pink gradient + hover lift). */
.woocommerce-active div.product form.cart {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px 0;
    margin: 4px 0 8px;
}
.woocommerce-active div.product form.cart .single_add_to_cart_button,
.woocommerce div.product form.cart .single_add_to_cart_button,
.woocommerce div.product form.cart button.button {
    background: var(--agri-green) !important;
    background-image: none !important;
    color: var(--agri-offwhite) !important;
    border: none !important;
    border-radius: 999px !important;
    min-width: 0;
    padding: 15px 38px !important;
    font-size: 16px !important;
    font-weight: 600;
    line-height: 1.2 !important;
    letter-spacing: .02em;
    text-transform: none;
    transition: background-color .2s ease, transform .2s ease;
}
.woocommerce-active div.product form.cart .single_add_to_cart_button:hover,
.woocommerce div.product form.cart .single_add_to_cart_button:hover,
.woocommerce div.product form.cart button.button:hover {
    background: var(--agri-green-dark) !important;
    color: var(--agri-offwhite) !important;
    transform: translateY(-2px);
}

/* Product meta: hairline-divided, calm. SKU/category in muted tone, green links. */
.woocommerce-active div.product .product_meta {
    border-top: 1px solid #ece7db;
    border-bottom: 1px solid #ece7db;
    padding: 18px 0;
    margin: 24px 0 0;
    font-size: 14px;
    color: #6b675e;
    line-height: 1.9;
}
.woocommerce-active div.product .product_meta > span { display: block; margin-right: 0; }
.woocommerce-active div.product .product_meta .sku_wrapper,
.woocommerce-active div.product .product_meta .posted_in { color: #6b675e; }
.woocommerce-active div.product .product_meta .sku,
.woocommerce-active div.product .product_meta a {
    color: var(--agri-green);
    font-weight: 600;
    text-decoration: none;
}
.woocommerce-active div.product .product_meta a:hover { color: var(--agri-green-dark); }

/* Tabs as pills. When only the Description tab remains (Reviews hidden on RFQ),
   suppress the lone tab-nav row and present the panel as a clean titled section. */
.woocommerce-active div.product .woocommerce-tabs ul.tabs.wc-tabs {
    margin: 40px 0 0;
    padding: 0 0 4px;
    border: none;
}
.woocommerce-active div.product .woocommerce-tabs ul.tabs.wc-tabs li {
    margin: 0 10px 0 0;
}
.woocommerce-active div.product .woocommerce-tabs ul.tabs.wc-tabs li a {
    display: block;
    padding: 10px 22px;
    border: 1px solid #ece7db;
    border-radius: 999px;
    background: #fff;
    color: var(--agri-charcoal);
    font-weight: 600;
    transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.woocommerce-active div.product .woocommerce-tabs ul.tabs.wc-tabs li.active a {
    background: var(--agri-green);
    border-color: var(--agri-green);
    color: var(--agri-offwhite);
}
/* Reviews tab is hidden on the RFQ catalogue, leaving Description as the sole
   visible tab — hide the now-pointless single-pill nav (it reads as orphaned). */
.woocommerce-active div.product .woocommerce-tabs ul.tabs.wc-tabs { display: none; }

/* Description panel: roomy, titled card-free section, hide duplicate panel title. */
.woocommerce-active div.product .woocommerce-Tabs-panel {
    padding: 32px 0 0;
    border: none;
    border-radius: 0;
    color: #4a463e;
    font-size: 16px;
    line-height: 1.7;
    margin-top: 28px;
    border-top: 1px solid #ece7db;
}
.woocommerce-active div.product .woocommerce-Tabs-panel > h2:first-child {
    font-size: 24px;
    font-weight: 700;
    color: var(--agri-charcoal);
    margin: 0 0 16px;
    text-transform: none;
}
.woocommerce-active div.product .woocommerce-Tabs-panel p { margin-bottom: 12px; }

/* Related products: inherit the catalogue card system + a better heading. */
.woocommerce-active div.product .related.products {
    margin-top: 56px;
    padding-top: 40px;
    border-top: 1px solid #ece7db;
}
.woocommerce-active div.product .related.products > h2 {
    font-size: 28px;
    font-weight: 700;
    color: var(--agri-charcoal);
    margin: 0 0 26px;
    text-transform: none;
}

/* --- Contact page --- */
.agri-contact-panel {
    background: var(--agri-charcoal);
    color: var(--agri-offwhite);
    border-radius: 10px;
    padding: 36px 34px;
}
.agri-contact-panel h3 { color: #fff; margin: 0 0 6px; }
.agri-contact-panel a { color: var(--agri-offwhite); text-decoration: none; border-bottom: 1px solid rgba(201,163,90,.5); }
.agri-contact-panel a:hover { color: var(--agri-wheat); }
.agri-contact-row { margin: 0 0 20px; }
.agri-contact-label {
    display: block; font-size: 12px; letter-spacing: .12em; text-transform: uppercase;
    color: var(--agri-wheat); margin-bottom: 4px;
}
.agri-contact-row p { margin: 0; line-height: 1.55; }
.agri-contact-legal { font-size: 13px; color: rgba(246,243,236,.7); border-top: 1px solid rgba(246,243,236,.18); padding-top: 16px; margin-top: 24px; }
.agri-contact-legal span { display: inline-block; margin-right: 18px; }
.agri-social { margin-top: 18px; }
.agri-social a {
    display: inline-block; margin-right: 14px; border: none;
    color: var(--agri-offwhite); font-size: 14px;
}
.agri-social a:hover { color: var(--agri-wheat); }
.agri-wa-btn {
    display: inline-flex; align-items: center; gap: 9px;
    background: #25d366 !important; color: #fff !important; border: none !important;
    padding: 14px 26px; border-radius: 6px; font-weight: 700; font-size: 16px;
    text-decoration: none; margin-top: 24px;
}
.agri-wa-btn:hover { background: #1eb858 !important; color: #fff !important; }

.agri-reach {
    background: #fff; border: 1px solid #e9e4d8; border-radius: 10px; padding: 34px 32px;
}
.agri-reach h3 { color: var(--agri-charcoal); margin: 0 0 8px; }
.agri-reach p { color: #4a463e; line-height: 1.6; }
.agri-reach .agri-reach-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 22px; }
.agri-reach-btn {
    display: inline-block; padding: 13px 26px; border-radius: 6px; font-weight: 600;
    text-decoration: none; font-size: 15px;
}
.agri-reach-btn.is-primary { background: #25d366; color: #fff; }
.agri-reach-btn.is-primary:hover { background: #1eb858; color: #fff; }
.agri-reach-btn.is-call { background: var(--agri-green); color: var(--agri-offwhite); }
.agri-reach-btn.is-call:hover { background: var(--agri-green-dark); color: var(--agri-offwhite); }
.agri-reach-btn.is-mail { background: transparent; color: var(--agri-green); border: 1px solid var(--agri-green); }
.agri-reach-btn.is-mail:hover { background: var(--agri-offwhite); }

#agri-contact-map { width: 100%; height: 420px; border-radius: 10px; overflow: hidden; }
#agri-contact-map .leaflet-container { font: inherit; }

@media (max-width: 768px) {
    .agri-contact-panel, .agri-reach { padding: 26px 22px; }
    .agri-reach .agri-reach-actions { flex-direction: column; }
    .agri-reach-btn { text-align: center; }
    #agri-contact-map { height: 320px; }
}

/* Pagination: brand green, not theme pink */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.mt-pagination a, .mt-pagination span.current, .page-numbers li .page-numbers {
    background: #fff !important; color: var(--agri-charcoal) !important; border-color: #e4dfd4 !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.mt-pagination span.current, .page-numbers li .page-numbers.current {
    background: var(--agri-green) !important; color: var(--agri-offwhite) !important;
}

/* RFQ catalogue: reviews are irrelevant noise */
.woocommerce-tabs .reviews_tab, #reviews { display: none !important; }

/* ============================================================
   HOME (.elementor-1677) — design elevation to match catalogue
   ============================================================ */

/* --- Hero: pill buttons + clean lift, confident headline --- */
.elementor-1677 .elementor-element-herobtn1 .elementor-button,
.elementor-1677 .elementor-element-herobtn2 .elementor-button {
    border-radius: 999px;
    transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
}
/* primary off-white pill — give it a soft shadow so it lifts off the photo */
.elementor-1677 .elementor-element-herobtn1 .elementor-button {
    box-shadow: 0 6px 18px rgba(27, 27, 24, .22);
}
.elementor-1677 .elementor-element-herobtn1 .elementor-button:hover,
.elementor-1677 .elementor-element-herobtn2 .elementor-button:hover {
    transform: translateY(-3px);
}
.elementor-1677 .elementor-element-herobtn1 .elementor-button:hover {
    box-shadow: 0 12px 26px rgba(27, 27, 24, .30);
}

/* --- "What We Supply" category tiles → echo the catalogue card system --- */
.elementor-1677 .elementor-element-prodsgrd > .e-con-inner > .e-con,
.elementor-1677 .elementor-element-prodsgrd > .e-con {
    background: #fff;
    border: 1px solid #ece7db;
    border-radius: 16px;
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.elementor-1677 .elementor-element-prodsgrd > .e-con-inner > .e-con:hover,
.elementor-1677 .elementor-element-prodsgrd > .e-con:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 30px rgba(27, 27, 24, .10);
    border-color: #e3dcca;
}
/* image area: full-bleed top of the card, fixed ratio, contained product */
.elementor-1677 .elementor-element-pcat01im,
.elementor-1677 .elementor-element-pcat02im,
.elementor-1677 .elementor-element-pcat03im,
.elementor-1677 .elementor-element-pcat04im,
.elementor-1677 .elementor-element-pcat05im,
.elementor-1677 .elementor-element-pcat06im {
    width: 100%;
    margin: 0;
}
.elementor-1677 .elementor-element-pcat01im .elementor-widget-container,
.elementor-1677 .elementor-element-pcat02im .elementor-widget-container,
.elementor-1677 .elementor-element-pcat03im .elementor-widget-container,
.elementor-1677 .elementor-element-pcat04im .elementor-widget-container,
.elementor-1677 .elementor-element-pcat05im .elementor-widget-container,
.elementor-1677 .elementor-element-pcat06im .elementor-widget-container,
.elementor-1677 .elementor-element-pcat01im figure,
.elementor-1677 .elementor-element-pcat02im figure,
.elementor-1677 .elementor-element-pcat03im figure,
.elementor-1677 .elementor-element-pcat04im figure,
.elementor-1677 .elementor-element-pcat05im figure,
.elementor-1677 .elementor-element-pcat06im figure,
.elementor-1677 .elementor-element-pcat01im a ,
.elementor-1677 .elementor-element-pcat02im a ,
.elementor-1677 .elementor-element-pcat03im a ,
.elementor-1677 .elementor-element-pcat04im a ,
.elementor-1677 .elementor-element-pcat05im a ,
.elementor-1677 .elementor-element-pcat06im a {
    display: block;
    width: 100%;
    margin: 0;
}
.elementor-1677 .elementor-element-pcat01im img ,
.elementor-1677 .elementor-element-pcat02im img ,
.elementor-1677 .elementor-element-pcat03im img ,
.elementor-1677 .elementor-element-pcat04im img ,
.elementor-1677 .elementor-element-pcat05im img ,
.elementor-1677 .elementor-element-pcat06im img {
    display: block;
    width: 100%;
    height: 220px;
    object-fit: contain;
    background: #fff;
    padding: 20px;
    border-bottom: 1px solid #f2eee3;
    mix-blend-mode: multiply;
}
/* text + button sit in a padded body */
.elementor-1677 .elementor-element-pcat01tt,
.elementor-1677 .elementor-element-pcat02tt,
.elementor-1677 .elementor-element-pcat03tt,
.elementor-1677 .elementor-element-pcat04tt,
.elementor-1677 .elementor-element-pcat05tt,
.elementor-1677 .elementor-element-pcat06tt,
.elementor-1677 .elementor-element-pcat01ds,
.elementor-1677 .elementor-element-pcat02ds,
.elementor-1677 .elementor-element-pcat03ds,
.elementor-1677 .elementor-element-pcat04ds,
.elementor-1677 .elementor-element-pcat05ds,
.elementor-1677 .elementor-element-pcat06ds {
    padding-left: 24px;
    padding-right: 24px;
}
.elementor-1677 .elementor-element-pcat01tt,
.elementor-1677 .elementor-element-pcat02tt,
.elementor-1677 .elementor-element-pcat03tt,
.elementor-1677 .elementor-element-pcat04tt,
.elementor-1677 .elementor-element-pcat05tt,
.elementor-1677 .elementor-element-pcat06tt { padding-top: 22px; }
.elementor-1677 .elementor-element-pcat01ds,
.elementor-1677 .elementor-element-pcat02ds,
.elementor-1677 .elementor-element-pcat03ds,
.elementor-1677 .elementor-element-pcat04ds,
.elementor-1677 .elementor-element-pcat05ds,
.elementor-1677 .elementor-element-pcat06ds { padding-bottom: 4px; }

/* "View range" → small green pill, anchored bottom-left of the card body */
.elementor-1677 .elementor-element-pcat01ln,
.elementor-1677 .elementor-element-pcat02ln,
.elementor-1677 .elementor-element-pcat03ln,
.elementor-1677 .elementor-element-pcat04ln,
.elementor-1677 .elementor-element-pcat05ln,
.elementor-1677 .elementor-element-pcat06ln {
    margin: 4px 24px 24px !important;
    margin-top: auto !important;
}
.elementor-1677 .elementor-element-pcat01ln .elementor-button ,
.elementor-1677 .elementor-element-pcat02ln .elementor-button ,
.elementor-1677 .elementor-element-pcat03ln .elementor-button ,
.elementor-1677 .elementor-element-pcat04ln .elementor-button ,
.elementor-1677 .elementor-element-pcat05ln .elementor-button ,
.elementor-1677 .elementor-element-pcat06ln .elementor-button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px 20px !important;
    border-radius: 999px !important;
    background: var(--agri-green) !important;
    color: var(--agri-offwhite) !important;
    font-size: 13px !important;
    letter-spacing: .04em !important;
    transition: background-color .2s ease, transform .2s ease;
}
.elementor-1677 .elementor-element-pcat01ln .elementor-button:hover ,
.elementor-1677 .elementor-element-pcat02ln .elementor-button:hover ,
.elementor-1677 .elementor-element-pcat03ln .elementor-button:hover ,
.elementor-1677 .elementor-element-pcat04ln .elementor-button:hover ,
.elementor-1677 .elementor-element-pcat05ln .elementor-button:hover ,
.elementor-1677 .elementor-element-pcat06ln .elementor-button:hover {
    background: var(--agri-green-dark) !important;
    color: var(--agri-offwhite) !important;
    transform: translateY(-2px);
}

/* --- How It Works: numbered steps breathe as soft cards on the green field --- */
.elementor-1677 [class*="elementor-element-step"][class*="ct"] {
    background: rgba(246, 243, 236, .06);
    border: 1px solid rgba(246, 243, 236, .14);
    border-radius: 16px;
    padding: 28px 28px 30px;
    transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}
.elementor-1677 [class*="elementor-element-step"][class*="ct"]:hover {
    background: rgba(246, 243, 236, .09);
    border-color: rgba(201, 163, 90, .45);
    transform: translateY(-3px);
}
/* numeral sits tighter to its step title */
.elementor-1677 [class*="elementor-element-step"][class*="nm"] { margin-bottom: 6px; }

/* --- "Browse all products" + CTA-band buttons → pill system --- */
.elementor-1677 .elementor-element-prodsall .elementor-button,
.elementor-1677 .elementor-element-ctabtn01 .elementor-button,
.elementor-1677 .elementor-element-ctabtn02 .elementor-button {
    border-radius: 999px !important;
    transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.elementor-1677 .elementor-element-prodsall .elementor-button:hover,
.elementor-1677 .elementor-element-ctabtn01 .elementor-button:hover,
.elementor-1677 .elementor-element-ctabtn02 .elementor-button:hover {
    transform: translateY(-3px);
}

/* --- Supplier logo band: a touch more presence, hairline framing --- */
.elementor-1677 .elementor-element-logos001 { border-top: 1px solid #ece7db; }

/* ============================================================
   CONTACT (.elementor-1679) — panels/buttons/map → card system
   ============================================================ */

/* Panels adopt the catalogue radius (16px) + warm hairline border */
.elementor-1679 .agri-reach,
.agri-reach {
    border-radius: 16px;
    border: 1px solid #ece7db;
    padding: 40px 38px;
}
.elementor-1679 .agri-contact-panel,
.agri-contact-panel {
    border-radius: 16px;
    padding: 40px 38px;
}

/* All contact CTAs → pill geometry + consistent lift */
.agri-wa-btn,
.agri-reach-btn {
    border-radius: 999px !important;
    transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.agri-wa-btn:hover,
.agri-reach-btn:hover { transform: translateY(-2px); }
.agri-reach-btn.is-mail { border: 1px solid var(--agri-green); }

/* White-panel primary CTA → brand green (not lime). Keeps the side-by-side
   "WhatsApp us" + "Call" pair a disciplined tonal pair; the dedicated lime
   WhatsApp action lives in the charcoal panel + floating widget only. */
.elementor-1679 .agri-reach-btn.is-primary {
    background: var(--agri-green) !important;
    color: var(--agri-offwhite) !important;
}
.elementor-1679 .agri-reach-btn.is-primary:hover {
    background: var(--agri-green-dark) !important;
    color: var(--agri-offwhite) !important;
}

/* Keep both panels equal height (Elementor row stretch) and let the white
   panel fill it so its hairline border matches the charcoal panel's height. */
.elementor-1679 .elementor-element-ctaleft1 .elementor-widget-html,
.elementor-1679 .elementor-element-ctaleft1 .elementor-widget-html .elementor-widget-container { height: 100%; }
.elementor-1679 .agri-reach {
    display: flex; flex-direction: column; justify-content: center; height: 100%;
}

/* Map: match the card system — 16px radius, same hairline border, subtle shadow,
   and breathing room so it doesn't crash straight into the charcoal footer */
#agri-contact-map {
    border-radius: 16px;
    border: 1px solid #ece7db;
    box-shadow: 0 14px 30px rgba(27, 27, 24, .08);
}
/* the map sits in a full-bleed section (ctamapb1) — inset it so the 16px
   rounding reads and it doesn't crash straight into the charcoal footer */
.elementor-1679 .elementor-element-ctamapb1 {
    padding: 0 24px 28px;
}
@media (max-width: 768px) {
    .elementor-1679 .elementor-element-ctamapb1 { padding: 0 16px 20px; }
}

/* --- Single product: full-width structured description band --- */
.single-product .woocommerce-tabs .woocommerce-Tabs-panel--description {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
    column-gap: 72px;
    row-gap: 14px;
    align-items: start;
    background: #fff;
    border: 1px solid #ECE7DB;
    border-radius: 16px;
    /* !important: the parent theme's .woocommerce-tabs .panel rule forces 32px 0 0 */
    padding: 48px 56px 52px !important;
}
.single-product .woocommerce-Tabs-panel--description > h2,
.single-product .woocommerce-Tabs-panel--description > h3 {
    font-family: "Outfit", "Open Sans", system-ui, sans-serif;
    font-size: 26px;
    font-weight: 600;
    color: #1b1b18;
    margin-bottom: 18px;
}
.single-product .woocommerce-Tabs-panel--description > p {
    font-size: 16px;
    line-height: 1.75;
    color: #2a2925;
}
.single-product .woocommerce-Tabs-panel--description > h2,
.single-product .woocommerce-Tabs-panel--description > p { grid-column: 1; }
.single-product .woocommerce-Tabs-panel--description > h3,
.single-product .woocommerce-Tabs-panel--description > .agri-specs { grid-column: 2; }
.single-product .woocommerce-Tabs-panel--description > h2,
.single-product .woocommerce-Tabs-panel--description > h3 { grid-row: 1; margin-top: 0; }
.single-product .woocommerce-Tabs-panel--description > p { max-width: 62ch; }
.single-product .woocommerce-Tabs-panel--description .agri-specs { max-width: none; width: 100%; }
@media (max-width: 880px) {
    .single-product .woocommerce-tabs .woocommerce-Tabs-panel--description {
        grid-template-columns: minmax(0, 1fr); padding: 28px 22px 32px !important; column-gap: 0;
    }
    .single-product .woocommerce-Tabs-panel--description > h3,
    .single-product .woocommerce-Tabs-panel--description > .agri-specs { grid-column: 1; }
    .single-product .woocommerce-Tabs-panel--description > h3 { grid-row: auto; margin-top: 24px; }
}

/* ============================================================
   IMAGERY + MOTION PASS (v1.5.0)
   All motion gated behind prefers-reduced-motion: no-preference.
   ============================================================ */

/* --- Breadcrumb / inner-page title band: photographic backdrop ---
   The theme builds .mt-breadcrumb with a flat charcoal gradient and, on
   pages flagged mt_title_overlay, a second charcoal :after layer. There is
   no Redux option for a breadcrumb background image, so we set it in CSS,
   site-wide, for every inner page (Products, single product, Contact, RFQ).
   Calm field-horizon shot (#1809). The existing charcoal gradient sits ON
   TOP of the image (it's the element's own `background`), so we add the
   image as a lower layer in the same shorthand. */
.mt-breadcrumb {
    background-image:
        linear-gradient(0deg, rgba(27,27,24,.62), rgba(27,27,24,.62)),
        url("/wp-content/uploads/2026/06/930.jpg") !important;
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}
/* keep the mt_title_overlay :after subtle so text stays crisp without going flat */
.mt-breadcrumb.mt_title_overlay:after {
    background: linear-gradient(0deg, rgba(27,27,24,.30), rgba(34,54,28,.42));
}

/* --- Home hero: slow Ken Burns on the background image ---
   Elementor paints the bg on .elementor-element's ::before-less container; the
   background sits on the element itself, so we animate a child pseudo? No — the
   bg is on the element. We scale the element's background via a wrapper-safe
   approach: animate background-size. Smooth, GPU-cheap, no layout shift. */
@media (prefers-reduced-motion: no-preference) {
    .agri-hero-kb {
        animation: agriKenBurns 22s ease-in-out infinite alternate;
        background-size: cover;
    }
    @keyframes agriKenBurns {
        from { background-size: 100% auto; }
        to   { background-size: 112% auto; }
    }
}

/* --- Our Story photo panel (left column, editorial rounded) --- */
.agri-story-photo img {
    border-radius: 12px;
    width: 100%;
    height: auto;
    display: block;
    box-shadow: 0 18px 40px rgba(27,27,24,.14);
    border: 1px solid #ECE7DB;
}

/* --- Contact intro right-side rounded image --- */
.agri-contact-photo img {
    border-radius: 12px;
    width: 100%;
    height: auto;
    display: block;
    box-shadow: 0 18px 40px rgba(27,27,24,.12);
    border: 1px solid #ECE7DB;
}

/* --- Site-wide: content images and logos get a soft 12px radius ---
   Background images remain untouched so full-bleed sections still reach
   their container edges. */
.elementor-widget-image img,
.ad-track img,
.ap-card-img,
.ap-card-img img,
.woocommerce-active div.product .woocommerce-product-gallery__image img,
.woocommerce-active div.product .woocommerce-product-gallery img,
.woocommerce ul.products li.product .mt-product-img,
.woocommerce ul.products li.product .mt-product-img img {
    border-radius: 12px !important;
}

/* --- Catalogue + related: gentle contained zoom on card image hover --- */
.woocommerce ul.products li.product .mt-product-img {
    overflow: hidden;
}
@media (prefers-reduced-motion: no-preference) {
    .woocommerce ul.products li.product .mt-product-img img {
        transition: transform .35s ease;
        will-change: transform;
    }
    .woocommerce ul.products li.product:hover .mt-product-img img {
        transform: scale(1.05);
    }
}

/* --- RFQ page (ID 1678): single subtle entrance fade on the quote panels.
   CSS only — no imagery inside the form flow, keep it fast and focused.
   Covers both the empty state and, when items are present, the form/table. --- */
@media (prefers-reduced-motion: no-preference) {
    .page-id-1678 .agrfq-state,
    .page-id-1678 form.woocommerce-cart-form,
    .page-id-1678 .cart-collaterals,
    .page-id-1678 .agrfq-form {
        animation: agriPanelFade .6s ease both;
    }
    @keyframes agriPanelFade {
        from { opacity: 0; transform: translateY(12px); }
        to   { opacity: 1; transform: none; }
    }
}

/* --- Reduced-motion: neutralise Elementor entrance animations so nothing
   stays invisible for users who opt out. Elementor adds .elementor-invisible
   then animates in; if the user prefers no motion we reveal immediately. --- */
@media (prefers-reduced-motion: reduce) {
    .elementor-element.elementor-invisible { opacity: 1 !important; }
    .agri-hero-kb { animation: none !important; }
}

/* --- Site footer --- */
.agri-site-footer {
    padding: 58px 24px 0;
    background: var(--agri-charcoal);
    color: #d6decf;
    text-align: center;
}
.agri-footer-inner {
    width: min(1120px, 100%);
    margin: 0 auto;
}
.agri-footer-logo {
    display: inline-flex;
    color: var(--agri-offwhite);
    font-family: 'Outfit', 'Open Sans', system-ui, sans-serif;
    font-size: 24px;
    font-weight: 700;
}
.agri-footer-logo img {
    width: auto;
    height: 82px;
    border-radius: 12px;
}
.agri-footer-tagline {
    max-width: 560px;
    margin: 18px auto 28px;
    color: #b8c3b2;
    font-size: 15px;
    line-height: 1.65;
}
.agri-footer-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px 30px;
    padding-bottom: 42px;
}
.agri-footer-nav a {
    color: var(--agri-offwhite);
    font-size: 14px;
    font-weight: 600;
    transition: color .2s ease;
}
.agri-footer-nav a:hover {
    color: var(--agri-wheat);
}
.agri-footer-bottom {
    padding: 22px 0;
    border-top: 1px solid rgba(246, 243, 236, .12);
}
.agri-footer-bottom p {
    margin: 0;
    color: #8f998b;
    font-size: 12px;
    letter-spacing: .02em;
}
.agri-footer-credit { margin-top: 6px !important; }
.agri-footer-credit a {
    color: #b3bdae;
    text-decoration: none;
    border-bottom: 1px solid rgba(201, 163, 90, .5);
    transition: color .2s ease, border-color .2s ease;
}
.agri-footer-credit a:hover {
    color: var(--agri-wheat);
    border-color: var(--agri-wheat);
}

/* --- Policy pages --- */
.page-id-3 article.page,
.page-id-64 article.page,
.page-id-1816 article.page,
.page-id-1817 article.page {
    max-width: 880px;
    margin: 42px auto 72px;
    padding: 44px 52px 48px;
    border: 1px solid #e7e1d5;
    border-radius: 12px;
    background: rgba(255, 255, 255, .58);
    box-shadow: 0 14px 36px rgba(27, 27, 24, .045);
}
.page-id-3 .entry-content,
.page-id-64 .entry-content,
.page-id-1816 .entry-content,
.page-id-1817 .entry-content {
    color: #45423c;
    font-size: 16px;
}
.page-id-3 .entry-content h2,
.page-id-64 .entry-content h2,
.page-id-1816 .entry-content h2,
.page-id-1817 .entry-content h2 {
    margin: 38px 0 12px;
    padding-top: 8px;
    color: var(--agri-green-dark);
    font-size: 28px;
    line-height: 1.25;
}
.page-id-3 .entry-content h2:first-of-type,
.page-id-64 .entry-content h2:first-of-type,
.page-id-1816 .entry-content h2:first-of-type,
.page-id-1817 .entry-content h2:first-of-type {
    margin-top: 32px;
}
.page-id-3 .entry-content h3,
.page-id-64 .entry-content h3,
.page-id-1816 .entry-content h3,
.page-id-1817 .entry-content h3 {
    margin: 26px 0 10px;
    color: var(--agri-green);
}
.page-id-3 .entry-content p,
.page-id-3 .entry-content ul,
.page-id-64 .entry-content p,
.page-id-64 .entry-content ul,
.page-id-1816 .entry-content p,
.page-id-1816 .entry-content ul,
.page-id-1817 .entry-content p,
.page-id-1817 .entry-content ul {
    margin-bottom: 16px;
    line-height: 1.75;
}
.page-id-3 .entry-content ul,
.page-id-64 .entry-content ul,
.page-id-1816 .entry-content ul,
.page-id-1817 .entry-content ul {
    padding-left: 24px;
}
.page-id-3 .entry-content li,
.page-id-64 .entry-content li,
.page-id-1816 .entry-content li,
.page-id-1817 .entry-content li {
    margin-bottom: 7px;
}
.page-id-3 .entry-content a,
.page-id-64 .entry-content a,
.page-id-1816 .entry-content a,
.page-id-1817 .entry-content a {
    color: var(--agri-green);
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: rgba(47, 74, 38, .35);
    text-underline-offset: 3px;
}

@media (max-width: 767px) {
    .agri-site-footer { padding: 46px 20px 0; }
    .agri-footer-logo img { height: 70px; }
    .agri-footer-nav { gap: 12px 20px; padding-bottom: 34px; }
    .agri-footer-nav a { font-size: 13px; }
    .page-id-3 article.page,
    .page-id-64 article.page,
    .page-id-1816 article.page,
    .page-id-1817 article.page {
        margin: 24px auto 48px;
        padding: 28px 22px 32px;
        border-right: 0;
        border-left: 0;
        border-radius: 0;
        box-shadow: none;
    }
    .page-id-3 .entry-content h2,
    .page-id-64 .entry-content h2,
    .page-id-1816 .entry-content h2,
    .page-id-1817 .entry-content h2 {
        margin-top: 30px;
        font-size: 24px;
    }
}

/* --- Contact Form 7: match the RFQ form system --- */
.elementor-1679 .agri-cf7 p { margin: 0 0 18px; }
.elementor-1679 .agri-cf7 label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #2a2925;
    margin-bottom: 6px;
}
.elementor-1679 .agri-cf7-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 20px;
}
.elementor-1679 .agri-cf7 input[type="text"],
.elementor-1679 .agri-cf7 input[type="email"],
.elementor-1679 .agri-cf7 input[type="tel"] {
    width: 100%;
    height: 48px;
    padding: 0 16px;
    border: 1px solid #E4DFD4;
    border-radius: 12px;
    background: #fff;
    font-size: 15px;
}
.elementor-1679 .agri-cf7 textarea {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid #E4DFD4;
    border-radius: 12px;
    background: #fff;
    font-size: 15px;
    resize: vertical;
}
.elementor-1679 .agri-cf7 input:focus,
.elementor-1679 .agri-cf7 textarea:focus {
    outline: none;
    border-color: #2f4a26;
    box-shadow: 0 0 0 3px rgba(47, 74, 38, .12);
}
.elementor-1679 .agri-cf7-submit {
    display: block;
    width: 100%;
    max-width: none;
    border: none;
    border-radius: 999px;
    background: var(--agri-green);
    background-image: none;
    color: var(--agri-offwhite);
    padding: 15px 36px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: .02em;
    cursor: pointer;
    transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
    box-shadow: 0 8px 20px rgba(47, 74, 38, .22);
}
.elementor-1679 .agri-cf7-submit:hover {
    background: var(--agri-green-dark);
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(47, 74, 38, .28);
}
/* CF7 validation + response states */
.elementor-1679 .wpcf7-not-valid-tip {
    color: #b3261e;
    font-size: 13px;
    margin-top: 5px;
}
.elementor-1679 .wpcf7 form .wpcf7-response-output {
    margin: 18px 0 0;
    padding: 14px 18px;
    border-radius: 12px;
    border: none;
    font-size: 14px;
}
.elementor-1679 .wpcf7 form.sent .wpcf7-response-output {
    background: #eef3ea;
    color: #22361c;
    border-left: 4px solid #2f4a26;
}
.elementor-1679 .wpcf7 form.invalid .wpcf7-response-output,
.elementor-1679 .wpcf7 form.failed .wpcf7-response-output,
.elementor-1679 .wpcf7 form.aborted .wpcf7-response-output {
    background: #fdf2f1;
    color: #7a1c15;
    border-left: 4px solid #b3261e;
}
.elementor-1679 .wpcf7-spinner { display: block; margin: 8px auto 0; }
/* "Prefer to talk?" line under the form */
.elementor-1679 .agri-reach-alt {
    margin-top: 16px;
    font-size: 14px;
    color: #6b675e;
}
.elementor-1679 .agri-reach-alt a {
    color: #2f4a26;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
}
@media (max-width: 640px) {
    .elementor-1679 .agri-cf7-grid { grid-template-columns: 1fr; }
}

/* The theme capitalizes input text site-wide; sentences in form fields should read naturally */
.agri-cf7 input, .agri-cf7 textarea,
.agrfq-form input, .agrfq-form textarea,
.agri-cf7 ::placeholder, .agrfq-form ::placeholder {
    text-transform: none !important;
}

/* --- Homepage hero: dimensional editorial composition --- */
.agri-hero-wow { position: relative; isolation: isolate; overflow: hidden; }
.agri-hero-wow::after {
    content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
    background: radial-gradient(circle at 78% 28%, rgba(201,163,90,.20), transparent 24%), linear-gradient(90deg, rgba(16,26,14,.40), transparent 48%), repeating-linear-gradient(90deg, transparent 0, transparent 119px, rgba(255,255,255,.035) 120px);
}
.agri-hero-wow::before { background-image: linear-gradient(105deg, rgba(12,20,11,.78) 0%, rgba(31,50,25,.48) 52%, rgba(24,37,20,.20) 100%) !important; }
.agri-hero-panel {
    position: relative; z-index: 2; border: 1px solid rgba(246,243,236,.20); border-radius: 20px;
    background: linear-gradient(135deg, rgba(22,34,19,.78), rgba(30,47,25,.54));
    box-shadow: 0 28px 70px rgba(10,18,9,.30); -webkit-backdrop-filter: blur(9px); backdrop-filter: blur(9px);
}
.agri-hero-panel::before { content: ""; position: absolute; top: -1px; left: 42px; width: 108px; height: 4px; border-radius: 0 0 6px 6px; background: var(--agri-wheat); }
.agri-hero-panel .elementor-element-heroh1xx .elementor-heading-title { max-width: 760px; text-wrap: balance; text-shadow: 0 3px 24px rgba(0,0,0,.20); }
.agri-hero-panel .elementor-element-herosub1 { max-width: 620px; }
.agri-hero-panel .elementor-button { min-width: 184px; box-shadow: 0 8px 24px rgba(10,18,9,.14); }
.ad-hero-trust { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; width: 100%; margin-top: 30px; padding-top: 20px; border-top: 1px solid rgba(246,243,236,.16); }
.ad-hero-trust span { display: flex; flex-direction: column; gap: 4px; padding: 0 14px; border-right: 1px solid rgba(246,243,236,.13); color: #f6f3ec; font-size: 12px; font-weight: 600; line-height: 1.35; }
.ad-hero-trust span:first-child { padding-left: 0; } .ad-hero-trust span:last-child { padding-right: 0; border-right: 0; }
.ad-hero-trust b { color: var(--agri-wheat); font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.agri-hero-wow > .elementor-element-heroproof {
    position: absolute;
    right: 6.5%;
    bottom: 9%;
    z-index: 3;
    width: 260px;
}
.ad-hero-proof {
    display: grid; grid-template-columns: auto 1fr; align-items: end; width: 260px;
    padding: 25px 26px 24px; border: 1px solid rgba(246,243,236,.24); border-radius: 18px; background: rgba(246,243,236,.91);
    box-shadow: 0 22px 55px rgba(10,18,9,.25); color: var(--agri-green-dark); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
.ad-proof-kicker,.ad-proof-line,.ad-proof-note { grid-column: 1/-1; }
.ad-proof-kicker { margin-bottom: 8px; color: #756a53; font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.ad-hero-proof strong { font-family: 'Outfit','Open Sans',system-ui,sans-serif; font-size: 72px; line-height: .85; letter-spacing: -.06em; }
.ad-proof-unit { padding: 0 0 2px 10px; font-size: 15px; font-weight: 700; line-height: 1.15; }
.ad-proof-line { width: 100%; height: 1px; margin: 20px 0 15px; background: rgba(34,54,28,.16); }
.ad-proof-note { color: #625e55; font-size: 12px; line-height: 1.5; }
@media (max-width: 1024px) { .agri-hero-wow > .elementor-element-heroproof { display: none; } }
@media (max-width: 767px) {
    .agri-hero-panel { border-radius: 16px; } .agri-hero-panel::before { left: 22px; width: 74px; }
    .ad-hero-trust { grid-template-columns: 1fr; gap: 10px; }
    .ad-hero-trust span,.ad-hero-trust span:first-child,.ad-hero-trust span:last-child { display: grid; grid-template-columns: 24px 1fr; padding: 0; border: 0; }
}

/* --- Mobile header: logo left, icons right, one inline row (was stacked/overlapping) --- */
@media (max-width: 767px) {
    .mt-main-header .row {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    .mt-main-header .col-md-4,
    .mt-main-header .col-md-8 {
        width: auto !important;
        max-width: none !important;
        flex: 0 0 auto !important;
    }
    .mt-main-header .mt-head-logo {
        width: auto !important;
        margin: 0 !important;
        text-align: left !important;
    }
    .mt-main-header .mt-head-logo img {
        max-height: 50px !important;
        width: auto !important;
    }
    /* the icon group (search / cart / menu toggle) hugs the right */
    .mt-main-header .mt-navbar-icon,
    .mt-main-header .mt-navbar-icon > ul {
        justify-content: flex-end !important;
        margin: 0 !important;
    }
    /* tighten the bar height now that it's a single row */
    .mt-main-header .container { padding-top: 6px !important; padding-bottom: 6px !important; }
}

/* --- Brand band: render supplied logos crisp + normalise mismatched backgrounds.
   Several client logos ship with baked-in white/dark boxes; grayscale+opacity made
   them wash out. Full colour on uniform white chips reads as intentional + legible. --- */
.ad-marquee .ad-track img,
.elementor-element-logosmqe .ad-track img {
    filter: none !important;       /* was grayscale(1) — washed the logos out */
    opacity: 1 !important;          /* was .66 */
    height: 46px !important;        /* uniform sizing across mixed source logos */
    width: auto !important;
    object-fit: contain !important;
}
.ad-marquee .ad-track img:hover,
.elementor-element-logosmqe .ad-track img:hover { filter: none !important; }
