:root {
	--bs-font-sans-serif: 'Times New Roman', Times, serif;
	--bs-body-font-family: var(--bs-font-sans-serif);
}
body {
	font-family: 'Times New Roman', Times, serif;
	font-weight: 400;
	color: #666;
	font-size: 12px;
	line-height: 20px;
	width: 100%;
}
button, input, select, textarea, optgroup {
	font-family: inherit;
}
h1, h2, h3, h4, h5, h6 {
	color: #444;
}
/* default font size */
.fa {
	font-size: 14px;

}
.add-to-favorites i.fa.fa-heart {
	color: #fff;
}
/* Override the bootstrap defaults */
h1 {
	font-size: 33px;
}
h2 {
	font-size: 27px;
}
h3 {
	font-size: 21px;
}
h4 {
	font-size: 15px;
}
h5 {
	font-size: 12px;
}
h6 {
	font-size: 10.2px;
}
a {
	color: #23a1d1;
}
a:hover {
	text-decoration: none;
}
legend {
	font-size: 18px;
	padding: 7px 0px
}
label {
	font-size: 12px;
	font-weight: normal;
}
select.form-control, textarea.form-control, input[type="text"].form-control, input[type="password"].form-control, input[type="datetime"].form-control, input[type="datetime-local"].form-control, input[type="date"].form-control, input[type="month"].form-control, input[type="time"].form-control, input[type="week"].form-control, input[type="number"].form-control, input[type="email"].form-control, input[type="url"].form-control, input[type="search"].form-control, input[type="tel"].form-control, input[type="color"].form-control {
	font-size: 12px;
}
.input-group input, .input-group select, .input-group .dropdown-menu, .input-group .popover {
	font-size: 12px;
}
.input-group .input-group-addon {
	font-size: 12px;
	height: 30px;
}
/* Fix some bootstrap issues */
span.hidden-xs, span.hidden-sm, span.hidden-md, span.hidden-lg {
	display: inline;
}

.nav-tabs {
	margin-bottom: 15px;
}
div.required .control-label:before {
	content: '* ';
	color: #F00;
	font-weight: bold;
}
/* Gradent to all drop down menus */
.dropdown-menu li > a:hover {
	text-decoration: none;
	color: #ffffff;
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
}
/* top */
#top {
	background-color: #EEEEEE;
	border-bottom: 1px solid #e2e2e2;
	padding: 4px 0px 3px 0;
	margin: 0 0 20px 0;
	min-height: 40px;
}
#top .container {
	padding: 0 20px;
}
#top #form-currency .currency-select,
#top #form-language .language-select {
	text-align: left;
}
#top #form-currency .currency-select:hover,
#top #form-language .language-select:hover {
	text-shadow: none;
	color: #ffffff;
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
}
#top .btn-link, #top-links li, #top-links a {
	color: #888;
	text-shadow: 0 1px 0 #FFF;
	text-decoration: none;
}
#top .btn-link:hover, #top-links a:hover {
	color: #444;
}
#top-links .dropdown-menu a {
	text-shadow: none;
}
#top-links .dropdown-menu a:hover {
	color: #FFF;
}
#top .btn-link strong {
	font-size: 14px;
        line-height: 14px;
}
#top-links {
	padding-top: 6px;
}
a{
	text-decoration: none;
}
#top-links a + a {
	margin-left: 15px;
}
/* logo */
#logo {
	margin: 0 0 10px 0;
}
/* search */

#search .input-lg {
	height: 40px;
	line-height: 20px;
	padding: 0 10px;
}
#search .btn-lg {
	font-size: 15px;
	line-height: 18px;
	padding: 10px 35px;
	text-shadow: 0 1px 0 #FFF;
}
/* cart */
#cart {
	margin-bottom: 10px;
}
#cart > .btn {
	font-size: 12px;
	line-height: 18px;
	color: #FFF;
}
#cart.open > .btn {
	background-image: none;
	background-color: #FFFFFF;
	border: 1px solid #E6E6E6;
	color: #666;
	box-shadow: none;
	text-shadow: none;
}
#cart.open > .btn:hover {
	color: #444;
}
#cart .dropdown-menu {
	background: #eee;
	z-index: 1001;
}
#cart .dropdown-menu {
	min-width: 100%;
	overflow-y: auto;
	max-height: 800px;
	scrollbar-width: thin;
	overflow-x: hidden;
}
@media (max-width: 478px) {
	#cart .dropdown-menu {
		width: 100%;
	}
}
#cart .dropdown-menu table {
	margin-bottom: 10px;
}
#cart .dropdown-menu li > div {
	min-width: 427px;
	padding: 0 10px;
}
@media (max-width: 478px) {
	#cart .dropdown-menu li > div {
		min-width: 100%;
	}
}
#cart .dropdown-menu li p {
	margin: 20px 0;
}
/* menu */
#menu {
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
	border-color: #1f90bb #1f90bb #145e7a;
	min-height: 40px;
}
#menu .nav > li > a {
	color: #fff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	padding: 10px 15px 10px 15px;
	min-height: 15px;
	background-color: transparent;
}
#menu .nav > li > a:hover, #menu .nav > li.open > a {
	background-color: rgba(0, 0, 0, 0.1);
}
#menu .dropdown-menu {
	padding-bottom: 0;
}
#menu .dropdown-inner {
	display: table;
}
#menu .dropdown-inner ul {
	display: table-cell;
}
#menu .dropdown-inner a {
	min-width: 160px;
	display: block;
	padding: 3px 20px;
	clear: both;
	line-height: 20px;
	color: #333333;
	font-size: 12px;
}
#menu .dropdown-inner li a:hover {
	color: #FFFFFF;
}
#menu .see-all {
	display: block;
	margin-top: 0.5em;
	border-top: 1px solid #DDD;
	padding: 3px 20px;
	-webkit-border-radius: 0 0 4px 4px;
	-moz-border-radius: 0 0 4px 4px;
	border-radius: 0 0 3px 3px;
	font-size: 12px;
}
#menu .see-all:hover, #menu .see-all:focus {
	text-decoration: none;
	color: #ffffff;
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
}
#menu #category {
	float: left;
	padding-left: 15px;
	font-size: 16px;
	font-weight: 700;
	line-height: 40px;
	color: #fff;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}
