/*
Theme Name: TM Organik Child Theme
Theme URI: https://organik.thememove.com/
Author: ThemeMove
Author URI: https://thememove.com/
Version: 2.0
Template: tm-organik
*/

/* ==========================================================================
   Agro Asia UI Kit 2.0
   Дизайн-система: токены → база → компоненты → страницы → секции главной → адаптив.
   Грузится после main-style родителя (см. functions.php), поэтому переопределения
   работают; !important — только там, где родитель сам его ставит или бьёт по id.
   ========================================================================== */

/* Плавная прокрутка (якоря, кнопка «наверх», программные переходы) */
html {
	scroll-behavior: smooth;
}

/* Не мешать тем, кто отключил анимации в системе */
@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

/* Плавная прокрутка: reveal-анимации темы отключены в aa.js (тема вешала на каждый
   .tm-animation janky scroll-обработчик с getBoundingClientRect на каждый кадр).
   Здесь показываем элементы сразу, без скрытого начального состояния. */
.tm-animation {
	opacity: 1 !important;
	transform: none !important;
	animation: none !important;
}

:root {
	/* Цвета */
	--aa-primary: #1b4332;        /* тёмно-зелёный, основной бренд */
	--aa-primary-600: #2d6a4f;    /* светлее — hover, ссылки */
	--aa-green: #52b788;          /* свежий акцент — бейджи, CTA-детали */
	--aa-accent: #a37a4c;         /* охра/крафт — вторичный акцент */
	--aa-bg: #ffffff;
	--aa-bg-soft: #f7f9f5;        /* нейтральный светлый фон секций */
	--aa-bg-muted: #eef2ea;
	--aa-border: #e3e8df;
	--aa-text: #1c1c1c;
	--aa-text-muted: #66716a;
	--aa-danger: #c0392b;

	/* Геометрия */
	--aa-radius-sm: 8px;
	--aa-radius: 12px;
	--aa-radius-lg: 18px;

	/* Тени */
	--aa-shadow-sm: 0 1px 2px rgba(27, 67, 50, 0.06);
	--aa-shadow: 0 6px 18px rgba(27, 67, 50, 0.10);
	--aa-shadow-lg: 0 14px 34px rgba(27, 67, 50, 0.16);

	/* Отступы секций */
	--aa-section-gap: 88px;
	--aa-gap: 24px;

	/* Типографика */
	--aa-font: 'Inter', 'Roboto', Arial, sans-serif;
	--aa-fs-body: 16px;
	--aa-fs-small: 13px;
	--aa-lh: 1.55;
}

/* --------------------------------------------------------------------------
   1. База: типографика, ссылки
   -------------------------------------------------------------------------- */

body,
button,
input,
select,
textarea,
.site,
.entry-content {
	font-family: var(--aa-font) !important;
	color: var(--aa-text);
	font-size: var(--aa-fs-body);
	line-height: var(--aa-lh);
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: var(--aa-font) !important;
	color: var(--aa-primary);
	font-style: normal !important;
	font-weight: 700;
	letter-spacing: -0.01em;
}

a {
	color: var(--aa-primary);
	transition: color 0.2s ease;
}

a:hover,
a:focus {
	color: var(--aa-primary-600);
}

p,
.entry-content p,
.woocommerce-product-details__short-description {
	color: var(--aa-text-muted);
	font-family: var(--aa-font);
}

/* Убираем рукописные шрифты родителя (Great Vibes, Rossela и т.д.) */
.page-title .title,
.gv-font,
.special-heading,
.insight-title--title,
.insight-special-title--title,
.insight-title .insight-title--title,
.insight-about .insight-about--content--title h4,
.insight-about3 .special-heading,
body.woocommerce.single-product .related > h2,
body.woocommerce.single-product .related > h2 span,
body.woocommerce.single-product .up-sells > h2,
body.woocommerce.single-product .up-sells > h2 span,
body.woocommerce.single-product .viewed > h2,
body.woocommerce.single-product .viewed > h2 span,
.woocommerce.single-product .related h2 span,
.woocommerce.single-product .up-sells h2 span,
.woocommerce.single-product .viewed h2 span {
	font-family: var(--aa-font) !important;
	font-style: normal !important;
	font-weight: 700 !important;
}

/* Заголовки секций (insight_title) — крупные, без декоративности */
.insight-title--title,
.insight-special-title--title {
	font-size: 32px !important;
	letter-spacing: -0.02em !important;
}

/* insight_about: родитель задаёт nowrap + overflow:hidden с @media (min-width: 769px) */
.insight-about.row {
	align-items: flex-start;
}

.insight-about .insight-about--main-img {
	margin-top: 0;
}

.insight-about .insight-about--content--title {
	overflow: visible !important;
	align-items: flex-start !important;
	flex-wrap: wrap !important;
	flex-direction: row;
	margin-top: 0;
}

@media (min-width: 769px) {
	.insight-about .insight-about--content--title h4 {
		white-space: normal !important;
		overflow: visible !important;
		max-width: 100%;
		word-wrap: break-word;
		overflow-wrap: break-word;
		line-height: 1.25;
	}
}

/* --------------------------------------------------------------------------
   2. Кнопки
   -------------------------------------------------------------------------- */

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.btn,
.insight-btn,
.aa-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.wpcf7-form input[type="submit"],
.wpcf7-form input.wpcf7-submit,
body.woocommerce.single-product .product .summary form.cart button,
body.woocommerce-page.woocommerce-cart a.checkout-button,
body.woocommerce-page.woocommerce-cart table.shop_table input[type="submit"],
.mini-cart-wrap .widget_shopping_cart_content .buttons a {
	font-family: var(--aa-font) !important;
	border-radius: var(--aa-radius-sm) !important;
	box-shadow: none !important;
	text-shadow: none !important;
	background-image: none !important;
	border-width: 2px;
	border-style: solid;
	font-weight: 600;
	letter-spacing: 0.01em;
	text-transform: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}

