

/* Start:/bitrix/templates/eshop_bootstrap_v4/components/bitrix/sale.basket.basket/farm/style.css?178698816213638*/
/* =================================================================
   Корзина — Фермерский Островок (farm)
   ================================================================= */

.fo-shop-page .workarea {
	background: linear-gradient(180deg, #f7f8f2 0%, #fff 220px);
}

.fo-shop-page .workarea > .container.bx-content-section {
	max-width: var(--fo-container, 1392px);
}

.fo-shop-page .bx-content {
	padding-left: 0;
	padding-right: 0;
	max-width: 100%;
	flex: 0 0 100%;
}

.fo-shop {
	--shop-accent: var(--fo-accent, #817F2C);
	--shop-accent-light: var(--fo-accent-light, #969456);
	--shop-text: var(--fo-text, #343434);
	--shop-muted: var(--fo-muted, #767f8c);
	--shop-border: #e4e6d8;
	--shop-bg: #fff;
	--shop-soft: #f4f5ec;
	--shop-radius: 12px;
	--shop-font: var(--fo-font-body, 'Jost', sans-serif);
	--shop-font-h: var(--fo-font-heading, 'Mulish', sans-serif);

	font-family: var(--shop-font);
	color: var(--shop-text);
	padding: 8px 0 56px;
}

.fo-shop__head {
	margin-bottom: 28px;
}

.fo-shop__nav {
	margin-bottom: 10px;
}

.fo-shop__eyebrow {
	margin: 0 0 6px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #737E06;
}

.fo-shop__title {
	margin: 0;
	font-family: var(--shop-font-h);
	font-size: clamp(28px, 3vw, 36px);
	font-weight: 700;
	line-height: 1.2;
	color: var(--shop-text);
}

.fo-shop__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 28px;
	align-items: start;
}

@media (max-width: 991px) {
	.fo-shop__layout {
		grid-template-columns: 1fr;
	}
}

/* ---- Empty state ---------------------------------------------- */

.fo-cart-empty {
	display: grid;
	grid-template-columns: minmax(0, 360px) minmax(0, 1fr);
	gap: 36px;
	align-items: center;
	padding: 28px 32px;
	background: var(--shop-bg);
	border: 1px solid var(--shop-border);
	border-radius: var(--shop-radius);
	box-shadow: 0 10px 32px rgba(52, 52, 52, 0.04);
}

@media (max-width: 767px) {
	.fo-cart-empty {
		grid-template-columns: 1fr;
		padding: 24px 20px;
		text-align: center;
	}
}

.fo-cart-empty__visual img {
	display: block;
	width: 100%;
	max-width: 360px;
	height: auto;
	margin: 0 auto;
	border-radius: 10px;
}

.fo-cart-empty__eyebrow {
	margin: 0 0 8px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #737E06;
}

.fo-cart-empty__title {
	margin: 0 0 12px;
	font-family: var(--shop-font-h);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.25;
	color: var(--shop-text);
}

.fo-cart-empty__text {
	margin: 0 0 22px;
	max-width: 420px;
	font-size: 16px;
	line-height: 1.55;
	color: var(--shop-muted);
}

@media (max-width: 767px) {
	.fo-cart-empty__text {
		margin-left: auto;
		margin-right: auto;
	}
}

.fo-cart-empty__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 28px;
	border-radius: 8px;
	background: var(--shop-accent);
	color: #fff !important;
	font-family: var(--shop-font);
	font-size: 15px;
	font-weight: 600;
	text-decoration: none !important;
	transition: background .2s ease, transform .2s ease;
}

.fo-cart-empty__btn:hover {
	background: var(--shop-accent-light);
	color: #fff !important;
	transform: translateY(-1px);
}

.fo-cart-empty__link {
	display: inline-block;
	margin-left: 16px;
	color: var(--shop-accent);
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
}

.fo-cart-empty__link:hover {
	text-decoration: underline;
}

@media (max-width: 767px) {
	.fo-cart-empty__link {
		display: block;
		margin: 14px 0 0;
	}
}

/* ---- Basket layout -------------------------------------------- */

.fo-shop .bx-basket {
	opacity: 1 !important;
}

.fo-shop #basket-root.fo-shop__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
	gap: 28px 32px;
	align-items: start;
	opacity: 1 !important;
}

.fo-shop .fo-shop__main {
	grid-column: 1;
	grid-row: 1;
	min-width: 0;
}

.fo-shop .fo-shop__aside {
	display: contents;
}

.fo-shop .fo-cart-checkout {
	display: contents;
}

.fo-shop .fo-cart-coupon,
.fo-shop .fo-cart-coupon-alerts {
	grid-column: 1;
}

.fo-shop .fo-cart-summary {
	grid-column: 2;
	grid-row: 1 / span 4;
}

@media (max-width: 991px) {
	.fo-shop #basket-root.fo-shop__layout {
		grid-template-columns: 1fr;
	}

	.fo-shop .fo-shop__main,
	.fo-shop .fo-cart-coupon,
	.fo-shop .fo-cart-coupon-alerts,
	.fo-shop .fo-cart-summary {
		grid-column: 1;
		grid-row: auto;
	}
}

.fo-shop .basket-items-list-wrapper {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	overflow: visible;
}

.fo-shop .basket-items-list-wrapper-height-fixed {
	height: auto !important;
	max-height: none !important;
}

.fo-shop .basket-items-list-header {
	display: none;
}

.fo-shop .basket-items-list-container {
	padding: 0;
}

.fo-shop .fo-cart-table-wrap {
	overflow-x: auto;
}

.fo-shop .fo-cart-table {
	width: 100%;
	min-width: 640px;
	border-collapse: collapse;
}

.fo-shop .fo-cart-table thead th {
	padding: 0 12px 16px 0;
	border-bottom: 1px solid var(--shop-border);
	font-family: var(--shop-font-h);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--shop-text);
	text-align: left;
	white-space: nowrap;
}

.fo-shop .fo-cart-table thead th:last-child {
	padding-right: 0;
	width: 40px;
}

.fo-shop .fo-cart-row > td {
	padding: 24px 16px 24px 0;
	border-bottom: 1px solid var(--shop-border);
	vertical-align: middle;
}

.fo-shop .fo-cart-row > td:last-child {
	padding-right: 0;
}

.fo-shop .fo-cart-product {
	display: flex;
	align-items: center;
	gap: 20px;
	position: relative;
}

.fo-shop .fo-cart-product__img {
	flex: 0 0 100px;
	width: 100px;
	height: 100px;
	border: 1px solid var(--shop-border);
	border-radius: 8px;
	overflow: hidden;
	background: var(--shop-soft);
}

.fo-shop .fo-cart-product__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fo-shop .fo-cart-product__name {
	margin: 0;
	font-family: var(--shop-font);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.45;
}

.fo-shop .fo-cart-product__link,
.fo-shop .fo-cart-product__name [data-entity="basket-item-name"] {
	color: var(--shop-text);
	text-decoration: none;
}

.fo-shop .fo-cart-product__link:hover {
	color: var(--shop-accent);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.fo-shop .basket-item-property-name,
.fo-shop .basket-item-property-value {
	font-size: 13px;
	color: var(--shop-muted);
}

.fo-shop .fo-cart-price,
.fo-shop .fo-cart-sum {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
	font-family: var(--shop-font);
	font-size: 16px;
	font-weight: 500;
	color: var(--shop-text);
	white-space: nowrap;
}

.fo-shop .fo-cart-price__old {
	font-size: 13px;
	font-weight: 400;
	color: var(--shop-muted);
	text-decoration: line-through;
}

.fo-shop .fo-cart-sum__economy {
	font-size: 12px;
	font-weight: 600;
	color: #2e7d32;
}

.fo-shop .fo-cart-qty {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	min-width: 140px;
	padding: 8px 10px;
	border: 1px solid var(--shop-border);
	border-radius: 12px;
	background: #fff;
}

.fo-shop .fo-cart-qty__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: 0;
	background: transparent;
	color: var(--shop-text);
	cursor: pointer;
}

.fo-shop .fo-cart-qty__btn:hover {
	color: var(--shop-accent);
}

.fo-shop .fo-cart-qty .basket-item-amount-btn-minus:after,
.fo-shop .fo-cart-qty .basket-item-amount-btn-plus:after {
	display: none;
}

.fo-shop .fo-cart-qty__input,
.fo-shop .fo-cart-qty .basket-item-amount-filed {
	width: 40px;
	height: 28px;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: center;
	font-family: var(--shop-font);
	font-size: 15px;
	font-weight: 600;
	color: var(--shop-text);
}

.fo-shop .fo-cart-remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border: 1px solid var(--shop-muted);
	border-radius: 50%;
	color: var(--shop-muted);
	cursor: pointer;
	transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.fo-shop .fo-cart-remove:hover {
	background: var(--shop-accent);
	border-color: var(--shop-accent);
	color: #fff;
}

.fo-shop .fo-cart-remove:before,
.fo-shop .fo-cart-remove:after {
	display: none;
}

.fo-shop .basket-item-label-ring {
	background: var(--shop-accent) !important;
	border: 0 !important;
	font-family: var(--shop-font);
	font-weight: 700;
}

.fo-shop .fo-cart-coupon {
	position: relative;
	margin-top: 8px;
}

.fo-shop .fo-cart-coupon__input {
	width: 100%;
	height: 56px;
	padding: 14px 150px 14px 18px;
	border: 1px solid var(--shop-border);
	border-radius: 12px;
	background: #fff;
	font-family: var(--shop-font);
	font-size: 15px;
	color: var(--shop-text);
}

.fo-shop .fo-cart-coupon__input:focus {
	outline: 0;
	border-color: var(--shop-accent);
	box-shadow: 0 0 0 3px rgba(129, 127, 44, 0.15);
}

.fo-shop .fo-cart-coupon__btn {
	position: absolute;
	top: 8px;
	right: 8px;
	bottom: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 18px;
	border: 0;
	border-radius: 8px;
	background: var(--shop-text);
	color: #fff;
	font-family: var(--shop-font);
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: background .2s ease;
}

.fo-shop .fo-cart-coupon__btn:hover {
	background: var(--shop-accent);
}

.fo-shop .fo-cart-coupon-alerts {
	margin-top: 8px;
}

.fo-shop .fo-cart-summary {
	margin: 0;
	padding: 24px;
	border: 1px solid var(--shop-border);
	border-radius: 16px;
	background: var(--shop-bg);
	position: sticky;
	top: 16px;
}