#menu .btn-navbar {
	font-size: 15px;
	font-stretch: expanded;
	color: #FFF;
	padding: 2px 18px;
	float: right;
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
	border-color: #1f90bb #1f90bb #145e7a;
}
#menu .btn-navbar:hover, #menu .btn-navbar:focus, #menu .btn-navbar:active, #menu .btn-navbar.disabled, #menu .btn-navbar[disabled] {
	color: #ffffff;
	background-color: #229ac8;
}
@media (min-width: 768px) {
	#menu .dropdown:hover .dropdown-menu {
		display: block;
	}
}
@media (max-width: 767px) {
	#menu {
		border-radius: 4px;
	}
	#menu div.dropdown-inner > ul.list-unstyled {
		display: block;
	}
	#menu div.dropdown-menu {
		margin-left: 0 !important;
		padding-bottom: 10px;
		background-color: rgba(0, 0, 0, 0.1);
	}
	#menu .dropdown-inner {
		display: block;
	}
	#menu .dropdown-inner a {
		width: 100%;
		color: #fff;
	}
	#menu .dropdown-menu a:hover,
	#menu .dropdown-menu ul li a:hover {
		background: rgba(0, 0, 0, 0.1);
	}
	#menu .see-all {
		margin-top: 0;
		border: none;
		border-radius: 0;
		color: #fff;
	}
}
/* content */
#content {
	min-height: 600px;
}
/* Слайдшоу: убрать «поля» от белой рамки opencart.css и подогнать высоту блока под картинку */
#content .slideshow.swiper-viewport {
	border: none;
	border-radius: 0;
	box-shadow: none;
	background: transparent;
}
#content .slideshow .swiper-slide {
	line-height: 0;
}
#content .slideshow .swiper-slide img {
	display: block;
	width: 100%;
	height: auto;
}
/* footer */
footer {
	margin-top: 30px;
	padding-top: 30px;
	background-color: #303030;
	border-top: 1px solid #ddd;
	color: #e2e2e2;
}
footer hr {
	border-top: none;
	border-bottom: 1px solid #666;
}
footer a {
	color: #ccc;
}
footer a:hover {
	color: #fff;
}
footer h5 {
	font-family: 'Times New Roman', Times, serif;
	font-size: 13px;
	font-weight: bold;
	color: #fff;
}
/* alert */
.alert {
	padding: 8px 14px 8px 14px;
}
/* breadcrumb */
.breadcrumb {
	margin: 0 0 20px 0;
	padding: 8px 0;
	border: 1px solid #ddd;
}
.breadcrumb i {
	font-size: 15px;
}
.breadcrumb > li {
	text-shadow: 0 1px 0 #FFF;
	padding: 0 20px;
	position: relative;
	white-space: nowrap;
}
.breadcrumb > li + li:before {
	content: '';
	padding: 0;
}
.breadcrumb > li:after {
	content: '';
	display: block;
	position: absolute;
	top: -3px;
	right: -5px;
	width: 26px;
	height: 26px;
	border-right: 1px solid #DDD;
	border-bottom: 1px solid #DDD;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.pagination {
	margin: 0;
	flex-wrap: wrap;
	gap: 0.25rem;
}
.pagination > li > a,
.pagination > li > span {
	font-size: 1.125rem;
	padding: 0.45rem 0.85rem;
	min-width: 2.5rem;
	text-align: center;
	line-height: 1.3;
}
.pagination > li > a {
	font-weight: 500;
}
.minw-0 {
	min-width: 0;
}
/* buttons */
.buttons {
	margin: 1em 0;
}
.btn {
	padding: 7.5px 12px;
	font-size: 12px;
	border: 1px solid #cccccc;
	border-radius: 4px;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
}
.btn-xs {
	font-size: 9px;
}
.btn-sm {
	font-size: 10.2px;
}
.btn-lg {
	padding: 10px 16px;
	font-size: 15px;
}
.btn-group > .btn, .btn-group > .dropdown-menu, .btn-group > .popover {
	font-size: 12px;
}
.btn-group > .btn-xs {
	font-size: 9px;
}
.btn-group > .btn-sm {
	font-size: 10.2px;
}
.btn-group > .btn-lg {
	font-size: 15px;
}
.btn-default {
	color: #777;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
	background-color: #e7e7e7;
	background-image: linear-gradient(to bottom, #eeeeee, #dddddd);
	background-repeat: repeat-x;
	border-color: #dddddd #dddddd #b3b3b3 #b7b7b7;
}
.btn-primary {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #229ac8;
	background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
	background-repeat: repeat-x;
	border-color: #1f90bb #1f90bb #145e7a;
}
.btn-primary:hover, .btn-primary:active, .btn-primary.active, .btn-primary.disabled, .btn-primary[disabled] {
	background-color: #1f90bb;
	background-position: 0 -15px;
}
.btn-warning {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #faa732;
	background-image: linear-gradient(to bottom, #fbb450, #f89406);
	background-repeat: repeat-x;
	border-color: #f89406 #f89406 #ad6704;
}
.btn-warning:hover, .btn-warning:active, .btn-warning.active, .btn-warning.disabled, .btn-warning[disabled] {
	box-shadow: inset 0 1000px 0 rgba(0, 0, 0, 0.1);
}
.btn-danger {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #da4f49;
	background-image: linear-gradient(to bottom, #ee5f5b, #bd362f);
	background-repeat: repeat-x;
	border-color: #bd362f #bd362f #802420;
}
.btn-danger:hover, .btn-danger:active, .btn-danger.active, .btn-danger.disabled, .btn-danger[disabled] {
	box-shadow: inset 0 1000px 0 rgba(0, 0, 0, 0.1);
}
.btn-success {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #5bb75b;
	background-image: linear-gradient(to bottom, #62c462, #51a351);
	background-repeat: repeat-x;
	border-color: #51a351 #51a351 #387038;
}
.btn-success:hover, .btn-success:active, .btn-success.active, .btn-success.disabled, .btn-success[disabled] {
	box-shadow: inset 0 1000px 0 rgba(0, 0, 0, 0.1);
}
.btn-info {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #df5c39;
	background-image: linear-gradient(to bottom, #e06342, #dc512c);
	background-repeat: repeat-x;
	border-color: #dc512c #dc512c #a2371a;
}
.btn-info:hover, .btn-info:active, .btn-info.active, .btn-info.disabled, .btn-info[disabled] {
	background-image: none;
	background-color: #df5c39;
}
.btn-link {
	border-color: rgba(0, 0, 0, 0);
	cursor: pointer;
	color: #23A1D1;
	border-radius: 0;
}
.btn-link, .btn-link:active, .btn-link[disabled] {
	background-color: rgba(0, 0, 0, 0);
	background-image: none;
	box-shadow: none;
}
.btn-inverse {
	color: #ffffff;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
	background-color: #363636;
	background-image: linear-gradient(to bottom, #444444, #222222);
	background-repeat: repeat-x;
	border-color: #222222 #222222 #000000;
}
.btn-inverse:hover, .btn-inverse:active, .btn-inverse.active, .btn-inverse.disabled, .btn-inverse[disabled] {
	background-color: #222222;
	background-image: linear-gradient(to bottom, #333333, #111111);
}
/* list group */
.list-group a {
	border: 1px solid #DDDDDD;
	color: #888888;
	padding: 8px 12px;
}
.list-group a.active, .list-group a.active:hover, .list-group a:hover {
	color: #444444;
	background: #eeeeee;
	border: 1px solid #DDDDDD;
	text-shadow: 0 1px 0 #FFF;
}
/* carousel */
.carousel-caption {
	color: #FFFFFF;
	text-shadow: 0 1px 0 #000000;
}
.carousel-control .icon-prev:before {
	content: '\f053';
	font-family: FontAwesome;
}
.carousel-control .icon-next:before {
	content: '\f054';
	font-family: FontAwesome;
}
/* product list */
.product-thumb {
	min-height: 150px;
	margin-bottom: 10px;

}
.product-thumb .image {
	text-align: center;
}
.product-thumb .image a {
	display: block;
}
.product-thumb .image img,
.product-thumb .image .slider-image {
	transition: filter 0.3s ease;
}
.product-thumb .image a:hover img,
.product-thumb .image a:hover .slider-image {
	filter: brightness(1.12);
}
.product-thumb .image img {
	margin-left: auto;
	margin-right: auto;
}
.product-grid .product-thumb .image {
	float: none;
}
@media (min-width: 767px) {
.product-list .product-thumb .image {
	float: left;

}
}
.product-thumb h4 {
	font-weight: bold;
}
.product-thumb .caption {
	padding: 0 20px;
	min-height: 180px;
}
.product-list .product-thumb .caption {
	margin-left: 230px;
}
@media (max-width: 1200px) {
.product-grid .product-thumb .caption {
	min-height: 210px;
	padding: 0 10px;
}
}
@media (max-width: 767px) {
.product-list .product-thumb .caption {
	min-height: 0;
	margin-left: 0;
	padding: 0 10px;
}
.product-grid .product-thumb .caption {
	min-height: 0;
}
}
.product-thumb .rating {
	padding-bottom: 10px;
}
.rating .fa-stack {
	font-size: 8px;
}
.rating .fa-star-o {
	color: #999;
	font-size: 15px;
}
.rating .fa-star {
	color: #FC0;
	font-size: 15px;
}
.rating .fa-star + .fa-star-o {
	color: #E69500;
}
h2.price {
	margin: 0;
}
.product-thumb .price {
	color: #444;
}
.product-thumb .price-new {
	font-weight: 600;
}
.product-thumb .price-old {
	color: #999;
	text-decoration: line-through;
	margin-left: 10px;
}
.product-thumb .price-tax {
	color: #999;
	font-size: 12px;
	display: block;
}
.product-thumb .button-group {
	border-top: 1px solid #ddd;
	background-color: #eee;
	overflow: auto;
}
.product-list .product-thumb .button-group {
	border-left: 1px solid #ddd;
}
@media (max-width: 768px) {
	.product-list .product-thumb .button-group {
		border-left: none;
	}
}
.product-thumb .button-group button {
	width: 60%;
	border: none;
	display: inline-block;
	float: left;
	background-color: #eee;
	color: #888;
	line-height: 38px;
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;
}
.product-thumb .button-group button + button {
	width: 20%;
	border-left: 1px solid #ddd;
}
.product-thumb .button-group button:hover {
	color: #444;
	background-color: #ddd;
	text-decoration: none;
	cursor: pointer;
}
@media (max-width: 1200px) {
	.product-thumb .button-group button, .product-thumb .button-group button + button {
		width: 33.33%;
	}
}
@media (max-width: 767px) {
	.product-thumb .button-group button, .product-thumb .button-group button + button {
		width: 33.33%;
	}
}
.thumbnails {
	overflow: auto;
	clear: both;
	list-style: none;
	padding: 0;
	margin: 0;
}
.thumbnails > li {
	margin-left: 20px;
}
.thumbnails {
	margin-left: -20px;
}
.thumbnails > img {
	width: 100%;
}
.image-additional a {
	margin-bottom: 20px;
	padding: 5px;
	display: block;
	border: 1px solid #ddd;
}
.image-additional {
	max-width: 78px;
}
.thumbnails .image-additional {
	float: left;
	margin-left: 20px;
}

@media (min-width: 1200px) {
	#content .col-lg-2:nth-child(6n+1),
	#content .col-lg-3:nth-child(4n+1),
	#content .col-lg-4:nth-child(3n+1),
	#content .col-lg-6:nth-child(2n+1) {
		clear:left;
	}
}
@media (min-width: 992px) and (max-width: 1199px) {
	#content .col-md-2:nth-child(6n+1),
	#content .col-md-3:nth-child(4n+1),
	#content .col-md-4:nth-child(3n+1),
	#content .col-md-6:nth-child(2n+1) {
		clear:left;
	}
}
@media (min-width: 768px) and (max-width: 991px) {
	#content .col-sm-2:nth-child(6n+1),
	#content .col-sm-3:nth-child(4n+1),
	#content .col-sm-4:nth-child(3n+1),
	#content .col-sm-6:nth-child(2n+1) {
		clear:left;
	}
}

/* fixed colum left + content + right*/
@media (min-width: 768px) {
    #column-left  .product-layout .col-md-3 {
       width: 100%;
    }

	#column-left + #content .product-layout .col-md-3 {
       width: 50%;
    }

	#column-left + #content + #column-right .product-layout .col-md-3 {
       width: 100%;
    }

    #content + #column-right .product-layout .col-md-3 {
       width: 100%;
    }
}

