/* Temporary catalog presentation until the final RMS layout is approved. */
.rms-container {
	width: calc(100% - 120px);
	max-width: none;
	margin: 0 auto;
}

/* Catalog menu polish overrides. */
@media (min-width: 801px) {
	.rms-catalog-menu {
		padding: 14px 0 18px;
		border-top-color: #e1e5e7;
		background: #f3f5f6;
	}

	.rms-catalog-menu__inner {
		grid-template-columns: 300px minmax(0, 1fr);
		gap: 14px;
		min-height: 0;
	}

	.rms-catalog-menu__sidebar,
	.rms-catalog-menu__panels {
		border: 1px solid #e1e5e7;
		border-radius: 14px;
		background: #fff;
		box-shadow: 0 4px 16px rgba(31, 41, 51, .05);
	}

	.rms-catalog-menu__sidebar {
		padding: 8px;
	}

	.rms-catalog-menu__category {
		min-height: 54px;
		padding: 11px 13px;
		border-left-color: transparent;
		border-radius: 9px;
	}

	.rms-catalog-menu__category:hover:not(.is-active),
	.rms-catalog-menu__category:focus-visible:not(.is-active) {
		border-left-color: transparent;
		background: #f6f8f9;
		color: #1f2933;
	}

	.rms-catalog-menu__category.is-active {
		border-left-color: #df1829;
		background: #fff3f4;
		color: #df1829;
	}

	.rms-catalog-menu__category.is-active svg {
		stroke: #df1829;
	}

	.rms-catalog-menu__panels {
		max-height: min(570px, calc(100vh - 170px));
	}

	.rms-catalog-menu__panel {
		min-height: 0;
		padding: 27px 30px 30px;
	}

	.rms-catalog-menu__panel-head {
		margin-bottom: 20px;
		padding-bottom: 16px;
	}

	.rms-catalog-menu__group {
		padding-bottom: 14px;
	}

	.rms-catalog-menu__group-title {
		min-height: 43px;
		padding: 0 8px;
		border-bottom-color: #e3e7e9;
		border-radius: 8px 8px 0 0;
		transition: background-color .18s ease, color .18s ease;
	}

	.rms-catalog-menu__group-title:hover,
	.rms-catalog-menu__group-title:focus-visible {
		background: #f6f8f9;
		color: #df1829;
	}

	.rms-catalog-menu__group li a {
		padding: 6px 8px;
		border-radius: 6px;
		transition: background-color .18s ease, color .18s ease;
	}

	.rms-catalog-menu__group li a:hover,
	.rms-catalog-menu__group li a:focus-visible {
		background: #fff3f4;
		color: #df1829;
	}
}

@media (min-width: 1400px) {
	.rms-catalog-menu__inner {
		grid-template-columns: 320px minmax(0, 1fr);
	}

	.rms-catalog-menu__panel {
		padding-right: 38px;
		padding-left: 38px;
	}
}

@media (max-width: 800px) {
	.rms-catalog-menu {
		padding: 0;
		background: #fff;
	}

	.rms-catalog-menu__sidebar,
	.rms-catalog-menu__panels {
		border: 0;
		border-radius: 0;
		box-shadow: none;
	}
}

/* Menu alignment hotfix: keep the category row as icon -> title -> arrow at every viewport. */
.rms-catalog-menu__category {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr) 22px !important;
	align-items: center;
	gap: 18px !important;
	text-align: left !important;
	outline: none;
}

.rms-catalog-menu__sidebar-head {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	align-items: center;
	column-gap: 16px;
	min-width: 0;
}

.rms-catalog-menu__sidebar-head strong {
	min-width: 0;
	font-size: clamp(22px, 3vw, 28px) !important;
	font-weight: 700 !important;
	line-height: 1.1;
	white-space: normal !important;
}

.rms-catalog-menu__sidebar-head a {
	min-width: 0;
	font-size: clamp(12px, 2vw, 16px) !important;
}

.rms-catalog-button__chevron {
	width: 18px !important;
	height: 18px !important;
	stroke-width: 1.8 !important;
	transform: rotate(90deg) !important;
}

.rms-catalog-button[aria-expanded='true'] .rms-catalog-button__chevron {
	transform: rotate(-90deg) !important;
}

.rms-catalog-menu__category > span:not(.rms-catalog-menu__category-icon) {
	min-width: 0;
	text-align: left;
	justify-self: start;
}

.rms-catalog-menu__category-icon {
	width: 36px !important;
	height: 36px !important;
}

.rms-catalog-menu__category-icon svg,
.rms-catalog-menu__category-icon-asset {
	width: 30px !important;
	height: 30px !important;
}

.rms-catalog-menu__category > svg {
	grid-column: 3;
	justify-self: end;
	width: 22px !important;
	height: 22px !important;
}

.rms-catalog-menu__category:focus-visible {
	outline: 2px solid #ed1b2f;
	outline-offset: -2px;
}

@media (min-width: 801px) {
	.rms-catalog-menu__sidebar-head {
		display: flex !important;
		flex-wrap: nowrap;
		column-gap: 16px;
	}

	.rms-catalog-menu__sidebar-head strong {
		flex: 1 1 auto;
		font-size: 28px !important;
		white-space: nowrap !important;
	}

	.rms-catalog-menu__sidebar-head a {
		flex: 0 0 auto;
		font-size: 16px !important;
	}

	.rms-catalog-menu__sidebar {
		padding: 0 0 12px !important;
	}

	.rms-catalog-menu__sidebar-head {
		min-width: 0;
		padding-right: 34px !important;
		padding-left: 34px !important;
	}

	.rms-catalog-menu__sidebar-head strong {
		min-width: 0;
		flex: 1 1 auto;
	}

	.rms-catalog-menu__sidebar-head a {
		flex: 0 0 auto;
	}

	.rms-catalog-menu__category {
		min-height: 68px !important;
		padding: 10px 34px !important;
		border-radius: 0 !important;
		border-bottom: 1px solid #edf0f2 !important;
	}

	.rms-catalog-menu__category:first-child {
		border-top: 1px solid #edf0f2 !important;
	}

	.rms-catalog-menu__category:hover:not(.is-active),
	.rms-catalog-menu__category:focus-visible:not(.is-active) {
		border-left-color: transparent;
		background: #fafbfc !important;
		color: #14243f !important;
	}

	.rms-catalog-menu__category.is-active {
		border-left-color: #ed1b2f !important;
		background: #fff1f2 !important;
		color: #ed1b2f !important;
	}
}

@media (max-width: 800px) {
	.rms-catalog-menu__sidebar-head {
		padding: 20px 16px 18px !important;
	}

	.rms-catalog-menu__category {
		grid-template-columns: 32px minmax(0, 1fr) 20px !important;
		gap: 14px !important;
		padding-right: 16px !important;
		padding-left: 16px !important;
	}

	.rms-catalog-menu__category-icon {
		width: 32px !important;
		height: 32px !important;
	}

	.rms-catalog-menu__category-icon svg,
	.rms-catalog-menu__category-icon-asset {
		width: 27px !important;
		height: 27px !important;
	}
}

/* Last-mile fixes for the live catalog screenshot. */
@media (min-width: 801px) {
	.rms-catalog-menu__inner {
		grid-template-columns: 400px minmax(0, 1fr);
		gap: 18px;
	}

	.rms-catalog-menu__sidebar {
		padding: 0 0 12px;
	}

	.rms-catalog-menu__sidebar-head {
		min-height: 86px;
		padding: 0 30px;
	}

	.rms-catalog-menu__sidebar-head strong {
		font-size: 28px;
		white-space: nowrap;
	}

	.rms-catalog-menu__sidebar-head a {
		font-size: 16px;
	}

	.rms-catalog-menu__category {
		grid-template-columns: 34px minmax(0, 1fr) 22px;
		min-height: 68px;
		gap: 16px;
		padding: 11px 30px;
		border-left-width: 4px;
		font-size: 20px;
		text-align: left;
	}

	.rms-catalog-menu__category > span:not(.rms-catalog-menu__category-icon) {
		text-align: left;
	}

	.rms-catalog-menu__category-icon {
		width: 28px;
	}

	.rms-catalog-menu__category > svg {
		width: 20px;
		height: 20px;
		stroke-width: 1.5;
	}

	.rms-catalog-menu__panel {
		padding: 36px 48px 38px;
	}

	.rms-catalog-menu__panel h2 {
		font-size: 42px;
	}

	.rms-catalog-menu__panel-head p {
		font-size: 21px;
	}

	.rms-catalog-menu__panel-head > a {
		font-size: 17px;
	}

	.rms-catalog-menu__group-title {
		min-height: 54px;
		padding: 0 10px;
		font-size: 20px;
	}

	.rms-catalog-menu__group-title span {
		display: inline-flex;
		width: 24px;
		align-items: center;
		justify-content: flex-end;
		font-size: 25px;
	}

	.rms-catalog-menu__count {
		padding: 8px 10px 0;
		font-size: 15px;
	}

	.rms-catalog-menu__products {
		gap: 20px;
		margin-top: 16px;
	}

	.rms-catalog-menu__product-image {
		height: 190px;
	}

	.rms-catalog-menu__product strong {
		font-size: 18px;
	}
}

@media (max-width: 1400px) and (min-width: 801px) {
	.rms-catalog-menu__inner {
		grid-template-columns: 320px minmax(0, 1fr);
	}

	.rms-catalog-menu__sidebar-head {
		min-height: 76px;
		padding: 0 16px;
	}

	.rms-catalog-menu__sidebar-head strong {
		font-size: 20px;
	}

	.rms-catalog-menu__sidebar-head a {
		font-size: 12px;
	}

	.rms-catalog-menu__category {
		min-height: 58px;
		gap: 12px;
		padding: 10px 16px;
		font-size: 16px;
	}

	.rms-catalog-menu__panel {
		padding: 30px 30px 32px;
	}

	.rms-catalog-menu__panel h2 {
		font-size: 34px;
	}

	.rms-catalog-menu__panel-head p {
		font-size: 16px;
	}

	.rms-catalog-menu__panel-head > a {
		font-size: 14px;
	}

	.rms-catalog-menu__group-title {
		min-height: 46px;
		font-size: 16px;
	}

	.rms-catalog-menu__product-image {
		height: 150px;
	}

	.rms-catalog-menu__product strong {
		font-size: 14px;
	}
}

@media (max-width: 1400px) and (min-width: 801px) {
	.rms-catalog-menu__sidebar-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
	}

	.rms-catalog-menu__sidebar-head a {
		align-self: flex-end;
	}
}

@media (max-width: 800px) {
	.rms-catalog-menu__category {
		grid-template-columns: 30px minmax(0, 1fr) 18px;
		gap: 12px;
		text-align: left;
	}

	.rms-catalog-menu__category > span:not(.rms-catalog-menu__category-icon) {
		text-align: left;
	}

	.rms-catalog-menu__group-title span {
		display: inline-flex;
		width: 20px;
		align-items: center;
		justify-content: flex-end;
	}
}

/* Final catalog reference alignment. */
@media (min-width: 801px) {
	.rms-catalog-menu__inner {
		grid-template-columns: 400px minmax(0, 1fr);
		gap: 18px;
	}

	.rms-catalog-menu__sidebar {
		padding: 0 0 12px;
	}

	.rms-catalog-menu__sidebar-head {
		min-height: 86px;
		padding: 0 30px;
	}

	.rms-catalog-menu__sidebar-head strong {
		font-size: 28px;
	}

	.rms-catalog-menu__sidebar-head a {
		font-size: 16px;
	}

	.rms-catalog-menu__category {
		grid-template-columns: 34px minmax(0, 1fr) 22px;
		min-height: 68px;
		padding: 11px 30px;
		gap: 16px;
		border-left-width: 4px;
		font-size: 20px;
		text-align: left;
	}

	.rms-catalog-menu__category > span:not(.rms-catalog-menu__category-icon) {
		text-align: left;
	}

	.rms-catalog-menu__category-icon {
		width: 28px;
	}

	.rms-catalog-menu__category-icon svg {
		width: 24px;
		height: 24px;
	}

	.rms-catalog-menu__category > svg {
		width: 20px;
		height: 20px;
		stroke-width: 1.5;
	}

	.rms-catalog-menu__panel {
		padding: 36px 48px 38px;
	}

	.rms-catalog-menu__panel h2 {
		font-size: 42px;
	}

	.rms-catalog-menu__panel-head p {
		font-size: 21px;
	}

	.rms-catalog-menu__panel-head > a {
		font-size: 17px;
	}

	.rms-catalog-menu__links {
		column-gap: 40px;
	}

	.rms-catalog-menu__group-title {
		min-height: 54px;
		padding: 0 10px;
		font-size: 20px;
	}

	.rms-catalog-menu__group-title span {
		display: inline-flex;
		width: 24px;
		align-items: center;
		justify-content: flex-end;
		font-size: 25px;
		line-height: 1;
	}

	.rms-catalog-menu__count {
		padding: 8px 10px 0;
		font-size: 15px;
	}

	.rms-catalog-menu__products {
		gap: 20px;
		margin-top: 16px;
	}

	.rms-catalog-menu__product-image {
		height: 190px;
	}

	.rms-catalog-menu__product strong {
		font-size: 18px;
	}
}

@media (max-width: 1400px) and (min-width: 801px) {
	.rms-catalog-menu__inner {
		grid-template-columns: 320px minmax(0, 1fr);
	}

	.rms-catalog-menu__sidebar-head {
		min-height: 76px;
		padding: 0 16px;
	}

	.rms-catalog-menu__sidebar-head strong {
		font-size: 20px;
	}

	.rms-catalog-menu__sidebar-head a {
		font-size: 12px;
	}

	.rms-catalog-menu__category {
		min-height: 58px;
		padding: 10px 16px;
		gap: 12px;
		font-size: 16px;
	}

	.rms-catalog-menu__panel {
		padding: 30px 30px 32px;
	}

	.rms-catalog-menu__panel h2 {
		font-size: 34px;
	}

	.rms-catalog-menu__panel-head p {
		font-size: 16px;
	}

	.rms-catalog-menu__panel-head > a {
		font-size: 14px;
	}

	.rms-catalog-menu__group-title {
		min-height: 46px;
		font-size: 16px;
	}

	.rms-catalog-menu__product-image {
		height: 150px;
	}

	.rms-catalog-menu__product strong {
		font-size: 14px;
	}
}

@media (max-width: 800px) {
	.rms-catalog-menu__category {
		grid-template-columns: 30px minmax(0, 1fr) 18px;
		gap: 12px;
		text-align: left;
	}

	.rms-catalog-menu__category > span:not(.rms-catalog-menu__category-icon) {
		text-align: left;
	}

	.rms-catalog-menu__panel h2 {
		font-size: 28px;
	}

	.rms-catalog-menu__group-title span {
		display: inline-flex;
		width: 20px;
		align-items: center;
		justify-content: flex-end;
	}
}

/* Catalog navigation layout based on the approved RMS reference. */
.rms-catalog-menu {
	padding: 0;
	background: #fff;
	border-top: 1px solid #edf0f2;
	box-shadow: 0 18px 38px rgba(31, 41, 51, .14);
}

.rms-catalog-menu__inner {
	display: grid;
	grid-template-columns: 320px minmax(0, 1fr);
	min-height: 520px;
	max-height: min(680px, calc(100vh - 154px));
}

