@charset "UTF-8";

#footer-bottom .footer-address-title,
#footer-bottom .footer-contacts-title {
	color: #bca480;
}

#footer-bottom .footer-address-content,
#footer-bottom .footer-contacts-body {
	color: #fff;
}

#footer-bottom .footer-address-content h4,
#footer-bottom .footer-address-content p {
	color: #fff;
}

#footer-bottom .footer-address-content a,
#footer-bottom .footer-contacts-body a,
#footer-bottom .footer-contacts-line a {
	color: #585c62;
}

#footer .footer-policy-link {
	color: #bca480;
	text-decoration: none;
}

#footer .footer-policy-link:hover {
	text-decoration: underline;
}
#cards .row {
    display: flex;
    flex-wrap: wrap;
}
h1, h2, h3, h4, h5, h6 {
    line-height: 1.2;
}
#services p{
	font-size: 16px;text-align: left;
}
/* ===== Services (ACF block / sabout.php) ===== */
#services.theme-services{
	padding: 40px 0 10px !important;
}
#services.theme-services.theme-services--bg{
	background: #f7f7f7 !important;
	margin-bottom: 25px !important;
}

.theme-services .theme-services__top {
	margin-bottom: 22px;
}
.metal-card ul, .equipment-card ul, .material-list {
    margin: 0;
    padding-left: 18px;
}
.theme-services .theme-service-card {
	background: #fff;
    border: 1px solid #ece7df;
    margin-bottom: 30px;
    padding: 28px 25px;
    min-height: calc(100% - 30px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.04);
    transition: all 0.25s ease;
}

.theme-services .theme-service-card:hover {
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.06);
	transform: translateY(-2px);
}

.theme-services .theme-service-card .icon-box {
	width: 54px;
	height: 54px;
	margin-bottom: 18px;
	border: 1px solid #bca480;
	color: #bca480;
	text-align: center;
	line-height: 54px;
	font-size: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.theme-services .theme-service-card .icon-box img {
	display: block;
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
}
.highlight-panel {
    background: #f8f6f2;
    border-left: 4px solid #bca480;
    padding: 28px 30px;
    margin: 30px 0 10px;
}
.theme-services .theme-service-card h4,
.theme-services .theme-service-card .theme-service-card__title {
	margin: 0 0 15px;
	color: #333;
	font-weight: 700;
}
.theme-service-card__value{
	display: block;
    margin-bottom: 10px;
    color: #bca480;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
}
.theme-services .theme-service-card__content ul,
.theme-services .theme-service-card ul {
	padding-left: 18px;
	margin-bottom: 0;
}

.theme-services .theme-service-card__content li,
.theme-services .theme-service-card li {
	margin-bottom: 9px;
	line-height: 1.65;
	color: #606060;
}

.theme-services .theme-service-card__content li:last-child,
.theme-services .theme-service-card li:last-child {
	margin-bottom: 0;
}

/* ===== Equipment (ACF block / equipment.php) ===== */
.theme-equipment .theme-equipment__top {
	margin-bottom: 22px;
}

.theme-equipment .theme-equipment__cards {
	display: flex;
	flex-wrap: wrap;
}

.theme-equipment .theme-equipment__cards::before,
.theme-equipment .theme-equipment__cards::after {
	display: none;
	content: none;
}
.row.theme-services__cards {
    display: flex;
    flex-wrap: wrap;
}
.theme-equipment .theme-equipment__cards > [class*="col-"] {
	float: none;
}
 .service-card .label-line {
    display: block;
    margin-bottom: 8px;
    color: #bca480;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: .05em;
}
.theme-equipment .equipment-card,
.theme-equipment .theme-equipment-card {
	background: #fff;
	border: 1px solid #ece7df;
	margin-bottom: 30px;
	padding: 0 0 20px;
	min-height: 0;
	overflow: hidden;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.04);
	transition: all 0.25s ease;
}

.theme-equipment .equipment-card:hover,
.theme-equipment .theme-equipment-card:hover {
	box-shadow: 0 14px 30px rgba(0, 0, 0, 0.06);
	transform: translateY(-2px);
}

.theme-equipment .equipment-card .equipment-photo,
.theme-equipment .theme-equipment-card .equipment-photo {
	width: 100%;
	height: 190px;
	object-fit: cover;
	display: block;
	background: #f7f4ef;
}

.theme-equipment .equipment-card h4,
.theme-equipment .theme-equipment-card h4 {
	padding: 18px 20px 0;
	margin: 0;
	font-size: 16px;
	line-height: 1.45;
	color: #333;
	font-weight: 700;
}

.theme-equipment .equipment-card p,
.theme-equipment .theme-equipment-card p {
	padding: 8px 20px 0;
	margin: 0;
	color: #777;
	line-height: 1.55;
}

/* ===== Contact form CTA (ACF block / bform-x.php) ===== */
.theme-bform-x .feedback-panel,
.theme-bform-x .theme-feedback-panel {
	min-height: 0;
	background: #f8f6f2;
	border: 1px solid #e5d8c7;
	margin-bottom: 30px;
	padding: 28px 25px;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.04);
	transition: all 0.25s ease;
}

.theme-bform-x .feedback-panel h3,
.theme-bform-x .feedback-panel h2,
.theme-bform-x .feedback-panel h4 {
	margin-top: 0;
	color: #333;
	font-weight: 700;
}

.theme-bform-x .feedback-panel p {
	color: #555;
	font-size: 16px;
	line-height: 1.7;
}

.theme-bform-x .feedback-panel .btn {
	margin-top: 10px;
	margin-right: 10px;
}

.theme-bform-x .theme-bform-x__actions .btn:last-child {
	margin-right: 0;
}

/* Макет: кнопки под текстом (knopki_snizu) */
.theme-bform-x .theme-bform-x--stacked {
	display: block;
}

.theme-bform-x .theme-bform-x--stacked h3,
.theme-bform-x .theme-bform-x--stacked h2,
.theme-bform-x .theme-bform-x--stacked h4 {
	margin-bottom: 12px;
}

.theme-bform-x .theme-bform-x--stacked p {
	margin-bottom: 0;
}

.theme-bform-x .theme-bform-x__actions--bottom {
	margin-top: 22px;
	text-align: left;
}

.theme-bform-x .theme-bform-x__actions--bottom .btn {
	margin-top: 0;
}

@media (max-width: 767px) {
	.theme-bform-x .theme-bform-x__actions {
		text-align: left !important;
		margin-top: 18px;
	}

	.theme-bform-x .theme-bform-x__actions .btn {
		display: inline-block;
		margin-right: 10px;
	}

	.theme-bform-x .theme-bform-x__actions--bottom .btn {
		margin-bottom: 10px;
	}
}
/* Хлебные крошки: разметка в template-parts/global/breadcrumbs.php */
.theme-breadcrumbs-h4 {
	font-size: inherit;
	font-weight: inherit;
	line-height: 1.4;
	margin: 0;
	white-space: nowrap;
	overflow: hidden;
	position: relative;
	padding-right: 42px;
}

.theme-breadcrumbs-h4::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 42px;
	height: 100%;
	pointer-events: none;
	background: linear-gradient(to right, rgba(255, 255, 255, 0), #fff 85%);
} 

.theme-breadcrumbs-sep {
	white-space: pre;
}
section.cards-rep.cards-rep--nested-product-cat .row {
    display: flex;
    flex-wrap: wrap;
}
.theme-breadcrumbs-link--parent {
	color: inherit;
	text-decoration: underline;
}

.theme-breadcrumbs-link--parent:hover,
.theme-breadcrumbs-link--parent:focus {
	color: inherit;
	text-decoration: underline;
}

.theme-breadcrumbs-link--current,
.theme-breadcrumbs-text--current {
	color: #bca480;
	text-decoration: underline;
}

.theme-breadcrumbs-link--current:hover,
.theme-breadcrumbs-link--current:focus {
	color: #bca480;
	text-decoration: underline;
}

/* В шапке страницы Woo не делим блок на 2 колонки по 50% */
.woocommerce-page .page-header .col-sm-6,
.post-type-archive-product .page-header .col-sm-6,
.tax-product_cat .page-header .col-sm-6 {
	width: 100%;
	float: none;
}

/* Жесткий fallback: если в page-header осталась bootstrap-сетка col-sm-6 */
.page-header .col-sm-6 {
	width: 100% !important;
	float: none !important;
}

section.simple_text {
	font-size: 13px;
	color: black;
	letter-spacing: normal;
	text-align: justify;
	margin-bottom: 25px;
}
section#faq {
  margin-top: 40px;
}

@media (max-width: 767px) {
	.faq-block .panel-title {
		margin: 0;
	}

	.faq-block .panel-title a,
	.faq-block .panel-title a:focus {
		display: flex;
		align-items: flex-start;
		gap: 12px;
		padding: 14px 0;
		font-size: 12px;
		line-height: 1.55;
	}

	.faq-block .panel-title a:before {
		flex: 0 0 14px;
		margin: 0;
		font-size: 18px;
		line-height: 1.55;
		text-align: center;
	}
}

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eee;
}

section.phero {
	margin-bottom: 40px;
}

@media (max-width: 768px) {
	section.phero {
		margin-bottom: 14px;
		margin-top: 15px;
	}
}

.publ-block {
	padding: 20px 0;
}

.publ-block__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 24px;
}

.publ-block__item {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 10px 12px;
	background: #f6f6f7;
	border-radius: 8px;
}

.publ-block__logo {
	flex: 0 0 54px;
	width: 54px;
}

.publ-block__logo img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.publ-block__content {
	min-width: 0;
	flex: 1;
}

.publ-block__title {
	margin: 0;
	font-size: 13px;
	line-height: 1.2;
	font-weight: 500;
	color: #000000;
	text-transform: none;
	letter-spacing: 1.3px;
}

.publ-block__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 8px;
}

.publ-block__actions {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-left: 8px;
	flex-shrink: 0;
}

.publ-block__icon-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	border: 1px solid #d0d4dd;
	background: #fff;
	color: #777;
	text-decoration: none;
	font-size: 13px;
}

.publ-block__icon-link--pdf {
	border-color: #e0b4b4;
	color: #b54141;
}

.publ-block__icon-link:hover {
	background: #f0f2f7;
	color: #333;
}

.publ-block__icon-link--pdf:hover {
	background: #f9e9e9;
	color: #8f2626;
}

@media (max-width: 991px) {
	.publ-block__list {
		grid-template-columns: 1fr;
	}
}

/* Заголовок каталога Woo: та же сетка и .headline.style-3, что в template-parts/blocks/phero.php */
.phero--woocommerce-loop .woocommerce-products-header {
	margin: 0;
	padding: 0;
	border: 0;
}

.phero--woocommerce-loop .headline.style-3 .woocommerce-products-header__title {
	margin-top: 0;
	font-weight: 700;
}

.phero--woocommerce-loop .headline.style-3 .term-description,
.phero--woocommerce-loop .headline.style-3 .page-description {
	margin-top: 12px;
	text-align: center;
	max-width: 56rem;
	margin-left: auto;
	margin-right: auto;
}

.woocommerce-loop-controls {
	display: flex;
	justify-content: flex-end;
}

/* Сортировку временно скрываем, но оставляем в разметке внутри контейнера */
.woocommerce-loop-controls .woocommerce-ordering {
	display: none;
}

.cards-block.cards-block--product-cat-children .services-boxes.style-1 {
	height: 100%;
}