.fo-shop .fo-cart-summary__title {
	margin: 0 0 24px;
	font-family: var(--shop-font-h);
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--shop-text);
}

.fo-shop .fo-cart-summary__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 12px;
	padding: 0 0 12px;
	border-bottom: 1px solid var(--shop-border);
	font-family: var(--shop-font);
	font-size: 15px;
	font-weight: 500;
	color: var(--shop-text);
}

.fo-shop .fo-cart-summary__row--ship {
	align-items: flex-start;
}

.fo-shop .fo-cart-summary__note {
	margin: 0 0 12px;
	font-size: 13px;
	color: var(--shop-muted);
}

.fo-shop .fo-cart-summary__total {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 8px 0 20px;
	font-family: var(--shop-font-h);
	font-size: 22px;
	font-weight: 700;
	color: var(--shop-text);
}

.fo-shop .fo-cart-summary__checkout,
.fo-shop .basket-btn-checkout {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 50px;
	padding: 0 24px;
	border: 0;
	border-radius: 8px;
	background: var(--shop-text) !important;
	color: #fff !important;
	font-family: var(--shop-font);
	font-size: 15px;
	font-weight: 600;
	box-shadow: none !important;
	cursor: pointer;
	transition: background .2s ease, transform .2s ease;
}

.fo-shop .fo-cart-summary__checkout:hover,
.fo-shop .basket-btn-checkout:hover {
	background: var(--shop-accent) !important;
	transform: translateY(-1px);
}

.fo-shop .fo-cart-summary__checkout.disabled,
.fo-shop .basket-btn-checkout.disabled {
	opacity: .55;
	pointer-events: none;
}

.fo-shop .fo-cart-summary__continue {
	display: block;
	margin-top: 14px;
	text-align: center;
	color: var(--shop-text);
	font-family: var(--shop-font);
	font-size: 14px;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.fo-shop .fo-cart-summary__continue:hover {
	color: var(--shop-accent);
}

.fo-shop .basket-coupon-alert {
	border-radius: 8px;
	font-size: 13px;
}

.fo-shop #basket-warning.alert {
	border-radius: 8px;
	border-color: #f0e0a8;
	background: #fffbeb;
	color: var(--shop-text);
}

@media (max-width: 767px) {
	.fo-shop .fo-cart-table {
		min-width: 0;
	}

	.fo-shop .fo-cart-table thead {
		display: none;
	}

	.fo-shop .fo-cart-row {
		display: block;
		position: relative;
		min-height: 140px;
		margin-bottom: 16px;
		padding: 0 0 8px 94px;
		border-bottom: 1px solid var(--shop-border);
	}

	.fo-shop .fo-cart-row > td {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		padding: 10px 0;
		border-bottom: 1px solid var(--shop-border);
	}

	.fo-shop .fo-cart-row > td:last-child {
		border-bottom: 0;
	}

	.fo-shop .fo-cart-td--product {
		display: block;
		padding-top: 0;
		border-bottom: 0;
	}

	.fo-shop .fo-cart-product__img {
		position: absolute;
		top: 0;
		left: 0;
		width: 80px;
		height: 80px;
		flex-basis: 80px;
	}

	.fo-shop .fo-cart-td[data-cart-title]::before {
		content: attr(data-cart-title);
		flex: 1 1 auto;
		font-family: var(--shop-font-h);
		font-size: 15px;
		font-weight: 700;
		color: var(--shop-text);
	}

	.fo-shop .fo-cart-qty {
		min-width: 110px;
		padding: 6px 10px;
	}

	.fo-shop .fo-cart-td--remove {
		justify-content: flex-end;
	}
}

/* End */


/* Start:/bitrix/templates/eshop_bootstrap_v4/common.css?179190534515688*/
/* ===================================================================
   Фермерский Островок — общие стили сайта
   Загружается на каждой странице через header.php (SetAdditionalCSS)
   =================================================================== */

/* --- Токены дизайна ------------------------------------------------ */

:root {
	/* Цвета */
	--fo-accent:        #817F2C;
	--fo-accent-light:  #969456;
	--fo-text:          #343434;
	--fo-muted:         #767f8c;

	/* Шрифты */
	--fo-font-heading:  'Mulish', sans-serif;
	--fo-font-body:     'Jost', sans-serif;

	/* Сетка: внешний контейнер 1392 = 1360 контент + 2 × 16 отступ */
	--fo-container:     1392px;

	/* Скругление изображений */
	--fo-img-radius:    5px;

	/* Алиасы для header-custom.css (сохраняют совместимость) */
	--fo-header-accent:       #817F2C;
	--fo-header-accent-light: #969456;
	--fo-header-text:         #333;
	--fo-header-muted:        #888;
	--fo-header-font:         'Jost', sans-serif;
}

/* --- Горизонтальный скролл: скрываем, чтобы full-width секции
   с отрицательными margin не создавали полосу прокрутки ----------- */

.bx-wrapper {
	overflow-x: hidden;
}

/* --- Отступ хлебных крошек / h1 от навигации -------------------- */
/* Таргетит только прямой дочерний .container.bx-header-section
   внутри <header> (блок крошек), а не тот, что внутри fo-header__top */

.fo-header > .container.bx-header-section {
	padding-top: 24px;
	padding-bottom: 0;
}

/* Хлебные крошки: уменьшаем Bootstrap mb-4 (24px) до 12px — как на галерее */
.fo-header > .container.bx-header-section .row {
	margin-bottom: 12px !important;
}

/* --- Единая ширина 1360 px для всего сайта ----------------------- */
/*
   max-width: 1392px даёт 1360 px контента при padding 16px с каждой стороны.
   Применяется к трём ключевым контейнерам Bitrix/шаблона.
*/

.fo-header__nav-container,
.bx-header .container.bx-header-section,
.workarea > .container.bx-content-section {
	max-width: var(--fo-container);
	width: 100%;
	padding-left: 16px;
	padding-right: 16px;
	box-sizing: border-box;
}

/* Контент-колонка на полную ширину (страницы без сайдбара) */
.gallery-page .workarea .bx-content,
.blog-page .workarea .bx-content,
.recipes-page .workarea .bx-content,
.privacy-page .workarea .bx-content,
.delivery-page .workarea .bx-content,
.promo-page .workarea .bx-content,
.fo-shop-page .workarea .bx-content,
.error-404-page .workarea .bx-content {
	padding-left: 0;
	padding-right: 0;
	max-width: 100%;
	flex: 0 0 100%;
}

/* --- Типографика --------------------------------------------------- */

body {
	font-family: var(--fo-font-body);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: var(--fo-text);
}

#pagetitle {
	font-family: var(--fo-font-heading);
	font-size: 36px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0 0 40px;
}

/* --- Хлебные крошки (шаблон «gallery», используется на галерее и ПК) */

.gallery-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	font-family: var(--fo-font-body);
	font-size: 12px;
	line-height: 1.4;
}

.gallery-breadcrumb__sep {
	color: var(--fo-muted);
}

.gallery-breadcrumb__link,
.gallery-breadcrumb__text {
	color: var(--fo-muted);
	text-decoration: none;
}

.gallery-breadcrumb__link:hover,
.gallery-breadcrumb__link:focus-visible {
	color: var(--fo-accent);
	text-decoration: none;
}

.gallery-breadcrumb__item--current .gallery-breadcrumb__text {
	color: var(--fo-muted);
}

/* --- Вспомогательный класс --------------------------------------- */

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* --- Адаптив ----------------------------------------------------- */

@media (max-width: 575px) {
	#pagetitle {
		font-size: 28px;
		margin-bottom: 24px;
	}
}

/* ===================================================================
   Футер — fo-footer
   =================================================================== */

/* Футер — композиция Automaster, токены FO */
.fo-footer {
	--fo-footer-bg: #2a2a24;
	--fo-footer-muted: rgba(255, 255, 255, 0.52);
	--fo-footer-soft: rgba(255, 255, 255, 0.78);
	background: var(--fo-footer-bg);
	color: #fff;
	font-family: var(--fo-font-body);
	font-size: 15px;
}

.fo-footer__container {
	max-width: var(--fo-container);
	margin: 0 auto;
	padding: 0 16px;
	box-sizing: border-box;
}

.fo-footer__main {
	padding: 56px 0 48px;
}

.fo-footer__layout {
	display: grid;
	grid-template-columns:
		minmax(0, 1.15fr)
		minmax(0, 0.75fr)
		minmax(0, 0.95fr)
		minmax(0, 1.15fr)
		minmax(0, 1.1fr);
	gap: 36px 28px;
	align-items: start;
}

.fo-footer__logo-link {
	display: inline-flex;
	margin-bottom: 18px;
}

.fo-footer__logo-img {
	display: block;
	max-height: 52px;
	width: auto;
	filter: brightness(0) invert(1);
}

.fo-footer__note {
	margin: 0;
	max-width: 34ch;
	color: var(--fo-footer-muted);
	font-size: 13px;
	line-height: 1.55;
}

.fo-footer__col--nav,
.fo-footer__col--cats {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
	padding-top: 6px;
}

.fo-footer__col--nav a,
.fo-footer__col--cats a {
	color: var(--fo-footer-soft);
	font-size: 15px;
	line-height: 1.35;
	text-decoration: none;
	transition: color 0.15s ease;
}

.fo-footer__col--nav a:hover,
.fo-footer__col--cats a:hover {
	color: var(--fo-accent-light, #969456);
}

.fo-footer__col--contacts {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 18px;
	padding-top: 4px;
}

.fo-footer__phones {
	display: flex;
	flex-direction: column;
	gap: 16px;
	width: 100%;
}

.fo-footer__phone a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #fff;
	font-family: var(--fo-font-heading);
	font-size: clamp(20px, 1.7vw, 26px);
	font-weight: 700;
	line-height: 1.15;
	text-decoration: none;
	letter-spacing: -0.01em;
}

