/*
Theme Name: Nashgrowshop
Theme URI: https://nashgrowshop.cz
Template: shoptimizer
Author: TerraCode s.r.o.
Author URI: https://terracode.cz
Description: Speciální řešení pro elektronický obchod pro Nashgrowshop.cz
Version: 1.0.0.1787039400
Updated: 2026-08-18 09:50:00

*/

/* Keep the storefront readable when the optional Inter webfont is unavailable. */
:root,
body,
button,
input,
select,
textarea,
.site,
.site-content,
.entry-content,
.woocommerce,
.woocommerce-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
button,
input[type="submit"],
input[type="button"],
.button {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

/* Header: tighter vertical rhythm + search width */
@media (min-width: 993px) {
	.site-header .col-full,
	.site-header .header-widget-region {
		padding-top: 0.65rem;
		padding-bottom: 0.65rem;
	}

	.site-header .main-header.col-full {
		display: flex;
		align-items: center;
		gap: 1.25rem;
	}

	.site-header .site-search {
		display: flex;
		justify-content: center;
		margin-left: 0;
		margin-right: 0;
		flex: 1 1 auto;
		min-width: 0;
	}

	.site-header .site-search form,
	.site-header .site-search .woocommerce-product-search,
	.site-header .site-search .yith-woocommerce-ajax-search,
	.site-header .site-search .yith-ajaxsearchform-container {
		width: 100%;
		max-width: 560px;
		min-width: 280px;
		margin-left: auto;
		margin-right: auto;
	}

	.site-header .site-search input[type="search"],
	.site-header .site-search.type-outline input[type="search"],
	.site-header .site-search #yith-s,
	.site-header .site-search .yith-s {
		border: 1px solid #888;
		background-color: #fff;
		width: 100%;
	}

	.site-header .site-search input[type="search"]:focus,
	.site-header .site-search #yith-s:focus,
	.site-header .site-search .yith-s:focus {
		border-color: #444;
		outline: none;
	}

	/* Cart in white header (default layout already prints markup twice). */
	.site-header .site-header-cart {
		display: block !important;
		flex-shrink: 0;
		margin-left: 0.5rem;
		width: auto;
	}

	.col-full-nav .site-header-cart {
		display: none !important;
	}

	.site-header .shoptimizer-cart a.cart-contents {
		display: flex;
		align-items: center;
		gap: 0.35rem;
		height: auto;
		padding: 0.35rem 0.65rem;
		border: 1px solid #e5e5e5;
		border-radius: 4px;
	}

	.site-header .shoptimizer-cart .cart-contents .amount {
		display: inline !important;
		font-size: 14px;
		font-weight: 600;
		color: #111;
	}
}

/* ---- Topbar: contact | help | account ---- */
.top-bar .ngs-topbar-cluster {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem 0.85rem;
	font-size: 12px;
	line-height: 1.3;
}

.top-bar .ngs-topbar-cluster > * {
	flex: 0 0 auto;
	white-space: nowrap;
}

.top-bar .ngs-topbar-cluster .ngs-topbar-store {
	font-weight: 600;
}

.top-bar .ngs-topbar-cluster a {
	text-decoration: none;
	color: inherit;
}

.top-bar .ngs-topbar-cluster a:hover,
.top-bar .ngs-topbar-cluster a:focus-visible {
	opacity: 0.75;
}

.top-bar .ngs-topbar-hours {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	white-space: nowrap;
}

.top-bar .ngs-topbar-hours__indicator {
	display: inline-block;
	width: 8px;
	height: 8px;
	flex: 0 0 8px;
	border-radius: 50%;
	background: #c62828;
	box-shadow: 0 0 0 2px rgba(198, 40, 40, 0.14);
}

.top-bar .ngs-topbar-hours--open .ngs-topbar-hours__indicator {
	background: #2e7d32;
	box-shadow: 0 0 0 2px rgba(46, 125, 50, 0.14);
}

.top-bar .ngs-topbar-hours__label {
	font-weight: 700;
}

.top-bar .ngs-topbar-hours__detail {
	padding-left: 0.45rem;
	border-left: 1px solid rgba(0, 0, 0, 0.22);
	font-weight: 500;
	opacity: 0.9;
}

.top-bar .ngs-topbar-cluster > a[href^="tel:"] {
	font-weight: 600;
}

.top-bar .ngs-topbar-hours--exception {
	font-weight: 700;
}

.ngs-store-hours-notice {
	padding: 10px 20px;
	background: #fff4ce;
	color: #4a3600;
	font-size: 14px;
	line-height: 1.4;
	text-align: center;
}

.ngs-store-hours-notice__inner {
	max-width: 1200px;
	margin: 0 auto;
}

@media (min-width: 783px) {
	.top-bar .ngs-topbar-cluster {
		flex-wrap: nowrap;
	}
}

.top-bar .ngs-topbar-right {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 1.1rem;
	font-size: 13px;
}

.top-bar .ngs-topbar-account {
	position: relative;
}

.top-bar .ngs-topbar-account__link,
.top-bar .ngs-topbar-account__toggle {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	cursor: pointer;
	text-decoration: none;
}

.top-bar .ngs-topbar-account__caret {
	display: inline-block;
	width: 0;
	height: 0;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid currentColor;
	opacity: 0.75;
}

.top-bar .ngs-topbar-account__menu {
	display: none;
	position: absolute;
	right: 0;
	top: calc(100% + 6px);
	z-index: 100;
	min-width: 10rem;
	margin: 0;
	padding: 0.35rem 0;
	list-style: none;
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

.top-bar .ngs-topbar-account.is-open .ngs-topbar-account__menu {
	display: block;
}

.top-bar .ngs-topbar-account__menu a {
	display: block;
	padding: 0.45rem 0.85rem;
	color: #222;
	text-decoration: none;
	white-space: nowrap;
}

.top-bar .ngs-topbar-account__menu a:hover,
.top-bar .ngs-topbar-account__menu a:focus-visible {
	background: #f5f5f5;
	opacity: 1;
}

/*
 * Nav lives in .col-full-nav, NOT inside .site-header (Shoptimizer default).
 * Mega panels: assets/css/mega-menu.css
 */

/* Akce: single lime accent (promo/CTA green elsewhere) */
#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.menu-item-sale > a,
#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.menu-item-sale > a span {
	color: #84b721 !important;
	font-weight: 700 !important;
}

@media (min-width: 993px) {
	.col-full-nav .shoptimizer-primary-navigation #site-navigation.main-navigation {
		flex: 1 1 auto;
		min-width: 0;
	}

	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu {
		display: flex;
		width: 100%;
		align-items: center;
	}

	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li > a.main-menu-link {
		white-space: nowrap;
	}

	/* Dual labels: default = full; compact breakpoint shows short. */
	#site-navigation.main-navigation .tc-nav-label--short {
		display: none;
	}

	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.menu-item-right > a {
		pointer-events: auto;
		position: relative;
		z-index: 5;
	}

	/*
	 * Secondary L1 cluster (Značky, Katalog):
	 * quieter than category mega items — smaller type, lighter weight/color.
	 */
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary > a.main-menu-link,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary > a.main-menu-link span {
		font-size: 13.5px !important;
		font-weight: 500 !important;
		color: rgba(255, 255, 255, 0.78) !important;
		letter-spacing: 0.01em;
	}

	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary:hover > a.main-menu-link,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary:hover > a.main-menu-link span,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary:focus-within > a.main-menu-link,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary:focus-within > a.main-menu-link span,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary.current-menu-item > a.main-menu-link,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary.current-menu-item > a.main-menu-link span,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary.current-menu-ancestor > a.main-menu-link,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary.current-menu-ancestor > a.main-menu-link span {
		color: #fff !important;
	}

	/* No Shoptimizer animated underline — keep the cluster quiet. */
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary > a.main-menu-link span::before {
		display: none !important;
	}

	/* Katalog label stays a real link; caret/hover still opens the small dropdown. */
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-catalog > a.main-menu-link {
		pointer-events: auto;
	}
}