/* Primary */
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.btn,
.insight-btn,
.aa-btn--primary,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.wpcf7-form input[type="submit"],
.wpcf7-form input.wpcf7-submit,
body.woocommerce.single-product .product .summary form.cart button,
.mini-cart-wrap .widget_shopping_cart_content .buttons a {
	background-color: var(--aa-primary) !important;
	border-color: var(--aa-primary) !important;
	color: #fff !important;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.btn:hover,
.insight-btn:hover,
.aa-btn--primary:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.wpcf7-form input[type="submit"]:hover,
body.woocommerce.single-product .product .summary form.cart button:hover,
.mini-cart-wrap .widget_shopping_cart_content .buttons a:hover {
	background-color: var(--aa-primary-600) !important;
	border-color: var(--aa-primary-600) !important;
	color: #fff !important;
	box-shadow: var(--aa-shadow) !important;
}

/* Акцент (checkout, style-brown) */
.insight-btn.style-brown,
.insight-btn.brown,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
body.woocommerce-page.woocommerce-cart a.checkout-button,
.mini-cart-wrap .widget_shopping_cart_content .buttons a.checkout {
	background-color: var(--aa-accent) !important;
	border-color: var(--aa-accent) !important;
	color: #fff !important;
}

.insight-btn.style-brown:hover,
.insight-btn.brown:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
body.woocommerce-page.woocommerce-cart a.checkout-button:hover,
.mini-cart-wrap .widget_shopping_cart_content .buttons a.checkout:hover {
	background-color: var(--aa-primary) !important;
	border-color: var(--aa-primary) !important;
	color: #fff !important;
}

/* Outline */
.aa-btn {
	display: inline-block;
	padding: 12px 28px;
	text-decoration: none;
	cursor: pointer;
}

.aa-btn--outline {
	background: transparent !important;
	border: 2px solid var(--aa-primary) !important;
	color: var(--aa-primary) !important;
	border-radius: var(--aa-radius-sm) !important;
	font-weight: 600;
}

.aa-btn--outline:hover {
	background: var(--aa-primary) !important;
	color: #fff !important;
	box-shadow: var(--aa-shadow);
}

.aa-btn--light {
	background: #fff !important;
	border: 2px solid #fff !important;
	color: var(--aa-primary) !important;
	border-radius: var(--aa-radius-sm) !important;
}

.aa-btn--light:hover {
	background: var(--aa-green) !important;
	border-color: var(--aa-green) !important;
	color: #fff !important;
}

.insight-btn.style-arrow {
	background: transparent !important;
	border: none !important;
	color: var(--aa-primary) !important;
	box-shadow: none !important;
}

.insight-btn.style-arrow:hover {
	color: var(--aa-accent) !important;
	background: transparent !important;
}

/* --------------------------------------------------------------------------
   3. Шапка
   -------------------------------------------------------------------------- */

header.header,
header.header .topbar,
header.header .header-container,
header.header-01,
header.header-02,
header.header-03,
header.header-04,
header.header-05,
header.header-mobile {
	background-color: var(--aa-bg) !important;
}

header.header nav.menu ul.menu__container > li > a,
#menu .menu__container > li > a,
header.header .topbar,
header.header .topbar a,
header.header .mini-cart-wrap,
header.header .mini-cart-wrap a,
header.header .wishlist-wrap,
header.header .wishlist-wrap a,
header.header .top-search-btn,
header.header .top-search-btn a,
header.header .mini-cart-wrap .mini-cart .mini-cart-text,
header.header .mini-cart-wrap .mini-cart .mini-cart-text .mini-cart-total {
	color: var(--aa-text) !important;
	font-family: var(--aa-font) !important;
}

header.header nav.menu ul.menu__container > li > a {
	font-weight: 600;
	letter-spacing: 0.01em;
	text-transform: none;
}

header.header nav.menu ul.menu__container > li.current-menu-item > a,
header.header nav.menu ul.menu__container > li.current_page_item > a,
#menu .menu__container > li.current-menu-item > a,
#menu .menu__container > li.current_page_item > a,
header.header nav.menu ul.menu__container > li > a:hover,
#menu .menu__container > li > a:hover {
	color: var(--aa-primary-600) !important;
}

header.header .header-container {
	border-bottom: 1px solid var(--aa-border);
}

/* Телефоны в шапке (mu-plugin agroasia-header-phones) — тона дизайн-системы */
a.agroasia-header-phones__row {
	color: var(--aa-text) !important;
	font-weight: 500;
}

a.agroasia-header-phones__row:hover {
	color: var(--aa-primary-600) !important;
}

a.agroasia-header-phones__row i {
	color: var(--aa-green) !important;
}

/* Мега-меню «Каталог» */
li.aa-megamenu {
	position: static !important;
}

li.aa-megamenu > a.aa-megamenu__toggle {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	background: var(--aa-primary);
	color: #fff !important;
	border-radius: var(--aa-radius-sm);
	padding: 0 18px !important;
	margin-right: 6px;
	line-height: 42px !important;
	height: 42px;
	font-weight: 600;
}

/* специфичность выше, чем у общего правила header a:hover — иначе текст сливается с фоном */
header.header nav.menu ul.menu__container > li.aa-megamenu > a,
#menu .menu__container > li.aa-megamenu > a {
	color: #fff !important;
}

header.header nav.menu ul.menu__container > li.aa-megamenu > a:hover,
header.header nav.menu ul.menu__container > li.aa-megamenu:hover > a,
header.header nav.menu ul.menu__container > li.aa-megamenu.is-open > a,
#menu .menu__container > li.aa-megamenu > a:hover,
#menu .menu__container > li.aa-megamenu:hover > a,
#menu .menu__container > li.aa-megamenu.is-open > a {
	background: var(--aa-primary-600);
	color: #fff !important;
}

.aa-megamenu__caret {
	transition: transform 0.2s ease;
}

li.aa-megamenu:hover .aa-megamenu__caret,
li.aa-megamenu.is-open .aa-megamenu__caret {
	transform: rotate(180deg);
}

.aa-megamenu__panel {
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	z-index: 9999;
	background: var(--aa-bg);
	border: 1px solid var(--aa-border);
	border-radius: 0 0 var(--aa-radius-lg) var(--aa-radius-lg);
	box-shadow: var(--aa-shadow-lg);
	padding: 32px 36px 20px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
}

li.aa-megamenu:hover .aa-megamenu__panel,
li.aa-megamenu.is-open .aa-megamenu__panel {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* панель позиционируется от header-container */
header.header .header-container {
	position: relative;
}

.aa-megamenu__cols {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 32px;
}

.aa-megamenu__heading {
	display: block;
	font-size: 15px;
	font-weight: 700 !important;
	color: var(--aa-primary) !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 14px;
	padding-bottom: 10px;
	border-bottom: 2px solid var(--aa-bg-muted);
	line-height: 1.3 !important;
}

.aa-megamenu__heading:hover {
	color: var(--aa-primary-600) !important;
	border-bottom-color: var(--aa-green);
}

.aa-megamenu__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.aa-megamenu__list li {
	margin: 0;
}

.aa-megamenu__list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 6px 0 !important;
	color: var(--aa-text) !important;
	font-size: 14px;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	text-transform: none !important;
}

.aa-megamenu__list a:hover {
	color: var(--aa-primary-600) !important;
}

.aa-megamenu__count {
	font-size: 12px;
	color: var(--aa-text-muted);
	background: var(--aa-bg-soft);
	border-radius: 99px;
	padding: 1px 8px;
	line-height: 1.5;
}

/* Плоские колонки-культуры (без подкатегорий): компактная сетка заголовков */
.aa-megamenu__cols:has(.aa-megamenu__col--flat) {
	grid-template-columns: repeat(4, 1fr);
	gap: 10px 28px;
}

.aa-megamenu__col--flat .aa-megamenu__heading {
	text-transform: none;
	letter-spacing: 0;
	font-size: 15px;
	font-weight: 600 !important;
	border-bottom: none;
	padding: 8px 10px;
	margin: 0;
	border-radius: var(--aa-radius-sm);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	transition: background-color 0.15s ease;
}

.aa-megamenu__col--flat .aa-megamenu__heading:hover {
	background: var(--aa-bg-soft);
	border-bottom: none;
}