.cards-block.cards-block--product-cat-children .services-boxes-content {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.cards-block.cards-block--product-cat-children .services-boxes-content > h2 {
	min-height:30px;
	margin-top: 0;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	text-align: center;
}

.cards-block.cards-block--product-cat-children .services-boxes-content > h2 a {
	display: inline-block;
	max-width: 100%;
}

.cards-block.cards-block--product-cat-children .services-boxes-content > a > img,
.cards-block.cards-block--product-cat-children .services-boxes-content > img {
	display: block;
	width: 100%;
	height: 180px;
	object-fit: contain;
	object-position: center;
}

footer {
	margin-top: 40px;
}
.home footer {
	margin-top: 0;
}
.consultation-box {
			padding: 30px;
			border-radius: 8px;
		}

		.consultation-form .form-control {
			height: 44px;
			border-radius: 4px;
			box-shadow: none;
			margin-bottom: 15px;
		}

		.consultation-form textarea.form-control {
			height: auto;
			resize: vertical;
		}

		.consultation-image {
			height: 100%;
			display: flex;
			align-items: center;
			justify-content: center;
			min-height: 320px;
		}

		.consultation-image img {
			max-width: 100%;
			max-height: 340px;
			object-fit: contain;
		}

		@media (max-width: 991px) {
			.consultation-image {
				margin-top: 25px;
				min-height: auto;
			}
		}
		.hero-title {
			  color: #111111;
			  text-transform: uppercase;
			  font-weight: 800;
			  letter-spacing: 0.05em;
			  text-shadow:
				-2px -2px 0 rgba(255, 255, 255, 0.95),
				 2px -2px 0 rgba(255, 255, 255, 0.95),
				-2px  2px 0 rgba(255, 255, 255, 0.95),
				 2px  2px 0 rgba(255, 255, 255, 0.95),
				 0 2px 6px rgba(0, 0, 0, 0.28);
		}

		.company-section{
			color:#fff;
			max-width:1380px;
			margin:0 auto;
			font-size:15px;
			line-height:1.45;
		}

		.company-section h2{
			margin:0 0 14px;
			font-size:32px;
			line-height:1.1;
			color:#bca480;
		}

		.company-section h3{
			margin:0 0 10px;
			font-size:20px;
			line-height:1.2;
			color:#fff;
		}

		.company-section p{
			margin:0 0 10px;
		}

		.company-section .company-layout{
			display:grid;
			grid-template-columns:1.45fr 0.85fr;
			gap:22px;
			align-items:start;
		}

		.company-section .company-main{
			min-width:0;
		}

		.company-section .company-intro{
			margin-bottom:14px;
		}

		.company-section .timeline{
			margin:0;
			display:grid !important;
			grid-template-columns:repeat(2, minmax(0, 1fr));
			gap:10px 12px;
			width:100%;
		}

		.company-section .timeline-item{
			display:block !important;
			background:rgba(0,0,0,0.22);
			border-left:3px solid #bca480;
			padding:10px 12px;
			border-radius:10px;
			font-size:14px;
			line-height:1.38;
			color:#fff;
			box-sizing:border-box;
		}

		.company-section .timeline-item b{
			color:#e0c79d;
		}

		@media (max-width: 1100px){
			.company-section .timeline{
				grid-template-columns:1fr;
			}
		}

		.company-section .company-side{
			display:grid;
			gap:14px;
			align-items:start;
		}

		.company-section .company-image img{
			display:block;
			width:100%;
			height:250px;
			object-fit:cover;
			border-radius:14px;
		}

		.company-section .box{
			background:rgba(0,0,0,0.28);
			border-radius:14px;
			padding:16px 18px;
		}

		.company-section .btnn{
			margin-top:6px;
			display:inline-block;
		}

		@media (max-width: 1100px){
			.company-section .company-layout{
				grid-template-columns:1fr;
			}

			.company-section .timeline{
				grid-template-columns:1fr;
			}

			.company-section .company-image img{
				height:auto;
			}
		}

		@media (max-width: 980px){
			.company-section h2{
				font-size:28px;
			}

			.company-section h3{
				font-size:18px;
			}
		}
		
		/* =========================
		HEADER
		========================= */

		.site-header {
			padding: 12px 0 10px;
		}

		.site-header .header-row {
			display: flex;
			align-items: flex-end;
			flex-wrap: wrap;
		}

		/* Левая колонка */
		.site-header .header-logo-col {
			display: flex;
			align-items: flex-end;
		}

		/* Логотип без лишних зазоров */
		.site-header .site-logo,
		.site-header #logo {
			display: block;
			margin: 0;
			padding: 0;
			line-height: 0;
		}

		.site-header .site-logo img,
		.site-header #logo img,
		.site-header .logo1 {
			display: block;
			margin: 0;
			padding: 0;
			max-width: 100%;
			height: auto;
		}

		/* Правая колонка */
		.site-header .header-menu-col {
			display: flex;
			flex-direction: column;
			justify-content: flex-end;
			align-items: flex-end;
		}

		/* Верхняя строка: адрес + телефон + почта + иконки */
		.site-header .header-topline {
			width: 100%;
			margin: 0 0 10px 0;
			padding: 0;
			display: flex;
			justify-content: flex-end;
			align-items: center;
			gap: 12px;
		}

		.site-header .header-topline-text {
			display: flex;
			flex-wrap: wrap;
			justify-content: flex-end;
			align-items: center;
			gap: 8px;
			margin-left: auto;
			text-align: right;
			font-size: 14px;
			line-height: 1.35;
			color:#bca480;
		}

		.site-header .header-topline-text .sep {
			opacity: 0.45;
		}

		.site-header .header-topline-text a {
			color: inherit;
			text-decoration: none;
		}

		.site-header .header-topline-text a:hover {
			text-decoration: underline;
		}

		/* Иконки */
		.site-header .header-socials {
			display: flex;
			align-items: center;
			justify-content: flex-end;
			gap: 8px;
			flex-shrink: 0;
		}

		.site-header .header-social-link {
			width: 30px;
			height: 30px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			border: 1px solid rgba(0, 0, 0, 0.15);
			border-radius: 50%;
			text-decoration: none;
			transition: all 0.2s ease;
		}

		.site-header .header-social-link i {
			font-size: 14px;
			line-height: 1;
		}

		.site-header .header-social-link:hover {
			transform: translateY(-1px);
			border-color: rgba(0, 0, 0, 0.35);
		}

		/* Навигация */
		.site-header .header-nav {
			width: 100%;
			margin: 0;
			padding: 0;
		}

		.site-header .header-nav #mobile-menu-button {
			display: none;
		}

		.site-header .scrollspy-menu {
			width: 100%;
			letter-spacing: 2px;
			font-weight: 1000;
		}

		.site-header #menu {
			display: flex;
			justify-content: flex-end;
			align-items: flex-end;
			flex-wrap: wrap;
			margin: 0;
			padding: 0;
			list-style: none;
		}

		.site-header #menu > li {
			float: none;
			margin: 0 0 0 22px;
			padding: 0;
		}

		.site-header #menu > li:first-child {
			margin-left: 0;
		}

		.site-header #menu > li > a {
			display: block;
			margin: 0;
			padding: 6px 0 2px;
			line-height: 1.2;
			text-decoration: none;
			white-space: nowrap;
		}

		/* =========================
		   Планшеты
		   ========================= */
		@media (max-width: 991px) {
			.site-header {
				padding: 10px 0;
			}

			/* Одна линия: логотип | соцсети | бургер; адрес/телефон — только в шторке */
			.site-header .header-row {
				display: flex;
				flex-direction: row;
				flex-wrap: nowrap;
				align-items: center;
				justify-content: space-between;
			}

			.site-header .header-logo-col {
				flex: 1 1 auto;
				min-width: 0;
				width: auto;
				max-width: 58%;
				margin-bottom: 0;
			}

			.site-header .site-logo,
			.site-header #logo {
				text-align: left;
			}

			.site-header .logo1 {
				margin: 0;
				max-height: 52px;
				width: auto;
			}

			.site-header .header-menu-col {
				flex: 0 0 auto;
				width: auto;
				display: flex;
				flex-direction: row;
				flex-wrap: nowrap;
				align-items: center;
				justify-content: flex-end;
				gap: 14px;
			}

			.site-header .header-topline {
				display: contents;
			}

			.site-header .header-topline-text {
				display: none !important;
			}

			.site-header .header-socials {
				margin: 0;
				flex-shrink: 0;
				justify-content: flex-end;
				gap: 6px;
			}

			.site-header .header-social-link {
				width: 34px;
				height: 34px;
			}

			.site-header .header-social-link img {
				max-width: 20px;
				max-height: 20px;
			}

			.site-header #menu > li {
				margin-left: 16px;
			}

			.site-header .scrollspy-menu {
				display: none !important;
			}

			.site-header .header-nav {
				flex: 0 0 auto;
				width: auto !important;
				max-width: none;
				display: flex;
				justify-content: flex-end;
				align-items: center;
			}

			/* Сброс из pages-style.css: float/absolute/margin-top у бургера ломают ряд с мессенджерами */
			.site-header .header-nav #mobile-menu-button {
				position: relative !important;
				top: auto !important;
				right: auto !important;
				left: auto !important;
				float: none !important;
				display: inline-flex !important;
				align-items: center;
				justify-content: center;
				flex-shrink: 0;
				width: 42px;
				height: 42px;
				margin: 0 !important;
				padding: 0 !important;
				border: none;
				border-radius: 10px;
				background: #bca480;
				color: #fff;
				font-size: 18px;
				line-height: 1;
				text-decoration: none;
				box-shadow: 0 2px 10px rgba(188, 164, 128, 0.45);
				transition: background 0.2s ease, transform 0.15s ease;
			}

			.site-header .header-nav #mobile-menu-button:hover,
			.site-header .header-nav #mobile-menu-button:focus {
				background: #a8926e;
				color: #fff;
				outline: none;
			}

			.site-header .header-nav #mobile-menu-button:active {
				transform: scale(0.96);
			}
		}

		@media (min-width: 992px) {
			.mobile-drawer {
				display: none !important;
			}
		}

		body.mobile-drawer-open {
			overflow: hidden;
		}

		/* Шторка меню слева (~90%) */
		.mobile-drawer {
			position: fixed;
			inset: 0;
			z-index: 100050;
			pointer-events: none;
			visibility: hidden;
			transition: visibility 0.35s ease;
		}

		.mobile-drawer.is-open {
			pointer-events: auto;
			visibility: visible;
		}

		.mobile-drawer__backdrop {
			position: absolute;
			inset: 0;
			width: 100%;
			height: 100%;
			margin: 0;
			padding: 0;
			border: 0;
			cursor: pointer;
			background: rgba(35, 40, 45, 0.5);
			-webkit-backdrop-filter: blur(2px);
			backdrop-filter: blur(2px);
			opacity: 0;
			transition: opacity 0.35s ease;
		}

		.mobile-drawer.is-open .mobile-drawer__backdrop {
			opacity: 1;
		}

		.mobile-drawer__panel {
			position: absolute;
			top: 0;
			left: 0;
			width: 90vw;
			max-width: 400px;
			height: 100%;
			background: linear-gradient(180deg, #ffffff 0%, #f7f8fa 100%);
			box-shadow: 12px 0 48px rgba(0, 0, 0, 0.18);
			transform: translateX(-105%);
			transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1);
			display: flex;
			flex-direction: column;
			overflow: hidden;
		}

		.mobile-drawer.is-open .mobile-drawer__panel {
			transform: translateX(0);
		}

		.mobile-drawer__head {
			display: flex;
			align-items: center;
			justify-content: flex-start;
			gap: 12px;
			flex-shrink: 0;
			padding: 10px 12px;
			border-bottom: 1px solid #e8ecf0;
			background: #fff;
		}

		.mobile-drawer__logo {
			flex: 1 1 auto;
			min-width: 0;
			margin: 0;
			padding: 0;
			line-height: 0;
			text-decoration: none;
		}

		.mobile-drawer__logo img {
			display: block;
			max-height: 40px;
			width: auto;
			max-width: 100%;
			height: auto;
			object-fit: contain;
			object-position: left center;
		}

		.mobile-drawer__head .mobile-drawer__close {
			flex-shrink: 0;
			margin-left: auto;
		}

		.mobile-drawer__close {
			width: 40px;
			height: 40px;
			margin: 0;
			padding: 0;
			border: none;
			border-radius: 10px;
			background: #f0f2f5;
			color: #2f3a46;
			font-size: 26px;
			line-height: 1;
			cursor: pointer;
			transition: background 0.2s ease, color 0.2s ease;
		}

		.mobile-drawer__close:hover {
			background: #e2e6ea;
			color: #111;
		}

		.mobile-drawer__body {
			flex: 1 1 auto;
			min-height: 0;
			overflow-y: auto;
			-webkit-overflow-scrolling: touch;
		}

		.mobile-drawer__nav-mount {
			padding: 4px 0 14px;
		}

		.mobile-drawer__contacts {
			flex-shrink: 0;
			padding: 18px 20px 28px;
			border-top: 1px solid #e8ecf0;
			background: #fff;
			box-shadow: 0 -6px 24px rgba(0, 0, 0, 0.04);
		}

		.mobile-drawer__contacts-label {
			margin: 0 0 10px;
			font-size: 11px;
			font-weight: 800;
			letter-spacing: 0.18em;
			text-transform: uppercase;
			color: #bca480;
		}

		.mobile-drawer__contacts-text {
			display: flex;
			flex-direction: column;
			gap: 6px;
			font-size: 14px;
			line-height: 1.55;
			color: #3b3e43;
		}

		.mobile-drawer__contacts-text a {
			color: #bca480;
			text-decoration: none;
		}

		.mobile-drawer__contacts-text a:hover {
			text-decoration: underline;
		}

		.mobile-drawer__contacts-text .header-contact-line {
			display: block;
		}

		/* Список в шторке (клон #mobile-menu) */
		#mobile-menu {
			display: block;
			list-style: none;
			margin: 0;
			padding: 0 16px;
			background: transparent;
		}

		#mobile-menu > li {
			margin: 0;
			padding: 0;
			border-top: 1px solid #edf1f4;
		}

		#mobile-menu > li:first-child {
			border-top: none;
		}

		#mobile-menu > li > a {
			display: block;
			padding: 9px 6px;
			font-size: 13px;
			font-weight: 700;
			letter-spacing: 0.1em;
			text-transform: uppercase;
			color: #2f3a46;
			text-decoration: none;
			transition: color 0.2s ease, padding-left 0.2s ease;
		}

		#mobile-menu > li > a:hover,
		#mobile-menu > li > a:focus {
			color: #bca480;
			padding-left: 10px;
			outline: none;
		}

		#mobile-menu ul {
			list-style: none;
			margin: 0;
			padding: 0 0 4px 14px;
			border-left: 2px solid #bca480;
			margin-left: 6px;
		}

		#mobile-menu ul li a {
			display: block;
			padding: 6px 8px;
			font-size: 15px;
			font-weight: 500;
			letter-spacing: 0.02em;
			text-transform: none;
			color: #5e6975;
		}

		#mobile-menu ul li a:hover {
			color: #bca480;
		}
		
		.pad {
			padding-left: 0px;
			padding-right: 10px;
			padding-bottom: 10px;
		}

		.site-header #menu > li.dropdown > a {
			position: relative;
			padding-right: 18px; /* место под стрелку */
		}

		/* Стрелка вниз */
		.site-header #menu > li.dropdown > a::after {
			content: "";
			position: absolute;
			right: 0;
			top: 50%;
			width: 7px;
			height: 7px;
			margin-top: -5px;

			border-right: 1.5px solid currentColor;
			border-bottom: 1.5px solid currentColor;
			transform: rotate(45deg);
			transition: transform 0.2s ease, margin-top 0.2s ease, opacity 0.2s ease;
			opacity: 0.8;
		}

		/* При наведении стрелка "раскрывается" */
		.site-header #menu > li.dropdown:hover > a::after,
		.site-header #menu > li.dropdown:focus-within > a::after {
			transform: rotate(-135deg);
			margin-top: -1px;
			opacity: 1;
		}
		
		.blog-article {
			margin-bottom: 30px;
		}

		a.blog-article {
			display: block;
			color: inherit;
			text-decoration: none;
		}

		a.blog-article:focus-visible {
			outline: 2px solid #fff;
			outline-offset: 2px;
		}

		a.blog-article:hover .blog-article-overlay h4,
		a.blog-article:focus-visible .blog-article-overlay h4 {
			text-decoration: underline;
		}

		.blog-article-thumbnail {
			position: relative;
			overflow: hidden;
			border-radius: 8px;
			height: 320px;
		}

		.blog-article-thumbnail img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			display: block;
		}

		.blog-article-overlay {
			position: absolute;
			inset: 0;
			display: flex;
			flex-direction: column;
			justify-content: flex-end;
			padding: 18px;
			box-sizing: border-box;
			color: #fff;
			background: linear-gradient(
				to top,
				rgba(0, 0, 0, 0.82) 0%,
				rgba(0, 0, 0, 0.50) 45%,
				rgba(0, 0, 0, 0.15) 75%,
				rgba(0, 0, 0, 0) 100%
			);
		}

		.blog-article-overlay h6 {
			margin: 0 0 8px;
			font-size: 12px;
			line-height: 1.2;
			text-transform: uppercase;
			color: #dddddd;
		}

		.blog-article-overlay h4 {
			margin: 0 0 10px;
			font-size: 18px;
			line-height: 1.25;
			color: #fff;

			display: -webkit-box;
			-webkit-line-clamp: 3;
			-webkit-box-orient: vertical;
			overflow: hidden;
		}

		.blog-article-overlay h4 a {
			color: inherit;
			text-decoration: none;
		}

		.blog-article-overlay h4 a:hover {
			text-decoration: underline;
		}

		.blog-article-overlay p {
			margin: 0;
			font-size: 14px;
			line-height: 1.35;
			color: #f3f3f3;

			display: -webkit-box;
			-webkit-line-clamp: 4;
			-webkit-box-orient: vertical;
			overflow: hidden;
		}

		@media (max-width: 991px) {
			.blog-article-thumbnail {
				height: 280px;
			}

			.blog-article-overlay h4 {
				font-size: 16px;
			}

			.blog-article-overlay p {
				font-size: 13px;
				-webkit-line-clamp: 3;
			}
		}

		@media (max-width: 767px) {
			.blog-article-thumbnail {
				height: 260px;
			}
		}
		
		.testing-lab-section {
			padding-bottom: 30px;
		}

		.testing-cards-row {
			margin-bottom: 10px;
		}

		.testing-cards-row > div {
			margin-bottom: 30px;
		}

		.testing-card {
			position: relative;
			display: block;
			min-height: 295px;
			border: 1px solid #e2e6ea;
			border-radius: 18px;
			overflow: hidden;
			background: #ffffff;
			text-decoration: none;
			box-shadow: 0 2px 14px rgba(0, 0, 0, 0.04);
			transition: all 0.25s ease;
		}

		.testing-card:hover {
			text-decoration: none;
			box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08);
			transform: translateY(-3px);
		}

		/* Фото занимает всю карточку */
		.testing-card__image {
			position: absolute;
			inset: 0;
			width: 100%;
			height: 100%;
			z-index: 1;
		}

		.testing-card__image img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: center center;
			display: block;
		}

		/* Градиент поверх фото */
		.testing-card::before {
			content: "";
			position: absolute;
			inset: 0;
			z-index: 2;
			pointer-events: none;
			background: linear-gradient(
				90deg,
				rgba(255, 255, 255, 0.98) 0%,
				rgba(255, 255, 255, 0.96) 34%,
				rgba(255, 255, 255, 0.88) 48%,
				rgba(255, 255, 255, 0.52) 68%,
				rgba(255, 255, 255, 0.00) 100%
			);
		}

		/* Контент поверх фото и градиента */
		.testing-card__content {
			position: relative;
			z-index: 3;
			width: 58%;
			min-height: 295px;
			padding: 24px 26px 24px 22px;
			background: transparent;
		}

		.testing-card__header {
			display: flex;
			align-items: flex-start;
			margin-bottom: 20px;
		}

		.testing-card__icon {
			flex: 0 0 96px;
			width: 96px;
			height: 96px;
			border: 1px solid #d8dfe6;
			border-radius: 22px;
			background: #fff;
			color: #4c9be8;
			display: flex;
			align-items: center;
			justify-content: center;
			font-size: 42px;
			line-height: 1;
		}

		.testing-card__heading {
			width: calc(100% - 96px);
			padding-left: 20px;
			padding-top: 4px;
		}

		.testing-card__heading h3 {
			margin: 0 0 14px;
			color: #2f3a46;
			font-size: 22px;
			line-height: 1.08;
			font-weight: 700;
			text-transform: uppercase;
		}

		.testing-card__heading h3::after {
			content: "";
			display: block;
			width: 56px;
			height: 3px;
			margin-top: 14px;
			border-radius: 3px;
			background: #4c9be8;
		}

		.testing-card__title--small {
			font-size: 18px !important;
			line-height: 1.15 !important;
		}

		.testing-card__list {
			margin: 0;
			padding: 0;
			list-style: none;
		}

		.testing-card__list li {
			position: relative;
			margin-bottom: 12px;
			padding-left: 26px;
			color: #5e6975;
			font-size: 17px;
			line-height: 1.3;
		}

		.testing-card__list li:last-child {
			margin-bottom: 0;
		}

		.testing-card__list li::before {
			content: "\f058";
			position: absolute;
			top: 1px;
			left: 0;
			font-family: "Font Awesome 5 Free";
			font-weight: 900;
			font-size: 14px;
			color: #5aa6ea;
		}

		.testing-card__list--compact li {
			font-size: 16px;
			line-height: 1.28;
			margin-bottom: 10px;
		}

		.testing-card__wysiwyg > ul {
			margin: 0;
			padding: 0;
			list-style: none;
		}

		.testing-card__wysiwyg > ul > li {
			position: relative;
			margin-bottom: 12px;
			padding-left: 26px;
			color: #5e6975;
			font-size: 17px;
			line-height: 1.3;
		}

		.testing-card__wysiwyg > ul > li:last-child {
			margin-bottom: 0;
		}

		.testing-card__wysiwyg > ul > li::before {
			content: "\f058";
			position: absolute;
			top: 1px;
			left: 0;
			font-family: "Font Awesome 5 Free";
			font-weight: 900;
			font-size: 14px;
			color: #5aa6ea;
		}

		.profits .testing-stats {
			margin-top: 28px;
		}

		.testing-stats {
			border: 1px solid #e2e6ea;
			border-radius: 18px;
			background: #ffffff;
			overflow: hidden;
			box-shadow: 0 2px 14px rgba(0, 0, 0, 0.04);
		}

		.testing-stats__item {
			border-right: 1px solid #edf1f4;
		}

		.testing-stats__item:last-child {
			border-right: none;
		}

		.testing-stat {
			min-height: 120px;
			display: flex;
			align-items: center;
			padding: 28px 26px;
		}

		.testing-stat__icon {
			flex: 0 0 72px;
			color: #4c9be8;
			font-size: 54px;
			line-height: 1;
		}

		.testing-stat__text {
			padding-left: 18px;
		}

		.testing-stat__text strong {
			display: block;
			color: #2f3a46;
			font-size: 32px;
			line-height: 1;
			font-weight: 700;
			margin-bottom: 8px;
		}

		.testing-stat__text span {
			display: block;
			color: #5e6975;
			font-size: 14px;
			line-height: 1.3;
			text-transform: uppercase;
		}

		@media (max-width: 1199px) {
			.testing-card {
				min-height: 275px;
			}

			.testing-card__content {
				min-height: 275px;
				width: 60%;
				padding: 22px 22px 22px 18px;
			}

			.testing-card__icon {
				flex: 0 0 84px;
				width: 84px;
				height: 84px;
				font-size: 36px;
			}

			.testing-card__heading {
				width: calc(100% - 84px);
				padding-left: 16px;
			}

			.testing-card__heading h3 {
				font-size: 20px;
			}

			.testing-card__list li {
				font-size: 15px;
			}

			.testing-card__title--small {
				font-size: 16px !important;
			}
		}

		@media (max-width: 991px) {
			.testing-card {
				min-height: 250px;
			}

			.testing-card__content {
				width: 63%;
				min-height: 250px;
			}

			.testing-stat {
				padding: 24px 18px;
			}

			.testing-stat__icon {
				flex: 0 0 56px;
				font-size: 42px;
			}

			.testing-stat__text strong {
				font-size: 26px;
			}

			.testing-stat__text span {
				font-size: 12px;
			}
		}

		@media (max-width: 767px) {
			.headline.style-3 h5 {
				margin-bottom: 0;
				margin-top: 10px;
				color: #bca480;
			}

			.testing-cards-row > div {
				margin-bottom: 20px;
			}

			.testing-card {
				min-height: 0;
			}

			.testing-card::before {
				display: none;
			}

			.testing-card__image {
				position: relative;
				inset: auto;
				width: 100%;
				height: 220px;
			}

			.testing-card__content {
				width: 100%;
				min-height: 0;
				padding: 20px 18px;
				background: #ffffff;
			}

			.testing-card__header {
				margin-bottom: 16px;
			}

			.testing-card__icon {
				flex: 0 0 72px;
				width: 72px;
				height: 72px;
				font-size: 30px;
				border-radius: 18px;
			}

			.testing-card__heading {
				width: calc(100% - 72px);
				padding-left: 14px;
			}

			.testing-card__heading h3 {
				font-size: 14px;
			}

			.testing-card__heading h3::after {
				width: 48px;
				margin-top: 10px;
			}

			.testing-card__title--small {
				font-size: 16px !important;
			}

			.testing-card__list li,
			.testing-card__list--compact li {
				font-size: 15px;
			}

			.testing-card__wysiwyg > ul > li {
				position: relative;
				margin-bottom: 5px;
				padding-left: 26px;
				color: #5e6975;
				font-size: 14px;
				line-height: 1.3;
			}

			/* Преимущества: две колонки на мобильных, без обрезки текста */
			.profits .testing-stats {
				margin-top: 16px;
			}

			.profits .testing-stats__item {
				border-right: 1px solid #edf1f4;
				border-bottom: 1px solid #edf1f4;
			}

			.profits .testing-stats__item:nth-child(2n) {
				border-right: none;
			}

			.profits .testing-stats__item:nth-last-child(-n+2) {
				border-bottom: none;
			}

			.profits .testing-stat {
				min-height: 0;
				padding: 10px 8px;
			}

			.profits .testing-stat__icon {
				flex: 0 0 36px;
				width: 36px;
				font-size: 26px;
				line-height: 1;
				text-align: center;
			}

			.profits .testing-stat__icon i {
				font-size: inherit;
				line-height: inherit;
				vertical-align: middle;
			}

			.profits .testing-stat__icon img {
				display: block;
				max-width: 32px;
				max-height: 32px;
				width: auto;
				height: auto;
				margin: 0 auto;
			}

			.profits .testing-stat__text {
				min-width: 0;
				padding-left: 8px;
			}

			.profits .testing-stat__text strong {
				font-size: 20px;
				margin-bottom: 4px;
			}

			.profits .testing-stat__text span {
				font-size: 10px;
				line-height: 1.25;
				word-wrap: break-word;
				overflow-wrap: break-word;
				hyphens: auto;
			}

			.testing-stat {
				min-height: 100px;
			}
		}

		@media (max-width: 480px) {
			.testing-card__image {
				height: 180px;
			}

			.profits .testing-stat {
				padding: 8px 6px;
			}

			.profits .testing-stat__icon {
				flex-basis: 32px;
				width: 32px;
				font-size: 22px;
			}

			.profits .testing-stat__icon img {
				max-width: 28px;
				max-height: 28px;
			}

			.profits .testing-stat__text {
				padding-left: 6px;
			}

			.profits .testing-stat__text strong {
				font-size: 18px;
			}

			.profits .testing-stat__text span {
				font-size: 9px;
			}
		}

		/* ========== Мобильная вёрстка: слайдер героя, карточки, новости, партнёры ========== */
		@media (max-width: 767px) {
			.section-6-custom,
			#section-6-custom {
				height: auto !important;
				min-height: 0;
				/* Не даём проступить белому фону страницы между кадрами анимации */
				background-color: #252a30;
			}

			.section-6-custom .carousel,
			#section-6-custom .carousel {
				overflow: hidden;
				position: relative;
				background-color: #252a30;
			}

			/*
			 * Жёсткая высота области слайда (px, не vh) — без скачков при появлении/скрытии адресной строки
			 * и без схлопывания .item в position:absolute (Bootstrap .next/.prev).
			 */
			.section-6-custom .carousel-inner,
			#section-6-custom .carousel-inner {
        position: relative;
        height: 270px !important;
        min-height: 270px !important;
        max-height: 270px !important;
        overflow: hidden !important;
        background-color: #252a30;
			}

			.section-6-custom .carousel-inner > .item,
			#section-6-custom .carousel-inner > .item {
				position: relative;
				height: 100% !important;
				min-height: 100% !important;
				max-height: 100% !important;
				background: #252a30;
				/* Плавный сдвиг как в Bootstrap (next: новый слайд слева направо «въезжает»). Подложка #252a30 выше — без белой вспышки. */
				-webkit-transition: left 0.55s ease-in-out;
				-o-transition: left 0.55s ease-in-out;
				transition: left 0.55s ease-in-out;
			}

			.section-6-custom .carousel-inner > .item.next,
			.section-6-custom .carousel-inner > .item.prev,
			#section-6-custom .carousel-inner > .item.next,
			#section-6-custom .carousel-inner > .item.prev {
				height: 100% !important;
				min-height: 100% !important;
			}

			/* Фон: целиком в кадре (contain), упор в правую часть — без сильного «зума» cover */
			.section-6-custom .carousel-inner > .item > img:first-of-type:not(.hero-slide-img-right),
			#section-6-custom .carousel-inner > .item > img:first-of-type:not(.hero-slide-img-right) {
				position: absolute;
        left: 0;
        top: 0;
        width: auto;
        height: 100%;
        z-index: 0;
        object-fit: cover;
        object-position: right;
			}

			/* Текст над нижней полосой с точками навигации */
			.section-6-custom .carousel-caption,
			#section-6-custom .carousel-caption {
				position: absolute;
				left: 0 !important;
				right: 0 !important;
				top: auto;
				bottom: 36px;
				width: 100%;
				max-width: 100%;
				padding: 12px 16px 12px;
				margin: 0;
				text-align: center;
				background: rgba(47, 58, 70, 0.55);
				z-index: 2;
				box-sizing: border-box;
			}

			.section-6-custom .hero-slide-heading,
			.section-6-custom .hero-title,
			.section-6-custom .x111122,
			#section-6-custom .hero-slide-heading,
			#section-6-custom .hero-title {
				font-size: 13px !important;
				line-height: 1.35 !important;
				letter-spacing: 0.06em !important;
				font-weight: 700 !important;
				color: #fff !important;
				text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
				margin: 0 0 8px;
			}

			.section-6-custom .hero-slide-desc,
			#section-6-custom .hero-slide-desc {
				font-size: 13px;
				line-height: 1.4;
				color: rgba(255, 255, 255, 0.92);
				margin-bottom: 10px;
			}

			.section-6-custom .carousel-caption .btnn,
			#section-6-custom .carousel-caption .btnn {
				margin-top: 4px;
				position: relative;
				z-index: 1;
			}

			/* Доп. картинка справа — поверх фона, не отдельным блоком под слайдом */
			.section-6-custom .hero-slide-img-right,
			#section-6-custom .hero-slide-img-right {
				position: absolute !important;
				right: 0;
				top: 12%;
				width: 44%;
				max-width: 200px;
				height: auto;
				max-height: 42%;
				margin: 0;
				padding: 0;
				object-fit: contain;
				object-position: right center;
				background: transparent;
				z-index: 1;
				pointer-events: none;
			}

			.section-6-custom .carousel-control,
			#section-6-custom .carousel-control {
				width: 36px;
				opacity: 0.65;
				z-index: 3;
			}

			.section-6-custom .carousel-control .fa,
			#section-6-custom .carousel-control .fa {
				padding-top: 0 !important;
				font-size: 22px;
				line-height: 1;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
			}

			/* Точки внизу слайда — подпись приподнята (bottom: 36px), не наезжают на кнопку */
			.section-6-custom .carousel-indicators,
			#section-6-custom .carousel-indicators {
				top: auto;
				bottom: 8px;
				left: 50%;
				right: auto;
				margin: 0;
				margin-bottom: 0;
				width: auto;
				transform: translateX(-50%);
				z-index: 4;
			}

			/* bprofits: слайдер, одна карточка на экран */
			.js-bprofits-mobile-slider.slick-initialized .slick-list {
				margin: 0;
			}

			.js-bprofits-mobile-slider.slick-initialized .slick-slide {
				padding: 0;
			}

			.js-bprofits-mobile-slider.slick-initialized .slick-arrow {
				display: none !important;
			}

			/* Новости: отступ под точки (позиция — в общих стилях .slick-dots) */
			.js-news-mobile-slider.slick-initialized.slick-dotted {
				padding-bottom: 44px;
			}

			.js-news-mobile-slider.slick-initialized {
				margin-bottom: 20px;
			}

			/* Партнёры: custom.css на мобильных даёт .logos li { float: none } — ломает горизонтальный трек Slick */
			.partners ul.logos.js-partners-mobile-slider.slick-initialized {
				margin-left: 0;
				margin-right: 0;
			}

			.partners ul.logos.js-partners-mobile-slider.slick-initialized .slick-track > li.slick-slide {
				float: left;
				width: auto;
			}

			.js-partners-mobile-slider.slick-initialized .slick-slide {
				padding: 0 10px;
			}

			.js-partners-mobile-slider.slick-initialized .slick-slide img {
				max-height: 48px;
				width: auto;
				max-width: 100%;
				margin: 0 auto;
				object-fit: contain;
			}

			/* Компактнее стрелки на узком экране (общие стили Slick — в конце файла) */
			.slick-arrow {
				width: 34px;
				height: 34px;
			}

			.slick-prev {
				left: 2px;
			}

			.slick-next {
				right: 2px;
			}

			.slick-arrow:before {
				font-size: 20px;
			}

			/*
			 * cards-block: 2 колонки без горизонтального скролла (flex вместо float, узкий gutter,
			 * перенос длинных слов, картинки не шире колонки).
			 */
			.cards-block {
				overflow-x: hidden;
				-webkit-overflow-scrolling: touch;
			}

			/* На странице товара не обрезаем горизонтальный скролл таблицы */
			.cards-block:has(.product-page) {
				overflow-x: visible;
			}

			.cards-block .container {
				width: 100%;
				max-width: 100%;
				padding-left: 12px;
				padding-right: 12px;
				box-sizing: border-box;
			}

			.cards-block .row {
				display: flex;
				flex-wrap: wrap;
				margin-left: -6px;
				margin-right: -6px;
			}

			.cards-block .row::before,
			.cards-block .row::after {
				display: none;
				content: none;
			}

			.cards-block .row > [class*="col-"] {
				float: none;
				min-width: 0;
				padding-left: 6px;
				padding-right: 6px;
				box-sizing: border-box;
			}

			.cards-block .row > .col-xs-6 {
				flex: 0 0 50%;
				max-width: 50%;
				width: auto;
			}

			.cards-block .row > .col-xs-12 {
				flex: 0 0 100%;
				max-width: 100%;
				width: auto;
			}

			.cards-block .services-boxes.style-1 {
				max-width: 100%;
			}

			.cards-block .services-boxes-content {
				max-width: 100%;
				overflow-wrap: break-word;
				word-wrap: break-word;
			}

			.cards-block .services-boxes.style-1 h2,
			.cards-block .services-boxes.style-1 h2 a {
				font-size: 12px;
				line-height: 1.35;
				letter-spacing: 0.04em;
				word-break: break-word;
        font-weight: 600;
			}

			.cards-block .services-boxes.style-1 p {
				font-size: 12px;
				line-height: 1.35;
				margin-bottom: 8px;
			}

			.cards-block .services-boxes.style-1 img {
				max-width: 80%;
				width: auto;
				height: auto;
				display: block;
				margin-left: auto;
				margin-right: auto;
			}

			.cards-block .services-boxes.style-1 .services-boxes-content > a {
				display: inline-block;
				max-width: 100%;
				font-size: 11px;
				line-height: 1.3;
				white-space: normal;
				word-break: break-word;
			}

			/* Поверх общего flex у .cards-block .row — снова grid, чтобы ряды не ломались */
			.cards-block.cards-block--product-cat-children .row {
				display: grid;
				grid-template-columns: repeat(2, minmax(0, 1fr));
				gap: 25px 15px;
				margin-left: 0;
				margin-right: 0;
			}

			.cards-block.cards-block--product-cat-children .row > [class*="col-"] {
				flex: none !important;
				max-width: none !important;
				width: 100%;
				padding-left: 0;
				padding-right: 0;
			}

			@media (max-width: 768px) {
        hr {
    margin-top: 0;
    margin-bottom: 0;
    border: 0;
}
				h1 {
          font-size: 18px;
          line-height: 48px;
          letter-spacing: 4.5px;
          margin-bottom: 16px;
      }
      h2 {
        font-size: 16px;
        line-height: 21px;
        letter-spacing: 4px;
        margin-bottom: 14px;
    }
      .phero--woocommerce-loop .headline.style-3 .woocommerce-products-header__title{
        margin-top: 25px;
      }
      .cards-block.cards-block--product-cat-children .services-boxes-content > h2 {
    min-height: fit-content;
      }
			}

			/* cards-rep (рекомендуемые товары): 2 карточки в ряд на мобильных */
			.cards-rep {
				overflow-x: hidden;
				-webkit-overflow-scrolling: touch;
			}

			.cards-rep .container {
				width: 100%;
				max-width: 100%;
				padding-left: 12px;
				padding-right: 12px;
				box-sizing: border-box;
			}

			.cards-rep .row {
				display: flex;
				flex-wrap: wrap;
				margin-left: -6px;
				margin-right: -6px;
			}

			.cards-rep .row::before,
			.cards-rep .row::after {
				display: none;
				content: none;
			}

			.cards-rep .row > [class*="col-"] {
				float: none;
				min-width: 0;
				padding-left: 6px;
				padding-right: 6px;
				box-sizing: border-box;
			}

			.cards-rep .row > .col-xs-6 {
				flex: 0 0 50%;
				max-width: 50%;
				width: auto;
			}

			.cards-rep .services-boxes.style-1 {
				max-width: 100%;
			}

			.cards-rep .services-boxes-content {
				max-width: 100%;
				overflow-wrap: break-word;
				word-wrap: break-word;
			}

			.cards-rep .services-boxes.style-1 p {
				font-size: 12px;
				line-height: 1.35;
				margin-bottom: 6px;
			}

			.cards-rep .services-boxes.style-1 p a {
				word-break: break-word;
			}

			.cards-rep .services-boxes.style-1 img {
				max-width: 100%;
	width: 100%;
	height: 180px;
				display: block;
				margin-left: auto;
				margin-right: auto;
	object-fit: contain;
	object-position: center;
			}

			/* Рекомендуемые товары: без стрелок Slick (если слайдер подключён) */
			.cards-rep .slick-arrow {
				display: none !important;
			}
		}

		/* ========== Slick: навигация и пагинация (все карусели) ========== */
		.slick-slider {
			position: relative;
		}

		.slick-slider.slick-dotted {
			margin-bottom: 0;
			padding-bottom: 36px;
		}

		.slick-arrow {
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			z-index: 9;
			width: 40px;
			height: 40px;
			margin: 0;
			padding: 0;
			border: none;
			border-radius: 50%;
			background: #bca480;
			box-shadow: 0 2px 10px rgba(0, 0, 0, 0.14);
			cursor: pointer;
			overflow: hidden;
			font-size: 0 !important;
			line-height: 0 !important;
			color: transparent !important;
			text-indent: -9999px;
			transition: background 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
		}

		.slick-arrow:hover,
		.slick-arrow:focus {
			background: #a8926e;
			box-shadow: 0 4px 14px rgba(0, 0, 0, 0.2);
			outline: none;
		}

		.slick-arrow:focus-visible {
			outline: 2px solid #3b3e43;
			outline-offset: 2px;
		}

		.slick-prev {
			left: 8px;
		}

		.slick-next {
			right: 8px;
		}

		.slick-arrow:before {
			display: block;
			position: absolute;
			left: 50%;
			top: 50%;
			transform: translate(-50%, -50%);
			text-indent: 0;
			font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
			font-size: 24px;
			font-weight: 600;
			line-height: 1;
			color: #fff;
			opacity: 1;
			-webkit-font-smoothing: antialiased;
		}

		.slick-prev:before {
			content: "\2039";
		}

		.slick-next:before {
			content: "\203a";
		}

		.slick-arrow.slick-disabled {
			opacity: 0.35;
			cursor: not-allowed;
			box-shadow: none;
		}

		.slick-dots {
			position: absolute;
			left: 0;
			right: 0;
			bottom: 0;
			display: flex !important;
			flex-wrap: wrap;
			justify-content: center;
			align-items: center;
			gap: 10px;
			margin: 0;
			padding: 14px 48px 4px;
			list-style: none;
			width: 100%;
			box-sizing: border-box;
		}

		.slick-dots li {
			display: inline-flex;
			margin: 0;
			padding: 0;
			width: auto;
			height: auto;
		}

		.slick-dots li button {
			display: block;
			width: 11px;
			height: 11px;
			padding: 0;
			margin: 0;
			border: 2px solid #bca480;
			border-radius: 50%;
			background: #fff;
			font-size: 0 !important;
			line-height: 0 !important;
			color: transparent !important;
			text-indent: -9999px;
			overflow: hidden;
			cursor: pointer;
			transition: background 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
		}

		.slick-dots li button:hover {
			background: rgba(188, 164, 128, 0.35);
		}

		.slick-dots li.slick-active button {
			background: #bca480;
			transform: scale(1.12);
		}

		.slick-dots li button:focus {
			outline: none;
		}

		.slick-dots li button:focus-visible {
			box-shadow: 0 0 0 2px #3b3e43;
		}

    /* WooCommerce single product page (from temp_3.css) */
