body {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	color: #666;
	font-size: 12px;
	line-height: 20px;
	width: 100%;
	background: #f8fafc;
}

h1, h2, h3, h4, h5, h6 {
	color: #2d3641;
}

.fa {
	font-size: 14px;
}

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: #44505c;
	transition: color 0.2s ease;
}

a:hover {
	color: #e31270;
	text-decoration: none;
}

legend {
	font-size: 18px;
	padding: 7px 0;
}

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;
	border: 1px solid #d7e0e7;
	border-radius: 12px;
	background: #fbfdff;
	color: #2d3641;
	box-shadow: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.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;
}

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;
}

.dropdown-menu li > a:hover {
	text-decoration: none;
	color: #ffffff;
	background-color: #c50f69;
	background-image: linear-gradient(to bottom, #e31270, #c50f69);
	background-repeat: repeat-x;
}

/* top */
#top {
	background: linear-gradient(90deg, #f4f7fa 0%, #eef3f7 100%);
	border-bottom: 1px solid #dbe4ec;
	padding: 8px 0;
	margin: 0;
	min-height: 44px;
}

#top .container {
	padding: 0 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

#top .topbar-left,
#top .topbar-right,
#top #form-currency,
#top #form-language,
#top #blog-menu,
#top .blog-menu,
#top #top-links {
	display: flex;
	align-items: center;
}

#top .topbar-left {
	gap: 14px;
}

#top #form-currency .currency-select,
#top #form-language .language-select {
	text-align: left;
	border-radius: 6px;
}

#top #form-currency .currency-select:hover,
#top #form-language .language-select:hover {
	text-shadow: none;
	color: #ffffff;
	background: #e31270;
}

#top .btn-link,
#top-links li,
#top-links a,
#top a {
	color: #c50f69;
	text-shadow: none;
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
}

#top .btn-link:hover,
#top-links a:hover,
#top a:hover {
	color: #e31270;
}

#top-links .dropdown-menu {
	display: none;
	border: none;
	border-radius: 12px;
	box-shadow: 0 14px 32px rgba(42, 53, 65, 0.16);
	padding: 10px 0;
}

#top-links .dropdown-menu a {
	text-shadow: none;
	color: #44505c;
	padding: 9px 18px;
}

#top-links .dropdown-menu a:hover {
	color: #ffffff;
	background: #e31270;
}

#top .btn-link strong {
	font-size: 14px;
	line-height: 14px;
}

#top-links {
	padding-top: 0;
}

#top-links > ul {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 18px;
}

#top-links li {
	position: relative;
	padding: 0;
}

#top-links li:not(:last-child) {
	padding-right: 18px;
}

#top-links li:not(:last-child):after {
	content: '';
	position: absolute;
	top: 50%;
	right: 0;
	width: 1px;
	height: 16px;
	background: #d6dee7;
	transform: translateY(-50%);
}

#top-links a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-weight: 600;
}

#top-links a + a {
	margin-left: 0;
}

#top-links li.open > .dropdown-menu {
	display: block;
}

#top i.fa {
	color: #c50f69;
	margin-right: 6px;
}

#top a:hover i.fa {
	color: #e31270;
}

.topbar-phone span {
	letter-spacing: 0.01em;
}

/* header */
.site-header {
	padding: 22px 0 18px;
	background: #ffffff;
}

.site-header .container {
	padding-left: 20px;
	padding-right: 20px;
}

.header-main {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
}

.header-brand {
	flex: 0 0 310px;
	max-width: 310px;
}

.header-tools {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 20px;
	flex: 1;
}

.header-search {
	flex: 1;
	max-width: 620px;
}

.header-cart {
	flex: 0 0 290px;
	max-width: 290px;
}

#logo {
	margin: 0;
}

#logo img {
	display: block;
	max-height: 160px;
	width: auto;
}

#search {
	margin: 0;
	width: 100%;
}

#search .input-group {
	display: flex;
	align-items: stretch;
	width: 100%;
}

#search .form-control {
	height: 52px;
	border-right: 0;
	border-radius: 14px 0 0 14px;
	font-size: 15px;
	padding: 0 18px;
}

#search .btn-lg {
	height: 52px;
	min-width: 72px;
	padding: 0 22px;
	font-size: 17px;
	line-height: 1;
	text-shadow: none;
	border-radius: 0 14px 14px 0;
	border: 1px solid #d7e0e7;
	background: linear-gradient(180deg, #ffffff 0%, #eef3f7 100%);
	color: #556270;
	display: flex;
	align-items: center;
	justify-content: center;
}

#search .btn-lg:hover,
#search .btn-lg:focus {
	background: linear-gradient(135deg, #c50f69 0%, #e31270 100%);
	border-color: #c50f69;
	color: #ffffff;
}

#cart {
	margin: 0;
	width: 100%;
}

#cart > .btn {
	width: 100%;
	min-height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 14px;
	border: none;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	color: #ffffff;
	text-shadow: none;
	background: linear-gradient(135deg, #2f3945 0%, #465261 100%);
	box-shadow: 0 12px 28px rgba(48, 58, 68, 0.16);
}

#cart > .btn:hover,
#cart > .btn:focus {
	background: linear-gradient(135deg, #26303b 0%, #3d4958 100%);
}

#cart.open > .btn {
	background-image: none;
	background-color: #ffffff;
	border: 1px solid #e6edf2;
	color: #44505c;
	box-shadow: 0 10px 24px rgba(48, 58, 68, 0.12);
}

#cart.open > .btn:hover {
	color: #2d3641;
}

#cart .dropdown-menu {
	background: #ffffff;
	z-index: 1001;
	border: none;
	border-radius: 14px;
	box-shadow: 0 16px 36px rgba(48, 58, 68, 0.16);
}

#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 {
	margin-bottom: 0;
	background: transparent;
	border: none;
	min-height: 0;
}

#menu .menu-shell {
	background: linear-gradient(90deg, #2f3945 0%, #465261 100%);
	border: none;
	border-radius: 10px;
	box-shadow: 0 10px 26px rgba(35, 45, 55, 0.12);
	min-height: 46px;
}

#menu .nav > li {
	position: relative;
}

#menu .menu-parent {
	display: flex;
	align-items: stretch;
}

#menu .nav > li > a,
#menu .nav > li > .menu-parent > .menu-link {
	color: #f4f7fa;
	text-shadow: none;
	padding: 13px 20px;
	min-height: 15px;
	background: transparent;
	font-weight: 700;
	letter-spacing: 0.01em;
}

#menu .nav > li > .menu-parent > .menu-link {
	flex: 1;
}

#menu .menu-link {
	display: block;
	color: inherit;
}

#menu .menu-toggle {
	border: 0;
	padding: 0 14px;
	background: transparent;
	color: #f4f7fa;
	font-size: 14px;
	line-height: 1;
	transition: background 0.2s ease, color 0.2s ease;
}

#menu .nav > li > a span {
	display: inline-block;
}

#menu .nav > li > a:hover,
#menu .nav > li.open > a,
#menu .nav > li:hover > .menu-parent > .menu-link,
#menu .nav > li.open > .menu-parent > .menu-link,
#menu .nav > li:hover > .menu-parent > .menu-toggle,
#menu .nav > li.open > .menu-parent > .menu-toggle {
	background: #e31270;
	color: #ffffff;
}

#menu .dropdown-menu {
	padding-bottom: 0;
	border: none;
	border-radius: 14px;
	box-shadow: 0 14px 32px rgba(35, 45, 55, 0.14);
	background: #ffffff;
}

#menu .dropdown-inner {
	display: table;
}

#menu .dropdown-inner ul {
	display: table-cell;
}

#menu .dropdown-inner a {
	min-width: 180px;
	display: block;
	padding: 7px 20px;
	clear: both;
	line-height: 20px;
	color: #44505c;
	font-size: 13px;
}

#menu .dropdown-inner li a:hover {
	color: #ffffff;
	background: #e31270;
}

#menu .see-all {
	display: block;
	margin-top: 0.5em;
	border-top: 1px solid #e3ebf1;
	padding: 10px 20px;
	border-radius: 0 0 14px 14px;
	font-size: 13px;
	font-weight: 700;
	background: #f3f7fa;
	color: #2f3945;
}

#menu .see-all:hover,
#menu .see-all:focus {
	text-decoration: none;
	color: #ffffff;
	background: #e31270;
}

#menu #category {
	float: left;
	padding-left: 15px;
	font-size: 16px;
	font-weight: 700;
	line-height: 46px;
	color: #fff;
	text-shadow: none;
}

#menu .btn-navbar {
	font-size: 15px;
	font-stretch: expanded;
	color: #fff;
	padding: 4px 18px;
	float: right;
	background: #3b4653;
	border: none;
	border-radius: 0 10px 10px 0;
}

