/* ==========================================================================
   Исправления вёрстки — октябрь 2026
   Подключается после style.css (см. functions.php). Чтобы отключить —
   уберите строку wp_enqueue_style('fixes-2026', ...).
   ========================================================================== */

/* --- Номер телефона: Яндекс Метрика (tag_phone.js) делает последние цифры
       полупрозрачными. Номер единственный — показываем его целиком. --- */
.header_phone a small,
.footer_contact-phone a small,
.mobile-menu-contacts a small {
	opacity: 1 !important;
}

/* --- Карточки галереи («Старинные вещи», «Статуэтки»):
       раньше была фиксированная высота, и текст уезжал под кнопку. --- */
.mosaic_text {
	display: flex;
	flex-direction: column;
	height: auto;
	padding-bottom: 40px;
}
.mosaic_text-1 { min-height: 410px; }
.mosaic_text-2 { min-height: 400px; }
.mosaic_text-body {
	max-height: none;
	overflow: visible;
}
.mosaic_text-button {
	position: static;
	margin-top: auto;
	padding-top: 25px;
}
.mosaic_text-head h3 {
	overflow-wrap: break-word;
	hyphens: auto;
}

/* Заголовки на фото в галерее не прилипают к краю и не вылезают */
.mosaic_image-head {
	left: 8% !important;
	right: 8% !important;
	overflow-wrap: break-word;
}
.mosaic_image-1 .mosaic_image-head,
.mosaic_image-2 .mosaic_image-head {
	text-align: right;
}

/* Картинки товаров никогда не шире карточки */
.products-list_item-image img {
	max-width: 100%;
	height: auto;
}

/* ---------- Планшеты и узкие окна ---------- */
@media (max-width: 991.98px) {
	.mosaic_text {
		padding-left: 20px;
		padding-right: 20px;
	}
	.mosaic_text-1,
	.mosaic_text-2 {
		min-height: 0;
	}
	.head-3, .head-4 {
		font-size: 22px;
		line-height: 1.25;
	}
	.head-1 {
		font-size: 38px;
		line-height: 1.2;
	}
	.home-products-list { margin-top: 80px; }
	.home-blog-block { margin-top: 90px; }
	.action_container { padding: 70px 0 60px; }
}

/* Меню в шапке: пункты не ломаются по словам; на планшетах — компактнее */
.main-menu ul>li>a,
.main-menu ul>li>span {
	white-space: nowrap;
	font-weight: 300;
}
.main-menu ul {
	gap: 12px;
}
@media (min-width: 768px) and (max-width: 1199.98px) {
	.main-menu ul>li>a,
	.main-menu ul>li>span {
		font-size: 15px;
	}
}
/* Ширина 768–991: в строку меню не помещается — показываем кнопку «Меню», как на телефоне */
@media (min-width: 768px) and (max-width: 991.98px) {
	.main-menu { display: none; }
	.main-menu.show {
		display: block;
		padding: 15px 0;
	}
	.main-menu ul {
		display: block;
		border: none !important;
		padding: 10px 0 0 !important;
	}
	.main-menu ul>li {
		display: block;
		text-align: left;
		border: none !important;
		padding: 6px 0 !important;
	}
	.main-menu ul>li>a { font-size: 18px; }
	.header_main-menu-mobile-button { display: inline-block; }
	.header_main-menu { text-align: center; padding-top: 20px; }
}

/* Контакты в верхней полосе на телефоне — по центру, номер и почта целиком */
@media (max-width: 575.98px) {
	.col2-ht2 {
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
	}
	.header-contacts-compact,
	.header-contacts-compact__col {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		gap: 2px 18px;
		text-align: center;
		width: 100%;
	}
	.header-contacts-compact .header_phone,
	.header-contacts-compact .header_email {
		float: none;
		margin: 0;
	}
	.header_email a,
	.header_phone a {
		white-space: nowrap;
		font-size: 15px;
	}
}

/* ---------- Телефоны ---------- */
@media (max-width: 767.98px) {
	/* Слайдер был полностью скрыт на телефонах — возвращаем, но компактный */
	#homeSlider {
		display: block !important;
	}
	.header_text {
		padding: 40px 0 50px;
	}
	.header_text-body {
		margin-top: 15px;
	}
	.header_text-button {
		margin-top: 25px;
	}
	.head-1 {
		font-size: 30px;
		line-height: 1.2;
	}

	/* Логотип в шапке на телефоне (раньше был скрыт) */
	.header_logo--mobile {
		display: block !important;
	}
	.header_logo--mobile img {
		max-height: 44px;
		width: auto;
	}

	/* Фото в галерее ниже — меньше листать */
	.mosaic_image-1,
	.mosaic_image-2,
	.mosaic_image-3,
	.mosaic_image-4 {
		height: 240px;
	}
	.mosaic_image-head {
		top: auto !important;
		bottom: 24px;
	}
	.mosaic_image-1 .mosaic_image-head,
	.mosaic_image-2 .mosaic_image-head {
		text-align: left;
	}
	.mosaic_text {
		padding-top: 30px;
		padding-bottom: 30px;
	}
	.mosaic_text-head {
		padding-bottom: 35px;
	}
	.mosaic_text-head:after {
		bottom: 15px;
	}

	/* Меньше пустых отступов между блоками */
	.home-text-block { margin-top: 30px; }
	.home-mosaic { margin-top: 30px; }
	.home-products-list { margin-top: 50px; }
	.home-blog-block { margin-top: 60px; }
	.products-list_head-container { margin-bottom: 25px; }
	.products-list_item { padding: 35px 15px 30px; }
	.action_container { padding: 40px 0; }
	.action_inner { padding: 25px 15px; }
	.footer { padding-top: 40px; }

	.head-2, .head-5, .head-9 {
		font-size: 30px;
		line-height: 1.2;
	}
	.head-7 { font-size: 28px; line-height: 1.2; }
	.head-8 { font-size: 20px; line-height: 1.3; }
	.head-10 { font-size: 24px; line-height: 1.25; }
}

/* ==========================================================================
   Типографика: читаемый текст, единые размеры и межстрочные интервалы
   ========================================================================== */
html {
	-webkit-text-size-adjust: 100%;
	text-rendering: optimizeLegibility;
}
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 1.5;
}