.aa-megamenu__all {
	display: block;
	margin-top: 12px;
	font-size: 13px;
	font-weight: 600 !important;
	color: var(--aa-accent) !important;
	line-height: 1.4 !important;
	text-transform: none !important;
}

.aa-megamenu__all:hover {
	color: var(--aa-primary) !important;
}

.aa-megamenu__footer {
	margin-top: 24px;
	padding-top: 16px;
	border-top: 1px solid var(--aa-border);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.aa-megamenu__footer a {
	font-weight: 600;
	color: var(--aa-primary) !important;
	font-size: 14px;
}

/* Ссылка «Каталог в Excel» в подвале мега-меню */
.aa-megamenu__catalog-dl {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	border: 1px solid var(--aa-green, #52b788);
	border-radius: 999px;
	background: rgba(82, 183, 136, .1);
}
.aa-megamenu__catalog-dl:hover {
	background: var(--aa-green, #52b788);
	color: #fff !important;
}

.aa-megamenu__footer a:hover {
	color: var(--aa-primary-600) !important;
}

/* Мобильная шапка: бургер всегда тёмный (родитель красит в белый под прозрачную шапку) */
header.header-mobile #open-left,
header.header-mobile #open-left i,
body.home header.header-mobile #open-left i,
body.front-page header.header-mobile #open-left i {
	color: var(--aa-text) !important;
}

/* Поиск в шапке */
header.header .top-search {
	background: var(--aa-bg-soft);
	border-bottom: 1px solid var(--aa-border);
}

header.header .top-search input[type="search"],
header.header .top-search input[type="text"] {
	font-family: var(--aa-font) !important;
	font-size: 16px;
}

/* --------------------------------------------------------------------------
   4. Page title / хлебные крошки
   -------------------------------------------------------------------------- */

.page-title {
	background: linear-gradient(120deg, var(--aa-primary) 0%, var(--aa-primary-600) 100%) !important;
	background-image: linear-gradient(120deg, var(--aa-primary) 0%, var(--aa-primary-600) 100%) !important;
	color: #fff;
	padding-top: 52px !important;
	padding-bottom: 52px !important;
	text-align: left;
}

.page-title .title {
	color: #fff !important;
	font-size: 34px !important;
	line-height: 1.25 !important;
	letter-spacing: -0.01em !important;
	font-weight: 700 !important;
}

.page-title .breadcrumbs,
.page-title .breadcrumbs a,
.page-title .breadcrumbs ul li {
	color: rgba(255, 255, 255, 0.8);
	font-size: 13px;
}

.page-title .breadcrumbs a:hover {
	color: #fff;
}

/* Отдельная полоса крошек под page-title — тёмный текст на светлом фоне */
.breadcrumbs {
	background: var(--aa-bg-soft);
	border-bottom: 1px solid var(--aa-border);
}

.breadcrumbs ul.insight_core_breadcrumb {
	padding: 12px 0;
	margin: 0;
}

.breadcrumbs ul.insight_core_breadcrumb li,
.breadcrumbs ul.insight_core_breadcrumb li:after {
	color: var(--aa-text-muted) !important;
	font-size: 13px;
	text-transform: none;
}

.breadcrumbs ul.insight_core_breadcrumb li a {
	color: var(--aa-text-muted) !important;
	font-size: 13px;
}

.breadcrumbs ul.insight_core_breadcrumb li a:hover {
	color: var(--aa-primary-600) !important;
}

.breadcrumbs ul.insight_core_breadcrumb li span {
	color: var(--aa-primary) !important;
	font-weight: 600;
}

/* --------------------------------------------------------------------------
   5. Сетка товаров и карточка (aa-card)
   -------------------------------------------------------------------------- */

/* Сетка: grid вместо float-колонок; 4 в ряд по умолчанию */
body.woocommerce .products.row,
body.woocommerce-page .products.row,
.insight-woo .products.row,
div.woocommerce .products.row {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--aa-gap);
	margin-left: 0;
	margin-right: 0;
}

/* Ширина колонок из shortcode-обёрток .columns-N */
.columns-2 .products.row { grid-template-columns: repeat(2, 1fr); }
.columns-3 .products.row { grid-template-columns: repeat(3, 1fr); }
.columns-4 .products.row { grid-template-columns: repeat(4, 1fr); }
.columns-5 .products.row { grid-template-columns: repeat(5, 1fr); }

/* Похожие/просмотренные/up-sells — slick-карусель родительской темы. Когда slick
   оборачивает .products.row, наш каталожный грид загоняет ленту в одну колонку из
   четырёх (карточки слипаются слева) — снимаем грид с slick-контейнера. */
.products.row.slick-slider,
.products.row.slick-initialized {
	display: block !important;
	grid-template-columns: none !important;
	gap: 0 !important;
}

body.woocommerce .products.row > .product,
body.woocommerce-page .products.row > .product,
.insight-woo .products.row > .product,
div.woocommerce .products.row > .product {
	width: 100% !important;
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin: 0 !important;
	float: none !important;
	display: flex;
	flex-direction: column;
}

/* Карточка */
.aa-card {
	background: var(--aa-bg);
	border: 1px solid var(--aa-border);
	border-radius: var(--aa-radius);
	overflow: hidden;
	text-align: left !important;
	transition: transform 0.2s ease, box-shadow 0.25s ease, border-color 0.2s ease;
	height: 100%;
}

.aa-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--aa-shadow-lg);
	border-color: transparent;
}

/* Фото */
.aa-card .product-thumb,
.aa-card__media {
	position: relative;
	border: none !important;
	border-radius: 0 !important;
	background: var(--aa-bg-soft) !important;
	overflow: hidden;
	margin: 0 !important;
}

.aa-card__media > a {
	display: block;
	aspect-ratio: 1 / 1;
}

.aa-card__media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	mix-blend-mode: multiply;
	transition: transform 0.35s ease;
	padding: 12px;
}

.aa-card:hover .aa-card__media img {
	transform: scale(1.05);
}

/* Бейджи */
.aa-card .badges,
body.woocommerce .products .product .product-thumb .badges,
.insight-woo .products .product .product-thumb .badges,
body.woocommerce-page .products .product .product-thumb .badges {
	position: absolute;
	top: 10px;
	left: 10px;
	right: auto;
	display: flex;
	flex-direction: column;
	gap: 5px;
	z-index: 2;
	align-items: flex-start;
}

.aa-card .badges span,
body.woocommerce .products .product .product-thumb .badges span,
.insight-woo .products .product .product-thumb .badges span,
body.woocommerce-page .products .product .product-thumb .badges span {
	position: static !important;
	display: inline-block;
	width: auto !important;
	height: auto !important;
	border-radius: 99px !important;
	padding: 4px 12px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: #fff !important;
	font-family: var(--aa-font) !important;
}

.aa-card .badges .hot { background: var(--aa-accent) !important; }
.aa-card .badges .onsale { background: var(--aa-danger) !important; }
.aa-card .badges .new { background: var(--aa-green) !important; }

.aa-card .outofstock {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 2;
	background: rgba(28, 28, 28, 0.75) !important;
	color: #fff !important;
	border-radius: 99px !important;
	padding: 4px 12px !important;
	font-size: 11px !important;
	width: auto !important;
	height: auto !important;
	line-height: 1.4 !important;
	text-transform: uppercase;
}