/* fixed product layouts used in left and right columns */
#column-left .product-layout, #column-right .product-layout {
	width: 100%;
}

/* fixed mobile cart quantity input */
.input-group .form-control[name^=quantity] {
	min-width: 50px;
}

/* Missing focus and border color to overwrite bootstrap */
.btn-info:hover, .btn-info:active, .btn-info.active, .btn-info.disabled, .btn-info[disabled] {
    background-image: none;
    background-color: #df5c39;
}

/* fix oclabs */
.alert-dismissable .close, .alert-dismissible .close {
	right: -1px;
}
.breadcrumb-container {
	margin-top: 5em;
}





/* Навигация шапки / меню каталога */
a.hover-effect {
	transition: background-color 0.2s ease;
}
a.hover-effect:hover {
	background-color: rgba(0, 0, 0, 0.06);
	color: #000;
}

/* Счётчик позиций в корзине в шапке */
.header-cart-link .header-cart-count {
	font-size: 0.65rem;
	font-weight: 600;
	line-height: 1;
	min-width: 1.1rem;
	padding: 0.25em 0.4em;
	top: -2px;
	right: -10px;
	left: auto;
	transform: none;
}

/* Карточка категории: одна ссылка только вокруг блока с фото (без кнопок и без вложенных <a>) */
.product-thumb .image a.product-thumb-img-href {
	display: block;
}

/* Слайдер превью: фото на всю ширину блока (во вкладках/Slick и в сетке одинаково), высота по пропорции — без обрезки и без «узкой» картинки по ссылке */
.image-slider {
	width: 100%;
	height: auto;
	min-height: 0;
	cursor: pointer;
	position: relative;
	display: block;
	overflow: hidden;
	border-radius: 8px;
}

.slider-image {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	transition: opacity 0.5s ease-in-out;
}

@media (max-width: 767px) {
	#content .card.card-product-tile,
	.category-tabs .card.card-product-tile,
	#account-wishlist .card.card-product-tile {
		overflow: visible !important;
	}
	#content .card.card-product-tile .product-thumb .image,
	.category-tabs .card.card-product-tile .product-thumb .image,
	#account-wishlist .card.card-product-tile .product-thumb .image {
		overflow: visible;
	}
	.image-slider {
		overflow: visible;
	}
}

.product-layout{
	margin-bottom: 0.5em;
	padding: 0.5em;
}

/* Главная: карточки модулей как card p-2 + #f4f4f4 в блоге — без растягивания по высоте ряда */
#common-home #content .row > .product-layout {
	align-self: flex-start;
}

/* Главная: «Рекомендуем» — сетка по центру контейнера, ровные боковые поля */
#common-home .category-tabs.module-featured > .row.w-100 {
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 100%;
}
#common-home .category-tabs.module-featured .product-layout.product-list {
	box-sizing: border-box;
}

/* Страница товара: «Часто покупают вместе» — та же центровка сетки, что «Рекомендуем» на главной */
#product-page .category-tabs.module-bought-together > .row.w-100 {
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 100%;
}
#product-page .category-tabs.module-bought-together .product-layout.product-list {
	box-sizing: border-box;
}

/* Страница товара: отзывы — ряд внутри .col-12, без сдвига вложенной .row в .row.g-3 */
#product-page .product-page-reviews > .row.w-100 {
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
#product-page .product-page-reviews .col-md-6 {
	box-sizing: border-box;
}

/* Страница категории: сетка в #content (в т.ч. вид «сетка» — .product-grid из common.js) */
#product-category #content .category-tabs.module-featured > .row.w-100 {
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 100%;
}
#product-category #content .category-tabs.module-featured .product-layout.product-list,
#product-category #content .category-tabs.module-featured .product-layout.product-grid {
	box-sizing: border-box;
}

/* Поиск (container py-2 > #content): та же центровка сетки */
.container.py-2 #content .category-tabs.module-featured > .row.w-100 {
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 100%;
}
.container.py-2 #content .category-tabs.module-featured .product-layout.product-list,
.container.py-2 #content .category-tabs.module-featured .product-layout.product-grid {
	box-sizing: border-box;
}

/* Главная: карточки модулей как в блоге (blog/category) — серый фон, без жёсткой «коробки» card-product-tile */
#common-home .card.card-tile-blog {
	background: #f4f4f4 !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0.375rem;
	overflow: hidden;
}
#common-home .card.card-tile-blog .product-thumb .image {
	text-align: left;
	line-height: 0;
}
#common-home .card.card-tile-blog .product-thumb .image a {
	display: block;
}
#common-home .card.card-tile-blog .product-thumb .image img {
	display: block;
	width: 100%;
	height: auto;
	margin-left: 0;
	margin-right: 0;
}
#common-home .card.card-tile-blog .product-thumb .caption {
	min-height: 0 !important;
	padding: 0.75rem 0 0;
}

