section.block.reviews-section{padding:0 0 72px}
.reviews-heading{margin-bottom:24px}
.reviews-heading h2{margin-bottom:0}
.reviews-heading>p{margin-bottom:4px}
.reviews-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding:2px 1px 6px;scroll-behavior:smooth}
.reviews-track::-webkit-scrollbar{display:none}
.review-card{flex:0 0 calc((100% - 32px)/3);min-width:0;display:flex;gap:16px;align-items:center;padding:26px 20px;min-height:360px;background:#fffdf8;border:1px solid var(--line);border-radius:5px;scroll-snap-align:start;scroll-margin:1px}
.review-copy{flex:1;min-width:0;align-self:stretch;display:flex;flex-direction:column}
.review-category{font-size:12px;font-weight:600;color:var(--accent-text,var(--olive));line-height:1.5;margin:0 0 16px}
.review-copy blockquote{font-size:15px;line-height:1.85;letter-spacing:-.25px;margin:0;color:var(--ink);word-break:keep-all;overflow-wrap:anywhere}
.review-meta{font-size:11px;line-height:1.7;color:var(--muted);margin:auto 0 0;padding-top:20px}
.review-capture{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:12px;border:0;background:transparent;color:var(--muted);padding:0;align-self:center}
.review-capture-image{display:block;position:relative;width:var(--capture-width);max-width:100%;background:#fff;border-radius:3px;overflow:hidden;line-height:0;box-shadow:0 2px 8px #3b302712}
.review-capture-image img{display:block;width:100%;height:auto;max-width:100%}
.review-name-mask{position:absolute;left:var(--mask-left);top:var(--mask-top);width:var(--mask-width);height:var(--mask-height);background:#e3e3e3;border-radius:2px}
.review-zoom-label{font-size:12px;font-weight:500;line-height:1.5;white-space:nowrap;color:var(--accent-text,var(--olive));border:1px solid var(--line);border-radius:4px;padding:7px 10px;background:var(--paper)}
.review-capture:hover .review-zoom-label{color:var(--accent-text,var(--olive))}
.reviews-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:17px}
.reviews-naver{font-size:12px;color:var(--accent-text,var(--olive));border-bottom:1px solid var(--line);padding:4px 0}
.reviews-naver span{margin-left:10px}
.reviews-navigation{display:flex;gap:8px;align-items:center}
.reviews-position{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;min-width:70px;text-align:right;margin-right:8px}
.reviews-arrow{width:36px;height:36px;display:grid;place-items:center;padding:0;background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:50%;font-size:17px}
.reviews-arrow:hover:not(:disabled){border-color:var(--olive);color:var(--accent-text,var(--olive))}
.reviews-arrow:disabled{opacity:.3;cursor:default}
.reviews-note{font-size:10px;color:var(--muted);line-height:1.7;margin:12px 0 0}
.review-dialog{width:min(460px,94vw);max-height:90dvh;padding:0;overflow:auto;overscroll-behavior:contain}
.review-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 18px;position:sticky;top:0;background:var(--paper);border-bottom:1px solid var(--line);z-index:1}
.review-dialog-heading strong{font-size:13px;font-weight:500}
.review-dialog-heading button{background:transparent;border:0;color:var(--ink);font-size:26px;line-height:1;min-width:36px;height:36px}
.review-dialog-body{padding:20px;display:flex;justify-content:center}
.review-dialog-body .review-capture-image{width:100%;max-width:380px;box-shadow:none}
@media(max-width:800px){section.block.reviews-section{padding-bottom:48px}.reviews-heading{margin-bottom:20px}.reviews-heading>p{margin-top:9px}.review-card{flex-basis:100%;padding:24px 20px;gap:18px;min-height:360px}.review-copy blockquote{font-size:15px}.review-category{font-size:12px}.review-meta{margin-top:auto;padding-top:16px}.reviews-footer{gap:10px}.reviews-naver{font-size:11px}.reviews-position{min-width:45px;margin-right:2px}.reviews-navigation{gap:6px}.reviews-arrow{width:34px;height:34px}.reviews-note{font-size:9px}.review-dialog-body{padding:14px}}
@media(max-width:380px){.review-card{padding:22px 16px;gap:14px}.review-capture-image{width:calc(var(--capture-width)*.88)}.review-copy blockquote{font-size:14px}.review-dialog-body .review-capture-image{width:100%}}
@media(min-width:801px) and (max-width:1050px){.review-card{padding:24px 16px;gap:14px}.review-capture-image{width:calc(var(--capture-width)*.85)}.review-copy blockquote{font-size:14px}.review-dialog-body .review-capture-image{width:100%}}
@media(prefers-reduced-motion:reduce){.reviews-track{scroll-behavior:auto}}
