.charm-proof{--proof-bg:#fffaf7;--proof-ink:#4c3546;--proof-muted:#786273;--proof-line:#efdae4;--proof-gold:#aa700c;--proof-rose:#b83c6d;--proof-heading:var(--font-body-family,Jost,Arial,sans-serif);background:var(--proof-bg);color:var(--proof-ink);font:15px/1.6 var(--font-body-family,Jost,Arial,sans-serif);letter-spacing:.01em;overflow:clip}
.charm-proof *{box-sizing:border-box}
.charm-proof button,.charm-proof a{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}
.charm-proof a{text-underline-offset:4px}
.charm-proof :focus-visible{outline:2px solid var(--proof-ink);outline-offset:4px}
.charm-proof button{cursor:pointer}
.charm-proof button:disabled{cursor:default;opacity:.3}
.charm-proof [hidden]{display:none!important}
.proof-container{max-width:1440px;margin:0 auto;padding:44px 28px}
.proof-gallery{position:relative;background:radial-gradient(ellipse at 95% 0%,#ffedf2 0,transparent 42%),radial-gradient(ellipse at 2% 95%,#fff4d9 0,transparent 36%),#fffaf7}
.proof-kicker{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:500;letter-spacing:.035em;text-transform:none;color:#79516b;background:#fbe8f0;border-radius:999px;padding:7px 13px;margin:0 0 15px}
.proof-heading{font:600 clamp(30px,3.5vw,45px)/1.12 var(--proof-heading);letter-spacing:-.045em;margin:0;color:#633e58}
.proof-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.proof-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}
.proof-icon-button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #e9d4e5;border-radius:50%;background:#f4eafa;color:#78518a!important;font-size:20px!important;line-height:1;padding:0;box-shadow:0 4px 12px #ad7b9e0c;transition:transform .18s,background .18s}
.proof-icon-button:hover:not(:disabled){background:#ebd8f4;transform:translateY(-2px)}
.proof-photo-track{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-y pinch-zoom;cursor:grab;user-select:none;padding:7px 0 19px;outline-offset:-2px!important}
.proof-photo-track.is-dragging,.proof-review-track.is-dragging{cursor:grabbing}
.proof-photo-track img,.proof-review-track img{-webkit-user-drag:none}
.proof-photo-track::-webkit-scrollbar{display:none}
.proof-photo{flex:0 0 244px;aspect-ratio:3/4;display:block;overflow:hidden;border:6px solid #fff;border-radius:30px;background:#fff;text-decoration:none;box-shadow:0 7px 18px #a86c8f12}
.proof-photo:nth-child(3n+2){border-color:#fff1c9}
.proof-photo:nth-child(3n){border-color:#efe5fa}
.proof-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:23px;transition:transform .3s ease}
.proof-photo:hover img{transform:scale(1.025)}
.proof-gallery-caption{font-size:13px;color:var(--proof-muted);margin:7px 0 0}
.proof-reviews{border-top:0;border-radius:42px 42px 0 0;background:radial-gradient(ellipse at 0% 30%,#fff0f5 0,transparent 55%),#fff9ee}
.proof-reviews>.proof-kicker{background:#f2e8fb;color:#76528b}
.proof-review-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;padding:24px 26px;border:1px solid #f3dfe7;border-radius:30px;margin:24px 0 23px;box-shadow:0 8px 28px #bf8d9f0a}
.proof-rating-line{display:flex;align-items:center;flex-wrap:wrap;gap:9px 12px}
.proof-rating{font-size:33px;line-height:1;font-weight:600;color:#69415d}
.proof-stars{color:var(--proof-gold);font-size:18px;letter-spacing:.06em;white-space:nowrap}
.proof-google-label{font-size:12px;color:var(--proof-muted);margin:8px 0 0}
.proof-count{font-size:12px;font-weight:500;color:#87546d;background:#fff0f6;border-radius:999px;padding:6px 11px}
.proof-maps-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;border:1px solid var(--proof-rose);border-radius:999px;background:var(--proof-rose);color:#fff!important;padding:12px 22px;text-decoration:none;font-size:14px!important;font-weight:500!important;white-space:nowrap;box-shadow:0 7px 16px #b83c6d19;transition:transform .18s,background .18s}
.proof-maps-button:hover{background:#a92f60;transform:translateY(-2px)}
.proof-review-track{display:flex;gap:18px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:none;scrollbar-width:none;touch-action:pan-y pinch-zoom;cursor:grab;user-select:none;padding:5px 0 20px;align-items:stretch;outline-offset:-2px!important}
.proof-review-track::-webkit-scrollbar{display:none}
.proof-review-card{flex:0 0 calc((100% - 36px)/3);min-width:290px;background:#fff;border:1px solid #f1e1e8;border-radius:30px;padding:24px;scroll-snap-align:start;display:flex;flex-direction:column;box-shadow:0 8px 25px #b4899e09}
.proof-review-card:nth-child(3n+2){background:#fffdf4;border-color:#eee5cc}
.proof-review-card:nth-child(3n){background:#fcf8ff;border-color:#e9def3}
.proof-review-author{display:flex;align-items:center;gap:11px;min-height:48px;text-decoration:none;align-self:start;max-width:100%}
.proof-review-author img{width:42px;height:42px;border-radius:50%;object-fit:cover;flex-shrink:0;box-shadow:0 0 0 4px #fce9f0}
.proof-review-author strong{font-size:14px;font-weight:600;display:block;overflow-wrap:anywhere;color:#65445c}
.proof-review-author small{display:block;color:var(--proof-muted);font-size:11px;margin-top:1px}
.proof-review-card>.proof-stars{font-size:15px;display:block;margin:13px 0 11px}
.proof-review-message{white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;font-size:14px;line-height:1.6;margin:0 0 14px}
.proof-review-photos{display:flex;gap:8px;flex-wrap:wrap;margin:auto 0 15px;padding-top:2px}
.proof-review-photo{display:block;width:88px;height:80px;border:3px solid #fff;border-radius:17px;overflow:hidden;background:#f6edf2;box-shadow:0 3px 9px #a5708b12}
.proof-review-photo img{width:100%;height:100%;object-fit:cover;display:block}
.proof-review-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;font-size:12px;padding-top:4px}
.proof-read-review{background:#f2e9fa;border:0;border-radius:999px;padding:7px 13px;color:#78528a!important;font-size:12px!important;min-height:34px;transition:background .18s}
.proof-read-review:hover{background:#e9d9f5}
.proof-source-link{color:var(--proof-muted)!important;text-decoration:none}
.proof-source-link:hover{text-decoration:underline}
.proof-review-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px}
.proof-review-position{font-size:12px;color:#78596e;background:#fff;border:1px solid #f2e2e9;border-radius:999px;padding:7px 12px;margin:0}
.proof-snapshot-note{font-size:11px;line-height:1.6;color:var(--proof-muted);max-width:85ch;margin:18px 0 0}
.proof-dialog{box-sizing:border-box;border:1px solid #f0dfe8;border-radius:30px;background:#fffaf8;color:var(--proof-ink);max-width:660px;width:calc(100% - 32px);padding:28px;max-height:88dvh;overflow:auto;font:15px/1.6 var(--font-body-family,Jost,Arial,sans-serif);box-shadow:0 20px 100px #93637d33}
.proof-dialog::backdrop{background:#63445e66;backdrop-filter:blur(5px)}
.proof-dialog-close{display:block;margin:0 0 18px auto;border:1px solid #eed5e2;border-radius:999px;background:#fff0f6;color:#88576e!important;min-height:40px;padding:6px 16px;font-size:13px!important}
.proof-dialog .proof-review-message{white-space:pre-wrap;display:block;overflow:visible;-webkit-line-clamp:unset;font-size:15px;margin:20px 0}
.proof-dialog .proof-review-author{pointer-events:auto}
.proof-dialog .proof-review-photos{margin:18px 0;gap:10px}
.proof-dialog .proof-review-photo{width:120px;height:110px}
.proof-dialog .proof-maps-button{margin-top:12px;white-space:normal;text-align:center}
.proof-lightbox{max-width:900px}
.proof-lightbox-image{display:block;max-width:100%;max-height:66dvh;width:auto;height:auto;object-fit:contain;margin:0 auto}
.proof-lightbox-caption{font-size:12px;color:var(--proof-muted);margin:15px 0 0;text-align:center}
@media(max-width:1000px){.proof-review-card{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:600px){.proof-container{padding:32px 20px}.proof-heading{font-size:32px;letter-spacing:-.045em;line-height:1.14}.proof-kicker{font-size:11px;padding:6px 12px;margin-bottom:12px}.proof-section-head{align-items:start;flex-wrap:wrap;gap:17px;margin-bottom:17px}.proof-section-head>.proof-controls{width:100%;justify-content:end}.proof-photo{flex-basis:72vw;max-width:270px;border-radius:29px}.proof-photo-track{gap:12px}.proof-review-summary{padding:21px;align-items:start;flex-direction:column;gap:19px;border-radius:28px}.proof-review-summary .proof-maps-button{width:100%}.proof-rating{font-size:32px}.proof-review-card{flex-basis:calc(100% - 18px);min-width:0;padding:22px;border-radius:29px}.proof-review-message{font-size:15px}.proof-review-photos{gap:8px}.proof-snapshot-note{font-size:11px}.proof-dialog{padding:23px;border-radius:28px}.proof-dialog .proof-review-photo{width:100px;height:92px}.proof-icon-button{width:44px;height:44px}.proof-review-bottom{gap:12px}.proof-review-position{font-size:11px}}
@media(prefers-reduced-motion:reduce){.charm-proof *{scroll-behavior:auto!important;transition:none!important}}
