/**
 * TW Landscaping Supplies palette.
 *
 * Forest      #1f4d3a  Primary brand and strong calls to action
 * Leaf        #4f8a4c  Interactive highlights
 * Moss        #7a9a55  Supporting accent
 * Limestone   #f4f1e8  Warm background
 * Charcoal    #1c2821  Text and navigation
 */

:root {
	--ink: #1c2821;
	--muted: #647269;
	--orange: #4f8a4c;
	--orange-dark: #1f4d3a;
	--line: #d9e0d9;
	--cream: #f4f1e8;
	--brand-forest: #1f4d3a;
	--brand-leaf: #4f8a4c;
	--brand-moss: #7a9a55;
	--brand-limestone: #f4f1e8;
	--brand-pale: #eaf2e8;
	--brand-focus: rgba(79, 138, 76, 0.18);
	/* Legacy component tokens, remapped to the landscaping palette. */
	--orange-highlight: #7a9a55;
	--orange-shadow: #173b2d;
}

.utility-bar,
.tw-vat-toggle { background: #16231c; }
.utility-inner .tw-icon,
.header-actions .tw-icon,
.service-grid .tw-icon { color: var(--brand-leaf); }
.main-nav,
.site-footer { background: #1c2821; }
.nav-links a:hover,
.footer-links a:hover,
.nav-trade,
.project-card__arrow,
.project-support > div > .tw-icon,
.project-support > a { color: #a9c995; }

.hero h1 em,
.hero-badge strong,
.category-content > span,
.trade-mark span,
.why-image strong,
.project-section .section-kicker { color: #a9c995; }
.hero-proof .tw-icon { color: #9cc58c; }
.section-kicker.light,
.trade-copy p,
.trade-action small { color: #e5f1e1; }
.trade-panel { background: linear-gradient(125deg, #2d684d, #173b2d); }
.button-light { color: var(--brand-forest); }

.nav-offers > span,
.tw-vat-toggle button[aria-pressed="true"],
.project-card__icon,
.tw-account-login-intro li > .tw-icon,
.tw-account-nav-avatar,
.offers-empty > span {
	background: linear-gradient(145deg, var(--brand-leaf), var(--brand-forest));
	box-shadow: 0 5px 14px rgba(20, 60, 42, 0.24);
}
.tw-offers-products .onsale {
	background: linear-gradient(145deg, var(--brand-leaf), var(--brand-forest)) !important;
}
.project-card:hover {
	border-color: var(--brand-leaf);
	background: linear-gradient(145deg, rgba(79, 138, 76, 0.2), rgba(255, 255, 255, 0.035));
}

.nav-offers:hover { color: #b9d6a7; }
.nav-offers::after { background: #dbead5; }
@media (min-width: 1001px) {
	.nav-offers {
		background: linear-gradient(135deg, var(--brand-moss), var(--brand-leaf) 52%, var(--brand-forest));
		text-shadow: 0 1px 1px rgba(16, 45, 31, 0.35);
	}
}
.mobile-nav-actions a { color: #b9d6a7 !important; }
.logo-tw {
	background: linear-gradient(145deg, var(--brand-moss), var(--brand-leaf) 42%, var(--brand-forest) 78%, #173b2d);
	box-shadow: 0 7px 17px rgba(20, 60, 42, 0.22), inset 0 1px rgba(255, 255, 255, 0.35);
	text-shadow: 0 2px 2px rgba(12, 42, 28, 0.3);
}
.logo-copy strong::after { background: linear-gradient(90deg, var(--brand-moss), var(--brand-forest)); }
.consumables-card::before {
	background: linear-gradient(135deg, transparent 0 27%, rgba(122, 154, 85, 0.72) 28% 31%, transparent 32%), linear-gradient(155deg, #898d89 0 30%, #4d5555 30% 57%, #202628 57%);
}
.category-section {
	background: radial-gradient(circle at 12% 12%, rgba(79, 138, 76, 0.09), transparent 27%), radial-gradient(circle at 88% 78%, rgba(45, 59, 58, 0.07), transparent 30%), linear-gradient(145deg, var(--brand-limestone), #e7ece2);
}
.trade-panel { box-shadow: 0 22px 52px rgba(20, 60, 42, 0.22); }
.trade-mark { box-shadow: 0 12px 28px rgba(12, 42, 28, 0.24); }
.tw-category-guide,
.tw-catalogue-toolbar { background: linear-gradient(145deg, #fff 0%, #f8faf5 76%, var(--brand-pale) 145%); }
.tw-category-hero::after { background: linear-gradient(90deg, var(--brand-leaf), #a9c995 38%, transparent 76%); }
.tw-category-hero__eyebrow,
.tw-category-hero__proof .tw-icon { color: #a9c995; }
.tw-catalogue-toolbar__mark,
.woocommerce nav.woocommerce-pagination ul li > span.current,
.trade-apply-intro li::after {
	background: linear-gradient(145deg, var(--brand-leaf), var(--brand-forest));
	box-shadow: 0 5px 13px rgba(20, 60, 42, 0.22);
}
.woocommerce .tw-catalogue-toolbar .woocommerce-ordering select:focus-visible,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus-visible {
	border-color: var(--brand-leaf);
	box-shadow: 0 0 0 3px var(--brand-focus);
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus-visible {
	background: var(--brand-pale);
	color: var(--brand-forest);
}

.home-product-section,
.site-content,
.single-product .site-content,
.locations-page,
.tw-account-content,
.tw-offers-products {
	background: radial-gradient(circle at 90% 8%, rgba(79, 138, 76, 0.08), transparent 25%), linear-gradient(150deg, #fff 0%, var(--brand-limestone) 100%);
}
.woocommerce ul.products li.product { background: linear-gradient(155deg, #fff 0%, #fafbf7 100%); }
.home-product-loop ul.products li.product a img {
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}
.site-footer { background: radial-gradient(circle at 15% 0%, rgba(79, 138, 76, 0.15), transparent 24%), linear-gradient(110deg, #16231c 0%, #24362b 56%, #131d17 100%); }
.single-product div.product div.summary,
.location-details,
.tw-account-login-card,
.tw-account-register-card,
.trade-apply-card,
.offers-empty {
	background: linear-gradient(145deg, #fff 0%, #fbfcf9 74%, var(--brand-pale) 145%);
}
.tw-account-nav-card__heading { background: linear-gradient(145deg, #fff, var(--brand-pale)); }
.tw-account-panel__heading { background: linear-gradient(145deg, #fff 0%, #fcfdfb 70%, var(--brand-pale) 145%); }
.tw-account-action__icon,
.tw-account-panel mark { background: var(--brand-pale); }
.tw-account-shell .woocommerce-MyAccount-navigation li.is-active a,
.tw-account-shell .woocommerce-MyAccount-navigation a:hover { background: var(--brand-pale); }
.tw-account-action:hover { border-color: #9abc89; }
.tw-account-pro-summary { background: linear-gradient(145deg, #fff, #f1f7ee); }
.tw-account-welcome span,
.tw-account-pro-summary__mark b { color: #a9c995; }
.tw-account-hero__aside > a,
.tw-account-status,
.offers-hero__badge,
.trade-terms-help a { color: #a9c995; }

.tw-product-eyebrow,
.tw-product-services .tw-icon,
.tw-account-trade-note > span b { color: var(--brand-forest); }
.tw-search-result:hover,
.tw-search-result.is-active,
.tw-search-all:hover,
.tw-search-all.is-active { background: #edf5eb; }

.tw-account-login-card input.input-text:focus,
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.tw-account-panel input.input-text:focus,
.tw-account-panel textarea:focus,
.tw-account-panel select:focus {
	border-color: var(--brand-leaf);
	box-shadow: 0 0 0 3px var(--brand-focus);
}
.trade-application-form input:focus,
.trade-application-form select:focus,
.trade-application-form textarea:focus {
	border-color: var(--brand-leaf);
	box-shadow: 0 0 0 3px var(--brand-focus);
}
.tw-account-login-card .woocommerce-form-login__submit,
.tw-account-register-card button,
.tw-account-panel button.button,
.tw-account-panel a.button {
	background: linear-gradient(135deg, var(--brand-leaf), var(--brand-forest));
	text-shadow: 0 1px 1px rgba(16, 45, 31, 0.35);
}

.product-search button,
.shop-all,
.button-primary,
.woocommerce a.button:not(.added_to_cart),
.woocommerce button.button,
.woocommerce input.button,
.wp-element-button,
.woocommerce ul.products li.product > .button,
.tw-sidecart-content .woocommerce-mini-cart__buttons .checkout,
.tw-sidecart-related-item .button {
	background: linear-gradient(135deg, var(--brand-leaf), var(--brand-forest)) !important;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.24), 0 4px 10px rgba(20, 60, 42, 0.2);
	text-shadow: 0 1px 1px rgba(16, 45, 31, 0.34);
}
.product-search button:hover,
.shop-all:hover,
.button-primary:hover,
.woocommerce a.button:not(.added_to_cart):hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce ul.products li.product > .button:hover,
.tw-sidecart-content .woocommerce-mini-cart__buttons .checkout:hover,
.tw-sidecart-related-item .button:hover {
	background: linear-gradient(135deg, #427a42, #173b2d) !important;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.16), 0 6px 14px rgba(20, 60, 42, 0.24);
}
.wc-block-cart a.wc-block-cart__submit-button {
	background: linear-gradient(135deg, var(--brand-leaf), var(--brand-forest)) !important;
	text-shadow: 0 1px 2px rgba(16, 45, 31, 0.38);
}

.offers-hero::after,
.trade-terms-hero::after,
.tw-account-hero::after,
.trade-apply-hero::after { border-color: rgba(79, 138, 76, 0.09); }
.offers-hero__badge b { background: var(--brand-leaf); }
.trade-terms-contact { background: #f1f7ee; }