.rms-catalog-menu__sidebar {
	padding: 28px 0 20px;
	border-right: 1px solid #e7ebee;
	background: #fff;
}

.rms-catalog-menu__sidebar-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 0 16px 24px;
}

.rms-catalog-menu__sidebar-head strong {
	color: #14243f;
	font-size: 22px;
	line-height: 1.1;
	white-space: nowrap;
}

.rms-catalog-menu__sidebar-head a {
	color: #ed1b2f;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.rms-catalog-menu__sidebar-head a span {
	font-size: 19px;
	font-weight: 400;
}

.rms-catalog-menu__category {
	grid-template-columns: 30px minmax(0, 1fr) 18px;
	min-height: 58px;
	padding: 10px 25px;
	border-left-width: 4px;
	border-bottom: 1px solid #edf0f2;
	font-size: 16px;
	font-weight: 600;
}

.rms-catalog-menu__category:first-child {
	border-top: 1px solid #edf0f2;
}

.rms-catalog-menu__category-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #788695;
}

.rms-catalog-menu__category-icon svg {
	width: 24px;
	height: 24px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.55;
}

.rms-catalog-menu__category-icon-asset {
	display: block;
	width: 24px;
	height: 24px;
	background: currentColor;
	-webkit-mask: var(--rms-catalog-icon-image) center / contain no-repeat;
	mask: var(--rms-catalog-icon-image) center / contain no-repeat;
}

.rms-catalog-menu__category > svg {
	width: 18px;
	height: 18px;
}

.rms-catalog-menu__category:hover:not(.is-active),
.rms-catalog-menu__category:focus-visible:not(.is-active) {
	background: #fafbfc;
	color: #14243f;
}

.rms-catalog-menu__category.is-active {
	background: #fff1f2;
	color: #ed1b2f;
}

.rms-catalog-menu__category.is-active .rms-catalog-menu__category-icon,
.rms-catalog-menu__category.is-active > svg {
	color: #ed1b2f;
	stroke: currentColor;
}

.rms-catalog-menu__panels {
	max-height: none;
	min-height: 0;
	background: #fff;
	overflow-y: auto;
}

.rms-catalog-menu__panel {
	min-height: 520px;
	padding: 32px 40px 34px;
}

.rms-catalog-menu__panel-head {
	align-items: flex-start;
	margin-bottom: 22px;
	padding-bottom: 20px;
}

.rms-catalog-menu__panel h2 {
	margin-bottom: 5px;
	color: #14243f;
	font-size: 34px;
	letter-spacing: -.02em;
}

.rms-catalog-menu__panel-head p {
	margin: 0;
	color: #8794a3;
	font-size: 16px;
}

.rms-catalog-menu__panel-head > a {
	padding-top: 9px;
	color: #ed1b2f;
	font-size: 14px;
}

.rms-catalog-menu__links {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 34px;
	row-gap: 0;
}

.rms-catalog-menu__group {
	padding: 0 0 14px;
}

.rms-catalog-menu__group-title {
	min-height: 48px;
	color: #14243f;
	font-size: 16px;
}

.rms-catalog-menu__group-title span {
	color: #14243f;
	font-size: 21px;
}

.rms-catalog-menu__count {
	padding-top: 6px;
	color: #8794a3;
	font-size: 13px;
}

.rms-catalog-menu__products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-top: 10px;
}

.rms-catalog-menu__product {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 10px;
	color: #14243f;
	text-decoration: none;
}

.rms-catalog-menu__product-image {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 150px;
	border-radius: 9px;
	background: #f5f6f8;
	overflow: hidden;
}

.rms-catalog-menu__product-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform .2s ease;
}

.rms-catalog-menu__product-image > span {
	color: #9ba6b1;
	font-size: 26px;
	font-weight: 800;
	letter-spacing: -.04em;
}

.rms-catalog-menu__product:hover .rms-catalog-menu__product-image img,
.rms-catalog-menu__product:focus-visible .rms-catalog-menu__product-image img {
	transform: scale(1.04);
}

.rms-catalog-menu__product strong {
	display: -webkit-box;
	overflow: hidden;
	font-size: 14px;
	line-height: 1.3;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

@media (max-width: 1100px) {
	.rms-catalog-menu__inner {
		grid-template-columns: 270px minmax(0, 1fr);
	}

	.rms-catalog-menu__sidebar-head {
		padding-right: 16px;
		padding-left: 16px;
	}

	.rms-catalog-menu__sidebar-head strong {
		font-size: 20px;
	}

	.rms-catalog-menu__sidebar-head a {
		font-size: 12px;
	}

	.rms-catalog-menu__category {
		padding-right: 16px;
		padding-left: 16px;
	}

	.rms-catalog-menu__panel {
		padding-right: 26px;
		padding-left: 26px;
	}
}

@media (max-width: 1400px) and (min-width: 801px) {
	.rms-catalog-menu__sidebar-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
	}

	.rms-catalog-menu__sidebar-head a {
		align-self: flex-end;
	}
}

@media (max-width: 800px) {
	.rms-catalog-menu__inner {
		display: block;
		max-height: none;
	}

	.rms-catalog-menu__sidebar {
		padding-top: 18px;
		border-bottom: 1px solid #e7ebee;
	}

	.rms-catalog-menu__sidebar-head {
		padding-bottom: 14px;
	}

	.rms-catalog-menu__category {
		min-height: 50px;
		font-size: 15px;
	}

	.rms-catalog-menu__panel {
		min-height: 0;
		padding: 24px 16px 28px;
	}

	.rms-catalog-menu__panel h2 {
		font-size: 28px;
	}

	.rms-catalog-menu__links,
	.rms-catalog-menu__products {
		grid-template-columns: 1fr;
	}

	.rms-catalog-menu__product-image {
		height: 170px;
	}
}

.rms-main {
	color: #1f2933;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.rms-hero {
	background: #f3f6f7;
	padding: 92px 0;
}

.rms-hero__content {
	max-width: 760px;
}

.rms-hero h1,
.rms-section h2 {
	margin: 0 0 20px;
	line-height: 1.1;
}

.rms-hero h1 {
	font-size: clamp(34px, 5vw, 62px);
}

.rms-hero p {
	font-size: 18px;
}

.rms-button {
	display: inline-block;
	margin-top: 16px;
	padding: 16px 28px;
	border: 2px solid transparent;
	border-radius: 10px;
	background: #147a67;
	color: #fff;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.15;
	text-decoration: none;
}

.rms-section {
	padding: 64px 0;
}

.rms-section--products {
	background: #f8fafb;
}

.rms-section__heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 28px;
}

.rms-eyebrow {
	margin: 0 0 10px;
	color: #147a67;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rms-text-link {
	color: #147a67;
	font-weight: 700;
}

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

.rms-category-card {
	display: flex;
	min-height: 108px;
	flex-direction: column;
	justify-content: space-between;
	padding: 20px;
	border: 1px solid #dce5e6;
	border-radius: 10px;
	background: #fff;
	color: #1f2933;
	text-decoration: none;
	transition: border-color .2s ease, transform .2s ease;
}

.rms-category-card:hover {
	border-color: #147a67;
	transform: translateY(-2px);
}

.rms-category-card span {
	color: #68777c;
	font-size: 14px;
}

.rms-section .products {
	margin: 0;
}

@media (max-width: 800px) {
	.rms-category-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rms-section__heading {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 480px) {
	.rms-container {
		width: calc(100% - 28px);
	}

	.rms-category-grid {
		grid-template-columns: 1fr;
	}
}

/* Final visual polish for the catalog menu. */
@media (min-width: 801px) {
	.rms-catalog-menu {
		padding: 14px 0 18px;
		border-top-color: #e1e5e7;
		background: #f3f5f6;
	}

	.rms-catalog-menu__inner {
		grid-template-columns: 300px minmax(0, 1fr);
		gap: 14px;
		min-height: 0;
	}

	.rms-catalog-menu__sidebar,
	.rms-catalog-menu__panels {
		border: 1px solid #e1e5e7;
		border-radius: 14px;
		background: #fff;
		box-shadow: 0 4px 16px rgba(31, 41, 51, .05);
	}

	.rms-catalog-menu__sidebar {
		padding: 8px;
	}

	.rms-catalog-menu__category {
		min-height: 54px;
		padding: 11px 13px;
		border-left-color: transparent;
		border-radius: 9px;
	}

	.rms-catalog-menu__category:hover:not(.is-active),
	.rms-catalog-menu__category:focus-visible:not(.is-active) {
		border-left-color: transparent;
		background: #f6f8f9;
		color: #1f2933;
	}

	.rms-catalog-menu__category.is-active {
		border-left-color: #df1829;
		background: #fff3f4;
		color: #df1829;
	}

	.rms-catalog-menu__category.is-active svg {
		stroke: #df1829;
	}

	.rms-catalog-menu__panels {
		max-height: min(570px, calc(100vh - 170px));
	}

	.rms-catalog-menu__panel {
		min-height: 0;
		padding: 27px 30px 30px;
	}

	.rms-catalog-menu__panel-head {
		margin-bottom: 20px;
		padding-bottom: 16px;
	}

	.rms-catalog-menu__group {
		padding-bottom: 14px;
	}

	.rms-catalog-menu__group-title {
		min-height: 43px;
		padding: 0 8px;
		border-bottom-color: #e3e7e9;
		border-radius: 8px 8px 0 0;
		transition: background-color .18s ease, color .18s ease;
	}

	.rms-catalog-menu__group-title:hover,
	.rms-catalog-menu__group-title:focus-visible {
		background: #f6f8f9;
		color: #df1829;
	}

	.rms-catalog-menu__group li a {
		padding: 6px 8px;
		border-radius: 6px;
		transition: background-color .18s ease, color .18s ease;
	}

	.rms-catalog-menu__group li a:hover,
	.rms-catalog-menu__group li a:focus-visible {
		background: #fff3f4;
		color: #df1829;
	}
}

@media (min-width: 1400px) {
	.rms-catalog-menu__inner {
		grid-template-columns: 320px minmax(0, 1fr);
	}

	.rms-catalog-menu__panel {
		padding-right: 38px;
		padding-left: 38px;
	}
}

@media (max-width: 800px) {
	.rms-catalog-menu {
		padding: 0;
		background: #fff;
	}

	.rms-catalog-menu__sidebar,
	.rms-catalog-menu__panels {
		border: 0;
		border-radius: 0;
		box-shadow: none;
	}
}

/* Click-to-open catalog mega-menu. The menu uses the live product taxonomy. */
.rms-header__nav-wrap {
	position: relative;
	z-index: 40;
}

.rms-catalog-button {
	position: relative;
	border: 0;
	font: inherit;
	cursor: pointer;
}

.rms-catalog-button__chevron {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
	transition: transform .18s ease;
}

.rms-catalog-button[aria-expanded='true'] {
	border-radius: 8px 8px 0 0;
	background: #fff;
	color: #1f2933;
}

.rms-catalog-button[aria-expanded='true'] .rms-catalog-button__chevron {
	transform: rotate(180deg);
}

.rms-catalog-menu-shell {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: 60;
}

.rms-catalog-menu-shell[hidden],
.rms-catalog-menu__panel[hidden] {
	display: none;
}

.rms-catalog-menu {
	border-top: 1px solid #e5e8eb;
	background: #fff;
	box-shadow: 0 16px 34px rgba(31, 41, 51, .16);
}

.rms-catalog-menu__inner {
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	min-height: 360px;
}

.rms-catalog-menu__sidebar {
	padding: 16px 0 22px;
	border-right: 1px solid #e5e8eb;
	background: #f8f9fa;
}

.rms-catalog-menu__category {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto 18px;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 52px;
	padding: 10px 22px;
	border: 0;
	border-left: 3px solid transparent;
	background: transparent;
	color: #1f2933;
	font: inherit;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	cursor: pointer;
}

.rms-catalog-menu__category:hover,
.rms-catalog-menu__category:focus-visible,
.rms-catalog-menu__category.is-active {
	border-left-color: #df1829;
	background: #fff;
	color: #df1829;
}

.rms-catalog-menu__category small {
	color: #8a949c;
	font-size: 12px;
	font-weight: 400;
}

.rms-catalog-menu__category svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: #8a949c;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.rms-catalog-menu__category.is-active svg,
.rms-catalog-menu__category:hover svg,
.rms-catalog-menu__category:focus-visible svg {
	stroke: #df1829;
}

.rms-catalog-menu__panels {
	min-width: 0;
	max-height: min(560px, calc(100vh - 170px));
	overflow-y: auto;
}

.rms-catalog-menu__panel {
	min-height: 360px;
	padding: 28px 34px 34px;
}

.rms-catalog-menu__panel.is-active {
	display: block;
}

.rms-catalog-menu__panel-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 22px;
	padding-bottom: 17px;
	border-bottom: 1px solid #e5e8eb;
}

.rms-catalog-menu__eyebrow {
	display: block;
	margin-bottom: 5px;
	color: #879197;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rms-catalog-menu__panel h2 {
	margin: 0;
	font-size: 30px;
	line-height: 1.1;
}

.rms-catalog-menu__panel-head > a {
	color: #df1829;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.rms-catalog-menu__links {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0 26px;
}

.rms-catalog-menu__group {
	min-width: 0;
	padding: 0 0 18px;
}

.rms-catalog-menu__group-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	min-height: 44px;
	border-bottom: 1px solid #e5e8eb;
	color: #1f2933;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.25;
	text-decoration: none;
}

.rms-catalog-menu__group-title:hover,
.rms-catalog-menu__group-title:focus-visible {
	color: #df1829;
}

.rms-catalog-menu__group-title span {
	color: #9aa3a9;
	font-size: 20px;
	font-weight: 400;
}

.rms-catalog-menu__group ul {
	margin: 4px 0 0;
	padding: 0;
	list-style: none;
}

.rms-catalog-menu__group li a {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	padding: 7px 0;
	color: #56636b;
	font-size: 14px;
	line-height: 1.3;
	text-decoration: none;
}

.rms-catalog-menu__group li a:hover,
.rms-catalog-menu__group li a:focus-visible {
	color: #df1829;
}

.rms-catalog-menu__group li small,
.rms-catalog-menu__count {
	flex: 0 0 auto;
	color: #9aa3a9;
	font-size: 11px;
	font-weight: 400;
}

.rms-catalog-menu__count {
	display: block;
	padding-top: 7px;
}

.rms-catalog-menu__empty {
	max-width: 500px;
	margin: 0;
	color: #68737d;
	font-size: 16px;
}