.aa-card .outofstock span {
	display: inline !important;
	font-size: 11px !important;
	line-height: 1.4 !important;
	margin-right: 4px;
	color: #fff !important;
}

/* Быстрые действия (quickview/wishlist/compare) — справа, появляются на hover */
.aa-card__quick {
	position: absolute;
	top: 10px;
	right: 10px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	z-index: 3;
	opacity: 0;
	transform: translateX(6px);
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.aa-card:hover .aa-card__quick,
.aa-card__quick:focus-within {
	opacity: 1;
	transform: translateX(0);
}

.aa-card__quick-btn a {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50% !important;
	background: #fff !important;
	color: var(--aa-primary) !important;
	box-shadow: var(--aa-shadow-sm);
	font-size: 15px;
	border: 1px solid var(--aa-border);
	transition: background-color 0.2s ease, color 0.2s ease;
}

.aa-card__quick-btn a:hover {
	background: var(--aa-primary) !important;
	color: #fff !important;
}

.aa-card__quick-btn a:before {
	line-height: 1 !important;
	position: static !important;
	margin: 0 !important;
}

/* Контент карточки */
.aa-card .product-info,
.aa-card__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	gap: 4px;
	padding: 14px 16px 16px !important;
	text-align: left !important;
}

.aa-card__brand {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--aa-green) !important;
	text-decoration: none;
}

.aa-card__brand:hover {
	color: var(--aa-primary-600) !important;
}

.aa-card__body > a,
.aa-card .product-info .product-title,
.aa-card .product-info .woocommerce-loop-product__title,
body.woocommerce .products .product .product-info .product-title,
body.woocommerce .products .product .product-info .woocommerce-loop-product__title,
.insight-woo .products .product .product-info .product-title,
.products .product .woocommerce-loop-product__title,
.products .product h2,
.products .product h3 {
	font-family: var(--aa-font) !important;
	color: var(--aa-text) !important;
	font-weight: 600;
	font-size: 15px !important;
	line-height: 1.4 !important;
	margin: 0 !important;
}

.aa-card__body > a {
	text-decoration: none;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: calc(15px * 1.4 * 2);
}

.aa-card__body > a:hover,
.aa-card__body > a:hover .woocommerce-loop-product__title {
	color: var(--aa-primary-600) !important;
}

.aa-card__sku {
	font-size: var(--aa-fs-small);
	color: var(--aa-text-muted);
}

.aa-card__rating .star-rating {
	margin: 0 !important;
}

/* Цена + корзина прижаты к низу */
.aa-card__buy {
	margin-top: auto;
	padding-top: 10px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.aa-card__buy .price,
body.woocommerce .products .product .product-info .price {
	margin: 0 !important;
	display: flex;
	align-items: baseline;
	gap: 8px;
	flex-wrap: wrap;
}

.aa-card__buy .price .amount,
body.woocommerce .products .product .product-info .price .amount,
.insight-woo .products .product .product-info .price .amount,
body.woocommerce-page .products .product .product-info .price .amount {
	color: var(--aa-primary) !important;
	font-family: var(--aa-font) !important;
	font-weight: 700;
	font-size: 19px !important;
}

.aa-card__buy .price del .amount {
	color: var(--aa-text-muted) !important;
	font-weight: 500;
	font-size: 14px !important;
}

.aa-card__buy .price del {
	opacity: 0.9;
}

.aa-card__no-price {
	font-size: 14px;
	font-weight: 600;
	color: var(--aa-text-muted);
}

/* Кнопка «В корзину» на всю ширину */
.aa-card__cart .add-to-cart-btn {
	display: block;
	width: 100%;
}

.aa-card__cart .add-to-cart-btn a.button {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	text-align: center;
	box-sizing: border-box;
	padding: 11px 16px !important;
	line-height: 1.4 !important;
	height: auto !important;
	font-size: 14px !important;
	border-radius: var(--aa-radius-sm) !important;
}

/* иконки-псевдоэлементы темы в кнопке — убрать */
.aa-card__cart .add-to-cart-btn a.button:before {
	display: none !important;
}

.aa-card__cart .add-to-cart-btn a.button.loading {
	opacity: 0.7;
	pointer-events: none;
}

.aa-card__cart .add-to-cart-btn a.button.added {
	background-color: var(--aa-green) !important;
	border-color: var(--aa-green) !important;
}

/* Ссылка «посмотреть корзину» после добавления */
.aa-card__cart a.added_to_cart {
	display: block;
	text-align: center;
	font-size: 13px;
	font-weight: 600;
	color: var(--aa-primary-600);
	margin-top: 6px;
}

/* Подсказки hint-- у обёртки кнопки не нужны */
.aa-card__cart .add-to-cart-btn.hint--top:after,
.aa-card__cart .add-to-cart-btn.hint--top:before {
	display: none !important;
}

/* Карточки подкатегорий на архиве (content-product-cat) */
body.woocommerce .cats .product-category,
body.woocommerce-page .cats .product-category {
	text-align: center;
}

/* --------------------------------------------------------------------------
   6. Каталог: тулбар, пагинация, сайдбар
   -------------------------------------------------------------------------- */

body.woocommerce .woocommerce-result-count,
body.woocommerce-page .woocommerce-result-count {
	color: var(--aa-text-muted);
	font-size: 14px;
}

body.woocommerce .woocommerce-ordering select,
body.woocommerce-page .woocommerce-ordering select {
	border: 1px solid var(--aa-border) !important;
	border-radius: var(--aa-radius-sm) !important;
	padding: 8px 32px 8px 12px;
	font-size: 14px;
	background-color: #fff !important;
}

.pagination .page-numbers,
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	font-family: var(--aa-font) !important;
	border-radius: var(--aa-radius-sm);
	border: 1px solid var(--aa-border);
	min-width: 40px;
	height: 40px;
	line-height: 38px;
	font-weight: 600;
	transition: all 0.2s ease;
}

.pagination .page-numbers.current,
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
	background-color: var(--aa-primary) !important;
	border-color: var(--aa-primary) !important;
	color: #fff !important;
}

.woocommerce nav.woocommerce-pagination ul {
	border: none !important;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: none !important;
	margin: 0 3px;
}

/* Сайдбар */
.widget .widget-title {
	font-family: var(--aa-font) !important;
	color: var(--aa-primary);
	font-size: 17px;
	font-weight: 700;
}

body.woocommerce .sidebar .widget,
.insight-woo .sidebar .widget {
	background: var(--aa-bg-soft);
	border-radius: var(--aa-radius);
	padding: 20px 22px;
	margin-bottom: 24px;
}

body.woocommerce .sidebar .widget.widget_product_categories .product-categories li a,
.insight-woo .sidebar .widget.widget_product_categories .product-categories li a,
.widget_product_categories .product-categories li a {
	color: var(--aa-text) !important;
	font-family: var(--aa-font);
	font-size: 14px;
}