#menu .btn-navbar:hover,
#menu .btn-navbar:focus,
#menu .btn-navbar:active,
#menu .btn-navbar.disabled,
#menu .btn-navbar[disabled] {
	color: #ffffff;
	background: #e31270;
}

@media (min-width: 768px) {
	#menu .dropdown:hover .dropdown-menu {
		display: block;
	}
}

@media (max-width: 767px) {
	#menu {
		margin-bottom: 14px;
	}

	#menu .menu-shell {
		background: transparent;
		box-shadow: none;
		border-radius: 10px;
	}

	#menu .navbar-header {
		background: linear-gradient(90deg, #2f3945 0%, #465261 100%);
		border-radius: 10px;
	}

	#menu .menu-parent {
		display: flex;
		align-items: stretch;
	}

	#menu .nav > li > .menu-parent > .menu-link {
		flex: 1;
		padding: 14px 16px;
		font-size: 14px;
	}

	#menu .menu-toggle {
		min-width: 52px;
		font-size: 16px;
		background: rgba(255, 255, 255, 0.08);
		border-left: 1px solid rgba(255, 255, 255, 0.08);
	}

	#menu .navbar-ex1-collapse {
		margin-top: 10px;
		padding: 8px 10px 10px;
		border-radius: 14px;
		background: linear-gradient(180deg, #2f3945 0%, #465261 100%);
		box-shadow: 0 10px 24px rgba(35, 45, 55, 0.18);
	}

	#menu .navbar-nav {
		float: none;
		margin: 0;
	}

	#menu .navbar-nav > li {
		float: none;
		border-top: 1px solid rgba(255, 255, 255, 0.08);
	}

	#menu .navbar-nav > li:first-child {
		border-top: none;
	}

	#menu div.dropdown-inner > ul.list-unstyled {
		display: block;
	}

	#menu div.dropdown-menu {
		position: static;
		float: none;
		width: 100%;
		margin: 8px 0 0 !important;
		padding-bottom: 10px;
		border-radius: 12px;
		background: rgba(255, 255, 255, 0.06);
		box-shadow: none;
	}

	#menu .dropdown.open > .dropdown-menu {
		display: block;
	}

	#menu .dropdown:not(.open) > .dropdown-menu {
		display: none;
	}

	#menu .dropdown-inner {
		display: block;
	}

	#menu .dropdown-inner a {
		width: 100%;
		color: #fff;
		padding: 10px 18px;
		font-size: 14px;
	}

	#menu .dropdown-menu a:hover,
	#menu .dropdown-menu ul li a:hover {
		background: #e31270;
	}

	#menu .see-all {
		margin-top: 0;
		border: none;
		border-radius: 0;
		color: #fff;
		background: transparent;
	}
}

/* content */
#content {
	min-height: 600px;
}

/* breadcrumb */
.breadcrumb {
	margin: 20px 0;
	padding: 10px 0;
	border: 1px solid #e4ebf1;
	border-left: none;
	border-right: none;
	background: transparent;
}

.breadcrumb i {
	font-size: 15px;
}

.breadcrumb > li {
	text-shadow: none;
	padding: 0 20px;
	position: relative;
	white-space: nowrap;
}

.breadcrumb > li + li:before {
	content: '';
	padding: 0;
}

.breadcrumb > li:after {
	content: '';
	display: block;
	position: absolute;
	top: -1px;
	right: -5px;
	width: 22px;
	height: 22px;
	border-right: 1px solid #dde6ee;
	border-bottom: 1px solid #dde6ee;
	transform: rotate(-45deg);
}

.pagination {
	margin: 0;
}

/* buttons */
.buttons {
	margin: 1em 0;
}

.btn {
	padding: 7.5px 12px;
	font-size: 12px;
	border: 1px solid #cfd8e0;
	border-radius: 10px;
	box-shadow: none;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.btn:hover,
.btn:focus {
	transform: translateY(-1px);
}

.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: #44505c;
	text-shadow: none;
	background: linear-gradient(180deg, #ffffff 0%, #f2f6f9 100%);
	border-color: #d7e0e7;
}

.btn-default:hover,
.btn-default:focus {
	box-shadow: 0 10px 22px rgba(48, 58, 68, 0.12);
}

.btn-primary {
	color: #ffffff;
	text-shadow: none;
	background: linear-gradient(135deg, #c50f69 0%, #e31270 100%);
	border-color: #c50f69;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary.active,
.btn-primary.disabled,
.btn-primary[disabled] {
	background: linear-gradient(135deg, #b10d5e 0%, #d11068 100%);
	border-color: #b10d5e;
	box-shadow: 0 10px 22px rgba(227, 18, 112, 0.2);
}

.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: #44505c;
	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;
}

/* alert */
.alert {
	padding: 8px 14px;
	border-radius: 12px;
}

/* 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 {
	border: 1px solid #e3ebf1;
	border-radius: 16px;
	margin-bottom: 20px;
	overflow: hidden;
	background: #ffffff;
	box-shadow: 0 12px 30px rgba(48, 58, 68, 0.06);
}

.product-thumb .image {
	text-align: center;
	padding-top: 15px;
}

.product-thumb .image a {
	display: block;
}

.product-thumb .image a:hover {
	opacity: 0.88;
}

.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;
		padding: 0 15px;
	}
}

.product-thumb h4 {
	font-weight: bold;
}

.product-thumb .caption {
	padding: 0 20px 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 14px 16px;
	}
}

@media (max-width: 767px) {
	.product-list .product-thumb .caption {
		min-height: 0;
		margin-left: 0;
		padding: 0 14px 16px;
	}

	.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: #2d3641;
}

.product-thumb .price-new {
	font-weight: 700;
}

.product-thumb .price-old {
	color: #999;
	text-decoration: line-through;
	margin-left: 10px;
}

.product-thumb .price-tax {
	color: #999;
	font-size: 12px;
	display: block;
}

.catalog-quantity-control {
	align-items: stretch;
	background: #ffffff;
	border-top: 1px solid #e6edf2;
	display: flex;
	min-height: 44px;
}

.catalog-quantity-control .catalog-quantity-input {
	border: 0;
	border-left: 1px solid #e6edf2;
	border-right: 1px solid #e6edf2;
	color: #2d3641;
	flex: 1 1 auto;
	font-weight: 800;
	min-width: 54px;
	padding: 0 8px;
	text-align: center;
}

.catalog-quantity-control .catalog-quantity-input:focus {
	box-shadow: inset 0 0 0 2px rgba(215, 15, 114, .12);
	outline: 0;
}

.catalog-quantity-btn {
	background: #fbfdff;
	border: 0;
	color: #41566b;
	flex: 0 0 48px;
	font-size: 20px;
	font-weight: 900;
	line-height: 1;
	padding: 0;
	transition: background .18s ease, color .18s ease;
}

.catalog-quantity-btn:hover,
.catalog-quantity-btn:focus {
	background: #d70f72;
	color: #ffffff;
	outline: 0;
}

.product-thumb .button-group {
	border-top: 1px solid #e6edf2;
	background-color: #f7fafc;
	overflow: auto;
}

.product-list .product-thumb .button-group {
	border-left: 1px solid #e6edf2;
}

@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: #f7fafc;
	color: #5d6a78;
	line-height: 42px;
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;
}

.product-thumb .button-group button + button {
	width: 20%;
	border-left: 1px solid #e6edf2;
}

.product-thumb .button-group button:hover {
	color: #ffffff;
	background-color: #e31270;
	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;
	}
}

@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%;
	}
}

#column-left .product-layout,
#column-right .product-layout {
	width: 100%;
}

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

.btn-info:hover,
.btn-info:active,
.btn-info.active,
.btn-info.disabled,
.btn-info[disabled] {
	background-image: none;
	background-color: #df5c39;
}

.alert-dismissable .close,
.alert-dismissible .close {
	right: -1px;
}

input.form-control:focus,
select.form-control:focus,
textarea.form-control:focus,
.input-group input:focus,
.input-group select:focus {
	border-color: #e31270;
	background: #ffffff;
	box-shadow: 0 0 0 4px rgba(227, 18, 112, 0.12);
}

/* footer */
footer {
	margin-top: 40px;
	padding-top: 42px;
	padding-bottom: 24px;
	background: linear-gradient(180deg, #2f3945 0%, #353f4b 100%);
	border-top: 1px solid #44505c;
	color: #d7dee5;
}

footer .container {
	padding-left: 20px;
	padding-right: 20px;
}

footer hr {
	margin-top: 28px;
	margin-bottom: 22px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	border-bottom: none;
}

footer a {
	color: #d7dee5;
}

footer a:hover {
	color: #e31270;
}

footer h5 {
	font-family: 'Open Sans', sans-serif;
	font-size: 22px;
	font-weight: 700;
	color: #fff;
	margin: 0 0 16px;
}

footer ul.list-unstyled {
	margin: 0;
	padding: 0;
}

footer ul.list-unstyled li {
	margin-bottom: 8px;
}

footer p {
	margin: 0 0 8px;
	color: #c5ced7;
	font-size: 14px;
	line-height: 1.7;
}

footer .footer-bottom {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding-top: 2px;
}

footer .footer-copy {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
	color: #d7dee5;
}

footer .fa {
	color: #9aa6b2;
}

/* mobile */
@media (max-width: 991px) {
	.header-main {
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
	}

	.header-brand,
	.header-cart {
		flex: none;
		max-width: none;
	}

	.header-tools {
		flex-direction: column;
		align-items: stretch;
	}
}

@media (max-width: 767px) {
	#top .container {
		display: block;
	}

	#top .topbar-left {
		display: none;
	}

	#top .topbar-right {
		width: 100%;
	}

	#top {
		padding: 4px 0;
		margin-bottom: 10px;
	}

	#top .btn-link,
	#top-links li,
	#top-links a,
	#top a {
		font-size: 11px;
	}

	#top-links > ul {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr) minmax(0, 1fr);
		gap: 4px 6px;
		position: relative;
		width: 100%;
	}

	#top-links li {
		min-width: 0;
	}

	#top-links a {
		display: flex;
		align-items: center;
		gap: 4px;
		padding: 2px 0;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#top-links .topbar-wishlist,
	#top-links .topbar-checkout {
		display: none;
	}

	#top-links .topbar-account {
		position: static;
	}

	#top-links .topbar-account.open > .dropdown-menu {
		display: block;
		left: 0;
		right: auto;
		top: 100%;
		width: min(260px, 92vw);
		margin-top: 6px;
		z-index: 2000;
	}

	#top-links .topbar-account.open > .dropdown-menu a {
		display: block;
		white-space: normal;
		overflow: visible;
		text-overflow: clip;
		padding: 11px 16px;
	}

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

	.header-main {
		gap: 14px;
	}

	#logo {
		text-align: center;
	}

	#logo img {
		margin: 0 auto;
		max-height: 76px;
		width: auto;
	}

	.header-search,
	.header-cart {
		width: 100%;
	}

	#search .form-control,
	#search .btn-lg,
	#cart > .btn {
		height: 46px;
		min-height: 46px;
	}

	#search .btn-lg {
		padding-left: 18px;
		padding-right: 18px;
	}

	#cart > .btn {
		font-size: 14px;
	}

	#menu #category {
		font-size: 15px;
		line-height: 44px;
	}

	#menu .btn-navbar {
		padding: 6px 16px;
		border-radius: 0 10px 10px 0;
		background: #3b4653;
	}

	footer {
		padding-top: 30px;
		padding-bottom: 18px;
	}

	footer .col-sm-3 {
		margin-bottom: 22px;
	}

	footer h5 {
		font-size: 18px;
		margin-bottom: 12px;
	}

	footer hr {
		margin-top: 10px;
		margin-bottom: 16px;
	}

	footer .footer-bottom {
		padding-top: 0;
	}
}

