.review-widget{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:3px 14px;width:100%;min-height:44px;padding:7px 12px;border:0;background:#a6252c;color:#fff;font:inherit;font-size:.875rem;font-weight:750;text-align:center;cursor:pointer}
.review-widget:hover,.review-widget:focus-visible{background:#842128}
.review-widget:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.review-widget-star{color:#ffdc8c;font-size:1.12rem;letter-spacing:.09em}
.review-widget-action{border-radius:999px;background:#fff;color:#842128;padding:4px 10px;font-size:.76rem}
.header-reviews [data-header-review-list]{margin-block:16px}
.header-reviews details{padding:12px 0;border-bottom:1px solid #e2e5da}
.header-reviews summary{cursor:pointer;font-weight:700}
.header-reviews .review-score{color:#842128;font-weight:750}
@media(max-width:540px){.review-widget{font-size:.78rem;gap:3px 8px}.review-widget-star{font-size:.95rem}.review-widget-action{flex-basis:auto}}
.mjm-reviews{padding-block:clamp(32px,5vw,64px);scroll-margin-top:145px}
.mjm-reviews [hidden],.review-widget[hidden]{display:none!important}
.review-heading{display:flex;align-items:center;justify-content:space-between;gap:24px 48px;margin-bottom:30px}
.review-heading h2{margin-bottom:0}
.review-summary{flex:none;width:min(100%,280px);box-sizing:border-box;background:#eeeee5;border:1px solid #e2e5da;border-radius:26px;text-align:center;padding:22px 16px;color:var(--ink)}
.review-score{margin:0;line-height:1.1}
.review-score strong{display:block;font-size:clamp(3.2rem,6vw,4.5rem);font-weight:900;letter-spacing:-.06em}
.review-score span{font-size:.9rem;font-weight:700}
.review-summary-stars{color:#a6252c;font-size:clamp(1.6rem,3vw,2rem);font-weight:900;letter-spacing:.15em;margin:4px 0}
.review-count{font-size:.76rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase;margin:0}
@media(max-width:650px){.review-heading{align-items:flex-start;flex-direction:column}.review-summary{width:min(100%,280px)}}
.review-track{display:grid;align-items:stretch;grid-auto-flow:column;grid-auto-columns:calc((100% - 32px)/3);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 14px}
.review-card{scroll-snap-align:start;display:flex;flex-direction:column;min-width:0;min-height:292px;background:#fff;border:1px solid #e2e5da;border-radius:27px;padding:clamp(20px,3vw,30px)}
.review-card h3{font-size:1.1rem;margin:0 0 8px}
.review-card a{align-self:flex-start;font-weight:700;color:var(--green);text-underline-offset:3px}
.review-stars{color:#a6252c;font-size:1.35rem;font-weight:900;letter-spacing:.12em;margin:0 0 8px}
.review-quote{white-space:pre-line;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;line-height:1.5;max-height:7.5em}
.review-controls{display:flex;gap:8px;margin:12px 0}
.review-controls button{border:1px solid #e2e5da;border-radius:50%;background:#f0f2e9;color:var(--green);width:44px;height:44px;cursor:pointer}
.review-note{font-size:.875rem;color:#4f5651}
@media(max-width:850px){.review-track{grid-auto-columns:calc((100% - 16px)/2)}}
@media(max-width:560px){.review-track{grid-auto-columns:100%}}

.review-meta{display:flex;align-items:baseline;justify-content:space-between;gap:8px 14px}
.review-meta time{color:#515c54;font-size:.78rem;text-align:right}
.review-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:auto;padding-top:10px}
.review-actions button{padding:0;border:0;background:none;color:#a6252c;font:inherit;font-weight:750;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.review-dialog{width:min(620px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:clamp(20px,4vw,34px);border:1px solid #e2e5da;border-radius:27px;background:#fff;color:var(--ink)}
.review-dialog::backdrop{background:#1e2a23a6}
.review-dialog form{display:flex;justify-content:flex-end;margin-bottom:12px}
.review-dialog h3{margin:0}
.review-dialog-date{color:#515c54;font-size:.875rem}
.review-full-text{white-space:pre-line;overflow-wrap:anywhere}