body.woocommerce .sidebar .widget.widget_product_categories .product-categories li.current-cat > a,
.insight-woo .sidebar .widget.widget_product_categories .product-categories li.current-cat > a,
body.woocommerce .sidebar .widget.widget_product_categories .product-categories li:hover > a,
body.woocommerce .sidebar .widget.widget_product_categories .product-categories li:hover > span {
	color: var(--aa-primary-600) !important;
}

body.woocommerce .sidebar .widget.widget_product_tag_cloud a:hover,
.insight-woo .sidebar .widget.widget_product_tag_cloud a:hover {
	background-color: var(--aa-primary) !important;
	border-color: var(--aa-primary) !important;
	color: #fff !important;
}

/* Яндекс-карта [aa_map] */
.aa-map {
	margin: 8px 0 40px;
	border-radius: var(--aa-radius);
	overflow: hidden;
	box-shadow: var(--aa-shadow-sm);
	border: 1px solid var(--aa-border);
}

.aa-map iframe {
	display: block;
	width: 100%;
}

/* Сайдбар каталога: категории-культуры с фото + подсветка активной */
.aa-catsidebar .aa-catsidebar__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.aa-catsidebar__item {
	margin: 0 0 4px;
}

.aa-catsidebar__item a {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 6px 10px;
	border-radius: var(--aa-radius-sm);
	color: var(--aa-text) !important;
	text-decoration: none;
	font-size: 14px;
	font-weight: 500;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.aa-catsidebar__item a:hover {
	background: #fff;
	color: var(--aa-primary-600) !important;
}

.aa-catsidebar__item.is-active a {
	background: var(--aa-primary);
	color: #fff !important;
	font-weight: 600;
}

.aa-catsidebar__img {
	flex: 0 0 auto;
	width: 40px;
	height: 40px;
	border-radius: var(--aa-radius-sm);
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--aa-border);
}

.aa-catsidebar__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aa-catsidebar__img--ph {
	background: var(--aa-bg-muted);
}

.aa-catsidebar__name {
	flex: 1 1 auto;
	line-height: 1.3;
}

.aa-catsidebar__count {
	flex: 0 0 auto;
	font-size: 12px;
	color: var(--aa-text-muted);
	background: var(--aa-bg-soft);
	border-radius: 99px;
	padding: 1px 9px;
}

.aa-catsidebar__item.is-active .aa-catsidebar__count {
	background: rgba(255, 255, 255, 0.2);
	color: #fff;
}

/* «Все товары» — без фото, компактнее */
.aa-catsidebar__item--all a {
	font-weight: 600;
	padding: 8px 10px;
	margin-bottom: 4px;
}

/* --------------------------------------------------------------------------
   7. Страница товара
   -------------------------------------------------------------------------- */

body.woocommerce.single-product .product .summary .product_title,
.woocommerce div.product .product_title {
	font-family: var(--aa-font) !important;
	color: var(--aa-text) !important;
	font-size: 28px;
	line-height: 1.3;
	font-weight: 700;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product p.price .amount,
.woocommerce div.product span.price .amount,
body.woocommerce.single-product .product .summary .price > .amount,
body.woocommerce.single-product .product .summary .price ins .amount {
	color: var(--aa-primary) !important;
	font-family: var(--aa-font) !important;
	font-weight: 700;
	font-size: 30px;
}

body.woocommerce.single-product .product .summary .price del .amount {
	font-size: 18px;
	color: var(--aa-text-muted) !important;
	font-weight: 500;
}

/* Галерея */
.woocommerce div.product div.images img {
	border-radius: var(--aa-radius);
	background: var(--aa-bg-soft);
}

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
	border-radius: var(--aa-radius);
	overflow: hidden;
}

/* Количество + кнопка */
body.woocommerce.single-product .product .summary form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: stretch;
}

body.woocommerce.single-product .product .summary form.cart .quantity input.qty {
	border: 1px solid var(--aa-border) !important;
	border-radius: var(--aa-radius-sm) !important;
	height: 48px;
	font-size: 16px;
	font-weight: 600;
}

body.woocommerce.single-product .product .summary form.cart button {
	height: 48px;
	padding-left: 36px !important;
	padding-right: 36px !important;
	font-size: 15px !important;
}

/* Бейджи на странице товара — те же пилюли, что в каталоге
   (родитель выводит .badges прямым потомком div.product, перед галереей) */
body.woocommerce.single-product div.product > .badges,
.woocommerce div.product > .badges,
body.woocommerce.single-product .product .images .badges,
.woocommerce div.product div.images .badges {
	position: absolute;
	top: 14px;
	left: 14px;
	right: auto;
	display: flex;
	flex-direction: column;
	gap: 5px;
	z-index: 3;
	align-items: flex-start;
}

body.woocommerce.single-product div.product > .badges span,
.woocommerce div.product > .badges span,
body.woocommerce.single-product .product .images .badges span,
.woocommerce div.product div.images .badges span {
	position: static !important;
	display: inline-block;
	width: auto !important;
	height: auto !important;
	border-radius: 99px !important;
	padding: 5px 14px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: #fff !important;
	font-family: var(--aa-font) !important;
	background: var(--aa-primary) !important;
}

body.woocommerce.single-product div.product > .badges .hot,
body.woocommerce.single-product .product .images .badges .hot { background: var(--aa-accent) !important; }
body.woocommerce.single-product div.product > .badges .onsale,
body.woocommerce.single-product .product .images .badges .onsale { background: var(--aa-danger) !important; }
body.woocommerce.single-product div.product > .badges .new,
body.woocommerce.single-product .product .images .badges .new { background: var(--aa-green) !important; }

/* Родитель рисует декоративный белый круг за бейджами — убираем */
body.woocommerce.single-product div.product > .badges:before,
body.woocommerce.single-product div.product > .badges:after,
body.woocommerce.single-product div.product > .badges span:before,
body.woocommerce.single-product div.product > .badges span:after {
	display: none !important;
	content: none !important;
}

/* Мета-таблица товара */
body.woocommerce.single-product .product .summary .product_meta .label {
	color: var(--aa-text-muted);
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding-right: 18px;
}

body.woocommerce.single-product .product .summary .product_meta_item.share a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: var(--aa-bg-soft);
	border: 1px solid var(--aa-border);
	margin-right: 6px;
	color: var(--aa-primary);
	transition: all 0.2s ease;
}

body.woocommerce.single-product .product .summary .product_meta_item.share a:hover {
	background: var(--aa-primary);
	color: #fff;
	border-color: var(--aa-primary);
}

/* --------------------------------------------------------------------------
   Таблица характеристик товара (mu-plugin agroasia-product-specs)
   -------------------------------------------------------------------------- */

.aa-specs {
	margin: 40px 0 8px;
	clear: both;
}

.aa-specs__title {
	font-size: 24px;
	color: var(--aa-primary);
	margin: 0 0 18px;
	letter-spacing: -0.01em;
}

.aa-specs__table-wrap {
	overflow-x: auto;
	border-radius: var(--aa-radius);
	border: 1px solid var(--aa-border);
}

.aa-specs__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	background: #fff;
	margin: 0;
}

.aa-specs__table tr {
	border-bottom: 1px solid var(--aa-border);
}

.aa-specs__table tr:last-child {
	border-bottom: none;
}