/* home */
.home-page {
	padding-top: 28px;
	padding-bottom: 10px;
}

.home-promo-banner {
	margin-bottom: 28px;
	border-radius: 28px;
	overflow: hidden;
	border: 1px solid #e7edf5;
	background: #ffffff;
	box-shadow: 0 18px 42px rgba(48, 58, 68, 0.08);
}

.home-promo-banner-image {
	display: block;
	width: 100%;
	height: auto;
}

.hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.6fr) minmax(280px, 0.8fr);
	gap: 24px;
	margin-bottom: 28px;
}

.hero-banner {
	padding: 34px 36px;
	border-radius: 26px;
	background:
		radial-gradient(circle at top left, rgba(227, 18, 112, 0.12), transparent 26%),
		linear-gradient(135deg, #ffffff 0%, #f5f8fb 100%);
	border: 1px solid #e3ebf1;
	box-shadow: 0 18px 42px rgba(48, 58, 68, 0.08);
}

.hero-copy {
	max-width: 720px;
}

.hero-kicker,
.section-kicker {
	display: inline-block;
	margin-bottom: 14px;
	padding: 6px 12px;
	border-radius: 999px;
	background: rgba(227, 18, 112, 0.12);
	color: #c50f69;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.hero-banner h1 {
	margin: 0 0 16px;
	font-size: 42px;
	line-height: 1.1;
	font-weight: 700;
	color: #2d3641;
}

.hero-banner p {
	margin: 0;
	max-width: 680px;
	font-size: 17px;
	line-height: 1.75;
	color: #5e6b78;
}

.hero-highlights {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-top: 26px;
}

.hero-note {
	padding: 18px 20px;
	border-radius: 18px;
	background: #ffffff;
	border: 1px solid #e7eef4;
}

.hero-note strong,
.hero-card strong {
	display: block;
	margin-bottom: 8px;
	font-size: 18px;
	line-height: 1.35;
	color: #2d3641;
}

.hero-note span,
.hero-card span,
.section-heading p {
	color: #5e6b78;
	line-height: 1.7;
}

.hero-side {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.hero-card {
	display: block;
	padding: 26px;
	border-radius: 22px;
	text-decoration: none;
	border: 1px solid transparent;
	box-shadow: 0 16px 34px rgba(48, 58, 68, 0.1);
}

.hero-card:hover {
	text-decoration: none;
	transform: translateY(-2px);
}

.hero-card-label {
	display: inline-block;
	margin-bottom: 14px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.home-section-categories {
	padding: 28px 30px;
	border-radius: 28px;
	background: #ffffff;
	box-shadow: 0 18px 44px rgba(48, 58, 68, 0.08);
}

.root-category-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.root-category-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 290px;
	padding: 32px 26px;
	border: 1px solid #e3ebf1;
	border-radius: 30px;
	background: #ffffff;
	box-shadow: 0 10px 26px rgba(48, 58, 68, 0.04);
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
	text-align: center;
}

.root-category-card:hover {
	transform: translateY(-3px);
	border-color: rgba(227, 18, 112, 0.25);
	box-shadow: 0 18px 34px rgba(48, 58, 68, 0.08);
	text-decoration: none;
}

.root-category-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 152px;
	height: 152px;
	margin-bottom: 22px;
	border-radius: 999px;
	background: rgba(227, 18, 112, 0.12);
	color: #e31270;
}

.root-category-icon svg {
	width: 70px;
	height: 70px;
}

.root-category-icon-photo {
	padding: 10px;
	background: #ffffff;
	border: 1px solid #f1d6e1;
}

.root-category-photo {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 999px;
}

.root-category-card strong {
	color: #2d3641;
	font-size: 24px;
	line-height: 1.5;
	font-weight: 700;
	max-width: 380px;
}

.hero-card-primary {
	background: linear-gradient(135deg, #2f3945 0%, #465261 100%);
}

.hero-card-primary .hero-card-label {
	color: #ffc7df;
}

.hero-card-primary strong,
.hero-card-primary span {
	color: #ffffff;
}

.hero-card-secondary {
	background: linear-gradient(135deg, #ffffff 0%, #f3f7fa 100%);
	border-color: #e3ebf1;
}

.hero-card-secondary .hero-card-label {
	color: #c50f69;
}

.home-section {
	margin-bottom: 28px;
}

.home-section-seo {
	padding: 30px 32px;
	border-radius: 28px;
	background: #ffffff;
	border: 1px solid #e3ebf1;
	box-shadow: 0 16px 36px rgba(48, 58, 68, 0.06);
}

.seo-copy {
	max-width: 1120px;
	margin-bottom: 28px;
}

.seo-copy p,
.seo-more-copy p {
	margin: 0 0 16px;
	color: #485564;
	font-size: 17px;
	line-height: 1.8;
}

.seo-copy p:last-child,
.seo-more-copy p:last-child {
	margin-bottom: 0;
}

.seo-copy strong,
.seo-more-copy strong {
	color: #2d3641;
	font-weight: 700;
}

.seo-topics {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-bottom: 22px;
}

.seo-topic-card {
	padding: 24px 24px 22px;
	border: 1px solid #e4ebf1;
	border-radius: 22px;
	background: linear-gradient(180deg, #ffffff 0%, #fafcfe 100%);
}

.seo-topic-card h2 {
	margin: 0 0 10px;
	color: #2d3641;
	font-size: 25px;
	line-height: 1.25;
	font-weight: 700;
}

.seo-topic-card p {
	margin: 0;
	color: #5b6773;
	font-size: 16px;
	line-height: 1.7;
}

.seo-more {
	border-top: 1px solid #e8eef4;
	padding-top: 18px;
}

.seo-more summary {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	color: #c61063;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	list-style: none;
}

.seo-more summary::-webkit-details-marker {
	display: none;
}

.seo-more summary::after {
	content: '+';
	display: inline-block;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(227, 18, 112, 0.1);
	color: #c61063;
	font-size: 18px;
	line-height: 22px;
	text-align: center;
}

.seo-more[open] summary::after {
	content: '−';
}

.seo-more-copy {
	padding-top: 18px;
}

.seo-more-copy ul {
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
}

.seo-more-copy li {
	position: relative;
	margin-bottom: 12px;
	padding-left: 18px;
	color: #485564;
	font-size: 16px;
	line-height: 1.75;
}

.seo-more-copy li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 11px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #e31270;
}

.home-section-top,
.home-section-bottom,
.home-section-intro {
	padding: 28px 30px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid #e3ebf1;
	box-shadow: 0 16px 36px rgba(48, 58, 68, 0.06);
}

.section-heading h2 {
	margin: 0 0 10px;
	font-size: 30px;
	font-weight: 700;
	color: #2d3641;
}

.section-heading p {
	margin: 0;
	font-size: 16px;
}

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

	.hero-banner h1 {
		font-size: 34px;
	}

	.root-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.seo-topics {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.home-page {
		padding-top: 8px;
	}

	.home-promo-banner {
		margin-bottom: 18px;
		border-radius: 20px;
	}

	.home-promo-banner-image {
		height: 140px;
		object-fit: cover;
		object-position: center 28%;
	}

	.hero-grid {
		display: none;
	}

	.home-section-seo {
		display: none;
	}

	.home-section-categories .section-kicker,
	.home-section-categories .section-heading p {
		display: none;
	}

	.hero-banner,
	.home-section-top,
	.home-section-bottom,
	.home-section-intro {
		padding: 18px;
		border-radius: 20px;
	}

	.hero-banner h1 {
		font-size: 22px;
		line-height: 1.18;
		letter-spacing: 0;
	}

	.hero-kicker,
	.section-kicker {
		margin-bottom: 10px;
		font-size: 11px;
		letter-spacing: 0.08em;
	}

	.hero-banner p,
	.section-heading p {
		font-size: 14px;
		line-height: 1.75;
	}

	.hero-highlights {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.hero-copy {
		max-width: none;
	}

	.hero-card {
		padding: 18px 16px;
		border-radius: 18px;
	}

	.hero-note {
		padding: 14px 14px;
	}

	.home-section-categories {
		padding: 22px;
		border-radius: 20px;
	}

	.root-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.root-category-card {
		min-height: 0;
		padding: 14px 10px;
		border-radius: 18px;
	}

	.root-category-icon {
		width: 72px;
		height: 72px;
		margin-bottom: 10px;
	}

	.root-category-icon svg {
		width: 52px;
		height: 52px;
	}

	.root-category-icon-photo {
		padding: 4px;
	}

	.root-category-card strong {
		font-size: 15px;
		line-height: 1.3;
	}
}

/* category */
.catalog-page {
	padding-top: 16px;
	padding-bottom: 20px;
}

.catalog-hero,
.product-shell,
.product-tabs-shell,
.catalog-section {
	margin-bottom: 28px;
	padding: 28px 30px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid #e3ebf1;
	box-shadow: 0 16px 36px rgba(48, 58, 68, 0.06);
}

.catalog-hero {
	display: flex;
	align-items: center;
	gap: 28px;
}

.catalog-hero-media {
	flex: 0 0 220px;
	max-width: 220px;
}

.catalog-hero-media img {
	border-radius: 20px;
}

.catalog-hero-copy {
	flex: 1;
}

.catalog-heading h1,
.catalog-hero h1,
.product-summary h1 {
	margin: 0;
	font-size: 38px;
	line-height: 1.1;
	font-weight: 700;
	color: #2d3641;
}

.catalog-description {
	margin-top: 16px;
	font-size: 16px;
	line-height: 1.8;
	color: #5e6b78;
}

.category-tiles {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 16px;
}

.category-tile {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 88px;
	padding: 20px 22px;
	border-radius: 18px;
	background: linear-gradient(135deg, #ffffff 0%, #f6f9fc 100%);
	border: 1px solid #e4ebf1;
	box-shadow: 0 12px 24px rgba(48, 58, 68, 0.05);
	font-weight: 700;
	font-size: 16px;
	color: #2d3641;
}

.category-tile:hover {
	color: #ffffff;
	background: linear-gradient(135deg, #c50f69 0%, #e31270 100%);
	border-color: #c50f69;
}

.catalog-toolbar {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 22px;
}

.catalog-filter-panel {
	margin-bottom: 24px;
	padding: 22px 26px;
	border-radius: 22px;
	background: #ffffff;
	border: 1px solid #e3ebf1;
	box-shadow: 0 14px 30px rgba(48, 58, 68, 0.05);
}

.catalog-filter-toggle {
	min-width: 150px;
	border-radius: 14px;
	font-weight: 700;
}

.catalog-filter-collapse {
	margin-top: 16px;
}

.catalog-filter-form {
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.catalog-filter-fields {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.catalog-filter-field label {
	display: block;
	margin-bottom: 8px;
	color: #63707e;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.catalog-filter-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.catalog-filter-actions .btn {
	min-width: 150px;
	border-radius: 14px;
}

.catalog-results {
	color: #71808d;
	font-size: 14px;
}

.catalog-controls {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.catalog-control {
	min-width: 190px;
}

.catalog-control .control-label {
	margin-bottom: 8px;
	color: #63707e;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.catalog-empty {
	padding: 34px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid #e3ebf1;
	text-align: center;
}

.search-shell .section-heading {
	margin-bottom: 24px;
}

.search-checks {
	padding-top: 28px;
}

.search-checks .checkbox {
	margin-top: 0;
	margin-bottom: 10px;
	color: #5e6b78;
}

.search-submit {
	margin-top: 28px;
	min-height: 46px;
	border-radius: 12px;
}

.product-thumb-modern {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.product-thumb-modern .caption {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

.product-thumb-modern .price {
	margin-top: auto;
	font-size: 20px;
	line-height: 1.35;
	font-weight: 700;
}

.product-grid-modern > .row,
.module-showcase-grid {
	display: flex;
	flex-wrap: wrap;
}

.product-grid-modern .product-layout,
.module-showcase-grid .product-layout {
	display: flex;
	margin-bottom: 20px;
}

.product-grid-modern .product-thumb,
.module-showcase-grid .product-thumb {
	width: 100%;
}

.module-showcase-grid .product-thumb-modern .image {
	min-height: 220px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.module-showcase-grid .product-thumb-modern .image a {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.module-showcase-grid .product-thumb-modern .image img {
	max-height: 220px;
	width: auto;
	margin: 0 auto;
}

.module-showcase-grid .product-thumb-modern .caption {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.module-showcase-grid .product-thumb-modern .price {
	margin-top: auto;
}

.product-grid-modern .product-layout:only-child {
	width: 50%;
	max-width: 50%;
	margin-left: auto;
	margin-right: auto;
}

.product-grid-modern .product-layout:first-child:nth-last-child(2),
.product-grid-modern .product-layout:first-child:nth-last-child(2) ~ .product-layout {
	width: 50%;
	max-width: 50%;
}

.product-thumb-modern .caption h4 {
	margin: 0 0 10px;
	font-size: 20px;
	line-height: 1.35;
}

.product-thumb-modern .caption p {
	color: #677482;
	line-height: 1.7;
}

.product-thumb-modern .button-group button {
	line-height: 44px;
}

.product-thumb-modern .button-group button.catalog-cart-added {
	background: #28a745;
	color: #ffffff;
}

.product-thumb-modern .button-group button.catalog-cart-warning {
	background: #ff9f1c;
	color: #1f2d3d;
}

.product-thumb-modern .button-group button.catalog-cart-added span,
.product-thumb-modern .button-group button.catalog-cart-warning span {
	display: inline;
	margin-left: 6px;
	font-weight: 700;
}

@media (max-width: 991px) {
	.module-showcase-grid .product-thumb-modern .caption h4,
	.module-showcase-grid .product-thumb-modern .caption p,
	.module-showcase-grid .product-thumb-modern .image {
		min-height: 0;
	}

	.module-showcase-grid .product-thumb-modern .image img {
		max-height: 240px;
	}
}

/* product */
.product-shell {
	padding: 34px;
}

.product-gallery,
.product-summary {
	height: 100%;
}

.product-main-image .thumbnail {
	padding: 18px;
	border-radius: 22px;
	border: 1px solid #e3ebf1;
	background: #f9fbfd;
	margin-bottom: 18px;
}

.product-thumbnails {
	margin-top: 0;
}

.product-thumbnails .image-additional {
	margin-bottom: 10px;
}

.product-thumbnails .thumbnail {
	border-radius: 14px;
	border: 1px solid #e3ebf1;
	background: #ffffff;
}

.product-summary h1 {
	margin-bottom: 16px;
}

.product-meta-rating {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 16px;
}

.product-meta-list {
	margin-bottom: 20px;
	padding: 18px 20px;
	border-radius: 18px;
	background: #f7fafc;
	border: 1px solid #e7eef4;
}

.product-meta-list li {
	margin-bottom: 8px;
	color: #5c6875;
}

.product-price-box {
	margin-bottom: 22px;
	padding: 22px 24px;
	border-radius: 20px;
	background: linear-gradient(135deg, #2f3945 0%, #465261 100%);
	box-shadow: 0 16px 36px rgba(48, 58, 68, 0.14);
}

.product-price-current {
	font-family: inherit;
	font-size: 38px;
	line-height: 1.1;
	font-weight: 700;
	color: #ffffff;
}

.product-price-old {
	margin-top: 8px;
	font-size: 18px;
	color: rgba(255, 255, 255, 0.6);
	text-decoration: line-through;
}

.product-price-tax {
	margin-top: 10px;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.82);
}

.product-discounts {
	margin-bottom: 20px;
	color: #5e6b78;
}

.product-purchase {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 16px;
	margin-top: 22px;
}

.product-quantity {
	flex: 0 0 170px;
}

.product-quantity-control {
	align-items: stretch;
	background: #ffffff;
	border: 1px solid #dbe6f0;
	border-radius: 16px;
	display: flex;
	min-height: 52px;
	overflow: hidden;
}

.product-quantity-control .form-control {
	border: 0;
	border-left: 1px solid #e3ebf4;
	border-radius: 0;
	border-right: 1px solid #e3ebf4;
	box-shadow: none;
	font-size: 17px;
	font-weight: 800;
	height: 52px;
	min-width: 62px;
	padding-left: 8px;
	padding-right: 8px;
	text-align: center;
}

.product-quantity-control .form-control:focus {
	box-shadow: inset 0 0 0 2px rgba(215, 15, 114, .12);
}

.product-quantity-btn {
	background: #f7fbff;
	border: 0;
	color: #26364a;
	flex: 0 0 52px;
	font-size: 22px;
	font-weight: 900;
	line-height: 1;
	padding: 0;
	transition: background .18s ease, color .18s ease;
}

.product-quantity-btn:hover,
.product-quantity-btn:focus {
	background: #d70f72;
	color: #ffffff;
	outline: 0;
}

.product-purchase #button-cart {
	flex: 1;
	min-height: 52px;
	border-radius: 14px;
	font-size: 16px;
}

.product-tabs-shell .tab-content {
	padding-top: 22px;
}

.product-tabs-shell .tab-pane {
	color: #44505c;
	font-size: 17px;
	line-height: 1.9;
}

.product-tabs-shell .tab-pane p {
	margin: 0 0 18px;
	font-size: 17px;
	line-height: 1.9;
}

.product-tabs-shell .tab-pane ul,
.product-tabs-shell .tab-pane ol {
	margin: 0 0 18px 22px;
	font-size: 17px;
	line-height: 1.9;
}

#tab-description {
	max-width: 1080px;
	padding: 6px 0 8px;
	color: #44505c;
}

.product-description-flow {
	display: grid;
	gap: 24px;
}

.product-description-lead {
	padding: 8px 4px 0;
}

.product-description-lead > p:first-child {
	max-width: 980px;
	margin-bottom: 18px;
	font-size: 18px;
	line-height: 2;
	color: #2d3641;
	font-weight: 500;
}

.product-description-section {
	padding: 24px 26px 26px;
	border: 1px solid #e3ebf1;
	border-radius: 24px;
	background: linear-gradient(180deg, #fbfdff 0%, #f7fafc 100%);
	box-shadow: 0 14px 34px rgba(48, 58, 68, 0.06);
}

.product-description-section-accent {
	position: relative;
	overflow: hidden;
}

.product-description-section-accent:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, #e31270 0%, #ff6aa6 100%);
}

.product-description-eyebrow {
	display: inline-flex;
	align-items: center;
	margin-bottom: 16px;
	padding: 7px 14px;
	border-radius: 999px;
	background: rgba(227, 18, 112, 0.1);
	color: #c61063;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.product-description-section h2,
.product-description-section h3,
.product-description-section h4,
#tab-description h2,
#tab-description h3,
#tab-description h4 {
	margin: 0 0 14px;
	color: #2d3641;
	font-weight: 700;
	line-height: 1.3;
}

#tab-description h2 {
	font-size: 28px;
}

#tab-description h3 {
	font-size: 23px;
}

#tab-description h4 {
	font-size: 19px;
}

.product-description-body,
.product-description-lead,
#tab-description {
	font-size: 17px;
	line-height: 1.9;
}

.product-description-body p,
.product-description-lead p,
#tab-description p {
	margin: 0 0 16px;
}

.product-description-body ul,
.product-description-body ol,
.product-description-lead ul,
.product-description-lead ol,
#tab-description ul,
#tab-description ol {
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.product-description-body ul li,
.product-description-body ol li,
.product-description-lead ul li,
.product-description-lead ol li,
#tab-description ul li,
#tab-description ol li {
	position: relative;
	padding-left: 22px;
	margin-bottom: 10px;
}

.product-description-body ul li:before,
.product-description-body ol li:before,
.product-description-lead ul li:before,
.product-description-lead ol li:before,
#tab-description ul li:before,
#tab-description ol li:before {
	content: '';
	position: absolute;
	left: 0;
	top: 12px;
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: #e31270;
}

#tab-description strong,
#tab-description b {
	color: #2d3641;
	font-weight: 700;
}

.product-description-body strong,
.product-description-body b,
.product-description-lead strong,
.product-description-lead b {
	color: #2d3641;
	font-weight: 700;
}

#tab-description a {
	color: #e31270;
	font-weight: 600;
}

.product-description-body a,
.product-description-lead a {
	color: #e31270;
	font-weight: 600;
}

#tab-description table {
	width: 100%;
	margin: 22px 0;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	border: 1px solid #e3ebf1;
	border-radius: 16px;
}

#tab-description table th,
#tab-description table td {
	padding: 14px 16px;
	border-bottom: 1px solid #e3ebf1;
	text-align: left;
	font-size: 16px;
	line-height: 1.7;
}

#tab-description table tr:last-child td {
	border-bottom: none;
}