.fo-footer__phone a:hover {
	color: var(--fo-accent-light, #969456);
}

.fo-footer__phone span {
	display: block;
	margin-top: 4px;
	color: var(--fo-footer-muted);
	font-size: 13px;
	line-height: 1.35;
}

.fo-footer__phone--wa a img {
	display: block;
	width: 18px;
	height: 18px;
	object-fit: contain;
	filter: none;
}

.fo-footer__email {
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	text-decoration: none;
}

.fo-footer__email:hover {
	color: var(--fo-accent-light, #969456);
}

.fo-footer__ask {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 22px;
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: 999px;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.fo-footer__ask:hover {
	background: var(--fo-accent, #817F2C);
	border-color: var(--fo-accent, #817F2C);
	color: #fff;
}

.fo-footer__col--aside {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 22px;
	padding-top: 4px;
}

.fo-footer__social {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.fo-footer__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.14);
	transition: background 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
}

.fo-footer__social-link:hover {
	background: rgba(129, 127, 44, 0.55);
	border-color: var(--fo-accent, #817F2C);
	transform: translateY(-2px);
}

.fo-footer__social-link img {
	display: block;
	width: 20px;
	height: 20px;
	object-fit: contain;
	filter: brightness(0) invert(1);
}

.fo-footer__address {
	margin: 0;
	color: #fff;
	font-size: 15px;
	line-height: 1.55;
}

.fo-footer__legal {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.fo-footer__legal p {
	margin: 0;
	color: var(--fo-footer-soft);
	font-size: 14px;
	line-height: 1.45;
}

.fo-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	padding: 18px 0;
}

.fo-footer__bottom-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 28px;
}

.fo-footer__copy,
.fo-footer__offer {
	color: var(--fo-footer-muted);
	font-size: 13px;
	line-height: 1.4;
}

.fo-footer__privacy {
	color: rgba(255, 255, 255, 0.7);
	font-size: 13px;
	text-decoration: none;
}

.fo-footer__privacy:hover {
	color: var(--fo-accent-light, #969456);
	text-decoration: underline;
}

@media (max-width: 1199px) {
	.fo-footer__layout {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 32px 24px;
	}

	.fo-footer__col--brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 767px) {
	.fo-footer__main {
		padding: 40px 0 32px;
	}

	.fo-footer__layout {
		grid-template-columns: 1fr 1fr;
		gap: 28px 20px;
	}

	.fo-footer__col--brand,
	.fo-footer__col--contacts,
	.fo-footer__col--aside {
		grid-column: 1 / -1;
	}

	.fo-footer__phone a {
		font-size: 22px;
	}

	.fo-footer__bottom-inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}
}

@media (max-width: 479px) {
	.fo-footer__layout {
		grid-template-columns: 1fr;
	}
}

/* --- Кнопка «наверх» + прогресс прокрутки ---------------------- */

.fo-scrolltop {
	--fo-scrolltop-size: 54px;
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 9000;
	width: var(--fo-scrolltop-size);
	height: var(--fo-scrolltop-size);
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	color: var(--fo-accent, #817F2C);
	box-shadow: 0 10px 28px rgba(52, 52, 52, 0.16);
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	transform: translateY(12px) scale(0.94);
	pointer-events: none;
	transition:
		opacity 0.28s ease,
		transform 0.28s ease,
		visibility 0.28s ease,
		background 0.2s ease,
		color 0.2s ease;
}

.fo-scrolltop.is-visible {
	opacity: 1;
	visibility: visible;
	transform: none;
	pointer-events: auto;
}

.fo-scrolltop:hover {
	background: var(--fo-accent, #817F2C);
	color: #fff;
}

.fo-scrolltop:hover .fo-scrolltop__track {
	stroke: rgba(255, 255, 255, 0.28);
}

.fo-scrolltop:hover .fo-scrolltop__progress {
	stroke: #fff;
}

.fo-scrolltop:focus-visible {
	outline: 2px solid var(--fo-accent, #817F2C);
	outline-offset: 3px;
}

.fo-scrolltop__ring {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	transform: rotate(-90deg);
}

.fo-scrolltop__track,
.fo-scrolltop__progress {
	stroke-width: 2.5;
}

.fo-scrolltop__track {
	stroke: rgba(129, 127, 44, 0.18);
}

.fo-scrolltop__progress {
	stroke: var(--fo-accent, #817F2C);
	stroke-linecap: round;
	transition: stroke-dashoffset 0.12s linear;
}

.fo-scrolltop__icon {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.fo-scrolltop:hover .fo-scrolltop__icon {
	transform: translateY(-2px);
}

@media (max-width: 767px) {
	.fo-scrolltop {
		right: 20px;
		bottom: 20px;
		--fo-scrolltop-size: 48px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.fo-scrolltop,
	.fo-scrolltop__progress,
	.fo-scrolltop__icon {
		transition: none;
	}
}

/* --- Toast: товар добавлен в корзину --------------------------- */

.fo-cart-toast {
	position: fixed;
	top: 24px;
	right: 24px;
	z-index: 12000;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	max-width: 360px;
	padding: 14px 16px;
	border: 1px solid var(--fo-accent, #817F2C);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 12px 32px rgba(52, 52, 52, 0.14);
	font-family: var(--fo-font-body, 'Jost', sans-serif);
	color: var(--fo-text, #343434);
	transform: translateX(24px);
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	transition: opacity .25s ease, transform .25s ease, visibility .25s ease;
}

.fo-cart-toast.is-visible {
	transform: translateX(0);
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}

.fo-cart-toast__icon {
	flex: 0 0 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--fo-accent, #817F2C);
	color: #fff;
}

.fo-cart-toast__text {
	margin: 2px 0 0;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.4;
}

.fo-cart-toast__name {
	font-weight: 600;
}

.fo-cart-toast__link {
	display: inline-block;
	margin-top: 6px;
	color: var(--fo-accent, #817F2C);
	font-size: 13px;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 2px;
}

@media (max-width: 575px) {
	.fo-cart-toast {
		top: 12px;
		right: 12px;
		left: 12px;
		max-width: none;
	}
}

/* --- Каталог 1С: хаб разделов ---------------------------------- */

.fo-catalog-hub {
	padding: 8px 0 48px;
	font-family: var(--fo-font-body, 'Jost', sans-serif);
	color: var(--fo-text, #343434);
}

.fo-catalog-hub__eyebrow {
	margin: 0 0 6px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #737E06;
}

.fo-catalog-hub__title {
	margin: 0 0 10px;
	font-family: var(--fo-font-heading, 'Mulish', sans-serif);
	font-size: clamp(28px, 3vw, 36px);
	font-weight: 700;
	line-height: 1.2;
}

.fo-catalog-hub__lead {
	margin: 0 0 28px;
	max-width: 560px;
	font-size: 16px;
	line-height: 1.5;
	color: var(--fo-muted, #767f8c);
}

.fo-catalog-hub__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 16px;
}

.fo-catalog-hub__card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 18px;
	min-height: 140px;
	padding: 22px 20px;
	border: 1px solid #e4e6d8;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(52, 52, 52, 0.04);
	text-decoration: none !important;
	color: inherit;
	transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.fo-catalog-hub__card:hover {
	border-color: var(--fo-accent, #817F2C);
	transform: translateY(-2px);
	box-shadow: 0 12px 28px rgba(52, 52, 52, 0.08);
}

.fo-catalog-hub__card-title {
	font-family: var(--fo-font-heading, 'Mulish', sans-serif);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--fo-text, #343434);
}

.fo-catalog-hub__card-meta {
	font-size: 13px;
	color: var(--fo-muted, #767f8c);
}

.fo-catalog-hub__card-more {
	font-size: 14px;
	font-weight: 600;
	color: var(--fo-accent, #817F2C);
}

.product-item-image-wrapper,
.product-item-detail-slider-container {
	background-color: #eef0e6;
}

/* End */


/* Start:/bitrix/templates/eshop_bootstrap_v4/header-custom.css?179182547111576*/
/* ===================================================================
   Шапка — композиция Ecomfort, токены FO
   Ряд 1: лого+слоган | описание | поиск | телефон+кнопка
   Ряд 2: каталог | меню | кабинет+корзина
   =================================================================== */

.fo-header {
	background: #fff;
	font-family: var(--fo-header-font);
}

.fo-header__top {
	border-bottom: 1px solid #eee;
}

.fo-header__top-inner {
	display: flex;
	align-items: center;
	gap: 28px;
	min-height: 88px;
	padding: 14px 0;
}

/* --- Brand: logo + slogan under ---------------------------------- */

.fo-header__brand {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	flex-shrink: 0;
	min-width: 0;
}

.fo-header__logo {
	display: flex;
	flex-shrink: 0;
	align-items: center;
}

.fo-header__logo img {
	display: block;
	max-height: 52px;
	width: auto;
}

.fo-header__slogan {
	max-width: 220px;
	color: var(--fo-header-muted);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.06em;
	line-height: 1.3;
	text-transform: uppercase;
}

/* --- Description next to logo ------------------------------------ */

.fo-header__desc {
	flex-shrink: 0;
	padding-left: 24px;
	border-left: 1px solid #e5e5e0;
	color: var(--fo-header-text);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.35;
}

/* --- Search (center, grows) -------------------------------------- */

.fo-header__search-wrap {
	flex: 1 1 auto;
	min-width: 180px;
	max-width: 520px;
	margin: 0 auto;
}

.fo-header__search form {
	display: flex;
	align-items: center;
	margin: 0;
	border: 1px solid #e5e5e0;
	border-radius: 6px;
	background: #f5f5f0;
	overflow: hidden;
	transition: border-color 0.2s ease, background 0.2s ease;
}

.fo-header__search form:focus-within {
	border-color: var(--fo-header-accent);
	background: #fff;
}

.fo-header__search-label {
	display: flex;
	flex: 1;
	margin: 0;
}

.fo-header__search-input {
	width: 100%;
	height: 42px;
	padding: 0 14px;
	border: 0;
	background: transparent;
	color: var(--fo-header-text);
	font-family: var(--fo-header-font);
	font-size: 14px;
	line-height: 1.2;
}

.fo-header__search-input:focus {
	outline: none;
}

.fo-header__search-input::placeholder {
	color: var(--fo-header-muted);
}

.fo-header__search-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--fo-header-text);
	cursor: pointer;
}

.fo-header__search-submit:hover {
	color: var(--fo-header-accent);
}

.fo-header__search-submit svg {
	display: block;
}

/* --- Phone + callback -------------------------------------------- */

.fo-header__contacts {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-shrink: 0;
}

.fo-header__phone-block {
	text-align: left;
}

.fo-header__phone {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--fo-header-text);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
}

.fo-header__phone:hover {
	color: var(--fo-header-accent);
	text-decoration: none;
}

.fo-header__phone-icon {
	flex-shrink: 0;
	color: var(--fo-header-accent);
}

.fo-header__schedule {
	margin-top: 2px;
	padding-left: 24px;
	color: var(--fo-header-muted);
	font-size: 12px;
	line-height: 1.3;
}

.fo-header__callback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 40px;
	padding: 0 18px;
	border-radius: 6px;
	background: var(--fo-header-accent);
	color: #fff;
	font-family: var(--fo-header-font);
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
	transition: background 0.2s ease;
}

.fo-header__callback:hover {
	background: var(--fo-header-accent-light);
	color: #fff;
	text-decoration: none;
}

/* --- Nav bar ----------------------------------------------------- */

.fo-header__nav {
	background: var(--fo-header-accent);
}

.fo-header__nav-container {
	max-width: var(--fo-container);
	margin: 0 auto;
	padding: 0 16px;
}

.fo-header__nav-inner {
	display: flex;
	align-items: stretch;
	min-height: 52px;
}

.fo-header__catalog-wrap {
	position: relative;
	flex-shrink: 0;
}

.fo-header__catalog {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	height: 100%;
	padding: 0 22px;
	border: 0;
	background: var(--fo-header-accent-light);
	color: #fff;
	font-family: var(--fo-header-font);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
}

.fo-header__catalog:hover,
.fo-header__catalog-wrap--open .fo-header__catalog {
	background: #a3a066;
	color: #fff;
}

.fo-header__catalog svg {
	flex-shrink: 0;
}

.fo-header__catalog-chevron {
	opacity: 0.85;
	transition: transform 0.2s ease;
}

.fo-header__catalog-wrap--open .fo-header__catalog-chevron {
	transform: rotate(180deg);
}

.fo-header__catalog-dropdown {
	position: absolute;
	left: 0;
	top: 100%;
	z-index: 300;
	width: min(960px, calc(100vw - 32px));
}

.fo-header__catalog-dropdown-inner {
	margin-top: 0;
	padding: 24px;
	border: 1px solid #e8e8e8;
	border-top: 0;
	background: #fff;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
}

.fo-catalog-menu {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: 24px 32px;
}

.fo-catalog-menu__title {
	display: block;
	margin-bottom: 10px;
	color: var(--fo-header-text);
	font-family: var(--fo-header-font);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.3;
	text-decoration: none;
}

.fo-catalog-menu__title:hover {
	color: var(--fo-header-accent);
	text-decoration: none;
}

.fo-catalog-menu__list,
.fo-catalog-menu__sublist {
	margin: 0;
	padding: 0;
	list-style: none;
}

.fo-catalog-menu__item + .fo-catalog-menu__item {
	margin-top: 6px;
}

.fo-catalog-menu__link,
.fo-catalog-menu__sublink {
	display: block;
	color: var(--fo-header-muted);
	font-family: var(--fo-header-font);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.35;
	text-decoration: none;
}

.fo-catalog-menu__link:hover,
.fo-catalog-menu__sublink:hover {
	color: var(--fo-header-accent);
	text-decoration: none;
}

.fo-catalog-menu__sublist {
	margin-top: 6px;
	padding-left: 12px;
}

.fo-header__menu-wrap {
	display: flex;
	align-items: stretch;
	flex: 1;
	min-width: 0;
}

/* --- Nav utils: login + cart ------------------------------------- */

.fo-header__nav-utils {
	display: flex;
	align-items: center;
	gap: 4px;
	flex-shrink: 0;
	margin-left: auto;
	padding-left: 8px;
}

.fo-header__login {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 12px;
	height: 100%;
	min-height: 52px;
	border: 0;
	background: transparent;
	color: #fff;
	font-family: var(--fo-header-font);
	font-size: 14px;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
}

.fo-header__login:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.12);
	text-decoration: none;
}

.fo-header__login svg {
	display: block;
	flex-shrink: 0;
}

.fo-header__cart {
	display: flex;
	align-items: stretch;
	height: 100%;
}

.fo-header__cart-link {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 100%;
	min-height: 52px;
	padding: 0 14px;
	color: #fff;
	font-size: 14px;
	text-decoration: none;
	white-space: nowrap;
	background: none;
	border: 0;
	margin: 0;
	cursor: pointer;
	font-family: inherit;
}

.fo-header__cart-link:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.12);
	text-decoration: none;
}

.fo-header__cart-link svg {
	display: block;
	flex-shrink: 0;
}

.fo-header__cart-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.25);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
}

.fo-header__cart-count--filled {
	background: #fff;
	color: var(--fo-header-accent);
}

.fo-header__burger {
	display: none;
	margin-left: auto;
	padding: 0 16px;
	border: 0;
	background: transparent;
	color: #fff;
	cursor: pointer;
}

.fo-header__burger svg {
	display: block;
}

.fo-header .fo-top-menu {
	display: flex;
	align-items: stretch;
	flex: 1;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.fo-header .fo-top-menu__item {
	display: flex;
	flex: 1;
	margin: 0;
	padding: 0;
}

.fo-header .fo-top-menu__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 14px 12px;
	color: #fff;
	font-family: var(--fo-header-font);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}

.fo-header .fo-top-menu__link:hover,
.fo-header .fo-top-menu__item.active .fo-top-menu__link {
	color: #fff;
	background: rgba(255, 255, 255, 0.12);
	text-decoration: none;
}

.bx-header-section {
	padding-bottom: 0;
	background-color: #fff;
}

/* --- Adaptive ---------------------------------------------------- */

@media (max-width: 1199px) {
	.fo-header__top-inner {
		gap: 18px;
	}

	.fo-header__desc {
		display: none;
	}

	.fo-header .fo-top-menu__link {
		padding: 14px 8px;
		font-size: 15px;
	}

	.fo-header__login span,
	.fo-header__cart-text {
		display: none;
	}
}

@media (max-width: 991px) {
	.fo-header__top-inner {
		flex-wrap: wrap;
		min-height: 0;
		padding: 12px 0;
		gap: 12px 16px;
	}

	.fo-header__brand {
		order: 1;
	}

	.fo-header__contacts {
		order: 2;
		margin-left: auto;
	}

	.fo-header__search-wrap {
		order: 3;
		flex: 1 1 100%;
		max-width: none;
		margin: 0;
	}

	.fo-header__schedule {
		display: none;
	}

	.fo-header__phone {
		font-size: 15px;
	}

	.fo-header__callback {
		height: 36px;
		padding: 0 14px;
		font-size: 13px;
	}
}

@media (max-width: 767px) {
	.fo-header__logo img {
		max-height: 40px;
	}

	.fo-header__slogan {
		font-size: 10px;
	}

	.fo-header__callback {
		display: none;
	}

	.fo-header__nav-utils {
		display: none;
	}

	.fo-header__burger {
		display: inline-flex;
		align-items: center;
	}

	.fo-header__menu-wrap {
		display: none;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		z-index: 200;
		flex-direction: column;
		align-items: stretch;
		background: var(--fo-header-accent);
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
	}

	.fo-header__nav {
		position: relative;
	}

	.fo-header__nav-inner.fo-header__nav-inner--open .fo-header__menu-wrap {
		display: flex;
	}

	.fo-header__nav-inner.fo-header__nav-inner--open .fo-header__nav-utils {
		display: flex;
		position: absolute;
		left: 0;
		right: 0;
		top: calc(100% + 0px);
		z-index: 201;
		justify-content: flex-start;
		margin: 0;
		padding: 8px 12px;
		background: var(--fo-header-accent-light);
		border-top: 1px solid rgba(255, 255, 255, 0.12);
	}

	.fo-header__nav-inner.fo-header__nav-inner--open .fo-header__menu-wrap {
		top: calc(100% + 52px);
	}

	.fo-header .fo-top-menu {
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.fo-header .fo-top-menu__item {
		flex: none;
	}

	.fo-header .fo-top-menu__link {
		justify-content: flex-start;
		padding: 12px 20px;
		text-align: left;
	}

	.fo-header__catalog-dropdown {
		position: static;
		width: 100%;
	}

	.fo-header__catalog-dropdown-inner {
		border: 0;
		box-shadow: none;
		padding: 16px;
	}

	.fo-header__catalog-wrap--open .fo-header__catalog-dropdown {
		display: block;
	}

	.fo-catalog-menu {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.fo-header__login span,
	.fo-header__cart-text {
		display: inline;
	}
}

/* End */


/* Start:/bitrix/templates/eshop_bootstrap_v4/fo-cart-drawer.css?17905276425122*/
/* ===================================================================
   Плавающая корзина (drawer справа)
   =================================================================== */

.fo-cart-drawer {
	position: fixed;
	inset: 0;
	z-index: 12000;
	pointer-events: none;
	visibility: hidden;
}

.fo-cart-drawer.is-open {
	pointer-events: auto;
	visibility: visible;
}

.fo-cart-drawer__overlay {
	position: absolute;
	inset: 0;
	background: rgba(52, 52, 52, 0.45);
	opacity: 0;
	transition: opacity 0.25s ease;
}

.fo-cart-drawer.is-open .fo-cart-drawer__overlay {
	opacity: 1;
}

.fo-cart-drawer__panel {
	position: absolute;
	top: 0;
	right: 0;
	width: min(420px, 100%);
	height: 100%;
	display: flex;
	flex-direction: column;
	background: #fff;
	box-shadow: -8px 0 32px rgba(52, 52, 52, 0.12);
	transform: translateX(100%);
	transition: transform 0.28s ease;
	font-family: var(--fo-font-body, 'Jost', sans-serif);
	color: var(--fo-text, #343434);
}

.fo-cart-drawer.is-open .fo-cart-drawer__panel {
	transform: translateX(0);
}

.fo-cart-drawer__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 20px 20px 16px;
	border-bottom: 1px solid #e8e8e2;
	flex: 0 0 auto;
}

.fo-cart-drawer__title {
	margin: 0;
	font-family: var(--fo-font-heading, 'Mulish', sans-serif);
	font-size: 22px;
	font-weight: 700;
}

.fo-cart-drawer__close {
	width: 36px;
	height: 36px;
	border: 0;
	border-radius: 50%;
	background: #f5f5f0;
	color: var(--fo-text, #343434);
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	transition: background 0.15s ease;
}

.fo-cart-drawer__close:hover {
	background: #ecece4;
}

.fo-cart-drawer__body {
	flex: 1 1 auto;
	overflow-y: auto;
	padding: 8px 0;
}

.fo-cart-drawer__empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 16px;
	min-height: 240px;
	padding: 32px 24px;
	text-align: center;
}

.fo-cart-drawer__empty-text {
	margin: 0;
	font-size: 16px;
	color: var(--fo-muted, #767f8c);
}

.fo-cart-drawer__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 18px;
	border-radius: 6px;
	font-family: var(--fo-font-body, 'Jost', sans-serif);
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	border: 0;
	cursor: pointer;
	box-sizing: border-box;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.fo-cart-drawer__btn--primary {
	background: var(--fo-accent, #817F2C);
	color: #fff;
}

.fo-cart-drawer__btn--primary:hover {
	background: var(--fo-accent-light, #969456);
	color: #fff;
}

.fo-cart-drawer__btn--ghost {
	background: transparent;
	color: var(--fo-accent, #817F2C);
	border: 1px solid var(--fo-accent, #817F2C);
}

.fo-cart-drawer__btn--ghost:hover {
	background: rgba(129, 127, 44, 0.08);
	color: var(--fo-accent, #817F2C);
}

.fo-cart-drawer__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.fo-cart-drawer__item {
	display: grid;
	grid-template-columns: 64px 1fr auto;
	gap: 12px;
	align-items: start;
	padding: 14px 20px;
	border-bottom: 1px solid #f0f0ea;
}

.fo-cart-drawer__photo {
	display: block;
	width: 64px;
	height: 64px;
	border-radius: var(--fo-img-radius, 5px);
	overflow: hidden;
	background: #f5f5f0;
}

.fo-cart-drawer__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.fo-cart-drawer__info {
	min-width: 0;
}

.fo-cart-drawer__name {
	display: block;
	margin: 0 0 6px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
	color: var(--fo-text, #343434);
	text-decoration: none;
}

.fo-cart-drawer__name:hover {
	color: var(--fo-accent, #817F2C);
}

.fo-cart-drawer__meta {
	margin: 0;
	font-size: 13px;
	color: var(--fo-muted, #767f8c);
}

.fo-cart-drawer__remove {
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: var(--fo-muted, #767f8c);
	cursor: pointer;
	transition: color 0.15s ease, background 0.15s ease;
}

.fo-cart-drawer__remove:hover {
	color: #c45c26;
	background: rgba(196, 92, 38, 0.08);
}

.fo-cart-drawer__foot {
	flex: 0 0 auto;
	padding: 16px 20px 20px;
	border-top: 1px solid #e8e8e2;
	background: #fff;
}

.fo-cart-drawer__total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
	font-size: 15px;
}

.fo-cart-drawer__total strong {
	font-family: var(--fo-font-heading, 'Mulish', sans-serif);
	font-size: 20px;
}

.fo-cart-drawer__actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.fo-cart-drawer__actions .fo-cart-drawer__btn {
	width: 100%;
}

.fo-cart-drawer.is-loading .fo-cart-drawer__body {
	opacity: 0.55;
	pointer-events: none;
}

body.fo-cart-drawer-open {
	overflow: hidden;
}

@media (max-width: 480px) {
	.fo-cart-drawer__actions {
		grid-template-columns: 1fr;
	}
}

/* End */


/* Start:/bitrix/templates/eshop_bootstrap_v4/auth-modal/auth-modal.css?178397718630272*/
/* =================================================================
   Auth Modal — auth-modal.css
   Наследует дизайн-токены сайта из :root (common.css + variables.css).
   Fallback-значения активны только при открытии auth-modal.html
   как standalone-страницы.
   ================================================================= */

/* ── Токены, скопированные в scope модалки ──────────────────────── */
/* var() с fallback: на сайте победит значение из :root             */
.am-overlay {
  --am-accent:     var(--fo-accent,       #817F2C);
  --am-accent-alt: var(--fo-accent-light, #969456);
  --am-text:       var(--fo-text,         #343434);
  --am-muted:      var(--fo-muted,        #767f8c);
  --am-font:       var(--fo-font-body,    'Jost', sans-serif);
  --am-font-h:     var(--fo-font-heading, 'Mulish', sans-serif);

  /* Только для модалки */
  --am-r:          4px;        /* радиус как у инпутов сайта       */
  --am-r-lg:       12px;       /* скругление самого диалога        */
  --am-shadow:     0 24px 72px rgba(0, 0, 0, 0.20);
  --am-border:     #ddd;
  --am-error:      #c0392b;
  --am-ok:         #2e7d32;
  --am-panel-a:    #c8c55e;    /* светло-оливковый                 */
  --am-panel-b:    #969456;    /* = --fo-accent-light              */
}

/* ── .sr-only (продублирован для standalone-демо) ──────────────── */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ══════════════════════════════════════════════════════════════════
   OVERLAY
══════════════════════════════════════════════════════════════════ */
.am-overlay {
  position: fixed;
  inset: 0;
  z-index: 9000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  box-sizing: border-box;
  background: rgba(0, 0, 0, 0);
  backdrop-filter: blur(0px);
  -webkit-backdrop-filter: blur(0px);
  transition:
    background 250ms ease,
    backdrop-filter 250ms ease,
    -webkit-backdrop-filter 250ms ease;
}

.am-overlay.is-open {
  background: rgba(0, 0, 0, 0.54);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

/* ══════════════════════════════════════════════════════════════════
   DIALOG
══════════════════════════════════════════════════════════════════ */
.am-dialog {
  position: relative;
  display: grid;
  grid-template-columns: 357px 1fr;
  align-items: stretch;
  width: 100%;
  max-width: 800px;
  max-height: calc(100svh - 32px);
  border-radius: var(--am-r-lg);
  overflow: hidden;
  background: #fff;
  box-shadow: var(--am-shadow);
  opacity: 0;
  transform: scale(0.96) translateY(10px);
  transition: opacity 250ms ease, transform 250ms ease;
}

.am-overlay.is-open .am-dialog {
  opacity: 1;
  transform: scale(1) translateY(0);
}

/* ══════════════════════════════════════════════════════════════════
   ЛЕВАЯ ПАНЕЛЬ — ФОТО
══════════════════════════════════════════════════════════════════ */
.am-panel {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 36px 28px;
  min-height: 100%;
  /* Логин — фото по умолчанию */
  background: #3a3920 url('/bitrix/templates/eshop_bootstrap_v4/auth-modal/img-login.png') center / cover no-repeat;
}

/* Регистрация — другое фото */
.am-panel[data-mode="register"] {
  background-image: url('/bitrix/templates/eshop_bootstrap_v4/auth-modal/img-register.png');
}

/* Убираем точечную сетку */
.am-panel::before { display: none; }

/* Градиентный оверлей снизу: обеспечивает читаемость текста */
.am-panel::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.08) 0%,
    rgba(0, 0, 0, 0.30) 38%,
    rgba(0, 0, 0, 0.82) 100%
  );
  pointer-events: none;
}

/* Орбы скрыты — фото важнее */
.am-panel__orb { display: none; }

.am-panel__content {
  position: relative;
  z-index: 2;
}

.am-panel__logo {
  display: none;
}

.am-panel__logo-icon {
  width: 44px;
  height: 44px;
  border-radius: var(--am-r);
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
  justify-content: center;
}

.am-panel__text {
  transition: opacity 280ms ease;
}

.am-panel__text--hidden {
  display: none;
}

.am-panel__heading {
  font-family: var(--am-font-h);
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  margin: 0 0 10px;
  line-height: 1.2;
}

.am-panel__desc {
  font-family: var(--am-font);
  font-size: 16px;
  color: rgba(255, 255, 255, 0.85);
  margin: 0;
  line-height: 1.55;
}

/* ══════════════════════════════════════════════════════════════════
   ПРАВАЯ ПАНЕЛЬ (форма)
══════════════════════════════════════════════════════════════════ */
.am-form-panel {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 36px 36px 28px;
  overflow-y: auto;
  background: #fff;
  box-sizing: border-box;
  max-height: calc(100svh - 32px);
}

/* ── Кнопка закрытия ────────────────────────────────────────────── */
.am-close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 10;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--am-accent);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 150ms;
  flex-shrink: 0;
}

.am-close:hover  { background: transparent; color: var(--am-accent-alt); }
.am-close:focus:not(:focus-visible) { outline: none; }
.am-close:focus-visible { outline: 2px solid var(--am-accent); outline-offset: 2px; }

/* ══════════════════════════════════════════════════════════════════
   SEGMENTED CONTROL (вкладки)
══════════════════════════════════════════════════════════════════ */
.am-tabs {
  /* margin-bottom задан через gap в am-form-panel */
}

.am-tabs__track {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: #f2f2f2;
  border-radius: calc(var(--am-r) + 2px);
  padding: 3px;
}

/* Скользящий индикатор */
.am-tabs__indicator {
  position: absolute;
  top: 3px;
  bottom: 3px;
  left: 3px;
  width: calc(50% - 3px);
  background: #fff;
  border-radius: var(--am-r);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.09);
  pointer-events: none;
  transition: transform 220ms cubic-bezier(0.4, 0, 0.2, 1);
}

.am-tabs__indicator--right {
  transform: translateX(100%);
}

.am-tabs__btn {
  position: relative;
  z-index: 1;
  border: 0;
  background: transparent;
  font-family: var(--am-font);
  font-size: 15px;
  font-weight: 500;
  color: var(--am-muted);
  padding: 8px 16px;
  border-radius: var(--am-r);
  cursor: pointer;
  transition: color 200ms;
  line-height: 1.2;
}

.am-tabs__btn.is-active { color: var(--am-text); font-weight: 600; }
.am-tabs__btn:focus:not(:focus-visible) { outline: none; }
.am-tabs__btn:focus-visible { outline: 2px solid var(--am-accent); outline-offset: 2px; }

/* ══════════════════════════════════════════════════════════════════
   VIEWS / STEPS
══════════════════════════════════════════════════════════════════ */
.am-view {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.am-view--hidden { display: none; }

.am-step {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.am-step--hidden { display: none; }

/* ── Прогресс-индикатор (регистрация) ──────────────────────────── */
.am-progress {
  display: flex;
  align-items: center;
}

.am-progress__step {
  flex-shrink: 0;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #eee;
  color: var(--am-muted);
  font-family: var(--am-font);
  font-size: 12px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 250ms, color 250ms;
}

.am-progress__step--active { background: var(--am-accent); color: #fff; }
.am-progress__step--done   { background: var(--am-accent); color: #fff; }

.am-progress__line {
  flex: 1;
  height: 2px;
  background: #e4e4e4;
  position: relative;
  overflow: hidden;
}

.am-progress__line::after {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--am-accent);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 280ms ease;
}

.am-progress__line--done::after { transform: scaleX(1); }

/* ── Email-чип (логин, шаг 2) ───────────────────────────────────── */
.am-email-chip {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  background: #f6f6f6;
  border: 1px solid #e8e8e8;
  border-radius: var(--am-r);
  font-family: var(--am-font);
  font-size: 14px;
  color: var(--am-text);
}

.am-email-chip strong {
  flex: 1;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ══════════════════════════════════════════════════════════════════
   FLOATING LABEL INPUT
══════════════════════════════════════════════════════════════════ */
.am-field {
  position: relative;
  display: flex;
  flex-direction: column;
}

.am-field__input {
  width: 100%;
  height: 54px;
  padding: 18px 14px 6px;
  box-sizing: border-box;
  border: 1.5px solid var(--am-border);
  border-radius: var(--am-r);
  background: #fff;
  font-family: var(--am-font);
  font-size: 16px;
  color: var(--am-text);
  line-height: 1.2;
  transition: border-color 200ms, box-shadow 200ms;
}

.am-field__input:focus {
  outline: none;
  border-color: var(--am-accent);
  box-shadow: 0 0 0 3px rgba(129, 127, 44, 0.14);
}

.am-field--pw .am-field__input { padding-right: 46px; }

/* Label: по центру инпута (27px = 54px / 2), всплывает при фокусе / вводе */
.am-field__label {
  position: absolute;
  left: 14px;
  top: 27px;
  transform: translateY(-50%);
  font-family: var(--am-font);
  font-size: 16px;
  color: var(--am-muted);
  pointer-events: none;
  line-height: 1;
  transition:
    top 170ms ease,
    transform 170ms ease,
    font-size 170ms ease,
    color 170ms ease;
}

.am-field__input:focus + .am-field__label,
.am-field__input:not(:placeholder-shown) + .am-field__label {
  top: 10px;
  transform: none;
  font-size: 11px;
  color: var(--am-accent);
}

/* Состояния: ошибка / успех */
.am-field--error .am-field__input {
  border-color: var(--am-error);
  box-shadow: 0 0 0 3px rgba(192, 57, 43, 0.11);
}

.am-field--error .am-field__input:focus + .am-field__label,
.am-field--error .am-field__label {
  color: var(--am-error);
}

.am-field--ok .am-field__input { border-color: var(--am-ok); }

.am-field--ok .am-field__input:focus + .am-field__label,
.am-field--ok .am-field__label { color: var(--am-ok); }

/* Кнопка показать/скрыть пароль — по центру инпута (27px = 54px / 2) */
.am-field__toggle {
  position: absolute;
  right: 12px;
  top: 27px;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: var(--am-muted);
  cursor: pointer;
  padding: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 150ms;
}

.am-field__toggle:hover { color: var(--am-text); }
.am-field__toggle:focus:not(:focus-visible) { outline: none; }
.am-field__toggle:focus-visible { outline: 2px solid var(--am-accent); border-radius: 2px; }

/* Сообщение об ошибке/успехе под полем */
.am-field__msg {
  font-family: var(--am-font);
  font-size: 12px;
  line-height: 1.3;
  min-height: 16px;
  margin-top: 2px;
}

.am-field--error .am-field__msg { color: var(--am-error); }
.am-field--ok    .am-field__msg { color: var(--am-ok); }

/* Ссылка внутри сообщения об ошибке сохраняет стандартный цвет */
.am-field--error .am-field__msg .am-link,
.am-field--error .am-field__msg [class*="am-link"] {
  color: var(--am-accent);
  text-decoration: underline;
}
.am-field--error .am-field__msg .am-link:hover,
.am-field--error .am-field__msg [class*="am-link"]:hover {
  color: var(--am-accent-alt);
}

/* ══════════════════════════════════════════════════════════════════
   ИНДИКАТОР НАДЁЖНОСТИ ПАРОЛЯ
══════════════════════════════════════════════════════════════════ */
.am-strength {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: -6px;
}

.am-strength__bars {
  display: flex;
  flex: 1;
  gap: 4px;
}

.am-strength__bar {
  flex: 1;
  height: 3px;
  border-radius: 2px;
  background: #e8e8e8;
  transition: background 280ms ease;
}

.am-strength--1 .am-strength__bar:nth-child(1)    { background: #e74c3c; }
.am-strength--2 .am-strength__bar:nth-child(-n+2) { background: #e67e22; }
.am-strength--3 .am-strength__bar:nth-child(-n+3) { background: #3498db; }
.am-strength--4 .am-strength__bar                 { background: #27ae60; }

.am-strength__label {
  font-family: var(--am-font);
  font-size: 11px;
  font-weight: 500;
  color: var(--am-muted);
  white-space: nowrap;
  min-width: 52px;
  text-align: right;
}

.am-strength--1 .am-strength__label { color: #e74c3c; }
.am-strength--2 .am-strength__label { color: #e67e22; }
.am-strength--3 .am-strength__label { color: #3498db; }
.am-strength--4 .am-strength__label { color: #27ae60; }

/* ══════════════════════════════════════════════════════════════════
   СТРОКА «Запомнить / Забыли пароль»
══════════════════════════════════════════════════════════════════ */
.am-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
}

/* ══════════════════════════════════════════════════════════════════
   ПОДСКАЗКА К ПОЛЮ (hint)
══════════════════════════════════════════════════════════════════ */
.am-hint {
  display: block;
  font-family: var(--am-font);
  font-size: 12px;
  color: var(--am-muted);
  line-height: 1.5;
  padding: 0 2px;
  margin-top: -4px;
}

/* ══════════════════════════════════════════════════════════════════
   КАСТОМНЫЙ ЧЕКБОКС
══════════════════════════════════════════════════════════════════ */
.am-check {
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  cursor: pointer;
  font-family: var(--am-font);
  font-size: 15px;
  color: var(--am-text);
  line-height: 1.4;
  user-select: none;
}

.am-check__input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.am-check__box {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  border: 1.5px solid var(--am-border);
  border-radius: 3px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 150ms, background 150ms;
  margin-top: 1px;
}

.am-check__input:checked + .am-check__box {
  background: var(--am-accent);
  border-color: var(--am-accent);
}

.am-check__input:checked + .am-check__box::after {
  content: '';
  display: block;
  width: 5px;
  height: 9px;
  border: 2px solid #fff;
  border-top: 0;
  border-left: 0;
  transform: rotate(45deg) translate(0, -1px);
}

.am-check__input:focus-visible + .am-check__box {
  outline: 2px solid var(--am-accent);
  outline-offset: 2px;
}

.am-check--terms .am-check__label {
  font-size: 14px;
  color: var(--am-muted);
}

/* ══════════════════════════════════════════════════════════════════
   ССЫЛКИ
══════════════════════════════════════════════════════════════════ */
.am-link {
  border: 0;
  background: transparent;
  font-family: var(--am-font);
  font-size: 15px;
  color: var(--am-accent);
  cursor: pointer;
  padding: 0;
  text-decoration: none;
  transition: color 150ms;
}

.am-link:hover { color: var(--am-accent-alt); text-decoration: underline; }
.am-link:focus:not(:focus-visible) { outline: none; }
.am-link:focus-visible { outline: 2px solid var(--am-accent); border-radius: 2px; }
.am-link--inline { display: inline; font-size: inherit; }

/* ══════════════════════════════════════════════════════════════════
   КНОПКИ
   Primary — полностью повторяет .btn-primary сайта (CSS-переменные)
══════════════════════════════════════════════════════════════════ */
.am-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 48px;
  padding: 0 24px;
  box-sizing: border-box;
  border: 1.5px solid transparent;
  border-radius: var(--am-r);
  font-family: var(--am-font);
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  overflow: hidden;
  transition:
    background 200ms,
    border-color 200ms,
    color 200ms,
    box-shadow 200ms,
    transform 150ms;
}

.am-btn:focus:not(:focus-visible) { outline: none; }
.am-btn:focus-visible { outline: 2px solid var(--am-accent); outline-offset: 2px; }

/* Primary — оливковый градиент, совпадает с цветом левой панели и шапки */
.am-btn--primary {
  background: linear-gradient(135deg, var(--am-accent-alt, #969456) 0%, var(--am-accent, #817F2C) 100%);
  border-color: var(--am-accent, #817F2C);
  color: #fff;
}

.am-btn--primary:hover:not(:disabled) {
  background: linear-gradient(135deg, #c2bf58 0%, var(--am-accent-alt, #969456) 100%);
  border-color: var(--am-accent-alt, #969456);
  box-shadow: 0 4px 16px rgba(150, 148, 86, 0.38);
  transform: translateY(-1px);
}

.am-btn--primary:active:not(:disabled) { transform: none; box-shadow: none; }
.am-btn--primary:disabled { opacity: 0.55; cursor: not-allowed; transform: none; }

/* Ghost */
.am-btn--ghost {
  background: transparent;
  border-color: var(--am-border);
  color: var(--am-muted);
  height: 40px;
  font-size: 14px;
  font-weight: 400;
}

.am-btn--ghost:hover { border-color: var(--am-accent); color: var(--am-accent); }

/* Спиннер внутри кнопки */
.am-btn__text { transition: opacity 180ms; }

.am-btn__spinner {
  position: absolute;
  width: 18px;
  height: 18px;
  border: 2px solid rgba(255, 255, 255, 0.30);
  border-top-color: #fff;
  border-radius: 50%;
  animation: am-spin 0.65s linear infinite;
  opacity: 0;
  transition: opacity 180ms;
}

.am-btn--ghost .am-btn__spinner {
  border-color: rgba(129, 127, 44, 0.25);
  border-top-color: var(--am-accent);
}

.am-btn.is-loading .am-btn__text    { opacity: 0; }
.am-btn.is-loading .am-btn__spinner { opacity: 1; }
.am-btn.is-loading                  { pointer-events: none; }

@keyframes am-spin { to { transform: rotate(360deg); } }

/* ══════════════════════════════════════════════════════════════════
   VIEW «ВОССТАНОВЛЕНИЕ ПАРОЛЯ»
══════════════════════════════════════════════════════════════════ */
.am-back-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 0;
  background: transparent;
  font-family: var(--am-font);
  font-size: 13px;
  color: var(--am-muted);
  cursor: pointer;
  padding: 0;
  transition: color 150ms;
}

.am-back-btn:hover { color: var(--am-accent); }
.am-back-btn:focus-visible { outline: 2px solid var(--am-accent); border-radius: 2px; }

.am-view__head { display: flex; flex-direction: column; gap: 6px; }

.am-view__title {
  font-family: var(--am-font-h);
  font-size: 19px;
  font-weight: 700;
  color: var(--am-text);
  margin: 0;
}

.am-view__desc {
  font-family: var(--am-font);
  font-size: 16px;
  color: var(--am-muted);
  margin: 0;
  line-height: 1.5;
}

/* Успешная отправка письма */
.am-sent {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 20px;
  background: #f0f7ef;
  border-radius: var(--am-r);
  text-align: center;
  font-family: var(--am-font);
  font-size: 14px;
  color: var(--am-ok);
}

.am-sent--hidden { display: none; }

/* ══════════════════════════════════════════════════════════════════
   СОЦИАЛЬНЫЕ КНОПКИ
══════════════════════════════════════════════════════════════════ */
.am-social {
  margin-top: auto;
}

.am-social__sep {
  position: relative;
  text-align: center;
  margin-bottom: 14px;
}

.am-social__sep::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 1px;
  background: #e8e8e8;
}

.am-social__sep span {
  position: relative;
  background: #fff;
  padding: 0 12px;
  font-family: var(--am-font);
  font-size: 12px;
  color: var(--am-muted);
}

.am-social__btns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}

.am-social__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 40px;
  padding: 0 10px;
  border: 1.5px solid var(--am-border);
  border-radius: var(--am-r);
  background: #fff;
  font-family: var(--am-font);
  font-size: 13px;
  font-weight: 500;
  color: var(--am-text);
  cursor: pointer;
  transition: border-color 180ms, box-shadow 180ms, transform 140ms;
  white-space: nowrap;
}

.am-social__btn:hover {
  border-color: var(--am-accent);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
  transform: translateY(-1px);
}

.am-social__btn:active { transform: none; }
.am-social__btn:focus-visible { outline: 2px solid var(--am-accent); outline-offset: 2px; }

/* ══════════════════════════════════════════════════════════════════
   VIEW «УСПЕХ»
══════════════════════════════════════════════════════════════════ */
.am-success {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 40px 20px;
  text-align: center;
  flex: 1;
}

.am-success__icon {
  width: 68px;
  height: 68px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--am-accent), var(--am-accent-alt));
  display: flex;
  align-items: center;
  justify-content: center;
  animation: am-pop 0.38s cubic-bezier(0.175, 0.885, 0.32, 1.275) both;
}

.am-success__title {
  font-family: var(--am-font-h);
  font-size: 22px;
  font-weight: 700;
  color: var(--am-text);
  margin: 0;
  animation: am-fade-up 0.32s ease 0.18s both;
}

@keyframes am-pop {
  from { transform: scale(0); opacity: 0; }
  to   { transform: scale(1); opacity: 1; }
}

@keyframes am-fade-up {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ══════════════════════════════════════════════════════════════════
   СООБЩЕНИЕ ОБ ОШИБКЕ (серверный ответ)
══════════════════════════════════════════════════════════════════ */
.am-form-error {
  font-family: var(--am-font);
  font-size: 13px;
  color: var(--am-error);
  padding: 10px 12px;
  background: rgba(192, 57, 43, 0.06);
  border-radius: var(--am-r);
  border-left: 3px solid var(--am-error);
  line-height: 1.4;
  margin: 0;
}

.am-form-error--hidden { display: none; }

/* ══════════════════════════════════════════════════════════════════
   КНОПКА «Войти» В ШАПКЕ КАК <button> (вместо <a>)
══════════════════════════════════════════════════════════════════ */
button.fo-header__login {
  border: 0;
  background: transparent;
  cursor: pointer;
  font-family: inherit;
  padding: 0;
}

/* ══════════════════════════════════════════════════════════════════
   АДАПТИВ
══════════════════════════════════════════════════════════════════ */
@media (max-width: 680px) {
  .am-dialog {
    grid-template-columns: 1fr;
    border-radius: 10px;
  }

  .am-panel {
    display: none; /* левая декоративная панель скрыта на мобильных */
  }

  .am-form-panel {
    padding: 28px 22px 22px;
  }
}

@media (max-width: 400px) {
  .am-overlay     { padding: 8px; }
  .am-dialog      { border-radius: 8px; }
  .am-form-panel  { padding: 24px 18px 18px; }
  .am-social__btns { grid-template-columns: 1fr; }
}

/* End */


/* Start:/bitrix/templates/eshop_bootstrap_v4/components/bitrix/menu/farm_top/style.css?17831090172643*/
/* ===================================================================
   Топ-меню (farm_top) — стили навигационных ссылок и dropdown
   =================================================================== */

/* --- Dropdown-обёртка -------------------------------------------- */

.fo-top-menu__item--has-dropdown {
	position: relative;
}

/* Стрелка-шеврон */

.fo-top-menu__arrow {
	display: inline-block;
	vertical-align: middle;
	margin-left: 4px;
	margin-bottom: 1px;
	transition: transform 0.2s ease;
	flex-shrink: 0;
}

.fo-top-menu__item--has-dropdown:hover .fo-top-menu__arrow,
.fo-top-menu__item--has-dropdown:focus-within .fo-top-menu__arrow {
	transform: rotate(180deg);
}

/* --- Выпадающий список ------------------------------------------- */

.fo-top-menu__dropdown {
	position: absolute;
	top: calc(100% + 6px);
	left: 0;
	z-index: 200;
	list-style: none;
	margin: 0;
	padding: 6px 0;
	min-width: 200px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 6px 24px rgba(0, 0, 0, 0.12);

	opacity: 0;
	visibility: hidden;
	transform: translateY(-6px);
	transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
	pointer-events: none;
}

.fo-top-menu__item--has-dropdown:hover .fo-top-menu__dropdown,
.fo-top-menu__item--has-dropdown:focus-within .fo-top-menu__dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

/* --- Элементы дропдауна ------------------------------------------ */

.fo-top-menu__dropdown-link {
	display: block;
	padding: 10px 20px;
	font-family: var(--fo-font-body, 'Jost', sans-serif);
	font-size: 14px;
	line-height: 1.4;
	color: var(--fo-text, #343434);
	text-decoration: none;
	white-space: nowrap;
	transition: background 0.15s, color 0.15s;
}

.fo-top-menu__dropdown-link:hover,
.fo-top-menu__dropdown-item.active .fo-top-menu__dropdown-link {
	background: #f5f6e8;
	color: var(--fo-accent, #817F2C);
	text-decoration: none;
}

/* --- Мобильное меню (бургер открыт) ------------------------------ */

.fo-header__nav-inner--open .fo-top-menu__item--has-dropdown .fo-top-menu__dropdown {
	position: static;
	opacity: 1;
	visibility: visible;
	transform: none;
	pointer-events: auto;
	box-shadow: none;
	border-radius: 0;
	background: transparent;
	padding: 0 0 0 12px;
	min-width: 0;
}

.fo-header__nav-inner--open .fo-top-menu__dropdown-link {
	padding: 6px 12px;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.75);
}

.fo-header__nav-inner--open .fo-top-menu__dropdown-link:hover {
	background: transparent;
	color: #fff;
}

/* End */


/* Start:/bitrix/components/bitrix/sale.basket.basket.line/templates/bootstrap_v4/style.min.css?17813763534065*/
.basket-line-block{position:relative;padding-left:25px;white-space:nowrap;font-size:13px}.basket-line-block-icon-cart,.basket-line-block-icon-profile{position:relative;margin-right:10px}.basket-line-block-icon-cart:after,.basket-line-block-icon-profile:after{position:absolute;top:-1px;left:-25px;display:block;width:20px;height:20px;content:''}.basket-line-block-icon-profile:after{background:no-repeat center url(/bitrix/components/bitrix/sale.basket.basket.line/templates/bootstrap_v4/images/profile.svg)}.basket-line-block-icon-cart:after{background:no-repeat center url(/bitrix/components/bitrix/sale.basket.basket.line/templates/bootstrap_v4/images/cart.svg)}@media(min-width:768px){.bx-basket-fixed{position:fixed;z-index:998;overflow:hidden;padding-top:10px;width:200px;border:1px solid #f0f0f0;border-radius:1px;background:#fff;box-shadow:0 7px 10px rgba(0,0,0,0.15)}.bx-basket-fixed.top{top:10px}.bx-basket-fixed.right{right:10px}.bx-basket-fixed.bottom{bottom:10px}.bx-basket-fixed.left{left:10px}.bx-basket-fixed.bx-max-height{top:10px;bottom:10px}}@media(max-width:767px){.bx-basket-fixed{position:fixed;right:0;bottom:0;left:0;z-index:998;overflow:hidden;padding-top:10px;border:1px solid #f0f0f0;border-radius:1px;background:#fff;box-shadow:0 7px 10px rgba(0,0,0,0.15)}.bx-basket-fixed.vcenter{bottom:10px;top:auto !important}.bx-basket-item-list{display:none}}.bx-basket-fixed .basket-line-block{margin-left:10px}.bx-basket-item-list{position:relative;overflow:hidden;padding-bottom:20px;border-top:1px solid #f7f7f7}.bx-opener .bx-basket-item-list{padding-bottom:75px}.bx-max-height .bx-basket-item-list{position:absolute;right:0;bottom:0;left:0}.bx-closed .bx-basket-item-list{overflow:hidden;height:20px}.bx-basket-item-list-action{position:absolute;right:0;bottom:0;left:0;z-index:120;padding:3px 0;height:20px;background:#f7f7f7;color:#4f4f4f;vertical-align:middle;text-align:center;font-size:12px;line-height:14px;cursor:pointer}.bx-basket-item-list-button-container{position:absolute;right:0;bottom:20px;left:0;padding:10px 0;border-top:1px solid #f7f7f7;background:#fff;text-align:center}.bx-basket-item-list-container{overflow-y:auto;max-height:100%}.bx-basket-item-list-item{position:relative;margin-bottom:15px;padding-top:15px;padding-right:10px;padding-left:10px;border-bottom:1px solid #f7f7f7}.bx-basket-item-list-container .bx-basket-item-list-item:last-child{margin-bottom:0;border-bottom:0}.bx-basket-item-list-item-status{margin:0 10px 20px;padding:3px;border-radius:3px;background:#ebebeb;text-align:center;white-space:normal;font-weight:bold;font-size:12px;line-height:16px}.bx-basket-item-list-item-img{position:relative;padding-bottom:5px;text-align:center}.bx-basket-item-list-item-img img{max-width:90px;height:auto;border:1px solid #e6e6e6}.bx-basket-item-list-item-name{padding-bottom:5px}.bx-basket-item-list-item-name a{font-size:13px;line-height:16px}.bx-basket-item-list-item-remove{position:absolute;top:-7px;right:10px;width:20px;height:20px;opacity:.5;cursor:pointer;transition:250ms linear all}.bx-basket-item-list-item-remove:after,.bx-basket-item-list-item-remove:before{position:absolute;top:50%;left:50%;display:block;width:10px;height:2px;border-radius:1px;background-color:#333;content:'';transform:translate(-50%,-50%)}.bx-basket-item-list-item-remove:after{-webkit-transform:translate(-50%,-50%) rotate(45deg);-moz-transform:translate(-50%,-50%) rotate(45deg);-ms-transform:translate(-50%,-50%) rotate(45deg);-o-transform:translate(-50%,-50%) rotate(45deg);transform:translate(-50%,-50%) rotate(45deg)}.bx-basket-item-list-item-remove:before{-webkit-transform:translate(-50%,-50%) rotate(135deg);-moz-transform:translate(-50%,-50%) rotate(135deg);-ms-transform:translate(-50%,-50%) rotate(135deg);-o-transform:translate(-50%,-50%) rotate(135deg);transform:translate(-50%,-50%) rotate(135deg)}.bx-basket-item-list-item-remove:hover{opacity:.7}.bx-basket-item-list-item-price-block{padding-bottom:5px;font-size:12px}.bx-basket-item-list-item-price{display:inline-block;margin-right:5px}.bx-basket-item-list-item-price-old{display:inline-block;margin-right:5px;color:#b0b0b0;text-decoration:line-through}.bx_cart_login_top .basket-line{line-height:1.44em}
/* End */


/* Start:/bitrix/templates/eshop_bootstrap_v4/template_styles.min.css?17820608188037*/
.bx-yellow,.bx-theme-yellow{--primary:#f9a91d;--theme-color-primary:#f9a91d;--theme-color-second:#faba4a;--theme-color-light:#fff;--theme-b-link:#f9a91d;--theme-b-link-hover:#faba4a;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#f9a91d;--theme-b-bd-primary:#f9a91d;--theme-b-sd-primary:rgba(249,169,29,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#faba4a;--theme-b-bd-primary-hover:#daa53e;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#faba4a;--theme-b-bd-primary-active:#daa53e;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#daa53e;--theme-b-bd-primary-disabled:#b7853b}.bx-blue,.bx-theme-blue{--primary:#0083d1;--theme-color-primary:#0083d1;--theme-color-second:#5ca6e4;--theme-color-light:#f0f6f8;--theme-b-link:#44b1c9;--theme-b-link-hover:#5cc3d1;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#0083d1;--theme-b-bd-primary:#0083d1;--theme-b-sd-primary:rgba(0,131,209,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#5ca6e4;--theme-b-bd-primary-hover:#5599d2;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#5ca6e4;--theme-b-bd-primary-active:#5599d2;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#5599d2;--theme-b-bd-primary-disabled:#4d8bbf}.bx-red,.bx-theme-red{--primary:#e22b2b;--theme-color-primary:#e22b2b;--theme-color-second:#e95c5c;--theme-color-light:#f0f0f0;--theme-b-link:#e22b2b;--theme-b-link-hover:#e95c5c;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#e22b2b;--theme-b-bd-primary:#e22b2b;--theme-b-sd-primary:rgba(226,43,43,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#e95c5c;--theme-b-bd-primary-hover:#d05454;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#e95c5c;--theme-b-bd-primary-active:#d05454;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#d05454;--theme-b-bd-primary-disabled:#c04e4e}.bx-green,.bx-theme-green{--primary:#63aa28;--theme-color-primary:#63aa28;--theme-color-second:#5b9f0b;--theme-color-light:#a8d95b;--theme-b-link:#44b1c9;--theme-b-link-hover:#5cc3d1;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#63aa28;--theme-b-bd-primary:#63aa28;--theme-b-sd-primary:rgba(99,170,40,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#5b9f0b;--theme-b-bd-primary-hover:#56940b;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#5b9f0b;--theme-b-bd-primary-active:#56940b;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#56940b;--theme-b-bd-primary-disabled:#497c09}body{background-attachment:fixed;background-size:cover;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}#pagetitle{margin-bottom:35px}h1,h2,h3,h4,h5{font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}.bx-content-section,.bx-header-section{padding-bottom:2px;background-color:rgba(255,255,255,.95)}.bx-header-logo{order:1}.bx-header-personal{order:3}.bx-header-contact{order:2}.bx-logo-block{display:block;height:50px;border-bottom:0}.bx-logo-block img{max-height:50px;width:auto}@media(max-width:767px){.bx-logo-block img{max-width:100%;max-height:45px;width:auto;height:auto}.bx-header-logo{padding:5px 50px;height:55px;background-color:var(--theme-color-primary)}.bx-logo-block{height:auto}body.bx-theme-green .bx-store-logo{background:#33b111}}.bx-header-phone-block{display:flex;align-items:center}.bx-header-phone-number{color:#000;white-space:nowrap;font:21px/28px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600);transition:250ms linear all}.bx-header-phone-icon{display:block;margin-right:10px;width:26px;height:26px;	background: no-repeat center url(/bitrix/templates/eshop_bootstrap_v4/images/phone.svg);}@media(max-width:991px){.bx-header-phone-number{font:15px/18px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}}.bx-header-worktime{color:#000;font:16px/22px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600);transition:250ms linear all}.bx-worktime-title{color:#adadad;font:12px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}.bx-worktime-schedule{color:#000;font:12px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}@media(max-width:991px){.bx-header-worktime{font:15px/18px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}}.sidebar-block-title{color:#343434;text-transform:uppercase;font-size:14px;font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}.bx-footer-bg{background-color:#1f496a}.bx-footer-logo{border-bottom:none !important;text-decoration:none !important}.bx-footer-logo img{max-width:100%;height:auto}.bx-inclinkspersonal-item.bx-theme-blue:hover{background:#0083d1}.bx-theme-blue.bx-inclinkspersonal-selected{background:#3398d7}.bx-inclinkspersonal-item.bx-theme-black:hover{background:#303030}.bx-theme-black.bx-inclinkspersonal-selected{background:#484848}.bx-inclinkspersonal-item.bx-theme-green:hover{background:#44b1c9}.bx-theme-green.bx-inclinkspersonal-selected{background:#5cc3d1}.bx-inclinkspersonal-item.bx-theme-red:hover{background:#e63c3c}.bx-theme-red.bx-inclinkspersonal-selected{background:#e95c5c}.bx-inclinkspersonal-item.bx-theme-yellow:hover{background:#f4a52e}.bx-theme-yellow.bx-inclinkspersonal-selected{background:#fbb859}.btn-primary,.list-group-item.active{border-color:var(--theme-b-bd-primary);background-color:var(--theme-b-bg-primary);color:var(--theme-b-tx-primary)}.btn-primary:hover{border-color:var(--theme-b-bd-primary-hover);background-color:var(--theme-b-bg-primary-hover);color:var(--theme-b-tx-primary-hover)}.btn-primary:focus,.btn-primary.focus{box-shadow:0 0 0 .2rem var(--theme-b-sd-primary)}.btn-primary.disabled,.btn-primary:disabled{border-color:var(--theme-b-bg-primary);background-color:var(--theme-b-bg-primary);color:var(--theme-b-tx-primary)}.btn-primary:not(:disabled):not(.disabled):active,.btn-primary:not(:disabled):not(.disabled).active,.show>.btn-primary.dropdown-toggle{border-color:var(--theme-b-bd-primary-active);background-color:var(--theme-b-bg-primary-active);color:var(--theme-b-tx-primary-active)}.btn-primary:not(:disabled):not(.disabled):active:focus,.btn-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem var(--theme-b-sd-primary)}.form-control:focus{border-color:var(--theme-color-primary);box-shadow:0 0 0 .2rem var(--theme-b-sd-primary)}a,.btn-link{color:var(--theme-b-link)}a:hover,.btn-link:hover{color:var(--theme-b-link-hover)}.g-font-size-15{font-size:15px}.g-font-size-17{font-size:17px}.g-font-size-20{font-size:20px}.text-primary{color:var(--primary) !important}.bg-primary{background:var(--primary) !important}.border-primary{border-color:var(--primary) !important}.sidebar h2,.sidebar h3,.sidebar h4,.sidebar h5{text-transform:uppercase;font-size:14px;font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}.sidebar li{font-size:12px;font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}.sidebar-icon{width:27px;height:27px;margin-right:5px;border-radius:50%;background-color:var(--theme-color-primary);background-repeat:no-repeat;background-position:center;}

.sidebar-icon-label {
	background-image:  url(/bitrix/templates/eshop_bootstrap_v4/images/label.svg); background-size:19px auto;}

.sidebar-icon-delivery {
	background-image: url(/bitrix/templates/eshop_bootstrap_v4/images/delivery.svg); background-size:17px auto;}

.sidebar-icon-sale {
	background-image: url(/bitrix/templates/eshop_bootstrap_v4/images/sale.svg); background-size:auto 17px;}

.sidebar-icon-self {
	background-image: url(/bitrix/templates/eshop_bootstrap_v4/images/self.svg); background-size:auto 17px;}

.sidebar-icon-phone {
	background-image: url(/bitrix/templates/eshop_bootstrap_v4/images/phone_white.svg); background-size:auto 21px}
/* End */
/* /bitrix/templates/eshop_bootstrap_v4/components/bitrix/sale.basket.basket/farm/style.css?178698816213638 */
/* /bitrix/templates/eshop_bootstrap_v4/common.css?179190534515688 */
/* /bitrix/templates/eshop_bootstrap_v4/header-custom.css?179182547111576 */
/* /bitrix/templates/eshop_bootstrap_v4/fo-cart-drawer.css?17905276425122 */
/* /bitrix/templates/eshop_bootstrap_v4/auth-modal/auth-modal.css?178397718630272 */
/* /bitrix/templates/eshop_bootstrap_v4/components/bitrix/menu/farm_top/style.css?17831090172643 */
/* /bitrix/components/bitrix/sale.basket.basket.line/templates/bootstrap_v4/style.min.css?17813763534065 */
/* /bitrix/templates/eshop_bootstrap_v4/template_styles.min.css?17820608188037 */