/* «Последние статьи» / «Рецепты»: только блоки блога (не сетка товаров каталога в том же #content) */
#common-home .blog-latest-recipe-grid .row > .product-layout,
#product-page .blog-latest-recipe-grid .row > .product-layout,
#product-category #content .blog-latest-recipe-grid .row > .product-layout {
	align-self: flex-start;
}
#common-home .blog-latest-recipe-grid .product-thumb,
#product-page .blog-latest-recipe-grid .product-thumb,
#product-category #content .blog-latest-recipe-grid .product-thumb {
	position: relative;
}
#common-home .blog-latest-recipe-grid button.add-to-favorites,
#product-page .blog-latest-recipe-grid button.add-to-favorites,
#product-category #content .blog-latest-recipe-grid button.add-to-favorites {
	top: 8px;
	left: 8px;
	z-index: 2;
}
#common-home .blog-latest-recipe-grid .card,
#product-page .blog-latest-recipe-grid .card,
#product-category #content .blog-latest-recipe-grid .card {
	border: none !important;
	box-shadow: none !important;
	border-radius: 0.375rem;
	overflow: hidden;
}
#common-home .blog-latest-recipe-grid .product-thumb .image,
#product-page .blog-latest-recipe-grid .product-thumb .image,
#product-category #content .blog-latest-recipe-grid .product-thumb .image {
	text-align: left;
	line-height: 0;
}
#common-home .blog-latest-recipe-grid .product-thumb .image a,
#product-page .blog-latest-recipe-grid .product-thumb .image a,
#product-category #content .blog-latest-recipe-grid .product-thumb .image a {
	display: block;
	position: relative;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}
#common-home .blog-latest-recipe-grid .product-thumb .image img,
#product-page .blog-latest-recipe-grid .product-thumb .image img,
#product-category #content .blog-latest-recipe-grid .product-thumb .image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin-left: 0;
	margin-right: 0;
}
#common-home .blog-latest-recipe-grid .product-thumb .my-1,
#product-page .blog-latest-recipe-grid .product-thumb .my-1,
#product-category #content .blog-latest-recipe-grid .product-thumb .my-1 {
	padding: 0 0.25rem;
	overflow: hidden;
}
#common-home .blog-latest-recipe-grid .product-thumb .my-1 h4,
#product-page .blog-latest-recipe-grid .product-thumb .my-1 h4,
#product-category #content .blog-latest-recipe-grid .product-thumb .my-1 h4 {
	margin-top: 0.5rem;
}

/* Рецепты в #column-left: превью на всю ширину блока (перебить margin:auto и внутреннюю ширину у .img-fluid) */
aside#column-left .blog-latest-recipe-grid .product-thumb .image {
	width: 100%;
	text-align: left;
}
aside#column-left .blog-latest-recipe-grid .product-thumb .image a {
	display: block;
	width: 100%;
}
aside#column-left .blog-latest-recipe-grid .product-thumb .image img {
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	vertical-align: top;
	object-fit: cover;
	object-position: center;
}
aside#column-right .blog-latest-recipe-grid .product-thumb .image {
	width: 100%;
	text-align: left;
}
aside#column-right .blog-latest-recipe-grid .product-thumb .image a {
	display: block;
	width: 100%;
}
aside#column-right .blog-latest-recipe-grid .product-thumb .image img {
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	vertical-align: top;
	object-fit: cover;
	object-position: center;
}

/* Карточка товара (сетка, вкладки-карусель, поиск и т.п.): рамка как в макете */
/* Вкладки с каруселью идут до #content в category.twig — отдельный селектор */
#content .card.card-product-tile,
.category-tabs .card.card-product-tile {
	border: 1px solid #d1d1d1 !important;
	border-radius: 10px !important;
	background: #fff;
	padding: 15px;
	box-shadow: none !important;
	overflow: hidden;
}

/* Карусель Slick оборачивает слайды — целим .slick-slide .card (и без card-product-tile на старом деплое) */
.category-tabs .slick-slide .card,
.category-tabs .slick-carousel .card {
	border: 1px solid #d1d1d1 !important;
	border-radius: 10px !important;
	background-color: #fff !important;
	padding: 15px !important;
	box-shadow: none !important;
	overflow: hidden;
}

/* Карточка товара: название, рейтинг, цена — всегда слева (как блок кнопок), без text-center из старых шаблонов */
#content .product-layout.product-list .card.card-product-tile .product-thumb + div,
.category-tabs .product-layout.product-list .card.card-product-tile .product-thumb + div,
#account-wishlist .product-layout.product-list .card.card-product-tile .product-thumb + div,
#content .product-layout.product-list .card.card-product-tile .card-body,
.category-tabs .product-layout.product-list .card.card-product-tile .card-body {
	text-align: left !important;
}
#content .product-layout.product-list .card.card-product-tile .caption,
.category-tabs .product-layout.product-list .card.card-product-tile .caption,
#account-wishlist .product-layout.product-list .card.card-product-tile .caption {
	text-align: left !important;
	box-sizing: border-box;
	width: 100%;
}
#content .product-layout.product-list .card.card-product-tile .caption h4,
.category-tabs .product-layout.product-list .card.card-product-tile .caption h4,
#account-wishlist .product-layout.product-list .card.card-product-tile .caption h4,
#content .product-layout.product-list .card.card-product-tile .card-title,
.category-tabs .product-layout.product-list .card.card-product-tile .card-title {
	text-align: left !important;
}
#content .product-layout.product-list .card.card-product-tile .caption .rating,
.category-tabs .product-layout.product-list .card.card-product-tile .caption .rating,
#account-wishlist .product-layout.product-list .card.card-product-tile .caption .rating {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 2px;
}
#content .product-layout.product-list .card.card-product-tile .caption > div[style*='height: 3em'],
.category-tabs .product-layout.product-list .card.card-product-tile .caption > div[style*='height: 3em'],
#account-wishlist .product-layout.product-list .card.card-product-tile .caption > div[style*='height: 3em'] {
	text-align: left !important;
}
#content .product-layout.product-list .card.card-product-tile .price,
.category-tabs .product-layout.product-list .card.card-product-tile .price,
#account-wishlist .product-layout.product-list .card.card-product-tile .price {
	text-align: left !important;
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	display: block;
}

/* «Рекомендуем», каталог, поиск, «часто покупают» — одна сетка: .category-tabs.module-featured (flex + тёмные кнопки) */
.category-tabs.module-featured .card.card-product-tile .button-group {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 8px;
	float: none;
	clear: both;
	overflow: visible;
	border-left: none !important;
	background-color: transparent !important;
	border-top: 1px solid #eee;
	padding-top: 12px;
	margin-top: 4px;
}
.category-tabs.module-featured .card.card-product-tile .button-group .form-control {
	float: none !important;
	margin-right: 0 !important;
	width: 80px;
	flex: 0 0 auto;
}
.category-tabs.module-featured .card.card-product-tile .button-group button {
	float: none !important;
	width: auto !important;
	min-width: 44px;
	flex: 0 0 auto;
	line-height: 1.25 !important;
	padding: 8px 14px !important;
	text-transform: none;
	background-color: #333 !important;
	color: #fff !important;
	border: none !important;
	border-radius: 6px;
}
.category-tabs.module-featured .card.card-product-tile .button-group button + button {
	width: auto !important;
	border-left: none !important;
}