#tab-description blockquote {
	margin: 24px 0;
	padding: 18px 22px;
	border-left: 4px solid #e31270;
	border-radius: 0 14px 14px 0;
	background: #f8fafc;
	color: #2d3641;
	font-size: 18px;
	line-height: 1.8;
}

@media (max-width: 767px) {
	.product-description-section {
		padding: 20px 18px 20px;
		border-radius: 18px;
	}

	.product-description-lead > p:first-child {
		font-size: 17px;
		line-height: 1.85;
	}
}

.product-tabs-shell .nav-tabs {
	border-bottom: 1px solid #e3ebf1;
}

.product-tabs-shell .nav-tabs > li > a {
	margin-right: 8px;
	padding: 12px 18px;
	border: 1px solid transparent;
	border-radius: 12px 12px 0 0;
	font-weight: 700;
}

.product-tabs-shell .nav-tabs > li.active > a,
.product-tabs-shell .nav-tabs > li.active > a:hover,
.product-tabs-shell .nav-tabs > li.active > a:focus {
	color: #2d3641;
	background: #f8fafc;
	border: 1px solid #e3ebf1;
	border-bottom-color: #f8fafc;
}

.related-products .product-layout {
	margin-bottom: 20px;
}

@media (max-width: 991px) {
	.catalog-hero {
		flex-direction: column;
		align-items: flex-start;
	}

	.catalog-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.catalog-filter-fields {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.catalog-hero,
	.product-shell,
	.product-tabs-shell,
	.catalog-section,
	.catalog-empty {
		padding: 22px;
		border-radius: 20px;
	}

	.catalog-heading h1,
	.catalog-hero h1,
	.product-summary h1 {
		font-size: 24px;
		line-height: 1.22;
	}

	.product-summary {
		padding-top: 4px;
	}

	.product-main-image .thumbnail {
		padding: 12px;
		border-radius: 18px;
	}

	.product-thumbnails .thumbnail,
	.image-additional a {
		border-radius: 14px;
	}

	.product-purchase {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}

	.product-quantity {
		flex: none;
		width: 100%;
	}

	.product-quantity input {
		height: 46px;
	}

	.product-price-box {
		padding: 18px 18px;
		border-radius: 18px;
	}

	.product-price-current {
		font-size: 24px;
		line-height: 1.22;
	}

	.product-meta {
		padding: 16px 18px;
		border-radius: 16px;
	}

	.search-checks,
	.search-submit {
		margin-top: 0;
		padding-top: 0;
	}

	.product-grid-modern > .row {
		display: block;
	}

	.product-grid-modern .product-layout,
	.product-grid-modern .product-layout:only-child,
	.product-grid-modern .product-layout:first-child:nth-last-child(2),
	.product-grid-modern .product-layout:first-child:nth-last-child(2) ~ .product-layout {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	.product-tabs-shell .nav-tabs {
		display: flex;
		flex-wrap: wrap;
		gap: 8px;
		border-bottom: none;
	}

	.product-tabs-shell .nav-tabs > li {
		float: none;
		margin: 0;
	}

	.product-tabs-shell .nav-tabs > li > a {
		margin-right: 0;
		padding: 10px 14px;
		border-radius: 12px;
		border: 1px solid #e3ebf1;
		background: #f8fafc;
		font-size: 13px;
	}

	.product-tabs-shell .nav-tabs > li.active > a,
	.product-tabs-shell .nav-tabs > li.active > a:hover,
	.product-tabs-shell .nav-tabs > li.active > a:focus {
		border-bottom-color: #e3ebf1;
		background: #ffffff;
	}

	.product-tabs-shell .tab-content {
		padding-top: 18px;
	}

	.product-description-lead > p:first-child,
	#tab-description,
	.product-description-body {
		font-size: 16px;
		line-height: 1.8;
	}
}

/* manufacturers */
.manufacturer-page .catalog-section {
	padding-top: 30px;
}

.manufacturer-index {
	margin-bottom: 26px;
	padding: 18px 20px;
	border-radius: 18px;
	background: #f7fafc;
	border: 1px solid #e7eef4;
}

.manufacturer-index strong {
	display: block;
	margin-bottom: 10px;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #63707e;
}

.manufacturer-index-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.manufacturer-index-links a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 38px;
	padding: 0 14px;
	border-radius: 999px;
	background: #ffffff;
	border: 1px solid #e3ebf1;
	font-weight: 700;
	color: #44505c;
}

.manufacturer-index-links a:hover {
	background: #e31270;
	border-color: #e31270;
	color: #ffffff;
}

.manufacturer-group + .manufacturer-group {
	margin-top: 26px;
}

.manufacturer-group h2 {
	margin: 0 0 16px;
	font-size: 24px;
	font-weight: 700;
	color: #2d3641;
}

.manufacturer-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 14px;
}