/*
 * Mid desktop: compact L1 (short labels). Cart no longer shares this row,
 * so keep mild compaction without aggressive crowding.
 */
@media (min-width: 993px) and (max-width: 1199px) {
	#site-navigation.main-navigation .tc-nav-label--full {
		display: none;
	}

	#site-navigation.main-navigation .tc-nav-label--short {
		display: inline;
	}

	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li > a.main-menu-link,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li > a.main-menu-link span {
		font-size: 13px !important;
	}

	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary > a.main-menu-link,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary > a.main-menu-link span {
		font-size: 12.5px !important;
	}

	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary + li.tc-nav-secondary {
		margin-left: 14px;
	}
}

/* Wide desktop: room for full labels + right-aligned secondary cluster. */
@media (min-width: 1200px) {
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.menu-item-right {
		margin-left: auto !important;
	}

	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li.tc-nav-secondary + li.tc-nav-secondary {
		margin-left: 20px;
	}
}

/*
 * Mega-menu hover state
 *
 * Shoptimizer still has broad :hover rules for full-width submenus. Keep
 * the panel closed unless the interaction script has marked the exact
 * trigger item open. This prevents a panel hitbox from activating the menu.
 */
@media (min-width: 993px) {
	/*
	 * Shoptimizer lowers the navigation to z-index: 6 while .site.overlay
	 * is present. That places page text above the otherwise opaque panel.
	 */
	body:has(.site.overlay) .col-full-nav {
		position: relative;
		z-index: 100 !important;
	}

	/*
	 * Shoptimizer dims every top-level link while the menu <ul> is hovered.
	 * A mega panel can extend below that <ul>, so the parent hover state is
	 * not a reliable indication of the active trigger.
	 */
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu:hover > li > a,
	#site-navigation.main-navigation .menu-primary-menu-container > ul.menu:hover > li:hover > a {
		opacity: 1 !important;
	}

	#site-navigation.main-navigation ul.menu > li[class*="tc-mega-menu--"] > a.main-menu-link::after {
		transform: none !important;
	}

	#site-navigation.main-navigation ul.menu > li[class*="tc-mega-menu--"].tc-mega-open > a.main-menu-link::after {
		transform: rotate(180deg) !important;
	}

	#site-navigation.main-navigation ul.menu > li.full-width[class*="tc-mega-menu--"] > .sub-menu-wrapper {
		z-index: 70 !important;
	}

	body #site-navigation.main-navigation ul.menu > li.full-width[class*="tc-mega-menu--"].tc-mega-open > .sub-menu-wrapper {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		transform: translateX(-50%) translateY(0);
	}

	/*
	 * Do not fade the complete panel: its transparent phase exposes the
	 * product grid underneath while switching between adjacent triggers.
	 * Move an opaque shell instead, and keep the active panel above the
	 * panel that is being closed.
	 */
	body #site-navigation.main-navigation ul.menu > li.full-width[class*="tc-mega-menu--"] > .sub-menu-wrapper {
		opacity: 1 !important;
		background: #fff;
		border-radius: var(--tc-mega-radius);
		z-index: 70 !important;
		transition: transform 0.16s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
	}

	body #site-navigation.main-navigation ul.menu > li.full-width[class*="tc-mega-menu--"]:not(.tc-mega-open) > .sub-menu-wrapper {
		visibility: hidden !important;
		pointer-events: none !important;
		transform: translateX(-50%) translateY(4px);
	}

	body #site-navigation.main-navigation ul.menu > li.full-width[class*="tc-mega-menu--"]:not(.tc-mega-open) > .sub-menu-wrapper * {
		visibility: hidden !important;
		pointer-events: none !important;
	}

	body #site-navigation.main-navigation ul.menu > li.full-width[class*="tc-mega-menu--"].tc-mega-open > .sub-menu-wrapper {
		visibility: visible !important;
		pointer-events: auto !important;
		transform: translateX(-50%) translateY(0);
		z-index: 80 !important;
	}

	/*
	 * The parent theme paints the overlay whenever .site.overlay exists.
	 * Only show it while a mega item is actually active; this prevents a
	 * dimmed page after the pointer leaves the menu.
	 */
	.site.overlay .site-content::after {
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
	}

	.site.overlay:has(#site-navigation.main-navigation ul.menu > li.full-width[class*="tc-mega-menu--"].tc-mega-open) .site-content::after {
		visibility: visible !important;
		opacity: 1 !important;
	}
}