/* Главная «Бестселлеры»: та же сетка и кнопки, что у «Рекомендуем» */
#common-home .module-bestseller .card.card-product-tile .button-group {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 8px;
	float: none;
	clear: both;
	overflow: visible;
	border-left: none !important;
	background-color: transparent !important;
	border-top: 1px solid #eee;
	padding-top: 12px;
	margin-top: 4px;
}
#common-home .module-bestseller .card.card-product-tile .button-group .form-control {
	float: none !important;
	margin-right: 0 !important;
	width: 80px;
	flex: 0 0 auto;
}
#common-home .module-bestseller .card.card-product-tile .button-group button {
	float: none !important;
	width: auto !important;
	min-width: 44px;
	flex: 0 0 auto;
	line-height: 1.25 !important;
	padding: 8px 14px !important;
	text-transform: none;
	background-color: #333 !important;
	color: #fff !important;
	border: none !important;
	border-radius: 6px;
}
#common-home .module-bestseller .card.card-product-tile .button-group button + button {
	width: auto !important;
	border-left: none !important;
}

/* Превью в карточках .category-tabs.module-featured (главная, каталог, товар) */
.category-tabs.module-featured .product-thumb .image img,
.category-tabs.module-featured .product-thumb .image .slider-image {
	width: 100%;
	max-width: 100%;
	height: auto;
	display: block;
}
#common-home .category-tabs.module-bestseller .product-thumb .image img {
	width: 100%;
	max-width: 100%;
	height: auto;
	display: block;
}
/* Только фото: без скругления; скругление карточки .card-product-tile не трогаем */
.category-tabs.module-featured .product-thumb .image-slider,
.category-tabs.module-featured .product-thumb .image-slider img.slider-image {
	border-radius: 0 !important;
}

/* Вкладки категории на странице категории (Slick в .container.py-2): превью без скругления */
.category-tabs .product-thumb .image-slider,
.category-tabs .product-thumb .image-slider img.slider-image {
	border-radius: 0 !important;
}

/* Slick: стрелки как .swiper-button-next / prev (opencart.css + FontAwesome) — вкладки категории и карусель в статье-рецепте */
.category-tabs .slick-prev,
.category-tabs .slick-next,
.article-card .slick-prev,
.article-card .slick-next {
	width: 27px;
	height: 44px;
	padding: 0;
	z-index: 2;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}
.category-tabs .slick-prev,
.article-card .slick-prev {
	left: 10px;
	right: auto;
}
.category-tabs .slick-next,
.article-card .slick-next {
	right: 10px;
	left: auto;
}
.category-tabs .slick-prev:before,
.category-tabs .slick-next:before,
.article-card .slick-prev:before,
.article-card .slick-next:before {
	font-family: FontAwesome !important;
	font-size: 40px;
	line-height: 44px;
	opacity: 0.75;
	color: rgba(0, 0, 0, 0.8);
	text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.category-tabs .slick-prev:before,
.article-card .slick-prev:before {
	content: "\f053" !important;
}
.category-tabs .slick-next:before,
.article-card .slick-next:before {
	content: "\f054" !important;
}
.category-tabs .slick-prev:hover:before,
.category-tabs .slick-next:hover:before,
.category-tabs .slick-prev:focus:before,
.category-tabs .slick-next:focus:before,
.article-card .slick-prev:hover:before,
.article-card .slick-next:hover:before,
.article-card .slick-prev:focus:before,
.article-card .slick-next:focus:before {
	opacity: 1;
	color: rgba(0, 0, 0, 0.85);
}
.category-tabs .slick-prev:hover,
.category-tabs .slick-next:hover,
.category-tabs .slick-prev:focus,
.category-tabs .slick-next:focus,
.article-card .slick-prev:hover,
.article-card .slick-next:hover,
.article-card .slick-prev:focus,
.article-card .slick-next:focus {
	background: transparent !important;
}

/* Сетка каталога: превью без скругления (любая карточка товара, не только .card-product-tile) */
#product-category .product-thumb .image-slider,
#product-category .product-thumb .image-slider img.slider-image,
#product-category .product-thumb .image img.slider-image,
#product-category .product-thumb .image img.img-responsive {
	border-radius: 0 !important;
}

/* У .px-2 заданы только боковые отступы — выравниваем верх карточки с ними (фото не «прилипает» к верху) */
#product-category #content .product-layout > .card.px-2:not(.card-product-tile) {
	padding-top: 0.5rem;
}

/* Любая сетка товаров в основной колонке (категория, поиск и т.д., в т.ч. .container.py-2 > #content) */
#content .card.card-product-tile .product-thumb .image-slider,
#content .card.card-product-tile .product-thumb .image-slider img.slider-image,
#product-page .card.card-product-tile .product-thumb .image-slider,
#product-page .card.card-product-tile .product-thumb .image-slider img.slider-image {
	border-radius: 0 !important;
}

/* Карточка товара (мобилка): типографика и кнопки */
@media (max-width: 767px) {
	#content .product-layout.product-list .card.card-product-tile .caption,
	.category-tabs .product-layout.product-list .card.card-product-tile .caption,
	#account-wishlist .product-layout.product-list .card.card-product-tile .caption {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}
	#content .product-layout.product-list .card.card-product-tile .caption h4,
	.category-tabs .product-layout.product-list .card.card-product-tile .caption h4,
	#account-wishlist .product-layout.product-list .card.card-product-tile .caption h4 {
		font-family: 'Times New Roman', Times, serif;
		font-weight: 700;
		font-size: 1.05rem;
		line-height: 1.3;
		margin-bottom: 0.45rem;
	}
	#content .product-layout.product-list .card.card-product-tile .caption h4 a,
	.category-tabs .product-layout.product-list .card.card-product-tile .caption h4 a,
	#account-wishlist .product-layout.product-list .card.card-product-tile .caption h4 a {
		color: #111;
		text-decoration: none;
	}
	#content .product-layout.product-list .card.card-product-tile .caption > div[style*='height: 3em'],
	.category-tabs .product-layout.product-list .card.card-product-tile .caption > div[style*='height: 3em'],
	#account-wishlist .product-layout.product-list .card.card-product-tile .caption > div[style*='height: 3em'] {
		font-size: 0.9rem;
		color: #666;
	}
	#content .product-layout.product-list .card.card-product-tile .price,
	.category-tabs .product-layout.product-list .card.card-product-tile .price,
	#account-wishlist .product-layout.product-list .card.card-product-tile .price {
		font-family: 'Times New Roman', Times, serif;
		font-weight: 400;
		font-size: 1.2rem;
		line-height: 1.35;
		margin-bottom: 0.65rem;
		color: #111;
	}
	#content .product-layout.product-list .card.card-product-tile .price-new,
	.category-tabs .product-layout.product-list .card.card-product-tile .price-new,
	#account-wishlist .product-layout.product-list .card.card-product-tile .price-new {
		font-weight: 600;
	}
	#content .product-layout.product-list .card.card-product-tile .price-old,
	.category-tabs .product-layout.product-list .card.card-product-tile .price-old,
	#account-wishlist .product-layout.product-list .card.card-product-tile .price-old {
		margin-left: 0.35rem;
		display: inline-block;
	}
	#content .product-layout.product-list .card.card-product-tile .button-group,
	.category-tabs .product-layout.product-list .card.card-product-tile .button-group,
	#account-wishlist .product-layout.product-list .card.card-product-tile .button-group {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
		gap: 8px;
		float: none;
		clear: both;
		overflow: visible;
		border-left: none !important;
		background-color: transparent !important;
		border-top: 1px solid #eee;
		padding-top: 12px;
		margin-top: 4px;
	}
	#content .product-layout.product-list .card.card-product-tile .button-group .form-control,
	.category-tabs .product-layout.product-list .card.card-product-tile .button-group .form-control,
	#account-wishlist .product-layout.product-list .card.card-product-tile .button-group .form-control {
		float: none !important;
		margin-right: 0 !important;
	}
	#content .product-layout.product-list .card.card-product-tile .button-group button,
	.category-tabs .product-layout.product-list .card.card-product-tile .button-group button,
	#account-wishlist .product-layout.product-list .card.card-product-tile .button-group button {
		float: none !important;
		width: auto !important;
		min-width: 44px;
		flex: 0 0 auto;
		line-height: 1.25 !important;
		padding: 8px 14px !important;
		text-transform: none;
		background-color: #333 !important;
		color: #fff !important;
		border: none !important;
		border-radius: 6px;
	}
	#content .product-layout.product-list .card.card-product-tile .button-group button + button,
	.category-tabs .product-layout.product-list .card.card-product-tile .button-group button + button,
	#account-wishlist .product-layout.product-list .card.card-product-tile .button-group button + button,
	#content .product-layout.product-list .card.card-product-tile .button-group button + a,
	.category-tabs .product-layout.product-list .card.card-product-tile .button-group button + a,
	#account-wishlist .product-layout.product-list .card.card-product-tile .button-group button + a {
		width: auto !important;
		border-left: none !important;
	}
	#content .product-layout.product-list .card.card-product-tile .button-group a.btn,
	.category-tabs .product-layout.product-list .card.card-product-tile .button-group a.btn,
	#account-wishlist .product-layout.product-list .card.card-product-tile .button-group a.btn {
		float: none !important;
		min-width: 44px;
		line-height: 1.25 !important;
		padding: 8px 14px !important;
		border-radius: 6px;
	}
}