@media (max-width: 1100px) {
	.rms-catalog-menu__inner {
		grid-template-columns: 240px minmax(0, 1fr);
	}

	.rms-catalog-menu__links {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 800px) {
	.rms-catalog-menu-shell {
		top: 100%;
	}

	.rms-catalog-menu {
		max-height: calc(100vh - 120px);
		overflow-y: auto;
	}

	.rms-catalog-menu__inner {
		display: block;
		width: 100%;
	}

	.rms-catalog-menu__sidebar {
		padding: 8px 0;
		border-right: 0;
		border-bottom: 1px solid #e5e8eb;
	}

	.rms-catalog-menu__category {
		min-height: 48px;
		padding: 9px 16px;
		font-size: 16px;
	}

	.rms-catalog-menu__panels {
		background: #fff;
		max-height: none;
		overflow: visible;
	}

	.rms-catalog-menu__panel {
		min-height: 0;
		padding: 22px 16px 28px;
	}

	.rms-catalog-menu__panel-head {
		align-items: flex-start;
		flex-direction: column;
		gap: 11px;
		margin-bottom: 16px;
	}

	.rms-catalog-menu__panel h2 {
		font-size: 24px;
	}

	.rms-catalog-menu__panel-head > a {
		font-size: 13px;
	}

	.rms-catalog-menu__links {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.rms-catalog-menu__group {
		padding-bottom: 0;
	}

	.rms-catalog-menu__group-title {
		min-height: 48px;
		font-size: 15px;
	}

	.rms-catalog-menu__group li a {
		padding: 8px 0;
	}
}

/* Header and homepage composition from the approved RMS structure. */
.rms-header__top {
	display: grid;
	grid-template-columns: 205px 150px minmax(520px, 580px) 190px 130px 125px;
	align-items: center;
	justify-content: space-between;
	gap: 0;
	height: 94px;
	padding: 0;
}

.rms-brand img {
	width: 205px;
	height: auto;
	max-height: 72px;
}

.rms-brand picture {
	display: block;
}

.rms-header__location,
.rms-header__contact,
.rms-header__account,
.rms-header__cart {
	display: flex;
	flex-direction: column;
	font-size: 13px;
	line-height: 1.2;
	text-decoration: none;
}

.rms-header__location strong::before {
	content: none;
}

.rms-icon,
.rms-menu-icon,
.rms-search__icon {
	display: inline-block;
	width: 24px;
	height: 24px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	vertical-align: middle;
}

.rms-header__location strong,
.rms-header__contact a,
.rms-header__account strong,
.rms-header__cart strong {
	display: flex;
	align-items: center;
	gap: 8px;
}

.rms-header__location strong .rms-icon,
.rms-header__contact a .rms-icon {
	color: #df1829;
}

.rms-header__contact .rms-icon {
	width: 26px;
	height: 26px;
	fill: currentColor;
	stroke: none;
}

.rms-header__account .rms-icon {
	width: 27px;
	height: 27px;
}

.rms-header__cart .rms-icon--cart {
	width: 30px;
	height: 30px;
}

.rms-chevron {
	width: 16px;
	height: 16px;
	margin-left: 2px;
	color: #68737d;
	stroke: currentColor;
	stroke-width: 1.8;
}

.rms-header__location > span,
.rms-header__contact > span,
.rms-header__account > span,
.rms-header__cart > span {
	margin-top: 4px;
	color: #68737d;
}

.rms-header__contact a {
	font-size: 16px;
	font-weight: 800;
	text-decoration: none;
}

.rms-search {
	position: relative;
}

.rms-search__icon {
	position: absolute;
	top: 50%;
	left: 15px;
	width: 24px;
	height: 24px;
	transform: translateY(-50%);
	color: #1f2933;
	z-index: 1;
}

.rms-cart-icon {
	position: relative;
	display: inline-flex;
}

.rms-cart-badge {
	position: absolute;
	top: -8px;
	right: -8px;
	display: flex;
	width: 18px;
	height: 18px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #df1829;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
}

.rms-search {
	display: flex;
	height: 56px;
	max-width: 550px;
	min-width: 0;
	padding: 2px;
	border: 1px solid #d7dfe5;
	border-radius: 12px;
	overflow: hidden;
}

.rms-search input[type='search'] {
	min-width: 0;
	width: 100%;
	padding: 13px 15px 13px 42px;
	border: 0;
	background: #fff;
	font: inherit;
}

.rms-search:focus-within {
	border-color: #c7d1d8;
	box-shadow: 0 0 0 2px rgba(31, 41, 51, .08);
}

.rms-search input[type='search']:focus,
.rms-search button:focus {
	outline: none;
	box-shadow: none;
}

.rms-search button {
	width: 110px;
	height: 48px;
	padding: 0;
	border: 0;
	border-radius: 10px;
	background: #df1829;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
}

.rms-header__nav-wrap {
	border-top: 1px solid #edf0f2;
	border-bottom: 1px solid #e3e8eb;
	background: #f7f9fa;
}

.rms-header__nav {
	display: flex;
	height: 52px;
	align-items: center;
	gap: 32px;
}

.rms-catalog-button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	width: 250px;
	height: 52px;
	padding: 0 20px;
	border-radius: 8px;
	background: #df1829;
	color: #fff;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}

.rms-catalog-button .rms-menu-icon {
	width: 22px;
	height: 22px;
}

.rms-nav {
	display: flex;
	flex: 0 0 auto;
	justify-content: flex-start;
	gap: 48px;
}

.rms-nav a {
	padding: 0;
	font-size: 15px;
	font-weight: 600;
	line-height: 52px;
	text-decoration: none;
	white-space: nowrap;
}

.rms-hero {
	padding: 0 0 20px;
	position: relative;
	background-color: #eef2f3;
	background-image: url('../images/rms-hero-desktop.webp?v=20261018-webp');
	background-position: center 25%;
	background-size: cover;
}

.rms-hero::before {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 48% 105% at 9% 48%, rgba(248, 250, 251, .94) 0%, rgba(248, 250, 251, .78) 42%, rgba(248, 250, 251, .24) 72%, rgba(248, 250, 251, 0) 100%),
		linear-gradient(90deg, rgba(248, 250, 251, .42) 0%, rgba(248, 250, 251, 0) 54%);
	content: '';
	pointer-events: none;
}

.rms-hero__inner {
	position: relative;
	display: flex;
	min-height: 440px;
	align-items: center;
}

.rms-hero__content {
	max-width: 760px;
	padding: 40px 0 32px;
}

.rms-hero .rms-eyebrow {
	margin-bottom: 16px;
	color: #68737d;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
}

.rms-hero h1 {
	margin-bottom: 16px;
	font-size: clamp(38px, 4vw, 58px);
	letter-spacing: -.04em;
}

.rms-hero h1 em,
.rms-partner-banner h2 em {
	color: #df1829;
	font-style: normal;
}

.rms-hero__content > p:not(.rms-eyebrow) {
	font-size: 20px;
}

.rms-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 18px;
	margin-top: 20px;
}

.rms-hero__actions .rms-button {
	display: inline-flex;
	min-width: 270px;
	min-height: 64px;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 0;
	font-weight: 700;
}

.rms-button {
	border-color: #df1829;
	background: #df1829;
}

.rms-button > span {
	display: inline-block;
	margin-left: 0;
	font-size: 24px;
	font-weight: 700;
	line-height: .7;
	vertical-align: -2px;
}

.rms-button--secondary {
	min-width: 320px;
	border-color: #147a67;
	background: #fff;
	color: #147a67;
}

.rms-button--secondary svg {
	width: 28px;
	height: 28px;
	margin-right: 0;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2.4;
}

.rms-hero__benefits {
	display: grid;
	grid-template-columns: repeat(3, max-content);
	justify-content: space-between;
	width: min(100%, 600px);
	gap: 18px;
	margin-top: 24px;
}

.rms-hero__benefits > span {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	align-items: center;
	gap: 8px;
	font-size: 16px;
	line-height: 1.2;
}

.rms-hero__benefits svg {
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	fill: none;
	stroke: #111820;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2.8;
}

.rms-category-grid {
	display: flex;
	gap: 14px;
	margin: 0;
	padding: 4px 0 8px;
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: x proximity;
	scrollbar-width: none;
}

.rms-category-grid::-webkit-scrollbar {
	display: none;
}
.rms-category-grid:focus-visible {
	outline: 3px solid rgba(20, 122, 103, .35);
	outline-offset: 3px;
}

.rms-section--categories {
	padding: 18px 0 28px;
}

.rms-section--categories .rms-section__heading {
	align-items: center;
	margin-bottom: 14px;
}

.rms-section--categories .rms-section__heading h2 {
	margin-bottom: 0;
	font-size: 28px;
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -.02em;
}

.rms-section--categories .rms-text-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #1f2933;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.15;
	text-decoration: none;
}

.rms-section--categories .rms-text-link:hover,
.rms-section--categories .rms-text-link:focus-visible {
	text-decoration: none;
}

.rms-section--categories .rms-text-link span {
	font-size: 20px;
	line-height: .8;
}

.rms-category-card {
	position: relative;
	flex: 0 0 calc((100% - 98px) / 8);
	min-height: 140px;
	padding: 0 12px 12px;
	border-color: #edf0f2;
	border-radius: 11px;
	background: #f5f6f7;
	overflow: hidden;
	scroll-snap-align: start;
}

.rms-category-card strong,
.rms-category-card > span:last-child {
	margin-right: 0;
	margin-left: 0;
}

.rms-category-card strong {
	display: flex;
	min-height: 34px;
	align-items: center;
	margin-top: 0;
	padding-right: 36px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.16;
	letter-spacing: -.01em;
}

.rms-category-card > span:last-child {
	margin-bottom: 0;
}

.rms-category-card__media,
.rms-task-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #edf1f2, #dfe5e7);
	color: #879399;
	font-size: 12px;
}

.rms-category-card__media {
	min-height: 90px;
	padding: 6px 8px 0;
	background: transparent;
}

.rms-category-card__image {
	display: block;
	width: 100%;
	height: 88px;
	object-fit: contain;
}

.rms-category-card__arrow {
	position: absolute;
	right: 9px;
	bottom: 9px;
	display: flex;
	width: 34px;
	height: 34px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #fff;
	color: #1f2933 !important;
	font-size: 27px !important;
	font-weight: 400;
	line-height: 1;
	padding: 0 0 2px;
}

@media (min-width: 1101px) {
	.rms-section--categories > .rms-container {
		width: calc(100% - 96px);
	}

	.rms-category-card {
		height: 140px;
		min-height: 140px;
	}

	.rms-category-card__media {
		min-height: 90px;
		padding-top: 4px;
	}

	.rms-category-card__image {
		height: 84px;
	}
}

@media (max-width: 1400px) {
	.rms-category-card {
		flex-basis: calc((100% - 42px) / 4);
	}
}

@media (max-width: 800px) {
	.rms-category-grid {
		gap: 12px;
		padding-top: 4px;
		padding-bottom: 8px;
	}

	.rms-category-card {
		flex-basis: calc((100% - 12px) / 2);
		min-height: 144px;
	}

}

@media (max-width: 480px) {
	.rms-category-grid {
		padding-top: 5px;
		padding-bottom: 9px;
	}

	.rms-category-card {
		flex-basis: calc(100% - 28px);
	}
}

.rms-materials-layout {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr);
	gap: 20px;
	align-items: stretch;
}

.rms-materials-main {
	min-width: 0;
}

#materials {
	padding-top: 14px;
	padding-bottom: 24px;
}

#materials .rms-section__heading {
	margin-bottom: 18px;
}

#materials .rms-section__heading h2 {
	margin-bottom: 6px;
}

#materials .rms-section__heading p {
	margin: 0;
}

.rms-task-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.rms-task-card {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: 105px minmax(0, 1fr);
	align-items: center;
	border: 1px solid #dce4e7;
	border-radius: 11px;
	background: #fff;
	color: #1f2933;
	text-decoration: none;
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(31, 41, 51, .08);
}

.rms-task-card__media {
	grid-column: 1 / -1;
	align-self: stretch;
	height: 105px;
	min-height: 0;
	padding: 0;
	border-bottom: 1px solid #edf1f2;
	background: none;
}

.rms-task-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.rms-task-card strong {
	padding: 10px 8px 10px 14px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.15;
}

.rms-task-card__arrow {
	display: flex;
	width: 34px;
	height: 34px;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
	padding: 0 0 2px;
	border-radius: 50%;
	background: #f4f7f8;
	color: #1f2933;
	font-size: 26px;
	font-weight: 400;
	line-height: 1;
}

.rms-selector-card {
	position: relative;
	align-self: start;
	box-sizing: border-box;
	min-height: 230px;
	aspect-ratio: auto;
	padding: 24px;
	border-radius: 10px;
	background-color: #eef2f4;
	overflow: hidden;
}

.rms-selector-card__image {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: right bottom;
}

.rms-selector-card__content {
	position: relative;
	z-index: 1;
	max-width: 62%;
}

.rms-selector-card h3 {
	margin: 0 0 10px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -.01em;
}

.rms-selector-card__content > p {
	margin: 0 0 12px;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.2;
}

.rms-selector-form {
	display: grid;
	grid-template-columns: 1fr;
	gap: 6px;
}

.rms-selector-form input {
	width: 100%;
	min-height: 34px;
	padding: 7px 12px;
	border: 1px solid #d7dfe3;
	border-radius: 8px;
	background: rgba(255, 255, 255, .94);
	color: #1f2933;
	font: inherit;
	font-size: 13px;
}

.rms-selector-form input::placeholder {
	color: #68777c;
}

.rms-selector-form .rms-button {
	width: 100%;
	margin-top: 2px;
	padding: 8px 14px;
	border: 0;
	border-radius: 8px;
	background: #ed1b2f;
	font-size: 15px;
	text-align: center;
	cursor: pointer;
}

.rms-partner-banner {
	height: 130px;
	padding: 0;
	background-color: #11171a;
	background-image: url('../images/rms-partner-banner.png?v=20261018-1728-text2');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: #fff;
}

.rms-partner-banner__inner {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 24px;
}

.rms-partner-banner__inner > div {
	max-width: 520px;
}

.rms-partner-banner h2 {
	margin: 0 0 4px;
	font-size: 28px;
	line-height: 1.05;
}

.rms-partner-banner p {
	margin: 0;
	font-size: 12px;
	line-height: 1.2;
	letter-spacing: -.01em;
	color: #d3dade;
}

.rms-partner-banner .rms-eyebrow {
	margin-bottom: 4px;
	font-size: 11px;
}

.rms-partner-banner .rms-button {
	margin-top: 6px;
	padding: 9px 20px;
	font-size: 15px;
}

@media (max-width: 1400px) and (min-width: 801px) {
	.rms-partner-banner {
		height: 130px;
		background-position: left center;
	}

	.rms-partner-banner__inner > div {
		max-width: 460px;
	}

	.rms-partner-banner h2 {
		font-size: 28px;
	}
}

.rms-brand-grid {
	display: grid;
	grid-template-columns: repeat(8, minmax(0, 1fr));
	gap: 12px;
}

.rms-brand-card {
	display: flex;
	min-height: 65px;
	align-items: center;
	justify-content: center;
	border: 1px solid #dfe5e8;
	border-radius: 8px;
	background: #fff;
	font-size: 18px;
	font-weight: 800;
}

.rms-all-brands {
	padding-top: 42px;
}

.rms-all-brands__intro {
	margin-bottom: 26px;
}

.rms-all-brands__intro h1 {
	margin: 0 0 8px;
	font-size: clamp(32px, 4vw, 48px);
}

.rms-all-brands__intro p:last-child {
	margin: 0;
	color: #687b92;
	font-size: 17px;
}

.rms-all-brands__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(145px, 180px));
	justify-content: start;
	gap: 9px;
}

.rms-all-brands__grid .rms-manufacturer-card {
	height: 58px;
	min-height: 58px;
}

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

.rms-info-card {
	display: flex;
	min-height: 104px;
	flex-direction: column;
	justify-content: center;
	padding: 20px;
	border: 1px solid #dfe5e8;
	border-radius: 9px;
	background: #fff;
}