/* Footer legal row */
.site-footer .ngs-footer-legal,
.copyright .ngs-footer-legal {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.25rem;
	font-size: 13px;
}

.site-footer .ngs-footer-legal a,
.copyright .ngs-footer-legal a {
	color: inherit;
	text-decoration: none;
}

.site-footer .ngs-footer-legal a:hover,
.copyright .ngs-footer-legal a:hover {
	text-decoration: underline;
}

/* Shoptimizer "Request a Call Back" is disabled in the child theme. */
.call-back-feature,
dialog.shoptimizer-modal[data-shoptimizermodal-id="callBack"] {
	display: none !important;
}

/* ---- Nashgrowshop header refresh ---- */
.col-full.topbar-wrapper {
	width: 100%;
	max-width: none;
	margin-right: 0;
	margin-left: 0;
	padding: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	background: #0b0d0c;
	color: rgba(255, 255, 255, 0.76);
}

.topbar-wrapper .top-bar {
	width: 100%;
	max-width: none;
	margin: 0;
	background: #0b0d0c;
	color: inherit;
}

.topbar-wrapper .top-bar > .col-full {
	width: 100%;
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
	padding: 0.35rem 1.25rem;
}

.topbar-wrapper .top-bar a,
.topbar-wrapper .top-bar .ngs-topbar-account__toggle {
	color: inherit;
}

