.sds-review-page {
	max-width: 820px;
	margin: 48px auto;
	padding: 0 20px;
}

.sds-review-card {
	background: #fff;
	border: 1px solid #e4e4e4;
	padding: clamp(22px, 5vw, 48px);
}

.sds-review-card h1 { margin-top: 0; }
.sds-review-product { display: flex; align-items: center; gap: 16px; margin: 24px 0; padding: 14px; background: #f7f7f7; }
.sds-review-product img { width: 72px; height: 88px; object-fit: cover; }
.sds-review-product small, .sds-review-product strong { display: block; }
.sds-review-form > label { display: block; margin: 20px 0; font-weight: 600; }
.sds-review-form input[type="text"], .sds-review-form textarea { display: block; width: 100%; margin-top: 7px; }
.sds-review-form small { font-weight: 400; }
.sds-review-form .sds-character-counter { display: block; margin-top: 6px; color: #666; text-align: right; }
.sds-review-form .sds-character-counter.is-near-limit { color: #8c5a63; font-weight: 600; }
.sds-stars { display: flex; flex-direction: row-reverse; justify-content: flex-end; border: 0; padding: 0; margin: 22px 0; }
.sds-stars legend { font-weight: 600; margin-bottom: 6px; }
.sds-stars input { position: absolute; opacity: 0; }
.sds-stars label { font-size: 34px; line-height: 1; color: #bbb; cursor: pointer; }
.sds-stars input:checked ~ label, .sds-stars label:hover, .sds-stars label:hover ~ label { color: #d8a21b; }
.sds-review-note { font-size: .88em; color: #666; }
.sds-account-products { display: grid; gap: 14px; }
.sds-account-products article { display: flex; gap: 16px; align-items: center; border: 1px solid #e5e5e5; padding: 12px; }
.sds-account-products img { width: 72px; height: 88px; object-fit: cover; }
.sds-account-products small, .sds-account-products strong { display: block; margin-bottom: 7px; }

.sds-latest-reviews {
	clear: both;
	box-sizing: border-box;
	width: 100%;
	margin: 36px 0 0;
	padding: clamp(22px, 2.2vw, 30px) 24px;
	border: 0;
	border-top: 1px solid #e6e2df;
	background: #fff;
	box-shadow: none;
}

.sds-latest-inner {
	display: grid;
	grid-template-columns: minmax(220px, 280px) minmax(440px, 700px);
	align-items: center;
	justify-content: center;
	gap: clamp(28px, 4vw, 58px);
	max-width: 1120px;
	margin: 0 auto;
}

.sds-latest-intro h2 {
	margin: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(26px, 2vw, 34px);
	font-weight: 400;
	line-height: 1.05;
	letter-spacing: -.02em;
}

.sds-gold-line { display: block; width: 44px; height: 2px; margin: 10px 0 0; background: #b58a2a; }
.sds-review-carousel { min-width: 0; }
.sds-review-slides { display: grid; }

.sds-review-slide {
	grid-area: 1 / 1;
	align-self: center;
	margin: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(5px);
	transition: opacity .35s ease, transform .35s ease, visibility .35s ease;
}

.sds-review-slide.is-active { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.sds-latest-stars { display: flex; gap: 3px; margin: 0 0 8px; font-family: Arial, sans-serif; font-size: 21px; line-height: 1; }
.sds-latest-stars .is-active { color: #d8a21b; }
.sds-latest-stars .is-empty { color: #d9d6d3; }

.sds-latest-product {
	display: inline-block;
	margin-bottom: 8px;
	color: #222;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
}

.sds-latest-product:hover, .sds-latest-product:focus { color: #8c5a63; }
.sds-review-slide blockquote { margin: 0 0 8px; padding: 0; border: 0; color: #333; font-size: 15px; font-style: normal; line-height: 1.45; }
.sds-review-copy { display: block; overflow-wrap: anywhere; white-space: normal; }
.sds-review-carousel.is-enhanced .sds-review-copy:not(.is-expanded) {
	display: -webkit-box;
	max-height: 5.8em;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}
.sds-review-copy.is-expanded { display: block; max-height: none; overflow: visible; -webkit-line-clamp: unset; }
.sds-review-more {
	display: block;
	width: fit-content;
	margin: -1px 0 8px auto;
	padding: 0;
	border: 0;
	border-bottom: 1px solid currentColor;
	border-radius: 0;
	color: #8c5a63;
	background: transparent;
	box-shadow: none;
	font: inherit;
	font-size: 13px;
	line-height: 1.4;
	cursor: pointer;
}
.sds-review-more[hidden] { display: none; }
.sds-review-more:hover, .sds-review-more:focus { color: #6f424a; background: transparent; }
.sds-review-more:focus-visible { outline: 2px solid #8c5a63; outline-offset: 3px; }
.sds-review-slide footer { color: #666; font-family: Georgia, "Times New Roman", serif; font-size: 16px; font-style: italic; }
.sds-review-dots { display: flex; justify-content: center; gap: 10px; margin-top: 14px; }

.sds-review-dots button {
	width: 9px;
	height: 9px;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #d7d4d1;
	box-shadow: none;
	cursor: pointer;
}

.sds-review-dots button[aria-current="true"] { background: #b58a2a; }
.sds-review-dots button:focus-visible { outline: 2px solid #8c5a63; outline-offset: 4px; }
.sds-review-dots .sds-review-toggle { width: 20px; height: 16px; margin-left: 5px; border-radius: 0; color: #777; background: transparent; font-size: 11px; line-height: 16px; }
.sds-review-dots .sds-review-toggle:hover { color: #8c5a63; background: transparent; }
@media (prefers-reduced-motion: reduce) {
	.sds-review-slide { transition: none; }
}

@media (max-width: 900px) {
	.sds-latest-inner { grid-template-columns: 1fr; gap: 24px; }
	.sds-latest-intro { text-align: center; }
	.sds-latest-intro .sds-gold-line { margin-right: auto; margin-left: auto; }
	.sds-latest-intro h2 { font-size: 30px; }
	.sds-review-carousel { max-width: 680px; margin-right: auto; margin-left: auto; text-align: center; }
	.sds-latest-stars { justify-content: center; }
}

@media (max-width: 780px) {
	.sds-latest-reviews { margin-top: 30px; padding: 24px 20px; }
	.sds-review-page { margin: 22px auto; }
	.sds-review-card { padding: 20px; }
	.sds-stars label { font-size: 38px; }
}