.manufacturer-card {
	display: flex;
	align-items: center;
	min-height: 72px;
	padding: 18px 20px;
	border-radius: 16px;
	background: linear-gradient(135deg, #ffffff 0%, #f6f9fc 100%);
	border: 1px solid #e4ebf1;
	box-shadow: 0 10px 22px rgba(48, 58, 68, 0.05);
	font-weight: 700;
	font-size: 15px;
	color: #2d3641;
}

.manufacturer-card:hover {
	background: linear-gradient(135deg, #c50f69 0%, #e31270 100%);
	border-color: #c50f69;
	color: #ffffff;
}

/* home modules */
.module-showcase {
	margin-bottom: 12px;
}

.module-header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-bottom: 20px;
}

.module-header h3 {
	margin: 0;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
	color: #2d3641;
}

.module-showcase .product-layout {
	margin-bottom: 20px;
}

.module-banner,
.module-carousel,
.module-slideshow,
.module-html {
	padding: 0;
}

.module-banner .swiper-viewport,
.module-carousel .swiper-viewport,
.module-slideshow .swiper-viewport {
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 18px 36px rgba(48, 58, 68, 0.1);
}

.module-banner img,
.module-carousel img,
.module-slideshow img {
	width: 100%;
}

.module-html-body {
	padding: 26px 28px;
	border-radius: 22px;
	background: #ffffff;
	border: 1px solid #e3ebf1;
	box-shadow: 0 14px 30px rgba(48, 58, 68, 0.06);
}

.sidebar-card,
.sidebar.sidebar-card,
.sidebar-filter,
.sidebar-store {
	margin-bottom: 22px;
	padding: 18px;
	border: 1px solid #e3ebf1;
	border-radius: 20px;
	background: #ffffff;
	box-shadow: 0 14px 28px rgba(48, 58, 68, 0.05);
}

.sidebar-card .list-group,
.sidebar-filter .list-group {
	margin-bottom: 0;
}

.sidebar-card .list-group-item,
.sidebar .nav-stacked > li > a,
.sidebar-filter .list-group-item {
	border: 1px solid #e8eef3;
	border-radius: 12px;
	margin-bottom: 8px;
	padding: 12px 14px;
	color: #44505c;
	background: #ffffff;
}

.sidebar-card .list-group-item:last-child,
.sidebar .nav-stacked > li:last-child > a,
.sidebar-filter .list-group-item:last-child {
	margin-bottom: 0;
}

.sidebar-card .list-group-item.active,
.sidebar-card .list-group-item.active:hover,
.sidebar-card .list-group-item:hover,
.sidebar .nav-stacked > li > a:hover,
.sidebar-filter .list-group-item:hover {
	color: #ffffff;
	background: linear-gradient(135deg, #c50f69 0%, #e31270 100%);
	border-color: #c50f69;
	text-shadow: none;
}

.category-sidebar .category-parent {
	font-size: 15px;
	font-weight: 700;
}

.category-sidebar .category-child {
	position: relative;
	margin-left: 16px;
	padding: 10px 14px 10px 32px;
	font-size: 13px;
	line-height: 1.35;
	background: #f8fafc;
	border-color: #dfe7ef;
	color: #5f6d7b;
}

.category-sidebar .category-child:after {
	content: '';
	position: absolute;
	left: 14px;
	top: 10px;
	bottom: 10px;
	width: 1px;
	background: #d7e0e8;
}

.category-sidebar .category-child:before {
	content: '';
	position: absolute;
	left: 11px;
	top: 50%;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #c9d4df;
	transform: translateY(-50%);
}

.category-sidebar .category-child.active:before,
.category-sidebar .category-child:hover:before {
	background: rgba(255, 255, 255, 0.9);
}

.sidebar-filter .panel-heading,
.sidebar-store .panel-heading {
	margin: -18px -18px 16px;
	padding: 16px 18px;
	border: none;
	border-bottom: 1px solid #e8eef3;
	border-radius: 20px 20px 0 0;
	background: #f8fafc;
	font-size: 18px;
	font-weight: 700;
	color: #2d3641;
}

.sidebar-filter .panel-footer,
.sidebar-store .panel-footer {
	padding: 14px 0 0;
	border: none;
	background: transparent;
}

.sidebar-filter .checkbox {
	margin-top: 0;
	margin-bottom: 10px;
	color: #5e6b78;
}

.sidebar-store p {
	margin-bottom: 14px;
	color: #5e6b78;
}

.sidebar-store a {
	display: block;
	padding: 10px 12px;
	border-radius: 12px;
}

.sidebar-store a:hover {
	background: #f7fafc;
}

.module-showcase .button-group button {
	line-height: 44px;
}

.module-amazon-login {
	padding: 0;
	background: transparent;
	border: none;
	box-shadow: none;
}

.module-special-state {
	margin-bottom: 24px;
}

.module-divido {
	padding: 0;
	background: transparent;
	border: none;
	box-shadow: none;
}

.module-divido .divido-calculator {
	margin: 0;
	border-radius: 22px;
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 18px 36px rgba(48, 58, 68, 0.16);
}

.module-divido .divido-btn {
	border-radius: 10px;
}

/* information pages */
.info-page {
	padding-top: 16px;
	padding-bottom: 20px;
}

.info-shell {
	margin-bottom: 28px;
	padding: 30px 32px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid #e3ebf1;
	box-shadow: 0 16px 36px rgba(48, 58, 68, 0.06);
}

.info-content {
	font-size: 16px;
	line-height: 1.85;
	color: #5e6b78;
}

.info-subtitle {
	margin: 0 0 18px;
	font-size: 24px;
	font-weight: 700;
	color: #2d3641;
}

.contact-card,
.contact-panel {
	border: 1px solid #e4ebf1;
	border-radius: 20px;
	background: #f9fbfd;
	box-shadow: none;
}

.contact-card {
	padding: 24px 26px;
	margin-bottom: 24px;
}

.contact-image {
	border-radius: 16px;
}

.contact-messenger-link {
	display: inline-flex;
	align-items: center;
	font-weight: 700;
	color: #c50f69;
	text-decoration: none;
}

.contact-messenger-link:hover,
.contact-messenger-link:focus {
	color: #e31270;
	text-decoration: underline;
}

.contact-accordion .contact-panel + .contact-panel {
	margin-top: 14px;
}

.contact-accordion .panel-heading {
	padding: 16px 20px;
	border-bottom: 1px solid #e4ebf1;
	border-radius: 20px 20px 0 0;
	background: #ffffff;
}

.contact-accordion .panel-title a {
	display: block;
	font-weight: 700;
	color: #2d3641;
}

.contact-accordion .panel-body {
	padding: 22px 24px;
}

.contact-form-shell {
	margin-top: 26px;
	padding: 24px 26px;
	border-radius: 20px;
	background: #f9fbfd;
	border: 1px solid #e4ebf1;
}

.contact-form-shell legend {
	margin-bottom: 18px;
	padding-bottom: 0;
	border: none;
	font-size: 24px;
	font-weight: 700;
	color: #2d3641;
}

.sitemap-columns {
	margin-top: 6px;
}

.sitemap-list,
.sitemap-list ul {
	list-style: none;
	padding-left: 0;
}

.sitemap-list > li {
	margin-bottom: 14px;
	padding: 16px 18px;
	border-radius: 16px;
	background: #f9fbfd;
	border: 1px solid #e4ebf1;
}

.sitemap-list > li > a,
.sitemap-list > li {
	font-weight: 700;
	color: #2d3641;
}

.sitemap-list ul {
	margin-top: 10px;
	padding-left: 18px;
}

.sitemap-list ul li {
	margin-bottom: 8px;
	font-weight: 400;
}

@media (max-width: 767px) {
	.info-shell {
		padding: 22px;
		border-radius: 20px;
	}

	.info-subtitle,
	.contact-form-shell legend {
		font-size: 22px;
	}

	.contact-card,
	.contact-form-shell {
		padding: 20px;
	}

	.contact-card .embed-responsive iframe {
		height: 280px !important;
	}
}

/* account + checkout */
.account-page,
.checkout-page {
	padding-top: 16px;
	padding-bottom: 20px;
}

.account-shell,
.checkout-shell {
	margin-bottom: 28px;
	padding: 30px 32px;
	border-radius: 24px;
	background: #ffffff;
	border: 1px solid #e3ebf1;
	box-shadow: 0 16px 36px rgba(48, 58, 68, 0.06);
}

.account-card.well {
	height: 100%;
	padding: 26px;
	border: 1px solid #e4ebf1;
	border-radius: 20px;
	background: linear-gradient(135deg, #ffffff 0%, #f6f9fc 100%);
	box-shadow: none;
}

.account-card h2 {
	margin: 0 0 12px;
	font-size: 28px;
	font-weight: 700;
	color: #2d3641;
}

.account-card p strong {
	display: block;
	margin-bottom: 10px;
	color: #c61063;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.account-card .form-group {
	margin-bottom: 18px;
}

.account-card .control-label {
	margin-bottom: 8px;
	color: #4c5968;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.account-card .form-control {
	height: 48px;
	border: 1px solid #d7e0e7;
	border-radius: 14px;
	background: #fbfdff;
	box-shadow: none;
}

.account-card .form-control:focus {
	border-color: rgba(227, 18, 112, 0.42);
	box-shadow: 0 0 0 4px rgba(227, 18, 112, 0.08);
}

.account-shell .section-heading {
	margin-bottom: 28px;
}

.account-shell .section-heading h1 {
	margin: 0 0 12px;
}

.account-role-hint {
	margin: 0;
	max-width: 760px;
}

.account-role-switch {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 16px;
	margin-bottom: 28px;
}

.account-role-switch .btn {
	min-width: 0;
	border-radius: 14px;
}

.account-card-wrap {
	max-width: 760px;
	margin: 0 auto;
}

.account-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: 6px;
}

.forgotten-link {
	color: #5f6e7d;
	font-weight: 600;
}

.forgotten-link:hover {
	color: #e31270;
	text-decoration: none;
}

.account-actions .btn {
	min-width: 168px;
}

.account-section + .account-section {
	margin-top: 24px;
}

.account-links {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 12px;
	margin: 0;
}

.account-links li {
	margin: 0;
}

.account-links a {
	display: flex;
	align-items: center;
	min-height: 64px;
	padding: 16px 18px;
	border-radius: 16px;
	background: #f8fafc;
	border: 1px solid #e4ebf1;
	font-weight: 700;
	color: #2d3641;
}

.account-links a:hover {
	background: linear-gradient(135deg, #c50f69 0%, #e31270 100%);
	border-color: #c50f69;
	color: #ffffff;
}

@media (max-width: 767px) {
	.account-shell,
	.checkout-shell {
		padding: 22px 18px;
		border-radius: 20px;
	}

	.account-card.well {
		padding: 20px 16px;
		border-radius: 18px;
	}

	.account-card h2 {
		font-size: 22px;
		line-height: 1.25;
	}

	.account-shell .section-heading {
		margin-bottom: 20px;
	}

	.account-shell .section-heading h1 {
		font-size: 22px;
		line-height: 1.2;
	}

	.account-role-switch {
		margin-bottom: 18px;
	}

	.account-role-switch .btn {
		width: 100%;
	}

	.account-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.account-actions .btn {
		width: 100%;
		min-width: 0;
	}

	.account-page .buttons .pull-right {
		float: none !important;
		width: 100%;
	}

	.account-page .buttons .btn {
		width: 100%;
	}

	.auth-page #column-right {
		display: none;
	}
}

.checkout-table-shell {
	border-radius: 20px;
	overflow: hidden;
	border: 1px solid #e4ebf1;
}

.checkout-table,
.checkout-total-table {
	margin-bottom: 0;
	background: #ffffff;
}

.checkout-table > thead > tr > td,
.checkout-total-table > tbody > tr > td {
	background: #f8fafc;
	border-color: #e4ebf1;
	font-weight: 700;
	color: #2d3641;
}

.checkout-table > tbody > tr > td,
.checkout-total-table > tbody > tr > td {
	border-color: #e4ebf1;
	vertical-align: middle;
}

.checkout-accordion .panel {
	border: 1px solid #e4ebf1;
	border-radius: 18px;
	box-shadow: none;
	overflow: hidden;
}

.checkout-accordion .panel + .panel {
	margin-top: 14px;
}

.checkout-accordion .panel-heading {
	padding: 18px 20px;
	background: #f8fafc;
	border-bottom: 1px solid #e4ebf1;
}

.checkout-accordion .panel-title {
	font-size: 18px;
	font-weight: 700;
	color: #2d3641;
}

.checkout-accordion .panel-body {
	padding: 22px 24px;
	background: #ffffff;
}

.checkout-page .form-horizontal .form-group,
.account-page .form-horizontal .form-group {
	margin-left: 0;
	margin-right: 0;
}

.checkout-split {
	display: flex;
	flex-wrap: wrap;
	row-gap: 18px;
}

.checkout-step-shell {
	padding: 24px 26px;
	border: 1px solid #e4ebf1;
	border-radius: 20px;
	background: linear-gradient(135deg, #ffffff 0%, #f7fafc 100%);
	box-shadow: 0 12px 28px rgba(48, 58, 68, 0.05);
}

.checkout-step-shell h2 {
	margin-top: 0;
	margin-bottom: 12px;
	font-size: 28px;
	font-weight: 700;
	color: #2d3641;
}

.checkout-step-intro,
.checkout-step-note {
	color: #5e6b78;
	line-height: 1.75;
}

.checkout-step-note {
	margin-bottom: 16px;
}

.checkout-inline-link {
	display: inline-block;
	margin-top: 10px;
	font-weight: 600;
}

.checkout-step-actions {
	margin-top: 18px;
}

.checkout-step-actions .btn {
	min-width: 180px;
}

.checkout-form-section + .checkout-form-section {
	margin-top: 24px;
}

.checkout-form-section legend {
	margin-bottom: 18px;
	padding-bottom: 0;
	border: none;
	font-size: 22px;
	font-weight: 700;
	color: #2d3641;
}

.checkout-inline-check {
	margin-top: 16px;
	margin-bottom: 0;
	color: #5e6b78;
}

.checkout-step-form .control-label {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #5d6a78;
}

.checkout-choice-card {
	margin-bottom: 12px;
	padding: 14px 16px;
	border: 1px solid #e4ebf1;
	border-radius: 14px;
	background: #ffffff;
}

.checkout-choice-card label {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-weight: 600;
	color: #2d3641;
}

.checkout-choice-card.is-disabled {
	background: #f6f8fb;
	opacity: 0.65;
}

.checkout-shipping-option {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.checkout-shipping-option-description {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.45;
	color: #748294;
}

.checkout-store-selector {
	margin: 18px 0 14px;
}

.checkout-store-title {
	margin-bottom: 10px;
	font-size: 13px;
	font-weight: 800;
	text-transform: uppercase;
	color: #2d3641;
}

.checkout-store-lock-message {
	margin-bottom: 10px;
	padding: 10px 12px;
	border: 1px solid #d4e6f4;
	border-radius: 10px;
	background: #f7fbff;
	color: #445468;
	font-size: 13px;
	font-weight: 600;
}

.checkout-store-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.checkout-store-card {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	min-height: 96px;
	margin: 0;
	padding: 16px;
	border: 1px solid #e4ebf1;
	border-radius: 14px;
	background: #ffffff;
	cursor: pointer;
	transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.checkout-store-card input {
	margin-top: 3px;
}

.checkout-store-card.is-selected {
	border-color: #d3176f;
	background: #fff8fb;
	box-shadow: 0 10px 22px rgba(211, 23, 111, 0.12);
}

.checkout-store-card.is-disabled {
	opacity: .55;
	cursor: not-allowed;
	background: #f8fafc;
}

.checkout-store-card-body {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.checkout-store-name {
	font-size: 15px;
	font-weight: 800;
	color: #2d3641;
}

.checkout-store-message {
	font-size: 13px;
	line-height: 1.45;
	color: #5e6b78;
}

.checkout-store-card-ok .checkout-store-message {
	color: #197a55;
}

.checkout-store-card-transfer .checkout-store-message {
	color: #9b6200;
}

.checkout-store-card-missing .checkout-store-message {
	color: #b42318;
}

.checkout-delivery-note {
	margin-bottom: 18px;
	padding: 18px 20px;
	border: 1px solid #f3c2d8;
	border-radius: 14px;
	background: #fff8fb;
	color: #2d3641;
	line-height: 1.65;
}

.checkout-delivery-note p {
	margin: 0 0 8px;
}

.checkout-delivery-note p:first-child {
	font-weight: 800;
	color: #d3176f;
}

.checkout-delivery-note p:last-child {
	margin-bottom: 0;
	font-weight: 700;
}

.checkout-delivery-note-krasnoarmeisk {
	border-color: #d4e6f4;
	background: #f7fbff;
}

.glazur-address-suggest-menu {
	position: absolute;
	z-index: 20000;
	max-height: 260px;
	overflow-y: auto;
	border: 1px solid #d7e2ec;
	border-radius: 12px;
	background: #ffffff;
	box-shadow: 0 16px 34px rgba(48, 58, 68, 0.14);
}

.glazur-address-suggest-item {
	display: block;
	width: 100%;
	padding: 10px 13px;
	border: 0;
	border-bottom: 1px solid #edf2f7;
	background: #ffffff;
	color: #2d3641;
	text-align: left;
	line-height: 1.45;
}

.glazur-address-suggest-item:last-child {
	border-bottom: 0;
}

.glazur-address-suggest-item:hover,
.glazur-address-suggest-item:focus {
	background: #fff8fb;
	color: #d3176f;
	outline: none;
}

.checkout-method-list {
	margin-bottom: 18px;
}

.checkout-step-gap {
	height: 8px;
}

.checkout-confirm-shell {
	padding: 0;
	overflow: hidden;
}

.checkout-confirm-shell .checkout-table {
	margin-bottom: 0;
}

.checkout-confirm-payment {
	padding: 24px 26px;
	border-top: 1px solid #e4ebf1;
	background: #ffffff;
}

@media (max-width: 767px) {
	.account-shell,
	.checkout-shell {
		padding: 22px;
		border-radius: 20px;
	}

	.account-links {
		grid-template-columns: 1fr;
	}

	.checkout-accordion .panel-heading,
	.checkout-accordion .panel-body {
		padding: 18px;
	}

	.checkout-step-shell {
		padding: 20px;
		border-radius: 18px;
	}

	.checkout-step-actions .pull-right {
		float: none !important;
	}

	.checkout-step-actions .btn {
		width: 100%;
	}

	.checkout-store-list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.module-header h3 {
		font-size: 24px;
	}
}


/* Menu polish for desktop and mobile */
#menu .menu-shell {
  border-radius: 14px;
  overflow: visible;
}

#menu .navbar-nav {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
}

#menu .navbar-nav > li {
  position: relative;
}

#menu .menu-parent {
  display: flex;
  align-items: stretch;
}

#menu .menu-link {
  display: flex;
  align-items: center;
  min-height: 54px;
  padding: 0 18px;
  font-weight: 600;
  text-decoration: none;
}

#menu .menu-toggle {
  border: 0;
  background: transparent;
  color: inherit;
  padding: 0 14px 0 0;
}