.topbar-wrapper .top-bar .ngs-topbar-hours__detail {
	border-left-color: rgba(255, 255, 255, 0.25);
}

.topbar-wrapper .top-bar .ngs-topbar-account__menu {
	background: #fff;
	border-color: #e5e5e5;
	color: #222;
}

.site-header {
	background: #fff;
}

.site-header .main-header.col-full {
	min-height: 76px;
	padding-top: 0.85rem;
	padding-bottom: 0.85rem;
}

.site-header .site-branding {
	flex: 0 0 auto;
}

.site-header .site-branding .custom-logo {
	max-height: 56px;
	width: auto;
}

.site-header .site-search {
	flex: 1 1 auto;
	min-width: 260px;
	margin-right: 0;
	margin-left: 0;
}

.site-header .site-search form,
.site-header .site-search .woocommerce-product-search,
.site-header .site-search .yith-woocommerce-ajax-search,
.site-header .site-search .yith-ajaxsearchform-container {
	display: flex;
	align-items: stretch;
	width: 100%;
	max-width: 560px;
	margin: 0 auto;
}

.site-header .site-search form::before {
	display: none;
}

.site-header .site-search input[type='search'],
.site-header .site-search input[type='text'] {
	height: 44px;
	min-width: 0;
	border: 1px solid #dce2dc;
	border-right: 0;
	border-radius: 12px 0 0 12px;
	background: #fff;
	box-shadow: none;
	color: #1b231d;
	font-size: 0.78rem;
}

.site-header .site-search input[type='search']::placeholder,
.site-header .site-search input[type='text']::placeholder {
	color: #89918b;
}

.site-header .site-search input[type='search']:focus,
.site-header .site-search input[type='text']:focus {
	border-color: #7bb800;
	outline: 0;
	box-shadow: 0 0 0 2px rgba(132, 185, 40, 0.15);
}

.site-header .site-search input[type='submit'],
.site-header .site-search button[type='submit'] {
	width: 46px;
	min-width: 46px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0 12px 12px 0;
	background-color: #7bb800;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 19px;
	color: transparent;
	cursor: pointer;
}

.site-header .site-search input[type='submit']:hover,
.site-header .site-search input[type='submit']:focus-visible,
.site-header .site-search button[type='submit']:hover,
.site-header .site-search button[type='submit']:focus-visible {
	background-color: #6ca000;
}

.site-header .site-header-cart {
	display: block !important;
	flex: 0 0 auto;
	width: auto;
	margin-left: 0.3rem;
}

.col-full-nav .site-header-cart {
	display: none !important;
}

.site-header .shoptimizer-cart a.cart-contents {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	min-height: 48px;
	padding: 0.35rem 0.7rem;
	border: 1px solid #dce2dc;
	border-radius: 6px;
	background: #fff;
	color: #1b231d;
	line-height: 1.1;
}

.site-header .shoptimizer-cart a.cart-contents:hover,
.site-header .shoptimizer-cart a.cart-contents:focus-visible {
	border-color: #a8c985;
	background: #f8fbf6;
	color: #1b231d;
}

.site-header .shoptimizer-cart a.cart-contents .shoptimizer-cart-icon {
	position: relative;
	display: inline-flex;
	order: -1;
	align-items: center;
	justify-content: center;
	color: #5e9d1b;
}

.site-header .shoptimizer-cart a.cart-contents .shoptimizer-cart-icon svg {
	width: 25px;
	height: 25px;
}

.site-header .shoptimizer-cart a.cart-contents .shoptimizer-cart-icon .mini-count {
	position: absolute;
	top: -8px;
	right: -8px;
	display: grid;
	place-items: center;
	min-width: 17px;
	height: 17px;
	padding: 0 3px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #84b928;
	color: #17300d;
	font-size: 0.58rem;
	font-weight: 800;
	line-height: 1;
}

.site-header .shoptimizer-cart .cart-contents .amount {
	display: inline !important;
	color: #1b231d;
	font-size: 0.76rem;
	font-weight: 700;
}