/* Основной текст: обычное начертание вместо самого тонкого, темнее и с воздухом */
.text-2,
.text-7 {
	color: #4f4f4f;
	font-size: 16px;
	line-height: 1.6;
	font-weight: 400;
}
.text-5 {
	font-weight: 400;
	line-height: 1.6;
}
.text-1 {
	font-weight: 300;
	line-height: 1.5;
}
.text-8,
.text-9,
.text-10 {
	line-height: 1.55;
}
.text-10 { color: #5a5a5a; }
.text p,
.text li {
	line-height: 1.65;
}

/* Заголовки: аккуратные интервалы, чуть разреженные прописные */
.head-1, .head-2, .head-3, .head-4, .head-5, .head-6, .head-7, .head-8,
.head-9, .head-10, .head-11, .head-12, .head-14, .head-15, .head-17,
.head-18, .head-20, .head-21 {
	line-height: 1.2;
}
.head-3, .head-4, .head-5, .head-6, .head-8, .head-11, .head-13,
.head-14, .head-16, .head-18, .head-19, .head-20 {
	letter-spacing: 0.02em;
}
/* Самые крупные заголовки немного спокойнее */
.head-2, .head-5, .head-9 { font-size: 40px; }
.head-7 { font-size: 44px; }

/* Названия товаров в карточках: до двух строк, без обрезки на середине слова */
.products-list_item-head {
	height: auto;
	min-height: 2.4em;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	line-height: 1.2;
}

/* ==========================================================================
   Ссылки: без подчёркиваний, плавная смена цвета
   ========================================================================== */
a,
a:hover,
a:focus,
.footer .footer_dev a,
.products-list_item-head:hover,
.blog-block_text-head:hover,
.blog-block_categories a:hover,
.mosaic_image:hover .mosaic_image-head,
.mosaic_text-head a:hover,
.mob-home-link a:hover,
.main-menu a:hover,
.footer a:hover {
	text-decoration: none !important;
}
a {
	transition: color .2s ease, opacity .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
/* Ссылки внутри текстов (блог, описания товаров) выделяем цветом */
.text a {
	color: #a8741a;
	font-weight: 500;
}
.text a:hover { color: #7a5310; }

.main-menu a:hover,
.footer_menu a:hover,
.mob-home-link a:hover,
.footer_contact-email a:hover,
.footer_contact-phone a:hover {
	opacity: .75;
}
.products-list_item-head:hover,
.blog-block_text-head:hover,
.mosaic_text-head a:hover h3 {
	color: #a8741a;
}
.mosaic_image .mosaic_image-head {
	transition: transform .3s ease;
}
.mosaic_image:hover .mosaic_image-head {
	transform: translateY(-4px);
}

/* ==========================================================================
   Кнопки: единый современный вид, мягкий отклик при наведении и нажатии
   ========================================================================== */
.btn-1, .btn-2, .btn-3, .btn-4, .btn-5, .btn-6, .btn-7, .btn-8,
.products-list_item-button,
.woocommerce .button,
.wpcf7-submit {
	border-radius: 8px;
	letter-spacing: 0.04em;
	text-decoration: none !important;
	cursor: pointer;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .15s ease;
}

/* Заполненные жёлтые кнопки */
.btn-1:hover, .btn-2:hover, .btn-3:hover, .btn-5:hover, .btn-8:hover,
.products-list_item-button:hover,
.wpcf7-submit:hover {
	background-color: #f2b84b;
	box-shadow: 0 6px 16px rgba(176, 124, 30, .28);
	transform: translateY(-1px);
}

/* Кнопки-контуры: при наведении заливаются */
.btn-4:hover, .btn-6:hover, .btn-7:hover {
	background-color: #fbcf7b;
	border-color: #fbcf7b;
	box-shadow: 0 6px 16px rgba(176, 124, 30, .22);
	transform: translateY(-1px);
}

.btn-1:active, .btn-2:active, .btn-3:active, .btn-4:active, .btn-5:active,
.btn-6:active, .btn-7:active, .btn-8:active,
.products-list_item-button:active,
.wpcf7-submit:active {
	transform: translateY(0);
	box-shadow: none;
}

/* Видимая рамка при переходе по клавиатуре (Tab) — нужна для доступности */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.btn-1:focus-visible, .btn-2:focus-visible, .btn-3:focus-visible,
.btn-4:focus-visible, .btn-5:focus-visible, .btn-6:focus-visible {
	outline: 3px solid #e0a43a;
	outline-offset: 2px;
}

/* Большая кнопка в слайдере была с отступами 150px по бокам — не помещалась */
.btn-1 {
	padding: 0 56px;
	font-size: 20px;
	line-height: 64px;
}
.btn-5 { padding: 0 48px; }
.btn-4 { line-height: 64px; }

/* Поля форм: аккуратнее и заметнее при вводе */
.wpcf7 input[type="text"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="email"],
.wpcf7 textarea {
	border-radius: 8px;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.wpcf7 input:focus,
.wpcf7 textarea:focus {
	border-color: #fbcf7b;
	box-shadow: 0 0 0 3px rgba(251, 207, 123, .35);
	outline: none;
}

@media (max-width: 767.98px) {
	.btn-1 { padding: 0 32px; font-size: 17px; line-height: 54px; }
	.btn-4 { padding: 0 28px; font-size: 17px; line-height: 56px; }
	.btn-5 { padding: 0 24px; }
	.head-2, .head-5, .head-9 { font-size: 30px; }
	.head-7 { font-size: 28px; }
}

/* Для тех, у кого в системе выключены анимации */
@media (prefers-reduced-motion: reduce) {
	*, *:hover { transition: none !important; }
	.btn-1:hover, .btn-2:hover, .btn-3:hover, .btn-4:hover, .btn-5:hover,
	.btn-6:hover, .btn-7:hover, .btn-8:hover, .mosaic_image:hover .mosaic_image-head { transform: none !important; }
}

/* ==========================================================================
   Карточка товара
   ========================================================================== */
.single-product-container {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 10px 40px rgba(60, 40, 10, .06);
}
.single-product-container_info {
	padding: 8px 8px 8px 16px;
}
.single-product-container_head {
	font-size: 30px;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
	margin-bottom: 12px;
}
.sp-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 16px;
	font-size: 14px;
	color: #6b6b6b;
	margin-bottom: 20px;
}
.sp-stock {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-weight: 500;
}
.sp-stock:before {
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: currentColor;
}
.sp-stock--in { color: #2e7d32; }
.sp-stock--out { color: #b23b3b; }

.single-product-container_price.sp-price {
	text-align: left !important;
	font-size: 34px;
	font-weight: 700;
	color: #01101a;
	line-height: 1.1;
	padding: 18px 0;
	margin-bottom: 20px;
	border-top: 1px solid #f0e8d8;
	border-bottom: 1px solid #f0e8d8;
}
.sp-price del {
	font-size: 20px;
	color: #9a9a9a;
	font-weight: 400;
	margin-right: 10px;
}
.sp-price ins { text-decoration: none; }

.sp-specs {
	margin: 0 0 24px;
	font-size: 15px;
}
.sp-specs_row {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 9px 0;
	border-bottom: 1px dashed #e6dcc7;
}
.sp-specs dt {
	font-weight: 400;
	color: #6b6b6b;
}
.sp-specs dd {
	margin: 0;
	font-weight: 500;
	color: #01101a;
	text-align: right;
}

.single-product-container_buttons {
	display: grid;
	gap: 12px;
}
.single-product-container_buttons .btn-7,
.single-product-container_buttons .btn-8 {
	line-height: 56px;
	font-size: 15px;
	font-weight: 700;
	margin: 0;
}
/* «В корзину» — главная кнопка, заливка; «Быстрая покупка» — вторичная */
.single-product-container_buttons .btn-7 {
	background: #fbcf7b;
	border-color: #fbcf7b;
	color: #01101a;
}
.single-product-container_buttons .btn-8 {
	background: #fff;
	border: 2px solid #fbcf7b;
	color: #01101a;
}
.single-product-container_buttons .btn-7:hover { background: #f2b84b; border-color: #f2b84b; }
.single-product-container_buttons .btn-8:hover { background: #fff6e3; box-shadow: none; }
.single-product-container_wishlist {
	text-align: center;
	font-size: 14px;
	margin-top: 4px;
}
.single-product-container_wishlist a { color: #6b6b6b; }
.single-product-container_wishlist a:hover { color: #a8741a; }

.sp-trust {
	list-style: none;
	margin: 24px 0 0;
	padding: 16px 18px;
	background: #fef8ea;
	border-radius: 12px;
	font-size: 14px;
	line-height: 1.5;
	color: #4f4f4f;
}
.sp-trust li {
	position: relative;
	padding-left: 24px;
	margin: 4px 0;
}
.sp-trust li:before {
	content: '';
	position: absolute;
	left: 2px;
	top: .45em;
	width: 12px;
	height: 7px;
	border-left: 2px solid #c8901f;
	border-bottom: 2px solid #c8901f;
	transform: rotate(-45deg);
}
.sp-trust a { color: #01101a; font-weight: 500; white-space: nowrap; }

/* Галерея: скруглённые фото, активная миниатюра выделена */
.single-product-container_carousel-item img {
	border-radius: 12px;
}
.single-product-container_carousel-indicator {
	border-radius: 8px;
	overflow: hidden;
	border: 2px solid transparent;
	opacity: .7;
	transition: opacity .2s ease, border-color .2s ease;
	cursor: pointer;
}
.single-product-container_carousel-indicator.active,
.single-product-container_carousel-indicator:hover {
	border-color: #fbcf7b;
	opacity: 1;
}

/* Описание — отдельной читаемой карточкой, строки не длиннее ~75 знаков */
.single-product-desc {
	background: #fff;
	border-radius: 16px;
	padding: 32px 36px;
	margin-top: 28px;
	box-shadow: 0 10px 40px rgba(60, 40, 10, .05);
}
.sp-desc-head {
	font-size: 22px;
	font-weight: 700;
	color: #01101a;
	margin-bottom: 16px;
}
.single-product-desc .text {
	max-width: 760px;
	font-size: 16px;
	color: #2b2b2b;
}
.single-product-desc .text p { margin-bottom: 14px; }

/* Стрелки «предыдущий / следующий товар» — аккуратные кружки */
.products-nav a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: #fff;
	color: #01101a;
	box-shadow: 0 4px 14px rgba(0, 0, 0, .08);
}
.products-nav a:hover { background: #fbcf7b; }

@media (max-width: 767.98px) {
	.single-product-container { border-radius: 12px; padding: 12px; }
	.single-product-container_info { padding: 20px 4px 4px; }
	.single-product-container_head { font-size: 24px; }
	.single-product-container_price.sp-price { font-size: 28px; }
	.single-product-desc { padding: 22px 18px; border-radius: 12px; }
}

/* ==========================================================================
   Страница «Оптовым клиентам» (шаблон page-opt.php)
   ========================================================================== */
.opt-page { padding-bottom: 60px; }
.opt-hero,
.opt-section {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 10px 40px rgba(60, 40, 10, .05);
	padding: 40px 44px;
	margin-top: 28px;
}
.opt-hero_head {
	font-size: 40px;
	line-height: 1.15;
	font-weight: 700;
	color: #01101a;
	margin-bottom: 18px;
}
.opt-hero_lead {
	max-width: 720px;
	font-size: 18px;
	line-height: 1.6;
	color: #3a3a3a;
	margin-bottom: 10px;
}
.opt-hero_button { margin-top: 18px; }
.opt-section_head {
	font-size: 26px;
	font-weight: 700;
	color: #01101a;
	margin-bottom: 22px;
}
.opt-cards {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}
.opt-card {
	background: #fef8ea;
	border-radius: 12px;
	padding: 22px 20px;
}
.opt-card h3 {
	font-size: 17px;
	font-weight: 700;
	color: #01101a;
	margin-bottom: 8px;
}
.opt-card p {
	font-size: 15px;
	line-height: 1.55;
	color: #4f4f4f;
}
.opt-terms {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}
.opt-term {
	border: 1px solid #f0e8d8;
	border-radius: 12px;
	padding: 20px;
}
.opt-term_label {
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: #a8741a;
	font-weight: 700;
	margin-bottom: 8px;
}
.opt-term_value,
.opt-term_list {
	font-size: 17px;
	line-height: 1.45;
	font-weight: 500;
	color: #01101a;
}
.opt-term_list { list-style: none; padding: 0; margin: 0; }
.opt-term_list li { padding: 2px 0; }
.opt-steps {
	counter-reset: optstep;
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}
.opt-steps li {
	counter-increment: optstep;
	position: relative;
	padding-top: 52px;
	font-size: 15px;
	line-height: 1.55;
	color: #4f4f4f;
}
.opt-steps li:before {
	content: counter(optstep);
	position: absolute;
	left: 0;
	top: 0;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #fbcf7b;
	color: #01101a;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}
.opt-steps b { color: #01101a; display: block; margin-bottom: 4px; }

.opt-form-wrap {
	display: grid;
	grid-template-columns: 1fr 1.6fr;
	gap: 36px;
	scroll-margin-top: 110px;
}
.opt-form-intro p { font-size: 15px; line-height: 1.6; color: #4f4f4f; margin-bottom: 10px; }
.opt-form-intro a { color: #01101a; font-weight: 500; }
.opt-form_grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 16px;
}
.opt-form label {
	display: flex;
	flex-direction: column;
	gap: 6px;
	font-size: 14px;
	font-weight: 500;
	color: #3a3a3a;
}
.opt-form_full { grid-column: 1 / -1; }
.opt-form input,
.opt-form select,
.opt-form textarea {
	width: 100%;
	font: inherit;
	font-weight: 400;
	font-size: 16px;
	color: #01101a;
	background: #fff;
	border: 1px solid #ddd3bf;
	border-radius: 8px;
	padding: 12px 14px;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.opt-form input:focus,
.opt-form select:focus,
.opt-form textarea:focus {
	border-color: #fbcf7b;
	box-shadow: 0 0 0 3px rgba(251, 207, 123, .35);
	outline: none;
}
.opt-form_submit { margin-top: 18px; border: none; }
.opt-form_note { font-size: 13px; color: #7a7a7a; margin-top: 12px; }
.opt-form_note a { color: #7a7a7a; text-decoration: underline !important; }
.opt-form_error {
	background: #fdecec;
	color: #8a2525;
	border-radius: 8px;
	padding: 12px 14px;
	margin-bottom: 14px;
	font-size: 15px;
}
.opt-form--done {
	background: #f1f8ef;
	border-radius: 12px;
	padding: 28px;
}
.opt-form--done h3 { font-size: 20px; font-weight: 700; color: #2e7d32; margin-bottom: 8px; }
.opt-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 991.98px) {
	.opt-cards, .opt-steps { grid-template-columns: repeat(2, 1fr); }
	.opt-terms { grid-template-columns: 1fr; }
	.opt-form-wrap { grid-template-columns: 1fr; gap: 20px; }
}
@media (max-width: 575.98px) {
	.opt-hero, .opt-section { padding: 24px 18px; border-radius: 12px; margin-top: 16px; }
	.opt-hero_head { font-size: 28px; }
	.opt-hero_lead { font-size: 16px; }
	.opt-section_head { font-size: 22px; }
	.opt-cards, .opt-steps, .opt-form_grid { grid-template-columns: 1fr; }
	.opt-hero_button, .opt-form_submit { width: 100%; text-align: center; }
}

/* ==========================================================================
   Каталог: фильтры, мобильные «Категории» и «Фильтры»
   ========================================================================== */
.sp-filters {
	background: #fff;
	border-radius: 12px;
	padding: 18px;
	margin-bottom: 20px;
	box-shadow: 0 6px 24px rgba(60, 40, 10, .05);
}
.sp-filters_group + .sp-filters_group { margin-top: 16px; }
.sp-filters_title {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #a8741a;
	margin-bottom: 8px;
}
.sp-filters_price { display: flex; align-items: center; gap: 8px; }
.sp-filters_price input {
	width: 100%;
	min-width: 0;
	font: inherit;
	font-size: 15px;
	border: 1px solid #ddd3bf;
	border-radius: 8px;
	padding: 9px 10px;
}
.sp-filters_chips { display: flex; flex-wrap: wrap; gap: 6px; }
.sp-chip input { position: absolute; opacity: 0; pointer-events: none; }
.sp-chip span {
	display: inline-block;
	font-size: 14px;
	padding: 6px 12px;
	border-radius: 999px;
	border: 1px solid #e6dcc7;
	background: #fff;
	cursor: pointer;
	transition: background-color .2s ease, border-color .2s ease;
}
.sp-chip input:checked + span { background: #fbcf7b; border-color: #fbcf7b; font-weight: 500; }
.sp-chip input:focus-visible + span { outline: 3px solid #e0a43a; outline-offset: 2px; }
.sp-filters_actions { display: flex; align-items: center; gap: 14px; margin-top: 16px; }
.sp-filters_apply { line-height: 44px; padding: 0 22px; font-size: 15px; border: none; }
.sp-filters_reset { font-size: 14px; color: #6b6b6b; }

.sp-mobile-tools { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 16px; }
.sp-drawer summary {
	list-style: none;
	display: block;
	text-align: center;
	line-height: 46px;
	padding: 0 10px;
	background: #fff;
	cursor: pointer;
}
.sp-drawer summary::-webkit-details-marker { display: none; }
.sp-drawer[open] { grid-column: 1 / -1; }
.sp-drawer[open] summary { background: #fbcf7b; border-color: #fbcf7b; }
.sp-drawer_body { margin-top: 10px; }
.sp-drawer_body .sp-filters { margin-bottom: 0; }
.sp-mcat {
	list-style: none;
	margin: 0;
	padding: 6px 0;
	background: #fff;
	border-radius: 12px;
}
.sp-mcat a {
	display: block;
	padding: 11px 16px;
	color: #01101a;
	font-size: 16px;
	border-bottom: 1px solid #f3ecdd;
}
.sp-mcat li:last-child a { border-bottom: none; }

/* ==========================================================================
   Корзина: способ получения — понятные радиокнопки вместо пустого списка
   ========================================================================== */
.sp-ship-list { list-style: none; margin: 8px 0 18px; padding: 0; display: grid; gap: 8px; }
.sp-ship-list label {
	display: flex;
	align-items: center;
	gap: 10px;
	border: 1px solid #e6dcc7;
	border-radius: 10px;
	padding: 12px 14px;
	cursor: pointer;
	font-size: 15px;
	transition: border-color .2s ease, background-color .2s ease;
}
.sp-ship-list input { accent-color: #c8901f; width: 18px; height: 18px; flex: none; }
.sp-ship-list label:has(input:checked) { border-color: #fbcf7b; background: #fff8ea; }
.shipping-selector_hidden, .shipping-selector_error { display: none !important; }
.cart-page_trust { margin-top: 18px; }
.checkout-page .sp-trust { margin-top: 16px; }

/* Вопросы и ответы на странице опта */
.opt-faq { display: grid; gap: 10px; }
.opt-faq_item { border: 1px solid #f0e8d8; border-radius: 12px; padding: 0 18px; }
.opt-faq_item summary { cursor: pointer; font-weight: 700; color: #01101a; padding: 16px 0; list-style: none; position: relative; padding-right: 28px; }
.opt-faq_item summary::-webkit-details-marker { display: none; }
.opt-faq_item summary:after { content: '+'; position: absolute; right: 0; top: 12px; font-size: 22px; color: #a8741a; }
.opt-faq_item[open] summary:after { content: '−'; }
.opt-faq_item p { padding-bottom: 16px; font-size: 15px; line-height: 1.6; color: #4f4f4f; }

/* ==========================================================================
   Шапка при прокрутке: мягкое появление, полупрозрачный фон, без рывка
   ========================================================================== */
.header_head.fix-nav,
.fix-nav-wrap.fix-nav {
	background: rgba(12, 12, 14, .86) !important;
	-webkit-backdrop-filter: blur(10px) saturate(1.2);
	backdrop-filter: blur(10px) saturate(1.2);
	box-shadow: 0 8px 28px rgba(0, 0, 0, .28);
	padding-top: 8px !important;
	padding-bottom: 8px !important;
	animation: spNavIn .28s ease-out;
}
.fix-nav .header_logo img { max-height: 54px; width: auto; transition: max-height .25s ease; }
body.admin-bar .header_head.fix-nav,
body.admin-bar .fix-nav-wrap.fix-nav { top: 32px; }
@media (max-width: 782px) {
	body.admin-bar .header_head.fix-nav,
	body.admin-bar .fix-nav-wrap.fix-nav { top: 46px; }
}
@keyframes spNavIn {
	from { transform: translateY(-100%); opacity: 0; }
	to   { transform: none; opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
	.header_head.fix-nav, .fix-nav-wrap.fix-nav { animation: none; }
}

/* Уведомление «добавлено в корзину» — аккуратная плашка */
.woocommerce-message {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px 16px;
	background: #fff;
	border-radius: 12px;
	padding: 14px 18px;
	box-shadow: 0 6px 24px rgba(60, 40, 10, .06);
	font-size: 15px;
}
.woocommerce-message .button {
	order: 2;
	margin-left: auto;
	background: #fbcf7b;
	color: #01101a;
	border-radius: 8px;
	padding: 8px 16px;
	font-weight: 700;
}

/* ==========================================================================
   Страница «Доставка и оплата»
   ========================================================================== */
.dl-ways { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.dl-way {
	background: #fef8ea;
	border-radius: 14px;
	padding: 24px 22px;
}
.dl-way_icon {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #fbcf7b;
	color: #01101a;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 14px;
}
.dl-way h3 { font-size: 18px; font-weight: 700; color: #01101a; margin-bottom: 8px; }
.dl-way p { font-size: 15px; line-height: 1.6; color: #4f4f4f; }
.dl-ways--pay .dl-way { background: #fff; border: 1px solid #f0e8d8; }
.dl-note {
	margin-top: 10px;
	padding: 10px 12px;
	background: #fff;
	border-left: 3px solid #fbcf7b;
	border-radius: 8px;
	font-size: 14px !important;
	color: #3a3a3a !important;
}
.dl-contact {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
}
.dl-contact p { font-size: 16px; color: #4f4f4f; }
.dl-contact .opt-section_head { margin-bottom: 6px; }
.dl-contact_actions { display: flex; flex-wrap: wrap; gap: 10px; }
.dl-contact_actions a { line-height: 52px; padding: 0 26px; font-size: 16px; }
@media (max-width: 991.98px) {
	.dl-ways { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
	.dl-contact_actions, .dl-contact_actions a { width: 100%; text-align: center; }
}

/* Номер телефона целиком в любом месте сайта (Метрика прячет последние цифры) */
a[href^="tel:"] small { opacity: 1 !important; }

/* ==========================================================================
   Карточка товара в списках (каталог, главная, рекомендации)
   ========================================================================== */
.sp-col { padding: 8px; display: flex; }
.products-list_items .row { margin-left: -8px; margin-right: -8px; }
.sp-card {
	display: flex;
	flex-direction: column;
	width: 100%;
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(60, 40, 10, .05);
	transition: box-shadow .25s ease, transform .25s ease;
}
.sp-card:hover {
	box-shadow: 0 14px 34px rgba(60, 40, 10, .12);
	transform: translateY(-2px);
}
.sp-card_img {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	background: #fff;
	padding: 14px;
}
.sp-card_img img {
	width: 100%;
	height: 100%;
	max-height: none;
	object-fit: contain;
	transition: transform .35s ease;
}
.sp-card:hover .sp-card_img img { transform: scale(1.04); }
.sp-card_badge {
	position: absolute;
	left: 12px;
	top: 12px;
	background: #f3ece0;
	color: #6b6b6b;
	font-size: 12px;
	font-weight: 500;
	padding: 4px 10px;
	border-radius: 999px;
}
.sp-card_body {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 4px 16px 16px;
	border-top: 1px solid #f6efe1;
}
.sp-card_title {
	margin: 12px 0 4px;
	font-size: 15px;
	line-height: 1.35;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	text-align: left;
}
.sp-card_title a { color: #01101a; }
.sp-card_title a:hover { color: #a8741a; }
.sp-card_sku {
	font-size: 12px;
	color: #9a9a9a;
	margin-bottom: 12px;
}
.sp-card_bottom {
	margin-top: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}
.sp-card_price {
	font-size: 20px;
	font-weight: 700;
	color: #01101a;
	line-height: 1.1;
	white-space: nowrap;
}
.sp-card_price del { display: block; font-size: 13px; font-weight: 400; color: #9a9a9a; }
.sp-card_price ins { text-decoration: none; }
a.sp-card_buy,
.sp-card_buy.button {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 40px;
	padding: 0 14px;
	border-radius: 999px;
	background: #fbcf7b;
	color: #01101a !important;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .02em;
	text-transform: none;
	line-height: 1;
	border: none;
	transition: background-color .2s ease, box-shadow .2s ease;
}
a.sp-card_buy:before {
	content: '';
	width: 16px;
	height: 16px;
	background: currentColor;
	-webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 6h15l-1.5 9h-12z"/><path d="M6 6L5 3H2"/><circle cx="9" cy="20" r="1.5"/><circle cx="18" cy="20" r="1.5"/></svg>') center / contain no-repeat;
	mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 6h15l-1.5 9h-12z"/><path d="M6 6L5 3H2"/><circle cx="9" cy="20" r="1.5"/><circle cx="18" cy="20" r="1.5"/></svg>') center / contain no-repeat;
}
a.sp-card_buy:hover { background: #f2b84b; box-shadow: 0 6px 16px rgba(176, 124, 30, .25); }
a.sp-card_buy.loading { opacity: .6; }
a.sp-card_buy.added:before {
	-webkit-mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l5 5L20 7"/></svg>') center / contain no-repeat;
	mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12l5 5L20 7"/></svg>') center / contain no-repeat;
}
.sp-card .added_to_cart { display: none; }

@media (max-width: 575.98px) {
	.sp-col { padding: 5px; }
	.products-list_items .row { margin-left: -5px; margin-right: -5px; }
	.sp-card { border-radius: 12px; }
	.sp-card_img { padding: 8px; }
	.sp-card_body { padding: 2px 10px 12px; }
	.sp-card_title { font-size: 14px; margin-top: 10px; }
	.sp-card_bottom { flex-direction: column; align-items: stretch; gap: 8px; }
	.sp-card_price { font-size: 17px; }
	a.sp-card_buy { width: 100%; height: 38px; }
}

/* Карточка: отступы между карточками и компактная круглая кнопка «в корзину» */
.no-gutters > .sp-col,
.row > .sp-col { padding: 8px; }
a.sp-card_buy,
.sp-card_buy.button {
	width: 44px;
	height: 44px;
	padding: 0;
	border-radius: 50%;
	font-size: 0;
	gap: 0;
}
a.sp-card_buy:before { width: 20px; height: 20px; }
.sp-card_bottom { flex-direction: row !important; align-items: center !important; }
@media (max-width: 575.98px) {
	.no-gutters > .sp-col,
	.row > .sp-col { padding: 5px; }
	a.sp-card_buy { width: 40px !important; height: 40px !important; }
	.sp-card_price { font-size: 16px; }
}

/* ==========================================================================
   Шапка: верхняя полоса в одну строку, читаемое меню на деревянном фоне
   ========================================================================== */
.header_top { height: auto !important; }
.header_top .row-ht {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 6px 24px;
	min-height: 46px;
}
.header_top-item { padding: 0 !important; height: auto; }
.header_delivery {
	background-size: auto 20px !important;
	background-position: left center !important;
	padding-left: 40px !important;
	min-height: 20px !important;
	line-height: 20px;
	font-size: 14px;
	font-weight: 500;
}
.header-contacts-compact,
.header-contacts-compact__col {
	display: flex;
	align-items: center;
	gap: 22px;
	flex-wrap: wrap;
}
.header-contacts-compact .header_phone,
.header-contacts-compact .header_email {
	float: none;
	margin: 0;
	padding: 0;
	min-height: 0;
	background: none;
}
.header-contacts-compact a {
	font-size: 14px;
	font-weight: 500;
	color: #01101a;
	white-space: nowrap;
}
.header-contacts-compact .header_phone a { font-weight: 700; font-size: 15px; }

/* Тёмная вуаль поверх фото в шапке — меню и логотип читаются на любом фоне */
.header_main {
	box-shadow: inset 0 0 0 2000px rgba(10, 8, 6, .48);
}
.main-menu ul>li>a,
.main-menu ul>li>span {
	font-weight: 400 !important;
	font-size: 17px;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .55);
	letter-spacing: .01em;
}
.main-menu ul>li.current-menu-item { border-top-width: 2px; }
.header-icons-area svg,
.header_main-menu-mobile-button { filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .5)); }
@media (min-width: 768px) and (max-width: 1199.98px) {
	.main-menu ul>li>a { font-size: 15px; }
}
@media (max-width: 575.98px) {
	.header_top .row-ht { justify-content: center; min-height: 0; padding: 8px 0; }
}
.header-contacts-compact__col { flex-direction: row !important; }
.header-contacts-compact__col:empty { display: none !important; }
.col2-ht2 { width: auto !important; max-width: none !important; flex: 0 0 auto !important; }

/* ==========================================================================
   Страница «Контакты»
   ========================================================================== */
.ct-card { display: block; color: inherit; transition: box-shadow .2s ease, transform .2s ease; }
.ct-card:hover { box-shadow: 0 10px 28px rgba(60, 40, 10, .1); transform: translateY(-2px); color: inherit; }
.ct-value { font-size: 17px !important; font-weight: 700; color: #01101a !important; margin-bottom: 4px; overflow-wrap: anywhere; }
.ct-note { margin-top: 18px; }
.ct-route { display: grid; grid-template-columns: 1fr 1.4fr; gap: 28px; align-items: start; }
.ct-steps { padding-left: 20px; margin: 0 0 20px; }
.ct-steps li { font-size: 15px; line-height: 1.6; color: #4f4f4f; margin-bottom: 8px; }
.ct-route_btn { line-height: 48px; padding: 0 22px; }
.ct-map { border-radius: 14px; overflow: hidden; min-height: 320px; }
.ct-map iframe { width: 100% !important; height: 380px !important; border: 0; display: block; }
@media (max-width: 991.98px) {
	.ct-route { grid-template-columns: 1fr; }
}

/* ==========================================================================
   Подвал
   ========================================================================== */
.sp-footer { background: #0b0f17; color: #c9c4b8; padding: 56px 0 0 !important; }
.sp-footer_grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
	gap: 36px;
}
.sp-footer_logo img { max-height: 64px; width: auto; margin-bottom: 16px; }
.sp-footer_brand p { font-size: 15px; line-height: 1.6; color: #b9b3a6; max-width: 340px; margin-bottom: 18px; }
.sp-footer_actions .btn-5 { line-height: 46px; padding: 0 22px; font-size: 16px; }
.sp-footer_head {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #fbcf7b;
	margin-bottom: 16px;
}
.sp-footer_menu, .sp-footer_contacts { list-style: none; margin: 0; padding: 0; }
.sp-footer_menu li, .sp-footer_contacts li { margin-bottom: 10px; font-size: 15px; line-height: 1.45; }
.sp-footer a { color: #ece7dc; }
.sp-footer a:hover { color: #fbcf7b; opacity: 1; }
.sp-footer_contacts li:first-child a { font-size: 17px; font-weight: 700; }
.sp-footer_muted { color: #8f8a7f; font-size: 14px !important; }
.sp-footer_bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 8px 24px;
	margin-top: 44px;
	padding: 20px 0 24px;
	border-top: 1px solid rgba(255, 255, 255, .08);
	font-size: 13px;
	color: #8f8a7f;
}
.sp-footer_bottom a { color: #8f8a7f; }
@media (max-width: 991.98px) {
	.sp-footer_grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 575.98px) {
	.sp-footer { padding-top: 36px !important; }
	.sp-footer_grid { grid-template-columns: 1fr; gap: 26px; }
	.sp-footer_actions .btn-5 { width: 100%; text-align: center; }
}
/* Ссылка на опт в верхней полосе */
.header_b2b {
	margin-left: 22px;
	font-size: 14px;
	font-weight: 700;
	color: #a8741a !important;
}
.header_b2b:hover { color: #7a5310 !important; }
.hti1 { display: flex; align-items: center; }

/* Шаги: заголовок отдельной строкой, ровные карточки */
.opt-steps b { display: block; }
.dl-ways { align-items: stretch; }
.dl-way { display: flex; flex-direction: column; height: 100%; }
.dl-way p a { color: #a8741a; font-weight: 600; white-space: nowrap; }
/* миниатюры галереи товара целиком, без обрезки */
.single-product-container_images img { object-fit: contain; background: #fff; }
.sp-card_img img { object-fit: contain; object-position: center; }

/* ==========================================================================
   Верхняя полоса: всё на одной линии
   ========================================================================== */
.header_top .col1-ht, .header_top .col2-ht2 { display: flex; align-items: center; margin: 0 !important; padding: 0 !important; }
.header_top .hti1 { gap: 28px; margin: 0 !important; }
.header_top .header_delivery, .header_top .header_delivery a { margin: 0 !important; line-height: 20px; font-size: 14px; }
.header_b2b { margin-left: 0; line-height: 20px; }

/* Кнопка телефона в подвале: тёмный текст на жёлтом */
.sp-footer .sp-footer_actions .btn-5 { color: #01101a !important; font-weight: 700; }
.sp-footer .sp-footer_actions .btn-5:hover { color: #01101a !important; background: #f2b84b; }

/* ==========================================================================
   Оформление заказа
   ========================================================================== */
.sp-progress {
	list-style: none; padding: 0; margin: 4px 0 22px;
	display: flex; flex-wrap: wrap; gap: 8px 0; counter-reset: spp;
	font-size: 14px; color: #8f8a7f;
}
.sp-progress li { counter-increment: spp; display: flex; align-items: center; }
.sp-progress li:before {
	content: counter(spp); width: 26px; height: 26px; border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center;
	margin-right: 8px; background: #efe7d6; color: #6b6458; font-weight: 700; font-size: 13px;
}
.sp-progress li + li:not(:empty) { margin-left: 0; }
.sp-progress li:not(:last-child):after { content: ''; width: 36px; height: 1px; background: #e2d7c1; margin: 0 12px; }
.sp-progress .is-done:before { content: '✓'; background: #fbcf7b; color: #01101a; }
.sp-progress .is-current { color: #01101a; font-weight: 700; }
.sp-progress .is-current:before { background: #01101a; color: #fbcf7b; }
.sp-progress a { color: inherit; }

.sp-checkout_title { font-size: 34px; line-height: 1.15; font-weight: 700; text-transform: none; letter-spacing: 0; color: #01101a; margin: 0 0 10px; }
.sp-checkout_lead { font-size: 17px; line-height: 1.55; color: #4f4f4f; max-width: 720px; margin-bottom: 26px; }

.sp-checkout_grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.sp-checkout_side { position: sticky; top: 100px; }
.sp-box { background: #fff; border-radius: 16px; padding: 28px; box-shadow: 0 2px 10px rgba(60, 40, 10, .05); margin-bottom: 20px; }
.sp-box_head { display: flex; align-items: center; gap: 12px; font-size: 21px; font-weight: 700; text-transform: none; letter-spacing: 0; color: #01101a; margin: 0 0 20px; }
.sp-box_num { width: 30px; height: 30px; border-radius: 50%; background: #fbcf7b; display: inline-flex; align-items: center; justify-content: center; font-size: 15px; flex: none; }
.sp-box_hint { font-size: 14px; color: #8f8a7f; margin: -10px 0 16px; }

/* поля */
.sp-checkout .form-row { margin: 0 0 18px; padding: 0; }
.sp-checkout .form-row label { display: block; font-size: 15px; font-weight: 600; color: #01101a; margin-bottom: 6px; }
.sp-checkout .form-row label .optional { font-weight: 400; color: #9a9a9a; }
.sp-checkout abbr.required { color: #c8901f; text-decoration: none; border: 0; }
.sp-checkout .form-row input.input-text, .sp-checkout .form-row textarea {
	width: 100%; height: 52px; padding: 0 16px; border: 1px solid #e3dac8; border-radius: 10px;
	font-size: 16px; background: #fff; transition: border-color .2s, box-shadow .2s;
}
.sp-checkout .form-row textarea { height: 96px; padding: 12px 16px; resize: vertical; }
.sp-checkout .form-row input.input-text:focus, .sp-checkout .form-row textarea:focus { border-color: #f2b84b; box-shadow: 0 0 0 3px rgba(251, 207, 123, .35); outline: none; }
.sp-checkout .form-row .description { display: block !important; font-size: 13px; color: #8f8a7f; margin-top: 6px; position: static; background: none; padding: 0; }
.sp-checkout .form-row .description:before { display: none; }
.sp-checkout .woocommerce-invalid input.input-text { border-color: #d9534f; }

/* оплата */
.sp-pay-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.sp-pay_label { display: flex; gap: 14px; align-items: flex-start; padding: 16px 18px; border: 1px solid #e3dac8; border-radius: 12px; cursor: pointer; margin: 0; transition: border-color .2s, background .2s; }
.sp-pay_label input { accent-color: #c8901f; width: 20px; height: 20px; margin: 2px 0 0; flex: none; }
.sp-pay_label:has(input:checked) { border-color: #fbcf7b; background: #fff8ea; }
.sp-pay_text b { display: block; font-size: 16px; color: #01101a; }
.sp-pay_text small { display: block; font-size: 14px; color: #6b6b6b; margin-top: 3px; line-height: 1.45; }
.sp-checkout .payment_box { margin-top: 8px; }

/* заказ справа */
.sp-items { list-style: none; margin: 0 0 18px; padding: 0; }
.sp-item { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-bottom: 1px solid #f3ecdf; }
.sp-item_img { width: 64px; height: 64px; object-fit: contain; background: #fff; border: 1px solid #f3ecdf; border-radius: 10px; padding: 4px; flex: none; }
.sp-item_info { flex: 1; min-width: 0; }
.sp-item_name { font-size: 15px; line-height: 1.35; color: #01101a; }
.sp-item_meta { font-size: 13px; color: #9a9a9a; margin-top: 2px; }
.sp-item_price { font-size: 15px; font-weight: 700; white-space: nowrap; color: #01101a; }
.sp-summary_label { font-size: 15px; font-weight: 700; margin-bottom: 8px; color: #01101a; }
.sp-summary .sp-ship-list { margin: 0 0 18px; }
.sp-summary_rows { border-top: 1px solid #f3ecdf; padding-top: 14px; }
.sp-summary_row { display: flex; justify-content: space-between; gap: 12px; font-size: 15px; color: #4f4f4f; margin-bottom: 8px; }
.sp-summary_row--muted span:last-child { color: #8f8a7f; }
.sp-summary_total { display: flex; justify-content: space-between; align-items: baseline; font-size: 22px; font-weight: 700; color: #01101a; margin-top: 12px; }
.sp-submit {
	display: block; width: 100%; margin-top: 20px; height: 56px; border: 0; border-radius: 12px;
	background: #fbcf7b; color: #01101a; font-size: 17px; font-weight: 700; cursor: pointer;
	transition: background .2s, box-shadow .2s;
}
.sp-submit:hover { background: #f2b84b; box-shadow: 0 8px 20px rgba(176, 124, 30, .25); }
.sp-submit_note { font-size: 12px; color: #9a9a9a; margin: 10px 0 0; text-align: center; }
.sp-submit_note a { color: #8f8a7f; text-decoration: underline; }

.sp-next { padding: 4px 6px; }
.sp-next_head { font-size: 16px; font-weight: 700; margin-bottom: 10px; color: #01101a; text-transform: none; }
.sp-next_list { margin: 0 0 12px; padding-left: 20px; font-size: 15px; line-height: 1.55; color: #4f4f4f; }
.sp-next_list li { margin-bottom: 6px; }
.sp-next_list li::marker { color: #c8901f; font-weight: 700; }
.sp-next_call { font-size: 15px; color: #4f4f4f; }
.sp-next_call a { font-weight: 700; color: #01101a; white-space: nowrap; }

/* спасибо */
.sp-thanks_grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.sp-thanks_icon { width: 56px; height: 56px; border-radius: 50%; background: #fbcf7b; color: #01101a; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.sp-thanks_steps { margin: 18px 0; }
.sp-thanks_actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.sp-thanks_actions a { line-height: 52px; padding: 0 26px; font-size: 16px; }

@media (max-width: 991.98px) {
	.sp-checkout_grid, .sp-thanks_grid { grid-template-columns: 1fr; }
	.sp-checkout_side { position: static; }
}
@media (max-width: 575.98px) {
	.sp-box { padding: 20px 16px; border-radius: 14px; }
	.sp-checkout_title { font-size: 26px; }
	.sp-checkout_lead { font-size: 15px; }
	.sp-progress { font-size: 12px; }
	.sp-progress li:not(:last-child):after { width: 14px; margin: 0 6px; }
	.sp-thanks_actions a { width: 100%; text-align: center; }
}

/* ==========================================================================
   О нас
   ========================================================================== */
.about-facts { list-style: none; padding: 0; margin: 24px 0 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.about-facts li { background: #fef8ea; border-radius: 14px; padding: 18px 20px; }
.about-facts b { display: block; font-size: 20px; color: #01101a; margin-bottom: 4px; }
.about-facts span { font-size: 14px; color: #6b6b6b; line-height: 1.45; }
.about-photos { display: grid; gap: 14px; margin: 0 0 24px; grid-template-columns: repeat(3, 1fr); }
.about-photos--1 { grid-template-columns: 1fr; }
.about-photos--2 { grid-template-columns: 1fr 1fr; }
.about-photos figure { margin: 0; }
.about-photos img { width: 100%; height: 320px; object-fit: cover; border-radius: 16px; display: block; }
.about-photos--1 img { height: 440px; }
.about-photos figcaption { font-size: 13px; color: #8f8a7f; margin-top: 6px; }
.about-text p { font-size: 17px; line-height: 1.7; color: #3a3a3a; max-width: 760px; margin-bottom: 14px; }
.about-text .opt-section_head { margin-top: 30px; }
.about-text .opt-section_head:first-child { margin-top: 0; }
.about-link { font-weight: 700; color: #a8741a; }
.about-link:after { content: ' →'; }
@media (max-width: 767.98px) {
	.about-facts, .about-photos, .about-photos--2 { grid-template-columns: 1fr; }
	.about-photos img, .about-photos--1 img { height: 240px; }
	.about-text p { font-size: 16px; }
}

/* ==========================================================================
   Шапка: меню читается на дереве, контакты одним шрифтом
   ========================================================================== */
.header_main { box-shadow: inset 0 0 0 2000px rgba(12, 9, 6, .6); }
.main-menu ul>li>a, .main-menu ul>li>span {
	font-weight: 500 !important;
	color: #fff !important;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .8), 0 0 12px rgba(0, 0, 0, .45);
}
.main-menu ul>li>a:hover { color: #fbcf7b !important; }
.header-contacts-compact a,
.header-contacts-compact .header_phone a { font-size: 15px; font-weight: 600; letter-spacing: 0; }
.header_top .header_delivery a, .header_b2b { font-size: 15px; font-weight: 600; }
.header_search .search-icon { cursor: pointer; }

/* ==========================================================================
   Мини-корзина
   ========================================================================== */
.mini-cart_container.sp-mini { min-width: 0; width: 400px; padding: 22px 22px 20px; border-radius: 16px; box-shadow: 0 20px 50px rgba(0, 0, 0, .18); }
.sp-mini_top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.sp-mini_head { font-size: 20px; font-weight: 700; text-transform: none; margin: 0; color: #01101a; }
.sp-mini_head span { font-size: 14px; color: #9a9a9a; font-weight: 500; }
.sp-mini_close { position: static !important; width: 34px; height: 34px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; color: #6b6b6b; font-size: 0; }
.sp-mini_close:hover { background: #f5efe3; color: #01101a; }
.sp-mini_items { list-style: none; margin: 0; padding: 0; max-height: 330px; overflow-y: auto; }
.sp-mini_item { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-bottom: 1px solid #f3ecdf; }
.sp-mini_img img { width: 64px; height: 64px; object-fit: contain; border: 1px solid #f3ecdf; border-radius: 10px; padding: 4px; background: #fff; display: block; }
.sp-mini_info { flex: 1; min-width: 0; }
.sp-mini_name { display: block; font-size: 15px; line-height: 1.35; color: #01101a; }
.sp-mini_name:hover { color: #a8741a; }
.sp-mini_price { font-size: 14px; color: #6b6b6b; margin-top: 3px; }
.sp-mini_price .amount { color: #01101a; font-weight: 700; }
.sp-mini_remove { width: 30px; height: 30px; flex: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #a9a397; }
.sp-mini_remove:hover { background: #f5efe3; color: #01101a; }
.sp-mini_total { display: flex; justify-content: space-between; font-size: 18px; font-weight: 700; color: #01101a; margin: 14px 0 2px; }
.sp-mini_note { font-size: 13px; color: #9a9a9a; margin: 0 0 14px; }
.sp-mini_buttons { display: grid; gap: 8px; }
.sp-mini_btn { display: block; text-align: center; height: 48px; line-height: 46px; border-radius: 12px; border: 1px solid #e3dac8; font-size: 15px; font-weight: 600; color: #01101a !important; text-transform: none; letter-spacing: 0; }
.sp-mini_btn:hover { border-color: #fbcf7b; }
.sp-mini_btn--main { background: #fbcf7b; border-color: #fbcf7b; font-weight: 700; }
.sp-mini_btn--main:hover { background: #f2b84b; }
.sp-mini_empty { color: #6b6b6b; margin-bottom: 14px; }

/* ==========================================================================
   Поиск
   ========================================================================== */
.sp-search { position: fixed; inset: 0; z-index: 10000; }
.sp-search[hidden] { display: none; }
.sp-search_backdrop { position: absolute; inset: 0; background: rgba(10, 8, 6, .55); backdrop-filter: blur(3px); }
.sp-search_panel {
	position: relative; max-width: 720px; margin: 80px auto 0; background: #fff; border-radius: 18px;
	padding: 18px; box-shadow: 0 30px 70px rgba(0, 0, 0, .25); max-height: calc(100vh - 120px); overflow-y: auto;
}
.sp-search_form { display: flex; align-items: center; gap: 10px; border: 1px solid #e3dac8; border-radius: 12px; padding: 0 6px 0 14px; color: #8f8a7f; }
.sp-search_form:focus-within { border-color: #f2b84b; box-shadow: 0 0 0 3px rgba(251, 207, 123, .35); }
.sp-search_form input[type="search"] { flex: 1; min-width: 0; height: 54px; border: 0 !important; outline: none; font-size: 17px; background: transparent; color: #01101a; padding: 0; box-shadow: none !important; }
.sp-search_go { height: 42px; padding: 0 18px; border: 0; border-radius: 10px; background: #fbcf7b; color: #01101a; font-weight: 700; font-size: 15px; cursor: pointer; }
.sp-search_go:hover { background: #f2b84b; }
.sp-search_close { width: 42px; height: 42px; border: 0; background: none; color: #8f8a7f; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.sp-search_close:hover { background: #f5efe3; color: #01101a; }
.sp-search_hint { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 14px; font-size: 14px; color: #8f8a7f; }
.sp-search_hint a { padding: 6px 12px; border-radius: 999px; background: #fef8ea; color: #01101a; font-size: 14px; }
.sp-search_hint a:hover { background: #fbcf7b; }
.sp-search_list { list-style: none; margin: 10px 0 0; padding: 0; }
.sp-search_list a { display: flex; align-items: center; gap: 12px; padding: 8px; border-radius: 10px; color: #01101a; }
.sp-search_list a:hover { background: #fef8ea; }
.sp-search_list img { width: 56px; height: 56px; object-fit: contain; border: 1px solid #f3ecdf; border-radius: 8px; padding: 3px; background: #fff; flex: none; }
.sp-search_name { flex: 1; min-width: 0; font-size: 15px; line-height: 1.35; }
.sp-search_name small { display: block; color: #9a9a9a; font-size: 12px; margin-top: 2px; }
.sp-search_price { font-weight: 700; white-space: nowrap; font-size: 15px; }
.sp-search_all { display: block; text-align: center; margin-top: 10px; padding: 12px; border-radius: 10px; background: #fef8ea; font-weight: 700; color: #a8741a; }
.sp-search_state { padding: 18px 6px 6px; color: #6b6b6b; font-size: 15px; }
html.sp-search-open { overflow: hidden; }
@media (max-width: 575.98px) {
	.mini-cart_container.sp-mini { width: calc(100vw - 24px); right: -8px; }
	.sp-search_panel { margin: 0; border-radius: 0 0 16px 16px; max-height: 100vh; padding: 12px; }
	.sp-search_go { display: none; }
	.sp-search_form input[type="search"] { font-size: 16px; }
}

/* Кнопка «Наверх» */
.sp-totop {
	position: fixed; right: 20px; bottom: 24px; z-index: 900;
	width: 50px; height: 50px; border-radius: 50%; border: 0; cursor: pointer;
	background: #01101a; color: #fbcf7b; display: flex; align-items: center; justify-content: center;
	box-shadow: 0 8px 22px rgba(0, 0, 0, .22); transition: transform .2s, background .2s;
}
.sp-totop[hidden] { display: none; }
.sp-totop:hover { transform: translateY(-2px); background: #1c2733; }
@media (max-width: 575.98px) { .sp-totop { right: 14px; bottom: 16px; width: 44px; height: 44px; } }

/* Подгрузка товаров */
.sp-more { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 26px 0 10px; font-size: 15px; color: #8f8a7f; }
.sp-more_spin { width: 18px; height: 18px; border-radius: 50%; border: 2px solid #efe3c8; border-top-color: #c8901f; animation: spspin .8s linear infinite; }
.sp-more:not(.is-loading) .sp-more_spin { animation-play-state: paused; opacity: .4; }
.sp-more.is-end .sp-more_spin { display: none; }
@keyframes spspin { to { transform: rotate(360deg); } }

/* Обычная нумерация страниц (если подгрузка не сработала): заметная */
.woocommerce-pagination ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; border: 0 !important; list-style: none; padding: 0; }
.woocommerce-pagination ul li { border: 0 !important; }
.woocommerce-pagination a, .woocommerce-pagination span {
	display: inline-flex !important; align-items: center; justify-content: center; min-width: 40px; height: 40px;
	border-radius: 10px; background: #fff; color: #01101a !important; font-size: 15px;
}
.woocommerce-pagination span.current { background: #fbcf7b; font-weight: 700; }

/* Верхняя полоса: без лишней пустоты снизу */
.header_top { height: auto !important; min-height: 0 !important; padding: 8px 0 !important; }
.header_top .row-ht { min-height: 34px; }

/* ==========================================================================
   Меню разделов каталога
   ========================================================================== */
.sp-cats { background: #fff; border-radius: 16px; padding: 18px 10px 10px; margin-bottom: 18px; box-shadow: 0 2px 10px rgba(60, 40, 10, .05); }
.sp-cats_head { font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #a8741a; padding: 0 12px 10px; }
.sp-cats_list, .sp-cats_sub { list-style: none; margin: 0; padding: 0; }
.sp-cats_item { border-radius: 10px; }
.sp-cats_row { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 12px; border-radius: 10px; cursor: pointer; list-style: none; }
.sp-cats_row::-webkit-details-marker { display: none; }
.sp-cats_row:hover { background: #fef8ea; }
.sp-cats_row a { flex: 1; font-size: 15px; line-height: 1.35; color: #01101a; }
.sp-cats_count, .sp-cats_sub span { font-size: 12px; color: #a9a397; }
.sp-cats_toggle { width: 22px; height: 22px; flex: none; border-radius: 50%; position: relative; }
.sp-cats_toggle:before { content: ''; position: absolute; left: 7px; top: 6px; width: 7px; height: 7px; border-right: 2px solid #a9a397; border-bottom: 2px solid #a9a397; transform: rotate(45deg); transition: transform .2s; }
details[open] > .sp-cats_row .sp-cats_toggle:before { transform: rotate(-135deg); top: 9px; }
.sp-cats_item.is-current > .sp-cats_row, .sp-cats_item.is-current > details > .sp-cats_row { background: #fbcf7b; }
.sp-cats_item.is-current > .sp-cats_row a, .sp-cats_item.is-current > details > .sp-cats_row a { font-weight: 700; }
.sp-cats_item.is-open:not(.is-current) > details > .sp-cats_row a { font-weight: 700; }
.sp-cats_sub { padding: 2px 0 8px 12px; margin-left: 12px; border-left: 2px solid #f3ecdf; }
.sp-cats_sub a { display: flex; justify-content: space-between; gap: 8px; padding: 6px 10px; border-radius: 8px; font-size: 14px; color: #4f4f4f; }
.sp-cats_sub a:hover { background: #fef8ea; color: #01101a; }
.sp-cats_sub .is-current a { background: #fef1d4; color: #01101a; font-weight: 700; }
.sp-drawer .sp-cats { box-shadow: none; padding: 6px 0 0; margin: 0; }
.sp-drawer .sp-cats_head { display: none; }

/* ==========================================================================
   Главная: мозаика в общей сетке, без «рамок из 2000-х»
   ========================================================================== */
/* Мозаика: как была, только мягче рамки текстовых блоков */
.home-mosaic .mosaic_text { border-color: #e8dcc4 !important; }
/* Первый экран: подзаголовок читается на фото */
.header_carousel-item { box-shadow: inset 0 0 0 2000px rgba(10, 8, 6, .35); }
.header_text-body { color: #fff !important; text-shadow: 0 1px 3px rgba(0, 0, 0, .7); font-size: 18px; }
.header_text-head { text-shadow: 0 2px 6px rgba(0, 0, 0, .5); }
/* Текстовый блок под первым экраном: шире и спокойнее */
.home-text-block .text-block_text { max-width: 760px; margin-left: auto; margin-right: auto; font-size: 16px; line-height: 1.7; }

/* ==========================================================================
   Мобильная шапка: компактная и прячется при прокрутке вниз
   ========================================================================== */
@media (max-width: 767.98px) {
	.fix-nav .header_logo--mobile { display: none !important; }
	.fix-nav-wrap.fix-nav { padding-top: 4px !important; padding-bottom: 4px !important; transition: transform .25s ease; }
	.fix-nav-wrap.fix-nav.sp-hide { transform: translateY(-110%); }
}
/* Размеры в карточке товара */
.sp-card_dim { font-size: 12px; color: #6b6b6b; margin: -8px 0 12px; }
/* Длинный текст категории: свёрнут, раскрывается по кнопке */
.category-description .text.sp-clamp { max-height: 190px; overflow: hidden; position: relative; }
.category-description .text.sp-clamp:after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 70px; background: linear-gradient(rgba(253, 248, 237, 0), #fdf8ed); }
.sp-more-text { margin-top: 10px; border: 0; background: none; color: #a8741a; font-weight: 700; font-size: 15px; cursor: pointer; padding: 0; }

/* Оформление: поля строго под подписями, на всю ширину */
.sp-checkout .form-row { display: block !important; width: 100% !important; float: none !important; clear: both; }
.sp-checkout .form-row > label { display: block !important; width: auto !important; float: none !important; text-align: left !important; padding: 0 !important; }
.sp-checkout .form-row .woocommerce-input-wrapper { display: block !important; width: 100% !important; float: none !important; margin: 0 !important; }
.sp-checkout .form-row input.input-text, .sp-checkout .form-row textarea { width: 100% !important; max-width: none !important; margin: 0 !important; box-sizing: border-box; }
.sp-checkout #billing_country_field { display: none !important; }

/* ==========================================================================
   Карточки: названия не «пляшут» – под название всегда место на 3 строки
   ========================================================================== */
.sp-card_title { min-height: calc(1.35em * 3); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
@media (max-width: 575.98px) { .sp-card_title { min-height: calc(1.35em * 3); } }

/* Корзина: кнопка обновления не нужна, поле количества аккуратное */
.sp-hidden-update { position: absolute !important; left: -9999px !important; }
.woocommerce-cart-form input.qty { width: 80px; height: 44px; border: 1px solid #e3dac8; border-radius: 10px; text-align: center; font-size: 16px; }
.woocommerce-cart-form button[name="update_cart"] { white-space: nowrap; }

/* ==========================================================================
   Главная: плотнее по вертикали
   ========================================================================== */
@media (min-width: 992px) {
	.home-text-block { margin-top: 64px !important; }
	.home-mosaic { margin-top: 32px !important; }
	.home-products-list { margin-top: 72px !important; }
	.home-action { margin-top: 72px !important; }
	.home-action .action_body { padding: 56px 60px 48px !important; }
	.home-blog-block { margin-top: 72px !important; }
	.blog-block_text { padding: 40px 48px !important; }
	.blog-block_image { min-height: 320px; }
	.form-reviews_inner { padding: 72px 0 60px !important; }
	.products-list_head-container { margin-bottom: 8px; }
	.products-list_button { margin-top: 24px !important; }
}

/* Корзина: товары слева, итог справа; на телефоне итог после товаров */
.cart-page form > .row > .col-md-7 { order: 1 !important; }
.cart-page form > .row > .col-md-5 { order: 2 !important; }
.cart-page_item-head { margin-bottom: 6px; }
/* На странице корзины кнопка «Перейти в корзину» в сообщении не нужна */
.woocommerce-cart .woocommerce-message .button, .woocommerce-cart .woocommerce-message a.wc-forward { display: none !important; }

/* Главная: тихие ссылки вместо повторяющихся кнопок «Каталог» */
.sp-textlink { font-weight: 700; font-size: 15px; color: #a8741a !important; border-bottom: 1px solid rgba(168, 116, 26, .35); padding-bottom: 2px; }
.sp-textlink:after { content: ' →'; }
.sp-textlink:hover { color: #7a5310 !important; border-color: currentColor; }
.sp-more-link { text-align: center; margin-top: 22px; }

/* Мозаика: три колонки одной высоты, плитки тянутся, ничего не вылезает */
@media (min-width: 768px) {
	.home-mosaic .mosaic > .container-fluid > .row { display: flex; align-items: stretch; }
	.home-mosaic .mosaic > .container-fluid > .row > [class*="col-"] { display: flex; flex-direction: column; gap: 16px; }
	.home-mosaic .row > [class*="col-"] > a { display: flex; flex: 1 1 0; min-height: 230px; margin: 0 !important; }
	.home-mosaic .row > [class*="col-"] > a:first-child { flex-grow: 1.6; }
	.home-mosaic .row > .col-md-4.p-0:last-child > a:first-child { flex-grow: 1; }
	.home-mosaic .row > .col-md-4.p-0:last-child > a:last-child { flex-grow: 1.6; }
	.home-mosaic .mosaic_image { flex: 1; height: auto !important; min-height: 0 !important; margin: 0 !important; }
	.home-mosaic .mosaic_text { flex: 1 1 0; height: auto !important; margin: 0 !important; display: flex; flex-direction: column; }
	.home-mosaic .mosaic_text-button { margin-top: auto !important; padding-top: 16px; }
	.home-mosaic .mosaic_text-image { display: none; }
}

/* Быстрый заказ */
.fast-buy-modal_content { border-radius: 18px; padding: 32px 32px 24px !important; }
.fast-buy-modal_head { font-size: 26px !important; text-transform: none !important; letter-spacing: 0 !important; text-align: left !important; margin-bottom: 10px !important; }
.sp-fb_lead { font-size: 15px; line-height: 1.55; color: #4f4f4f; margin-bottom: 10px; }
.sp-fb_points { list-style: none; padding: 0; margin: 0 0 18px; display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 14px; color: #01101a; }
.sp-fb_points li:before { content: '✓ '; color: #c8901f; font-weight: 700; }
.fast-buy-modal_form input[type="text"], .fast-buy-modal_form input[type="tel"], .fast-buy-modal_form input[type="email"] {
	height: 52px !important; border: 1px solid #e3dac8 !important; border-radius: 10px !important; padding: 0 16px !important;
	text-align: left !important; font-size: 16px !important; box-shadow: none !important; margin-bottom: 10px !important;
}
.fast-buy-modal_form input:focus { border-color: #f2b84b !important; box-shadow: 0 0 0 3px rgba(251, 207, 123, .35) !important; outline: none; }
.fast-buy-modal_form input[type="submit"] { height: 52px !important; border-radius: 12px !important; font-size: 15px !important; }
.sp-fb_note { font-size: 12px; color: #9a9a9a; margin: 6px 0 0; }
.sp-fb_note a { color: #8f8a7f; text-decoration: underline; }

/* Кнопки сайта одного размера */
.btn-1, .btn-2, .btn-4, .btn-5, .btn-6, .btn-8, .single-product-container a.single_add_to_cart_button, .single-product-container .add_to_cart_button {
	min-height: 52px; line-height: 50px !important; padding: 0 28px !important; font-size: 15px !important;
	letter-spacing: .06em; border-radius: 12px !important; box-sizing: border-box;
}

/* Главная: «почему у нас» */
.sp-why { margin-top: 40px; }
.sp-why_list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.sp-why_list li { background: #fff; border-radius: 16px; padding: 20px 22px; box-shadow: 0 2px 10px rgba(60, 40, 10, .05); }
.sp-why_list b { display: block; font-size: 18px; color: #01101a; margin-bottom: 4px; }
.sp-why_list span { font-size: 14px; line-height: 1.45; color: #6b6b6b; }
@media (max-width: 991.98px) { .sp-why_list { grid-template-columns: 1fr 1fr; } }

/* Главная: блог компактными карточками */
.sp-hblog { margin-top: 72px; }
.sp-hblog_top { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: 22px; }
.sp-hblog_head { font-size: 30px; font-weight: 700; color: #01101a; margin: 0 0 4px; text-transform: none; }
.sp-hblog_sub { font-size: 15px; color: #6b6b6b; margin: 0; }
.sp-hblog_grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.sp-hblog_card { display: flex; flex-direction: column; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 2px 10px rgba(60, 40, 10, .05); color: #01101a !important; transition: box-shadow .25s, transform .25s; }
.sp-hblog_card:hover { box-shadow: 0 14px 34px rgba(60, 40, 10, .12); transform: translateY(-2px); }
.sp-hblog_img { display: block; aspect-ratio: 16 / 10; background: #f3ecdf; overflow: hidden; }
.sp-hblog_img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sp-hblog_body { display: flex; flex-direction: column; gap: 6px; padding: 16px 18px 20px; }
.sp-hblog_cat { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #a8741a; }
.sp-hblog_title { font-size: 18px; font-weight: 700; line-height: 1.3; }
.sp-hblog_text { font-size: 14px; line-height: 1.5; color: #6b6b6b; }
@media (max-width: 767.98px) {
	.sp-hblog_grid { grid-template-columns: 1fr; }
	.sp-hblog_top { flex-direction: column; align-items: flex-start; }
	.sp-why_list b { font-size: 16px; }
}

/* Оформление заказа на один экран: поля в две колонки, всё компактнее */
@media (min-width: 768px) {
	.sp-checkout_main > .sp-box:first-child { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; align-items: start; }
	.sp-checkout_main > .sp-box:first-child > .sp-box_head,
	.sp-checkout_main > .sp-box:first-child > #order_comments_field,
	.sp-checkout_main > .sp-box:first-child > .form-row-wide.notes { grid-column: 1 / -1; }
	.sp-checkout .sp-pay-list { grid-template-columns: 1fr 1fr; }
}
.sp-checkout_title { font-size: 28px; margin-bottom: 4px; }
.sp-checkout_lead { font-size: 15px; margin-bottom: 16px; }
.sp-progress { margin-bottom: 12px; }
.sp-box { padding: 22px 24px; margin-bottom: 14px; }
.sp-box_head { font-size: 19px; margin-bottom: 14px; }
.sp-checkout .form-row { margin-bottom: 12px; }
.sp-checkout .form-row input.input-text { height: 46px; }
.sp-checkout .form-row textarea { height: 64px; }
.sp-checkout .form-row .description { font-size: 12px; margin-top: 4px; }
.sp-pay_label { padding: 12px 14px; }
.sp-next { font-size: 14px; }
.sp-next_list { font-size: 14px; }

/* Мозаика: текстовые блоки по высоте содержимого на любой ширине, ссылка всегда внутри */
.home-mosaic .mosaic_text-1, .home-mosaic .mosaic_text-2, .home-mosaic .mosaic_text { height: auto !important; min-height: 0 !important; padding: 28px 26px 24px !important; }
.home-mosaic .mosaic_text .head-4 { font-size: 22px !important; line-height: 1.2 !important; letter-spacing: .02em; }
.home-mosaic .mosaic_text-body { font-size: 15px !important; line-height: 1.55 !important; }
.home-mosaic .mosaic_text-button { margin-top: 14px !important; position: static !important; }
@media (max-width: 767.98px) {
	.home-mosaic .mosaic_text { margin: 12px 0 !important; }
}
/* Баннер про упаковку: мешочек не наезжает на текст */
.home-action .action_inner { padding-bottom: 24px; }
.home-action .action_image { width: 130px; right: -10px; bottom: -20px; }
.home-action .action_image img { width: 100%; height: auto; }
.home-action .action_head { font-size: 26px !important; line-height: 1.25 !important; }
.home-action .action_text { max-width: 620px; margin-left: auto; margin-right: auto; }
@media (max-width: 991.98px) { .home-action .action_image { display: none; } }

/* Мозаика (исправление): текст не сжимается, плитки с фото подстраиваются под высоту колонки */
@media (min-width: 768px) {
	.home-mosaic .mosaic_text { flex: 1 0 auto !important; overflow: visible !important; }
	.home-mosaic .row > [class*="col-"] > a { flex-basis: auto !important; min-height: 280px !important; }
}
/* Пустота перед формой «Есть вопрос?» */
.form-reviews { margin-top: 48px !important; }
.form-reviews_tracery { margin-bottom: -60px; }
.form-reviews_tracery img { max-height: 140px; width: auto; display: block; margin: 0 auto; opacity: .7; }

/* Оформление: шаги в основной колонке */
@media (min-width: 768px) {
	.sp-step-contacts { display: grid !important; grid-template-columns: 1fr 1fr; column-gap: 16px; align-items: start; }
	.sp-step-contacts > .sp-box_head, .sp-step-contacts > #billing_email_field { grid-column: 1 / -1; }
	.sp-step-ship .sp-ship-list { grid-template-columns: 1fr 1fr; }
	.sp-checkout_main > .sp-box:first-child { display: grid; }
}
.sp-step-ship .sp-ship-list { display: grid; gap: 10px; margin: 0 0 14px; }
.sp-ship-list label { align-items: flex-start !important; padding: 12px 14px !important; }
.sp-ship-list label span b, .sp-ship-list label b { display: block; font-size: 15px; color: #01101a; }
.sp-ship-list label small { display: block; font-size: 13px; color: #6b6b6b; margin-top: 2px; line-height: 1.4; }
.sp-ship-list label .amount { font-weight: 700; }
.sp-comment { margin-top: 14px; }
.sp-comment summary { cursor: pointer; color: #a8741a; font-weight: 700; font-size: 14px; list-style: none; }
.sp-comment summary::-webkit-details-marker { display: none; }
.sp-comment summary:before { content: '+ '; }
.sp-comment[open] summary:before { content: '– '; }
.sp-comment .form-row { margin-top: 10px; }
.sp-comment #order_comments_field > label { display: none !important; }
.sp-submit_free { text-align: center; font-size: 13px; color: #3a7d4f; margin: 10px 0 0; font-weight: 600; }
.sp-submit_free:before { content: '✓ '; }

/* Первый экран: поиск и разделы */
.sp-hero-search { display: flex; max-width: 560px; margin-top: 22px; background: #fff; border-radius: 14px; padding: 6px; box-shadow: 0 10px 30px rgba(0, 0, 0, .25); }
.sp-hero-search input[type="search"] { flex: 1; min-width: 0; border: 0 !important; outline: none; font-size: 16px; padding: 0 14px; height: 48px; background: transparent; color: #01101a; box-shadow: none !important; }
.sp-hero-search button { border: 0; border-radius: 10px; background: #fbcf7b; color: #01101a; font-weight: 700; font-size: 15px; padding: 0 22px; cursor: pointer; }
.sp-hero-search button:hover { background: #f2b84b; }
.sp-hero-cats { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; max-width: 640px; }
.sp-hero-cats a { padding: 7px 14px; border-radius: 999px; background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .35); color: #fff !important; font-size: 14px; backdrop-filter: blur(4px); }
.sp-hero-cats a:hover { background: rgba(251, 207, 123, .9); border-color: #fbcf7b; color: #01101a !important; }
.sp-hero-cats a.is-all { background: rgba(251, 207, 123, .95); border-color: #fbcf7b; color: #01101a !important; font-weight: 700; }
@media (max-width: 575.98px) {
	.sp-hero-search button { padding: 0 14px; }
	.sp-hero-cats a { font-size: 13px; padding: 6px 12px; }
}

/* Форма «Есть вопрос?»: ровные поля, читаемо на фото */
.form-reviews_form-container .wpcf7 input[type="text"], .form-reviews_form-container .wpcf7 input[type="tel"], .form-reviews_form-container .wpcf7 input[type="email"], .form-reviews_form-container .wpcf7 textarea {
	width: 100% !important; max-width: none !important; height: 52px; border: 1px solid rgba(255, 255, 255, .5) !important; border-radius: 12px !important;
	background: rgba(255, 255, 255, .94) !important; text-align: left !important; padding: 0 16px !important; font-size: 16px !important; color: #01101a !important; box-shadow: none !important; margin: 0 0 10px !important; box-sizing: border-box;
}
.form-reviews_form-container .wpcf7 input:focus { border-color: #fbcf7b !important; box-shadow: 0 0 0 3px rgba(251, 207, 123, .45) !important; outline: none; }
.form-reviews_form-container .wpcf7 input[type="submit"] { width: 100% !important; height: 52px; border-radius: 12px !important; }
.form-reviews_form-container .wpcf7 p, .form-reviews_form-container .wpcf7 span.wpcf7-form-control-wrap { display: block; width: 100%; max-width: none; margin: 0; }
.form-reviews_form-container { max-width: 520px; }
.form-reviews_inner { box-shadow: inset 0 0 0 2000px rgba(10, 8, 6, .35); }

/* «Есть вопрос?»: вместо отзыва – живой телефон */
.sp-ask { padding: 130px 0 100px 40px; color: #fff; }
.sp-ask_lead { font-size: 18px; line-height: 1.55; color: rgba(255, 255, 255, .9); max-width: 420px; margin-bottom: 14px; }
.sp-ask_phone { font-size: 30px; font-weight: 700; color: #fbcf7b !important; }
.sp-ask_hours { margin-top: 6px; color: rgba(255, 255, 255, .7); font-size: 14px; }
@media (max-width: 991.98px) { .sp-ask { padding: 0 0 40px; } }
/* SEO-текст внизу главной – спокойный, не кричит */
.home-text-block { margin-top: 64px !important; }
.home-text-block .text-block_head { font-size: 26px !important; }
h1.header_text-head { margin: 0 0 10px; }

/* Избранное и короткие страницы: подвал не прилипает к шапке */
.sp-wishlist { padding: 40px 0 72px; min-height: 52vh; }
.sp-wl-remove { display: block; text-align: center; font-size: 13px; color: #8f8a7f !important; margin-top: 8px; }
.sp-wl-remove:hover { color: #a8741a !important; }
.sp-wishlist .sp-col { flex-direction: column; }
.sp-empty { max-width: 560px; text-align: center; margin: 10px auto 0; padding: 40px 28px; }
.sp-empty .sp-box_head { justify-content: center; }
.sp-empty_icon { width: 60px; height: 60px; border-radius: 50%; background: #fef1d4; color: #a8741a; display: flex; align-items: center; justify-content: center; margin: 0 auto 14px; }
.content { min-height: 40vh; }

/* Блог: рубрики-чипсы, сетка карточек, страницы */
.sp-blog { padding: 32px 0 72px; }
.sp-blog_cats { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 26px; }
.sp-blog_cats a { padding: 8px 16px; border-radius: 999px; background: #fff; border: 1px solid #ece3d1; color: #01101a !important; font-size: 14px; }
.sp-blog_cats a:hover { border-color: #fbcf7b; }
.sp-blog_cats a.is-current { background: #fbcf7b; border-color: #fbcf7b; font-weight: 700; }
.sp-blog_grid { row-gap: 24px; }
.sp-blog_more { margin-top: 6px; font-size: 14px; font-weight: 700; color: #a8741a; }
.sp-blog_more:after { content: ' →'; }
.sp-blog_pages { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px; margin-top: 32px; }
.sp-blog_pages a, .sp-blog_pages span { min-width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 10px; background: #fff; color: #01101a !important; padding: 0 10px; }
.sp-blog_pages .current { background: #fbcf7b; font-weight: 700; }
@media (max-width: 991.98px) { .sp-blog_grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 575.98px) { .sp-blog_grid { grid-template-columns: 1fr; } }

/* Оформление: спокойнее */
.sp-submit_free { color: #6b6b6b; font-weight: 500; }
.sp-submit_free:before { content: ''; }
.sp-checkout_side .sp-next_call { margin: 4px 6px 0; font-size: 14px; color: #6b6b6b; }
.sp-ship-list label small, .sp-pay_text small { font-size: 13px; }
/* ==========================================================================
   Информационные страницы (контакты, доставка, о нас, опт): без «коробки в коробке»
   Фон страницы – тёплый, карточки – белые, заголовки свободно над ними
   ========================================================================== */
.opt-hero { background: transparent !important; box-shadow: none !important; padding: 8px 0 0 !important; margin-top: 8px !important; }
.opt-hero_head { font-size: 40px !important; line-height: 1.1 !important; margin-bottom: 12px !important; }
.opt-hero_lead { font-size: 18px !important; line-height: 1.6 !important; color: #4f4f4f !important; max-width: 720px; }
.opt-section { background: transparent !important; box-shadow: none !important; padding: 0 !important; margin-top: 44px !important; }
.opt-section_head { font-size: 26px !important; margin-bottom: 18px !important; }
.dl-way, .dl-ways--pay .dl-way, .about-facts li, .opt-card, .opt-terms > *, .opt-faq_item {
	background: #fff !important; border: 0 !important; border-radius: 16px !important;
	box-shadow: 0 2px 12px rgba(60, 40, 10, .06) !important;
}
.dl-way { padding: 24px !important; }
.dl-way_icon { width: 44px !important; height: 44px !important; margin-bottom: 14px !important; }
.dl-way h3 { font-size: 17px !important; margin-bottom: 6px !important; }
.dl-way p { font-size: 15px !important; line-height: 1.55 !important; }
.ct-value, .ct-value * { font-size: 17px !important; font-weight: 700 !important; color: #01101a !important; }
.dl-note, .ct-note { background: transparent !important; border-left: 3px solid #fbcf7b !important; padding: 4px 0 4px 14px !important; border-radius: 0 !important; color: #4f4f4f !important; font-size: 15px !important; }
.ct-route { background: #fff; border-radius: 16px; padding: 28px !important; box-shadow: 0 2px 12px rgba(60, 40, 10, .06) !important; }
.about-text { background: #fff !important; border-radius: 16px; padding: 36px 40px !important; box-shadow: 0 2px 12px rgba(60, 40, 10, .06) !important; }
.about-text .opt-section_head { font-size: 22px !important; }
.dl-contact { background: #01101a !important; border-radius: 16px; padding: 32px 36px !important; color: #fff; }
.dl-contact .opt-section_head { color: #fff !important; }
.dl-contact p { color: rgba(255, 255, 255, .8) !important; }
.dl-contact .btn-6 { color: #fff !important; border-color: rgba(255, 255, 255, .5) !important; background: transparent !important; }
@media (max-width: 575.98px) {
	.opt-hero_head { font-size: 30px !important; }
	.opt-hero_lead { font-size: 16px !important; }
	.about-text { padding: 24px 20px !important; }
	.dl-contact { padding: 24px 20px !important; }
}

/* Каталог: по умолчанию 3 товара в ряд, по кнопке – 4 */
@media (min-width: 1200px) {
	.products-list.catalog .sp-col { flex: 0 0 33.3333% !important; max-width: 33.3333% !important; }
	.products-list.catalog.sp-grid-4 .sp-col { flex: 0 0 25% !important; max-width: 25% !important; }
	.products-list.catalog .sp-card_title { font-size: 16px; }
	.products-list.catalog.sp-grid-4 .sp-card_title { font-size: 15px; }
}
.woocommerce-ordering-container { display: flex; align-items: center; justify-content: flex-end; gap: 12px; }
.sp-gridswitch { gap: 4px; margin-right: 12px; }
.sp-gridswitch button { display: flex; gap: 2px; align-items: center; height: 34px; padding: 0 8px; border: 1px solid #e3dac8; border-radius: 8px; background: #fff; cursor: pointer; }
.sp-gridswitch button span { width: 5px; height: 14px; border-radius: 2px; background: #c9c0ad; }
.sp-gridswitch button.is-on { border-color: #fbcf7b; background: #fef1d4; }
.sp-gridswitch button.is-on span { background: #a8741a; }

/* «Почему у нас»: одна спокойная полоса, иконка + две строки */
.sp-why_list { background: #fff; border-radius: 16px; box-shadow: 0 2px 12px rgba(60, 40, 10, .06); gap: 0 !important; padding: 6px 0; }
.sp-why_list li { display: flex; align-items: center; gap: 14px; background: none !important; box-shadow: none !important; border-radius: 0 !important; padding: 18px 22px !important; }
.sp-why_list li + li { border-left: 1px solid #f1e9da; }
.sp-why_icon { flex: none; width: 44px; height: 44px; border-radius: 50%; background: #fef1d4; color: #a8741a; display: flex; align-items: center; justify-content: center; }
.sp-why_list b { font-size: 16px !important; margin-bottom: 2px !important; white-space: nowrap; }
.sp-why_list span:not(.sp-why_icon) { display: block; font-size: 14px; line-height: 1.4; color: #6b6b6b; }
@media (max-width: 991.98px) {
	.sp-why_list li:nth-child(3) { border-left: 0; }
	.sp-why_list li:nth-child(n+3) { border-top: 1px solid #f1e9da; }
}
@media (max-width: 575.98px) {
	.sp-why_list { grid-template-columns: 1fr !important; }
	.sp-why_list li { border-left: 0 !important; padding: 14px 18px !important; }
	.sp-why_list li + li { border-top: 1px solid #f1e9da; }
}

/* «Есть вопрос?»: компактная полоса – заголовок, форма в одну строку, телефон */
.form-reviews { margin-top: 56px !important; }
.form-reviews_tracery { display: none !important; }
.form-reviews_inner { padding: 44px 0 !important; }
.form-reviews_inner .row { align-items: center; }
.form-reviews_form-container { padding: 0 !important; max-width: none !important; }
.form-reviews_head { font-size: 26px !important; margin-bottom: 4px !important; text-transform: none !important; letter-spacing: 0 !important; }
.form-reviews_form-container .form-reviews_text, .form-reviews_form-container p:not(.wpcf7 p) { font-size: 15px !important; margin-bottom: 14px !important; }
.form-reviews_form-container .wpcf7-form { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-start; }
.form-reviews_form-container .wpcf7-form > p, .form-reviews_form-container .wpcf7-form > div:not(.wpcf7-response-output) { flex: 1 1 180px; margin: 0 !important; }
.form-reviews_form-container .wpcf7-form > p:has(input[type="submit"]) { flex: 0 0 auto; }
.form-reviews_form-container .wpcf7 input[type="text"], .form-reviews_form-container .wpcf7 input[type="tel"] { height: 48px !important; margin: 0 !important; }
.form-reviews_form-container .wpcf7 input[type="submit"] { width: auto !important; height: 48px !important; padding: 0 26px !important; }
.form-reviews_form-container .wpcf7-response-output { flex: 1 0 100%; margin: 4px 0 0 !important; }
.sp-ask { padding: 0 0 0 32px !important; border-left: 1px solid rgba(255, 255, 255, .2); }
.sp-ask_lead { font-size: 15px !important; margin-bottom: 2px !important; }
.sp-ask_phone { font-size: 26px !important; }
.sp-ask_hours { margin-top: 2px !important; }
@media (max-width: 991.98px) {
	.sp-ask { border-left: 0; padding: 24px 0 0 !important; }
	.form-reviews_form-container .wpcf7 input[type="submit"] { width: 100% !important; }
	.form-reviews_form-container .wpcf7-form > p:has(input[type="submit"]) { flex: 1 1 100%; }
}
.form-reviews .wpcf7-form > p { display: flex !important; gap: 10px; flex-wrap: wrap; align-items: center; flex: 1 1 100% !important; }
.form-reviews .wpcf7-form > p br { display: none; }
.form-reviews .wpcf7-form > p > .wpcf7-form-control-wrap { flex: 1 1 200px !important; width: auto !important; display: block; }
.form-reviews .wpcf7-form > p > input[type="submit"] { flex: 0 0 auto; margin: 0 !important; }

/* Согласие на обработку данных */
.sp-consent { display: flex; gap: 10px; align-items: flex-start; margin: 12px 0; font-size: 13px; line-height: 1.45; color: #6b6b6b; cursor: pointer; text-align: left; }
.sp-consent input { flex: none; width: 18px; height: 18px; margin: 1px 0 0; accent-color: #c8901f; }
.sp-consent a { color: #a8741a !important; text-decoration: underline; }
.form-reviews .sp-consent, .form-reviews .sp-consent span { color: rgba(255, 255, 255, .8); }
.form-reviews .sp-consent a { color: #fbcf7b !important; }
.sp-consent-wrap { flex: 1 1 100%; }
/* Плашка cookie */
.sp-cookie { position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 9999; max-width: 760px; margin: 0 auto; background: #01101a; color: #ece7dc; border-radius: 14px; padding: 14px 18px; display: flex; gap: 14px; align-items: center; box-shadow: 0 12px 30px rgba(0, 0, 0, .3); font-size: 14px; line-height: 1.45; }
.sp-cookie p { margin: 0; flex: 1; }
.sp-cookie a { color: #fbcf7b !important; text-decoration: underline; }
.sp-cookie_btns { display: flex; gap: 8px; flex: none; }
.sp-cookie button { height: 38px; padding: 0 14px; border-radius: 10px; border: 1px solid rgba(255, 255, 255, .35); background: transparent; color: #fff; font-size: 13px; font-weight: 600; cursor: pointer; white-space: nowrap; }
.sp-cookie button.is-main { background: #fbcf7b; border-color: #fbcf7b; color: #01101a; }
@media (max-width: 575.98px) { .sp-cookie { flex-direction: column; align-items: stretch; } .sp-cookie_btns button { flex: 1; } }
/* Подвал: реквизиты и документы */
.sp-footer_bottom { font-size: 12px; }
.sp-footer_legal { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.sp-legal .about-text ul { padding-left: 20px; margin-bottom: 14px; }
.sp-legal .about-text li { font-size: 16px; line-height: 1.6; margin-bottom: 6px; color: #3a3a3a; }

/* Плитки разделов в шапке: крупная картинка сверху, короткая подпись под ней */
.header_categories > ul { display: grid !important; grid-template-columns: repeat(6, 1fr); gap: 0; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 12px 34px rgba(0, 0, 0, .18); }
.header_categories > ul > li { float: none !important; width: auto !important; border: 0 !important; border-right: 1px solid #f2ebdd !important; border-bottom: 1px solid #f2ebdd !important; position: relative; }
.header_categories > ul > li:nth-child(6n) { border-right: 0 !important; }
.header_categories > ul > li > a { display: flex !important; flex-direction: column; align-items: center; justify-content: flex-start; gap: 10px; padding: 18px 10px 16px !important; height: 100%; text-align: center; transition: background .2s; }
.header_categories > ul > li > a:hover { background: #fef8ea; }
.header_categories > ul > li > a img { width: 72px !important; height: 72px !important; object-fit: contain; margin: 0 !important; float: none !important; transition: transform .25s; }
.header_categories > ul > li > a:hover img { transform: scale(1.06); }
.header_categories > ul > li > a span { display: block; font-size: 15px !important; font-weight: 600; line-height: 1.25 !important; color: #01101a !important; padding: 0 !important; margin: 0 !important; }
@media (max-width: 991.98px) { .header_categories > ul { grid-template-columns: repeat(4, 1fr); } .header_categories > ul > li:nth-child(6n) { border-right: 1px solid #f2ebdd !important; } .header_categories > ul > li:nth-child(4n) { border-right: 0 !important; } }
@media (max-width: 575.98px) { .header_categories > ul { grid-template-columns: repeat(3, 1fr); } .header_categories > ul > li > a img { width: 56px !important; height: 56px !important; } .header_categories > ul > li > a span { font-size: 13px !important; } }
.header_categories, .header_categories > ul, .header_categories > ul > li, .header_categories > ul > li > a { height: auto !important; max-height: none !important; overflow: visible !important; }
.header_categories > ul { overflow: hidden !important; }
.header_categories > ul > li > a span { height: auto !important; max-height: none !important; overflow: visible !important; white-space: normal !important; }
.header_categories > ul > li > a img { max-width: none !important; max-height: none !important; }

/* Карточки: картинка всегда квадрат одного размера */
.sp-card_img { position: relative !important; aspect-ratio: 1 / 1; height: auto !important; padding: 0 !important; overflow: hidden; }
.sp-card_img img { position: absolute !important; inset: 14px; width: calc(100% - 28px) !important; height: calc(100% - 28px) !important; max-height: none !important; object-fit: contain; }
@media (max-width: 575.98px) { .sp-card_img img { inset: 8px; width: calc(100% - 16px) !important; height: calc(100% - 16px) !important; } }
/* Фильтры – первыми, раздел – под ними */
.sp-filters { margin-bottom: 16px; }

/* Разделы в шапке: компактная лента «таблеток» с маленькой картинкой вместо громоздкой сетки */
.header_categories > ul { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 8px; background: transparent !important; box-shadow: none !important; border-radius: 0 !important; overflow: visible !important; padding: 4px 0 !important; }
.header_categories > ul > li { border: 0 !important; flex: none; }
.header_categories > ul > li > a { flex-direction: row !important; gap: 8px !important; padding: 5px 14px 5px 5px !important; border-radius: 999px; background: rgba(255, 255, 255, .94) !important; box-shadow: 0 2px 8px rgba(0, 0, 0, .15); height: auto !important; }
.header_categories > ul > li > a:hover { background: #fbcf7b !important; }
.header_categories > ul > li > a img { width: 32px !important; height: 32px !important; border-radius: 50%; background: #fff; object-fit: contain; }
.header_categories > ul > li > a:hover img { transform: none; }
.header_categories > ul > li > a span { font-size: 14px !important; font-weight: 600; white-space: nowrap !important; }
@media (max-width: 991.98px) {
	.header_categories > ul { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto !important; scrollbar-width: none; padding: 4px 2px 8px !important; }
	.header_categories > ul::-webkit-scrollbar { display: none; }
}
.header_categories { background: transparent !important; box-shadow: none !important; height: auto !important; }
.header_categories > ul > li > a { width: auto !important; }
.header_categories > ul > li > a span { max-width: none !important; width: auto !important; }
.header_categories > ul > li > ul { display: none !important; }
/* Текущий раздел в ленте – золотой */
.header_categories > ul > li.is-current > a { background: #fbcf7b !important; }
/* Кнопка «Читать полностью / Свернуть» без рамки */
.sp-more-text { border: 0 !important; outline: none !important; box-shadow: none !important; background: none !important; padding: 0 !important; }
.sp-more-text:focus-visible { text-decoration: underline; }
.category-description .text { max-width: 820px; }
/* Тексты разделов и вопросы */
.category-description .text p { font-size: 16px; line-height: 1.7; color: #3a3a3a; margin-bottom: 12px; }
.sp-catfaq_head { font-size: 20px; font-weight: 700; color: #01101a; margin: 24px 0 10px; }
.sp-catfaq h3 { font-size: 16px; font-weight: 700; color: #01101a; margin: 14px 0 4px; }
.sp-catfaq p { font-size: 15px !important; color: #4f4f4f !important; }

/* ==========================================================================
   Единая типографика всех страниц
   H1 40 / подзаголовок 18 / H2 26 / текст 16 – одинаково на каталоге, разделах,
   доставке, контактах, «О нас», опте, блоге, избранном, оформлении заказа
   ========================================================================== */
.breadcrumbs { margin: 28px 0 10px !important; font-size: 14px !important; color: #8f8a7f; }
.content_head, .content_head.head-14, .sp-checkout_title, .opt-hero_head, .sp-hblog_head,
.products-list_head.head-5, .blog-block_head, .text-block_head {
	font-size: 40px !important; line-height: 1.15 !important; font-weight: 700 !important;
	text-transform: none !important; letter-spacing: 0 !important; color: #01101a !important; margin: 0 0 12px !important;
}
.products-list_head.head-5, .sp-hblog_head, .text-block_head, .opt-section_head { font-size: 28px !important; }
.sp-checkout_lead, .opt-hero_lead, .products-list_subhead, .sp-hblog_sub { font-size: 18px !important; line-height: 1.6 !important; color: #4f4f4f !important; max-width: 720px; }
.products-list_subhead, .sp-hblog_sub { font-size: 16px !important; }
.opt-section_head, .sp-box_head { text-transform: none !important; letter-spacing: 0 !important; }
.content p, .about-text p, .dl-way p, .category-description .text p { font-size: 16px; line-height: 1.65; }
/* Одинаковый отступ сверху под шапкой и снизу перед подвалом */
.content, .opt-page, .sp-blog, .sp-wishlist { padding-top: 0 !important; padding-bottom: 72px !important; }
.checkout-page.sp-checkout, .cart-page { margin-bottom: 72px; }
/* Заголовки блоков на главной: та же гарнитура, без капса */
.products-list_head-container { margin-bottom: 18px !important; }
@media (max-width: 767.98px) {
	.content_head, .content_head.head-14, .sp-checkout_title, .opt-hero_head { font-size: 30px !important; }
	.products-list_head.head-5, .sp-hblog_head, .text-block_head, .opt-section_head { font-size: 23px !important; }
	.sp-checkout_lead, .opt-hero_lead { font-size: 16px !important; }
	.breadcrumbs { margin-top: 18px !important; }
}
.products-list_subhead, .text-block_text { margin-left: auto !important; margin-right: auto !important; }

/* «О нас»: текст сеткой 2 × 2 на всю ширину, без пустого места под фото */
.about-page .opt-hero_lead { max-width: 860px; }
.about-page .about-facts { margin-top: 28px; }
.about-grid { display: grid !important; grid-template-columns: 1fr 1fr; gap: 20px; }
.about-card { background: #fff; border-radius: 16px; padding: 30px 32px; box-shadow: 0 2px 12px rgba(60, 40, 10, .06); }
.about-card .opt-section_head { font-size: 22px !important; margin: 0 0 12px !important; }
.about-card p { font-size: 16px; line-height: 1.65; color: #3a3a3a; margin-bottom: 12px; }
.about-card p:last-child { margin-bottom: 0; }
.about-card .about-link { display: inline-block; margin-top: 4px; }
@media (max-width: 767.98px) { .about-grid { grid-template-columns: 1fr; } .about-card { padding: 22px 20px; } }
.opt-hero_actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 18px; }
.opt-hero_actions .opt-hero_button { margin: 0 !important; }

/* Опт: ровные сетки и одинаковые карточки */
.opt-page .opt-cards, .opt-page .opt-steps { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 16px !important; }
.opt-page .opt-terms, .opt-page .dl-ways { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 16px !important; }
.opt-card, .opt-terms > *, .opt-page .dl-way { padding: 22px 22px !important; height: 100%; }
.opt-card h3, .opt-page .dl-way h3 { font-size: 16px !important; margin: 0 0 6px !important; line-height: 1.3; }
.opt-card p, .opt-page .dl-way p, .opt-term_value { font-size: 15px !important; line-height: 1.55 !important; color: #4f4f4f !important; margin: 0 !important; }
.opt-term_label { font-size: 12px !important; letter-spacing: .08em; color: #a8741a !important; margin-bottom: 6px !important; }
.opt-term_value { color: #01101a !important; font-weight: 600; }
.opt-steps li { font-size: 15px !important; color: #4f4f4f; }
.opt-steps b { font-size: 16px; margin-bottom: 4px; }
.opt-hero_actions { margin-top: 22px; }
/* Переключатели подборок */
.sp-sets_tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.sp-sets_tabs button { padding: 9px 16px; border-radius: 999px; border: 1px solid #ece3d1; background: #fff; color: #01101a; font-size: 14px; font-weight: 600; cursor: pointer; }
.sp-sets_tabs button:hover { border-color: #fbcf7b; }
.sp-sets_tabs button.is-on { background: #01101a; border-color: #01101a; color: #fbcf7b; }
.sp-sets_note { margin-top: 14px; font-size: 15px; color: #4f4f4f; }
.sp-sets_note a[href^="tel:"] { font-weight: 700; color: #01101a; }
@media (max-width: 991.98px) { .opt-page .opt-cards, .opt-page .opt-steps { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 575.98px) {
	.opt-page .opt-cards, .opt-page .opt-steps, .opt-page .opt-terms, .opt-page .dl-ways { grid-template-columns: 1fr !important; }
	.sp-sets_tabs { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
	.sp-sets_tabs button { flex: none; }
}

/* Опт: читаемость карточек и шагов */
.opt-card p, .opt-page .dl-way p { font-size: 16px !important; line-height: 1.55 !important; color: #3a3a3a !important; }
.opt-term_value { font-size: 16px !important; font-weight: 500 !important; line-height: 1.45 !important; color: #01101a !important; }
.opt-page .opt-steps li { background: #fff; border-radius: 16px; padding: 22px !important; box-shadow: 0 2px 12px rgba(60, 40, 10, .06); font-size: 16px !important; color: #3a3a3a; }
.opt-page .opt-steps li:before { position: static !important; display: flex !important; margin-bottom: 12px; }
.opt-page .opt-steps b { font-size: 17px; color: #01101a; }
.sp-sets_lead { font-size: 16px; color: #4f4f4f; margin: -6px 0 16px; }
.sp-sets_tabs button:focus { outline: none; }
.sp-sets_tabs button:focus-visible { box-shadow: 0 0 0 3px rgba(251, 207, 123, .6); }

/* ===== /opt/ v3: в стиле сайта, фото, меньше текста ===== */
.opt3 { --ink: #01101a; --mute: #5b6470; --ln: #ece3d1; }
.opt3 .opt3-h1 { font-size: 44px; line-height: 1.1; margin: 0 0 18px; color: var(--ink); }
.opt3 .opt3-h2 { font-size: 28px; line-height: 1.2; margin: 0 0 20px; color: var(--ink); }
.opt3 .opt3-lead { font-size: 19px; line-height: 1.55; color: var(--ink); margin: 0 0 28px; }
.opt3 .opt3-sub { font-size: 17px; color: var(--mute); margin: -10px 0 20px; }
.opt3 .opt3-note { font-size: 16px; color: var(--mute); margin: 16px 0 0; }
.opt3 .opt3-note a, .opt3 .opt3-contacts a { color: var(--ink); font-weight: 700; text-decoration: none; }
.opt3 .opt3-section { margin-top: 64px; }

.opt3 .opt3-hero { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; background: #fff; border-radius: 16px; overflow: hidden; box-shadow: 0 2px 10px rgba(60,40,10,.05); }
.opt3 .opt3-hero_text { padding: 48px 0 48px 48px; }
.opt3 .opt3-hero_img { align-self: stretch; min-height: 420px; background: #f6efe2 center/cover no-repeat; }
.opt3 .opt3-hero--noimg { grid-template-columns: 1fr; }
.opt3 .opt3-hero--noimg .opt3-hero_text { padding: 48px; max-width: 760px; }

.opt3 .opt3-who, .opt3 .opt3-terms { display: grid; gap: 16px; }
.opt3 .opt3-who { grid-template-columns: repeat(5, minmax(0,1fr)); }
.opt3 .opt3-terms { grid-template-columns: repeat(4, minmax(0,1fr)); }
.opt3 .opt3-who > div, .opt3 .opt3-terms > div { background: #fff; border-radius: 16px; padding: 22px; box-shadow: 0 2px 10px rgba(60,40,10,.05); }
.opt3 .opt3-who b, .opt3 .opt3-terms b { display: block; font-size: 18px; color: var(--ink); margin-bottom: 6px; }
.opt3 .opt3-who span, .opt3 .opt3-terms span { font-size: 16px; line-height: 1.45; color: #2b3540; }

.opt3 .opt3-covers { display: flex; gap: 12px; margin: 0 0 28px; padding: 4px 2px 10px; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: thin; }
.opt3 .opt3-covers button { flex: 0 0 150px; scroll-snap-align: start; }
.opt3 .opt3-covers button { display: flex; flex-direction: column; padding: 0 !important; background: #fff !important; border: 2px solid transparent !important; border-radius: 14px !important; overflow: hidden; text-align: left; cursor: pointer; color: var(--ink) !important; box-shadow: 0 2px 10px rgba(60,40,10,.05); transition: border-color .2s; }
.opt3 .opt3-covers button:hover { border-color: #fbcf7b !important; }
.opt3 .opt3-covers button.is-on { border-color: var(--ink) !important; }
.opt3 .opt3-cover_img { display: block; aspect-ratio: 4 / 3; background: #f6efe2 center/cover no-repeat; }
.opt3 .opt3-cover_name { display: block; padding: 10px 12px 12px; font-size: 14px; font-weight: 700; line-height: 1.3; }

.opt3 .opt3-bottom { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; align-items: start; margin-bottom: 24px; }
.opt3 .opt3-faq details { border-bottom: 1px solid var(--ln); }
.opt3 .opt3-faq summary { list-style: none; cursor: pointer; padding: 14px 32px 14px 0; font-size: 17px; font-weight: 700; color: var(--ink); position: relative; }
.opt3 .opt3-faq summary::-webkit-details-marker { display: none; }
.opt3 .opt3-faq summary::after { content: "+"; position: absolute; right: 4px; top: 12px; font-size: 22px; font-weight: 400; }
.opt3 .opt3-faq details[open] summary::after { content: "–"; }
.opt3 .opt3-faq p { margin: 0 0 16px; font-size: 16px; line-height: 1.55; color: #2b3540; }
.opt3 .opt3-contacts { margin: 24px 0 0; display: flex; flex-direction: column; gap: 4px; font-size: 18px; }
.opt3 .opt3-contacts span { font-size: 15px; color: var(--mute); }
.opt3 .opt3-formbox { background: #fff; border-radius: 16px; padding: 32px; box-shadow: 0 2px 10px rgba(60,40,10,.05); }
.opt3 .opt3-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 16px; }
.opt3 .opt3-grid input, .opt3 .opt3-grid textarea { width: 100%; border: 1px solid #dcd2bf; border-radius: 10px; background: #fff; padding: 12px 14px; font-size: 16px; color: var(--ink); }
.opt3 .opt3-grid textarea { grid-column: 1 / -1; resize: vertical; }
.opt3 .opt3-grid input:focus, .opt3 .opt3-grid textarea:focus { outline: none; border-color: var(--ink); }
.opt3 .opt3-formbox .btn-5 { margin-top: 16px; }

@media (max-width: 991px) {
	.opt3 .opt3-hero { grid-template-columns: 1fr; gap: 0; }
	.opt3 .opt3-hero_text { padding: 32px 24px; order: 2; }
	.opt3 .opt3-hero_img { min-height: 240px; }
	.opt3 .opt3-who { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.opt3 .opt3-terms { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.opt3 .opt3-bottom { grid-template-columns: 1fr; }
	.opt3 .opt3-section { margin-top: 48px; }
}
@media (max-width: 640px) {
	.opt3 .opt3-h1 { font-size: 30px; }
	.opt3 .opt3-h2 { font-size: 23px; }
	.opt3 .opt3-lead { font-size: 17px; }
	.opt3 .opt3-who, .opt3 .opt3-terms { grid-template-columns: 1fr 1fr; gap: 10px; }
	.opt3 .opt3-who > div, .opt3 .opt3-terms > div { padding: 16px; }
	.opt3 .opt3-who b, .opt3 .opt3-terms b { font-size: 16px; }
	.opt3 .opt3-who span, .opt3 .opt3-terms span { font-size: 14px; }
	.opt3 .opt3-covers button { flex-basis: 132px; }
	.opt3 .opt3-grid { grid-template-columns: 1fr; }
	.opt3 .opt3-formbox { padding: 22px; }
}

/* /opt/ v3.1: ровная сетка 4 колонки, подборки плитками 3 в ряд */
.opt3 .opt3-who { grid-template-columns: repeat(4, minmax(0,1fr)); }
.opt3 .opt3-covers { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; overflow: visible; padding: 0; margin-bottom: 32px; }
.opt3 .opt3-covers button { flex: none; flex-direction: row !important; align-items: center; gap: 14px; padding: 8px !important; min-height: 72px; }
.opt3 .opt3-cover_img { flex: 0 0 56px; width: 56px; height: 56px; aspect-ratio: auto; border-radius: 10px; }
.opt3 .opt3-cover_name { padding: 0 8px 0 0; font-size: 15px; }
.opt3 .opt3-contacts a { font-weight: 700; }
.opt3 .opt3-note { font-size: 15px; }
@media (max-width: 991px) { .opt3 .opt3-who { grid-template-columns: repeat(2, minmax(0,1fr)); } .opt3 .opt3-covers { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 640px) { .opt3 .opt3-covers { grid-template-columns: 1fr 1fr; gap: 8px; } .opt3 .opt3-cover_img { flex-basis: 44px; width: 44px; height: 44px; } .opt3 .opt3-cover_name { font-size: 13px; } }

/* Страница «Спасибо»: спокойнее и ровнее */
.sp-thanks { padding-top: 28px; }
.sp-thanks .sp-progress { margin: 0 0 24px; }
.sp-thanks_box { padding: 40px !important; }
.sp-thanks_icon { width: 44px; height: 44px; margin-bottom: 20px; }
.sp-thanks_icon svg { width: 22px; height: 22px; }
.sp-thanks .sp-checkout_title { font-size: 34px !important; line-height: 1.15 !important; margin: 0 0 12px !important; }
.sp-thanks .sp-checkout_lead { font-size: 18px; line-height: 1.55; margin: 0 0 28px; color: #2b3540; }
.sp-thanks_steps { list-style: none; counter-reset: t; margin: 0 0 24px !important; padding: 20px 0 0; border-top: 1px solid #ece3d1; }
.sp-thanks_steps li { counter-increment: t; position: relative; padding: 0 0 0 36px; margin: 0 0 14px; font-size: 16px; line-height: 1.5; color: #2b3540; }
.sp-thanks_steps li::before { content: counter(t); position: absolute; left: 0; top: 0; width: 24px; height: 24px; border-radius: 50%; background: #fdf1d8; color: #01101a; font-size: 13px; font-weight: 700; line-height: 24px; text-align: center; }
.sp-thanks .sp-box_hint { margin: 0; font-size: 15px; color: #5b6470; }
.sp-thanks_actions { align-items: center; gap: 24px; margin-top: 28px; }
.sp-thanks_actions .btn-5 { margin: 0; }
.sp-thanks_call { font-size: 16px; color: #5b6470; }
.sp-thanks_call a { color: #01101a; font-weight: 700; text-decoration: none; white-space: nowrap; }
.sp-thanks .sp-summary_row { display: flex; justify-content: space-between; gap: 16px; align-items: baseline; }
.sp-thanks .sp-summary_row span:last-child { text-align: right; }
.sp-thanks .sp-thanks_grid { margin-bottom: 64px; }
@media (max-width: 640px) {
	.sp-thanks_box { padding: 24px !important; }
	.sp-thanks .sp-checkout_title { font-size: 26px !important; }
	.sp-thanks .sp-checkout_lead { font-size: 16px; }
	.sp-thanks_actions { gap: 14px; }
	.sp-thanks_actions a.btn-5 { width: 100%; text-align: center; }
}
.sp-nowrap { white-space: nowrap; }
.sp-thanks .sp-checkout_lead b, .sp-thanks .sp-checkout_lead .sp-nowrap { font-weight: 700; color: #01101a; }
.sp-thanks_call { display: block; margin: 16px 0 0; font-size: 15px; }
.sp-thanks_steps li { max-width: 34em; }

/* Согласие в формах CF7 */
.sp-cf7-consent { margin: 10px 0 14px; font-size: 13px; line-height: 1.4; color: #5b6470; }
.sp-cf7-consent .wpcf7-list-item { margin: 0; }
.sp-cf7-consent label { display: flex; gap: 8px; align-items: flex-start; cursor: pointer; }
.sp-cf7-consent input[type=checkbox] { margin-top: 2px; flex: 0 0 auto; }
.sp-cf7-consent a { color: inherit; text-decoration: underline; }
.sp-cookie[hidden] { display: none !important; }

/* Кнопки первого экрана: текст ровно по центру.
   У Gotham Pro буквы сидят чуть выше середины строки – выравниваем flex и сдвигаем на 1–2 px вниз */
.sp-hero-cats a { display: inline-flex; align-items: center; justify-content: center; height: 36px; line-height: 1; padding: 2px 15px 0; }
.sp-hero-search button { display: inline-flex; align-items: center; justify-content: center; line-height: 1; padding-top: 2px; }
@media (max-width: 575.98px) { .sp-hero-cats a { height: 32px; padding: 2px 12px 0; } }

/* CF7: красные подсказки – только после попытки отправить форму */
.wpcf7-form.init .wpcf7-not-valid-tip { display: none; }
.wpcf7-form.init .wpcf7-not-valid { border-color: inherit !important; box-shadow: none !important; }

/* /opt/: картинка в первом блоке выходит за верх рамки, фон фото растворяется в фоне страницы */
.opt3 .opt3-hero { overflow: visible; margin-top: 100px; }
.opt3 .opt3-hero_img { position: relative; align-self: stretch; min-height: 420px; background: none; }
.opt3 .opt3-hero_img img { position: absolute; right: 0; bottom: -4px; height: calc(100% + 120px); width: auto; max-width: none; max-height: none; object-fit: contain; object-position: bottom right; mix-blend-mode: multiply; }
@media (max-width: 991px) {
	.opt3 .opt3-hero { margin-top: 70px; }
	.opt3 .opt3-hero_img { min-height: 260px; }
	.opt3 .opt3-hero_img img { right: 50%; transform: translateX(50%); height: calc(100% + 70px); max-width: 100%; }
}

/* Шапка при прокрутке: плотный тёмный фон, ничего не просвечивает */
.header_head.fix-nav, .fix-nav-wrap.fix-nav { background: #0e0e10 !important; -webkit-backdrop-filter: none; backdrop-filter: none; }
@media (max-width: 767.98px) {
	.fix-nav-wrap.fix-nav { padding-top: 2px !important; padding-bottom: 2px !important; box-shadow: 0 4px 14px rgba(0, 0, 0, .25); }
	/* Верхняя полоса на телефоне: без почты, она не помещается */
	.header_top .header_email { display: none !important; }
}

/* ===== fix-82: удобство на телефоне и доверие (23.10.2026) ===== */
/* Кнопки мессенджеров вместо мелких ссылок */
.sp-msgs { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; }
.sp-msgs_label { flex: 1 0 100%; font-size: 14px; color: #555; }
.sp-msg { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 18px; border-radius: 999px; border: 1.5px solid currentColor; font-size: 15px; font-weight: 600; text-decoration: none !important; background: #fff; }
.sp-msg--wa { color: #128c4a !important; }
.sp-msg--tg { color: #1d86c4 !important; }
.sp-msg--phone { color: #01101a !important; border-color: #fbcf7b; background: #fbcf7b; }
.sp-msg:hover { filter: brightness(.95); }
/* Иконка поиска: крупнее зона нажатия, вид прежний */
.header_search .search-icon { box-sizing: content-box; padding: 8px; margin: -8px; }
/* Кнопка корзины в карточке товара – не меньше 44 точек на телефоне */
@media (max-width: 767.98px) {
	a.sp-card_buy, .sp-card_buy.button { height: 44px; min-width: 44px; }
	.sp-hero-cats a { height: 38px; }
}
/* Пустая выдача поиска */
.sp-noresults { margin: 18px 0 30px; padding: 22px 24px; background: #fff; border-radius: 16px; box-shadow: 0 6px 24px rgba(1, 16, 26, .06); }
.sp-noresults_lead { font-size: 17px; margin: 0 0 14px; }
.sp-noresults_contacts { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.sp-noresults_cats-head { font-size: 14px; color: #666; margin: 0 0 8px; }
.sp-noresults_cats { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.sp-noresults_cats a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 999px; border: 1px solid #e8dcc4; color: #01101a !important; background: #fffaf0; font-size: 14px; }

/* ===== fix-84: фото товара не сдвигает страницу при загрузке ===== */
.single-product-container_carousel-item img { max-width: 100%; height: auto; }
/* Галочка согласия – под полями, над кнопкой */
.sp-consent-wrap--inline { flex: 1 0 100%; margin: 0 !important; }
