.crfw-redeem {
	--crfw-rewards-accent: var(--crfw-site-accent, #b63f3b);
	--crfw-rewards-accent-hover: #9f3632;
	box-sizing: border-box;
	width: 100%;
	margin: 1.25rem 0;
	padding: 1.15rem 1.25rem;
	border: 1px solid #efd3cf;
	border-radius: 18px;
	background: #fffaf8;
	box-shadow: 0 12px 30px rgba(77, 45, 39, .08);
	color: #303030;
	font-family: inherit;
	line-height: 1.4;
	text-align: left;
}

.crfw-redeem *,
.crfw-redeem *::before,
.crfw-redeem *::after {
	box-sizing: border-box;
}

.crfw-redeem [hidden] {
	display: none !important;
}

.crfw-redeem--cart {
	clear: both;
}

.crfw-redeem__topline {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	align-items: center;
}

.crfw-redeem__heading {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: .7rem;
}

.crfw-redeem__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 2.45rem;
	width: 2.45rem;
	height: 2.45rem;
	border: 1px solid #efc9c4;
	border-radius: 50%;
	background: #fff3f0;
	color: #e5b62f;
	font-size: 1.05rem;
	line-height: 1;
}

.crfw-redeem__title {
	color: #303030;
	font-size: clamp(1.05rem, 2vw, 1.28rem);
	font-weight: 800;
	line-height: 1.2;
}

.crfw-redeem__balance {
	display: flex;
	min-width: 9.5rem;
	padding: .55rem .85rem;
	border: 1px solid #efdad6;
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 5px 14px rgba(77, 45, 39, .05);
	flex-direction: column;
	align-items: flex-end;
}

.crfw-redeem__balance-label {
	color: #766e6b;
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1.2;
	text-transform: uppercase;
}

.crfw-redeem__balance-value {
	color: var(--crfw-rewards-accent);
	font-size: 1.45rem;
	font-weight: 800;
	line-height: 1.15;
}

.crfw-redeem__balance-money {
	display: block;
	margin-top: .18rem;
	color: #766e6b;
	font-size: .74rem;
	font-weight: 600;
	line-height: 1.25;
	white-space: nowrap;
}

.crfw-redeem__guidance {
	margin: .75rem 0 1rem;
	color: #6f6966;
	font-size: .9rem;
}

.crfw-redeem__guidance:last-child {
	margin-bottom: 0;
}