.site-header .shoptimizer-myaccount {
	flex: 0 0 auto;
}

.site-header .shoptimizer-myaccount a {
	display: grid;
	place-items: center;
	width: 34px;
	height: 40px;
	color: #1b231d;
}

.site-header .shoptimizer-myaccount a:hover,
.site-header .shoptimizer-myaccount a:focus-visible {
	color: #5e9d1b;
}

.col-full-nav {
	background: #0b0d0c;
	color: #fff;
}

.col-full-nav .shoptimizer-primary-navigation {
	min-height: 46px;
}

.col-full-nav #site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li > a.main-menu-link {
	min-height: 46px;
	color: rgba(255, 255, 255, 0.9);
	font-size: 0.76rem;
	font-weight: 600;
}

.col-full-nav #site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li > a.main-menu-link:hover,
.col-full-nav #site-navigation.main-navigation .menu-primary-menu-container > ul.menu > li > a.main-menu-link:focus-visible {
	color: #fff;
}

.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button,
.woocommerce .add_to_cart_button,
.woocommerce-page .add_to_cart_button {
	border-radius: 4px;
	background: #84b928;
	color: #17300d;
	font-weight: 700;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover,
.woocommerce .add_to_cart_button:hover,
.woocommerce-page .add_to_cart_button:hover {
	background: #9dce43;
	color: #17300d;
}

@media (max-width: 992px) {
	.site-header .main-header.col-full {
		min-height: 64px;
		padding-top: 0.65rem;
		padding-bottom: 0.65rem;
	}

	.site-header .site-search {
		min-width: 0;
	}

	.site-header .site-header-cart {
		margin-left: 0;
	}

	.site-header .shoptimizer-cart a.cart-contents {
		min-height: 40px;
		padding: 0.25rem 0.4rem;
	}

	.site-header .shoptimizer-cart .cart-contents .amount {
		display: none !important;
	}

	.site-header .shoptimizer-cart a.cart-contents .shoptimizer-cart-icon svg {
		width: 23px;
		height: 23px;
	}
}

@media (max-width: 600px) {
	.topbar-wrapper .top-bar > .col-full {
		padding-right: 0.75rem;
		padding-left: 0.75rem;
	}

	.site-header .site-search {
		display: none;
	}

	.site-header .site-branding .custom-logo {
		max-height: 46px;
	}

	.site-header .site-header-cart {
		right: 0.75rem;
	}
}

/* ---- Header/plugin markup overrides ---- */
.site-header .site-search #yith-ajaxsearchform,
.site-header .site-search #yith-ajaxsearchform > .yith-ajaxsearchform-container {
	display: flex !important;
	align-items: stretch;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.site-header .site-search #yith-ajaxsearchform .yith-ajaxsearchform-select {
	display: none !important;
}

.site-header .site-search #yith-ajaxsearchform .search-navigation {
	display: flex;
	flex: 1 1 auto;
	min-width: 0;
}

.site-header .site-search #yith-ajaxsearchform #yith-s {
	width: 100% !important;
	height: 44px !important;
	min-height: 44px !important;
	border: 1px solid #dce2dc !important;
	border-right: 0 !important;
	border-radius: 12px 0 0 12px !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #1b231d !important;
	font-size: 0.78rem !important;
}

.site-header .site-search #yith-ajaxsearchform #yith-s:focus {
	border-color: #7bb800 !important;
	outline: 0 !important;
	box-shadow: 0 0 0 2px rgba(132, 185, 40, 0.15) !important;
}

.site-header .site-search #yith-ajaxsearchform #yith-searchsubmit {
	display: block !important;
	width: 46px !important;
	min-width: 46px !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 12px 12px 0 !important;
	background-color: #7bb800 !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 19px !important;
	color: transparent !important;
	font-size: 0 !important;
	cursor: pointer;
}

.site-header .shoptimizer-cart a.cart-contents .count {
	display: inline-flex !important;
	align-items: center;
	gap: 0.25rem;
	order: -1;
	width: auto !important;
	min-width: 0 !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #1b231d !important;
	font-size: 0.74rem !important;
	font-weight: 700;
	line-height: 1.1 !important;
}

.site-header .shoptimizer-cart a.cart-contents .count::before {
	display: inline-block;
	width: 25px;
	height: 25px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e9d1b' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2l1.6 9.2a2 2 0 0 0 2 1.7h7.8a2 2 0 0 0 1.9-1.4L20 7H6'/%3E%3Ccircle cx='10' cy='19' r='1.2'/%3E%3Ccircle cx='17' cy='19' r='1.2'/%3E%3C/svg%3E") center / contain no-repeat;
	content: '';
}

