.hfh-full-reviews { scroll-margin-top: 120px; }
.hfh-full-reviews > p:not(.eyebrow) { max-width: 780px; }
.hfh-review-tools { margin: 32px 0; }
.hfh-review-tools label { display:block; margin-bottom:8px; font-weight:600; }
.hfh-review-tools input { display:block; width:100%; max-width:560px; min-height:48px; padding:12px 16px; border:1px solid #c6c8d2; border-radius:12px; background:white; color:#171824; font:inherit; }
.hfh-review-filters { display:flex; gap:8px; flex-wrap:wrap; margin-top:16px; }
.hfh-review-filters button { min-height:44px; padding:10px 18px; border:1px solid #c6c8d2; border-radius:999px; background:white; color:#373847; font:inherit; cursor:pointer; }
.hfh-review-filters button[aria-pressed=true] { background:#242338; color:white; border-color:#242338; }
.hfh-review-grid { columns:3; column-gap:24px; }
.hfh-review-card { display:inline-block; width:100%; margin:0 0 24px; break-inside:avoid; padding:16px; border:1px solid #dddde7; border-radius:18px; background:white; color:#343442; text-align:left; font:inherit; cursor:zoom-in; box-shadow:0 8px 28px #20203308; }
.hfh-review-card[hidden] { display:none; }
.hfh-review-card img { display:block; width:100%; height:auto; border-radius:8px; }
.hfh-review-meta { display:flex; flex-direction:column; gap:5px; padding-top:16px; font-size:13px; line-height:1.5; }
.hfh-review-meta small { color:#595b6b; }
.hfh-review-card:hover { border-color:#88829e; }
.hfh-full-reviews :focus-visible,.hfh-review-dialog :focus-visible { outline:3px solid #7660b7; outline-offset:4px; }
.hfh-review-dialog { width:min(1100px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:24px; border:0; border-radius:20px; background:#fafaff; color:#1a1a28; overflow:auto; }
.hfh-review-dialog::backdrop { background:#10101bca; }
.hfh-review-dialog-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.hfh-review-dialog-head h2 { margin:0; font-size:20px; line-height:1.4; }
.hfh-review-dialog button { min-width:44px; min-height:44px; padding:8px 14px; border:1px solid #c6c8d2; border-radius:10px; background:white; color:inherit; font:inherit; cursor:pointer; }
.hfh-review-dialog [data-review-close] { flex-shrink:0; font-size:24px; }
.hfh-review-image-wrap { display:flex; justify-content:center; align-items:center; min-height:140px; }
.hfh-review-image-wrap img { display:block; width:auto; height:auto; max-width:100%; max-height:65dvh; object-fit:contain; }
.hfh-review-dialog-foot { display:flex; justify-content:space-between; align-items:center; gap:8px; margin:20px 0 12px; }
.hfh-review-dialog-foot p { margin:0; font-size:14px; }
.hfh-review-dialog > a { display:inline-flex; align-items:center; min-height:44px; color:#4c367b; font-size:14px; }
@media(max-width:950px) { .hfh-review-grid { columns:2; } }
@media(max-width:600px) { .hfh-review-grid { columns:1; } .hfh-review-dialog { padding:16px; } .hfh-review-dialog-head h2 { font-size:17px; } .hfh-review-filters button { padding:10px 14px; } .hfh-review-dialog-foot button { font-size:14px; padding:8px 10px; } }
