body {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	color: #666;
	font-size: 12px;
	line-height: 20px;
	width: 100%;
}
h1, h2, h3, h4, h5, h6 {
	color: #444;
}
/* Font Awesome: не даём системному font-family темы перебить глифы */
.fa,
.fa:before,
[class^="fa-"]:before,
[class*=" fa-"]:before {
	display: inline-block;
	font-family: FontAwesome !important;
	font-style: normal !important;
	font-variant: normal;
	font-weight: normal !important;
	line-height: 1;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.fa {
	font-size: 14px;
}
/* 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;
}
#top-links a + a {
	margin-left: 15px;
}
/* logo */
#logo {
	margin: 0 0 10px 0;
}
/* search */
#search {
	margin-bottom: 10px;
}
#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;
}
#product-category #content, #product-product #tab-description, #information-information #content {
	font-size: 13px;
}
/* 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: 'Open Sans', sans-serif;
	font-size: 13px;
	font-weight: bold;
	color: #fff;
}
/* alert */
.alert {
	padding: 8px 14px 8px 14px;
}
.alert > .close {
	position: relative;
	top: -2px;
	right: 0px;
	color: inherit;
}
/* 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);
}
html[dir=rtl] .breadcrumb > li::after {
  top: -3px;
  left: -5px;
  width: 26px;
  height: 26px;
  border-left: 1px solid #DDD;
  border-top: 1px solid #DDD;
  right: unset;
  border-right: unset;
  border-bottom:unset;

}
.pagination {
	margin: 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 {
	border: 1px solid #ddd;
	margin-bottom: 20px;
	overflow: auto;
}
.product-thumb .image {
	text-align: center;
}
.product-thumb .image a {
	display: block;
}
.product-thumb .image a:hover {
	opacity: 0.8;
}
.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;
	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;
}
html[dir=rtl] .checkbox input[type="checkbox"],
html[dir=rtl] .checkbox-inline input[type="checkbox"],
html[dir=rtl] .radio input[type="radio"],
html[dir=rtl] .radio-inline input[type="radio"] {
    position: absolute;
    margin-top: 4px\9;
    margin-right: -20px;
      margin-left: unset;
}
html[dir=rtl] .input-group-btn:last-child > .btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}
html[dir=rtl] .input-group .form-control:first-child {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    border-top-left-radius: unset;
    border-bottom-left-radius: unset;
}
html[dir=rtl] .container .row:first-child  .col-sm-4, html[dir=rtl] .container .row:first-child  .col-sm-5 {
  float: right;

}
html[dir=rtl] #cart .dropdown-menu {
  left: 0;
  right: auto;

}
@media (min-width: 768px) {
   
    html[dir=rtl] .navbar-nav {
        float: right;
        margin: 0;
    }
    
    html[dir=rtl] .navbar-nav > li {
        float: right;
    }
   
}

/* CoolStuffGear Stage 4C first visual layer */
html {
	background: var(--csg-bg);
}

body {
	background: var(--csg-bg);
	color: var(--csg-text);
	font-family: var(--csg-font-family-base);
	font-size: 15px;
	line-height: var(--csg-line-height-body);
}

a {
	color: var(--csg-primary);
}

a:hover,
a:focus {
	color: var(--csg-primary-hover);
}

h1, h2, h3, h4, h5, h6 {
	color: var(--csg-text);
	font-family: var(--csg-font-family-base);
}

h1 {
	font-size: 30px;
	font-weight: var(--csg-font-weight-bold);
	line-height: 1.2;
	margin-bottom: var(--csg-space-5);
}

h2 {
	font-size: 24px;
	font-weight: var(--csg-font-weight-bold);
	line-height: 1.25;
}

#top {
	background: var(--csg-surface);
	border-bottom: 1px solid var(--csg-border);
	color: var(--csg-text-muted);
	min-height: 42px;
}

#top .btn-link,
#top-links a {
	color: var(--csg-text-muted);
	text-shadow: none;
}

#top .btn-link:hover,
#top-links a:hover {
	color: var(--csg-primary);
}

header {
	background: var(--csg-surface);
	border-bottom: 1px solid var(--csg-border);
	padding: var(--csg-space-4) 0;
}

#logo h1 {
	margin: 0;
}

#logo h1 a {
	color: var(--csg-text);
	font-weight: var(--csg-font-weight-bold);
	text-decoration: none;
}

#search .form-control,
.form-control {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-md);
	box-shadow: none;
	color: var(--csg-text);
	min-height: 40px;
}

#search .form-control:focus,
.form-control:focus {
	border-color: var(--csg-focus);
	box-shadow: 0 0 0 3px rgba(132, 182, 255, 0.35);
}

#search .btn-default {
	border-radius: 0 var(--csg-radius-md) var(--csg-radius-md) 0;
}

#cart > .btn {
	background: var(--csg-primary);
	border-color: var(--csg-primary);
	border-radius: var(--csg-radius-md);
	color: #ffffff;
	min-height: 40px;
	text-shadow: none;
}

#cart > .btn:hover,
#cart.open > .btn {
	background: var(--csg-primary-hover);
	border-color: var(--csg-primary-hover);
	color: #ffffff;
}

#menu {
	background: var(--csg-text);
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin-bottom: var(--csg-space-5);
	min-height: 44px;
}

#menu .nav > li > a {
	color: #ffffff;
	font-size: 14px;
	font-weight: var(--csg-font-weight-medium);
	text-shadow: none;
}

#menu .nav > li > a:hover,
#menu .nav > li.open > a {
	background: rgba(255, 255, 255, 0.1);
	color: #ffffff;
}

.breadcrumb {
	background: transparent;
	border: 0;
	border-radius: 0;
	margin-bottom: var(--csg-space-4);
	padding-left: 0;
}

.breadcrumb > li + li:before {
	color: var(--csg-text-muted);
}

.btn {
	border-radius: var(--csg-radius-md);
	font-weight: var(--csg-font-weight-medium);
	min-height: 38px;
	text-shadow: none;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-primary,
.btn-success {
	background: var(--csg-primary);
	border-color: var(--csg-primary);
	color: #ffffff;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-success:hover,
.btn-success:focus {
	background: var(--csg-primary-hover);
	border-color: var(--csg-primary-hover);
	color: #ffffff;
}

.btn-default {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

.btn-default:hover,
.btn-default:focus {
	background: var(--csg-surface-muted);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

.alert {
	border-radius: var(--csg-radius-md);
}

.alert-success {
	background: #ecfdf3;
	border-color: #bbf7d0;
	color: var(--csg-success);
}

.alert-danger {
	background: #fef2f2;
	border-color: #fecaca;
	color: var(--csg-danger);
}

.alert-warning {
	background: #fffbeb;
	border-color: #fde68a;
	color: #92400e;
}

.product-thumb {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: 0 8px 24px rgba(23, 32, 42, 0.06);
	margin-bottom: var(--csg-space-5);
	overflow: hidden;
	transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.product-thumb:hover {
	box-shadow: 0 14px 34px rgba(23, 32, 42, 0.1);
	transform: translateY(-1px);
}

.product-thumb .image {
	background: #ffffff;
	padding: var(--csg-space-2);
}

.product-thumb .image a {
	align-items: center;
	aspect-ratio: 1 / 1;
	display: flex;
	justify-content: center;
	overflow: hidden;
	width: 100%;
}

.product-thumb .image img {
	height: 88%;
	max-height: 88%;
	max-width: 88%;
	object-fit: contain;
	width: 88%;
}

.product-thumb .caption {
	min-height: 150px;
	padding: var(--csg-space-4);
}

.product-thumb h4 {
	font-size: 15px;
	font-weight: var(--csg-font-weight-medium);
	line-height: 1.35;
	margin: 0 0 var(--csg-space-2);
}

.product-thumb h4 a {
	color: var(--csg-text);
}

.product-thumb p {
	color: var(--csg-text-muted);
}

.product-thumb .price {
	color: var(--csg-text);
	font-size: 18px;
	font-weight: var(--csg-font-weight-bold);
}

.product-thumb .price-new {
	color: var(--csg-primary);
}

.product-thumb .price-old {
	color: var(--csg-text-muted);
}

.product-thumb .button-group {
	background: var(--csg-surface);
	border-top: 1px solid var(--csg-border);
}

.product-thumb .button-group button {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	color: var(--csg-text);
	font-weight: var(--csg-font-weight-medium);
}

.product-thumb .button-group button:hover {
	background: var(--csg-primary);
	color: #ffffff;
}

.list-group a {
	border-color: var(--csg-border);
	color: var(--csg-text);
}

.list-group a.active,
.list-group a.active:hover,
.list-group a:hover {
	background: var(--csg-primary);
	border-color: var(--csg-primary);
	color: #ffffff;
	text-shadow: none;
}

.panel,
.well,
.table-bordered,
.table-responsive {
	border-color: var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: none;
}

footer {
	background: var(--csg-text);
	border-top: 0;
	color: #d8dee8;
	margin-top: var(--csg-space-7);
	padding-top: var(--csg-space-6);
}

footer h5 {
	color: #ffffff;
	font-size: 14px;
	font-weight: var(--csg-font-weight-bold);
	text-transform: none;
}

footer a {
	color: #d8dee8;
}

footer a:hover {
	color: #ffffff;
}

@media (max-width: 767px) {
	h1 {
		font-size: 26px;
	}

	header {
		padding: var(--csg-space-3) 0;
	}

	#logo {
		margin-bottom: var(--csg-space-3);
		text-align: left;
	}

	#search {
		margin-bottom: var(--csg-space-3);
	}

	.product-thumb .caption {
		min-height: 0;
	}
}

/* CoolStuffGear Stage 4D category/product refinement */
#product-category #content,
#product-product #content {
	padding-bottom: var(--csg-space-5);
}

#product-category .breadcrumb,
#product-product .breadcrumb {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	margin-bottom: var(--csg-space-5);
	padding: var(--csg-space-3) var(--csg-space-4);
}

#product-category .breadcrumb a,
#product-product .breadcrumb a {
	color: var(--csg-text-muted);
}

#product-category .breadcrumb li:last-child a,
#product-product .breadcrumb li:last-child a {
	color: var(--csg-text);
	font-weight: var(--csg-font-weight-medium);
}

.csg-category-heading {
	align-items: flex-end;
	display: flex;
	gap: var(--csg-space-3);
	justify-content: space-between;
	margin-bottom: var(--csg-space-4);
}

.csg-category-heading h2 {
	font-size: 30px;
	font-weight: var(--csg-font-weight-bold);
	line-height: 1.2;
	margin: 0;
}

.csg-category-intro {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	margin: 0 0 var(--csg-space-5);
	padding: var(--csg-space-4);
}

.csg-category-intro .img-thumbnail {
	border-color: var(--csg-border);
	border-radius: var(--csg-radius-md);
}

#product-category h3 {
	font-size: 20px;
	font-weight: var(--csg-font-weight-bold);
}

#product-category h3 + .row ul {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	list-style: none;
	margin-bottom: var(--csg-space-4);
	padding: var(--csg-space-3) var(--csg-space-4);
}

#product-category h3 + .row li {
	margin: var(--csg-space-2) 0;
}

.csg-category-toolbar {
	align-items: center;
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 var(--csg-space-5);
	padding: var(--csg-space-3) var(--csg-space-2);
}

.csg-category-toolbar > [class*="col-"] {
	float: none;
}

.csg-category-toolbar .form-group {
	margin-bottom: 0;
}

.csg-category-toolbar .btn-group .btn {
	min-height: 34px;
}

.csg-category-toolbar .btn-link {
	color: var(--csg-primary);
	font-weight: var(--csg-font-weight-medium);
	text-decoration: none;
}

.csg-category-toolbar .input-group-addon {
	background: var(--csg-surface-muted);
	border-color: var(--csg-border);
	color: var(--csg-text-muted);
	font-weight: var(--csg-font-weight-medium);
	text-shadow: none;
}

.csg-category-toolbar select.form-control {
	height: 36px;
}

.csg-product-grid {
	display: flex;
	flex-wrap: wrap;
	margin-left: -10px;
	margin-right: -10px;
}

.csg-product-grid .product-layout {
	display: flex;
	padding-left: 10px;
	padding-right: 10px;
}

.csg-product-grid .product-thumb {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.csg-product-grid .product-thumb > div:not(.image) {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

.csg-product-grid .product-thumb .caption {
	flex: 1 1 auto;
}

.product-grid .product-thumb .caption p:not(.price) {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

.product-grid .product-thumb .button-group {
	display: grid;
	grid-template-columns: 1fr 46px 46px;
}

.product-grid .product-thumb .button-group button:first-child {
	color: var(--csg-primary);
}

.product-list .product-thumb {
	display: flex;
}

.product-list .product-thumb .image {
	align-items: center;
	display: flex;
	flex: 0 0 260px;
	justify-content: center;
}

.product-list .product-thumb > div:not(.image) {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

.product-list .product-thumb .caption {
	flex: 1 1 auto;
	min-height: 0;
}

#product-category .pagination {
	margin-top: 0;
}

#product-category .pagination > li > a,
#product-category .pagination > li > span {
	border-color: var(--csg-border);
	color: var(--csg-text);
}

#product-category .pagination > .active > span,
#product-category .pagination > .active > a {
	background: var(--csg-primary);
	border-color: var(--csg-primary);
	color: #ffffff;
}

.csg-empty-state {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	color: var(--csg-text-muted);
	margin-bottom: var(--csg-space-4);
	padding: var(--csg-space-6);
	text-align: center;
}

.csg-empty-state p {
	margin: 0;
}

.csg-product-detail {
	align-items: flex-start;
}

.csg-product-media {
	margin-left: auto;
	margin-right: auto;
	max-width: 620px;
}

.csg-product-media .thumbnails {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	margin-bottom: var(--csg-space-5);
	padding: var(--csg-space-3);
}

.csg-product-media .thumbnail {
	background: #ffffff;
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: none;
	margin-bottom: var(--csg-space-3);
	padding: var(--csg-space-2);
}

#product-product .csg-product-thumb-list .thumbnail {
	background: #ffffff;
	border: 0;
	border-radius: 12px;
	margin-bottom: 0;
	padding: 0;
}

.csg-product-media .thumbnails > li:first-child .thumbnail {
	align-items: center;
	aspect-ratio: 1 / 1;
	display: flex;
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	max-width: 620px;
	min-height: 0;
}

.csg-product-media .thumbnails > li:first-child img {
	height: auto;
	max-height: 100%;
	max-width: 620px;
	object-fit: contain;
	width: 100%;
}

.csg-product-media .image-additional {
	display: inline-block;
	margin-right: var(--csg-space-2);
	max-width: 82px;
	vertical-align: top;
}

.csg-product-summary {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: 0 10px 28px rgba(23, 32, 42, 0.07);
	padding: var(--csg-space-5);
}

.csg-product-actions {
	float: right;
	margin-left: var(--csg-space-3);
}

.csg-product-title {
	font-size: 32px;
	margin-top: 0;
	padding-right: 84px;
}

.csg-product-meta {
	border-bottom: 1px solid var(--csg-border);
	color: var(--csg-text-muted);
	margin-bottom: var(--csg-space-4);
	padding-bottom: var(--csg-space-4);
}

.csg-product-meta li {
	margin-bottom: var(--csg-space-2);
}

.csg-price-block {
	background: var(--csg-surface-muted);
	border-radius: var(--csg-radius-lg);
	margin-bottom: var(--csg-space-4);
	padding: var(--csg-space-4);
}

.csg-price-block h2 {
	color: var(--csg-primary);
	font-size: 30px;
	margin: 0;
}

.csg-price-block li {
	color: var(--csg-text-muted);
}

.csg-purchase-box {
	border-top: 1px solid var(--csg-border);
	padding-top: var(--csg-space-4);
}

.csg-purchase-box h3 {
	font-size: 18px;
	font-weight: var(--csg-font-weight-bold);
	margin-top: 0;
}

.csg-purchase-box .control-label {
	color: var(--csg-text);
	font-size: 14px;
	font-weight: var(--csg-font-weight-medium);
}

.csg-purchase-box .radio,
.csg-purchase-box .checkbox {
	background: var(--csg-bg);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-md);
	margin-bottom: var(--csg-space-2);
	padding: var(--csg-space-2) var(--csg-space-3);
}

#input-quantity {
	display: inline-block;
	margin-left: var(--csg-space-2);
	max-width: 84px;
	text-align: center;
}

#button-cart {
	font-size: 16px;
	font-weight: var(--csg-font-weight-bold);
	min-height: 48px;
}

#product-product .rating {
	color: var(--csg-warning);
	margin-top: var(--csg-space-3);
}

#product-product .nav-tabs {
	border-bottom: 1px solid var(--csg-border);
	margin-top: var(--csg-space-4);
}

#product-product .nav-tabs > li > a {
	border-radius: var(--csg-radius-md) var(--csg-radius-md) 0 0;
	color: var(--csg-text-muted);
	font-weight: var(--csg-font-weight-medium);
}

#product-product .nav-tabs > li.active > a,
#product-product .nav-tabs > li.active > a:hover,
#product-product .nav-tabs > li.active > a:focus {
	background: var(--csg-surface);
	border-color: var(--csg-border) var(--csg-border) var(--csg-surface);
	color: var(--csg-text);
}

#product-product .tab-content {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-top: 0;
	border-radius: 0 0 var(--csg-radius-lg) var(--csg-radius-lg);
	margin-bottom: var(--csg-space-6);
	padding: var(--csg-space-5);
}

#tab-description {
	color: var(--csg-text);
	font-size: 15px;
	line-height: 1.65;
}

#tab-specification .table {
	margin-bottom: 0;
}

#tab-specification td:first-child {
	color: var(--csg-text-muted);
	width: 34%;
}

.csg-related-title {
	font-size: 22px;
	margin: var(--csg-space-5) 0 var(--csg-space-4);
}

.csg-related-products {
	display: flex;
	flex-wrap: wrap;
}

.csg-related-products > [class*="col-"] {
	display: flex;
}

.csg-related-products .product-thumb {
	width: 100%;
}

/* CoolStuffGear Stage 8S product page */
.csg-product-page {
	max-width: 1470px;
	padding-bottom: var(--csg-space-7);
}

.csg-product-breadcrumb {
	align-items: center;
	background: #ffffff;
	border: 1px solid rgba(207, 218, 230, 0.85);
	border-radius: 14px;
	box-shadow: 0 16px 34px rgba(18, 35, 52, 0.04);
	display: flex;
	flex-wrap: nowrap;
	gap: 0;
	line-height: 1.4;
	list-style: none;
	margin: var(--csg-space-5) 0;
	max-width: 100%;
	padding: 12px 16px;
}

.csg-product-breadcrumb > li {
	align-items: center;
	display: inline-flex;
	flex: 0 0 auto;
	margin: 0;
	max-width: 100%;
	min-width: 0;
	padding: 0;
	position: static;
	text-shadow: none;
	white-space: normal;
}

.csg-product-breadcrumb > li:after {
	border: 0;
	content: none;
	display: none;
}

.csg-product-breadcrumb > li:first-child > a {
	align-items: center;
	background: #f4f7fb;
	border: 1px solid rgba(207, 218, 230, 0.85);
	border-radius: 10px;
	color: #06bf63;
	display: inline-flex;
	flex: 0 0 auto;
	height: 36px;
	justify-content: center;
	text-decoration: none;
	width: 36px;
}

.csg-product-breadcrumb > li:first-child > a .fa {
	font-size: 15px;
	line-height: 1;
}

.csg-product-breadcrumb > li + li::before {
	align-items: center;
	color: #98a8bb;
	content: "/";
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 14px;
	line-height: 1;
	padding: 0 12px;
}

.csg-product-breadcrumb > li:last-child {
	flex: 1 1 auto;
	min-width: 0;
}

.csg-product-breadcrumb > li:last-child > a {
	color: #14253a;
	display: block;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	max-width: 100%;
	overflow-wrap: anywhere;
	text-decoration: none;
	word-break: break-word;
}

@media (max-width: 767px) {
	.csg-product-breadcrumb {
		align-items: center;
		padding: 10px 12px;
	}

	.csg-product-breadcrumb > li:first-child > a {
		height: 32px;
		width: 32px;
	}

	.csg-product-breadcrumb > li + li::before {
		padding: 0 10px;
	}

	.csg-product-breadcrumb > li:last-child > a {
		font-size: 13px;
		line-height: 1.35;
	}
}

#product-product #content {
	float: none;
}

#product-product .csg-product-detail {
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 1.36fr) minmax(360px, 0.84fr);
	margin: 0 0 28px;
}

#product-product .csg-product-media,
#product-product .csg-product-summary {
	float: none;
	width: auto;
}

#product-product .csg-product-media {
	max-width: none;
}

#product-product .csg-product-gallery {
	background: linear-gradient(180deg, #f4f7fb 0%, #eef3f9 100%);
	border: 1px solid rgba(207, 218, 230, 0.9);
	border-radius: 20px;
	box-shadow: 0 20px 45px rgba(18, 35, 52, 0.08);
	display: grid;
	gap: 16px;
	margin: 0;
	padding: 18px;
}

#product-product .csg-product-gallery,
#product-product .csg-product-gallery ul,
#product-product .csg-product-gallery li {
	list-style: none;
}

/* Сброс legacy .thumbnails — иначе обрезаются скруглённые углы миниатюр */
#product-product .csg-product-gallery.thumbnails {
	margin-left: 0;
	overflow: visible;
}

#product-product .csg-product-gallery.thumbnails > li {
	margin-left: 0;
}

#product-product .csg-product-thumb-strip {
	overflow: visible;
}

#product-product .csg-product-main-frame {
	margin: 0;
}

#product-product .csg-product-main-image {
	align-items: center;
	aspect-ratio: 1 / 1;
	background: #ffffff;
	border: 1px solid rgba(207, 218, 230, 0.72);
	border-radius: 16px;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.72);
	display: flex;
	justify-content: center;
	margin: 0;
	min-height: 560px;
	padding: 34px;
}

#product-product .csg-product-main-image img {
	height: 100%;
	max-height: 620px;
	object-fit: contain;
	width: 100%;
}

#product-product .csg-product-thumb-strip {
	margin: 0;
}

#product-product .csg-product-thumb-list {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
	overflow: visible;
	padding: 2px;
}

#product-product .csg-product-thumb-list .image-additional {
	display: block;
	flex: 0 0 88px;
	float: none;
	margin: 0;
	max-width: none;
	width: 88px;
}

#product-product .csg-product-thumb-list .image-additional a.thumbnail {
	background: #ffffff;
	border: 2px solid rgba(207, 218, 230, 0.9);
	border-radius: 12px;
	box-sizing: border-box;
	display: block;
	height: 88px;
	margin: 0;
	overflow: hidden;
	padding: 0;
	width: 88px;
}

#product-product .csg-product-thumb-list .thumbnail img {
	border-radius: 10px;
	display: block;
	height: 100%;
	object-fit: contain;
	width: 100%;
}

#product-product .csg-product-summary {
	align-self: start;
	background: #ffffff;
	border: 1px solid rgba(207, 218, 230, 0.9);
	border-radius: 20px;
	box-shadow: 0 22px 48px rgba(18, 35, 52, 0.09);
	padding: 28px;
	position: sticky;
	top: 18px;
}

.csg-product-summary-top {
	align-items: flex-start;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin-bottom: 12px;
}

#product-product .csg-product-actions {
	display: flex;
	float: none;
	gap: 8px;
	margin: 0;
}

#product-product .csg-product-actions .btn {
	align-items: center;
	border-color: rgba(207, 218, 230, 0.9);
	border-radius: 12px;
	color: #14253a;
	display: inline-flex;
	height: 42px;
	justify-content: center;
	width: 42px;
}

#product-product .csg-product-title {
	color: #14253a;
	font-size: 38px;
	font-weight: 900;
	line-height: 1.08;
	margin: 0 0 18px;
	padding: 0;
}

#product-product .csg-product-rating {
	align-items: center;
	background: #f4f7fb;
	border: 1px solid rgba(207, 218, 230, 0.75);
	border-radius: 12px;
	color: #f5b93c;
	display: inline-flex;
	flex-wrap: wrap;
	gap: 8px 10px;
	margin: 0 0 12px;
	max-width: 100%;
	padding: 8px 12px;
	width: fit-content;
}

#product-product .csg-product-rating-stars {
	align-items: center;
	display: inline-flex;
	flex: 0 0 auto;
	gap: 2px;
	line-height: 1;
}

#product-product .csg-product-rating .fa-stack {
	font-size: 10px;
	height: 1.35em;
	line-height: 1.35em;
	width: 1.35em;
}

#product-product .csg-product-rating .fa-star-o {
	color: #c5d0dc;
	font-size: 16px;
}

#product-product .csg-product-rating .fa-star {
	color: #f5b93c;
	font-size: 16px;
}

#product-product .csg-product-rating .fa-star + .fa-star-o {
	color: #e8a82e;
}

#product-product .csg-product-reviews-count {
	color: #536479;
	flex: 1 1 auto;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.25;
	min-width: 0;
}

#product-product .csg-product-rating a,
#product-product .csg-product-rating .csg-product-reviews-count a {
	color: #3d6f9b;
	font-size: 13px;
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: rgba(61, 111, 155, 0.35);
	text-underline-offset: 2px;
}

#product-product .csg-product-rating-empty .fa-star-o {
	color: #d5dee8;
}

#product-product .csg-product-rating-empty .csg-product-reviews-count {
	color: #7c8ca1;
	font-weight: 500;
}

#product-product .csg-product-meta {
	border: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 18px;
	padding: 0;
}

#product-product .csg-product-meta li {
	background: #f4f7fb;
	border: 1px solid rgba(207, 218, 230, 0.75);
	border-radius: 999px;
	color: #536479;
	font-size: 13px;
	margin: 0;
	padding: 7px 11px;
}

#product-product .csg-product-meta li span {
	color: #7c8ca1;
}

#product-product .csg-product-stock strong {
	color: #06b85f;
}

#product-product .csg-price-block {
	background: linear-gradient(135deg, #eefaf4 0%, #f7fbff 100%);
	border: 1px solid rgba(6, 184, 95, 0.16);
	border-radius: 18px;
	margin: 0 0 18px;
	padding: 20px;
}

#product-product .csg-price-block h2 {
	color: #06b85f;
	font-size: 36px;
	font-weight: 900;
	line-height: 1;
}

#product-product .csg-price-old {
	color: #8b98a8;
	text-decoration: line-through;
}

.csg-product-benefits {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-bottom: 20px;
}

.csg-product-benefits div {
	align-items: center;
	background: #f8fafc;
	border: 1px solid rgba(207, 218, 230, 0.72);
	border-radius: 14px;
	display: flex;
	gap: 8px;
	min-height: 58px;
	padding: 10px;
}

.csg-product-benefits i {
	color: #06b85f;
}

.csg-product-benefits span {
	color: #536479;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
}

#product-product .csg-purchase-box {
	border-top: 1px solid rgba(207, 218, 230, 0.85);
	padding-top: 20px;
}

#product-product .csg-purchase-box h3 {
	color: #14253a;
	font-size: 16px;
	font-weight: 900;
	margin-bottom: 14px;
}

#product-product .csg-purchase-box .form-control {
	border-color: rgba(207, 218, 230, 0.95);
	border-radius: 12px;
	box-shadow: none;
	min-height: 46px;
}

#product-product .csg-purchase-box .radio,
#product-product .csg-purchase-box .checkbox {
	background: #ffffff;
	border-color: rgba(207, 218, 230, 0.82);
	border-radius: 12px;
	padding: 10px 12px;
}

/* Переключатель цвета в buy-box — Stitch-style swatches */
#product-product .csg-product-option-color {
	margin-bottom: 18px;
	position: relative;
}

#product-product .csg-product-option-head {
	align-items: baseline;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin-bottom: 12px;
}

#product-product .csg-product-option-head .control-label {
	font-size: 14px;
	font-weight: 800;
	margin: 0;
	text-transform: uppercase;
}

#product-product .csg-color-selected-label {
	color: #14253a;
	font-size: 14px;
	font-weight: 700;
}

#product-product .csg-color-select-native {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

#product-product .csg-color-swatches {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

#product-product .csg-color-swatch {
	background: transparent;
	border: 2px solid transparent;
	border-radius: 999px;
	cursor: pointer;
	flex: 0 0 auto;
	height: 44px;
	padding: 3px;
	transition: border-color 0.2s ease, transform 0.2s ease;
	width: 44px;
}

#product-product .csg-color-swatch:hover,
#product-product .csg-color-swatch:focus {
	border-color: rgba(6, 191, 99, 0.45);
	outline: none;
	transform: translateY(-1px);
}

#product-product .csg-color-swatch.is-active {
	border-color: #06bf63;
	box-shadow: 0 0 0 1px rgba(6, 191, 99, 0.2);
}

#product-product .csg-color-swatch-fill {
	background: var(--csg-swatch-color, #aeb9c8);
	background-image: var(--csg-swatch-image, none);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 1px solid rgba(207, 218, 230, 0.95);
	border-radius: 999px;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);
	display: block;
	height: 100%;
	width: 100%;
}

#product-product .csg-color-swatch-has-image .csg-color-swatch-fill {
	border-color: rgba(207, 218, 230, 0.9);
}

/* Тип миші — сегментированный переключатель Stitch-style */
#product-product .csg-product-option-mouse-type {
	margin-bottom: 18px;
}

#product-product .csg-mouse-type-selected-label {
	color: #14253a;
	font-size: 14px;
	font-weight: 700;
}

#product-product .csg-mouse-type-select-native {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

#product-product .csg-mouse-type-switch {
	background: #f4f7fb;
	border: 1px solid rgba(207, 218, 230, 0.95);
	border-radius: 14px;
	display: grid;
	gap: 6px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	padding: 5px;
}

#product-product .csg-mouse-type-segment {
	align-items: center;
	appearance: none;
	background: transparent;
	border: 1px solid transparent;
	border-radius: 10px;
	color: #536479;
	cursor: pointer;
	display: flex;
	font-size: 13px;
	font-weight: 800;
	justify-content: center;
	line-height: 1.2;
	min-height: 46px;
	padding: 12px 14px;
	text-align: center;
	transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}

#product-product .csg-mouse-type-segment:hover,
#product-product .csg-mouse-type-segment:focus {
	background: #ffffff;
	border-color: rgba(6, 191, 99, 0.35);
	color: #14253a;
	outline: none;
}

#product-product .csg-mouse-type-segment.is-active {
	background: #ffffff;
	border-color: #06bf63;
	box-shadow: 0 0 0 1px rgba(6, 191, 99, 0.18);
	color: #14253a;
}

#product-product .csg-cart-control {
	margin-bottom: 0;
}

#product-product .csg-cart-row {
	display: grid;
	gap: 12px;
	grid-template-columns: 86px minmax(0, 1fr);
}

#product-product .csg-qty-stepper {
	align-items: stretch;
	background: #ffffff;
	border: 1px solid rgba(207, 218, 230, 0.95);
	border-radius: 12px;
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) 42px;
	min-height: 52px;
	overflow: hidden;
	position: relative;
}

#product-product .csg-qty-step {
	align-items: center;
	appearance: none;
	background: #f8fafc;
	border: 0;
	color: #536479;
	cursor: pointer;
	display: flex;
	justify-content: center;
	padding: 0;
	transition: background-color 0.2s ease, color 0.2s ease;
}

#product-product .csg-qty-step:hover,
#product-product .csg-qty-step:focus {
	background: #eef3f9;
	color: #14253a;
	outline: none;
}

#product-product .csg-qty-step-minus {
	border-right: 1px solid rgba(207, 218, 230, 0.95);
}

#product-product .csg-qty-step-plus {
	border-left: 1px solid rgba(207, 218, 230, 0.95);
}

#product-product .csg-qty-step i {
	font-size: 12px;
	line-height: 1;
}

#product-product #input-quantity {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	font-size: 15px;
	font-weight: 800;
	margin: 0;
	max-width: none;
	min-height: 50px;
	padding-left: 8px;
	padding-right: 8px;
	text-align: center;
}

#product-product #button-cart {
	background: #06bf63;
	border-color: #06bf63;
	border-radius: 14px;
	box-shadow: 0 14px 26px rgba(6, 191, 99, 0.24);
	font-size: 16px;
	font-weight: 900;
	min-height: 52px;
	padding-left: 18px;
	padding-right: 18px;
}

#product-product #button-cart:hover,
#product-product #button-cart:focus {
	background: #05a957;
	border-color: #05a957;
}

#product-product .csg-product-content-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 1.5fr) minmax(300px, 0.55fr);
	margin: 0 0 28px;
}

#product-product .csg-product-service-card {
	background: #ffffff;
	border: 1px solid rgba(207, 218, 230, 0.9);
	border-radius: 18px;
	box-shadow: 0 18px 36px rgba(18, 35, 52, 0.06);
	overflow: hidden;
}

#product-product .nav-tabs {
	background: #f8fafc;
	border-bottom: 1px solid rgba(207, 218, 230, 0.9);
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 14px;
}

#product-product .nav-tabs > li {
	margin: 0;
}

#product-product .nav-tabs > li > a {
	background: #ffffff;
	border: 1px solid rgba(207, 218, 230, 0.9);
	border-radius: 999px;
	color: #536479;
	font-weight: 800;
	margin: 0;
	padding: 10px 16px;
}

#product-product .nav-tabs > li.active > a,
#product-product .nav-tabs > li.active > a:hover,
#product-product .nav-tabs > li.active > a:focus {
	background: #14253a;
	border-color: #14253a;
	color: #ffffff;
}

#product-product .tab-content {
	border: 0;
	border-radius: 0;
	margin: 0;
	padding: 26px;
}

#product-product #tab-description {
	color: #314158;
	font-size: 15px;
	line-height: 1.75;
}

#product-product #tab-specification .table {
	border-color: rgba(207, 218, 230, 0.9);
	margin-bottom: 0;
}

#product-product #tab-specification thead td {
	background: #f4f7fb;
	color: #14253a;
	font-weight: 900;
}

#product-product #tab-specification td:first-child {
	color: #536479;
	font-weight: 700;
	width: 38%;
}

#product-product .csg-product-service-card {
	align-self: start;
	padding: 24px;
}

#product-product .csg-product-service-card h3 {
	color: #14253a;
	font-size: 20px;
	font-weight: 900;
	margin: 0 0 16px;
}

#product-product .csg-product-service-card li {
	align-items: flex-start;
	border-top: 1px solid rgba(207, 218, 230, 0.72);
	color: #536479;
	display: flex;
	gap: 10px;
	padding: 13px 0;
}

#product-product .csg-product-service-card li:first-child {
	border-top: 0;
}

#product-product .csg-product-service-card i {
	color: #06b85f;
	margin-top: 3px;
}

#product-product .csg-related-title {
	color: #14253a;
	font-size: 24px;
	font-weight: 900;
	margin: 0 0 16px;
}

#product-product .csg-related-products {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-left: 0;
	margin-right: 0;
}

#product-product .csg-related-products > [class*="col-"] {
	display: flex;
	float: none;
	padding: 0;
	width: auto;
}

#product-product .csg-related-products .csg-listing-product-card {
	min-width: 0;
	width: 100%;
}

/* Product page correction toward the MCP product-card screen */
#product-product .csg-product-detail,
#product-product .csg-product-content-grid {
	column-gap: 28px;
	grid-template-columns: minmax(0, 1fr) clamp(330px, 32vw, 430px);
}

#product-product .csg-product-gallery {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
}

#product-product .csg-product-gallery.has-thumbs {
	display: grid;
	gap: 16px;
	grid-template-columns: 1fr;
}

#product-product .csg-product-gallery.has-thumbs .csg-product-thumb-strip {
	grid-column: 1;
	grid-row: 2;
}

#product-product .csg-product-gallery.has-thumbs .csg-product-main-frame {
	grid-column: 1;
	grid-row: 1;
	width: 100%;
}

#product-product .csg-product-gallery.has-thumbs .csg-product-main-image {
	max-width: none;
	width: 100%;
}

#product-product .csg-product-thumb-list {
	flex-direction: row;
	flex-wrap: nowrap;
}

#product-product .csg-product-thumb-list .image-additional a.thumbnail {
	opacity: 0.74;
	transition: border-color 0.2s ease, opacity 0.2s ease;
}

#product-product .csg-product-thumb-list .csg-thumb-current a.thumbnail,
#product-product .csg-product-thumb-list .image-additional a.thumbnail:hover,
#product-product .csg-product-thumb-list .image-additional a.thumbnail:focus {
	border-color: #06bf63;
	opacity: 1;
}

#product-product .csg-product-main-image {
	border-radius: 18px;
	box-shadow: 0 4px 20px rgba(0, 26, 52, 0.06);
	min-height: clamp(520px, 46vw, 640px);
	position: relative;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

#product-product .csg-product-main-image:hover,
#product-product .csg-product-main-image:focus {
	box-shadow: 0 16px 38px rgba(0, 26, 52, 0.1);
}

#product-product .csg-product-badges {
	display: flex;
	flex-direction: column;
	gap: 8px;
	left: 18px;
	position: absolute;
	top: 18px;
	z-index: 2;
}

#product-product .csg-product-badges span {
	background: #06bf63;
	border-radius: 4px;
	color: #ffffff;
	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
	padding: 7px 10px;
	text-transform: uppercase;
}

#product-product .csg-product-badges span + span {
	background: #f0bc3b;
	color: #14253a;
}

#product-product .csg-product-summary {
	align-self: stretch;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	display: flex;
	flex-direction: column;
	gap: 14px;
	height: 100%;
	min-height: clamp(624px, calc(46vw + 106px), 746px);
	padding: 0;
	position: static;
}

#product-product .csg-product-summary-top {
	min-height: 28px;
	margin-bottom: 0;
}

#product-product .csg-product-title {
	font-size: clamp(34px, 3vw, 42px);
	line-height: 1.04;
	margin-bottom: 0;
}

#product-product .csg-product-meta {
	border-bottom: 1px solid rgba(207, 218, 230, 0.9);
	border-top: 1px solid rgba(207, 218, 230, 0.9);
	margin-bottom: 0;
	padding: 14px 0;
}

#product-product .csg-product-meta li {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}

#product-product .csg-price-block {
	align-items: center;
	background: transparent;
	border: 0;
	border-bottom: 1px solid rgba(207, 218, 230, 0.9);
	border-radius: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 10px 18px;
	justify-content: space-between;
	margin-bottom: 0;
	padding: 0 0 22px;
}

#product-product .csg-price-block h2 {
	color: #14253a;
	font-size: 40px;
}

#product-product .csg-price-block li {
	margin: 0;
}

#product-product .csg-product-benefits {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 0;
}

#product-product .csg-product-benefits div {
	background: transparent;
	border: 0;
	min-height: 0;
	padding: 0;
}

#product-product .csg-product-benefits i {
	align-items: center;
	background: #e8f9ef;
	border-radius: 50%;
	display: inline-flex;
	height: 22px;
	justify-content: center;
	width: 22px;
}

#product-product .csg-product-benefits span {
	color: #314158;
	font-size: 15px;
	font-weight: 700;
}

#product-product .csg-purchase-box {
	margin-top: 4px;
}

#product-product .csg-purchase-box .radio,
#product-product .csg-purchase-box .checkbox {
	border-radius: 10px;
}

@media (min-width: 992px) {
	#product-product .csg-cart-row {
		grid-template-columns: 132px minmax(0, 1fr);
	}
}

#product-product #button-cart {
	text-transform: uppercase;
}

#product-product .csg-product-secondary-actions {
	display: flex;
	gap: 20px;
	justify-content: flex-start;
	margin-top: 0;
}

#product-product .csg-product-secondary-actions .btn,
#product-product .csg-product-secondary-actions .btn-link {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 0;
	color: #536479;
	display: inline-flex;
	font-size: 14px;
	font-weight: 800;
	gap: 7px;
	height: auto;
	justify-content: flex-start;
	line-height: 1.4;
	padding: 0;
	text-decoration: none;
	width: auto;
}

#product-product .csg-product-secondary-actions .btn-link:hover,
#product-product .csg-product-secondary-actions .btn-link:focus {
	color: #06bf63;
}

#product-product .csg-product-specs-card {
	background: #ffffff;
	border: 1px solid rgba(207, 218, 230, 0.9);
	border-radius: 18px;
	box-shadow: 0 18px 36px rgba(18, 35, 52, 0.06);
	overflow: hidden;
	padding: 0;
}

#product-product .csg-specs-card-tabs {
	background: #f8fafc;
	border-bottom: 1px solid rgba(207, 218, 230, 0.9);
}

#product-product .csg-specs-card-body {
	border: 0;
	margin: 0;
	padding: 28px;
}

#product-product .csg-product-description-copy {
	color: #314158;
	font-size: 15px;
	line-height: 1.75;
}

#product-product .csg-product-description-copy p:last-child {
	margin-bottom: 0;
}

#product-product .csg-product-description-empty {
	color: #7b8a9d;
	font-size: 15px;
	font-style: italic;
	line-height: 1.7;
	margin: 0;
}

#product-product .csg-product-reviews-count {
	color: #536479;
	font-size: 14px;
	font-weight: 700;
	margin-left: 8px;
}

#product-product .csg-product-specs-grid {
	display: grid;
	gap: 18px 28px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

#product-product .csg-product-specs-grid div {
	border-bottom: 1px solid rgba(207, 218, 230, 0.9);
	display: flex;
	flex-direction: column;
	gap: 5px;
	padding-bottom: 10px;
}

#product-product .csg-product-specs-grid span {
	color: #7b8a9d;
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
}

#product-product .csg-product-specs-grid strong {
	color: #14253a;
	font-size: 15px;
	font-weight: 700;
}

#product-product .csg-product-specs-grid strong.csg-spec-placeholder {
	color: #7b8a9d;
	font-weight: 600;
}

#product-product .csg-product-service-card {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	padding: 0;
}

#product-product .csg-service-tabs-panel {
	background: #14253a;
	display: flex;
	flex-direction: column;
	min-width: 0;
}

#product-product .csg-service-tabs-label {
	display: none;
	margin: 0;
}

#product-product .csg-service-tabs {
	background: #14253a;
	display: flex;
	flex-direction: column;
}

#product-product .csg-service-tabs .csg-service-tab,
#product-product .csg-service-tabs span {
	appearance: none;
	background: transparent;
	border: 0;
	border-left: 4px solid transparent;
	color: rgba(255, 255, 255, 0.82);
	cursor: pointer;
	font-weight: 800;
	padding: 16px 22px;
	text-align: left;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
	width: 100%;
}

#product-product .csg-service-tabs .csg-service-tab:hover,
#product-product .csg-service-tabs .csg-service-tab:focus {
	background: rgba(255, 255, 255, 0.06);
	color: #ffffff;
	outline: none;
}

#product-product .csg-service-tabs .csg-service-tab.active,
#product-product .csg-service-tabs span.active {
	background: rgba(6, 191, 99, 0.16);
	border-left-color: #06bf63;
	color: #ffffff;
}

#product-product .csg-service-copy {
	align-items: flex-start;
	color: #314158;
	display: block;
	font-size: 15px;
	line-height: 1.7;
	min-height: 180px;
	min-width: 0;
	padding: 28px;
}

#product-product .csg-service-copy p {
	margin: 0 0 12px;
}

#product-product .csg-service-copy p:last-child {
	margin-bottom: 0;
}

#product-product .csg-service-copy-loading,
#product-product .csg-service-copy-empty {
	color: #7b8a9d;
	font-style: italic;
	margin: 0;
}

#product-product .csg-product-content-grid {
	margin-bottom: 30px;
}

@media (max-width: 991px) {
	#product-product .csg-product-detail,
	#product-product .csg-product-content-grid {
		grid-template-columns: 1fr;
	}

	#product-product .csg-product-summary {
		margin-top: 0;
		position: static;
	}

	#product-product .csg-product-main-image {
		min-height: 420px;
	}

	#product-product .csg-product-title {
		font-size: 36px;
	}

	#product-product .csg-product-gallery.has-thumbs {
		grid-template-columns: 1fr;
	}

	#product-product .csg-product-gallery.has-thumbs .csg-product-main-frame,
	#product-product .csg-product-gallery.has-thumbs .csg-product-thumb-strip {
		grid-column: 1;
	}

	#product-product .csg-product-gallery.has-thumbs .csg-product-main-frame {
		grid-row: 1;
	}

	#product-product .csg-product-gallery.has-thumbs .csg-product-thumb-strip {
		grid-row: 2;
	}

	#product-product .csg-product-thumb-strip {
		overflow-x: auto;
		overflow-y: visible;
		padding-bottom: 6px;
		-webkit-overflow-scrolling: touch;
	}

	#product-product .csg-product-thumb-list {
		flex-direction: row;
		flex-wrap: nowrap;
		overflow: visible;
		padding-bottom: 2px;
	}

	#product-product .csg-product-service-card {
		display: flex;
		flex-direction: column;
		grid-template-columns: none;
	}

	/* Планшет: сетка вкладок без горизонтального скролла */
	#product-product .csg-service-tabs-label {
		color: rgba(255, 255, 255, 0.72);
		display: block;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 0.06em;
		margin: 0;
		padding: 12px 12px 8px;
		text-transform: uppercase;
	}

	#product-product .csg-service-tabs {
		display: grid;
		gap: 8px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		overflow: visible;
		padding: 0 12px 12px;
		width: 100%;
	}

	#product-product .csg-service-tabs .csg-service-tab,
	#product-product .csg-service-tabs span {
		background: rgba(255, 255, 255, 0.06);
		border: 1px solid rgba(255, 255, 255, 0.22);
		border-radius: 10px;
		font-size: 13px;
		line-height: 1.25;
		min-height: 48px;
		padding: 10px 8px;
		text-align: center;
		white-space: normal;
	}

	#product-product .csg-service-tabs .csg-service-tab:nth-child(5) {
		grid-column: 1 / -1;
	}

	#product-product .csg-service-tabs .csg-service-tab.active,
	#product-product .csg-service-tabs span.active {
		background: #06bf63;
		border-color: #06bf63;
		box-shadow: 0 4px 12px rgba(6, 191, 99, 0.28);
		color: #ffffff;
	}

	#product-product .csg-related-products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#product-product .csg-product-content-grid {
		grid-template-columns: 1fr;
	}

	.csg-product-summary {
		margin-top: var(--csg-space-4);
	}

	.csg-product-media .thumbnails > li:first-child .thumbnail {
		min-height: 280px;
	}
}

@media (max-width: 767px) {
	.csg-product-page {
		box-sizing: border-box;
		max-width: 100%;
		overflow-x: clip;
		padding-left: 16px;
		padding-right: 16px;
	}

	#product-product > .row {
		margin-left: 0;
		margin-right: 0;
	}

	#product-product > .row > [class*="col-"] {
		float: none;
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
		width: 100%;
	}

	#product-product #content {
		max-width: 100%;
		min-width: 0;
	}

	#product-product .csg-product-breadcrumb {
		box-sizing: border-box;
		margin-left: 0;
		margin-right: 0;
		width: 100%;
	}

	#product-product .csg-product-detail {
		gap: 16px;
		grid-template-columns: 1fr;
		margin-bottom: 16px;
		max-width: 100%;
	}

	#product-product .csg-product-media,
	#product-product .csg-product-summary,
	#product-product .csg-purchase-box,
	#product-product .csg-purchase-box .form-group {
		max-width: 100%;
		min-width: 0;
	}

	#product-product .csg-product-gallery {
		border-radius: 16px;
		padding: 12px;
	}

	#product-product .csg-product-summary {
		gap: 12px;
		min-height: 0;
		padding: 0;
	}

	#product-product .csg-product-service-card {
		border-radius: 16px;
		display: flex;
		flex-direction: column;
		overflow: hidden;
		padding: 0;
		width: 100%;
	}

	#product-product .csg-service-tabs-label {
		color: rgba(255, 255, 255, 0.72);
		display: block;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 0.06em;
		margin: 0;
		padding: 12px 12px 8px;
		text-transform: uppercase;
	}

	#product-product .csg-service-tabs {
		background: #14253a;
		display: grid;
		gap: 8px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		overflow: visible;
		padding: 0 12px 12px;
		width: 100%;
	}

	#product-product .csg-service-tabs .csg-service-tab,
	#product-product .csg-service-tabs span {
		background: rgba(255, 255, 255, 0.06);
		border: 1px solid rgba(255, 255, 255, 0.22);
		border-radius: 10px;
		font-size: 13px;
		line-height: 1.25;
		min-height: 48px;
		padding: 10px 8px;
		text-align: center;
		white-space: normal;
	}

	#product-product .csg-service-tabs .csg-service-tab:nth-child(5) {
		grid-column: 1 / -1;
	}

	#product-product .csg-service-tabs .csg-service-tab.active,
	#product-product .csg-service-tabs span.active {
		background: #06bf63;
		border-color: #06bf63;
		box-shadow: 0 4px 12px rgba(6, 191, 99, 0.28);
		color: #ffffff;
	}

	#product-product .csg-service-copy {
		box-sizing: border-box;
		max-width: 100%;
		min-height: 120px;
		padding: 16px;
		width: 100%;
	}

	#product-product .csg-product-main-image {
		min-height: 260px;
		padding: 14px;
	}

	#product-product .csg-product-title {
		font-size: 22px;
		line-height: 1.2;
		overflow-wrap: anywhere;
	}

	#product-product .csg-product-meta {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
	}

	#product-product .csg-product-meta li {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	#product-product .csg-price-block {
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
		justify-content: flex-start;
		padding-bottom: 16px;
	}

	#product-product .csg-price-block li {
		max-width: 100%;
		width: 100%;
	}

	#product-product .csg-price-block h2 {
		font-size: 28px;
	}

	#product-product .csg-product-benefits {
		gap: 10px;
	}

	#product-product .csg-product-option-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}

	#product-product .csg-color-selected-label,
	#product-product .csg-mouse-type-selected-label {
		max-width: 100%;
		overflow-wrap: anywhere;
	}

	#product-product .csg-mouse-type-switch {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#product-product .csg-cart-row {
		gap: 10px;
		grid-template-columns: 1fr;
	}

	#product-product .csg-qty-stepper {
		max-width: 100%;
		width: 100%;
	}

	#product-product #button-cart {
		max-width: 100%;
		width: 100%;
	}

	#product-product .csg-product-specs-grid {
		grid-template-columns: 1fr;
	}

	.csg-product-benefits {
		grid-template-columns: 1fr;
	}

	#product-product .csg-related-products {
		grid-template-columns: 1fr;
	}

	#product-product .csg-product-secondary-actions {
		flex-wrap: wrap;
		gap: 12px 16px;
	}

	#product-product .nav-tabs {
		display: grid;
		grid-template-columns: 1fr;
	}

	#product-product .nav-tabs > li > a {
		text-align: center;
	}

	#product-product .tab-content {
		padding: 18px;
	}

	.csg-category-heading {
		display: block;
	}

	.csg-category-heading h2 {
		font-size: 26px;
	}

	.csg-category-toolbar {
		display: block;
		padding: var(--csg-space-3);
	}

	.csg-category-toolbar > [class*="col-"] {
		margin-bottom: var(--csg-space-3);
		width: 100%;
	}

	.csg-category-toolbar > [class*="col-"]:last-child {
		margin-bottom: 0;
	}

	.product-list .product-thumb {
		display: block;
	}

	.product-list .product-thumb .image {
		display: block;
		flex: none;
	}

	.product-grid .product-thumb .button-group,
	.product-thumb .button-group {
		grid-template-columns: 1fr 44px 44px;
	}

	.csg-product-summary {
		padding: var(--csg-space-4);
	}

	.csg-product-actions {
		float: none;
		margin: 0 0 var(--csg-space-3);
	}

	.csg-product-title {
		font-size: 26px;
		padding-right: 0;
	}

	.csg-product-media .thumbnails > li:first-child .thumbnail {
		min-height: 220px;
	}

	#product-product .tab-content {
		padding: var(--csg-space-4);
	}
}

/* CoolStuffGear Stage 4E homepage/header/footer refinement */
.csg-topbar {
	background: var(--csg-surface);
	border-bottom: 1px solid var(--csg-border);
}

.csg-topbar-inner {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: var(--csg-space-2);
	justify-content: space-between;
	min-height: 44px;
}

.csg-topbar .pull-left {
	display: flex;
	flex-wrap: wrap;
	gap: var(--csg-space-2);
}

.csg-topbar #top-links {
	margin-left: auto;
}

.csg-topbar #top-links .list-inline {
	margin-bottom: 0;
}

.csg-topbar #top-links li {
	vertical-align: middle;
}

.csg-topbar .dropdown-menu {
	border-color: var(--csg-border);
	border-radius: var(--csg-radius-md);
	box-shadow: 0 12px 28px rgba(23, 32, 42, 0.12);
}

.csg-site-header {
	background: var(--csg-surface);
	box-shadow: 0 8px 24px rgba(23, 32, 42, 0.04);
	position: relative;
	z-index: 5;
}

.csg-header-grid {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

.csg-header-logo #logo {
	align-items: center;
	display: flex;
	min-height: 58px;
}

.csg-header-logo #logo img {
	max-height: 52px;
	width: auto;
}

/* Текстовый бренд вместо дефолтного логотипа OpenCart (dev) */
.csg-brand-logo-link {
	color: var(--csg-primary, #23a1d1);
	display: inline-block;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 0.02em;
	line-height: 1.15;
	text-decoration: none;
}
.csg-brand-logo-link:hover,
.csg-brand-logo-link:focus {
	color: var(--csg-primary-hover, #1e8cb8);
	text-decoration: none;
}

/* Переключатель языка без PNG-флагов */
.csg-lang-flag .fa-language {
	margin-right: 4px;
}
.csg-lang-code {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.04em;
	margin-left: 4px;
	vertical-align: middle;
}
.csg-lang-flag-active .csg-lang-code {
	margin-left: 2px;
}

.csg-search {
	display: flex;
	width: 100%;
}

.csg-search .form-control {
	border-radius: var(--csg-radius-md) 0 0 var(--csg-radius-md);
	font-size: 15px;
	height: 46px;
}

.csg-search .btn {
	background: var(--csg-primary);
	border-color: var(--csg-primary);
	color: #ffffff;
	height: 46px;
	min-width: 52px;
}

.csg-search .btn:hover,
.csg-search .btn:focus {
	background: var(--csg-primary-hover);
	border-color: var(--csg-primary-hover);
	color: #ffffff;
}

.csg-cart > .btn {
	align-items: center;
	display: flex;
	justify-content: center;
	min-height: 46px;
	white-space: normal;
}

.csg-cart .dropdown-menu {
	border-color: var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: 0 16px 36px rgba(23, 32, 42, 0.14);
	margin-top: var(--csg-space-2);
	min-width: 340px;
	overflow: hidden;
	padding: var(--csg-space-3);
}

.csg-cart .dropdown-menu .table {
	margin-bottom: var(--csg-space-3);
}

.csg-cart .dropdown-menu .img-thumbnail {
	border-color: var(--csg-border);
	border-radius: var(--csg-radius-sm);
}

.csg-category-nav {
	background: var(--csg-text);
	border-radius: var(--csg-radius-lg);
	margin-bottom: var(--csg-space-6);
	overflow: visible;
}

.csg-category-nav .navbar-header {
	min-height: 46px;
}

.csg-category-nav .navbar-toggle {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.18);
	color: #ffffff;
	margin-right: var(--csg-space-3);
}

.csg-category-nav #category {
	color: #ffffff;
	font-weight: var(--csg-font-weight-bold);
	line-height: 46px;
	padding-left: var(--csg-space-4);
}

.csg-category-nav .navbar-nav > li > a {
	border-radius: var(--csg-radius-md);
	margin: var(--csg-space-1);
	padding: 13px 15px;
}

.csg-category-nav .dropdown-menu {
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: 0 16px 36px rgba(23, 32, 42, 0.14);
	overflow: hidden;
}

.csg-category-nav .dropdown-inner {
	padding: var(--csg-space-3);
}

.csg-category-nav .dropdown-inner a {
	border-radius: var(--csg-radius-sm);
	color: var(--csg-text);
	display: block;
	padding: var(--csg-space-2) var(--csg-space-3);
}

.csg-category-nav .dropdown-inner a:hover,
.csg-category-nav .see-all:hover {
	background: var(--csg-surface-muted);
	color: var(--csg-primary);
	text-decoration: none;
}

.csg-category-nav .see-all {
	background: var(--csg-surface-muted);
	color: var(--csg-text);
	font-weight: var(--csg-font-weight-medium);
	padding: var(--csg-space-3) var(--csg-space-4);
}

.csg-home #content {
	padding-bottom: var(--csg-space-6);
}

.csg-home-hero {
	align-items: stretch;
	background: #17202a;
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: 0 18px 44px rgba(23, 32, 42, 0.14);
	color: #ffffff;
	display: grid;
	gap: var(--csg-space-5);
	grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.95fr);
	margin-bottom: var(--csg-space-5);
	overflow: hidden;
	padding: var(--csg-space-7);
	position: relative;
}

.csg-home-hero:before {
	background: linear-gradient(135deg, rgba(23, 105, 255, 0.28), rgba(0, 168, 132, 0.12));
	bottom: 0;
	content: "";
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	width: 38%;
}

.csg-home-hero-main {
	max-width: 720px;
	position: relative;
	z-index: 1;
}

.csg-home-eyebrow,
.csg-section-eyebrow {
	color: var(--csg-primary);
	font-size: 13px;
	font-weight: var(--csg-font-weight-bold);
	margin: 0 0 var(--csg-space-2);
	text-transform: uppercase;
}

.csg-home-hero h1 {
	color: #ffffff;
	font-size: 34px;
	line-height: 1.16;
	margin: 0 0 var(--csg-space-3);
}

.csg-home-hero-text {
	color: #d8dee8;
	font-size: 16px;
	line-height: 1.6;
	margin: 0 0 var(--csg-space-5);
	max-width: 620px;
}

.csg-home-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--csg-space-3);
}

.csg-home-hero-actions .btn {
	align-items: center;
	display: inline-flex;
	justify-content: center;
	min-height: 42px;
	padding-left: var(--csg-space-5);
	padding-right: var(--csg-space-5);
}

.csg-home-hero-secondary {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.2);
	color: #ffffff;
}

.csg-home-hero-secondary:hover,
.csg-home-hero-secondary:focus {
	background: #ffffff;
	border-color: #ffffff;
	color: var(--csg-text);
}

.csg-home-hero-panel {
	display: grid;
	gap: var(--csg-space-3);
	position: relative;
	z-index: 1;
}

.csg-home-hero-card {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--csg-radius-md);
	padding: var(--csg-space-4);
}

.csg-home-hero-card-primary {
	background: rgba(255, 255, 255, 0.14);
}

.csg-home-hero-card span {
	color: #9fc2ff;
	display: block;
	font-size: 12px;
	font-weight: var(--csg-font-weight-bold);
	margin-bottom: var(--csg-space-1);
	text-transform: uppercase;
}

.csg-home-hero-card strong,
.csg-home-benefit strong {
	display: block;
	font-weight: var(--csg-font-weight-bold);
}

.csg-home-hero-card small {
	color: #c8d1dc;
	display: block;
	margin-top: var(--csg-space-1);
}

.csg-home-categories {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: 0 10px 26px rgba(23, 32, 42, 0.06);
	margin-bottom: var(--csg-space-5);
	padding: var(--csg-space-5);
}

.csg-home-category-grid {
	display: grid;
	gap: var(--csg-space-3);
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.csg-home-category-card {
	background: var(--csg-surface-muted);
	border: 1px solid transparent;
	border-radius: var(--csg-radius-md);
	color: var(--csg-text);
	display: block;
	min-height: 146px;
	padding: var(--csg-space-4);
	text-decoration: none;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.csg-home-category-card:hover,
.csg-home-category-card:focus {
	background: #ffffff;
	border-color: var(--csg-primary);
	box-shadow: 0 10px 22px rgba(23, 105, 255, 0.12);
	color: var(--csg-text);
	text-decoration: none;
	transform: translateY(-1px);
}

.csg-home-category-icon {
	align-items: center;
	background: #ffffff;
	border-radius: var(--csg-radius-md);
	color: var(--csg-primary);
	display: flex;
	height: 40px;
	justify-content: center;
	margin-bottom: var(--csg-space-3);
	width: 40px;
}

.csg-home-category-card strong {
	display: block;
	font-weight: var(--csg-font-weight-bold);
	margin-bottom: var(--csg-space-1);
}

.csg-home-category-card small {
	color: var(--csg-text-muted);
	display: block;
	font-size: 13px;
	line-height: 1.4;
}

.csg-home-benefits {
	display: grid;
	gap: var(--csg-space-3);
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: var(--csg-space-6);
}

.csg-home-benefit {
	align-items: flex-start;
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: 0 8px 24px rgba(23, 32, 42, 0.05);
	display: flex;
	gap: var(--csg-space-3);
	padding: var(--csg-space-4);
}

.csg-home-benefit i {
	align-items: center;
	background: var(--csg-surface-muted);
	border-radius: var(--csg-radius-sm);
	color: var(--csg-primary);
	display: flex;
	flex: 0 0 36px;
	height: 36px;
	justify-content: center;
	margin-top: 2px;
	width: 36px;
}

.csg-home-benefit span {
	color: var(--csg-text-muted);
	display: block;
	font-size: 13px;
	line-height: 1.45;
	margin-top: var(--csg-space-1);
}

.csg-home-modules > * {
	margin-bottom: var(--csg-space-5);
}

.csg-home .swiper-viewport {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: 0 12px 30px rgba(23, 32, 42, 0.08);
	margin-bottom: var(--csg-space-6);
	overflow: hidden;
}

.csg-home .swiper-slide img {
	border-radius: var(--csg-radius-lg);
}

.csg-home h3 {
	font-size: 22px;
	font-weight: var(--csg-font-weight-bold);
	margin: 0 0 var(--csg-space-4);
}

.csg-featured-products {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	box-shadow: 0 12px 30px rgba(23, 32, 42, 0.07);
	padding: var(--csg-space-5);
}

.csg-section-heading {
	align-items: flex-end;
	display: flex;
	gap: var(--csg-space-3);
	justify-content: space-between;
	margin-bottom: var(--csg-space-4);
}

.csg-section-heading h2 {
	font-size: 24px;
	line-height: 1.25;
	margin: 0;
}

.csg-section-link {
	color: var(--csg-primary);
	font-size: 14px;
	font-weight: var(--csg-font-weight-medium);
	white-space: nowrap;
}

.csg-featured-grid {
	display: flex;
	flex-wrap: wrap;
	margin-left: -10px;
	margin-right: -10px;
}

.csg-featured-grid .product-layout {
	display: flex;
	padding-left: 10px;
	padding-right: 10px;
}

.csg-featured-grid .product-thumb {
	display: flex;
	flex-direction: column;
	margin-bottom: var(--csg-space-4);
	min-height: 100%;
	width: 100%;
}

.csg-featured-grid .product-thumb > div:not(.image) {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

.csg-featured-grid .product-thumb .caption {
	flex: 1 1 auto;
	min-height: 136px;
	padding: var(--csg-space-4);
}

.csg-featured-grid .product-thumb .caption p:not(.price) {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.csg-featured-grid .product-thumb .button-group {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 44px 44px;
}

.csg-featured-grid .product-thumb .button-group button {
	float: none;
	min-height: 42px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: auto;
}

.csg-featured-grid .product-thumb .button-group button:first-child {
	color: var(--csg-primary);
	text-transform: none;
}

.csg-featured-grid .product-thumb .button-group button:first-child:hover {
	color: #ffffff;
}

.csg-home .row {
	display: flex;
	flex-wrap: wrap;
}

.csg-home .product-layout {
	display: flex;
}

.csg-home .product-thumb {
	width: 100%;
}

.csg-home .carousel {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: var(--csg-radius-lg);
	margin-bottom: var(--csg-space-5);
	padding: var(--csg-space-4);
}

.csg-site-footer {
	background: #151b22;
	color: #d8dee8;
	margin-top: var(--csg-space-7);
	padding: var(--csg-space-6) 0 var(--csg-space-5);
}

.csg-footer-grid {
	display: flex;
	flex-wrap: wrap;
	row-gap: var(--csg-space-4);
}

.csg-site-footer h5 {
	border-bottom: 1px solid rgba(216, 222, 232, 0.18);
	margin-bottom: var(--csg-space-3);
	padding-bottom: var(--csg-space-2);
}

.csg-site-footer li {
	margin-bottom: var(--csg-space-2);
}

.csg-site-footer a {
	color: #d8dee8;
	display: inline-block;
}

.csg-site-footer a:hover,
.csg-site-footer a:focus {
	color: #ffffff;
	text-decoration: none;
}

.csg-site-footer hr {
	border-top-color: rgba(216, 222, 232, 0.16);
	margin: var(--csg-space-5) 0 var(--csg-space-4);
}

.csg-footer-powered {
	color: #aab4c0;
	font-size: 13px;
	margin: 0;
}

@media (max-width: 991px) {
	.csg-header-logo,
	.csg-header-search,
	.csg-header-cart {
		margin-bottom: var(--csg-space-3);
		width: 100%;
	}

	.csg-header-logo #logo {
		justify-content: center;
	}

	.csg-category-nav {
		border-radius: var(--csg-radius-md);
	}
}

@media (max-width: 767px) {
	.csg-topbar-inner {
		display: block;
		padding-bottom: var(--csg-space-2);
		padding-top: var(--csg-space-2);
	}

	.csg-topbar .pull-left,
	.csg-topbar #top-links {
		float: none !important;
		margin: 0;
		text-align: center;
	}

	.csg-topbar #top-links .list-inline > li {
		margin-bottom: var(--csg-space-1);
	}

	.csg-site-header {
		padding-bottom: var(--csg-space-2);
	}

	.csg-header-grid {
		display: block;
	}

	.csg-header-logo #logo {
		min-height: 44px;
	}

	.csg-cart .dropdown-menu {
		min-width: 0;
		width: 100%;
	}

	.csg-category-nav .navbar-collapse {
		border-top-color: rgba(255, 255, 255, 0.14);
		box-shadow: none;
	}

	.csg-category-nav .navbar-nav {
		margin: 0;
	}

	.csg-category-nav .navbar-nav > li > a {
		margin: 0;
		padding: var(--csg-space-3) var(--csg-space-4);
	}

	.csg-category-nav .dropdown-menu {
		background: #202833;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		position: static;
		width: 100%;
	}

	.csg-category-nav .dropdown-inner a,
	.csg-category-nav .see-all {
		color: #ffffff;
	}

	.csg-home-hero {
		grid-template-columns: 1fr;
		margin-bottom: var(--csg-space-4);
		padding: var(--csg-space-5);
	}

	.csg-home-hero:before {
		height: 42%;
		left: 0;
		width: auto;
	}

	.csg-home-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.csg-home-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.csg-home .row,
	.csg-footer-grid {
		display: block;
	}

	.csg-site-footer {
		margin-top: var(--csg-space-6);
		padding-top: var(--csg-space-5);
	}
}

.csg-cart .dropdown-menu {
	left: auto;
	max-width: calc(100vw - 30px);
	right: 0;
}

.csg-cart .dropdown-menu li > div {
	min-width: 0;
	width: 100%;
}

.csg-cart .dropdown-menu table {
	width: 100%;
}

.csg-home .row {
	display: block;
}

.csg-home > .row,
.csg-home-modules > .row {
	display: flex;
	flex-wrap: wrap;
}

@media (max-width: 767px) {
	.csg-cart .dropdown-menu {
		left: 0;
		max-width: 100%;
		right: 0;
		width: 100%;
	}

	.csg-home > .row,
	.csg-home-modules > .row,
	.csg-featured-grid {
		display: block;
	}

	.csg-home-hero h1 {
		font-size: 28px;
	}

	.csg-section-heading {
		align-items: flex-start;
		display: block;
	}

	.csg-section-link {
		display: inline-block;
		margin-top: var(--csg-space-2);
	}

	.csg-home-category-grid {
		grid-template-columns: 1fr;
	}

	.csg-home-benefits {
		grid-template-columns: 1fr;
	}

	.csg-home-hero-actions .btn {
		width: 100%;
	}
}

/* Stage 6E: блок посилань на sample-категорії на головній */
.csg-sample-cats {
	margin-bottom: 20px;
}

.csg-sample-cat-list {
	margin-bottom: 0;
}

.csg-sample-cat-list li {
	margin-bottom: 8px;
}

/* Stage 8B.2: homepage ecommerce rebuild */
.csg-home-rebuild.container {
	max-width: 1470px;
	padding-left: 24px;
	padding-right: 24px;
	width: 100%;
}

.csg-home-rebuild {
	--csg-ecom-bg: #f4f7fd;
	--csg-ecom-card: #ffffff;
	--csg-ecom-dark: #1b2432;
	--csg-ecom-dark-2: #101824;
	--csg-ecom-green: #00bc52;
	--csg-ecom-green-dark: #006e2d;
	--csg-ecom-text: #181c20;
	--csg-ecom-muted: #565f6f;
	--csg-ecom-border: rgba(0, 26, 52, 0.1);
	--csg-ecom-shadow: 0 4px 20px rgba(0, 26, 52, 0.05);
	--csg-ecom-shadow-hover: 1px 1px 16px -3px rgba(0, 0, 0, 0.16);
}

.csg-home-rebuild #content {
	padding-bottom: 72px;
}

.csg-home-rebuild #content.col-sm-12 {
	float: none;
	width: 100%;
}

.csg-home-rebuild .csg-home-hero {
	align-items: center;
	background:
		radial-gradient(circle at 82% 24%, rgba(0, 188, 82, 0.28), transparent 30%),
		linear-gradient(135deg, var(--csg-ecom-dark), var(--csg-ecom-dark-2));
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 16px;
	box-shadow: 0 18px 42px rgba(0, 26, 52, 0.18);
	color: #ffffff;
	display: grid;
	gap: 36px;
	grid-template-columns: minmax(0, 1fr) minmax(420px, 0.9fr);
	margin: 32px 0 24px;
	min-height: 470px;
	overflow: hidden;
	padding: 56px;
	position: relative;
}

.csg-home-rebuild .csg-home-hero:before {
	background:
		linear-gradient(90deg, rgba(27, 36, 50, 0.98), rgba(27, 36, 50, 0.55) 44%, rgba(0, 188, 82, 0.12)),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.04) 0, rgba(255, 255, 255, 0.04) 1px, transparent 1px, transparent 64px);
	bottom: 0;
	content: "";
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	width: auto;
}

.csg-home-rebuild .csg-home-hero:after {
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), transparent 52%);
	border-radius: 999px;
	content: "";
	height: 320px;
	pointer-events: none;
	position: absolute;
	right: -80px;
	top: -120px;
	width: 320px;
}

.csg-home-rebuild .csg-home-hero-main {
	max-width: 680px;
	position: relative;
	z-index: 2;
}

.csg-home-rebuild .csg-home-eyebrow,
.csg-home-rebuild .csg-section-eyebrow {
	color: var(--csg-ecom-green);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.05em;
	margin: 0 0 12px;
	text-transform: uppercase;
}

.csg-home-rebuild .csg-home-hero h1 {
	color: #ffffff;
	font-size: 48px;
	font-weight: 700;
	line-height: 1.12;
	margin: 0 0 18px;
	max-width: 760px;
}

.csg-home-rebuild .csg-home-hero-text {
	color: rgba(255, 255, 255, 0.82);
	font-size: 18px;
	line-height: 1.55;
	margin: 0 0 30px;
	max-width: 620px;
}

.csg-home-rebuild .csg-home-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.csg-home-rebuild .csg-home-hero-actions .btn {
	align-items: center;
	background-image: none;
	border-radius: 12px;
	box-shadow: none;
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	justify-content: center;
	min-height: 52px;
	padding: 14px 28px;
	text-shadow: none;
}

.csg-home-rebuild .csg-home-hero-cta,
.csg-home-rebuild .csg-featured-grid .product-thumb .button-group button:first-child {
	background: var(--csg-ecom-green);
	border-color: var(--csg-ecom-green);
	color: #ffffff;
}

.csg-home-rebuild .csg-home-hero-cta:hover,
.csg-home-rebuild .csg-home-hero-cta:focus {
	background: #08a94d;
	border-color: #08a94d;
	color: #ffffff;
}

.csg-home-rebuild .csg-home-hero-secondary {
	background: rgba(255, 255, 255, 0.08);
	border: 1.5px solid rgba(255, 255, 255, 0.38);
	color: #ffffff;
}

.csg-home-rebuild .csg-home-hero-secondary:hover,
.csg-home-rebuild .csg-home-hero-secondary:focus {
	background: #ffffff;
	border-color: #ffffff;
	color: var(--csg-ecom-text);
}

.csg-home-rebuild .csg-home-hero-panel {
	display: grid;
	gap: 18px;
	position: relative;
	z-index: 2;
}

.csg-home-rebuild .csg-home-hero-device {
	align-items: center;
	aspect-ratio: 1.45 / 1;
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.02)),
		radial-gradient(circle at 45% 35%, rgba(0, 188, 82, 0.28), transparent 34%);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 18px;
	display: flex;
	justify-content: center;
	overflow: hidden;
	position: relative;
}

.csg-home-device-glow {
	background: rgba(0, 188, 82, 0.24);
	border-radius: 999px;
	filter: blur(30px);
	height: 180px;
	position: absolute;
	right: 52px;
	top: 60px;
	width: 180px;
}

.csg-home-device-board {
	background: linear-gradient(145deg, #0b1119, #233042);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 18px;
	box-shadow: 0 22px 44px rgba(0, 0, 0, 0.36);
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(6, 1fr);
	padding: 26px;
	position: relative;
	transform: rotate(-7deg) skewX(-7deg);
	width: 78%;
}

.csg-home-device-board span {
	background: linear-gradient(180deg, #263448, #111923);
	border-bottom: 2px solid rgba(0, 188, 82, 0.42);
	border-radius: 6px;
	height: 30px;
}

.csg-home-rebuild .csg-home-hero-stats {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.csg-home-rebuild .csg-home-hero-stats div,
.csg-home-rebuild .csg-home-hero-card {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 12px;
	padding: 16px;
}

.csg-home-rebuild .csg-home-hero-stats span,
.csg-home-rebuild .csg-home-hero-card strong {
	color: #ffffff;
	display: block;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.25;
}

.csg-home-rebuild .csg-home-hero-stats small,
.csg-home-rebuild .csg-home-hero-card small {
	color: rgba(255, 255, 255, 0.68);
	display: block;
	margin-top: 4px;
}

.csg-home-rebuild .csg-home-hero-card span {
	color: var(--csg-ecom-green);
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.05em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

.csg-home-rebuild .csg-home-categories,
.csg-home-rebuild .csg-featured-products {
	background: transparent;
	border: 0;
	box-shadow: none;
	margin-bottom: 40px;
	padding: 0;
}

.csg-home-rebuild .csg-section-heading {
	align-items: flex-end;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-bottom: 20px;
}

.csg-home-rebuild .csg-section-heading h2 {
	color: var(--csg-ecom-text);
	font-size: 32px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0;
}

.csg-home-rebuild .csg-section-link {
	color: var(--csg-ecom-green-dark);
	font-size: 14px;
	font-weight: 700;
}

.csg-home-rebuild .csg-home-category-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.csg-home-rebuild .csg-home-category-card {
	background: var(--csg-ecom-card);
	border: 1px solid var(--csg-ecom-border);
	border-radius: 12px;
	box-shadow: var(--csg-ecom-shadow);
	color: var(--csg-ecom-text);
	display: block;
	min-height: 150px;
	padding: 20px;
	text-decoration: none;
	transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.csg-home-rebuild .csg-home-category-card:hover,
.csg-home-rebuild .csg-home-category-card:focus {
	border-color: rgba(0, 188, 82, 0.42);
	box-shadow: var(--csg-ecom-shadow-hover);
	color: var(--csg-ecom-text);
	text-decoration: none;
	transform: translateY(-2px);
}

.csg-home-rebuild .csg-home-category-icon {
	align-items: center;
	background: rgba(0, 188, 82, 0.1);
	border-radius: 12px;
	color: var(--csg-ecom-green);
	display: flex;
	height: 42px;
	justify-content: center;
	margin-bottom: 16px;
	width: 42px;
}

.csg-home-rebuild .csg-home-category-card strong {
	display: block;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.25;
	margin-bottom: 8px;
}

.csg-home-rebuild .csg-home-category-card small {
	color: var(--csg-ecom-muted);
	display: block;
	font-size: 13px;
	line-height: 1.4;
}

.csg-home-rebuild .csg-home-benefits {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: 48px;
}

.csg-home-rebuild .csg-home-benefit {
	align-items: flex-start;
	background: var(--csg-ecom-card);
	border: 1px solid var(--csg-ecom-border);
	border-radius: 12px;
	box-shadow: var(--csg-ecom-shadow);
	display: flex;
	gap: 16px;
	min-height: 116px;
	padding: 22px;
}

.csg-home-rebuild .csg-home-benefit i {
	align-items: center;
	background: rgba(0, 188, 82, 0.1);
	border-radius: 12px;
	color: var(--csg-ecom-green);
	display: flex;
	flex: 0 0 44px;
	font-size: 18px;
	height: 44px;
	justify-content: center;
	margin-top: 0;
	width: 44px;
}

.csg-home-rebuild .csg-home-benefit strong {
	color: var(--csg-ecom-text);
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
}

.csg-home-rebuild .csg-home-benefit span {
	color: var(--csg-ecom-muted);
	display: block;
	font-size: 14px;
	line-height: 1.45;
	margin-top: 6px;
}

.csg-home-rebuild .csg-home-modules > * {
	margin-bottom: 0;
}

.csg-home-rebuild .csg-featured-grid {
	display: flex;
	flex-wrap: wrap;
	margin-left: -8px;
	margin-right: -8px;
	row-gap: 16px;
}

.csg-home-rebuild .csg-featured-grid .csg-featured-item {
	display: flex;
	padding-left: 8px;
	padding-right: 8px;
	width: 20%;
}

.csg-home-rebuild .csg-featured-grid .product-thumb {
	background: var(--csg-ecom-card);
	border: 1px solid var(--csg-ecom-border);
	border-radius: 12px;
	box-shadow: var(--csg-ecom-shadow);
	display: flex;
	flex-direction: column;
	margin: 0;
	min-height: 100%;
	overflow: hidden;
	transition: box-shadow 0.16s ease, transform 0.16s ease;
	width: 100%;
}

.csg-home-rebuild .csg-featured-grid .product-thumb:hover {
	box-shadow: var(--csg-ecom-shadow-hover);
	transform: translateY(-2px);
}

.csg-home-rebuild .csg-featured-grid .product-thumb .image {
	align-items: center;
	background: #f1f4fa;
	display: flex;
	height: 220px;
	justify-content: center;
	overflow: hidden;
	position: relative;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .image a {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	padding: 16px;
	width: 100%;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .image img {
	max-height: 100%;
	object-fit: contain;
	transition: transform 0.22s ease;
}

.csg-home-rebuild .csg-featured-grid .product-thumb:hover .image img {
	transform: scale(1.04);
}

.csg-home-rebuild .csg-product-badge {
	align-items: center;
	background: #ffffff;
	border-radius: 999px;
	color: var(--csg-ecom-green-dark);
	display: inline-flex;
	font-size: 11px;
	font-weight: 700;
	left: 12px;
	line-height: 1;
	padding: 6px 9px;
	position: absolute;
	top: 12px;
}

.csg-home-rebuild .csg-product-badge:before {
	background: var(--csg-ecom-green);
	border-radius: 50%;
	content: "";
	height: 7px;
	margin-right: 5px;
	width: 7px;
}

.csg-home-rebuild .csg-featured-grid .product-thumb > div:not(.image) {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .caption {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	min-height: 0;
	padding: 16px 16px 14px;
}

.csg-home-rebuild .csg-featured-grid .product-thumb h4 {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 8px;
	min-height: 42px;
}

.csg-home-rebuild .csg-featured-grid .product-thumb h4 a {
	color: var(--csg-ecom-text);
}

.csg-home-rebuild .csg-featured-grid .product-thumb h4 a:hover,
.csg-home-rebuild .csg-featured-grid .product-thumb h4 a:focus {
	color: var(--csg-ecom-green-dark);
}

.csg-home-rebuild .csg-featured-grid .product-thumb .caption p:not(.price) {
	color: var(--csg-ecom-muted);
	display: -webkit-box;
	font-size: 13px;
	line-height: 1.4;
	margin: 0 0 12px;
	min-height: 37px;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .rating {
	margin-bottom: 10px;
	padding: 0;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .price {
	color: var(--csg-ecom-green-dark);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.25;
	margin: auto 0 0;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .price-old,
.csg-home-rebuild .csg-featured-grid .product-thumb .price-tax {
	color: var(--csg-ecom-muted);
	font-size: 12px;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .button-group {
	background: #ffffff;
	border-top: 1px solid var(--csg-ecom-border);
	display: grid;
	grid-template-columns: minmax(0, 1fr) 44px 44px;
	overflow: hidden;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .button-group button {
	background: #ffffff;
	background-image: none;
	border: 0;
	border-left: 1px solid var(--csg-ecom-border);
	color: var(--csg-ecom-muted);
	float: none;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	min-height: 48px;
	overflow: hidden;
	text-align: center;
	text-overflow: ellipsis;
	text-shadow: none;
	text-transform: none;
	white-space: nowrap;
	width: auto;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .button-group button:first-child {
	border-left: 0;
	color: #ffffff;
}

.csg-home-rebuild .csg-featured-grid .product-thumb .button-group button:hover,
.csg-home-rebuild .csg-featured-grid .product-thumb .button-group button:focus {
	background: rgba(0, 188, 82, 0.08);
	color: var(--csg-ecom-green-dark);
}

.csg-home-rebuild .csg-featured-grid .product-thumb .button-group button:first-child:hover,
.csg-home-rebuild .csg-featured-grid .product-thumb .button-group button:first-child:focus {
	background: #08a94d;
	color: #ffffff;
}

@media (max-width: 1199px) {
	.csg-home-rebuild .csg-home-hero {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.csg-home-rebuild .csg-home-category-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.csg-home-rebuild .csg-home-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.csg-home-rebuild .csg-featured-grid .csg-featured-item {
		width: 33.333333%;
	}
}

@media (max-width: 767px) {
	.csg-home-rebuild.container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.csg-home-rebuild .csg-home-hero {
		gap: 24px;
		margin-top: 20px;
		padding: 28px 20px;
	}

	.csg-home-rebuild .csg-home-hero h1 {
		font-size: 30px;
	}

	.csg-home-rebuild .csg-home-hero-text {
		font-size: 15px;
	}

	.csg-home-rebuild .csg-home-hero-actions,
	.csg-home-rebuild .csg-section-heading {
		display: block;
	}

	.csg-home-rebuild .csg-home-hero-actions .btn {
		margin-bottom: 12px;
		width: 100%;
	}

	.csg-home-rebuild .csg-home-device-board {
		padding: 16px;
		width: 86%;
	}

	.csg-home-rebuild .csg-home-device-board span {
		height: 22px;
	}

	.csg-home-rebuild .csg-section-link {
		display: inline-block;
		margin-top: 8px;
	}

	.csg-home-rebuild .csg-home-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.csg-home-rebuild .csg-home-category-card {
		min-height: 142px;
		padding: 16px;
	}

	.csg-home-rebuild .csg-home-benefits {
		grid-template-columns: 1fr;
	}

	.csg-home-rebuild .csg-featured-grid {
		display: flex;
	}

	.csg-home-rebuild .csg-featured-grid .csg-featured-item {
		width: 50%;
	}

	.csg-home-rebuild .csg-featured-grid .product-thumb .image {
		height: 170px;
	}
}

@media (max-width: 480px) {
	.csg-home-rebuild .csg-home-category-grid,
	.csg-home-rebuild .csg-featured-grid .csg-featured-item {
		width: 100%;
	}

	.csg-home-rebuild .csg-home-category-grid {
		grid-template-columns: 1fr;
	}
}

/* Stage 8B.3: header visual alignment */
#top.csg-topbar,
.csg-header-shell,
#menu {
	--csg-header-dark: #1b2432;
	--csg-header-dark-soft: #243044;
	--csg-header-green: #00bc52;
	--csg-header-green-dark: #006e2d;
	--csg-header-border: rgba(255, 255, 255, 0.12);
	--csg-header-muted: rgba(255, 255, 255, 0.7);
	--csg-header-shadow: 0 12px 28px rgba(0, 26, 52, 0.12);
}

#top.csg-topbar {
	background: #111923;
	border: 0;
	color: var(--csg-header-muted);
	margin: 0;
	min-height: 36px;
	padding: 0;
}

#top.csg-topbar .container,
.csg-header-shell .container,
#menu .container {
	max-width: 1470px;
	width: 100%;
}

.csg-topbar-inner {
	align-items: center;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	min-height: 36px;
}

.csg-topbar-tools {
	align-items: center;
	display: flex;
	gap: 8px;
	min-width: 0;
}

.csg-topbar-note {
	align-items: center;
	color: rgba(255, 255, 255, 0.64);
	display: flex;
	flex: 1 1 auto;
	font-size: 12px;
	gap: 7px;
	justify-content: center;
	line-height: 1.3;
	min-width: 0;
	text-align: center;
}

.csg-topbar-note i {
	color: var(--csg-header-green);
}

#top-links.csg-topbar-links {
	float: none;
	margin-left: auto;
	padding-top: 0;
}

#top-links.csg-topbar-links ul {
	align-items: center;
	display: flex;
	gap: 6px;
	margin: 0;
}

#top .btn-link,
#top-links.csg-topbar-links a {
	background: transparent;
	border: 0;
	box-shadow: none;
	color: var(--csg-header-muted);
	font-size: 12px;
	line-height: 1.3;
	padding: 7px 8px;
	text-shadow: none;
}

#top .btn-link:hover,
#top .btn-link:focus,
#top-links.csg-topbar-links a:hover,
#top-links.csg-topbar-links a:focus {
	color: #ffffff;
	text-decoration: none;
}

#top .btn-link strong {
	color: #ffffff;
	font-size: 12px;
	line-height: 1;
}

.csg-language-switcher {
	float: none;
}

.csg-language-toggle {
	align-items: center;
	display: inline-flex;
	gap: 5px;
}

.csg-language-label {
	color: inherit;
}

.csg-lang-flag {
	align-items: center;
	display: inline-flex;
	gap: 5px;
}

.csg-lang-code {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 999px;
	color: #ffffff;
	display: inline-flex;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	padding: 4px 7px;
}

#form-language .dropdown-menu,
#form-currency .dropdown-menu,
#top-links .dropdown-menu {
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 12px;
	box-shadow: 0 16px 34px rgba(0, 26, 52, 0.16);
	margin-top: 8px;
	padding: 8px;
}

#form-language .dropdown-menu .btn-link,
#form-currency .dropdown-menu .btn-link,
#top-links .dropdown-menu a {
	border-radius: 8px;
	color: #1b2432;
	display: block;
	padding: 8px 10px;
	text-align: left;
	text-shadow: none;
	width: 100%;
}

#form-language .dropdown-menu .btn-link:hover,
#form-currency .dropdown-menu .btn-link:hover,
#top-links .dropdown-menu a:hover {
	background: rgba(0, 188, 82, 0.1);
	background-image: none;
	color: #006e2d;
}

.csg-header-shell {
	background: var(--csg-header-dark);
	border: 0;
	box-shadow: var(--csg-header-shadow);
	padding: 0;
	position: relative;
	z-index: 20;
}

.csg-header-grid {
	align-items: center;
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(220px, 300px) minmax(260px, 1fr) auto;
	min-height: 84px;
}

.csg-header-logo {
	min-width: 0;
}

.csg-brand-logo {
	margin: 0;
}

.csg-brand-logo-link {
	align-items: center;
	color: #ffffff;
	display: inline-flex;
	gap: 12px;
	text-decoration: none;
}

.csg-brand-logo-link:hover,
.csg-brand-logo-link:focus {
	color: #ffffff;
	text-decoration: none;
}

.csg-brand-mark {
	align-items: center;
	background: var(--csg-header-green);
	border-radius: 12px;
	color: #ffffff;
	display: inline-flex;
	font-size: 13px;
	font-weight: 800;
	height: 42px;
	justify-content: center;
	letter-spacing: 0;
	width: 42px;
}

.csg-brand-text {
	color: #ffffff;
	font-size: 24px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1;
}

.csg-header-search {
	min-width: 0;
}

.csg-search {
	margin: 0;
	width: 100%;
}

#search.csg-search .csg-search-input {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid var(--csg-header-border);
	border-radius: 14px 0 0 14px;
	box-shadow: none;
	color: #ffffff;
	font-size: 14px;
	height: 48px;
	padding: 0 16px;
}

#search.csg-search .csg-search-input::placeholder {
	color: rgba(255, 255, 255, 0.56);
}

#search.csg-search .csg-search-input:focus {
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(0, 188, 82, 0.72);
	box-shadow: 0 0 0 3px rgba(0, 188, 82, 0.16);
}

#search.csg-search .csg-search-button {
	background: var(--csg-header-green);
	background-image: none;
	border: 1px solid var(--csg-header-green);
	border-radius: 0 14px 14px 0;
	box-shadow: none;
	color: #ffffff;
	height: 48px;
	min-width: 58px;
	padding: 0 18px;
	text-shadow: none;
}

#search.csg-search .csg-search-button:hover,
#search.csg-search .csg-search-button:focus {
	background: #08a94d;
	border-color: #08a94d;
	color: #ffffff;
}

.csg-header-actions {
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: flex-end;
	min-width: 0;
}

.csg-header-action {
	align-items: center;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	color: rgba(255, 255, 255, 0.82);
	display: inline-flex;
	flex-direction: column;
	font-size: 11px;
	font-weight: 700;
	gap: 4px;
	height: 52px;
	justify-content: center;
	line-height: 1;
	min-width: 68px;
	padding: 7px 10px;
	text-align: center;
	text-decoration: none;
}

.csg-header-action i {
	font-size: 16px;
}

.csg-header-action span {
	display: block;
	max-width: 76px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.csg-header-action:hover,
.csg-header-action:focus {
	background: rgba(255, 255, 255, 0.08);
	color: var(--csg-header-green);
	text-decoration: none;
}

.csg-header-cart {
	min-width: 190px;
}

#cart.csg-cart {
	margin: 0;
}

#cart.csg-cart > .csg-cart-button {
	align-items: center;
	background: #ffffff;
	background-image: none;
	border: 1px solid #ffffff;
	border-radius: 14px;
	box-shadow: none;
	color: #1b2432;
	display: inline-flex;
	font-size: 13px;
	font-weight: 800;
	gap: 8px;
	height: 52px;
	justify-content: center;
	line-height: 1.25;
	min-height: 52px;
	overflow: hidden;
	padding: 0 16px;
	text-shadow: none;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}

#cart.csg-cart > .csg-cart-button i {
	color: var(--csg-header-green-dark);
	font-size: 17px;
}

#cart.csg-cart.open > .csg-cart-button,
#cart.csg-cart > .csg-cart-button:hover,
#cart.csg-cart > .csg-cart-button:focus {
	background: #f4f7fd;
	border-color: #f4f7fd;
	color: #1b2432;
}

#cart.csg-cart .dropdown-menu {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 14px;
	box-shadow: 0 20px 46px rgba(0, 26, 52, 0.18);
	margin-top: 10px;
	max-width: min(460px, calc(100vw - 24px));
	min-width: 360px;
	padding: 12px;
}

#cart.csg-cart .dropdown-menu li p:not(.csg-mini-cart-meta) {
	color: #3d4a3c;
	font-size: 14px;
	margin: 18px 0;
}

#menu {
	background: #111923;
	background-image: none;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin-bottom: 28px;
	min-height: 48px;
}

#menu .navbar-collapse {
	padding-left: 0;
	padding-right: 0;
}

#menu .nav > li > a {
	border-radius: 10px;
	color: rgba(255, 255, 255, 0.86);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0;
	min-height: 0;
	padding: 14px 15px;
	text-shadow: none;
	transition: background-color 0.15s ease, color 0.15s ease;
}

#menu .nav > li > a:hover,
#menu .nav > li.open > a,
#menu .nav > li > a:focus {
	background: rgba(0, 188, 82, 0.16);
	color: #ffffff;
}

#menu #category {
	color: #ffffff;
	font-size: 15px;
	font-weight: 800;
	line-height: 48px;
	padding-left: 0;
	text-shadow: none;
}

#menu .btn-navbar {
	background: var(--csg-header-green);
	background-image: none;
	border: 0;
	border-radius: 10px;
	box-shadow: none;
	color: #ffffff;
	margin-top: 8px;
	padding: 6px 14px;
	text-shadow: none;
}

#menu .dropdown-menu {
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 12px;
	box-shadow: 0 18px 34px rgba(0, 26, 52, 0.18);
	margin-top: 4px;
	overflow: hidden;
	padding: 8px;
}

#menu .dropdown-inner a,
#menu .see-all {
	border-radius: 8px;
	color: #1b2432;
	font-size: 13px;
	padding: 8px 12px;
}

#menu .dropdown-inner li a:hover,
#menu .see-all:hover,
#menu .see-all:focus {
	background: rgba(0, 188, 82, 0.1);
	background-image: none;
	color: #006e2d;
}

@media (max-width: 1199px) {
	.csg-header-grid {
		gap: 16px;
		grid-template-columns: minmax(190px, 240px) minmax(240px, 1fr);
		padding: 14px 0;
	}

	.csg-header-actions {
		grid-column: 1 / -1;
		justify-content: space-between;
	}

	.csg-header-cart {
		flex: 1 1 auto;
		max-width: 360px;
	}

	.csg-topbar-note {
		display: none;
	}
}

@media (max-width: 767px) {
	#top.csg-topbar .container,
	.csg-header-shell .container,
	#menu .container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.csg-topbar-inner {
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
		padding-bottom: 8px;
		padding-top: 8px;
	}

	.csg-topbar-tools,
	#top-links.csg-topbar-links ul {
		flex-wrap: wrap;
	}

	#top-links.csg-topbar-links {
		margin-left: 0;
		width: 100%;
	}

	#top-links.csg-topbar-links ul {
		gap: 2px;
	}

	#top .btn-link,
	#top-links.csg-topbar-links a {
		padding: 5px 6px;
	}

	.csg-language-label,
	#top-links.csg-topbar-links .hidden-xs {
		display: none !important;
	}

	.csg-header-grid {
		display: flex;
		flex-direction: column;
		gap: 14px;
		min-height: 0;
		padding: 18px 0;
	}

	.csg-header-logo,
	.csg-header-search,
	.csg-header-actions {
		width: 100%;
	}

	.csg-brand-logo-link {
		width: 100%;
	}

	.csg-brand-text {
		font-size: 22px;
	}

	.csg-header-shell .csg-header-actions,
	.csg-header-unified .csg-header-actions {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.csg-header-shell .csg-header-action,
	.csg-header-unified .csg-header-action {
		min-width: 0;
		width: 100%;
	}

	.csg-header-shell .csg-header-cart,
	.csg-header-unified .csg-header-cart {
		grid-column: 1 / -1;
		max-width: none;
		min-width: 0;
		width: 100%;
	}

	#cart.csg-cart .dropdown-menu {
		left: auto;
		max-width: calc(100vw - 32px);
		min-width: 0;
		right: 0;
		width: calc(100vw - 32px);
	}

	#cart.csg-cart .dropdown-menu li > div {
		min-width: 0;
	}

	#menu {
		margin-bottom: 20px;
	}

	#menu .navbar-header {
		min-height: 48px;
	}

	#menu .navbar-collapse {
		border-top: 1px solid rgba(255, 255, 255, 0.1);
		box-shadow: none;
	}

	#menu .nav > li > a {
		border-radius: 0;
		padding: 12px 0;
	}

	#menu div.dropdown-menu {
		background: rgba(255, 255, 255, 0.06);
		border: 0;
		border-radius: 0;
		box-shadow: none;
		margin: 0;
	}

	#menu .dropdown-inner a,
	#menu .see-all {
		color: #ffffff;
	}
}

/* Stage 8B.4: reference-style header alignment fix */
#top.csg-topbar,
.csg-header-shell,
#menu.csg-category-nav {
	--csg-header-floor: #0d141f;
	--csg-header-shell: #172233;
	--csg-header-panel: #1f2d42;
	--csg-header-panel-strong: #26364e;
	--csg-header-green: #00bc52;
	--csg-header-green-hover: #08a94d;
	--csg-header-text: #ffffff;
	--csg-header-subtle: rgba(255, 255, 255, 0.68);
	--csg-header-line: rgba(255, 255, 255, 0.1);
	--csg-header-outline: rgba(255, 255, 255, 0.16);
}

#top.csg-topbar {
	background: var(--csg-header-floor);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	min-height: 40px;
}

#top.csg-topbar .container,
.csg-header-shell .container,
#menu.csg-category-nav {
	max-width: 1470px;
}

body > .container:has(> #menu.csg-category-nav) {
	max-width: 1470px;
	width: 100%;
}

.csg-topbar-inner {
	align-items: center;
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(240px, 1fr) auto auto;
	min-height: 40px;
	padding-bottom: 0;
	padding-top: 0;
}

.csg-topbar-note {
	color: var(--csg-header-subtle);
	font-size: 13px;
	font-weight: 600;
	justify-content: flex-start;
	letter-spacing: 0;
	text-align: left;
}

.csg-topbar-note i {
	background: rgba(0, 188, 82, 0.14);
	border: 1px solid rgba(0, 188, 82, 0.28);
	border-radius: 999px;
	color: var(--csg-header-green);
	display: inline-flex;
	height: 22px;
	justify-content: center;
	line-height: 20px;
	width: 22px;
}

.csg-topbar-tools {
	gap: 6px;
	justify-content: flex-end;
}

#top-links.csg-topbar-links {
	margin-left: 0;
}

#top-links.csg-topbar-links ul {
	gap: 4px;
	justify-content: flex-end;
}

#top.csg-topbar .btn-link,
#top-links.csg-topbar-links a {
	align-items: center;
	background: transparent;
	border: 1px solid transparent;
	border-radius: 999px;
	color: var(--csg-header-subtle);
	display: inline-flex;
	font-size: 12px;
	font-weight: 700;
	gap: 6px;
	min-height: 30px;
	padding: 6px 9px;
}

#top.csg-topbar .btn-link:hover,
#top.csg-topbar .btn-link:focus,
#top-links.csg-topbar-links a:hover,
#top-links.csg-topbar-links a:focus {
	background: rgba(255, 255, 255, 0.07);
	border-color: rgba(255, 255, 255, 0.1);
	color: var(--csg-header-text);
}

#top.csg-topbar .dropdown.open > .btn-link,
#top.csg-topbar .open > .btn-link {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(0, 188, 82, 0.35);
	color: var(--csg-header-text);
}

.csg-language-toggle {
	min-width: 88px;
}

.csg-language-label {
	color: var(--csg-header-subtle);
	font-size: 12px;
	font-weight: 700;
}

#top.csg-topbar .csg-lang-code {
	background: rgba(0, 188, 82, 0.16);
	border-color: rgba(0, 188, 82, 0.36);
	color: #ffffff;
	min-width: 30px;
	justify-content: center;
}

#form-language .dropdown-menu,
#form-currency .dropdown-menu,
#top-links .dropdown-menu {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 12px;
	box-shadow: 0 18px 38px rgba(0, 26, 52, 0.2);
	display: none;
	margin-top: 8px;
	min-width: 170px;
	padding: 8px;
}

#form-language .open > .dropdown-menu,
#form-currency .open > .dropdown-menu,
#top-links .open > .dropdown-menu {
	display: block;
}

#form-language .dropdown-menu .csg-lang-code {
	background: #eef8f2;
	border-color: #c8efd8;
	color: #006e2d;
}

#form-language .dropdown-menu .btn-link,
#form-currency .dropdown-menu .btn-link,
#top-links .dropdown-menu a {
	align-items: center;
	border-radius: 8px;
	color: #1b2432;
	display: flex;
	font-size: 13px;
	font-weight: 700;
	gap: 8px;
	line-height: 1.25;
	min-height: 36px;
	padding: 8px 10px;
	width: 100%;
}

.csg-header-shell {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0)),
		var(--csg-header-shell);
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	box-shadow: 0 16px 36px rgba(0, 26, 52, 0.18);
}

.csg-header-grid {
	align-items: center;
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(250px, 320px) minmax(380px, 1fr) auto;
	min-height: 92px;
	padding: 0;
}

.csg-brand-logo-link {
	gap: 14px;
}

.csg-brand-mark {
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0)),
		var(--csg-header-green);
	border-radius: 14px;
	box-shadow: 0 12px 28px rgba(0, 188, 82, 0.22);
	height: 48px;
	width: 48px;
}

.csg-brand-text {
	font-size: 27px;
	font-weight: 800;
	letter-spacing: 0;
}

.csg-header-search {
	position: relative;
}

.csg-search-label {
	color: rgba(255, 255, 255, 0.48);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.05em;
	margin-bottom: 7px;
	text-transform: uppercase;
}

#search.csg-search {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid var(--csg-header-outline);
	border-radius: 16px;
	display: flex;
	height: 54px;
	margin: 0;
	padding: 4px;
	width: 100%;
}

#search.csg-search .csg-search-input {
	background: transparent;
	border: 0;
	border-radius: 12px 0 0 12px;
	color: #ffffff;
	flex: 1 1 auto;
	font-size: 15px;
	font-weight: 600;
	height: 44px;
	min-height: 44px;
	padding: 0 16px;
}

#search.csg-search .input-group-btn {
	display: flex;
	width: auto;
}

#search.csg-search .csg-search-button {
	align-items: center;
	background: var(--csg-header-green);
	border: 0;
	border-radius: 12px;
	box-shadow: none;
	display: inline-flex;
	height: 44px;
	justify-content: center;
	min-width: 56px;
	padding: 0 18px;
}

#search.csg-search .csg-search-button:hover,
#search.csg-search .csg-search-button:focus {
	background: var(--csg-header-green-hover);
}

.csg-header-actions {
	align-items: stretch;
	display: grid;
	gap: 10px;
	grid-template-columns: 82px 82px minmax(188px, 220px);
}

.csg-header-action,
#cart.csg-cart > .csg-cart-button {
	align-items: center;
	border-radius: 16px;
	box-shadow: none;
	display: inline-flex;
	height: 60px;
	justify-content: center;
	text-decoration: none;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.csg-header-action {
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid var(--csg-header-outline);
	color: rgba(255, 255, 255, 0.82);
	flex-direction: column;
	font-size: 11px;
	font-weight: 800;
	gap: 6px;
	min-width: 0;
	padding: 8px 9px;
	width: 100%;
}

.csg-header-action i {
	color: #ffffff;
	font-size: 17px;
}

.csg-header-action span {
	max-width: 68px;
}

.csg-header-action:hover,
.csg-header-action:focus {
	background: rgba(0, 188, 82, 0.14);
	border-color: rgba(0, 188, 82, 0.42);
	color: #ffffff;
	transform: translateY(-1px);
}

.csg-header-cart {
	min-width: 0;
	width: 100%;
}

#cart.csg-cart {
	height: 60px;
	width: 100%;
}

#cart.csg-cart > .csg-cart-button {
	background: #ffffff;
	background-image: none;
	border: 1px solid #ffffff;
	color: #152033;
	font-size: 13px;
	font-weight: 800;
	gap: 9px;
	line-height: 1.15;
	min-height: 60px;
	padding: 0 16px;
	white-space: normal;
}

#cart.csg-cart > .csg-cart-button i {
	align-items: center;
	background: rgba(0, 188, 82, 0.12);
	border-radius: 999px;
	color: #006e2d;
	display: inline-flex;
	flex: 0 0 30px;
	height: 30px;
	justify-content: center;
	width: 30px;
}

#cart.csg-cart > .csg-cart-button #cart-total {
	display: block;
	overflow: hidden;
	text-align: left;
	text-overflow: ellipsis;
}

#cart.csg-cart.open > .csg-cart-button,
#cart.csg-cart > .csg-cart-button:hover,
#cart.csg-cart > .csg-cart-button:focus {
	background: #f4f7fd;
	border-color: #f4f7fd;
	transform: translateY(-1px);
}

#cart.csg-cart .dropdown-menu {
	display: none;
	margin-top: 12px;
	right: 0;
}

#cart.csg-cart.open .dropdown-menu {
	display: block;
}

#menu.csg-category-nav {
	background: var(--csg-header-floor);
	background-image: none;
	border: 0;
	border-radius: 0 0 16px 16px;
	box-shadow: 0 18px 34px rgba(0, 26, 52, 0.12);
	margin-bottom: 30px;
	min-height: 54px;
	padding: 0 16px;
}

#menu.csg-category-nav .navbar-collapse {
	padding: 0;
}

#menu.csg-category-nav .navbar-nav {
	align-items: center;
	display: flex;
	flex-wrap: nowrap;
	gap: 6px;
	min-height: 54px;
}

#menu.csg-category-nav .nav > li > a {
	border: 1px solid transparent;
	border-radius: 999px;
	color: rgba(255, 255, 255, 0.78);
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	padding: 12px 14px;
	white-space: nowrap;
}

#menu.csg-category-nav .nav > li > a:hover,
#menu.csg-category-nav .nav > li.open > a,
#menu.csg-category-nav .nav > li > a:focus {
	background: rgba(0, 188, 82, 0.14);
	border-color: rgba(0, 188, 82, 0.3);
	color: #ffffff;
}

#menu.csg-category-nav .dropdown-menu {
	background: #ffffff;
	border-radius: 14px;
	margin-top: 8px;
}

#menu.csg-category-nav .dropdown-inner a,
#menu.csg-category-nav .see-all {
	color: #1b2432;
}

@media (max-width: 1199px) {
	.csg-topbar-inner {
		grid-template-columns: 1fr auto;
	}

	.csg-topbar-links {
		grid-column: 1 / -1;
		width: 100%;
	}

	#top-links.csg-topbar-links ul {
		justify-content: flex-start;
	}

	.csg-header-grid {
		gap: 18px;
		grid-template-columns: minmax(220px, 280px) minmax(320px, 1fr);
		min-height: 0;
		padding: 18px 0;
	}

	.csg-header-actions {
		grid-column: 1 / -1;
		grid-template-columns: repeat(2, minmax(110px, 1fr)) minmax(220px, 1.5fr);
	}

	#menu.csg-category-nav .navbar-nav {
		flex-wrap: wrap;
		padding: 8px 0;
	}
}

@media (max-width: 767px) {
	.csg-topbar-inner {
		display: flex;
		padding-bottom: 10px;
		padding-top: 10px;
	}

	.csg-topbar-note {
		width: 100%;
	}

	.csg-topbar-tools {
		width: 100%;
	}

	#top-links.csg-topbar-links {
		width: 100%;
	}

	.csg-header-grid {
		display: flex;
		flex-direction: column;
		padding: 18px 0 16px;
	}

	.csg-brand-logo-link {
		justify-content: flex-start;
	}

	.csg-brand-mark {
		height: 44px;
		width: 44px;
	}

	.csg-brand-text {
		font-size: 24px;
	}

	.csg-search-label {
		display: none;
	}

	#search.csg-search {
		height: 50px;
	}

	#search.csg-search .csg-search-input,
	#search.csg-search .csg-search-button {
		height: 40px;
		min-height: 40px;
	}

	.csg-header-actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
	}

	.csg-header-action,
	#cart.csg-cart,
	#cart.csg-cart > .csg-cart-button {
		height: 54px;
		min-height: 54px;
	}

	.csg-header-cart {
		grid-column: 1 / -1;
	}

	#menu.csg-category-nav {
		border-radius: 0;
		margin-bottom: 20px;
		padding: 0 16px;
	}

	#menu.csg-category-nav .navbar-header {
		min-height: 52px;
	}

	#menu.csg-category-nav #category {
		line-height: 52px;
	}

	#menu.csg-category-nav .navbar-nav {
		align-items: stretch;
		display: block;
		min-height: 0;
		padding: 0 0 12px;
	}

	#menu.csg-category-nav .nav > li > a {
		border-radius: 10px;
		padding: 12px;
	}
}

/* Stage 8B.5: unified Stitch-style header structure */
.csg-header-unified {
	background:
		radial-gradient(circle at 20% 0%, rgba(0, 188, 82, 0.12), transparent 32%),
		linear-gradient(180deg, #1b2432 0%, #121a27 100%);
	border: 0;
	box-shadow: 0 20px 44px rgba(0, 26, 52, 0.22);
	color: #ffffff;
	padding: 0;
	position: relative;
	z-index: 30;
}

.csg-header-unified .container {
	max-width: 1470px;
	width: 100%;
}

.csg-header-container {
	padding-bottom: 14px;
	padding-top: 14px;
}

.csg-header-meta {
	align-items: center;
	display: flex;
	gap: 20px;
	justify-content: space-between;
	margin-bottom: 12px;
	min-height: 30px;
}

.csg-header-slogan {
	align-items: center;
	color: rgba(255, 255, 255, 0.7);
	display: inline-flex;
	font-size: 13px;
	font-weight: 600;
	gap: 8px;
	letter-spacing: 0;
	min-width: 0;
}

.csg-header-slogan i {
	align-items: center;
	background: rgba(0, 188, 82, 0.16);
	border: 1px solid rgba(0, 188, 82, 0.32);
	border-radius: 999px;
	color: #00bc52;
	display: inline-flex;
	flex: 0 0 24px;
	height: 24px;
	justify-content: center;
	width: 24px;
}

.csg-header-utilities {
	align-items: center;
	display: flex;
	gap: 8px;
	justify-content: flex-end;
	min-width: 0;
}

.csg-header-phone,
.csg-header-language,
.csg-header-currency {
	flex: 0 0 auto;
}

.csg-header-phone,
.csg-header-unified #form-language .btn-link,
.csg-header-unified #form-currency .btn-link {
	align-items: center;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 999px;
	box-shadow: none;
	color: rgba(255, 255, 255, 0.76);
	display: inline-flex;
	font-size: 12px;
	font-weight: 800;
	gap: 7px;
	min-height: 30px;
	padding: 6px 10px;
	text-shadow: none;
}

.csg-header-phone:hover,
.csg-header-phone:focus,
.csg-header-unified #form-language .btn-link:hover,
.csg-header-unified #form-language .btn-link:focus,
.csg-header-unified #form-currency .btn-link:hover,
.csg-header-unified #form-currency .btn-link:focus {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(0, 188, 82, 0.34);
	color: #ffffff;
	text-decoration: none;
}

.csg-header-unified #form-language,
.csg-header-unified #form-currency {
	margin: 0;
}

.csg-header-unified .csg-language-switcher,
.csg-header-unified .csg-header-language .pull-left,
.csg-header-unified .csg-header-currency .pull-left,
.csg-header-unified #form-currency {
	float: none;
}

.csg-header-unified .csg-language-label,
.csg-header-unified #form-currency .hidden-xs {
	display: none !important;
}

.csg-header-unified .csg-lang-code {
	background: rgba(0, 188, 82, 0.18);
	border-color: rgba(0, 188, 82, 0.34);
	color: #ffffff;
}

.csg-header-main {
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: minmax(230px, 300px) minmax(170px, 210px) minmax(340px, 1fr) auto;
	min-height: 68px;
}

.csg-header-brand {
	min-width: 0;
}

.csg-header-unified .csg-brand-logo {
	margin: 0;
}

.csg-header-unified .csg-brand-logo-link {
	align-items: center;
	display: inline-flex;
	gap: 13px;
	max-width: 100%;
}

.csg-header-unified .csg-brand-mark {
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0)),
		#00bc52;
	border-radius: 14px;
	box-shadow: 0 14px 30px rgba(0, 188, 82, 0.24);
	color: #ffffff;
	flex: 0 0 48px;
	height: 48px;
	width: 48px;
}

.csg-header-unified .csg-brand-text {
	color: #ffffff;
	font-size: 27px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1;
}

.csg-catalog-entry {
	align-items: center;
	background: #00bc52;
	border: 1px solid #00bc52;
	border-radius: 14px;
	box-shadow: 0 14px 28px rgba(0, 188, 82, 0.22);
	color: #ffffff;
	display: inline-flex;
	font-size: 14px;
	font-weight: 800;
	gap: 10px;
	height: 54px;
	justify-content: center;
	line-height: 1;
	padding: 0 18px;
	text-decoration: none;
	white-space: nowrap;
}

.csg-catalog-entry i {
	font-size: 15px;
}

.csg-catalog-entry:hover,
.csg-catalog-entry:focus {
	background: #08a94d;
	border-color: #08a94d;
	color: #ffffff;
	text-decoration: none;
}

.csg-header-unified .csg-header-search {
	min-width: 0;
	position: relative;
}

.csg-header-unified #search.csg-search {
	align-items: center;
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 14px;
	box-shadow: none;
	display: flex;
	height: 54px;
	margin: 0;
	padding: 4px;
	width: 100%;
}

.csg-header-unified #search.csg-search .csg-search-input {
	background: transparent;
	border: 0;
	border-radius: 10px 0 0 10px;
	color: #ffffff;
	flex: 1 1 auto;
	font-size: 15px;
	font-weight: 600;
	height: 44px;
	min-height: 44px;
	padding: 0 16px;
}

.csg-header-unified #search.csg-search .csg-search-input::placeholder {
	color: rgba(255, 255, 255, 0.52);
}

.csg-header-unified #search.csg-search .csg-search-input:focus {
	box-shadow: none;
}

.csg-header-unified #search.csg-search .input-group-btn {
	display: flex;
	width: auto;
}

.csg-header-unified #search.csg-search .csg-search-button {
	align-items: center;
	background: #00bc52;
	border: 0;
	border-radius: 11px;
	color: #ffffff;
	display: inline-flex;
	height: 44px;
	justify-content: center;
	min-width: 56px;
	padding: 0 18px;
}

.csg-header-unified #search.csg-search .csg-search-button:hover,
.csg-header-unified #search.csg-search .csg-search-button:focus {
	background: #08a94d;
}

.csg-header-unified .csg-header-actions {
	align-items: center;
	display: grid;
	gap: 8px;
	grid-template-columns: 72px 72px minmax(170px, 200px);
}

.csg-header-unified .csg-header-action,
.csg-header-unified #cart.csg-cart > .csg-cart-button {
	border-radius: 14px;
	height: 54px;
	min-height: 54px;
}

.csg-header-unified .csg-header-action {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.13);
	color: rgba(255, 255, 255, 0.82);
	font-size: 11px;
	font-weight: 800;
	gap: 5px;
	min-width: 0;
	padding: 7px 8px;
	width: 100%;
}

.csg-header-unified .csg-header-action i {
	color: #ffffff;
	font-size: 16px;
}

.csg-header-unified .csg-header-action span {
	max-width: 60px;
}

.csg-header-unified .csg-header-action:hover,
.csg-header-unified .csg-header-action:focus {
	background: rgba(0, 188, 82, 0.14);
	border-color: rgba(0, 188, 82, 0.38);
	color: #ffffff;
}

.csg-header-unified .csg-header-cart {
	min-width: 0;
	width: 100%;
}

.csg-header-unified #cart.csg-cart {
	height: 54px;
	margin: 0;
	width: 100%;
}

.csg-header-unified #cart.csg-cart > .csg-cart-button {
	background: #ffffff;
	background-image: none;
	border: 1px solid #ffffff;
	color: #152033;
	font-size: 13px;
	font-weight: 800;
	gap: 9px;
	line-height: 1.15;
	padding: 0 14px;
	text-align: left;
	text-shadow: none;
	white-space: normal;
}

.csg-header-unified #cart.csg-cart > .csg-cart-button i {
	align-items: center;
	background: rgba(0, 188, 82, 0.12);
	border-radius: 999px;
	color: #006e2d;
	display: inline-flex;
	flex: 0 0 30px;
	height: 30px;
	justify-content: center;
	width: 30px;
}

.csg-header-unified #cart.csg-cart > .csg-cart-button #cart-total {
	overflow: hidden;
	text-overflow: ellipsis;
}

.csg-header-nav-wrap {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(7, 12, 20, 0.34);
}

.csg-header-nav-wrap > .container {
	max-width: 1470px;
	width: 100%;
}

.csg-header-nav-wrap #menu.csg-category-nav {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin: 0;
	min-height: 50px;
	padding: 0;
}

.csg-header-nav-wrap #menu.csg-category-nav .navbar-collapse {
	padding: 0;
}

.csg-header-nav-wrap #menu.csg-category-nav .navbar-nav {
	align-items: center;
	display: flex;
	flex-wrap: nowrap;
	gap: 6px;
	min-height: 50px;
}

.csg-header-nav-wrap #menu.csg-category-nav .nav > li > a {
	border: 1px solid transparent;
	border-radius: 999px;
	color: rgba(255, 255, 255, 0.78);
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	padding: 10px 13px;
	white-space: nowrap;
}

.csg-header-nav-wrap #menu.csg-category-nav .nav > li > a:hover,
.csg-header-nav-wrap #menu.csg-category-nav .nav > li.open > a,
.csg-header-nav-wrap #menu.csg-category-nav .nav > li > a:focus {
	background: rgba(0, 188, 82, 0.14);
	border-color: rgba(0, 188, 82, 0.3);
	color: #ffffff;
}

.csg-header-nav-wrap #menu.csg-category-nav .dropdown-menu {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 14px;
	box-shadow: 0 18px 38px rgba(0, 26, 52, 0.22);
	margin-top: 8px;
	padding: 8px;
}

.csg-header-nav-wrap #menu.csg-category-nav .dropdown-inner a,
.csg-header-nav-wrap #menu.csg-category-nav .see-all {
	color: #1b2432;
}

@media (max-width: 1299px) {
	.csg-header-main {
		grid-template-columns: minmax(220px, 280px) minmax(150px, 190px) minmax(280px, 1fr);
	}

	.csg-header-unified .csg-header-actions {
		grid-column: 1 / -1;
		grid-template-columns: repeat(2, minmax(120px, 1fr)) minmax(220px, 1.5fr);
	}
}

@media (max-width: 991px) {
	.csg-header-meta {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	.csg-header-utilities {
		flex-wrap: wrap;
		justify-content: flex-start;
		width: 100%;
	}

	.csg-header-main {
		grid-template-columns: 1fr;
	}

	.csg-catalog-entry,
	.csg-header-unified .csg-header-search,
	.csg-header-unified .csg-header-actions {
		width: 100%;
	}
}

@media (max-width: 767px) {
	.csg-header-container {
		padding-left: 16px;
		padding-right: 16px;
	}

	.csg-header-slogan {
		font-size: 12px;
	}

	.csg-header-unified .csg-brand-mark {
		flex-basis: 44px;
		height: 44px;
		width: 44px;
	}

	.csg-header-unified .csg-brand-text {
		font-size: 24px;
	}

	.csg-header-unified .csg-header-actions {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.csg-header-unified .csg-header-cart {
		grid-column: 1 / -1;
	}

	.csg-header-nav-wrap #menu.csg-category-nav .navbar-header {
		min-height: 50px;
		padding-left: 16px;
		padding-right: 16px;
	}

	.csg-header-nav-wrap #menu.csg-category-nav #category {
		line-height: 50px;
	}

	.csg-header-nav-wrap #menu.csg-category-nav .navbar-collapse {
		border-top: 1px solid rgba(255, 255, 255, 0.08);
		padding-left: 16px;
		padding-right: 16px;
	}

	.csg-header-nav-wrap #menu.csg-category-nav .navbar-nav {
		align-items: stretch;
		display: block;
		padding: 8px 0 14px;
	}

	.csg-header-nav-wrap #menu.csg-category-nav .nav > li > a {
		border-radius: 10px;
		padding: 12px;
	}
}

/* Stage 8B.6: catalog dropdown and header utility fixes */
.csg-header-unified {
	z-index: 90;
}

.csg-header-main {
	grid-template-columns: minmax(230px, 300px) minmax(190px, 230px) minmax(340px, 1fr) auto;
}

.csg-catalog-menu {
	position: relative;
	z-index: 95;
}

.csg-catalog-menu .csg-catalog-entry {
	cursor: pointer;
	width: 100%;
}

.csg-catalog-entry .fa-angle-down {
	font-size: 14px;
	margin-left: 2px;
	transition: transform 0.16s ease;
}

.csg-catalog-menu:hover .csg-catalog-entry .fa-angle-down,
.csg-catalog-menu:focus-within .csg-catalog-entry .fa-angle-down {
	transform: rotate(180deg);
}

.csg-catalog-dropdown {
	background:
		linear-gradient(145deg, rgba(0, 188, 82, 0.08), transparent 38%),
		#111a29;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	box-shadow: 0 24px 54px rgba(0, 14, 28, 0.4);
	left: 0;
	min-width: 360px;
	opacity: 0;
	padding: 12px;
	position: absolute;
	top: calc(100% + 12px);
	transform: translateY(8px);
	transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
	visibility: hidden;
	width: min(520px, 92vw);
}

.csg-catalog-menu:hover .csg-catalog-dropdown,
.csg-catalog-menu:focus-within .csg-catalog-dropdown {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
}

.csg-catalog-dropdown::before {
	border-bottom: 9px solid #111a29;
	border-left: 9px solid transparent;
	border-right: 9px solid transparent;
	content: "";
	left: 30px;
	position: absolute;
	top: -9px;
}

.csg-catalog-dropdown .container {
	max-width: none;
	padding: 0;
	width: 100%;
}

.csg-catalog-dropdown #menu.csg-category-nav {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin: 0;
	min-height: 0;
	padding: 0;
}

.csg-catalog-dropdown #menu.csg-category-nav .navbar-header {
	display: none;
}

.csg-catalog-dropdown #menu.csg-category-nav .navbar-collapse {
	border: 0;
	box-shadow: none;
	display: block !important;
	height: auto !important;
	overflow: visible !important;
	padding: 0;
}

.csg-catalog-dropdown #menu.csg-category-nav .navbar-nav {
	display: grid;
	float: none;
	gap: 8px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	min-height: 0;
	width: 100%;
}

.csg-catalog-dropdown #menu.csg-category-nav .navbar-nav > li {
	float: none;
	position: relative;
	width: 100%;
}

.csg-catalog-dropdown #menu.csg-category-nav .nav > li > a {
	align-items: center;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.11);
	border-radius: 13px;
	color: rgba(255, 255, 255, 0.86);
	display: flex;
	font-size: 13px;
	font-weight: 800;
	gap: 10px;
	line-height: 1.25;
	min-height: 46px;
	padding: 11px 12px;
	text-shadow: none;
	white-space: normal;
}

.csg-catalog-dropdown #menu.csg-category-nav .nav > li > a::before {
	background: rgba(0, 188, 82, 0.18);
	border: 1px solid rgba(0, 188, 82, 0.32);
	border-radius: 999px;
	color: #00bc52;
	content: "\f105";
	display: inline-flex;
	flex: 0 0 24px;
	font-family: FontAwesome;
	height: 24px;
	justify-content: center;
	line-height: 22px;
	width: 24px;
}

.csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:hover,
.csg-catalog-dropdown #menu.csg-category-nav .nav > li.open > a,
.csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:focus {
	background: rgba(0, 188, 82, 0.15);
	border-color: rgba(0, 188, 82, 0.42);
	color: #ffffff;
}

.csg-catalog-dropdown #menu.csg-category-nav .dropdown-menu {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.12);
	border-radius: 14px;
	box-shadow: 0 18px 38px rgba(0, 14, 28, 0.28);
	margin-top: 8px;
	padding: 8px;
}

.csg-catalog-dropdown #menu.csg-category-nav .dropdown-inner {
	display: block;
}

.csg-catalog-dropdown #menu.csg-category-nav .dropdown-inner ul {
	display: block;
}

.csg-catalog-dropdown #menu.csg-category-nav .dropdown-inner a,
.csg-catalog-dropdown #menu.csg-category-nav .see-all {
	border-radius: 9px;
	color: #172233;
	font-size: 13px;
	font-weight: 700;
	padding: 8px 10px;
}

.csg-catalog-dropdown #menu.csg-category-nav .dropdown-inner a:hover,
.csg-catalog-dropdown #menu.csg-category-nav .see-all:hover,
.csg-catalog-dropdown #menu.csg-category-nav .see-all:focus {
	background: #00bc52;
	background-image: none;
	color: #ffffff;
}

.csg-header-unified .csg-header-currency:empty {
	display: none;
}

.csg-header-unified .csg-currency-static {
	align-items: center;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 999px;
	color: rgba(255, 255, 255, 0.76);
	display: inline-flex;
	font-size: 12px;
	font-weight: 800;
	min-height: 30px;
	padding: 6px 10px;
}

.csg-header-unified #form-currency .dropdown-menu {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 12px;
	box-shadow: 0 18px 38px rgba(0, 14, 28, 0.22);
	min-width: 180px;
	padding: 8px;
}

.csg-header-unified #form-currency .dropdown-menu .btn-link {
	background: transparent;
	border: 0;
	border-radius: 8px;
	box-shadow: none;
	color: #172233;
	display: block;
	font-size: 13px;
	font-weight: 700;
	min-height: 34px;
	padding: 8px 10px;
	text-align: left;
	width: 100%;
}

.csg-header-unified #form-currency .dropdown-menu .btn-link:hover,
.csg-header-unified #form-currency .dropdown-menu .btn-link:focus {
	background: #00bc52;
	color: #ffffff;
}

@media (min-width: 768px) {
	.csg-catalog-dropdown #menu.csg-category-nav .dropdown:hover .dropdown-menu {
		display: block;
	}
}

@media (max-width: 1299px) {
	.csg-header-main {
		grid-template-columns: minmax(220px, 280px) minmax(180px, 220px) minmax(280px, 1fr);
	}
}

@media (max-width: 991px) {
	.csg-catalog-menu {
		width: 100%;
	}

	.csg-catalog-dropdown {
		width: min(560px, 100%);
	}
}

@media (max-width: 767px) {
	.csg-catalog-dropdown {
		border-radius: 14px;
		margin-top: 10px;
		min-width: 0;
		opacity: 1;
		position: static;
		transform: none;
		visibility: visible;
		width: 100%;
	}

	.csg-catalog-dropdown::before {
		display: none;
	}

	.csg-catalog-dropdown #menu.csg-category-nav .navbar-nav {
		grid-template-columns: 1fr;
	}
}

/* Stage 8H: final Stitch header implementation */
.csg-final-header {
	background: #ffffff;
	border: 0;
	box-shadow: 0 8px 26px rgba(0, 26, 52, 0.08);
	color: #181c20;
	padding: 0;
	position: sticky;
	top: 0;
	z-index: 120;
}

.csg-final-container,
.csg-final-actionbar-inner {
	max-width: 1470px;
	width: 100%;
}

.csg-final-top {
	background: #ffffff;
	border-bottom: 1px solid rgba(0, 26, 52, 0.06);
}

.csg-final-utility {
	align-items: center;
	display: flex;
	justify-content: flex-end;
	min-height: 30px;
}

.csg-final-service-links,
.csg-final-locale {
	align-items: center;
	display: flex;
	gap: 18px;
}

.csg-final-service-links a {
	color: #181c20;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
}

.csg-final-service-links a:hover,
.csg-final-service-links a:focus {
	color: #006e2d;
}

.csg-final-locale {
	gap: 8px;
	margin-left: auto;
	min-width: 0;
}

.csg-final-locale .csg-final-service-links {
	flex: 0 1 auto;
	gap: 14px;
	min-width: 0;
}

.csg-final-header .csg-header-language,
.csg-final-header .csg-header-currency {
	flex: 0 0 auto;
}

.csg-final-header .csg-language-switcher,
.csg-final-header .csg-header-language .pull-left,
.csg-final-header .csg-header-currency .pull-left,
.csg-final-header #form-currency {
	float: none;
}

.csg-final-header #form-language,
.csg-final-header #form-currency {
	margin: 0;
}

.csg-language-pills {
	align-items: center;
	background: #f1f4fa;
	border: 1px solid rgba(0, 26, 52, 0.08);
	border-radius: 999px;
	display: flex;
	height: 26px;
	padding: 2px;
}

.csg-language-pills .btn-link {
	align-items: center;
	border: 0;
	border-radius: 999px;
	box-shadow: none;
	color: #181c20;
	display: inline-flex;
	font-size: 10px;
	font-weight: 700;
	height: 20px;
	justify-content: center;
	line-height: 1;
	min-height: 20px;
	padding: 0 9px;
	text-decoration: none;
}

.csg-language-pills .btn-link.active,
.csg-language-pills .btn-link:hover,
.csg-language-pills .btn-link:focus {
	background: #ffffff;
	color: #006e2d;
}

.csg-final-header #form-currency .btn-link,
.csg-final-header .csg-currency-static {
	align-items: center;
	background: #f1f4fa;
	border: 1px solid rgba(0, 26, 52, 0.08);
	border-radius: 999px;
	box-shadow: none;
	color: #181c20;
	display: inline-flex;
	font-size: 11px;
	font-weight: 700;
	gap: 5px;
	height: 26px;
	justify-content: center;
	min-height: 26px;
	padding: 0 10px;
	text-shadow: none;
}

.csg-final-header #form-currency .btn-link:hover,
.csg-final-header #form-currency .btn-link:focus {
	background: #ffffff;
	border-color: rgba(0, 188, 82, 0.38);
	color: #006e2d;
}

.csg-final-header #form-currency .dropdown-menu {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 12px;
	box-shadow: 0 18px 38px rgba(0, 26, 52, 0.16);
	min-width: 176px;
	padding: 8px;
}

.csg-final-header #form-currency .dropdown-menu .btn-link {
	border-radius: 8px;
	color: #181c20;
	display: block;
	font-size: 13px;
	min-height: 34px;
	padding: 8px 10px;
	text-align: left;
	width: 100%;
}

.csg-final-header #form-currency .dropdown-menu .btn-link:hover,
.csg-final-header #form-currency .dropdown-menu .btn-link:focus {
	background: #00bc52;
	color: #ffffff;
}

.csg-final-brand-row {
	align-items: center;
	display: grid;
	gap: 22px;
	grid-template-columns: minmax(190px, 220px) minmax(440px, 1fr) minmax(280px, 360px);
	min-height: 60px;
}

.csg-final-header #logo.csg-brand-logo,
.csg-final-header #logo {
	margin: 0;
}

.csg-final-header .csg-brand-logo-link {
	align-items: center;
	color: #181c20;
	display: inline-flex;
	gap: 8px;
	text-decoration: none;
}

.csg-final-header .csg-brand-logo-img {
	display: block;
	filter: none;
	height: auto;
	max-height: 52px;
	max-width: 220px;
	object-fit: contain;
}

html[data-csg-theme="dark"] .csg-final-header .csg-brand-logo-img {
	filter: brightness(0) invert(1);
}

.csg-final-header .csg-brand-mark {
	align-items: center;
	background: #00bc52;
	border-radius: 8px;
	box-shadow: none;
	color: #ffffff;
	display: inline-flex;
	flex: 0 0 31px;
	font-size: 11px;
	height: 31px;
	justify-content: center;
	width: 31px;
}

.csg-final-header .csg-brand-mark i {
	font-size: 11px;
	margin-left: 1px;
}

.csg-final-header .csg-brand-text {
	color: #181c20;
	font-size: 20px;
	font-weight: 800;
	line-height: 1;
}

.csg-final-header .csg-brand-text span {
	color: #00bc52;
}

.csg-final-promo-nav {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	min-width: 0;
}

.csg-final-promo-nav a {
	color: #181c20;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
	position: relative;
	white-space: nowrap;
}

.csg-final-promo-nav a:hover,
.csg-final-promo-nav a:focus {
	color: #006e2d;
}

.csg-final-sale {
	align-items: center;
	background: #e6746d;
	border-radius: 999px;
	color: #ffffff;
	display: inline-flex;
	font-size: 8px;
	font-weight: 800;
	height: 22px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: -20px;
	top: -22px;
	width: 22px;
}

.csg-final-contacts {
	align-items: center;
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(120px, 1fr) auto;
	justify-self: end;
}

.csg-final-hours {
	color: #565f6f;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.35;
	text-align: right;
}

.csg-final-phones {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.csg-final-phones a {
	color: #181c20;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.1;
	white-space: nowrap;
}

.csg-final-actionbar {
	background: #1b2432;
}

#common-home.csg-home {
	margin-top: 14px;
}

.csg-final-actionbar-inner {
	align-items: center;
	display: flex;
	gap: 12px;
	flex-wrap: nowrap;
	min-height: 50px;
	overflow: visible;
}

.csg-final-header .csg-catalog-menu {
	flex: 0 0 280px;
	position: relative;
	z-index: 125;
}

.csg-final-header .csg-catalog-entry {
	align-items: center;
	background: #00bc52;
	border: 0;
	border-radius: 7px;
	box-shadow: none;
	color: #ffffff;
	cursor: pointer;
	display: grid;
	font-size: 12px;
	font-weight: 800;
	gap: 9px;
	grid-template-columns: 20px 1fr 14px;
	height: 34px;
	justify-content: stretch;
	line-height: 1.05;
	padding: 0 12px;
	text-align: left;
	width: 100%;
}

.csg-final-header .csg-catalog-entry i {
	font-size: 14px;
	text-align: center;
}

.csg-final-header .csg-catalog-entry span {
	white-space: normal;
}

.csg-final-header .csg-catalog-entry:hover,
.csg-final-header .csg-catalog-entry:focus {
	background: #08a94d;
	color: #ffffff;
}

.csg-final-header .csg-catalog-dropdown {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 16px;
	box-shadow: 0 24px 56px rgba(0, 26, 52, 0.22);
	left: 0;
	min-width: 420px;
	opacity: 0;
	padding: 12px;
	position: absolute;
	top: calc(100% + 10px);
	transform: translateY(8px);
	transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
	visibility: hidden;
	width: min(560px, 92vw);
}

.csg-final-header .csg-catalog-menu:hover .csg-catalog-dropdown,
.csg-final-header .csg-catalog-menu:focus-within .csg-catalog-dropdown {
	opacity: 1;
	transform: translateY(0);
	visibility: visible;
}

.csg-final-header .csg-catalog-dropdown::before {
	border-bottom: 9px solid #ffffff;
	border-left: 9px solid transparent;
	border-right: 9px solid transparent;
	content: "";
	left: 24px;
	position: absolute;
	top: -9px;
}

.csg-final-header .csg-catalog-dropdown .container {
	max-width: none;
	padding: 0;
	width: 100%;
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin: 0;
	min-height: 0;
	padding: 0;
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .navbar-header {
	display: none;
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .navbar-collapse {
	border: 0;
	box-shadow: none;
	display: block !important;
	height: auto !important;
	overflow: visible !important;
	padding: 0;
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .navbar-nav {
	display: flex;
	float: none;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	min-height: 0;
	width: 100%;
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .navbar-nav::before,
.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .navbar-nav::after {
	content: none;
	display: none;
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .navbar-nav > li {
	flex: 0 0 calc(50% - 4px);
	float: none;
	width: calc(50% - 4px);
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a {
	align-items: center;
	background: #f7f9ff;
	border: 1px solid rgba(0, 26, 52, 0.08);
	border-radius: 12px;
	color: #181c20;
	display: flex;
	font-size: 13px;
	font-weight: 800;
	gap: 10px;
	line-height: 1.2;
	min-height: 44px;
	padding: 10px 12px;
	text-shadow: none;
	white-space: normal;
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a::before {
	align-items: center;
	background: rgba(0, 188, 82, 0.1);
	border-radius: 999px;
	color: #006e2d;
	content: "\f105";
	display: inline-flex;
	flex: 0 0 24px;
	font-family: FontAwesome;
	height: 24px;
	justify-content: center;
	width: 24px;
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:hover,
.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:focus {
	background: #00bc52;
	border-color: #00bc52;
	color: #ffffff;
}

.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:hover::before,
.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:focus::before {
	background: rgba(255, 255, 255, 0.2);
	color: #ffffff;
}

.csg-final-header .csg-header-search {
	flex: 1 1 auto;
	min-width: 0;
}

.csg-final-header #search.csg-search {
	align-items: stretch;
	background: #29394a;
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 5px;
	display: flex;
	height: 34px;
	margin: 0;
	padding: 0;
	width: 100%;
}

.csg-final-header #search.csg-search .csg-search-input {
	background: transparent;
	border: 0;
	border-radius: 5px 0 0 5px;
	box-shadow: none;
	color: #ffffff;
	flex: 1 1 auto;
	font-size: 13px;
	font-weight: 600;
	height: 32px;
	min-height: 32px;
	padding: 0 14px;
}

.csg-final-header #search.csg-search .csg-search-input::placeholder {
	color: rgba(255, 255, 255, 0.72);
}

.csg-final-header #search.csg-search .csg-search-input:focus {
	box-shadow: 0 0 0 2px rgba(0, 188, 82, 0.26);
}

.csg-final-header #search.csg-search .input-group-btn {
	display: flex;
	width: auto;
}

.csg-final-header #search.csg-search .csg-search-button {
	align-items: center;
	background: #00bc52;
	border: 0;
	border-radius: 0 5px 5px 0;
	color: #ffffff;
	display: inline-flex;
	height: 34px;
	justify-content: center;
	min-height: 34px;
	min-width: 40px;
	padding: 0 13px;
	text-shadow: none;
}

.csg-final-header #search.csg-search .csg-search-button:hover,
.csg-final-header #search.csg-search .csg-search-button:focus {
	background: #08a94d;
}

.csg-final-header .csg-header-actions {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	flex-shrink: 0;
	gap: 12px;
	justify-content: flex-end;
	margin-left: 10px;
	min-height: 34px;
	min-width: 0;
	overflow: visible;
	padding-left: 0;
	white-space: nowrap;
}

.csg-final-header .csg-header-actions-tools {
	align-items: center;
	display: inline-flex;
	flex: 0 0 auto;
	flex-shrink: 0;
	gap: 10px;
}

.csg-final-header .csg-header-account {
	align-items: center;
	color: #ffffff;
	display: inline-flex;
	flex: 0 0 auto;
	flex-shrink: 0;
	gap: 8px;
	min-height: 34px;
	text-decoration: none;
}

.csg-final-header .csg-header-account-icon {
	align-items: center;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, 0.36);
	border-radius: 999px;
	display: inline-flex;
	flex: 0 0 31px;
	height: 31px;
	justify-content: center;
	width: 31px;
}

.csg-final-header .csg-header-account-text {
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	font-size: 10px;
	font-weight: 600;
	gap: 1px;
	line-height: 1.12;
	max-width: 108px;
	min-width: 0;
	white-space: normal;
}

.csg-final-header .csg-header-account-greeting {
	color: rgba(255, 255, 255, 0.58);
	display: block;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.1;
}

.csg-final-header .csg-header-account-login {
	color: #ffffff;
	display: block;
	font-size: 10px;
	font-weight: 700;
	line-height: 1.12;
	text-decoration: underline;
	text-decoration-color: rgba(255, 255, 255, 0.72);
	text-decoration-style: dotted;
	text-underline-offset: 2px;
}

.csg-final-header .csg-header-actions-divider {
	background: rgba(255, 255, 255, 0.14);
	display: inline-block;
	height: 30px;
	width: 1px;
}

.csg-final-header .csg-header-action {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 999px;
	color: #ffffff;
	display: inline-flex;
	font-size: 12px;
	font-weight: 700;
	gap: 0;
	height: 30px;
	justify-content: center;
	min-width: 26px;
	padding: 0;
	text-decoration: none;
	width: 26px;
}

/* Закладки: иконка и счётчик в одну линию (перебивает legacy flex-direction: column) */
.csg-final-header .csg-header-action.csg-header-wishlist {
	align-items: center;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 2px;
	min-width: auto;
	width: auto;
}

.csg-final-header .csg-header-action.csg-header-wishlist .csg-header-badge {
	display: inline-flex;
	flex: 0 0 auto;
	max-width: none;
	overflow: visible;
	text-overflow: clip;
	white-space: nowrap;
}

.csg-final-header .csg-ref-icon {
	display: block;
	fill: none;
	height: 18px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	width: 18px;
}

.csg-final-header .csg-header-account-icon .csg-ref-icon {
	height: 16px;
	width: 16px;
}

.csg-final-header .csg-header-account:hover,
.csg-final-header .csg-header-account:focus,
.csg-final-header .csg-header-action:hover,
.csg-final-header .csg-header-action:focus {
	background: rgba(255, 255, 255, 0.08);
	color: #ffffff;
}

.csg-final-header .csg-header-cart {
	align-items: center;
	display: inline-flex;
	flex: 0 0 auto;
	justify-content: center;
	max-width: none;
	min-width: 0;
	width: auto;
}

.csg-final-header #cart.csg-cart {
	display: inline-flex;
	float: none;
	height: 30px;
	margin: 0;
	max-width: none;
	min-width: 0;
	position: relative;
	vertical-align: middle;
	width: auto;
}

.csg-final-header #cart.csg-cart > .csg-cart-button {
	align-items: center;
	background: transparent;
	background-image: none;
	border: 0;
	border-radius: 999px;
	box-shadow: none;
	color: #ffffff;
	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	font-size: 12px;
	font-weight: 700;
	gap: 4px;
	height: 30px;
	justify-content: center;
	line-height: 1;
	margin: 0;
	max-width: none;
	min-height: 30px;
	min-width: auto;
	overflow: visible;
	padding: 0 2px;
	position: relative;
	text-shadow: none;
	white-space: nowrap;
	width: auto;
}

.csg-final-header #cart.csg-cart > .csg-cart-button .csg-cart-icon-wrap {
	align-items: center;
	display: inline-flex;
	flex: 0 0 auto;
	gap: 1px;
	line-height: 1;
	position: relative;
}

.csg-final-header #cart.csg-cart > .csg-cart-button .csg-ref-icon {
	color: #ffffff;
	flex: 0 0 auto;
	height: 18px;
	width: 18px;
}

.csg-final-header #cart.csg-cart > .csg-cart-button .csg-cart-label {
	display: none;
}

.csg-final-header #cart.csg-cart > .csg-cart-button #cart-total {
	background: transparent;
	border-radius: 0;
	box-shadow: none;
	color: #ffffff;
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 12px;
	font-weight: 700;
	height: auto;
	line-height: 1;
	margin-left: 0;
	max-width: none;
	min-width: 0;
	overflow: visible;
	padding: 0;
	position: static;
	right: auto;
	text-align: left;
	text-overflow: clip;
	top: auto;
	white-space: nowrap;
}

.csg-final-header #cart.csg-cart > .csg-cart-button:hover,
.csg-final-header #cart.csg-cart > .csg-cart-button:focus,
.csg-final-header #cart.csg-cart.open > .csg-cart-button {
	background: rgba(255, 255, 255, 0.08);
	border: 0;
	color: #ffffff;
}

.csg-final-header .csg-header-action .sr-only,
.csg-final-header #cart.csg-cart > .csg-cart-button .sr-only {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.csg-final-header #cart .dropdown-menu {
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 14px;
	box-shadow: 0 24px 56px rgba(0, 26, 52, 0.22);
	margin-top: 8px;
}

/* Мини-корзина: все стили в stylesheet/csg-mini-cart.css (подключается из header.twig). */
@media (max-width: 1199px) {
	.csg-final-brand-row {
		gap: 18px;
		grid-template-columns: minmax(180px, 210px) minmax(360px, 1fr) minmax(220px, 300px);
	}

	.csg-final-promo-nav {
		gap: 14px;
	}

	.csg-final-contacts {
		grid-column: auto;
		grid-template-columns: minmax(110px, 1fr) auto;
		justify-self: end;
	}

	.csg-final-actionbar-inner {
		display: flex;
		flex-wrap: nowrap;
	}

	.csg-final-header .csg-header-actions {
		justify-content: flex-end;
	}
}

@media (max-width: 991px) {
	.csg-final-brand-row {
		grid-template-columns: minmax(180px, 220px) 1fr;
	}

	.csg-final-promo-nav {
		grid-column: 1 / -1;
		order: 3;
	}

	.csg-final-contacts {
		grid-template-columns: 1fr auto;
	}

	.csg-final-actionbar-inner {
		display: flex;
		flex-wrap: nowrap;
	}

	.csg-final-header .csg-header-actions {
		flex: 0 0 auto;
	}
}

@media (min-width: 768px) {
	.csg-final-actionbar-inner {
		display: flex !important;
		flex-wrap: nowrap !important;
	}

	.csg-final-header .csg-catalog-menu {
		flex: 0 0 280px !important;
		width: 280px !important;
	}

	.csg-final-header .csg-header-search {
		flex: 1 1 auto !important;
		min-width: 180px;
	}

	.csg-final-header .csg-header-actions {
		display: flex !important;
		flex: 0 0 auto !important;
		flex-shrink: 0 !important;
		font-size: inherit;
		grid-template-columns: none !important;
		line-height: inherit;
		margin-left: 0;
	}

	.csg-final-header .csg-header-account,
	.csg-final-header .csg-header-compare,
	.csg-final-header .csg-header-wishlist,
	.csg-final-header .csg-header-cart {
		background: transparent;
		border: 0;
		border-radius: 0;
		height: auto;
		min-height: 0;
		width: auto;
	}

	.csg-final-header .csg-header-actions-divider {
		display: inline-block;
	}

	.csg-final-header .csg-header-badge,
	.csg-final-header #cart.csg-cart > .csg-cart-button #cart-total {
		position: static;
	}

	/* Десктоп: счётчик закладок справа от иконки, как у корзины */
	.csg-final-header .csg-header-action.csg-header-wishlist {
		flex-direction: row !important;
		gap: 2px;
		min-width: auto;
		width: auto;
	}

	.csg-final-header .csg-header-wishlist .csg-ref-icon {
		flex: 0 0 auto;
	}

	.csg-final-header .csg-header-wishlist .csg-header-badge {
		background: transparent;
		border-radius: 0;
		box-shadow: none;
		color: #ffffff;
		display: inline-flex;
		flex: 0 0 auto;
		font-size: 12px;
		font-weight: 700;
		height: auto;
		line-height: 1;
		margin-left: 2px;
		min-width: 0;
		padding: 0;
		position: static;
		right: auto;
		top: auto;
	}

	.csg-final-header #cart.csg-cart > .csg-cart-button {
		flex-direction: row;
		gap: 4px;
		min-width: auto;
		overflow: visible;
		width: auto;
	}

	.csg-final-header #cart.csg-cart > .csg-cart-button #cart-total {
		background: transparent;
		border-radius: 0;
		color: #ffffff;
		display: inline-flex;
		font-size: 12px;
		margin-left: 0;
		max-width: none;
		min-width: 0;
		overflow: visible;
		padding: 0;
		position: static;
	}

	.csg-final-header .csg-header-badge:empty {
		display: none;
	}
}

@media (max-width: 767px) {
	.csg-final-header {
		position: relative;
	}

	.csg-final-brand-row,
	.csg-final-actionbar-inner {
		align-items: stretch;
		display: flex;
		flex-direction: column;
		gap: 12px;
		padding-left: 16px;
		padding-right: 16px;
	}

	.csg-final-utility {
		align-items: center;
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		gap: 8px 12px;
		justify-content: space-between;
		min-height: 30px;
		padding: 8px 16px;
	}

	.csg-final-service-links {
		flex: 0 1 auto;
		flex-wrap: nowrap;
		gap: 12px;
		justify-content: flex-start;
		min-width: 0;
	}

	.csg-final-locale {
		flex: 0 0 auto;
		flex-wrap: nowrap;
		gap: 8px;
		justify-content: flex-end;
		margin-left: auto;
	}

	.csg-final-header #form-currency .hidden-xs,
	.csg-final-header #form-currency .hidden-sm,
	.csg-final-header #form-currency .hidden-md {
		display: none !important;
	}

	.csg-final-promo-nav {
		flex-wrap: wrap;
		justify-content: center;
	}

	.csg-final-brand-row {
		padding-bottom: 12px;
	}

	.csg-final-header .csg-brand-logo-link {
		justify-content: center;
	}

	.csg-final-promo-nav {
		gap: 12px;
	}

	.csg-final-contacts {
		display: block;
		text-align: center;
	}

	.csg-final-hours {
		margin-bottom: 8px;
		text-align: center;
	}

	.csg-final-phones {
		align-items: center;
	}

	.csg-final-actionbar-inner {
		padding-bottom: 12px;
		padding-top: 12px;
	}

	.csg-final-header .csg-catalog-menu {
		flex: 0 0 auto;
		width: 100%;
	}

	.csg-final-header .csg-catalog-dropdown {
		display: none;
		margin-top: 10px;
		min-width: 0;
		opacity: 0;
		position: absolute;
		transform: translateY(8px);
		visibility: hidden;
		width: 100%;
	}

	.csg-final-header .csg-catalog-menu:hover .csg-catalog-dropdown {
		display: block;
		opacity: 1;
		position: static;
		transform: none;
		visibility: visible;
	}

	.csg-final-header .csg-catalog-dropdown::before {
		display: none;
	}

	.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .navbar-nav {
		display: flex;
		flex-direction: column;
	}

	.csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .navbar-nav > li {
		flex-basis: 100%;
		width: 100%;
	}

	/* Мобильная панель: 4 иконки в один ряд (кабинет / сравнение / закладки / корзина) */
	.csg-final-header .csg-header-actions {
		align-items: stretch;
		display: grid !important;
		gap: 6px;
		grid-auto-flow: column;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		grid-template-rows: 40px;
		height: 40px;
		margin: 0;
		max-width: 100%;
		min-height: 40px;
		padding: 0;
		width: 100%;
	}

	.csg-final-header .csg-header-actions-divider {
		display: none;
	}

	.csg-final-header .csg-header-account,
	.csg-final-header .csg-header-compare,
	.csg-final-header .csg-header-wishlist,
	.csg-final-header .csg-header-action.csg-header-compare,
	.csg-final-header .csg-header-action.csg-header-wishlist,
	.csg-final-header .csg-header-action.csg-cart-button,
	.csg-final-header #cart.csg-cart > .csg-cart-button {
		align-items: center;
		background: linear-gradient(180deg, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0.06) 100%);
		border: 1px solid rgba(255, 255, 255, 0.24);
		border-radius: 10px;
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
		box-sizing: border-box;
		color: #ffffff;
		display: flex;
		flex-direction: row;
		grid-column: auto !important;
		grid-row: 1;
		height: 40px;
		justify-content: center;
		margin: 0;
		min-height: 40px;
		min-width: 0;
		overflow: visible;
		padding: 0;
		position: relative;
		text-decoration: none;
		transition: background 0.16s ease, border-color 0.16s ease, transform 0.12s ease;
		width: 100%;
	}

	.csg-final-header .csg-header-account:active,
	.csg-final-header .csg-header-compare:active,
	.csg-final-header .csg-header-wishlist:active,
	.csg-final-header .csg-header-action.csg-cart-button:active,
	.csg-final-header #cart.csg-cart > .csg-cart-button:active {
		background: rgba(255, 255, 255, 0.2);
		border-color: rgba(255, 255, 255, 0.36);
		transform: scale(0.97);
	}

	.csg-final-header .csg-header-account-text {
		display: none !important;
	}

	.csg-final-header .csg-header-account-icon {
		align-items: center;
		background: transparent;
		border: 0;
		box-shadow: none;
		display: inline-flex;
		flex: 0 0 auto;
		height: auto;
		justify-content: center;
		margin: 0;
		padding: 0;
		width: auto;
	}

	.csg-final-header .csg-header-action {
		flex: none;
		min-width: 0;
		width: 100%;
	}

	.csg-final-header .csg-header-actions .csg-ref-icon {
		color: #ffffff;
		display: block;
		fill: none;
		flex: 0 0 auto;
		height: 22px;
		stroke: currentColor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.75;
		width: 22px;
	}

	.csg-final-header .csg-header-account-icon .csg-ref-icon {
		height: 22px;
		width: 22px;
	}

	.csg-final-header .csg-header-badge,
	.csg-final-header #cart.csg-cart > .csg-cart-button #cart-total {
		align-items: center;
		background: #00bc52;
		border: 2px solid #1b2432;
		border-radius: 999px;
		box-shadow: 0 2px 6px rgba(0, 188, 82, 0.45);
		box-sizing: border-box;
		color: #ffffff;
		display: inline-flex;
		font-size: 11px;
		font-weight: 800;
		height: 18px;
		justify-content: center;
		line-height: 1;
		min-width: 18px;
		padding: 0 5px;
		position: absolute;
		right: 4px;
		text-align: center;
		top: 4px;
		z-index: 2;
	}

	.csg-final-header .csg-header-badge:empty {
		display: none;
	}

	/* Обёртка корзины без своей «плитки» — одна кнопка, как у остальных иконок */
	.csg-final-header .csg-header-cart {
		align-items: stretch;
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		display: flex;
		height: 40px;
		margin: 0;
		max-width: none;
		min-height: 40px;
		padding: 0;
		width: 100%;
	}

	.csg-final-header #cart.csg-cart {
		background: transparent;
		border: 0;
		box-shadow: none;
		display: flex;
		float: none;
		height: 40px;
		margin: 0;
		min-height: 40px;
		vertical-align: middle;
		width: 100%;
	}

	.csg-final-header #cart.csg-cart.btn-group {
		display: flex;
		width: 100%;
	}

	/* Повторяем плитку (без background-image: none — иначе гасится градиент) */
	.csg-final-header #cart.csg-cart > .csg-cart-button {
		background-color: transparent !important;
		background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0.06) 100%) !important;
		border: 1px solid rgba(255, 255, 255, 0.24) !important;
		border-radius: 10px !important;
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
		color: #ffffff !important;
		height: 40px !important;
		min-height: 40px !important;
		min-width: 0;
		text-shadow: none;
		width: 100% !important;
	}

	.csg-final-header #cart.csg-cart > .csg-cart-button:hover,
	.csg-final-header #cart.csg-cart > .csg-cart-button:focus,
	.csg-final-header #cart.csg-cart.open > .csg-cart-button {
		background-color: rgba(255, 255, 255, 0.2) !important;
		background-image: none !important;
		border-color: rgba(255, 255, 255, 0.36) !important;
		color: #ffffff !important;
	}

	.csg-final-header #cart.csg-cart > .csg-cart-button .csg-ref-icon {
		height: 22px;
		width: 22px;
	}

	.csg-final-header #cart.csg-cart > .csg-cart-button #cart-total {
		display: inline-flex;
		margin: 0;
		margin-left: 0;
	}
}

/* Stage 8F-HOME: Figma homepage body implementation */
.csg-figma-home.container {
	background: #f7f9ff;
	max-width: 1470px;
	padding-left: 24px;
	padding-right: 24px;
	width: 100%;
}

.csg-figma-home {
	color: #181c20;
}

.csg-figma-home #content {
	--csg-home-section-gap: 24px;
	padding-bottom: 48px;
}

.csg-figma-home #content.col-sm-12 {
	float: none;
	padding-left: 0;
	padding-right: 0;
	width: 100%;
}

.csg-figma-hero {
	align-items: stretch;
	background: linear-gradient(135deg, rgba(14, 22, 34, 0.9), rgba(18, 31, 47, 0.72)), radial-gradient(circle at 82% 36%, rgba(0, 188, 82, 0.32), transparent 34%), #17202a;
	border-radius: 12px;
	box-shadow: 0 22px 48px rgba(0, 26, 52, 0.16);
	color: #ffffff;
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 0.95fr) minmax(380px, 1.05fr);
	min-height: 500px;
	overflow: hidden;
	padding: 54px 56px;
	position: relative;
}

.csg-figma-hero::before {
	background: linear-gradient(135deg, rgba(0, 188, 82, 0.18), rgba(255, 255, 255, 0.03));
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 32px;
	bottom: -90px;
	content: "";
	position: absolute;
	right: -70px;
	top: 46px;
	transform: rotate(-8deg);
	width: 48%;
}

.csg-figma-hero-content {
	align-self: center;
	max-width: 610px;
	position: relative;
	z-index: 1;
}

.csg-figma-badge,
.csg-figma-section-head span {
	align-items: center;
	background: rgba(0, 188, 82, 0.12);
	border: 1px solid rgba(0, 188, 82, 0.18);
	border-radius: 999px;
	color: #006e2d;
	display: inline-flex;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	margin-bottom: 14px;
	padding: 8px 12px;
}

.csg-figma-hero .csg-figma-badge {
	background: rgba(0, 188, 82, 0.2);
	border-color: rgba(105, 255, 139, 0.28);
	color: #69ff8b;
}

.csg-figma-hero h1 {
	color: #ffffff;
	font-size: 48px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.08;
	margin: 0 0 18px;
}

.csg-figma-hero p {
	color: rgba(238, 241, 247, 0.84);
	font-size: 17px;
	line-height: 1.62;
	margin: 0 0 28px;
}

.csg-figma-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.csg-figma-btn {
	align-items: center;
	border-radius: 8px;
	display: inline-flex;
	font-size: 14px;
	font-weight: 800;
	justify-content: center;
	min-height: 46px;
	padding: 0 22px;
	text-decoration: none;
}

.csg-figma-btn-primary {
	background: #00bc52;
	color: #ffffff;
}

.csg-figma-btn-primary:hover,
.csg-figma-btn-primary:focus {
	background: #006e2d;
	color: #ffffff;
}

.csg-figma-btn-ghost {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.16);
	color: #ffffff;
}

.csg-figma-btn-ghost:hover,
.csg-figma-btn-ghost:focus {
	background: #ffffff;
	color: #181c20;
}

.csg-figma-hero-visual {
	min-height: 392px;
	position: relative;
	z-index: 1;
}

.csg-figma-orbit {
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 999px;
	position: absolute;
}

.csg-figma-orbit-a {
	height: 330px;
	right: 26px;
	top: 18px;
	width: 330px;
}

.csg-figma-orbit-b {
	height: 220px;
	right: 94px;
	top: 72px;
	width: 220px;
}

.csg-figma-device-main {
	background: linear-gradient(145deg, #f7f9ff, #dfe3e8);
	border-radius: 30px;
	box-shadow: 0 34px 72px rgba(0, 0, 0, 0.34);
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(2, 1fr);
	height: 240px;
	padding: 28px;
	position: absolute;
	right: 64px;
	top: 70px;
	transform: rotate(-8deg);
	width: 330px;
}

.csg-figma-device-main span {
	background: linear-gradient(135deg, #00bc52, #006e2d);
	border-radius: 14px;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18);
}

.csg-figma-device-card {
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(255, 255, 255, 0.5);
	border-radius: 16px;
	box-shadow: 0 22px 42px rgba(0, 26, 52, 0.2);
	color: #181c20;
	padding: 18px;
	position: absolute;
	right: 305px;
	top: 270px;
	width: 170px;
}

.csg-figma-device-card strong {
	display: block;
	font-size: 28px;
	line-height: 1;
	margin-bottom: 6px;
}

.csg-figma-device-card small {
	color: #565f6f;
	display: block;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
}

.csg-figma-benefits {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.csg-figma-benefit,
.csg-figma-featured,
.csg-figma-category-showcase {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	box-shadow: 0 10px 26px rgba(0, 26, 52, 0.06);
}

.csg-figma-benefit {
	align-items: center;
	border-radius: 12px;
	display: flex;
	gap: 14px;
	min-height: 102px;
	padding: 18px;
}

.csg-figma-benefit-icon {
	align-items: center;
	background: linear-gradient(180deg, #eefbf3 0%, #dff5e8 100%);
	border-radius: 14px;
	box-shadow: inset 0 0 0 1px rgba(0, 110, 45, 0.1);
	color: #006e2d;
	display: inline-flex;
	flex: 0 0 48px;
	height: 48px;
	justify-content: center;
	width: 48px;
}

.csg-figma-benefit-icon .fa,
.csg-figma-benefit-icon .csg-benefit-glyph {
	display: block;
	font-size: 18px;
}

.csg-figma-benefit-icon .csg-benefit-glyph {
	fill: none;
	height: 24px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
	width: 24px;
}

.csg-figma-benefit-icon .csg-benefit-glyph circle,
.csg-figma-benefit-icon .csg-benefit-glyph rect {
	fill: none;
}

.csg-figma-benefit-icon .fa {
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
}

.csg-figma-benefit h2 {
	font-size: 15px;
	font-weight: 800;
	line-height: 1.25;
	margin: 0 0 5px;
}

.csg-figma-benefit p {
	color: #565f6f;
	font-size: 12px;
	line-height: 1.45;
	margin: 0;
}

.csg-figma-featured,
.csg-figma-category-showcase {
	border-radius: 12px;
	padding: 24px;
}

.csg-figma-section-head {
	align-items: flex-end;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	margin-bottom: 20px;
}

.csg-figma-section-head h2,
.csg-featured-section-title {
	font-size: 28px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
	margin: 0;
}

/* Заголовок блока «Рекомендуемые» на главной */
.csg-featured-section-head {
	align-items: flex-end;
	display: grid;
	gap: 12px 16px;
	grid-template-columns: minmax(0, 1fr) auto;
	margin-bottom: 20px;
}

.csg-featured-section-title {
	min-width: 0;
}

.csg-featured-section-link {
	align-items: center;
	background: #00bc52;
	border-radius: 8px;
	color: #ffffff;
	display: inline-flex;
	flex-shrink: 0;
	font-size: 13px;
	font-weight: 800;
	justify-content: center;
	min-height: 38px;
	padding: 0 16px;
	text-decoration: none;
	white-space: nowrap;
}

.csg-featured-section-link:hover,
.csg-featured-section-link:focus {
	background: #006e2d;
	color: #ffffff;
}

.csg-figma-section-head > a,
.csg-figma-promos a {
	align-items: center;
	background: #00bc52;
	border-radius: 8px;
	color: #ffffff;
	display: inline-flex;
	font-size: 13px;
	font-weight: 800;
	justify-content: center;
	min-height: 38px;
	padding: 0 16px;
	text-decoration: none;
	white-space: nowrap;
}

.csg-figma-section-head > a:hover,
.csg-figma-section-head > a:focus,
.csg-figma-promos a:hover,
.csg-figma-promos a:focus {
	background: #006e2d;
	color: #ffffff;
}

/* Featured products: reuse listing card; grid — 5 в ряд на десктопе */
#csg-featured-products .csg-figma-product-grid.csg-listing-grid {
	gap: 16px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	justify-content: stretch;
}

@media (max-width: 1399px) {
	#csg-featured-products .csg-figma-product-grid.csg-listing-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 1199px) {
	#csg-featured-products .csg-figma-product-grid.csg-listing-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 991px) {
	#csg-featured-products .csg-figma-product-grid.csg-listing-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	#csg-featured-products .csg-figma-product-grid.csg-listing-grid {
		gap: 12px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.csg-figma-card-actions {
	display: flex;
	gap: 8px;
	position: absolute;
	right: 12px;
	top: 12px;
}

.csg-figma-card-actions button {
	align-items: center;
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 999px;
	color: #181c20;
	display: inline-flex;
	height: 34px;
	justify-content: center;
	padding: 0;
	width: 34px;
}

.csg-figma-card-actions button:hover,
.csg-figma-card-actions button:focus {
	background: #00bc52;
	color: #ffffff;
}

.csg-figma-promos {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.csg-figma-promo {
	border-radius: 12px;
	box-shadow: 0 18px 38px rgba(0, 26, 52, 0.12);
	min-height: 220px;
	overflow: hidden;
	padding: 28px;
	position: relative;
}

.csg-figma-promo::after {
	background: rgba(255, 255, 255, 0.12);
	border-radius: 999px;
	content: "";
	height: 210px;
	position: absolute;
	right: -50px;
	top: 26px;
	width: 210px;
}

.csg-figma-promo-dark {
	background: linear-gradient(135deg, #181c20, #2d3135);
	color: #ffffff;
}

.csg-figma-promo-green {
	background: linear-gradient(135deg, #006e2d, #00bc52);
	color: #ffffff;
}

.csg-figma-promo > div {
	max-width: 430px;
	position: relative;
	z-index: 1;
}

.csg-figma-promo span {
	color: rgba(255, 255, 255, 0.72);
	display: block;
	font-size: 12px;
	font-weight: 900;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.csg-figma-promo h2 {
	color: #ffffff;
	font-size: 26px;
	font-weight: 900;
	line-height: 1.2;
	margin: 0 0 10px;
}

.csg-figma-promo p {
	color: rgba(255, 255, 255, 0.78);
	font-size: 14px;
	line-height: 1.5;
	margin: 0 0 18px;
}

.csg-figma-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.csg-figma-pills a {
	background: #f1f4fa;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 999px;
	color: #181c20;
	font-size: 13px;
	font-weight: 800;
	padding: 10px 14px;
	text-decoration: none;
}

.csg-figma-pills a:hover,
.csg-figma-pills a:focus {
	background: #00bc52;
	border-color: #00bc52;
	color: #ffffff;
}

/* Головна: єдиний блок категорій + горизонтальна стрічка товарів */
.csg-category-showcase-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 18px;
}

.csg-category-showcase-tab {
	background: #f1f4fa;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 999px;
	color: #181c20;
	cursor: pointer;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	padding: 10px 14px;
	transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.csg-category-showcase-tab:hover,
.csg-category-showcase-tab:focus {
	background: #eaf8ef;
	border-color: rgba(0, 188, 82, 0.45);
	color: #006e2d;
	outline: none;
}

.csg-category-showcase-tab.is-active {
	background: #00bc52;
	border-color: #00bc52;
	color: #ffffff;
}

.csg-category-showcase-panels {
	margin-top: 20px;
}

.csg-category-showcase-panel {
	display: none;
}

.csg-category-showcase-panel.is-active {
	display: block;
}

.csg-category-showcase-panel-head {
	align-items: center;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin-bottom: 14px;
}

.csg-category-showcase-panel-link {
	color: #006e2d;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
}

.csg-category-showcase-panel-link:hover,
.csg-category-showcase-panel-link:focus {
	color: #00bc52;
	text-decoration: underline;
}

.csg-category-showcase-nav {
	display: inline-flex;
	flex: 0 0 auto;
	gap: 8px;
}

.csg-category-showcase-scroll-btn {
	align-items: center;
	background: #ffffff;
	border: 1px solid #d8dee8;
	border-radius: 8px;
	color: #565f6f;
	cursor: pointer;
	display: inline-flex;
	height: 40px;
	justify-content: center;
	transition: border-color 0.18s ease, color 0.18s ease, background 0.18s ease;
	width: 40px;
}

.csg-category-showcase-scroll-btn:hover,
.csg-category-showcase-scroll-btn:focus {
	background: #ffffff;
	border-color: #006e2d;
	color: #006e2d;
	outline: none;
}

.csg-category-showcase-scroll-btn:disabled {
	cursor: default;
	opacity: 0.45;
}

.csg-category-showcase-track-wrap {
	margin: 0 -4px;
	overflow: hidden;
}

.csg-category-showcase-track {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	padding: 4px;
	scroll-behavior: smooth;
	scroll-snap-type: x proximity;
	scrollbar-width: thin;
}

.csg-category-showcase-track::-webkit-scrollbar {
	height: 8px;
}

.csg-category-showcase-track::-webkit-scrollbar-thumb {
	background: rgba(0, 26, 52, 0.18);
	border-radius: 999px;
}

.csg-category-showcase-slide {
	flex: 0 0 276px;
	max-width: 276px;
	scroll-snap-align: start;
	width: 276px;
}

.csg-category-showcase-slide .csg-listing-product-card {
	height: 100%;
}

.csg-category-showcase-empty {
	color: #565f6f;
	font-size: 14px;
	line-height: 1.5;
	margin: 0;
}

.csg-category-showcase-empty a {
	color: #006e2d;
	font-weight: 700;
}

.csg-figma-category-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.csg-figma-category-tile {
	color: #181c20;
	display: block;
	text-decoration: none;
}

.csg-figma-category-art {
	background: #f1f4fa;
	border: 1px solid rgba(0, 26, 52, 0.08);
	border-radius: 12px;
	display: block;
	height: 0;
	margin-bottom: 12px;
	overflow: hidden;
	padding-bottom: 100%;
	position: relative;
}

.csg-figma-category-art::before,
.csg-figma-category-art::after {
	content: "";
	position: absolute;
}

.csg-figma-art-mouse::before {
	background: linear-gradient(145deg, #181c20, #565f6f);
	border-radius: 46% 46% 38% 38%;
	height: 48%;
	left: 34%;
	top: 25%;
	width: 32%;
}

.csg-figma-art-mouse::after {
	background: #00bc52;
	border-radius: 999px;
	height: 28%;
	left: 48%;
	top: 17%;
	width: 4px;
}

.csg-figma-art-keyboard::before {
	background: #181c20;
	border-radius: 14px;
	height: 42%;
	left: 16%;
	top: 30%;
	width: 68%;
}

.csg-figma-art-keyboard::after {
	background: repeating-linear-gradient(90deg, #00bc52 0 8px, transparent 8px 14px), repeating-linear-gradient(0deg, #00bc52 0 8px, transparent 8px 14px);
	height: 24%;
	left: 24%;
	top: 39%;
	width: 52%;
}

.csg-figma-art-headset::before {
	border: 12px solid #181c20;
	border-bottom: 0;
	border-radius: 80px 80px 0 0;
	height: 42%;
	left: 26%;
	top: 24%;
	width: 48%;
}

.csg-figma-art-headset::after {
	background: #00bc52;
	border-radius: 10px;
	height: 28%;
	left: 25%;
	top: 53%;
	width: 12%;
	box-shadow: 94px 0 0 #00bc52;
}

.csg-figma-art-monitor::before {
	background: #181c20;
	border-radius: 14px;
	height: 48%;
	left: 18%;
	top: 24%;
	width: 64%;
}

.csg-figma-art-monitor::after {
	background: #00bc52;
	border-radius: 8px;
	height: 8%;
	left: 38%;
	top: 76%;
	width: 24%;
}

.csg-figma-category-tile strong {
	display: block;
	font-size: 16px;
	font-weight: 900;
	line-height: 1.25;
}

.csg-figma-bottom-modules:empty {
	display: none;
}

@media (max-width: 1199px) {
	.csg-figma-hero {
		grid-template-columns: minmax(0, 1fr);
		min-height: 0;
	}

	.csg-figma-hero-visual {
		min-height: 300px;
	}
}

@media (max-width: 991px) {
	.csg-figma-benefits,
	.csg-figma-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.csg-figma-promos {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.csg-figma-home.container {
		padding-left: 16px;
		padding-right: 16px;
	}

	/* Bootstrap .row с отрицательным margin обнуляет боковые отступы контейнера */
	.csg-figma-home > .row {
		margin-left: 0;
		margin-right: 0;
	}

	.csg-figma-home #content.col-sm-12 {
		padding-left: 0;
		padding-right: 0;
	}

	.csg-figma-product-columns,
	.csg-figma-product-columns .csg-figma-section-head,
	#csg-featured-products,
	.csg-figma-category-showcase,
	.csg-figma-reviews {
		box-sizing: border-box;
		max-width: 100%;
	}

	.csg-figma-section-head h2 {
		font-size: 24px;
	}

	.csg-figma-hero {
		border-radius: 10px;
		gap: 18px;
		padding: 28px 20px;
	}

	.csg-figma-hero h1 {
		font-size: 31px;
	}

	.csg-figma-hero p {
		font-size: 15px;
	}

	.csg-figma-hero-visual {
		min-height: 220px;
	}

	.csg-figma-device-main {
		height: 170px;
		right: 16px;
		top: 18px;
		width: 230px;
	}

	.csg-figma-device-card {
		right: auto;
		left: 10px;
		top: 150px;
	}

	.csg-figma-benefits,
	.csg-figma-category-grid {
		grid-template-columns: 1fr;
	}

	.csg-figma-section-head {
		align-items: stretch;
		flex-direction: column;
		gap: 12px;
		margin-bottom: 20px;
	}

	.csg-figma-section-head > div {
		flex: none;
		min-width: 0;
		width: 100%;
	}

	.csg-figma-section-head h2 {
		font-size: 22px;
		line-height: 1.2;
	}

	.csg-figma-section-head > a {
		align-self: flex-start;
		flex: 0 0 auto;
		font-size: 12px;
		margin-left: 0;
		min-height: 36px;
		padding: 0 14px;
	}
}

/* Stage 8F-HOME follow-up: additional Figma modules */
.csg-figma-product-columns,
.csg-figma-reviews {
	margin-top: 0;
}

.csg-figma-product-column-grid,
.csg-figma-review-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.csg-figma-product-column,
.csg-figma-review-card {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 12px;
	box-shadow: 0 10px 26px rgba(0, 26, 52, 0.05);
	padding: 16px;
}

.csg-figma-product-column h3,
.csg-figma-review-card h3 {
	font-size: 18px;
	font-weight: 900;
	line-height: 1.25;
	margin: 0 0 14px;
}

.csg-figma-mini-product {
	align-items: center;
	display: grid;
	gap: 16px;
	grid-template-columns: 82px minmax(0, 1fr);
	min-height: 100px;
	padding: 12px 0;
}

.csg-figma-mini-product + .csg-figma-mini-product {
	border-top: 1px solid rgba(0, 26, 52, 0.08);
}

.csg-figma-mini-image {
	align-items: center;
	background: #f1f4fa;
	border: 1px solid rgba(0, 26, 52, 0.08);
	border-radius: 10px;
	display: flex;
	height: 82px;
	justify-content: center;
	padding: 8px;
	width: 82px;
}

.csg-figma-mini-image img {
	max-height: 100%;
	max-width: 100%;
	object-fit: contain;
}

.csg-figma-mini-product h4 {
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
	margin: 0 0 8px;
}

.csg-figma-mini-product h4 a {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: #181c20;
	display: -webkit-box;
	overflow: hidden;
	text-overflow: ellipsis;
}

.csg-figma-mini-product .price {
	color: #006e2d;
	font-size: 15px;
	font-weight: 900;
	line-height: 1.2;
	margin: 0;
}

.csg-figma-reviews {
	background: #ffffff;
	border: 1px solid rgba(0, 26, 52, 0.1);
	border-radius: 12px;
	box-shadow: 0 10px 26px rgba(0, 26, 52, 0.05);
	padding: 24px;
}

.csg-figma-review-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.csg-figma-review-card {
	background: #f7f9ff;
	min-height: 150px;
}

.csg-figma-review-card p {
	color: #565f6f;
	font-size: 14px;
	line-height: 1.55;
	margin: 0 0 16px;
}

.csg-figma-review-card span {
	background: #ebeef4;
	border-radius: 999px;
	color: #565f6f;
	display: inline-flex;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	padding: 8px 10px;
	text-transform: uppercase;
}

@media (max-width: 1199px) {
	.csg-figma-product-column-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.csg-figma-featured,
	.csg-figma-category-showcase,
	.csg-figma-reviews {
		padding: 16px 16px 20px;
	}

	#csg-featured-products .csg-featured-section-head {
		align-items: center;
		gap: 10px 12px;
		grid-template-columns: minmax(0, 1fr) auto;
		margin-bottom: 16px;
	}

	#csg-featured-products .csg-featured-section-title {
		font-size: 20px;
		line-height: 1.15;
	}

	#csg-featured-products .csg-featured-section-link {
		background: transparent;
		border-radius: 0;
		box-shadow: none;
		color: #006e2d;
		font-size: 13px;
		font-weight: 700;
		min-height: 0;
		padding: 2px 0;
		text-decoration: none;
	}

	#csg-featured-products .csg-featured-section-link::after {
		content: "\2192";
		display: inline-block;
		margin-left: 4px;
	}

	#csg-featured-products .csg-featured-section-link:hover,
	#csg-featured-products .csg-featured-section-link:focus {
		background: transparent;
		color: #00bc52;
		text-decoration: underline;
	}

	#csg-featured-products .csg-listing-product-image {
		padding: 10px;
	}

	#csg-featured-products .csg-listing-product-caption,
	#csg-featured-products .product-grid .csg-listing-product-card .csg-listing-product-caption {
		padding: 10px 10px 0;
	}

	#csg-featured-products .csg-listing-product-buybox,
	#csg-featured-products .product-grid .csg-listing-product-card .csg-listing-product-buybox {
		padding: 8px 10px 10px;
	}

	#csg-featured-products .csg-listing-product-topline {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
		min-height: 0;
	}

	#csg-featured-products .csg-listing-product-code {
		align-self: flex-start;
	}

	#csg-featured-products .csg-listing-product-caption h4 {
		font-size: 13px;
		line-height: 1.25;
		margin-bottom: 6px;
	}

	#csg-featured-products .csg-listing-product-meta {
		font-size: 9px;
		margin-bottom: 4px;
	}

	#csg-featured-products .csg-listing-product-price,
	#csg-featured-products .csg-listing-product-price .price-new {
		font-size: 16px;
		line-height: 1.2;
	}

	#csg-featured-products .csg-listing-product-price .price-tax {
		font-size: 10px;
		line-height: 1.3;
		margin-top: 4px;
	}

	#csg-featured-products .product-grid .csg-listing-product-card .csg-listing-button-group {
		gap: 8px;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 36px 40px;
		min-height: 0;
		width: 100%;
	}

	#csg-featured-products .product-grid .csg-listing-product-card .csg-listing-button-group button {
		height: 36px;
		min-width: 0;
		width: 100%;
	}

	#csg-featured-products .product-grid .csg-listing-product-card .csg-listing-button-group button:nth-child(1) {
		grid-column: 1;
		grid-row: 1;
	}

	#csg-featured-products .product-grid .csg-listing-product-card .csg-listing-button-group button:nth-child(2) {
		grid-column: 2;
		grid-row: 1;
	}

	#csg-featured-products .product-grid .csg-listing-product-card .csg-listing-button-group .csg-listing-cart-button {
		font-size: 12px;
		grid-column: 1 / -1;
		grid-row: 2;
		height: 40px;
		padding: 0 10px;
		width: 100%;
	}

	#csg-featured-products .product-grid .csg-listing-product-card .csg-listing-button-group .csg-listing-cart-button span {
		display: inline-block;
		font-size: 11px;
		line-height: 1;
	}

	.csg-figma-product-column-grid,
	.csg-figma-review-grid {
		grid-template-columns: 1fr;
	}
}

/* Stage 8F-HOME: visual section ordering + uniform vertical rhythm */
.csg-figma-home #content {
	display: flex;
	flex-direction: column;
	gap: var(--csg-home-section-gap, 24px);
}

.csg-figma-home #content > *,
.csg-figma-home .csg-figma-modules > *,
.csg-figma-home .csg-figma-bottom-modules > * {
	margin-top: 0;
}

.csg-figma-home .csg-figma-hero {
	order: 10;
}

.csg-figma-home .csg-figma-benefits {
	order: 20;
}

.csg-figma-home .csg-figma-modules {
	display: contents;
}

.csg-figma-home #csg-featured-products {
	order: 30;
}

.csg-figma-home .csg-figma-promos {
	order: 40;
}

.csg-figma-home .csg-figma-category-showcase,
.csg-figma-home #csg-category-showcase {
	order: 50;
}

.csg-figma-home .csg-figma-bottom-modules {
	order: 70;
}

.csg-figma-home .csg-figma-product-columns {
	order: 90;
}

/* Stage 8F-CATEGORY: Figma category/search listing */
.csg-listing-page.container {
	background: #f7f9ff;
	max-width: 1470px;
	padding-left: 24px;
	padding-right: 24px;
	width: 100%;
}

.csg-listing-page .row {
	margin-left: -8px;
	margin-right: -8px;
}

.csg-listing-page [class*="col-"] {
	padding-left: 8px;
	padding-right: 8px;
}

.csg-listing-breadcrumb {
	background: transparent;
	border: 0;
	margin: 20px 0 14px;
	padding: 0;
}

.csg-listing-breadcrumb > li,
.csg-listing-breadcrumb > li > a {
	color: #565f6f;
	font-size: 13px;
	font-weight: 700;
}

.csg-listing-breadcrumb > li + li:before {
	color: #99a2b0;
	content: "/";
	padding: 0 8px;
}

.csg-listing-content {
	padding-bottom: 44px;
}

.csg-listing-heading {
	align-items: center;
	background:
		radial-gradient(circle at 88% 18%, rgba(0, 188, 82, 0.18), transparent 30%),
		linear-gradient(135deg, #ffffff 0%, #f0f5ff 100%);
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	box-shadow: 0 18px 42px rgba(24, 28, 32, 0.07);
	display: flex;
	gap: 28px;
	justify-content: space-between;
	margin-bottom: 18px;
	min-height: 190px;
	overflow: hidden;
	padding: 32px;
}

.csg-listing-heading-copy {
	max-width: 820px;
}

.csg-listing-eyebrow,
.csg-section-title-row span {
	color: #00a64a;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.csg-listing-heading h1 {
	color: #181c20;
	font-size: 38px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.12;
	margin: 0 0 14px;
}

.csg-listing-heading p,
.csg-listing-description {
	color: #565f6f;
	font-size: 15px;
	line-height: 1.6;
	margin: 0;
}

.csg-listing-heading-media {
	align-items: center;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: inset 0 0 0 1px rgba(0, 188, 82, 0.05);
	display: flex;
	flex: 0 0 180px;
	height: 150px;
	justify-content: center;
	padding: 18px;
}

.csg-listing-heading-media img {
	max-height: 100%;
	max-width: 100%;
	object-fit: contain;
}

.csg-listing-refine,
.csg-listing-products,
.csg-search-panel {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.06);
	margin-bottom: 18px;
	padding: 18px;
}

.csg-section-title-row {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	margin-bottom: 16px;
}

.csg-section-title-row h2 {
	color: #181c20;
	font-size: 24px;
	font-weight: 900;
	line-height: 1.2;
	margin: 0;
}

.csg-listing-refine-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.csg-listing-refine-card {
	align-items: center;
	background: #f7f9ff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	color: #181c20;
	display: flex;
	font-size: 14px;
	font-weight: 900;
	min-height: 56px;
	padding: 12px 14px;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, color 0.18s ease;
}

.csg-listing-refine-card:hover,
.csg-listing-refine-card:focus {
	border-color: #00bc52;
	box-shadow: 0 10px 22px rgba(0, 188, 82, 0.12);
	color: #007f38;
	text-decoration: none;
}

.csg-listing-toolbar {
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 0;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin-bottom: 24px;
	padding: 0;
}

.csg-listing-toolbar-summary {
	color: #565f6f;
	flex: 1 1 auto;
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	min-width: 180px;
}

.csg-listing-view,
.csg-listing-controls {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.csg-listing-view .btn {
	align-items: center;
	background: #ffffff;
	border: 1px solid #d7dce5;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(24, 28, 32, 0.04);
	color: #565f6f;
	display: inline-flex;
	height: 36px;
	justify-content: center;
	min-width: 36px;
	padding: 0 10px;
}

.csg-listing-view .btn:hover,
.csg-listing-view .btn:focus {
	background: #ffffff;
	border-color: #00bc52;
	color: #006e2d;
}

.csg-listing-compare {
	align-items: center;
	background: #ffffff;
	border: 1px solid #d7dce5;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(24, 28, 32, 0.04);
	color: #565f6f;
	display: inline-flex;
	font-size: 13px;
	font-weight: 700;
	min-height: 36px;
	padding: 7px 12px;
}

.csg-listing-compare:hover,
.csg-listing-compare:focus {
	border-color: #00bc52;
	color: #007f38;
	text-decoration: none;
}

.csg-listing-select {
	align-items: center;
	display: flex;
	gap: 10px;
	margin: 0;
}

.csg-listing-select label {
	color: #565f6f;
	font-size: 13px;
	font-weight: 700;
	margin: 0;
	text-transform: none;
	white-space: nowrap;
}

.csg-listing-select .form-control {
	background: #ffffff;
	border: 1px solid #d7dce5;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(24, 28, 32, 0.04);
	color: #181c20;
	font-size: 13px;
	font-weight: 700;
	height: 40px;
	min-width: 168px;
}

.csg-listing-grid {
	align-items: stretch;
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	justify-content: start;
}

.csg-listing-content.col-sm-9 .csg-listing-grid {
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.csg-listing-content.col-sm-6 .csg-listing-grid {
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.csg-listing-grid .product-layout {
	display: flex;
	float: none;
	margin: 0;
	padding: 0;
	width: auto;
}

.csg-listing-grid.is-grid-view {
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

/* Список: один товар на строку, карточка в ряд (image | текст | цена) */
#product-category .csg-listing-grid.is-list-view,
#product-search .csg-listing-grid.is-list-view {
	align-items: stretch;
	display: flex;
	flex-direction: column;
	gap: 12px;
	grid-template-columns: none;
	justify-content: flex-start;
}

#product-category .csg-listing-grid.is-list-view .product-layout,
#product-search .csg-listing-grid.is-list-view .product-layout {
	flex: 0 0 auto;
	float: none;
	margin: 0;
	max-width: 100%;
	padding: 0;
	width: 100%;
}

.csg-listing-grid.is-list-view .csg-listing-product-card {
	align-items: stretch;
	border: 2px solid #d1d9e6;
	box-shadow: none;
	display: grid;
	grid-template-columns: 200px minmax(0, 1fr) 200px;
	min-height: 176px;
}

.csg-listing-grid.is-list-view .csg-listing-product-card:hover {
	border-color: #b8c2d0;
	box-shadow: 0 4px 16px rgba(24, 28, 32, 0.08);
	transform: none;
}

.csg-listing-grid.is-list-view .csg-listing-product-image {
	aspect-ratio: auto;
	background: #ffffff;
	border-radius: 14px 0 0 14px;
	border-right: 2px solid #e5e7eb;
	grid-column: 1;
	height: auto;
	max-height: none;
	max-width: none;
	min-height: 176px;
	padding: 16px;
	width: auto;
}

.csg-listing-grid.is-list-view .csg-listing-product-image img {
	max-height: 168px;
}

.csg-listing-grid.is-list-view .csg-listing-product-caption {
	display: flex;
	flex: none;
	flex-direction: column;
	gap: 10px;
	grid-column: 2;
	justify-content: flex-start;
	margin-left: 0;
	min-height: 176px;
	min-width: 0;
	padding: 18px 20px 16px;
	width: auto;
}

.csg-listing-grid.is-list-view .csg-listing-product-head {
	align-items: flex-start;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	width: 100%;
}

.csg-listing-grid.is-list-view .csg-listing-product-head .csg-listing-product-title,
.csg-listing-grid.is-list-view .csg-listing-product-head .csg-listing-product-caption h4 {
	-webkit-line-clamp: 2;
	flex: 1 1 auto;
	font-size: 15px;
	line-height: 1.4;
	margin: 0;
	min-height: 0;
	min-width: 0;
}

.csg-listing-grid.is-list-view .csg-listing-product-head .csg-listing-product-title a {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.csg-listing-grid.is-list-view .csg-listing-product-title,
.csg-listing-grid.is-list-view .csg-listing-product-caption h4 {
	-webkit-line-clamp: 3;
	font-size: 15px;
	line-height: 1.4;
	margin: 0;
	min-height: 0;
}

.csg-listing-grid.is-list-view .csg-listing-product-topline,
.csg-listing-grid.is-list-view .csg-listing-rating {
	display: none;
}

.csg-listing-grid.is-list-view .csg-listing-product-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.csg-listing-grid.is-list-view .csg-listing-product-specs {
	color: #4b5563;
	display: flex;
	flex-wrap: wrap;
	font-size: 12px;
	gap: 2px 0;
	line-height: 1.45;
	list-style: none;
	margin: 0 0 6px;
	padding: 0;
}

.csg-listing-grid.is-list-view .csg-listing-product-specs li {
	display: inline;
	margin: 0;
}

.csg-listing-grid.is-list-view .csg-listing-product-specs li:not(:last-child)::after {
	color: #c5cdd8;
	content: ' · ';
	margin: 0;
	white-space: pre;
}

.csg-listing-grid.is-list-view .csg-listing-spec-name {
	color: #6b7280;
	font-weight: 600;
}

.csg-listing-grid.is-list-view .csg-listing-product-specs-fallback {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: #4b5563;
	display: -webkit-box;
	font-size: 12px;
	line-height: 1.45;
	margin: 0 0 8px;
	overflow: hidden;
}

.csg-listing-buybox-meta,
.csg-listing-buybox-actions {
	display: none;
}

.csg-listing-grid.is-list-view .csg-listing-buybox-pricerow {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 8px;
	width: 100%;
}

.csg-listing-grid.is-list-view .csg-listing-buybox-pricerow .csg-listing-product-price {
	margin-left: auto;
	order: 1;
}

.csg-listing-grid.is-list-view .csg-listing-buybox-pricerow .csg-listing-buybox-meta {
	justify-content: flex-end;
	order: 2;
	width: 100%;
}

.csg-listing-grid.is-list-view .csg-listing-buybox-meta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	justify-content: flex-end;
	width: 100%;
}

.csg-listing-grid.is-list-view .csg-listing-buybox-actions {
	align-items: center;
	align-self: stretch;
	box-sizing: border-box;
	display: flex;
	flex: 0 0 auto;
	flex-wrap: nowrap;
	gap: 8px;
	justify-content: center;
	margin: 0;
	margin-top: auto;
	padding: 0 12px;
	width: 100%;
}

.csg-listing-grid.is-list-view .csg-listing-icon-button {
	align-items: center;
	background: #ffffff;
	border: 1px solid #d1d9e6;
	border-radius: 8px;
	color: #565f6f;
	display: inline-flex;
	flex: 0 0 36px;
	font-size: 14px;
	height: 36px;
	justify-content: center;
	padding: 0;
	width: 36px;
}

.csg-listing-grid.is-list-view .csg-listing-icon-button:hover,
.csg-listing-grid.is-list-view .csg-listing-icon-button:focus {
	background: #f8fafc;
	border-color: #9aa5b5;
	color: #181c20;
	outline: none;
}

.csg-listing-grid.is-list-view .csg-listing-buybox-actions .csg-listing-buy-button {
	align-items: center;
	background: #00bc52 !important;
	border: 0 !important;
	border-radius: 8px;
	box-shadow: none !important;
	color: #ffffff !important;
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 13px;
	font-weight: 700;
	height: 36px;
	justify-content: center;
	line-height: 1;
	min-width: 96px;
	padding: 0 14px !important;
	text-transform: uppercase;
	width: auto !important;
}

.csg-listing-grid.is-list-view .csg-listing-buybox-actions .csg-listing-buy-button:hover,
.csg-listing-grid.is-list-view .csg-listing-buybox-actions .csg-listing-buy-button:focus {
	background: #006e2d !important;
	border-color: #006e2d !important;
	color: #ffffff !important;
	outline: none;
}

.csg-listing-grid.is-list-view .csg-listing-buybox-actions .csg-listing-buy-button span {
	display: inline-block;
	line-height: 1;
	white-space: nowrap;
}

.csg-listing-grid.is-grid-view .csg-listing-buybox-meta,
.csg-listing-grid.is-grid-view .csg-listing-buybox-actions,
.csg-listing-grid.is-grid-view .csg-listing-product-specs,
.csg-listing-grid.is-grid-view .csg-listing-product-specs-fallback {
	display: none;
}

.csg-listing-grid.is-list-view .csg-listing-product-buybox .csg-listing-button-group {
	display: none !important;
	height: 0 !important;
	margin: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	visibility: hidden !important;
	width: 0 !important;
}

.csg-listing-grid.is-list-view .csg-listing-chip {
	align-items: center;
	background: #f3f5f8;
	border: 0;
	border-radius: 6px;
	color: #4b5563;
	display: inline-flex;
	font-size: 12px;
	font-weight: 600;
	gap: 5px;
	height: 28px;
	line-height: 1;
	padding: 0 10px;
	white-space: nowrap;
}

.csg-listing-grid.is-list-view .csg-listing-chip-action {
	cursor: pointer;
}

.csg-listing-grid.is-list-view .csg-listing-chip-action:hover,
.csg-listing-grid.is-list-view .csg-listing-chip-action:focus {
	background: #e8edf3;
	color: #181c20;
	outline: none;
}

.csg-listing-grid.is-list-view .csg-listing-chip-sale {
	background: #f7e8f4;
	color: #9d174d;
}

.csg-listing-grid.is-list-view .csg-listing-chip-hit {
	background: #fff4e6;
	color: #c2410c;
}

.csg-listing-grid.is-list-view .csg-listing-chip-brand {
	background: #fff4e6;
	color: #c2410c;
}

.csg-listing-grid.is-list-view .csg-listing-chip-rating .fa-star {
	color: #f5b301;
	font-size: 12px;
}

.csg-listing-grid.is-list-view .csg-listing-chip-id {
	background: #f3f5f8;
	color: #6b7280;
}

.csg-listing-grid.is-list-view .csg-listing-buybox-meta .csg-listing-chip {
	font-size: 11px;
	height: 26px;
	padding: 0 8px;
}

.csg-listing-grid.is-list-view .csg-listing-product-foot {
	color: #6b7280;
	flex: 0 0 auto;
	font-size: 12px;
	line-height: 1.5;
	margin-top: 0;
	padding-top: 2px;
	white-space: nowrap;
}

.csg-listing-grid.is-grid-view .csg-listing-product-head .csg-listing-product-foot {
	display: none;
}

.csg-listing-grid.is-list-view .csg-listing-avail {
	align-items: center;
	display: inline-flex;
	gap: 6px;
}

.csg-listing-grid.is-list-view .csg-listing-avail .fa {
	color: #00bc52;
	font-size: 13px;
}

.csg-listing-grid.is-list-view .csg-listing-avail strong {
	color: #2563eb;
	font-weight: 700;
}

.csg-listing-grid.is-list-view .csg-listing-product-buybox {
	align-items: flex-end;
	align-self: stretch;
	border-left: 2px solid #e5e7eb;
	box-sizing: border-box;
	display: flex;
	flex: none;
	flex-direction: column;
	gap: 12px;
	grid-column: 3;
	justify-content: center;
	max-width: 200px;
	min-width: 200px;
	padding: 18px 12px;
	text-align: right;
	width: 200px;
}

.csg-listing-grid.is-list-view .csg-listing-product-price {
	font-size: 28px;
	line-height: 1.1;
	margin-left: auto;
	text-align: right;
	width: 100%;
}

.csg-listing-grid.is-list-view .csg-listing-product-price .price-new {
	font-size: 28px;
}

.csg-listing-grid.is-list-view .csg-listing-product-price .price-old,
.csg-listing-grid.is-list-view .csg-listing-product-price .price-tax {
	display: block;
	text-align: right;
}

.csg-listing-grid.is-grid-view .csg-listing-product-foot {
	display: none;
}

.csg-listing-grid.is-grid-view .csg-listing-product-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 6px;
}

.csg-listing-grid.is-grid-view .csg-listing-chip-sale,
.csg-listing-grid.is-grid-view .csg-listing-chip-hit {
	display: none;
}

.csg-listing-grid.is-grid-view .csg-listing-chip-brand {
	background: transparent;
	color: #565f6f;
	font-size: 10px;
	letter-spacing: 0.08em;
	padding: 0;
	text-transform: uppercase;
}

.csg-listing-grid.is-grid-view .csg-listing-product-topline {
	display: flex;
}

.csg-listing-view .btn.active {
	background: #f0fdf4;
	border-color: #00bc52;
	color: #006e2d;
}

.csg-product-card,
.csg-listing-product-card {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	box-shadow: 0 4px 20px rgba(0, 26, 52, 0.05);
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	min-height: 0;
	overflow: hidden;
	padding: 0;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
	width: 100%;
}

.csg-product-card:hover,
.csg-listing-product-card:hover {
	border-color: rgba(0, 188, 82, 0.45);
	box-shadow: 1px 1px 16px -3px rgba(0, 0, 0, 0.16);
	transform: translateY(-2px);
}

.csg-product-card .csg-listing-product-image,
.csg-listing-product-image {
	align-items: center;
	background: #ffffff;
	border: 0;
	border-radius: 11px 11px 0 0;
	display: flex;
	aspect-ratio: 1 / 1;
	height: auto;
	justify-content: center;
	min-height: 0;
	padding: 16px;
	position: relative;
}

.csg-product-card .csg-listing-product-image a,
.csg-listing-product-image a {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	overflow: hidden;
	width: 100%;
}

.csg-product-card .csg-listing-product-image img,
.csg-listing-product-image img {
	height: 88%;
	max-height: 88%;
	max-width: 88%;
	object-fit: contain;
	transition: transform 0.18s ease;
	width: 88%;
}

.csg-product-card:hover .csg-listing-product-image img,
.csg-listing-product-card:hover .csg-listing-product-image img {
	transform: scale(1.04);
}

.csg-listing-product-badge {
	background: #e6c56d;
	border-radius: 2px;
	color: #181c20;
	font-size: 10px;
	font-weight: 700;
	height: 17px;
	left: 12px;
	letter-spacing: 0.06em;
	line-height: 17px;
	padding: 0 9px;
	position: absolute;
	text-transform: uppercase;
	top: 12px;
}

.csg-listing-product-badge:not(.csg-listing-product-badge-muted) {
	background: #e6746d;
	color: #ffffff;
}

.csg-listing-product-caption {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	padding: 16px 16px 0;
}

.product-grid .csg-listing-product-card .csg-listing-product-caption,
.product-list .csg-listing-product-card .csg-listing-product-caption {
	flex: 0 0 auto;
	min-height: 0;
	padding: 16px 16px 0;
}

.csg-listing-product-topline {
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: space-between;
	margin-bottom: 8px;
	min-height: 22px;
}

.csg-listing-stock {
	align-items: center;
	background: #f0fdf4;
	border-radius: 4px;
	color: #006e2d;
	display: inline-flex;
	font-size: 11px;
	font-weight: 700;
	gap: 5px;
	height: 21px;
	line-height: 21px;
	padding: 0 8px;
	white-space: nowrap;
}

.csg-listing-stock .fa {
	color: #00bc52;
	font-size: 12px;
}

.csg-listing-product-code {
	color: #565f6f;
	font-size: 11px;
	font-weight: 600;
	line-height: 16px;
	white-space: nowrap;
}

.csg-listing-product-meta {
	color: #565f6f;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 14px;
	margin-bottom: 5px;
	text-transform: uppercase;
}

.csg-listing-product-caption h4 {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 22px;
	margin: 0 0 12px;
	min-height: 44px;
}

.csg-listing-product-caption h4 a {
	color: #181c20;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-decoration: none;
}

.csg-listing-product-caption h4 a:hover,
.csg-listing-product-caption h4 a:focus {
	color: #007f38;
}

.csg-listing-product-description {
	display: none;
}

.csg-listing-rating {
	color: #f5b301;
	font-size: 12px;
	line-height: 16px;
	margin: 0;
	min-height: 16px;
}

.csg-listing-rating .fa-stack {
	height: 13px;
	line-height: 13px;
	width: 13px;
}

.csg-listing-rating .fa-stack-2x {
	font-size: 13px;
}

.csg-listing-product-buybox {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	gap: 12px;
	margin-top: 0;
	padding: 12px 16px 16px;
}

.product-grid .csg-listing-product-card .csg-listing-product-buybox,
.product-list .csg-listing-product-card .csg-listing-product-buybox {
	flex: 0 0 auto;
	margin-top: 0;
}

.csg-listing-product-price {
	color: #181c20;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 24px;
	margin: 0;
	padding: 0;
}

.csg-listing-product-price .price-new {
	color: #181c20;
	font-size: 24px;
	font-weight: 700;
	line-height: 24px;
}

.csg-listing-product-price .price-old {
	color: #99a2b0;
	font-size: 13px;
	margin-left: 8px;
	text-decoration: line-through;
}

.csg-listing-product-price .price-tax {
	color: #7b8493;
	display: block;
	font-size: 11px;
	font-weight: 700;
	line-height: 16px;
	margin-top: 6px;
}

.csg-listing-button-group {
	border-top: 0 !important;
	display: grid;
	grid-template-columns: 40px 40px minmax(118px, 1fr);
	gap: 8px;
	align-items: center;
	justify-content: stretch;
	margin: 0;
	min-height: 40px;
	overflow: visible;
	padding: 0;
}

.csg-listing-button-group button {
	align-items: center;
	background: #ffffff;
	border: 1px solid #d8dee8 !important;
	border-radius: 8px;
	box-shadow: none;
	color: #565f6f;
	display: inline-flex;
	float: none;
	font-size: 14px;
	font-weight: 700;
	gap: 6px;
	height: 40px;
	justify-content: center;
	line-height: 20px;
	margin: 0;
	min-width: 0;
	overflow: hidden;
	padding: 0;
	text-align: center;
	text-transform: none;
	width: 40px;
}

.csg-listing-button-group .csg-listing-cart-button {
	background: #00bc52 !important;
	border: 0 !important;
	border-radius: 8px;
	box-shadow: none;
	color: #ffffff !important;
	font-size: 14px;
	height: 40px;
	letter-spacing: 0;
	min-width: 0;
	padding-left: 12px;
	padding-right: 12px;
	text-transform: uppercase;
	width: 100%;
}

.csg-listing-button-group .csg-listing-cart-button span {
	display: inline-block;
	line-height: 20px;
	white-space: nowrap;
}

.csg-listing-button-group button:hover,
.csg-listing-button-group button:focus {
	background: #ffffff;
	border-color: #006e2d;
	color: #006e2d;
	outline: none;
	text-decoration: none;
}

.csg-listing-button-group .csg-listing-cart-button:hover,
.csg-listing-button-group .csg-listing-cart-button:focus {
	background: #006e2d !important;
	border-color: #006e2d !important;
	box-shadow: none;
	color: #ffffff !important;
}

.csg-listing-product-card .csg-listing-button-group button:nth-child(2) {
	background: #ffffff;
	border-color: #d8dee8 !important;
	box-shadow: none;
	color: #565f6f;
}

.csg-listing-product-card .csg-listing-button-group button:nth-child(3) {
	background: #00bc52 !important;
	border-color: #00bc52 !important;
	color: #ffffff !important;
}

.csg-listing-product-card .csg-listing-button-group button:nth-child(2):hover,
.csg-listing-product-card .csg-listing-button-group button:nth-child(2):focus {
	background: #ffffff;
	border-color: #006e2d;
	box-shadow: 0 3px 8px rgba(0, 110, 45, 0.16);
	color: #006e2d;
}

.csg-listing-product-card .csg-listing-button-group button:nth-child(3):hover,
.csg-listing-product-card .csg-listing-button-group button:nth-child(3):focus {
	background: #006e2d !important;
	border-color: #006e2d !important;
	color: #ffffff !important;
}

.product-grid .csg-listing-product-card .csg-listing-button-group,
.csg-listing-grid.is-grid-view .product-list .csg-listing-product-card .csg-listing-button-group {
	display: grid;
	grid-template-columns: 40px 40px minmax(118px, 1fr);
	justify-content: stretch;
	overflow: visible;
}

.product-grid .csg-listing-product-card .csg-listing-button-group button,
.product-grid .csg-listing-product-card .csg-listing-button-group button + button,
.csg-listing-grid.is-grid-view .product-list .csg-listing-product-card .csg-listing-button-group button,
.csg-listing-grid.is-grid-view .product-list .csg-listing-product-card .csg-listing-button-group button + button {
	float: none;
	line-height: 20px;
	width: 40px;
}

.product-grid .csg-listing-product-card .csg-listing-button-group .csg-listing-cart-button,
.csg-listing-grid.is-grid-view .product-list .csg-listing-product-card .csg-listing-button-group .csg-listing-cart-button {
	width: 100%;
}

.csg-listing-product-card .csg-listing-button-group button:first-child {
	background: #ffffff;
	border-color: #d8dee8 !important;
	box-shadow: none;
	color: #565f6f;
}

.csg-listing-product-card .csg-listing-button-group button:first-child:hover,
.csg-listing-product-card .csg-listing-button-group button:first-child:focus {
	background: #ffffff;
	border-color: #006e2d;
	box-shadow: 0 3px 8px rgba(0, 110, 45, 0.16);
	color: #006e2d;
}

.csg-listing-pagination {
	align-items: center;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin-top: 18px;
}

.csg-listing-pages .pagination {
	margin: 0;
}

.csg-listing-pages .pagination > li > a,
.csg-listing-pages .pagination > li > span {
	border-color: #e5e7eb;
	color: #181c20;
	font-weight: 800;
}

.csg-listing-pages .pagination > .active > span,
.csg-listing-pages .pagination > .active > a {
	background: #00bc52;
	border-color: #00bc52;
	color: #ffffff;
}

.csg-listing-results {
	color: #565f6f;
	font-size: 13px;
	font-weight: 800;
	text-align: right;
}

.csg-listing-empty {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.06);
	color: #565f6f;
	margin-bottom: 20px;
	padding: 28px;
}

.csg-listing-empty p {
	margin-bottom: 16px;
}

.csg-search-panel-grid {
	align-items: end;
	display: grid;
	gap: 12px;
	grid-template-columns: 1.4fr 1fr auto auto;
}

.csg-search-panel .form-group {
	margin: 0;
}

.csg-search-panel label {
	color: #565f6f;
	font-size: 12px;
	font-weight: 900;
	margin-bottom: 7px;
	text-transform: uppercase;
}

.csg-search-panel .form-control {
	border: 1px solid #d7dce5;
	border-radius: 10px;
	box-shadow: none;
	height: 44px;
}

.csg-search-options {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 7px;
	justify-content: center;
}

.csg-search-options .checkbox-inline {
	color: #181c20;
	font-size: 13px;
	font-weight: 800;
	margin: 0;
	text-transform: none;
}

.csg-search-submit .btn {
	background: #00bc52;
	border-color: #00bc52;
	border-radius: 10px;
	font-weight: 900;
	height: 44px;
	padding: 0 22px;
}

.csg-search-submit .btn:hover,
.csg-search-submit .btn:focus {
	background: #006e2d;
	border-color: #006e2d;
}

.csg-listing-filter,
.csg-listing-category-module {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.06);
	margin-bottom: 16px;
	overflow: hidden;
}

.csg-listing-filter.panel {
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.06);
}

.csg-listing-filter .panel-heading {
	background: #ffffff;
	border-bottom: 1px solid #e5e7eb;
	color: #181c20;
	font-size: 16px;
	font-weight: 900;
	padding: 16px;
}

.csg-listing-filter .list-group-item,
.csg-listing-category-module .list-group-item {
	background: #ffffff;
	border-color: #edf0f5;
	color: #181c20;
	font-weight: 800;
}

.csg-listing-filter .checkbox label {
	color: #565f6f;
	font-size: 13px;
	font-weight: 700;
}

.csg-listing-filter .panel-footer {
	background: #f7f9ff;
	border-top: 1px solid #e5e7eb;
	padding: 12px;
}

.csg-listing-filter #button-filter {
	background: #00bc52;
	border-color: #00bc52;
	border-radius: 10px;
	font-weight: 900;
	width: 100%;
}

.csg-listing-category-module .list-group-item.active,
.csg-listing-category-module .list-group-item.active:hover,
.csg-listing-category-module .list-group-item.active:focus {
	background: #00bc52;
	border-color: #00bc52;
	color: #ffffff;
}

@media (max-width: 1199px) {
	#product-category .csg-listing-grid.is-grid-view,
	#product-search .csg-listing-grid.is-grid-view,
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	}

	.csg-listing-grid:not(.is-list-view) {
		grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	}

	.csg-listing-refine-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.csg-search-panel-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 991px) {
	.csg-listing-heading {
		align-items: flex-start;
		flex-direction: column;
		min-height: 0;
		padding: 24px;
	}

	.csg-listing-heading h1 {
		font-size: 30px;
	}

	#product-category .csg-listing-grid.is-grid-view,
	#product-search .csg-listing-grid.is-grid-view,
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	}

	.csg-listing-grid:not(.is-list-view) {
		grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	}

	.csg-listing-toolbar,
	.csg-listing-pagination {
		align-items: stretch;
		flex-direction: column;
	}

	.csg-listing-results {
		text-align: left;
	}
}

@media (max-width: 767px) {
	.csg-listing-page.container {
		padding-left: 14px;
		padding-right: 14px;
	}

	.csg-listing-page .csg-listing-body > #column-left.hidden-xs {
		display: block !important;
		float: none;
		max-width: none;
		padding-left: 8px;
		padding-right: 8px;
		width: 100%;
	}

	.csg-listing-page .csg-listing-body > #content {
		float: none;
		width: 100%;
	}

	.csg-listing-page .csg-listing-body > #column-left .csg-listing-filter {
		margin-bottom: 16px;
	}

	.csg-listing-heading {
		border-radius: 12px;
		padding: 20px;
	}

	.csg-listing-heading h1 {
		font-size: 26px;
	}

	.csg-listing-refine,
	.csg-listing-products,
	.csg-search-panel {
		border-radius: 12px;
		padding: 14px;
	}

	.csg-listing-refine-grid,
	.csg-listing-grid.is-grid-view,
	.csg-search-panel-grid {
		grid-template-columns: 1fr;
	}

	#product-category .csg-listing-grid.is-list-view,
	#product-search .csg-listing-grid.is-list-view {
		display: flex;
		flex-direction: column;
	}

	.csg-listing-grid.is-list-view .csg-listing-product-card {
		display: flex;
		flex-direction: column;
		grid-template-columns: none;
		min-height: 0;
	}

	.csg-listing-grid.is-list-view .csg-listing-product-image {
		aspect-ratio: 1 / 1;
		border-radius: 14px 14px 0 0;
		border-right: 0;
		flex: 0 0 auto;
		grid-column: auto;
		max-height: none;
		min-height: 0;
		padding: 8px;
		width: 100%;
	}

	.csg-listing-grid.is-list-view .csg-listing-product-image a {
		height: 100%;
		min-height: 0;
	}

	.csg-listing-grid.is-list-view .csg-listing-product-image img {
		height: 100%;
		max-height: 100%;
		max-width: 100%;
		object-fit: contain;
		width: auto;
	}

	.csg-listing-grid.is-list-view .csg-listing-product-caption {
		grid-column: auto;
		min-height: 0;
		padding: 14px 16px;
		width: 100%;
	}

	.csg-listing-grid.is-list-view .csg-listing-product-specs {
		flex-direction: column;
		gap: 4px;
	}

	.csg-listing-grid.is-list-view .csg-listing-product-specs li {
		display: block;
	}

	.csg-listing-grid.is-list-view .csg-listing-product-specs li::after {
		content: none;
	}

	.csg-listing-grid.is-list-view .csg-listing-product-buybox {
		border-left: 0;
		border-top: 1px solid #eef1f5;
		flex: 0 0 auto;
		grid-column: auto;
		max-width: none;
		min-width: 0;
		width: 100%;
	}

	.csg-listing-grid.is-list-view .csg-listing-buybox-pricerow {
		align-items: flex-start;
		flex-direction: row;
		gap: 12px;
		justify-content: space-between;
	}

	.csg-listing-grid.is-list-view .csg-listing-buybox-pricerow .csg-listing-buybox-meta {
		flex: 0 0 auto;
		justify-content: flex-start;
		order: 1;
		width: auto;
	}

	.csg-listing-grid.is-list-view .csg-listing-buybox-pricerow .csg-listing-product-price {
		flex: 1 1 auto;
		font-size: 22px;
		line-height: 1.15;
		margin-left: 0;
		min-width: 0;
		order: 2;
		text-align: right;
		width: auto;
	}

	.csg-listing-grid.is-list-view .csg-listing-buybox-pricerow .csg-listing-product-price .price-new {
		font-size: 22px;
	}

	.csg-listing-grid.is-list-view .csg-listing-buybox-actions {
		justify-content: center;
		padding: 0 12px;
		width: 100%;
	}

	.csg-listing-grid.is-grid-view .csg-listing-product-image {
		aspect-ratio: 1 / 1;
		height: auto;
		max-height: 240px;
	}

	.csg-listing-controls,
	.csg-listing-view,
	.csg-listing-select {
		align-items: stretch;
		width: 100%;
	}

	.csg-listing-select {
		flex-direction: column;
		gap: 6px;
	}

	.csg-listing-select .form-control,
	.csg-listing-compare {
		width: 100%;
	}

	.csg-search-options {
		align-items: flex-start;
	}
}

/* Stage 8S-CART: Stitch MCP shopping cart page */
#checkout-cart.csg-cart-page.container {
	background: #f7f9ff;
	max-width: 1470px;
	padding-bottom: 48px;
	padding-left: 24px;
	padding-right: 24px;
	width: 100%;
}

#checkout-cart .csg-cart-breadcrumb {
	background: transparent;
	border: 0;
	margin: 20px 0 14px;
	padding: 0;
}

#checkout-cart .csg-cart-breadcrumb > li,
#checkout-cart .csg-cart-breadcrumb > li > a {
	color: #565f6f;
	font-size: 13px;
	font-weight: 700;
}

#checkout-cart .csg-cart-breadcrumb > li + li:before {
	color: #99a2b0;
	content: "/";
	padding: 0 8px;
}

#checkout-cart .csg-cart-alert {
	border-radius: 12px;
	margin-bottom: 16px;
}

#checkout-cart .csg-cart-body.row {
	margin-left: -8px;
	margin-right: -8px;
}

#checkout-cart .csg-cart-content {
	padding-bottom: 8px;
}

#checkout-cart .csg-cart-heading {
	margin-bottom: 22px;
}

#checkout-cart .csg-cart-eyebrow {
	color: #00a64a;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.04em;
	line-height: 1;
	margin-bottom: 8px;
	text-transform: uppercase;
}

#checkout-cart .csg-cart-heading h1 {
	color: #181c20;
	font-size: 34px;
	font-weight: 900;
	line-height: 1.12;
	margin: 0 0 10px;
}

#checkout-cart .csg-cart-weight {
	color: #6b7280;
	font-size: 18px;
	font-weight: 700;
}

#checkout-cart .csg-cart-lead {
	color: #565f6f;
	font-size: 15px;
	line-height: 1.55;
	margin: 0;
	max-width: 920px;
}

#checkout-cart .csg-cart-layout {
	align-items: start;
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
}

#checkout-cart .csg-cart-items {
	display: grid;
	gap: 16px;
}

#checkout-cart .csg-cart-item {
	align-items: start;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 18px;
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.06);
	display: grid;
	gap: 14px 20px;
	grid-template-columns: 168px minmax(0, 1fr);
	grid-template-rows: auto auto auto;
	padding: 20px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

#checkout-cart .csg-cart-item-head {
	display: contents;
}

#checkout-cart .csg-cart-item-head:not(:has(.csg-cart-item-media)) .csg-cart-item-head-main {
	grid-column: 1 / -1;
}

#checkout-cart .csg-cart-item:hover {
	border-color: #d6dee8;
	box-shadow: 0 16px 38px rgba(24, 28, 32, 0.08);
}

#checkout-cart .csg-cart-item-media {
	flex-shrink: 0;
	grid-column: 1;
	grid-row: 1 / span 3;
}

#checkout-cart .csg-cart-item-image {
	align-items: center;
	aspect-ratio: 1 / 1;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	display: flex;
	height: 168px;
	justify-content: center;
	overflow: hidden;
	padding: 14px;
	width: 168px;
}

#checkout-cart .csg-cart-item-image img {
	display: block;
	height: auto;
	max-height: 140px;
	max-width: 100%;
	object-fit: contain;
	width: auto;
}

#checkout-cart .csg-cart-item-head-main {
	align-items: flex-start;
	display: flex;
	gap: 16px 24px;
	grid-column: 2;
	grid-row: 1;
	justify-content: space-between;
	min-width: 0;
}

#checkout-cart .csg-cart-item-details {
	display: grid;
	gap: 10px;
	grid-column: 2;
	grid-row: 2;
	min-width: 0;
}

#checkout-cart .csg-cart-item-sum {
	flex: 0 0 auto;
	text-align: right;
}

#checkout-cart .csg-cart-item-sum-label {
	color: #6b7280;
	display: block;
	font-size: 12px;
	font-weight: 700;
	margin-bottom: 4px;
}

#checkout-cart .csg-cart-item-unit-hint {
	color: #6b7280;
	display: block;
	font-size: 13px;
	font-weight: 600;
	margin-top: 4px;
}

#checkout-cart .csg-cart-item-title {
	font-size: 18px;
	font-weight: 800;
	line-height: 1.35;
	margin: 0;
}

#checkout-cart .csg-cart-item-title a {
	color: #181c20;
}

#checkout-cart .csg-cart-item-title a:hover,
#checkout-cart .csg-cart-item-title a:focus {
	color: #00a64a;
	text-decoration: none;
}

#checkout-cart .csg-cart-item-line-total {
	color: #181c20;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.1;
	margin: 0;
	white-space: nowrap;
}

#checkout-cart .csg-cart-item-meta {
	align-items: center;
	color: #6b7280;
	display: flex;
	flex-wrap: wrap;
	font-size: 13px;
	gap: 10px 16px;
	margin-top: 6px;
}

#checkout-cart .csg-cart-item-sku {
	font-weight: 700;
}

#checkout-cart .csg-cart-item-stock.is-in {
	background: #ecfdf3;
	border: 1px solid #bbf7d0;
	border-radius: 999px;
	color: #00a64a;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 10px;
}

#checkout-cart .csg-cart-item-stock.is-in .fa {
	font-size: 8px;
	margin-right: 4px;
}

#checkout-cart .csg-cart-item-stock.is-out {
	color: #dc2626;
	font-weight: 800;
}

#checkout-cart .csg-cart-item-options {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 12px 0 0;
	padding: 0;
}

#checkout-cart .csg-cart-item-options li {
	background: #f3f6fb;
	border: 1px solid #e5e7eb;
	border-radius: 999px;
	color: #374151;
	font-size: 12px;
	font-weight: 700;
	padding: 6px 10px;
}

#checkout-cart .csg-cart-item-options li span {
	color: #6b7280;
}

#checkout-cart .csg-cart-item-note {
	color: #6b7280;
	font-size: 13px;
	margin: 10px 0 0;
}

#checkout-cart .csg-cart-item-toolbar {
	align-items: center;
	border-top: 1px solid #edf2f7;
	display: flex;
	flex-wrap: wrap;
	gap: 12px 16px;
	grid-column: 2;
	grid-row: 3;
	justify-content: space-between;
	padding-top: 16px;
}

#checkout-cart .csg-cart-item-qty-controls {
	align-items: center;
	display: flex;
	flex: 1 1 auto;
	flex-wrap: wrap;
	gap: 10px;
	min-height: 46px;
	min-width: 0;
}

#checkout-cart .csg-cart-item-qty-label {
	color: #6b7280;
	display: block;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	margin: 0;
}

#checkout-cart .csg-qty-stepper {
	align-items: stretch;
	background: #ffffff;
	border: 1px solid rgba(207, 218, 230, 0.95);
	border-radius: 12px;
	display: grid;
	grid-template-columns: 44px minmax(56px, 76px) 44px;
	min-height: 46px;
	overflow: hidden;
}

#checkout-cart .csg-qty-step {
	align-items: center;
	appearance: none;
	background: #f8fafc;
	border: 0;
	color: #536479;
	cursor: pointer;
	display: flex;
	justify-content: center;
	padding: 0;
}

#checkout-cart .csg-qty-step:hover,
#checkout-cart .csg-qty-step:focus {
	background: #eef3f9;
	color: #14253a;
	outline: none;
}

#checkout-cart .csg-qty-step-minus {
	border-right: 1px solid rgba(207, 218, 230, 0.95);
}

#checkout-cart .csg-qty-step-plus {
	border-left: 1px solid rgba(207, 218, 230, 0.95);
}

#checkout-cart .csg-cart-qty-input {
	border: 0;
	border-radius: 0;
	box-shadow: none;
	color: #14253a;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	margin: 0;
	min-height: 44px;
	padding: 0;
	text-align: center;
}

#checkout-cart .csg-cart-toolbar-btn,
#checkout-cart .csg-cart-update-btn {
	align-items: center;
	appearance: none;
	background: #eef3f9;
	border: 1px solid #dbe4ee;
	border-radius: 12px;
	box-sizing: border-box;
	color: #14253a;
	cursor: pointer;
	display: inline-flex;
	flex: 0 0 46px;
	font-size: 13px;
	font-weight: 700;
	gap: 6px;
	height: 46px;
	justify-content: center;
	line-height: 1;
	min-height: 46px;
	min-width: 46px;
	padding: 0;
	width: 46px;
}

#checkout-cart .csg-cart-update-btn {
	flex: 0 0 auto;
	padding: 0 14px;
	width: auto;
}

#checkout-cart .csg-cart-toolbar-btn:hover,
#checkout-cart .csg-cart-toolbar-btn:focus,
#checkout-cart .csg-cart-update-btn:hover,
#checkout-cart .csg-cart-update-btn:focus {
	background: #e3ebf5;
	outline: none;
}

#checkout-cart .csg-cart-item-prices {
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

#checkout-cart .csg-cart-item-unit {
	line-height: 1.2;
	text-align: right;
	white-space: nowrap;
}

#checkout-cart .csg-cart-item-price-label {
	color: #6b7280;
	display: block;
	font-size: 12px;
	font-weight: 700;
}

#checkout-cart .csg-cart-item-price-value {
	color: #181c20;
	font-size: 16px;
	font-weight: 800;
}

#checkout-cart .csg-cart-remove-btn {
	background: #dc2626;
	border-color: #dc2626;
	color: #ffffff;
	font-size: 0;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

#checkout-cart .csg-cart-remove-btn .fa {
	font-size: 16px;
	line-height: 1;
}

#checkout-cart .csg-cart-remove-btn:hover,
#checkout-cart .csg-cart-remove-btn:focus {
	background: #b91c1c;
	border-color: #b91c1c;
	color: #ffffff;
	outline: none;
	text-decoration: none;
}

#checkout-cart .csg-cart-voucher-media {
	align-items: center;
	display: flex;
	justify-content: center;
}

#checkout-cart .csg-cart-voucher-icon {
	align-items: center;
	background: #ecfdf3;
	border: 1px solid #bbf7d0;
	border-radius: 12px;
	color: #00a64a;
	display: inline-flex;
	font-size: 28px;
	height: 128px;
	justify-content: center;
	width: 128px;
}

#checkout-cart .csg-cart-sidebar {
	display: grid;
	gap: 16px;
}

#checkout-cart .csg-cart-modules {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	box-shadow: 0 12px 30px rgba(24, 28, 32, 0.05);
	padding: 18px;
}

#checkout-cart .csg-cart-modules-title {
	color: #181c20;
	font-size: 18px;
	font-weight: 800;
	margin: 0 0 8px;
}

#checkout-cart .csg-cart-modules-lead {
	color: #6b7280;
	font-size: 13px;
	line-height: 1.5;
	margin: 0 0 12px;
}

/* Промокод: компактная карточка; подарочный сертификат скрыт на cart */
#checkout-cart .csg-cart-promo-panel {
	background: transparent;
	border: 0;
	box-shadow: none;
	margin: 0;
}

#checkout-cart .csg-cart-promo-body {
	padding: 0;
}

#checkout-cart .csg-cart-promo-label {
	color: #181c20;
	display: block;
	font-size: 14px;
	font-weight: 800;
	margin: 0 0 10px;
}

#checkout-cart .csg-cart-promo-input {
	align-items: stretch;
	display: flex;
	gap: 8px;
	width: 100%;
}

#checkout-cart .csg-cart-promo-input .form-control {
	border: 1px solid #dbe4ee;
	border-radius: 10px;
	box-shadow: none;
	flex: 1 1 auto;
	font-size: 14px;
	height: 40px;
	line-height: 1.2;
	min-height: 40px;
	padding: 8px 12px;
}

#checkout-cart .csg-cart-promo-input .input-group-btn {
	flex: 0 0 auto;
	width: auto;
}

#checkout-cart .csg-cart-promo-input .input-group-btn > .btn {
	float: none;
}

#checkout-cart .csg-cart-promo-btn {
	align-items: center;
	background: #06bf63;
	border-color: #06bf63;
	border-radius: 10px;
	display: inline-flex;
	flex: 0 0 40px;
	font-size: 14px;
	font-weight: 700;
	height: 40px;
	justify-content: center;
	line-height: 1;
	margin: 0;
	min-height: 40px;
	padding: 0;
	width: 40px;
}

#checkout-cart .csg-cart-promo-btn .fa {
	font-size: 14px;
	line-height: 1;
}

#checkout-cart .csg-cart-promo-btn:hover,
#checkout-cart .csg-cart-promo-btn:focus {
	background: #05ab58;
	border-color: #05ab58;
}

#checkout-cart .panel-default:has(#collapse-voucher) {
	display: none;
}

/* Оценка доставки: вертикальная форма в sidebar */
#checkout-cart .csg-cart-shipping-panel {
	background: transparent;
	border: 0;
	box-shadow: none;
	margin: 14px 0 0;
	padding-top: 14px;
}

#checkout-cart .csg-cart-shipping-panel + .panel-default,
#checkout-cart .csg-cart-promo-panel + .csg-cart-shipping-panel {
	border-top: 1px solid #edf2f7;
}

#checkout-cart .csg-cart-shipping-head {
	margin-bottom: 12px;
}

#checkout-cart .csg-cart-shipping-title {
	color: #181c20;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;
	margin: 0 0 6px;
}

#checkout-cart .csg-cart-shipping-lead {
	color: #6b7280;
	font-size: 13px;
	line-height: 1.45;
	margin: 0;
}

#checkout-cart .csg-cart-shipping-body {
	padding: 0;
}

#checkout-cart .csg-cart-shipping-form.form-horizontal {
	margin: 0;
}

#checkout-cart .csg-cart-shipping-field {
	margin: 0 0 12px;
}

#checkout-cart .csg-cart-shipping-field:last-of-type {
	margin-bottom: 10px;
}

#checkout-cart .csg-cart-shipping-label {
	color: #374151;
	display: block;
	float: none;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 6px;
	padding: 0;
	text-align: left;
	width: 100%;
}

#checkout-cart .csg-cart-shipping-control {
	float: none;
	padding: 0;
	width: 100%;
}

#checkout-cart .csg-cart-shipping-control .form-control {
	border: 1px solid #dbe4ee;
	border-radius: 10px;
	box-shadow: none;
	font-size: 14px;
	height: 40px;
	line-height: 1.2;
	min-height: 40px;
	padding: 8px 12px;
	width: 100%;
}

#checkout-cart .csg-cart-shipping-control select.form-control {
	appearance: auto;
	cursor: pointer;
	padding-right: 28px;
}

#checkout-cart .csg-cart-shipping-control .text-danger {
	font-size: 12px;
	margin-top: 6px;
}

#checkout-cart .csg-cart-shipping-actions {
	margin: 0;
}

#checkout-cart .csg-cart-shipping-quote-btn {
	background: #06bf63;
	border-color: #06bf63;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 800;
	min-height: 42px;
	padding: 10px 16px;
	width: 100%;
}

#checkout-cart .csg-cart-shipping-quote-btn:hover,
#checkout-cart .csg-cart-shipping-quote-btn:focus {
	background: #05ab58;
	border-color: #05ab58;
}

#checkout-cart .csg-cart-accordion .panel {
	background: transparent;
	border: 0;
	box-shadow: none;
	margin: 0 0 10px;
}

#checkout-cart .csg-cart-accordion .panel-heading {
	background: #f8fafc;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 0;
}

#checkout-cart .csg-cart-accordion .panel-title {
	font-size: 14px;
	font-weight: 800;
}

#checkout-cart .csg-cart-accordion .panel-title > a {
	color: #181c20;
	display: block;
	padding: 12px 14px;
	text-decoration: none;
}

#checkout-cart .csg-cart-accordion .panel-body {
	border: 0;
	padding: 12px 2px 4px;
}

#checkout-cart .csg-cart-accordion .form-control {
	border-radius: 10px;
	min-height: 42px;
}

#checkout-cart .csg-cart-accordion .btn-primary {
	background: #06bf63;
	border-color: #06bf63;
	border-radius: 10px;
}

#checkout-cart .csg-cart-summary-card {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 16px;
	box-shadow: 0 18px 42px rgba(24, 28, 32, 0.08);
	padding: 20px;
	position: sticky;
	top: 24px;
}

#checkout-cart .csg-cart-summary-title {
	color: #181c20;
	font-size: 20px;
	font-weight: 900;
	margin: 0 0 14px;
}

#checkout-cart .csg-cart-totals {
	margin: 0 0 18px;
}

#checkout-cart .csg-cart-total-row {
	border-bottom: 1px solid #edf2f7;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	margin: 0;
	padding: 10px 0;
}

#checkout-cart .csg-cart-total-row dt,
#checkout-cart .csg-cart-total-row dd {
	font-size: 14px;
	font-weight: 700;
	margin: 0;
}

#checkout-cart .csg-cart-total-row dd {
	color: #181c20;
	text-align: right;
}

#checkout-cart .csg-cart-total-row.is-grand dt,
#checkout-cart .csg-cart-total-row.is-grand dd {
	color: #181c20;
	font-size: 18px;
	font-weight: 900;
}

#checkout-cart .csg-cart-summary-actions {
	display: grid;
	gap: 10px;
}

#checkout-cart .csg-cart-btn {
	align-items: center;
	border-radius: 12px;
	display: inline-flex;
	font-size: 15px;
	font-weight: 800;
	justify-content: center;
	min-height: 50px;
	padding: 0 18px;
	text-align: center;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

#checkout-cart .csg-cart-btn-primary {
	background: #06bf63;
	border: 1px solid #06bf63;
	color: #ffffff;
}

#checkout-cart .csg-cart-btn-primary:hover,
#checkout-cart .csg-cart-btn-primary:focus {
	background: #05ab58;
	border-color: #05ab58;
	color: #ffffff;
	text-decoration: none;
}

#checkout-cart .csg-cart-btn-secondary {
	background: #ffffff;
	border: 1px solid #dbe4ee;
	color: #14253a;
}

#checkout-cart .csg-cart-btn-secondary:hover,
#checkout-cart .csg-cart-btn-secondary:focus {
	background: #f8fafc;
	color: #14253a;
	text-decoration: none;
}

#checkout-cart .csg-cart-trust {
	border-top: 1px solid #edf2f7;
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 16px 0 0;
	padding: 14px 0 0;
}

#checkout-cart .csg-cart-trust li {
	align-items: center;
	color: #565f6f;
	display: flex;
	font-size: 13px;
	font-weight: 700;
	gap: 10px;
}

#checkout-cart .csg-cart-trust .fa {
	color: #00a64a;
	font-size: 16px;
	width: 18px;
}

@media (max-width: 991px) {
	#checkout-cart .csg-cart-layout {
		grid-template-columns: 1fr;
	}

	#checkout-cart .csg-cart-summary-card {
		position: static;
	}
}

@media (max-width: 767px) {
	#checkout-cart.csg-cart-page.container {
		padding-left: 14px;
		padding-right: 14px;
	}

	#checkout-cart .csg-cart-heading h1 {
		font-size: 26px;
	}

	#checkout-cart .csg-cart-items {
		gap: 12px;
	}

	/* Карточка товара: шапка (фото + название + сумма), детали, одна строка управления */
	#checkout-cart .csg-cart-item {
		display: flex;
		flex-direction: column;
		gap: 12px;
		grid-template-columns: none;
		grid-template-rows: none;
		padding: 14px;
	}

	#checkout-cart .csg-cart-item-head {
		align-items: flex-start;
		display: flex;
		flex-direction: row;
		gap: 12px;
	}

	#checkout-cart .csg-cart-item-media {
		flex: 0 0 80px;
		grid-column: auto;
		grid-row: auto;
	}

	#checkout-cart .csg-cart-item-image,
	#checkout-cart .csg-cart-voucher-icon {
		height: 80px;
		padding: 6px;
		width: 80px;
	}

	#checkout-cart .csg-cart-item-image img {
		max-height: 68px;
	}

	#checkout-cart .csg-cart-item-head-main {
		display: flex;
		flex: 1 1 auto;
		flex-direction: column;
		gap: 8px;
		grid-column: auto;
		grid-row: auto;
		min-width: 0;
	}

	#checkout-cart .csg-cart-item-title {
		-webkit-box-orient: vertical;
		display: -webkit-box;
		font-size: 16px;
		-webkit-line-clamp: 2;
		line-height: 1.25;
		overflow: hidden;
	}

	#checkout-cart .csg-cart-item-sum {
		align-items: baseline;
		background: #f4fbf6;
		border: 1px solid #bbf7d0;
		border-radius: 10px;
		display: flex;
		flex-wrap: wrap;
		gap: 4px 8px;
		justify-content: space-between;
		padding: 8px 10px;
		text-align: left;
		width: 100%;
	}

	#checkout-cart .csg-cart-item-sum-label {
		margin-bottom: 0;
	}

	#checkout-cart .csg-cart-item-line-total {
		font-size: 22px;
		margin-left: auto;
		white-space: nowrap;
	}

	#checkout-cart .csg-cart-item-unit-hint {
		flex: 1 1 100%;
		font-size: 11px;
	}

	#checkout-cart .csg-cart-item-details {
		display: grid;
		gap: 8px;
		grid-column: auto;
		grid-row: auto;
	}

	#checkout-cart .csg-cart-item-meta {
		align-items: center;
		flex-direction: row;
		flex-wrap: wrap;
		font-size: 12px;
		gap: 6px 8px;
		margin-top: 0;
	}

	#checkout-cart .csg-cart-item-sku {
		flex: 1 1 100%;
	}

	#checkout-cart .csg-cart-item-options {
		gap: 6px;
		margin-top: 0;
	}

	#checkout-cart .csg-cart-item-options li {
		font-size: 11px;
		padding: 5px 8px;
	}

	#checkout-cart .csg-cart-item-toolbar {
		align-items: stretch;
		border-top: 1px solid #edf2f7;
		display: flex;
		flex-wrap: nowrap;
		gap: 8px;
		grid-column: auto;
		grid-row: auto;
		margin-top: 0;
		padding-top: 12px;
	}

	#checkout-cart .csg-cart-item-qty-controls {
		align-items: stretch;
		display: grid;
		flex: 1 1 auto;
		gap: 6px 8px;
		grid-template-columns: minmax(0, 1fr) 44px 44px;
		min-height: 0;
		min-width: 0;
	}

	#checkout-cart .csg-cart-item-qty-label {
		grid-column: 1 / -1;
	}

	#checkout-cart .csg-qty-stepper {
		grid-column: 1;
		grid-row: 2;
		grid-template-columns: 44px minmax(60px, 1fr) 44px;
		min-height: 44px;
		width: 100%;
	}

	#checkout-cart .csg-cart-qty-input {
		font-size: 18px;
		min-height: 44px;
	}

	#checkout-cart .csg-cart-toolbar-btn,
	#checkout-cart .csg-cart-update-btn,
	#checkout-cart .csg-cart-remove-btn {
		grid-row: 2;
		height: 44px;
		min-height: 44px;
		min-width: 44px;
		padding: 0;
		width: 44px;
	}

	#checkout-cart .csg-cart-update-btn {
		grid-column: 2;
	}

	#checkout-cart .csg-cart-remove-btn {
		grid-column: 3;
	}

	#checkout-cart .csg-cart-update-btn span {
		display: none;
	}

	#checkout-cart .csg-cart-voucher {
		display: grid;
		gap: 12px;
		grid-template-columns: 80px minmax(0, 1fr);
	}

	#checkout-cart .csg-cart-voucher .csg-cart-item-body {
		display: grid;
		gap: 12px;
		grid-column: 2;
	}
}

/* Stage 8S-CART: shipping method modal — CoolStuffGear Visual Language */
#modal-shipping.csg-modal-shipping {
	--csg-modal-surface: #ffffff;
	--csg-modal-bg: #f7f9ff;
	--csg-modal-text: #181c20;
	--csg-modal-muted: #565f6f;
	--csg-modal-border: rgba(0, 26, 52, 0.1);
	--csg-modal-green: #00bc52;
	--csg-modal-green-dark: #006e2d;
	--csg-modal-shadow: 0 18px 42px rgba(24, 28, 32, 0.14);
}

body.modal-open .modal-backdrop.in {
	background: rgba(27, 36, 50, 0.52);
}

#modal-shipping .csg-modal-shipping-dialog {
	margin: 48px auto;
	max-width: 560px;
	width: calc(100% - 32px);
}

#modal-shipping .csg-modal-shipping-content {
	background: var(--csg-modal-surface);
	border: 1px solid var(--csg-modal-border);
	border-radius: 16px;
	box-shadow: var(--csg-modal-shadow);
	overflow: hidden;
}

#modal-shipping .csg-modal-shipping-header {
	background: var(--csg-modal-bg);
	border-bottom: 1px solid #e5e8ee;
	padding: 20px 52px 16px 24px;
	position: relative;
}

#modal-shipping .csg-modal-shipping-close {
	color: #565f6f;
	font-size: 28px;
	font-weight: 400;
	line-height: 1;
	margin: 0;
	opacity: 0.75;
	position: absolute;
	right: 16px;
	top: 14px;
}

#modal-shipping .csg-modal-shipping-close:hover,
#modal-shipping .csg-modal-shipping-close:focus {
	color: #181c20;
	opacity: 1;
	outline: none;
}

#modal-shipping .csg-modal-shipping-title {
	color: var(--csg-modal-text);
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 8px;
}

#modal-shipping .csg-modal-shipping-lead {
	color: var(--csg-modal-muted);
	font-size: 14px;
	line-height: 1.5;
	margin: 0;
}

#modal-shipping .csg-modal-shipping-body {
	padding: 20px 24px;
}

#modal-shipping .csg-shipping-method-list {
	display: grid;
	gap: 16px;
}

#modal-shipping .csg-shipping-method-group {
	display: grid;
	gap: 10px;
}

#modal-shipping .csg-shipping-method-group-title {
	color: var(--csg-modal-muted);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.2;
	margin: 0;
	text-transform: uppercase;
}

#modal-shipping .csg-shipping-method-option {
	align-items: center;
	background: #ffffff;
	border: 1px solid #dbe4ee;
	border-radius: 12px;
	cursor: pointer;
	display: flex;
	gap: 12px;
	margin: 0;
	min-height: 58px;
	padding: 12px 14px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

#modal-shipping .csg-shipping-method-option:hover {
	border-color: rgba(0, 188, 82, 0.35);
	box-shadow: 0 8px 20px rgba(24, 28, 32, 0.06);
}

#modal-shipping .csg-shipping-method-option.is-selected {
	background: #f3fbf6;
	border-color: var(--csg-modal-green);
	box-shadow: 0 0 0 1px rgba(0, 188, 82, 0.18);
}

#modal-shipping .csg-shipping-method-input {
	height: 0;
	margin: 0;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	width: 0;
}

#modal-shipping .csg-shipping-method-option-mark {
	align-items: center;
	background: #ffffff;
	border: 2px solid #c5d0de;
	border-radius: 50%;
	display: inline-flex;
	flex: 0 0 20px;
	height: 20px;
	justify-content: center;
	transition: border-color 0.2s ease, background-color 0.2s ease;
	width: 20px;
}

#modal-shipping .csg-shipping-method-option.is-selected .csg-shipping-method-option-mark {
	background: var(--csg-modal-green);
	border-color: var(--csg-modal-green);
	box-shadow: inset 0 0 0 3px #ffffff;
}

#modal-shipping .csg-shipping-method-option-copy {
	align-items: center;
	display: flex;
	flex: 1 1 auto;
	gap: 12px;
	justify-content: space-between;
	min-width: 0;
}

#modal-shipping .csg-shipping-method-option-title {
	color: var(--csg-modal-text);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
}

#modal-shipping .csg-shipping-method-option-price {
	color: var(--csg-modal-green-dark);
	flex: 0 0 auto;
	font-size: 15px;
	font-weight: 800;
	white-space: nowrap;
}

#modal-shipping .csg-modal-shipping-alert {
	border-radius: 10px;
	margin: 0;
}

#modal-shipping .csg-modal-shipping-footer {
	background: #ffffff;
	border-top: 1px solid #e5e8ee;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
	padding: 16px 24px 20px;
}

#modal-shipping .csg-modal-shipping-btn-secondary,
#modal-shipping .csg-modal-shipping-btn-primary {
	border-radius: 12px;
	font-size: 14px;
	font-weight: 800;
	min-height: 46px;
	padding: 10px 18px;
}

#modal-shipping .csg-modal-shipping-btn-secondary {
	background: #ffffff;
	border: 1.5px solid #1b2432;
	color: #1b2432;
}

#modal-shipping .csg-modal-shipping-btn-secondary:hover,
#modal-shipping .csg-modal-shipping-btn-secondary:focus {
	background: #f8fafc;
	color: #1b2432;
	outline: none;
}

#modal-shipping .csg-modal-shipping-btn-primary {
	background: var(--csg-modal-green);
	border: 1px solid var(--csg-modal-green);
	color: #ffffff;
}

#modal-shipping .csg-modal-shipping-btn-primary:hover,
#modal-shipping .csg-modal-shipping-btn-primary:focus {
	background: #05ab58;
	border-color: #05ab58;
	color: #ffffff;
	outline: none;
}

#modal-shipping .csg-modal-shipping-btn-primary:disabled {
	background: #bccbb9;
	border-color: #bccbb9;
	opacity: 1;
}

@media (max-width: 575px) {
	#modal-shipping .csg-modal-shipping-dialog {
		margin: 16px auto;
		width: calc(100% - 20px);
	}

	#modal-shipping .csg-modal-shipping-header,
	#modal-shipping .csg-modal-shipping-body,
	#modal-shipping .csg-modal-shipping-footer {
		padding-left: 16px;
		padding-right: 16px;
	}

	#modal-shipping .csg-shipping-method-option-copy {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}

	#modal-shipping .csg-modal-shipping-footer {
		flex-direction: column-reverse;
	}

	#modal-shipping .csg-modal-shipping-btn-secondary,
	#modal-shipping .csg-modal-shipping-btn-primary {
		width: 100%;
	}
}

/* Stage 8S-CHECKOUT: Stitch MCP checkout visual polish */
#checkout-checkout.csg-checkout-page.container {
	background: #f7f9ff;
	max-width: 1470px;
	padding-bottom: 48px;
	padding-left: 24px;
	padding-right: 24px;
	width: 100%;
}

#checkout-checkout .csg-checkout-breadcrumb {
	background: transparent;
	border: 0;
	margin: 20px 0 14px;
	padding: 0;
}

#checkout-checkout .csg-checkout-breadcrumb > li,
#checkout-checkout .csg-checkout-breadcrumb > li > a {
	color: #565f6f;
	font-size: 13px;
	font-weight: 700;
}

#checkout-checkout .csg-checkout-breadcrumb > li + li:before {
	color: #99a2b0;
	content: "/";
	padding: 0 8px;
}

#checkout-checkout .csg-checkout-alert {
	border-radius: 12px;
	margin-bottom: 16px;
}

#checkout-checkout .csg-checkout-body.row {
	margin-left: -8px;
	margin-right: -8px;
}

#checkout-checkout .csg-checkout-content {
	padding-bottom: 8px;
}

#checkout-checkout .csg-checkout-heading {
	margin-bottom: 22px;
}

#checkout-checkout .csg-checkout-eyebrow {
	color: #00a64a;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.04em;
	line-height: 1;
	margin-bottom: 8px;
	text-transform: uppercase;
}

#checkout-checkout .csg-checkout-heading h1 {
	color: #181c20;
	font-size: 34px;
	font-weight: 900;
	line-height: 1.12;
	margin: 0;
}

#checkout-checkout .csg-checkout-layout {
	align-items: start;
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
	transition: grid-template-columns 0.24s ease;
}

@media (min-width: 992px) {
	#checkout-checkout .csg-checkout-layout.is-confirm-ready {
		grid-template-columns: minmax(0, 1fr) minmax(390px, 494px);
	}
}

#checkout-checkout .csg-checkout-accordion {
	display: contents;
	margin: 0;
}

#checkout-checkout .csg-checkout-accordion > .csg-checkout-step:not(.csg-checkout-summary-panel) {
	grid-column: 1;
}

#checkout-checkout .csg-checkout-accordion > .csg-checkout-summary-panel {
	align-self: start;
	grid-column: 2;
	grid-row: 1 / span 12;
	position: sticky;
	top: 96px;
	z-index: 2;
}

#checkout-checkout .csg-checkout-trust {
	align-self: start;
	display: grid;
	gap: 10px;
	grid-column: 2;
	grid-row: 13;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

#checkout-checkout .csg-checkout-step.panel {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin: 0 0 16px;
}

#checkout-checkout .csg-checkout-step > .panel-heading {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-bottom: 0;
	border-radius: 18px 18px 0 0;
	padding: 16px 20px;
}

/* Шаг с плитками: одна карточка на весь panel-collapse (без линии между preview и panel-body) */
#checkout-checkout .csg-checkout-step > .panel-collapse:has(> .csg-checkout-preview) {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 0 0 18px 18px;
	border-top: 0;
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.06);
	overflow: hidden;
}

#checkout-checkout .csg-checkout-step > .panel-collapse:has(> .csg-checkout-preview) > .csg-checkout-preview {
	background: transparent;
	border: 0;
	padding: 16px 20px 0;
}

#checkout-checkout .csg-checkout-step > .panel-collapse:has(> .csg-checkout-preview) > .panel-body {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 0 20px 20px;
}

#checkout-checkout .csg-checkout-step > .panel-collapse:has(> .csg-checkout-preview) > .csg-checkout-preview + .panel-body {
	padding-top: 0;
}

#checkout-checkout .csg-checkout-step > .panel-heading + .panel-collapse:not(:has(> .csg-checkout-preview)) > .panel-body,
#checkout-checkout .csg-checkout-step > .panel-collapse:not(:has(> .csg-checkout-preview)) > .panel-body {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 0 0 18px 18px;
	border-top: 0;
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.06);
	padding: 20px;
}

/* ==========================================================================
   Checkout Delivery Tiles (Top-tier UX/UI)
   ========================================================================== */

/* ==========================================================================
   Checkout Delivery Tiles (World-class E-Commerce UX)
   ========================================================================== */

#checkout-checkout .csg-checkout-preview-tiles {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 14px !important;
	margin-bottom: 24px !important;
	width: 100% !important;
}

@media (max-width: 767px) {
	#checkout-checkout .csg-checkout-preview-tiles {
		grid-template-columns: 1fr !important;
	}
}

#checkout-checkout .csg-checkout-preview-tile,
#checkout-checkout .csg-checkout-preview-option {
	appearance: none;
	cursor: pointer;
	font-family: inherit;
	margin: 0;
	-webkit-tap-highlight-color: transparent;
}

#checkout-checkout .csg-checkout-preview-tile {
	align-items: center !important;
	background: #ffffff !important;
	border: 1.5px solid #dbe4ee !important;
	border-radius: 16px !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
	box-sizing: border-box !important;
	color: #565f6f !important;
	display: flex !important;
	flex-direction: row !important;
	gap: 14px !important;
	justify-content: flex-start !important;
	margin: 0 !important;
	max-width: none !important;
	min-height: 84px !important;
	outline: none !important;
	padding: 16px 18px !important;
	position: relative !important;
	text-align: left !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
	width: 100% !important;
}

#checkout-checkout .csg-checkout-preview-tile:hover:not(:disabled) {
	border-color: #00bc52 !important;
	box-shadow: 0 6px 20px rgba(0, 188, 82, 0.14) !important;
	transform: translateY(-2px) !important;
}

#checkout-checkout .csg-checkout-preview-tile:focus-visible:not(:disabled) {
	border-color: #00bc52 !important;
	box-shadow: 0 0 0 3px rgba(0, 188, 82, 0.25) !important;
}

#checkout-checkout .csg-checkout-preview-tile.is-selected {
	background: #f0fdf4 !important;
	border-color: #00bc52 !important;
	box-shadow: 0 0 0 1px #00bc52, 0 8px 24px rgba(0, 188, 82, 0.15) !important;
}

#checkout-checkout .csg-checkout-preview-tile.is-stub,
#checkout-checkout .csg-checkout-preview-option.is-stub {
	cursor: default !important;
	opacity: 0.55 !important;
}

#checkout-checkout .csg-checkout-preview-tile.is-disabled,
#checkout-checkout .csg-checkout-preview-tile:disabled,
#checkout-checkout .csg-checkout-preview-option.is-disabled,
#checkout-checkout .csg-checkout-preview-option:disabled {
	cursor: not-allowed !important;
	opacity: 0.42 !important;
}

#checkout-checkout .csg-checkout-preview-tile .csg-tile-radio {
	align-items: center !important;
	background: #ffffff !important;
	border: 2px solid #cbd5e1 !important;
	border-radius: 50% !important;
	color: #ffffff !important;
	display: flex !important;
	flex-shrink: 0 !important;
	font-size: 11px !important;
	height: 22px !important;
	justify-content: center !important;
	transition: all 0.2s ease !important;
	width: 22px !important;
}

#checkout-checkout .csg-checkout-preview-tile .csg-tile-radio i {
	opacity: 0 !important;
	transform: scale(0.5) !important;
	transition: all 0.15s ease !important;
}

#checkout-checkout .csg-checkout-preview-tile.is-selected .csg-tile-radio {
	background: #00bc52 !important;
	border-color: #00bc52 !important;
	box-shadow: 0 2px 6px rgba(0, 188, 82, 0.35) !important;
}

#checkout-checkout .csg-checkout-preview-tile.is-selected .csg-tile-radio i {
	opacity: 1 !important;
	transform: scale(1) !important;
}

#checkout-checkout .csg-checkout-preview-tile .csg-tile-icon-box {
	align-items: center !important;
	background: #f1f5f9 !important;
	border-radius: 12px !important;
	color: #00bc52 !important;
	display: flex !important;
	flex-shrink: 0 !important;
	font-size: 20px !important;
	height: 44px !important;
	justify-content: center !important;
	transition: all 0.2s ease !important;
	width: 44px !important;
}

#checkout-checkout .csg-checkout-preview-tile.is-selected .csg-tile-icon-box {
	background: #00bc52 !important;
	color: #ffffff !important;
	box-shadow: 0 4px 10px rgba(0, 188, 82, 0.25) !important;
}

#checkout-checkout .csg-checkout-preview-tile .csg-tile-content {
	display: flex !important;
	flex: 1 1 auto !important;
	flex-direction: column !important;
	gap: 3px !important;
	min-width: 0 !important;
}

#checkout-checkout .csg-checkout-preview-tile .csg-tile-title {
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}

#checkout-checkout .csg-checkout-preview-tile .csg-tile-desc {
	color: #64748b !important;
	font-size: 12px !important;
	line-height: 1.2 !important;
}

#checkout-checkout .csg-checkout-preview-tile.is-selected .csg-tile-desc {
	color: #15803d !important;
}

#checkout-checkout .csg-checkout-preview-tile .csg-tile-price-wrap {
	flex-shrink: 0 !important;
	margin-left: auto !important;
}

#checkout-checkout .csg-checkout-preview-tile .csg-tile-price {
	background: #f1f5f9 !important;
	border-radius: 8px !important;
	color: #1e293b !important;
	display: inline-block !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	padding: 5px 10px !important;
	white-space: nowrap !important;
}

#checkout-checkout .csg-checkout-preview-tile.is-selected .csg-tile-price {
	background: #dcfce7 !important;
	color: #15803d !important;
}

#checkout-checkout .csg-checkout-preview-tile .csg-tile-price.is-carrier {
	color: #64748b !important;
	font-size: 11px !important;
	font-weight: 600 !important;
}

/* Dark theme overrides */
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile {
	background: #172133 !important;
	border-color: #2f3d52 !important;
	color: #f5f7fb !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile .csg-tile-radio {
	background: #1f2b3f !important;
	border-color: #475569 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected .csg-tile-radio {
	background: #00bc52 !important;
	border-color: #00bc52 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile .csg-tile-icon-box {
	background: #1f2b3f !important;
	color: #00bc52 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected {
	background: rgba(0, 188, 82, 0.12) !important;
	border-color: #00bc52 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected .csg-tile-icon-box {
	background: #00bc52 !important;
	color: #0b1220 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile .csg-tile-title {
	color: #f5f7fb !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile .csg-tile-desc {
	color: #aab4c5 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected .csg-tile-desc {
	color: #4ade80 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile .csg-tile-price {
	background: #1f2b3f !important;
	color: #f5f7fb !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected .csg-tile-price {
	background: rgba(0, 188, 82, 0.22) !important;
	color: #4ade80 !important;
}


#checkout-checkout .csg-checkout-preview-options {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-bottom: 16px;
}

#checkout-checkout .csg-checkout-preview-option {
	align-items: center;
	background: #f7f9ff;
	border: 1px solid #dbe4ee;
	border-radius: 12px;
	box-sizing: border-box;
	color: #565f6f;
	display: flex;
	font-size: 13px;
	font-weight: 600;
	gap: 10px;
	max-width: 100%;
	min-height: 48px;
	padding: 12px 14px;
	text-align: left;
	transition: border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease;
	width: auto;
}

#checkout-checkout .csg-checkout-preview-option:hover:not(:disabled),
#checkout-checkout .csg-checkout-preview-option:focus-visible:not(:disabled) {
	border-color: rgba(0, 188, 82, 0.45);
	outline: none;
}

#checkout-checkout .csg-checkout-preview-option.is-selected {
	background: #f3fbf6;
	border-color: #00bc52;
	box-shadow: 0 0 0 1px rgba(0, 188, 82, 0.18);
	color: #181c20;
}

#checkout-checkout .csg-checkout-preview-option.is-disabled,
#checkout-checkout .csg-checkout-preview-option:disabled {
	cursor: not-allowed;
	opacity: 0.42;
}

#checkout-checkout .csg-checkout-preview-radio {
	border: 2px solid #c5d0de;
	border-radius: 999px;
	box-sizing: border-box;
	flex-shrink: 0;
	height: 18px;
	position: relative;
	width: 18px;
}

#checkout-checkout .csg-checkout-preview-option.is-selected .csg-checkout-preview-radio {
	border-color: #00bc52;
}

#checkout-checkout .csg-checkout-preview-option.is-selected .csg-checkout-preview-radio::after {
	background: #00bc52;
	border-radius: 999px;
	content: "";
	height: 8px;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 8px;
}

/* Плитки привязаны к radio — дублирующий список скрыт, остаётся комментарий и «Продовжити» */
#checkout-checkout #collapse-shipping-method.csg-checkout-delivery-tiles-ready .csg-checkout-method-list-shipping,
#checkout-checkout #collapse-shipping-method.csg-checkout-delivery-tiles-ready > .panel-body > .csg-checkout-section-lead:first-child {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

#checkout-checkout #collapse-payment-method.csg-checkout-payment-tiles-ready .csg-checkout-method-list-payment,
#checkout-checkout #collapse-payment-method.csg-checkout-payment-tiles-ready > .panel-body > .csg-checkout-section-lead:first-child {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

#checkout-checkout .csg-checkout-summary-panel > .panel-heading {
	border-radius: 18px 18px 0 0;
}

#checkout-checkout .csg-checkout-summary-panel .panel-collapse,
#checkout-checkout .csg-checkout-summary-panel .panel-collapse.collapse {
	display: block !important;
	height: auto !important;
	overflow: visible;
	visibility: visible;
}

#checkout-checkout .csg-checkout-summary-panel .panel-collapse.collapsing {
	display: block !important;
	height: auto !important;
	transition: none;
}

#checkout-checkout .csg-checkout-step .panel-title {
	color: #181c20;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
}

#checkout-checkout .csg-checkout-step .panel-title a.accordion-toggle {
	color: inherit;
	display: block;
	text-decoration: none;
}

#checkout-checkout .csg-checkout-step .panel-title a.accordion-toggle:hover,
#checkout-checkout .csg-checkout-step .panel-title a.accordion-toggle:focus {
	color: #006e2d;
	text-decoration: none;
}

#checkout-checkout .csg-checkout-step-icon {
	color: #00bc52;
	font-size: 18px;
	margin-right: 10px;
	width: 20px;
}

/* Сайдбар: live-кошик з common/cart/info + підсумки (генерує JS, класи csg-checkout-order-*) */
#checkout-checkout .csg-checkout-main {
	grid-column: 1;
	min-width: 0;
}

#checkout-checkout .csg-checkout-sidebar {
	align-items: stretch;
	align-self: start;
	display: flex;
	flex-direction: column;
	gap: 14px;
	grid-column: 2;
	position: sticky;
	top: 96px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	z-index: 2;
}

#checkout-checkout .csg-checkout-order-card {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 18px;
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.08);
	overflow: hidden;
}

#checkout-checkout .csg-checkout-order-title {
	color: #181c20;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.25;
	margin: 0;
	padding: 18px 18px 10px;
}

#checkout-checkout .csg-checkout-confirm-cue {
	align-items: flex-start;
	background: linear-gradient(135deg, rgba(0, 188, 82, 0.12) 0%, rgba(0, 188, 82, 0.04) 100%);
	border: 1px solid rgba(0, 188, 82, 0.28);
	border-radius: 14px;
	color: #181c20;
	display: flex;
	gap: 10px;
	margin: 4px 18px 14px;
	padding: 12px;
}

#checkout-checkout .csg-checkout-confirm-cue[hidden] {
	display: none;
}

#checkout-checkout .csg-checkout-confirm-cue .fa {
	color: #00bc52;
	flex: 0 0 auto;
	font-size: 20px;
	line-height: 1;
	margin-top: 2px;
}

#checkout-checkout .csg-checkout-confirm-cue-copy {
	display: grid;
	gap: 3px;
	min-width: 0;
}

#checkout-checkout .csg-checkout-confirm-cue-copy strong {
	color: #181c20;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0.04em;
	line-height: 1.2;
	text-transform: uppercase;
}

#checkout-checkout .csg-checkout-confirm-cue-copy small {
	color: #565f6f;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.35;
}

#checkout-checkout .csg-checkout-order-card.is-confirm-ready {
	border-color: rgba(0, 188, 82, 0.45);
	box-shadow:
		0 14px 34px rgba(24, 28, 32, 0.08),
		0 0 0 2px rgba(0, 188, 82, 0.12);
}

#checkout-checkout .csg-checkout-order-live {
	padding: 0 18px 18px;
}

#checkout-checkout .csg-checkout-order-loading,
#checkout-checkout .csg-checkout-order-empty {
	color: #6b7280;
	font-size: 14px;
	line-height: 1.45;
	margin: 0;
	padding: 8px 0 0;
}

#checkout-checkout .csg-checkout-order-items {
	border-top: 1px solid #e8edf3;
	display: flex;
	flex-direction: column;
	margin: 0 -18px;
	padding: 4px 18px 0;
}

#checkout-checkout .csg-checkout-order-item {
	align-items: flex-start;
	border-bottom: 1px solid #e8edf3;
	display: grid;
	gap: 12px 14px;
	grid-template-columns: 56px minmax(0, 1fr) auto;
	padding: 14px 0;
}

#checkout-checkout .csg-checkout-order-item:last-child {
	border-bottom: 0;
	padding-bottom: 4px;
}

#checkout-checkout .csg-checkout-order-thumb {
	align-items: center;
	aspect-ratio: 1;
	background: #f4f6fa;
	border-radius: 10px;
	display: flex;
	flex-shrink: 0;
	height: 56px;
	justify-content: center;
	overflow: hidden;
	position: relative;
	width: 56px;
}

#checkout-checkout .csg-checkout-order-thumb img {
	height: 100%;
	object-fit: contain;
	width: 100%;
}

#checkout-checkout .csg-checkout-order-thumb::after {
	background: linear-gradient(180deg, transparent 0%, rgba(24, 28, 32, 0.72) 100%);
	border-radius: 0 0 10px 10px;
	bottom: 0;
	content: '';
	height: 26px;
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	z-index: 1;
}

#checkout-checkout .csg-checkout-order-thumb .fa-image,
#checkout-checkout .csg-checkout-order-thumb .fa-shopping-basket,
#checkout-checkout .csg-checkout-order-thumb .fa-gift {
	color: #99a2b0;
	font-size: 20px;
	position: relative;
	z-index: 0;
}

#checkout-checkout .csg-checkout-order-qty {
	align-items: center;
	background: rgba(24, 28, 32, 0.92);
	border-radius: 0 0 10px 10px;
	bottom: 0;
	box-shadow: none;
	box-sizing: border-box;
	color: #ffffff;
	display: flex;
	font-size: 12px;
	font-variant-numeric: tabular-nums;
	font-weight: 700;
	height: 22px;
	justify-content: center;
	left: 0;
	letter-spacing: 0.03em;
	line-height: 1;
	min-width: 0;
	padding: 0 6px;
	position: absolute;
	right: 0;
	top: auto;
	width: 100%;
	z-index: 2;
}

#checkout-checkout .csg-checkout-order-copy {
	min-width: 0;
}

#checkout-checkout .csg-checkout-order-name {
	color: #181c20;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 4px;
}

#checkout-checkout .csg-checkout-order-name a {
	color: inherit;
	text-decoration: none;
}

#checkout-checkout .csg-checkout-order-name a:hover,
#checkout-checkout .csg-checkout-order-name a:focus {
	color: #006e2d;
}

#checkout-checkout .csg-checkout-order-meta {
	color: #6b7280;
	font-size: 12px;
	line-height: 1.35;
	margin: 0;
}

#checkout-checkout .csg-checkout-order-price {
	color: #181c20;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.2;
	padding-top: 2px;
	text-align: right;
	white-space: nowrap;
}

#checkout-checkout .csg-checkout-order-totals {
	border-top: 1px solid #e8edf3;
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 8px -18px 0;
	padding: 14px 18px 0;
}

#checkout-checkout .csg-checkout-order-total {
	align-items: center;
	color: #565f6f;
	display: flex;
	font-size: 13px;
	font-weight: 600;
	justify-content: space-between;
	line-height: 1.35;
}

#checkout-checkout .csg-checkout-order-total span {
	padding-right: 10px;
}

#checkout-checkout .csg-checkout-order-total strong {
	color: #181c20;
	font-size: 13px;
	font-weight: 700;
	text-align: right;
}

#checkout-checkout .csg-checkout-order-total.is-discount span,
#checkout-checkout .csg-checkout-order-total.is-discount strong {
	color: #00a64a;
}

#checkout-checkout .csg-checkout-order-total.is-grand {
	border-top: 1px solid #e8edf3;
	color: #181c20;
	font-size: 15px;
	font-weight: 800;
	margin-top: 4px;
	padding-top: 12px;
}

#checkout-checkout .csg-checkout-order-total.is-grand span {
	color: #181c20;
}

#checkout-checkout .csg-checkout-order-total.is-grand strong {
	color: #00a64a;
	font-size: 22px;
	font-weight: 900;
}

#checkout-checkout .csg-checkout-order-card #collapse-checkout-confirm {
	border-top: 1px solid #e8edf3;
	margin: 0;
	padding: 0 18px 16px;
}

#checkout-checkout .csg-checkout-order-card #collapse-checkout-confirm.in,
#checkout-checkout .csg-checkout-order-card #collapse-checkout-confirm.collapse.in {
	display: block;
	height: auto !important;
	overflow: visible !important;
}

#checkout-checkout .csg-checkout-order-card #collapse-checkout-confirm .csg-checkout-summary-body {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	padding: 14px 0 0;
}

#checkout-checkout .csg-checkout-sidebar .csg-checkout-trust {
	align-self: stretch;
	box-sizing: border-box;
	gap: 10px;
	grid-column: unset !important;
	grid-row: unset !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	justify-items: stretch;
	margin: 0;
	max-width: 100%;
	width: 100%;
}

#checkout-checkout .csg-checkout-summary-placeholder {
	color: #6b7280;
	font-size: 14px;
	line-height: 1.5;
	margin: 0;
}

#checkout-checkout .csg-checkout-summary-body:has(.csg-checkout-confirm) .csg-checkout-summary-placeholder {
	display: none;
}

#checkout-checkout .csg-checkout-summary-panel .csg-checkout-confirm {
	margin-top: 0;
}

#checkout-checkout .csg-checkout-confirm-products {
	display: grid;
	gap: 14px;
	margin-bottom: 16px;
}

#checkout-checkout .csg-checkout-confirm-item {
	align-items: flex-start;
	border-bottom: 1px solid #e8edf3;
	display: flex;
	gap: 12px;
	justify-content: space-between;
	padding-bottom: 14px;
}

#checkout-checkout .csg-checkout-confirm-item:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

#checkout-checkout .csg-checkout-confirm-item-main {
	min-width: 0;
}

#checkout-checkout .csg-checkout-confirm-item-title {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 4px;
}

#checkout-checkout .csg-checkout-confirm-item-title a {
	color: #181c20;
}

#checkout-checkout .csg-checkout-confirm-item-options {
	color: #565f6f;
	font-size: 12px;
	list-style: none;
	margin: 0 0 6px;
	padding: 0;
}

#checkout-checkout .csg-checkout-confirm-item-options li + li {
	margin-top: 2px;
}

#checkout-checkout .csg-checkout-confirm-item-meta,
#checkout-checkout .csg-checkout-confirm-item-note {
	color: #6b7280;
	font-size: 12px;
	line-height: 1.4;
	margin: 0;
}

#checkout-checkout .csg-checkout-confirm-item-price {
	flex: 0 0 auto;
	text-align: right;
}

#checkout-checkout .csg-checkout-confirm-item-price-label {
	color: #6b7280;
	display: block;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	margin-bottom: 2px;
	text-transform: uppercase;
}

#checkout-checkout .csg-checkout-confirm-item-price strong {
	color: #181c20;
	font-size: 16px;
	font-weight: 800;
}

#checkout-checkout .csg-checkout-confirm-totals {
	border-top: 1px solid #e8edf3;
	display: grid;
	gap: 8px;
	margin: 16px 0;
	padding-top: 14px;
}

#checkout-checkout .csg-checkout-confirm-total-row {
	align-items: center;
	color: #565f6f;
	display: flex;
	font-size: 14px;
	justify-content: space-between;
}

#checkout-checkout .csg-checkout-confirm-total-row strong {
	color: #181c20;
	font-size: 14px;
	font-weight: 700;
}

#checkout-checkout .csg-checkout-confirm-total-row.is-grand {
	border-top: 1px solid #e8edf3;
	color: #181c20;
	font-size: 16px;
	margin-top: 4px;
	padding-top: 12px;
}

#checkout-checkout .csg-checkout-confirm-total-row.is-grand strong {
	color: #00a64a;
	font-size: 24px;
	font-weight: 900;
}

#checkout-checkout .csg-checkout-confirm-payment .buttons,
#checkout-checkout .csg-checkout-confirm-payment .pull-right,
#checkout-checkout .panel-body .buttons,
#checkout-checkout .panel-body .buttons .pull-right {
	float: none !important;
	margin: 0;
	text-align: inherit;
	width: 100%;
}

#checkout-checkout .csg-checkout-confirm-payment .btn,
#checkout-checkout .panel-body .buttons .btn,
#checkout-checkout .panel-body .buttons input[type="button"],
#checkout-checkout .panel-body input.btn-primary {
	background: #00bc52;
	border: 1px solid #00bc52;
	border-radius: 12px;
	box-shadow: 0 10px 24px rgba(0, 188, 82, 0.22);
	color: #ffffff;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.04em;
	min-height: 48px;
	padding: 12px 20px;
	text-transform: uppercase;
	width: 100%;
}

#checkout-checkout .csg-checkout-confirm-payment .btn:hover,
#checkout-checkout .csg-checkout-confirm-payment .btn:focus,
#checkout-checkout .panel-body .buttons .btn:hover,
#checkout-checkout .panel-body .buttons .btn:focus,
#checkout-checkout .panel-body input.btn-primary:hover,
#checkout-checkout .panel-body input.btn-primary:focus {
	background: #05ab58;
	border-color: #05ab58;
	color: #ffffff;
	outline: none;
}

#checkout-checkout .csg-checkout-final-action {
	animation: csg-checkout-final-pulse 1.8s ease-in-out 2;
	box-shadow:
		0 12px 28px rgba(0, 188, 82, 0.32),
		0 0 0 3px rgba(0, 188, 82, 0.16);
}

@keyframes csg-checkout-final-pulse {
	0% {
		box-shadow:
			0 12px 28px rgba(0, 188, 82, 0.28),
			0 0 0 0 rgba(0, 188, 82, 0.32);
	}

	60% {
		box-shadow:
			0 14px 32px rgba(0, 188, 82, 0.34),
			0 0 0 8px rgba(0, 188, 82, 0);
	}

	100% {
		box-shadow:
			0 12px 28px rgba(0, 188, 82, 0.32),
			0 0 0 3px rgba(0, 188, 82, 0.16);
	}
}

#account-wishlist {
	padding-bottom: 48px;
}

#account-wishlist .csg-account-wishlist-content {
	min-width: 0;
}

#account-wishlist .csg-account-heading {
	background:
		radial-gradient(circle at 92% 14%, rgba(0, 188, 82, 0.13), transparent 32%),
		linear-gradient(135deg, #ffffff 0%, #f3f6fb 100%);
	border: 1px solid #e5e7eb;
	border-radius: 18px 18px 0 0;
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.06);
	margin: 0;
	padding: 22px 24px 18px;
}

#account-wishlist .csg-account-eyebrow {
	align-items: center;
	color: #00a64a;
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	gap: 8px;
	letter-spacing: 0.08em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

#account-wishlist .csg-account-heading h1 {
	color: #181c20;
	font-size: 30px;
	font-weight: 900;
	line-height: 1.14;
	margin: 0;
}

#account-wishlist .csg-wishlist-panel {
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 0 0 18px 18px;
	border-top: 0;
	box-shadow: 0 14px 34px rgba(24, 28, 32, 0.06);
	overflow: hidden;
	padding: 0;
}

#account-wishlist .csg-wishlist-table-wrap {
	border: 0;
	margin: 0;
}

#account-wishlist .csg-wishlist-table {
	background: transparent;
	border: 0;
	margin: 0;
	table-layout: fixed;
}

#account-wishlist .csg-wishlist-table thead td {
	background: #f3f6fb;
	border: 0;
	border-bottom: 1px solid #e5e7eb;
	color: #565f6f;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.03em;
	padding: 14px 12px;
	text-transform: uppercase;
	vertical-align: middle;
}

#account-wishlist .csg-wishlist-table tbody td {
	border: 0;
	border-bottom: 1px solid #e8edf3;
	color: #181c20;
	padding: 16px 12px;
	vertical-align: middle;
}

#account-wishlist .csg-wishlist-table tbody tr:last-child td {
	border-bottom: 0;
}

#account-wishlist .csg-wishlist-table tbody tr {
	transition: background-color 0.16s ease;
}

#account-wishlist .csg-wishlist-table tbody tr:hover {
	background: rgba(0, 188, 82, 0.04);
}

#account-wishlist .csg-wishlist-image {
	width: 104px;
}

#account-wishlist .csg-wishlist-image a {
	align-items: center;
	background: #f7f9ff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	display: inline-flex;
	height: 72px;
	justify-content: center;
	padding: 8px;
	width: 72px;
}

#account-wishlist .csg-wishlist-image img {
	max-height: 100%;
	max-width: 100%;
	object-fit: contain;
}

#account-wishlist .csg-wishlist-name {
	width: 28%;
}

#account-wishlist .csg-wishlist-name a {
	color: #006e2d;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.35;
	text-decoration: none;
}

#account-wishlist .csg-wishlist-name a:hover,
#account-wishlist .csg-wishlist-name a:focus {
	color: #00bc52;
	text-decoration: none;
}

#account-wishlist .csg-wishlist-model {
	color: #565f6f;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

#account-wishlist .csg-wishlist-stock span {
	background: rgba(0, 188, 82, 0.1);
	border: 1px solid rgba(0, 188, 82, 0.24);
	border-radius: 999px;
	color: #006e2d;
	display: inline-flex;
	font-size: 12px;
	font-weight: 800;
	justify-content: center;
	line-height: 1.25;
	padding: 6px 10px;
	text-align: center;
}

#account-wishlist .csg-wishlist-price .price {
	color: #00a64a;
	font-size: 15px;
	font-weight: 900;
	white-space: nowrap;
}

#account-wishlist .csg-wishlist-price s {
	color: #8a93a3;
	font-size: 12px;
	font-weight: 600;
	margin-left: 4px;
}

#account-wishlist .csg-wishlist-actions {
	white-space: nowrap;
	width: 96px;
}

#account-wishlist .csg-wishlist-actions .btn {
	align-items: center;
	border-radius: 10px;
	box-shadow: none;
	display: inline-flex;
	height: 38px;
	justify-content: center;
	margin: 0 0 0 6px;
	padding: 0;
	width: 38px;
}

#account-wishlist .csg-wishlist-cart {
	background: #00bc52;
	border-color: #00bc52;
	color: #ffffff;
}

#account-wishlist .csg-wishlist-remove {
	background: #fbe7ea;
	border-color: #f2c4cc;
	color: #c01830;
}

#account-wishlist .csg-wishlist-empty {
	align-items: center;
	color: #565f6f;
	display: flex;
	gap: 12px;
	padding: 24px;
}

#account-wishlist .csg-wishlist-empty .fa {
	color: #00bc52;
	font-size: 24px;
}

#account-wishlist .csg-wishlist-empty p {
	margin: 0;
}

#account-wishlist .csg-wishlist-footer-actions {
	margin-top: 18px;
}

#account-wishlist .csg-wishlist-footer-actions .btn-primary {
	background: #00bc52;
	border-color: #00bc52;
	border-radius: 12px;
	box-shadow: 0 10px 24px rgba(0, 188, 82, 0.2);
	font-weight: 800;
	min-height: 44px;
	padding: 11px 18px;
}

#account-address {
	padding-bottom: 48px;
}

#account-address .csg-account-address-content {
	min-width: 0;
}

#account-address .csg-account-address-heading {
	background:
		radial-gradient(circle at 92% 14%, rgba(0, 188, 82, 0.13), transparent 32%),
		linear-gradient(135deg, var(--csg-surface), var(--csg-surface-soft));
	border: 1px solid var(--csg-border);
	border-radius: 18px 18px 0 0;
	box-shadow: var(--csg-card-shadow);
	margin: 0;
	padding: 22px 24px 18px;
}

#account-address .csg-account-address-eyebrow {
	align-items: center;
	color: var(--csg-green);
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	gap: 8px;
	letter-spacing: 0;
	margin-bottom: 8px;
	text-transform: uppercase;
}

#account-address .csg-account-address-heading h1 {
	color: var(--csg-text);
	font-size: 30px;
	font-weight: 900;
	line-height: 1.14;
	margin: 0;
}

#account-address .csg-address-panel {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: 0 0 18px 18px;
	border-top: 0;
	box-shadow: var(--csg-card-shadow);
	padding: 18px;
}

#account-address .csg-address-grid {
	display: grid;
	gap: 14px;
}

#account-address .csg-address-card {
	align-items: flex-start;
	background: var(--csg-surface-soft);
	border: 1px solid var(--csg-border);
	border-radius: 14px;
	display: grid;
	gap: 14px;
	grid-template-columns: auto 1fr auto;
	padding: 16px;
}

#account-address .csg-address-card-icon {
	align-items: center;
	background: rgba(0, 188, 82, 0.12);
	border: 1px solid rgba(0, 188, 82, 0.28);
	border-radius: 12px;
	color: var(--csg-green);
	display: inline-flex;
	height: 42px;
	justify-content: center;
	width: 42px;
}

#account-address .csg-address-card-title {
	color: var(--csg-text-muted);
	font-size: 12px;
	font-weight: 900;
	margin-bottom: 6px;
	text-transform: uppercase;
}

#account-address .csg-address-card address {
	color: var(--csg-text);
	font-style: normal;
	font-weight: 700;
	line-height: 1.55;
	margin: 0;
}

#account-address .csg-address-line {
	display: grid;
	gap: 8px;
	grid-template-columns: 120px 1fr;
	padding: 5px 0;
}

#account-address .csg-address-line + .csg-address-line {
	border-top: 1px solid rgba(86, 95, 111, 0.14);
}

#account-address .csg-address-line-label {
	color: var(--csg-text-muted);
	font-size: 11px;
	font-weight: 900;
	text-transform: uppercase;
}

#account-address .csg-address-line-value {
	color: var(--csg-text);
	font-weight: 800;
	overflow-wrap: anywhere;
}

#account-address .csg-address-card-actions {
	display: flex;
	gap: 8px;
}

#account-address .csg-address-card-actions .btn {
	align-items: center;
	border-radius: 10px;
	box-shadow: none;
	display: inline-flex;
	font-weight: 900;
	gap: 7px;
	justify-content: center;
	min-height: 40px;
}

#account-address .csg-address-edit {
	background: #00bc52;
	border-color: #00bc52;
	color: #ffffff;
	padding: 9px 13px;
}

#account-address .csg-address-edit:hover,
#account-address .csg-address-edit:focus {
	background: var(--csg-green-dark);
	border-color: var(--csg-green-dark);
	color: #ffffff;
}

#account-address .csg-address-delete {
	background: #fbe7ea;
	border-color: #f2c4cc;
	color: #c01830;
	padding: 0;
	width: 40px;
}

#account-address .csg-address-delete:hover,
#account-address .csg-address-delete:focus {
	background: #ef4444;
	border-color: #ef4444;
	color: #ffffff;
}

#account-address .csg-address-empty {
	align-items: center;
	color: var(--csg-text-muted);
	display: flex;
	gap: 12px;
}

#account-address .csg-address-empty .fa {
	color: var(--csg-green);
	font-size: 24px;
}

#account-address .csg-address-empty p {
	margin: 0;
}

#account-address .csg-address-footer-actions {
	margin-top: 18px;
}

#account-address .csg-address-footer-actions .btn {
	border-radius: 12px;
	font-weight: 900;
	min-height: 44px;
	padding: 11px 18px;
}

#account-address .csg-address-footer-actions .btn-primary {
	background: #00bc52;
	border-color: #00bc52;
	box-shadow: 0 10px 24px rgba(0, 188, 82, 0.2);
}

#account-reward {
	padding-bottom: 48px;
}

#account-reward .csg-account-reward-content {
	min-width: 0;
}

#account-reward .csg-account-reward-heading {
	background:
		radial-gradient(circle at 92% 14%, rgba(0, 188, 82, 0.13), transparent 32%),
		linear-gradient(135deg, var(--csg-surface), var(--csg-surface-soft));
	border: 1px solid var(--csg-border);
	border-radius: 18px 18px 0 0;
	box-shadow: var(--csg-card-shadow);
	margin: 0;
	padding: 22px 24px 18px;
}

#account-reward .csg-account-reward-eyebrow {
	align-items: center;
	color: var(--csg-green);
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	gap: 8px;
	letter-spacing: 0;
	margin-bottom: 8px;
	text-transform: uppercase;
}

#account-reward .csg-account-reward-heading h1 {
	color: var(--csg-text);
	font-size: 30px;
	font-weight: 900;
	line-height: 1.14;
	margin: 0;
}

#account-reward .csg-reward-summary {
	align-items: center;
	background:
		radial-gradient(circle at 95% 15%, rgba(0, 188, 82, 0.16), transparent 30%),
		var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-top: 0;
	box-shadow: var(--csg-card-shadow);
	display: flex;
	gap: 14px;
	padding: 18px 24px;
}

#account-reward .csg-reward-summary-icon {
	align-items: center;
	background: rgba(0, 188, 82, 0.12);
	border: 1px solid rgba(0, 188, 82, 0.28);
	border-radius: 14px;
	color: var(--csg-green);
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 20px;
	height: 48px;
	justify-content: center;
	width: 48px;
}

#account-reward .csg-reward-summary-copy {
	display: grid;
	gap: 3px;
}

#account-reward .csg-reward-summary-copy span {
	color: var(--csg-text-muted);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
}

#account-reward .csg-reward-summary-copy strong {
	color: var(--csg-green-dark);
	font-size: 28px;
	font-weight: 900;
	line-height: 1;
}

#account-reward .csg-reward-panel {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: 0 0 18px 18px;
	border-top: 0;
	box-shadow: var(--csg-card-shadow);
	overflow: hidden;
	padding: 0;
}

#account-reward .csg-reward-table-wrap {
	border: 0;
	margin: 0;
}

#account-reward .csg-reward-table {
	background: transparent;
	border: 0;
	margin: 0;
	table-layout: fixed;
}

#account-reward .csg-reward-table thead td {
	background: var(--csg-surface-soft);
	border: 0;
	border-bottom: 1px solid var(--csg-border);
	color: var(--csg-text-muted);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0;
	padding: 14px 16px;
	text-transform: uppercase;
	vertical-align: middle;
}

#account-reward .csg-reward-table tbody td {
	border: 0;
	border-bottom: 1px solid var(--csg-border);
	color: var(--csg-text);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.45;
	padding: 16px;
	vertical-align: middle;
}

#account-reward .csg-reward-table tbody tr:last-child td {
	border-bottom: 0;
}

#account-reward .csg-reward-table tbody tr {
	transition: background-color 0.16s ease;
}

#account-reward .csg-reward-table tbody tr:hover {
	background: rgba(0, 188, 82, 0.07);
}

#account-reward .csg-reward-date {
	width: 170px;
}

#account-reward .csg-reward-description {
	overflow-wrap: anywhere;
}

#account-reward .csg-reward-link {
	color: var(--csg-green-dark);
	font-weight: 900;
	text-decoration: none;
}

#account-reward .csg-reward-link:hover,
#account-reward .csg-reward-link:focus {
	color: var(--csg-green);
	text-decoration: none;
}

#account-reward .csg-reward-points {
	width: 150px;
}

#account-reward .csg-reward-points-badge {
	align-items: center;
	background: rgba(0, 188, 82, 0.12);
	border: 1px solid rgba(0, 188, 82, 0.3);
	border-radius: 999px;
	color: var(--csg-green-dark);
	display: inline-flex;
	font-size: 14px;
	font-weight: 900;
	justify-content: center;
	line-height: 1;
	min-width: 58px;
	padding: 8px 12px;
}

#account-reward .csg-reward-empty {
	align-items: center;
	color: var(--csg-text-muted);
	display: flex;
	gap: 12px;
	padding: 24px;
}

#account-reward .csg-reward-empty .fa {
	color: var(--csg-green);
	font-size: 24px;
}

#account-reward .csg-reward-empty p {
	margin: 0;
}

#account-reward .csg-reward-meta {
	color: var(--csg-text-muted);
	font-size: 13px;
	font-weight: 700;
	margin-top: 14px;
}

#account-reward .csg-reward-meta .pagination {
	margin: 0;
}

#account-reward .csg-reward-footer-actions {
	margin-top: 18px;
}

#account-reward .csg-reward-footer-actions .btn-primary {
	background: #00bc52;
	border-color: #00bc52;
	border-radius: 12px;
	box-shadow: 0 10px 24px rgba(0, 188, 82, 0.2);
	font-weight: 900;
	min-height: 44px;
	padding: 11px 18px;
}

#account-reward .csg-reward-footer-actions .btn-primary:hover,
#account-reward .csg-reward-footer-actions .btn-primary:focus {
	background: var(--csg-green-dark);
	border-color: var(--csg-green-dark);
	color: #ffffff;
}

@media (max-width: 767px) {
	#account-wishlist .csg-account-heading {
		padding: 18px 18px 14px;
	}

	#account-wishlist .csg-account-heading h1 {
		font-size: 26px;
	}

	#account-wishlist .csg-wishlist-table-wrap {
		overflow: visible;
	}

	#account-wishlist .csg-wishlist-table,
	#account-wishlist .csg-wishlist-table thead,
	#account-wishlist .csg-wishlist-table tbody,
	#account-wishlist .csg-wishlist-table tr,
	#account-wishlist .csg-wishlist-table td {
		display: block;
		width: 100%;
	}

	#account-wishlist .csg-wishlist-table thead {
		display: none;
	}

	#account-wishlist .csg-wishlist-table tbody {
		display: grid;
		gap: 12px;
		padding: 14px;
	}

	#account-wishlist .csg-wishlist-table tbody tr {
		background: #f7f9ff;
		border: 1px solid #e5e7eb;
		border-radius: 14px;
		display: grid;
		gap: 10px;
		padding: 14px;
	}

	#account-wishlist .csg-wishlist-table tbody td {
		border: 0;
		padding: 0;
		text-align: left;
	}

	#account-wishlist .csg-wishlist-image {
		text-align: left;
	}

	#account-wishlist .csg-wishlist-model::before,
	#account-wishlist .csg-wishlist-stock::before,
	#account-wishlist .csg-wishlist-price::before {
		color: #565f6f;
		content: attr(data-label);
		display: block;
		font-size: 11px;
		font-weight: 800;
		letter-spacing: 0.05em;
		margin-bottom: 4px;
		text-transform: uppercase;
	}

	#account-wishlist .csg-wishlist-actions {
		display: flex;
		gap: 8px;
		white-space: normal;
	}

	#account-wishlist .csg-wishlist-actions .btn {
		flex: 1 1 0;
		margin: 0;
		width: auto;
	}

	#account-address .csg-account-address-heading {
		padding: 18px 18px 14px;
	}

	#account-address .csg-account-address-heading h1 {
		font-size: 26px;
	}

	#account-address .csg-address-panel {
		padding: 14px;
	}

	#account-address .csg-address-card {
		grid-template-columns: auto 1fr;
	}

	#account-address .csg-address-card-actions {
		grid-column: 1 / -1;
	}

	#account-address .csg-address-line {
		gap: 2px;
		grid-template-columns: 1fr;
	}

	#account-address .csg-address-edit {
		flex: 1 1 auto;
	}

	#account-address .csg-address-footer-actions .pull-left,
	#account-address .csg-address-footer-actions .pull-right {
		float: none !important;
	}

	#account-address .csg-address-footer-actions .btn {
		display: block;
		margin-bottom: 10px;
		width: 100%;
	}

	#account-reward .csg-account-reward-heading {
		padding: 18px 18px 14px;
	}

	#account-reward .csg-account-reward-heading h1 {
		font-size: 26px;
	}

	#account-reward .csg-reward-summary {
		padding: 16px 18px;
	}

	#account-reward .csg-reward-table-wrap {
		overflow: visible;
	}

	#account-reward .csg-reward-table,
	#account-reward .csg-reward-table thead,
	#account-reward .csg-reward-table tbody,
	#account-reward .csg-reward-table tr,
	#account-reward .csg-reward-table td {
		display: block;
		width: 100%;
	}

	#account-reward .csg-reward-table thead {
		display: none;
	}

	#account-reward .csg-reward-table tbody {
		display: grid;
		gap: 12px;
		padding: 14px;
	}

	#account-reward .csg-reward-table tbody tr {
		background: var(--csg-surface-soft);
		border: 1px solid var(--csg-border);
		border-radius: 14px;
		display: grid;
		gap: 10px;
		padding: 14px;
	}

	#account-reward .csg-reward-table tbody td {
		border: 0;
		padding: 0;
		text-align: left;
	}

	#account-reward .csg-reward-date::before,
	#account-reward .csg-reward-description::before,
	#account-reward .csg-reward-points::before {
		color: var(--csg-text-muted);
		content: attr(data-label);
		display: block;
		font-size: 11px;
		font-weight: 900;
		margin-bottom: 4px;
		text-transform: uppercase;
	}

	#account-reward .csg-reward-footer-actions .pull-right {
		float: none !important;
	}

	#account-reward .csg-reward-footer-actions .btn {
		display: block;
		width: 100%;
	}
}

#checkout-checkout .csg-checkout-trust-item {
	align-items: center;
	background: #ffffff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	box-shadow: 0 8px 20px rgba(24, 28, 32, 0.05);
	color: #565f6f;
	display: flex;
	flex-direction: column;
	font-size: 10px;
	font-weight: 700;
	gap: 6px;
	justify-content: center;
	line-height: 1.2;
	min-height: 72px;
	padding: 10px 8px;
	text-align: center;
}

#checkout-checkout .csg-checkout-trust-item .fa {
	color: #00bc52;
	font-size: 18px;
}

/* Плитки довіри: іконка впритул до підпису (gap не працює візуально через line-box FA) */
#checkout-checkout .csg-checkout-sidebar .csg-checkout-trust-item {
	align-items: center;
	align-self: stretch;
	box-sizing: border-box;
	flex: 1 1 0;
	gap: 8px;
	justify-content: center;
	min-height: 80px;
	min-width: 0;
	padding: 10px 8px;
	width: 100%;
}

#checkout-checkout .csg-checkout-sidebar .csg-checkout-trust-item .fa {
	color: #00bc52;
	display: block;
	flex-shrink: 0;
	font-size: 26px;
	height: auto;
	line-height: 1;
	margin: 0 !important;
	padding: 0;
	width: auto;
}

#checkout-checkout .csg-checkout-sidebar .csg-checkout-trust-item .fa::before {
	display: block;
	line-height: 1;
	margin: 0;
	padding: 0;
}

#checkout-checkout .csg-checkout-sidebar .csg-checkout-trust-item > span {
	display: block;
	flex: 0 0 auto;
	font-size: 10px;
	font-weight: 700;
	hyphens: auto;
	line-height: 1.15;
	margin: 0 !important;
	max-width: 100%;
	min-height: 0;
	overflow-wrap: anywhere;
	padding: 0;
	text-align: center;
	width: 100%;
	word-break: break-word;
}

#checkout-checkout .panel-body .alert {
	border-radius: 10px;
	margin-bottom: 14px;
}

#checkout-checkout .panel-body .text-danger {
	color: #ba1a1a;
	font-size: 12px;
	margin-top: 6px;
}

#checkout-checkout .panel-body .form-group.has-error .form-control {
	border-color: #ba1a1a;
}

#checkout-checkout .panel-body .form-control,
#checkout-checkout .panel-body select.form-control,
#checkout-checkout .panel-body textarea.form-control {
	background: #f7f9ff;
	border: 1px solid #bccbb9;
	border-radius: 10px;
	box-shadow: none;
	color: #181c20;
	font-size: 15px;
	min-height: 46px;
	padding: 10px 14px;
}

#checkout-checkout .panel-body textarea.form-control {
	min-height: 120px;
	resize: vertical;
}

#checkout-checkout .panel-body .form-control:focus {
	border-color: #00bc52;
	box-shadow: 0 0 0 1px rgba(0, 188, 82, 0.2);
	outline: none;
}

#checkout-checkout .panel-body label.control-label {
	color: #3d4a3c;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	margin-bottom: 6px;
	text-transform: uppercase;
}

#checkout-checkout .panel-body .form-horizontal .form-group {
	margin-left: 0;
	margin-right: 0;
}

#checkout-checkout .panel-body .form-horizontal .control-label {
	padding-top: 0;
	text-align: left;
}

@media (min-width: 768px) {
	#checkout-checkout .panel-body .form-horizontal .control-label {
		padding-top: 12px;
	}
}

#checkout-checkout #collapse-checkout-option .row {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

#checkout-checkout #collapse-checkout-option .row > .col-sm-6 {
	float: none;
	width: auto;
}

#checkout-checkout .panel-body .radio {
	margin: 0 0 10px;
}

#checkout-checkout .panel-body .radio label {
	align-items: center;
	background: #f7f9ff;
	border: 1px solid #dbe4ee;
	border-radius: 12px;
	cursor: pointer;
	display: flex;
	font-size: 14px;
	font-weight: 600;
	gap: 10px;
	margin: 0;
	min-height: 52px;
	padding: 12px 14px;
	transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

#checkout-checkout .panel-body .radio label:hover {
	border-color: rgba(0, 188, 82, 0.35);
}

#checkout-checkout .panel-body .radio input[type="radio"] {
	margin: 0;
	position: static;
}

#checkout-checkout .panel-body .radio input[type="radio"]:checked + *,
#checkout-checkout .panel-body .radio label:has(input[type="radio"]:checked) {
	background: #f3fbf6;
	border-color: #00bc52;
	box-shadow: 0 0 0 1px rgba(0, 188, 82, 0.18);
}

#checkout-checkout .panel-body p strong {
	color: #181c20;
	display: block;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.04em;
	margin: 16px 0 8px;
	text-transform: uppercase;
}

#checkout-checkout .panel-body .buttons {
	margin-top: 18px;
}

#checkout-checkout .panel-body .buttons .pull-right {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-end;
}

#checkout-checkout .panel-body .buttons .pull-right input[type="button"].btn-primary,
#checkout-checkout .panel-body #button-account,
#checkout-checkout .panel-body #button-login,
#checkout-checkout .panel-body #button-register,
#checkout-checkout .panel-body #button-payment-address,
#checkout-checkout .panel-body #button-shipping-address,
#checkout-checkout .panel-body #button-guest,
#checkout-checkout .panel-body #button-guest-shipping,
#checkout-checkout .panel-body #button-shipping-method,
#checkout-checkout .panel-body #button-payment-method {
	width: auto;
}

/* Строка согласия: чекбокс слева, текст переносится, кнопка справа */
#checkout-checkout .csg-checkout-agree-row {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px 16px;
	justify-content: space-between;
	margin: 0;
	width: 100%;
}

#checkout-checkout .csg-checkout-agree-label {
	align-items: flex-start;
	cursor: pointer;
	display: flex;
	flex: 1 1 auto;
	gap: 10px;
	line-height: 1.45;
	margin: 0;
	max-width: 100%;
	min-width: 0;
}

#checkout-checkout .csg-checkout-agree-label input[type="checkbox"] {
	flex-shrink: 0;
	height: 18px;
	margin: 2px 0 0;
	width: 18px;
}

#checkout-checkout .csg-checkout-agree-text {
	color: #565f6f;
	font-size: 13px;
	font-weight: 400;
	min-width: 0;
}

#checkout-checkout .csg-checkout-agree-text a {
	color: #006e2d;
	font-weight: 600;
	text-decoration: underline;
}

#checkout-checkout .csg-checkout-agree-row .csg-checkout-btn {
	flex: 0 0 auto;
	margin-left: auto;
	min-width: 180px;
}

@media (max-width: 991px) {
	#checkout-checkout.csg-checkout-page.container {
		padding-left: 16px;
		padding-right: 16px;
	}

	#checkout-checkout .csg-checkout-layout {
		display: flex;
		flex-direction: column;
		gap: 20px;
		grid-template-columns: none;
	}

	#checkout-checkout .csg-checkout-main {
		order: 1;
		width: 100%;
	}

	#checkout-checkout .csg-checkout-sidebar {
		order: 2;
		position: static;
		width: 100%;
	}

	/* Подтверждение — в основном accordion, не в сайдбаре (без прыжка к submit) */
	#checkout-checkout .csg-checkout-order-card #collapse-checkout-confirm {
		display: none !important;
	}

	#checkout-checkout .csg-checkout-step-confirm[hidden] {
		display: none !important;
	}

	#checkout-checkout .csg-checkout-step-confirm:not([hidden]) {
		display: block;
	}

	#checkout-checkout .csg-checkout-accordion > .csg-checkout-step:not(.csg-checkout-summary-panel),
	#checkout-checkout .csg-checkout-accordion > .csg-checkout-summary-panel,
	#checkout-checkout .csg-checkout-trust {
		grid-column: 1;
		grid-row: auto;
	}

	#checkout-checkout .csg-checkout-accordion > .csg-checkout-summary-panel {
		position: static;
	}

	#checkout-checkout .csg-checkout-heading h1 {
		font-size: 28px;
	}

	#checkout-checkout #collapse-checkout-option .row {
		grid-template-columns: 1fr;
	}

	#checkout-checkout .csg-checkout-preview-tiles {
		grid-template-columns: 1fr;
	}

	#checkout-checkout .csg-checkout-preview-options {
		grid-template-columns: 1fr;
	}

	#checkout-checkout .csg-checkout-trust {
		grid-template-columns: 1fr;
	}

	#checkout-checkout .csg-checkout-sidebar .csg-checkout-trust {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 575px) {
	#checkout-checkout .panel-body .buttons .pull-right {
		flex-direction: column;
	}

	#checkout-checkout .csg-checkout-agree-row {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
		justify-content: flex-start;
	}

	#checkout-checkout .csg-checkout-agree-label {
		flex: 0 1 auto;
		width: 100%;
	}

	#checkout-checkout .csg-checkout-agree-row .csg-checkout-btn {
		margin-left: 0;
		margin-top: 0;
		min-width: 0;
		width: 100%;
	}

	#checkout-checkout .csg-checkout-step-actions {
		margin-top: 12px;
	}

	#checkout-checkout .panel-body .buttons .pull-right input[type="button"].btn-primary,
	#checkout-checkout .panel-body #button-account,
	#checkout-checkout .panel-body #button-login,
	#checkout-checkout .panel-body #button-register,
	#checkout-checkout .panel-body #button-payment-address,
	#checkout-checkout .panel-body #button-shipping-address,
	#checkout-checkout .panel-body #button-guest,
	#checkout-checkout .panel-body #button-guest-shipping,
	#checkout-checkout .panel-body #button-shipping-method,
	#checkout-checkout .panel-body #button-payment-method,
	#checkout-checkout .csg-checkout-confirm-payment .btn {
		width: 100%;
	}
}

/* Stage 8S-FOOTER: Stitch MCP footer (Checkout - New Header reference) */
.csg-stitch-footer {
	background: #1a1c1e;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	color: #d8dee8;
	margin-top: 48px;
	padding: 34px 0 28px;
}

.csg-stitch-footer-shell {
	max-width: 1470px;
	width: 100%;
}

.csg-stitch-footer-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: minmax(0, 1.35fr) repeat(4, minmax(0, 1fr));
}

.csg-stitch-footer-brand {
	max-width: 320px;
}

.csg-stitch-footer-logo {
	align-items: center;
	color: #ffffff;
	display: inline-flex;
	gap: 10px;
	margin-bottom: 12px;
	text-decoration: none;
}

.csg-stitch-footer-logo:hover,
.csg-stitch-footer-logo:focus {
	color: #ffffff;
	text-decoration: none;
}

.csg-stitch-footer-logo-mark {
	align-items: center;
	background: #00bc52;
	border-radius: 10px;
	color: #ffffff;
	display: inline-flex;
	font-size: 12px;
	height: 34px;
	justify-content: center;
	width: 34px;
}

.csg-stitch-footer-logo-text {
	font-size: 24px;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1;
}

.csg-stitch-footer-logo-text span {
	color: #00bc52;
}

.csg-stitch-footer-tagline {
	color: rgba(216, 222, 232, 0.72);
	font-size: 13px;
	line-height: 1.5;
	margin: 0 0 12px;
}

.csg-stitch-footer-copy {
	color: rgba(216, 222, 232, 0.45);
	font-size: 13px;
	margin: 0;
}

.csg-stitch-footer-heading {
	border: 0;
	color: #ffffff;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.2;
	margin: 0 0 12px;
	padding: 0;
	text-transform: uppercase;
}

.csg-stitch-footer-links {
	margin: 0;
}

.csg-stitch-footer-links li {
	margin-bottom: 7px;
}

.csg-stitch-footer-links a {
	color: rgba(216, 222, 232, 0.78);
	display: inline-block;
	font-size: 13px;
	line-height: 1.35;
	text-decoration: none;
}

.csg-stitch-footer-links a:hover,
.csg-stitch-footer-links a:focus {
	color: #00bc52;
	text-decoration: none;
}

.csg-stitch-footer-phone a {
	align-items: center;
	color: #ffffff;
	display: inline-flex;
	font-size: 16px;
	font-weight: 700;
	gap: 10px;
}

.csg-stitch-footer-phone a:hover,
.csg-stitch-footer-phone a:focus {
	color: #00bc52;
}

.csg-stitch-footer-phone .fa {
	color: #00bc52;
	font-size: 16px;
}

.csg-stitch-footer-hours {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	color: rgba(216, 222, 232, 0.5);
	font-size: 12px;
	line-height: 1.55;
	margin: 12px 0 0;
	padding-top: 12px;
}

.csg-stitch-footer-social-heading {
	color: rgba(216, 222, 232, 0.58);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.3;
	margin: 12px 0 8px;
	text-transform: none;
}

.csg-stitch-footer-social-links {
	column-gap: 18px;
	columns: 2;
}

.csg-stitch-footer-social-links li {
	break-inside: avoid;
}

.csg-stitch-footer-bottom {
	margin-top: 0;
}

.csg-stitch-footer .csg-footer-powered {
	margin: 0;
}

@media (max-width: 1199px) {
	.csg-stitch-footer-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.csg-stitch-footer-brand {
		grid-column: 1 / -1;
		max-width: none;
	}
}

@media (max-width: 767px) {
	.csg-stitch-footer {
		margin-top: 32px;
		padding: 32px 0 24px;
	}

	.csg-stitch-footer-grid {
		gap: 20px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.csg-stitch-footer-brand {
		grid-column: 1 / -1;
	}

	.csg-stitch-footer-contacts {
		grid-column: 1 / -1;
	}
}

@media (max-width: 479px) {
	.csg-stitch-footer-grid {
		grid-template-columns: 1fr;
	}

	.csg-stitch-footer-phone a {
		font-size: 16px;
	}
}

/* Stage 8S-MOBILE-QA responsive fixes */
html {
	overflow-x: clip;
}

body {
	max-width: 100%;
	overflow-x: hidden;
}

.csg-final-header,
.csg-figma-home.container,
.csg-listing-page.container,
.csg-product-page,
#checkout-cart.csg-cart-page.container,
#checkout-checkout.csg-checkout-page.container,
.csg-stitch-footer-shell {
	max-width: 100%;
}

.csg-final-header img,
.csg-listing-product-image img,
#product-product .csg-product-main-image img,
.csg-cart-item-image img {
	height: auto;
	max-width: 100%;
}

.csg-product-card .csg-listing-product-image img,
.csg-listing-product-image img {
	height: 88%;
	max-height: 88%;
	max-width: 88%;
	width: 88%;
}

@media (max-width: 991px) {
	.csg-final-actionbar-inner {
		flex-wrap: wrap !important;
	}

	.csg-final-header .csg-header-search,
	.csg-final-header .csg-catalog-menu {
		flex: 1 1 100%;
		min-width: 0;
		width: 100%;
	}

	.csg-final-header .csg-header-actions {
		flex: 1 1 100%;
		min-width: 0;
		width: 100%;
	}

	.csg-final-header .csg-catalog-dropdown {
		left: 0;
		min-width: 0;
		right: 0;
		width: 100%;
	}

	.csg-final-brand-row {
		grid-template-columns: minmax(0, 1fr);
	}

	.csg-final-contacts {
		justify-self: stretch;
		width: 100%;
	}

	#product-product .csg-product-service-card {
		display: flex;
		flex-direction: column;
	}

	#checkout-checkout .csg-checkout-sidebar .csg-checkout-trust {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	#product-product > .row {
		margin-left: 0;
		margin-right: 0;
	}

	#product-product > .row > [class*="col-"] {
		padding-left: 0;
		padding-right: 0;
	}

	/* Не даём legacy-правилу .csg-header-cart { grid-column: 1 / -1 } ломать финальный хедер */
	.csg-final-header .csg-header-actions {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		grid-template-rows: 40px;
		height: 40px;
		min-height: 40px;
	}

	.csg-final-header .csg-header-account,
	.csg-final-header .csg-header-compare,
	.csg-final-header .csg-header-wishlist,
	.csg-final-header .csg-header-cart,
	.csg-final-header .csg-header-action,
	.csg-final-header #cart.csg-cart,
	.csg-final-header #cart.csg-cart > .csg-cart-button {
		grid-column: auto !important;
		grid-row: 1;
		height: 40px;
		min-height: 40px;
	}

	.csg-final-header .csg-header-cart,
	.csg-final-header #cart.csg-cart {
		background: transparent;
		border: 0;
		box-shadow: none;
	}

	/* Корзина: та же плитка, что у compare/wishlist (перебивает .csg-header-action { border: 0 }) */
	.csg-final-header .csg-header-actions #cart.csg-cart > .csg-cart-button.csg-header-action,
	.csg-final-header .csg-header-actions #cart.csg-cart > .csg-cart-button {
		align-items: center !important;
		background-color: transparent !important;
		background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0.06) 100%) !important;
		border: 1px solid rgba(255, 255, 255, 0.24) !important;
		border-radius: 10px !important;
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
		color: #ffffff !important;
		display: flex !important;
		flex-direction: row !important;
		height: 40px !important;
		justify-content: center !important;
		margin: 0 !important;
		min-height: 40px !important;
		min-width: 0 !important;
		overflow: visible !important;
		padding: 0 !important;
		position: relative !important;
		text-shadow: none !important;
		width: 100% !important;
	}

	.csg-final-header .csg-header-actions #cart.csg-cart > .csg-cart-button.csg-header-action:hover,
	.csg-final-header .csg-header-actions #cart.csg-cart > .csg-cart-button.csg-header-action:focus,
	.csg-final-header .csg-header-actions #cart.csg-cart.open > .csg-cart-button.csg-header-action {
		background-color: rgba(255, 255, 255, 0.2) !important;
		background-image: none !important;
		border-color: rgba(255, 255, 255, 0.36) !important;
		color: #ffffff !important;
	}

	.csg-final-header #cart-total.csg-header-badge[data-count="0"] {
		display: none;
	}

	.csg-final-utility,
	.csg-final-brand-row,
	.csg-final-actionbar-inner,
	.csg-final-promo-nav,
	.csg-final-locale,
	#top-links.csg-topbar-links ul {
		min-width: 0;
	}

	.csg-final-promo-nav {
		gap: 10px 14px;
		justify-content: flex-start;
	}

	.csg-final-promo-nav a {
		white-space: normal;
	}

	.csg-header-shell .csg-header-action,
	.csg-header-unified .csg-header-action,
	.csg-header-shell #cart.csg-cart > .csg-cart-button,
	.csg-header-unified #cart.csg-cart > .csg-cart-button {
		min-width: 0;
	}

	.csg-figma-hero h1,
	#product-product .csg-product-title,
	.csg-listing-heading h1 {
		overflow-wrap: anywhere;
	}

	.csg-category-showcase-panel-head {
		align-items: flex-start;
		flex-direction: column;
	}

	.csg-category-showcase-tabs {
		gap: 8px;
	}

	.csg-category-showcase-tab {
		font-size: 12px;
		padding: 8px 12px;
	}

	#product-product .csg-cart-row {
		grid-template-columns: minmax(0, 1fr);
	}

	#product-product .csg-qty-stepper {
		width: 100%;
	}

	#product-product #button-cart {
		width: 100%;
	}

	.csg-listing-button-group .csg-listing-cart-button span {
		white-space: normal;
	}

	.csg-listing-toolbar,
	.csg-listing-pagination {
		gap: 10px;
	}

	#checkout-cart .csg-cart-summary-actions .csg-mini-cart-btn,
	#checkout-cart .csg-cart-summary-actions .btn {
		width: 100%;
	}
}

@media (max-width: 430px) {
	.csg-final-header .csg-brand-text {
		font-size: 18px;
	}

	.csg-figma-hero h1 {
		font-size: 26px;
		line-height: 1.15;
	}

	#product-product .csg-product-title {
		font-size: 24px;
	}

	.csg-listing-heading h1 {
		font-size: 22px;
	}

	.csg-listing-product-price,
	.csg-listing-product-price .price-new {
		font-size: 20px;
	}

}

@media (max-width: 575px) {
	#checkout-checkout .csg-checkout-sidebar .csg-checkout-trust,
	#checkout-checkout .csg-checkout-trust {
		grid-template-columns: 1fr;
	}
}

/* Stage 8S-ICON-FIX: иконки в кнопках листинга, хедере, корзине, checkout */
.csg-listing-button-group button .fa,
.product-thumb .button-group button .fa,
#cart.csg-cart > .csg-cart-button .fa,
.csg-final-header .fa,
.csg-stitch-footer .fa,
#checkout-cart .fa,
#checkout-checkout .fa,
#product-product .fa {
	font-family: FontAwesome !important;
	font-size: 16px;
	font-style: normal !important;
	font-weight: normal !important;
	line-height: 1;
}

.csg-listing-button-group button .fa,
.product-thumb .button-group button .fa {
	flex-shrink: 0;
	min-width: 1em;
	text-align: center;
}

.csg-listing-button-group .csg-listing-cart-button .fa {
	font-size: 15px;
}

.csg-listing-rating .fa-stack,
.csg-listing-rating .fa-stack .fa {
	font-family: FontAwesome !important;
}

/* Stage 8T: Light/Dark theme mode */
:root,
html[data-csg-theme="light"] {
	--csg-page-bg: #f7f9ff;
	--csg-surface: #ffffff;
	--csg-surface-soft: #f3f6fb;
	--csg-text: #181c20;
	--csg-text-muted: #565f6f;
	--csg-border: #e5e7eb;
	--csg-header-bg: #1a2b3c;
	--csg-header-surface: #223348;
	--csg-footer-bg: #111827;
	--csg-green: #00bc52;
	--csg-green-dark: #006e2d;
	--csg-card-shadow: 0 4px 10px rgba(0, 26, 52, 0.05);
	--csg-bg: var(--csg-page-bg);
	--csg-surface-muted: var(--csg-surface-soft);
	--csg-primary: var(--csg-green);
	--csg-primary-hover: var(--csg-green-dark);
	--csg-focus: rgba(0, 188, 82, 0.72);
}

html[data-csg-theme="dark"] {
	--csg-page-bg: #0f1724;
	--csg-surface: #172133;
	--csg-surface-soft: #1f2b3f;
	--csg-text: #f5f7fb;
	--csg-text-muted: #aab4c5;
	--csg-border: #2f3d52;
	--csg-header-bg: #0b1220;
	--csg-header-surface: #111827;
	--csg-footer-bg: #080d16;
	--csg-green: #00bc52;
	--csg-green-dark: #00a347;
	--csg-card-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
	--csg-bg: var(--csg-page-bg);
	--csg-surface-muted: var(--csg-surface-soft);
	--csg-primary: var(--csg-green);
	--csg-primary-hover: var(--csg-green-dark);
	--csg-focus: rgba(0, 188, 82, 0.72);
}

html[data-csg-theme] {
	background: var(--csg-page-bg);
}

html[data-csg-theme] body {
	background: var(--csg-page-bg);
	color: var(--csg-text);
}

html[data-csg-theme] h1,
html[data-csg-theme] h2,
html[data-csg-theme] h3,
html[data-csg-theme] h4,
html[data-csg-theme] h5,
html[data-csg-theme] h6,
html[data-csg-theme] legend,
html[data-csg-theme] label,
html[data-csg-theme] .panel-title,
html[data-csg-theme] .table {
	color: var(--csg-text);
}

html[data-csg-theme] a {
	color: var(--csg-green-dark);
}

html[data-csg-theme="dark"] a {
	color: var(--csg-green);
}

html[data-csg-theme] a:hover,
html[data-csg-theme] a:focus {
	color: var(--csg-green);
}

html[data-csg-theme] .form-control,
html[data-csg-theme] select.form-control,
html[data-csg-theme] textarea.form-control,
html[data-csg-theme] input[type="text"].form-control,
html[data-csg-theme] input[type="password"].form-control,
html[data-csg-theme] input[type="email"].form-control,
html[data-csg-theme] input[type="tel"].form-control,
html[data-csg-theme] input[type="search"].form-control,
html[data-csg-theme] input[type="number"].form-control,
html[data-csg-theme] .input-group-addon,
html[data-csg-theme] .well {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: none;
	color: var(--csg-text);
}

html[data-csg-theme] .form-control::placeholder,
html[data-csg-theme] input::placeholder,
html[data-csg-theme] textarea::placeholder {
	color: var(--csg-text-muted);
}

html[data-csg-theme] .form-control:focus,
html[data-csg-theme] select.form-control:focus,
html[data-csg-theme] textarea.form-control:focus {
	border-color: var(--csg-green);
	box-shadow: 0 0 0 3px rgba(0, 188, 82, 0.16);
}

html[data-csg-theme] .dropdown-menu,
html[data-csg-theme] .popover,
html[data-csg-theme] .panel,
html[data-csg-theme] .modal-content,
html[data-csg-theme] .list-group-item {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme] .dropdown-menu > li > a,
html[data-csg-theme] .dropdown-menu .btn-link,
html[data-csg-theme] .list-group a,
html[data-csg-theme] .list-group-item {
	color: var(--csg-text);
	text-shadow: none;
}

html[data-csg-theme] .dropdown-menu > li > a:hover,
html[data-csg-theme] .dropdown-menu > li > a:focus,
html[data-csg-theme] .dropdown-menu .btn-link:hover,
html[data-csg-theme] .dropdown-menu .btn-link:focus,
html[data-csg-theme] .list-group a.active,
html[data-csg-theme] .list-group a.active:hover,
html[data-csg-theme] .list-group a:hover {
	background: rgba(0, 188, 82, 0.12);
	background-image: none;
	border-color: rgba(0, 188, 82, 0.32);
	color: var(--csg-green-dark);
}

html[data-csg-theme="dark"] .dropdown-menu > li > a:hover,
html[data-csg-theme="dark"] .dropdown-menu > li > a:focus,
html[data-csg-theme="dark"] .dropdown-menu .btn-link:hover,
html[data-csg-theme="dark"] .dropdown-menu .btn-link:focus,
html[data-csg-theme="dark"] .list-group a.active,
html[data-csg-theme="dark"] .list-group a.active:hover,
html[data-csg-theme="dark"] .list-group a:hover {
	color: var(--csg-green);
}

html[data-csg-theme] .breadcrumb {
	background: transparent;
	border-color: var(--csg-border);
	color: var(--csg-text-muted);
	text-shadow: none;
}

html[data-csg-theme] .breadcrumb > li,
html[data-csg-theme] .breadcrumb > li > a {
	color: var(--csg-text-muted);
	text-shadow: none;
}

html[data-csg-theme] .breadcrumb > li:after {
	border-color: var(--csg-border);
}

html[data-csg-theme] #account-wishlist .csg-account-heading,
html[data-csg-theme] #account-wishlist .csg-wishlist-panel {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
	color: var(--csg-text);
}

html[data-csg-theme] #account-wishlist .csg-account-heading {
	background:
		radial-gradient(circle at 92% 14%, rgba(0, 188, 82, 0.13), transparent 32%),
		linear-gradient(135deg, var(--csg-surface) 0%, var(--csg-surface-soft) 100%);
}

html[data-csg-theme] #account-wishlist .csg-account-heading h1,
html[data-csg-theme] #account-wishlist .csg-wishlist-table tbody td {
	color: var(--csg-text);
}

html[data-csg-theme] #account-wishlist .csg-wishlist-table thead td {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text-muted);
}

html[data-csg-theme] #account-wishlist .csg-wishlist-table tbody td {
	border-color: var(--csg-border);
}

html[data-csg-theme] #account-wishlist .csg-wishlist-table tbody tr:hover {
	background: rgba(0, 188, 82, 0.08);
}

html[data-csg-theme] #account-wishlist .csg-wishlist-image a {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
}

html[data-csg-theme] #account-wishlist .csg-wishlist-name a,
html[data-csg-theme] #account-wishlist .csg-wishlist-price .price {
	color: var(--csg-green-dark);
}

html[data-csg-theme="dark"] #account-wishlist .csg-wishlist-name a,
html[data-csg-theme="dark"] #account-wishlist .csg-wishlist-price .price {
	color: var(--csg-green);
}

html[data-csg-theme] #account-wishlist .csg-wishlist-model,
html[data-csg-theme] #account-wishlist .csg-wishlist-empty,
html[data-csg-theme] #account-wishlist .csg-wishlist-price s {
	color: var(--csg-text-muted);
}

html[data-csg-theme] #account-wishlist .csg-wishlist-stock span {
	background: rgba(0, 188, 82, 0.12);
	border-color: rgba(0, 188, 82, 0.3);
	color: var(--csg-green-dark);
}

html[data-csg-theme="dark"] #account-wishlist .csg-wishlist-stock span {
	color: var(--csg-green);
}

html[data-csg-theme] #account-wishlist .csg-wishlist-remove {
	background: rgba(220, 38, 38, 0.12);
	border-color: rgba(220, 38, 38, 0.25);
	color: #dc2626;
}

html[data-csg-theme="dark"] #account-wishlist .csg-wishlist-remove {
	color: #ff7b8a;
}

html[data-csg-theme] #account-address .csg-account-address-heading,
html[data-csg-theme] #account-address .csg-address-panel {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
	color: var(--csg-text);
}

html[data-csg-theme] #account-address .csg-account-address-heading {
	background:
		radial-gradient(circle at 92% 14%, rgba(0, 188, 82, 0.13), transparent 32%),
		linear-gradient(135deg, var(--csg-surface) 0%, var(--csg-surface-soft) 100%);
}

html[data-csg-theme] #account-address .csg-address-card {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
}

html[data-csg-theme="dark"] #account-address .csg-account-address-heading,
html[data-csg-theme="dark"] #account-address .csg-address-panel {
	box-shadow: none;
}

html[data-csg-theme] #account-address .csg-address-delete {
	background: rgba(220, 38, 38, 0.12);
	border-color: rgba(220, 38, 38, 0.25);
	color: #dc2626;
}

html[data-csg-theme="dark"] #account-address .csg-address-delete {
	color: #ff7b8a;
}

html[data-csg-theme] #account-reward .csg-account-reward-heading,
html[data-csg-theme] #account-reward .csg-reward-summary,
html[data-csg-theme] #account-reward .csg-reward-panel {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
	color: var(--csg-text);
}

html[data-csg-theme] #account-reward .csg-account-reward-heading {
	background:
		radial-gradient(circle at 92% 14%, rgba(0, 188, 82, 0.13), transparent 32%),
		linear-gradient(135deg, var(--csg-surface) 0%, var(--csg-surface-soft) 100%);
}

html[data-csg-theme] #account-reward .csg-reward-table tbody td,
html[data-csg-theme] #account-reward .csg-account-reward-heading h1 {
	color: var(--csg-text);
}

html[data-csg-theme] #account-reward .csg-reward-summary-copy span,
html[data-csg-theme] #account-reward .csg-reward-empty,
html[data-csg-theme] #account-reward .csg-reward-meta {
	color: var(--csg-text-muted);
}

html[data-csg-theme] #account-reward .csg-reward-table thead td {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text-muted);
}

html[data-csg-theme] #account-reward .csg-reward-table tbody td {
	border-color: var(--csg-border);
}

html[data-csg-theme] #account-reward .csg-reward-link,
html[data-csg-theme] #account-reward .csg-reward-summary-copy strong,
html[data-csg-theme] #account-reward .csg-reward-points-badge {
	color: var(--csg-green-dark);
}

html[data-csg-theme="dark"] #account-reward .csg-reward-link,
html[data-csg-theme="dark"] #account-reward .csg-reward-summary-copy strong,
html[data-csg-theme="dark"] #account-reward .csg-reward-points-badge {
	color: var(--csg-green);
}

html[data-csg-theme="dark"] #account-reward .csg-account-reward-heading,
html[data-csg-theme="dark"] #account-reward .csg-reward-summary,
html[data-csg-theme="dark"] #account-reward .csg-reward-panel {
	box-shadow: none;
}

@media (max-width: 767px) {
	html[data-csg-theme] #account-wishlist .csg-wishlist-table tbody tr {
		background: var(--csg-surface-soft);
		border-color: var(--csg-border);
	}

	html[data-csg-theme] #account-wishlist .csg-wishlist-model::before,
	html[data-csg-theme] #account-wishlist .csg-wishlist-stock::before,
	html[data-csg-theme] #account-wishlist .csg-wishlist-price::before {
		color: var(--csg-text-muted);
	}

	html[data-csg-theme] #account-reward .csg-reward-table tbody tr {
		background: var(--csg-surface-soft);
		border-color: var(--csg-border);
	}
}

html[data-csg-theme] .table > thead > tr > th,
html[data-csg-theme] .table > tbody > tr > th,
html[data-csg-theme] .table > tfoot > tr > th,
html[data-csg-theme] .table > thead > tr > td,
html[data-csg-theme] .table > tbody > tr > td,
html[data-csg-theme] .table > tfoot > tr > td {
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme] .btn-default {
	background: var(--csg-surface);
	background-image: none;
	border-color: var(--csg-border);
	box-shadow: none;
	color: var(--csg-text);
	text-shadow: none;
}

html[data-csg-theme] .btn-default:hover,
html[data-csg-theme] .btn-default:focus {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme] .btn-primary,
html[data-csg-theme] .btn-success {
	background: var(--csg-green);
	background-image: none;
	border-color: var(--csg-green);
	box-shadow: none;
	color: #ffffff;
	text-shadow: none;
}

html[data-csg-theme] .btn-primary:hover,
html[data-csg-theme] .btn-primary:focus,
html[data-csg-theme] .btn-success:hover,
html[data-csg-theme] .btn-success:focus {
	background: var(--csg-green-dark);
	border-color: var(--csg-green-dark);
	color: #ffffff;
}

html[data-csg-theme] .alert-success {
	background: rgba(0, 188, 82, 0.12);
	border-color: rgba(0, 188, 82, 0.28);
	color: var(--csg-text);
}

html[data-csg-theme] .alert-info {
	background: rgba(0, 188, 82, 0.1);
	border-color: rgba(0, 188, 82, 0.24);
	color: var(--csg-text);
}

html[data-csg-theme] .alert-warning {
	background: rgba(245, 158, 11, 0.12);
	border-color: rgba(245, 158, 11, 0.28);
	color: var(--csg-text);
}

html[data-csg-theme] .alert-danger {
	background: rgba(220, 38, 38, 0.12);
	border-color: rgba(220, 38, 38, 0.28);
	color: var(--csg-text);
}

html[data-csg-theme] .csg-home-rebuild {
	--csg-ecom-bg: var(--csg-page-bg);
	--csg-ecom-card: var(--csg-surface);
	--csg-ecom-green: var(--csg-green);
	--csg-ecom-green-dark: var(--csg-green-dark);
	--csg-ecom-text: var(--csg-text);
	--csg-ecom-muted: var(--csg-text-muted);
	--csg-ecom-border: var(--csg-border);
	--csg-ecom-shadow: var(--csg-card-shadow);
	--csg-ecom-shadow-hover: var(--csg-card-shadow);
}

html[data-csg-theme] .csg-home-rebuild #content,
html[data-csg-theme] .csg-listing-page.container,
html[data-csg-theme] #checkout-cart.csg-cart-page.container,
html[data-csg-theme] #checkout-checkout.csg-checkout-page.container,
html[data-csg-theme] .csg-product-page {
	background: var(--csg-page-bg);
	color: var(--csg-text);
}

html[data-csg-theme] .product-thumb,
html[data-csg-theme] .csg-product-card,
html[data-csg-theme] .csg-listing-product-card,
html[data-csg-theme] .csg-listing-refine,
html[data-csg-theme] .csg-listing-products,
html[data-csg-theme] .csg-search-panel,
html[data-csg-theme] .csg-listing-filter,
html[data-csg-theme] .csg-listing-category-module,
html[data-csg-theme] .csg-listing-empty,
html[data-csg-theme] .csg-home-rebuild .csg-home-category-card,
html[data-csg-theme] .csg-home-rebuild .csg-home-benefit,
html[data-csg-theme] .csg-home-rebuild .csg-featured-grid .product-thumb,
html[data-csg-theme] #product-product .csg-product-main-frame,
html[data-csg-theme] #product-product .csg-product-summary,
html[data-csg-theme] #product-product .csg-purchase-box,
html[data-csg-theme] #product-product .csg-product-service-card,
html[data-csg-theme] #product-product .tab-content,
html[data-csg-theme] #checkout-cart .csg-cart-panel,
html[data-csg-theme] #checkout-cart .csg-cart-item,
html[data-csg-theme] #checkout-cart .csg-cart-summary,
html[data-csg-theme] #checkout-checkout .csg-checkout-step > .panel-heading,
html[data-csg-theme] #checkout-checkout .csg-checkout-step > .panel-collapse:has(> .csg-checkout-preview),
html[data-csg-theme] #checkout-checkout .csg-checkout-step > .panel-heading + .panel-collapse:not(:has(> .csg-checkout-preview)) > .panel-body,
html[data-csg-theme] #checkout-checkout .csg-checkout-step > .panel-collapse:not(:has(> .csg-checkout-preview)) > .panel-body,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-card,
html[data-csg-theme] #checkout-checkout .csg-checkout-trust-item {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
	color: var(--csg-text);
}

html[data-csg-theme] .product-thumb .image,
html[data-csg-theme] .csg-product-card .csg-listing-product-image,
html[data-csg-theme] .csg-listing-product-image,
html[data-csg-theme] .csg-home-rebuild .csg-featured-grid .product-thumb .image,
html[data-csg-theme] #product-product .csg-product-main-image,
html[data-csg-theme] #product-product .csg-product-thumb-list .image-additional a.thumbnail,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-thumb {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
}

html[data-csg-theme] .csg-home-rebuild .csg-section-heading h2,
html[data-csg-theme] .csg-listing-heading h1,
html[data-csg-theme] .csg-listing-product-caption h4 a,
html[data-csg-theme] .csg-listing-product-price,
html[data-csg-theme] .csg-listing-product-price .price-new,
html[data-csg-theme] #product-product .csg-product-title,
html[data-csg-theme] #product-product .csg-price-block h2,
html[data-csg-theme] #product-product .csg-product-meta li span,
html[data-csg-theme] #checkout-cart .csg-cart-heading h1,
html[data-csg-theme] #checkout-checkout .csg-checkout-heading h1,
html[data-csg-theme] #checkout-checkout .csg-checkout-step .panel-title,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-title,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-name,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-price,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-item-title a,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-total-row strong {
	color: var(--csg-text);
}

html[data-csg-theme] .csg-listing-product-code,
html[data-csg-theme] .csg-listing-product-meta,
html[data-csg-theme] .csg-listing-results,
html[data-csg-theme] .csg-listing-description,
html[data-csg-theme] .csg-listing-filter .checkbox label,
html[data-csg-theme] .csg-home-rebuild .csg-home-category-card small,
html[data-csg-theme] .csg-home-rebuild .csg-home-benefit span,
html[data-csg-theme] #product-product .csg-product-meta,
html[data-csg-theme] #checkout-cart .csg-cart-breadcrumb > li,
html[data-csg-theme] #checkout-cart .csg-cart-breadcrumb > li > a,
html[data-csg-theme] #checkout-checkout .csg-checkout-breadcrumb > li,
html[data-csg-theme] #checkout-checkout .csg-checkout-breadcrumb > li > a,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-meta,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-loading,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-empty,
html[data-csg-theme] #checkout-checkout .csg-checkout-summary-placeholder,
html[data-csg-theme] #checkout-checkout .csg-checkout-agree-text {
	color: var(--csg-text-muted);
}

html[data-csg-theme="light"] .csg-listing-heading {
	background:
		radial-gradient(circle at 88% 18%, rgba(0, 188, 82, 0.18), transparent 30%),
		linear-gradient(135deg, #ffffff 0%, #f0f5ff 100%);
	border-color: #e5e7eb;
	color: #181c20;
}

html[data-csg-theme="light"] .csg-listing-heading h1 {
	color: #181c20;
}

html[data-csg-theme="light"] .csg-listing-heading p,
html[data-csg-theme="light"] .csg-listing-description {
	color: #565f6f;
}

html[data-csg-theme="light"] #product-product .csg-product-main-frame {
	background: #ffffff;
	border: 1px solid var(--csg-border);
	border-radius: 22px;
	box-shadow: var(--csg-card-shadow);
	padding: 0;
}

html[data-csg-theme="light"] #product-product .csg-product-main-image {
	background: #ffffff;
	border-color: var(--csg-border);
	border-radius: 18px;
	box-shadow: 0 4px 20px rgba(0, 26, 52, 0.06);
}

html[data-csg-theme="light"] #product-product .csg-product-summary {
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	border: 1px solid var(--csg-border);
	border-radius: 22px;
	box-shadow: var(--csg-card-shadow);
	gap: 16px;
	padding: 22px;
}

html[data-csg-theme="light"] #product-product .csg-product-meta {
	background: #ffffff;
	border: 1px solid var(--csg-border);
	border-radius: 14px;
	gap: 8px 12px;
	padding: 12px 14px;
}

html[data-csg-theme="light"] #product-product .csg-product-meta li {
	color: var(--csg-text-muted);
}

html[data-csg-theme="light"] #product-product .csg-price-block {
	background: radial-gradient(circle at 12% 20%, rgba(0, 188, 82, 0.12), transparent 34%), #f8fafc;
	border: 1px solid var(--csg-border);
	border-radius: 16px;
	padding: 16px;
}

html[data-csg-theme="light"] #product-product .csg-product-benefits div {
	background: #ffffff;
	border: 1px solid var(--csg-border);
	color: var(--csg-text);
	min-height: 38px;
	padding: 8px 10px;
}

html[data-csg-theme="light"] #product-product .csg-purchase-box {
	background: #ffffff;
	border: 1px solid var(--csg-border);
	border-radius: 16px;
	margin-top: 0;
	padding: 16px;
}

html[data-csg-theme="light"] #product-product .csg-product-specs-card,
html[data-csg-theme="light"] #product-product .csg-product-service-card {
	background: #ffffff;
	border-color: var(--csg-border);
	border-radius: 18px;
	box-shadow: var(--csg-card-shadow);
}

html[data-csg-theme="light"] #product-product .csg-specs-card-tabs {
	background: #f8fafc;
	border-bottom-color: var(--csg-border);
}

html[data-csg-theme="light"] #product-product .csg-service-tabs-panel,
html[data-csg-theme="light"] #product-product .csg-service-tabs {
	background: #14253a;
}

html[data-csg-theme="light"] #product-product .csg-service-copy {
	background: #ffffff;
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] .csg-listing-heading {
	background:
		radial-gradient(circle at 88% 18%, rgba(0, 188, 82, 0.22), transparent 32%),
		linear-gradient(135deg, #172133 0%, #101827 100%);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] .csg-listing-heading h1 {
	color: #ffffff;
}

html[data-csg-theme="dark"] .csg-listing-heading p,
html[data-csg-theme="dark"] .csg-listing-description {
	color: var(--csg-text-muted);
}

html[data-csg-theme] .csg-listing-button-group,
html[data-csg-theme] .csg-home-rebuild .csg-featured-grid .product-thumb .button-group,
html[data-csg-theme] .csg-listing-filter .panel-heading,
html[data-csg-theme] .csg-listing-filter .list-group-item,
html[data-csg-theme] .csg-listing-category-module .list-group-item,
html[data-csg-theme] .csg-listing-filter .panel-footer {
	background: var(--csg-surface);
	border-color: var(--csg-border);
}

html[data-csg-theme] .csg-listing-filter .panel-heading {
	color: var(--csg-text);
}

html[data-csg-theme] .csg-listing-button-group button,
html[data-csg-theme] .csg-listing-product-card .csg-listing-button-group button:first-child,
html[data-csg-theme] .csg-listing-product-card .csg-listing-button-group button:nth-child(2),
html[data-csg-theme] .csg-listing-grid.is-list-view .csg-listing-icon-button,
html[data-csg-theme] .csg-listing-chip {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border) !important;
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product .csg-product-rating {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: #ffd166;
}

html[data-csg-theme="dark"] #product-product .csg-product-rating .fa-star-o {
	color: #506077;
}

html[data-csg-theme="dark"] #product-product .csg-product-rating a,
html[data-csg-theme="dark"] #product-product .csg-product-rating .csg-product-reviews-count,
html[data-csg-theme="dark"] #product-product .csg-product-rating .csg-product-reviews-count a {
	color: var(--csg-text-muted);
	text-decoration-color: rgba(170, 180, 197, 0.42);
}

html[data-csg-theme="dark"] #product-product .csg-product-breadcrumb {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
}

html[data-csg-theme="dark"] #product-product .csg-product-breadcrumb > li,
html[data-csg-theme="dark"] #product-product .csg-product-breadcrumb > li > a {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product .csg-product-breadcrumb > li:first-child > a {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-green);
}

html[data-csg-theme="dark"] #product-product .csg-product-breadcrumb > li:first-child > a:hover,
html[data-csg-theme="dark"] #product-product .csg-product-breadcrumb > li:first-child > a:focus {
	background: rgba(0, 188, 82, 0.16);
	border-color: rgba(0, 188, 82, 0.42);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #product-product .csg-product-breadcrumb > li + li::before {
	color: #64748b;
}

html[data-csg-theme="dark"] #product-product .csg-product-breadcrumb > li:last-child > a {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #product-product .csg-product-summary {
	background: linear-gradient(180deg, #172133 0%, #111827 100%);
	border: 1px solid var(--csg-border);
	border-radius: 22px;
	box-shadow: var(--csg-card-shadow);
	gap: 16px;
	padding: 22px;
}

html[data-csg-theme="dark"] #product-product .csg-product-meta {
	background: rgba(31, 43, 63, 0.72);
	border: 1px solid var(--csg-border);
	border-radius: 14px;
	gap: 8px 12px;
	padding: 12px 14px;
}

html[data-csg-theme="dark"] #product-product .csg-product-meta li {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product .csg-price-block {
	background: radial-gradient(circle at 12% 20%, rgba(0, 188, 82, 0.12), transparent 34%), var(--csg-surface-soft);
	border: 1px solid var(--csg-border);
	border-radius: 16px;
	padding: 16px;
}

html[data-csg-theme="dark"] #product-product .csg-product-benefits div {
	background: var(--csg-surface-soft);
	border: 1px solid var(--csg-border);
	border-color: var(--csg-border);
	color: var(--csg-text);
	min-height: 38px;
	padding: 8px 10px;
}

html[data-csg-theme="dark"] #product-product .csg-product-benefits span {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product .csg-purchase-box {
	background: rgba(31, 43, 63, 0.5);
	border: 1px solid var(--csg-border);
	border-radius: 16px;
	margin-top: 0;
	padding: 16px;
}

html[data-csg-theme="dark"] #product-product .csg-purchase-box h3,
html[data-csg-theme="dark"] #product-product .csg-product-option-head .control-label {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #product-product .csg-color-selected-label,
html[data-csg-theme="dark"] #product-product .csg-mouse-type-selected-label {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product .csg-mouse-type-switch {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
}

html[data-csg-theme="dark"] #product-product .csg-mouse-type-segment {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product .csg-mouse-type-segment:hover,
html[data-csg-theme="dark"] #product-product .csg-mouse-type-segment:focus {
	background: rgba(255, 255, 255, 0.06);
	border-color: rgba(0, 188, 82, 0.42);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #product-product .csg-mouse-type-segment.is-active {
	background: #ffffff;
	border-color: var(--csg-green);
	box-shadow: 0 0 0 1px rgba(0, 188, 82, 0.18);
	color: #111827;
}

html[data-csg-theme="dark"] #product-product .csg-qty-stepper {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
}

html[data-csg-theme="dark"] #product-product .csg-qty-step {
	background: var(--csg-surface) !important;
	color: var(--csg-text-muted) !important;
}

html[data-csg-theme="dark"] #product-product .csg-qty-step:hover,
html[data-csg-theme="dark"] #product-product .csg-qty-step:focus {
	background: rgba(0, 188, 82, 0.16) !important;
	color: var(--csg-text) !important;
}

html[data-csg-theme="dark"] #product-product .csg-qty-step-minus {
	border-right-color: var(--csg-border) !important;
}

html[data-csg-theme="dark"] #product-product .csg-qty-step-plus {
	border-left-color: var(--csg-border) !important;
}

html[data-csg-theme="dark"] #product-product #input-quantity {
	background: var(--csg-header-bg);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #product-product .csg-product-specs-card {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
}

html[data-csg-theme="dark"] #product-product .csg-specs-card-tabs {
	background: var(--csg-surface-soft);
	border-bottom-color: var(--csg-border);
}

html[data-csg-theme="dark"] #product-product .csg-specs-card-body {
	background: var(--csg-surface);
}

html[data-csg-theme="dark"] #product-product .csg-product-description-copy {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product .csg-product-specs-grid div {
	border-bottom-color: rgba(170, 180, 197, 0.52);
}

html[data-csg-theme="dark"] #product-product .csg-product-specs-grid span {
	color: #c7d0df;
}

html[data-csg-theme="dark"] #product-product .csg-product-specs-grid strong {
	color: #f5f7fb;
}

html[data-csg-theme="dark"] #product-product .csg-product-specs-grid strong.csg-spec-placeholder {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product .nav-tabs {
	background: var(--csg-surface);
	border-bottom-color: var(--csg-border);
}

html[data-csg-theme="dark"] #product-product .nav-tabs > li > a {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product .nav-tabs > li.active > a,
html[data-csg-theme="dark"] #product-product .nav-tabs > li.active > a:hover,
html[data-csg-theme="dark"] #product-product .nav-tabs > li.active > a:focus {
	background: var(--csg-header-bg);
	border-color: var(--csg-header-bg);
	color: #ffffff;
}

html[data-csg-theme="dark"] #product-product #tab-description,
html[data-csg-theme="dark"] #product-product #tab-specification,
html[data-csg-theme="dark"] #product-product #tab-specification td,
html[data-csg-theme="dark"] #product-product .csg-service-copy,
html[data-csg-theme="dark"] #product-product .csg-service-copy p {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #product-product #tab-specification .table {
	border-color: var(--csg-border);
}

html[data-csg-theme="dark"] #product-product #tab-specification thead td {
	background: var(--csg-surface-soft);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #product-product #tab-specification td:first-child {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #product-product .csg-product-service-card {
	background: var(--csg-surface);
	border-color: var(--csg-border);
}

html[data-csg-theme="dark"] #product-product .csg-service-tabs-panel,
html[data-csg-theme="dark"] #product-product .csg-service-tabs {
	background: var(--csg-header-bg);
}

html[data-csg-theme="dark"] #product-product .csg-service-tabs .csg-service-tab,
html[data-csg-theme="dark"] #product-product .csg-service-tabs span {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #product-product .csg-service-copy-loading,
html[data-csg-theme="dark"] #product-product .csg-service-copy-empty {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-heading {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: 18px;
	box-shadow: var(--csg-card-shadow);
	padding: 22px 24px;
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-weight,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-lead,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-sum-label,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-unit-hint,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-meta,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-options li span,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-note,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-qty-label,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-price-label,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-modules-lead,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-shipping-lead,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-total-row dt,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-trust li {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-title a,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-line-total,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-price-value,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-modules-title,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-promo-label,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-shipping-title,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-shipping-label,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-summary-title,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-total-row dd,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-total-row.is-grand dt,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-total-row.is-grand dd {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-title a:hover,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-title a:focus {
	color: var(--csg-green);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-item,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-modules,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-summary-card {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-item:hover {
	border-color: rgba(0, 188, 82, 0.32);
	box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-image,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-voucher-icon {
	background: #ffffff;
	border-color: var(--csg-border);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-toolbar,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-shipping-panel + .panel-default,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-promo-panel + .csg-cart-shipping-panel,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-total-row,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-trust {
	border-color: var(--csg-border);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-options li {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-stock.is-in {
	background: rgba(0, 188, 82, 0.14);
	border-color: rgba(0, 188, 82, 0.34);
	color: var(--csg-green);
}

@media (max-width: 767px) {
	html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-sum {
		background: rgba(0, 188, 82, 0.12);
		border-color: rgba(0, 188, 82, 0.34);
	}

	html[data-csg-theme="dark"] #checkout-cart .csg-cart-item-line-total {
		color: var(--csg-green);
	}
}

html[data-csg-theme="dark"] #checkout-cart .csg-qty-stepper {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
}

html[data-csg-theme="dark"] #checkout-cart .csg-qty-step {
	background: var(--csg-surface);
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #checkout-cart .csg-qty-step:hover,
html[data-csg-theme="dark"] #checkout-cart .csg-qty-step:focus {
	background: rgba(0, 188, 82, 0.16);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-cart .csg-qty-step-minus {
	border-right-color: var(--csg-border);
}

html[data-csg-theme="dark"] #checkout-cart .csg-qty-step-plus {
	border-left-color: var(--csg-border);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-qty-input,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-promo-input .form-control,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-shipping-control .form-control,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-accordion .form-control {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-promo-input .form-control::placeholder,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-shipping-control .form-control::placeholder {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-toolbar-btn,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-update-btn {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-toolbar-btn:hover,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-toolbar-btn:focus,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-update-btn:hover,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-update-btn:focus {
	background: rgba(0, 188, 82, 0.14);
	border-color: rgba(0, 188, 82, 0.42);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-remove-btn {
	background: #dc2626;
	border-color: #dc2626;
	color: #ffffff;
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-summary-card,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-modules {
	background: linear-gradient(180deg, #172133 0%, #111827 100%);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-total-row.is-grand {
	background: linear-gradient(135deg, rgba(0, 188, 82, 0.12), rgba(0, 188, 82, 0.04));
	border: 1px solid rgba(0, 188, 82, 0.32);
	border-radius: 14px;
	margin-top: 10px;
	padding: 14px 16px;
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-total-row.is-grand dd {
	color: var(--csg-green);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-btn-secondary {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-btn-secondary:hover,
html[data-csg-theme="dark"] #checkout-cart .csg-cart-btn-secondary:focus {
	background: rgba(0, 188, 82, 0.14);
	border-color: rgba(0, 188, 82, 0.42);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-accordion .panel-heading {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
}

html[data-csg-theme="dark"] #checkout-cart .csg-cart-accordion .panel-title > a {
	color: var(--csg-text);
}

html[data-csg-theme] .csg-listing-button-group .csg-listing-cart-button,
html[data-csg-theme] .csg-listing-product-card .csg-listing-button-group button:nth-child(3),
html[data-csg-theme] .csg-listing-grid.is-list-view .csg-listing-buybox-actions .csg-listing-buy-button,
html[data-csg-theme] .csg-listing-filter #button-filter,
html[data-csg-theme] .csg-search-submit .btn {
	background: var(--csg-green) !important;
	border-color: var(--csg-green) !important;
	color: #ffffff !important;
}

html[data-csg-theme] .csg-listing-button-group .csg-listing-cart-button:hover,
html[data-csg-theme] .csg-listing-button-group .csg-listing-cart-button:focus,
html[data-csg-theme] .csg-listing-product-card .csg-listing-button-group button:nth-child(3):hover,
html[data-csg-theme] .csg-listing-product-card .csg-listing-button-group button:nth-child(3):focus,
html[data-csg-theme] .csg-listing-filter #button-filter:hover,
html[data-csg-theme] .csg-listing-filter #button-filter:focus,
html[data-csg-theme] .csg-search-submit .btn:hover,
html[data-csg-theme] .csg-search-submit .btn:focus {
	background: var(--csg-green-dark) !important;
	border-color: var(--csg-green-dark) !important;
	color: #ffffff !important;
}

html[data-csg-theme] .csg-listing-pages .pagination > li > a,
html[data-csg-theme] .csg-listing-pages .pagination > li > span,
html[data-csg-theme] .pagination > li > a,
html[data-csg-theme] .pagination > li > span {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme] .csg-listing-pages .pagination > .active > span,
html[data-csg-theme] .csg-listing-pages .pagination > .active > a,
html[data-csg-theme] .pagination > .active > span,
html[data-csg-theme] .pagination > .active > a {
	background: var(--csg-green);
	border-color: var(--csg-green);
	color: #ffffff;
}

html[data-csg-theme] .csg-final-top {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	color: var(--csg-text-muted);
}

html[data-csg-theme] .csg-final-service-links a,
html[data-csg-theme] .csg-final-promo-nav a,
html[data-csg-theme] .csg-final-hours {
	color: var(--csg-text-muted);
}

html[data-csg-theme] .csg-final-phones a,
html[data-csg-theme] .csg-final-header .csg-brand-text,
html[data-csg-theme] .csg-final-header .csg-brand-logo-link {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] .csg-final-top {
	background: var(--csg-header-surface);
}

html[data-csg-theme="dark"] .csg-final-service-links a,
html[data-csg-theme="dark"] .csg-final-promo-nav a,
html[data-csg-theme="dark"] .csg-final-hours,
html[data-csg-theme="dark"] .csg-final-phones a,
html[data-csg-theme="dark"] .csg-final-header .csg-brand-text,
html[data-csg-theme="dark"] .csg-final-header .csg-brand-logo-link {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] .csg-final-header .csg-language-pills {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.16);
}

html[data-csg-theme="dark"] .csg-final-header .csg-language-pills .btn-link {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] .csg-final-header .csg-language-pills .btn-link.active,
html[data-csg-theme="dark"] .csg-final-header .csg-language-pills .btn-link:hover,
html[data-csg-theme="dark"] .csg-final-header .csg-language-pills .btn-link:focus {
	background: rgba(0, 188, 82, 0.18);
	color: #ffffff;
}

html[data-csg-theme="dark"] .csg-final-header #form-currency .btn-link,
html[data-csg-theme="dark"] .csg-final-header .csg-currency-static {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 999px;
	color: #ffffff;
	min-height: 26px;
	padding: 5px 10px;
}

html[data-csg-theme="dark"] .csg-final-header #form-currency .btn-link:hover,
html[data-csg-theme="dark"] .csg-final-header #form-currency .btn-link:focus {
	background: rgba(0, 188, 82, 0.18);
	border-color: rgba(0, 188, 82, 0.44);
	color: #ffffff;
}

html[data-csg-theme="dark"] .csg-final-header #form-currency .dropdown-menu {
	background: var(--csg-surface);
	border-color: var(--csg-border);
}

html[data-csg-theme="dark"] .csg-final-header #form-currency .dropdown-menu .btn-link {
	background: transparent;
	border: 0;
	border-radius: 8px;
	color: var(--csg-text);
	padding: 8px 10px;
}

html[data-csg-theme="dark"] .csg-final-header #form-currency .dropdown-menu .btn-link:hover,
html[data-csg-theme="dark"] .csg-final-header #form-currency .dropdown-menu .btn-link:focus {
	background: rgba(0, 188, 82, 0.16);
	color: var(--csg-green);
}

html[data-csg-theme] .csg-final-actionbar {
	background: var(--csg-header-bg);
}

html[data-csg-theme] .csg-final-header .csg-catalog-entry,
html[data-csg-theme] .csg-final-header #search.csg-search .csg-search-button {
	background: var(--csg-green);
	border-color: var(--csg-green);
}

html[data-csg-theme] .csg-final-header .csg-catalog-entry:hover,
html[data-csg-theme] .csg-final-header .csg-catalog-entry:focus,
html[data-csg-theme] .csg-final-header #search.csg-search .csg-search-button:hover,
html[data-csg-theme] .csg-final-header #search.csg-search .csg-search-button:focus {
	background: var(--csg-green-dark);
	border-color: var(--csg-green-dark);
}

html[data-csg-theme] .csg-final-header #search.csg-search,
html[data-csg-theme] .csg-final-header #search.csg-search .csg-search-input,
html[data-csg-theme] .csg-final-header .csg-header-account,
html[data-csg-theme] .csg-final-header .csg-header-action,
html[data-csg-theme] .csg-theme-toggle {
	background: var(--csg-header-surface);
	border-color: rgba(255, 255, 255, 0.14);
	color: #ffffff;
}

html[data-csg-theme] .csg-final-header #search.csg-search .csg-search-input::placeholder {
	color: rgba(255, 255, 255, 0.62);
}

html[data-csg-theme="light"] .csg-final-header .csg-header-actions {
	background: transparent;
	border: 0;
	box-shadow: none;
}

html[data-csg-theme="light"] .csg-final-header .csg-header-account,
html[data-csg-theme="light"] .csg-final-header .csg-header-action,
html[data-csg-theme="light"] .csg-final-header #cart.csg-cart > .csg-cart-button {
	background: transparent !important;
	background-image: none !important;
	border-color: transparent !important;
	box-shadow: none !important;
	color: #ffffff !important;
	text-shadow: none !important;
}

html[data-csg-theme="light"] .csg-final-header .csg-header-account:hover,
html[data-csg-theme="light"] .csg-final-header .csg-header-account:focus,
html[data-csg-theme="light"] .csg-final-header .csg-header-action:hover,
html[data-csg-theme="light"] .csg-final-header .csg-header-action:focus,
html[data-csg-theme="light"] .csg-final-header #cart.csg-cart > .csg-cart-button:hover,
html[data-csg-theme="light"] .csg-final-header #cart.csg-cart > .csg-cart-button:focus,
html[data-csg-theme="light"] .csg-final-header #cart.csg-cart.open > .csg-cart-button {
	background: rgba(0, 188, 82, 0.14) !important;
	background-image: none !important;
	border-color: rgba(0, 188, 82, 0.28) !important;
	box-shadow: none !important;
	color: #ffffff !important;
}

html[data-csg-theme="light"] .csg-final-header .csg-header-account-icon {
	background: transparent;
	border-color: rgba(0, 188, 82, 0.42);
	box-shadow: none;
}

html[data-csg-theme="light"] .csg-final-header .csg-header-account-greeting {
	color: rgba(255, 255, 255, 0.68);
}

html[data-csg-theme="light"] .csg-final-header .csg-header-account-login {
	color: #ffffff;
	text-decoration-color: rgba(0, 188, 82, 0.72);
}

html[data-csg-theme="dark"] .csg-final-header .csg-header-actions {
	background: transparent;
	border: 0;
	box-shadow: none;
}

html[data-csg-theme="dark"] .csg-final-header .csg-header-account,
html[data-csg-theme="dark"] .csg-final-header .csg-header-action,
html[data-csg-theme="dark"] .csg-final-header #cart.csg-cart > .csg-cart-button {
	background: transparent !important;
	background-image: none !important;
	border-color: transparent !important;
	box-shadow: none !important;
	color: #ffffff !important;
	text-shadow: none !important;
}

html[data-csg-theme="dark"] .csg-final-header .csg-header-account:hover,
html[data-csg-theme="dark"] .csg-final-header .csg-header-account:focus,
html[data-csg-theme="dark"] .csg-final-header .csg-header-action:hover,
html[data-csg-theme="dark"] .csg-final-header .csg-header-action:focus,
html[data-csg-theme="dark"] .csg-final-header #cart.csg-cart > .csg-cart-button:hover,
html[data-csg-theme="dark"] .csg-final-header #cart.csg-cart > .csg-cart-button:focus,
html[data-csg-theme="dark"] .csg-final-header #cart.csg-cart.open > .csg-cart-button {
	background: rgba(0, 188, 82, 0.14) !important;
	background-image: none !important;
	border-color: rgba(0, 188, 82, 0.28) !important;
	box-shadow: none !important;
	color: #ffffff !important;
}

html[data-csg-theme="dark"] .csg-final-header .csg-header-account-icon {
	background: transparent;
	border-color: rgba(0, 188, 82, 0.42);
	box-shadow: none;
}

html[data-csg-theme="dark"] .csg-final-header .csg-header-account-greeting {
	color: rgba(245, 247, 251, 0.68);
}

html[data-csg-theme="dark"] .csg-final-header .csg-header-account-login {
	color: #ffffff;
	text-decoration-color: rgba(0, 188, 82, 0.72);
}

@media (max-width: 767px) {
	html[data-csg-theme] .csg-final-header .csg-header-account,
	html[data-csg-theme] .csg-final-header .csg-header-action,
	html[data-csg-theme] .csg-final-header #cart.csg-cart > .csg-cart-button {
		background: rgba(255, 255, 255, 0.04) !important;
		background-image: none !important;
		border: 1px solid rgba(255, 255, 255, 0.18) !important;
		border-radius: 10px !important;
		box-shadow: none !important;
		color: #ffffff !important;
		height: 40px !important;
		min-height: 40px !important;
		width: 100% !important;
	}

	html[data-csg-theme] .csg-final-header .csg-header-account:hover,
	html[data-csg-theme] .csg-final-header .csg-header-account:focus,
	html[data-csg-theme] .csg-final-header .csg-header-action:hover,
	html[data-csg-theme] .csg-final-header .csg-header-action:focus,
	html[data-csg-theme] .csg-final-header #cart.csg-cart > .csg-cart-button:hover,
	html[data-csg-theme] .csg-final-header #cart.csg-cart > .csg-cart-button:focus,
	html[data-csg-theme] .csg-final-header #cart.csg-cart.open > .csg-cart-button {
		background: rgba(0, 188, 82, 0.16) !important;
		border-color: rgba(0, 188, 82, 0.46) !important;
		color: #ffffff !important;
	}

	html[data-csg-theme] .csg-final-header .csg-header-account-icon {
		background: transparent;
		border: 0;
		box-shadow: none;
	}
}

html[data-csg-theme] body > .container > #menu.csg-category-nav {
	background: #0d141f;
	border-color: transparent;
	color: #ffffff;
}

html[data-csg-theme] body > .container > #menu.csg-category-nav .navbar-collapse,
html[data-csg-theme] body > .container > #menu.csg-category-nav .navbar-nav {
	background: transparent;
}

html[data-csg-theme] body > .container > #menu.csg-category-nav .nav > li > a {
	background: transparent;
	border-color: transparent;
	color: rgba(255, 255, 255, 0.86);
	text-shadow: none;
}

html[data-csg-theme] body > .container > #menu.csg-category-nav .nav > li > a:hover,
html[data-csg-theme] body > .container > #menu.csg-category-nav .nav > li.open > a,
html[data-csg-theme] body > .container > #menu.csg-category-nav .nav > li > a:focus {
	background: rgba(0, 188, 82, 0.16);
	border-color: rgba(0, 188, 82, 0.34);
	color: #ffffff;
}

html[data-csg-theme="dark"] body > .container > #menu.csg-category-nav {
	background: var(--csg-header-bg);
	box-shadow: 0 18px 34px rgba(0, 0, 0, 0.22);
}

html[data-csg-theme="dark"] body > .container > #menu.csg-category-nav .dropdown-menu {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
}

html[data-csg-theme="dark"] body > .container > #menu.csg-category-nav .dropdown-inner a,
html[data-csg-theme="dark"] body > .container > #menu.csg-category-nav .see-all {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] body > .container > #menu.csg-category-nav .dropdown-inner a:hover,
html[data-csg-theme="dark"] body > .container > #menu.csg-category-nav .see-all:hover,
html[data-csg-theme="dark"] body > .container > #menu.csg-category-nav .see-all:focus {
	background: rgba(0, 188, 82, 0.16);
	color: #ffffff;
}

html[data-csg-theme] .csg-final-header .csg-catalog-dropdown {
	background: var(--csg-header-surface);
	border-color: rgba(255, 255, 255, 0.12);
}

html[data-csg-theme] .csg-final-header .csg-catalog-dropdown::before {
	border-bottom-color: var(--csg-header-surface);
}

html[data-csg-theme] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a {
	color: #ffffff;
}

html[data-csg-theme="light"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a {
	background: #f7f9ff;
	border-color: rgba(0, 26, 52, 0.08);
	color: #181c20;
}

html[data-csg-theme="light"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a::before {
	background: rgba(0, 188, 82, 0.1);
	color: #006e2d;
}

html[data-csg-theme="light"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:hover,
html[data-csg-theme="light"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:focus {
	background: #00bc52;
	border-color: #00bc52;
	color: #ffffff;
}

html[data-csg-theme="light"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:hover::before,
html[data-csg-theme="light"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:focus::before {
	background: rgba(255, 255, 255, 0.2);
	color: #ffffff;
}

html[data-csg-theme="dark"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a::before {
	background: rgba(0, 188, 82, 0.16);
	color: var(--csg-green);
}

html[data-csg-theme="dark"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:hover,
html[data-csg-theme="dark"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:focus {
	background: rgba(0, 188, 82, 0.18);
	border-color: rgba(0, 188, 82, 0.42);
	color: #ffffff;
}

html[data-csg-theme="dark"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:hover::before,
html[data-csg-theme="dark"] .csg-final-header .csg-catalog-dropdown #menu.csg-category-nav .nav > li > a:focus::before {
	background: rgba(255, 255, 255, 0.16);
	color: #ffffff;
}

html[data-csg-theme] #cart.csg-cart .dropdown-menu,
html[data-csg-theme] .csg-final-header #cart .dropdown-menu {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme] #cart.csg-cart .dropdown-menu li p:not(.csg-mini-cart-meta),
html[data-csg-theme] #cart .dropdown-menu li p {
	color: var(--csg-text-muted);
}

.csg-theme-toggle {
	align-items: center;
	background: #172133;
	border: 1px solid rgba(0, 26, 52, 0.18);
	border-radius: 999px;
	box-shadow: 0 4px 12px rgba(0, 26, 52, 0.14);
	color: #f8e9b0;
	cursor: pointer;
	display: inline-flex;
	flex: 0 0 auto;
	height: 26px;
	justify-content: center;
	line-height: 1;
	padding: 0;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
	width: 30px;
}

.csg-theme-toggle:hover,
.csg-theme-toggle:focus {
	background: #1f2b3f;
	border-color: rgba(0, 188, 82, 0.42);
	color: #fff3c4;
	outline: none;
}

.csg-theme-icon {
	display: block;
	position: relative;
}

.csg-theme-icon--moon {
	background: #f8e9b0;
	border-radius: 999px;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.34), 0 0 10px rgba(248, 233, 176, 0.32);
	height: 16px;
	overflow: hidden;
	width: 16px;
}

.csg-theme-icon--moon::before {
	background: #172133;
	border-radius: 999px;
	content: "";
	height: 16px;
	position: absolute;
	right: -5px;
	top: -2px;
	transition: background-color 0.15s ease;
	width: 16px;
}

.csg-theme-toggle:hover .csg-theme-icon--moon::before,
.csg-theme-toggle:focus .csg-theme-icon--moon::before {
	background: #1f2b3f;
}

.csg-theme-icon--sun {
	background: #ffd166;
	border: 1px solid #fff0b8;
	border-radius: 999px;
	box-shadow:
		0 -6px 0 -4px #ffd166,
		0 6px 0 -4px #ffd166,
		6px 0 0 -4px #ffd166,
		-6px 0 0 -4px #ffd166,
		4px 4px 0 -4px #ffd166,
		-4px 4px 0 -4px #ffd166,
		4px -4px 0 -4px #ffd166,
		-4px -4px 0 -4px #ffd166;
	height: 12px;
	width: 12px;
}

html[data-csg-theme="dark"] .csg-theme-toggle {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.16);
	color: #ffffff;
}

html[data-csg-theme="dark"] .csg-theme-toggle:hover,
html[data-csg-theme="dark"] .csg-theme-toggle:focus {
	background: rgba(0, 188, 82, 0.18);
	border-color: rgba(0, 188, 82, 0.44);
	color: #ffffff;
}

html[data-csg-theme] #checkout-checkout .csg-checkout-preview-tile,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-option,
html[data-csg-theme] #checkout-checkout .panel-body .radio label,
html[data-csg-theme] #checkout-checkout .panel-body .form-control,
html[data-csg-theme] #checkout-checkout .panel-body select.form-control,
html[data-csg-theme] #checkout-checkout .panel-body textarea.form-control,
html[data-csg-theme] #checkout-cart .form-control,
html[data-csg-theme] #checkout-cart select.form-control {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme] #checkout-checkout .csg-checkout-preview-tile.is-selected,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-option.is-selected,
html[data-csg-theme] #checkout-checkout .panel-body .radio label:has(input[type="radio"]:checked) {
	background: rgba(0, 188, 82, 0.12);
	border-color: var(--csg-green);
	color: var(--csg-text);
}

html[data-csg-theme] #checkout-checkout .panel-body,
html[data-csg-theme] #checkout-checkout .panel-body p,
html[data-csg-theme] #checkout-checkout .panel-body .radio label,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-tile,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-option,
html[data-csg-theme] #checkout-checkout .csg-checkout-method-option,
html[data-csg-theme] #checkout-checkout .csg-checkout-method-option label,
html[data-csg-theme] #checkout-checkout .csg-checkout-agree-label {
	color: var(--csg-text);
}

html[data-csg-theme] #checkout-checkout .panel-body label,
html[data-csg-theme] #checkout-checkout .panel-body label.control-label,
html[data-csg-theme] #checkout-checkout .panel-body .form-horizontal .control-label,
html[data-csg-theme] #checkout-checkout .csg-checkout-section-lead strong,
html[data-csg-theme] #checkout-checkout .panel-body p strong,
html[data-csg-theme] #checkout-checkout .csg-checkout-method-option-title,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-tile-head,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-tile-price,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-title,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-option strong {
	color: var(--csg-text);
}

html[data-csg-theme] #checkout-checkout .help-block,
html[data-csg-theme] #checkout-checkout .text-muted,
html[data-csg-theme] #checkout-checkout .csg-checkout-contact-subtitle,
html[data-csg-theme] #checkout-checkout .csg-checkout-contact-lead,
html[data-csg-theme] #checkout-checkout .csg-checkout-step-lead,
html[data-csg-theme] #checkout-checkout .csg-checkout-section-lead,
html[data-csg-theme] #checkout-checkout .csg-checkout-method-option-copy,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-copy,
html[data-csg-theme] #checkout-checkout .csg-checkout-preview-option span,
html[data-csg-theme] #checkout-checkout .panel-body .form-control::placeholder {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #checkout-checkout .panel-body .text-danger,
html[data-csg-theme="dark"] #checkout-checkout .panel-body .required .control-label::before {
	color: #ff6b6b;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected .csg-checkout-preview-tile-head,
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected .csg-checkout-preview-tile-price {
	color: #f5f7fb;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile-icon-box {
	background: var(--csg-surface-soft);
	color: var(--csg-green);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected {
	background: rgba(0, 188, 82, 0.12);
	border-color: var(--csg-green);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected .csg-checkout-preview-tile-icon-box {
	background: var(--csg-green);
	color: #0b1220;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile-price {
	background: var(--csg-surface-soft);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected .csg-checkout-preview-tile-price {
	background: rgba(0, 188, 82, 0.22);
	color: #f5f7fb;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-card {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-header {
	border-bottom-color: var(--csg-border);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-title {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-subtitle {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-label {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-chip {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-chip:hover,
html[data-csg-theme="dark"] #checkout-checkout .csg-np-chip.active {
	background: var(--csg-green);
	border-color: var(--csg-green);
	color: #0b1220;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-input,
html[data-csg-theme="dark"] #checkout-checkout .csg-np-select,
html[data-csg-theme="dark"] #checkout-checkout .csg-np-filter-input {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-dropdown {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-dropdown li {
	border-bottom-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-dropdown li:hover,
html[data-csg-theme="dark"] #checkout-checkout .csg-np-dropdown li.is-focused {
	background: rgba(0, 188, 82, 0.18);
	color: #ffffff;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-dropdown .csg-np-city-area {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-count-hint {
	color: var(--csg-green);
}


html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-preview-tile.is-selected .csg-checkout-preview-tile-head .fa {
	color: var(--csg-green);
	text-shadow: 0 0 10px rgba(0, 188, 82, 0.35);
}

html[data-csg-theme] #checkout-checkout .csg-checkout-order-items,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-item,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-totals,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-item,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-totals,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-total-row.is-grand,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-total.is-grand,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-card #collapse-checkout-confirm {
	border-color: var(--csg-border);
}

html[data-csg-theme] #checkout-checkout .csg-checkout-order-total,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-total span,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-total-row,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-total-row span {
	color: var(--csg-text-muted);
}

html[data-csg-theme] #checkout-checkout .csg-checkout-order-total strong,
html[data-csg-theme] #checkout-checkout .csg-checkout-order-total:not(.is-grand) strong,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-total-row strong,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-total-row:not(.is-grand) strong {
	color: var(--csg-text);
}

html[data-csg-theme] #checkout-checkout .csg-checkout-order-total.is-grand,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-total-row.is-grand {
	background: rgba(0, 188, 82, 0.08);
	border: 1px solid rgba(0, 188, 82, 0.22);
	border-radius: 12px;
	color: var(--csg-text);
	margin-top: 10px;
	padding: 12px 14px;
}

html[data-csg-theme] #checkout-checkout .csg-checkout-order-total.is-grand span,
html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-total-row.is-grand span {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-card {
	background: linear-gradient(180deg, rgba(23, 33, 51, 0.98) 0%, rgba(17, 24, 39, 0.98) 100%);
}

html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-cue {
	color: var(--csg-text);
}

html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-cue-copy strong {
	color: var(--csg-text);
}

html[data-csg-theme] #checkout-checkout .csg-checkout-confirm-cue-copy small {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-confirm-cue {
	background:
		linear-gradient(135deg, rgba(0, 188, 82, 0.18) 0%, rgba(31, 43, 63, 0.92) 100%);
	border-color: rgba(0, 188, 82, 0.42);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-card.is-confirm-ready {
	border-color: rgba(0, 188, 82, 0.5);
	box-shadow:
		0 18px 44px rgba(0, 0, 0, 0.26),
		0 0 0 2px rgba(0, 188, 82, 0.16);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-total.is-grand,
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-confirm-total-row.is-grand {
	background:
		linear-gradient(135deg, rgba(0, 188, 82, 0.13) 0%, rgba(23, 33, 51, 0.78) 100%);
	border-color: rgba(0, 188, 82, 0.34);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-item {
	background: transparent;
	border-bottom-color: rgba(170, 180, 197, 0.18);
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-thumb {
	background: #ffffff;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-qty {
	background: rgba(15, 23, 36, 0.9);
	border-color: rgba(0, 188, 82, 0.38);
	color: #ffffff;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-sidebar .csg-checkout-trust-item {
	background: rgba(23, 33, 51, 0.92);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme] .csg-stitch-footer {
	background: var(--csg-footer-bg);
	border-top-color: rgba(255, 255, 255, 0.08);
	color: #d8dee8;
}

html[data-csg-theme] .csg-stitch-footer-logo-mark {
	background: var(--csg-green);
	color: #ffffff;
}

html[data-csg-theme] .csg-stitch-footer-phone .fa {
	color: var(--csg-green);
}

html[data-csg-theme] .csg-stitch-footer-logo-text span,
html[data-csg-theme] .csg-stitch-footer-links a:hover,
html[data-csg-theme] .csg-stitch-footer-links a:focus,
html[data-csg-theme] .csg-stitch-footer-phone a:hover,
html[data-csg-theme] .csg-stitch-footer-phone a:focus {
	color: var(--csg-green);
}

html[data-csg-theme] .csg-stitch-footer h2,
html[data-csg-theme] .csg-stitch-footer h3,
html[data-csg-theme] .csg-stitch-footer h4,
html[data-csg-theme] .csg-stitch-footer .csg-stitch-footer-heading,
html[data-csg-theme] .csg-stitch-footer-logo,
html[data-csg-theme] .csg-stitch-footer-logo:hover,
html[data-csg-theme] .csg-stitch-footer-logo:focus,
html[data-csg-theme] .csg-stitch-footer-phone a {
	color: #ffffff;
}

html[data-csg-theme] .csg-stitch-footer a:not(.csg-stitch-footer-logo):not(.csg-stitch-footer-social-link),
html[data-csg-theme] .csg-stitch-footer-links a {
	color: rgba(216, 222, 232, 0.78);
}

html[data-csg-theme] .csg-stitch-footer-tagline {
	color: rgba(216, 222, 232, 0.72);
}

html[data-csg-theme] .csg-stitch-footer-copy,
html[data-csg-theme] .csg-stitch-footer-hours {
	color: rgba(216, 222, 232, 0.55);
}

html[data-csg-theme] .csg-stitch-footer a:not(.csg-stitch-footer-logo):not(.csg-stitch-footer-social-link):hover,
html[data-csg-theme] .csg-stitch-footer a:not(.csg-stitch-footer-logo):not(.csg-stitch-footer-social-link):focus,
html[data-csg-theme] .csg-stitch-footer-links a:hover,
html[data-csg-theme] .csg-stitch-footer-links a:focus {
	color: var(--csg-green);
}

html[data-csg-theme="dark"] .thumbnail,
html[data-csg-theme="dark"] .image-additional a,
html[data-csg-theme="dark"] .csg-product-badge {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] .price,
html[data-csg-theme="dark"] .price-new,
html[data-csg-theme="dark"] .csg-listing-product-price,
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-total.is-grand strong,
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-confirm-total-row.is-grand strong {
	color: var(--csg-green);
}

/* Stage 8T hotfix: keep dark hero/promo sections readable after global heading theming. */
html[data-csg-theme] .csg-figma-hero,
html[data-csg-theme] .csg-home-hero,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero {
	color: #ffffff;
}

html[data-csg-theme] .csg-figma-hero h1,
html[data-csg-theme] .csg-figma-hero h2,
html[data-csg-theme] .csg-figma-hero h3,
html[data-csg-theme] .csg-home-hero h1,
html[data-csg-theme] .csg-home-hero h2,
html[data-csg-theme] .csg-home-hero h3,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero h1,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero h2,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero h3,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero-stats span,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero-card strong {
	color: #ffffff;
}

html[data-csg-theme] .csg-figma-hero p,
html[data-csg-theme] .csg-home-hero-text,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero-text,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero-stats small,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero-card small {
	color: rgba(238, 241, 247, 0.84);
}

html[data-csg-theme] .csg-figma-hero a:not(.csg-figma-btn),
html[data-csg-theme] .csg-home-hero a:not(.btn),
html[data-csg-theme] .csg-home-rebuild .csg-home-hero a:not(.btn) {
	color: #69ff8b;
}

html[data-csg-theme] .csg-figma-hero .csg-figma-btn-primary,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero-cta {
	color: #ffffff;
}

html[data-csg-theme] .csg-figma-hero .csg-figma-btn-ghost,
html[data-csg-theme] .csg-home-rebuild .csg-home-hero-secondary {
	color: #ffffff;
}

html[data-csg-theme] .csg-figma-hero .csg-figma-btn-ghost:hover,
html[data-csg-theme] .csg-figma-hero .csg-figma-btn-ghost:focus {
	color: #181c20;
}

/* Stage 8T hotfix: keep promo cards and CTA links readable on colored surfaces. */
html[data-csg-theme] .csg-figma-promo,
html[data-csg-theme] .csg-figma-promo-dark,
html[data-csg-theme] .csg-figma-promo-green {
	color: #ffffff;
}

html[data-csg-theme] .csg-figma-promo h2,
html[data-csg-theme] .csg-figma-promo h3,
html[data-csg-theme] .csg-figma-promo-dark h2,
html[data-csg-theme] .csg-figma-promo-green h2 {
	color: #ffffff;
}

html[data-csg-theme] .csg-figma-promo span {
	color: rgba(255, 255, 255, 0.72);
}

html[data-csg-theme] .csg-figma-promo p {
	color: rgba(255, 255, 255, 0.82);
}

html[data-csg-theme] .csg-figma-promo a,
html[data-csg-theme] .csg-figma-section-head > a,
html[data-csg-theme] .csg-featured-section-link {
	background: var(--csg-green);
	color: #ffffff;
}

html[data-csg-theme] .csg-figma-promo a:hover,
html[data-csg-theme] .csg-figma-promo a:focus,
html[data-csg-theme] .csg-figma-section-head > a:hover,
html[data-csg-theme] .csg-figma-section-head > a:focus,
html[data-csg-theme] .csg-featured-section-link:hover,
html[data-csg-theme] .csg-featured-section-link:focus {
	background: var(--csg-green-dark);
	color: #ffffff;
}

@media (max-width: 767px) {
	html[data-csg-theme] #csg-featured-products .csg-featured-section-link {
		background: transparent;
		color: var(--csg-green-dark);
	}

	html[data-csg-theme] #csg-featured-products .csg-featured-section-link:hover,
	html[data-csg-theme] #csg-featured-products .csg-featured-section-link:focus {
		background: transparent;
		color: var(--csg-green);
	}
}

/* Stage 8T dark completion: homepage Figma sections should not keep light surfaces. */
html[data-csg-theme="dark"] .csg-figma-home,
html[data-csg-theme="dark"] .csg-figma-home #content {
	background: var(--csg-page-bg);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] .csg-figma-benefit,
html[data-csg-theme="dark"] .csg-figma-featured,
html[data-csg-theme="dark"] .csg-figma-category-showcase,
html[data-csg-theme="dark"] .csg-figma-product-column,
html[data-csg-theme="dark"] .csg-figma-review-card,
html[data-csg-theme="dark"] .csg-figma-reviews,
html[data-csg-theme="dark"] .csg-category-showcase-panel {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: var(--csg-card-shadow);
	color: var(--csg-text);
}

html[data-csg-theme="dark"] .csg-figma-benefit h2,
html[data-csg-theme="dark"] .csg-figma-section-head h2,
html[data-csg-theme="dark"] .csg-featured-section-title,
html[data-csg-theme="dark"] .csg-figma-product-column h3,
html[data-csg-theme="dark"] .csg-figma-review-card h3,
html[data-csg-theme="dark"] .csg-figma-mini-product h4,
html[data-csg-theme="dark"] .csg-figma-mini-product h4 a,
html[data-csg-theme="dark"] .csg-figma-category-tile,
html[data-csg-theme="dark"] .csg-figma-category-tile strong,
html[data-csg-theme="dark"] .csg-category-showcase-panel-head h3 {
	color: var(--csg-text);
}

html[data-csg-theme="dark"] .csg-figma-benefit p,
html[data-csg-theme="dark"] .csg-figma-review-card p,
html[data-csg-theme="dark"] .csg-figma-review-card span,
html[data-csg-theme="dark"] .csg-category-showcase-empty,
html[data-csg-theme="dark"] .csg-listing-product-code,
html[data-csg-theme="dark"] #csg-featured-products .csg-listing-product-code,
html[data-csg-theme="dark"] #csg-featured-products .csg-listing-product-meta,
html[data-csg-theme="dark"] #csg-featured-products .csg-listing-product-price .price-tax {
	color: var(--csg-text-muted);
}

html[data-csg-theme="dark"] .csg-figma-benefit-icon,
html[data-csg-theme="dark"] .csg-listing-stock {
	background: rgba(0, 188, 82, 0.14);
	border-color: rgba(0, 188, 82, 0.32);
	box-shadow: none;
	color: var(--csg-green);
}

html[data-csg-theme="dark"] .csg-figma-mini-image,
html[data-csg-theme="dark"] .csg-figma-category-art,
html[data-csg-theme="dark"] .csg-figma-card-actions button,
html[data-csg-theme="dark"] .csg-category-showcase-scroll-btn,
html[data-csg-theme="dark"] .csg-category-showcase-tab,
html[data-csg-theme="dark"] .csg-figma-pills a,
html[data-csg-theme="dark"] .csg-figma-review-card span {
	background: var(--csg-surface-soft);
	border-color: var(--csg-border);
	box-shadow: none;
	color: var(--csg-text);
}

html[data-csg-theme="dark"] .csg-figma-mini-product + .csg-figma-mini-product {
	border-top-color: var(--csg-border);
}

html[data-csg-theme="dark"] .csg-figma-mini-product .price,
html[data-csg-theme="dark"] .csg-category-showcase-panel-link,
html[data-csg-theme="dark"] .csg-category-showcase-empty a,
html[data-csg-theme="dark"] #csg-featured-products .csg-listing-product-price,
html[data-csg-theme="dark"] #csg-featured-products .csg-listing-product-price .price-new {
	color: var(--csg-green);
}

html[data-csg-theme="dark"] .csg-category-showcase-tab:hover,
html[data-csg-theme="dark"] .csg-category-showcase-tab:focus,
html[data-csg-theme="dark"] .csg-figma-pills a:hover,
html[data-csg-theme="dark"] .csg-figma-pills a:focus,
html[data-csg-theme="dark"] .csg-category-showcase-scroll-btn:hover,
html[data-csg-theme="dark"] .csg-category-showcase-scroll-btn:focus {
	background: rgba(0, 188, 82, 0.16);
	border-color: rgba(0, 188, 82, 0.48);
	color: var(--csg-green);
}

html[data-csg-theme="dark"] .csg-category-showcase-tab.is-active {
	background: var(--csg-green);
	border-color: var(--csg-green);
	color: #ffffff;
}

html[data-csg-theme="dark"] .csg-category-showcase-track::-webkit-scrollbar-thumb {
	background: var(--csg-border);
}

html[data-csg-theme="dark"] .csg-figma-device-card {
	background: rgba(245, 247, 251, 0.92);
	color: #181c20;
}

html[data-csg-theme="dark"] .csg-figma-device-card strong,
html[data-csg-theme="dark"] .csg-figma-device-card small {
	color: #181c20;
}

/* Product compare */
#product-compare {
	padding-bottom: 56px;
}

#product-compare .breadcrumb {
	margin-bottom: 26px;
}

.csg-compare-content {
	max-width: 1240px;
}

.csg-compare-heading {
	background:
		radial-gradient(circle at 88% 22%, rgba(0, 188, 82, 0.12), transparent 34%),
		linear-gradient(135deg, var(--csg-surface), var(--csg-surface-soft));
	border: 1px solid var(--csg-border);
	border-radius: 16px;
	box-shadow: var(--csg-card-shadow);
	margin-bottom: 22px;
	padding: 28px 30px;
}

.csg-compare-eyebrow {
	align-items: center;
	color: var(--csg-green);
	display: inline-flex;
	font-size: 12px;
	font-weight: 900;
	gap: 8px;
	letter-spacing: 0;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.csg-compare-heading h1 {
	color: var(--csg-text);
	font-size: 34px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.12;
	margin: 0;
}

.csg-compare-panel {
	background: var(--csg-surface);
	border: 1px solid var(--csg-border);
	border-radius: 16px;
	box-shadow: var(--csg-card-shadow);
	overflow: hidden;
}

.csg-compare-table-wrap {
	border: 0;
	margin: 0;
}

.csg-compare-table {
	background: transparent;
	color: var(--csg-text);
	margin: 0;
	min-width: 760px;
	table-layout: fixed;
}

.csg-compare-table > thead > tr > td,
.csg-compare-table > tbody > tr > td {
	background: transparent;
	border-color: var(--csg-border);
	color: var(--csg-text);
	padding: 16px 18px;
	vertical-align: middle;
}

.csg-compare-table > thead.csg-compare-section-row > tr > td {
	background: var(--csg-surface-soft);
	color: var(--csg-text);
	font-size: 15px;
	font-weight: 900;
	padding: 14px 18px;
	text-transform: uppercase;
}

.csg-compare-table > tbody > tr.is-different > td {
	background: rgba(0, 188, 82, 0.08);
	border-top-color: rgba(0, 188, 82, 0.26);
	border-bottom-color: rgba(0, 188, 82, 0.26);
}

.csg-compare-table > tbody > tr.is-different > .csg-compare-label {
	color: var(--csg-text);
	position: relative;
}

.csg-compare-table > tbody > tr.is-different > .csg-compare-label::after {
	background: rgba(0, 188, 82, 0.14);
	border: 1px solid rgba(0, 188, 82, 0.28);
	border-radius: 999px;
	color: var(--csg-green-dark);
	content: "Различие";
	display: inline-flex;
	font-size: 10px;
	font-weight: 900;
	margin-left: 8px;
	padding: 2px 7px;
	text-transform: none;
	vertical-align: middle;
}

.csg-compare-label {
	color: var(--csg-text-muted);
	font-size: 12px;
	font-weight: 900;
	text-transform: uppercase;
	width: 170px;
}

.csg-compare-product-name a {
	color: var(--csg-text);
	font-size: 17px;
	line-height: 1.25;
}

.csg-compare-product-name a:hover,
.csg-compare-product-name a:focus {
	color: var(--csg-green);
	text-decoration: none;
}

.csg-compare-image-link {
	align-items: center;
	background: #ffffff;
	border: 1px solid var(--csg-border);
	border-radius: 14px;
	display: inline-flex;
	justify-content: center;
	min-height: 132px;
	padding: 12px;
	width: 150px;
}

.csg-compare-image-cell .img-thumbnail {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	max-height: 110px;
	padding: 0;
}

.csg-compare-price {
	color: var(--csg-green);
	font-size: 18px;
	font-weight: 900;
}

.csg-compare-price strike {
	color: var(--csg-text-muted);
	font-size: 13px;
	font-weight: 700;
	margin-right: 8px;
}

.csg-compare-table .rating {
	color: var(--csg-text-muted);
}

.csg-compare-table .fa-star,
.csg-compare-table .fa-star-o {
	color: #f8c846;
}

.csg-compare-table .description {
	color: var(--csg-text-muted);
	line-height: 1.55;
}

.csg-compare-actions-row {
	display: flex;
	gap: 10px;
}

.csg-compare-actions-row .btn {
	align-items: center;
	border-radius: 10px;
	display: inline-flex;
	font-weight: 900;
	justify-content: center;
	margin: 0;
	min-height: 42px;
}

.csg-compare-cart-button {
	flex: 1 1 auto;
}

.csg-compare-remove-button {
	flex: 0 0 46px;
	font-size: 16px;
	padding-left: 0;
	padding-right: 0;
}

.csg-compare-actions .csg-compare-remove-button {
	background: #ef4444;
	border-color: #ef4444;
	color: #ffffff;
}

.csg-compare-actions .csg-compare-remove-button:hover,
.csg-compare-actions .csg-compare-remove-button:focus {
	background: #dc2626;
	border-color: #dc2626;
	color: #ffffff;
}

.csg-compare-empty {
	color: var(--csg-text-muted);
	padding: 28px 30px;
}

.csg-compare-empty p {
	margin: 0;
}

.csg-compare-empty-actions {
	margin-top: 18px;
}

html[data-csg-theme="dark"] .csg-compare-heading,
html[data-csg-theme="dark"] .csg-compare-panel {
	background: var(--csg-surface);
	border-color: var(--csg-border);
	box-shadow: none;
}

html[data-csg-theme="dark"] .csg-compare-table > thead.csg-compare-section-row > tr > td {
	background: rgba(245, 247, 251, 0.04);
}

html[data-csg-theme="dark"] .csg-compare-table > tbody > tr.is-different > td {
	background: rgba(0, 188, 82, 0.12);
	border-top-color: rgba(0, 188, 82, 0.34);
	border-bottom-color: rgba(0, 188, 82, 0.34);
}

html[data-csg-theme="dark"] .csg-compare-table > tbody > tr.is-different > .csg-compare-label::after {
	background: rgba(0, 188, 82, 0.18);
	border-color: rgba(0, 188, 82, 0.42);
	color: var(--csg-green);
}

html[data-csg-theme="dark"] .csg-compare-image-link {
	background: #ffffff;
	border-color: rgba(245, 247, 251, 0.12);
}

@media (max-width: 767px) {
	.csg-compare-heading {
		border-radius: 14px;
		padding: 22px 20px;
	}

	.csg-compare-heading h1 {
		font-size: 28px;
	}

	.csg-compare-panel {
		border-radius: 14px;
	}

	.csg-compare-table {
		min-width: 680px;
	}

	.csg-compare-table > thead > tr > td,
	.csg-compare-table > tbody > tr > td {
		padding: 14px;
	}

	.csg-compare-label {
		width: 140px;
	}
}


/* ==========================================================================
   STAGE 13.2 PIXEL-PERFECT HORIZONTAL CONTAINER ALIGNMENT
   ========================================================================== */
.csg-listing-page .csg-listing-body {
	display: flex !important;
	align-items: flex-start !important;
	gap: 24px !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

.csg-listing-page .csg-listing-body > #column-left {
	width: 240px !important;
	min-width: 240px !important;
	max-width: 240px !important;
	flex: 0 0 240px !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	float: none !important;
}

.csg-listing-page .csg-listing-body > #content {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	max-width: calc(100% - 264px) !important;
	width: calc(100% - 264px) !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	float: none !important;
}

.csg-listing-page .csg-listing-toolbar {
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

.csg-listing-page .csg-listing-grid {
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

@media (max-width: 767px) {
	.csg-listing-page .csg-listing-body {
		display: block !important;
	}
	.csg-listing-page .csg-listing-body > #content {
		max-width: 100% !important;
		width: 100% !important;
	}
}


/* ==========================================================================
   COOLSTUFFGEAR ALL-RESOLUTION RESPONSIVE & SYMMETRICAL CATALOG SYSTEM
   ========================================================================== */

#product-category.container.csg-listing-page,
.csg-listing-page.container {
	max-width: 1440px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	box-sizing: border-box !important;
}

.csg-listing-heading {
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-bottom: 20px !important;
	border-radius: 12px !important;
	box-sizing: border-box !important;
}

.csg-listing-page .csg-listing-body {
	display: flex !important;
	align-items: flex-start !important;
	gap: 20px !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Sidebar Column (Desktop) */
@media (min-width: 992px) {
	.csg-listing-page .csg-listing-body > #column-left {
		width: 240px !important;
		min-width: 240px !important;
		max-width: 240px !important;
		flex: 0 0 240px !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
	}

	.csg-listing-page .csg-listing-body > #content {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		max-width: calc(100% - 260px) !important;
		width: calc(100% - 260px) !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.csg-listing-page .csg-listing-body > #column-left {
		width: 210px !important;
		min-width: 210px !important;
		max-width: 210px !important;
		flex: 0 0 210px !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
	}

	.csg-listing-page .csg-listing-body > #content {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		max-width: calc(100% - 230px) !important;
		width: calc(100% - 230px) !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
	}
}

@media (max-width: 767px) {
	.csg-listing-page .csg-listing-body {
		display: block !important;
	}
	.csg-listing-page .csg-listing-body > #column-left {
		width: 0 !important;
		height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		overflow: visible !important;
	}
	.csg-listing-page .csg-listing-body > #content {
		max-width: 100% !important;
		width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}
}

/* Toolbar & Grid Alignment */
.csg-listing-page .csg-listing-toolbar {
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box !important;
}

.csg-listing-grid.is-grid-view {
	display: grid !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box !important;
	gap: 16px !important;
}

/* Responsive Grid Columns */
@media (min-width: 1200px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 600px) and (max-width: 991px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 599px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}
}

.csg-listing-grid .product-layout,
.csg-listing-grid .product-thumb {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}


/* ==========================================================================
   OPTION 1: MODERN E-COMMERCE CATALOG WITH PIXEL-PERFECT OUTER BOUNDARIES
   ========================================================================== */

#product-category.container.csg-listing-page,
.csg-listing-page.container {
	max-width: 1470px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
	box-sizing: border-box !important;
}

.csg-listing-breadcrumb {
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-bottom: 16px !important;
	box-sizing: border-box !important;
}

.csg-listing-heading {
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-bottom: 20px !important;
	border-radius: 12px !important;
	box-sizing: border-box !important;
}

.csg-listing-page .csg-listing-body {
	display: flex !important;
	align-items: flex-start !important;
	gap: 20px !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Remove double-box wrapper around products */
.csg-listing-products,
.csg-listing-refine,
.csg-search-panel,
html[data-csg-theme] .csg-listing-products,
html[data-csg-theme] .csg-listing-refine {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 0 !important;
	width: 100% !important;
}

/* Desktop Columns */
@media (min-width: 992px) {
	.csg-listing-page .csg-listing-body > #column-left {
		width: 250px !important;
		min-width: 250px !important;
		max-width: 250px !important;
		flex: 0 0 250px !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
	}

	.csg-listing-page .csg-listing-body > #content {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		max-width: calc(100% - 270px) !important;
		width: calc(100% - 270px) !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.csg-listing-page .csg-listing-body > #column-left {
		width: 220px !important;
		min-width: 220px !important;
		max-width: 220px !important;
		flex: 0 0 220px !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
	}

	.csg-listing-page .csg-listing-body > #content {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		max-width: calc(100% - 240px) !important;
		width: calc(100% - 240px) !important;
		padding: 0 !important;
		margin: 0 !important;
		float: none !important;
	}
}

@media (max-width: 767px) {
	.csg-listing-page .csg-listing-body {
		display: block !important;
	}
	.csg-listing-page .csg-listing-body > #column-left {
		width: 0 !important;
		height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		overflow: visible !important;
	}
	.csg-listing-page .csg-listing-body > #content {
		max-width: 100% !important;
		width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}
}

/* Standalone Toolbar Card */
.csg-listing-page .csg-listing-toolbar {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 10px !important;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
	padding: 10px 16px !important;
	margin-bottom: 20px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Symmetrical Grid filling 100% of Content Width */
.csg-listing-grid.is-grid-view {
	display: grid !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	gap: 16px !important;
}

@media (min-width: 1200px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 600px) and (max-width: 991px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 599px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}
}

.csg-listing-grid .product-layout,
.csg-listing-grid .product-thumb,
.csg-listing-product-card {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

.csg-filter-card {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 10px !important;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
	width: 100% !important;
	box-sizing: border-box !important;
}


/* ==========================================================================
   STRICT ZERO-OFFSET ALIGNMENT (TOTAL ELIMINATION OF BOOTSTRAP COLUMN PADDING)
   ========================================================================== */

#product-category.container.csg-listing-page,
.csg-listing-page.container {
	max-width: 1470px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
	box-sizing: border-box !important;
}

.csg-listing-breadcrumb {
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-bottom: 16px !important;
	box-sizing: border-box !important;
}

.csg-listing-heading {
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-bottom: 20px !important;
	border-radius: 12px !important;
	box-sizing: border-box !important;
}

.csg-listing-page .csg-listing-body,
.csg-listing-page .row.csg-listing-body {
	display: flex !important;
	align-items: flex-start !important;
	gap: 20px !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Force zero padding on columns in listing page */
.csg-listing-page #column-left,
.csg-listing-page #content,
.csg-listing-page .csg-sidebar-column,
.csg-listing-page .csg-listing-content,
.csg-listing-page [class*="col-"] {
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box !important;
}

@media (min-width: 992px) {
	.csg-listing-page #column-left,
	.csg-listing-page .csg-listing-body > #column-left {
		width: 250px !important;
		min-width: 250px !important;
		max-width: 250px !important;
		flex: 0 0 250px !important;
		float: none !important;
	}

	.csg-listing-page #content,
	.csg-listing-page .csg-listing-body > #content {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		max-width: calc(100% - 270px) !important;
		width: calc(100% - 270px) !important;
		float: none !important;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.csg-listing-page #column-left,
	.csg-listing-page .csg-listing-body > #column-left {
		width: 220px !important;
		min-width: 220px !important;
		max-width: 220px !important;
		flex: 0 0 220px !important;
		float: none !important;
	}

	.csg-listing-page #content,
	.csg-listing-page .csg-listing-body > #content {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		max-width: calc(100% - 240px) !important;
		width: calc(100% - 240px) !important;
		float: none !important;
	}
}

@media (max-width: 767px) {
	.csg-listing-page .csg-listing-body,
	.csg-listing-page .row.csg-listing-body {
		display: block !important;
	}
	.csg-listing-page #column-left,
	.csg-listing-page .csg-listing-body > #column-left {
		width: 0 !important;
		height: 0 !important;
		overflow: visible !important;
		border: 0 !important;
	}
	.csg-listing-page #content,
	.csg-listing-page .csg-listing-body > #content {
		max-width: 100% !important;
		width: 100% !important;
	}
}

/* Products & Refine Wrappers */
.csg-listing-page .csg-listing-products,
.csg-listing-page .csg-listing-refine,
.csg-listing-page .csg-search-panel,
html[data-csg-theme] .csg-listing-page .csg-listing-products,
html[data-csg-theme] .csg-listing-page .csg-listing-refine {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 0 !important;
	width: 100% !important;
}

/* Toolbar */
.csg-listing-page .csg-listing-toolbar {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 10px !important;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
	padding: 10px 16px !important;
	margin-bottom: 20px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Grid */
.csg-listing-page .csg-listing-grid.is-grid-view {
	display: grid !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	gap: 16px !important;
}

@media (min-width: 1200px) {
	.csg-listing-page .csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.csg-listing-page .csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 600px) and (max-width: 991px) {
	.csg-listing-page .csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 599px) {
	.csg-listing-page .csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}
}

.csg-listing-page .csg-listing-grid .product-layout,
.csg-listing-page .csg-listing-grid .product-thumb,
.csg-listing-page .csg-listing-product-card {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

.csg-filter-card {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 10px !important;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
	width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
}


/* ==========================================================================
   FLUID RESPONSIVE SYMMETRY - ZERO BOOTSTRAP INHERITANCE
   ========================================================================== */

#product-category.container.csg-listing-page,
.csg-listing-page.container {
	max-width: 1470px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
	box-sizing: border-box !important;
}

.csg-listing-breadcrumb {
	width: 100% !important;
	margin: 0 0 16px 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

.csg-listing-heading {
	width: 100% !important;
	margin: 0 0 20px 0 !important;
	border-radius: 12px !important;
	box-sizing: border-box !important;
}

.csg-listing-body {
	display: flex !important;
	align-items: flex-start !important;
	gap: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.csg-listing-page #column-left.csg-sidebar-column,
.csg-listing-page #column-left {
	width: 250px !important;
	min-width: 250px !important;
	max-width: 250px !important;
	flex: 0 0 250px !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	float: none !important;
}

.csg-listing-page #content.csg-listing-content,
.csg-listing-page #content {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	width: calc(100% - 270px) !important;
	max-width: calc(100% - 270px) !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	float: none !important;
}

@media (min-width: 768px) and (max-width: 991px) {
	.csg-listing-page #column-left.csg-sidebar-column,
	.csg-listing-page #column-left {
		width: 220px !important;
		min-width: 220px !important;
		max-width: 220px !important;
		flex: 0 0 220px !important;
	}
	.csg-listing-page #content.csg-listing-content,
	.csg-listing-page #content {
		width: calc(100% - 240px) !important;
		max-width: calc(100% - 240px) !important;
	}
}

@media (max-width: 767px) {
	.csg-listing-page .csg-listing-body {
		display: block !important;
	}
	.csg-listing-page #column-left.csg-sidebar-column,
	.csg-listing-page #column-left {
		display: none !important;
		width: 0 !important;
		height: 0 !important;
		overflow: hidden !important;
		border: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	.csg-listing-page #content.csg-listing-content,
	.csg-listing-page #content {
		max-width: 100% !important;
		width: 100% !important;
	}
}

.csg-filter-card {
	width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

.csg-listing-toolbar {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 10px !important;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04) !important;
	padding: 10px 16px !important;
	margin: 0 0 20px 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.csg-listing-grid.is-grid-view {
	display: grid !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	gap: 16px !important;
}

@media (min-width: 1200px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (min-width: 600px) and (max-width: 991px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 599px) {
	.csg-listing-grid.is-grid-view {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}
}

.csg-listing-grid .product-layout,
.csg-listing-grid .product-thumb,
.csg-listing-product-card {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}




/* ==========================================================================
   COOLSTUFFGEAR PREMIUM FILTER SYSTEM (STAGE 13.3 UX REFINEMENT)
   ========================================================================== */

/* Main Filter Card Container */
.csg-filter-card {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 12px !important;
	box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04), 0 1px 2px rgba(15, 23, 42, 0.02) !important;
	padding: 16px 14px !important;
	width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 0 20px 0 !important;
}

/* Card Header */
.csg-filter-head {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding-bottom: 12px !important;
	margin-bottom: 8px !important;
	border-bottom: 1px solid #f1f5f9 !important;
}

.csg-filter-head-title {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #0f172a !important;
	letter-spacing: -0.01em !important;
}

.csg-filter-head-icon {
	color: #00bc52 !important;
}

.csg-filter-clear-head-link {
	font-size: 12px !important;
	font-weight: 600 !important;
	color: #ef4444 !important;
	text-decoration: none !important;
	transition: color 0.15s ease !important;
	cursor: pointer !important;
}

.csg-filter-clear-head-link:hover {
	color: #dc2626 !important;
	text-decoration: underline !important;
}

/* Active Selected Chips */
.csg-filter-selected-section {
	background: #f8fafc !important;
	border: 1px solid #edf2f7 !important;
	border-radius: 8px !important;
	padding: 8px !important;
	margin-bottom: 12px !important;
}

.csg-filter-chips-list {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
}

.csg-filter-chip {
	background: #ffffff !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 6px !important;
	padding: 3px 8px !important;
	font-size: 11.5px !important;
	font-weight: 600 !important;
	color: #334155 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03) !important;
}

.csg-filter-chip-remove {
	background: none !important;
	border: none !important;
	padding: 0 !important;
	color: #94a3b8 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: color 0.15s ease !important;
}

.csg-filter-chip-remove:hover {
	color: #ef4444 !important;
}

/* Accordion Filter Groups */
.csg-filter-groups-list {
	display: flex !important;
	flex-direction: column !important;
}

.csg-filter-group {
	border-bottom: 1px solid #f1f5f9 !important;
	padding: 10px 0 !important;
}

.csg-filter-group:last-child {
	border-bottom: none !important;
}

.csg-filter-group-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 4px 2px !important;
	cursor: pointer !important;
	user-select: none !important;
	border-radius: 4px !important;
	transition: background 0.15s ease !important;
}

.csg-filter-group-header:hover .csg-filter-group-name {
	color: #00bc52 !important;
}

.csg-filter-group-name {
	font-size: 13.5px !important;
	font-weight: 700 !important;
	color: #1e293b !important;
	letter-spacing: -0.01em !important;
	transition: color 0.15s ease !important;
}

.csg-filter-arrow {
	color: #94a3b8 !important;
	transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.csg-filter-group.is-collapsed .csg-filter-arrow {
	transform: rotate(-90deg) !important;
}

.csg-filter-group-content {
	padding-top: 8px !important;
}

/* Option Items List */
.csg-filter-options-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 3px !important;
	max-height: 220px !important;
	overflow-y: auto !important;
	padding-right: 4px !important;
}

.csg-filter-options-list::-webkit-scrollbar {
	width: 4px !important;
}

.csg-filter-options-list::-webkit-scrollbar-thumb {
	background: #e2e8f0 !important;
	border-radius: 4px !important;
}

/* Individual Checkbox Row */
.csg-filter-item {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 5px 8px !important;
	border-radius: 6px !important;
	cursor: pointer !important;
	transition: background 0.15s ease !important;
	user-select: none !important;
	margin: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.csg-filter-item:hover {
	background: #f8fafc !important;
}

.csg-filter-item.is-selected {
	background: #f0fdf4 !important;
}

.csg-filter-item.is-disabled {
	opacity: 0.4 !important;
	cursor: not-allowed !important;
	pointer-events: none !important;
}

/* Completely Hide Native Checkbox */
.csg-filter-checkbox {
	position: absolute !important;
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	pointer-events: none !important;
	visibility: hidden !important;
}

/* Custom Styled Checkbox */
.csg-filter-custom-checkbox {
	width: 17px !important;
	height: 17px !important;
	min-width: 17px !important;
	border: 1.5px solid #cbd5e1 !important;
	border-radius: 4px !important;
	background: #ffffff !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-right: 8px !important;
	transition: all 0.15s ease !important;
	box-sizing: border-box !important;
}

.csg-check-icon {
	color: #ffffff !important;
	stroke: #ffffff !important;
	opacity: 0 !important;
	transform: scale(0.5) !important;
	transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.csg-filter-item:hover .csg-filter-custom-checkbox {
	border-color: #94a3b8 !important;
}

.csg-filter-item.is-selected .csg-filter-custom-checkbox {
	border-color: #00bc52 !important;
	background: #00bc52 !important;
}

.csg-filter-item.is-selected .csg-check-icon {
	opacity: 1 !important;
	transform: scale(1) !important;
}

/* Option Label Text */
.csg-filter-item-name {
	font-size: 12.5px !important;
	color: #334155 !important;
	font-weight: 500 !important;
	flex: 1 1 auto !important;
	line-height: 1.35 !important;
	word-break: break-word !important;
}

.csg-filter-item.is-selected .csg-filter-item-name {
	color: #0f172a !important;
	font-weight: 600 !important;
}

/* Faceted Count Pill Badge */
.csg-filter-item-count {
	font-size: 11px !important;
	font-weight: 600 !important;
	color: #94a3b8 !important;
	background: #f1f5f9 !important;
	padding: 1px 6px !important;
	border-radius: 10px !important;
	min-width: 18px !important;
	text-align: center !important;
	margin-left: 6px !important;
	flex-shrink: 0 !important;
	transition: all 0.15s ease !important;
}

.csg-filter-item.is-selected .csg-filter-item-count {
	background: #dcfce7 !important;
	color: #15803d !important;
}

/* ==========================================================================
   RANGE SLIDER STYLING
   ========================================================================== */
.csg-filter-range-wrapper {
	padding: 4px 2px 2px !important;
}

.csg-range-input-row {
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
	margin-bottom: 12px !important;
}

.csg-range-input-box {
	display: flex !important;
	align-items: center !important;
	background: #f8fafc !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 6px !important;
	padding: 4px 8px !important;
	flex: 1 1 0 !important;
	min-width: 0 !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
}

.csg-range-input-box:focus-within {
	border-color: #00bc52 !important;
	box-shadow: 0 0 0 2px rgba(0, 188, 82, 0.15) !important;
	background: #ffffff !important;
}

.csg-range-prefix {
	color: #94a3b8 !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	margin-right: 4px !important;
	text-transform: uppercase !important;
}

.csg-range-unit-tag {
	color: #64748b !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	margin-left: 3px !important;
}

.csg-range-num {
	border: 0 !important;
	background: transparent !important;
	width: 100% !important;
	font-size: 12.5px !important;
	font-weight: 700 !important;
	color: #0f172a !important;
	padding: 0 !important;
	outline: none !important;
	-moz-appearance: textfield !important;
}

.csg-range-num::-webkit-outer-spin-button,
.csg-range-num::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

.csg-range-dash {
	color: #cbd5e1 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.csg-range-slider-container {
	position: relative !important;
	height: 22px !important;
	display: flex !important;
	align-items: center !important;
	margin-bottom: 6px !important;
}

.csg-range-track-bg {
	position: absolute !important;
	width: 100% !important;
	height: 5px !important;
	background: #e2e8f0 !important;
	border-radius: 3px !important;
	z-index: 1 !important;
}

.csg-range-track-active {
	position: absolute !important;
	height: 5px !important;
	background: #00bc52 !important;
	border-radius: 3px !important;
	z-index: 2 !important;
	left: 0% !important;
	width: 100% !important;
}

.csg-range-slider-el {
	position: absolute !important;
	width: 100% !important;
	height: 5px !important;
	background: transparent !important;
	pointer-events: none !important;
	-webkit-appearance: none !important;
	appearance: none !important;
	z-index: 3 !important;
	margin: 0 !important;
	padding: 0 !important;
	outline: none !important;
}

.csg-range-slider-el::-webkit-slider-thumb {
	-webkit-appearance: none !important;
	appearance: none !important;
	width: 17px !important;
	height: 17px !important;
	border-radius: 50% !important;
	background: #ffffff !important;
	border: 2.5px solid #00bc52 !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15) !important;
	cursor: pointer !important;
	pointer-events: auto !important;
	transition: transform 0.1s ease, box-shadow 0.1s ease !important;
}

.csg-range-slider-el::-webkit-slider-thumb:hover {
	transform: scale(1.15) !important;
	box-shadow: 0 2px 6px rgba(0, 188, 82, 0.3) !important;
}

.csg-range-slider-el::-webkit-slider-thumb:active {
	background: #00bc52 !important;
	transform: scale(1.2) !important;
}

.csg-range-slider-el::-moz-range-thumb {
	width: 17px !important;
	height: 17px !important;
	border-radius: 50% !important;
	background: #ffffff !important;
	border: 2.5px solid #00bc52 !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15) !important;
	cursor: pointer !important;
	pointer-events: auto !important;
}

.csg-range-bounds-row {
	display: flex !important;
	justify-content: space-between !important;
	font-size: 10.5px !important;
	font-weight: 600 !important;
	color: #94a3b8 !important;
}

/* ==========================================================================
   SUBMIT ACTION BUTTON
   ========================================================================== */
.csg-filter-actions {
	padding-top: 14px !important;
	margin-top: 8px !important;
	border-top: 1px solid #f1f5f9 !important;
}

.csg-filter-submit-btn {
	background: #00bc52 !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 8px !important;
	padding: 10px 16px !important;
	width: 100% !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	box-shadow: 0 2px 6px rgba(0, 188, 82, 0.25) !important;
	transition: all 0.15s ease !important;
	letter-spacing: 0.01em !important;
}

.csg-filter-submit-btn:hover {
	background: #00a64a !important;
	box-shadow: 0 4px 12px rgba(0, 188, 82, 0.35) !important;
	transform: translateY(-1px) !important;
}

.csg-filter-submit-btn:active {
	transform: translateY(0) !important;
	box-shadow: 0 1px 3px rgba(0, 188, 82, 0.2) !important;
}



/* ==========================================================================
   PRICE & TAX TYPOGRAPHY REFINEMENT (CLEAN, ELEGANT, CRISP)
   ========================================================================== */
.csg-listing-product-price,
.product-thumb .price {
	color: #0f172a !important;
	font-size: 19px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	margin: 0 !important;
	padding: 0 !important;
	letter-spacing: -0.01em !important;
}

.csg-listing-product-price .price-new,
.product-thumb .price-new {
	color: #0f172a !important;
	font-size: 19px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
}

.csg-listing-product-price .price-old,
.product-thumb .price-old {
	color: #94a3b8 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	text-decoration: line-through !important;
	margin-left: 6px !important;
}

.csg-listing-product-price .price-tax,
.product-thumb .price-tax,
.price-tax {
	color: #64748b !important;
	display: block !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	margin-top: 3px !important;
	letter-spacing: 0.01em !important;
	font-variant-numeric: tabular-nums !important;
	opacity: 0.9 !important;
}



/* ==========================================================================
   COOLSTUFFGEAR - PRODUCT DETAIL PAGE (PDP) DESIGN SYSTEM 2.0
   Fully Scoped under #product-product & .csg-product-page
   ========================================================================== */

#product-product {
	--pdp-card-bg: #ffffff;
	--pdp-card-subtle: #f8fafc;
	--pdp-border: #e2e8f0;
	--pdp-border-subtle: #f1f5f9;
	--pdp-text: #0f172a;
	--pdp-text-muted: #64748b;
	--pdp-text-dim: #94a3b8;
	--pdp-primary: #00bc52;
	--pdp-primary-hover: #00a347;
	--pdp-primary-glow: rgba(0, 188, 82, 0.25);
	--pdp-accent: #0284c7;
	--pdp-price-color: #0f172a;
	--pdp-shadow: 0 4px 20px -2px rgba(15, 23, 42, 0.06), 0 2px 6px -1px rgba(15, 23, 42, 0.04);
	--pdp-sticky-bg: rgba(255, 255, 255, 0.95);
	--pdp-zebra-bg: #f8fafc;
	--pdp-input-bg: #f8fafc;
	--pdp-input-border: #cbd5e1;

	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

html[data-csg-theme="dark"] #product-product {
	--pdp-card-bg: #131b2a;
	--pdp-card-subtle: #172133;
	--pdp-border: #26354a;
	--pdp-border-subtle: #1e293b;
	--pdp-text: #f8fafc;
	--pdp-text-muted: #94a3b8;
	--pdp-text-dim: #64748b;
	--pdp-primary: #00bc52;
	--pdp-primary-hover: #00e676;
	--pdp-primary-glow: rgba(0, 188, 82, 0.35);
	--pdp-accent: #38bdf8;
	--pdp-price-color: #f8fafc;
	--pdp-shadow: 0 10px 30px -4px rgba(0, 0, 0, 0.4), 0 4px 10px -2px rgba(0, 0, 0, 0.25);
	--pdp-sticky-bg: rgba(19, 27, 42, 0.95);
	--pdp-zebra-bg: rgba(255, 255, 255, 0.02);
	--pdp-input-bg: #172133;
	--pdp-input-border: #2f3d52;
}

/* Container & Grid System - Synchronized Header & Page Grid */
.csg-final-header .container::before,
.csg-final-header .container::after,
.csg-final-container::before,
.csg-final-container::after,
.csg-final-actionbar-inner::before,
.csg-final-actionbar-inner::after {
	display: none !important;
	content: none !important;
}

.csg-final-header .container,
.csg-final-container,
.csg-final-actionbar-inner,
#product-product.container,
#product-product.csg-product-page {
	max-width: 1470px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
	box-sizing: border-box !important;
}

#product-product.csg-product-page {
	padding-top: 14px !important;
	padding-bottom: 60px !important;
}

#product-product .row {
	margin-left: -15px !important;
	margin-right: -15px !important;
}

#product-product #content,
#product-product .col-sm-12,
#product-product .col-sm-9,
#product-product .col-sm-6 {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

/* --------------------------------------------------------------------------
   1. BREADCRUMBS (Transparent, Clean & Pixel-Aligned)
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-breadcrumbs-wrap {
	margin: 0 0 20px 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

#product-product .csg-pdp-breadcrumbs {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 8px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
}

#product-product .csg-pdp-breadcrumb-item {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	color: var(--pdp-text-muted) !important;
	white-space: nowrap !important;
}

#product-product .csg-breadcrumb-link {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	color: var(--pdp-text-muted) !important;
	text-decoration: none !important;
	font-weight: 500 !important;
	transition: color 0.15s ease !important;
}

#product-product .csg-breadcrumb-link:hover {
	color: var(--pdp-primary) !important;
	text-decoration: none !important;
}

#product-product .csg-breadcrumb-home-icon {
	font-size: 13px !important;
	color: var(--pdp-text-dim) !important;
	transition: color 0.15s ease !important;
}

#product-product .csg-breadcrumb-link:hover .csg-breadcrumb-home-icon {
	color: var(--pdp-primary) !important;
}

#product-product .csg-breadcrumb-sep {
	font-size: 11px !important;
	color: var(--pdp-text-dim) !important;
	opacity: 0.65 !important;
	user-select: none !important;
}

#product-product .csg-pdp-breadcrumb-item.active {
	color: var(--pdp-text) !important;
	font-weight: 600 !important;
	max-width: 550px !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

#product-product .csg-breadcrumb-text {
	color: var(--pdp-text) !important;
}

/* Top Alert notification */
#product-product .csg-alert-top {
	margin-bottom: 24px !important;
	border-radius: 12px !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	border: none !important;
	box-shadow: var(--pdp-shadow) !important;
}

/* --------------------------------------------------------------------------
   2. HERO GRID (55% / 45%)
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-hero {
	display: grid !important;
	grid-template-columns: minmax(0, 1.15fr) minmax(380px, 0.85fr) !important;
	gap: 36px !important;
	align-items: start !important;
	margin-bottom: 40px !important;
}

/* --------------------------------------------------------------------------
   3. INTERACTIVE MEDIA GALLERY
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-gallery-col {
	min-width: 0 !important;
	width: 100% !important;
}

#product-product .csg-pdp-gallery-container {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	width: 100% !important;
}

#product-product .csg-pdp-main-frame {
	position: relative !important;
	width: 100% !important;
	aspect-ratio: 1 / 1 !important;
	min-height: 480px !important;
	max-height: 600px !important;
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 20px !important;
	box-shadow: var(--pdp-shadow) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

#product-product .csg-pdp-main-frame:hover {
	border-color: var(--pdp-primary) !important;
}

#product-product .csg-pdp-main-link {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	padding: 32px !important;
	box-sizing: border-box !important;
	text-decoration: none !important;
	position: relative !important;
	cursor: zoom-in !important;
}

#product-product .csg-pdp-main-img {
	max-width: 100% !important;
	max-height: 100% !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease !important;
}

#product-product .csg-pdp-main-link:hover .csg-pdp-main-img {
	transform: scale(1.04) !important;
}

/* Glass Badges */
#product-product .csg-pdp-badges {
	position: absolute !important;
	top: 16px !important;
	left: 16px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
	z-index: 5 !important;
	pointer-events: none !important;
}

#product-product .csg-pdp-badge {
	display: inline-flex !important;
	align-items: center !important;
	padding: 4px 10px !important;
	border-radius: 8px !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	backdrop-filter: blur(8px) !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}

#product-product .csg-badge-sale {
	background: linear-gradient(135deg, #ef4444, #dc2626) !important;
	color: #ffffff !important;
}

#product-product .csg-badge-new {
	background: linear-gradient(135deg, #00bc52, #059669) !important;
	color: #ffffff !important;
}

#product-product .csg-badge-hot {
	background: linear-gradient(135deg, #f59e0b, #d97706) !important;
	color: #ffffff !important;
}

/* Zoom floating button */
#product-product .csg-pdp-zoom-btn {
	position: absolute !important;
	bottom: 16px !important;
	right: 16px !important;
	width: 38px !important;
	height: 38px !important;
	border-radius: 50% !important;
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	color: var(--pdp-text-muted) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 14px !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
	opacity: 0.75 !important;
	transition: all 0.2s ease !important;
	pointer-events: none !important;
}

#product-product .csg-pdp-main-link:hover .csg-pdp-zoom-btn {
	opacity: 1 !important;
	transform: scale(1.1) !important;
	color: var(--pdp-primary) !important;
	border-color: var(--pdp-primary) !important;
}

/* Thumbnail Strip */
#product-product .csg-pdp-thumb-strip-wrap {
	width: 100% !important;
	overflow-x: auto !important;
	padding-bottom: 4px !important;
	scrollbar-width: thin !important;
}

#product-product .csg-pdp-thumb-list {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#product-product .csg-pdp-thumb-item {
	flex: 0 0 76px !important;
	width: 76px !important;
	height: 76px !important;
	border-radius: 12px !important;
	background: var(--pdp-card-bg) !important;
	border: 2px solid var(--pdp-border) !important;
	overflow: hidden !important;
	cursor: pointer !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-sizing: border-box !important;
}

#product-product .csg-pdp-thumb-btn {
	width: 100% !important;
	height: 100% !important;
	background: transparent !important;
	border: none !important;
	padding: 6px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
}

#product-product .csg-pdp-thumb-btn img {
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
}

#product-product .csg-pdp-thumb-item:hover {
	border-color: var(--pdp-text-muted) !important;
	transform: translateY(-2px) !important;
}

#product-product .csg-pdp-thumb-item.is-active {
	border-color: var(--pdp-primary) !important;
	box-shadow: 0 0 12px var(--pdp-primary-glow) !important;
	transform: translateY(-2px) !important;
}

/* --------------------------------------------------------------------------
   4. BUY BOX & INFORMATION HIERARCHY
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-summary-col {
	min-width: 0 !important;
	width: 100% !important;
}

#product-product .csg-pdp-buybox {
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 20px !important;
	box-shadow: var(--pdp-shadow) !important;
	padding: 28px 30px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 18px !important;
	box-sizing: border-box !important;
}

/* Meta Bar */
#product-product .csg-pdp-meta-header {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	border-bottom: 1px solid var(--pdp-border-subtle) !important;
	padding-bottom: 14px !important;
}

#product-product .csg-pdp-rating-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
}

#product-product .csg-pdp-stars {
	display: inline-flex !important;
	gap: 2px !important;
	font-size: 13px !important;
}

/* Empty reviews state */
#product-product .csg-reviews-empty {
	text-align: center !important;
	padding: 48px 24px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1px dashed var(--pdp-border) !important;
	border-radius: 12px !important;
	color: var(--pdp-text-muted) !important;
}

#product-product .csg-reviews-empty-icon {
	font-size: 36px !important;
	color: var(--pdp-text-dim) !important;
	margin-bottom: 12px !important;
}

#product-product .csg-reviews-empty p {
	margin: 0 !important;
	font-size: 14px !important;
}

#product-product .csg-stars-empty-state .fa-star-empty {
	color: #cbd5e1 !important;
	opacity: 0.7 !important;
}

[data-csg-theme="dark"] #product-product .csg-stars-empty-state .fa-star-empty {
	color: #334155 !important;
}

#product-product .csg-star-filled {
	color: #f59e0b !important;
}

#product-product .csg-star-empty {
	color: var(--pdp-text-dim) !important;
	opacity: 0.5 !important;
}

#product-product .csg-pdp-reviews-link {
	color: var(--pdp-text-muted) !important;
	text-decoration: underline !important;
	transition: color 0.15s ease !important;
}

#product-product .csg-pdp-reviews-link:hover {
	color: var(--pdp-primary) !important;
}

/* Stock Pulse Badge */
#product-product .csg-pdp-stock-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	padding: 4px 10px !important;
	border-radius: 20px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

#product-product .csg-stock-badge-in-stock {
	background: rgba(0, 188, 82, 0.1) !important;
	color: #00bc52 !important;
}

#product-product .csg-stock-badge-in-stock .csg-stock-pulse-dot {
	width: 8px !important;
	height: 8px !important;
	border-radius: 50% !important;
	background: #00bc52 !important;
	box-shadow: 0 0 0 0 rgba(0, 188, 82, 0.7) !important;
	animation: csg-pulse 2s infinite !important;
}

#product-product .csg-stock-badge-preorder {
	background: rgba(245, 158, 11, 0.1) !important;
	color: #f59e0b !important;
}

#product-product .csg-stock-badge-preorder .csg-stock-pulse-dot {
	width: 8px !important;
	height: 8px !important;
	border-radius: 50% !important;
	background: #f59e0b !important;
}

#product-product .csg-stock-badge-out-of-stock {
	background: rgba(148, 163, 184, 0.1) !important;
	color: var(--pdp-text-muted) !important;
}

#product-product .csg-stock-badge-out-of-stock .csg-stock-pulse-dot {
	width: 8px !important;
	height: 8px !important;
	border-radius: 50% !important;
	background: var(--pdp-text-dim) !important;
}

@keyframes csg-pulse {
	0% { box-shadow: 0 0 0 0 rgba(0, 188, 82, 0.7); }
	70% { box-shadow: 0 0 0 6px rgba(0, 188, 82, 0); }
	100% { box-shadow: 0 0 0 0 rgba(0, 188, 82, 0); }
}

#product-product .csg-pdp-sku-chip {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	font-size: 12px !important;
	color: var(--pdp-text-muted) !important;
	background: var(--pdp-card-subtle) !important;
	border: 1px solid var(--pdp-border) !important;
	padding: 4px 10px !important;
	border-radius: 8px !important;
	white-space: nowrap !important;
}

#product-product .csg-sku-label {
	margin-right: 4px !important;
	font-weight: 500 !important;
}

#product-product .csg-sku-val {
	font-weight: 700 !important;
	color: var(--pdp-text) !important;
	font-family: inherit !important;
	letter-spacing: normal !important;
}

/* Title H1 */
#product-product .csg-pdp-title {
	font-size: 27px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	color: var(--pdp-text) !important;
	letter-spacing: -0.02em !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Brand Row */
#product-product .csg-pdp-brand-row {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	font-size: 13px !important;
	color: var(--pdp-text-muted) !important;
}

#product-product .csg-brand-link {
	font-weight: 700 !important;
	color: var(--pdp-accent) !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
}

#product-product .csg-brand-link:hover {
	text-decoration: underline !important;
}

/* --------------------------------------------------------------------------
   5. PRICING BLOCK
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-price-card {
	background: var(--pdp-card-subtle) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 14px !important;
	padding: 16px 20px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
}

#product-product .csg-pdp-price-primary {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: baseline !important;
	gap: 12px !important;
}

#product-product .csg-pdp-price-current {
	font-size: 34px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	color: var(--pdp-price-color) !important;
	letter-spacing: -0.03em !important;
}

#product-product .csg-price-special {
	color: #ef4444 !important;
}

html[data-csg-theme="dark"] #product-product .csg-price-special {
	color: #f87171 !important;
}

#product-product .csg-pdp-price-old {
	font-size: 18px !important;
	font-weight: 600 !important;
	color: var(--pdp-text-muted) !important;
	text-decoration: line-through !important;
}

#product-product .csg-pdp-save-badge {
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	background: rgba(239, 68, 68, 0.1) !important;
	color: #ef4444 !important;
	border: 1px solid rgba(239, 68, 68, 0.2) !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	padding: 3px 8px !important;
	border-radius: 6px !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-save-badge {
	background: rgba(239, 68, 68, 0.2) !important;
	color: #fca5a5 !important;
	border-color: rgba(239, 68, 68, 0.3) !important;
}

#product-product .csg-pdp-tax-line,
#product-product .csg-pdp-points-line {
	font-size: 12px !important;
	color: var(--pdp-text-muted) !important;
}

#product-product .csg-pdp-discounts-strip {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-top: 6px !important;
}

#product-product .csg-discount-pill {
	font-size: 11px !important;
	padding: 3px 8px !important;
	border-radius: 6px !important;
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	color: var(--pdp-text-muted) !important;
}

/* --------------------------------------------------------------------------
   6. OPTIONS (SWATCHES, PILLS, SELECTS)
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-options-wrap {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
}

#product-product .csg-pdp-options-container {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	border-top: 1px solid var(--pdp-border-subtle) !important;
	padding-top: 16px !important;
}

#product-product .csg-options-title-bar {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: var(--pdp-text) !important;
}

#product-product .csg-option-block {
	margin-bottom: 0 !important;
}

#product-product .csg-option-label-row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	margin-bottom: 8px !important;
}

#product-product .csg-option-label-row .control-label {
	font-size: 13px !important;
	font-weight: 700 !important;
	color: var(--pdp-text) !important;
	margin: 0 !important;
}

#product-product .csg-color-selected-label,
#product-product .csg-mouse-type-selected-label {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--pdp-primary) !important;
}

#product-product .csg-hidden-select {
	display: none !important;
}

/* Color Swatches Grid */
#product-product .csg-color-swatches-grid {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
}

#product-product .csg-color-swatch-item {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 5px 12px 5px 6px !important;
	border-radius: 30px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1.5px solid var(--pdp-border) !important;
	cursor: pointer !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#product-product .csg-swatch-circle {
	width: 22px !important;
	height: 22px !important;
	border-radius: 50% !important;
	background-color: var(--swatch-color, #aeb9c8) !important;
	background-image: var(--swatch-img, none) !important;
	background-size: cover !important;
	background-position: center !important;
	border: 1px solid rgba(0, 0, 0, 0.15) !important;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1) !important;
	flex-shrink: 0 !important;
}

#product-product .csg-swatch-name {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--pdp-text) !important;
}

#product-product .csg-color-swatch-item:hover {
	border-color: var(--pdp-text-muted) !important;
	transform: translateY(-1px) !important;
}

#product-product .csg-color-swatch-item.is-active {
	border-color: var(--pdp-primary) !important;
	background: var(--pdp-card-bg) !important;
	box-shadow: 0 0 0 1px var(--pdp-primary), 0 2px 8px var(--pdp-primary-glow) !important;
	transform: translateY(-1px) !important;
}

#product-product .csg-color-swatch-item.is-active .csg-swatch-name {
	color: var(--pdp-primary) !important;
}

/* Segmented Pills Option */
#product-product .csg-segmented-pills-group {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
}

#product-product .csg-pill-btn {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	padding: 9px 16px !important;
	border-radius: 10px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1.5px solid var(--pdp-border) !important;
	color: var(--pdp-text) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#product-product .csg-pill-btn:hover {
	border-color: var(--pdp-text-muted) !important;
	transform: translateY(-1px) !important;
}

#product-product .csg-pill-btn.is-active {
	border-color: var(--pdp-primary) !important;
	background: var(--pdp-card-bg) !important;
	color: var(--pdp-primary) !important;
	box-shadow: 0 0 0 1px var(--pdp-primary), 0 2px 8px var(--pdp-primary-glow) !important;
	transform: translateY(-1px) !important;
}

#product-product .csg-pill-extra {
	font-size: 11px !important;
	opacity: 0.8 !important;
	font-weight: 500 !important;
}

/* Radio & Checkbox Chips */
#product-product .csg-radio-chips-group,
#product-product .csg-checkbox-chips-group {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
}

#product-product .csg-radio-chip,
#product-product .csg-checkbox-chip {
	margin: 0 !important;
	cursor: pointer !important;
	font-weight: normal !important;
}

#product-product .csg-radio-chip input,
#product-product .csg-checkbox-chip input {
	display: none !important;
}

#product-product .csg-radio-chip-box,
#product-product .csg-checkbox-box {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 8px 14px !important;
	border-radius: 10px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1.5px solid var(--pdp-border) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--pdp-text) !important;
	transition: all 0.2s ease !important;
}

#product-product .csg-radio-thumb,
#product-product .csg-checkbox-thumb {
	width: 24px !important;
	height: 24px !important;
	object-fit: contain !important;
	border-radius: 4px !important;
}

#product-product .csg-check-icon {
	display: none !important;
}

#product-product .csg-radio-chip input:checked + .csg-radio-chip-box,
#product-product .csg-checkbox-chip input:checked + .csg-checkbox-box {
	border-color: var(--pdp-primary) !important;
	background: var(--pdp-card-bg) !important;
	color: var(--pdp-primary) !important;
	box-shadow: 0 0 0 1px var(--pdp-primary), 0 2px 8px var(--pdp-primary-glow) !important;
}

#product-product .csg-checkbox-chip input:checked + .csg-checkbox-box .csg-check-icon {
	display: inline-block !important;
}

/* Styled Inputs */
#product-product .csg-input-styled,
#product-product .csg-textarea-styled,
#product-product .csg-select-styled {
	background: var(--pdp-input-bg) !important;
	border: 1.5px solid var(--pdp-input-border) !important;
	border-radius: 10px !important;
	color: var(--pdp-text) !important;
	font-size: 14px !important;
	padding: 10px 14px !important;
	height: auto !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

#product-product .csg-input-styled:focus,
#product-product .csg-textarea-styled:focus,
#product-product .csg-select-styled:focus {
	border-color: var(--pdp-primary) !important;
	box-shadow: 0 0 0 3px var(--pdp-primary-glow) !important;
	outline: none !important;
}

/* --------------------------------------------------------------------------
   7. ACTION BUTTONS & QUANTITY STEPPER
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-action-panel {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	margin-top: 6px !important;
}

#product-product .csg-pdp-cart-actions-row {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	width: 100% !important;
}

/* Stepper */
#product-product .csg-pdp-qty-stepper {
	display: inline-flex !important;
	align-items: center !important;
	height: 52px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1.5px solid var(--pdp-border) !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	flex: 0 0 120px !important;
	box-sizing: border-box !important;
}

#product-product .csg-pdp-qty-btn {
	width: 36px !important;
	height: 100% !important;
	background: transparent !important;
	border: none !important;
	color: var(--pdp-text) !important;
	font-size: 12px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	transition: background 0.15s ease, color 0.15s ease !important;
}

#product-product .csg-pdp-qty-btn:hover {
	background: var(--pdp-border) !important;
	color: var(--pdp-primary) !important;
}

#product-product .csg-pdp-qty-input {
	flex: 1 1 auto !important;
	width: 48px !important;
	height: 100% !important;
	background: transparent !important;
	border: none !important;
	text-align: center !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: var(--pdp-text) !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
}

/* Primary Buy Button */
#product-product .csg-btn-primary {
	background: linear-gradient(135deg, #00bc52 0%, #00e676 100%) !important;
	color: #ffffff !important;
	border: none !important;
	font-weight: 800 !important;
	border-radius: 12px !important;
	cursor: pointer !important;
	box-shadow: 0 4px 16px var(--pdp-primary-glow) !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#product-product .csg-btn-primary:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 20px rgba(0, 188, 82, 0.45) !important;
	filter: brightness(1.06) !important;
}

#product-product .csg-btn-primary:active {
	transform: translateY(0) !important;
}

#product-product .csg-pdp-buy-btn {
	flex: 1 1 auto !important;
	height: 52px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	font-size: 16px !important;
	letter-spacing: 0.02em !important;
	text-transform: uppercase !important;
}

#product-product .csg-cart-icon {
	font-size: 18px !important;
}

/* Secondary Row (Quick Buy + Wishlist/Compare) */
#product-product .csg-pdp-secondary-row {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	width: 100% !important;
}

#product-product .csg-btn-quick-buy {
	flex: 1 1 auto !important;
	height: 44px !important;
	border-radius: 10px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1.5px solid var(--pdp-border) !important;
	color: var(--pdp-text) !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	transition: all 0.2s ease !important;
}

#product-product .csg-btn-quick-buy i {
	color: #f59e0b !important;
}

#product-product .csg-btn-quick-buy:hover {
	border-color: #f59e0b !important;
	color: #f59e0b !important;
	background: var(--pdp-card-bg) !important;
	transform: translateY(-1px) !important;
}

#product-product .csg-pdp-icons-group {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
}

#product-product .csg-pdp-icon-btn {
	width: 44px !important;
	height: 44px !important;
	border-radius: 10px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1.5px solid var(--pdp-border) !important;
	color: var(--pdp-text-muted) !important;
	font-size: 16px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
}

#product-product .csg-pdp-icon-btn:hover {
	border-color: var(--pdp-primary) !important;
	color: var(--pdp-primary) !important;
	background: var(--pdp-card-bg) !important;
	transform: translateY(-1px) !important;
}

/* Secondary general button */
#product-product .csg-btn-secondary {
	background: var(--pdp-card-subtle) !important;
	border: 1.5px solid var(--pdp-border) !important;
	color: var(--pdp-text) !important;
	font-weight: 600 !important;
	border-radius: 10px !important;
	transition: all 0.2s ease !important;
}

#product-product .csg-btn-secondary:hover {
	border-color: var(--pdp-text-muted) !important;
	background: var(--pdp-card-bg) !important;
}

/* Out of Stock Card */
#product-product .csg-pdp-out-of-stock-box {
	background: var(--pdp-card-subtle) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 12px !important;
	padding: 16px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
}

#product-product .csg-out-of-stock-icon {
	font-size: 24px !important;
	color: var(--pdp-text-muted) !important;
}

#product-product .csg-out-of-stock-text strong {
	display: block !important;
	font-size: 15px !important;
	color: var(--pdp-text) !important;
}

#product-product .csg-out-of-stock-text span {
	font-size: 13px !important;
	color: var(--pdp-text-muted) !important;
}

/* --------------------------------------------------------------------------
   8. TRUST & SERVICE HIGHLIGHTS (PDP BUY BOX)
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-trust-grid {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	border-top: 1px solid var(--pdp-border-subtle) !important;
	padding-top: 16px !important;
}

#product-product .csg-trust-card {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	padding: 8px 12px !important;
	border-radius: 10px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1px solid var(--pdp-border-subtle) !important;
}

#product-product .csg-trust-icon-box {
	width: 34px !important;
	height: 34px !important;
	border-radius: 8px !important;
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	color: var(--pdp-primary) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 15px !important;
	flex-shrink: 0 !important;
}

#product-product .csg-trust-text {
	display: flex !important;
	flex-direction: column !important;
	gap: 1px !important;
}

#product-product .csg-trust-text strong {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: var(--pdp-text) !important;
	line-height: 1.3 !important;
}

#product-product .csg-trust-text span {
	font-size: 11px !important;
	color: var(--pdp-text-muted) !important;
	line-height: 1.3 !important;
}

/* --------------------------------------------------------------------------
   9. UNIFIED TABS SECTION
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-tabs-section {
	margin-bottom: 48px !important;
}

#product-product .csg-pdp-tabs-card {
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 20px !important;
	box-shadow: var(--pdp-shadow) !important;
	overflow: hidden !important;
}

/* Tab Navigation Bar */
#product-product .csg-pdp-nav-tabs {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0 !important;
	border: none !important;
	border-bottom: 1px solid var(--pdp-border) !important;
	background: var(--pdp-card-subtle) !important;
	margin: 0 !important;
	padding: 0 !important;
}

#product-product .csg-pdp-nav-tabs > li {
	margin: 0 !important;
	float: none !important;
	border: none !important;
}

#product-product .csg-pdp-nav-tabs > li > a,
#product-product .csg-pdp-nav-tabs > li > a:hover,
#product-product .csg-pdp-nav-tabs > li > a:focus,
#product-product .csg-pdp-nav-tabs > li.active > a,
#product-product .csg-pdp-nav-tabs > li.active > a:hover,
#product-product .csg-pdp-nav-tabs > li.active > a:focus {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 16px 24px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: var(--pdp-text-muted) !important;
	border: none !important;
	border-radius: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	background: transparent !important;
	position: relative !important;
	transition: color 0.15s ease, background 0.15s ease !important;
}

#product-product .csg-pdp-nav-tabs > li > a:hover {
	color: var(--pdp-text) !important;
	background: rgba(0, 0, 0, 0.02) !important;
}

#product-product .csg-pdp-nav-tabs > li.active > a {
	color: var(--pdp-primary) !important;
	background: var(--pdp-card-bg) !important;
}

#product-product .csg-pdp-nav-tabs > li.active > a::after {
	content: '' !important;
	position: absolute !important;
	bottom: -1px !important;
	left: 0 !important;
	right: 0 !important;
	height: 2px !important;
	background: var(--pdp-primary) !important;
	box-shadow: 0 -1px 6px var(--pdp-primary-glow) !important;
}

#product-product .csg-pdp-tab-content {
	padding: 32px 28px !important;
}

/* ==========================================================================
   PDP Reviews Tab Luxury Redesign
   ========================================================================== */

#product-product .csg-reviews-tab-container {
	display: flex !important;
	flex-direction: column !important;
	gap: 24px !important;
	width: 100% !important;
}

/* Reviews Header Overview Card */
#product-product .csg-reviews-tab-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 20px !important;
	padding: 22px 26px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 16px !important;
}

#product-product .csg-reviews-header-stats {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
}

#product-product .csg-reviews-score-big {
	font-size: 38px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	color: var(--pdp-text) !important;
	font-family: inherit !important;
}

#product-product .csg-reviews-score-meta {
	display: flex !important;
	flex-direction: column !important;
	gap: 4px !important;
}

#product-product .csg-reviews-count-text {
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--pdp-text-muted) !important;
}

#product-product .csg-login-prompt-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 13px !important;
	color: var(--pdp-text-muted) !important;
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	padding: 8px 16px !important;
	border-radius: 10px !important;
}

/* Write Review Form Card */
#product-product .csg-write-review-card {
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 16px !important;
	padding: 24px 26px !important;
	box-shadow: var(--pdp-shadow) !important;
	transition: all 0.25s ease !important;
}

#product-product .csg-write-review-card-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	margin-bottom: 20px !important;
	padding-bottom: 14px !important;
	border-bottom: 1px solid var(--pdp-border) !important;
}

#product-product .csg-write-review-title {
	font-size: 18px !important;
	font-weight: 800 !important;
	color: var(--pdp-text) !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

#product-product .csg-write-review-title i {
	color: var(--pdp-primary) !important;
}

/* Star rating picker */
#product-product .csg-star-picker-wrap {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	padding-top: 6px !important;
}

#product-product .csg-star-rating-select {
	display: inline-flex !important;
	flex-direction: row-reverse !important;
	align-items: center !important;
	gap: 6px !important;
}

#product-product .csg-star-rating-select input[type="radio"] {
	display: none !important;
}

#product-product .csg-star-rating-select label {
	font-size: 26px !important;
	color: #cbd5e1 !important;
	cursor: pointer !important;
	margin: 0 !important;
	line-height: 1 !important;
	transition: color 0.15s ease, transform 0.15s ease !important;
}

[data-csg-theme="dark"] #product-product .csg-star-rating-select label {
	color: #334155 !important;
}

#product-product .csg-star-rating-select label:hover,
#product-product .csg-star-rating-select label:hover ~ label,
#product-product .csg-star-rating-select input[type="radio"]:checked ~ label {
	color: #f59e0b !important;
	transform: scale(1.12) !important;
}

#product-product .csg-form-btn-row {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin-top: 18px !important;
}

/* Empty reviews state banner */
#product-product .csg-reviews-empty-state {
	text-align: center !important;
	padding: 48px 24px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1px dashed var(--pdp-border) !important;
	border-radius: 16px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 12px !important;
}

#product-product .csg-empty-icon-circle {
	width: 60px !important;
	height: 60px !important;
	border-radius: 50% !important;
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 26px !important;
	color: var(--pdp-primary) !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
}

#product-product .csg-reviews-empty-title {
	font-size: 18px !important;
	font-weight: 800 !important;
	color: var(--pdp-text) !important;
	margin: 0 !important;
}

#product-product .csg-reviews-empty-desc {
	font-size: 14px !important;
	color: var(--pdp-text-muted) !important;
	max-width: 480px !important;
	margin: 0 0 8px 0 !important;
	line-height: 1.5 !important;
}

/* Reviews List & Cards */
#product-product .csg-reviews-feed-wrap {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	width: 100% !important;
}

#product-product .csg-reviews-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	width: 100% !important;
}

#product-product .csg-review-card {
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 14px !important;
	padding: 22px !important;
	box-shadow: var(--pdp-shadow) !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

#product-product .csg-review-card:hover {
	border-color: var(--pdp-primary) !important;
}

#product-product .csg-review-card-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
}

#product-product .csg-review-user-info {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
}

#product-product .csg-review-avatar {
	width: 40px !important;
	height: 40px !important;
	border-radius: 12px !important;
	background: linear-gradient(135deg, #00bc52, #0284c7) !important;
	color: #ffffff !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-transform: uppercase !important;
	box-shadow: 0 2px 8px rgba(0, 188, 82, 0.25) !important;
}

#product-product .csg-review-user-meta {
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
}

#product-product .csg-review-author-name {
	font-size: 15px !important;
	font-weight: 700 !important;
	color: var(--pdp-text) !important;
}

#product-product .csg-review-verified-badge {
	font-size: 11px !important;
	font-weight: 600 !important;
	color: #059669 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
}

[data-csg-theme="dark"] #product-product .csg-review-verified-badge {
	color: #10b981 !important;
}

#product-product .csg-review-meta-right {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	gap: 4px !important;
}

#product-product .csg-review-date {
	font-size: 12px !important;
	color: var(--pdp-text-dim) !important;
}

#product-product .csg-review-text {
	font-size: 14px !important;
	line-height: 1.6 !important;
	color: var(--pdp-text) !important;
}

#product-product .csg-review-stars {
	font-size: 13px !important;
	display: inline-flex !important;
	gap: 2px !important;
}

/* Specs Tab */
#product-product .csg-specs-wrapper {
	max-width: 900px !important;
}

#product-product .csg-specs-table {
	display: flex !important;
	flex-direction: column !important;
	gap: 4px !important;
}

#product-product .csg-specs-group-title {
	font-size: 15px !important;
	font-weight: 800 !important;
	color: var(--pdp-text) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	padding: 16px 0 8px 0 !important;
	border-bottom: 2px solid var(--pdp-border) !important;
	margin-bottom: 6px !important;
}

#product-product .csg-specs-group-title:first-child {
	padding-top: 0 !important;
}

#product-product .csg-spec-row {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	padding: 12px 16px !important;
	border-radius: 8px !important;
	font-size: 14px !important;
	transition: background 0.15s ease !important;
}

#product-product .csg-spec-row:nth-child(even) {
	background: var(--pdp-zebra-bg) !important;
}

#product-product .csg-spec-name {
	color: var(--pdp-text-muted) !important;
	font-weight: 500 !important;
}

#product-product .csg-spec-value {
	color: var(--pdp-text) !important;
	font-weight: 700 !important;
	text-align: right !important;
}

#product-product .csg-spec-placeholder {
	opacity: 0.5 !important;
}

/* Description Prose Tab */
#product-product .csg-pdp-description-body {
	max-width: 960px !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
	color: var(--pdp-text) !important;
}

#product-product .csg-pdp-prose p {
	margin-bottom: 16px !important;
}

#product-product .csg-pdp-prose img {
	max-width: 100% !important;
	height: auto !important;
	border-radius: 12px !important;
	margin: 16px 0 !important;
}

#product-product .csg-pdp-prose h2,
#product-product .csg-pdp-prose h3,
#product-product .csg-pdp-prose h4 {
	color: var(--pdp-text) !important;
	font-weight: 800 !important;
	margin-top: 24px !important;
	margin-bottom: 12px !important;
}

#product-product .csg-empty-pane {
	text-align: center !important;
	padding: 40px 20px !important;
	color: var(--pdp-text-muted) !important;
	font-size: 15px !important;
}

#product-product .csg-empty-pane i {
	font-size: 32px !important;
	margin-bottom: 12px !important;
	display: block !important;
}

#product-product .csg-review-body {
	font-size: 14px !important;
	color: var(--pdp-text) !important;
	line-height: 1.6 !important;
}

#product-product .csg-review-body p {
	margin: 0 !important;
}

#product-product .csg-reviews-empty {
	text-align: center !important;
	padding: 32px 16px !important;
	color: var(--pdp-text-muted) !important;
}

#product-product .csg-reviews-empty-icon {
	font-size: 36px !important;
	margin-bottom: 10px !important;
	opacity: 0.6 !important;
	display: block !important;
}

/* Review Form Card */
#product-product .csg-write-review-card {
	background: var(--pdp-card-subtle) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 16px !important;
	padding: 24px !important;
}

#product-product .csg-review-form .form-group {
	margin-bottom: 16px !important;
}

#product-product .csg-review-form .control-label {
	font-size: 13px !important;
	font-weight: 700 !important;
	color: var(--pdp-text) !important;
	margin-bottom: 6px !important;
	display: block !important;
}

#product-product .csg-form-hint {
	font-size: 11px !important;
	color: var(--pdp-text-muted) !important;
	margin-top: 4px !important;
}

/* Interactive Star Rating Picker */
#product-product .csg-star-rating-select {
	display: inline-flex !important;
	flex-direction: row-reverse !important;
	gap: 4px !important;
}

#product-product .csg-star-rating-select input {
	display: none !important;
}

#product-product .csg-star-rating-select label {
	font-size: 24px !important;
	color: var(--pdp-text-dim) !important;
	cursor: pointer !important;
	margin: 0 !important;
	transition: color 0.15s ease, transform 0.15s ease !important;
}

#product-product .csg-star-rating-select label:hover,
#product-product .csg-star-rating-select label:hover ~ label,
#product-product .csg-star-rating-select input:checked ~ label {
	color: #f59e0b !important;
	transform: scale(1.1) !important;
}

/* Service Tab Layout */
#product-product .csg-pdp-service-tabs-layout {
	display: grid !important;
	grid-template-columns: 240px 1fr !important;
	gap: 32px !important;
	align-items: start !important;
}

#product-product .csg-service-subtabs {
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
}

#product-product .csg-service-subtab {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	padding: 12px 16px !important;
	border-radius: 10px !important;
	background: var(--pdp-card-subtle) !important;
	border: 1.5px solid var(--pdp-border) !important;
	color: var(--pdp-text) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	text-align: left !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
}

#product-product .csg-service-subtab i {
	color: var(--pdp-primary) !important;
	font-size: 16px !important;
}

#product-product .csg-service-subtab:hover {
	border-color: var(--pdp-text-muted) !important;
	transform: translateX(2px) !important;
}

#product-product .csg-service-subtab.active {
	border-color: var(--pdp-primary) !important;
	background: var(--pdp-card-bg) !important;
	color: var(--pdp-primary) !important;
	box-shadow: 0 2px 8px var(--pdp-primary-glow) !important;
}

#product-product .csg-service-content-pane {
	background: var(--pdp-card-subtle) !important;
	border: 1px solid var(--pdp-border) !important;
	border-radius: 16px !important;
	padding: 28px !important;
	min-height: 200px !important;
	font-size: 14px !important;
	line-height: 1.7 !important;
	color: var(--pdp-text) !important;
}

#product-product .csg-service-content-pane h1,
#product-product .csg-service-content-pane h2,
#product-product .csg-service-content-pane h3 {
	color: var(--pdp-text) !important;
	font-weight: 800 !important;
	margin-top: 0 !important;
	margin-bottom: 14px !important;
}

#product-product .csg-service-content-pane p {
	color: var(--pdp-text) !important;
	margin-bottom: 12px !important;
}

/* --------------------------------------------------------------------------
   10. RELATED PRODUCTS
   -------------------------------------------------------------------------- */
#product-product .csg-pdp-related-section {
	margin-bottom: 48px !important;
}

#product-product .csg-section-header {
	margin-bottom: 20px !important;
}

#product-product .csg-section-title {
	font-size: 20px !important;
	font-weight: 800 !important;
	color: var(--pdp-text) !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

#product-product .csg-section-title i {
	color: #ef4444 !important;
}

#product-product .csg-pdp-tags-row {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 8px !important;
	margin-bottom: 32px !important;
	font-size: 13px !important;
}

#product-product .csg-tags-label {
	color: var(--pdp-text-muted) !important;
	font-weight: 600 !important;
}

#product-product .csg-tag-pill {
	display: inline-block !important;
	padding: 4px 10px !important;
	border-radius: 20px !important;
	background: var(--pdp-card-bg) !important;
	border: 1px solid var(--pdp-border) !important;
	color: var(--pdp-text) !important;
	text-decoration: none !important;
	font-size: 12px !important;
	transition: all 0.15s ease !important;
}

#product-product .csg-tag-pill:hover {
	border-color: var(--pdp-primary) !important;
	color: var(--pdp-primary) !important;
}

/* --------------------------------------------------------------------------
   11. STICKY MOBILE BUY BAR
   -------------------------------------------------------------------------- */
.csg-sticky-mobile-bar {
	display: none;
	position: fixed !important;
	bottom: 0 !important;
	left: 0 !important;
	right: 0 !important;
	z-index: 1050 !important;
	background: var(--pdp-sticky-bg, rgba(255, 255, 255, 0.95)) !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
	border-top: 1px solid var(--pdp-border, #e2e8f0) !important;
	padding: 10px 16px !important;
	box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15) !important;
	transform: translateY(105%) !important;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.csg-sticky-mobile-bar.is-visible {
	transform: translateY(0) !important;
}

.csg-sticky-bar-inner {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	max-width: 600px !important;
	margin: 0 auto !important;
}

.csg-sticky-thumb {
	width: 44px !important;
	height: 44px !important;
	object-fit: contain !important;
	border-radius: 8px !important;
	background: var(--pdp-card-bg, #ffffff) !important;
	border: 1px solid var(--pdp-border, #e2e8f0) !important;
	flex-shrink: 0 !important;
}

.csg-sticky-info {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 2px !important;
}

.csg-sticky-title {
	font-size: 13px !important;
	font-weight: 700 !important;
	color: var(--pdp-text, #0f172a) !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

.csg-sticky-price {
	font-size: 15px !important;
	font-weight: 800 !important;
	color: var(--pdp-primary, #00bc52) !important;
}

.csg-sticky-buy-btn {
	flex-shrink: 0 !important;
	height: 40px !important;
	padding: 0 16px !important;
	font-size: 14px !important;
	border-radius: 10px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
}

/* --------------------------------------------------------------------------
   12. STYLED MODALS (QUICK ORDER & PREORDER)
   -------------------------------------------------------------------------- */
.csg-modal-styled .modal-content {
	background: var(--pdp-card-bg, #ffffff) !important;
	border: 1px solid var(--pdp-border, #e2e8f0) !important;
	border-radius: 20px !important;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3) !important;
	overflow: hidden !important;
	color: var(--pdp-text, #0f172a) !important;
}

.csg-modal-styled .modal-header {
	border-bottom: 1px solid var(--pdp-border, #e2e8f0) !important;
	padding: 18px 24px !important;
}

.csg-modal-styled .modal-title {
	font-size: 17px !important;
	font-weight: 800 !important;
	color: var(--pdp-text, #0f172a) !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

.csg-modal-styled .modal-title i {
	color: #f59e0b !important;
}

.csg-modal-styled .modal-body {
	padding: 24px !important;
}

.csg-modal-styled .modal-footer {
	border-top: 1px solid var(--pdp-border, #e2e8f0) !important;
	padding: 16px 24px !important;
}

.csg-quick-product-preview {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	background: var(--pdp-card-subtle, #f8fafc) !important;
	border: 1px solid var(--pdp-border, #e2e8f0) !important;
	border-radius: 12px !important;
	padding: 10px 14px !important;
	margin-bottom: 16px !important;
}

.csg-quick-thumb {
	width: 48px !important;
	height: 48px !important;
	object-fit: contain !important;
	border-radius: 8px !important;
	background: var(--pdp-card-bg, #ffffff) !important;
}

.csg-quick-preview-copy strong {
	display: block !important;
	font-size: 13px !important;
	line-height: 1.3 !important;
	color: var(--pdp-text, #0f172a) !important;
}

.csg-quick-price {
	font-size: 14px !important;
	font-weight: 800 !important;
	color: var(--pdp-primary, #00bc52) !important;
}

.csg-quick-intro {
	font-size: 13px !important;
	color: var(--pdp-text-muted, #64748b) !important;
	margin-bottom: 16px !important;
	line-height: 1.5 !important;
}

/* --------------------------------------------------------------------------
   13. RESPONSIVE ADAPTATIONS
   -------------------------------------------------------------------------- */
@media (max-width: 1199px) {
	#product-product .csg-pdp-hero {
		grid-template-columns: 1.1fr 0.9fr !important;
		gap: 28px !important;
	}
	#product-product .csg-pdp-main-frame {
		min-height: 420px !important;
	}
}

@media (max-width: 991px) {
	#product-product .csg-pdp-hero {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
	#product-product .csg-pdp-main-frame {
		min-height: 380px !important;
		max-height: 480px !important;
	}
	#product-product .csg-pdp-reviews-layout {
		grid-template-columns: 1fr !important;
		gap: 28px !important;
	}
	#product-product .csg-pdp-service-tabs-layout {
		grid-template-columns: 1fr !important;
		gap: 20px !important;
	}
	#product-product .csg-service-subtabs {
		flex-direction: row !important;
		overflow-x: auto !important;
		padding-bottom: 4px !important;
	}
	#product-product .csg-service-subtab {
		flex-shrink: 0 !important;
		white-space: nowrap !important;
	}
}

@media (max-width: 767px) {
	.csg-sticky-mobile-bar {
		display: block !important;
	}
	#product-product {
		padding-left: 12px !important;
		padding-right: 12px !important;
		padding-bottom: 70px !important; /* Spacing for sticky bar */
	}
	#product-product .csg-pdp-buybox {
		padding: 20px 18px !important;
		border-radius: 16px !important;
	}
	#product-product .csg-pdp-title {
		font-size: 22px !important;
	}
	#product-product .csg-pdp-price-current {
		font-size: 28px !important;
	}
	#product-product .csg-pdp-main-frame {
		min-height: 300px !important;
		max-height: 360px !important;
		border-radius: 16px !important;
	}
	#product-product .csg-pdp-main-link {
		padding: 16px !important;
	}
	#product-product .csg-pdp-thumb-item {
		flex: 0 0 64px !important;
		width: 64px !important;
		height: 64px !important;
	}
	#product-product .csg-pdp-tab-content {
		padding: 20px 16px !important;
	}
	#product-product .csg-pdp-nav-tabs > li > a {
		padding: 12px 14px !important;
		font-size: 13px !important;
	}
}



/* ==========================================================================
   Step 6 Confirm & Order Summary UX/UI Polish
   ========================================================================== */

#checkout-checkout .csg-checkout-order-item,
#checkout-checkout .csg-checkout-confirm-item {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 14px !important;
	padding: 12px 0 !important;
	border-bottom: 1px solid #f1f5f9 !important;
}

#checkout-checkout .csg-checkout-order-thumb {
	position: relative !important;
	width: 58px !important;
	height: 58px !important;
	border-radius: 12px !important;
	background: #ffffff !important;
	border: 1.5px solid #e2e8f0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
	overflow: visible !important;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
}

#checkout-checkout .csg-checkout-order-img {
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	border-radius: 10px !important;
}

#checkout-checkout .csg-checkout-order-qty {
	position: absolute !important;
	bottom: -5px !important;
	right: -5px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 10px !important;
	font-weight: 800 !important;
	padding: 2px 6px !important;
	border-radius: 8px !important;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25) !important;
	line-height: 1.2 !important;
}

#checkout-checkout .csg-checkout-order-copy {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

#checkout-checkout .csg-checkout-order-name {
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	color: #0f172a !important;
	margin: 0 0 4px !important;
}

#checkout-checkout .csg-checkout-order-name a {
	color: inherit !important;
	text-decoration: none !important;
}

#checkout-checkout .csg-checkout-order-name a:hover {
	color: #00bc52 !important;
}

#checkout-checkout .csg-checkout-order-meta {
	font-size: 12px !important;
	color: #64748b !important;
	margin: 0 !important;
	line-height: 1.3 !important;
}

#checkout-checkout .csg-checkout-order-price {
	font-size: 15px !important;
	font-weight: 800 !important;
	color: #0f172a !important;
	white-space: nowrap !important;
	text-align: right !important;
	flex: 0 0 auto !important;
}

#checkout-checkout .csg-checkout-order-totals,
#checkout-checkout .csg-checkout-confirm-totals {
	border-top: 1px solid #f1f5f9 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	margin: 14px 0 0 !important;
	padding: 14px 0 0 !important;
}

#checkout-checkout .csg-checkout-order-total {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 16px !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
}

#checkout-checkout .csg-checkout-order-total span {
	color: #64748b !important;
	font-weight: 500 !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	word-break: break-word !important;
}

#checkout-checkout .csg-checkout-order-total strong {
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
	flex: 0 0 auto !important;
	text-align: right !important;
}

#checkout-checkout .csg-checkout-order-total.is-grand {
	background: #e6f9ed !important;
	border: 1px solid #a3e9be !important;
	border-radius: 12px !important;
	padding: 14px 18px !important;
	margin-top: 8px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
}

#checkout-checkout .csg-checkout-order-total.is-grand span {
	font-size: 16px !important;
	font-weight: 800 !important;
	color: #0f172a !important;
}

#checkout-checkout .csg-checkout-order-total.is-grand strong {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: #008a38 !important;
	white-space: nowrap !important;
}

#checkout-checkout .csg-checkout-confirm-cue {
	background: #f0fdf4 !important;
	border: 1px solid #bbf7d0 !important;
	border-radius: 12px !important;
	padding: 12px 16px !important;
	margin-bottom: 16px !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
}

#checkout-checkout .csg-checkout-confirm-cue .fa {
	font-size: 20px !important;
	color: #00bc52 !important;
	flex-shrink: 0 !important;
}

#checkout-checkout .csg-checkout-confirm-payment {
	margin-top: 18px !important;
}

#checkout-checkout .csg-checkout-confirm-payment .buttons,
#checkout-checkout .csg-checkout-confirm-payment .pull-right {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

#checkout-checkout .csg-checkout-confirm-payment .btn,
#checkout-checkout .csg-checkout-confirm-payment input[type="button"],
#checkout-checkout .csg-checkout-confirm-payment input[type="submit"],
#checkout-checkout .csg-checkout-confirm-payment button {
	width: 100% !important;
	height: 52px !important;
	border-radius: 12px !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	letter-spacing: 0.03em !important;
	background: #00bc52 !important;
	border: none !important;
	color: #ffffff !important;
	box-shadow: 0 4px 16px rgba(0, 188, 82, 0.32) !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

#checkout-checkout .csg-checkout-confirm-payment .btn:hover,
#checkout-checkout .csg-checkout-confirm-payment input[type="button"]:hover,
#checkout-checkout .csg-checkout-confirm-payment input[type="submit"]:hover,
#checkout-checkout .csg-checkout-confirm-payment button:hover {
	background: #00a64a !important;
	box-shadow: 0 6px 20px rgba(0, 188, 82, 0.42) !important;
	transform: translateY(-1px) !important;
}

/* Dark Theme Overrides */
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-thumb {
	background: #1f2b3f !important;
	border-color: #2f3d52 !important;
}
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-item {
	border-bottom-color: #2f3d52 !important;
}
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-totals {
	border-top-color: #2f3d52 !important;
}
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-name,
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-price,
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-total strong {
	color: #f5f7fb !important;
}
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-meta,
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-total span {
	color: #aab4c5 !important;
}
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-total.is-grand {
	background: rgba(0, 188, 82, 0.14) !important;
	border-color: rgba(0, 188, 82, 0.35) !important;
}
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-total.is-grand span {
	color: #f5f7fb !important;
}
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-order-total.is-grand strong {
	color: #00bc52 !important;
}
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-confirm-cue {
	background: rgba(0, 188, 82, 0.12) !important;
	border-color: rgba(0, 188, 82, 0.3) !important;
}

/* ==========================================================================
   COMPREHENSIVE DARK MODE DESIGN SYSTEM OVERRIDES (ALL NEW & EXISTING BLOCKS)
   Supports html[data-csg-theme="dark"], html[data-theme="dark"], body.theme-dark
   ========================================================================== */

/* --- 1. GLOBAL BASE & TYPOGRAPHY IN DARK MODE --- */
html[data-csg-theme="dark"],
html[data-theme="dark"],
body.theme-dark {
	background-color: #111418 !important;
	color: #eef2f6 !important;
}

html[data-csg-theme="dark"] body,
html[data-theme="dark"] body {
	background-color: #111418 !important;
	color: #eef2f6 !important;
}

/* --- 2. PRODUCT CARDS & LISTING PRICES IN DARK MODE --- */
html[data-csg-theme="dark"] .product-thumb,
html[data-csg-theme="dark"] .csg-listing-grid .product-layout > div,
html[data-theme="dark"] .product-thumb,
html[data-theme="dark"] .csg-listing-grid .product-layout > div {
	background: #181d23 !important;
	border-color: #242f3d !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3) !important;
}

html[data-csg-theme="dark"] .product-thumb .caption h4 a,
html[data-csg-theme="dark"] .csg-listing-product-caption h4 a,
html[data-theme="dark"] .product-thumb .caption h4 a,
html[data-theme="dark"] .csg-listing-product-caption h4 a {
	color: #f1f5f9 !important;
}

html[data-csg-theme="dark"] .product-thumb .caption h4 a:hover,
html[data-csg-theme="dark"] .csg-listing-product-caption h4 a:hover,
html[data-theme="dark"] .product-thumb .caption h4 a:hover,
html[data-theme="dark"] .csg-listing-product-caption h4 a:hover {
	color: #00bc52 !important;
}

/* Crisp, High-Contrast Prices in Dark Mode */
html[data-csg-theme="dark"] .csg-listing-product-price,
html[data-csg-theme="dark"] .product-thumb .price,
html[data-csg-theme="dark"] .csg-listing-product-price .price-new,
html[data-csg-theme="dark"] .product-thumb .price-new,
html[data-csg-theme="dark"] .price,
html[data-csg-theme="dark"] .price-new,
html[data-theme="dark"] .csg-listing-product-price,
html[data-theme="dark"] .product-thumb .price,
html[data-theme="dark"] .csg-listing-product-price .price-new,
html[data-theme="dark"] .product-thumb .price-new,
html[data-theme="dark"] .price,
html[data-theme="dark"] .price-new {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] .csg-listing-product-price .price-old,
html[data-csg-theme="dark"] .product-thumb .price-old,
html[data-csg-theme="dark"] .price-old,
html[data-theme="dark"] .csg-listing-product-price .price-old,
html[data-theme="dark"] .product-thumb .price-old,
html[data-theme="dark"] .price-old {
	color: #64748b !important;
}

html[data-csg-theme="dark"] .csg-listing-product-price .price-tax,
html[data-csg-theme="dark"] .product-thumb .price-tax,
html[data-csg-theme="dark"] .price-tax,
html[data-theme="dark"] .csg-listing-product-price .price-tax,
html[data-theme="dark"] .product-thumb .price-tax,
html[data-theme="dark"] .price-tax {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] .csg-listing-product-code,
html[data-theme="dark"] .csg-listing-product-code {
	color: #64748b !important;
}

html[data-csg-theme="dark"] .csg-listing-cart-btn,
html[data-theme="dark"] .csg-listing-cart-btn {
	background: #1e293b !important;
	border-color: #334155 !important;
	color: #cbd5e1 !important;
}

html[data-csg-theme="dark"] .csg-listing-cart-btn:hover,
html[data-theme="dark"] .csg-listing-cart-btn:hover {
	background: #334155 !important;
	color: #ffffff !important;
}

html[data-csg-theme="dark"] .csg-listing-action-btn,
html[data-theme="dark"] .csg-listing-action-btn {
	background: #1e293b !important;
	border-color: #334155 !important;
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] .csg-listing-action-btn:hover,
html[data-theme="dark"] .csg-listing-action-btn:hover {
	background: #334155 !important;
	color: #ffffff !important;
}

/* --- 3. FILTER SIDEBAR IN DARK MODE --- */
html[data-csg-theme="dark"] .csg-filter-card,
html[data-theme="dark"] .csg-filter-card {
	background: #181d23 !important;
	border: 1px solid #242f3d !important;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35) !important;
}

html[data-csg-theme="dark"] .csg-filter-head,
html[data-theme="dark"] .csg-filter-head {
	border-bottom-color: #242f3d !important;
}

html[data-csg-theme="dark"] .csg-filter-head-title,
html[data-theme="dark"] .csg-filter-head-title {
	color: #f1f5f9 !important;
}

html[data-csg-theme="dark"] .csg-filter-clear-head-link,
html[data-theme="dark"] .csg-filter-clear-head-link {
	color: #f87171 !important;
}

html[data-csg-theme="dark"] .csg-filter-clear-head-link:hover,
html[data-theme="dark"] .csg-filter-clear-head-link:hover {
	color: #fca5a5 !important;
}

html[data-csg-theme="dark"] .csg-filter-selected-section,
html[data-theme="dark"] .csg-filter-selected-section {
	background: #1e293b !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] .csg-filter-chip,
html[data-theme="dark"] .csg-filter-chip {
	background: #131b2a !important;
	border-color: #334155 !important;
	color: #e2e8f0 !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3) !important;
}

html[data-csg-theme="dark"] .csg-filter-chip-remove,
html[data-theme="dark"] .csg-filter-chip-remove {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] .csg-filter-chip-remove:hover,
html[data-theme="dark"] .csg-filter-chip-remove:hover {
	color: #f87171 !important;
}

html[data-csg-theme="dark"] .csg-filter-group,
html[data-theme="dark"] .csg-filter-group {
	border-bottom-color: #242f3d !important;
}

html[data-csg-theme="dark"] .csg-filter-group-name,
html[data-theme="dark"] .csg-filter-group-name {
	color: #f1f5f9 !important;
}

html[data-csg-theme="dark"] .csg-filter-group-header:hover .csg-filter-group-name,
html[data-theme="dark"] .csg-filter-group-header:hover .csg-filter-group-name {
	color: #00bc52 !important;
}

html[data-csg-theme="dark"] .csg-filter-arrow,
html[data-theme="dark"] .csg-filter-arrow {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] .csg-filter-item,
html[data-theme="dark"] .csg-filter-item {
	color: #cbd5e1 !important;
}

html[data-csg-theme="dark"] .csg-filter-item:hover,
html[data-theme="dark"] .csg-filter-item:hover {
	background: rgba(255, 255, 255, 0.05) !important;
}

html[data-csg-theme="dark"] .csg-filter-item.is-selected,
html[data-theme="dark"] .csg-filter-item.is-selected {
	background: rgba(0, 188, 82, 0.14) !important;
}

html[data-csg-theme="dark"] .csg-filter-custom-checkbox,
html[data-theme="dark"] .csg-filter-custom-checkbox {
	background: #1e293b !important;
	border-color: #475569 !important;
}

html[data-csg-theme="dark"] .csg-filter-item.is-selected .csg-filter-custom-checkbox,
html[data-theme="dark"] .csg-filter-item.is-selected .csg-filter-custom-checkbox {
	background: #00bc52 !important;
	border-color: #00bc52 !important;
}

html[data-csg-theme="dark"] .csg-filter-item-name,
html[data-theme="dark"] .csg-filter-item-name {
	color: #cbd5e1 !important;
}

html[data-csg-theme="dark"] .csg-filter-item.is-selected .csg-filter-item-name,
html[data-theme="dark"] .csg-filter-item.is-selected .csg-filter-item-name {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] .csg-filter-item-count,
html[data-theme="dark"] .csg-filter-item-count {
	background: #242f3d !important;
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] .csg-filter-item.is-selected .csg-filter-item-count,
html[data-theme="dark"] .csg-filter-item.is-selected .csg-filter-item-count {
	background: rgba(0, 188, 82, 0.25) !important;
	color: #4ade80 !important;
}

/* Range Slider Dark Mode */
html[data-csg-theme="dark"] .csg-range-input-box,
html[data-theme="dark"] .csg-range-input-box {
	background: #1e293b !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] .csg-range-input-box:focus-within,
html[data-theme="dark"] .csg-range-input-box:focus-within {
	background: #131b2a !important;
	border-color: #00bc52 !important;
	box-shadow: 0 0 0 2px rgba(0, 188, 82, 0.25) !important;
}

html[data-csg-theme="dark"] .csg-range-num,
html[data-theme="dark"] .csg-range-num {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] .csg-range-prefix,
html[data-theme="dark"] .csg-range-prefix {
	color: #64748b !important;
}

html[data-csg-theme="dark"] .csg-range-unit-tag,
html[data-theme="dark"] .csg-range-unit-tag {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] .csg-range-dash,
html[data-theme="dark"] .csg-range-dash {
	color: #475569 !important;
}

html[data-csg-theme="dark"] .csg-range-track-bg,
html[data-theme="dark"] .csg-range-track-bg {
	background: #334155 !important;
}

html[data-csg-theme="dark"] .csg-range-track-active,
html[data-theme="dark"] .csg-range-track-active {
	background: #00bc52 !important;
}

html[data-csg-theme="dark"] .csg-range-slider-el::-webkit-slider-thumb,
html[data-theme="dark"] .csg-range-slider-el::-webkit-slider-thumb {
	background: #ffffff !important;
	border-color: #00bc52 !important;
}

html[data-csg-theme="dark"] .csg-range-slider-el::-moz-range-thumb,
html[data-theme="dark"] .csg-range-slider-el::-moz-range-thumb {
	background: #ffffff !important;
	border-color: #00bc52 !important;
}

html[data-csg-theme="dark"] .csg-range-bounds-row,
html[data-theme="dark"] .csg-range-bounds-row {
	color: #64748b !important;
}

html[data-csg-theme="dark"] .csg-filter-actions,
html[data-theme="dark"] .csg-filter-actions {
	border-top-color: #242f3d !important;
}

/* --- 4. PRODUCT DETAIL PAGE (PDP 2.0) IN DARK MODE --- */
html[data-csg-theme="dark"] #product-product .csg-pdp-breadcrumbs-wrap,
html[data-theme="dark"] #product-product .csg-pdp-breadcrumbs-wrap {
	background: transparent !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-breadcrumb-link,
html[data-theme="dark"] #product-product .csg-pdp-breadcrumb-link {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-breadcrumb-link:hover,
html[data-theme="dark"] #product-product .csg-pdp-breadcrumb-link:hover {
	color: #38bdf8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-breadcrumb-item.active,
html[data-theme="dark"] #product-product .csg-pdp-breadcrumb-item.active {
	color: #f1f5f9 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-breadcrumb-sep,
html[data-theme="dark"] #product-product .csg-pdp-breadcrumb-sep {
	color: #475569 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-main-frame,
html[data-theme="dark"] #product-product .csg-pdp-main-frame {
	background: #181d23 !important;
	border-color: #242f3d !important;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4) !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-zoom-btn,
html[data-theme="dark"] #product-product .csg-pdp-zoom-btn {
	background: #1e293b !important;
	color: #f1f5f9 !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-thumb-btn,
html[data-theme="dark"] #product-product .csg-pdp-thumb-btn {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-thumb-item:hover .csg-pdp-thumb-btn,
html[data-theme="dark"] #product-product .csg-pdp-thumb-item:hover .csg-pdp-thumb-btn {
	border-color: #475569 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-thumb-item.is-active .csg-pdp-thumb-btn,
html[data-theme="dark"] #product-product .csg-pdp-thumb-item.is-active .csg-pdp-thumb-btn {
	border-color: #00bc52 !important;
	box-shadow: 0 0 0 2px rgba(0, 188, 82, 0.3) !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-buybox,
html[data-theme="dark"] #product-product .csg-pdp-buybox {
	background: #181d23 !important;
	border-color: #242f3d !important;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4) !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-title,
html[data-theme="dark"] #product-product .csg-pdp-title {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-rating-pill,
html[data-theme="dark"] #product-product .csg-pdp-rating-pill {
	background: #1e293b !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-reviews-link,
html[data-theme="dark"] #product-product .csg-pdp-reviews-link {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-reviews-link:hover,
html[data-theme="dark"] #product-product .csg-pdp-reviews-link:hover {
	color: #38bdf8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-price-card,
html[data-theme="dark"] #product-product .csg-pdp-price-card {
	background: #131b2a !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-price-current,
html[data-csg-theme="dark"] #product-product .csg-price-main,
html[data-theme="dark"] #product-product .csg-pdp-price-current,
html[data-theme="dark"] #product-product .csg-price-main {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-price-old,
html[data-theme="dark"] #product-product .csg-pdp-price-old {
	color: #64748b !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-tax-line,
html[data-csg-theme="dark"] #product-product .csg-pdp-points-line,
html[data-theme="dark"] #product-product .csg-pdp-tax-line,
html[data-theme="dark"] #product-product .csg-pdp-points-line {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-discount-pill,
html[data-theme="dark"] #product-product .csg-discount-pill {
	background: #1e293b !important;
	border-color: #334155 !important;
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-options-container,
html[data-theme="dark"] #product-product .csg-pdp-options-container {
	border-top-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-options-title-bar,
html[data-csg-theme="dark"] #product-product .csg-option-label-row .control-label,
html[data-theme="dark"] #product-product .csg-options-title-bar,
html[data-theme="dark"] #product-product .csg-option-label-row .control-label {
	color: #f1f5f9 !important;
}

html[data-csg-theme="dark"] #product-product .csg-color-swatch-item,
html[data-theme="dark"] #product-product .csg-color-swatch-item {
	background: #1e293b !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] #product-product .csg-swatch-name,
html[data-theme="dark"] #product-product .csg-swatch-name {
	color: #e2e8f0 !important;
}

html[data-csg-theme="dark"] #product-product .csg-color-swatch-item:hover,
html[data-theme="dark"] #product-product .csg-color-swatch-item:hover {
	border-color: #475569 !important;
}

html[data-csg-theme="dark"] #product-product .csg-color-swatch-item.is-active,
html[data-theme="dark"] #product-product .csg-color-swatch-item.is-active {
	background: #131b2a !important;
	border-color: #00bc52 !important;
	box-shadow: 0 0 0 1px #00bc52, 0 2px 8px rgba(0, 188, 82, 0.3) !important;
}

html[data-csg-theme="dark"] #product-product .csg-pill-btn,
html[data-theme="dark"] #product-product .csg-pill-btn {
	background: #1e293b !important;
	border-color: #334155 !important;
	color: #e2e8f0 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pill-btn:hover,
html[data-theme="dark"] #product-product .csg-pill-btn:hover {
	border-color: #475569 !important;
	color: #ffffff !important;
}

html[data-csg-theme="dark"] #product-product .csg-pill-btn.is-active,
html[data-theme="dark"] #product-product .csg-pill-btn.is-active {
	background: #131b2a !important;
	border-color: #00bc52 !important;
	color: #00bc52 !important;
	box-shadow: 0 0 0 1px #00bc52, 0 2px 8px rgba(0, 188, 82, 0.3) !important;
}

html[data-csg-theme="dark"] #product-product .csg-radio-chip-box,
html[data-csg-theme="dark"] #product-product .csg-checkbox-box,
html[data-theme="dark"] #product-product .csg-radio-chip-box,
html[data-theme="dark"] #product-product .csg-checkbox-box {
	background: #1e293b !important;
	border-color: #334155 !important;
	color: #e2e8f0 !important;
}

html[data-csg-theme="dark"] #product-product .csg-radio-chip input:checked + .csg-radio-chip-box,
html[data-csg-theme="dark"] #product-product .csg-checkbox-chip input:checked + .csg-checkbox-box,
html[data-theme="dark"] #product-product .csg-radio-chip input:checked + .csg-radio-chip-box,
html[data-theme="dark"] #product-product .csg-checkbox-chip input:checked + .csg-checkbox-box {
	background: #131b2a !important;
	border-color: #00bc52 !important;
	color: #00bc52 !important;
	box-shadow: 0 0 0 1px #00bc52, 0 2px 8px rgba(0, 188, 82, 0.3) !important;
}

html[data-csg-theme="dark"] #product-product .csg-input-styled,
html[data-csg-theme="dark"] #product-product .csg-textarea-styled,
html[data-csg-theme="dark"] #product-product .csg-select-styled,
html[data-csg-theme="dark"] #product-product select.form-control,
html[data-csg-theme="dark"] #product-product input.form-control,
html[data-theme="dark"] #product-product .csg-input-styled,
html[data-theme="dark"] #product-product .csg-textarea-styled,
html[data-theme="dark"] #product-product .csg-select-styled,
html[data-theme="dark"] #product-product select.form-control,
html[data-theme="dark"] #product-product input.form-control {
	background: #1e293b !important;
	border-color: #334155 !important;
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-qty-stepper,
html[data-theme="dark"] #product-product .csg-pdp-qty-stepper {
	background: #1e293b !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-qty-btn,
html[data-theme="dark"] #product-product .csg-pdp-qty-btn {
	color: #cbd5e1 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-qty-btn:hover,
html[data-theme="dark"] #product-product .csg-pdp-qty-btn:hover {
	background: #334155 !important;
	color: #ffffff !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-qty-input,
html[data-theme="dark"] #product-product .csg-pdp-qty-input {
	background: transparent !important;
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-trust,
html[data-theme="dark"] #product-product .csg-pdp-trust {
	border-top-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-trust-item,
html[data-theme="dark"] #product-product .csg-pdp-trust-item {
	color: #94a3b8 !important;
}

/* PDP Tabs in Dark Mode */
html[data-csg-theme="dark"] #product-product .csg-pdp-tabs-wrap,
html[data-theme="dark"] #product-product .csg-pdp-tabs-wrap {
	background: #181d23 !important;
	border-color: #242f3d !important;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4) !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-tabs-nav,
html[data-theme="dark"] #product-product .csg-pdp-tabs-nav {
	border-bottom-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-tab-btn,
html[data-theme="dark"] #product-product .csg-pdp-tab-btn {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-tab-btn:hover,
html[data-theme="dark"] #product-product .csg-pdp-tab-btn:hover {
	color: #f1f5f9 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-tab-btn.is-active,
html[data-theme="dark"] #product-product .csg-pdp-tab-btn.is-active {
	color: #00bc52 !important;
	border-bottom-color: #00bc52 !important;
}

html[data-csg-theme="dark"] #product-product .csg-tab-badge,
html[data-theme="dark"] #product-product .csg-tab-badge {
	background: #1e293b !important;
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-tab-btn.is-active .csg-tab-badge,
html[data-theme="dark"] #product-product .csg-pdp-tab-btn.is-active .csg-tab-badge {
	background: rgba(0, 188, 82, 0.2) !important;
	color: #4ade80 !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-tab-pane,
html[data-theme="dark"] #product-product .csg-pdp-tab-pane {
	color: #cbd5e1 !important;
}

/* Specifications Table in Dark Mode */
html[data-csg-theme="dark"] #product-product .csg-specs-table-wrap,
html[data-theme="dark"] #product-product .csg-specs-table-wrap {
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-spec-group-title,
html[data-theme="dark"] #product-product .csg-spec-group-title {
	background: #1e293b !important;
	color: #f1f5f9 !important;
	border-bottom-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-spec-row,
html[data-theme="dark"] #product-product .csg-spec-row {
	border-bottom-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-spec-row:nth-child(even),
html[data-theme="dark"] #product-product .csg-spec-row:nth-child(even) {
	background: rgba(255, 255, 255, 0.02) !important;
}

html[data-csg-theme="dark"] #product-product .csg-spec-key,
html[data-theme="dark"] #product-product .csg-spec-key {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-spec-val,
html[data-theme="dark"] #product-product .csg-spec-val {
	color: #f8fafc !important;
}

/* Reviews Tab in Dark Mode */
html[data-csg-theme="dark"] #product-product .csg-reviews-overview-card,
html[data-theme="dark"] #product-product .csg-reviews-overview-card {
	background: #1e293b !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] #product-product .csg-reviews-score-big,
html[data-theme="dark"] #product-product .csg-reviews-score-big {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #product-product .csg-reviews-count-text,
html[data-theme="dark"] #product-product .csg-reviews-count-text {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-write-review-card,
html[data-theme="dark"] #product-product .csg-write-review-card {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-write-review-card-header,
html[data-theme="dark"] #product-product .csg-write-review-card-header {
	border-bottom-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-write-review-title,
html[data-theme="dark"] #product-product .csg-write-review-title {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #product-product .csg-review-card,
html[data-theme="dark"] #product-product .csg-review-card {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #product-product .csg-review-author-name,
html[data-theme="dark"] #product-product .csg-review-author-name {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #product-product .csg-review-date,
html[data-theme="dark"] #product-product .csg-review-date {
	color: #64748b !important;
}

html[data-csg-theme="dark"] #product-product .csg-review-text,
html[data-theme="dark"] #product-product .csg-review-text {
	color: #cbd5e1 !important;
}

html[data-csg-theme="dark"] #product-product .csg-reviews-empty-state,
html[data-theme="dark"] #product-product .csg-reviews-empty-state {
	background: #1e293b !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] #product-product .csg-reviews-empty-title,
html[data-theme="dark"] #product-product .csg-reviews-empty-title {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #product-product .csg-reviews-empty-desc,
html[data-theme="dark"] #product-product .csg-reviews-empty-desc {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #product-product .csg-empty-icon-circle,
html[data-theme="dark"] #product-product .csg-empty-icon-circle {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

/* Mobile Sticky Bar in Dark Mode */
html[data-csg-theme="dark"] #product-product .csg-pdp-mobile-bar,
html[data-theme="dark"] #product-product .csg-pdp-mobile-bar {
	background: #181d23 !important;
	border-top-color: #242f3d !important;
	box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.5) !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-mobile-title,
html[data-theme="dark"] #product-product .csg-pdp-mobile-title {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #product-product .csg-pdp-mobile-price,
html[data-theme="dark"] #product-product .csg-pdp-mobile-price {
	color: #f8fafc !important;
}

/* --- 5. CHECKOUT & NOVA POSHTA IN DARK MODE --- */
html[data-csg-theme="dark"] #checkout-checkout .csg-delivery-tile,
html[data-theme="dark"] #checkout-checkout .csg-delivery-tile {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-delivery-tile:hover,
html[data-theme="dark"] #checkout-checkout .csg-delivery-tile:hover {
	border-color: #475569 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-delivery-tile.is-selected,
html[data-theme="dark"] #checkout-checkout .csg-delivery-tile.is-selected {
	background: #0f1d2c !important;
	border-color: #00bc52 !important;
	box-shadow: 0 0 0 1px #00bc52 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-delivery-tile-title,
html[data-theme="dark"] #checkout-checkout .csg-delivery-tile-title {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-delivery-tile-badge,
html[data-theme="dark"] #checkout-checkout .csg-delivery-tile-badge {
	background: #1e293b !important;
	color: #4ade80 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-delivery-tile-desc,
html[data-theme="dark"] #checkout-checkout .csg-delivery-tile-desc {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-card,
html[data-theme="dark"] #checkout-checkout .csg-np-card {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-header-title,
html[data-theme="dark"] #checkout-checkout .csg-np-header-title {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-chips,
html[data-theme="dark"] #checkout-checkout .csg-np-chips {
	background: #1e293b !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-chip,
html[data-theme="dark"] #checkout-checkout .csg-np-chip {
	color: #94a3b8 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-chip.is-active,
html[data-theme="dark"] #checkout-checkout .csg-np-chip.is-active {
	background: #0f172a !important;
	color: #00bc52 !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3) !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-field-label,
html[data-theme="dark"] #checkout-checkout .csg-np-field-label {
	color: #e2e8f0 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-combobox-trigger,
html[data-csg-theme="dark"] #checkout-checkout .csg-np-input,
html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-comment-textarea,
html[data-theme="dark"] #checkout-checkout .csg-np-combobox-trigger,
html[data-theme="dark"] #checkout-checkout .csg-np-input,
html[data-theme="dark"] #checkout-checkout .csg-checkout-comment-textarea {
	background: #1e293b !important;
	color: #f8fafc !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-combobox-panel,
html[data-theme="dark"] #checkout-checkout .csg-np-combobox-panel {
	background: #181d23 !important;
	border-color: #334155 !important;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5) !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-combobox-search,
html[data-theme="dark"] #checkout-checkout .csg-np-combobox-search {
	background: #181d23 !important;
	border-bottom-color: #334155 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-combobox-search-input,
html[data-theme="dark"] #checkout-checkout .csg-np-combobox-search-input {
	background: #1e293b !important;
	color: #f8fafc !important;
	border-color: #334155 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-combobox-item,
html[data-theme="dark"] #checkout-checkout .csg-np-combobox-item {
	border-bottom-color: #242f3d !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-combobox-item:hover,
html[data-csg-theme="dark"] #checkout-checkout .csg-np-combobox-item.is-selected,
html[data-theme="dark"] #checkout-checkout .csg-np-combobox-item:hover,
html[data-theme="dark"] #checkout-checkout .csg-np-combobox-item.is-selected {
	background: #1e293b !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-item-num,
html[data-theme="dark"] #checkout-checkout .csg-np-item-num {
	color: #00bc52 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-np-item-addr,
html[data-theme="dark"] #checkout-checkout .csg-np-item-addr {
	color: #e2e8f0 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .csg-checkout-summary,
html[data-theme="dark"] #checkout-checkout .csg-checkout-summary {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #checkout-checkout .panel-default,
html[data-theme="dark"] #checkout-checkout .panel-default {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #checkout-checkout .panel-heading,
html[data-theme="dark"] #checkout-checkout .panel-heading {
	background: #1e293b !important;
	border-bottom-color: #242f3d !important;
	color: #f1f5f9 !important;
}

html[data-csg-theme="dark"] #checkout-checkout .panel-title,
html[data-theme="dark"] #checkout-checkout .panel-title {
	color: #f1f5f9 !important;
}

/* --- 6. SHOPPING CART PAGE (CHECKOUT/CART) IN DARK MODE --- */
html[data-csg-theme="dark"] #checkout-cart .table-responsive table,
html[data-theme="dark"] #checkout-cart .table-responsive table {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #checkout-cart .table-bordered > thead > tr > th,
html[data-csg-theme="dark"] #checkout-cart .table-bordered > thead > tr > td,
html[data-theme="dark"] #checkout-cart .table-bordered > thead > tr > th,
html[data-theme="dark"] #checkout-cart .table-bordered > thead > tr > td {
	background: #1e293b !important;
	border-color: #242f3d !important;
	color: #f1f5f9 !important;
}

html[data-csg-theme="dark"] #checkout-cart .table-bordered > tbody > tr > td,
html[data-theme="dark"] #checkout-cart .table-bordered > tbody > tr > td {
	background: #181d23 !important;
	border-color: #242f3d !important;
	color: #e2e8f0 !important;
}

html[data-csg-theme="dark"] #checkout-cart .table-bordered > tbody > tr > td a,
html[data-theme="dark"] #checkout-cart .table-bordered > tbody > tr > td a {
	color: #f8fafc !important;
}

html[data-csg-theme="dark"] #checkout-cart .table-bordered > tbody > tr > td a:hover,
html[data-theme="dark"] #checkout-cart .table-bordered > tbody > tr > td a:hover {
	color: #00bc52 !important;
}

html[data-csg-theme="dark"] #checkout-cart .panel-default,
html[data-theme="dark"] #checkout-cart .panel-default {
	background: #181d23 !important;
	border-color: #242f3d !important;
}

html[data-csg-theme="dark"] #checkout-cart .panel-heading,
html[data-theme="dark"] #checkout-cart .panel-heading {
	background: #1e293b !important;
	border-bottom-color: #242f3d !important;
	color: #f1f5f9 !important;
}