/* Мобилка: блок товаров на всю ширину, карточки по центру (колонка фильтра не должна оставлять «поле» 25%) */
@media (max-width: 767px) {
	body .row > #content.col-md-9,
	body .row > #content.col-md-6 {
		flex: 0 0 100% !important;
		max-width: 100% !important;
		width: 100% !important;
	}
	#product-category #content .row.w-100 {
		justify-content: center;
		--bs-gutter-x: 0.75rem;
		margin-left: auto;
		margin-right: auto;
	}
	#product-category .product-layout.product-list,
	#account-wishlist .product-layout.product-list {
		float: none !important;
		margin-left: auto;
		margin-right: auto;
	}
	/* Slick-вкладки: слайд и карточка на всю ширину (без flex-center — он уменьшал блок с фото) */
	.category-tabs .slick-slide {
		display: block !important;
	}
	.category-tabs .slick-slide > .product-layout,
	.category-tabs .slick-slide > div {
		width: 100% !important;
		max-width: 100%;
		margin-left: 0 !important;
		margin-right: 0 !important;
		float: none !important;
		box-sizing: border-box;
	}
	.category-tabs .slick-slide .image img,
	.category-tabs .slick-slide .image .slider-image {
		width: 100%;
		display: block;
	}
}

.breadcrumb-item+.breadcrumb-item::before {
	content: var(--bs-breadcrumb-divider, "");
	margin-right: 5px;
}

/* Стили для галереи изображений */
.product-thumbnails .image-thumb-item img {
	cursor: pointer;
	transition: opacity 0.3s ease;
}





@media (max-width: 768px) {
	.product-thumbnails {
		flex-direction: row !important;
		overflow-x: auto;
		padding: 10px 0;
	}

	.product-thumbnails ul {
		display: flex;
		flex-wrap: nowrap;
		gap: 10px;
	}

	.product-thumbnails .image-thumb-item {
		flex: 0 0 auto;
		width: 80px;
	}

	.product-main-image img {
		max-height: 300px;
		object-fit: cover;
	}

	.product-main-image img:hover {
		transform: none;
	}
}

/* Стили для опций */
.option-group {

	border-radius: 5px;

}

.custom-select {
	border-color: #ced4da;
	border-radius: 5px;
	transition: border-color 0.3s ease;
}

.custom-select:focus {
	border-color: #80bdff;
	box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.radio-option, .checkbox-option {
	padding: 8px 12px;
	background-color: #fff;
	border: 1px solid #ced4da;
	border-radius: 5px;
	cursor: pointer;
	transition: background-color 0.3s ease, border-color 0.3s ease;
}

.radio-option:hover, .checkbox-option:hover {
	background-color: #e9ecef;
	border-color: #80bdff;
}

.radio-option input:checked + span, .checkbox-option input:checked + span {
	color: #000;
}

.radio-option input, .checkbox-option input {
	margin-right: 8px;
}

/* Стили для звездочек рейтинга */
.rating-stars {
	display: flex;
	align-items: center;
	gap: 5px;
}

.star {
	font-size: 24px;
	color: #ccc;
	cursor: pointer;
	transition: color 0.3s ease;
}

.rating-stars .star:hover,
.rating-stars .star:hover ~ .star,
.rating-stars input[type="radio"]:checked + .star,
.rating-stars input[type="radio"]:checked + .star ~ .star {
	color: #ffc107;
}

.rating-text {
	margin-left: 10px;
	font-size: 14px;
	color: #666;
}

/* Только звёзды отзыва: не скрывать радио на checkout и др. */
.rating-stars input[type="radio"] {
	display: none;
}

/* Адаптивность звездочек */
@media (max-width: 768px) {
	.star {
		font-size: 20px;
	}
	.rating-text {
		font-size: 12px;
	}
}

/* Стили для карусели изображений */
#carouselImages img {
	max-height: 70vh;
	object-fit: contain;
}

.modal-lg {
	max-width: 90%;
}

/* Стили для формы отзывов */
.review-title {
	font-size: 1.5rem;
	font-weight: 600;
	margin-bottom: 1.5rem;
	color: #333;
}

.review-form .form-group {
	margin-bottom: 1.5rem;
}

.review-form .form-label {
	font-weight: 500;
	color: #444;
}

.review-form .form-control {
	border-radius: 5px;
	border-color: #ced4da;
	transition: border-color 0.3s ease;
}

.review-form .form-control:focus {
	border-color: #80bdff;
	box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.review-form small.text-muted {
	font-size: 0.875rem;
	color: #6c757d;
}

.review-form .btn-primary {
	background-color: #007bff;
	border-color: #007bff;
	padding: 10px 20px;
	font-weight: 500;
}

.review-form .btn-primary:hover {
	background-color: #0056b3;
	border-color: #0056b3;
}

/* Стили для уведомления */
.notification {
	position: fixed;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	background-color: #2ecc71;
	color: #fff;
	padding: 12px 24px;
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	font-family: 'Times New Roman', Times, serif;
	font-size: 16px;
	z-index: 1000;
	opacity: 0;
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.notification.show {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

.notification.hide {
	opacity: 0;
	transform: translateX(-50%) translateY(-20px);
}

@media (max-width: 768px) {
	.notification {
		font-size: 14px;
		padding: 10px 20px;
		max-width: 90%;
		text-align: center;
	}
}

@media (max-width: 480px) {
	.notification {
		font-size: 12px;
		padding: 8px 16px;
	}
}

/* Стили для мобильной карусели изображений */
#imageCarousel .carousel-item img {
	border-radius: 5px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

#imageCarousel .carousel-control-prev-icon,
#imageCarousel .carousel-control-next-icon {
	background-color: #007bff;
	border-radius: 50%;
	width: 20px;
	height: 20px;
}

#imageCarousel .carousel-indicators button {
	background-color: #ccc;
	border-radius: 50%;
	width: 10px;
	height: 10px;
	margin: 0 5px;
}

#imageCarousel .carousel-indicators .active {
	background-color: #007bff;
}

@media (max-width: 768px) {
	#imageCarousel .carousel-control-prev-icon,
	#imageCarousel .carousel-control-next-icon {
		width: 15px;
		height: 15px;
	}
}

/* Стили для опций и цены */
.option-group {
	display: flex;
	flex-direction: column;
	gap: 5px;
}



.price-info .text-decoration-line-through {
	color: #6c757d;
	font-size: 1.2rem;
	margin-right: 10px;
}