#menu .dropdown-menu {
  border-radius: 16px;
  padding: 12px 0;
  min-width: 260px;
}

#menu .dropdown-inner {
  padding: 0 12px;
}

#menu .menu-children-list {
  margin: 0;
  padding: 0;
}

#menu .menu-child-item + .menu-child-item {
  margin-top: 6px;
}

#menu .menu-child-link {
  display: block;
  padding: 10px 14px 10px 18px;
  border-radius: 12px;
  color: #314158;
  text-decoration: none;
  line-height: 1.35;
  background: #f6f8fc;
  position: relative;
}

#menu .menu-child-link:before {
  content: '';
  position: absolute;
  left: 10px;
  top: 50%;
  width: 4px;
  height: 4px;
  margin-top: -2px;
  border-radius: 50%;
  background: #d81b72;
}

#menu .menu-child-link:hover,
#menu .menu-child-link:focus {
  background: #eef3fb;
  color: #1f2f46;
}

#menu .see-all {
  display: block;
  margin: 10px 12px 0;
  padding: 11px 14px;
  border-radius: 12px;
  font-weight: 600;
  text-decoration: none;
}

@media (min-width: 768px) {
  #menu .navbar-nav > li > .menu-link,
  #menu .navbar-nav > li > .menu-parent > .menu-link {
    color: #ffffff;
  }

  #menu .navbar-nav > li:hover > .menu-link,
  #menu .navbar-nav > li:hover > .menu-parent > .menu-link {
    color: #ffffff;
  }

  #menu .dropdown-menu {
    margin-top: 0;
    box-shadow: 0 18px 40px rgba(28, 42, 61, 0.14);
  }
}

