.ct-storefront .ct-reviews-heading {display:grid;gap:16px;margin-bottom:32px;}
.ct-storefront .ct-reviews-heading h1 {margin:0;font-size:clamp(28px,3.5vw,42px);letter-spacing:-.025em;line-height:1.2;overflow-wrap:anywhere;}
.ct-storefront .ct-reviews-notice {margin:0;max-width:70ch;color:var(--ct-color-muted);line-height:1.6;}
.ct-storefront .ct-reviews-layout {display:grid;gap:32px;align-items:start;}
.ct-storefront .ct-reviews-list {display:grid;gap:20px;min-width:0;}
.ct-storefront .ct-review-card {display:grid;gap:16px;padding:clamp(20px,3vw,28px);border:1px solid var(--ct-color-border);border-radius:var(--ct-radius-lg);background:var(--ct-color-bg);min-width:0;}
.ct-storefront .ct-review-card__header {display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:baseline;}
.ct-storefront .ct-review-card__author {font-size:17px;overflow-wrap:anywhere;}
.ct-storefront .ct-review-card__date {font-size:13px;color:var(--ct-color-muted);}
.ct-storefront .ct-review-card__title {margin:0;font-size:20px;line-height:1.35;overflow-wrap:anywhere;}
.ct-storefront .ct-review-card .ct-platform-review-text {margin:0;font-size:16px;line-height:1.7;overflow-wrap:anywhere;}
.ct-storefront .ct-review-card__rating {display:flex;align-items:center;gap:10px;}
.ct-storefront .ct-review-card__rating > span {position:relative;color:#e1e5ec;font-size:22px;line-height:1.2;letter-spacing:3px;white-space:nowrap;}
.ct-storefront .ct-review-card__rating > span > span {position:absolute;inset:0 auto 0 0;overflow:hidden;color:#f4b942;}
.ct-storefront .ct-review-card__rating small {color:var(--ct-color-muted);}
.ct-storefront .ct-review-card__replies {display:grid;gap:16px;border-inline-start:2px solid var(--ct-color-border);padding-inline-start:16px;}
.ct-storefront .ct-review-form-panel {min-width:0;padding:clamp(20px,3vw,32px);border-radius:var(--ct-radius-lg);background:var(--ct-color-surface);}
.ct-storefront .ct-review-form-panel h2 {margin:0 0 24px;font-size:24px;line-height:1.2;}
.ct-storefront .ct-review-form-panel .ct-field {display:grid;gap:8px;min-width:0;}
.ct-storefront .ct-review-form-panel .ct-input,
.ct-storefront .ct-review-form-panel .ct-select {width:100%;min-width:0;max-width:100%;}
.ct-storefront .ct-review-form-panel textarea {min-height:150px;resize:vertical;}
.ct-storefront .ct-review-form-panel .ct-button {justify-self:start;max-width:100%;white-space:normal;}
@media(min-width:1024px) {.ct-storefront .ct-reviews-layout {grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;}}

.ct-storefront .ct-review-captcha {display:grid;gap:8px;}
.ct-storefront .ct-review-captcha .wa-captcha p {margin:0;}
.ct-storefront .ct-review-captcha .wa-captcha p:first-child {display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.ct-storefront .ct-review-captcha .wa-captcha strong {display:none;}
.ct-storefront .ct-review-captcha .wa-captcha-img {border-radius:6px;cursor:pointer;}
.ct-storefront .ct-review-captcha .wa-captcha-input {min-width:0;width:100%;max-width:200px;min-height:44px;padding:10px 12px;border:1px solid var(--ct-color-border);border-radius:var(--ct-control-radius);background:var(--ct-color-bg);color:var(--ct-color-text);font:inherit;}
.ct-storefront .ct-review-captcha .wa-captcha-input:focus-visible {outline:2px solid var(--ct-color-primary);outline-offset:2px;}
.ct-storefront .ct-review-captcha .wa-captcha-refresh {display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:var(--ct-color-primary);font-size:14px;}
.ct-storefront .ct-review-form-panel [data-ct-review-errors]:empty,
.ct-storefront .ct-review-form-panel [data-ct-review-status]:empty {display:none;}

.ct-storefront .ct-rating-input {margin:0;padding:0;border:0;min-width:0;}
.ct-storefront .ct-rating-input legend {margin-bottom:8px;}
.ct-storefront .ct-rating-options {display:flex;gap:4px;width:max-content;max-width:100%;}
.ct-storefront .ct-rating-option {display:grid;place-items:center;width:44px;height:44px;cursor:pointer;}
.ct-storefront .ct-rating-option > span {font-size:32px;line-height:1;color:#d8dde6;border-radius:4px;}
.ct-storefront .ct-rating-option:has(input:checked) > span,
.ct-storefront .ct-rating-option:has(~ .ct-rating-option input:checked) > span {color:#f4b942;}
.ct-storefront .ct-rating-option input:focus-visible + span {outline:2px solid var(--ct-color-primary);outline-offset:5px;}
@media(hover:hover) {
  .ct-storefront .ct-rating-options:has(.ct-rating-option:hover) .ct-rating-option > span {color:#d8dde6;}
  .ct-storefront .ct-rating-options:has(.ct-rating-option:hover) .ct-rating-option:hover > span,
  .ct-storefront .ct-rating-options:has(.ct-rating-option:hover) .ct-rating-option:has(~ .ct-rating-option:hover) > span {color:#f4b942;}
}