.price-info small {
	font-size: 0.875rem;
	color: #6c757d;
}


label.radio-option.d-flex.align-items-center.gap-2{
	width: 40%;
}

.card-product-tile .option-group .radio-option,
.card .option-group .radio-option {
	width: 100%;
	cursor: default;
}

.card-product-tile .option-group .radio-option:hover,
.card .option-group .radio-option:hover {
	background-color: #fff;
	border-color: #ced4da;
}

.card-product-tile .button-group.product-card-actions,
.card .button-group.product-card-actions {
	display: flex;
	width: 100%;
	gap: 8px;
	align-items: stretch;
}

.card-product-tile .button-group.product-card-actions .form-control,
.card .button-group.product-card-actions .form-control {
	flex: 0 0 72px;
	width: 72px;
	min-width: 72px;
	margin-right: 0 !important;
}

.card-product-tile .button-group.product-card-actions .btn-cart,
.card .button-group.product-card-actions .btn-cart {
	flex: 1 1 auto;
}

.card-product-tile .button-group.product-card-actions .btn-wishlist,
.card .button-group.product-card-actions .btn-wishlist {
	flex: 0 0 44px;
	width: 44px;
	padding-left: 0;
	padding-right: 0;
}

span.price-new, p.price {
	font-size: 1.5em;
	font-weight: 600;
}
p.price {
	padding-left: 8px;
	padding-right: 8px;
}
span.price-old {
	color: #757575;
	font-size: 1.2em;
	text-decoration: line-through;
}

.vertical-menu .nav-link {
	font-weight: bold;
	color: #333;
	padding: 10px 15px;
	border-bottom: 1px solid #eee;
}

.vertical-menu .nav-link:hover {
	background-color: #f8f9fa;
}

.vertical-menu .nav-link.active {
	color: #007bff;
}

.vertical-menu .list-group-item {
	font-weight: bold;
	color: #333;
	padding: 10px 15px;
	border-bottom: 1px solid #eee;

}

.vertical-menu .list-group-item a {
	border: none;
	text-decoration: none;
}

.vertical-menu .list-group-item a:hover {
	color: #007bff;
}

.vertical-menu .list-group-item a.active {
	font-weight: bold;
	color: #007bff;
}

.card.p-2 {
	border: none;
}

.product-thumb.transition.card {
	border: none;
}

/* Шапка: единый размер ссылок каталог / подарки / рецепты */
.header-nav-link {
	font-family: 'Times New Roman', Times, serif;
	font-size: 1.125rem;
	line-height: 1.4;
}
/* Пункт «Специи и смеси» в мобильном меню: .nav-link Bootstrap не перебивает кегль */
#mobileMenu .nav-link.header-nav-link {
	font-family: 'Times New Roman', Times, serif;
	font-size: 1.125rem;
	line-height: 1.4;
}
.header-nav-catalog-btn {
	background: none;
	border: none;
	padding: 0.5rem;
	cursor: pointer;
}
.header-main-nav-end .header-nav-link {
	white-space: normal;
}

/* Заголовок выезжающего каталога — тот же кегль, что у пунктов меню (.header-nav-link) */
#catalogMenu .offcanvas-header .offcanvas-title {
	font-family: 'Times New Roman', Times, serif;
	font-size: 1.125rem;
	line-height: 1.4;
	font-weight: 400;
	padding-left: 6px;
	padding-right: 6px;
}

.pr-bg-l {
	position: relative;
	min-width: 0;
}
.pr-bg-l::before {
	content: '';
	position: absolute;
	top: 0;
	left: auto;
	right: 100%;
	width: min(28vw, 200px);
	height: 100%;
	background-image: url(../image/backDesc.webp);
	background-size: cover;
	background-position: center;
	z-index: 0;
	pointer-events: none;
}
.pr-bg-l > * {
	position: relative;
	z-index: 1;
}

.card-body.text-center {
	height: 6rem;
}

.pr-bg-r {
	position: relative;
	min-width: 0;
}

.pr-bg-r::before {
	content: '';
	position: absolute;
	top: 0;
	left: 100%;
	right: auto;
	width: min(28vw, 200px);
	height: 100%;
	background-image: url(../image/backDesc.webp);
	background-size: cover;
	background-position: center;
	z-index: 0;
	pointer-events: none;
}
.pr-bg-r > * {
	position: relative;
	z-index: 1;
}

h1,h2,h3,h4,h5,h6{
	font-family: 'Times New Roman', Times, serif;
	font-weight: 700;
}

p, li, a {
	font-family: 'Times New Roman', Times, serif;
}
.gray-backg {
	position: relative;
	display: block;
	overflow-x: clip;
}

.gray-backg:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: auto;
	height: 100%;
	background-color: #f8f9fa;
	z-index: -1;
}

/* Карточка товара: колонки не вылезают из сетки, текст не наезжает на декор */
.product-form-grid > [class*="col-"] {
	min-width: 0;
}
.product-form-media,
.product-form-media .product-main-image,
.product-form-media img {
	max-width: 100%;
}
.product-form-info {
	overflow-wrap: break-word;
	word-break: break-word;
	overflow-x: hidden;
}
.product-form-info img,
.product-form-info table,
.product-form-info video,
.product-form-info iframe {
	max-width: 100%;
	height: auto;
}

html {
	overflow-x: hidden;
}

/* Мини-корзина: итоговая строка крупнее */
#cart .table .cart-dropdown-grand-total td {
	font-size: 1.15rem;
	font-weight: 700;
}
@media(min-width: 769px){
	.br-r {
		border-right: solid 2px #000
	}
}
a{
	color: #000;
}

button.add-to-favorites {
	position: absolute;
	background: none;
	border: none;
}

/* Корзина (checkout/cart): мобильная вёрстка, тема default */
@media (max-width: 767px) {
	#checkout-cart .cart-table-responsive {
		overflow-x: visible;
		border: 0;
		margin-bottom: 0;
	}
	#checkout-cart .table-checkout-cart thead {
		display: none;
	}
	#checkout-cart .table-checkout-cart .cart-table-tfoot-desktop {
		display: none;
	}
	#checkout-cart .table-checkout-cart tbody tr.cart-product-row,
	#checkout-cart .table-checkout-cart tbody tr.cart-voucher-row {
		display: block;
		border: 1px solid #dee2e6;
		border-radius: 6px;
		margin-bottom: 14px;
		padding: 10px 12px;
		background: #fff;
		box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
	}
	#checkout-cart .table-checkout-cart tbody td {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 6px 10px;
		width: 100% !important;
		border: none !important;
		padding: 8px 0;
		text-align: right !important;
	}
	#checkout-cart .table-checkout-cart tbody td[data-label]:not([data-label=""]):before {
		content: attr(data-label);
		font-weight: 600;
		color: #333;
		text-align: left;
		flex: 1 1 auto;
		max-width: 48%;
		padding-right: 6px;
	}
	#checkout-cart .table-checkout-cart tbody td.cart-cell-image {
		justify-content: center;
		padding-bottom: 4px;
	}
	#checkout-cart .table-checkout-cart tbody td.cart-cell-image:before,
	#checkout-cart .table-checkout-cart tbody td.cart-cell-empty:before {
		display: none !important;
	}
	#checkout-cart .table-checkout-cart tbody td.cart-cell-empty {
		display: none !important;
	}
	#checkout-cart .table-checkout-cart .cart-qty-group {
		width: 100%;
		max-width: none !important;
		flex-direction: column;
		align-items: stretch;
	}
	#checkout-cart .table-checkout-cart .cart-qty-group .form-control {
		width: 100%;
		text-align: center;
	}
	#checkout-cart .table-checkout-cart .cart-qty-btns {
		display: flex;
		width: 100%;
		margin-left: 0 !important;
	}
	#checkout-cart .table-checkout-cart .cart-qty-btns .btn {
		flex: 1;
	}
	#checkout-cart .cart-page-buttons .btn {
		margin-bottom: 8px;
		width: 100%;
		text-align: center;
	}
	#checkout-cart .cart-page-buttons .pull-left,
	#checkout-cart .cart-page-buttons .pull-right {
		float: none !important;
		width: 100%;
	}
	#checkout-cart #cart-order-total-banner {
		text-align: center !important;
	}
	#checkout-cart #cart-order-total-banner .text-md-end {
		text-align: center !important;
	}
}