/* колонка группы: как зелёная «шапка» строки из референса */
.aa-specs__group {
	background: var(--aa-primary);
	color: #fff !important;
	font-weight: 600;
	text-align: left;
	padding: 12px 16px;
	white-space: nowrap;
	width: 1%;
	vertical-align: middle;
	border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}

.aa-specs__group--empty {
	background: var(--aa-bg-muted);
}

.aa-specs__label {
	background: var(--aa-bg-soft);
	color: var(--aa-text);
	font-weight: 600;
	text-align: left;
	padding: 12px 16px;
	width: 34%;
	vertical-align: middle;
}

.aa-specs__value {
	padding: 12px 16px;
	color: var(--aa-text);
	vertical-align: middle;
}

.aa-specs__notes {
	margin-top: 14px;
	font-size: 13px;
	line-height: 1.6;
	color: var(--aa-text-muted);
}

@media (max-width: 575px) {
	.aa-specs__title { font-size: 20px; }
	.aa-specs__table { font-size: 13px; }
	.aa-specs__group,
	.aa-specs__label,
	.aa-specs__value { padding: 9px 11px; }
	.aa-specs__label { width: 40%; }
}

/* «Цена по запросу» на странице товара без цены */
.aa-price-request {
	display: flex;
	flex-direction: column;
	gap: 6px;
	background: var(--aa-bg-soft);
	border: 1px solid var(--aa-border);
	border-radius: var(--aa-radius);
	padding: 20px 24px;
	margin: 16px 0 20px;
}

.aa-price-request__label {
	font-size: 22px;
	font-weight: 700;
	color: var(--aa-primary);
}

.aa-price-request__hint {
	font-size: 14px;
	color: var(--aa-text-muted);
}

.aa-price-request__phones {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 18px;
}

.aa-price-request__phones a {
	font-weight: 700;
	color: var(--aa-primary-600);
	text-decoration: none;
}

/* Метаданные: артикул, категории */
body.woocommerce.single-product .product .summary .product_meta {
	border-top: 1px solid var(--aa-border);
	padding-top: 16px;
	margin-top: 20px;
	font-size: 14px;
	color: var(--aa-text-muted);
}

body.woocommerce.single-product .product .summary .product_meta a {
	color: var(--aa-primary-600);
	font-weight: 500;
}

/* Табы описания */
body.woocommerce.single-product .product .woocommerce-tabs ul.tabs li a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	font-family: var(--aa-font) !important;
	color: var(--aa-text-muted);
	font-weight: 600;
}

body.woocommerce.single-product .product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--aa-primary) !important;
}

body.woocommerce.single-product .product .summary a.compare:hover,
.woocommerce.single-product .product .summary .woosc-btn:hover {
	color: var(--aa-accent) !important;
}

/* Заголовки блоков related / up-sells / viewed */
body.woocommerce.single-product .related > h2,
body.woocommerce.single-product .up-sells > h2,
body.woocommerce.single-product .viewed > h2 {
	font-size: 26px !important;
	margin-bottom: 28px;
	letter-spacing: -0.01em !important;
}

/* --------------------------------------------------------------------------
   8. Корзина, чекаут, аккаунт, mini-cart
   -------------------------------------------------------------------------- */

body.woocommerce-page.woocommerce-cart table.shop_table,
body.woocommerce-page.woocommerce-checkout table.shop_table {
	border: 1px solid var(--aa-border) !important;
	border-radius: var(--aa-radius);
	overflow: hidden;
}

body.woocommerce-page.woocommerce-cart table.shop_table th,
body.woocommerce-page.woocommerce-checkout table.shop_table th {
	font-family: var(--aa-font) !important;
	color: var(--aa-primary);
	font-weight: 700;
	background: var(--aa-bg-soft);
}

body.woocommerce-page .cart_totals h2,
body.woocommerce-page #order_review_heading,
body.woocommerce-page .woocommerce-billing-fields h3 {
	font-size: 22px;
}

.woocommerce form .form-row label {
	font-weight: 600;
	color: var(--aa-text);
	font-size: 14px;
}

/* Mini-cart: русские подписи длиннее, кнопки столбцом без наложения */
.mini-cart-wrap .widget_shopping_cart_content .buttons {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.mini-cart-wrap .widget_shopping_cart_content .buttons a {
	display: block;
	width: 100%;
	margin: 0 !important;
	padding: 0 12px;
	white-space: normal;
	line-height: 36px;
}

.mini-cart-wrap .widget_shopping_cart_content {
	border-radius: var(--aa-radius);
	box-shadow: var(--aa-shadow-lg);
	border: 1px solid var(--aa-border);
}

/* Иконка корзины (ion-bag): тема прода красит её в белый под тёмную шапку — возвращаем тёмную */
header.header .mini-cart .mini-cart-icon,
header.header .mini-cart .mini-cart-icon i,
header.header .mini-cart-wrap .mini-cart .mini-cart-icon,
header.header .mini-cart-wrap .mini-cart .mini-cart-icon i,
header.header-mobile .mini-cart .mini-cart-icon i {
	color: var(--aa-primary) !important;
}

header.header .mini-cart .mini-cart-icon i {
	font-size: 24px;
}

/* Счётчик товаров в мини-корзине */
header.header .mini-cart .mini-cart-icon .mini-cart-count,
header.header .mini-cart-wrap .mini-cart-count {
	background: var(--aa-green) !important;
	color: #fff !important;
	border-radius: 50%;
	font-family: var(--aa-font) !important;
}

/* Аккаунт */
body.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
	color: var(--aa-primary) !important;
}

/* Сообщения */
body.woocommerce .woocommerce-message,
body.woocommerce-page .woocommerce-message {
	border-top-color: var(--aa-green) !important;
	border-radius: var(--aa-radius-sm);
	background: var(--aa-bg-soft);
}

body.woocommerce .woocommerce-message::before,
body.woocommerce-page .woocommerce-message::before {
	color: var(--aa-green) !important;
}

/* --------------------------------------------------------------------------
   9. Формы
   -------------------------------------------------------------------------- */

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form textarea,
.wpcf7-form select {
	background-color: #fff !important;
	border: 1px solid var(--aa-border) !important;
	border-radius: var(--aa-radius-sm) !important;
	box-shadow: none !important;
	font-family: var(--aa-font) !important;
	color: var(--aa-text) !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

input:focus,
textarea:focus,
select:focus,
.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
	border-color: var(--aa-primary-600) !important;
	box-shadow: 0 0 0 3px rgba(82, 183, 136, 0.18) !important;
	outline: none;
}

.wpcf7-form .wpcf7-form-control-wrap input,
.wpcf7-form .wpcf7-form-control-wrap textarea,
.insight-wpcf7 input[type="text"],
.insight-wpcf7 input[type="email"],
.insight-wpcf7 textarea {
	background-color: #fff !important;
}

/* --------------------------------------------------------------------------
   10. VC / Insight-акценты, блог, служебное
   -------------------------------------------------------------------------- */