.product-page__sku-stock {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 5px;
  margin-bottom: 15px;
}

@supports
  ((-moz-column-gap: clamp(0.9375rem, 0.3492647059rem + 2.9411764706vw, 2.5rem)) or
    (column-gap: clamp(0.9375rem, 0.3492647059rem + 2.9411764706vw, 2.5rem))) {
  .product-page__sku-stock {
    -moz-column-gap: clamp(0.9375rem, 0.3492647059rem + 2.9411764706vw, 2.5rem);
    column-gap: clamp(0.9375rem, 0.3492647059rem + 2.9411764706vw, 2.5rem);
  }
}

@supports
  not
  ((-moz-column-gap: clamp(0.9375rem, 0.3492647059rem + 2.9411764706vw, 2.5rem)) or
    (column-gap: clamp(0.9375rem, 0.3492647059rem + 2.9411764706vw, 2.5rem))) {
  .product-page__sku-stock {
    -moz-column-gap: calc(0.9375rem + 1.5625 * (100vw - 20rem) / 53.125);
    column-gap: calc(0.9375rem + 1.5625 * (100vw - 20rem) / 53.125);
  }
}


.product-page__rating {
  display: flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
}

.product-page__rating-value {
  font-size: 16px;
}

.product-page__wrapper {
  display: flex;
  align-items: flex-start;
  gap: 40px;
}

