/* HOME 06: V4 media-first reviews. All presentation is scoped to this module. */
.mrl-reviews,.mrl-reviews *,.mrl-reviews__viewer,.mrl-reviews__viewer *{box-sizing:border-box}
.mrl-reviews{width:100%;max-width:none;background:#fff;color:#111;font-family:inherit;padding:56px 0 64px;overflow:hidden}
.mrl-reviews__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 clamp(16px,2.35vw,46px) 20px}
.mrl-reviews__header h2{margin:0;font-family:inherit;font-size:clamp(20px,1.8vw,28px);font-weight:400;line-height:1.2;letter-spacing:-.02em}
.mrl-reviews__controls{display:flex;align-items:center;gap:6px;flex-shrink:0}
.mrl-reviews__controls>span{font-size:10px;color:#777;letter-spacing:.06em;font-variant-numeric:tabular-nums;margin-right:10px;white-space:nowrap}
.mrl-reviews__controls button,.mrl-reviews__viewer footer button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #ddd;background:#fff;color:#111;padding:0;cursor:pointer;border-radius:0}
.mrl-reviews__controls button:hover:not(:disabled){background:#000;color:#fff;border-color:#000}
.mrl-reviews button:disabled,.mrl-reviews__viewer button:disabled{opacity:.3;cursor:default}
.mrl-reviews svg,.mrl-reviews__viewer svg{width:18px;height:18px;display:block;pointer-events:none}
.mrl-reviews__rail{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 18px)/4);gap:6px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;cursor:grab;-webkit-overflow-scrolling:touch}
.mrl-reviews__rail::-webkit-scrollbar{display:none}
.mrl-reviews__rail.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.mrl-reviews__card{min-width:0;background:#fff;border:1px solid #e5e5e5;scroll-snap-align:start}
.mrl-reviews__open{display:block;margin:0;padding:0;border:0;border-radius:0;background:#eee;color:#111;width:100%;cursor:pointer;font:inherit}
.mrl-reviews__frame{display:block;position:relative;aspect-ratio:4/5;width:100%;overflow:hidden;background:#eee}
.mrl-reviews__frame img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:1;user-select:none;pointer-events:none}
.mrl-reviews__play{position:absolute;inset:0;display:grid;place-items:center}
.mrl-reviews__play svg{width:44px;height:44px;padding:12px;border:1px solid #777;border-radius:50%}
.mrl-reviews__video-label{position:absolute;bottom:18px;inset-inline:12px;font-size:11px;text-align:center;color:#666}
.mrl-reviews__copy{padding:14px 14px 16px;min-height:178px}
.mrl-reviews__rating{font-size:13px;line-height:18px;min-height:18px;letter-spacing:1px}
.mrl-reviews__excerpt{margin:8px 0 14px;font-size:12px;line-height:1.6;min-height:38.4px;height:38.4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mrl-reviews__product{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;border-top:1px solid #e5e5e5;padding-top:12px;text-decoration:none;color:inherit}
.mrl-reviews__thumb{display:block;width:56px;aspect-ratio:1;background:#f5f5f5}
.mrl-reviews__thumb img{display:block;width:100%;height:100%;object-fit:contain}
.mrl-reviews__brand{display:block;color:#777;font-size:10px;line-height:1.4;min-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mrl-reviews__name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px;line-height:1.5;margin-top:3px}
.mrl-reviews__product:hover .mrl-reviews__name{text-decoration:underline;text-underline-offset:3px}
.mrl-reviews button:focus-visible,.mrl-reviews a:focus-visible,.mrl-reviews__rail:focus-visible,.mrl-reviews__viewer button:focus-visible{outline:2px solid currentColor;outline-offset:-2px}
.mrl-reviews__controls[hidden],.mrl-reviews__status[hidden],.mrl-reviews__retry[hidden]{display:none}
.mrl-reviews__status,.mrl-reviews__retry{margin:12px 16px;font-size:12px;color:#666}
.mrl-reviews__retry{padding:6px 0;border:0;border-bottom:1px solid currentColor;background:transparent;cursor:pointer}
.mrl-reviews__skeleton{pointer-events:none}
.mrl-reviews__skeleton .mrl-reviews__frame,.mrl-reviews__sk-line,.mrl-reviews__skeleton .mrl-reviews__thumb{background:#eee}
.mrl-reviews__sk-line{display:block;height:8px;margin-bottom:8px;width:78%}
.mrl-reviews__sk-line--rating{width:62px;height:10px;margin-bottom:14px}
.mrl-reviews__sk-line--short{width:54%}
.mrl-reviews__skeleton .mrl-reviews__frame{overflow:hidden}
.mrl-reviews__skeleton .mrl-reviews__frame::after,.mrl-reviews__frame.is-pending::after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 25%,#ffffff66 50%,transparent 75%);transform:translateX(-100%);animation:mrl-review-shimmer 1.6s linear infinite}
.mrl-reviews__frame.is-error::after{content:'Review media unavailable';position:absolute;inset:0;display:grid;place-items:center;background:#eee;color:#777;font-size:12px;padding:20px;text-align:center}
@keyframes mrl-review-shimmer{to{transform:translateX(100%)}}
.mrl-reviews__viewer{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:60px 20px 18px;border:0;background:#111;color:#fff;font:inherit;z-index:999999}
.mrl-reviews__viewer:not([open]){display:none}
.mrl-reviews__viewer[open]{display:flex;flex-direction:column;align-items:center;gap:16px}
.mrl-reviews__viewer::backdrop{background:#000c}
.mrl-reviews__viewer-stage{flex:1;min-height:0;width:100%;display:flex;align-items:center;justify-content:center}
.mrl-reviews__viewer-stage img,.mrl-reviews__viewer-stage video{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.mrl-reviews__viewer-stage video{width:min(100%,1060px)}
.mrl-reviews__close{position:absolute;top:12px;right:16px;display:grid;place-items:center;width:40px;height:40px;border:1px solid #777;border-radius:0;padding:0;background:transparent;color:#fff;cursor:pointer}
.mrl-reviews__viewer footer{display:flex;align-items:center;justify-content:center;gap:24px;min-height:34px;font-size:11px;font-variant-numeric:tabular-nums}
.mrl-reviews__viewer footer button{background:transparent;color:#fff;border-color:#777}
html.mrl-review-viewing{overflow:hidden}
@media(max-width:680px){.mrl-reviews{padding:40px 0 48px}.mrl-reviews__header{padding:0 14px 17px;gap:10px}.mrl-reviews__header h2{font-size:19px}.mrl-reviews__controls>span{font-size:9px;margin-right:3px}.mrl-reviews__controls button{width:30px;height:30px}.mrl-reviews__rail{grid-auto-columns:86%;gap:8px}.mrl-reviews__copy{padding:12px}.mrl-reviews__viewer{padding:60px 12px 16px}}
@media(prefers-reduced-motion:reduce){.mrl-reviews__skeleton .mrl-reviews__frame::after,.mrl-reviews__frame.is-pending::after{animation:none}}