.site-header .shoptimizer-cart a.cart-contents .count::after {
	display: none !important;
}

.site-header .shoptimizer-cart a.cart-contents .shoptimizer-cart-icon {
	order: -1;
}

.ngs-homepage .ngs-button,
.ngs-homepage .ngs-button:hover,
.ngs-homepage .ngs-button:focus-visible {
	text-decoration: none;
}

.ngs-homepage .ngs-button--primary,
.ngs-homepage .ngs-button--primary:hover,
.ngs-homepage .ngs-button--primary:focus-visible {
	background-color: #84b928 !important;
	color: #17300d !important;
}

.ngs-homepage .ngs-button--outline,
.ngs-homepage .ngs-button--outline:hover,
.ngs-homepage .ngs-button--outline:focus-visible {
	color: #84b928 !important;
}

.ngs-homepage .ngs-home-hero .ngs-button--outline,
.ngs-homepage .ngs-home-hero .ngs-button--outline:hover,
.ngs-homepage .ngs-home-hero .ngs-button--outline:focus-visible {
	color: #fff !important;
}

.ngs-homepage .ngs-button--dark,
.ngs-homepage .ngs-button--dark:hover,
.ngs-homepage .ngs-button--dark:focus-visible {
	background-color: #1c291e !important;
	color: #fff !important;
}

.ngs-homepage .ngs-product-card__cart,
.ngs-homepage .ngs-product-card__cart:hover,
.ngs-homepage .ngs-product-card__cart:focus-visible {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 40px;
	border: 0 !important;
	border-radius: 8px !important;
	background: #84b928 !important;
	background-image: none !important;
	box-shadow: none !important;
	color: #17300d !important;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1.1;
	text-align: center;
}

.ngs-homepage .ngs-product-card__cart:hover,
.ngs-homepage .ngs-product-card__cart:focus-visible {
	background: #9dce43 !important;
	color: #17300d !important;
}

.ngs-homepage .ngs-product-card__cart .ngs-cart-icon {
	color: #17300d !important;
}

.ngs-homepage .ngs-product-card__cart:not(.loading)::after {
	display: none !important;
	content: none !important;
}

.ngs-homepage .ngs-product-card__cart.loading {
	color: transparent !important;
}

.ngs-homepage .ngs-product-card__cart.loading::after {
	display: inline-block !important;
}

.ngs-homepage .ngs-button--primary,
.ngs-homepage .ngs-button--primary:hover,
.ngs-homepage .ngs-button--primary:focus-visible {
	color: #fff !important;
}

.ngs-homepage .ngs-product-card__brand {
	overflow: hidden;
	margin-top: 0.15rem;
	color: #8a928c;
	font-size: 0.58rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.2;
	text-overflow: ellipsis;
	text-transform: uppercase;
	white-space: nowrap;
}