@media (max-width: 767px) {
  #menu .navbar-nav {
    display: block;
    padding: 10px;
  }

  #menu .navbar-nav > li {
    margin-bottom: 10px;
  }

  #menu .navbar-nav > li > .menu-link,
  #menu .menu-parent {
    border-radius: 16px;
    overflow: hidden;
  }

  #menu .menu-link {
    min-height: 56px;
    padding: 0 18px;
  }

  #menu .menu-parent > .menu-link {
    flex: 1 1 auto;
  }

  #menu .menu-toggle {
    width: 52px;
    padding: 0;
  }

  #menu .dropdown-menu {
    position: static;
    float: none;
    width: 100%;
    margin-top: 10px;
    box-shadow: none;
    border-radius: 18px;
    background: #ffffff;
  }

  #menu .dropdown-inner {
    padding: 6px 10px;
  }

  #menu .menu-child-link {
    padding-left: 26px;
    border: 1px solid #e7edf6;
    background: #ffffff;
  }

  #menu .menu-child-link:before {
    left: 14px;
  }

  #menu .see-all {
    margin: 8px 10px 6px;
    text-align: center;
  }
}

.store-availability-card {
  margin: 18px 0 22px;
  padding: 18px 20px;
  border: 1px solid #e4eaf1;
  border-radius: 18px;
  background: linear-gradient(180deg, #fbfdff 0%, #f4f8fc 100%);
}

.store-availability-title {
  margin-bottom: 12px;
  font-size: 15px;
  font-weight: 700;
  color: #24364b;
}

.store-availability-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.store-availability-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 14px;
  background: #ffffff;
  border: 1px solid #e7edf5;
}