.product-page__body {
  min-width: 0;
  flex: 1;
}

.product-page__main {
  display: flex;
  gap: 30px;
}

@media (max-width: 47.99875em) {
  .product-page__main {
    flex-direction: column;
    gap: 20px;
  }
}

.product-page__gallery {
  overflow: hidden;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

@media (min-width: 47.99875em) {
  .product-page__gallery {
    flex: 0 0 360px;
  }
}

@media (max-width: 47.99875em) {
  .product-page__gallery {
    width: 100%;
    max-width: none;
    margin: 0;
  }
}

@supports (height: clamp(15rem, 12.1764705882rem + 14.1176470588vw, 22.5rem)) {
  .product-page__gallery-main {
    height: clamp(15rem, 12.1764705882rem + 14.1176470588vw, 22.5rem);
  }
}

@supports not (height: clamp(15rem, 12.1764705882rem + 14.1176470588vw, 22.5rem)) {
  .product-page__gallery-main {
    height: calc(15rem + 7.5 * (100vw - 20rem) / 53.125);
  }
}

.product-page__gallery-main--slide {
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-page__gallery-main--slide img {
  max-height: 100%;
  max-width: 100%;
}

/* Квадратная светлая заглушка, если у товара/карточки нет изображения */
.theme-product-placeholder-img {
  aspect-ratio: 1 / 1;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  background: #f0f1f4;
  border-radius: 10px;
}

.product-page__gallery-main--slide-placeholder {
  background: #f0f1f4;
  border-radius: 12px;
}

.product-page__gallery-main--slide-placeholder .theme-product-placeholder-img {
  width: min(100%, 320px);
  background: transparent;
}

.product-page__gallery-nav--slide .theme-product-placeholder-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.product-page__gallery-nav {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 32px;
  align-items: center;
  gap: 10px;
}

.product-page__gallery-nav--slide {
  border-radius: 10px;
  border: 1px solid transparent;
  padding: 3px;
  aspect-ratio: 1;
  max-height: 60px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-page__gallery-nav--slide.swiper-slide-thumb-active {
  border-color: #bca480;
}

.product-page__gallery-nav--slide img {
  max-width: 100%;
  max-height: 100%;
}

.product-page__gallery-nav-init {
  min-width: 0;
}

.product-page__gallery-nav-arrow {
  position: relative;
  z-index: 5;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e6e6e6;
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
  padding: 0;
}

.product-page__gallery-nav-arrow svg {
  width: 16px;
  aspect-ratio: 1;
}

.product-page__gallery-nav-prev {
  justify-self: start;
}

.product-page__gallery-nav-next {
  justify-self: end;
}

.product-page__gallery-nav--no-arrows .product-page__gallery-nav-arrow,
.product-page__gallery-nav-arrow.swiper-button-lock {
  display: none;
}

.product-page__gallery-nav--no-arrows {
  grid-template-columns: minmax(0, 1fr);
}

.product-page__specs {
  flex: 1;
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
}

.product-page__specs-title {
  font-size: 14px;
  color: gray;
  margin-bottom: 10px;
}

.product-page__sizes {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
}

.product-page__size span {
  border: 1.5px solid #e6e6e6;
  border-radius: 5px;
  padding: 4px 10px;
  font-size: 14px;
  display: inline-flex;
  cursor: pointer;
}

.product-page__size input {
  display: none;
}

.product-page__size input:checked + span {
  border-color: var(--accent);
}

.product-page__colors {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.product-page__colors input {
  display: none;
}

.product-page__colors input:checked + span {
  border-color: var(--accent);
}

.product-page__color span {
  width: 60px;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1.5px solid #e6e6e6;
  border-radius: 6px;
  padding: 2px;
  cursor: pointer;
}

.product-page__color span img {
  max-width: 100%;
  max-height: 100%;
}

.product-page__specs-list {
  font-size: 14px;
  width: 100%;
  display: grid;
  row-gap: 12px;
}

.product-page__specs-list li {
  display: flex;
  gap: 5px;
  align-items: flex-end;
}

.product-page__specs-list span {
  border-bottom: 1px dotted #e6e6e6;
  flex: 1;
  padding-bottom: 4px;
}

.product-page__specs-list span:first-child {
  color: gray;
  flex: 0 0 60%;
}

.product-page__specs-all {
  font-weight: 500;
  font-size: 14px;
  color: var(--accent);
  margin-top: 15px;
  padding: 0;
}

.product-page__sub-title {
  font-weight: 700;
  margin-bottom: 20px;
}

@supports (font-size: clamp(1.125rem, 1.0308823529rem + 0.4705882353vw, 1.375rem)) {
  .product-page__sub-title {
    font-size: clamp(1.125rem, 1.0308823529rem + 0.4705882353vw, 1.375rem);
  }
}

@supports not (font-size: clamp(1.125rem, 1.0308823529rem + 0.4705882353vw, 1.375rem)) {
  .product-page__sub-title {
    font-size: calc(1.125rem + 0.25 * (100vw - 20rem) / 53.125);
  }
}

.product-page__tabs-nav {
  display: flex;
  gap: 20px;
  white-space: nowrap;
}

.product-page__tabs-btn {
  font-weight: 500;
  font-size: 16px;
  color: #999;
  padding-bottom: 8px;
  border-bottom: 2px solid transparent;
}

.product-page__tabs-btn--active {
  color: var(--text);
  border-color: var(--accent);
}

.product-page__tabs-body {
  display: none;
  margin-top: 20px;
}

.product-page__tabs-body--active {
  display: block;
}

.product-page__tabs {
  min-width: 0;
  max-width: 100%;
}

.product-page__tabs-desc {
  font-size: 16px;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  row-gap: 20px;
  min-width: 0;
  max-width: 100%;
}

.product-page__tabs-body {
  min-width: 0;
  max-width: 100%;
}

/* Горизонтальная прокрутка широких таблиц */
.product-page__table-scroll,
.product-page__tabs-desc .wp-block-table,
.product-page__tabs-body .wp-block-table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: scroll;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-x pan-y;
  margin: 0.5em 0 1em;
  box-sizing: border-box;
}

.product-page__table-scroll table,
.product-page__tabs-desc .wp-block-table table,
.product-page__tabs-body .wp-block-table table {
  width: max-content;
  min-width: 0;
  max-width: none;
  margin: 0;
  table-layout: auto;
  border-collapse: collapse;
  border: 1px solid #e6e6e6;
  background: #fff;
  font-size: 14px;
  line-height: 1.4;
}

/* Таблица без JS-обёртки — прокрутка на контейнере вкладки */
.product-page__tabs-desc,
.product-page__tabs-body {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.product-page__tabs-desc > table,
.product-page__tabs-body > table,
.product-page__tabs-desc > figure table,
.product-page__tabs-body > figure table {
  width: max-content;
  max-width: none;
  min-width: 0;
  table-layout: auto;
  border-collapse: collapse;
  border: 1px solid #e6e6e6;
  background: #fff;
  font-size: 14px;
  line-height: 1.4;
}

/* Не даём родителям обрезать скролл таблицы */
.product-page,
.product-page__wrapper,
.product-page__body,
.product-page__tabs {
  max-width: 100%;
  overflow-x: visible;
}

.product-page__table-scroll {
  overflow-x: scroll !important;
  -webkit-overflow-scrolling: touch !important;
}

.product-page__table-scroll > table {
  width: max-content !important;
  min-width: 0 !important;
  max-width: none !important;
}

.product-page__tabs-body th,
.product-page__tabs-body td,
.product-page__table-scroll th,
.product-page__table-scroll td {
  padding: 10px 12px;
  border: 1px solid #e6e6e6;
  vertical-align: top;
  text-align: left;
}

.product-page__tabs-body thead th,
.product-page__table-scroll thead th {
  background: #bca480;
  font-weight: 600;
}

.product-page__tabs-body tbody tr:nth-child(even),
.product-page__table-scroll tbody tr:nth-child(even) {
  background: #fafafa;
}

@media (max-width: 767px) {
  .product-page__tabs-body th,
  .product-page__tabs-body td {
    padding: 8px 10px;
  }
}

.product-page__tab-gallery {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  width: 100%;
}

.product-page__tab-gallery-link {
  display: block;
  width: 100%;
  line-height: 0;
  color: inherit;
  text-decoration: none;
}

.product-page__tab-gallery-link:focus-visible {
  outline: 2px solid var(--accent, #0a5ec4);
  outline-offset: 2px;
}

.product-page__tab-gallery img,
.product-page__tab-gallery .product-page__tab-gallery-img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
}

.product-page__tabs-spec {
  display: grid;
}

@supports (row-gap: clamp(1.25rem, 1.0147058824rem + 1.1764705882vw, 1.875rem)) {
  .product-page__tabs-spec {
    row-gap: clamp(1.25rem, 1.0147058824rem + 1.1764705882vw, 1.875rem);
  }
}

@supports not (row-gap: clamp(1.25rem, 1.0147058824rem + 1.1764705882vw, 1.875rem)) {
  .product-page__tabs-spec {
    row-gap: calc(1.25rem + 0.625 * (100vw - 20rem) / 53.125);
  }
}

.product-page__tabs-spec-title {
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 15px;
}

.product-page__tabs-spec-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

@supports
  ((-moz-column-gap: clamp(0.625rem, 0.1544117647rem + 2.3529411765vw, 1.875rem)) or
    (column-gap: clamp(0.625rem, 0.1544117647rem + 2.3529411765vw, 1.875rem))) {
  .product-page__tabs-spec-list {
    -moz-column-gap: clamp(0.625rem, 0.1544117647rem + 2.3529411765vw, 1.875rem);
    column-gap: clamp(0.625rem, 0.1544117647rem + 2.3529411765vw, 1.875rem);
  }
}

@supports
  not
  ((-moz-column-gap: clamp(0.625rem, 0.1544117647rem + 2.3529411765vw, 1.875rem)) or
    (column-gap: clamp(0.625rem, 0.1544117647rem + 2.3529411765vw, 1.875rem))) {
  .product-page__tabs-spec-list {
    -moz-column-gap: calc(0.625rem + 1.25 * (100vw - 20rem) / 53.125);
    column-gap: calc(0.625rem + 1.25 * (100vw - 20rem) / 53.125);
  }
}

@media (max-width: 47.99875em) {
  .product-page__tabs-spec-list {
    grid-template-columns: 1fr;
  }
}

.product-page__recommends--fullwidth {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.product-page__recommends-slider {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.product-page__recommends-slider .product-page__recommends-init {
  flex: 1;
  min-width: 0;
}

.product-page__recommends-arrow {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid #e6e6e6;
  border-radius: 8px;
  background: #fff;
  color: var(--text, #1d1d1d);
  cursor: pointer;
}

.product-page__recommends-arrow:hover {
  border-color: var(--accent, #0a5ec4);
  color: #bca480;
}

.product-page__recommends-arrow.swiper-button-disabled {
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: none;
}

.product-page__recommends-slider--nav-locked .product-page__recommends-arrow,
.product-page__recommends-arrow.swiper-button-lock {
  display: none;
}

.product-page__recommends-init {
  overflow: hidden;
}

.product-page__recommends-slider .swiper-slide {
  height: auto;
  box-sizing: border-box;
}

/* Похожие товары: карточки как в блоке cards-rep (services-boxes.style-1) */
.product-page__recommends-slider .swiper-slide .services-boxes.style-1 {
  height: 100%;
  min-width: 0;
  max-width: 100%;
}

.product-page__recommends-slider .swiper-slide .services-boxes-content {
  max-width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.product-page__recommends-slider .swiper-slide .services-boxes.style-1 img {
  max-width: 100%;
  width: 100%;
  height: 180px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  object-fit: contain;
  object-position: center;
}

.product-page__recommends-slider .swiper-slide .services-boxes.style-1 p {
  line-height: 1.35;
  margin-bottom: 6px;
}

.product-page__recommends-slider .swiper-slide .services-boxes.style-1 p:last-child {
  margin-bottom: 0;
}

.product-page__recommends-slider .swiper-slide .services-boxes.style-1 p a {
  word-break: break-word;
}

.product-card__attrs {
  display: flex;
  flex-direction: column;
}

.product-card__attr {
  margin: 0;
}

.product-card__attr-name,
.product-card__attr-value {
  display: inline;
}

.product-card__attr-name + .product-card__attr-value::before {
  content: " ";
}

@media (max-width: 37.5em) {
  .product-page__recommends-arrow {
    display: none;
  }
}

.product-page__aside {
  flex: 0 0 360px;
}

@media (min-width: 1070px) {
  .product-page__aside {
    position: sticky;
    top: 118px;
  }
}

@media (max-width: 1070px) {
  .product-page__wrapper {
    flex-direction: column;
    gap: 24px;
  }

  .product-page__aside {
    display: none;
  }
}

.product-page__reviews-top-left {
  display: flex;
  align-items: flex-end;
  gap: 10px;
}

.product-page__reviews-title {
  margin: 0;
}

.product-page__reviews-count {
  font-size: 16px;
  color: gray;
}

.product-page__reviews-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 5px 10px;
}

.product-page__reviews-letter {
  font-weight: 500;
  font-size: 16px;
  color: var(--accent);
  border-bottom: 1px dotted var(--accent);
}

.product-page__reviews-grid {
  margin-top: 20px;
  display: grid;
  row-gap: 20px;
}

.product-page__order {
  border: 1.5px solid var(--accent);
  border-radius: 15px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

@supports (padding: clamp(0.9375rem, 0.5845588235rem + 1.7647058824vw, 1.875rem)) {
  .product-page__order {
    padding: clamp(0.9375rem, 0.5845588235rem + 1.7647058824vw, 1.875rem);
  }
}

@supports not (padding: clamp(0.9375rem, 0.5845588235rem + 1.7647058824vw, 1.875rem)) {
  .product-page__order {
    padding: calc(0.9375rem + 0.9375 * (100vw - 20rem) / 53.125);
  }
}

@media (max-width: 1070px) {
  .product-page__order {
    margin-top: 30px;
  }
}

.product-page__price {
  display: grid;
  row-gap: 2px;
}

.product-page__price-title {
  font-size: 12px;
}

.product-page__price-wrapper {
  display: flex;
  align-items: flex-end;
  gap: 12px;
  line-height: 1;
}

.product-page__price-current {
  font-weight: 700;
}

@supports (font-size: clamp(1.5rem, 1.2176470588rem + 1.4117647059vw, 2.25rem)) {
  .product-page__price-current {
    font-size: clamp(1.5rem, 1.2176470588rem + 1.4117647059vw, 2.25rem);
  }
}

@supports not (font-size: clamp(1.5rem, 1.2176470588rem + 1.4117647059vw, 2.25rem)) {
  .product-page__price-current {
    font-size: calc(1.5rem + 0.75 * (100vw - 20rem) / 53.125);
  }
}

.product-page__price-old {
  font-weight: 500;
  color: #b3b3b3;
  text-decoration: line-through;
}

@supports (font-size: clamp(0.75rem, 0.6558823529rem + 0.4705882353vw, 1rem)) {
  .product-page__price-old {
    font-size: clamp(0.75rem, 0.6558823529rem + 0.4705882353vw, 1rem);
  }
}

@supports not (font-size: clamp(0.75rem, 0.6558823529rem + 0.4705882353vw, 1rem)) {
  .product-page__price-old {
    font-size: calc(0.75rem + 0.25 * (100vw - 20rem) / 53.125);
  }
}

.product-page__installments {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
  margin-top: 20px;
}

.product-page__installment {
  background: var(--hover);
  border-radius: 30px;
  padding: 6px 15px;
  display: flex;
  align-items: center;
  gap: 27px;
}

.product-page__installment-amount {
  font-weight: 700;
  color: var(--text);
}

@supports (font-size: clamp(1rem, 0.8588235294rem + 0.7058823529vw, 1.375rem)) {
  .product-page__installment-amount {
    font-size: clamp(1rem, 0.8588235294rem + 0.7058823529vw, 1.375rem);
  }
}

@supports not (font-size: clamp(1rem, 0.8588235294rem + 0.7058823529vw, 1.375rem)) {
  .product-page__installment-amount {
    font-size: calc(1rem + 0.375 * (100vw - 20rem) / 53.125);
  }
}

.product-page__installment-mult {
  font-weight: 500;
  line-height: 130%;
  color: var(--accent);
}

@supports (font-size: clamp(0.75rem, 0.7029411765rem + 0.2352941176vw, 0.875rem)) {
  .product-page__installment-mult {
    font-size: clamp(0.75rem, 0.7029411765rem + 0.2352941176vw, 0.875rem);
  }
}

@supports not (font-size: clamp(0.75rem, 0.7029411765rem + 0.2352941176vw, 0.875rem)) {
  .product-page__installment-mult {
    font-size: calc(0.75rem + 0.125 * (100vw - 20rem) / 53.125);
  }
}

.product-page__installment-info {
  display: flex;
  align-items: center;
  cursor: pointer;
}

.product-page__installment-info svg {
  width: 24px;
  aspect-ratio: 1;
}

.product-page__order-btns {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 10px 20px;
}

@supports (margin-top: clamp(1.25rem, 0.7794117647rem + 2.3529411765vw, 2.5rem)) {
  .product-page__order-btns {
    margin-top: clamp(1.25rem, 0.7794117647rem + 2.3529411765vw, 2.5rem);
  }
}

@supports not (margin-top: clamp(1.25rem, 0.7794117647rem + 2.3529411765vw, 2.5rem)) {
  .product-page__order-btns {
    margin-top: calc(1.25rem + 1.25 * (100vw - 20rem) / 53.125);
  }
}

.product-page__order-btns button {
  display: flex;
  align-items: center;
}

.product-page__order-btns svg {
  width: 24px;
  aspect-ratio: 1;
  stroke: #b3b3b3;
  fill: transparent;
}

.product-page__order-btns-add {
  min-width: 200px;
}

@media (max-width: 47.99875em) {
  .product-page__order-btns-add.btn {
    min-width: 0;
    font-size: 0;
    width: 60px;
    padding: 0;
  }

  .product-page__order-btns-add.btn:before {
    content: "";
    display: block;
    flex-shrink: 0;
    width: 24px;
    aspect-ratio: 1;
    background: url(../img/sprite.svg#cart-white) no-repeat 50%/cover;
  }
}

.product-page__order-btns-favorite.active svg {
  fill: var(--accent);
  stroke: var(--accent);
}

.product-page__order-btns-compare.active svg {
  stroke: var(--accent);
}

/* Hide native WC variation submit controls in specs block */
.product-page__specs .woocommerce-variation-add-to-cart .quantity,
.product-page__specs .woocommerce-variation-add-to-cart .single_add_to_cart_button {
  display: none !important;
}

.product-page__specs form.cart:not(.variations_form) .quantity,
.product-page__specs form.cart:not(.variations_form) .single_add_to_cart_button {
  display: none !important;
}

.product-page__specs .woocommerce-variation-price {
  display: none !important;
}

.product-page__specs-buy {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 20px;
  width: 100%;
  max-width: none;
  margin-top: 30px;
}

.product-page__specs-buy .product-page__price {
  display: inline-flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 16px;
  row-gap: 0;
  min-width: 0;
}

.product-page__specs-buy .product-page__price-title {
  margin: 0;
  align-self: center;
  line-height: 1.2;
}

.product-page__specs-buy .product-page__specs-order-btn {
  flex-shrink: 0;
}

.product-page__specs-buy .product-page__specs-order-btn.btn-default:after,
.product-page__specs-buy .product-page__specs-order-btn.btn.btn-default:after {
  content: none !important;
  display: none !important;
}

.product-page__specs-buy .product-page__specs-order-btn.btn.btn-default:hover:after {
  display: none !important;
  width: 0 !important;
  opacity: 0 !important;
}

@media (max-width: 576px) {
  .product-page__specs-buy .product-page__specs-order-btn {
    margin-left: 0;
  }
}

/* Карточка товара — мобильная адаптация */
@media (max-width: 47.99875em) {
  .product-page {
    padding: 12px 0 24px;
  }

  .product-page__wrapper {
    flex-direction: column;
    gap: 24px;
  }

  .product-page__sku-stock {
    margin-bottom: 12px;
  }

  .product-page__sub-title {
    margin-bottom: 16px;
    font-size: 1.125rem;
    line-height: 1.3;
    word-break: break-word;
  }

  .product-page__specs {
    width: 100%;
  }

  .product-page__specs-list {
    font-size: 13px;
    row-gap: 10px;
  }

  .product-page__specs-list span:first-child {
    flex: 0 0 52%;
  }

  .product-page__specs-buy {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    margin-top: 20px;
    padding: 16px;
    background: #fafafa;
    border-radius: 12px;
    box-sizing: border-box;
  }

  .product-page__specs-buy .product-page__price {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }

  .product-page__specs-buy .product-page__price-title {
    font-size: 13px;
  }

  .product-page__specs-buy .product-page__specs-order-btn {
    width: 100%;
    justify-content: center;
    text-align: center;
    min-height: 48px;
  }

  .product-page__tabs-nav {
    flex-wrap: wrap;
    gap: 12px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding-bottom: 4px;
    margin-right: -4px;
  }

  .product-page__tabs-nav::-webkit-scrollbar {
    display: none;
  }

  .product-page__tabs-btn {
    font-size: 14px;
    flex-shrink: 0;
    padding-bottom: 6px;
  }

  .product-page__tabs-desc {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .product-page__tabs-body {
    margin-top: 16px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .product-page__table-scroll {
    width: 100%;
    max-width: 100%;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y;
  }

  .product-page__table-scroll table,
  .product-page__tabs-desc > table,
  .product-page__tabs-body > table {
    width: max-content;
    min-width: 0;
    font-size: 13px;
  }

  .product-page__tabs-body th,
  .product-page__tabs-body td,
  .product-page__table-scroll th,
  .product-page__table-scroll td {
    padding: 8px 10px;
  }

  .product-page__recommends--fullwidth {
    margin-top: 8px;
  }

  .product-page__recommends-slider .swiper-slide .services-boxes.style-1 img {
    height: 140px;
  }
}

@media (max-width: 30em) {
  .product-page__specs-list li {
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
  }

  .product-page__specs-list span {
    border-bottom: none;
    padding-bottom: 0;
    width: 100%;
  }

  .product-page__specs-list span:first-child {
    flex: none;
    color: #888;
    font-size: 12px;
  }

  .product-page__specs-list span:last-child {
    font-weight: 500;
  }
}

/* Shared product page helpers */
.hidden-scrollbar{overflow:auto;-ms-overflow-style:none;scrollbar-width:none}
.hidden-scrollbar::-webkit-scrollbar{display:none}
.mt-40{margin-top:40px}
.mt-50{margin-top:50px}

.product-page__specs-buy a.product-page__specs-order-btn.btn.btn-default {
  background: #bca480;
  border: 1px solid #bca480;
  color: #fff;
}

.product-page__specs-buy a.product-page__specs-order-btn.btn.btn-default:hover {
  background: #bca480;
  border-color: #bca480;
  color: #fff;
  opacity: 0.92;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.25);
}

/* Split-кнопки: одна форма везде — высота 61px, зазор 1px, скругление 4px у сегментов */
.btn.btn--with-arrow{
  padding:0;
  align-items:stretch;
  min-height:61px;
  height:61px;
  box-sizing:border-box;
  overflow:visible;
}
.btn.btn--with-arrow > span:first-of-type{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:stretch;
  padding:0 22px;
  box-sizing:border-box;
  border-radius:4px;
  min-height:0;
}
.btn.btn--with-arrow .btn-arrow,
.btn.btn--with-arrow .about__feature-btn-arrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:stretch;
  min-width:54px;
  box-sizing:border-box;
  line-height:0;
  border-radius:4px;
  min-height:0;
}

/* Универсальная синяя кнопка (герой, товары, простые формы и т.д.) */
.btn.btn-blue.btn--with-arrow {
  gap: 1px;
  background: transparent !important;
  border: none !important;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
}
.btn.btn-blue.btn--with-arrow:not(.btn--outline) > span:first-of-type,
.btn.btn-blue.btn--with-arrow:not(.btn--outline) .btn-arrow,
.btn.btn-blue.btn--with-arrow:not(.btn--outline) .about__feature-btn-arrow {
  background: #2a3088;
  border-radius: 4px;
}
.btn.btn-blue.btn--with-arrow:not(.btn--outline):hover > span:first-of-type,
.btn.btn-blue.btn--with-arrow:not(.btn--outline):hover .btn-arrow,
.btn.btn-blue.btn--with-arrow:not(.btn--outline):hover .about__feature-btn-arrow {
  background: rgba(55, 70, 55, 1);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}
.btn.btn-blue.btn--with-arrow.btn--outline > span:first-of-type,
.btn.btn-blue.btn--with-arrow.btn--outline .btn-arrow,
.btn.btn-blue.btn--with-arrow.btn--outline .about__feature-btn-arrow {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 4px;
  box-sizing: border-box;
}
.btn.btn-blue.btn--with-arrow.btn--outline:hover > span:first-of-type,
.btn.btn-blue.btn--with-arrow.btn--outline:hover .btn-arrow,
.btn.btn-blue.btn--with-arrow.btn--outline:hover .about__feature-btn-arrow {
  background: rgba(255, 255, 255, 0.1);
}
.btn.btn-blue:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}
.btn.btn-blue.btn--with-arrow:hover {
  box-shadow: none;
}
.btn.btn-blue:not(.btn--with-arrow):hover {
  background: rgba(55, 70, 55, 1);
}
.btn.btn-blue.btn--outline:not(.btn--with-arrow) {
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.4);
}
.btn.btn-blue.btn--outline:not(.btn--with-arrow):hover {
  background: rgba(255, 255, 255, 0.1);
}

.theme-btn-arrow-icon{display:block;flex-shrink:0}
.tooltip{position:relative}
.tooltip__content{position:absolute;top:calc(100% + 5px);width:200px;right:0;box-shadow:5px 5px 10px 0 rgba(0,0,0,.07);background:#fff;line-height:1.5;z-index:10;border:1.5px solid #e6e6e6;border-radius:10px;opacity:0;visibility:hidden;padding:12px}
.tooltip.active .tooltip__content{opacity:1;visibility:visible}



/* Product page styling used by woocommerce/content-single-product.php */
.product-page{padding:20px 0;max-width:100%;overflow-x:visible}
.product-page__table-scroll{overflow-x:scroll!important;-webkit-overflow-scrolling:touch!important}
.product-page__table-scroll>table{width:max-content!important;min-width:0!important;max-width:none!important}
.product-page__sku-stock{display:flex;align-items:center;flex-wrap:wrap;row-gap:5px;column-gap:16px;margin-bottom:15px}
.product-page__stock{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500}
.product-page__stock:before{content:"";width:8px;height:8px;border-radius:50%}
.product-page__stock--in{color:#0f8a3c}
.product-page__stock--in:before{background:#0fba68}
.product-page__wrapper{display:flex;align-items:flex-start;gap:40px}
.product-page__body{min-width:0;flex:1}
.product-page__main{display:flex;gap:30px}
.product-page__gallery{overflow:hidden;min-width:0;display:flex;flex-direction:column;gap:20px;flex:0 0 360px}
.product-page__gallery-main--slide{display:flex;align-items:center;justify-content:center}
.product-page__gallery-main--slide img{max-width:100%;max-height:100%}
.theme-product-placeholder-img{aspect-ratio:1;width:100%;max-width:100%;height:auto;object-fit:contain;background:#f0f1f4;border-radius:10px}
.product-page__gallery-main--slide-placeholder{background:#f0f1f4;border-radius:12px}
.product-page__gallery-main--slide-placeholder .theme-product-placeholder-img{width:min(100%,320px);background:transparent}
.product-page__gallery-nav--slide .theme-product-placeholder-img{width:100%;height:100%;object-fit:contain}
.product-page__gallery-nav{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:10px}
.product-page__gallery-nav--slide{border-radius:10px;border:1px solid transparent;padding:3px;aspect-ratio:1;max-height:60px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.product-page__gallery-nav--slide.swiper-slide-thumb-active{border-color:#bca480}
.product-page__gallery-nav--slide img{max-width:100%;max-height:100%}
.product-page__gallery-nav-init{min-width:0}
.product-page__gallery-nav-arrow{position:relative;z-index:5;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #e6e6e6;border-radius:6px;background:#fff;cursor:pointer;padding:0}
.product-page__gallery-nav-arrow svg{width:16px;aspect-ratio:1}
.product-page__gallery-nav-prev{justify-self:start}
.product-page__gallery-nav-next{justify-self:end}
.product-page__gallery-nav--no-arrows .product-page__gallery-nav-arrow,.product-page__gallery-nav-arrow.swiper-button-lock{display:none}
.product-page__gallery-nav--no-arrows{grid-template-columns:minmax(0,1fr)}
.product-page__specs{flex:1;display:flex;min-width:0;flex-direction:column;align-items:flex-start}
.product-page__specs-list{font-size:14px;width:100%;display:grid;row-gap:12px;list-style:none;padding:0;margin:0}
.product-page__specs-list li{display:flex;gap:5px;align-items:flex-end}
.product-page__specs-list span{border-bottom:1px dotted #e6e6e6;flex:1;padding-bottom:4px}
.product-page__specs-list span:first-child{color:gray;flex:0 0 60%}
.product-page__specs-all{font-weight:500;font-size:14px;color:#bca480;margin-top:15px;background:none;border:none;cursor:pointer}
.product-page__sub-title{font-weight:700;margin-bottom:20px;font-size:clamp(1.125rem,1.03rem + .47vw,1.375rem)}
.product-page__tabs-nav{display:flex;gap:20px;white-space:nowrap}
.product-page__tabs-btn{font-weight:500;font-size:16px;color:#999;padding-bottom:8px;border:0;border-bottom:2px solid transparent;background:none;cursor:pointer}
.product-page__tabs-btn--active{color:var(--text,#1d1d1d);border-color:var(--accent,#0a5ec4)}
.product-page__tabs-body{display:none;margin-top:20px}
.product-page__tabs-body--active{display:block}
.product-page__tabs-desc{font-size:16px;line-height:1.5;display:flex;flex-direction:column;row-gap:20px}
.product-page__tabs{min-width:0;max-width:100%}
.product-page__tabs-desc{min-width:0;max-width:100%}
.product-page__tabs-body{min-width:0;max-width:100%}
.product-page__table-scroll,.product-page__tabs-desc .wp-block-table,.product-page__tabs-body .wp-block-table{display:block;width:100%;max-width:100%;overflow-x:scroll;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;margin:.5em 0 1em;box-sizing:border-box}
.product-page__table-scroll table,.product-page__tabs-desc .wp-block-table table{width:max-content;min-width:0;max-width:none;margin:0;table-layout:auto;border-collapse:collapse;border:1px solid #e6e6e6;background:#fff;font-size:14px;line-height:1.4}
.product-page__tabs-desc,.product-page__tabs-body{overflow-x:auto;-webkit-overflow-scrolling:touch}
.product-page__tabs-desc>table,.product-page__tabs-body>table{width:max-content;max-width:none;min-width:0;table-layout:auto}
.product-page__tabs-body th,.product-page__tabs-body td{padding:10px 12px;border:1px solid #e6e6e6;vertical-align:top;text-align:left}
.product-page__tabs-body thead th{background:#bca480;font-weight:600}
.product-page__tabs-body tbody tr:nth-child(even){background:#fafafa}
@media (max-width:767px){.product-page__tabs-body th,.product-page__tabs-body td{padding:8px 10px}}
.product-page__tabs-desc--downloads{width:100%}
.product-page__downloads-list{width:100%;border:1px solid #e6e6e6;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 2px 14px rgba(0,0,0,.04)}
.product-page__downloads-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;box-sizing:border-box}
.product-page__downloads-row--alt{background:#f7f7f7}
.product-page__downloads-row:hover{background:#f1f3f6}
.product-page__downloads-file{min-width:0;flex:1;display:flex;align-items:center;gap:10px}
.product-page__downloads-icon{flex:0 0 20px;color:#9aa3ad}
.product-page__downloads-title{min-width:0;display:block;font-size:14px;line-height:1.35;font-weight:600;color:#2f3a46;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.product-page__downloads-btn{flex:0 0 auto;white-space:nowrap;min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:0!important}
.product-page__downloads-btn.btn-default:after,.product-page__downloads-btn.btn.btn-default:after{content:none!important;display:none!important}
@media (max-width:575px){
  .product-page__downloads-row{flex-direction:column;align-items:flex-start}
  .product-page__downloads-btn{width:100%}
  .product-page__downloads-title{white-space:normal}
}
.product-page__tab-gallery{display:grid;grid-template-columns:1fr;gap:16px;width:100%}
.product-page__tab-gallery-link{display:block;line-height:0;color:inherit;text-decoration:none;width:100%}
.product-page__tab-gallery img,.product-page__tab-gallery .product-page__tab-gallery-img{width:100%;max-width:100%;height:auto;display:block;border-radius:8px}
.product-page__tabs-spec{display:grid;row-gap:20px}
.product-page__tabs-spec-title{font-weight:700;font-size:16px;margin-bottom:15px}
.product-page__tabs-spec-list{display:grid;grid-template-columns:repeat(2,1fr);column-gap:20px}
.product-page__recommends-init{overflow:hidden}
.product-page__aside{flex:0 0 360px;position:sticky;top:118px}
.product-page__order{border:1.5px solid var(--accent,#0a5ec4);border-radius:15px;display:flex;flex-direction:column;align-items:flex-start;padding:20px}
.product-page__price{display:grid;row-gap:2px}
.product-page__price-title{font-size:12px}
.product-page__price-wrapper{display:flex;align-items:flex-end;gap:12px;line-height:1}
.product-page__price-current{font-weight:700;font-size:clamp(1.5rem,1.22rem + 1.41vw,2.25rem)}
.product-page__price-old{font-weight:500;color:#b3b3b3;text-decoration:line-through;font-size:clamp(.75rem,.66rem + .47vw,1rem)}
.product-page__order-btns{position:relative;z-index:2;display:flex;align-items:center;gap:10px 20px;margin-top:20px}
.product-page__order-btns button{display:flex;align-items:center}
.product-page__order-btns svg{width:24px;aspect-ratio:1;stroke:#b3b3b3;fill:transparent}
.product-page__order-btns-add{min-width:200px}
.product-page__order-btns-favorite.active svg{fill:var(--accent,#0a5ec4);stroke:var(--accent,#0a5ec4)}
.product-page__order-btns-compare.active svg{stroke:var(--accent,#0a5ec4)}
.product-page__specs .variations{margin:0 0 14px;border:0}
.product-page__specs .variations td,.product-page__specs .variations th{display:block;padding:0}
.product-page__specs .variations th{margin:0 0 6px;font-size:14px}
.product-page__specs .variations select{width:100%;height:44px;border:1px solid #e6e6e6;border-radius:8px;padding:0 12px}
.product-page__specs .reset_variations{display:inline-block;margin-top:8px;font-size:13px;color:var(--accent,#0a5ec4)}
.product-page__specs .woocommerce-variation-price{margin:10px 0}
.product-page__specs .woocommerce-variation-description{font-size:14px;line-height:1.4}
.product-page__specs .woocommerce-variation-add-to-cart .quantity,.product-page__specs .woocommerce-variation-add-to-cart .single_add_to_cart_button{display:none!important}
@media (max-width:1070px){.product-page__wrapper{flex-direction:column;gap:24px}.product-page__aside{position:static;flex:1;width:100%}}
@media (max-width:768px){
  .product-page{padding:12px 0 24px}
  .product-page__main{flex-direction:column;gap:20px}
  .product-page__gallery{flex:1;width:100%;max-width:none;margin:0}
  .product-page__tabs-spec-list{grid-template-columns:1fr}
  .product-page__tabs-nav{flex-wrap:wrap;gap:5px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:4px}
  .product-page__tabs-nav::-webkit-scrollbar{display:none}
  .product-page__tabs-btn{font-size:14px;flex-shrink:0}
  .product-page__tabs-desc{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .product-page__tabs-body{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .product-page__table-scroll{overflow-x:scroll;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}
  .product-page__table-scroll table,.product-page__tabs-desc>table,.product-page__tabs-body>table{width:max-content;min-width:0;font-size:13px}
  .product-page__specs-buy{flex-direction:column;align-items:stretch;gap:14px;margin-top:20px;padding:16px;background:#fafafa;border-radius:12px;box-sizing:border-box}
  .product-page__specs-buy .product-page__price{flex-direction:column;align-items:flex-start;gap:4px}
  .product-page__specs-buy .product-page__specs-order-btn{width:100%;justify-content:center;min-height:48px}
  .product-page__order-btns-add.btn{min-width:0;font-size:0;width:60px;padding:0}
}
@media (max-width:480px){
  .product-page__specs-list li{flex-direction:column;align-items:flex-start;gap:2px}
  .product-page__specs-list span{border-bottom:none;padding-bottom:0;width:100%}
  .product-page__specs-list span:first-child{flex:none;color:#888;font-size:12px}
  .product-page__specs-list span:last-child{font-weight:500}
}

/* Модальная форма заявки (#modal-form) */
#modal-form.modal-form {
  position: relative;
  box-sizing: border-box;
  width: min(480px, calc(100vw - 32px));
  max-width: 100%;
  margin: 0 auto;
  padding: 28px 32px 32px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 24px 48px rgba(30, 30, 30, 0.12), 0 8px 16px rgba(30, 30, 30, 0.06);
}

#modal-form .modal-form__content {
  margin-bottom: 24px;
}

#modal-form .modal-form__heading {
  margin: 0 0 10px;
  font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
  font-weight: 700;
  line-height: 1.25;
  color: #1e1e1e;
  letter-spacing: -0.02em;
}

#modal-form .modal-form__subheading {
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.5;
  color: #666;
}

#modal-form .el-form--modal .el-form-flex {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin-bottom: 4px;
}

#modal-form .el-form--modal .el-form-label-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#modal-form .el-form--modal .el-form-span {
  font-size: 0.9375rem;
  font-weight: 600;
  color: #555;
}

#modal-form .el-form--modal .el-form-input {
  width: 100%;
  min-height: 52px;
  padding: 14px 16px;
  font-size: 1.125rem;
  line-height: 1.35;
  border: 1px solid #d8d8d8;
  border-radius: 10px;
  background: #fafafa;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
  box-sizing: border-box;
}

#modal-form .el-form--modal .el-form-input:focus {
  outline: none;
  border-color: #2a3088;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(42, 48, 136, 0.12);
}

#modal-form.modal-form .el-form--modal .el-form-input.form--error,
#modal-form.modal-form .el-form--modal .el-form-input.error,
#modal-form.modal-form .el-form--modal .el-form-label.label--error .el-form-input,
#modal-form.modal-form .el-form--modal label.label--error .el-form-input {
  border: 1px solid #d63b3b !important;
  border-color: #d63b3b !important;
  box-shadow: 0 0 0 2px rgba(214, 59, 59, 0.18) !important;
}

#modal-form .el-form--modal .el-form-input::placeholder {
  color: #9a9a9a;
}

#modal-form .el-form--modal .el-form-btns {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 22px;
  align-items: stretch;
}

#modal-form .el-form--modal .el-form-wrap--policy {
  width: 100%;
  margin: 0;
}

#modal-form .el-form--modal .el-form-policy--checkbox {
  gap: 12px;
  cursor: pointer;
  margin: 0;
  font-weight: 400;
  font-size: 0.9375rem;
  line-height: 1.45;
  color: #444;
  padding-left: 0;
  display: flex;
  align-items: flex-start;
}

#modal-form .el-form--modal .el-form-policy__input {
  position: static !important;
  opacity: 1 !important;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: #2a3088;
  cursor: pointer;
  -webkit-appearance: checkbox;
  appearance: checkbox;
}

#modal-form .el-form--modal .el-form-policy::before,
#modal-form .el-form--modal .el-form-policy::after {
  content: none !important;
  display: none !important;
}

#modal-form .el-form--modal .el-form-policy__text {
  font-size: 0.9375rem;
  line-height: 1.45;
}

#modal-form .el-form--modal .el-form-policy__text a {
  color: #2a3088;
  text-decoration: underline;
  text-underline-offset: 2px;
}

#modal-form .el-form--modal .el-form-policy__text a:hover {
  color: #1e2270;
}

#modal-form .el-form--modal .el-form-button {
  width: 100%;
  margin: 0;
}

#modal-form .el-form--modal .el-form-button .btn {
  width: 100%;
  justify-content: center;
}

#modal-form .el-form--modal .btn.btn-default:after,
#modal-form .el-form--modal .btn.btn-default:hover:after {
  content: none !important;
  display: none !important;
}

#modal-form .el-form--modal button.btn.btn-sm.btn-default.btnn {
  background: #bca480;
  border: 1px solid #bca480;
  color: #fff;
}

#modal-form .el-form--modal button.btn.btn-sm.btn-default.btnn:hover {
  background: #bca480;
  border-color: #bca480;
  color: #fff;
  opacity: 0.92;
}

#modal-form .el-form--modal .form-response {
  margin-top: 16px;
  font-size: 0.875rem;
  line-height: 1.45;
}

/* Пагинация каталога (WooCommerce + fallback в archive-product.php) */
.woocommerce-pagination,
.theme-products-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 28px 0 44px;
}

.woocommerce-pagination ul,
.theme-products-pagination ul {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-pagination ul li,
.theme-products-pagination ul li {
	margin: 0;
	padding: 0;
}

.woocommerce-pagination ul li > a,
.woocommerce-pagination ul li > span,
.theme-products-pagination ul li > a,
.theme-products-pagination ul li > span {
	min-width: 42px;
	height: 42px;
	padding: 0 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	border: 1px solid #d9dde3;
	background: #ffffff;
	color: #2f3a46;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	transition: all 0.2s ease;
}

.woocommerce-pagination ul li > a:hover,
.woocommerce-pagination ul li > a:focus,
.theme-products-pagination ul li > a:hover,
.theme-products-pagination ul li > a:focus {
	border-color: #bca480;
	color: #bca480;
	background: #fffdf9;
	outline: none;
	transform: translateY(-1px);
}

.woocommerce-pagination ul li .current,
.theme-products-pagination ul li .current {
	border-color: #bca480;
	background: #bca480;
	color: #fff;
	box-shadow: 0 6px 14px rgba(188, 164, 128, 0.28);
}

.woocommerce-pagination ul li .dots,
.theme-products-pagination ul li .dots {
	border-color: transparent;
	background: transparent;
	color: #9aa3ad;
	min-width: 30px;
	padding: 0 4px;
}

@media (max-width: 767px) {
	.theme-products-pagination {
		margin: 22px 0 32px;
	}

	.woocommerce-pagination {
		margin: 22px 0 32px;
	}

	.woocommerce-pagination ul,
	.theme-products-pagination ul {
		gap: 6px;
	}

	.woocommerce-pagination ul li > a,
	.woocommerce-pagination ul li > span,
	.theme-products-pagination ul li > a,
	.theme-products-pagination ul li > span {
		min-width: 38px;
		height: 38px;
		font-size: 13px;
		border-radius: 9px;
	}
}