.rms-info-card span {
	margin-top: 6px;
	color: #68737d;
	font-size: 14px;
}

.rms-section .products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.rms-section .products::before,
.rms-section .products::after {
	display: none;
}

.rms-section .products li.product {
	width: auto;
	margin: 0;
	padding: 14px;
	border: 1px solid #dfe5e8;
	border-radius: 9px;
	background: #fff;
}

.rms-section .products li.product img {
	margin: 0 auto 12px;
}

.rms-section .products li.product .button {
	background: #df1829;
}

#products .products {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 16px;
	grid-auto-flow: row;
}

#products .products li.product {
	width: 100% !important;
	float: none !important;
	clear: none !important;
	min-width: 0;
	min-height: 148px;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: minmax(112px, 40%) minmax(0, 1fr);
	grid-template-rows: minmax(0, 1fr) auto;
	column-gap: 12px;
	padding: 10px;
}

#products .products li.product > .woocommerce-loop-product__link {
	display: grid;
	grid-column: 1 / -1;
	grid-row: 1;
	grid-template-columns: minmax(112px, 40%) minmax(0, 1fr);
	grid-template-rows: auto auto auto minmax(0, 1fr);
	column-gap: 12px;
	min-width: 0;
}

#products .products li.product > .woocommerce-loop-product__link > img {
	grid-column: 1;
	grid-row: 1 / 5;
	width: 100%;
	height: 112px;
	margin: auto;
	object-fit: contain;
}

#products .products li.product .woocommerce-loop-product__title,
#products .products li.product .rms-loop-identifiers,
#products .products li.product .rms-availability,
#products .products li.product .price {
	grid-column: 2;
	min-width: 0;
}

#products .products li.product .woocommerce-loop-product__title {
	grid-row: 1;
	align-self: start;
	margin: 0 0 4px;
	font-size: 14px;
	line-height: 1.2;
}

#products .products li.product .rms-loop-identifiers {
	grid-row: 2;
	margin: 0;
	font-size: 11px;
	line-height: 1.2;
}

#products .products li.product .rms-availability {
	grid-row: 3;
	align-self: start;
	margin: 4px 0 0;
	padding: 0;
	background: transparent;
	font-size: 11px;
}

#products .products li.product .price {
	grid-row: 4;
	align-self: end;
	margin: 8px 0 0;
	font-size: 18px;
	font-weight: 800;
}

#products .products li.product .az-loop-cart-control {
	grid-column: 2;
	grid-row: 2;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin: 0;
}

#products .products li.product .az-loop-quantity {
	display: none;
}

#products .products li.product .az-loop-cart-button {
	min-width: 120px;
	min-height: 36px;
	margin: 0;
	padding: 9px 14px;
	font-size: 13px;
}

@media (max-width: 1100px) {
	.rms-container {
		width: calc(100% - 64px);
	}

	.rms-header__top {
		grid-template-columns: 190px 1fr auto auto;
		height: auto;
		min-height: 94px;
		padding: 12px 0;
	}

	.rms-header__location {
		display: none;
	}

	.rms-search {
		grid-column: 2 / 4;
		grid-row: 2;
	}

	.rms-header__nav {
		min-width: 0;
		gap: 14px;
	}

	.rms-catalog-button {
		min-width: 190px;
	}

	.rms-nav {
		min-width: 0;
		flex: 1 1 auto;
		overflow-x: auto;
	}

	.rms-brand-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

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

@media (max-width: 800px) {
	.rms-hero {
		padding-bottom: 0;
		background-image: url('../images/rms-hero-mobile.webp?v=20261018-webp');
		background-position: center top;
	}

	.rms-hero::before {
		background: linear-gradient(180deg, rgba(248, 250, 251, .86) 0%, rgba(248, 250, 251, .64) 42%, rgba(248, 250, 251, 0) 76%);
	}

	.rms-container {
		width: calc(100% - 32px);
	}

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

	.rms-section--categories {
		padding: 36px 0 24px;
	}

	.rms-category-card {
		min-height: 144px;
	}

	.rms-header__top {
		grid-template-columns: 1fr auto;
		min-height: 0;
		gap: 12px;
		padding: 12px 0;
	}

	.rms-header__cart {
		grid-column: 2;
		grid-row: 1;
		align-self: center;
	}

	.rms-brand img {
		width: 165px;
		max-height: 62px;
	}

	.rms-header__contact,
	.rms-header__account {
		display: none;
	}

	.rms-search {
		grid-column: 1 / -1;
		grid-row: 2;
		height: 48px;
	}

	.rms-search button {
		width: 92px;
		font-size: 14px;
	}

	.rms-header__nav {
		align-items: stretch;
		flex-direction: column;
		height: auto;
		gap: 0;
	}

	.rms-catalog-button {
		width: 100%;
		height: 48px;
	}

	.rms-nav {
		gap: 22px;
		overflow-x: auto;
		padding: 0 5px;
		-webkit-overflow-scrolling: touch;
	}

	.rms-nav a {
		padding: 0;
		line-height: 46px;
	}

	.rms-hero__inner,
	.rms-materials-layout {
		grid-template-columns: 1fr;
	}

	.rms-hero__inner {
		min-height: 700px;
		align-items: flex-start;
	}

	.rms-hero__content {
		width: 100%;
		padding: 38px 0 44px;
	}

	.rms-selector-card {
		background-color: #eef2f4;
		aspect-ratio: auto;
	}

	.rms-selector-card__content {
		max-width: 100%;
	}

	.rms-selector-card__image {
		display: none;
	}

	.rms-hero h1 {
		font-size: clamp(36px, 10vw, 48px);
	}

	.rms-hero__content > p:not(.rms-eyebrow) {
		font-size: 18px;
	}

	.rms-hero__actions {
		max-width: 360px;
		flex-direction: column;
		align-items: stretch;
	}

	.rms-hero__actions .rms-button {
		width: 100%;
		min-width: 0;
		min-height: 56px;
	}

	.rms-button {
		text-align: center;
	}

	.rms-hero__benefits {
		position: relative;
		isolation: isolate;
		max-width: 270px;
		grid-template-columns: 1fr;
		padding: 8px 0;
		gap: 16px;
	}

	.rms-hero__benefits::before {
		position: absolute;
		z-index: -1;
		inset: -34px -46px;
		background: radial-gradient(ellipse at center, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .88) 52%, rgba(255, 255, 255, .38) 88%, rgba(255, 255, 255, 0) 100%);
		content: '';
		filter: blur(10px);
		pointer-events: none;
	}

	.rms-hero__benefits > span {
		font-size: 16px;
	}

	.rms-task-grid,
	.rms-info-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rms-section .products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rms-partner-banner__inner {
		align-items: flex-start;
		flex-direction: column;
		height: auto;
		padding: 24px 0;
	}

	.rms-partner-banner {
		height: auto;
		min-height: 130px;
		background-image: none;
		background-color: #11171a;
		background-position: left center;
	}
}

@media (max-width: 480px) {
	.rms-category-grid {
		grid-template-columns: 1fr;
	}

	.rms-task-grid,
	.rms-info-grid,
	.rms-section .products {
		grid-template-columns: 1fr;
	}

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

@media (max-width: 800px) {
	#products .products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#products .products li.product {
		display: block;
		min-height: 0;
		padding: 10px;
	}

	#products .products li.product > .woocommerce-loop-product__link {
		display: block;
	}

	#products .products li.product > .woocommerce-loop-product__link > img {
		display: block;
		width: 100%;
		height: 116px;
		margin: 0 auto 8px;
	}

	#products .products li.product .woocommerce-loop-product__title,
	#products .products li.product .rms-loop-identifiers,
	#products .products li.product .rms-availability,
	#products .products li.product .price {
		display: block;
		margin: 0 0 6px;
	}

	#products .products li.product .az-loop-cart-control {
		display: flex;
		justify-content: flex-end;
		margin-top: 8px;
	}
}

#products .products li.product {
	position: relative;
	display: block;
	height: 148px;
	min-height: 148px;
	padding: 10px 12px;
	box-sizing: border-box;
}

#products .products li.product > .woocommerce-loop-product__link {
	display: grid;
	height: 100%;
	grid-template-columns: minmax(112px, 40%) minmax(0, 1fr);
	grid-template-rows: auto 1fr auto;
	column-gap: 12px;
}

#products .products li.product > .woocommerce-loop-product__link > img {
	grid-column: 1;
	grid-row: 1 / 4;
	width: 100%;
	height: 108px;
	margin: auto;
	object-fit: contain;
}

#products .products li.product .woocommerce-loop-product__title {
	grid-column: 2;
	grid-row: 1;
	margin: 0;
	font-size: 14px;
	line-height: 1.2;
}

#products .products li.product .rms-loop-identifiers,
#products .products li.product .rms-availability {
	display: none;
}

#products .products li.product .price {
	grid-column: 2;
	grid-row: 3;
	margin: 0;
	padding-right: 132px;
	font-size: 18px;
	font-weight: 800;
}

#products .products li.product .az-loop-cart-control {
	position: absolute;
	right: 12px;
	bottom: 10px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	width: 120px;
	height: 36px;
	margin: 0;
}

#products .products li.product .az-loop-cart-button {
	width: 120px;
	height: 36px !important;
	min-height: 36px;
	box-sizing: border-box;
	margin: 0;
	padding: 9px 14px;
}

#products .products li.product .az-loop-cart-button__icon {
	display: inline-block;
	width: 18px;
	height: 18px;
	fill: none;
	flex: 0 0 18px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	vertical-align: middle;
}

#products .products li.product .az-loop-cart-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	color: #fff !important;
	white-space: nowrap;
}

@media (max-width: 800px) {
	#products .products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	#products .products li.product {
		height: auto;
		min-height: 0;
	}

	#products .products li.product > .woocommerce-loop-product__link {
		display: block;
		height: auto;
	}

	#products .products li.product > .woocommerce-loop-product__link > img {
		height: 116px;
	}

	#products .products li.product .price {
		padding-right: 0;
	}

	#products .products li.product .az-loop-cart-control {
		position: static;
		width: auto;
		height: auto;
		margin-top: 8px;
	}
}

@media (max-width: 480px) {
	#products .products {
		grid-template-columns: 1fr !important;
	}
}

/* Price list cards: four compact horizontal tiles from the approved homepage mockup. */
#products .products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	align-items: stretch;
	gap: 16px;
	margin: 0;
	padding: 0;
}

#products .products::before,
#products .products::after {
	display: none !important;
	content: none !important;
}

#products .products li.product {
	position: relative;
	display: block;
	width: auto !important;
	height: 140px;
	min-height: 140px;
	margin: 0 !important;
	padding: 12px;
	border: 1px solid #e2e7ea;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(31, 41, 51, .04);
	overflow: hidden;
}

#products .products li.product > .woocommerce-loop-product__link {
	display: grid;
	height: 100%;
	grid-template-columns: 148px minmax(0, 1fr);
	grid-template-rows: auto 1fr auto;
	column-gap: 14px;
	min-width: 0;
	text-decoration: none;
}

#products .products li.product > .woocommerce-loop-product__link > img {
	display: block;
	grid-column: 1;
	grid-row: 1 / 4;
	width: 148px;
	height: 112px;
	margin: auto;
	object-fit: contain;
}

#products .products li.product .woocommerce-loop-product__title {
	grid-column: 2;
	grid-row: 1;
	min-width: 0;
	margin: 2px 0 0;
	color: #1f2933;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
}

#products .products li.product .rms-loop-identifiers,
#products .products li.product .rms-availability {
	display: none;
}

#products .products li.product .price {
	grid-column: 2;
	grid-row: 3;
	align-self: end;
	box-sizing: border-box;
	width: calc(100% - 136px);
	min-width: 0;
	margin: 0 0 10px;
	padding-right: 0;
	color: #111820;
	font-size: 20px;
	font-weight: 800;
	line-height: 1;
	overflow: hidden;
	white-space: nowrap;
}

#products .products li.product .az-loop-cart-control {
	position: absolute;
	right: 12px;
	bottom: 12px;
	display: flex;
	width: 124px;
	height: 40px;
	align-items: center;
	justify-content: flex-end;
	margin: 0;
}

#products .products li.product .az-loop-quantity {
	display: none;
}

#products .products li.product .az-loop-cart-button {
	display: inline-flex;
	width: 124px;
	height: 40px;
	min-height: 40px;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin: 0;
	padding: 9px 10px;
	border: 0;
	border-radius: 8px;
	background: #df1829;
	color: #fff !important;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

#products .products li.product .az-loop-cart-button:hover,
#products .products li.product .az-loop-cart-button:focus-visible {
	background: #c91424;
}

#products .products li.product .az-loop-cart-button__icon {
	display: inline-block;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

/* Compact footer from the approved homepage mockup. */
.rms-footer {
	border-top: 1px solid #e3e8eb;
	background: #f4f7f8;
	color: #1f2933;
}

.rms-footer__inner {
	display: block;
	padding: 0;
}

.rms-footer__main {
	display: grid;
	grid-template-columns: 210px 220px 230px 260px minmax(360px, 1fr) auto;
	align-items: center;
	gap: 24px;
	min-height: 86px;
}

.rms-footer__brand {
	display: block;
	width: 190px;
}

.rms-footer__brand img {
	display: block;
	width: 190px;
	height: auto;
	max-height: 72px;
	object-fit: contain;
}

.rms-footer__contact {
	display: flex;
	min-width: 0;
	align-items: flex-start;
	gap: 10px;
}

.rms-footer__contact > div {
	min-width: 0;
}

.rms-footer__icon {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	margin-top: 1px;
	fill: none;
	stroke: #df1829;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.rms-footer__contact:first-of-type .rms-footer__icon {
	fill: #df1829;
	stroke: none;
}

.rms-footer__contact a,
.rms-footer__contact strong {
	display: block;
	color: #1f2933;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
}

.rms-footer__contact span {
	display: block;
	margin-top: 4px;
	color: #7a8790;
	font-size: 12px;
	line-height: 1.2;
	white-space: nowrap;
}

.rms-footer__links {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 26px;
}

.rms-footer__links a {
	color: #1f2933;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
}

.rms-footer__links a:hover,
.rms-footer__links a:focus-visible,
.rms-footer__bottom a:hover,
.rms-footer__bottom a:focus-visible {
	color: #df1829;
}

.rms-footer__socials {
	display: flex;
	align-items: center;
	gap: 9px;
}

.rms-footer__social {
	display: inline-flex;
	width: 30px;
	height: 30px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	text-decoration: none;
}

.rms-footer__social--vk {
	background: #273746;
	font-size: 11px;
	letter-spacing: -.04em;
	text-transform: uppercase;
}

.rms-footer__social--youtube {
	background: #df1829;
}

.rms-footer__social--telegram {
	background: #273746;
}

.rms-footer__social svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

.rms-footer__social--youtube svg path:first-child {
	fill: currentColor;
	stroke: none;
}

.rms-footer__social--youtube svg path:last-child {
	fill: #df1829;
	stroke: none;
}

.rms-footer__social--telegram svg {
	fill: none;
	stroke-width: 1.6;
}

.rms-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 32px;
	border-top: 1px solid #e0e6e9;
	color: #7a8790;
	font-size: 11px;
}

.rms-footer__bottom > div {
	display: flex;
	gap: 26px;
}

.rms-footer__bottom a {
	color: #7a8790;
	text-decoration: none;
	white-space: nowrap;
}

