.yamato-menu-block {
	padding: clamp(3rem, 5vw, 5rem) 0 clamp(4rem, 6vw, 6rem);
	background: #fff;
	overflow: visible;
}

.yamato-menu-block--empty {
	padding: 2rem;
	text-align: center;
	color: #595758;
}

.yamato-menu__inner {
	position: relative;
	padding-left: clamp(3rem, 7vw, 7.5rem);
	padding-right: clamp(3rem, 7vw, 7.5rem);
}

.yamato-menu__label {
	left: 0;
	top: 0;
	margin-top: 1rem;
}

.yamato-menu__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	margin-bottom: 2.5rem;
}

.yamato-menu__header-spacer {
	flex: 1 1 auto;
}

.yamato-menu__title {
	margin: 0;
	font-family: var(--yamato-font-nav);
	font-size: clamp(2rem, 3.5vw, 3rem);
	font-weight: 400;
	line-height: 1.17;
	color: #040a1c;
}

.yamato-menu__arrows {
	display: flex;
	align-items: center;
	gap: 1rem;
	flex-shrink: 0;
	position: relative;
	z-index: 2;
}

.yamato-menu__tabs {
	display: flex;
	align-items: flex-start;
	overflow: hidden;
}

.yamato-menu__nav {
	flex: 0 0 auto;
	width: 100%;
	max-width: 20rem;
	margin: 0 2rem 0 0;
	overflow: hidden;
}

.yamato-menu__tab,
.yamato-menu__view-all,
a.yamato-menu__tab {
	display: inline-block;
	width: 100%;
	margin: 0;
	padding: 0 0 0.5rem;
	border: 0;
	border-bottom: 2px solid transparent;
	background: none;
	font-family: var(--yamato-font-nav);
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.5rem;
	color: #ca3c3f;
	text-align: left;
	text-decoration: none;
	cursor: pointer;
	transition: color 0.5s cubic-bezier(0.165, 0.84, 0.44, 1), border-color 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.yamato-menu__tab:not(:last-child),
.yamato-menu__view-all,
a.yamato-menu__tab:not(:last-child) {
	margin-bottom: 2rem;
}

.yamato-menu__tab.is-active {
	color: #040a1c;
	border-color: #040a1c;
}

/* Перебивает body.yamato-body :where(button) { font: inherit; border: none; } */
body.yamato-body .yamato-menu__tab {
	font-family: var(--yamato-font-nav);
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.5rem;
	border-bottom: 2px solid transparent;
}

body.yamato-body .yamato-menu__tab.is-active {
	color: #040a1c;
	border-bottom-color: #040a1c;
}

.yamato-menu__tab:hover,
.yamato-menu__view-all:hover {
	color: #040a1c;
}

.yamato-menu__panels {
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
	overflow: hidden;
}

.yamato-menu__panel {
	display: none;
}

.yamato-menu__panel.is-active {
	display: block;
}

.yamato-menu__panel-empty {
	margin: 0;
	font-size: 1rem;
	line-height: 1.5rem;
	color: #7a7879;
}

.yamato-menu__slider {
	position: relative;
	overflow: hidden;
}

.yamato-menu__slider .swiper-slide {
	height: auto;
}

.yamato-menu__header .yamato-menu__arrow {
	position: static;
	top: auto;
	right: auto;
	left: auto;
	bottom: auto;
	margin-top: 0;
}

.yamato-menu__arrow {
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: #040a1c;
	cursor: pointer;
	pointer-events: auto;
	transition: color 0.3s ease;
}

.yamato-menu__arrow::after {
	font-size: 2.5rem;
	font-weight: 400;
}

.yamato-menu__arrow:hover {
	color: #ca3c3f;
}

.yamato-menu__arrow.swiper-button-disabled {
	opacity: 0.35;
	cursor: default;
	pointer-events: none;
}

.yamato-menu__product {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
	padding: 1.5rem;
	border: 2px solid #f1f1f1;
	background: #fff;
	transition: border-color 0.5s ease;
}

.yamato-menu__product:hover {
	border-color: #282f40;
}

.yamato-menu__product-image {
	position: relative;
	margin: 0;
	background: none;
}

.yamato-menu__product-media {
	display: block;
}

.yamato-menu__product-thumb {
	width: 100%;
	height: auto;
}

.yamato-menu__product-body {
	flex: 1 1 auto;
	padding-top: 1.5rem;
	font-size: 1rem;
	line-height: 1.5rem;
	color: #7a7879;
}

.yamato-menu__product-title {
	margin: 0 0 0.5rem;
	font-family: var(--yamato-font-nav);
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.5rem;
	color: #040a1c;
}

.yamato-menu__product-link {
	color: inherit;
	text-decoration: none;
}

.yamato-menu__product-link:hover {
	color: #ca3c3f;
}

.yamato-menu__product-meta {
	display: block;
	margin: 0 0 1rem;
	font-size: 0.875rem;
	line-height: 1rem;
	color: #a8a7a8;
}

.yamato-menu__product-meta-item:not(:last-child) {
	border-right: 1px solid #a8a7a8;
	padding-right: 5px;
	margin-right: 5px;
}

.yamato-menu__product-excerpt {
	margin-bottom: 2rem;
}

.yamato-menu__product-excerpt > :last-child {
	margin-bottom: 0;
}

.yamato-menu__product-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
}