.store-availability-name {
  color: #445468;
  font-weight: 600;
}

.store-availability-value {
  color: #d3176f;
  font-weight: 700;
}

@media (max-width: 767px) {
  .store-availability-grid {
    grid-template-columns: 1fr;
  }
}

/* Mobile SEO/touch target pass for Yandex Webmaster */
@media (max-width: 767px) {
  body {
    font-size: 14px;
    line-height: 1.5;
  }

  #top {
    padding: 6px 0;
  }

  #top .container {
    padding-left: 12px;
    padding-right: 12px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  #top-links > ul {
    gap: 8px;
    flex-wrap: nowrap;
  }

  #top-links li:not(:last-child) {
    padding-right: 0;
  }

  #top-links li:not(:last-child):after {
    display: none;
  }

  #top .btn-link,
  #top-links a,
  #top a {
    min-height: 40px;
    padding: 8px 10px;
    font-size: 13px;
    line-height: 1.35;
  }

  .breadcrumb {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .breadcrumb > li {
    padding: 0 16px;
  }

  .breadcrumb a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    font-size: 13px;
  }

  .breadcrumb > li:first-child a {
    min-width: 36px;
    justify-content: center;
  }

  .contact-messenger-link {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding-top: 6px;
    padding-bottom: 6px;
  }

  .forgotten-link {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding-top: 6px;
    padding-bottom: 6px;
  }

  footer a {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    font-size: 14px;
    line-height: 1.35;
  }
}