/* ---- Header match: search, wishlist, account and cart ---- */
@media (min-width: 993px) {
	.site-header .site-search,
	body .site-header .site-search,
	body:not(.header-4):not(.header-5) .site-header .site-search,
	.header-5 .site-header .site-search {
		width: auto !important;
		max-width: none !important;
		min-width: 280px;
		flex: 1 1 auto !important;
		margin-right: 0 !important;
		margin-left: 1.75rem !important;
	}

	.site-header .site-search > .yith-ajaxsearchform-container,
	.site-header .site-search > .yith-ajaxsearchform-wide,
	.site-header .site-search #yith-ajaxsearchform,
	.site-header .site-search #yith-ajaxsearchform > .yith-ajaxsearchform-container {
		width: 100% !important;
		max-width: none !important;
	}

	.site-header .site-search .yith-ajaxsearch-filters,
	.site-header .site-search .yith-ajaxsearchform-select {
		display: none !important;
	}

	.site-header .site-search .search-input-container,
	.site-header .site-search .search-navigation {
		display: flex !important;
		flex: 1 1 auto;
		min-width: 0;
	}

	.site-header .site-search #yith-s,
	.site-header .site-search .yith-s {
		width: 100% !important;
		height: 44px !important;
		min-height: 44px !important;
		padding-right: 1rem !important;
		padding-left: 1rem !important;
		border: 1px solid #d9ded9 !important;
		border-right: 0 !important;
		border-radius: 6px 0 0 6px !important;
		background: #fff !important;
		box-shadow: none !important;
		font-size: 0.78rem !important;
	}

	.site-header .site-search .search-submit-container {
		display: flex;
	}

	.site-header .site-search #yith-searchsubmit {
		width: 46px !important;
		min-width: 46px !important;
		height: 44px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 6px 6px 0 !important;
		background-color: #5e9d1b !important;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") !important;
		background-position: center !important;
		background-repeat: no-repeat !important;
		background-size: 19px !important;
		color: transparent !important;
		font-size: 0 !important;
	}

	.ngs-header-tools {
		display: flex;
		flex: 0 0 auto;
		align-items: center;
		gap: 0.8rem;
		margin-left: 1.35rem;
	}

	.ngs-header-tool {
		display: grid;
		place-items: center;
		width: 32px;
		height: 40px;
		color: #1b231d;
	}

	.ngs-header-tool:hover,
	.ngs-header-tool:focus-visible {
		color: #5e9d1b;
	}

	.ngs-header-tool svg {
		display: block;
		width: 24px;
		height: 24px;
	}

	.site-header .ngs-site-header-cart {
		display: block !important;
		flex: 0 0 auto;
		width: auto;
		margin-left: 1rem;
	}

	.site-header .ngs-site-header-cart .cart-contents {
		display: flex;
		align-items: center;
		gap: 0.55rem;
		min-height: 48px;
		padding: 0.25rem 0.7rem 0.25rem 0.35rem;
		border: 1px solid #dce2dc;
		border-radius: 6px;
		background: #fff;
		color: #1b231d;
		line-height: 1;
	}

	.site-header .ngs-site-header-cart .cart-contents:hover,
	.site-header .ngs-site-header-cart .cart-contents:focus-visible {
		border-color: #a8c985;
		background: #f8fbf6;
		color: #1b231d;
	}

	.ngs-header-cart__icon {
		position: relative;
		display: grid;
		place-items: center;
		width: 38px;
		height: 38px;
		border-radius: 5px;
		background: #5e9d1b;
		color: #fff;
	}

	.ngs-header-cart__icon svg {
		display: block;
		width: 22px;
		height: 22px;
	}

	.ngs-header-cart__badge {
		position: absolute;
		top: -7px;
		right: -7px;
		display: grid;
		place-items: center;
		min-width: 17px;
		height: 17px;
		padding: 0 3px;
		border: 2px solid #fff;
		border-radius: 50%;
		background: #84b928;
		color: #17300d;
		font-size: 0.58rem;
		font-weight: 800;
		line-height: 1;
	}

	.site-header .ngs-site-header-cart .amount {
		display: inline !important;
		color: #1b231d;
		font-size: 0.76rem;
		font-weight: 700;
		white-space: nowrap;
	}
}

@media (max-width: 992px) {
	.ngs-header-tools {
		display: none;
	}

	.site-header .ngs-site-header-cart {
		display: block !important;
	}

	.site-header .ngs-site-header-cart .cart-contents {
		min-height: 40px;
		padding: 0.2rem 0.35rem;
	}

	.site-header .ngs-header-cart__icon {
		width: 32px;
		height: 32px;
	}

	.site-header .ngs-site-header-cart .amount {
		display: none !important;
	}
}

/* Keep the classic WooCommerce search usable when Shoptimizer switches
 * to its compact 100px search rule around tablet-width desktops. */
.site-header .site-search .woocommerce-product-search,
.site-header .site-search form.search-form,
.site-header .site-search .searchform {
	display: flex !important;
	align-items: stretch;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
}

.site-header .site-search .woocommerce-product-search .search-field,
.site-header .site-search form.search-form input[type='search'],
.site-header .site-search .searchform input[type='search'] {
	flex: 1 1 auto;
	width: 100% !important;
	min-width: 0 !important;
	height: 44px !important;
	min-height: 44px !important;
	padding-right: 1rem !important;
	padding-left: 1rem !important;
	border: 1px solid #d9ded9 !important;
	border-right: 0 !important;
	border-radius: 6px 0 0 6px !important;
	background: #fff !important;
	box-shadow: none !important;
}

.site-header .site-search .woocommerce-product-search button[type='submit'],
.site-header .site-search form.search-form button[type='submit'],
.site-header .site-search .searchform button[type='submit'] {
	display: block !important;
	width: 46px !important;
	min-width: 46px !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 12px 12px 0 !important;
	background-color: #7bb800 !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='19' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4'/%3E%3C/svg%3E") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: 19px !important;
	color: transparent !important;
	font-size: 0 !important;
	line-height: 1 !important;
	cursor: pointer;
}