@media (min-width: 1501px) {
	.rms-footer__main {
		grid-template-areas: "brand phone email address links socials";
	}

	.rms-footer__brand {
		grid-area: brand;
	}

	.rms-footer__contact--phone {
		grid-area: phone;
	}

	.rms-footer__contact--email {
		grid-area: email;
	}

	.rms-footer__contact--address {
		grid-area: address;
	}

	.rms-footer__links {
		grid-area: links;
	}

	.rms-footer__socials {
		grid-area: socials;
		justify-self: end;
	}
}

@media (max-width: 1500px) {
	.rms-footer__main {
		grid-template-columns: 190px 205px 220px minmax(250px, 1fr) auto;
		gap: 18px;
	}

	.rms-footer__contact--address {
		grid-column: 4;
	}

	.rms-footer__links {
		grid-column: 4 / 6;
		grid-row: 2;
		justify-content: flex-start;
		padding-bottom: 12px;
	}

	.rms-footer__socials {
		grid-column: 5;
		grid-row: 1;
		justify-self: end;
	}
}

@media (max-width: 800px) {
	.rms-footer__main {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px 16px;
		padding: 22px 0 18px;
	}

	.rms-footer__brand,
	.rms-footer__links,
	.rms-footer__socials {
		grid-column: 1 / -1;
		grid-row: auto;
	}

	.rms-footer__contact--address {
		grid-column: 1 / -1;
		grid-row: auto;
	}

	.rms-footer__brand img {
		width: 165px;
	}

	.rms-footer__links {
		flex-wrap: wrap;
		gap: 12px 20px;
		padding: 0;
	}

	.rms-footer__socials {
		justify-self: start;
	}

	.rms-footer__bottom {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
		padding: 12px 0 14px;
	}

	.rms-footer__bottom > div {
		flex-wrap: wrap;
		gap: 8px 18px;
	}
}

@media (max-width: 480px) {
	.rms-footer__main {
		grid-template-columns: 1fr;
	}

	.rms-footer__contact--address {
		grid-column: auto;
	}

	.rms-footer__contact a,
	.rms-footer__contact strong {
		font-size: 14px;
	}
}

@media (max-width: 1100px) {
	#products .products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 640px) {
	#products .products {
		grid-template-columns: 1fr !important;
	}

	#products .products li.product {
		height: 140px;
		min-height: 140px;
	}
}

/* Keep the price-list block visually close to the category cards, as in the mockup. */
@media (min-width: 801px) {
	.rms-section--categories {
		padding-bottom: 10px;
	}

	#products.rms-section--products {
		padding: 18px 0 28px;
	}
}

@media (min-width: 1101px) {
	#products > .rms-container {
		width: calc(100% - 96px);
	}
}

#products .rms-section__heading {
	margin-bottom: 14px;
}

#products .rms-section__heading h2 {
	margin-bottom: 0;
	font-size: 28px;
	line-height: 1.1;
}

#products .rms-text-link {
	color: #1f2933;
	font-size: 16px;
	font-weight: 500;
	text-decoration: none;
}

#products .rms-text-link span {
	font-size: 20px;
}

@media (max-width: 800px) {
	#products .products li.product {
		height: auto;
		min-height: 0;
		padding: 10px;
	}

	#products .products li.product > .woocommerce-loop-product__link {
		display: block;
		height: auto;
	}

	#products .products li.product > .woocommerce-loop-product__link > img {
		width: 100%;
		max-width: 160px;
		height: 116px;
		margin: 0 auto 8px;
	}

	#products .products li.product .woocommerce-loop-product__title,
	#products .products li.product .price {
		display: block;
		grid-column: auto;
		grid-row: auto;
		width: auto;
		padding-right: 0;
	}

	#products .products li.product .az-loop-cart-control {
		position: static;
		width: auto;
		height: auto;
		margin-top: 8px;
	}

	#products .products li.product .az-loop-cart-button {
		width: 100%;
	}
}

/* Brands and delivery blocks from the approved homepage mockup. */
#brands.rms-section {
	padding: 22px 0 14px;
	background: #fff;
}

#brands > .rms-container,
#delivery > .rms-container {
	width: calc(100% - 96px);
}

#brands .rms-section__heading {
	align-items: center;
	margin-bottom: 12px;
}

#brands .rms-section__heading h2,
#delivery h2 {
	margin: 0;
	font-size: 28px;
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -.02em;
}

#brands .rms-text-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #1f2933;
	font-size: 16px;
	font-weight: 500;
	text-decoration: none;
}

#brands .rms-text-link span {
	font-size: 20px;
	line-height: .8;
}

#brands .rms-brand-grid {
	display: grid;
	grid-template-columns: repeat(10, minmax(0, 1fr));
	gap: 14px;
}

#brands .rms-brand-card {
	position: relative;
	display: flex;
	min-width: 0;
	height: 58px;
	min-height: 58px;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border: 1px solid #e3e8eb;
	border-radius: 8px;
	background: #fff;
	color: #1f2933;
	text-decoration: none;
	box-shadow: 0 1px 3px rgba(31, 41, 51, .04);
	transition: border-color .2s ease, transform .2s ease;
}

#brands .rms-brand-card:hover,
#brands .rms-brand-card:focus-visible {
	border-color: #cbd5da;
	transform: translateY(-1px);
}

#brands .rms-brand-card__logo {
	display: inline-block;
	font-size: 21px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

#brands .brand-3m .rms-brand-card__logo {
	color: #df1829;
	font-size: 28px;
	font-style: italic;
}

#brands .brand-rupes .rms-brand-card__logo,
#brands .brand-novol .rms-brand-card__logo,
#brands .brand-sata .rms-brand-card__logo,
#brands .brand-colad .rms-brand-card__logo {
	padding: 7px 11px;
	background: #df1829;
	color: #fff;
	font-style: italic;
}

#brands .brand-sikkens .rms-brand-card__logo {
	color: #162c55;
	border-top: 4px solid #162c55;
	padding-top: 3px;
}

#brands .brand-reoflex .rms-brand-card__logo {
	color: #162c55;
	font-family: Georgia, serif;
}

#brands .brand-mirka .rms-brand-card__logo {
	padding: 7px 12px;
	background: #f7c900;
	color: #111820;
	font-size: 18px;
	font-style: italic;
}

#brands .brand-body .rms-brand-card__logo {
	color: #592a9b;
	font-size: 22px;
}

#brands .brand-body .rms-brand-card__logo::first-letter {
	color: #2caaa8;
}

#brands .brand-more {
	align-items: flex-start;
	justify-content: center;
	padding-top: 12px;
}

#brands .brand-more .rms-brand-card__logo {
	font-size: 13px;
	font-weight: 500;
	align-self: flex-end;
}

#brands .rms-brand-card__dots {
	position: absolute;
	top: 5px;
	color: #a0adb4;
	font-size: 20px;
	letter-spacing: 4px;
	line-height: 1;
}

#brands .rms-brand-card__arrow {
	position: absolute;
	right: 12px;
	bottom: 11px;
	font-size: 24px;
	font-weight: 400;
	line-height: .8;
}

#delivery.rms-section {
	padding: 10px 0 26px;
	background: #f8fafb;
}

#delivery h2 {
	margin-bottom: 12px;
}

#delivery .rms-info-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

#delivery .rms-info-card {
	position: relative;
	display: flex;
	height: 68px;
	min-height: 68px;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 14px;
	padding: 10px 42px 10px 18px;
	border: 1px solid #e1e7ea;
	border-radius: 8px;
	background: #fff;
	color: #1f2933;
	text-decoration: none;
	box-shadow: 0 1px 3px rgba(31, 41, 51, .03);
}

#delivery .rms-info-card:hover,
#delivery .rms-info-card:focus-visible {
	border-color: #cbd5da;
}

#delivery .rms-info-card__icon {
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	fill: none;
	stroke: #111820;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2.2;
}

#delivery .rms-info-card > span {
	display: block;
	min-width: 0;
	margin: 0;
}

#delivery .rms-info-card strong,
#delivery .rms-info-card small {
	display: block;
	line-height: 1.2;
}

#delivery .rms-info-card strong {
	font-size: 15px;
	font-weight: 700;
}

#delivery .rms-info-card small {
	margin-top: 4px;
	color: #7a8790;
	font-size: 12px;
}

#delivery .rms-info-card__arrow {
	position: absolute;
	right: 18px;
	top: 50%;
	color: #1f2933;
	font-size: 28px;
	font-weight: 400;
	line-height: 1;
	transform: translateY(-55%);
}

@media (max-width: 1100px) {
	#brands .rms-brand-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	#delivery .rms-info-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 800px) {
	#brands.rms-section {
		padding: 30px 0 16px;
	}

	#brands > .rms-container,
	#delivery > .rms-container {
		width: calc(100% - 32px);
	}

	#brands .rms-brand-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	#brands .rms-brand-card {
		height: 58px;
	}
}

@media (max-width: 480px) {
	#brands .rms-section__heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	#delivery .rms-info-grid {
		grid-template-columns: 1fr;
	}
}

/* Popular product cards from the approved homepage mockup. */
#popular-products.rms-section {
	padding: 22px 0 28px;
	background: #f8fafb;
}

#popular-products > .rms-container {
	width: calc(100% - 96px);
}

#popular-products .rms-section__heading {
	align-items: center;
	margin-bottom: 14px;
}

#popular-products .rms-section__heading h2 {
	margin: 0;
	font-size: 28px;
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -.02em;
}

#popular-products .rms-text-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: #147a67;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
}

#popular-products .rms-text-link span {
	font-size: 20px;
	line-height: .8;
}

#popular-products .products {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	align-items: stretch;
	gap: 16px;
	margin: 0;
	padding: 0;
}

#popular-products .products::before,
#popular-products .products::after {
	display: none !important;
	content: none !important;
}

#popular-products .products li.product {
	position: relative;
	display: block;
	width: auto !important;
	height: 260px;
	min-height: 260px;
	margin: 0 !important;
	padding: 12px;
	border: 1px solid #e1e7ea;
	border-radius: 9px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(31, 41, 51, .04);
	overflow: hidden;
}

#popular-products .products li.product > .woocommerce-loop-product__link {
	display: flex;
	height: 100%;
	min-width: 0;
	flex-direction: column;
	text-decoration: none;
}

#popular-products .products li.product > .woocommerce-loop-product__link > img {
	display: block;
	width: 100%;
	height: 116px;
	flex: 0 0 116px;
	margin: 0 auto 8px;
	object-fit: contain;
}

#popular-products .products li.product .woocommerce-loop-product__title {
	min-width: 0;
	margin: 0 0 8px;
	color: #1f2933;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.25;
	text-align: left;
}

#popular-products .products li.product .rms-loop-identifiers {
	display: none;
}

#popular-products .products li.product .rms-availability {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	margin: 0 0 8px;
	padding: 0;
	border-radius: 0;
	background: transparent;
	color: #16833e;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.2;
}

#popular-products .products li.product .rms-availability::before {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: 6px;
	border-radius: 50%;
	background: #16833e;
	content: '';
}

#popular-products .products li.product .price {
	width: calc(100% - 148px);
	min-width: 0;
	margin: auto 0 2px;
	padding: 0;
	color: #111820;
	font-size: 20px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

#popular-products .products li.product .az-loop-cart-control {
	position: absolute;
	right: 12px;
	bottom: 12px;
	display: flex;
	width: 136px;
	height: 44px;
	align-items: center;
	justify-content: flex-end;
	margin: 0;
}

#popular-products .products li.product .az-loop-quantity {
	display: none !important;
}

#popular-products .products li.product .az-loop-cart-button {
	display: inline-flex;
	width: 136px;
	height: 44px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	gap: 7px;
	margin: 0;
	padding: 10px 12px;
	border: 0;
	border-radius: 7px;
	background: #ed1226;
	color: #fff !important;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

#popular-products .products li.product .az-loop-cart-button:hover,
#popular-products .products li.product .az-loop-cart-button:focus-visible {
	background: #d90f21;
}

#popular-products .products li.product .az-loop-cart-button__icon {
	display: inline-block;
	width: 19px;
	height: 19px;
	flex: 0 0 19px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

@media (max-width: 1400px) {
	#popular-products .products {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 800px) {
	#popular-products > .rms-container {
		width: calc(100% - 32px);
	}

	#popular-products .products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	#popular-products .products li.product {
		height: 260px;
		min-height: 260px;
	}
}

@media (max-width: 480px) {
	#popular-products .rms-section__heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	#popular-products .products {
		grid-template-columns: 1fr !important;
	}
}

/* Single product page aligned with the approved purchase-card mockup. */
.single-product .rms-main > .rms-container {
	width: calc(100% - 96px);
	max-width: 1440px;
	padding: 22px 0 72px;
}

.single-product .rms-main > .rms-container.rms-section {
	padding-top: 18px;
}

.single-product div.product {
	display: grid;
	grid-template-columns: minmax(0, 1.02fr) minmax(460px, .98fr);
	column-gap: 48px;
	row-gap: 0;
	margin: 0;
}

.single-product .rms-product-breadcrumbs {
	display: flex;
	grid-column: 1 / -1;
	align-items: center;
	gap: 9px;
	margin: 0 0 24px;
	color: #788593;
	font-size: 13px;
	line-height: 1.3;
}

.single-product .rms-product-breadcrumbs a {
	color: #788593;
	text-decoration: none;
}

.single-product .rms-product-breadcrumbs a:hover {
	color: #df1829;
}

.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary {
	float: none;
	width: 100% !important;
	margin: 0;
}

.single-product div.product .woocommerce-product-gallery {
	grid-column: 1;
	grid-row: 2;
}

.single-product div.product .woocommerce-product-gallery__wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(420px, 34vw, 540px);
	margin: 0;
	padding: 32px;
	border: 1px solid #dfe5e9;
	border-radius: 8px;
	background: #fff;
}

.single-product div.product .woocommerce-product-gallery__image,
.single-product div.product .woocommerce-product-gallery__image a {
	display: block;
	width: 100%;
}

.single-product div.product .woocommerce-product-gallery__image img {
	display: block;
	width: 100%;
	max-height: clamp(380px, 30vw, 500px);
	margin: 0 auto;
	object-fit: contain;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
	display: flex;
	gap: 16px;
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
	width: 92px;
	margin: 0;
	padding: 7px;
	border: 1px solid #dfe5e9;
	border-radius: 6px;
	background: #fff;
	cursor: pointer;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
	display: block;
	width: 100%;
	height: 76px;
	margin: 0;
	object-fit: contain;
	opacity: 1;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
	outline: 2px solid #ed1226;
	outline-offset: 4px;
}

.single-product div.product .summary {
	position: relative;
	display: flex;
	flex-direction: column;
	grid-column: 2;
	grid-row: 2;
	padding: 0 0 2px;
}

.single-product .rms-product-favorite {
	position: absolute;
	top: 0;
	right: 0;
	display: inline-flex;
	width: 48px;
	height: 48px;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid #dfe5e9;
	border-radius: 6px;
	background: #fff;
	color: #ed1226;
	cursor: pointer;
	transition: background .2s ease, border-color .2s ease;
}

.single-product .rms-product-favorite:hover,
.single-product .rms-product-favorite:focus-visible,
.single-product .rms-product-favorite[aria-pressed="true"] {
	border-color: #ed1226;
	background: #fff5f6;
}

