.product-reviews{border-top:1px solid var(--line);scroll-margin-top:24px}
.review-summary{font-size:1rem;color:var(--muted);margin-top:16px}
.review-filter{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.review-filter[hidden],.review-filter-status:empty{display:none}
.review-filter button{min-height:48px;padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}
.review-filter button[aria-pressed="true"]{border-color:var(--copper);background:#f2dfce;color:#59341f}
.review-filter button:focus-visible{outline:3px solid var(--copper);outline-offset:3px}
.review-carousel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0}
.review-carousel-heading h3{font-size:1.375rem;line-height:1.5;margin:0 0 8px}
.review-carousel-heading p{font-size:.875rem;line-height:1.7;color:var(--muted);margin:0}
.review-carousel-controls{display:flex;gap:10px;flex-shrink:0}
.review-carousel-controls[hidden]{display:none}
.review-carousel-controls button{display:grid;place-items:center;min-width:56px;height:56px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);font-size:1.5rem;font-weight:700;cursor:pointer;transition:background-color 180ms}
.review-carousel-controls button:disabled{opacity:.4;cursor:default}
.review-carousel-controls button:hover:not(:disabled){background:#f1dfce}
.customer-photo-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/3);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:3px 3px 12px;scroll-padding:3px;scrollbar-width:thin}
.customer-photo-card{min-width:0;margin:0;border:1px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden;scroll-snap-align:start}
.review-photo-open{display:block;background:#eae4db;cursor:zoom-in;overflow:hidden}
.customer-photo-card .review-photo-open{aspect-ratio:4/5}
.review-photo-open img{display:block;width:100%;height:100%;object-fit:contain}
.customer-photo-card figcaption{padding:18px;font-size:1rem;line-height:1.7;font-weight:600}
.review-carousel-position:empty{display:none}
.customer-reviews-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0}
.customer-reviews-list:empty{display:none}
.customer-review{min-width:0;border:1px solid var(--line);background:var(--surface);padding:24px;border-radius:16px}
.own-review{min-width:0;margin-top:20px;padding:20px;border:1px solid var(--line);border-radius:12px;background:#fffdf9}
.review-byline{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap}
.review-byline h3{min-width:0;overflow-wrap:anywhere;font-size:1.125rem;margin:0}
.review-byline time{font-size:.8125rem;color:var(--muted)}
.review-model{margin:10px 0 0;color:var(--muted);font-size:.9375rem;font-weight:700}
.review-stars{font-size:1.5rem;color:#92522e;letter-spacing:2px;margin:12px 0}
.verified-purchase{display:inline-block;padding:5px 10px;border-radius:20px;background:#e4eddf;color:#354a2b;font-size:.8125rem;font-weight:700}
.review-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}
.customer-review .review-body{font-size:1rem;margin:18px 0 0}
.review-attachments{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.review-attachments a{width:100px;height:100px;flex:none;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#eee8de}
.review-attachments img{width:100%;height:100%;object-fit:contain}
.review-composer,.order-review-composer{margin-top:35px;padding:28px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.review-composer>p{font-size:1rem;line-height:1.8}
.customer-review-form{display:grid;gap:20px;max-width:760px}
.customer-review-form>label{display:grid;gap:8px;font-size:1rem;font-weight:700;line-height:1.6}
.customer-review-form input:not([type=checkbox]):not([type=radio]),.customer-review-form select,.customer-review-form textarea{width:100%;min-width:0;min-height:52px;padding:12px;border:1px solid #b4a18d;border-radius:9px;background:#fffdf9;font:inherit;color:inherit}
.customer-review-form input[type=file]{font-size:1rem;max-width:100%}
.review-rating{display:flex;flex-wrap:wrap;gap:10px;padding:16px;border:1px solid var(--line);border-radius:10px}
.review-rating legend{font-size:1rem;font-weight:700;padding:0 6px}
.review-rating label{display:flex;align-items:center;gap:6px;min-height:48px;padding:6px 10px;border:1px solid var(--line);border-radius:9px;background:#fffdf9;font-size:1rem;cursor:pointer}
.review-rating label:has(:checked){border:2px solid var(--copper);background:#f4e7da}
.review-rating input{width:20px;height:20px;accent-color:var(--copper)}
.customer-review-form .review-consent{display:flex;align-items:start;gap:12px;font-size:.9375rem}
.review-consent input{width:24px;height:24px;flex:none;margin-top:3px;accent-color:var(--copper)}
.review-success{font-size:1.125rem;font-weight:700;color:#354a2b}
.review-photo-viewer{max-width:1000px;width:calc(100% - 24px);padding:18px;overflow:auto}
.review-photo-viewer>img{display:block;width:100%;max-height:65vh;object-fit:contain;background:#eee8de}
.review-photo-viewer>p{font-size:1rem;margin:12px 0}
.review-photo-close{display:block;margin:0 0 14px auto;min-height:48px;padding:8px 16px;border:1px solid var(--line);border-radius:22px;background:var(--surface);font:inherit;cursor:pointer}
.review-viewer-controls{display:flex;justify-content:space-between;gap:15px}
.review-viewer-controls[hidden]{display:none}
.review-viewer-controls button{min-height:48px;border:1px solid var(--line);border-radius:24px;padding:10px 18px;background:var(--surface);font:inherit;cursor:pointer}
.admin-review{min-width:0;overflow-wrap:anywhere;padding:24px;margin:24px 0;border:1px solid #bfc8d3;border-radius:16px;background:#fff}
.admin-review-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
@media(max-width:900px){.customer-photo-track{grid-auto-columns:calc((100% - 18px)/2)}}
@media(max-width:600px){
 .customer-photo-track{grid-auto-columns:86%}
 .review-carousel-heading{align-items:start;flex-wrap:wrap}
 .review-carousel-controls{margin-left:auto}
 .customer-reviews-list{grid-template-columns:1fr}
 .review-composer,.order-review-composer,.customer-review{padding:20px}
 .customer-review-form .button{width:100%}
 .review-rating{gap:8px;padding:12px}
 .review-rating label{padding:6px 8px}
}
@media(prefers-reduced-motion:reduce){.customer-photo-track{scroll-behavior:auto}.review-carousel-controls button{transition:none}}
.customer-photo-track{align-items:start}
.customer-photo-model,.imported-review-author,.review-photo-relation{display:block;overflow-wrap:anywhere}
.customer-photo-model{font-size:1rem;margin-bottom:8px}
.imported-review-author{font-size:.9375rem;font-weight:700;margin-top:12px}
.review-photo-relation{font-size:.875rem;line-height:1.6;color:var(--muted);margin-top:6px}
.customer-photo-caption{margin:12px 0 0}
.imported-review-body{margin:12px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.75}
.imported-review-text{margin-top:12px;border:0;padding:0}
.imported-review-text summary{font:inherit;line-height:1.75;cursor:pointer;padding:0;overflow-wrap:anywhere}
.review-excerpt{display:block;margin-bottom:12px;font-weight:600}
.review-expand,.review-collapse{font-weight:700;color:var(--copper);text-decoration:underline;text-underline-offset:4px}
.review-collapse,.imported-review-text[open] .review-expand,.imported-review-text[open] .review-excerpt{display:none}
.imported-review-text[open] .review-collapse{display:inline}
.imported-review-text summary:focus-visible{outline:3px solid var(--copper);outline-offset:5px;border-radius:4px}
.customer-review-form .anonymous-help{margin:0;font-size:.9375rem;line-height:1.7}
.customer-review-form label[hidden]{display:none}
.imported-review-text summary{list-style:none}
.imported-review-text summary::-webkit-details-marker{display:none}