.yamato-menu__product-price {
	font-family: var(--yamato-font-nav);
	font-size: 1.5rem;
	font-weight: 300;
	line-height: 2rem;
	color: #040a1c;
}

.yamato-menu__product-price .amount {
	font-weight: inherit;
}

.yamato-menu__product-cart {
	display: flex;
	align-items: center;
}

.yamato-menu__cart-controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	min-width: 5.875rem;
}

.yamato-menu__cart-controls.is-loading {
	opacity: 0.6;
	pointer-events: none;
}

.yamato-menu__cart-controls.is-empty .yamato-menu__quantity {
	display: none;
}

.yamato-menu__cart-controls:not(.is-empty) .yamato-menu__add-to-cart {
	display: none;
}

.yamato-menu__add-to-cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	margin: 0;
	padding: 0;
	border: 2px solid #ca3c3f;
	background: transparent;
	color: #282f40;
	cursor: pointer;
	transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.yamato-menu__add-to-cart .material-icons {
	font-size: 1.25rem;
	line-height: 1;
}

.yamato-menu__add-to-cart:hover {
	background: #ca3c3f;
	color: #fff;
}

.yamato-menu__quantity {
	display: flex;
	align-items: center;
	position: relative;
	width: 5.875rem;
}

.yamato-menu__qty-input {
	width: 100%;
	height: 2.5rem;
	margin: 0;
	padding: 0 2rem;
	border: 2px solid #e5e5e6;
	background: #fff;
	font-family: var(--yamato-font-body);
	font-size: 0.875rem;
	line-height: 1;
	color: #7a7879;
	text-align: center;
	-moz-appearance: textfield;
}

.yamato-menu__qty-input::-webkit-outer-spin-button,
.yamato-menu__qty-input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.yamato-menu__qty-btn {
	position: absolute;
	top: 50%;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.5rem;
	height: 1.5rem;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font-family: var(--yamato-font-nav);
	font-size: 1rem;
	line-height: 1;
	color: #7a7879;
	transform: translateY(-50%);
	cursor: pointer;
	transition: color 0.3s ease;
}

.yamato-menu__qty-btn--minus {
	left: 0.875rem;
}

.yamato-menu__qty-btn--plus {
	right: 0.875rem;
}

.yamato-menu__qty-btn:hover:not(:disabled) {
	color: #ca3c3f;
}

.yamato-menu__qty-btn:disabled {
	opacity: 0.35;
	cursor: default;
}

.yamato-menu__choose-options {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.5rem;
	padding: 0 1rem;
	border: 2px solid #ca3c3f;
	font-family: var(--yamato-font-nav);
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1;
	color: #282f40;
	text-decoration: none;
	transition: background-color 0.3s ease, color 0.3s ease;
}

.yamato-menu__choose-options:hover {
	background: #ca3c3f;
	color: #fff;
}

.yamato-menu-block .added_to_cart {
	display: none !important;
}

@media (max-width: 1199px) {
	.yamato-menu__inner {
		padding-left: clamp(2rem, 5vw, 5rem);
		padding-right: clamp(2rem, 5vw, 5rem);
	}

}

@media (max-width: 1024px) {
	.yamato-menu__tabs {
		flex-direction: column;
		align-items: flex-start;
	}

	.yamato-menu__nav {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		max-width: 100%;
		width: 100%;
		margin: 0 0 2rem;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.yamato-menu__nav::-webkit-scrollbar {
		display: none;
	}

	.yamato-menu__tab,
	.yamato-menu__view-all {
		width: auto;
		flex: 0 0 auto;
		margin-right: 2.5rem;
		margin-bottom: 0;
		white-space: nowrap;
	}

	.yamato-menu__view-all {
		margin-right: 0;
	}

	.yamato-menu__panels {
		width: 100%;
	}

}

@media (max-width: 768px) {
	.yamato-menu__inner {
		padding-left: 0;
		padding-right: 0;
	}

	.yamato-menu__label {
		position: relative;
		writing-mode: horizontal-tb;
		transform: none;
		margin: 0 0 1rem;
	}

	.yamato-menu__nav {
		margin-bottom: 1.5rem;
	}

	.yamato-menu__tab,
	.yamato-menu__view-all {
		margin-right: 1.5rem;
		font-size: 1.25rem;
	}

	body.yamato-body .yamato-menu__tab {
		font-size: 1.25rem;
	}
}

@media (max-width: 392px) {
	.yamato-menu__arrows {
		display: none;
	}
}