.single-product .rms-product-favorite svg {
	width: 28px;
	height: 28px;
	fill: none;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

.single-product .rms-product-favorite[aria-pressed="true"] svg {
	fill: currentcolor;
}

.single-product .rms-product-favorite::after {
	position: absolute;
	top: calc(100% + 8px);
	right: -28px;
	padding: 8px 12px;
	border-radius: 4px;
	background: #14243a;
	color: #fff;
	content: attr(title);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.1;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-4px);
	transition: opacity .2s ease, transform .2s ease;
	white-space: nowrap;
}

.single-product .rms-product-favorite:hover::after,
.single-product .rms-product-favorite:focus-visible::after {
	opacity: 1;
	transform: translateY(0);
}

.single-product .rms-product-category-label {
	display: inline-flex;
	order: 1;
	align-self: flex-start;
	margin: 0 0 9px;
	padding: 4px 8px;
	border-radius: 4px;
	background: #eef2f4;
	color: #5e6b76;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
}

.single-product .summary .product_title {
	order: 2;
	max-width: calc(100% - 72px);
	margin: 0 0 9px;
	color: #14243a;
	font-size: clamp(28px, 2.25vw, 38px);
	font-weight: 800;
	line-height: 1.12;
}

.single-product .summary .rms-product-identifiers {
	display: flex;
	order: 3;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 18px;
	color: #657489;
	font-size: 14px;
}

.single-product .summary .rms-product-identifiers > span:not(.rms-product-identifiers__separator) {
	font-weight: 500;
}

.single-product .summary .rms-product-identifiers__separator {
	color: #a8b1b9;
}

.single-product .summary .price {
	order: 6;
	margin: 22px 0 3px;
	color: #111820;
	font-size: 32px;
	font-weight: 800;
	line-height: 1.1;
}

.single-product .summary .price,
.single-product .summary .price .woocommerce-Price-amount,
.single-product .summary .price .woocommerce-Price-amount bdi {
	color: #111820 !important;
}

.single-product .summary .price::after {
	display: block;
	margin-top: 7px;
	color: #788593;
	content: 'Цена за 1 шт.';
	font-size: 13px;
	font-weight: 400;
}

.single-product .summary .woocommerce-product-details__short-description {
	order: 5;
	margin: 0 0 8px;
	color: #657489;
	font-size: 16px;
	line-height: 1.45;
}

.single-product .summary .woocommerce-product-details__short-description p {
	margin: 0;
}

.single-product .summary .stock,
.single-product .summary .rms-availability,
.single-product .summary .rms-availability-hint {
	order: 4;
	margin: 0 0 18px;
	padding: 0;
	background: transparent;
	color: #16833e;
	font-size: 14px;
	font-weight: 600;
}

.single-product .summary .stock.in-stock {
	color: #1f9d35 !important;
}

.single-product .summary .stock::before,
.single-product .summary .rms-availability::before {
	display: inline-block;
	width: 9px;
	height: 9px;
	margin-right: 8px;
	border-radius: 50%;
	background: currentcolor;
	content: '';
}

.single-product .summary .stock.in-stock::before {
	background: #1f9d35;
}

.single-product .summary form.cart {
	display: grid;
	order: 7;
	grid-template-columns: minmax(190px, .78fr) minmax(210px, 1.25fr) minmax(190px, 1fr);
	gap: 18px;
	align-items: stretch;
	margin: 0 !important;
}

.single-product .summary form.cart .rms-single-quantity {
	position: relative;
	display: grid;
	grid-column: 1;
	grid-row: 1;
	grid-template-columns: 1fr 1fr 1fr;
	width: 100%;
	max-width: 250px;
	height: 72px;
	margin: 0;
	border: 1px solid #dfe5e9;
	border-radius: 6px;
	overflow: hidden;
}

.single-product .summary form.cart .rms-single-quantity .quantity {
	display: contents;
	margin: 0;
}

.single-product .summary form.cart .rms-single-quantity .quantity .qty {
	-moz-appearance: textfield;
	-webkit-appearance: none;
	appearance: textfield;
	width: 100%;
	height: 70px;
	padding: 0;
	border: 0;
	color: #14243a;
	font-size: 17px;
	font-weight: 700;
	text-align: center;
}

.single-product .summary form.cart .rms-single-quantity .quantity .qty::-webkit-inner-spin-button,
.single-product .summary form.cart .rms-single-quantity .quantity .qty::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.single-product .rms-single-quantity__button {
	width: 100%;
	height: 70px;
	padding: 0;
	border: 0;
	background: #f7f9fa;
	color: #14243a;
	font-size: 24px;
	cursor: pointer;
}

.single-product .rms-single-quantity__button:hover,
.single-product .rms-single-quantity__button:focus-visible {
	background: #edf1f3;
}

.single-product .summary form.cart .single_add_to_cart_button,
.single-product .summary form.cart .rms-buy-now {
	width: 100%;
	height: 72px;
	margin: 0;
	padding: 0 14px;
	border-radius: 6px;
	font-size: 17px;
	font-weight: 700;
}

.single-product .summary form.cart .single_add_to_cart_button {
	grid-column: 2;
	grid-row: 1;
	background: #ed1226;
	color: #fff;
}

.single-product .summary form.cart .single_add_to_cart_button::before {
	display: inline-block;
	width: 30px;
	height: 30px;
	margin-right: 8px;
	vertical-align: middle;
	background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2l2.1 11.1a2 2 0 0 0 2 1.6h8.4a2 2 0 0 0 1.9-1.5L21 8H6'/%3E%3Ccircle cx='9' cy='20' r='1.2'/%3E%3Ccircle cx='18' cy='20' r='1.2'/%3E%3C/svg%3E");
	content: '';
}

.single-product .summary form.cart .rms-buy-now {
	grid-column: 3;
	grid-row: 1;
	border: 1px solid #ed1226;
	background: #fff;
	color: #ed1226;
}

.single-product .summary form.cart .rms-buy-now:hover,
.single-product .summary form.cart .rms-buy-now:focus-visible {
	background: #fff5f6;
}

.single-product .rms-product-delivery {
	display: grid;
	order: 8;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: 100%;
	margin-top: 0;
	border: 1px solid #dfe5e9;
	border-radius: 6px;
	background: #fff;
	overflow: hidden;
}

.single-product .rms-product-delivery__item {
	display: flex;
	box-sizing: border-box;
	min-height: 114px;
	align-items: center;
	gap: 16px;
	padding: 18px 24px;
	border-right: 1px solid #dfe5e9;
	color: #14243a;
}

.single-product .rms-product-delivery__item:last-child {
	border-right: 0;
}

.single-product .rms-product-delivery__icon {
	display: block;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	color: #14243a;
	fill: none;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2.6;
}

.single-product .rms-product-delivery__item strong,
.single-product .rms-product-delivery__item small {
	display: block;
}

.single-product .rms-product-delivery__item > span {
	min-width: 0;
	overflow-wrap: anywhere;
}

.single-product .rms-product-delivery__item strong {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
}

.single-product .rms-product-delivery__item small {
	margin-top: 3px;
	font-size: 14px;
	line-height: 1.2;
}

@media (min-width: 1101px) {
	.single-product .rms-product-delivery {
		margin-top: 24px;
	}

	.single-product .rms-product-delivery__item {
		min-height: 100px;
		padding: 14px 20px;
	}

	.single-product .rms-product-delivery.rms-product-delivery--desktop {
		height: 100px;
	}

	.single-product .rms-product-delivery.rms-product-delivery--desktop .rms-product-delivery__item {
		height: 100%;
		min-height: 0;
	}
}

.single-product .woocommerce-tabs {
	grid-column: 1 / -1;
	grid-row: 4;
	margin: 34px 0 0;
	padding-top: 0;
	border-top: 0 !important;
}

.single-product .woocommerce-tabs ul.tabs {
	display: flex;
	gap: 32px;
	margin: 0 !important;
	padding: 18px 0 0 !important;
	border-bottom: 1px solid #dfe5e9;
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs::after {
	display: none;
}

.single-product .woocommerce-tabs ul.tabs li {
	position: static;
	 z-index: auto;
	margin: 0 !important;
	padding: 17px 0 13px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
}

.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after {
	display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 0;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #14243a !important;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
}

.single-product .woocommerce-tabs ul.tabs li:not(.active) a {
	color: #14243a !important;
}

.single-product .woocommerce-tabs ul.tabs li.active {
	border-bottom: 3px solid #ed1226 !important;
	background: transparent !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
	color: #ed1226 !important;
}

.single-product .woocommerce-tabs .panel {
	margin: 0 !important;
	padding: 32px 0 0 !important;
}

.single-product .rms-product-overview {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
	gap: 40px;
}

.single-product .rms-product-tab-content,
.single-product .rms-product-specifications {
	display: block;
	margin: 0;
	padding: 0;
}

.single-product .rms-product-tab-content h2,
.single-product .rms-product-specifications h2,
.single-product .rms-product-overview__specifications-heading {
	margin: 0 0 12px;
	color: #14243a;
	font-size: 24px;
	font-weight: 800;
	line-height: 1.2;
}

.single-product .rms-product-tab-content p {
	margin: 0 0 9px;
	color: #657489;
	font-size: 16px;
	line-height: 1.55;
}

.single-product .rms-product-specifications dl {
	margin: 0;
	border: 1px solid #dfe5e9;
	border-radius: 5px;
	overflow: hidden;
}

.single-product .rms-product-specifications dl div {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border-bottom: 1px solid #dfe5e9;
}

.single-product .rms-product-specifications dl div:last-child {
	border-bottom: 0;
}

.single-product .rms-product-specifications dt,
.single-product .rms-product-specifications dd {
	margin: 0;
	padding: 11px 16px;
	font-size: 14px;
	line-height: 1.35;
}

.single-product .rms-product-specifications dt {
	background: #f7f9fa;
	color: #657489;
	font-weight: 400;
}

.single-product .rms-product-specifications dd {
	color: #14243a;
	font-weight: 600;
}

.single-product .rms-product-overview__specifications .rms-product-specifications h2 {
	display: none;
}

.single-product .rms-product-consultation {
	display: flex;
	grid-column: 1 / -1;
	grid-row: 5;
	min-height: 100px;
	align-items: center;
	gap: 24px;
	margin-top: 32px;
	padding: 18px 28px;
	border: 1px solid #dfe5e9;
	border-radius: 6px;
	background: #f7f9fa;
}

.single-product .rms-product-consultation__icon {
	display: block;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	color: #14243a;
	fill: none;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2.2;
}

.single-product .rms-product-consultation__copy {
	min-width: 0;
}

.single-product .rms-product-consultation__copy strong {
	display: block;
	color: #14243a;
	font-size: 21px;
	font-weight: 800;
	line-height: 1.2;
}

.single-product .rms-product-consultation__copy p {
	margin: 5px 0 0;
	color: #657489;
	font-size: 16px;
	line-height: 1.35;
}

.single-product .rms-product-consultation__button {
	display: inline-flex;
	min-width: 230px;
	height: 48px;
	align-items: center;
	justify-content: center;
	margin-left: auto;
	padding: 0 22px;
	border: 1px solid #ed1226;
	border-radius: 5px;
	background: #fff;
	color: #ed1226;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
}

.single-product .rms-product-consultation__button:hover,
.single-product .rms-product-consultation__button:focus-visible {
	background: #fff5f6;
}

.single-product .rms-product-recommendations,
.single-product .rms-product-popular {
	grid-column: 1 / -1;
	margin-top: 32px;
}

.single-product .rms-product-recommendations {
	grid-row: 6;
}

.single-product .rms-product-popular {
	grid-row: 7;
}

.single-product .rms-product-recommendations__heading,
.single-product .rms-product-popular__heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 14px;
}

.single-product .rms-product-recommendations__heading h2,
.single-product .rms-product-popular__heading h2 {
	margin: 0;
	color: #14243a;
	font-size: 22px;
	line-height: 1.2;
}

.single-product .rms-product-recommendations__heading .eyebrow {
	margin: 0 0 4px;
	color: #df1829;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.single-product .rms-product-recommendations__heading > p {
	margin: 0;
	color: #657489;
	font-size: 13px;
}

.single-product .rms-product-popular__heading a {
	color: #1e6b58;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
}