.crfw-redeem__guidance--minimum-order {
	display: flex;
	margin: 1rem 0 0;
	padding: .9rem 1rem;
	border: 1px solid #efc9c4;
	border-radius: 14px;
	background: linear-gradient(135deg, #fff4f0 0%, #fffaf7 100%);
	box-shadow: 0 7px 18px rgba(77, 45, 39, .06);
	color: #653d38;
	font-size: .92rem;
	font-weight: 700;
	line-height: 1.45;
	align-items: center;
	gap: .75rem;
}

.crfw-redeem__guidance--minimum-order::before {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 2rem;
	width: 2rem;
	height: 2rem;
	border: 1px solid #edccc4;
	border-radius: 50%;
	background: #fff;
	color: #dfad26;
	content: "\2605";
	font-size: .9rem;
	line-height: 1;
}

.crfw-activity-order-link {
	font-weight: 700;
	overflow-wrap: anywhere;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.crfw-redeem__entry {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	align-items: flex-end;
}

.crfw-redeem .crfw-redeem__field {
	display: flex;
	flex: 0 1 12rem;
	min-width: 10rem;
	margin: 0;
	padding: 0;
	gap: .4rem;
	flex-direction: column;
}

.crfw-redeem .crfw-redeem__field > label {
	display: block;
	width: auto;
	margin: 0;
	padding: 0;
	color: #55504e;
	font-size: .76rem;
	font-weight: 700;
	line-height: 1.2;
}

.crfw-redeem .crfw-redeem__field input[type="number"] {
	display: block;
	width: 12rem;
	max-width: 100%;
	height: 3.25rem;
	min-height: 3.25rem;
	margin: 0;
	padding: .65rem .75rem;
	border: 1px solid #ded2ce;
	border-radius: 12px;
	background: #fff;
	box-shadow: none;
	color: #303030;
	font: inherit;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

.crfw-redeem .crfw-redeem__field input[type="number"]:focus {
	border-color: var(--crfw-rewards-accent);
	box-shadow: 0 0 0 3px rgba(182, 63, 59, .14);
	outline: 0;
}

.crfw-redeem .crfw-redeem__button.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 3.25rem;
	min-height: 3.25rem;
	margin: 0;
	padding: .72rem 1.1rem;
	border: 1px solid transparent;
	border-radius: 999px;
	box-shadow: none;
	font: inherit;
	font-size: .82rem;
	font-weight: 800;
	letter-spacing: .01em;
	line-height: 1.15;
	text-decoration: none;
	text-transform: none;
	transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
	white-space: nowrap;
}

.crfw-redeem .crfw-redeem__button--primary.button {
	border-color: var(--crfw-rewards-accent);
	background: var(--crfw-rewards-accent);
	color: #fff;
}

.crfw-redeem .crfw-redeem__button--primary.button:hover,
.crfw-redeem .crfw-redeem__button--primary.button:focus-visible {
	border-color: var(--crfw-rewards-accent-hover);
	background: var(--crfw-rewards-accent-hover);
	color: #fff;
}

.crfw-redeem .crfw-redeem__button--secondary.button {
	border-color: var(--crfw-rewards-accent);
	background: #fff;
	color: var(--crfw-rewards-accent);
}

.crfw-redeem .crfw-redeem__button--secondary.button:hover,
.crfw-redeem .crfw-redeem__button--secondary.button:focus-visible {
	background: #fff0ed;
	color: var(--crfw-rewards-accent-hover);
}

.crfw-redeem .crfw-redeem__button--remove.button {
	border-color: #e5d8d4;
	background: #f7f1ef;
	color: #5f5552;
}

.crfw-redeem .crfw-redeem__button--remove.button:hover,
.crfw-redeem .crfw-redeem__button--remove.button:focus-visible {
	border-color: #d5c4bf;
	background: #eee4e1;
	color: #403936;
}

.crfw-redeem .crfw-redeem__button.button:focus-visible {
	box-shadow: 0 0 0 3px rgba(182, 63, 59, .18);
	outline: 0;
}

.crfw-redeem .crfw-redeem__button.button:disabled,
.crfw-redeem .crfw-redeem__field input[type="number"]:disabled {
	cursor: not-allowed;
	opacity: .5;
	transform: none;
}

.crfw-redeem__applied {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .8rem;
}

.crfw-redeem__applied-message {
	display: flex;
	min-height: 3.75rem;
	padding: .8rem 1rem;
	border: 1px solid #e9c5bf;
	border-radius: 14px;
	background: #fff2ef;
	box-shadow: 0 7px 18px rgba(77, 45, 39, .07);
	color: #3f3734;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.3;
	flex: 1 1 20rem;
	align-items: center;
	gap: .7rem;
}

.crfw-redeem__applied-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 2rem;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background: var(--crfw-rewards-accent);
	color: #fff;
	font-size: 1rem;
	font-weight: 800;
	line-height: 1;
}

.crfw-redeem__applied-message strong {
	color: #3f3734;
	font: inherit;
	font-weight: 800;
}

.crfw-redeem__status,
.crfw-redeem__error {
	margin: .75rem 0 0;
	font-size: .88rem;
	font-weight: 600;
}

.crfw-redeem__status:empty {
	display: none;
}

.crfw-redeem__error,
.crfw-negative {
	color: #b32d2e;
}

.crfw-guest-rewards__estimate {
	min-width: 11.5rem;
}

.crfw-guest-rewards__benefits {
	display: grid;
	margin-top: 1rem;
	gap: .7rem;
}

.crfw-guest-rewards__benefit {
	display: flex;
	min-width: 0;
	padding: .85rem .95rem;
	border: 1px solid #efded9;
	border-radius: 14px;
	background: rgba(255, 255, 255, .88);
	box-shadow: 0 5px 14px rgba(77, 45, 39, .045);
	align-items: flex-start;
	gap: .75rem;
}

.crfw-guest-rewards__benefit--bonus {
	border-color: #ead6b3;
	background: linear-gradient(135deg, #fff9e9 0%, #fffdf8 100%);
}

.crfw-guest-rewards__benefit-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 2rem;
	width: 2rem;
	height: 2rem;
	border: 1px solid #efc9c4;
	border-radius: 50%;
	background: #fff5f2;
	color: #dfad26;
	font-size: .9rem;
	font-weight: 900;
	line-height: 1;
}

.crfw-guest-rewards__benefit--bonus .crfw-guest-rewards__benefit-icon {
	border-color: #e6cf9e;
	background: #fff;
	color: #a87400;
}

.crfw-guest-rewards__benefit > div {
	min-width: 0;
}

.crfw-guest-rewards__benefit strong {
	display: block;
	color: #3f3734;
	font-size: .95rem;
	font-weight: 800;
	line-height: 1.35;
}

.crfw-guest-rewards__benefit p {
	margin: .28rem 0 0;
	color: #6f6966;
	font-size: .82rem;
	line-height: 1.45;
}

.crfw-guest-account {
	margin-top: .9rem;
	padding-top: .9rem;
	border-top: 1px solid #eeded9;
}

.crfw-guest-account[hidden],
.crfw-guest-account__body[hidden] {
	display: none !important;
}

.crfw-redeem .crfw-guest-account__toggle.button {
	height: auto;
	min-height: 3.15rem;
	white-space: normal;
}

.crfw-guest-account__toggle-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 1.45rem;
	width: 1.45rem;
	height: 1.45rem;
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: .7rem;
	opacity: .45;
}

.crfw-redeem .crfw-guest-account__toggle.is-active.button {
	border-color: var(--crfw-rewards-accent);
	background: #fff0ed;
	color: var(--crfw-rewards-accent-hover);
}

.crfw-guest-account__toggle.is-active .crfw-guest-account__toggle-icon {
	background: var(--crfw-rewards-accent);
	color: #fff;
	opacity: 1;
}

.crfw-guest-account__body {
	margin-top: .8rem;
	padding: 1rem;
	border: 1px solid #e9d8d3;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 7px 18px rgba(77, 45, 39, .05);
}

.crfw-guest-account__heading strong {
	display: block;
	color: #303030;
	font-size: 1rem;
	font-weight: 800;
}

.crfw-guest-account__heading p,
.crfw-guest-account__blocks-help {
	margin: .25rem 0 .8rem;
	color: #6f6966;
	font-size: .82rem;
	line-height: 1.45;
}

.crfw-guest-account__fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	gap: .75rem;
}