/* Страница товара: крошки на мобильных (перенос длинных цепочек) */
.product-breadcrumb-nav .breadcrumb {
	margin-bottom: 12px;
}
@media (max-width: 767px) {
	.product-breadcrumb-nav .breadcrumb {
		padding: 10px 12px;
		margin: 0 0 12px 0;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		row-gap: 4px;
		column-gap: 0;
	}
	.product-breadcrumb-nav .breadcrumb > li,
	.product-breadcrumb-nav .breadcrumb .breadcrumb-item {
		white-space: normal !important;
		max-width: 100%;
		padding: 2px 6px 2px 2px !important;
		font-size: 13px;
		line-height: 1.35;
		position: relative;
	}
	.product-breadcrumb-nav .breadcrumb > li:after {
		display: none;
	}
	.product-page .product-title {
		font-size: clamp(1.25rem, 5vw, 2rem);
		line-height: 1.25;
		hyphens: auto;
		overflow-wrap: break-word;
		word-break: break-word;
	}
	.product-page .product-main-image.card {
		margin-left: auto;
		margin-right: auto;
		max-width: 100%;
	}
	.product-page .pr-bg-r::before,
	.product-page .pr-bg-l::before {
		display: none;
	}
}

/* Страница товара: кнопки primary и крошки — чёрный вместо синего Bootstrap */
#product-page .btn-primary {
	--bs-btn-bg: #000;
	--bs-btn-border-color: #000;
	--bs-btn-color: #fff;
	--bs-btn-hover-bg: #222;
	--bs-btn-hover-border-color: #222;
	--bs-btn-hover-color: #fff;
	--bs-btn-active-bg: #1a1a1a;
	--bs-btn-active-border-color: #1a1a1a;
	--bs-btn-active-color: #fff;
	--bs-btn-disabled-bg: #666;
	--bs-btn-disabled-border-color: #666;
	--bs-btn-focus-shadow-rgb: 0, 0, 0;
}

#product-page .btn-primary:focus-visible {
	box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.35);
}

/* Кнопка «Продолжить» в блоке .buttons (#content) — чёрный вместо синего */
#content .buttons .btn-primary {
	--bs-btn-bg: #000;
	--bs-btn-border-color: #000;
	--bs-btn-color: #fff;
	--bs-btn-hover-bg: #222;
	--bs-btn-hover-border-color: #222;
	--bs-btn-hover-color: #fff;
	--bs-btn-active-bg: #1a1a1a;
	--bs-btn-active-border-color: #1a1a1a;
	--bs-btn-active-color: #fff;
	--bs-btn-disabled-bg: #666;
	--bs-btn-disabled-border-color: #666;
	--bs-btn-focus-shadow-rgb: 0, 0, 0;
	color: #fff;
	text-shadow: none;
	background-color: #000;
	background-image: none;
	border-color: #000;
}
#content .buttons .btn-primary:hover,
#content .buttons .btn-primary:active,
#content .buttons .btn-primary.active {
	background-color: #222;
	border-color: #222;
	background-position: 0 0;
}
#content .buttons .btn-primary:focus-visible {
	box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.35);
}

/* Страница входа: primary — чёрный */
#account-login .btn-primary {
	--bs-btn-bg: #000;
	--bs-btn-border-color: #000;
	--bs-btn-color: #fff;
	--bs-btn-hover-bg: #222;
	--bs-btn-hover-border-color: #222;
	--bs-btn-hover-color: #fff;
	--bs-btn-active-bg: #1a1a1a;
	--bs-btn-active-border-color: #1a1a1a;
	--bs-btn-active-color: #fff;
	--bs-btn-disabled-bg: #666;
	--bs-btn-disabled-border-color: #666;
	--bs-btn-focus-shadow-rgb: 0, 0, 0;
	color: #fff;
	text-shadow: none;
	background-color: #000;
	background-image: none;
	border-color: #000;
}
#account-login .btn-primary:hover,
#account-login .btn-primary:active,
#account-login .btn-primary.active {
	background-color: #222;
	border-color: #222;
	background-position: 0 0;
}
#account-login .btn-primary:focus-visible {
	box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.35);
}

/* Оформление заказа: primary — чёрный */
#checkout-checkout .btn-primary {
	--bs-btn-bg: #000;
	--bs-btn-border-color: #000;
	--bs-btn-color: #fff;
	--bs-btn-hover-bg: #222;
	--bs-btn-hover-border-color: #222;
	--bs-btn-hover-color: #fff;
	--bs-btn-active-bg: #1a1a1a;
	--bs-btn-active-border-color: #1a1a1a;
	--bs-btn-active-color: #fff;
	--bs-btn-disabled-bg: #666;
	--bs-btn-disabled-border-color: #666;
	--bs-btn-focus-shadow-rgb: 0, 0, 0;
	color: #fff;
	text-shadow: none;
	background-color: #000;
	background-image: none;
	border-color: #000;
}
#checkout-checkout .btn-primary:hover,
#checkout-checkout .btn-primary:active,
#checkout-checkout .btn-primary.active {
	background-color: #222;
	border-color: #222;
	background-position: 0 0;
}
#checkout-checkout .btn-primary:focus-visible {
	box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.35);
}

#product-page .product-breadcrumb-nav .breadcrumb a,
#product-page .breadcrumb a {
	color: #000;
	padding-left: 8px;
	padding-right: 8px;
}

#product-page .product-breadcrumb-nav .breadcrumb a:hover,
#product-page .breadcrumb a:hover {
	color: #333;
}

#product-page .breadcrumb-item.active {
	color: #000;
}

/* OCFilter: аккордеон «Фильтровать по» — раскрытый заголовок чёрный (фон #000, текст белый) */
aside#column-left .accordion-button,
aside#column-right .accordion-button,
[id^="ocf-module"] .accordion-button {
	color: #000;
	background-color: #fff;
	--bs-accordion-btn-color: #000;
	--bs-accordion-btn-bg: #fff;
	--bs-accordion-active-color: #fff;
	--bs-accordion-active-bg: #000;
}

aside#column-left .accordion-button:not(.collapsed),
aside#column-right .accordion-button:not(.collapsed),
[id^="ocf-module"] .accordion-button:not(.collapsed) {
	color: #fff !important;
	background-color: #000 !important;
	box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.15);
}

aside#column-left .accordion-button::after,
aside#column-right .accordion-button::after,
[id^="ocf-module"] .accordion-button::after {
	filter: brightness(0);
	opacity: 0.85;
}

aside#column-left .accordion-button:not(.collapsed)::after,
aside#column-right .accordion-button:not(.collapsed)::after,
[id^="ocf-module"] .accordion-button:not(.collapsed)::after {
	filter: brightness(0) invert(1);
	opacity: 1;
}

aside#column-left .accordion-button:focus,
aside#column-right .accordion-button:focus,
[id^="ocf-module"] .accordion-button:focus {
	border-color: rgba(0, 0, 0, 0.25);
	box-shadow: none;
}

aside#column-left .accordion-button:not(.collapsed):focus,
aside#column-right .accordion-button:not(.collapsed):focus,
[id^="ocf-module"] .accordion-button:not(.collapsed):focus {
	border-color: rgba(255, 255, 255, 0.35);
}