.single-product .rms-product-recommendations .products,
.single-product .rms-product-popular .products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	grid-auto-rows: minmax(260px, auto);
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.single-product .rms-product-popular .products {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.single-product .rms-product-recommendations .products::before,
.single-product .rms-product-recommendations .products::after,
.single-product .rms-product-popular .products::before,
.single-product .rms-product-popular .products::after {
	display: none !important;
	content: none !important;
}

.single-product .rms-product-recommendations .products li.product,
.single-product .rms-product-popular .products li.product {
	position: relative;
	display: flex;
	width: 100% !important;
	justify-self: stretch;
	min-width: 0;
	height: auto;
	min-height: 260px;
	flex-direction: column;
	margin: 0;
	padding: 10px;
	border: 1px solid #dfe5e9;
	border-radius: 6px;
	background: #fff;
	overflow: hidden;
}

.single-product .rms-product-recommendations .products li.product > a,
.single-product .rms-product-popular .products li.product > a {
	display: flex;
	min-width: 0;
	height: auto;
	flex: 1 1 auto;
	min-height: 0;
	flex-direction: column;
	text-decoration: none;
}

.single-product .rms-product-recommendations .products li.product img,
.single-product .rms-product-popular .products li.product img {
	display: block;
	width: 100%;
	height: 130px;
	margin: 0 auto 8px;
	object-fit: contain;
}

.single-product .rms-product-recommendations .products li.product .woocommerce-loop-product__title,
.single-product .rms-product-popular .products li.product .woocommerce-loop-product__title {
	min-height: 38px;
	margin: 0 0 8px;
	color: #14243a;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
}

.single-product .rms-product-recommendations .products li.product .rms-loop-identifiers,
.single-product .rms-product-popular .products li.product .rms-loop-identifiers,
.single-product .rms-product-recommendations .products li.product .rms-availability,
.single-product .rms-product-popular .products li.product .rms-availability {
	display: none;
}

.single-product .rms-product-recommendations .products li.product .price,
.single-product .rms-product-popular .products li.product .price {
	margin: auto 0 8px;
	color: #14243a;
	font-size: 17px;
	font-weight: 800;
}

.single-product .rms-product-recommendations .products li.product .az-loop-cart-control,
.single-product .rms-product-popular .products li.product .az-loop-cart-control {
	display: flex;
	height: auto;
	align-items: center;
	flex: 0 0 auto;
	gap: 6px;
	margin: 0;
}

.single-product .rms-product-recommendations .products li.product .az-loop-quantity,
.single-product .rms-product-popular .products li.product .az-loop-quantity {
	display: none;
}

.single-product .rms-product-recommendations .products li.product .az-loop-cart-button,
.single-product .rms-product-popular .products li.product .az-loop-cart-button {
	display: flex;
	width: 100%;
	height: 36px;
	min-height: 36px;
	box-sizing: border-box;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	padding: 8px 10px;
	border: 0;
	border-radius: 5px;
	background: #ed1226;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	gap: 6px;
	text-decoration: none;
}

.single-product .rms-product-recommendations .products li.product .az-loop-cart-button__icon,
.single-product .rms-product-popular .products li.product .az-loop-cart-button__icon {
	display: inline-block;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

@media (max-width: 1100px) {
	.single-product div.product {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 20px;
	}

	.single-product .rms-product-breadcrumbs,
	.single-product div.product .woocommerce-product-gallery,
	.single-product div.product .summary,
	.single-product .rms-product-delivery,
	.single-product .woocommerce-tabs,
	.single-product .rms-product-consultation,
	.single-product .rms-product-recommendations,
	.single-product .rms-product-popular {
		grid-column: 1;
		grid-row: auto;
	}

	.single-product .rms-product-overview {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.single-product .rms-product-recommendations .products,
	.single-product .rms-product-popular .products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.single-product .summary form.cart {
		grid-template-columns: minmax(190px, 250px) minmax(0, 1fr);
	}

	.single-product .summary form.cart .rms-buy-now {
		grid-column: 1 / -1;
		grid-row: 2;
	}

	.single-product .rms-product-delivery {
		grid-template-columns: 1fr;
		margin-top: 20px;
	}

	.single-product .rms-product-delivery__item {
		border-right: 0;
		border-bottom: 1px solid #dfe5e9;
	}

	.single-product .rms-product-delivery__item:last-child {
		border-bottom: 0;
	}

	.single-product .summary form.cart .rms-single-quantity {
		height: 60px;
	}

	.single-product .summary form.cart .rms-single-quantity .quantity .qty,
	.single-product .rms-single-quantity__button,
	.single-product .summary form.cart .single_add_to_cart_button,
	.single-product .summary form.cart .rms-buy-now {
		height: 58px;
	}
}

@media (max-width: 900px) {
	.single-product .rms-product-consultation {
		display: grid;
		grid-template-columns: 48px minmax(0, 1fr);
		align-items: flex-start;
		gap: 14px 18px;
		padding: 18px 20px;
	}

	.single-product .rms-product-consultation__copy {
		grid-column: 2;
	}

	.single-product .rms-product-consultation__button {
		grid-column: 2;
		width: 100%;
		margin-left: 0;
	}

	.single-product .summary form.cart {
		grid-template-columns: 1fr;
	}

	.single-product .summary form.cart .rms-single-quantity,
	.single-product .summary form.cart .single_add_to_cart_button,
	.single-product .summary form.cart .rms-buy-now {
		grid-column: auto;
		grid-row: auto;
	}
}

@media (max-width: 560px) {
	.single-product .rms-main > .rms-container {
		width: calc(100% - 28px);
	}

	.single-product div.product .woocommerce-product-gallery__wrapper {
		min-height: 280px;
		padding: 12px;
	}

	.single-product .summary .product_title {
		font-size: 25px;
	}

	.single-product .rms-product-favorite {
		width: 42px;
		height: 42px;
	}

	.single-product .rms-product-favorite svg {
		width: 24px;
		height: 24px;
	}

	.single-product .summary form.cart {
		grid-template-columns: 1fr;
	}

	.single-product .summary form.cart .rms-single-quantity {
		height: 60px;
	}

	.single-product .summary form.cart .rms-single-quantity .quantity .qty,
	.single-product .rms-single-quantity__button,
	.single-product .summary form.cart .single_add_to_cart_button,
	.single-product .summary form.cart .rms-buy-now {
		height: 58px;
	}

	.single-product .summary form.cart .single_add_to_cart_button,
	.single-product .summary form.cart .rms-buy-now {
		grid-column: auto;
		grid-row: auto;
	}

	.single-product .summary form.cart .rms-single-quantity {
		grid-column: auto;
		grid-row: auto;
	}

	.single-product .rms-product-delivery {
		grid-template-columns: 1fr;
	}

	.single-product .rms-product-delivery__item {
		border-right: 0;
		border-bottom: 1px solid #dfe5e9;
	}

	.single-product .rms-product-delivery__item:last-child {
		border-bottom: 0;
	}

	.single-product .rms-product-recommendations__heading,
	.single-product .rms-product-popular__heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
	}

	.single-product .rms-product-recommendations .products,
	.single-product .rms-product-popular .products {
		grid-template-columns: 1fr;
	}
}

/* Product category archives: keep the WooCommerce loop inside the RMS grid. */
body.woocommerce-shop .rms-main > .rms-container > .rms-section {
	padding-top: 48px;
}

body.woocommerce-shop .rms-catalog-landing__intro {
	max-width: 760px;
	margin-bottom: 30px;
}

body.woocommerce-shop .rms-catalog-landing__intro .rms-eyebrow {
	margin: 0 0 8px;
	color: #ed1226;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.woocommerce-shop .rms-catalog-landing__intro h1 {
	margin: 0 0 12px;
	color: #17283f;
	font-size: clamp(32px, 4vw, 52px);
	line-height: 1.08;
}

body.woocommerce-shop .rms-catalog-landing__intro p:last-child {
	max-width: 620px;
	margin: 0;
	color: #718096;
	font-size: 18px;
	line-height: 1.5;
}

body.woocommerce-shop .rms-catalog-landing__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

body.woocommerce-shop .rms-catalog-tile {
	position: relative;
	display: flex;
	min-height: 220px;
	box-sizing: border-box;
	flex-direction: column;
	justify-content: space-between;
	padding: 18px;
	border: 1px solid #dfe6eb;
	border-radius: 10px;
	background: #fff;
	color: #17283f;
	text-decoration: none;
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.woocommerce-shop .rms-catalog-tile:hover,
body.woocommerce-shop .rms-catalog-tile:focus-visible {
	border-color: #ed1226;
	box-shadow: 0 10px 24px rgba(23, 40, 63, .09);
	transform: translateY(-2px);
}

body.woocommerce-shop .rms-catalog-tile__media {
	display: flex;
	height: 128px;
	align-items: center;
	justify-content: center;
	margin: -4px -4px 14px;
	border-radius: 7px;
	background: transparent;
	overflow: hidden;
}

body.woocommerce-shop .rms-catalog-tile__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

body.woocommerce-shop .rms-catalog-tile__initial {
	display: flex;
	width: 66px;
	height: 66px;
	align-items: center;
	justify-content: center;
	border: 1px solid #d5dee5;
	border-radius: 50%;
	background: #fff;
	color: #ed1226;
	font-size: 30px;
	font-weight: 800;
}

body.woocommerce-shop .rms-catalog-tile__body {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 6px;
	padding-right: 28px;
}

body.woocommerce-shop .rms-catalog-tile__body strong {
	font-size: 18px;
	line-height: 1.2;
}

body.woocommerce-shop .rms-catalog-tile__body span {
	color: #718096;
	font-size: 14px;
}

body.woocommerce-shop .rms-catalog-tile__arrow {
	position: absolute;
	right: 18px;
	bottom: 18px;
	color: #ed1226;
	font-size: 22px;
	font-weight: 700;
}

body.woocommerce.archive .rms-main > .rms-container > .rms-section {
	padding-top: 32px;
}

body.woocommerce.archive .woocommerce-products-header {
	margin: 0 0 24px;
}

body.woocommerce.archive .woocommerce-products-header__title {
	margin: 0;
	color: #17283f;
	font-size: clamp(28px, 2.4vw, 40px);
	line-height: 1.12;
}

body.woocommerce.archive .rms-category-manufacturers {
	margin: 0 0 24px;
	padding: 12px 14px 14px;
	border: 1px solid #dfe6eb;
	border-radius: 8px;
	background: #f8fafb;
}

body.woocommerce.archive .rms-category-manufacturers__heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 10px;
}

body.woocommerce.archive .rms-category-manufacturers__heading .eyebrow {
	margin: 0 0 3px;
	color: #ed1226;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.woocommerce.archive .rms-category-manufacturers__heading h2 {
	margin: 0;
	color: #17283f;
	font-size: 20px;
	line-height: 1.2;
}

body.woocommerce.archive .rms-category-manufacturers__reset {
	color: #17283f;
	font-size: 13px;
	font-weight: 700;
}

body.woocommerce.archive .rms-category-manufacturers__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 9px;
}

body.woocommerce.archive .rms-category-manufacturers__grid--compact {
	grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}

body.woocommerce.archive .rms-category-manufacturers__grid--dense {
	grid-template-columns: repeat(auto-fit, minmax(112px, 1fr));
}

.rms-manufacturer-card {
	position: relative;
	display: flex;
	height: 58px;
	min-height: 58px;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	align-items: center;
	padding: 5px 10px;
	border: 1px solid #e3e8eb;
	border-radius: 8px;
	background: #fff;
	color: #17283f;
	box-shadow: 0 1px 3px rgba(31, 41, 51, .04);
	text-decoration: none;
	transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.rms-manufacturer-card:hover,
.rms-manufacturer-card:focus-visible,
.rms-manufacturer-card.is-active {
	border-color: #ed1226;
	box-shadow: 0 4px 12px rgba(23, 40, 63, .08);
}

.rms-manufacturer-card:hover,
.rms-manufacturer-card:focus-visible {
	transform: translateY(-1px);
}

.rms-manufacturer-card__logo {
	display: inline-flex;
	min-height: 29px;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	max-width: 100%;
	padding: 2px 9px;
	border-radius: 1px;
	color: #17283f;
	font-size: 19px;
	font-style: italic;
	font-weight: 900;
	letter-spacing: -.04em;
	line-height: 1;
	max-width: 100%;
	overflow: hidden;
	white-space: nowrap;
}

.rms-manufacturer-card__logo--long {
	font-size: 14px;
	font-style: normal;
	letter-spacing: -.03em;
	line-height: 1.05;
	text-align: center;
	white-space: normal;
	overflow-wrap: anywhere;
}

.rms-manufacturer-card__logo--all {
	background: transparent;
	font-size: 17px;
	font-style: normal;
}

.rms-manufacturer-card__logo--dima,
.rms-manufacturer-card__logo--mipa,
.rms-manufacturer-card__logo--rupes,
.rms-manufacturer-card__logo--novol,
.rms-manufacturer-card__logo--sata,
.rms-manufacturer-card__logo--colad {
	background: #ed1226;
	color: #fff;
	font-style: italic;
}

.rms-manufacturer-card__logo--3m {
	background: transparent;
	color: #df1829;
	font-size: 28px;
	font-style: italic;
}

.rms-manufacturer-card__logo--rmc {
	background: #17283f;
	color: #fff;
	font-style: normal;
}

.rms-manufacturer-card__logo--finecolor {
	background: #f2f5f7;
	color: #23648c;
	font-style: normal;
}

.rms-manufacturer-card__logo--sikkens {
	padding-top: 3px;
	border-top: 4px solid #162c55;
	color: #162c55;
	font-style: normal;
}

.rms-manufacturer-card__logo--reoflex {
	color: #162c55;
	font-family: Georgia, serif;
	font-style: normal;
}

.rms-manufacturer-card__logo--mirka {
	padding: 7px 12px;
	background: #ffd400;
	color: #17283f;
	font-size: 18px;
	font-style: italic;
}

.rms-manufacturer-card__logo--hb-body {
	color: #592a9b;
	font-size: 22px;
	font-style: normal;
}

.rms-manufacturer-card__logo--hb-body::first-letter {
	color: #2caaa8;
}

.rms-manufacturer-card__logo--u-pol {
	background: #f2f5f7;
	color: #1d426e;
	font-style: normal;
}

.rms-manufacturer-card__caption {
	margin-top: 2px;
	color: #687b92;
	font-size: 10px;
	font-weight: 600;
	line-height: 1;
}

.rms-manufacturer-card__count {
	margin-top: 4px;
	color: #687b92;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
}

body.woocommerce.archive .rms-catalog-filters {
	margin: 0 0 30px;
	padding: 22px 24px 24px;
	border: 1px solid #dfe6eb;
	border-radius: 10px;
	background: #f8fafb;
}

body.woocommerce.archive .rms-catalog-manufacturer-heading {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 16px;
	margin: 0 0 12px;
}

body.woocommerce.archive .rms-catalog-manufacturer-heading .eyebrow {
	margin: 0;
	color: #ed1226;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.woocommerce.archive .rms-catalog-selected-manufacturer {
	min-width: 190px;
	max-width: 280px;
}

body.woocommerce.archive .rms-catalog-filters [hidden] {
	display: none !important;
}

body.woocommerce.archive .rms-catalog-filters__heading {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 18px;
}

body.woocommerce.archive .rms-catalog-filters__heading .eyebrow {
	margin: 0 0 6px;
	color: #ed1226;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.woocommerce.archive .rms-catalog-filters__heading h2 {
	margin: 0;
	color: #17283f;
	font-size: 22px;
	line-height: 1.2;
}

body.woocommerce.archive .rms-catalog-filters__reset {
	color: #17283f;
	font-size: 14px;
	font-weight: 700;
}

body.woocommerce.archive .rms-catalog-filters__fields {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

body.woocommerce.archive .rms-catalog-filters__field {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 6px;
	margin: 0;
	color: #17283f;
	font-size: 13px;
	font-weight: 700;
}

body.woocommerce.archive .rms-catalog-filters__field > span {
	min-height: 16px;
}

body.woocommerce.archive .rms-catalog-filters select,
body.woocommerce.archive .rms-catalog-filters input[type='text'] {
	width: 100%;
	min-width: 0;
	height: 42px;
	box-sizing: border-box;
	padding: 0 12px;
	border: 1px solid #d5dee5;
	border-radius: 6px;
	background: #fff;
	color: #17283f;
	font: inherit;
}

body.woocommerce.archive .rms-catalog-filters select:disabled,
body.woocommerce.archive .rms-catalog-filters input:disabled {
	background: #eef2f4;
	color: #8793a0;
	cursor: not-allowed;
}

body.woocommerce.archive .rms-token-filter,
body.woocommerce.archive .rms-token-filter__control {
	min-width: 0;
}

body.woocommerce.archive .rms-token-filter__control {
	display: flex;
	min-height: 42px;
	align-items: center;
	box-sizing: border-box;
	padding: 0 12px;
	border: 1px solid #d5dee5;
	border-radius: 6px;
	background: #fff;
}

body.woocommerce.archive .rms-token-filter__tokens {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}

body.woocommerce.archive .rms-token-filter__control input {
	width: 100%;
	min-width: 80px;
	border: 0;
	outline: 0;
}

body.woocommerce.archive .az-catalog-list-head {
	display: none;
}

body.woocommerce.archive .rms-main ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: stretch;
	gap: 20px;
	margin: 0;
	padding: 0;
}

body.woocommerce.archive .rms-main ul.products::before,
body.woocommerce.archive .rms-main ul.products::after {
	display: none !important;
	content: none;
}

body.woocommerce.archive .rms-main ul.products li.product {
	display: flex;
	width: 100% !important;
	min-width: 0;
	min-height: 470px;
	box-sizing: border-box;
	flex-direction: column;
	margin: 0 !important;
	padding: 14px;
	border: 1px solid #dfe6eb;
	border-radius: 9px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(23, 40, 63, .04);
}

body.woocommerce.archive .rms-main ul.products li.product > .woocommerce-loop-product__link {
	display: flex;
	width: 100%;
	min-width: 0;
	flex: 1;
	flex-direction: column;
	color: inherit;
	text-decoration: none;
}

body.woocommerce.archive .rms-main ul.products li.product > .woocommerce-loop-product__link > img {
	display: block;
	width: 100%;
	height: 220px;
	flex: 0 0 220px;
	box-sizing: border-box;
	margin: 0 0 16px;
	border-radius: 6px;
	background: #f6f8f8;
	object-fit: contain;
}

body.woocommerce.archive .rms-main ul.products li.product .woocommerce-loop-product__title {
	min-height: 48px;
	margin: 0 0 10px;
	color: #17283f;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.25;
}

body.woocommerce.archive .rms-main ul.products li.product .rms-loop-identifiers {
	margin: 0 0 10px;
	color: #718096;
	font-size: 13px;
	line-height: 1.35;
}

body.woocommerce.archive .rms-main ul.products li.product .rms-loop-identifiers__item {
	margin: 0;
}

body.woocommerce.archive .rms-main ul.products li.product .rms-loop-identifiers__item span {
	color: #17283f;
	font-weight: 700;
}

body.woocommerce.archive .rms-main ul.products li.product .rms-availability {
	display: inline-flex;
	width: fit-content;
	margin: 0 0 10px;
	padding: 0;
	border-radius: 0;
	background: transparent;
	color: #16833e;
	font-size: 13px;
	font-weight: 700;
}

body.woocommerce.archive .rms-main ul.products li.product .rms-availability::before {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 4px 7px 0 0;
	border-radius: 50%;
	background: currentColor;
	content: '';
}

body.woocommerce.archive .rms-main ul.products li.product .rms-availability--price_request {
	color: #1f4f9d;
}

body.woocommerce.archive .rms-main ul.products li.product .price {
	margin: auto 0 0;
	color: #111820;
	font-size: 22px;
	font-weight: 800;
	line-height: 1.1;
}

body.woocommerce.archive .rms-main ul.products li.product .az-loop-cart-control {
	display: flex;
	align-items: stretch;
	gap: 10px;
	width: 100%;
	margin: 16px 0 0;
}

body.woocommerce.archive .rms-main ul.products li.product .az-loop-quantity {
	display: flex;
	width: 132px;
	min-width: 132px;
	height: 44px;
	align-items: stretch;
	box-sizing: border-box;
	border: 1px solid #d5dee5;
	border-radius: 6px;
	background: #fff;
	overflow: hidden;
}

body.woocommerce.archive .rms-main ul.products li.product .rms-quantity-stepper__button {
	width: 40px;
	padding: 0;
	border: 0;
	background: #f5f7f8;
	color: #17283f;
	font-size: 20px;
	font-weight: 700;
	cursor: pointer;
}

body.woocommerce.archive .rms-main ul.products li.product .az-loop-quantity input {
	width: 52px;
	min-width: 0;
	padding: 0;
	border: 0;
	background: #fff;
	color: #17283f;
	font-size: 16px;
	font-weight: 700;
	-moz-appearance: textfield;
	appearance: textfield;
	text-align: center;
}

body.woocommerce.archive .rms-main ul.products li.product .az-loop-quantity input::-webkit-inner-spin-button,
body.woocommerce.archive .rms-main ul.products li.product .az-loop-quantity input::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

body.woocommerce.archive .rms-main ul.products li.product .az-loop-cart-button,
body.woocommerce.archive .rms-main ul.products li.product .rms-request-link {
	display: inline-flex;
	width: 100%;
	min-width: 0;
	height: 44px;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	margin: 0;
	padding: 0 14px;
	border: 0;
	border-radius: 6px;
	background: #ed1226;
	color: #fff !important;
	font-size: 14px;
	font-weight: 800;
	line-height: 1;
	text-decoration: none;
}

body.woocommerce.archive .rms-main ul.products li.product .az-loop-cart-button:hover,
body.woocommerce.archive .rms-main ul.products li.product .az-loop-cart-button:focus-visible,
body.woocommerce.archive .rms-main ul.products li.product .rms-request-link:hover,
body.woocommerce.archive .rms-main ul.products li.product .rms-request-link:focus-visible {
	background: #d90f21;
}

body.woocommerce.archive .rms-main ul.products li.product .az-loop-cart-button__icon {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 7px;
	fill: none;
	flex: 0 0 20px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
}

body.woocommerce.archive .rms-load-more {
	margin-top: 28px;
	text-align: center;
}

body.rms-catalog-is-loading {
	overflow: hidden;
}

body.rms-catalog-is-loading::after {
	position: fixed;
	z-index: 9999;
	inset: 0;
	content: '';
	background: rgba(255, 255, 255, .34);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	pointer-events: all;
}

body.woocommerce.archive.rms-catalog-is-loading .rms-load-more {
	position: relative;
	z-index: 10000;
}

body.woocommerce.archive .rms-load-more__button {
	display: inline-flex;
	min-width: 220px;
	height: 48px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	box-sizing: border-box;
	margin: 0;
	padding: 0 24px;
	border: 1px solid #ed1226;
	border-radius: 6px;
	background: #ed1226;
	color: #fff !important;
	font-size: 16px;
	font-weight: 800;
	line-height: 1;
	text-decoration: none;
	transition: background-color .2s ease, border-color .2s ease, opacity .2s ease;
}

body.woocommerce.archive .rms-load-more__button:hover,
body.woocommerce.archive .rms-load-more__button:focus-visible {
	border-color: #d90f21;
	background: #d90f21;
}

body.woocommerce.archive .rms-load-more.is-loading .rms-load-more__button {
	cursor: wait;
	opacity: .82;
}

body.woocommerce.archive .rms-load-more__spinner {
	display: none;
	width: 17px;
	height: 17px;
	box-sizing: border-box;
	border: 2px solid rgba(255, 255, 255, .45);
	border-top-color: #fff;
	border-radius: 50%;
}

body.woocommerce.archive .rms-load-more.is-loading .rms-load-more__spinner {
	display: inline-block;
	animation: rms-catalog-spin .7s linear infinite;
}

@keyframes rms-catalog-spin {
	to {
		transform: rotate(360deg);
	}
}

@media (max-width: 1100px) {
	body.woocommerce-shop .rms-catalog-landing__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.woocommerce.archive .rms-catalog-filters__fields {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.woocommerce.archive .rms-main ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 800px) {
	body.woocommerce-shop .rms-main > .rms-container > .rms-section {
		padding-top: 30px;
	}

	body.woocommerce-shop .rms-catalog-landing__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px;
	}

	body.woocommerce-shop .rms-catalog-tile {
		min-height: 190px;
		padding: 14px;
	}

	body.woocommerce-shop .rms-catalog-tile__media {
		height: 105px;
	}

	body.woocommerce-shop .rms-catalog-tile__body strong {
		font-size: 16px;
	}

	body.woocommerce.archive .rms-main > .rms-container > .rms-section {
		padding-top: 24px;
	}

	body.woocommerce.archive .rms-catalog-filters {
		padding: 18px;
	}

	body.woocommerce.archive .rms-catalog-filters__heading {
		align-items: flex-start;
		flex-direction: column;
	}

	body.woocommerce.archive .rms-category-manufacturers {
		padding: 12px;
	}

	body.woocommerce.archive .rms-category-manufacturers__heading {
		align-items: flex-start;
		flex-direction: column;
	}

	body.woocommerce.archive .rms-category-manufacturers__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rms-all-brands__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.woocommerce.archive .rms-main ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px;
	}

	body.woocommerce.archive .rms-main ul.products li.product {
		min-height: 0;
	}

	body.woocommerce.archive .rms-main ul.products li.product > .woocommerce-loop-product__link > img {
		height: 170px;
		flex-basis: 170px;
	}

	body.woocommerce.archive .rms-main ul.products li.product .woocommerce-loop-product__title {
		font-size: 15px;
	}

	body.woocommerce.archive .rms-main ul.products li.product .az-loop-cart-control {
		flex-wrap: wrap;
	}

	body.woocommerce.archive .rms-main ul.products li.product .az-loop-quantity {
		width: 100%;
	}
}

@media (max-width: 520px) {
	body.woocommerce-shop .rms-catalog-landing__grid {
		grid-template-columns: 1fr;
	}

	body.woocommerce-shop .rms-catalog-tile {
		min-height: 164px;
		flex-direction: row;
		align-items: center;
		gap: 14px;
	}

	body.woocommerce-shop .rms-catalog-tile__media {
		width: 92px;
		height: 92px;
		flex: 0 0 92px;
		margin: 0;
	}

	body.woocommerce-shop .rms-catalog-tile__body {
		padding-right: 20px;
	}

	body.woocommerce-shop .rms-catalog-tile__arrow {
		right: 14px;
		bottom: 14px;
	}

	body.woocommerce.archive .rms-catalog-filters__fields,
	body.woocommerce.archive .rms-main ul.products {
		grid-template-columns: 1fr;
	}

	body.woocommerce.archive .rms-category-manufacturers__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.rms-all-brands__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.woocommerce.archive .rms-main ul.products li.product > .woocommerce-loop-product__link > img {
		height: 210px;
		flex-basis: 210px;
	}

	body.woocommerce.archive .rms-main ul.products li.product .az-loop-quantity {
		width: 132px;
	}

	body.woocommerce.archive .rms-main ul.products li.product .az-loop-cart-control {
		flex-wrap: nowrap;
	}
}

/* Final responsive polish for search, catalog tiles, headings, and cart feedback. */
.rms-search {
	width: 100%;
}

.rms-search input[type='search'] {
	min-width: 0;
	flex: 1 1 auto;
}

.rms-search button {
	flex: 0 0 110px;
}

body.woocommerce-shop .rms-catalog-landing__intro h1,
body.woocommerce.archive .woocommerce-products-header__title,
.rms-all-brands__intro h1 {
	font-weight: 700;
	letter-spacing: -.025em;
}

body.woocommerce.archive .woocommerce-products-header__title {
	font-size: clamp(30px, 3.2vw, 42px);
}

.rms-all-brands__intro h1 {
	font-size: clamp(30px, 3.2vw, 42px);
}

body.woocommerce.archive .rms-main ul.products li.product .added_to_cart.wc-forward,
.single-product form.cart .added_to_cart.wc-forward {
	display: none !important;
}

.rms-cart-toast {
	position: fixed;
	right: 24px;
	bottom: 24px;
	z-index: 10010;
	display: flex;
	max-width: min(430px, calc(100vw - 32px));
	align-items: center;
	gap: 18px;
	box-sizing: border-box;
	padding: 14px 16px 14px 18px;
	border: 1px solid #d8e2e6;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(23, 40, 63, .16);
	opacity: 0;
	transform: translateY(12px);
	pointer-events: none;
	transition: opacity .2s ease, transform .2s ease;
}

.rms-cart-toast.is-visible {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}

.rms-cart-toast__message {
	color: #17283f;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
}

.rms-cart-toast__link {
	flex: 0 0 auto;
	color: #ed1226;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}

@media (max-width: 800px) {
	.rms-search {
		max-width: none;
		height: 52px;
	}

	.rms-search button {
		width: 96px;
		flex-basis: 96px;
		height: 48px;
		align-self: center;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		line-height: 1;
	}

	body.woocommerce-shop .rms-catalog-landing__intro h1,
	body.woocommerce.archive .woocommerce-products-header__title,
	.rms-all-brands__intro h1 {
		font-size: clamp(30px, 8vw, 40px);
		line-height: 1.12;
	}

	body.woocommerce-shop .rms-catalog-tile {
		min-height: 200px;
		padding: 16px;
	}

	body.woocommerce-shop .rms-catalog-tile__media {
		height: 118px;
	}

	body.woocommerce-shop .rms-catalog-tile__body strong {
		font-size: 18px;
		line-height: 1.18;
	}
}

@media (max-width: 520px) {
	.rms-search button {
		width: 96px;
		flex-basis: 96px;
	}

	body.woocommerce-shop .rms-catalog-tile {
		min-height: 224px;
		flex-direction: column;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 14px;
	}

	body.woocommerce-shop .rms-catalog-tile__media {
		width: 100%;
		height: 132px;
		flex: 0 0 132px;
		margin: 0;
	}

	body.woocommerce-shop .rms-catalog-tile__body {
		width: 100%;
		align-items: center;
		padding-right: 0;
		text-align: center;
	}

	body.woocommerce-shop .rms-catalog-tile__arrow {
		right: 14px;
		bottom: 14px;
	}

	body.woocommerce-shop .rms-catalog-tile__body strong {
		font-size: 17px;
		line-height: 1.2;
	}

	.rms-cart-toast {
		right: 16px;
		bottom: 16px;
		left: 16px;
		max-width: none;
		justify-content: space-between;
		gap: 12px;
	}
}

/* Catalog menu polish overrides. */
@media (min-width: 801px) {
	.rms-catalog-menu {
		padding: 14px 0 18px;
		border-top-color: #e1e5e7;
		background: #f3f5f6;
	}

	.rms-catalog-menu__inner {
		grid-template-columns: 300px minmax(0, 1fr);
		gap: 14px;
		min-height: 0;
	}

	.rms-catalog-menu__sidebar,
	.rms-catalog-menu__panels {
		border: 1px solid #e1e5e7;
		border-radius: 14px;
		background: #fff;
		box-shadow: 0 4px 16px rgba(31, 41, 51, .05);
	}

	.rms-catalog-menu__sidebar {
		padding: 8px;
	}

	.rms-catalog-menu__category {
		min-height: 54px;
		padding: 11px 13px;
		border-left-color: transparent;
		border-radius: 9px;
	}

	.rms-catalog-menu__category:hover:not(.is-active),
	.rms-catalog-menu__category:focus-visible:not(.is-active) {
		border-left-color: transparent;
		background: #f6f8f9;
		color: #1f2933;
	}

	.rms-catalog-menu__category.is-active {
		border-left-color: #df1829;
		background: #fff3f4;
		color: #df1829;
	}

	.rms-catalog-menu__category.is-active svg {
		stroke: #df1829;
	}

	.rms-catalog-menu__panels {
		max-height: min(570px, calc(100vh - 170px));
	}

	.rms-catalog-menu__panel {
		min-height: 0;
		padding: 27px 30px 30px;
	}

	.rms-catalog-menu__panel-head {
		margin-bottom: 20px;
		padding-bottom: 16px;
	}

	.rms-catalog-menu__group {
		padding-bottom: 14px;
	}

	.rms-catalog-menu__group-title {
		min-height: 43px;
		padding: 0 8px;
		border-bottom-color: #e3e7e9;
		border-radius: 8px 8px 0 0;
		transition: background-color .18s ease, color .18s ease;
	}

	.rms-catalog-menu__group-title:hover,
	.rms-catalog-menu__group-title:focus-visible {
		background: #f6f8f9;
		color: #df1829;
	}

	.rms-catalog-menu__group li a {
		padding: 6px 8px;
		border-radius: 6px;
		transition: background-color .18s ease, color .18s ease;
	}

	.rms-catalog-menu__group li a:hover,
	.rms-catalog-menu__group li a:focus-visible {
		background: #fff3f4;
		color: #df1829;
	}
}

@media (min-width: 1400px) {
	.rms-catalog-menu__inner {
		grid-template-columns: 320px minmax(0, 1fr);
	}

	.rms-catalog-menu__panel {
		padding-right: 38px;
		padding-left: 38px;
	}
}

@media (max-width: 800px) {
	.rms-catalog-menu {
		padding: 0;
		background: #fff;
	}

	.rms-catalog-menu__sidebar,
	.rms-catalog-menu__panels {
		border: 0;
		border-radius: 0;
		box-shadow: none;
	}
}