.crfw-redeem .crfw-guest-account__fields .form-row {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

.crfw-redeem .crfw-guest-account__fields label {
	display: block;
	margin: 0 0 .35rem;
	color: #55504e;
	font-size: .76rem;
	font-weight: 700;
}

.crfw-redeem .crfw-guest-account__fields input.input-text {
	display: block;
	width: 100%;
	height: 3rem;
	min-height: 3rem;
	margin: 0;
	padding: .65rem .75rem;
	border: 1px solid #ded2ce;
	border-radius: 11px;
	background: #fff;
	box-shadow: none;
	color: #303030;
	font: inherit;
}

.crfw-redeem .crfw-guest-account__fields input.input-text:focus {
	border-color: var(--crfw-rewards-accent);
	box-shadow: 0 0 0 3px rgba(182, 63, 59, .14);
	outline: 0;
}

.crfw-guest-account__privacy {
	margin-top: .75rem;
	color: #766e6b;
	font-size: .75rem;
	line-height: 1.45;
}

.crfw-guest-account__privacy p {
	margin: 0;
}

.crfw-account-field--managed {
	display: none !important;
}

.crfw-guest-account--blocks {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .75rem;
}

.crfw-guest-account--blocks .crfw-guest-account__blocks-help {
	flex: 1 1 18rem;
	margin: 0;
}

.crfw-positive {
	color: #008a20;
}

.crfw-account-summary {
	display: grid;
	box-sizing: border-box;
	width: 100%;
	grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
	gap: .75rem;
	margin-bottom: 2rem;
	padding: 1.25rem;
	border: 1px solid #ead8d1;
	border-radius: 18px;
	background: linear-gradient(135deg, #fffaf7 0%, #fff 72%);
	box-shadow: 0 10px 28px rgba(71, 47, 38, .07);
}

.crfw-account-summary > div {
	box-sizing: border-box;
	min-width: 0;
	padding: 1rem;
	border: 1px solid #efe5e1;
	border-radius: 12px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 5px 14px rgba(77, 45, 39, .05);
}

.crfw-account-summary > div > span,
.crfw-account-summary > div > strong {
	display: block;
}

.crfw-account-summary > div > span {
	color: #6f635e;
	line-height: 1.35;
}

.crfw-account-summary > div > strong {
	font-size: 1.4rem;
	margin-top: .25rem;
	overflow-wrap: anywhere;
}

.crfw-account-summary small {
	display: block;
	margin-top: .5rem;
	color: #646970;
	font-size: .82rem;
	line-height: 1.4;
	overflow-wrap: anywhere;
}

.crfw-expiry-summary {
	--crfw-expiry-accent: var(--crfw-site-accent, #b63f3b);
	box-sizing: border-box;
	margin: 0 0 2rem;
	padding: 1.25rem;
	border: 1px solid #ead8d1;
	border-radius: 18px;
	background: linear-gradient(135deg, #fffaf7 0%, #fff 72%);
	box-shadow: 0 10px 28px rgba(71, 47, 38, .07);
}

.crfw-expiry-summary__heading {
	display: flex;
	margin-bottom: 1rem;
	align-items: flex-start;
	gap: .85rem;
}

.crfw-expiry-summary__icon {
	display: inline-flex;
	width: 2.75rem;
	height: 2.75rem;
	border: 1px solid #ead8d1;
	border-radius: 50%;
	background: #fff;
	color: var(--crfw-expiry-accent);
	font-size: 1.2rem;
	line-height: 1;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

.crfw-expiry-summary__heading h2 {
	margin: 0 0 .25rem;
	font-size: clamp(1.2rem, 2vw, 1.5rem);
}

.crfw-expiry-summary__heading p {
	margin: 0;
	color: #6f635e;
}

.crfw-expiry-summary__list {
	display: grid;
	margin: 0;
	padding: 0;
	gap: .65rem;
	list-style: none;
}

.crfw-expiry-summary__item {
	display: grid;
	box-sizing: border-box;
	grid-template-columns: minmax(8rem, 1fr) minmax(11rem, auto) minmax(8rem, auto);
	padding: .9rem 1rem;
	border: 1px solid #efe5e1;
	border-radius: 12px;
	background: rgba(255, 255, 255, .92);
	align-items: center;
	gap: .75rem 1rem;
}

.crfw-expiry-summary__points {
	color: var(--crfw-expiry-accent);
	font-size: 1.08rem;
}

.crfw-expiry-summary__date time {
	font-weight: 700;
}

.crfw-expiry-summary__countdown {
	padding: .35rem .65rem;
	border-radius: 999px;
	background: #f9e9e4;
	color: #7f332f;
	font-weight: 700;
	text-align: center;
}

@media (max-width: 640px) {
	.crfw-account-summary {
		grid-template-columns: 1fr;
		padding: .9rem;
	}

	.crfw-expiry-summary__item {
		grid-template-columns: 1fr;
		gap: .3rem;
	}

	.crfw-expiry-summary__countdown {
		justify-self: start;
	}
}

.crfw-account-pagination {
	--crfw-pagination-accent: var(--crfw-site-accent, #b63f3b);
	margin: 1.5rem 0 0;
}

.crfw-expiry-pagination {
	margin-top: 1rem;
}

.crfw-account-pagination ul.page-numbers {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: .45rem;
	list-style: none;
}

.crfw-account-pagination ul.page-numbers > li {
	float: none;
	margin: 0;
	padding: 0;
	border: 0;
}

.crfw-account-pagination a.page-numbers,
.crfw-account-pagination span.page-numbers {
	display: inline-flex;
	box-sizing: border-box;
	min-width: 2.75rem;
	height: 2.75rem;
	margin: 0;
	padding: 0 .75rem;
	border: 1px solid #e2d8d4;
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 4px 12px rgba(54, 39, 32, .06);
	color: #4b4542;
	font: inherit;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	align-items: center;
	justify-content: center;
}

.crfw-account-pagination a.page-numbers:hover,
.crfw-account-pagination a.page-numbers:focus-visible {
	border-color: var(--crfw-pagination-accent);
	color: var(--crfw-pagination-accent);
	outline: 0;
}

.crfw-account-pagination a.page-numbers:focus-visible {
	box-shadow: 0 0 0 3px rgba(182, 63, 59, .18);
}

.crfw-account-pagination span.page-numbers.current {
	border-color: var(--crfw-pagination-accent);
	background: var(--crfw-pagination-accent);
	box-shadow: 0 7px 18px rgba(119, 51, 47, .2);
	color: #fff;
}

.crfw-account-pagination span.page-numbers.dots {
	min-width: 1.5rem;
	padding: 0;
	border-color: transparent;
	background: transparent;
	box-shadow: none;
}

.crfw-account-pagination .prev,
.crfw-account-pagination .next {
	min-width: auto;
}

.crfw-order-rewards dl {
	display: grid;
	grid-template-columns: minmax(10rem, auto) 1fr;
	gap: .35rem 1rem;
}

.crfw-order-rewards dd {
	margin: 0;
}

.crfw-product-points {
	--crfw-product-accent: var(--crfw-site-accent, #b63f3b);
	display: flex;
	align-items: center;
	gap: .85rem;
	box-sizing: border-box;
	width: 100%;
	max-width: var(--crfw-product-card-max-width, 100%);
	margin: 1.25rem 0;
	padding: .9rem 1rem;
	border: 1px solid #efd3cf;
	border-radius: 16px;
	background: #fffaf8;
	box-shadow: 0 12px 30px rgba(77, 45, 39, .08);
	color: #303030;
	font-family: inherit;
	line-height: 1.35;
}

.crfw-product-points__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 2.65rem;
	width: 2.65rem;
	height: 2.65rem;
	border: 1px solid #efc9c4;
	border-radius: 50%;
	background: #fff3f0;
	color: #e5b62f;
	font-size: 1.15rem;
	line-height: 1;
}

.crfw-product-points__body {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: .12rem;
}

.crfw-product-points__eyebrow {
	color: #766e6b;
	font-size: .7rem;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.2;
	text-transform: uppercase;
}

.crfw-product-points__message {
	color: #303030;
	font-size: 1rem;
	font-weight: 600;
}

.crfw-product-points__value {
	color: var(--crfw-product-accent);
	font-size: 1.08em;
	font-weight: 800;
}

.crfw-product-points__note {
	color: #77706d;
	font-size: .76rem;
	font-weight: 400;
}

.crfw-product-points__note:empty {
	display: none;
}

.crfw-product-points__note > :first-child {
	margin-top: 0;
}

.crfw-product-points__note > :last-child {
	margin-bottom: 0;
}

.crfw-product-points__note p {
	margin: .3em 0;
}

.crfw-product-points__note ul,
.crfw-product-points__note ol {
	margin: .35em 0 .35em 1.25em;
	padding: 0;
}

.crfw-product-points__validity {
	margin-top: .18rem;
	color: #817a77;
	font-size: .72rem;
	font-weight: 400;
}

.crfw-product-points--rule-applied .crfw-product-points__note {
	margin-top: .35rem;
	padding: .48rem .62rem;
	border-left: 3px solid var(--crfw-product-accent);
	border-radius: 0 8px 8px 0;
	background: #fff1ed;
	color: #5b403b;
	font-size: .82rem;
	font-weight: 600;
}

.crfw-product-points--guest {
	align-items: flex-start;
}

.crfw-product-points--guest .crfw-product-points__body {
	width: 100%;
}

.crfw-product-points--guest .crfw-product-points__validity {
	order: 1;
}

.crfw-product-points__guest-details {
	display: grid;
	order: 2;
	gap: .55rem;
	margin-top: .65rem;
	padding-top: .7rem;
	border-top: 1px solid #f0dcd8;
}

.crfw-product-points__guest-prompt {
	margin: 0;
}

.crfw-product-points__guest-prompt {
	color: #493936;
	font-size: .86rem;
	font-weight: 700;
}

.crfw-product-points__account-bonus {
	display: flex;
	align-items: center;
	gap: .55rem;
	padding: .58rem .68rem;
	border: 1px solid #efd3cf;
	border-radius: 11px;
	background: #fff3ef;
	color: #493936;
}

.crfw-product-points__account-bonus-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 1.8rem;
	width: 1.8rem;
	height: 1.8rem;
	border-radius: 50%;
	background: #fff;
	font-size: .9rem;
}

.crfw-product-points__account-bonus > span:last-child {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: .12rem;
}

.crfw-product-points__account-bonus strong {
	font-size: .8rem;
	line-height: 1.35;
}

.crfw-product-points__account-bonus small {
	color: #756c69;
	font-size: .7rem;
	line-height: 1.35;
}

.crfw-product-points .crfw-product-points__account-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: start;
	min-height: 2.25rem;
	padding: .55rem .9rem;
	border: 1px solid var(--crfw-product-accent);
	border-radius: 999px;
	background: var(--crfw-product-accent);
	box-shadow: none;
	color: #fff;
	font-size: .76rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
}

.crfw-product-points .crfw-product-points__account-button:hover,
.crfw-product-points .crfw-product-points__account-button:focus-visible {
	border-color: #90332f;
	background: #90332f;
	color: #fff;
}

.crfw-product-points .crfw-product-points__account-button:focus-visible {
	outline: 3px solid rgba(182, 63, 59, .2);
	outline-offset: 2px;
}

.crfw-product-points--waiting .crfw-product-points__message {
	color: #6f6966;
	font-weight: 500;
}

.crfw-review-bonus-notice {
	--crfw-review-accent: var(--crfw-site-accent, #b63f3b);
	display: flex;
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 1.15rem;
	padding: .85rem 1rem;
	border: 1px solid #efd3cf;
	border-radius: 14px;
	background: linear-gradient(135deg, #fff4f0 0%, #fffaf8 100%);
	box-shadow: 0 8px 22px rgba(77, 45, 39, .07);
	color: #303030;
	font-family: inherit;
	line-height: 1.4;
	align-items: center;
	gap: .75rem;
}

.crfw-review-bonus-notice__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 2.25rem;
	width: 2.25rem;
	height: 2.25rem;
	border: 1px solid #efc9c4;
	border-radius: 50%;
	background: #fff;
	color: #dfad26;
	font-size: 1rem;
	line-height: 1;
}

.crfw-review-bonus-notice__content {
	display: flex;
	min-width: 0;
	color: #6f6966;
	font-size: .88rem;
	flex-direction: column;
	gap: .08rem;
}

.crfw-review-bonus-notice__content strong {
	color: var(--crfw-review-accent);
	font-size: .94rem;
	font-weight: 800;
}

.crfw-review-bonus-notice__content span {
	display: block;
}

@media (max-width: 720px) {
	.crfw-redeem {
		padding: 1rem;
		border-radius: 15px;
	}

	.crfw-redeem__topline {
		align-items: stretch;
		flex-direction: column;
	}

	.crfw-redeem__balance {
		min-width: 0;
		width: 100%;
		align-items: flex-start;
	}

	.crfw-guest-rewards__estimate {
		min-width: 0;
	}

	.crfw-redeem__entry,
	.crfw-redeem__applied {
		align-items: stretch;
		flex-direction: column;
	}

	.crfw-redeem .crfw-redeem__field,
	.crfw-redeem .crfw-redeem__field input[type="number"],
	.crfw-redeem .crfw-redeem__button.button,
	.crfw-redeem__applied-message {
		width: 100%;
	}

	.crfw-redeem .crfw-redeem__field {
		flex-basis: auto;
	}

	.crfw-redeem__applied-message {
		flex: none;
	}

	.crfw-guest-rewards__benefit {
		padding: .8rem;
	}

	.crfw-guest-account__fields {
		grid-template-columns: 1fr;
	}

	.crfw-redeem .crfw-guest-account__toggle.button,
	.crfw-guest-account--blocks .crfw-redeem__button.button {
		width: 100%;
	}

	.crfw-product-points {
		align-items: flex-start;
		padding: .8rem .85rem;
		border-radius: 14px;
	}

	.crfw-product-points__icon {
		flex-basis: 2.35rem;
		width: 2.35rem;
		height: 2.35rem;
	}

	.crfw-product-points .crfw-product-points__account-button {
		justify-self: stretch;
		width: 100%;
	}

	.crfw-review-bonus-notice {
		padding: .75rem .8rem;
		align-items: flex-start;
	}
}

/* Loyalty-tier badges, account summary and promotion dialog. */
.crfw-tier-badge,
.crfw-tier-card,
.crfw-tier-modal {
	--crfw-tier-accent: #8c4e2f;
	--crfw-tier-border: #bd7952;
	--crfw-tier-soft: #f8e9df;
	--crfw-tier-ink: #5e2e1a;
	--crfw-tier-contrast: #fff;
}

.crfw-tier-badge--bronze,
.crfw-tier-card--bronze,
.crfw-tier-modal--bronze {
	--crfw-tier-accent: #8c4e2f;
	--crfw-tier-border: #bd7952;
	--crfw-tier-soft: #f8e9df;
	--crfw-tier-ink: #5e2e1a;
}

.crfw-tier-badge--silver,
.crfw-tier-card--silver,
.crfw-tier-modal--silver {
	--crfw-tier-accent: #626b75;
	--crfw-tier-border: #969fa8;
	--crfw-tier-soft: #eef1f4;
	--crfw-tier-ink: #343c44;
}

.crfw-tier-badge--gold,
.crfw-tier-card--gold,
.crfw-tier-modal--gold {
	--crfw-tier-accent: #9a6d00;
	--crfw-tier-border: #d2a52d;
	--crfw-tier-soft: #fff4cf;
	--crfw-tier-ink: #624500;
}

.crfw-tier-badge {
	display: inline-flex;
	box-sizing: border-box;
	min-height: 2rem;
	margin: 0;
	padding: .3rem .7rem .3rem .35rem;
	border: 1px solid var(--crfw-tier-border);
	border-radius: 999px;
	background: var(--crfw-tier-soft);
	box-shadow: 0 4px 12px rgba(54, 39, 32, .08);
	color: var(--crfw-tier-ink);
	font: inherit;
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .025em;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
	vertical-align: middle;
	align-items: center;
	gap: .42rem;
}

a.crfw-tier-badge:hover {
	border-color: var(--crfw-tier-accent);
	box-shadow: 0 6px 16px rgba(54, 39, 32, .13);
	color: var(--crfw-tier-ink);
	text-decoration: none;
	transform: translateY(-1px);
}

.crfw-tier-badge:focus-visible {
	box-shadow: 0 0 0 3px rgba(96, 84, 76, .28);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--crfw-tier-border) 38%, transparent);
	outline: 2px solid transparent;
}

.crfw-tier-badge__icon {
	display: inline-flex;
	box-sizing: border-box;
	width: 1.25rem;
	height: 1.25rem;
	border: 1px solid var(--crfw-tier-border);
	border-radius: 50%;
	background: var(--crfw-tier-accent);
	color: var(--crfw-tier-contrast);
	font-size: .7rem;
	line-height: 1;
	align-items: center;
	justify-content: center;
}

.crfw-tier-badge__label {
	display: inline-block;
}

/* Compact tier line below the WoodMart desktop-header account name. The
 * surrounding account link remains the only link, avoiding nested anchors. */
header .wd-header-my-account .crfw-header-tier-badge {
	display: block;
	width: max-content;
	margin-top: 2px;
	line-height: 1;
	pointer-events: none;
}

header .wd-header-my-account .crfw-header-tier-badge .crfw-tier-badge {
	min-height: 0;
	padding: .15rem .4rem .15rem .2rem;
	border-width: 1px;
	box-shadow: none;
	font-size: .56rem;
	letter-spacing: .04em;
	line-height: 1;
	white-space: nowrap;
	gap: .24rem;
}

header .wd-header-my-account .crfw-header-tier-badge .crfw-tier-badge__icon {
	width: .82rem;
	height: .82rem;
	font-size: .43rem;
}

.crfw-tier-card {
	display: flex;
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 1.5rem;
	padding: 1.15rem 1.25rem;
	border: 1px solid var(--crfw-tier-border);
	border: 1px solid color-mix(in srgb, var(--crfw-tier-border) 48%, #fff);
	border-radius: 18px;
	background: linear-gradient(135deg, #fff 0%, var(--crfw-tier-soft) 100%);
	box-shadow: 0 12px 30px rgba(77, 45, 39, .08);
	color: #303030;
	font-family: inherit;
	line-height: 1.4;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
}

.crfw-tier-card__content {
	min-width: 0;
	flex: 1 1 auto;
}

.crfw-tier-card__eyebrow {
	display: block;
	margin: 0 0 .3rem;
	color: var(--crfw-tier-accent);
	font-size: .7rem;
	font-weight: 800;
	letter-spacing: .08em;
	line-height: 1.2;
	text-transform: uppercase;
}

.crfw-tier-card__title {
	margin: 0;
	color: #303030;
	font-size: clamp(1.15rem, 2.4vw, 1.45rem);
	font-weight: 800;
	line-height: 1.2;
}

.crfw-tier-card__description {
	margin: .45rem 0 0;
	color: #625c59;
	font-size: .9rem;
}

.crfw-tier-card__benefit {
	display: inline-flex;
	flex: 0 0 auto;
	min-height: 2.7rem;
	margin: .75rem 0 0;
	padding: .55rem .85rem;
	border: 1px solid var(--crfw-tier-border);
	border-radius: 13px;
	background: #fff;
	box-shadow: 0 5px 14px rgba(77, 45, 39, .06);
	color: var(--crfw-tier-ink);
	font-size: .84rem;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	align-items: center;
	justify-content: center;
}

.crfw-tier-card__progress {
	box-sizing: border-box;
	width: 100%;
	max-width: 46rem;
	margin: .9rem 0 0;
	padding: .8rem .9rem;
	border: 1px solid var(--crfw-tier-border);
	border: 1px solid color-mix(in srgb, var(--crfw-tier-border) 42%, #fff);
	border-radius: 14px;
	background: rgba(255, 255, 255, .72);
	box-shadow: 0 5px 14px rgba(77, 45, 39, .05);
}

.crfw-tier-progress__heading,
.crfw-tier-progress__thresholds {
	display: flex;
	min-width: 0;
	align-items: baseline;
	justify-content: space-between;
	gap: .75rem;
}

.crfw-tier-progress__heading {
	color: #393431;
	font-size: .85rem;
	line-height: 1.3;
	flex-wrap: wrap;
}

.crfw-tier-progress__heading strong {
	min-width: 0;
	color: var(--crfw-tier-ink);
	font-weight: 800;
	overflow-wrap: anywhere;
}

.crfw-tier-progress__heading span {
	color: var(--crfw-tier-accent);
	font-weight: 800;
	white-space: nowrap;
}

.crfw-tier-progress__track {
	box-sizing: border-box;
	width: 100%;
	height: .72rem;
	margin: .55rem 0 .45rem;
	overflow: hidden;
	border: 1px solid var(--crfw-tier-border);
	border: 1px solid color-mix(in srgb, var(--crfw-tier-border) 52%, #fff);
	border-radius: 999px;
	background: var(--crfw-tier-soft);
	background: color-mix(in srgb, var(--crfw-tier-soft) 72%, #e9e5e2);
	box-shadow: inset 0 1px 3px rgba(77, 45, 39, .12);
}

.crfw-tier-progress__fill {
	display: block;
	height: 100%;
	min-width: 0;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--crfw-tier-border), var(--crfw-tier-accent));
	box-shadow: 0 0 10px rgba(143, 96, 66, .24);
	box-shadow: 0 0 10px color-mix(in srgb, var(--crfw-tier-accent) 24%, transparent);
	transition: width .35s ease;
}

.crfw-tier-progress--complete .crfw-tier-progress__fill {
	background: linear-gradient(90deg, var(--crfw-tier-accent), var(--crfw-tier-border), var(--crfw-tier-accent));
}

.crfw-tier-progress__thresholds {
	color: #716a66;
	font-size: .72rem;
	line-height: 1.35;
}

.crfw-tier-progress__thresholds span:last-child {
	text-align: right;
}

.crfw-tier-progress__thresholds span {
	min-width: 0;
	overflow-wrap: anywhere;
}

.crfw-tier-progress__caption {
	margin: .55rem 0 0;
	color: #5f5854;
	font-size: .78rem;
	line-height: 1.4;
	overflow-wrap: anywhere;
}

.crfw-tier-progress__caption .woocommerce-Price-amount {
	color: var(--crfw-tier-accent);
	font-weight: 800;
}

.crfw-tier-progress__next-reward {
	display: flex;
	box-sizing: border-box;
	width: 100%;
	margin: .75rem 0 0;
	padding: .75rem;
	border: 1px solid var(--crfw-tier-border);
	border: 1px solid color-mix(in srgb, var(--crfw-tier-border) 48%, #fff);
	border-radius: 12px;
	background: var(--crfw-tier-soft);
	background: color-mix(in srgb, var(--crfw-tier-soft) 58%, #fff);
	color: #433d39;
	align-items: center;
	justify-content: space-between;
	gap: .9rem;
}

.crfw-tier-progress__next-reward-intro {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: .65rem;
	flex: 1 1 auto;
}

.crfw-tier-progress__next-reward-icon {
	display: inline-flex;
	box-sizing: border-box;
	width: 2rem;
	height: 2rem;
	border: 1px solid var(--crfw-tier-border);
	border-radius: 50%;
	background: var(--crfw-tier-accent);
	color: var(--crfw-tier-contrast);
	font-size: .8rem;
	line-height: 1;
	align-items: center;
	justify-content: center;
	flex: 0 0 2rem;
}

.crfw-tier-progress__next-reward-copy {
	min-width: 0;
	flex: 1 1 auto;
}

.crfw-tier-progress__next-reward-label {
	display: block;
	margin: 0 0 .15rem;
	color: var(--crfw-tier-accent);
	font-size: .65rem;
	font-weight: 800;
	letter-spacing: .065em;
	line-height: 1.25;
	text-transform: uppercase;
}

.crfw-tier-progress__next-reward-copy p {
	margin: 0;
	color: #433d39;
	font-size: .78rem;
	font-weight: 650;
	line-height: 1.45;
	overflow-wrap: anywhere;
}

.crfw-tier-progress__rate-change {
	display: inline-flex;
	box-sizing: border-box;
	min-height: 2.1rem;
	padding: .35rem .6rem;
	border: 1px solid var(--crfw-tier-border);
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 4px 10px rgba(77, 45, 39, .06);
	color: #6d6662;
	font-size: .76rem;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	align-items: center;
	justify-content: center;
	gap: .35rem;
	flex: 0 0 auto;
}

.crfw-tier-progress__rate-change strong {
	color: var(--crfw-tier-accent);
	font-size: .9rem;
	font-weight: 900;
}

.crfw-tier-progress__rate-arrow {
	color: var(--crfw-tier-border);
	font-size: .9rem;
}

html.crfw-tier-modal-open,
body.crfw-tier-modal-open {
	overflow: hidden;
}

.crfw-tier-modal {
	z-index: 999999;
	box-sizing: border-box;
	width: min(34rem, calc(100% - 2rem));
	max-width: 34rem;
	max-height: calc(100vh - 2rem);
	max-height: calc(100dvh - 2rem);
	margin: auto;
	padding: 0;
	border: 0;
	border-radius: 22px;
	background: transparent;
	color: #303030;
	font-family: inherit;
	overflow: visible;
}

.crfw-tier-modal::backdrop {
	background: rgba(35, 25, 22, .62);
	backdrop-filter: blur(3px);
	animation: crfw-tier-backdrop-in .2s ease-out both;
}

.crfw-tier-modal--fallback {
	position: fixed;
	inset: 0;
	display: flex;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	padding: 1rem;
	border-radius: 0;
	background: rgba(35, 25, 22, .62);
	align-items: center;
	justify-content: center;
}

.crfw-tier-modal__panel,
.crfw-tier-modal__dialog,
.crfw-tier-modal__surface {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-height: calc(100vh - 2rem);
	max-height: calc(100dvh - 2rem);
	padding: 2rem;
	border: 1px solid var(--crfw-tier-border);
	border: 1px solid color-mix(in srgb, var(--crfw-tier-border) 45%, #fff);
	border-radius: 22px;
	background: linear-gradient(145deg, #fff 0%, #fffaf8 62%, var(--crfw-tier-soft) 145%);
	box-shadow: 0 26px 70px rgba(35, 25, 22, .28);
	color: #303030;
	overflow-x: hidden;
	overflow-y: auto;
	animation: crfw-tier-dialog-in .24s ease-out both;
}

.crfw-tier-modal__close {
	position: absolute;
	top: .85rem;
	right: .85rem;
	display: inline-flex;
	width: 2.35rem;
	height: 2.35rem;
	margin: 0;
	padding: 0;
	border: 1px solid #e5d8d4;
	border-radius: 50%;
	background: rgba(255, 255, 255, .9);
	box-shadow: none;
	color: #544b48;
	font: inherit;
	font-size: 1.25rem;
	line-height: 1;
	cursor: pointer;
	align-items: center;
	justify-content: center;
}

/* Keep the dialog close control anchored when a theme applies global button
 * sizing/position rules. The ID and direct-child selector intentionally keep
 * these overrides limited to this one control. */
#crfw-tier-modal.crfw-tier-modal > .crfw-tier-modal__panel {
	position: relative !important;
}

#crfw-tier-modal.crfw-tier-modal > .crfw-tier-modal__panel > button.crfw-tier-modal__close[data-crfw-tier-dismiss] {
	position: absolute !important;
	top: .85rem !important;
	right: .85rem !important;
	bottom: auto !important;
	left: auto !important;
	z-index: 3;
	display: inline-flex !important;
	box-sizing: border-box !important;
	width: 2.35rem !important;
	min-width: 2.35rem !important;
	max-width: 2.35rem !important;
	height: 2.35rem !important;
	min-height: 2.35rem !important;
	max-height: 2.35rem !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #e5d8d4 !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, .94) !important;
	box-shadow: none !important;
	color: #544b48 !important;
	font-size: 1.25rem !important;
	line-height: 1 !important;
	float: none !important;
	transform: none !important;
}

#crfw-tier-modal.crfw-tier-modal > .crfw-tier-modal__panel > button.crfw-tier-modal__close[data-crfw-tier-dismiss]:hover {
	border-color: var(--crfw-tier-border) !important;
	background: #fff !important;
	color: var(--crfw-tier-ink) !important;
}

.crfw-tier-modal__close:hover {
	border-color: var(--crfw-tier-border);
	background: #fff;
	color: var(--crfw-tier-ink);
}

.crfw-tier-modal__close:focus-visible,
.crfw-tier-modal__button:focus-visible {
	box-shadow: 0 0 0 3px rgba(96, 84, 76, .28);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--crfw-tier-border) 38%, transparent);
	outline: 2px solid transparent;
}

.crfw-tier-modal__medal {
	display: inline-flex;
	width: 4rem;
	height: 4rem;
	margin: 0 0 1rem;
	border: 1px solid var(--crfw-tier-border);
	border-radius: 50%;
	background: var(--crfw-tier-soft);
	box-shadow: 0 9px 22px rgba(77, 45, 39, .12);
	color: var(--crfw-tier-ink);
	font-size: 1.75rem;
	line-height: 1;
	align-items: center;
	justify-content: center;
}

.crfw-tier-modal__eyebrow {
	margin: 0 3rem .35rem 0;
	color: var(--crfw-tier-ink);
	font-size: .72rem;
	font-weight: 800;
	letter-spacing: .09em;
	line-height: 1.2;
	text-transform: uppercase;
}

.crfw-tier-modal__title {
	margin: 0 2.5rem .85rem 0;
	color: #303030;
	font-size: clamp(1.5rem, 4vw, 2rem);
	font-weight: 800;
	line-height: 1.12;
}

.crfw-tier-modal__body {
	color: #5f5855;
	font-size: .98rem;
	line-height: 1.65;
}

.crfw-tier-modal__body > :first-child {
	margin-top: 0;
}

.crfw-tier-modal__body > :last-child {
	margin-bottom: 0;
}

.crfw-tier-modal__body a {
	color: var(--crfw-tier-ink);
	font-weight: 700;
	text-decoration: underline;
	text-decoration-thickness: .08em;
	text-underline-offset: .15em;
}

.crfw-tier-modal__actions {
	display: flex;
	margin-top: 1.35rem;
	align-items: center;
	justify-content: flex-start;
	gap: .75rem;
}

.crfw-tier-modal .crfw-tier-modal__button {
	display: inline-flex;
	min-height: 3rem;
	margin: 0;
	padding: .72rem 1.35rem;
	border: 1px solid var(--crfw-tier-border);
	border-radius: 999px;
	background: var(--crfw-tier-accent);
	box-shadow: none;
	color: var(--crfw-tier-contrast);
	font: inherit;
	font-size: .88rem;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	align-items: center;
	justify-content: center;
}

.crfw-tier-modal .crfw-tier-modal__button:hover {
	border-color: var(--crfw-tier-ink);
	background: var(--crfw-tier-ink);
	color: #fff;
}

@keyframes crfw-tier-backdrop-in {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes crfw-tier-dialog-in {
	from {
		opacity: 0;
		transform: translateY(12px) scale(.98);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@media (max-width: 600px) {
	.crfw-tier-card {
		padding: 1rem;
		align-items: flex-start;
		flex-direction: column;
	}

	.crfw-tier-card__benefit {
		width: 100%;
	}

	.crfw-tier-card__progress {
		max-width: none;
		padding: .75rem;
	}

	.crfw-tier-progress__thresholds {
		align-items: flex-start;
		flex-direction: column;
		gap: .2rem;
	}

	.crfw-tier-progress__thresholds span:last-child {
		align-self: flex-end;
		text-align: right;
	}

	.crfw-tier-progress__next-reward {
		align-items: stretch;
		flex-direction: column;
		gap: .65rem;
	}

	.crfw-tier-progress__next-reward-intro {
		align-items: flex-start;
	}

	.crfw-tier-progress__rate-change {
		width: 100%;
	}

	.crfw-tier-modal {
		width: calc(100% - 1rem);
		max-height: calc(100vh - 1rem);
		max-height: calc(100dvh - 1rem);
	}

	.crfw-tier-modal--fallback {
		width: 100%;
		padding: .5rem;
	}

	.crfw-tier-modal__panel,
	.crfw-tier-modal__dialog,
	.crfw-tier-modal__surface {
		max-height: calc(100vh - 1rem);
		max-height: calc(100dvh - 1rem);
		padding: 1.5rem 1.15rem;
		border-radius: 18px;
	}

	.crfw-tier-modal__medal {
		width: 3.4rem;
		height: 3.4rem;
		font-size: 1.45rem;
	}

	.crfw-tier-modal__actions,
	.crfw-tier-modal .crfw-tier-modal__button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.crfw-tier-badge,
	.crfw-tier-modal::backdrop,
	.crfw-tier-modal__panel,
	.crfw-tier-modal__dialog,
	.crfw-tier-modal__surface {
		animation: none;
		transition: none;
	}

	.crfw-tier-progress__fill {
		transition: none;
	}

	a.crfw-tier-badge:hover {
		transform: none;
	}
}

/* Product & Category bonus labels. Kept deliberately compact so sale and
 * stock labels remain readable on both standard WooCommerce and WoodMart. */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.product-grid-item,
.product-grid-item .product-element-top,
.wd-product-thumb.product-element-top,
.single-product div.product,
.single-product-page,
.woocommerce-product-gallery,
.product-images,
.wd-carousel-container.wd-gallery-images {
	position: relative;
}

.crfw-product-bonus-badge {
	position: absolute;
	z-index: 25;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: calc(100% - 1.25rem);
	min-height: 1.65rem;
	padding: .32rem .62rem;
	background: var(--crfw-product-badge-bg, #B0473E);
	color: var(--crfw-product-badge-color, #FFFFFF);
	font-size: clamp(.68rem, .62rem + .15vw, .78rem);
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: .01em;
	text-align: center;
	text-transform: none;
	box-shadow: 0 3px 10px rgba(0, 0, 0, .13);
	pointer-events: none;
	white-space: normal;
}

.crfw-product-bonus-badge[hidden],
.crfw-product-bonus-badge.is-empty {
	display: none !important;
}

.crfw-product-bonus-badge--top-left {
	top: .65rem;
	left: .65rem;
}

.crfw-product-bonus-badge--top-right {
	top: .65rem;
	right: .65rem;
}

.crfw-product-bonus-badge--bottom-left {
	bottom: .65rem;
	left: .65rem;
}

.crfw-product-bonus-badge--bottom-right {
	right: .65rem;
	bottom: .65rem;
}

.crfw-product-bonus-badge--pill {
	border-radius: 999px;
}

.crfw-product-bonus-badge--rounded {
	border-radius: 6px;
}

.crfw-product-bonus-badge--square {
	border-radius: 0;
}

/* WoodMart fires the standard loop hook inside product-element-top. */
.product-grid-item .product-element-top > .crfw-product-bonus-badge,
.wd-product-thumb.product-element-top > .crfw-product-bonus-badge {
	z-index: 35;
}

@media (max-width: 600px) {
	.crfw-product-bonus-badge {
		max-width: calc(100% - .8rem);
		min-height: 1.4rem;
		padding: .25rem .45rem;
		font-size: .66rem;
	}

	.crfw-product-bonus-badge--top-left {
		top: .4rem;
		left: .4rem;
	}

	.crfw-product-bonus-badge--top-right {
		top: .4rem;
		right: .4rem;
	}

	.crfw-product-bonus-badge--bottom-left {
		bottom: .4rem;
		left: .4rem;
	}

	.crfw-product-bonus-badge--bottom-right {
		right: .4rem;
		bottom: .4rem;
	}
}

@media (forced-colors: active) {
	.crfw-tier-badge,
	.crfw-tier-card,
	.crfw-tier-modal__panel,
	.crfw-tier-modal__dialog,
	.crfw-tier-modal__surface,
	.crfw-tier-card__benefit,
	.crfw-tier-card__progress,
	.crfw-tier-progress__track,
	.crfw-tier-progress__next-reward,
	.crfw-tier-progress__next-reward-icon,
	.crfw-tier-progress__rate-change,
	.crfw-tier-modal__close,
	.crfw-tier-modal__medal,
	.crfw-tier-modal .crfw-tier-modal__button {
		border: 1px solid CanvasText;
		box-shadow: none;
		forced-color-adjust: auto;
	}

	.crfw-tier-progress__fill {
		background: Highlight;
		box-shadow: none;
		forced-color-adjust: none;
	}

	.crfw-product-bonus-badge {
		border: 1px solid CanvasText;
		background: Canvas;
		color: CanvasText;
		box-shadow: none;
		forced-color-adjust: auto;
	}
}