.insight-title--subtitle,
.insight-special-title--subtitle,
.insight-icon,
.insight-icon-boxes .insight-icon-boxes--icon,
.insight-our-services .insight-our-services--icon,
.insight-counter .insight-counter--number,
.insight-process .insight-process--number,
.insight-separator .insight-separator--icon,
.insight-about .insight-about--content--title h4,
.insight-about2 .insight-about2--content--title,
.insight-featured-product .title-1,
.insight-product-tab .insight-product-tab--nav li.active a,
.insight-product-tab .insight-product-tab--nav li a:hover,
.insight-category-carousel .item .category-title a:hover,
.insight-accordion .insight-accordion--title.active,
.insight-team-member .insight-team-member--social a:hover {
	color: var(--aa-primary) !important;
}

.insight-icon-boxes .insight-icon-boxes--icon.icon-type-circle,
.insight-process .insight-process--number,
.insight-team-member .insight-team-member--social a:hover,
.insight-product-spot .spot,
.insight-countdown-product .item .product-countdown .product-countdown-timer > div,
.insight-accordion .insight-accordion--title.active {
	background-color: var(--aa-primary) !important;
	border-color: var(--aa-primary) !important;
	color: #fff !important;
}

.insight-about .insight-about--content--link a,
.insight-our-services a:hover {
	color: var(--aa-accent) !important;
}

/* Иконочные преимущества («Почему мы») */
.insight-icon-boxes {
	background: var(--aa-bg);
	border: 1px solid var(--aa-border);
	border-radius: var(--aa-radius);
	padding: 28px 22px;
	height: 100%;
	transition: transform 0.2s ease, box-shadow 0.25s ease;
}

.insight-icon-boxes:hover {
	transform: translateY(-4px);
	box-shadow: var(--aa-shadow);
}

.insight-icon-boxes .insight-icon-boxes--title {
	font-size: 16px !important;
	line-height: 1.45 !important;
	font-weight: 600 !important;
}

/* Блог / архивы */
.blog .entry-title a,
.archive .entry-title a,
.search .entry-title a,
.post .entry-title a {
	font-family: var(--aa-font) !important;
	color: var(--aa-primary) !important;
}

.blog .entry-title a:hover,
.archive .entry-title a:hover,
.post .entry-title a:hover {
	color: var(--aa-accent) !important;
}

.site-content,
.content-area {
	background-color: var(--aa-bg);
}

/* Наверх */
#back-to-top,
.back-to-top,
a.scrollup {
	background-color: var(--aa-primary) !important;
	border-radius: var(--aa-radius-sm) !important;
}

#back-to-top:hover,
.back-to-top:hover,
a.scrollup:hover {
	background-color: var(--aa-primary-600) !important;
}

/* --------------------------------------------------------------------------
   11. Секции главной (aa-*)
   -------------------------------------------------------------------------- */

.aa-section {
	max-width: 1200px;
	margin: 0 auto;
	padding: calc(var(--aa-section-gap) / 2) 15px;
}

.aa-section__head {
	margin-bottom: 36px;
}

.aa-section__head--row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	flex-wrap: wrap;
}

.aa-section__title {
	font-size: 32px;
	line-height: 1.2;
	margin: 0;
	letter-spacing: -0.02em;
}

.aa-section__foot {
	text-align: center;
	margin-top: 36px;
}

/* Плитки брендов */
.aa-tiles__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--aa-gap);
}

/* Плитка культуры — как карточка товара: крупное фото сверху + подпись */
.aa-tile {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--aa-border);
	border-radius: var(--aa-radius);
	padding: 0;
	overflow: hidden;
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.25s ease, border-color 0.2s ease;
}

.aa-tile:hover {
	transform: translateY(-4px);
	box-shadow: var(--aa-shadow-lg);
	border-color: transparent;
}

.aa-tile__media {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 4 / 3;
	background: var(--aa-bg-soft);
	overflow: hidden;
}

.aa-tile__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.aa-tile:hover .aa-tile__media img {
	transform: scale(1.05);
}

.aa-tile__icon {
	color: var(--aa-green);
	opacity: 0.6;
}

.aa-tile__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	padding: 16px 18px 18px;
}

.aa-tile__name {
	font-size: 18px;
	font-weight: 700;
	color: var(--aa-primary);
}

.aa-tile__count {
	font-size: 13px;
	color: var(--aa-text-muted);
}

.aa-tile__cta {
	margin-top: 10px;
	font-size: 14px;
	font-weight: 600;
	color: var(--aa-accent);
	transition: color 0.2s ease;
}

.aa-tile:hover .aa-tile__cta {
	color: var(--aa-primary);
}

/* Табы товаров */
.aa-ptabs__nav {
	display: inline-flex;
	gap: 4px;
	background: var(--aa-bg-muted);
	border-radius: 99px;
	padding: 4px;
}

.aa-ptabs__btn {
	background: transparent !important;
	border: none !important;
	color: var(--aa-text) !important;
	border-radius: 99px !important;
	padding: 9px 22px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	cursor: pointer;
	box-shadow: none !important;
}

.aa-ptabs__btn:hover {
	color: var(--aa-primary) !important;
	background: rgba(255, 255, 255, 0.6) !important;
}

.aa-ptabs__btn.is-active {
	background: var(--aa-primary) !important;
	color: #fff !important;
	box-shadow: var(--aa-shadow-sm) !important;
}

.aa-ptabs__panel {
	display: none;
}

.aa-ptabs__panel.is-active {
	display: block;
}

/* Шаги «Как заказать» */
.aa-steps {
	background: var(--aa-bg-soft);
	border-radius: var(--aa-radius-lg);
	max-width: 1170px;
}

.aa-steps__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--aa-gap);
	list-style: none;
	margin: 0;
	padding: 0;
	counter-reset: aa-step;
}

.aa-step {
	position: relative;
	background: #fff;
	border-radius: var(--aa-radius);
	padding: 26px 22px;
	box-shadow: var(--aa-shadow-sm);
}

.aa-step__num {
	position: absolute;
	top: 18px;
	right: 20px;
	font-size: 40px;
	font-weight: 800;
	line-height: 1;
	color: var(--aa-bg-muted);
}

.aa-step__icon {
	display: inline-flex;
	width: 52px;
	height: 52px;
	align-items: center;
	justify-content: center;
	border-radius: var(--aa-radius);
	background: rgba(82, 183, 136, 0.14);
	color: var(--aa-primary-600);
	margin-bottom: 16px;
}

.aa-step__icon svg {
	width: 26px;
	height: 26px;
}

.aa-step__title {
	font-size: 17px;
	margin: 0 0 8px;
}

.aa-step__text {
	font-size: 14px;
	margin: 0;
	color: var(--aa-text-muted);
}

/* О компании */
.aa-about {
	max-width: 1170px;
}

.aa-about__inner {
	background: linear-gradient(120deg, var(--aa-primary) 0%, var(--aa-primary-600) 100%);
	border-radius: var(--aa-radius-lg);
	padding: 56px;
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	gap: 48px;
	align-items: center;
}

.aa-about__inner .aa-section__title {
	color: #fff;
	margin-bottom: 16px;
}

.aa-about__text {
	color: rgba(255, 255, 255, 0.85) !important;
	font-size: 16px;
	margin-bottom: 28px;
}