/* YITH AJAX Search 2.x (React blocks) — match the header search mock */
.site-search .wp-block-yith-search-block,
.site-search .ywcas-classic-search,
.site-search .ywcas-block-components-search-field,
.site-search .ywcas-input-field-wrapper,
.ywcas-search-mobile .wp-block-yith-search-block,
.ywcas-search-mobile .ywcas-classic-search,
.ywcas-search-mobile .ywcas-block-components-search-field,
.ywcas-search-mobile .ywcas-input-field-wrapper {
	width: 100% !important;
	max-width: none !important;
	min-width: 0;
}

.site-search .ywcas-block-components-search-field .ywcas-input-field-wrapper,
.ywcas-search-mobile .ywcas-block-components-search-field .ywcas-input-field-wrapper {
	display: flex !important;
	align-items: stretch !important;
	height: 44px !important;
	min-height: 44px !important;
	overflow: hidden !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 12px !important;
	background: #fff !important;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
}

.site-search .ywcas-block-components-search-field .ywcas-input-field-wrapper:focus-within,
.ywcas-search-mobile .ywcas-block-components-search-field .ywcas-input-field-wrapper:focus-within {
	border-color: #7bb800 !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.site-search .ywcas-input-field,
.ywcas-search-mobile .ywcas-input-field {
	display: flex !important;
	align-items: stretch !important;
	width: 100% !important;
	height: 44px !important;
	min-height: 44px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: 0.9rem !important;
}

.site-search .ywcas-classic-search.ywcas-small .ywcas-input-field input,
.site-search .ywcas-input-field input,
.ywcas-search-mobile .ywcas-classic-search.ywcas-small .ywcas-input-field input,
.ywcas-search-mobile .ywcas-input-field input {
	flex: 1 1 auto;
	width: 100% !important;
	min-width: 0 !important;
	height: 44px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 16px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
	color: #1b231d !important;
	font-size: 0.9rem !important;
	line-height: 44px !important;
}

.site-search .ywcas-block-components-search-field .ywcas-input-field input::placeholder,
.ywcas-search-mobile .ywcas-block-components-search-field .ywcas-input-field input::placeholder {
	color: #888 !important;
	opacity: 1 !important;
}

.site-search .ywcas-input-field [class*="Adornment"],
.site-search .ywcas-input-field .endAdornment,
.ywcas-search-mobile .ywcas-input-field [class*="Adornment"],
.ywcas-search-mobile .ywcas-input-field .endAdornment {
	display: flex !important;
	align-items: stretch !important;
	height: 44px !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.site-search .ywcas-block-components-search-field .ywcas-input-field-wrapper .ywcas-submit-wrapper,
.site-search .ywcas-submit-wrapper,
.ywcas-search-mobile .ywcas-block-components-search-field .ywcas-input-field-wrapper .ywcas-submit-wrapper,
.ywcas-search-mobile .ywcas-submit-wrapper {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 46px !important;
	min-width: 46px !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #7bb800 !important;
	box-shadow: none !important;
	cursor: pointer;
}

.site-search .ywcas-submit-wrapper:hover,
.site-search .ywcas-block-components-search-field .ywcas-input-field-wrapper .ywcas-submit-wrapper:hover,
.ywcas-search-mobile .ywcas-submit-wrapper:hover {
	background: #6ca000 !important;
}

.site-search .ywcas-block-components-search-field .ywcas-submit-icon,
.site-search .ywcas-block-components-search-field:hover .ywcas-submit-icon,
.site-search .ywcas-submit-icon,
.site-search .ywcas-submit-wrapper svg,
.ywcas-search-mobile .ywcas-block-components-search-field .ywcas-submit-icon,
.ywcas-search-mobile .ywcas-submit-icon,
.ywcas-search-mobile .ywcas-submit-wrapper svg {
	width: 20px !important;
	height: 20px !important;
	color: #fff !important;
	stroke: #fff !important;
	fill: none !important;
	cursor: pointer;
}

li.product p.product__brand,
li.menu-item-product p.product__brand {
	margin-bottom: 0.15rem;
	color: #6b736e;
	font-weight: 700;
}

li.product p.product__brand a,
li.menu-item-product p.product__brand a {
	color: inherit;
	text-decoration: none;
}

li.product p.product__brand a:hover,
li.menu-item-product p.product__brand a:hover {
	color: #84b721;
}