.aa-about__stats {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
	margin: 0;
}

.aa-about__stat {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--aa-radius);
	padding: 20px 22px;
}

.aa-about__stat dt {
	font-size: 30px;
	font-weight: 800;
	color: var(--aa-green);
	line-height: 1.1;
}

.aa-about__stat dd {
	margin: 6px 0 0;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.8);
}

/* Форма консультации */
.aa-callback {
	max-width: 1170px;
}

.aa-callback__inner {
	background: var(--aa-bg-soft);
	border: 1px solid var(--aa-border);
	border-radius: var(--aa-radius-lg);
	padding: 48px 56px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 48px;
	align-items: center;
}

.aa-callback__info p {
	margin: 10px 0 20px;
}

.aa-callback__phones {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.aa-callback__phones a {
	font-size: 18px;
	font-weight: 700;
	color: var(--aa-primary);
	text-decoration: none;
}

.aa-callback__phones a:hover {
	color: var(--aa-primary-600);
}

.aa-callback__form {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.aa-field label {
	display: block;
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 6px;
}

.aa-field label span {
	color: var(--aa-danger);
}

.aa-field input {
	width: 100%;
	height: 48px;
	padding: 0 16px;
	font-size: 15px;
}

.aa-callback__submit {
	height: 50px;
	font-size: 15px !important;
}

.aa-callback__status {
	margin: 0;
	font-size: 14px;
	min-height: 1.4em;
}

.aa-callback__status.is-success {
	color: var(--aa-primary-600) !important;
	font-weight: 600;
}

.aa-callback__status.is-error {
	color: var(--aa-danger) !important;
	font-weight: 600;
}

/* Секция видео */
.aa-videos-note {
	text-align: center;
	color: var(--aa-text-muted);
}

/* --------------------------------------------------------------------------
   12. Футер
   -------------------------------------------------------------------------- */

.footer,
.copyright {
	background-color: var(--aa-primary) !important;
	color: rgba(255, 255, 255, 0.85) !important;
}

.footer {
	padding-top: 64px;
	padding-bottom: 40px;
}

.footer a,
.footer .textwidget,
.footer li,
.footer p,
.copyright,
.copyright a,
.copyright__text,
.copyright .copyright__text {
	color: rgba(255, 255, 255, 0.85) !important;
}

.footer a:hover,
.copyright a:hover {
	color: var(--aa-green) !important;
}

.footer .widget .widget-title {
	color: #fff !important;
	border-bottom: none !important;
	font-family: var(--aa-font) !important;
	font-size: 15px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-bottom: 18px;
}

.aa-footer__brand {
	font-size: 24px;
	font-weight: 800;
	color: #fff;
	letter-spacing: -0.01em;
	margin-bottom: 12px;
}

.aa-footer__desc {
	font-size: 14px;
	line-height: 1.6;
	max-width: 320px;
}

.aa-footer__menu,
.aa-footer__contacts {
	list-style: none;
	margin: 0;
	padding: 0;
}

.aa-footer__menu li,
.aa-footer__contacts li {
	margin: 0 0 10px;
	font-size: 14px;
	line-height: 1.5;
}

.aa-footer__menu a,
.aa-footer__contacts a {
	text-decoration: none;
	transition: color 0.2s ease;
}

.footer .footer-social {
	margin-top: 20px;
}

.footer .footer-social a {
	color: #fff !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	margin-right: 8px;
	transition: background-color 0.2s ease;
}

.footer .footer-social a:hover {
	color: #fff !important;
	background: var(--aa-primary-600);
}

.footer .mc4wp-form input[type="submit"],
.footer .mc4wp-form button {
	background-color: var(--aa-accent) !important;
	border-color: var(--aa-accent) !important;
	color: #fff !important;
	border-radius: var(--aa-radius-sm) !important;
	box-shadow: none !important;
}

.footer .mc4wp-form input[type="email"],
.footer .mc4wp-form input[type="text"] {
	background-color: #fff !important;
	border-radius: var(--aa-radius-sm) !important;
	border: 1px solid var(--aa-border) !important;
	color: var(--aa-text) !important;
}

.copyright {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	font-size: 13px;
}

.aa-copyright {
	text-align: center;
}

/* --------------------------------------------------------------------------
   13. Адаптив
   -------------------------------------------------------------------------- */

@media (max-width: 1199px) {
	.aa-megamenu__cols {
		grid-template-columns: repeat(2, 1fr);
	}

	body.woocommerce .products.row,
	body.woocommerce-page .products.row,
	.insight-woo .products.row,
	div.woocommerce .products.row,
	.columns-4 .products.row,
	.columns-5 .products.row {
		grid-template-columns: repeat(3, 1fr);
	}

	.aa-tiles__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.aa-steps__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 991px) {
	:root {
		--aa-section-gap: 64px;
	}

	.aa-section__title {
		font-size: 26px;
	}

	.insight-title--title,
	.insight-special-title--title {
		font-size: 26px !important;
	}

	.aa-about__inner,
	.aa-callback__inner {
		grid-template-columns: 1fr;
		padding: 36px 28px;
		gap: 32px;
	}

	.page-title {
		padding-top: 36px;
		padding-bottom: 36px;
	}

	.page-title .title {
		font-size: 26px !important;
	}
}

@media (max-width: 767px) {
	body.woocommerce .products.row,
	body.woocommerce-page .products.row,
	.insight-woo .products.row,
	div.woocommerce .products.row,
	.columns-2 .products.row,
	.columns-3 .products.row,
	.columns-4 .products.row,
	.columns-5 .products.row {
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}

	.aa-card .product-info,
	.aa-card__body {
		padding: 12px 12px 14px !important;
	}

	.aa-card__buy .price .amount {
		font-size: 17px !important;
	}

	.aa-tiles__grid {
		grid-template-columns: 1fr 1fr;
		gap: 12px;
	}

	.aa-tile {
		padding: 20px 18px;
	}

	.aa-tile__name {
		font-size: 16px;
	}

	.aa-steps__grid {
		grid-template-columns: 1fr;
	}

	.aa-about__stats {
		grid-template-columns: 1fr 1fr;
		gap: 12px;
	}

	.aa-section__head--row {
		flex-direction: column;
		align-items: flex-start;
	}

	.aa-ptabs__nav {
		width: 100%;
	}

	.aa-ptabs__btn {
		flex: 1;
	}

	body.woocommerce.single-product .product .summary .product_title {
		font-size: 22px;
	}

	.woocommerce div.product p.price,
	.woocommerce div.product span.price,
	body.woocommerce.single-product .product .summary .price > .amount {
		font-size: 24px;
	}

	.footer {
		padding-top: 44px;
	}

	.aa-footer__col {
		margin-bottom: 28px;
	}
}

@media (max-width: 420px) {
	body.woocommerce .products.row,
	body.woocommerce-page .products.row,
	.insight-woo .products.row,
	div.woocommerce .products.row {
		gap: 10px;
	}

	.aa-card__cart .add-to-cart-btn a.button {
		padding: 10px 10px !important;
		font-size: 13px !important;
	}

	.aa-tiles__grid {
		grid-template-columns: 1fr;
	}
}
